dircue 0.6.1
Dircue 0.6.1 improves bounded file reads and strengthens aggregation checks. Existing commands, output schemas, read limits and exit-status contracts are preserved.
Faster bounded reads
The scanner uses capped file-size hints to reduce allocation when reading ordinary files and Git objects. Hints affect allocation only: read limits still determine how much content is inspected, and files that grow or shrink retain the existing read behavior.
The final eight-input comparison against the 0.6.0 runtime found:
| Workload | Median runtime change | Median peak-memory change |
|---|---|---|
| XML directory, aggregate analysis | 33.90% faster | 7.58% higher |
| XML directory, language analysis | 12.29% faster | 4.96% lower |
| Roslyn directory, aggregate analysis | 3.27% faster | 5.88% lower |
| Spring Framework Git, aggregate analysis | 1.46% faster | 4.51% lower |
XML aggregate analysis took 64.65 → 42.73 ms, with median process peak RAM 67.53 → 72.65 MiB. Measurements used warm caches on one macOS ARM64 host. The XML fixture contains 2 GiB, but profiling reads bounded prefixes; this is not full-content throughput. Small timing differences on source repositories may be noise, and Roslyn's Git scan had a small memory increase.
Language and aggregate output matched byte-for-byte on every input. All samples, source identities and tradeoffs are retained.
Stronger aggregation checks
Independent Go and Rust property tests compare hotspot aggregation against full-population references. Mutation tests detected all 17 deliberately introduced defects, with passing baseline and restored-code controls.
Optional Bend reference models have 35 checked laws for histogram aggregation and top-K selection, supplemented by executable comparisons and negative controls. These are model proofs and production tests, not proof of the whole application. Bend is not a runtime dependency and does not need to be installed for ordinary CI.
Reader validation includes changing files, short reads and 5,040 compressed Git-stream comparisons. The full Go race suite and vet passed. All 278 retained CLI compatibility cases matched stdout, stderr and exit status; Linguist conformance recorded 404 matches, 16 documented extensions and zero failures.
Resource choices and documentation
The resource guide explains existing concurrency controls and GOMEMLIMIT, a soft Go memory target. It is not a hard process-memory ceiling, and no new memory-limit flag or global garbage-collection setting is introduced. The design principles distinguish analysis scope from execution preferences and require visible coverage limits.
Downloads
Choose the core archive for Linux or macOS on AMD64/ARM64, or Windows AMD64. Structural analysis additionally requires its matching structural-worker archive.
Attached wheels contain the core binary for installation with Python tooling; the worker remains separate. Checksums, provenance and native verification receipts accompany the assets. PyPI publication remains deferred.