Skip to content

v0.5.1

Choose a tag to compare

@acgetchell acgetchell released this 22 Oct 17:10
· 15 commits to main since this release
Immutable release. Only release title and notes can be modified.
80a67d5

Merged Pull Requests

  • Reuse signed release evidence and complete shared tooling adoption #300
  • Strengthen correctness checks and repository scan coverage #294
  • Scale exact determinants by row #292
  • Bump astral-sh/setup-uv #291
  • Streamline interval determinant subset traversal #290
  • Repair release recipe approval and notes output #286

Changed

  • Adopt shared README table formatting 92ed845

    • Use published research-repo-tools v0.2.0 table styles for dimensions,
      confidence bounds, and explicitly directed speedup ratios.
    • Retire legacy CSV conversion and pre-Just phase replay while preserving
      historical reports, assets, and evidence.
    • Retain la-stack integration coverage and consolidate package identity
      checks, leaving shared implementation matrices upstream.
  • Retire historical benchmark execution beddc9a

    • Require v0.5.0 or newer on both sides of new benchmark measurements,
      rejecting unsupported releases before fetching or creating worktrees.
    • Remove legacy API and layout adapters, baseline-row exemptions, and
      the performance-github-assets recipe and assets subcommand.
    • Preserve scientific validation, archived artifacts, and offline replay
      of retained runs that use the supported benchmark contract.
    • Generalize the release guide for future releases and require uv 0.13.3.

    Refs acgetchell/research-repo-tools#115

  • Retire local performance scripts 580f5d3

    • Adopt published research-repo-tools v0.2.2 and its minimum-release
      acquisition contract through static measurement and publication declarations.
    • Replace local Python adapters with direct installed CLI recipes, preserve
      independent scientific inventories, and move consumer tests into tooling.
    • Require explicit source identities and input selection for publication;
      preserve historical evidence as frozen records without regeneration.
    • Document intentional tooling CLI changes, captured working-tree semantics,
      fixed measurement settings, and immutable README/archive metadata links.
    • Validate with just check and just ci: 108 Python tests, 1031 Rust tests,
      doctests, static analysis, formatting, spelling, and documentation checks.

Dependencies

Documentation

  • Document sparse angle benchmark replay f616e55

    • Add exact commands to regenerate all three retained CSV summaries.
    • Specify sample selection, median estimates, nanosecond units, and byte comparisons.
    • Validate all three summaries byte for byte; just check and just ci passed.
  • Align contributor guidance with shared tooling 2e7eec0

    Correct the working-tree snapshot and declaration ownership descriptions after retiring local adapters. Validate with markdown-fix, markdown-ci, and
    doc-check.

Fixed

  • Repair release recipe approval and notes output #286
    b2ad940

    • Pass explicit approval when publishing a reviewed release draft.
    • Send uv prerequisite diagnostics to stderr so generated notes stay clean.
    • Update libc to 0.2.191 and the managed rumdl pin to 0.3.0 after v0.5.0.
    • Sort the README design goals lexicographically.
  • Strengthen correctness checks and repository scan coverage #294
    f8f2153

fix: strengthen correctness checks and repository scan coverage

  • Include ordinary Rust and Python tests in production Semgrep scans while
    keeping deliberate rule fixtures in their dedicated checks.
  • Reject unexpected errors in mixed-exponent determinant properties and
    verify stale release targets cannot upload artifacts.
  • Keep scanner environments out of benchmark fixtures and align test code
    with the expanded static-analysis coverage.
  • Correct exact row-scaling documentation, benchmark capacity estimates,
    coverage tool ownership, and the released v0.5.0 roadmap.

