jjpwrgem 0.5.2 → 0.5.4-alpha.7
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/README.md +12 -6
- package/binary-install.js +149 -13
- package/binary.js +12 -11
- package/install.js +1 -1
- package/npm-shrinkwrap.json +3 -415
- package/package.json +5 -8
- package/run-jjp.js +1 -1
- package/npm-package.tar.gz +0 -0
package/README.md
CHANGED
|
@@ -6,8 +6,6 @@ JJPWRGEM JSON Parser With Really Good Error Messages
|
|
|
6
6
|
|
|
7
7
|
An RFC 8259 compliant JSON Parser and formatter!
|
|
8
8
|
|
|
9
|
-

|
|
10
|
-
|
|
11
9
|
```
|
|
12
10
|
$ echo -en "{\"coolKey\"}" | jjp check
|
|
13
11
|
error: expected colon after key, found `}`
|
|
@@ -25,6 +23,10 @@ help: insert colon and placeholder value
|
|
|
25
23
|
|
|
26
24
|
```
|
|
27
25
|
|
|
26
|
+

|
|
27
|
+
|
|
28
|
+

|
|
29
|
+
|
|
28
30
|
## Table of contents
|
|
29
31
|
|
|
30
32
|
- [Table of contents](#table-of-contents)
|
|
@@ -49,15 +51,19 @@ Note: node adds ~60ms of overhead
|
|
|
49
51
|
npm install -g jjpwrgem
|
|
50
52
|
```
|
|
51
53
|
|
|
54
|
+
#### Requirements
|
|
55
|
+
|
|
56
|
+
x86-64 binaries require a CPU with AVX2 support (Intel Haswell 2013+, AMD Ryzen 2017+). ARM binaries have no special requirements
|
|
57
|
+
|
|
52
58
|
### From source
|
|
53
59
|
|
|
54
60
|
```bash
|
|
55
|
-
cargo install --path .
|
|
61
|
+
RUSTFLAGS="-C target-cpu=native" cargo install --path .
|
|
56
62
|
```
|
|
57
63
|
|
|
58
64
|
## Stability
|
|
59
65
|
|
|
60
|
-
JJPWRGEM is
|
|
66
|
+
JJPWRGEM's CLI is pretty stable. Internal libraries are likely unstable
|
|
61
67
|
|
|
62
68
|
## Indeterminate Handling
|
|
63
69
|
|
|
@@ -78,9 +84,9 @@ How cases undefined by the spec are handled
|
|
|
78
84
|
|
|
79
85
|
Axolotls can't walk so fast, so skateboards are pretty fast 🛹🐟
|
|
80
86
|
|
|
81
|
-
jjpwrgem can parse and pretty print a 1.7MB JSON file in around
|
|
87
|
+
Without caching, jjpwrgem can parse and pretty print a 1.7MB JSON file in around 11ms and the average package.json in 500 microseconds
|
|
82
88
|
|
|
83
|
-
See the [benchmarks](/
|
|
89
|
+
See the [benchmarks](/benches/BENCHMARKS.md)
|
|
84
90
|
|
|
85
91
|
## FAQ
|
|
86
92
|
|
package/binary-install.js
CHANGED
|
@@ -1,10 +1,21 @@
|
|
|
1
|
-
|
|
1
|
+
// Derived from cargo-dist (https://github.com/axodotdev/cargo-dist)
|
|
2
|
+
// Copyright (c) 2022-2024 Axo Developer Co.
|
|
3
|
+
// Licensed under MIT OR Apache-2.0
|
|
4
|
+
|
|
5
|
+
const {
|
|
6
|
+
createWriteStream,
|
|
7
|
+
existsSync,
|
|
8
|
+
mkdirSync,
|
|
9
|
+
mkdtemp,
|
|
10
|
+
rmSync,
|
|
11
|
+
} = require("fs");
|
|
2
12
|
const { join, sep } = require("path");
|
|
3
13
|
const { spawnSync } = require("child_process");
|
|
4
14
|
const { tmpdir } = require("os");
|
|
5
15
|
|
|
6
|
-
const
|
|
7
|
-
const
|
|
16
|
+
const https = require("node:https");
|
|
17
|
+
const http = require("node:http");
|
|
18
|
+
|
|
8
19
|
const tmpDir = tmpdir();
|
|
9
20
|
|
|
10
21
|
const error = (msg) => {
|
|
@@ -12,6 +23,131 @@ const error = (msg) => {
|
|
|
12
23
|
process.exit(1);
|
|
13
24
|
};
|
|
14
25
|
|
|
26
|
+
function getProxyForUrl(urlString) {
|
|
27
|
+
const url = new URL(urlString);
|
|
28
|
+
const isHttps = url.protocol === "https:";
|
|
29
|
+
|
|
30
|
+
const noProxy = process.env.NO_PROXY || process.env.no_proxy || "";
|
|
31
|
+
if (noProxy === "*") return null;
|
|
32
|
+
if (noProxy) {
|
|
33
|
+
const hostname = url.hostname.toLowerCase();
|
|
34
|
+
const noProxyList = noProxy.split(",").map((s) => s.trim().toLowerCase());
|
|
35
|
+
for (const entry of noProxyList) {
|
|
36
|
+
if (hostname === entry || hostname.endsWith("." + entry)) {
|
|
37
|
+
return null;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
const proxyEnv = isHttps
|
|
43
|
+
? process.env.HTTPS_PROXY || process.env.https_proxy
|
|
44
|
+
: process.env.HTTP_PROXY || process.env.http_proxy;
|
|
45
|
+
|
|
46
|
+
if (!proxyEnv) return null;
|
|
47
|
+
|
|
48
|
+
const proxyUrl = new URL(proxyEnv);
|
|
49
|
+
return {
|
|
50
|
+
hostname: proxyUrl.hostname,
|
|
51
|
+
port: proxyUrl.port || (proxyUrl.protocol === "https:" ? 443 : 80),
|
|
52
|
+
auth: proxyUrl.username
|
|
53
|
+
? `${proxyUrl.username}:${proxyUrl.password}`
|
|
54
|
+
: null,
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
function connectThroughProxy(proxy, target) {
|
|
59
|
+
return new Promise((resolve, reject) => {
|
|
60
|
+
const headers = {};
|
|
61
|
+
if (proxy.auth) {
|
|
62
|
+
headers["Proxy-Authorization"] =
|
|
63
|
+
"Basic " + Buffer.from(proxy.auth).toString("base64");
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
const connectReq = http.request({
|
|
67
|
+
hostname: proxy.hostname,
|
|
68
|
+
port: proxy.port,
|
|
69
|
+
method: "CONNECT",
|
|
70
|
+
path: `${target.hostname}:${target.port || 443}`,
|
|
71
|
+
headers,
|
|
72
|
+
});
|
|
73
|
+
connectReq.on("connect", (res, socket) => {
|
|
74
|
+
if (res.statusCode === 200) {
|
|
75
|
+
resolve(socket);
|
|
76
|
+
} else {
|
|
77
|
+
reject(new Error(`Proxy CONNECT failed with status ${res.statusCode}`));
|
|
78
|
+
}
|
|
79
|
+
});
|
|
80
|
+
connectReq.on("error", reject);
|
|
81
|
+
connectReq.end();
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
function download(urlString, maxRedirects) {
|
|
86
|
+
if (maxRedirects === undefined) maxRedirects = 5;
|
|
87
|
+
return new Promise((resolve, reject) => {
|
|
88
|
+
if (maxRedirects < 0) {
|
|
89
|
+
return reject(new Error("Too many redirects"));
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
const parsed = new URL(urlString);
|
|
93
|
+
const isHttps = parsed.protocol === "https:";
|
|
94
|
+
const mod = isHttps ? https : http;
|
|
95
|
+
const proxy = getProxyForUrl(urlString);
|
|
96
|
+
|
|
97
|
+
const doRequest = (extraOptions) => {
|
|
98
|
+
const options = Object.assign(
|
|
99
|
+
{
|
|
100
|
+
hostname: parsed.hostname,
|
|
101
|
+
port: parsed.port || (isHttps ? 443 : 80),
|
|
102
|
+
path: parsed.pathname + parsed.search,
|
|
103
|
+
method: "GET",
|
|
104
|
+
headers: { "User-Agent": "cargo-dist-npm-installer" },
|
|
105
|
+
},
|
|
106
|
+
extraOptions || {},
|
|
107
|
+
);
|
|
108
|
+
|
|
109
|
+
if (proxy && !isHttps) {
|
|
110
|
+
// HTTP through HTTP proxy: request the full URL via the proxy
|
|
111
|
+
options.hostname = proxy.hostname;
|
|
112
|
+
options.port = proxy.port;
|
|
113
|
+
options.path = urlString;
|
|
114
|
+
if (proxy.auth) {
|
|
115
|
+
options.headers["Proxy-Authorization"] =
|
|
116
|
+
"Basic " + Buffer.from(proxy.auth).toString("base64");
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
const req = mod.request(options, (res) => {
|
|
121
|
+
if (
|
|
122
|
+
res.statusCode >= 300 &&
|
|
123
|
+
res.statusCode < 400 &&
|
|
124
|
+
res.headers.location
|
|
125
|
+
) {
|
|
126
|
+
res.resume();
|
|
127
|
+
const nextUrl = new URL(res.headers.location, urlString).toString();
|
|
128
|
+
return download(nextUrl, maxRedirects - 1).then(resolve, reject);
|
|
129
|
+
}
|
|
130
|
+
if (res.statusCode < 200 || res.statusCode >= 300) {
|
|
131
|
+
res.resume();
|
|
132
|
+
return reject(new Error(`HTTP ${res.statusCode} from ${urlString}`));
|
|
133
|
+
}
|
|
134
|
+
resolve(res);
|
|
135
|
+
});
|
|
136
|
+
req.on("error", reject);
|
|
137
|
+
req.end();
|
|
138
|
+
};
|
|
139
|
+
|
|
140
|
+
if (proxy && isHttps) {
|
|
141
|
+
connectThroughProxy(proxy, parsed).then(
|
|
142
|
+
(socket) => doRequest({ socket, agent: false }),
|
|
143
|
+
reject,
|
|
144
|
+
);
|
|
145
|
+
} else {
|
|
146
|
+
doRequest();
|
|
147
|
+
}
|
|
148
|
+
});
|
|
149
|
+
}
|
|
150
|
+
|
|
15
151
|
class Package {
|
|
16
152
|
constructor(platform, name, url, filename, zipExt, binaries) {
|
|
17
153
|
let errors = [];
|
|
@@ -72,7 +208,7 @@ class Package {
|
|
|
72
208
|
return true;
|
|
73
209
|
}
|
|
74
210
|
|
|
75
|
-
install(
|
|
211
|
+
install(suppressLogs = false) {
|
|
76
212
|
if (this.exists()) {
|
|
77
213
|
if (!suppressLogs) {
|
|
78
214
|
console.error(
|
|
@@ -82,8 +218,10 @@ class Package {
|
|
|
82
218
|
return Promise.resolve();
|
|
83
219
|
}
|
|
84
220
|
|
|
85
|
-
|
|
86
|
-
|
|
221
|
+
try {
|
|
222
|
+
rmSync(this.installDirectory, { recursive: true, force: true });
|
|
223
|
+
} catch {
|
|
224
|
+
// ignore - directory may not exist
|
|
87
225
|
}
|
|
88
226
|
|
|
89
227
|
mkdirSync(this.installDirectory, { recursive: true });
|
|
@@ -92,12 +230,13 @@ class Package {
|
|
|
92
230
|
console.error(`Downloading release from ${this.url}`);
|
|
93
231
|
}
|
|
94
232
|
|
|
95
|
-
return
|
|
233
|
+
return download(this.url)
|
|
96
234
|
.then((res) => {
|
|
97
235
|
return new Promise((resolve, reject) => {
|
|
98
236
|
mkdtemp(`${tmpDir}${sep}`, (err, directory) => {
|
|
237
|
+
if (err) return reject(err);
|
|
99
238
|
let tempFile = join(directory, this.filename);
|
|
100
|
-
const sink = res.
|
|
239
|
+
const sink = res.pipe(createWriteStream(tempFile));
|
|
101
240
|
sink.on("error", (err) => reject(err));
|
|
102
241
|
sink.on("close", () => {
|
|
103
242
|
if (/\.tar\.*/.test(this.zipExt)) {
|
|
@@ -178,10 +317,8 @@ class Package {
|
|
|
178
317
|
});
|
|
179
318
|
}
|
|
180
319
|
|
|
181
|
-
run(binaryName
|
|
182
|
-
const promise = !this.exists()
|
|
183
|
-
? this.install(fetchOptions, true)
|
|
184
|
-
: Promise.resolve();
|
|
320
|
+
run(binaryName) {
|
|
321
|
+
const promise = !this.exists() ? this.install(true) : Promise.resolve();
|
|
185
322
|
|
|
186
323
|
promise
|
|
187
324
|
.then(() => {
|
|
@@ -204,7 +341,6 @@ class Package {
|
|
|
204
341
|
})
|
|
205
342
|
.catch((e) => {
|
|
206
343
|
error(e.message);
|
|
207
|
-
process.exit(1);
|
|
208
344
|
});
|
|
209
345
|
}
|
|
210
346
|
}
|
package/binary.js
CHANGED
|
@@ -1,7 +1,10 @@
|
|
|
1
|
+
// Derived from cargo-dist (https://github.com/axodotdev/cargo-dist)
|
|
2
|
+
// Copyright (c) 2022-2024 Axo Developer Co.
|
|
3
|
+
// Licensed under MIT OR Apache-2.0
|
|
4
|
+
|
|
1
5
|
const { Package } = require("./binary-install");
|
|
2
6
|
const os = require("os");
|
|
3
7
|
const libc = require("detect-libc");
|
|
4
|
-
const { configureProxy } = require("axios-proxy-builder");
|
|
5
8
|
|
|
6
9
|
const error = (msg) => {
|
|
7
10
|
console.error(msg);
|
|
@@ -52,7 +55,7 @@ const getPlatform = () => {
|
|
|
52
55
|
osType = "unknown-linux-musl-dynamic";
|
|
53
56
|
} else if (libc.isNonGlibcLinuxSync()) {
|
|
54
57
|
console.warn(
|
|
55
|
-
"Your libc is neither glibc nor musl; trying static musl binary instead"
|
|
58
|
+
"Your libc is neither glibc nor musl; trying static musl binary instead",
|
|
56
59
|
);
|
|
57
60
|
osType = "unknown-linux-musl-static";
|
|
58
61
|
} else {
|
|
@@ -67,7 +70,7 @@ const getPlatform = () => {
|
|
|
67
70
|
// We can't run the glibc binaries, but we can run the static musl ones
|
|
68
71
|
// if they exist
|
|
69
72
|
console.warn(
|
|
70
|
-
"Your glibc isn't compatible; trying static musl binary instead"
|
|
73
|
+
"Your glibc isn't compatible; trying static musl binary instead",
|
|
71
74
|
);
|
|
72
75
|
osType = "unknown-linux-musl-static";
|
|
73
76
|
}
|
|
@@ -82,8 +85,8 @@ const getPlatform = () => {
|
|
|
82
85
|
if (!platform) {
|
|
83
86
|
error(
|
|
84
87
|
`Platform with type "${rawOsType}" and architecture "${rawArchitecture}" is not supported by ${name}.\nYour system must be one of the following:\n\n${Object.keys(
|
|
85
|
-
supportedPlatforms
|
|
86
|
-
).join(",")}
|
|
88
|
+
supportedPlatforms,
|
|
89
|
+
).join(",")}`,
|
|
87
90
|
);
|
|
88
91
|
}
|
|
89
92
|
|
|
@@ -105,17 +108,15 @@ const install = (suppressLogs) => {
|
|
|
105
108
|
console.warn("in demo mode, not installing binaries");
|
|
106
109
|
return;
|
|
107
110
|
}
|
|
108
|
-
const
|
|
109
|
-
const proxy = configureProxy(package.url);
|
|
111
|
+
const pkg = getPackage();
|
|
110
112
|
|
|
111
|
-
return
|
|
113
|
+
return pkg.install(suppressLogs);
|
|
112
114
|
};
|
|
113
115
|
|
|
114
116
|
const run = (binaryName) => {
|
|
115
|
-
const
|
|
116
|
-
const proxy = configureProxy(package.url);
|
|
117
|
+
const pkg = getPackage();
|
|
117
118
|
|
|
118
|
-
|
|
119
|
+
pkg.run(binaryName);
|
|
119
120
|
};
|
|
120
121
|
|
|
121
122
|
module.exports = {
|
package/install.js
CHANGED
package/npm-shrinkwrap.json
CHANGED
|
@@ -1,19 +1,16 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "jjpwrgem",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.4-alpha.7",
|
|
4
4
|
"lockfileVersion": 3,
|
|
5
5
|
"requires": true,
|
|
6
6
|
"packages": {
|
|
7
7
|
"": {
|
|
8
8
|
"name": "jjpwrgem",
|
|
9
|
-
"version": "0.5.
|
|
9
|
+
"version": "0.5.4-alpha.7",
|
|
10
10
|
"hasInstallScript": true,
|
|
11
11
|
"license": "MIT",
|
|
12
12
|
"dependencies": {
|
|
13
|
-
"
|
|
14
|
-
"axios-proxy-builder": "^0.1.2",
|
|
15
|
-
"detect-libc": "^2.1.2",
|
|
16
|
-
"rimraf": "^6.0.1"
|
|
13
|
+
"detect-libc": "^2.1.2"
|
|
17
14
|
},
|
|
18
15
|
"bin": {
|
|
19
16
|
"jjp": "run-jjp.js"
|
|
@@ -24,87 +21,6 @@
|
|
|
24
21
|
"npm": ">=6"
|
|
25
22
|
}
|
|
26
23
|
},
|
|
27
|
-
"node_modules/@isaacs/balanced-match": {
|
|
28
|
-
"version": "4.0.1",
|
|
29
|
-
"resolved": "https://registry.npmjs.org/@isaacs/balanced-match/-/balanced-match-4.0.1.tgz",
|
|
30
|
-
"integrity": "sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ==",
|
|
31
|
-
"license": "MIT",
|
|
32
|
-
"engines": {
|
|
33
|
-
"node": "20 || >=22"
|
|
34
|
-
}
|
|
35
|
-
},
|
|
36
|
-
"node_modules/@isaacs/brace-expansion": {
|
|
37
|
-
"version": "5.0.0",
|
|
38
|
-
"resolved": "https://registry.npmjs.org/@isaacs/brace-expansion/-/brace-expansion-5.0.0.tgz",
|
|
39
|
-
"integrity": "sha512-ZT55BDLV0yv0RBm2czMiZ+SqCGO7AvmOM3G/w2xhVPH+te0aKgFjmBvGlL1dH+ql2tgGO3MVrbb3jCKyvpgnxA==",
|
|
40
|
-
"license": "MIT",
|
|
41
|
-
"dependencies": {
|
|
42
|
-
"@isaacs/balanced-match": "^4.0.1"
|
|
43
|
-
},
|
|
44
|
-
"engines": {
|
|
45
|
-
"node": "20 || >=22"
|
|
46
|
-
}
|
|
47
|
-
},
|
|
48
|
-
"node_modules/asynckit": {
|
|
49
|
-
"version": "0.4.0",
|
|
50
|
-
"resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
|
|
51
|
-
"integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==",
|
|
52
|
-
"license": "MIT"
|
|
53
|
-
},
|
|
54
|
-
"node_modules/axios": {
|
|
55
|
-
"version": "1.13.2",
|
|
56
|
-
"resolved": "https://registry.npmjs.org/axios/-/axios-1.13.2.tgz",
|
|
57
|
-
"integrity": "sha512-VPk9ebNqPcy5lRGuSlKx752IlDatOjT9paPlm8A7yOuW2Fbvp4X3JznJtT4f0GzGLLiWE9W8onz51SqLYwzGaA==",
|
|
58
|
-
"license": "MIT",
|
|
59
|
-
"dependencies": {
|
|
60
|
-
"follow-redirects": "^1.15.6",
|
|
61
|
-
"form-data": "^4.0.4",
|
|
62
|
-
"proxy-from-env": "^1.1.0"
|
|
63
|
-
}
|
|
64
|
-
},
|
|
65
|
-
"node_modules/axios-proxy-builder": {
|
|
66
|
-
"version": "0.1.2",
|
|
67
|
-
"resolved": "https://registry.npmjs.org/axios-proxy-builder/-/axios-proxy-builder-0.1.2.tgz",
|
|
68
|
-
"integrity": "sha512-6uBVsBZzkB3tCC8iyx59mCjQckhB8+GQrI9Cop8eC7ybIsvs/KtnNgEBfRMSEa7GqK2VBGUzgjNYMdPIfotyPA==",
|
|
69
|
-
"license": "MIT",
|
|
70
|
-
"dependencies": {
|
|
71
|
-
"tunnel": "^0.0.6"
|
|
72
|
-
}
|
|
73
|
-
},
|
|
74
|
-
"node_modules/call-bind-apply-helpers": {
|
|
75
|
-
"version": "1.0.2",
|
|
76
|
-
"resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz",
|
|
77
|
-
"integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==",
|
|
78
|
-
"license": "MIT",
|
|
79
|
-
"dependencies": {
|
|
80
|
-
"es-errors": "^1.3.0",
|
|
81
|
-
"function-bind": "^1.1.2"
|
|
82
|
-
},
|
|
83
|
-
"engines": {
|
|
84
|
-
"node": ">= 0.4"
|
|
85
|
-
}
|
|
86
|
-
},
|
|
87
|
-
"node_modules/combined-stream": {
|
|
88
|
-
"version": "1.0.8",
|
|
89
|
-
"resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
|
|
90
|
-
"integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
|
|
91
|
-
"license": "MIT",
|
|
92
|
-
"dependencies": {
|
|
93
|
-
"delayed-stream": "~1.0.0"
|
|
94
|
-
},
|
|
95
|
-
"engines": {
|
|
96
|
-
"node": ">= 0.8"
|
|
97
|
-
}
|
|
98
|
-
},
|
|
99
|
-
"node_modules/delayed-stream": {
|
|
100
|
-
"version": "1.0.0",
|
|
101
|
-
"resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
|
|
102
|
-
"integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==",
|
|
103
|
-
"license": "MIT",
|
|
104
|
-
"engines": {
|
|
105
|
-
"node": ">=0.4.0"
|
|
106
|
-
}
|
|
107
|
-
},
|
|
108
24
|
"node_modules/detect-libc": {
|
|
109
25
|
"version": "2.1.2",
|
|
110
26
|
"resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.2.tgz",
|
|
@@ -113,334 +29,6 @@
|
|
|
113
29
|
"engines": {
|
|
114
30
|
"node": ">=8"
|
|
115
31
|
}
|
|
116
|
-
},
|
|
117
|
-
"node_modules/dunder-proto": {
|
|
118
|
-
"version": "1.0.1",
|
|
119
|
-
"resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz",
|
|
120
|
-
"integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==",
|
|
121
|
-
"license": "MIT",
|
|
122
|
-
"dependencies": {
|
|
123
|
-
"call-bind-apply-helpers": "^1.0.1",
|
|
124
|
-
"es-errors": "^1.3.0",
|
|
125
|
-
"gopd": "^1.2.0"
|
|
126
|
-
},
|
|
127
|
-
"engines": {
|
|
128
|
-
"node": ">= 0.4"
|
|
129
|
-
}
|
|
130
|
-
},
|
|
131
|
-
"node_modules/es-define-property": {
|
|
132
|
-
"version": "1.0.1",
|
|
133
|
-
"resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz",
|
|
134
|
-
"integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==",
|
|
135
|
-
"license": "MIT",
|
|
136
|
-
"engines": {
|
|
137
|
-
"node": ">= 0.4"
|
|
138
|
-
}
|
|
139
|
-
},
|
|
140
|
-
"node_modules/es-errors": {
|
|
141
|
-
"version": "1.3.0",
|
|
142
|
-
"resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz",
|
|
143
|
-
"integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==",
|
|
144
|
-
"license": "MIT",
|
|
145
|
-
"engines": {
|
|
146
|
-
"node": ">= 0.4"
|
|
147
|
-
}
|
|
148
|
-
},
|
|
149
|
-
"node_modules/es-object-atoms": {
|
|
150
|
-
"version": "1.1.1",
|
|
151
|
-
"resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz",
|
|
152
|
-
"integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==",
|
|
153
|
-
"license": "MIT",
|
|
154
|
-
"dependencies": {
|
|
155
|
-
"es-errors": "^1.3.0"
|
|
156
|
-
},
|
|
157
|
-
"engines": {
|
|
158
|
-
"node": ">= 0.4"
|
|
159
|
-
}
|
|
160
|
-
},
|
|
161
|
-
"node_modules/es-set-tostringtag": {
|
|
162
|
-
"version": "2.1.0",
|
|
163
|
-
"resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz",
|
|
164
|
-
"integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==",
|
|
165
|
-
"license": "MIT",
|
|
166
|
-
"dependencies": {
|
|
167
|
-
"es-errors": "^1.3.0",
|
|
168
|
-
"get-intrinsic": "^1.2.6",
|
|
169
|
-
"has-tostringtag": "^1.0.2",
|
|
170
|
-
"hasown": "^2.0.2"
|
|
171
|
-
},
|
|
172
|
-
"engines": {
|
|
173
|
-
"node": ">= 0.4"
|
|
174
|
-
}
|
|
175
|
-
},
|
|
176
|
-
"node_modules/follow-redirects": {
|
|
177
|
-
"version": "1.15.11",
|
|
178
|
-
"resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.11.tgz",
|
|
179
|
-
"integrity": "sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ==",
|
|
180
|
-
"funding": [
|
|
181
|
-
{
|
|
182
|
-
"type": "individual",
|
|
183
|
-
"url": "https://github.com/sponsors/RubenVerborgh"
|
|
184
|
-
}
|
|
185
|
-
],
|
|
186
|
-
"license": "MIT",
|
|
187
|
-
"engines": {
|
|
188
|
-
"node": ">=4.0"
|
|
189
|
-
},
|
|
190
|
-
"peerDependenciesMeta": {
|
|
191
|
-
"debug": {
|
|
192
|
-
"optional": true
|
|
193
|
-
}
|
|
194
|
-
}
|
|
195
|
-
},
|
|
196
|
-
"node_modules/form-data": {
|
|
197
|
-
"version": "4.0.5",
|
|
198
|
-
"resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.5.tgz",
|
|
199
|
-
"integrity": "sha512-8RipRLol37bNs2bhoV67fiTEvdTrbMUYcFTiy3+wuuOnUog2QBHCZWXDRijWQfAkhBj2Uf5UnVaiWwA5vdd82w==",
|
|
200
|
-
"license": "MIT",
|
|
201
|
-
"dependencies": {
|
|
202
|
-
"asynckit": "^0.4.0",
|
|
203
|
-
"combined-stream": "^1.0.8",
|
|
204
|
-
"es-set-tostringtag": "^2.1.0",
|
|
205
|
-
"hasown": "^2.0.2",
|
|
206
|
-
"mime-types": "^2.1.12"
|
|
207
|
-
},
|
|
208
|
-
"engines": {
|
|
209
|
-
"node": ">= 6"
|
|
210
|
-
}
|
|
211
|
-
},
|
|
212
|
-
"node_modules/function-bind": {
|
|
213
|
-
"version": "1.1.2",
|
|
214
|
-
"resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
|
|
215
|
-
"integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==",
|
|
216
|
-
"license": "MIT",
|
|
217
|
-
"funding": {
|
|
218
|
-
"url": "https://github.com/sponsors/ljharb"
|
|
219
|
-
}
|
|
220
|
-
},
|
|
221
|
-
"node_modules/get-intrinsic": {
|
|
222
|
-
"version": "1.3.0",
|
|
223
|
-
"resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz",
|
|
224
|
-
"integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==",
|
|
225
|
-
"license": "MIT",
|
|
226
|
-
"dependencies": {
|
|
227
|
-
"call-bind-apply-helpers": "^1.0.2",
|
|
228
|
-
"es-define-property": "^1.0.1",
|
|
229
|
-
"es-errors": "^1.3.0",
|
|
230
|
-
"es-object-atoms": "^1.1.1",
|
|
231
|
-
"function-bind": "^1.1.2",
|
|
232
|
-
"get-proto": "^1.0.1",
|
|
233
|
-
"gopd": "^1.2.0",
|
|
234
|
-
"has-symbols": "^1.1.0",
|
|
235
|
-
"hasown": "^2.0.2",
|
|
236
|
-
"math-intrinsics": "^1.1.0"
|
|
237
|
-
},
|
|
238
|
-
"engines": {
|
|
239
|
-
"node": ">= 0.4"
|
|
240
|
-
},
|
|
241
|
-
"funding": {
|
|
242
|
-
"url": "https://github.com/sponsors/ljharb"
|
|
243
|
-
}
|
|
244
|
-
},
|
|
245
|
-
"node_modules/get-proto": {
|
|
246
|
-
"version": "1.0.1",
|
|
247
|
-
"resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz",
|
|
248
|
-
"integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==",
|
|
249
|
-
"license": "MIT",
|
|
250
|
-
"dependencies": {
|
|
251
|
-
"dunder-proto": "^1.0.1",
|
|
252
|
-
"es-object-atoms": "^1.0.0"
|
|
253
|
-
},
|
|
254
|
-
"engines": {
|
|
255
|
-
"node": ">= 0.4"
|
|
256
|
-
}
|
|
257
|
-
},
|
|
258
|
-
"node_modules/glob": {
|
|
259
|
-
"version": "13.0.0",
|
|
260
|
-
"resolved": "https://registry.npmjs.org/glob/-/glob-13.0.0.tgz",
|
|
261
|
-
"integrity": "sha512-tvZgpqk6fz4BaNZ66ZsRaZnbHvP/jG3uKJvAZOwEVUL4RTA5nJeeLYfyN9/VA8NX/V3IBG+hkeuGpKjvELkVhA==",
|
|
262
|
-
"license": "BlueOak-1.0.0",
|
|
263
|
-
"dependencies": {
|
|
264
|
-
"minimatch": "^10.1.1",
|
|
265
|
-
"minipass": "^7.1.2",
|
|
266
|
-
"path-scurry": "^2.0.0"
|
|
267
|
-
},
|
|
268
|
-
"engines": {
|
|
269
|
-
"node": "20 || >=22"
|
|
270
|
-
},
|
|
271
|
-
"funding": {
|
|
272
|
-
"url": "https://github.com/sponsors/isaacs"
|
|
273
|
-
}
|
|
274
|
-
},
|
|
275
|
-
"node_modules/gopd": {
|
|
276
|
-
"version": "1.2.0",
|
|
277
|
-
"resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz",
|
|
278
|
-
"integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==",
|
|
279
|
-
"license": "MIT",
|
|
280
|
-
"engines": {
|
|
281
|
-
"node": ">= 0.4"
|
|
282
|
-
},
|
|
283
|
-
"funding": {
|
|
284
|
-
"url": "https://github.com/sponsors/ljharb"
|
|
285
|
-
}
|
|
286
|
-
},
|
|
287
|
-
"node_modules/has-symbols": {
|
|
288
|
-
"version": "1.1.0",
|
|
289
|
-
"resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz",
|
|
290
|
-
"integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==",
|
|
291
|
-
"license": "MIT",
|
|
292
|
-
"engines": {
|
|
293
|
-
"node": ">= 0.4"
|
|
294
|
-
},
|
|
295
|
-
"funding": {
|
|
296
|
-
"url": "https://github.com/sponsors/ljharb"
|
|
297
|
-
}
|
|
298
|
-
},
|
|
299
|
-
"node_modules/has-tostringtag": {
|
|
300
|
-
"version": "1.0.2",
|
|
301
|
-
"resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz",
|
|
302
|
-
"integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==",
|
|
303
|
-
"license": "MIT",
|
|
304
|
-
"dependencies": {
|
|
305
|
-
"has-symbols": "^1.0.3"
|
|
306
|
-
},
|
|
307
|
-
"engines": {
|
|
308
|
-
"node": ">= 0.4"
|
|
309
|
-
},
|
|
310
|
-
"funding": {
|
|
311
|
-
"url": "https://github.com/sponsors/ljharb"
|
|
312
|
-
}
|
|
313
|
-
},
|
|
314
|
-
"node_modules/hasown": {
|
|
315
|
-
"version": "2.0.2",
|
|
316
|
-
"resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz",
|
|
317
|
-
"integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==",
|
|
318
|
-
"license": "MIT",
|
|
319
|
-
"dependencies": {
|
|
320
|
-
"function-bind": "^1.1.2"
|
|
321
|
-
},
|
|
322
|
-
"engines": {
|
|
323
|
-
"node": ">= 0.4"
|
|
324
|
-
}
|
|
325
|
-
},
|
|
326
|
-
"node_modules/lru-cache": {
|
|
327
|
-
"version": "11.2.4",
|
|
328
|
-
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.2.4.tgz",
|
|
329
|
-
"integrity": "sha512-B5Y16Jr9LB9dHVkh6ZevG+vAbOsNOYCX+sXvFWFu7B3Iz5mijW3zdbMyhsh8ANd2mSWBYdJgnqi+mL7/LrOPYg==",
|
|
330
|
-
"license": "BlueOak-1.0.0",
|
|
331
|
-
"engines": {
|
|
332
|
-
"node": "20 || >=22"
|
|
333
|
-
}
|
|
334
|
-
},
|
|
335
|
-
"node_modules/math-intrinsics": {
|
|
336
|
-
"version": "1.1.0",
|
|
337
|
-
"resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz",
|
|
338
|
-
"integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==",
|
|
339
|
-
"license": "MIT",
|
|
340
|
-
"engines": {
|
|
341
|
-
"node": ">= 0.4"
|
|
342
|
-
}
|
|
343
|
-
},
|
|
344
|
-
"node_modules/mime-db": {
|
|
345
|
-
"version": "1.52.0",
|
|
346
|
-
"resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
|
|
347
|
-
"integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
|
|
348
|
-
"license": "MIT",
|
|
349
|
-
"engines": {
|
|
350
|
-
"node": ">= 0.6"
|
|
351
|
-
}
|
|
352
|
-
},
|
|
353
|
-
"node_modules/mime-types": {
|
|
354
|
-
"version": "2.1.35",
|
|
355
|
-
"resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
|
|
356
|
-
"integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
|
|
357
|
-
"license": "MIT",
|
|
358
|
-
"dependencies": {
|
|
359
|
-
"mime-db": "1.52.0"
|
|
360
|
-
},
|
|
361
|
-
"engines": {
|
|
362
|
-
"node": ">= 0.6"
|
|
363
|
-
}
|
|
364
|
-
},
|
|
365
|
-
"node_modules/minimatch": {
|
|
366
|
-
"version": "10.1.1",
|
|
367
|
-
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.1.1.tgz",
|
|
368
|
-
"integrity": "sha512-enIvLvRAFZYXJzkCYG5RKmPfrFArdLv+R+lbQ53BmIMLIry74bjKzX6iHAm8WYamJkhSSEabrWN5D97XnKObjQ==",
|
|
369
|
-
"license": "BlueOak-1.0.0",
|
|
370
|
-
"dependencies": {
|
|
371
|
-
"@isaacs/brace-expansion": "^5.0.0"
|
|
372
|
-
},
|
|
373
|
-
"engines": {
|
|
374
|
-
"node": "20 || >=22"
|
|
375
|
-
},
|
|
376
|
-
"funding": {
|
|
377
|
-
"url": "https://github.com/sponsors/isaacs"
|
|
378
|
-
}
|
|
379
|
-
},
|
|
380
|
-
"node_modules/minipass": {
|
|
381
|
-
"version": "7.1.2",
|
|
382
|
-
"resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
|
|
383
|
-
"integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==",
|
|
384
|
-
"license": "ISC",
|
|
385
|
-
"engines": {
|
|
386
|
-
"node": ">=16 || 14 >=14.17"
|
|
387
|
-
}
|
|
388
|
-
},
|
|
389
|
-
"node_modules/package-json-from-dist": {
|
|
390
|
-
"version": "1.0.1",
|
|
391
|
-
"resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz",
|
|
392
|
-
"integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==",
|
|
393
|
-
"license": "BlueOak-1.0.0"
|
|
394
|
-
},
|
|
395
|
-
"node_modules/path-scurry": {
|
|
396
|
-
"version": "2.0.1",
|
|
397
|
-
"resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-2.0.1.tgz",
|
|
398
|
-
"integrity": "sha512-oWyT4gICAu+kaA7QWk/jvCHWarMKNs6pXOGWKDTr7cw4IGcUbW+PeTfbaQiLGheFRpjo6O9J0PmyMfQPjH71oA==",
|
|
399
|
-
"license": "BlueOak-1.0.0",
|
|
400
|
-
"dependencies": {
|
|
401
|
-
"lru-cache": "^11.0.0",
|
|
402
|
-
"minipass": "^7.1.2"
|
|
403
|
-
},
|
|
404
|
-
"engines": {
|
|
405
|
-
"node": "20 || >=22"
|
|
406
|
-
},
|
|
407
|
-
"funding": {
|
|
408
|
-
"url": "https://github.com/sponsors/isaacs"
|
|
409
|
-
}
|
|
410
|
-
},
|
|
411
|
-
"node_modules/proxy-from-env": {
|
|
412
|
-
"version": "1.1.0",
|
|
413
|
-
"resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz",
|
|
414
|
-
"integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==",
|
|
415
|
-
"license": "MIT"
|
|
416
|
-
},
|
|
417
|
-
"node_modules/rimraf": {
|
|
418
|
-
"version": "6.1.2",
|
|
419
|
-
"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-6.1.2.tgz",
|
|
420
|
-
"integrity": "sha512-cFCkPslJv7BAXJsYlK1dZsbP8/ZNLkCAQ0bi1hf5EKX2QHegmDFEFA6QhuYJlk7UDdc+02JjO80YSOrWPpw06g==",
|
|
421
|
-
"license": "BlueOak-1.0.0",
|
|
422
|
-
"dependencies": {
|
|
423
|
-
"glob": "^13.0.0",
|
|
424
|
-
"package-json-from-dist": "^1.0.1"
|
|
425
|
-
},
|
|
426
|
-
"bin": {
|
|
427
|
-
"rimraf": "dist/esm/bin.mjs"
|
|
428
|
-
},
|
|
429
|
-
"engines": {
|
|
430
|
-
"node": "20 || >=22"
|
|
431
|
-
},
|
|
432
|
-
"funding": {
|
|
433
|
-
"url": "https://github.com/sponsors/isaacs"
|
|
434
|
-
}
|
|
435
|
-
},
|
|
436
|
-
"node_modules/tunnel": {
|
|
437
|
-
"version": "0.0.6",
|
|
438
|
-
"resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.6.tgz",
|
|
439
|
-
"integrity": "sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==",
|
|
440
|
-
"license": "MIT",
|
|
441
|
-
"engines": {
|
|
442
|
-
"node": ">=0.6.11 <=0.7.0 || >=0.7.3"
|
|
443
|
-
}
|
|
444
32
|
}
|
|
445
33
|
}
|
|
446
34
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "jjpwrgem",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.4-alpha.7",
|
|
4
4
|
"description": "jjpwrgem json parser with really good error messages",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"command-line-utilities",
|
|
@@ -23,10 +23,7 @@
|
|
|
23
23
|
"postinstall": "node ./install.js"
|
|
24
24
|
},
|
|
25
25
|
"dependencies": {
|
|
26
|
-
"
|
|
27
|
-
"rimraf": "^6.0.1",
|
|
28
|
-
"detect-libc": "^2.1.2",
|
|
29
|
-
"axios-proxy-builder": "^0.1.2"
|
|
26
|
+
"detect-libc": "^2.1.2"
|
|
30
27
|
},
|
|
31
28
|
"devDependencies": {},
|
|
32
29
|
"engines": {
|
|
@@ -39,8 +36,6 @@
|
|
|
39
36
|
"major": 2,
|
|
40
37
|
"series": 35
|
|
41
38
|
},
|
|
42
|
-
"preferUnplugged": true,
|
|
43
|
-
"artifactDownloadUrl": "https://github.com/20jasper/jjpwrgem/releases/download/jjpwrgem-v0.5.2",
|
|
44
39
|
"supportedPlatforms": {
|
|
45
40
|
"aarch64-apple-darwin": {
|
|
46
41
|
"artifactName": "jjpwrgem-aarch64-apple-darwin.tar.xz",
|
|
@@ -91,5 +86,7 @@
|
|
|
91
86
|
},
|
|
92
87
|
"zipExt": ".zip"
|
|
93
88
|
}
|
|
94
|
-
}
|
|
89
|
+
},
|
|
90
|
+
"artifactDownloadUrl": "https://github.com/20jasper/jjpwrgem/releases/download/jjpwrgem-v0.5.4-alpha.7",
|
|
91
|
+
"preferUnplugged": true
|
|
95
92
|
}
|
package/run-jjp.js
CHANGED
package/npm-package.tar.gz
DELETED
|
Binary file
|