Remove Update Notifier

This commit is contained in:
unknown 2016-01-05 15:52:06 -05:00
parent f11a188092
commit 1b9caa3265
3 changed files with 19 additions and 100 deletions

View File

@ -3,12 +3,8 @@
import { commands, languages, ExtensionContext } from 'vscode'; import { commands, languages, ExtensionContext } from 'vscode';
import { linearizeXml, XmlDocumentFormattingProvider, XmlRangeFormattingProvider } from './features/xmlFormatting'; import { linearizeXml, XmlDocumentFormattingProvider, XmlRangeFormattingProvider } from './features/xmlFormatting';
import { evaluateXPath } from './features/xmlXPathEngine'; import { evaluateXPath } from './features/xmlXPathEngine';
import { checkForUpdates } from './utils/UpdateNotifier';
export function activate(ctx: ExtensionContext) { export function activate(ctx: ExtensionContext) {
// check for update
checkForUpdates();
// register palette commands // register palette commands
ctx.subscriptions.push(commands.registerTextEditorCommand('xmltools.linearizeXml', linearizeXml)); ctx.subscriptions.push(commands.registerTextEditorCommand('xmltools.linearizeXml', linearizeXml));
ctx.subscriptions.push(commands.registerTextEditorCommand('xmltools.evaluateXPath', evaluateXPath)); ctx.subscriptions.push(commands.registerTextEditorCommand('xmltools.evaluateXPath', evaluateXPath));

View File

@ -1,34 +0,0 @@
'use strict';
import { extensions, Extension } from 'vscode';
export class ExtensionManifestReader {
constructor(extensionId: string) {
this._extension = extensions.getExtension(extensionId);
this.refresh();
}
private _extension: Extension<any>
name: string;
version: string;
publisher: string;
displayName: string;
description: string;
categories: string[];
keywords: string[];
icon: string;
refresh(): void {
let manifest = this._extension.packageJSON;
this.name = manifest.name;
this.version = manifest.version;
this.publisher = manifest.publisher;
this.displayName = manifest.displayName;
this.description = manifest.description;
this.categories = manifest.categories;
this.keywords = manifest.keywords;
this.icon = manifest.icon;
}
}

View File

@ -1,43 +0,0 @@
'use strict';
import { window, commands } from 'vscode';
import { ExtensionManifestReader } from './ManifestUtils';
let req = require('request');
let semver = require('semver');
export function checkForUpdates() {
let manifestReader: ExtensionManifestReader = new ExtensionManifestReader('DotJoshJohnson.xml');
let currentVersion = manifestReader.version;
// use the GitHub api to determine the latest released version
let url = 'https://api.github.com/repos/DotJoshJohnson/vscode-xml/releases/latest';
let options = {
url: url,
headers: {
// the GitHub API requires a user agent header
// we are spoofing a Chrome user agent string here
'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.86 Safari/537.36'
}
}
req(options, (error, response, body) => {
if (!error && response.statusCode == 200) {
let release = JSON.parse(body);
let latestVersion = release.name.substring(1); // the release/tag is prefixed with a "v"
if (!release.draft && semver.gt(latestVersion, currentVersion)) {
let updateNowLabel = 'Open Extension Manager';
window.showInformationMessage(`Version ${latestVersion} of the ${manifestReader.displayName} extension is available.`, updateNowLabel).then((clicked) => {
if (clicked == updateNowLabel) {
commands.executeCommand('workbench.extensions.action.listExtensions', manifestReader.displayName);
}
});
}
}
else {
console.log('XML Tools: Failed to get latest release information from GitHub.');
}
});
}