Skip to content

julie-extract v2.12.1

Choose a tag to compare

@github-actions github-actions released this 11 Jul 14:12

v2.12.1

This maintenance release supersedes v2.12.0 to close its source-control CI
finding. The v2.12.0 release workflow and published assets were correct, but
the separate Linux push CI run failed when Rust 1.97 introduced stricter Clippy
diagnostics for seven existing Option control-flow patterns.

CI Closeout

  • SQL structural-fact fallback now uses Option::filter while preserving the
    prior missing-name behavior.
  • C++, CSS, GDScript, Lua, and Razor early-return paths use the ? operator in
    the forms required by Rust 1.97 Clippy.
  • The rewrites do not change extracted symbols, facts, contracts, parser pins,
    or release-package contents.
  • v2.12.0 publication evidence, downloaded asset checks, and dogfood results
    are recorded in docs/release-evidence/2026-07-10-v2-12-0-release.md.

Release Process Hardening

  • New scripts/check-release-state.sh tripwire fails when the source tree
    declares a version whose tag is not on origin, when local main is ahead of
    origin/main, or when a local tag is missing from origin. This release was
    itself delayed by that exact gap: the v2.12.1 prep commit sat unpushed and
    untagged for a day after v2.12.0 shipped. docs/release.md now requires
    the tripwire at session start and as the first closeout check.

Contract Versions

  • Rust package versions change from 2.12.0 to 2.12.1 across
    julie-extract-artifact, julie-extract-cli, and julie-extractors.
  • SQLite schema stays 4.
  • extract_contract_version stays 3.
  • JSONL schema stays 3.
  • Test evidence stays 1.
  • Parser dependency pins are unchanged.

Release Preparation

The patch candidate is verified with:

cargo fmt --check
rustup run 1.97.0 cargo clippy --workspace --all-targets --all-features --no-deps -- -D warnings
cargo test -p xtask
cargo xtask test default
cargo xtask test contract
cargo deny --all-features check
node scripts/language-data-quality-report.mjs --strict
cargo xtask release preflight --version 2.12.1
git diff --check