You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Goal: ship PowerShellBuild 1.0.0 — the first version with a stable public-API contract per SemVer. Treats the 0.x line as initial development per SemVer §4; 1.0.0 defines the public API per SemVer §5.
Status: planning → execution Current version: 0.8.0 Target version: 1.0.0 Prerelease cadence:1.0.0-preview.N to PSGallery after each phase Branching: PRs land directly on main (allowed under 0.x); 1.0.0 cuts when scope is complete
Why 1.0.0 and not 2.0.0: there has never been a stable 1.x. Jumping to 2.0.0 would imply a prior stable 1.x existed. SemVer says go to 1.0.0.
Locked-in decisions
Decision
Choice
Version
1.0.0 (not 2.0.0)
Tracking
This issue + v1.0.0 milestone + GitHub Project board
AIM deployment
Phase 0 (first PR)
Branching
PRs to main + 1.0.0-preview.N prereleases
Breaking changes
Hard cut + migration guide
Migration guide
docs/migration/v0.8-to-v1.0.md; per-PR entries; AI-assisted prompt at top
Auto-migration tool
None
Deprecation cycle
None (skip 0.9.0)
psake 5.x
In scope for 1.0.0
Minimum PS version
TBD — Phase 1 investigation
Migration guide
Lives at docs/migration/v0.8-to-v1.0.md. Every breaking-change PR must add an entry using the standard structure (What changed / Why / Detection / Migration / Notes). Enforced via PR template checkbox. Top-of-file section includes a canonical AI prompt users can paste into their agent to migrate their build.ps1 automatically.
PR 2c — migrate Build-PSBuildMAMLHelp to Import-MarkdownCommandHelp | Export-MamlCommandHelp; add tests (Tests: Build-PSBuildMAMLHelp #100) against new API
PR 2e — one-shot migrate existing docs/ markdown via Measure-PlatyPSMarkdown | Import-MarkdownCommandHelp | Export-MarkdownCommandHelp
PR 2f — remove old platyPS from requirements.psd1; clean up references
psake 5.x bump
Spike PR — assess what actually breaks in this repo's psakeFile.ps1 and the consumer-facing PowerShellBuild/psakeFile.ps1 under psake 5.x. Document findings here before committing to a migration approach.
Migration PR(s) — number depends on spike findings
[Tracking] PowerShellBuild v1.0.0 roadmap
Goal: ship PowerShellBuild 1.0.0 — the first version with a stable public-API contract per SemVer. Treats the 0.x line as initial development per SemVer §4; 1.0.0 defines the public API per SemVer §5.
Status: planning → execution
Current version: 0.8.0
Target version: 1.0.0
Prerelease cadence:
1.0.0-preview.Nto PSGallery after each phaseBranching: PRs land directly on
main(allowed under 0.x); 1.0.0 cuts when scope is completeLocked-in decisions
v1.0.0milestone + GitHub Project boardmain+1.0.0-preview.Nprereleasesdocs/migration/v0.8-to-v1.0.md; per-PR entries; AI-assisted prompt at topMigration guide
Lives at
docs/migration/v0.8-to-v1.0.md. Every breaking-change PR must add an entry using the standard structure (What changed / Why / Detection / Migration / Notes). Enforced via PR template checkbox. Top-of-file section includes a canonical AI prompt users can paste into their agent to migrate theirbuild.ps1automatically.Phase 0 — Foundation
AGENTS.md,aim.config.json,instructions/CLAUDE.mdcontent →instructions/repository-specific.instructions.mdagent-workflow,shorthand,git-workflow,testing,powershell,markdown,releases,github-cli,readme,contributing,update,repository-specificCLAUDE.mdsays 0.7.3; actual is 0.8.0)Phase 1 — Conventions & guardrails
docs/migration/v0.8-to-v1.0.mdskeletonv1.0.0milestone, link this issuePowerShellVersioninPowerShellBuild.psd1(currently'3.0', almost certainly wrong) and CI matrixmain(PR + 1 review + CI green)1.0.0-preview.1after Phase 1 completesPhase 2 — Breaking dependency upgrades
#105 — PlatyPS migration
Split into focused PRs so each is independently reviewable:
Microsoft.PowerShell.PlatyPS1.x torequirements.psd1alongside oldplatyPS(parallel install); update CI workflowsBuild-PSBuildMarkdowntoNew-MarkdownCommandHelp; add tests (Tests: Build-PSBuildMarkdown #99) against new APIBuild-PSBuildMAMLHelptoImport-MarkdownCommandHelp | Export-MamlCommandHelp; add tests (Tests: Build-PSBuildMAMLHelp #100) against new APIBuild-PSBuildUpdatableHelpto new cab pipeline; add tests (Tests: Build-PSBuildUpdatableHelp #101, Windows-only) against new APIdocs/markdown viaMeasure-PlatyPSMarkdown | Import-MarkdownCommandHelp | Export-MarkdownCommandHelpplatyPSfromrequirements.psd1; clean up referencespsake 5.x bump
psakeFile.ps1and the consumer-facingPowerShellBuild/psakeFile.ps1under psake 5.x. Document findings here before committing to a migration approach.1.0.0-preview.2after Phase 2 completesPhase 3 — API improvements
PesterConfigurationobject support via parameter set +$PSBPreference.Test.Configuration(per joshooaj's design in Add support for configuring Pester's SkipRemainingOnFailure and Verbosity options #80)1.0.0-preview.3after Phase 3 completesPhase 4 — Test infrastructure
In v1.0.0:
tests/fixtures/TestModule/(prerequisite)Build-PSBuildMarkdowntests (folded into PR 2b)Build-PSBuildMAMLHelptests (folded into PR 2c)Build-PSBuildUpdatableHelptests (folded into PR 2d)Tracked but not blocking 1.0.0 (welcome contributions during the cycle):
Clear-PSBuildOutputFolder(good first issue)Initialize-PSBuild(good first issue)Test-PSBuildScriptAnalysis(good first issue)Deferred to 1.1.0:
Phase 5 — Release
docs/migration/v0.8-to-v1.0.mdCHANGELOG.md1.0.0 entry (summarizes breaks, links to migration guide)ModuleVersionto1.0.01.0.0-rc.1; soak for ~1 week with announcement1.0.0GitHub Release; publish to PSGalleryDefinition of done
Last syncfield currentAI-assisted-development notes
instructions/files are the canonical guide for any agent working in this repo — agents must readagent-workflow.instructions.mdfirstfeat:,fix:,docs:,chore:,BREAKING CHANGE:) to keep history machine-parseable