Skip to content

v1.0.0

Latest

Choose a tag to compare

@deeplook deeplook released this 08 Jun 18:58
· 6 commits to main since this release

What's new in 1.0.0

  • Mixed positive/negative data is now auto-detected and rendered as a
    proportional split sparkline automatically — no flags required. Upward bars
    appear on top, downward bars below.
  • All-negative data now renders as inverted (downward) bars automatically.
  • New -n / --num-lines accepts three forms: a positive integer (total rows,
    allocated proportionally), 'auto' (smallest proportional row count), or
    'up:down' (explicit per-side layout). Integer and auto modes use a shared
    max scale; up:down uses independent per-side scaling.
  • New --zero flag: 'up' (default) places zeros on the positive baseline;
    'none' omits zeros from both sides.
  • Removed inverted=True / -i/--inverted and split=True / -s/--split from the
    public API. Inverted rendering is now an internal implementation detail.
  • Removed -v/--verbose CLI flag and verbose= parameter (were no-ops since
    introduction; never produced any output).
  • Proportional row allocation: up_rows/total == pos_max/range, so the zero
    line stays meaningful as the visual boundary between halves.
  • ANSI reverse video with complement block characters gives full 8-level
    resolution for downward bars. Falls back to top-fill Unicode characters
    (▔▀█) when NO_COLOR, ANSI_COLORS_DISABLED, or TERM=dumb is set.
  • Fixed: color emphasis (-e) in mixed positive/negative sparklines is now
    evaluated against the original values, not the abs-converted partition.
    Conditions like "blue:lt:0" now correctly match negative bars.
  • New index-slice form for -e/--emphasize: "color:[start:stop:step]" selects
    bars by position rather than value, using standard Python slice syntax
    (e.g. "red:[0:3]", "blue:[::2]", "yellow:[-1:]"). Value and slice
    expressions can be mixed freely.
  • Fixed: --wrap with mixed positive/negative data now correctly interleaves
    the positive and negative rows per window, rather than emitting all positive
    windows followed by all negative windows.