@@ -35,9 +35,8 @@ switch ($true) {
3535# endregion HarmonizeVariables
3636
3737if ($VersionToPublish ) {
38- $VersionToPublish = $VersionToPublish.TrimStart (' v' ) -as [ Version ]
38+ $VersionToPublish = $VersionToPublish.TrimStart (' v' )
3939}
40- $currentVersion = (Get-Metadata - Path $env: BHPSModuleManifest ) -as [Version ]
4140$builtManifestPath = " $env: BHBuildOutput /$env: BHProjectName /$env: BHProjectName .psd1"
4241
4342Task ShowDebugInfo {
@@ -55,7 +54,6 @@ Task ShowDebugInfo {
5554 Write-Build Gray (' BHCommitHash: {0}' -f $env: BHCommitHash )
5655 Write-Build Gray (' BHCommitMessage: {0}' -f $env: BHCommitMessage )
5756 Write-Build Gray (' BHBuildNumber {0}' -f $env: BHBuildNumber )
58- Write-Build Gray (' CurrentVersion {0}' -f $currentVersion )
5957 Write-Build Gray (' VersionToPublish {0}' -f $VersionToPublish )
6058 Write-Build Gray ' -------------------------------------------------------'
6159 Write-Build Gray (' PowerShell version: {0}' -f $PSVersionTable.PSVersion.ToString ())
@@ -151,10 +149,24 @@ Task UpdateManifest {
151149}
152150
153151Task SetVersion {
154- Assert-True { $VersionToPublish -as [Version ] } " Invalid version format: $VersionToPublish "
155- Assert-True { $VersionToPublish -gt $currentVersion } " Version must be greater than the current version: $currentVersion "
152+ [System.Management.Automation.SemanticVersion ]$versionToPublish = $VersionToPublish
156153
157- Metadata\Update-Metadata - Path $builtManifestPath - PropertyName " ModuleVersion" - Value $VersionToPublish.ToString ()
154+ $latestPublished = Get-LatestPublishedVersion - Name $env: BHProjectName
155+
156+ Write-Build Gray " Latest published version: $latestPublished "
157+ Assert-True { $versionToPublish -gt $latestPublished } " Version must be greater than latest published version: $latestPublished "
158+
159+ $versionString = " {0}.{1}.{2}" -f $versionToPublish.Major , $versionToPublish.Minor , $versionToPublish.Patch
160+ Metadata\Update-Metadata - Path $builtManifestPath - PropertyName " ModuleVersion" - Value $versionString
161+
162+ if ($versionToPublish.PreReleaseLabel ) {
163+ Write-Build Gray " Setting Prerelease label: $ ( $versionToPublish.PreReleaseLabel ) "
164+ Metadata\Update-Metadata - Path $builtManifestPath - PropertyName " Prerelease" - Value $versionToPublish.PreReleaseLabel
165+ }
166+ else {
167+ Write-Build Gray " Removing Prerelease label (stable release)"
168+ Metadata\Update-Metadata - Path $builtManifestPath - PropertyName " Prerelease" - Value ' '
169+ }
158170}
159171
160172Task Test {
0 commit comments