mirror of
https://github.com/hanzoai/pack.git
synced 2026-09-30 23:43:13 +00:00
chore: update mise 2026.5.16 (#564)
* fix: update mise to 2026.5.11 * test: update snapshots * chore: update mise upgrade task to run locally Use the --local flag for the mise upgrade task to ensure consistency with local environment configurations during dependency updates. Generated-by: aiautocommit * chore: update go, mise, and bun packages * chore: update go, mise, and bun packages * chore: update mise to 2026.5.15 - Update build plan snapshots to use mise version 2026.5.15 across all test examples. Generated-by: aiautocommit * chore: update mise to 2026.5.15 Generated-by: aiautocommit * chore: ignore .antigravitycli directory Generated-by: aiautocommit * chore: update mise 2026.5.11 Generated-by: aiautocommit * chore: update better-sqlite3 dependency version Generated-by: aiautocommit * feat(test): add example for testing npm native dependencies with node-lts Generated-by: aiautocommit * fix: do not run rdoc when compiling ruby this fixes a locale issue which causes the build to fail * chore: update python version in examples to 3.13.3 no GH attestations for 3.13.1 Generated-by: aiautocommit * chore: bump better-sqlite3 in examples Generated-by: aiautocommit * chore(node): update pnpm path to include bin directory Generated-by: aiautocommit * chore: update railpack-builder and runtime to mise 2026.5.16 Generated-by: aiautocommit * chore: bump mise version to 2026.5.16 Generated-by: aiautocommit * chore: update mise to 2026.5.16 - Update mise CLI command structure for improved task execution. - Includes upstream bug fixes and stability improvements. Generated-by: aiautocommit * feat(node): update pnpm path layout for version 11+ - Adjust the pnpm binary path detection to account for changes in pnpm v11, which uses a /pnpm/bin directory layout. - Introduce version checking to ensure backward compatibility for older pnpm versions. - Add unit tests to verify path resolution for various version scenarios. Generated-by: aiautocommit * chore(node): update pnpm home paths and versioning logic Generated-by: aiautocommit * chore: update python-freethreaded example configuration Generated-by: aiautocommit * feat: add mise-builder-shell task - Adds a new task to facilitate debugging by spawning a shell inside the published builder container image. Generated-by: aiautocommit * test(python): fix fasthtml example I have no idea why this wasn't caught before... * chore: update mise configuration to 2026.5.16 - Set MISE_MINIMUM_RELEASE_AGE to match the builder default. - Correct the mise setting key from `install_before` to `minimum_release_age`. Generated-by: aiautocommit * chore: ensure uv is installed when using pipx.uvx in mise Generated-by: aiautocommit * chore: update mise 2026.5.16 - Sync environment variables from the Elixir provider to the mise installation step to ensure installation consistency. Generated-by: aiautocommit * feat(node): prioritize mise-managed package manager versions - Allow mise to override inferred package manager versions for pnpm, bun, and yarn. - Ensure consistent version resolution between Railpack and user-defined mise environment settings. - Update node provider logic to correctly identify and use package manager tool names from mise. Generated-by: aiautocommit * chore: update test configuration for pnpm 11 compatibility - Enable stderr allowance in tests to accommodate pnpm 11 command logging behavior. Generated-by: aiautocommit * chore: update example env configuration for mise compatibility - Replace python3-venv with dnsutils for build-time apt testing. - Add python to RAILPACK_PACKAGES to ensure pipx and other requirements function correctly within the mise environment. - Update build and start commands to verify the availability of the new packages and validate expected scoping. Generated-by: aiautocommit * chore: update test snapshots for mise 2026.5.16 - Update snapshot files to reflect changes in build plan generation, including the addition of `uv` to Python environments, corrected pathing for pnpm, and updated environment variables for Elixir configurations. - Reflect renaming of `install_before` to `minimum_release_age` in configuration settings. Generated-by: aiautocommit
This commit is contained in:
+10
-4
@@ -10,9 +10,12 @@
|
||||
"license": "ISC",
|
||||
"dependencies": {
|
||||
"bcrypt": "^6.0.0",
|
||||
"better-sqlite3": ">=11.10.0",
|
||||
"better-sqlite3": "^12.10.0",
|
||||
"canvas": "^3.2.1",
|
||||
"sharp": "^0.34.5"
|
||||
},
|
||||
"engines": {
|
||||
"node": "*"
|
||||
}
|
||||
},
|
||||
"node_modules/@emnapi/runtime": {
|
||||
@@ -525,14 +528,17 @@
|
||||
}
|
||||
},
|
||||
"node_modules/better-sqlite3": {
|
||||
"version": "11.10.0",
|
||||
"resolved": "https://registry.npmjs.org/better-sqlite3/-/better-sqlite3-11.10.0.tgz",
|
||||
"integrity": "sha512-EwhOpyXiOEL/lKzHz9AW1msWFNzGc/z+LzeB3/jnFJpxu+th2yqvzsSWas1v9jgs9+xiXJcD5A8CJxAG2TaghQ==",
|
||||
"version": "12.10.0",
|
||||
"resolved": "https://registry.npmjs.org/better-sqlite3/-/better-sqlite3-12.10.0.tgz",
|
||||
"integrity": "sha512-CyzaZRQKyHkB2ZInfTTl2nvT33EbDpjkLEbE8/Zck3Ll6O0qqvuGdrJ45HgtH+HykRg88ITY3AdreBGN70aBSQ==",
|
||||
"hasInstallScript": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"bindings": "^1.5.0",
|
||||
"prebuild-install": "^7.1.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": "20.x || 22.x || 23.x || 24.x || 25.x || 26.x"
|
||||
}
|
||||
},
|
||||
"node_modules/bindings": {
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"bcrypt": "^6.0.0",
|
||||
"better-sqlite3": ">=11.10.0",
|
||||
"better-sqlite3": ">=12.10.0",
|
||||
"canvas": "^3.2.1",
|
||||
"sharp": "^0.34.5"
|
||||
},
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"bcrypt": "^6.0.0",
|
||||
"better-sqlite3": "^11.8.1",
|
||||
"better-sqlite3": "^12.10.0",
|
||||
"canvas": "^3.2.1",
|
||||
"sharp": "^0.34.5"
|
||||
},
|
||||
|
||||
+6
-5
@@ -12,8 +12,8 @@ importers:
|
||||
specifier: ^6.0.0
|
||||
version: 6.0.0
|
||||
better-sqlite3:
|
||||
specifier: ^11.8.1
|
||||
version: 11.10.0
|
||||
specifier: ^12.10.0
|
||||
version: 12.10.0
|
||||
canvas:
|
||||
specifier: ^3.2.1
|
||||
version: 3.2.1
|
||||
@@ -186,8 +186,9 @@ packages:
|
||||
resolution: {integrity: sha512-cU8v/EGSrnH+HnxV2z0J7/blxH8gq7Xh2JFT6Aroax7UohdmiJJlxApMxtKfuI7z68NvvVcmR78k2LbT6efhRg==}
|
||||
engines: {node: '>= 18'}
|
||||
|
||||
better-sqlite3@11.10.0:
|
||||
resolution: {integrity: sha512-EwhOpyXiOEL/lKzHz9AW1msWFNzGc/z+LzeB3/jnFJpxu+th2yqvzsSWas1v9jgs9+xiXJcD5A8CJxAG2TaghQ==}
|
||||
better-sqlite3@12.10.0:
|
||||
resolution: {integrity: sha512-CyzaZRQKyHkB2ZInfTTl2nvT33EbDpjkLEbE8/Zck3Ll6O0qqvuGdrJ45HgtH+HykRg88ITY3AdreBGN70aBSQ==}
|
||||
engines: {node: 20.x || 22.x || 23.x || 24.x || 25.x || 26.x}
|
||||
|
||||
[email protected]:
|
||||
resolution: {integrity: sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==}
|
||||
@@ -444,7 +445,7 @@ snapshots:
|
||||
node-addon-api: 8.6.0
|
||||
node-gyp-build: 4.8.4
|
||||
|
||||
better-sqlite3@11.10.0:
|
||||
better-sqlite3@12.10.0:
|
||||
dependencies:
|
||||
bindings: 1.5.0
|
||||
prebuild-install: 7.1.3
|
||||
|
||||
@@ -4,6 +4,8 @@
|
||||
"Database test successful!",
|
||||
"Bcrypt compare result: true",
|
||||
"better-sqlite3 and bcrypt native modules working correctly with pnpm"
|
||||
]
|
||||
],
|
||||
// pnpm 11 writes the invoked script command to stderr during `pnpm run start`.
|
||||
"stderrAllowed": true
|
||||
}
|
||||
]
|
||||
|
||||
@@ -0,0 +1,33 @@
|
||||
const Database = require('better-sqlite3');
|
||||
const bcrypt = require('bcrypt');
|
||||
|
||||
console.log('Node version:', process.version);
|
||||
console.log('Testing better-sqlite3 and bcrypt (native modules)...');
|
||||
|
||||
// Create an in-memory database
|
||||
const db = new Database(':memory:');
|
||||
|
||||
// Create a simple table
|
||||
db.exec('CREATE TABLE test (id INTEGER PRIMARY KEY, name TEXT)');
|
||||
|
||||
// Insert some data
|
||||
const insert = db.prepare('INSERT INTO test (name) VALUES (?)');
|
||||
insert.run('npm');
|
||||
insert.run('node-gyp');
|
||||
|
||||
// Query the data
|
||||
const rows = db.prepare('SELECT * FROM test').all();
|
||||
|
||||
console.log('Database test successful!');
|
||||
console.log('Rows:', rows);
|
||||
|
||||
db.close();
|
||||
|
||||
console.log('Testing bcrypt (native module)...');
|
||||
const saltRounds = 10;
|
||||
const hash = bcrypt.hashSync('npm-native-deps', saltRounds);
|
||||
const match = bcrypt.compareSync('npm-native-deps', hash);
|
||||
console.log('Bcrypt hash generated:', hash.substring(0, 20) + '...');
|
||||
console.log('Bcrypt compare result:', match);
|
||||
|
||||
console.log('✓ better-sqlite3 and bcrypt native modules working correctly with npm');
|
||||
@@ -0,0 +1,2 @@
|
||||
[tools]
|
||||
node = "lts"
|
||||
+1053
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,19 @@
|
||||
{
|
||||
"name": "node-latest-npm-native-deps",
|
||||
"version": "1.0.0",
|
||||
"description": "Test npm with native dependencies (better-sqlite3)",
|
||||
"main": "index.js",
|
||||
"packageManager": "[email protected]",
|
||||
"scripts": {
|
||||
"start": "node index.js"
|
||||
},
|
||||
"dependencies": {
|
||||
"bcrypt": "^6.0.0",
|
||||
"better-sqlite3": ">=12.10.0",
|
||||
"canvas": "^3.2.1",
|
||||
"sharp": "^0.34.5"
|
||||
},
|
||||
"keywords": [],
|
||||
"author": "",
|
||||
"license": "ISC"
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
[
|
||||
{
|
||||
"expectedOutput": [
|
||||
"Database test successful!",
|
||||
"Bcrypt compare result: true",
|
||||
"better-sqlite3 and bcrypt native modules working correctly with npm"
|
||||
],
|
||||
// TEMPORARY: Remove this once NPM_CONFIG_PRODUCTION is removed from node.go:241
|
||||
// Currently causes: npm warn config production Use `--omit=dev` instead.
|
||||
"stderrAllowed": true
|
||||
}
|
||||
]
|
||||
@@ -15,6 +15,10 @@ css = Style('''
|
||||
.alive { background-color: green; }
|
||||
.dead { background-color: white; }
|
||||
''')
|
||||
picolink = Link(
|
||||
rel="stylesheet",
|
||||
href="https://cdn.jsdelivr.net/npm/@picocss/pico@2/css/pico.min.css",
|
||||
)
|
||||
gridlink = Link(rel="stylesheet", href="https://cdnjs.cloudflare.com/ajax/libs/flexboxgrid/6.3.1/flexboxgrid.min.css", type="text/css")
|
||||
htmx_ws = Script(src="https://unpkg.com/[email protected]/ws.js")
|
||||
app = FastHTML(hdrs=(picolink, gridlink, css, htmx_ws))
|
||||
@@ -78,7 +82,25 @@ async def background_task():
|
||||
await update_players()
|
||||
await asyncio.sleep(1.0)
|
||||
|
||||
background_task_coroutine = asyncio.create_task(background_task())
|
||||
background_task_handle = None
|
||||
|
||||
@app.on_event('startup')
|
||||
async def startup():
|
||||
global background_task_handle
|
||||
if background_task_handle is None or background_task_handle.done():
|
||||
background_task_handle = asyncio.create_task(background_task())
|
||||
|
||||
@app.on_event('shutdown')
|
||||
async def shutdown():
|
||||
global background_task_handle
|
||||
if background_task_handle is None:
|
||||
return
|
||||
background_task_handle.cancel()
|
||||
try:
|
||||
await background_task_handle
|
||||
except asyncio.CancelledError:
|
||||
pass
|
||||
background_task_handle = None
|
||||
|
||||
@rt('/update')
|
||||
async def put(x: int, y: int):
|
||||
|
||||
@@ -10,7 +10,9 @@
|
||||
"expectedOutput": ["Free-threaded build: True", "x86_64"],
|
||||
"envs": {
|
||||
"MISE_PYTHON_COMPILE": "0",
|
||||
"MISE_PYTHON_PRECOMPILED_FLAVOR": "freethreaded+pgo-full"
|
||||
// not all variants are available across all platforms, you can check variants using this script
|
||||
// gh api repos/astral-sh/python-build-standalone/releases/latest --jq '.assets[] | select(.name=="SHA256SUMS") | .browser_download_url' | xargs curl -sL | fzf
|
||||
"MISE_PYTHON_PRECOMPILED_FLAVOR": "freethreaded"
|
||||
}
|
||||
}
|
||||
]
|
||||
|
||||
@@ -1 +1 @@
|
||||
3.13.1
|
||||
3.13.3
|
||||
|
||||
@@ -9,11 +9,15 @@
|
||||
],
|
||||
"envs": {
|
||||
"RAILPACK_DEPLOY_APT_PACKAGES": "curl",
|
||||
"RAILPACK_BUILD_APT_PACKAGES": "python3-venv",
|
||||
"RAILPACK_PACKAGES": "pipx pipx:httpie jq",
|
||||
// this package is strictly here to check if we can install an apt package available on build only
|
||||
"RAILPACK_BUILD_APT_PACKAGES": "dnsutils",
|
||||
// test packages requiring a different runtime
|
||||
// py is required for pipx to run properly, system python doesn't work well with mise and various build requirements
|
||||
"RAILPACK_PACKAGES": "python pipx pipx:httpie jq",
|
||||
"RAILPACK_INSTALL_CMD": "mkdir -p artifacts && echo \"Custom Install\" > artifacts/install.txt",
|
||||
"RAILPACK_BUILD_CMD": "which jq && echo \"Custom Build\" > artifacts/build.txt",
|
||||
"RAILPACK_START_CMD": "cat artifacts/install.txt && cat artifacts/build.txt && echo \"Custom Start\" && which curl && which http && which jq"
|
||||
// railpack packages are available in build and install
|
||||
"RAILPACK_BUILD_CMD": "which jq && dig -v && echo \"Custom Build\" > artifacts/build.txt",
|
||||
"RAILPACK_START_CMD": "cat artifacts/install.txt && ! command -v dig >/dev/null && cat artifacts/build.txt && echo \"Custom Start\" && which curl && which http && which jq"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user