This commit is contained in:
21
vscode-server-linux-x64-web/node_modules/node-abi/LICENSE
generated
vendored
Normal file
21
vscode-server-linux-x64-web/node_modules/node-abi/LICENSE
generated
vendored
Normal file
@ -0,0 +1,21 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2016 Lukas Geiger
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
186
vscode-server-linux-x64-web/node_modules/node-abi/abi_registry.json
generated
vendored
Normal file
186
vscode-server-linux-x64-web/node_modules/node-abi/abi_registry.json
generated
vendored
Normal file
@ -0,0 +1,186 @@
|
||||
[
|
||||
{
|
||||
"runtime": "node",
|
||||
"target": "11.0.0",
|
||||
"lts": false,
|
||||
"future": false,
|
||||
"abi": "67"
|
||||
},
|
||||
{
|
||||
"runtime": "node",
|
||||
"target": "12.0.0",
|
||||
"lts": [
|
||||
"2019-10-21",
|
||||
"2020-11-30"
|
||||
],
|
||||
"future": false,
|
||||
"abi": "72"
|
||||
},
|
||||
{
|
||||
"runtime": "node",
|
||||
"target": "13.0.0",
|
||||
"lts": false,
|
||||
"future": false,
|
||||
"abi": "79"
|
||||
},
|
||||
{
|
||||
"runtime": "node",
|
||||
"target": "14.0.0",
|
||||
"lts": [
|
||||
"2020-10-27",
|
||||
"2021-10-19"
|
||||
],
|
||||
"future": false,
|
||||
"abi": "83"
|
||||
},
|
||||
{
|
||||
"runtime": "node",
|
||||
"target": "15.0.0",
|
||||
"lts": false,
|
||||
"future": false,
|
||||
"abi": "88"
|
||||
},
|
||||
{
|
||||
"runtime": "node",
|
||||
"target": "16.0.0",
|
||||
"lts": [
|
||||
"2021-10-26",
|
||||
"2022-10-18"
|
||||
],
|
||||
"future": false,
|
||||
"abi": "93"
|
||||
},
|
||||
{
|
||||
"runtime": "node",
|
||||
"target": "17.0.0",
|
||||
"lts": false,
|
||||
"future": false,
|
||||
"abi": "102"
|
||||
},
|
||||
{
|
||||
"abi": "70",
|
||||
"future": false,
|
||||
"lts": false,
|
||||
"runtime": "electron",
|
||||
"target": "5.0.0-beta.9"
|
||||
},
|
||||
{
|
||||
"abi": "73",
|
||||
"future": false,
|
||||
"lts": false,
|
||||
"runtime": "electron",
|
||||
"target": "6.0.0-beta.1"
|
||||
},
|
||||
{
|
||||
"abi": "75",
|
||||
"future": false,
|
||||
"lts": false,
|
||||
"runtime": "electron",
|
||||
"target": "7.0.0-beta.1"
|
||||
},
|
||||
{
|
||||
"abi": "76",
|
||||
"future": false,
|
||||
"lts": false,
|
||||
"runtime": "electron",
|
||||
"target": "8.0.0-beta.1"
|
||||
},
|
||||
{
|
||||
"abi": "76",
|
||||
"future": false,
|
||||
"lts": false,
|
||||
"runtime": "electron",
|
||||
"target": "9.0.0-beta.1"
|
||||
},
|
||||
{
|
||||
"abi": "80",
|
||||
"future": false,
|
||||
"lts": false,
|
||||
"runtime": "electron",
|
||||
"target": "9.0.0-beta.2"
|
||||
},
|
||||
{
|
||||
"abi": "82",
|
||||
"future": false,
|
||||
"lts": false,
|
||||
"runtime": "electron",
|
||||
"target": "10.0.0-beta.1"
|
||||
},
|
||||
{
|
||||
"abi": "82",
|
||||
"future": false,
|
||||
"lts": false,
|
||||
"runtime": "electron",
|
||||
"target": "11.0.0-beta.1"
|
||||
},
|
||||
{
|
||||
"abi": "85",
|
||||
"future": false,
|
||||
"lts": false,
|
||||
"runtime": "electron",
|
||||
"target": "11.0.0-beta.11"
|
||||
},
|
||||
{
|
||||
"abi": "87",
|
||||
"future": false,
|
||||
"lts": false,
|
||||
"runtime": "electron",
|
||||
"target": "12.0.0-beta.1"
|
||||
},
|
||||
{
|
||||
"abi": "89",
|
||||
"future": false,
|
||||
"lts": false,
|
||||
"runtime": "electron",
|
||||
"target": "13.0.0-beta.2"
|
||||
},
|
||||
{
|
||||
"abi": "89",
|
||||
"future": false,
|
||||
"lts": false,
|
||||
"runtime": "electron",
|
||||
"target": "15.0.0-alpha.1"
|
||||
},
|
||||
{
|
||||
"abi": "89",
|
||||
"future": false,
|
||||
"lts": false,
|
||||
"runtime": "electron",
|
||||
"target": "14.0.0-beta.1"
|
||||
},
|
||||
{
|
||||
"abi": "97",
|
||||
"future": false,
|
||||
"lts": false,
|
||||
"runtime": "electron",
|
||||
"target": "14.0.2"
|
||||
},
|
||||
{
|
||||
"abi": "98",
|
||||
"future": false,
|
||||
"lts": false,
|
||||
"runtime": "electron",
|
||||
"target": "15.0.0-beta.7"
|
||||
},
|
||||
{
|
||||
"abi": "99",
|
||||
"future": false,
|
||||
"lts": false,
|
||||
"runtime": "electron",
|
||||
"target": "16.0.0-alpha.1"
|
||||
},
|
||||
{
|
||||
"abi": "101",
|
||||
"future": false,
|
||||
"lts": false,
|
||||
"runtime": "electron",
|
||||
"target": "17.0.0-alpha.1"
|
||||
},
|
||||
{
|
||||
"abi": "103",
|
||||
"future": true,
|
||||
"lts": false,
|
||||
"runtime": "electron",
|
||||
"target": "18.0.0-alpha.1"
|
||||
}
|
||||
]
|
179
vscode-server-linux-x64-web/node_modules/node-abi/index.js
generated
vendored
Normal file
179
vscode-server-linux-x64-web/node_modules/node-abi/index.js
generated
vendored
Normal file
@ -0,0 +1,179 @@
|
||||
var semver = require('semver')
|
||||
|
||||
function getNextTarget (runtime, targets) {
|
||||
if (targets == null) targets = allTargets
|
||||
var latest = targets.filter(function (t) { return t.runtime === runtime }).slice(-1)[0]
|
||||
var increment = runtime === 'electron' ? 'minor' : 'major'
|
||||
var next = semver.inc(latest.target, increment)
|
||||
// Electron releases appear in the registry in their beta form, sometimes there is
|
||||
// no active beta line. During this time we need to double bump
|
||||
if (runtime === 'electron' && semver.parse(latest.target).prerelease.length) {
|
||||
next = semver.inc(next, 'major')
|
||||
}
|
||||
return next
|
||||
}
|
||||
|
||||
function getAbi (target, runtime) {
|
||||
if (target === String(Number(target))) return target
|
||||
if (target) target = target.replace(/^v/, '')
|
||||
if (!runtime) runtime = 'node'
|
||||
|
||||
if (runtime === 'node') {
|
||||
if (!target) return process.versions.modules
|
||||
if (target === process.versions.node) return process.versions.modules
|
||||
}
|
||||
|
||||
var abi
|
||||
var lastTarget
|
||||
|
||||
for (var i = 0; i < allTargets.length; i++) {
|
||||
var t = allTargets[i]
|
||||
if (t.runtime !== runtime) continue
|
||||
if (semver.lte(t.target, target) && (!lastTarget || semver.gte(t.target, lastTarget))) {
|
||||
abi = t.abi
|
||||
lastTarget = t.target
|
||||
}
|
||||
}
|
||||
|
||||
if (abi && semver.lt(target, getNextTarget(runtime))) return abi
|
||||
throw new Error('Could not detect abi for version ' + target + ' and runtime ' + runtime + '. Updating "node-abi" might help solve this issue if it is a new release of ' + runtime)
|
||||
}
|
||||
|
||||
function getTarget (abi, runtime) {
|
||||
if (abi && abi !== String(Number(abi))) return abi
|
||||
if (!runtime) runtime = 'node'
|
||||
|
||||
if (runtime === 'node' && !abi) return process.versions.node
|
||||
|
||||
var match = allTargets
|
||||
.filter(function (t) {
|
||||
return t.abi === abi && t.runtime === runtime
|
||||
})
|
||||
.map(function (t) {
|
||||
return t.target
|
||||
})
|
||||
if (match.length) {
|
||||
var betaSeparatorIndex = match[0].indexOf("-")
|
||||
return betaSeparatorIndex > -1
|
||||
? match[0].substring(0, betaSeparatorIndex)
|
||||
: match[0]
|
||||
}
|
||||
|
||||
throw new Error('Could not detect target for abi ' + abi + ' and runtime ' + runtime)
|
||||
}
|
||||
|
||||
function sortByTargetFn (a, b) {
|
||||
var abiComp = Number(a.abi) - Number(b.abi)
|
||||
if (abiComp !== 0) return abiComp
|
||||
if (a.target < b.target) return -1
|
||||
if (a.target > b.target) return 1
|
||||
return 0
|
||||
}
|
||||
|
||||
function loadGeneratedTargets () {
|
||||
var registry = require('./abi_registry.json')
|
||||
var targets = {
|
||||
supported: [],
|
||||
additional: [],
|
||||
future: []
|
||||
}
|
||||
|
||||
registry.forEach(function (item) {
|
||||
var target = {
|
||||
runtime: item.runtime,
|
||||
target: item.target,
|
||||
abi: item.abi
|
||||
}
|
||||
if (item.lts) {
|
||||
var startDate = new Date(Date.parse(item.lts[0]))
|
||||
var endDate = new Date(Date.parse(item.lts[1]))
|
||||
var currentDate = new Date()
|
||||
target.lts = startDate < currentDate && currentDate < endDate
|
||||
} else {
|
||||
target.lts = false
|
||||
}
|
||||
|
||||
if (target.runtime === 'node-webkit') {
|
||||
targets.additional.push(target)
|
||||
} else if (item.future) {
|
||||
targets.future.push(target)
|
||||
} else {
|
||||
targets.supported.push(target)
|
||||
}
|
||||
})
|
||||
|
||||
targets.supported.sort(sortByTargetFn)
|
||||
targets.additional.sort(sortByTargetFn)
|
||||
targets.future.sort(sortByTargetFn)
|
||||
|
||||
return targets
|
||||
}
|
||||
|
||||
var generatedTargets = loadGeneratedTargets()
|
||||
|
||||
var supportedTargets = [
|
||||
{runtime: 'node', target: '5.0.0', abi: '47', lts: false},
|
||||
{runtime: 'node', target: '6.0.0', abi: '48', lts: false},
|
||||
{runtime: 'node', target: '7.0.0', abi: '51', lts: false},
|
||||
{runtime: 'node', target: '8.0.0', abi: '57', lts: false},
|
||||
{runtime: 'node', target: '9.0.0', abi: '59', lts: false},
|
||||
{runtime: 'node', target: '10.0.0', abi: '64', lts: new Date(2018, 10, 1) < new Date() && new Date() < new Date(2020, 4, 31)},
|
||||
{runtime: 'electron', target: '0.36.0', abi: '47', lts: false},
|
||||
{runtime: 'electron', target: '1.1.0', abi: '48', lts: false},
|
||||
{runtime: 'electron', target: '1.3.0', abi: '49', lts: false},
|
||||
{runtime: 'electron', target: '1.4.0', abi: '50', lts: false},
|
||||
{runtime: 'electron', target: '1.5.0', abi: '51', lts: false},
|
||||
{runtime: 'electron', target: '1.6.0', abi: '53', lts: false},
|
||||
{runtime: 'electron', target: '1.7.0', abi: '54', lts: false},
|
||||
{runtime: 'electron', target: '1.8.0', abi: '57', lts: false},
|
||||
{runtime: 'electron', target: '2.0.0', abi: '57', lts: false},
|
||||
{runtime: 'electron', target: '3.0.0', abi: '64', lts: false},
|
||||
{runtime: 'electron', target: '4.0.0', abi: '64', lts: false},
|
||||
{runtime: 'electron', target: '4.0.4', abi: '69', lts: false}
|
||||
]
|
||||
|
||||
supportedTargets.push.apply(supportedTargets, generatedTargets.supported)
|
||||
|
||||
var additionalTargets = [
|
||||
{runtime: 'node-webkit', target: '0.13.0', abi: '47', lts: false},
|
||||
{runtime: 'node-webkit', target: '0.15.0', abi: '48', lts: false},
|
||||
{runtime: 'node-webkit', target: '0.18.3', abi: '51', lts: false},
|
||||
{runtime: 'node-webkit', target: '0.23.0', abi: '57', lts: false},
|
||||
{runtime: 'node-webkit', target: '0.26.5', abi: '59', lts: false}
|
||||
]
|
||||
|
||||
additionalTargets.push.apply(additionalTargets, generatedTargets.additional)
|
||||
|
||||
var deprecatedTargets = [
|
||||
{runtime: 'node', target: '0.2.0', abi: '1', lts: false},
|
||||
{runtime: 'node', target: '0.9.1', abi: '0x000A', lts: false},
|
||||
{runtime: 'node', target: '0.9.9', abi: '0x000B', lts: false},
|
||||
{runtime: 'node', target: '0.10.4', abi: '11', lts: false},
|
||||
{runtime: 'node', target: '0.11.0', abi: '0x000C', lts: false},
|
||||
{runtime: 'node', target: '0.11.8', abi: '13', lts: false},
|
||||
{runtime: 'node', target: '0.11.11', abi: '14', lts: false},
|
||||
{runtime: 'node', target: '1.0.0', abi: '42', lts: false},
|
||||
{runtime: 'node', target: '1.1.0', abi: '43', lts: false},
|
||||
{runtime: 'node', target: '2.0.0', abi: '44', lts: false},
|
||||
{runtime: 'node', target: '3.0.0', abi: '45', lts: false},
|
||||
{runtime: 'node', target: '4.0.0', abi: '46', lts: false},
|
||||
{runtime: 'electron', target: '0.30.0', abi: '44', lts: false},
|
||||
{runtime: 'electron', target: '0.31.0', abi: '45', lts: false},
|
||||
{runtime: 'electron', target: '0.33.0', abi: '46', lts: false}
|
||||
]
|
||||
|
||||
var futureTargets = generatedTargets.future
|
||||
|
||||
var allTargets = deprecatedTargets
|
||||
.concat(supportedTargets)
|
||||
.concat(additionalTargets)
|
||||
.concat(futureTargets)
|
||||
|
||||
exports.getAbi = getAbi
|
||||
exports.getTarget = getTarget
|
||||
exports.deprecatedTargets = deprecatedTargets
|
||||
exports.supportedTargets = supportedTargets
|
||||
exports.additionalTargets = additionalTargets
|
||||
exports.futureTargets = futureTargets
|
||||
exports.allTargets = allTargets
|
||||
exports._getNextTarget = getNextTarget
|
39
vscode-server-linux-x64-web/node_modules/node-abi/package.json
generated
vendored
Normal file
39
vscode-server-linux-x64-web/node_modules/node-abi/package.json
generated
vendored
Normal file
@ -0,0 +1,39 @@
|
||||
{
|
||||
"name": "node-abi",
|
||||
"version": "3.8.0",
|
||||
"description": "Get the Node ABI for a given target and runtime, and vice versa.",
|
||||
"main": "index.js",
|
||||
"scripts": {
|
||||
"semantic-release": "semantic-release",
|
||||
"test": "tape test/index.js",
|
||||
"update-abi-registry": "node --unhandled-rejections=strict scripts/update-abi-registry.js"
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/lgeiger/node-abi.git"
|
||||
},
|
||||
"keywords": [
|
||||
"node",
|
||||
"electron",
|
||||
"node_module_version",
|
||||
"abi",
|
||||
"v8"
|
||||
],
|
||||
"author": "Lukas Geiger",
|
||||
"license": "MIT",
|
||||
"bugs": {
|
||||
"url": "https://github.com/lgeiger/node-abi/issues"
|
||||
},
|
||||
"homepage": "https://github.com/lgeiger/node-abi#readme",
|
||||
"devDependencies": {
|
||||
"@continuous-auth/semantic-release-npm": "^2.0.0",
|
||||
"got": "^11.8.2",
|
||||
"tape": "^5.3.1"
|
||||
},
|
||||
"dependencies": {
|
||||
"semver": "^7.3.5"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=10"
|
||||
}
|
||||
}
|
119
vscode-server-linux-x64-web/node_modules/node-abi/scripts/update-abi-registry.js
generated
vendored
Normal file
119
vscode-server-linux-x64-web/node_modules/node-abi/scripts/update-abi-registry.js
generated
vendored
Normal file
@ -0,0 +1,119 @@
|
||||
const got = require('got')
|
||||
const path = require('path')
|
||||
const semver = require('semver')
|
||||
const { writeFile } = require('fs').promises
|
||||
|
||||
async function getJSONFromCDN (urlPath) {
|
||||
const response = await got(`https://cdn.jsdelivr.net/gh/${urlPath}`)
|
||||
return JSON.parse(response.body)
|
||||
}
|
||||
|
||||
async function fetchElectronReleases () {
|
||||
const response = await got(`https://electronjs.org/headers/index.json`)
|
||||
return JSON.parse(response.body)
|
||||
}
|
||||
|
||||
async function fetchNodeVersions () {
|
||||
const schedule = await getJSONFromCDN('nodejs/Release/schedule.json')
|
||||
const versions = {}
|
||||
|
||||
for (const [majorVersion, metadata] of Object.entries(schedule)) {
|
||||
if (majorVersion.startsWith('v0')) {
|
||||
continue
|
||||
}
|
||||
const version = `${majorVersion.slice(1)}.0.0`
|
||||
const lts = metadata.hasOwnProperty('lts') ? [metadata.lts, metadata.maintenance] : false
|
||||
versions[version] = {
|
||||
runtime: 'node',
|
||||
target: version,
|
||||
lts: lts,
|
||||
future: new Date(Date.parse(metadata.start)) > new Date()
|
||||
}
|
||||
}
|
||||
|
||||
return versions
|
||||
}
|
||||
|
||||
async function fetchAbiVersions () {
|
||||
return (await getJSONFromCDN('nodejs/node/doc/abi_version_registry.json'))
|
||||
.NODE_MODULE_VERSION
|
||||
.filter(({ modules }) => modules > 66)
|
||||
}
|
||||
|
||||
function electronReleasesToTargets (releases) {
|
||||
const versions = releases.map(({ version }) => version)
|
||||
const versionsByModules = releases
|
||||
.filter(release => Number(release.modules) >= 70)
|
||||
.map(({ version, modules }) => ({
|
||||
version,
|
||||
modules,
|
||||
}))
|
||||
.filter(({ version }) => !version.includes('nightly'))
|
||||
.sort((a, b) => Number(a.modules) - Number(b.modules))
|
||||
.reduce(
|
||||
(acc, { modules, version }) => ({
|
||||
...acc,
|
||||
[`${version.split('.')[0]}-${modules}`]: {
|
||||
version,
|
||||
modules,
|
||||
}
|
||||
}),
|
||||
{}
|
||||
)
|
||||
|
||||
return Object.entries(versionsByModules)
|
||||
.map(
|
||||
([major, {version, modules}]) => ({
|
||||
abi: modules,
|
||||
future: !versions.find(
|
||||
v => {
|
||||
const major = version.split(".")[0]
|
||||
return semver.satisfies(
|
||||
v,
|
||||
/^[0-9]/.test(major) ? `>= ${major}` : major
|
||||
)
|
||||
}
|
||||
),
|
||||
lts: false,
|
||||
runtime: 'electron',
|
||||
target: version
|
||||
})
|
||||
)
|
||||
}
|
||||
|
||||
function nodeVersionsToTargets (abiVersions, nodeVersions) {
|
||||
return Object.values(
|
||||
abiVersions
|
||||
.filter(({ runtime }) => runtime === 'node')
|
||||
.reduce(
|
||||
(acc, abiVersion) => {
|
||||
const { version: nodeVersion } = semver.coerce(abiVersion.versions)
|
||||
|
||||
return {
|
||||
[nodeVersion]: {
|
||||
...nodeVersions[nodeVersion],
|
||||
abi: abiVersion.modules.toString(),
|
||||
},
|
||||
...acc,
|
||||
};
|
||||
},
|
||||
{}
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
async function main () {
|
||||
const nodeVersions = await fetchNodeVersions()
|
||||
const abiVersions = await fetchAbiVersions()
|
||||
const electronReleases = await fetchElectronReleases()
|
||||
const electronTargets = electronReleasesToTargets(electronReleases)
|
||||
const nodeTargets = nodeVersionsToTargets(abiVersions, nodeVersions)
|
||||
const supportedTargets = [
|
||||
...nodeTargets,
|
||||
...electronTargets,
|
||||
]
|
||||
|
||||
await writeFile(path.resolve(__dirname, '..', 'abi_registry.json'), JSON.stringify(supportedTargets, null, 2))
|
||||
}
|
||||
|
||||
main()
|
Reference in New Issue
Block a user