Tags

Tags give the ability to mark specific points in history as being important
  • v0.3.3

    8e9ed788 · chore: 0.3.3 ·
    v0.3.3
    
    Q2(beam) and W(beam, target_mass) in the --where engine, validated on run 22083;
    dump --format json; and the shared f32 digit contract pinned.
  • v0.3.2

    1c8cb7d7 · chore: 0.3.2 ·
    v0.3.2
    
    scan projects several banks at once; dump --format table renders one table per
    bank per event. Plus the ifarm download fix (curl -o, not -O) and the CI repair.
  • v0.3.1

    b2664987 · chore: 0.3.1 ·
    Release: hipoq 0.3.1
    v0.3.1
  • v0.2.2

    a5a1ccf6 · chore: 0.2.2 ·
    Release: hipo-tools 0.2.2
    v0.2.2
  • v0.2.1

    6c10ab4a · chore: 0.2.1 ·
    Release: hipo-tools 0.2.1
    hipo-tools 0.2.1
    
    A dependency-only release: oxihipo 0.5.3 -> 0.6.0.
    
    No behaviour of this CLI changes — the output of sixteen commands over a
    326,074-event CLAS12 file is byte-identical to 0.2.0 on stdout — but the library
    underneath fixes four things this tool sits directly on:
    
    - a bank at or past 2^24 bytes was written **truncated with no error**. The HIPO
      structure length word is 24-bit and the writer put a full u32 in it, so
      5,000,000 Int rows came back as 805,696 while `finish()` returned Ok. Every
      command here that writes a file — skim, sample, split, merge, convert, doctor
      — went through that path;
    - iterating onto a zero-event record panicked rather than skipping it;
    - `read_columns` could return buffers contradicting their own offsets on a
      corrupted per-column record, so stats/hist/banks could have read the wrong
      values instead of failing;
    - `Bank::read` was documented "Infallible" and aborted in release builds when
      given a placeholder handle.
    
    oxihipo 0.6.0 makes `BankBuilder::finish` and `EventBuilder::add` fallible,
    which is breaking for that crate but not for this one, which uses neither.
    Checked rather than assumed, along with the value-level fidelity, `--where`
    oracle and 335-invocation crash sweeps, all still passing. 204 tests.
  • v0.2.0

    aba2744e · chore: 0.2.0 ·
    Release: hipo-tools 0.2.0
    hipo-tools 0.2.0
    
    A correctness release. Everything here fixes something that was silently wrong
    — a command that answered a question nobody asked, or crashed — rather than
    something that failed visibly.
    
    Breaking (why this is a minor bump, not a patch):
    
    - `--topology` is refused by the twenty commands that never applied it.
      `quality --topology "e-"` used to exit 0 having measured every event in the
      file; it now exits non-zero and says to `skim` first.
    - `sample --events` selects a different set of events: it keyed
      `--every`/`--fraction` on the position inside the window, so `--seed` meant a
      different sample per window. Unwindowed `sample` is unaffected, checked
      against the 0.1.0 binary across five modes.
    
    Fixed:
    
    - `records` panicked on a non-ASCII file name over 28 bytes whose trim point
      split a character — four of seven realistic names tried against 0.1.0 aborted.
    - `count --where "-5 < chi2pid < 5"` was rejected by the argument parser. It was
      the README's own example, on the most-used command.
    - `tail` ignored every event filter: `tail --tag 1` listed untagged events.
    - `check --events` compared a windowed read against the whole file's trailer
      count, reporting a false truncation and exiting 1 on a healthy file; it also
      numbered a duplicate at event 105 as "event 5".
    - `split --events 100..200 --chunks 3` wrote one file instead of three.
    
    Docs: the sample outputs for `check`, `hist`, `doctor` and `dump` had drifted
    from the commands that produce them and were regenerated by running them. The
    site build now throws on broken anchors and markdown links, not just links, so
    "a green build means the docs are internally consistent" is enforced rather than
    claimed.
    
    204 tests, every fix mutation-tested, 141 documented examples executed, 335
    command invocations with no panic.
  • v0.1.0

    Release: hipo-tools 0.1.0
    hipo-tools 0.1.0
    
    First tagged release: a fast CLI for exploring HIPO v6 (CLAS12) files —
    inspect, cut, project, compare, repair and re-encode.
    
    Cut before this tag, in a polish pass over the whole surface:
    
    - `check`, `quality` and `mc` printed a different table on every run. Each
      ranked a list by a count accumulated in a HashMap and sorted on that count
      alone, leaving ties in per-process hasher order. Since each list is
      truncated, this changed *which* rows appeared: over a file with 200 duplicate
      groups tied at 3x, `check` reported a different five on all ten of ten runs.
    - `hist --range -5,5` was refused by the argument parser, which read the `-5`
      as a flag. That exact line was the example in the README and the docs site.
    - `tui` panicked with a Rust backtrace when stdout was not a terminal.
    - `--events A..B` reached only `dump`, `scan` and `diff`, so a slice could be
      looked at but not counted, measured or written out. It is global now, and
      the nine commands that cannot honour it refuse it rather than ignore it.
    - `stats`, `hist` and `dist` rejected the `BANK.COLUMN` spelling they print.
    
    Verified against a real 326,074-event CLAS12 file as well as the fixtures:
    335 command invocations with no panic, the `--where` engine agreeing with an
    independent oracle on 51 predicates, 33 value-level fidelity checks across
    every codec and write path, thread-count determinism, and all 138 command
    examples in the README and docs site parsing.