@@ -17,16 +17,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
1717 entrypoint instead of exporting a ` nova ` PowerShell alias.
1818- Add optional ` Preamble ` support in ` project.json ` to write module-level setup lines at the top of generated ` .psm1 `
1919 files.
20- - Add ` Initialize-NovaModule -Example ` and GNU-style ` % nova init --example ` / ` % nova init -e ` support to scaffold a
21- full
22- working project from the packaged
23- example resources.
24- - git initialization failures so more build and release paths now expose stable error ids and categories.
25- - Runs the normal init flow
26- - Applies the metadata entered during init to the generated ` project.json `
27- - Always creates the example test structure without prompting to enable tests
28- - The packaged example ` project.json ` now keeps the current project, manifest, package, and raw-upload settings
29- visible in one place so users can see the full supported configuration surface
3020- Add native ` -WhatIf ` and ` -Confirm ` support across mutating Nova commands, including GNU-style routed CLI support for
3121 ` --verbose ` /` -v ` , ` --what-if ` /` -w ` , and ` --confirm ` /` -c ` on ` build ` , ` test ` , ` bump ` , ` publish ` , and ` release ` .
3222 - Routed CLI confirmation now stays inside the ` nova ` experience instead of exposing PowerShell's ` Suspend ` prompt.
@@ -45,13 +35,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
4535 - Uses the stored prerelease update preference to decide whether prerelease self-updates are eligible.
4636 - Requires explicit confirmation before a prerelease self-update proceeds.
4737- Add ` % nova version --installed ` / ` % nova version -i ` so users can compare the locally installed version of the
48- current
49- project/module with
50- the current project version from ` project.json ` , while keeping ` % nova --version ` / ` % nova -v ` dedicated to the
51- installed
52- NovaModuleTools version.
53- - Add build-before-test support to the test workflow so ` Test-NovaBuild -Build ` , ` % nova test --build ` , and `% nova
54- test -b` rebuild the project before running Pester.
38+ current project/module with the current project version from ` project.json ` , while keeping ` % nova --version ` /
39+ ` % nova -v ` dedicated to the installed NovaModuleTools version.
40+ - Add build-before-test support to the test workflow so ` Test-NovaBuild -Build ` , ` % nova test --build ` , and
41+ ` % nova test -b ` rebuild the project before running Pester.
5542- Add an opt-in ` -Preview ` mode to ` Update-NovaModuleVersion ` / GNU-style ` % nova bump --preview ` / ` % nova bump -p ` for
5643 explicit preview iteration.
5744 - Stable versions still use the normal semantic bump target first, then append ` -preview ` .
@@ -60,8 +47,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
6047 ` rc -> rc01 ` , ` rc1 -> rc2 ` , ` SNAPSHOT -> SNAPSHOT01 ` , and ` SNAPSHOT1 -> SNAPSHOT2 ` .
6148- Add ` New-NovaModulePackage ` and ` % nova package ` so projects can build, test, and package the built module output as a
6249 ` .nupkg ` artifact by using generic metadata from ` project.json ` , including repositories whose test runs reload or
63- remove
64- ` NovaModuleTools ` before the final package step.
50+ remove ` NovaModuleTools ` before the final package step.
6551 - Package output supports ` Package.Types ` with case-insensitive ` NuGet ` , ` Zip ` , ` .nupkg ` , and ` .zip ` values.
6652 - Omitting ` Package.Types ` still defaults packaging to a ` .nupkg ` artifact.
6753 - Selecting both ` NuGet ` and ` Zip ` creates both package formats in the configured output directory.
@@ -107,22 +93,32 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
10793 and ` nova release ` while keeping ` nova version -i ` dedicated to the installed-version view.
10894 - Build re-activates the freshly built module after the build succeeds, bump re-activates it before the version
10995 update starts, and publish/release restore the built module again after publish completes.
110- - Repository publish no longer forces verbose ` Publish-PSResource ` output unless verbose logging was explicitly
111- requested.
112- - CI bump now reuses the already activated built-module command when the current session is already running from
113- ` dist/ ` , so publish-then-bump prerelease automation can continue in the same session without losing private helper
114- bindings.
96+ - Repository publish no longer forces verbose ` Publish-PSResource ` output unless verbose logging was explicitly
97+ requested.
98+ - CI bump now reuses the already activated built-module command when the current session is already running from
99+ ` dist/ ` , so publish-then-bump prerelease automation can continue in the same session without losing private helper
100+ bindings.
115101- Keep standalone ` nova bump ` output stable by formatting version-update results in the CLI layer instead of relying on
116102 PowerShell's default object rendering.
117103 - ` nova bump --what-if ` and ` % run.ps1 ` now surface a predictable summary for previous version, new version, label,
118104 and commit count.
119105
106+ ### Fixed
107+
108+ - Fix unsupported ` nova ` help invocations so they now return Nova's structured CLI validation error instead of a
109+ PowerShell parameter-binding failure.
110+ - Keep manifest/package helper edge cases aligned with their intended behavior.
111+ - Manifest settings resolution now accepts ordered dictionary metadata shapes in addition to plain hashtables.
112+ - ` New-NovaPackageArtifacts ` now accepts an empty metadata list and returns an empty artifact result instead of
113+ failing during parameter binding.
114+ - Fix configuration and validation errors so empty ` project.json ` files and unsupported ` Manifest ` keys fail fast with
115+ clear messages.
116+
120117### Changed
121118
122119- Change the project to a Nova command model, replacing the previous mixed MT/Nova workflow.
123120 - All public commands are now Nova commands, and the ` nova ` CLI / ` Invoke-NovaCli ` command surface is the primary
124- entry point for all
125- operations.
121+ entry point for all operations.
126122- Change ` nova ` help to a dedicated CLI-native help system with both short and long command help forms.
127123- Isolate external workflow execution behind smaller internal adapters so git, raw package upload, repository publish,
128124 self-update, settings-file I/O, and CLI environment access have clearer change points and smaller test seams.
@@ -132,63 +128,29 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
132128 stays focused on command syntax and options.
133129 - CLI help no longer delegates to PowerShell ` Get-Help ` and now consistently shows CLI option spellings such as
134130 ` --repository ` and ` -r ` .
135- - Refactor ` tests/NovaCommandModel.TestSupport.ps1 ` into smaller, focused support scripts so the shared Nova command
136- model
137- test helpers are easier to maintain without changing test behavior.
138- - ** BREAKING CHANGE** : Rename the public Nova scaffold cmdlets to approved verbs.
131+ - ** BREAKING CHANGE** : Rename the public Nova scaffold cmdlets.
139132 - ` New-NovaModule ` → ` Initialize-NovaModule `
140133 - No compatibility aliases are exported for the retired cmdlet names or CLI subcommands.
141134- Change ` CopyResourcesToModuleRoot ` to the canonical project setting name while keeping the default value ` false ` .
142135- Change ` Publish-NovaModule -Local ` and ` % nova publish --local ` so a successful local publish also reloads the
143- published
144- module from the local install path into the active PowerShell session.
145- - Refactor the simple routed ` nova ` parsers to use shared declarative parser helpers while keeping the existing CLI
146- syntax, validation, and routed command behavior unchanged.
147- - ` nova build ` , ` nova test ` , and ` nova bump ` now share one switch-parser pattern.
148- - ` nova update ` , ` nova version ` , and ` nova notification ` now share one mode-parser pattern.
149-
150- ### Fixed
151-
152- - Fix configuration and validation errors so empty ` project.json ` files and unsupported ` Manifest ` keys fail fast with
153- clear messages.
154- - Fix GitHub Pages guide fragment links so section anchors such as ` #pack ` scroll fully into view instead of hiding the
155- section heading behind the sticky top navigation.
136+ published module from the local install path into the active PowerShell session.
156137
157138### Documentation
158139
159140- Split documentation into contributor-focused repository docs and task-oriented GitHub Pages user guides.
160141- Expand the public site into a fuller developer end-user manual with rewritten getting started, core workflows, working
161142 with modules, troubleshooting, concepts, release notes, and license pages plus new reference-style pages for
162143 commands, ` project.json ` , packaging/delivery, and versioning/update behavior.
163- - Improve page spacing, card padding, code-block separation, and responsive layout density so the documentation is
164- easier to scan and less visually cramped.
165- - The getting started and core workflows guides now let readers switch between PowerShell and command-line
166- examples, including the local-publish-plus-` pwsh ` handoff for ` Get-ExampleGreeting ` and fresh-process ` pwsh `
167-
144+ - The guides now let readers switch between PowerShell and command-line examples, including the local-publish-plus-
145+ ` pwsh ` handoff for ` Get-ExampleGreeting ` and fresh-process ` pwsh `
168146- Clean the generated PowerShell cmdlet help so ` Get-Help ` pages no longer mix in ` nova ` launcher syntax or GNU-style
169147 CLI options.
170- import/reload validation from the command-line path.
171- - The command reference, working-with-modules, packaging-and-delivery, versioning-and-updates, and troubleshooting
172- guides now use the same centered command-surface header and PowerShell/command-line example switching model.
173- - The command-surface toggle sits centered in the top navigation area on the switched guides, with the ` Menu `
174- control aligned separately to the right and the header buttons tightened to match the menu height more closely.
175- - The home page now presents its recommended first-path command examples in PowerShell form to match the default
176- quickstart orientation.
177- - The shared docs layout now keeps the same readable content width in PowerShell and command-line modes, while long
178- command examples stay contained inside their own blocks instead of stretching the page.
179- - All public pages now use the wider large-screen shell, and the single-column release-notes and license layouts use
180- a broader centered content width that matches the updated site scale.
181- - The public docs header logo is now larger so the NovaModuleTools brand is more prominent across the site.
182148- Refresh public ` Get-Help ` content and examples for the Nova commands, including CLI usage and preview/confirmation
183149 scenarios.
184150 - Simplify ` Invoke-NovaCli ` help so it matches the launcher-vs-cmdlet split cleanly and PlatyPS can generate command
185151 help without failing during local builds.
186152- Update the ` nova ` CLI documentation and help text to use POSIX/GNU-style long and short options while keeping
187153 PowerShell cmdlet examples in their native PowerShell form.
188- - Document the CLI-native short-help and long-help forms in the root help text, README, and ` Invoke-NovaCli `
189- reference.
190- - Clarify the documentation split between the ` nova ` launcher-oriented CLI surface and the explicit PowerShell
191- ` Invoke-NovaCli ` cmdlet entrypoint, and mark examples consistently with ` PS> ` for PowerShell and ` % ` for CLI.
192154
193155### Removed
194156
0 commit comments