How-to Guides

Version your project intentionally and keep Nova up to date

NovaModuleTools separates project versioning from self-updating the tool itself. This page explains which command answers which question, how version bumps are chosen from Git history, and how stable versus prerelease self-update eligibility works.

Choose the right version command

Command What it shows When to use it
Get-NovaProjectInfo -Version or nova version The current version stored in the active project's project.json. Use this when you want to know what your project will build and publish as.
nova version -Installed The version installed locally for the current project/module from the module path. Use this when you want to compare the installed copy against the current working project.
nova --version The installed NovaModuleTools version. Use this when you are troubleshooting Nova itself or checking whether the tool needs an update.
nova version
nova version -Installed
nova --version

Bump project versions

Use Update-NovaModuleVersion or nova bump when you want Nova to choose the next semantic version based on Git history.

How Nova chooses the bump label

  • Major for breaking changes
  • Minor for feat: commits
  • Patch for fix: commits and all other cases

When Git tags exist, Nova uses commits since the latest tag. When the folder is not a Git repository, Nova falls back to a patch bump. When the repository exists but has no commits yet, Nova stops with a clear error.

Update-NovaModuleVersion -WhatIf
nova bump -WhatIf
nova bump -Confirm
Empty repository rule.

If your Git repository exists but has no commits yet, Nova throws: Cannot bump version because the repository has no commits yet. Create an initial commit first.

The standalone launcher uses a CLI-friendly confirmation flow for nova bump -Confirm. If you decline, Nova exits cleanly without writing a new version.

Self-update NovaModuleTools

Use Update-NovaModuleTool, its compatibility alias Update-NovaModuleTools, or nova update to update the installed NovaModuleTools module itself.

What self-update does

  1. Read the stored prerelease preference.
  2. Resolve the best eligible update candidate from PowerShell Gallery.
  3. Apply the update if one is available.
  4. Print the release notes link after a successful update.
Update-NovaModuleTool
nova update

If no newer version is available, nova update prints a friendly “You're up to date!” message together with the installed NovaModuleTools version.

State What happens
Stable update available Nova can apply it normally without prerelease-specific confirmation.
Only prerelease update available and prerelease eligibility is enabled Nova may target the prerelease, but it always asks for explicit confirmation before updating.
Prerelease eligibility disabled Nova ignores prerelease targets and stays on stable-only updates.

Manage prerelease eligibility

The update preference commands do not update the module by themselves. They only control whether prerelease self-update targets are eligible when you later run the update command.

Get-NovaUpdateNotificationPreference
Set-NovaUpdateNotificationPreference -DisablePrereleaseNotifications
Set-NovaUpdateNotificationPreference -EnablePrereleaseNotifications
nova notification
nova notification -disable
nova notification -enable

Recommended choices

If you are… Recommended setting Why
using Nova on a stable-only workstation or CI runner Disable prerelease notifications You avoid prerelease self-update targets entirely.
testing new Nova features early Enable prerelease notifications You allow prerelease targets, but still get an explicit confirmation prompt before they run.

Get-NovaUpdateNotificationPreference and nova notification return the current state and the settings path so you can confirm exactly what the stored preference is.