build-version.patch 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212
  1. diff --git a/build/gulpfile.reh.js b/build/gulpfile.reh.js
  2. index 2abc3f3..a3cbf2d 100644
  3. --- a/build/gulpfile.reh.js
  4. +++ b/build/gulpfile.reh.js
  5. @@ -246,8 +246,9 @@ function packageTask(type, platform, arch, sourceFolderName, destinationFolderNa
  6. }
  7. const name = product.nameShort;
  8. + const release = packageJson.release;
  9. const packageJsonStream = gulp.src(['remote/package.json'], { base: 'remote' })
  10. - .pipe(json({ name, version, dependencies: undefined, optionalDependencies: undefined }));
  11. + .pipe(json({ name, version, release, dependencies: undefined, optionalDependencies: undefined }));
  12. const date = new Date().toISOString();
  13. diff --git a/build/gulpfile.vscode.js b/build/gulpfile.vscode.js
  14. index 28f8e52..f17962d 100644
  15. --- a/build/gulpfile.vscode.js
  16. +++ b/build/gulpfile.vscode.js
  17. @@ -187,7 +187,7 @@ function packageTask(platform, arch, sourceFolderName, destinationFolderName, op
  18. const sources = es.merge(src, extensions)
  19. .pipe(filter(['**', '!**/*.js.map'], { dot: true }));
  20. - let version = packageJson.version;
  21. + let version = packageJson.version
  22. const quality = product.quality;
  23. if (quality && quality !== 'stable') {
  24. @@ -195,7 +195,8 @@ function packageTask(platform, arch, sourceFolderName, destinationFolderName, op
  25. }
  26. const name = product.nameShort;
  27. - const packageJsonUpdates = { name, version };
  28. + const release = packageJson.release;
  29. + const packageJsonUpdates = { name, version, release };
  30. // for linux url handling
  31. if (platform === 'linux') {
  32. diff --git a/build/gulpfile.vscode.linux.js b/build/gulpfile.vscode.linux.js
  33. index 489d9cc..e9f00f3 100644
  34. --- a/build/gulpfile.vscode.linux.js
  35. +++ b/build/gulpfile.vscode.linux.js
  36. @@ -83,7 +83,7 @@ function prepareDebPackage(arch) {
  37. const dependencies = debianDependenciesGenerator.getDependencies(binaryDir, product.applicationName, debArch, sysroot);
  38. gulp.src('resources/linux/debian/control.template', { base: '.' })
  39. .pipe(replace('@@NAME@@', product.applicationName))
  40. - .pipe(replace('@@VERSION@@', packageJson.version + '-' + linuxPackageRevision))
  41. + .pipe(replace('@@VERSION@@', `${packageJson.version}.${packageJson.release}`))
  42. .pipe(replace('@@ARCHITECTURE@@', debArch))
  43. .pipe(replace('@@DEPENDS@@', dependencies.join(', ')))
  44. .pipe(replace('@@RECOMMENDS@@', debianRecommendedDependencies.join(', ')))
  45. @@ -188,8 +188,7 @@ function prepareRpmPackage(arch) {
  46. .pipe(replace('@@NAME@@', product.applicationName))
  47. .pipe(replace('@@NAME_LONG@@', product.nameLong))
  48. .pipe(replace('@@ICON@@', product.linuxIconName))
  49. - .pipe(replace('@@VERSION@@', packageJson.version))
  50. - .pipe(replace('@@RELEASE@@', linuxPackageRevision))
  51. + .pipe(replace('@@VERSION@@', `${packageJson.version}.${packageJson.release}`))
  52. .pipe(replace('@@ARCHITECTURE@@', rpmArch))
  53. .pipe(replace('@@LICENSE@@', product.licenseName))
  54. .pipe(replace('@@QUALITY@@', product.quality || '@@QUALITY@@'))
  55. @@ -262,7 +261,7 @@ function prepareSnapPackage(arch) {
  56. const snapcraft = gulp.src('resources/linux/snap/snapcraft.yaml', { base: '.' })
  57. .pipe(replace('@@NAME@@', product.applicationName))
  58. - .pipe(replace('@@VERSION@@', commit.substr(0, 8)))
  59. + .pipe(replace('@@VERSION@@', `${packageJson.version}.${packageJson.release}`))
  60. // Possible run-on values https://snapcraft.io/docs/architectures
  61. .pipe(replace('@@ARCHITECTURE@@', arch === 'x64' ? 'amd64' : arch))
  62. .pipe(rename('snap/snapcraft.yaml'));
  63. diff --git a/build/gulpfile.vscode.win32.js b/build/gulpfile.vscode.win32.js
  64. index 81ba509..43f5377 100644
  65. --- a/build/gulpfile.vscode.win32.js
  66. +++ b/build/gulpfile.vscode.win32.js
  67. @@ -91,8 +91,8 @@ function buildWin32Setup(arch, target) {
  68. NameLong: product.nameLong,
  69. NameShort: product.nameShort,
  70. DirName: product.win32DirName,
  71. - Version: pkg.version,
  72. - RawVersion: pkg.version.replace(/-\w+$/, ''),
  73. + Version: `${pkg.version}.${pkg.release}`,
  74. + RawVersion: `${pkg.version.replace(/-\w+$/, '')}.${pkg.release}`,
  75. NameVersion: product.win32NameVersion + (target === 'user' ? ' (User)' : ''),
  76. ExeBasename: product.nameShort,
  77. RegValueName: product.win32RegValueName,
  78. diff --git a/resources/linux/rpm/code.spec.template b/resources/linux/rpm/code.spec.template
  79. index 00ddb6f..814c964 100644
  80. --- a/resources/linux/rpm/code.spec.template
  81. +++ b/resources/linux/rpm/code.spec.template
  82. @@ -1,6 +1,6 @@
  83. Name: @@NAME@@
  84. Version: @@VERSION@@
  85. -Release: @@RELEASE@@.el7
  86. +Release: el7
  87. Summary: Code editing. Redefined.
  88. Group: Development/Tools
  89. Vendor: Microsoft Corporation
  90. diff --git a/src/vs/base/common/product.ts b/src/vs/base/common/product.ts
  91. index 1ae8079..0dad6ac 100644
  92. --- a/src/vs/base/common/product.ts
  93. +++ b/src/vs/base/common/product.ts
  94. @@ -32,6 +32,7 @@ export type ExtensionVirtualWorkspaceSupport = {
  95. export interface IProductConfiguration {
  96. readonly version: string;
  97. + readonly release: string;
  98. readonly date?: string;
  99. readonly quality?: string;
  100. readonly commit?: string;
  101. diff --git a/src/vs/code/electron-sandbox/issue/issueReporterMain.ts b/src/vs/code/electron-sandbox/issue/issueReporterMain.ts
  102. index 046cb39..3271b6c 100644
  103. --- a/src/vs/code/electron-sandbox/issue/issueReporterMain.ts
  104. +++ b/src/vs/code/electron-sandbox/issue/issueReporterMain.ts
  105. @@ -75,7 +75,7 @@ export class IssueReporter extends Disposable {
  106. this.issueReporterModel = new IssueReporterModel({
  107. issueType: configuration.data.issueType || IssueType.Bug,
  108. versionInfo: {
  109. - vscodeVersion: `${configuration.product.nameShort} ${!!configuration.product.darwinUniversalAssetId ? `${configuration.product.version} (Universal)` : configuration.product.version} (${configuration.product.commit || 'Commit unknown'}, ${configuration.product.date || 'Date unknown'})`,
  110. + vscodeVersion: `${configuration.product.nameShort} ${!!configuration.product.darwinUniversalAssetId ? `${configuration.product.version} (Universal)` : configuration.product.version} ${configuration.product.release || 'Release unknown'} (${configuration.product.commit || 'Commit unknown'}, ${configuration.product.date || 'Date unknown'})`,
  111. os: `${this.configuration.os.type} ${this.configuration.os.arch} ${this.configuration.os.release}${isLinuxSnap ? ' snap' : ''}`
  112. },
  113. extensionsDisabled: !!configuration.disableExtensions,
  114. diff --git a/src/vs/code/electron-sandbox/issue/issueReporterModel.ts b/src/vs/code/electron-sandbox/issue/issueReporterModel.ts
  115. index b0cc736..035c5cb 100644
  116. --- a/src/vs/code/electron-sandbox/issue/issueReporterModel.ts
  117. +++ b/src/vs/code/electron-sandbox/issue/issueReporterModel.ts
  118. @@ -74,7 +74,7 @@ Type: <b>${this.getIssueTypeTitle()}</b>
  119. ${this._data.issueDescription}
  120. ${this.getExtensionVersion()}
  121. -VS Code version: ${this._data.versionInfo && this._data.versionInfo.vscodeVersion}
  122. +VSCodium version: ${this._data.versionInfo && this._data.versionInfo.vscodeVersion}
  123. OS version: ${this._data.versionInfo && this._data.versionInfo.os}
  124. Modes:${modes.length ? ' ' + modes.join(', ') : ''}
  125. ${this.getRemoteOSes()}
  126. diff --git a/src/vs/platform/diagnostics/node/diagnosticsService.ts b/src/vs/platform/diagnostics/node/diagnosticsService.ts
  127. index e1c60a3..a12d52c 100644
  128. --- a/src/vs/platform/diagnostics/node/diagnosticsService.ts
  129. +++ b/src/vs/platform/diagnostics/node/diagnosticsService.ts
  130. @@ -237,7 +237,7 @@ export class DiagnosticsService implements IDiagnosticsService {
  131. private formatEnvironment(info: IMainProcessInfo): string {
  132. const output: string[] = [];
  133. - output.push(`Version: ${this.productService.nameShort} ${this.productService.version} (${this.productService.commit || 'Commit unknown'}, ${this.productService.date || 'Date unknown'})`);
  134. + output.push(`Version: ${this.productService.nameShort} ${this.productService.version} ${this.productService.release || 'Release unknown'} (${this.productService.commit || 'Commit unknown'}, ${this.productService.date || 'Date unknown'})`);
  135. output.push(`OS Version: ${osLib.type()} ${osLib.arch()} ${osLib.release()}`);
  136. const cpus = osLib.cpus();
  137. if (cpus && cpus.length > 0) {
  138. diff --git a/src/vs/platform/product/common/product.ts b/src/vs/platform/product/common/product.ts
  139. index 7e63a16..74d1f26 100644
  140. --- a/src/vs/platform/product/common/product.ts
  141. +++ b/src/vs/platform/product/common/product.ts
  142. @@ -32,7 +32,7 @@ else if (typeof require?.__$__nodeRequire === 'function') {
  143. const rootPath = dirname(FileAccess.asFileUri('', require));
  144. product = require.__$__nodeRequire(joinPath(rootPath, 'product.json').fsPath);
  145. - const pkg = require.__$__nodeRequire(joinPath(rootPath, 'package.json').fsPath) as { version: string };
  146. + const pkg = require.__$__nodeRequire(joinPath(rootPath, 'package.json').fsPath) as { version: string, release: string };
  147. // Running out of sources
  148. if (env['VSCODE_DEV']) {
  149. @@ -45,7 +45,8 @@ else if (typeof require?.__$__nodeRequire === 'function') {
  150. }
  151. Object.assign(product, {
  152. - version: pkg.version
  153. + version: pkg.version,
  154. + release: pkg.release
  155. });
  156. }
  157. diff --git a/src/vs/workbench/browser/parts/dialogs/dialogHandler.ts b/src/vs/workbench/browser/parts/dialogs/dialogHandler.ts
  158. index ec4ff95..f721052 100644
  159. --- a/src/vs/workbench/browser/parts/dialogs/dialogHandler.ts
  160. +++ b/src/vs/workbench/browser/parts/dialogs/dialogHandler.ts
  161. @@ -144,7 +144,8 @@ export class BrowserDialogHandler implements IDialogHandler {
  162. async about(): Promise<void> {
  163. const detailString = (useAgo: boolean): string => {
  164. return localize('aboutDetail',
  165. - "Version: {0}\nCommit: {1}\nDate: {2}\nBrowser: {3}",
  166. + "Version: {0}\nRelease: {1}\nCommit: {2}\nDate: {3}\nBrowser: {4}",
  167. + this.productService.release || 'Unknown',
  168. this.productService.version || 'Unknown',
  169. this.productService.commit || 'Unknown',
  170. this.productService.date ? `${this.productService.date}${useAgo ? ' (' + fromNow(new Date(this.productService.date), true) + ')' : ''}` : 'Unknown',
  171. diff --git a/src/vs/workbench/contrib/issue/browser/issueService.ts b/src/vs/workbench/contrib/issue/browser/issueService.ts
  172. index dc7430b..23def01 100644
  173. --- a/src/vs/workbench/contrib/issue/browser/issueService.ts
  174. +++ b/src/vs/workbench/contrib/issue/browser/issueService.ts
  175. @@ -65,6 +65,7 @@ export class WebIssueService implements IWorkbenchIssueService {
  176. return `ADD ISSUE DESCRIPTION HERE
  177. Version: ${this.productService.version}
  178. +Release: ${this.productService.release ?? 'unknown'}
  179. Commit: ${this.productService.commit ?? 'unknown'}
  180. User Agent: ${userAgent ?? 'unknown'}
  181. Embedder: ${this.productService.embedderIdentifier ?? 'unknown'}
  182. diff --git a/src/vs/workbench/electron-sandbox/parts/dialogs/dialogHandler.ts b/src/vs/workbench/electron-sandbox/parts/dialogs/dialogHandler.ts
  183. index a4728e7..d1a8b94 100644
  184. --- a/src/vs/workbench/electron-sandbox/parts/dialogs/dialogHandler.ts
  185. +++ b/src/vs/workbench/electron-sandbox/parts/dialogs/dialogHandler.ts
  186. @@ -167,8 +167,9 @@ export class NativeDialogHandler implements IDialogHandler {
  187. const detailString = (useAgo: boolean): string => {
  188. return localize({ key: 'aboutDetail', comment: ['Electron, Chromium, Node.js and V8 are product names that need no translation'] },
  189. - "Version: {0}\nCommit: {1}\nDate: {2}\nElectron: {3}\nChromium: {4}\nNode.js: {5}\nV8: {6}\nOS: {7}",
  190. + "Version: {0}\nRelease: {1}\nCommit: {2}\nDate: {3}\nElectron: {4}\nChromium: {5}\nNode.js: {6}\nV8: {7}\nOS: {8}",
  191. version,
  192. + this.productService.release || 'Unknown',
  193. this.productService.commit || 'Unknown',
  194. this.productService.date ? `${this.productService.date}${useAgo ? ' (' + fromNow(new Date(this.productService.date), true) + ')' : ''}` : 'Unknown',
  195. process.versions['electron'],