Conversation
Preserve compile-time parser features and add pinned native loading, atomic installation, metadata-driven packaging, and protected release validation. AI-assisted implementation and validation with Codex.
Verify signed macOS x64 loading under Rosetta and Linux x64 installation without development tools. Grant the publication guard read access to environment protection metadata and fix an error-message spelling. AI-assisted implementation and validation with Codex.
Generate optional Rust configurations from languages/extra.json and remove their arms from the built-in configuration. Build highlight assets from locked upstream sources, verify them before use, and include shared query licenses. Preserve compiled language features and existing Julia/Verilog queries. Validated default/all-language tests, signed macOS installation parity, and clean Linux Docker installation with corrupt-query repair. AI-assisted implementation and validation with Codex.
AI-assisted implementation and validation with Codex.
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Move Fortran, F#, Verilog, OCaml (implementation and interface), Julia, Haskell, VHDL, Salesforce Apex, and QML into one optional native pack. LaTeX and general SQL remain bundled. diffr recognizes every language and prefers a compiled parser, then a verified installed parser, then a text diff with a structured fallback reason.
languages/extra.jsonis the single optional-language registry: it generates Rust parser configuration and drives packaging, availability reporting, and test discovery. Optional entries leave the built-intree_sitter_parser.rsconfiguration. The builder reads grammar sources and highlight queries from locked Cargo dependencies; upstream highlight files are not copied into the repository. Query files ship with the pack and are hash-verified before use. Existing Julia/Verilog query customizations and compile-timelang-*/all-languagessupport remain intact.Adds
diffr languages list/install extra, offline installation, atomic repair, lazy loading, and protected release validation. Runtime downloads use exact catalog pins. The migration steps are documented inlanguages/ADDING.md.Validation for the current registry/query layout:
The previous pack also passed signed x64/Rosetta tests and clean Linux x64 Docker installation, plus all four native CI targets. Four-target CI will rerun for this query relocation. Measurements and evidence boundaries are recorded in
languages/VALIDATION.md.Draft release gate: the embedded catalog remains empty until all four final archives are published and downloaded back with matching hashes. Public npm artifacts are not yet available. Publication requires the protected release environment and signing/npm credentials; this PR does not publish packages or disable macOS library validation.
AI-assisted implementation and validation with Codex.
License packaging: upstream license text is no longer copied into the repository.
extra.jsonpins license paths and hashes; packaging collects Cargo source licenses or fetches them at Cargo's exact upstream VCS revision. All published archives retain licenses. Nine packaging tests pass, and offline regeneration produces an identical macOS ARM64 archive. This packaging-only follow-up is AI-assisted.