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
1 change: 0 additions & 1 deletion .github/ISSUE_TEMPLATE/feature_request.yml
Original file line number Diff line number Diff line change
Expand Up @@ -132,4 +132,3 @@ body:
required: true
- label: This is not a bug report or security vulnerability report.
required: true

6 changes: 6 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

### Fixed

- Fix unsupported `nova` help invocations so they now return Nova's structured CLI validation error instead of a
PowerShell parameter-binding failure.
- Keep manifest/package helper edge cases aligned with their intended behavior.
- Manifest settings resolution now accepts ordered dictionary metadata shapes in addition to plain hashtables.
- `New-NovaPackageArtifacts` now accepts an empty metadata list and returns an empty artifact result instead of
failing during parameter binding.
- Centralize delivery configuration resolution so raw package upload, update notification settings, and PSGallery
publishing now follow one explicit precedence model without surfacing configured secrets in error text.
- Raw upload now resolves command overrides before named repository settings, then package defaults.
Expand Down
2 changes: 1 addition & 1 deletion codecov.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,4 +5,4 @@ coverage:
target: auto
patch:
default:
target: 100%
target: 100%
1 change: 0 additions & 1 deletion docs/NovaModuleTools/en-US/Deploy-NovaPackage.md
Original file line number Diff line number Diff line change
Expand Up @@ -377,4 +377,3 @@ If no upload target can be resolved, `Deploy-NovaPackage` fails fast with a clea
- https://github.com/stiwicourage/NovaModuleTools/blob/main/docs/NovaModuleTools/en-US/New-NovaModulePackage.md
- https://github.com/stiwicourage/NovaModuleTools/blob/main/docs/NovaModuleTools/en-US/Invoke-NovaCli.md
- https://github.com/stiwicourage/NovaModuleTools/blob/main/docs/NovaModuleTools/en-US/Publish-NovaModule.md

1 change: 0 additions & 1 deletion src/private/build/GetNovaBuildProjectInfo.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,3 @@ function Get-NovaBuildProjectInfo {

return Get-NovaProjectInfo
}

1 change: 0 additions & 1 deletion src/private/build/GetNovaBuildWorkflowContext.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,3 @@ function Get-NovaBuildWorkflowContext {
Operation = 'Build Nova module output'
}
}

1 change: 0 additions & 1 deletion src/private/build/InvokeNovaBuildWorkflow.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -44,4 +44,3 @@ function Invoke-NovaBuildUpdateNotificationSafely {
$null = $_
}
}

1 change: 0 additions & 1 deletion src/private/cli/AddNovaCliHeaderOption.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -24,4 +24,3 @@ function Add-NovaCliHeaderOption {

$Options.Headers[$headerName] = $headerValue
}

1 change: 0 additions & 1 deletion src/private/cli/AddNovaCliOptionValue.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -13,4 +13,3 @@ function Add-NovaCliOptionValue {

$Options[$Name] = @($existingValue + $Value)
}

1 change: 0 additions & 1 deletion src/private/cli/ConvertFromNovaBuildCliArgument.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -9,4 +9,3 @@ function ConvertFrom-NovaBuildCliArgument {
'-i' = 'ContinuousIntegration'
}
}

1 change: 0 additions & 1 deletion src/private/cli/ConvertFromNovaBumpCliArgument.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -11,4 +11,3 @@ function ConvertFrom-NovaBumpCliArgument {
'-i' = 'ContinuousIntegration'
}
}

1 change: 0 additions & 1 deletion src/private/cli/ConvertFromNovaCliArgument.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -73,4 +73,3 @@ function ConvertFrom-NovaPackageCliArgument {

return ConvertFrom-NovaCliArgument -Arguments $Arguments -AllowedOptionNameList @('SkipTests')
}

2 changes: 0 additions & 2 deletions src/private/cli/ConvertFromNovaDeployCliArgument.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -49,5 +49,3 @@ function ConvertFrom-NovaDeployCliArgument {

return $options
}


1 change: 0 additions & 1 deletion src/private/cli/ConvertFromNovaTestCliArgument.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -9,4 +9,3 @@ function ConvertFrom-NovaTestCliArgument {
'-b' = 'Build'
}
}

