Skip to content

[Tools] Run Prisma 4.8 on verified Node 24 - #11

Merged
kageiit merged 1 commit into
gitar-rustls-enginesfrom
replace-prisma-node-runner
Sep 18, 2026
Merged

kageiit merged 1 commit into
gitar-rustls-enginesfrom
replace-prisma-node-runner

Conversation

@kageiit

@kageiit kageiit commented Sep 18, 2026

Copy link
Copy Markdown

Prisma's command runner still embeds obsolete Node and OpenSSL 1.1.1. Replace the photongo executable with verified Node 24.21.0 and the pinned Prisma 4.8 JavaScript packages, preserving the Rust generator and existing rustls engines.

  • Verify compressed Node archives and every JavaScript file before publishing a cache directory. Validate cached content before execution and fail closed on corruption
  • Install into temporary directories with atomic publication so concurrent generators cannot execute incomplete downloads
  • Exercise generation against the previous release and run migrations against disposable PostgreSQL on the Linux release targets. Add offline cache reuse and invalid-command checks
  • Preserve engine overrides and child exit status. Add an absolute cache override for isolated release checks

Nine installer tests and affected-crate clippy passed locally. The actual macOS launcher generates both Gitar clients byte-for-byte against v0.6.11.7. The initial Node 24 prototype also passed generation and disposable database operations on both Linux architectures, with x86_64 emulated locally.

Decisions made while unattended
  • Kept Prisma 4.8 and the existing engine release, as the runtime swap preserves both generated clients without an API migration
  • Retained maintained system OpenSSL for Prisma's Linux ARM64 platform probe, as generation fails without it
  • Pinned the complete JavaScript packages from versioned UNPKG URLs, as the npm registry was unavailable during preparation. Every file has a bundled SHA-256 digest and no npm install scripts run
  • Targeted the compatibility branch, as the upstream main branch has a different client API and test matrix
  • Left CLI release publication and Gitar executable pins for adoption after review, as the unattended handoff authorizes PR work but not publishing a release

Related follow-up: https://github.com/gitarcode/gitar/issues/18150

@kageiit
kageiit merged commit 35aa6d0 into gitar-rustls-engines Sep 18, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant