Design: precedence contract for a consumer-supplied PesterConfiguration (#83)
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 35/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bien especificado
- Estado de actividad
- Activo
- Stack tecnológico
- powershell
- Área
- developer-experience, testing, tooling
Línea de trabajo
Empieza leyendo #83 y las referencias a #120 y #137; después usa /grilling y /domain-modeling según lo solicitado. Resuelve mediante la conversación la precedencia, Run.Path, los valores predeterminados, la facilidad de descubrimiento y las diferencias entre Pester 5/6. Se considera terminado cuando el contrato de precedencia esté documentado aquí con suficiente detalle para que #83 pueda implementarse sin más decisiones de diseño.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Part of #120 (Phase 3 — API improvements). Blocks #83.
Question
When a consumer supplies their own [PesterConfiguration] object via $PSBPreference.Test.Configuration, what wins — their object, or the existing $PSBPreference.Test.* settings?
#83 raises this and leaves it open. It is the one genuinely undesigned item left in v1.0.0, and it defines public API surface that freezes at 1.0.0 — getting the precedence wrong is a breaking change to undo later.
Note: #120 previously pointed at "joshooaj's design in #80". That pointer is stale — #80 is a different, already-closed request about
Output.VerbosityandRun.SkipRemainingOnFailure. There is no existing design to implement.
Open questions
- Precedence. Does the supplied object act as a base that
$PSBPreference.Test.*overrides, or as a final say that PowerShellBuild only fills gaps in? A consumer who sets both and gets the opposite of what they expected is the failure mode to design against. Run.Path. PowerShellBuild computes the test path today. If the consumer setsRun.Pathon their object, is it honored, ignored, or an error? The advanced surface permits multiple paths, which the current single-path model has no answer for.- Opinionated defaults. Which settings does PowerShellBuild insist on regardless (code coverage output location, result file paths, CI-detection behavior) because the surrounding build tasks depend on them?
- Discoverability. If a supplied setting is silently overridden, how does the consumer find out? Silent override is the worst outcome — worse than an error.
- Pester 5 and 6.
Test-PSBuildPestersupports both majors and the #137 matrix verifies both. Does the configuration object surface differ between them in ways that affect the answer?
How to resolve
Conversation, not code — /grilling plus /domain-modeling. @joshooaj should be in it: they raised #83 and the design questions are theirs. A prototype of the merge logic is reasonable if the discussion stalls on something concrete.
Done when
The precedence contract is written down here in enough detail that #83 can be implemented without further design decisions.
- Lenguaje dominante
- PowerShell
- Estrellas
- 145
- Forks
- 27
- Merge medio
- 10 h 16 min
- PR fusionados (30 d)
- 34
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 psake/PowerShellBuild
-
Nothing tests the Build-PSBuildUpdatableHelp branch that deletes a consumer's output directory Abiertobug
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
psake/PowerShellBuild#218 · 1 comentario ·
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
psake/PowerShellBuild#211 · 1 comentario ·
-
CI: Install the built module from a local repository to verify install-time dependency behaviour Abiertoenhancement github_actions
Dificultad 4/5 3-5 días Aptitud para principiantes 68/100
psake/PowerShellBuild#229 ·
-
bug
Dificultad 3/5 1-2 días Aptitud para principiantes 55/100
psake/PowerShellBuild#222 ·
-
bug
Dificultad 4/5 3-5 días Aptitud para principiantes 68/100
psake/PowerShellBuild#221 ·
Todos los issues de psake/PowerShellBuild
Issues similares
-
스택 PR 머지 시 하위 PR base 재지정 단계 부재 Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
idean3885/claude-ops-agent#521 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
0xMiden/bridge-portal#132 ·
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
newrelic-experimental/preflight#793 · 1 comentario ·
-
enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
babalae/bettergi-scripts-list#3674 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
caddyserver/caddy#8046 ·