getneo 0.0.0-stage → 0.1.2

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/neo.mjs ADDED
@@ -0,0 +1,28 @@
1
+ #!/usr/bin/env node
2
+ // The `neo` command in the npm package. It checks the Node version before it loads anything else,
3
+ // so an old Node gets a clear message and not a syntax or import error.
4
+ // Simple JavaScript on purpose (no optional chaining, no top-level await): it must parse on old Node versions.
5
+ const MIN = '22.13.0';
6
+
7
+ const parts = (v) => v.split('.').map((n) => parseInt(n, 10) || 0);
8
+
9
+ const older = (have, min) => {
10
+ for (let i = 0; i < 3; i++) {
11
+ if (have[i] !== min[i]) return have[i] < min[i];
12
+ }
13
+ return false;
14
+ };
15
+
16
+ if (older(parts(process.versions.node), parts(MIN))) {
17
+ process.stderr.write(
18
+ `neo needs Node.js ${MIN} or newer. This is Node.js ${process.versions.node} (${process.execPath}).\n` +
19
+ 'Install Node 22 or 24 (for example `nvm install 24`, `fnm install 24` or https://nodejs.org), then run neo again.\n',
20
+ );
21
+ process.exit(1);
22
+ }
23
+
24
+ import('./cli.mjs').catch((error) => {
25
+ // biome-ignore lint/complexity/useOptionalChain: this file must parse on old Node versions
26
+ process.stderr.write(`neo: ${error && error.stack ? error.stack : String(error)}\n`);
27
+ process.exit(1);
28
+ });
package/package.json CHANGED
@@ -1,6 +1,31 @@
1
1
  {
2
- "name": "getneo",
3
- "version": "0.0.0-stage",
4
- "stub": true,
5
- "description": "Temporary package placeholder for staged publishing"
6
- }
2
+ "name": "getneo",
3
+ "version": "0.1.2",
4
+ "description": "Neo laptop tool: the neo command, local proxy, capture process and uploader.",
5
+ "type": "module",
6
+ "bin": {
7
+ "neo": "neo.mjs"
8
+ },
9
+ "files": [
10
+ "neo.mjs",
11
+ "cli.mjs",
12
+ "capture-child.mjs",
13
+ "README.md",
14
+ "THIRD_PARTY_NOTICES.md"
15
+ ],
16
+ "engines": {
17
+ "node": ">=22.13.0"
18
+ },
19
+ "os": [
20
+ "linux",
21
+ "darwin"
22
+ ],
23
+ "dependencies": {
24
+ "better-sqlite3": "^13.0.3"
25
+ },
26
+ "publishConfig": {
27
+ "registry": "https://registry.npmjs.org/",
28
+ "access": "public"
29
+ },
30
+ "license": "UNLICENSED"
31
+ }