dotnet-quality applies to every entry in dotnet-version, so "stable current + preview of next" is not expressible
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 45/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Activo
- Stack tecnológico
- github-actions, typescript
- Área
- ci-cd
Línea de trabajo
Comienza con la documentación del README sobre dotnet-version y dotnet-quality, y luego sigue cómo la action gestiona esas entradas. El objetivo se cumple cuando un paso puede solicitar released 10.0 y preview 11.0 de forma independiente, mientras el workaround existente de pasos separados y el comportamiento del runtime siguen siendo correctos.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Description
dotnet-quality is a single input for the whole step, and it applies to every version listed in dotnet-version. That makes a very common combination impossible to express: the current released SDK, plus a preview of the upcoming one.
- uses: actions/setup-dotnet@v6
with:
dotnet-version: |
10.0.x
11.0.x
dotnet-quality: preview
The intent here is "released 10.0, preview 11.0". What actually happens is that both are resolved at preview quality:
install-dotnet.ps1 -SkipNonVersionedFiles -Channel 10.0 -Quality preview
dotnet-install: .NET Core SDK with version '10.0.100-rc.2.25502.107' is already installed.
install-dotnet.ps1 -SkipNonVersionedFiles -Channel 11.0 -Quality preview
dotnet-install: .NET Core SDK with version '11.0.100-preview.7.26381.103' is already installed.
Even though 10.0 has shipped, the 10.0 request resolves to a release candidate. Combined with the "is already installed" short-circuit, a runner that once had the RC never moves to the released SDK.
Why we want both
We build against the current released SDK, and additionally install the next preview to compile a small amount of code with the upcoming C# language preview features (<LangVersion>preview</LangVersion>). That is a normal thing to want: production builds on the stable toolchain, plus early exposure to the next language version. It is not "give me previews of everything".
Impact beyond picking the wrong SDK
The knock-on effect is easy to miss. Because no released 10.0 SDK is ever installed, the only Microsoft.WindowsDesktop.App runtimes present are the prerelease ones bundled with the RC and the next preview:
Framework: 'Microsoft.WindowsDesktop.App', version '10.0.0' (x64)
The following frameworks were found:
10.0.0-rc.2.25502.107
11.0.0-preview.7.26381.103
A WPF test host targeting net10.0-windows asks for GA 10.0.0 and will not roll forward onto a release candidate, nor across a major version, so it fails to launch. The build still succeeds, because selecting an SDK and finding a matching runtime are different things - which makes this fail late and confusingly.
Workaround
Two steps, which works but is more verbose and easy to get wrong:
- uses: actions/setup-dotnet@v6
with:
dotnet-version: 10.0.x
- uses: actions/setup-dotnet@v6
with:
dotnet-version: 11.0.x
dotnet-quality: preview
Possible resolutions
- Allow quality to be attached per version, for example
11.0.x:previewalongside a plain10.0.x. - Accept a matching list for
dotnet-quality, aligned by position withdotnet-version. - At minimum, document clearly that
dotnet-qualityis step-wide and that mixing qualities requires separate steps - the current README reads as though it qualifies each requested version.
Option 1 seems the smallest change for callers and keeps everything in one step.
- Lenguaje dominante
- TypeScript
- Estrellas
- 1.2k
- Forks
- 573
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Sin guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de actions/setup-dotnet
-
feature request
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
actions/setup-dotnet#701 · 2 comentarios ·
-
feature request
Dificultad 1/5 Menos de una hora Aptitud para principiantes 55/100
actions/setup-dotnet#659 · 1 comentario · 2 reacciones ·
-
feature request
Dificultad 4/5 3-5 días Aptitud para principiantes 48/100
actions/setup-dotnet#642 · 13 comentarios · 11 reacciones ·
-
feature request
Dificultad 4/5 3-5 días Aptitud para principiantes 38/100
actions/setup-dotnet#543 · 5 comentarios · 2 reacciones ·
-
feature request
Dificultad 3/5 1-2 días Aptitud para principiantes 35/100
actions/setup-dotnet#522 · 1 comentario · 3 reacciones ·
Todos los issues de actions/setup-dotnet
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 77/100
TomerAberbach/profiler-md#733 ·
Los mantenedores suelen responder en 1 día
-
bug priority: medium
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
brentspine/brents-toasts#143 ·
-
🐛 bug 🗺️ DB Models & Ops
Dificultad 2/5 1-3 horas Aptitud para principiantes 83/100
LibreChat-AI/LibreChat#17214 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 67/100
Wavvon/Wavvon-clients#136 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
umami-software/umami#4637 ·
Los mantenedores suelen responder en 3 días