You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
BREAKING: Removed 7 experimental serialization formats (mrrc-experiments#19): Deleted protobuf, arrow, parquet, flatbuffers, messagepack, cbor, and avro support (~15,100 lines across 78 files). These added significant build complexity and dependency weight without proven adoption. Only ISO 2709 and BIBFRAME remain.
BIBFRAME promoted to core: BIBFRAME conversion is now always-compiled rather than feature-gated (format-bibframe), reflecting its importance as the LOC linked data format. Dependencies oxrdfio and oxrdf are now non-optional.
Python bindings simplified: Removed format-specific classes (ProtobufReader, ArrowWriter, etc.), mrrc/analytics.py, and format submodules. Simplified read()/write() helpers and __init__.py exports.
Clean repo history: Recreated repository as dchud/mrrc with a clean two-commit history, replacing dchud/mrrc-experiments. Build artifacts, large test fixtures, and accumulated cruft from the experimental phase are no longer in git history.
Test fixtures: Removed 25MB 100k_records.mrc from repo; gitignored to prevent re-commit. Regenerable via scripts/generate_benchmark_fixtures.py. Benchmark tests depending on 100k fixture removed.
Build simplification: Removed build.rs (was only for protobuf/flatbuffers code generation), src/generated/, proto/, and ~20 dependencies from Cargo.toml.
Local CI script: Updated .cargo/check.sh to use uv run for maturin and pytest steps instead of manual venv activation.
100k fixture scrub: Removed remaining references to 100k_records.mrc from scripts, benches, CI workflow names, and public docs (benchmarks, contributing, tests README). Fixture generation script no longer produces the 100k file.
Developer docs standardized on uv: Replaced manual venv activation and bare maturin develop/pytest commands with uv sync/uv run equivalents across installation, development setup, testing, and migration guides.
Release procedure updated: Refreshed for OIDC trusted publishing (replaces PYPI_API_TOKEN), added installation.md and quickstart-rust.md to version-bump checklist.
Rust dependency version in docs: Updated hardcoded mrrc = "0.6" to "0.7" in installation and quickstart guides.
Fixed
Flaky benchmark test: test_backend_comparison_1k now uses 5 iterations with median instead of 3 iterations with mean, making it resilient to single-iteration CI runner I/O spikes.
CI: Python release workflow: Added actions/setup-python before maturin-action to properly set Python version; python-version is not a valid input for maturin-action
CI: Python release OIDC publishing: Removed password: secret from pypa/gh-action-pypi-publish step; action auto-detects OIDC token from id-token: write permission
CI: Re-enabled ASAN memory-safety workflow: Upstream Rust issue (rust-lang/rust#144168) that caused zerocopy nightly incompatibility has been resolved
CI: ASAN workflow zerocopy_derive fix: Removed -Zavoid-dev-deps flag which caused zerocopy_derive proc-macro resolution failures on nightly
CI: CodSpeed benchmark integration: Re-linked repository with CodSpeed after clean repo creation
Beads: Gitignore rotated daemon logs: Added daemon-*.log.gz pattern to .beads/.gitignore and removed accidentally committed 2.7MB rotated log file