4 changes: 0 additions & 4 deletions src/private/cli/FormatNovaCliCommandHelp.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -174,7 +174,3 @@ function Format-NovaCliCommandHelp {

return Format-NovaCliShortCommandHelp -Definition $Definition
}




1 change: 0 additions & 1 deletion src/private/cli/FormatNovaCliCommandResult.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -70,4 +70,3 @@ function Format-NovaCliCommandResult {

return $Result
}

1 change: 0 additions & 1 deletion src/private/cli/GetNovaCliCommandHelp.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -17,4 +17,3 @@ function Get-NovaCliCommandHelp {
$definition = Get-NovaCliCommandHelpDefinition -Command $Command
return Format-NovaCliCommandHelp -Definition $definition -View $View
}

1 change: 0 additions & 1 deletion src/private/cli/GetNovaCliCommandHelpDefinition.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -39,4 +39,3 @@ function Get-NovaCliCommandHelpDefinition {

return Import-PowerShellDataFile -Path (Get-NovaCliCommandHelpFilePath -Command $Command)
}

6 changes: 2 additions & 4 deletions src/private/cli/GetNovaCliHelpRequest.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ function Get-NovaCliRootHelpRequest {
return Get-NovaCliResolvedHelpRequest -Command $Arguments[0] -View Long -TargetType Command
}

Assert-NovaCliHelpUsageSupported -Tokens @('--help') + $Arguments
Assert-NovaCliHelpUsageSupported -Tokens (@('--help') + $Arguments)
}

function Get-NovaCliSubcommandHelpRequest {
Expand All @@ -63,7 +63,7 @@ function Get-NovaCliSubcommandHelpRequest {
}

if (@($Arguments | Where-Object {Test-NovaCliHelpToken -Argument $_}).Count -gt 0) {
Assert-NovaCliHelpUsageSupported -Tokens @($Command) + $Arguments
Assert-NovaCliHelpUsageSupported -Tokens (@($Command) + $Arguments)
}

return $null
Expand All @@ -83,5 +83,3 @@ function Get-NovaCliHelpRequest {

return Get-NovaCliSubcommandHelpRequest -Command $normalizedCommand -Arguments $Arguments
}


1 change: 0 additions & 1 deletion src/private/cli/GetNovaCliRequiredArgumentValue.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -13,4 +13,3 @@ function Get-NovaCliRequiredArgumentValue {

return $Arguments[$Index.Value]
}

2 changes: 0 additions & 2 deletions src/private/cli/InvokeNovaCliDeployCommand.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -8,5 +8,3 @@ function Invoke-NovaCliDeployCommand {
$options = ConvertFrom-NovaDeployCliArgument -Arguments $Arguments
return Deploy-NovaPackage @options @ForwardedParameters
}


1 change: 0 additions & 1 deletion src/private/cli/InvokeNovaCliInitCommand.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -13,4 +13,3 @@ function Invoke-NovaCliInitCommand {
$options = ConvertFrom-NovaInitCliArgument -Arguments $Arguments
return Initialize-NovaModule @options @ForwardedParameters
}

1 change: 0 additions & 1 deletion src/private/cli/InvokeNovaCliNotificationCommand.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -20,4 +20,3 @@ function Invoke-NovaCliNotificationCommand {
}
}
}

1 change: 0 additions & 1 deletion src/private/package/AddNovaZipFileEntry.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -17,4 +17,3 @@ function Add-NovaZipFileEntry {
$entryStream.Dispose()
}
}

1 change: 0 additions & 1 deletion src/private/package/AddNovaZipTextEntry.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -15,4 +15,3 @@ function Add-NovaZipTextEntry {
$streamWriter.Dispose()
}
}

1 change: 0 additions & 1 deletion src/private/package/AssertNovaPackageMetadata.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -15,4 +15,3 @@ function Assert-NovaPackageMetadata {
Stop-NovaOperation -Message 'Missing package metadata value: Authors' -ErrorId 'Nova.Configuration.PackageMetadataValueMissing' -Category InvalidData -TargetObject 'Authors'
}
}

Original file line number Diff line number Diff line change
Expand Up @@ -16,4 +16,3 @@ function Assert-NovaPackageOutputDirectoryCanBeCleared {
}
}
}

1 change: 0 additions & 1 deletion src/private/package/GetNovaManifestValue.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -16,4 +16,3 @@ function Get-NovaManifestValue {

return $property.Value
}

1 change: 0 additions & 1 deletion src/private/package/GetNovaPackageArtifactPatternInfo.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -20,4 +20,3 @@ function Get-NovaPackageArtifactPatternInfo {
ExplicitPackageType = $explicitPackageType
}
}

Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,3 @@ function Get-NovaPackageArtifactSearchPattern {

return "$( $patternInfo.Pattern )$( Get-NovaPackageTypeExtension -PackageType $PackageType )"
}

1 change: 0 additions & 1 deletion src/private/package/GetNovaPackageArtifactType.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -17,4 +17,3 @@ function Get-NovaPackageArtifactType {
Stop-NovaOperation -Message $errorMessage -ErrorId 'Nova.Validation.UnsupportedPackageUploadFileType' -Category InvalidArgument -TargetObject $PackagePath
}
}

1 change: 0 additions & 1 deletion src/private/package/GetNovaPackageAuthorList.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -27,4 +27,3 @@ function Get-NovaPackageAuthorList {
Select-Object -Unique
)
}

1 change: 0 additions & 1 deletion src/private/package/GetNovaPackageContentItemList.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -24,4 +24,3 @@ function Get-NovaPackageContentItemList {
}
)
}

1 change: 0 additions & 1 deletion src/private/package/GetNovaPackageFileName.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -69,4 +69,3 @@ function ConvertTo-NovaLatestPackageFileName {

return $PackageFileName
}

1 change: 0 additions & 1 deletion src/private/package/GetNovaPackageMetadata.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -58,4 +58,3 @@ function Get-NovaPackageMetadata {
ContentRoot = $contentRoot
}
}

1 change: 0 additions & 1 deletion src/private/package/GetNovaPackageMetadataElement.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,3 @@ function Get-NovaPackageMetadataElement {
$escapedValue = [System.Security.SecurityElement]::Escape($Value)
return " <$Name>$escapedValue</$Name>"
}

1 change: 0 additions & 1 deletion src/private/package/GetNovaPackageOutputDirectory.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -17,4 +17,3 @@ function Get-NovaPackageOutputDirectory {

return [System.IO.Path]::Join($ProjectInfo.ProjectRoot, $outputDirectory)
}

1 change: 0 additions & 1 deletion src/private/package/GetNovaPackageRepository.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -26,4 +26,3 @@ function Get-NovaPackageRepository {

Stop-NovaOperation -Message "Package repository not found: $Repository. Define it under Package.Repositories in project.json or provide -Url." -ErrorId 'Nova.Configuration.PackageRepositoryNotFound' -Category InvalidData -TargetObject $Repository
}

1 change: 0 additions & 1 deletion src/private/package/GetNovaPackageSettingValue.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -23,4 +23,3 @@ function Get-NovaPackageSettingValue {

return $null
}

1 change: 0 additions & 1 deletion src/private/package/GetNovaPackageTypeExtension.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -11,4 +11,3 @@ function Get-NovaPackageTypeExtension {

return '.nupkg'
}

1 change: 0 additions & 1 deletion src/private/package/GetNovaPackageUploadArtifact.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -15,4 +15,3 @@ function Get-NovaPackageUploadArtifact {
UploadUrl = Join-NovaPackageUploadUrl -Url $UploadTarget.Url -UploadPath $UploadTarget.UploadPath -PackageFileName $PackageFileInfo.PackageFileName
}
}

1 change: 0 additions & 1 deletion src/private/package/GetNovaPackageUploadAuthHeaderName.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -11,4 +11,3 @@ function Get-NovaPackageUploadAuthHeaderName {

return "$headerName".Trim()
}

Original file line number Diff line number Diff line change
Expand Up @@ -24,4 +24,3 @@ function Get-NovaPackageUploadAuthHeaderValue {

return "$("$scheme".Trim() ) $Token"
}

1 change: 0 additions & 1 deletion src/private/package/GetNovaPackageUploadFileList.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,3 @@ function Get-NovaPackageUploadFileList {

return @(Resolve-NovaPackageUploadOutputFileList -ProjectInfo $ProjectInfo -PackageType $PackageType)
}

1 change: 0 additions & 1 deletion src/private/package/GetNovaPackageUploadPath.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,3 @@ function Get-NovaPackageUploadPath {

return "$( $resolvedUploadPath )".Trim()
}

1 change: 0 additions & 1 deletion src/private/package/GetNovaPackageUploadStatusCode.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,3 @@ function Get-NovaPackageUploadStatusCode {

return $null
}

Original file line number Diff line number Diff line change
Expand Up @@ -11,4 +11,3 @@ function Get-NovaPackageUploadTargetSettingBundle {
Auth = Merge-NovaPackageSettingTable -BaseSettings (Get-NovaPackageSettingValue -InputObject $PackageSettings -Name 'Auth') -OverrideSettings (Get-NovaPackageSettingValue -InputObject $RepositorySettings -Name 'Auth')
}
}

1 change: 0 additions & 1 deletion src/private/package/GetNovaPackageUploadTargetUrl.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -18,4 +18,3 @@ function Get-NovaPackageUploadTargetUrl {

return "$resolvedUrl".Trim()
}

1 change: 0 additions & 1 deletion src/private/package/GetNovaPackageUploadToken.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -13,4 +13,3 @@ function Get-NovaPackageUploadToken {
ConfiguredValue = Get-NovaPackageSettingValue -InputObject $AuthSettings -Name 'Token'
})
}

Original file line number Diff line number Diff line change
Expand Up @@ -29,4 +29,3 @@ function Get-NovaPackageUploadWorkflowContext {
Operation = Get-NovaPackageUploadWorkflowOperation -UploadArtifactList $uploadArtifactList
}
}

Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,3 @@ function Get-NovaPackageUploadWorkflowOperation {

return "Upload $( $UploadArtifactList.Count ) package artifacts"
}

1 change: 0 additions & 1 deletion src/private/package/GetNovaPackageUploadWorkflowTarget.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,3 @@ function Get-NovaPackageUploadWorkflowTarget {

return ($UploadArtifactList | ForEach-Object {$_.UploadUrl}) -join ', '
}

1 change: 0 additions & 1 deletion src/private/package/JoinNovaPackageUploadUrl.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,3 @@ function Join-NovaPackageUploadUrl {
$urlPartList += [System.Uri]::EscapeDataString($PackageFileName)
return $urlPartList -join '/'
}

2 changes: 1 addition & 1 deletion src/private/package/NewNovaPackageArtifacts.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ function New-NovaPackageArtifacts {
[CmdletBinding()]
param(
[Parameter(Mandatory)][pscustomobject]$ProjectInfo,
[Parameter(Mandatory)][object[]]$PackageMetadataList
[Parameter(Mandatory)][AllowEmptyCollection()][object[]]$PackageMetadataList
)

$resolvedPackageMetadataList = @($PackageMetadataList)
Expand Down
1 change: 0 additions & 1 deletion src/private/package/NewNovaPackageContentTypesXml.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -38,4 +38,3 @@ function New-NovaPackageContentTypesXml {
$xmlLines += '</Types>'
return $xmlLines -join [Environment]::NewLine
}

1 change: 0 additions & 1 deletion src/private/package/NewNovaPackageCorePropertiesXml.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -23,4 +23,3 @@ function New-NovaPackageCorePropertiesXml {
'</coreProperties>'
) -join [Environment]::NewLine
}

1 change: 0 additions & 1 deletion src/private/package/NewNovaPackageNuspecXml.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -25,4 +25,3 @@ function New-NovaPackageNuspecXml {
'</package>'
) -join [Environment]::NewLine
}

1 change: 0 additions & 1 deletion src/private/package/NewNovaPackageRelationshipsXml.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,3 @@ function New-NovaPackageRelationshipsXml {
'</Relationships>'
) -join [Environment]::NewLine
}

Original file line number Diff line number Diff line change
Expand Up @@ -16,4 +16,3 @@ function Resolve-NovaPackageUploadAuthHeaderEntry {
Value = Get-NovaPackageUploadAuthHeaderValue -AuthSettings $AuthSettings -AuthenticationScheme $UploadOption.AuthenticationScheme -HeaderName $headerName -Token $resolvedToken
}
}

1 change: 0 additions & 1 deletion src/private/package/ResolveNovaPackageUploadHeaders.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -15,4 +15,3 @@ function Resolve-NovaPackageUploadHeaders {
$resolvedHeaders[$authHeaderEntry.Name] = $authHeaderEntry.Value
return $resolvedHeaders
}

1 change: 0 additions & 1 deletion src/private/package/ResolveNovaPackageUploadTarget.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -21,4 +21,3 @@ function Resolve-NovaPackageUploadTarget {
Auth = $targetSettings.Auth
}
}

1 change: 0 additions & 1 deletion src/private/package/ResolveNovaPackageUploadTypeList.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -48,4 +48,3 @@ function Resolve-NovaRequestedPackageUploadTypeList {

Stop-NovaOperation -Message "Package.FileNamePattern '$( $PatternInfo.Pattern )' resolves to type '$( $PatternInfo.ExplicitPackageType )', but requested PackageType values are: $( $resolvedTypeList -join ', ' )." -ErrorId 'Nova.Validation.PackageUploadPatternConflict' -Category InvalidArgument -TargetObject $PatternInfo.Pattern
}

1 change: 0 additions & 1 deletion src/private/package/TestNovaPathContainsPath.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -13,4 +13,3 @@ function Test-NovaPathContainsPath {

return $normalizedChildPath.StartsWith("$normalizedParentPath$( [System.IO.Path]::DirectorySeparatorChar )", [System.StringComparison]::OrdinalIgnoreCase)
}

4 changes: 0 additions & 4 deletions src/private/quality/GetNovaTestWorkflowContext.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,3 @@ function Get-NovaTestOptionValue {

return $null
}




2 changes: 0 additions & 2 deletions src/private/quality/InvokeNovaTestWorkflow.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -77,5 +77,3 @@ function Initialize-NovaPesterArtifactDirectory {

$null = New-Item -ItemType Directory -Path $WorkflowContext.TestResultDirectory -Force
}


Original file line number Diff line number Diff line change
Expand Up @@ -9,4 +9,3 @@ function New-NovaTestDynamicParameterDictionary {
$dictionary.Add('Build',[System.Management.Automation.RuntimeDefinedParameter]::new('Build', [switch],$attributeCollection))
return $dictionary
}

Original file line number Diff line number Diff line change
Expand Up @@ -15,4 +15,3 @@ function Get-NovaVersionUpdateCiActivatedCommand {
$importedModule = Import-NovaBuiltModuleForCi -ProjectInfo $projectInfo
return $importedModule.ExportedCommands['Update-NovaModuleVersion']
}

1 change: 0 additions & 1 deletion src/private/release/WriteNovaPublishWorkflowContext.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,3 @@ function Write-NovaPublishWorkflowContext {
Write-NovaLocalWorkflowMode -WorkflowName $WorkflowContext.WorkflowName -LocalRequested:$WorkflowContext.LocalRequested
Write-NovaResolvedLocalPublishTarget -PublishInvocation $WorkflowContext.PublishInvocation
}

1 change: 0 additions & 1 deletion src/private/shared/ConvertToNovaPackageType.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -22,4 +22,3 @@ function ConvertTo-NovaPackageType {
}
}
}

1 change: 0 additions & 1 deletion src/private/shared/GetNovaEnvironmentVariableValue.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,3 @@ function Get-NovaEnvironmentVariableValue {

return [System.Environment]::GetEnvironmentVariable($Name.Trim())
}

1 change: 0 additions & 1 deletion src/private/shared/GetNovaProjectInfoContext.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -16,4 +16,3 @@ function Get-NovaProjectInfoContext {
JsonData = Read-ProjectJsonData -ProjectJsonPath $projectJson
}
}

Loading
Loading