diff --git a/README.md b/README.md index b65faa3..baa354d 100644 --- a/README.md +++ b/README.md @@ -219,10 +219,13 @@ jobs: ## Additional notes * This action searches for the following version declarations: - * for .csproj, .vbproj, .fsproj, .props, and .nuspec files: + * for .csproj, .vbproj, .fsproj, and .props files: * `...`; + * `...`; * `...`; * `...`; + * for .nuspec files: + * `...`; * for .cs files: * `[assembly: AssemblyVersion("...")]`; * `[assembly: AssemblyFileVersion("...")]`; diff --git a/src/plugins/csproj-plugin.ts b/src/plugins/csproj-plugin.ts index 4cb7a4b..e789a45 100644 --- a/src/plugins/csproj-plugin.ts +++ b/src/plugins/csproj-plugin.ts @@ -1,6 +1,7 @@ import Plugin, { PluginVersionRegex, VersionPartDelimiter } from "./plugin"; const VERSION_TAG_REGEX: RegExp = /(.*)<\/Version>/i; +const VERSION_PREFIX_TAG_REGEX: RegExp = /(.*)<\/VersionPrefix>/i; const ASSEMBLY_VERSION_TAG_REGEX: RegExp = /(.*)<\/AssemblyVersion>/i; const FILE_VERSION_TAG_REGEX: RegExp = /(.*)<\/FileVersion>/i; @@ -15,6 +16,11 @@ export default class CsProjPlugin extends Plugin versionPartDelimiter: VersionPartDelimiter.DOT, versionType: " tag" }, + { + regex: VERSION_PREFIX_TAG_REGEX, + versionPartDelimiter: VersionPartDelimiter.DOT, + versionType: " tag" + }, { regex: ASSEMBLY_VERSION_TAG_REGEX, versionPartDelimiter: VersionPartDelimiter.DOT, diff --git a/src/plugins/fsproj-plugin.ts b/src/plugins/fsproj-plugin.ts index 0637d3e..366ce4a 100644 --- a/src/plugins/fsproj-plugin.ts +++ b/src/plugins/fsproj-plugin.ts @@ -1,6 +1,7 @@ import Plugin, { PluginVersionRegex, VersionPartDelimiter } from "./plugin"; const VERSION_TAG_REGEX: RegExp = /(.*)<\/Version>/i; +const VERSION_PREFIX_TAG_REGEX: RegExp = /(.*)<\/VersionPrefix>/i; const ASSEMBLY_VERSION_TAG_REGEX: RegExp = /(.*)<\/AssemblyVersion>/i; const FILE_VERSION_TAG_REGEX: RegExp = /(.*)<\/FileVersion>/i; @@ -15,6 +16,11 @@ export default class FsProjPlugin extends Plugin versionPartDelimiter: VersionPartDelimiter.DOT, versionType: " tag" }, + { + regex: VERSION_PREFIX_TAG_REGEX, + versionPartDelimiter: VersionPartDelimiter.DOT, + versionType: " tag" + }, { regex: ASSEMBLY_VERSION_TAG_REGEX, versionPartDelimiter: VersionPartDelimiter.DOT, diff --git a/src/plugins/props-plugin.ts b/src/plugins/props-plugin.ts index af34425..76322d2 100644 --- a/src/plugins/props-plugin.ts +++ b/src/plugins/props-plugin.ts @@ -1,6 +1,7 @@ import Plugin, { PluginVersionRegex, VersionPartDelimiter } from "./plugin"; const VERSION_TAG_REGEX: RegExp = /(.*)<\/Version>/i; +const VERSION_PREFIX_TAG_REGEX: RegExp = /(.*)<\/VersionPrefix>/i; const ASSEMBLY_VERSION_TAG_REGEX: RegExp = /(.*)<\/AssemblyVersion>/i; const FILE_VERSION_TAG_REGEX: RegExp = /(.*)<\/FileVersion>/i; @@ -15,6 +16,11 @@ export default class PropsPlugin extends Plugin versionPartDelimiter: VersionPartDelimiter.DOT, versionType: " tag" }, + { + regex: VERSION_PREFIX_TAG_REGEX, + versionPartDelimiter: VersionPartDelimiter.DOT, + versionType: " tag" + }, { regex: ASSEMBLY_VERSION_TAG_REGEX, versionPartDelimiter: VersionPartDelimiter.DOT, diff --git a/src/plugins/vbproj-plugin.ts b/src/plugins/vbproj-plugin.ts index 0c0a80e..5fd7925 100644 --- a/src/plugins/vbproj-plugin.ts +++ b/src/plugins/vbproj-plugin.ts @@ -1,6 +1,7 @@ import Plugin, { PluginVersionRegex, VersionPartDelimiter } from "./plugin"; const VERSION_TAG_REGEX: RegExp = /(.*)<\/Version>/i; +const VERSION_PREFIX_TAG_REGEX: RegExp = /(.*)<\/VersionPrefix>/i; const ASSEMBLY_VERSION_TAG_REGEX: RegExp = /(.*)<\/AssemblyVersion>/i; const FILE_VERSION_TAG_REGEX: RegExp = /(.*)<\/FileVersion>/i; @@ -15,6 +16,11 @@ export default class VbProjPlugin extends Plugin versionPartDelimiter: VersionPartDelimiter.DOT, versionType: " tag" }, + { + regex: VERSION_PREFIX_TAG_REGEX, + versionPartDelimiter: VersionPartDelimiter.DOT, + versionType: " tag" + }, { regex: ASSEMBLY_VERSION_TAG_REGEX, versionPartDelimiter: VersionPartDelimiter.DOT, diff --git a/test-files/expected-results/Test.csproj b/test-files/expected-results/Test.csproj index bd96aca..e468c88 100644 --- a/test-files/expected-results/Test.csproj +++ b/test-files/expected-results/Test.csproj @@ -1,6 +1,7 @@ 4.5.6 + 4.5.6 4.5.6 4.5.6 diff --git a/test-files/expected-results/Test.fsproj b/test-files/expected-results/Test.fsproj index bd96aca..e468c88 100644 --- a/test-files/expected-results/Test.fsproj +++ b/test-files/expected-results/Test.fsproj @@ -1,6 +1,7 @@ 4.5.6 + 4.5.6 4.5.6 4.5.6 diff --git a/test-files/expected-results/Test.props b/test-files/expected-results/Test.props index ec88772..5277b40 100644 --- a/test-files/expected-results/Test.props +++ b/test-files/expected-results/Test.props @@ -1,5 +1,6 @@ 4.5.6 + 4.5.6 diff --git a/test-files/expected-results/Test.vbproj b/test-files/expected-results/Test.vbproj index bd96aca..e468c88 100644 --- a/test-files/expected-results/Test.vbproj +++ b/test-files/expected-results/Test.vbproj @@ -1,6 +1,7 @@ 4.5.6 + 4.5.6 4.5.6 4.5.6 diff --git a/test-files/input/Test.csproj b/test-files/input/Test.csproj index bc6ac4b..7aabc72 100644 --- a/test-files/input/Test.csproj +++ b/test-files/input/Test.csproj @@ -1,6 +1,7 @@ 1.2.3 + 1.2.3 1.2.3 1.2.3 diff --git a/test-files/input/Test.fsproj b/test-files/input/Test.fsproj index bc6ac4b..7aabc72 100644 --- a/test-files/input/Test.fsproj +++ b/test-files/input/Test.fsproj @@ -1,6 +1,7 @@ 1.2.3 + 1.2.3 1.2.3 1.2.3 diff --git a/test-files/input/Test.props b/test-files/input/Test.props index 1a25e79..ecaca05 100644 --- a/test-files/input/Test.props +++ b/test-files/input/Test.props @@ -1,5 +1,6 @@ 1.2.3 + 1.2.3 diff --git a/test-files/input/Test.vbproj b/test-files/input/Test.vbproj index bc6ac4b..7aabc72 100644 --- a/test-files/input/Test.vbproj +++ b/test-files/input/Test.vbproj @@ -1,6 +1,7 @@ 1.2.3 + 1.2.3 1.2.3 1.2.3