Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,11 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),

### Changed

- `Get-NovaProjectInfo` now aligns its installed-version views with the existing CLI version contract.
- `-Installed` now returns the installed version of the current project/module from the local module path.
- `-InstalledNovaVersion` now returns the installed `NovaModuleTools` module name and version from PowerShell.
- `Update-NovaModuleTool` now suggests `Get-NovaProjectInfo -InstalledNovaVersion` after a successful self-update so the PowerShell verification step checks the installed NovaModuleTools version directly.

### Deprecated

### Removed
Expand Down Expand Up @@ -468,4 +473,3 @@ This release was yanked because it removed the implicit `Pester` dependency, bef
[0.0.6]: https://github.com/stiwicourage/NovaModuleTools/compare/Version_0.0.5...Version_0.0.6
[0.0.5]: https://github.com/stiwicourage/NovaModuleTools/compare/Version_0.0.4...Version_0.0.5
[0.0.4]: https://github.com/stiwicourage/NovaModuleTools/compare/Version_0.0.3...Version_0.0.4

6 changes: 5 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -130,7 +130,9 @@ To inspect the current project version, the installed version of the current pro
`NovaModuleTools` tool version, use:

```powershell
PS> Get-NovaProjectInfo -Version
PS> Get-NovaProjectInfo -Installed
PS> Get-NovaProjectInfo -InstalledNovaVersion
% nova version
% nova version --installed
% nova version -i
Expand All @@ -140,7 +142,9 @@ PS> Get-NovaProjectInfo -Installed

- `% nova version` shows the version from the current project's `project.json`
- `% nova version --installed` / `% nova version -i` shows the locally installed version of the current project/module from the local module path
- `Get-NovaProjectInfo -Installed` shows the installed `NovaModuleTools` module name and version from PowerShell
- `Get-NovaProjectInfo -Version` shows the version from the current project's `project.json`
- `Get-NovaProjectInfo -Installed` shows the locally installed version of the current project/module from PowerShell
- `Get-NovaProjectInfo -InstalledNovaVersion` shows the installed `NovaModuleTools` module name and version from PowerShell
- `% nova --version` / `% nova -v` shows the installed `NovaModuleTools` version

### CLI help
Expand Down
6 changes: 5 additions & 1 deletion RELEASE_NOTE.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,11 @@ This file summarizes the release notes for NovaModuleTools. **UNRELEASED** chang

### Changed

- `Get-NovaProjectInfo` now matches the CLI version split on the PowerShell surface.
- Use `-Installed` for the installed current project/module version.
- Use `-InstalledNovaVersion` for the installed `NovaModuleTools` version.
- `Update-NovaModuleTool` now suggests `Get-NovaProjectInfo -InstalledNovaVersion` after a successful self-update.

### Deprecated

### Removed
Expand Down Expand Up @@ -226,4 +231,3 @@ This release was yanked because it removed the implicit `Pester` dependency befo
## [0.0.4] - 2024-06-25
### Added
- First PowerShell Gallery release of NovaModuleTools with the initial module workflow support.

144 changes: 96 additions & 48 deletions docs/NovaModuleTools/en-US/Get-NovaProjectInfo.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
---
---
document type: cmdlet
external help file: NovaModuleTools-Help.xml
HelpUri: 'https://www.novamoduletools.com/project-json-reference.html'
HelpUri: https://www.novamoduletools.com/project-json-reference.html
Locale: en-US
Module Name: NovaModuleTools
ms.date: 05/06/2026
ms.date: 05.25.2026
PlatyPS schema version: 2024-05-01
title: Get-NovaProjectInfo
---
Expand All @@ -17,24 +17,32 @@ Reads `project.json` and returns resolved NovaModuleTools project metadata or a

## SYNTAX

### ProjectInfo
### ProjectInfo (Default)

```text
PS> Get-NovaProjectInfo [[-Path] <string>] [<CommonParameters>]
```
Get-NovaProjectInfo [[-Path] <string>] [<CommonParameters>]
```

### ProjectVersion

```text
PS> Get-NovaProjectInfo [[-Path] <string>] [-Version] [<CommonParameters>]
```
Get-NovaProjectInfo [[-Path] <string>] [-Version] [<CommonParameters>]
```

### InstalledVersion
### InstalledProjectVersion

```text
PS> Get-NovaProjectInfo [-Installed] [<CommonParameters>]
```
Get-NovaProjectInfo [-Installed] [<CommonParameters>]
```

### InstalledNovaVersion

```
Get-NovaProjectInfo [-InstalledNovaVersion] [<CommonParameters>]
```

## ALIASES

## DESCRIPTION

`Get-NovaProjectInfo` reads the `project.json` file in a NovaModuleTools project and returns a project information object with:
Expand All @@ -48,7 +56,11 @@ Use this command from scripts, tests, or troubleshooting when you want one objec

When you use `-Version`, the command returns only the project version string instead of the full project object.

When you use `-Installed`, the command returns the installed `NovaModuleTools` module name and version string instead of project metadata.
When you use `-Installed`, the command returns the installed version of the current project/module from the local
module path instead of project metadata.

