diff --git a/build/set_build_version.ts b/build/set_build_version.ts index 3f503e93ba..ebf74d6fab 100644 --- a/build/set_build_version.ts +++ b/build/set_build_version.ts @@ -32,6 +32,8 @@ function getBuildChannel(): string { switch (versionInfo.prerelease?.[0]) { case "beta": return "beta"; + case undefined: + return "latest"; default: return "alpha"; } @@ -57,16 +59,16 @@ async function writeOutNewVersions() { } function main() { - if (versionInfo.prerelease && versionInfo.prerelease.length > 1) { - const prereleaseParts: string[] = [getBuildChannel()]; + const prereleaseParts: string[] = [getBuildChannel()]; + if (versionInfo.prerelease && versionInfo.prerelease.length > 1) { prereleaseParts.push(versionInfo.prerelease[1].toString()); - prereleaseParts.push(buildNumber); - appInfo.version = `${versionInfo.major}.${versionInfo.minor}.${versionInfo.patch}-${prereleaseParts.join(".")}`; - } else { - appInfo.version = `${versionInfo.major}.${versionInfo.minor}.${versionInfo.patch}+${buildNumber}`; } + prereleaseParts.push(buildNumber); + + appInfo.version = `${versionInfo.major}.${versionInfo.minor}.${versionInfo.patch}-${prereleaseParts.join(".")}`; + writeOutNewVersions() .catch((error) => { console.error(error); diff --git a/src/extensions/extension-discovery.ts b/src/extensions/extension-discovery.ts index 9f2fe15067..85231cc88e 100644 --- a/src/extensions/extension-discovery.ts +++ b/src/extensions/extension-discovery.ts @@ -365,7 +365,13 @@ export class ExtensionDiscovery extends Singleton { let isCompatible = isBundled; if (manifest.engines?.lens) { - isCompatible = semver.satisfies(appSemVer, manifest.engines.lens); + const appSemVerLatestImplied = appSemVer; + + if (appSemVerLatestImplied.prerelease?.[0] === "latest") { + /* remove the "latest" prerelease tag so as not to require the extension to specify it */ + appSemVerLatestImplied.prerelease = []; + } + isCompatible = semver.satisfies(appSemVerLatestImplied, manifest.engines.lens); } return {