node-abi 2.27.0 → 2.30.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/.travis.yml CHANGED
@@ -5,13 +5,11 @@ cache:
5
5
  notifications:
6
6
  email: false
7
7
  node_js:
8
+ - '14'
9
+ - '12'
8
10
  - '10'
9
11
  - '9'
10
12
  - '8'
11
- - '6'
12
- - '4'
13
- - '0.12'
14
- - '0.10'
15
13
  after_success:
16
14
  - npm run travis-deploy-once "npm run semantic-release"
17
15
  branches:
package/README.md CHANGED
@@ -47,4 +47,4 @@ nodeAbi.futureTargets
47
47
 
48
48
  - https://github.com/lgeiger/electron-abi
49
49
  - https://nodejs.org/en/download/releases/
50
- - https://github.com/nodejs/LTS
50
+ - https://github.com/nodejs/Release
package/abi_registry.json CHANGED
@@ -78,6 +78,13 @@
78
78
  "runtime": "electron",
79
79
  "target": "8.0.0-beta.1"
80
80
  },
81
+ {
82
+ "abi": "76",
83
+ "future": false,
84
+ "lts": false,
85
+ "runtime": "electron",
86
+ "target": "9.0.0-beta.1"
87
+ },
81
88
  {
82
89
  "abi": "80",
83
90
  "future": false,
@@ -92,6 +99,13 @@
92
99
  "runtime": "electron",
93
100
  "target": "10.0.0-beta.1"
94
101
  },
102
+ {
103
+ "abi": "82",
104
+ "future": false,
105
+ "lts": false,
106
+ "runtime": "electron",
107
+ "target": "11.0.0-beta.1"
108
+ },
95
109
  {
96
110
  "abi": "85",
97
111
  "future": false,
@@ -106,11 +120,25 @@
106
120
  "runtime": "electron",
107
121
  "target": "12.0.0-beta.1"
108
122
  },
123
+ {
124
+ "abi": "89",
125
+ "future": false,
126
+ "lts": false,
127
+ "runtime": "electron",
128
+ "target": "14.0.0-beta.1"
129
+ },
109
130
  {
110
131
  "abi": "89",
111
132
  "future": false,
112
133
  "lts": false,
113
134
  "runtime": "electron",
114
135
  "target": "13.0.0-beta.2"
136
+ },
137
+ {
138
+ "abi": "89",
139
+ "future": true,
140
+ "lts": false,
141
+ "runtime": "electron",
142
+ "target": "15.0.0-alpha.1"
115
143
  }
116
144
  ]
package/index.js CHANGED
@@ -4,7 +4,13 @@ function getNextTarget (runtime, targets) {
4
4
  if (targets == null) targets = allTargets
5
5
  var latest = targets.filter(function (t) { return t.runtime === runtime }).slice(-1)[0]
6
6
  var increment = runtime === 'electron' ? 'minor' : 'major'
7
- return semver.inc(latest.target, increment)
7
+ var next = semver.inc(latest.target, increment)
8
+ // Electron releases appear in the registry in their beta form, sometimes there is
9
+ // no active beta line. During this time we need to double bump
10
+ if (runtime === 'electron' && semver.parse(latest.target).prerelease.length) {
11
+ next = semver.inc(next, 'major')
12
+ }
13
+ return next
8
14
  }
9
15
 
10
16
  function getAbi (target, runtime) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "node-abi",
3
- "version": "2.27.0",
3
+ "version": "2.30.1",
4
4
  "description": "Get the Node ABI for a given target and runtime, and vice versa.",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -9,7 +9,8 @@ async function getJSONFromCDN (urlPath) {
9
9
  }
10
10
 
11
11
  async function fetchElectronReleases () {
12
- return (await getJSONFromCDN('electron/releases/lite.json'))
12
+ const response = await got(`https://electronjs.org/headers/index.json`)
13
+ return JSON.parse(response.body)
13
14
  }
14
15
 
15
16
  async function fetchNodeVersions () {
@@ -42,22 +43,27 @@ async function fetchAbiVersions () {
42
43
  function electronReleasesToTargets (releases) {
43
44
  const versions = releases.map(({ version }) => version)
44
45
  const versionsByModules = releases
45
- .filter(release => release.deps && Number(release.deps.modules) >= 70)
46
- .map(({ version, deps: { modules } }) => ({
46
+ .filter(release => Number(release.modules) >= 70)
47
+ .map(({ version, modules }) => ({
47
48
  version,
48
49
  modules,
49
50
  }))
51
+ .filter(({ version }) => !version.includes('nightly'))
52
+ .sort((a, b) => Number(a.modules) - Number(b.modules))
50
53
  .reduce(
51
54
  (acc, { modules, version }) => ({
52
55
  ...acc,
53
- [modules]: version,
56
+ [`${version.split('.')[0]}-${modules}`]: {
57
+ version,
58
+ modules,
59
+ }
54
60
  }),
55
61
  {}
56
62
  )
57
63
 
58
64
  return Object.entries(versionsByModules)
59
65
  .map(
60
- ([modules, version]) => ({
66
+ ([major, {version, modules}]) => ({
61
67
  abi: modules,
62
68
  future: !versions.find(
63
69
  v => {