Compare commits

..

3 Commits

Author SHA1 Message Date
Asher
4af6408e39 Preserve permissions with rsync
This is mostly just because if the opts are empty, it seems to error in
macOS for some reason...(rsync_opts[@]: unbound variable).
2026-04-06 12:03:45 -08:00
Asher
1fa5d5084b Omit argon2 prebuilds
Since we build from source, these are dead weight.

It also ensures we did in fact build from source.
2026-04-06 11:56:28 -08:00
Asher
d74b002969 Build native modules from source
Another thing I managed to miss when refactoring CI.
2026-04-06 11:56:23 -08:00
4 changed files with 21 additions and 7 deletions

View File

@@ -45,7 +45,11 @@ jobs:
# Cross-compile target.
VSCODE_ARCH: ${{ matrix.vscode_arch }}
npm_config_arch: ${{ matrix.npm_arch }}
# Ensure native modules are built from source to avoid prebuilds and use
# the correct version of glibc.
npm_config_build_from_source: true
# Gulp target name.
# TODO: Pull from VSCODE_ARCH instead.
VSCODE_TARGET: ${{ format('linux-{0}', matrix.vscode_arch) }}
steps:
@@ -125,6 +129,8 @@ jobs:
VSCODE_TARGET: ${{ matrix.vscode_target }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
TAG: ${{ inputs.version || github.ref_name }}
# Ensure native modules are built from source to avoid prebuilds.
npm_config_build_from_source: true
steps:
# The version of node-gyp we use depends on distutils but it was removed

View File

@@ -79,7 +79,15 @@ EOF
mv npm-shrinkwrap.json "$RELEASE_PATH"
if [ "$KEEP_MODULES" = 1 ]; then
rsync node_modules/ "$RELEASE_PATH/node_modules"
local rsync_opts=(-a)
if [[ ${DEBUG-} = 1 ]]; then
rsync_opts+=(-vh)
fi
# If we build from source, exclude the prebuilds.
if [[ ${npm_config_build_from_source-} = true ]]; then
rsync_opts+=(--exclude /argon2/prebuilds)
fi
rsync "${rsync_opts[@]}" node_modules/ "$RELEASE_PATH/node_modules"
# Remove dev dependencies.
pushd "$RELEASE_PATH"
npm prune --production
@@ -92,7 +100,7 @@ EOF
bundle_vscode() {
mkdir -p "$VSCODE_OUT_PATH"
local rsync_opts=()
local rsync_opts=(-a)
if [[ ${DEBUG-} = 1 ]]; then
rsync_opts+=(-vh)
fi

8
package-lock.json generated
View File

@@ -58,7 +58,7 @@
"eslint-plugin-import": "^2.28.1",
"eslint-plugin-prettier": "^5.0.0",
"globals": "^16.1.0",
"prettier": "3.8.1",
"prettier": "3.6.2",
"prettier-plugin-sh": "^0.18.0",
"ts-node": "^10.9.1",
"typescript": "^5.6.2",
@@ -5100,9 +5100,9 @@
}
},
"node_modules/prettier": {
"version": "3.8.1",
"resolved": "https://registry.npmjs.org/prettier/-/prettier-3.8.1.tgz",
"integrity": "sha512-UOnG6LftzbdaHZcKoPFtOcCKztrQ57WkHDeRD9t/PTQtmT0NHSeWWepj6pS0z/N7+08BHFDQVUrfmfMRcZwbMg==",
"version": "3.6.2",
"resolved": "https://registry.npmjs.org/prettier/-/prettier-3.6.2.tgz",
"integrity": "sha512-I7AIg5boAr5R0FFtJ6rCfD+LFsWHp81dolrFD8S79U9tb8Az2nGrJncnMSnys+bpQJfRUzqs9hnA81OAA3hCuQ==",
"dev": true,
"license": "MIT",
"bin": {

View File

@@ -60,7 +60,7 @@
"eslint-plugin-import": "^2.28.1",
"eslint-plugin-prettier": "^5.0.0",
"globals": "^16.1.0",
"prettier": "3.8.1",
"prettier": "3.6.2",
"prettier-plugin-sh": "^0.18.0",
"ts-node": "^10.9.1",
"typescript": "^5.6.2",