Skip to content
Closed
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
4 changes: 2 additions & 2 deletions eng/scripts/Language-Settings.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ $LanguageDisplayName = "go"
function Get-GoModuleVersionInfo($modPath)
{
$NO_PREFIX_VERSION_LINE_REGEX = ".+\s*=\s*`"(?<bad_version>$([AzureEngSemanticVersion]::SEMVER_REGEX))`""
$VERSION_LINE_REGEX = ".+\s*=\s*`".*v(?<version>$([AzureEngSemanticVersion]::SEMVER_REGEX))`""
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is just changing the named group in a RegEx which isn't used outside of this regex and matching. Thus this is pretty much a noop, what is it that you are trying to update?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The variable name has changed from version to moduleVersion, I am looking for the regex that searches for this

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looking at this more in depth, I don't think there is a check on the variable version. Is that correct @weshaggard ? It looks like it's doing a search for semantic versioning in a specific file.

Copy link
Copy Markdown
Member

@weshaggard weshaggard Jan 12, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That is correct this regex is only looking for something that looks like "=v". If it finds that in one of the file names we look in hen it assumes that is the module version. If we trying to be more prescriptive then we would want to do something like moduleVersion\s*=\s*``".*v(?<version>$([AzureEngSemanticVersion]::SEMVER_REGEX))``"

If we do this we need to verify that all the existing versions currently match that or it will throw off a number of processes in this repo.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For now I don't think we need to be more prescriptive. I am going to close this PR.

$VERSION_LINE_REGEX = ".+\s*=\s*`".*v(?<moduleVersion>$([AzureEngSemanticVersion]::SEMVER_REGEX))`""
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You'll need to update line 24 below.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done, thank you


$versionFiles = Get-ChildItem -Recurse -Path $modPath -Filter *.go

Expand All @@ -21,7 +21,7 @@ function Get-GoModuleVersionInfo($modPath)

# finding where the version number are
if ($content -match $VERSION_LINE_REGEX) {
return "$($matches["version"])", $versionFile
return "$($matches["moduleVersion"])", $versionFile
}

# This is an easy mistake to make (X.Y.Z instead of vX.Y.Z) so add a very clear error log to make debugging easier
Expand Down