mirror of
https://github.com/Microsoft/vscode
synced 2024-08-27 13:00:58 +00:00
clean crash reporter
This commit is contained in:
parent
7a15a509d0
commit
1081ef16c6
|
@ -49,46 +49,12 @@ gulp.task('mixin', function () {
|
|||
|
||||
if (quality) {
|
||||
const productJsonFilter = filter('product.json', { restore: true });
|
||||
const arch = process.env.VSCODE_ELECTRON_PLATFORM || process.arch;
|
||||
|
||||
const vsdaFilter = (function () {
|
||||
const filter = [];
|
||||
if (process.platform !== 'win32') { filter.push('!**/vsda_win32.node'); }
|
||||
if (process.platform !== 'darwin') { filter.push('!**/vsda_darwin.node'); }
|
||||
if (process.platform !== 'linux' || arch !== 'x64') { filter.push('!**/vsda_linux64.node'); }
|
||||
if (process.platform !== 'linux' || arch === 'x64') { filter.push('!**/vsda_linux32.node'); }
|
||||
|
||||
return filter;
|
||||
})();
|
||||
|
||||
const mixin = all
|
||||
.pipe(filter(['quality/' + quality + '/**'].concat(vsdaFilter)))
|
||||
.pipe(filter(['quality/' + quality + '/**']))
|
||||
.pipe(util.rebase(2))
|
||||
.pipe(productJsonFilter)
|
||||
.pipe(buffer())
|
||||
.pipe(json(function (patch) {
|
||||
const original = require('../product.json');
|
||||
const result = assign(original, patch);
|
||||
|
||||
// HockeyApp Support
|
||||
if (patch.crashReporterHockeyAppSubmitURL && result.crashReporter) {
|
||||
|
||||
// Receive submitURL for the platform we are building for
|
||||
result.crashReporter.submitURL = (function () {
|
||||
if (process.platform === 'win32') { return patch.crashReporterHockeyAppSubmitURL.win32; }
|
||||
if (process.platform === 'darwin') { return patch.crashReporterHockeyAppSubmitURL.darwin; }
|
||||
if (process.platform === 'linux' && arch === 'x64') { return patch.crashReporterHockeyAppSubmitURL.linux64; }
|
||||
if (process.platform === 'linux' && arch !== 'x64') { return patch.crashReporterHockeyAppSubmitURL.linux32; }
|
||||
|
||||
return void 0;
|
||||
})();
|
||||
|
||||
// No longer need crashReporterHockeyAppSubmitURL after this
|
||||
result.crashReporterHockeyAppSubmitURL = void 0;
|
||||
}
|
||||
|
||||
return result;
|
||||
}))
|
||||
.pipe(json(o => assign({}, require('../product.json'), o)))
|
||||
.pipe(productJsonFilter.restore);
|
||||
|
||||
all = es.merge(mixin);
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
"name": "code-oss-dev",
|
||||
"version": "1.13.0",
|
||||
"electronVersion": "1.6.6",
|
||||
"distro": "75907509ec4038a8ebcce47fa85eab15bfe33aac",
|
||||
"distro": "1dc6b8ea29727a80a9cf0a8832e6d1c16623fe40",
|
||||
"author": {
|
||||
"name": "Microsoft Corporation"
|
||||
},
|
||||
|
|
|
@ -28,7 +28,10 @@ export interface IProductConfiguration {
|
|||
extensionImportantTips: { [id: string]: { name: string; pattern: string; }; };
|
||||
extensionKeywords: { [extension: string]: string[]; };
|
||||
keymapExtensionTips: string[];
|
||||
crashReporter: Electron.CrashReporterStartOptions;
|
||||
crashReporter: {
|
||||
companyName: string;
|
||||
productName: string;
|
||||
};
|
||||
welcomePage: string;
|
||||
enableTelemetry: boolean;
|
||||
aiConfig: {
|
||||
|
@ -52,6 +55,12 @@ export interface IProductConfiguration {
|
|||
npsSurveyUrl: string;
|
||||
checksums: { [path: string]: string; };
|
||||
checksumFailMoreInfoUrl: string;
|
||||
hockeyApp: {
|
||||
'win32': string;
|
||||
'linux-ia32': string;
|
||||
'linux-x64': string;
|
||||
'darwin': string;
|
||||
};
|
||||
}
|
||||
|
||||
const rootPath = path.dirname(uri.parse(require.toUrl('')).fsPath);
|
||||
|
|
|
@ -172,8 +172,26 @@ export class WorkbenchShell {
|
|||
const [instantiationService, serviceCollection] = this.initServiceCollection(parent.getHTMLElement());
|
||||
|
||||
//crash reporting
|
||||
if (!!product.crashReporter) {
|
||||
instantiationService.createInstance(CrashReporter, product.crashReporter);
|
||||
if (product.crashReporter && product.hockeyApp) {
|
||||
let submitURL: string;
|
||||
|
||||
if (platform.isWindows) {
|
||||
submitURL = product.hockeyApp.win32;
|
||||
} else if (platform.isMacintosh) {
|
||||
submitURL = product.hockeyApp.darwin;
|
||||
} else if (platform.isLinux) {
|
||||
submitURL = product.hockeyApp[`linux-${process.arch}`];
|
||||
}
|
||||
|
||||
if (submitURL) {
|
||||
const opts: Electron.CrashReporterStartOptions = {
|
||||
companyName: product.crashReporter.companyName,
|
||||
productName: product.crashReporter.productName,
|
||||
submitURL
|
||||
};
|
||||
|
||||
instantiationService.createInstance(CrashReporter, opts);
|
||||
}
|
||||
}
|
||||
|
||||
// Workbench
|
||||
|
|
Loading…
Reference in a new issue