Skip to content

Move the rack into the package: vrack becomes audioinstruments._rack; 0.5.0.dev2 - #32

Merged
bdbarnett merged 3 commits into
mainfrom
rename/rack2
Oct 31, 2026
Merged

bdbarnett merged 3 commits into
mainfrom
rename/rack2

Conversation

@bdbarnett

Copy link
Copy Markdown
Contributor

lib/vrack moves to lib/audioinstruments/_rack. A wheel or a frozen build now ships one package, audioinstruments, with the rack under it as a private subpackage; the instruments by name stay the public surface.

  • Every import and module path follows: import audioinstruments._rack.adapter as adapter, from audioinstruments._rack import Rack.
  • manifest.py freezes audioinstruments alone; the rack comes with it.
  • Prose that named the package now says the rack.
  • tests/mpy/run.py --frozen checks the rack's frozen path as audioinstruments/_rack/__init__.py.
  • VERSION moves to 0.5.0.dev2 and every face is regenerated, which also brings the Rhythm78 and Rhythm909 faces up from dev0.

A second commit fixes the drum kits' faces: a kit declares PADS, not NOTE_MAP, so its face had no note map and DRUM_MACHINES was empty. make_faces now names each pad from the kit's VOICE_NAMES, the kits declare the Drum category, and the nine instruments without a DISPLAY_NAME take their class name.

Checked: ruff on lib, tests, examples and tools; the face, CI-scope, core, adapter, lazy-import and drum tests (434 passed); the MicroPython tests on a unix build (256, no failures).

Replaces #26, which was cut before the drum machines landed.

lib/vrack moves to lib/audioinstruments/_rack, so the wheel and a frozen
build ship one package. Imports, module paths and docs follow; prose that
named the package now says the rack. VERSION moves to 0.5.0.dev2 and every
face is regenerated with it.
A kit declares PADS, (key, voice) pairs, not NOTE_MAP, so its face had no
note map and _names.py listed it as melodic. make_faces now names each pad
from the kit's VOICE_NAMES (a sound on several keys is numbered, as General
MIDI does), and the kits declare the Drum category. The nine instruments
without a DISPLAY_NAME take their class name. The MicroPython face test
plays a kit on its own voices and its first pad.
The move wrote the package's dotted name where three tests join a path into
lib/, so two of them looked for lib/audioinstruments._rack and the
allocation test reported its frames from the wrong root. The rack panel's
title says rack.
@bdbarnett
bdbarnett merged commit 9e3f7bd into main Oct 31, 2026
1 check passed
@bdbarnett
bdbarnett deleted the rename/rack2 branch October 31, 2026 09:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant