Skip to content

Commit 253665a

Browse files
committed
refactor(bootstrap): move node-version config to JSON at package root
Move from .config/node-version.mjs to node-version.json for simpler, more flexible configuration. - Create bootstrap/node-version.json with version and versionSemver fields - Update esbuild configs to use JSON import assertions - Update smol and SEA builders to import from JSON - Remove old .config/node-version.mjs file - Update package.json exports to include node-version.json
1 parent f7dadab commit 253665a

7 files changed

Lines changed: 23 additions & 25 deletions

File tree

packages/bootstrap/.config/esbuild.npm.config.mjs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,12 @@
33
* Standard Node.js modules (node:* requires).
44
*/
55

6-
import { build } from 'esbuild'
76
import path from 'node:path'
87
import { fileURLToPath } from 'node:url'
98

10-
import { NODE_VERSION_SEMVER } from './node-version.mjs'
9+
import { build } from 'esbuild'
10+
11+
import nodeVersionConfig from '../node-version.json' with { type: 'json' }
1112

1213
const __dirname = path.dirname(fileURLToPath(import.meta.url))
1314
const rootPath = path.resolve(__dirname, '..')
@@ -18,7 +19,7 @@ const config = {
1819
},
1920
bundle: true,
2021
define: {
21-
__MIN_NODE_VERSION__: JSON.stringify(NODE_VERSION_SEMVER),
22+
__MIN_NODE_VERSION__: JSON.stringify(nodeVersionConfig.versionSemver),
2223
},
2324
entryPoints: [path.join(rootPath, 'src', 'bootstrap-npm.mts')],
2425
external: [],

packages/bootstrap/.config/esbuild.smol.config.mjs

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,13 @@
33
* Transforms node:* requires to internal/* for Node.js internal bootstrap context.
44
*/
55

6-
import { build } from 'esbuild'
76
import path from 'node:path'
87
import { fileURLToPath } from 'node:url'
98

10-
import { NODE_VERSION_SEMVER } from './node-version.mjs'
9+
import { build } from 'esbuild'
10+
11+
import nodeVersionConfig from '../node-version.json' with { type: 'json' }
12+
1113
import { smolTransformPlugin } from './esbuild-plugin-smol-transform.mjs'
1214

1315
const __dirname = path.dirname(fileURLToPath(import.meta.url))
@@ -19,7 +21,7 @@ const config = {
1921
},
2022
bundle: true,
2123
define: {
22-
__MIN_NODE_VERSION__: JSON.stringify(NODE_VERSION_SEMVER),
24+
__MIN_NODE_VERSION__: JSON.stringify(nodeVersionConfig.versionSemver),
2325
},
2426
entryPoints: [path.join(rootPath, 'src', 'bootstrap-smol.mts')],
2527
external: [],

packages/bootstrap/.config/node-version.mjs

Lines changed: 0 additions & 15 deletions
This file was deleted.
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{
2+
"$schema": "http://json-schema.org/draft-07/schema#",
3+
"description": "Node.js version configuration for Socket CLI. This version is used by bootstrap, smol builder, and SEA builder.",
4+
"version": "v24.10.0",
5+
"versionSemver": "24.10.0"
6+
}

packages/bootstrap/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,9 @@
55
"private": true,
66
"type": "module",
77
"exports": {
8-
"./.config/node-version.mjs": "./.config/node-version.mjs",
98
"./bootstrap-npm.js": "./dist/bootstrap-npm.js",
10-
"./bootstrap-smol.js": "./dist/bootstrap-smol.js"
9+
"./bootstrap-smol.js": "./dist/bootstrap-smol.js",
10+
"./node-version.json": "./node-version.json"
1111
},
1212
"scripts": {
1313
"build": "node scripts/build.mjs",

packages/node-sea-builder/scripts/constants.mjs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@
33
* Environment variables can override defaults.
44
*/
55

6-
import { NODE_VERSION } from '@socketsecurity/bootstrap/.config/node-version.mjs'
6+
import nodeVersionConfig from '@socketsecurity/bootstrap/node-version.json' with { type: 'json' }
7+
8+
const { version: NODE_VERSION } = nodeVersionConfig
79

810
// Environment variables (can override defaults).
911
const ENV = {

packages/node-smol-builder/scripts/build.mjs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,9 @@ import { whichBinSync } from '@socketsecurity/lib/bin'
6666
import { WIN32 } from '@socketsecurity/lib/constants/platform'
6767
import { logger } from '@socketsecurity/lib/logger'
6868
import { spawn } from '@socketsecurity/lib/spawn'
69-
import { NODE_VERSION } from '@socketsecurity/bootstrap/.config/node-version.mjs'
69+
import nodeVersionConfig from '@socketsecurity/bootstrap/node-version.json' with { type: 'json' }
70+
71+
const { version: NODE_VERSION } = nodeVersionConfig
7072
import colors from 'yoctocolors-cjs'
7173

7274
import {

0 commit comments

Comments
 (0)