Fix CI and release builds: copies of the test files in
scripts/ made pytest abort with "import file mismatch"
(exit code 2) on every runner. setup.cfg now pins
testpaths = tests so stray files cannot do that again
GitHub Actions: checkout v5 and setup-python v6 (Node 24)
0.4.1
Fix: nerd mode and its test crashed on macOS (no /proc); this also
broke the macOS CI job that gates releases
License changed to GPL-3.0
Docs site: logo, screenshot gallery, teal theme; deploys on pushes
to main as well as on releases
README logo uses an absolute URL so it renders on PyPI and Docker
Hub
Release workflow files, CI, dependabot and issue templates are all
in the repo
0.4.0
macOS support: PortAudio backend (sounddevice) with
BlackHole loopback capture, automatic output switching via
switchaudio-osx, --backend,
--input, --output,
--list-devices; nerd mode works without /proc
Installer rewritten for Linux and macOS (virtualenv, Homebrew, PATH
handling, --uninstall)
Packaging moved to setup.cfg so old pip/setuptools no
longer produce an UNKNOWN package
Esc menu (btop style) with submenus for view, bar style, theme and
preset, plus an About page
New public domain tunes: Amazing Grace (from the public domain
HymnWiki score), Twinkle Twinkle, Row Row Row Your Boat, Jingle Bells,
Silent Night, Yankee Doodle, Oh! Susanna, Pachelbel's Canon
README rewritten: install per platform, dependencies, many usage
examples, effects reference, troubleshooting
CI runs on Linux and macOS
0.3.0
Fluidity: 60 fps loop with time-based physics (attack/release,
gravity peak caps), spatial smoothing, multi-resolution FFT (long window
for bass, short for treble)
Bar styles (g, --style): braille, line,
mirror, dots, blocks, ascii
20 color themes with 24-step gradients
(c/C, --theme); frequency-zoned
bar coloring
Effects rack (f): compressor, overdrive, bitcrusher,
megaphone, phaser, flanger, chorus, tremolo, echo, reverb, stereo
widener, with braille rotary knobs, mouse and keyboard control
Response panel now shades boost and cut areas
Resizable panels: (){} and mouse drag on panel borders