diff --git a/addons/addon-attach/package.json b/addons/addon-attach/package.json index 8e5a413e5e..94b483dd87 100644 --- a/addons/addon-attach/package.json +++ b/addons/addon-attach/package.json @@ -21,6 +21,6 @@ "prepublishOnly": "npm run package" }, "peerDependencies": { - "xterm": "^5.0.0" + "@xterm/xterm": "^5.0.0" } } diff --git a/addons/addon-canvas/package.json b/addons/addon-canvas/package.json index a614c28116..9aabb001fb 100644 --- a/addons/addon-canvas/package.json +++ b/addons/addon-canvas/package.json @@ -23,6 +23,6 @@ "start-server-only": "node ../../demo/start-server-only" }, "peerDependencies": { - "xterm": "^5.0.0" + "@xterm/xterm": "^5.0.0" } } diff --git a/addons/addon-fit/package.json b/addons/addon-fit/package.json index 046ef4d874..585f3621c5 100644 --- a/addons/addon-fit/package.json +++ b/addons/addon-fit/package.json @@ -21,6 +21,6 @@ "prepublishOnly": "npm run package" }, "peerDependencies": { - "xterm": "^5.0.0" + "@xterm/xterm": "^5.0.0" } } diff --git a/addons/addon-image/package.json b/addons/addon-image/package.json index 4b0f8cdc4b..8572e3300f 100644 --- a/addons/addon-image/package.json +++ b/addons/addon-image/package.json @@ -22,7 +22,7 @@ "prepublishOnly": "npm run package" }, "peerDependencies": { - "xterm": "^5.2.0" + "@xterm/xterm": "^5.2.0" }, "devDependencies": { "sixel": "^0.16.0", diff --git a/addons/addon-ligatures/package.json b/addons/addon-ligatures/package.json index c62f9e08af..3025188828 100644 --- a/addons/addon-ligatures/package.json +++ b/addons/addon-ligatures/package.json @@ -42,6 +42,6 @@ "yauzl": "^2.10.0" }, "peerDependencies": { - "xterm": "^5.0.0" + "@xterm/xterm": "^5.0.0" } } diff --git a/addons/addon-search/package.json b/addons/addon-search/package.json index 9fab82afb4..ae4fb5d9a9 100644 --- a/addons/addon-search/package.json +++ b/addons/addon-search/package.json @@ -21,6 +21,6 @@ "prepublishOnly": "npm run package" }, "peerDependencies": { - "xterm": "^5.0.0" + "@xterm/xterm": "^5.0.0" } } diff --git a/addons/addon-serialize/README.md b/addons/addon-serialize/README.md index f011689354..862ebac3e4 100644 --- a/addons/addon-serialize/README.md +++ b/addons/addon-serialize/README.md @@ -13,7 +13,7 @@ npm install --save @xterm/addon-serialize ### Usage ```ts -import { Terminal } from "xterm"; +import { Terminal } from "@xterm/xterm"; import { SerializeAddon } from "@xterm/addon-serialize"; const terminal = new Terminal(); diff --git a/addons/addon-serialize/package.json b/addons/addon-serialize/package.json index c95bc5312d..763c52ca94 100644 --- a/addons/addon-serialize/package.json +++ b/addons/addon-serialize/package.json @@ -24,6 +24,6 @@ "benchmark-eval": "NODE_PATH=../../out:./out:./out-benchmark/ ../../node_modules/.bin/xterm-benchmark -r 5 -c benchmark/benchmark.json --eval out-benchmark/benchmark/*benchmark.js" }, "peerDependencies": { - "xterm": "^5.0.0" + "@xterm/xterm": "^5.0.0" } } diff --git a/addons/addon-unicode-graphemes/package.json b/addons/addon-unicode-graphemes/package.json index 5e270025cd..d49eda8733 100644 --- a/addons/addon-unicode-graphemes/package.json +++ b/addons/addon-unicode-graphemes/package.json @@ -24,6 +24,6 @@ "benchmark-eval": "NODE_PATH=../../out:./out:./out-benchmark/ ../../node_modules/.bin/xterm-benchmark -r 5 -c benchmark/benchmark.json --eval out-benchmark/benchmark/*benchmark.js" }, "peerDependencies": { - "xterm": "^5.0.0" + "@xterm/xterm": "^5.0.0" } } diff --git a/addons/addon-unicode11/package.json b/addons/addon-unicode11/package.json index b54f9ab4a8..ad6a489249 100644 --- a/addons/addon-unicode11/package.json +++ b/addons/addon-unicode11/package.json @@ -21,6 +21,6 @@ "prepublishOnly": "npm run package" }, "peerDependencies": { - "xterm": "^5.0.0" + "@xterm/xterm": "^5.0.0" } } diff --git a/addons/addon-web-links/package.json b/addons/addon-web-links/package.json index e1d60b022c..6367907aac 100644 --- a/addons/addon-web-links/package.json +++ b/addons/addon-web-links/package.json @@ -21,7 +21,7 @@ "prepublishOnly": "npm run package" }, "peerDependencies": { - "xterm": "^5.0.0" + "@xterm/xterm": "^5.0.0" } } diff --git a/addons/addon-webgl/package.json b/addons/addon-webgl/package.json index f52f8b59b4..9a31c306c6 100644 --- a/addons/addon-webgl/package.json +++ b/addons/addon-webgl/package.json @@ -23,7 +23,6 @@ "start-server-only": "node ../../demo/start-server-only" }, "peerDependencies": { - "xterm": "^5.0.0" + "@xterm/xterm": "^5.0.0" } - } diff --git a/bin/publish.js b/bin/publish.js index 4d60342d71..7253dffba6 100644 --- a/bin/publish.js +++ b/bin/publish.js @@ -42,11 +42,10 @@ const addonPackageDirs = [ console.log(`Checking if addons need to be published`); for (const p of addonPackageDirs) { const addon = path.basename(p); - // TODO: Uncomment after first publish - // if (changedFiles.some(e => e.includes(addon))) { + if (changedFiles.some(e => e.includes(addon))) { console.log(`Try publish ${addon}`); checkAndPublishPackage(p); - // } + } } // Publish website if it's a stable release @@ -58,9 +57,9 @@ function checkAndPublishPackage(packageDir) { const packageJson = require(path.join(packageDir, 'package.json')); // Determine if this is a stable or beta release - // TODO: Uncomment after first publish + // TODO: Uncomment when publishing 5.4 // const publishedVersions = getPublishedVersions(packageJson); - const isStableRelease = false; // !publishedVersions.includes(packageJson.version); + const isStableRelease = false; //!publishedVersions.includes(packageJson.version); // Get the next version let nextVersion = isStableRelease ? packageJson.version : getNextBetaVersion(packageJson); @@ -115,12 +114,20 @@ function getNextBetaVersion(packageJson) { return `${nextStableVersion}-${tag}.${latestTagVersion + 1}`; } +function asArray(value) { + return Array.isArray(value) ? value : [value]; +} + function getPublishedVersions(packageJson, version, tag) { - const versionsProcess = cp.spawnSync('npm', ['view', packageJson.name, 'versions', '--json']); - const versionsJson = JSON.parse(versionsProcess.stdout); - if (!versionsJson || !Array.isArray(versionsJson) || versionsJson.length === 0) { - return []; + const versionsProcess = cp.spawnSync(os.platform === 'win32' ? 'npm.cmd' : 'npm', ['view', packageJson.name, 'versions', '--json']); + if (versionsProcess.stdout.length === 0 && versionsProcess.stderr) { + const err = versionsProcess.stderr.toString(); + if (err.indexOf('404 Not Found - GET https://registry.npmjs.org/@xterm') > 0) { + return []; + } + throw new Error('Could not get published versions\n' + err); } + const versionsJson = asArray(JSON.parse(versionsProcess.stdout)); if (tag) { return versionsJson.filter(v => !v.search(new RegExp(`${version}-${tag}.[0-9]+`))); }