fix: preserve scan exclusions and match upload hosts precisely

  • Preserve Semgrep default exclusions while including ordinary Rust and
    Python tests in local and SARIF scan selections.

  • Parse release-fixture URLs before matching GitHub's upload hostname.

  • Require uv 0.13.2 and refresh the cc and find-msvc-tools lockfile entries.

  • Align benchmark guidance with current measurement policy 5635435

    • Make the v0.5.0 measurement minimum unconditional and remove the obsolete
      adoption deadline.
    • Document direct norm API calls and complete rational-input comparisons,
      while preserving the distinction for frozen historical reports.
    • Remove redundant norm scopes from the benchmark and comparison tests.
    • Validate with Markdown and spelling checks, default and exact-feature
      documentation builds, Rust formatting, and git diff --check.
    • Record that full local CI stopped at a Taplo macOS configuration panic;
      subsequent CI stages were not reached.

    Addresses review feedback on #295.

  • Prepare shared updates for the Semgrep environment 06aa6cb

    • Refresh certifi and the development-tool pins.
    • Declare the isolated Semgrep project and route Python updates through the shared workflow.
    • Require the forthcoming research-repo-tools v0.2.3 pin before merging this adoption.
  • Update Semgrep and preserve its isolated dependencies 1c0bd85

    Pin Semgrep 1.182.0 in Python 3.14 while retaining the patched MCP override. Refresh its lock and current guidance, protect the override in consumer tests,
    disable network version checks in the version probe, and align updater integration expectations with the shared orchestration. Focused updater and Semgrep
    tests, Ruff and ty pass; published shared-package adoption remains pending.

  • Adopt published shared updater and audit Python locks fae5c9e

    • Pin research-repo-tools 0.2.3 from PyPI and verify exact published hashes.
    • Refresh root and isolated Semgrep locks through the released updater while
      retaining Python selectors, exact tool pins, MCP override and certifi fix.
    • Align release-tool installations and docs with the actual published package.
    • Add read-only hosted OSV coverage for both Python locks while preserving the
      native Cargo audit and its narrowly scoped SARIF permission.
    • Validate 107 Python integration tests, scanner production and fixtures,
      workflow/config lint, Markdown/spelling and default/exact Rustdocs.
    • Record local OSV API HTTP 403 as an incomplete audit, not a security pass.

Maintenance

  • Include dprint update and clarify exact solve provenance bf39cf2

    • Include the staged dprint 0.64.0 tool-pin update.
    • Attribute Bareiss elimination separately from the shared-denominator derivation.
    • Correct the retained study's description of the PR scope.
    • Validate with just ci and byte-for-byte benchmark summary replay.
  • Reuse signed release evidence and complete shared tooling adoption #300
    eb6f071

ci: reuse signed release evidence and complete shared tooling adoption

  • Validate default/exact Cargo packages in CI and sign successful main-push
    native and packaging results for reuse during release publication.
  • Pin evidence through deployment approval and retain the existing Cargo
    upload, registry checks, scientific release assets, and approval gates.
  • Adopt research-repo-tools v0.2.3 file discovery, Python checks, Cargo
    examples, coverage summaries, tool cleanup, and Actions allowlist helpers.
  • Expand composite-action policy coverage, strengthen performance and
    release regressions, clarify numerical documentation, and simplify an
    equivalent exact-conversion branch.
  • Preserve the staged cargo-edit 0.13.14 and bracex 3.2 updates.

Performance

  • Skip shared-zero axes in vector angles 1392e96

    • Skip shared-zero contributions after validation while preserving scaling,
      compensated reductions, subnormal angles, and zero allocations.
    • Align the MSRV and contributor toolchain on Rust 1.99.1.
    • Retain sparse and dense benchmark evidence and document the measured tradeoffs.
    • Add a runnable vector-angle example and link every README example from
      both GitHub and rustdoc.
    • Validate the kernel and toolchain with just ci; verify subsequent docs
      and examples with focused checks, doctests, and example execution.
  • Reduce rational normalization in exact solves c57258c

    • Accumulate general exact back-substitution over a minimal common
      denominator, reducing once per row and canonicalizing final outputs.
    • Preserve exact solutions, singularity metadata, and conversion semantics.
    • Document the invariant and retain reproducible performance evidence,
      including wide-input allocation costs and diagonal controls.
  • Streamline interval determinant subset traversal #290
    6f82359

    • Visit active subset columns directly while preserving interval arithmetic
      order, cofactor signs, and first-error reporting.
    • Extend exact determinant coverage across independent row scales and zero rows.
    • Clarify exact-solve scaling and correct the archived benchmark replay command.
  • Scale exact determinants by row #292
    d8bbb58

    • Reduce integer growth for mixed-exponent and near-singular inputs by
      lifting each row independently and restoring the summed binary scale.
    • Preserve exact values, sign filtering, conversion contracts, and typed
      scale-overflow errors.
    • Add exponent-spread diagnostics and archive reproducible comparisons,
      including small-control costs and conditional workload tradeoffs.