When you use `-InstalledNovaVersion`, the command returns the installed `NovaModuleTools` module name and version
string.

When `-Path` does not resolve to an existing project root folder, or the folder does not contain `project.json`,
the command fails with an actionable error that tells you how to recover.
Expand Down Expand Up @@ -85,84 +97,114 @@ Returns only the version string from `project.json`.
PS> Get-NovaProjectInfo -Installed
```

Returns the installed version of the current project/module from the local module path.

### EXAMPLE 5

```text
PS> Get-NovaProjectInfo -InstalledNovaVersion
```

Returns the installed `NovaModuleTools` module name and version string.

## PARAMETERS

### -Path
### -Installed

Project root path that contains `project.json`.
Return the installed version of the current project/module from the local module path instead of project metadata.

```yaml
Type: System.String
DefaultValue: (Get-Location).Path
Type: System.Management.Automation.SwitchParameter
DefaultValue: False
SupportsWildcards: false
Aliases: []
ParameterSets:
- Name: ProjectInfo
Position: 0
IsRequired: false
ValueFromPipeline: false
ValueFromPipelineByPropertyName: false
ValueFromRemainingArguments: false
- Name: ProjectVersion
Position: 0
IsRequired: false
ValueFromPipeline: false
ValueFromPipelineByPropertyName: false
ValueFromRemainingArguments: false
- Name: InstalledProjectVersion
Position: Named
IsRequired: false
ValueFromPipeline: false
ValueFromPipelineByPropertyName: false
ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''
```

### -Version
### -InstalledNovaVersion

Return only the project version string instead of the full project information object.
Return the installed `NovaModuleTools` module name and version string instead of project metadata.

```yaml
Type: System.Management.Automation.SwitchParameter
DefaultValue: False
SupportsWildcards: false
Aliases: []
ParameterSets:
- Name: ProjectVersion
Position: Named
IsRequired: false
ValueFromPipeline: false
ValueFromPipelineByPropertyName: false
ValueFromRemainingArguments: false
- Name: InstalledNovaVersion
Position: Named
IsRequired: false
ValueFromPipeline: false
ValueFromPipelineByPropertyName: false
ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''
```

### -Installed
### -Path

Return the installed `NovaModuleTools` module name and version string instead of project metadata.
Project root path that contains `project.json`.

```yaml
Type: System.String
DefaultValue: (Get-Location).Path
SupportsWildcards: false
Aliases: []
ParameterSets:
- Name: ProjectVersion
Position: 0
IsRequired: false
ValueFromPipeline: false
ValueFromPipelineByPropertyName: false
ValueFromRemainingArguments: false
- Name: ProjectInfo
Position: 0
IsRequired: false
ValueFromPipeline: false
ValueFromPipelineByPropertyName: false
ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''
```

### -Version

Return only the project version string instead of the full project information object.

```yaml
Type: System.Management.Automation.SwitchParameter
DefaultValue: False
SupportsWildcards: false
Aliases: []
ParameterSets:
- Name: InstalledVersion
Position: Named
IsRequired: false
ValueFromPipeline: false
ValueFromPipelineByPropertyName: false
ValueFromRemainingArguments: false
- Name: ProjectVersion
Position: Named
IsRequired: false
ValueFromPipeline: false
ValueFromPipelineByPropertyName: false
ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''
```

### CommonParameters

This cmdlet supports the common parameters: `-Debug`, `-ErrorAction`, `-ErrorVariable`, `-InformationAction`,
`-InformationVariable`, `-OutBuffer`, `-OutVariable`, `-PipelineVariable`, `-ProgressAction`, `-Verbose`,
`-WarningAction`, and `-WarningVariable`.
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable,
-InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable,
-ProgressAction, -Verbose, -WarningAction, and -WarningVariable. For more information, see
[about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216).

## INPUTS

Expand All @@ -184,14 +226,20 @@ Returned when you use `-Installed`.

Returned by default. The object includes project metadata, defaulted build settings, and resolved paths.

### System.String

Returned when you use `-InstalledNovaVersion`.

## NOTES

This command throws a clear error when `project.json` is missing or empty.

If `-Path` points to a file or a folder that does not exist, `Get-NovaProjectInfo` tells you to rerun it from a
Nova project root or pass `-Path` to the folder that contains `project.json`.

`-Installed` does not require a project path or a `project.json` file.
`-Installed` resolves the current Nova project and then reads the installed module version from the local module path.

`-InstalledNovaVersion` does not require a project path or a `project.json` file.

## RELATED LINKS

Expand Down
2 changes: 1 addition & 1 deletion docs/NovaModuleTools/en-US/Update-NovaModuleTools.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ Stable updates do not require prerelease confirmation.

When a newer version is available, `Update-NovaModuleTool` shows progress while it installs the update and reads the release-notes link from the updated module. Every command path ends with a visible summary: up-to-date, preview, cancelled, or updated.

After a successful update, `Update-NovaModuleTool` prints the release notes link from the installed module manifest and suggests `Get-NovaProjectInfo -Installed` as the next verification step.
After a successful update, `Update-NovaModuleTool` prints the release notes link from the installed module manifest and suggests `Get-NovaProjectInfo -InstalledNovaVersion` as the next verification step.

## EXAMPLES

Expand Down
13 changes: 8 additions & 5 deletions docs/commands.html
Original file line number Diff line number Diff line change
Expand Up @@ -268,7 +268,7 @@ <h3>Inspect the current project</h3>
<li><strong>Use when:</strong> you need to confirm what Nova resolved from
<code>project.json</code></li>
<li data-command-visibility="powershell"><strong>Extra views:</strong>
<code>-Version</code> and <code>-Installed</code></li>
<code>-Version</code>, <code>-Installed</code>, and <code>-InstalledNovaVersion</code></li>
</ul>
<div class="surface-example" data-command-example>
<div class="surface-example__meta">
Expand All @@ -282,8 +282,9 @@ <h3>Inspect the current project</h3>
<div class="surface-example__surface" data-command-surface="powershell">
<pre><code>PS&gt; Get-NovaProjectInfo
PS&gt; Get-NovaProjectInfo -Version
PS&gt; Get-NovaProjectInfo -Installed</code></pre>
</div>
PS&gt; Get-NovaProjectInfo -Installed
PS&gt; Get-NovaProjectInfo -InstalledNovaVersion</code></pre>
</div>
</div>
<p><a class="text-link" href="./project-json-reference.html">See project.json behavior</a></p>
</article>
Expand Down Expand Up @@ -589,7 +590,8 @@ <h3>Check the version you actually mean</h3>
</li>
<li data-command-visibility="powershell"><strong>Use:</strong>
<code>Get-NovaProjectInfo -Version</code> for <code>project.json</code> and
<code>Get-NovaProjectInfo -Installed</code> for the installed NovaModuleTools tool
<code>Get-NovaProjectInfo -Installed</code> for the installed current project/module and
<code>Get-NovaProjectInfo -InstalledNovaVersion</code> for the installed NovaModuleTools tool
version
</li>
</ul>
Expand All @@ -608,7 +610,8 @@ <h3>Check the version you actually mean</h3>
</div>
<div class="surface-example__surface" data-command-surface="powershell">
<pre><code>PS&gt; Get-NovaProjectInfo -Version
PS&gt; Get-NovaProjectInfo -Installed</code></pre>
PS&gt; Get-NovaProjectInfo -Installed
PS&gt; Get-NovaProjectInfo -InstalledNovaVersion</code></pre>
</div>
</div>
<p><a class="text-link" href="./versioning-and-updates.html#version-views">See version view
Expand Down
13 changes: 4 additions & 9 deletions docs/versioning-and-updates.html
Original file line number Diff line number Diff line change
Expand Up @@ -113,14 +113,14 @@ <h2>Choose the right version command</h2>
<td>Use this when you want to know what your project will build and publish as.</td>
</tr>
<tr>
<td><code>% nova version --installed</code> or <code>% nova version -i</code></td>
<td><code>Get-NovaProjectInfo -Installed</code> or <code>% nova version --installed</code></td>
<td>The version installed locally for the current project/module from the module path.</td>
<td>Use this when you want to compare the installed copy against the current working
project.
</td>
</tr>
<tr>
<td><code>Get-NovaProjectInfo -Installed</code> or <code>% nova --version</code></td>
<td><code>Get-NovaProjectInfo -InstalledNovaVersion</code> or <code>% nova --version</code></td>
<td>The installed NovaModuleTools version.</td>
<td>Use this when you are troubleshooting Nova itself or checking whether the tool needs an
update.
Expand All @@ -137,7 +137,8 @@ <h2>Choose the right version command</h2>
</div>
<div class="surface-example__surface" data-command-surface="powershell">
<pre><code>PS&gt; Get-NovaProjectInfo -Version
PS&gt; Get-NovaProjectInfo -Installed</code></pre>
PS&gt; Get-NovaProjectInfo -Installed
PS&gt; Get-NovaProjectInfo -InstalledNovaVersion</code></pre>
</div>
<div class="surface-example__surface" data-command-surface="command-line" hidden>
<pre><code>% nova version
Expand All @@ -147,12 +148,6 @@ <h2>Choose the right version command</h2>
% nova -v</code></pre>
</div>
</div>
<div class="surface-note" data-command-visibility="powershell">
<p><strong>PowerShell note:</strong> project version lookup and installed-tool version lookup both
have direct
cmdlet forms. The installed current-project module view remains launcher-oriented on this page,
as shown in the comparison table above.</p>
</div>
</section>

<section class="content-section" id="bump">
Expand Down
2 changes: 1 addition & 1 deletion src/private/update/InvokeNovaModuleSelfUpdateWorkflow.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -215,6 +215,6 @@ function Get-NovaModuleSelfUpdateWorkflowNextStepLine {

return @(
'Next step:'
'Get-NovaProjectInfo -Installed'
'Get-NovaProjectInfo -InstalledNovaVersion'
)
}
Loading
Loading