Skip to content

v0.2.0

Choose a tag to compare

@github-actions github-actions released this 24 Oct 08:40
· 93 commits to main since this release

Tested on Ubuntu and Windows, with Python 3.8 and 3.12. The GitHub Action passes on all four.

Listen to the network

  • The bench now hears other players and mixers on the link and shows each as a read-only card with its model and what it does.
  • The Network tab has a log of the Pro DJ Link packets as they come (/api/packets). The bench's own packets, statuses and beats are options. See docs/link.md.
  • A synced deck now snaps to the master's beat grid, not only to its tempo.

The page

  • New look, the same as commitcollective.cc: black and white, thin lines, square corners. Colour only carries meaning: green for on and on air, blue for sync, amber for the master, purple for a loop, red for beat 1 and for a fault.
  • Two looks, each in dark and light, chosen in Settings: Commit (the default) and Classic, the first look.
  • Each deck and device has a scrolling strip with a grid of beats and bars. A loop shows where it goes back.
  • The tempo slider changes the tempo while you drag it, not on release.
  • The Sound button plays each playing deck's beat (kick, snare, hat). With a mixer, only decks on air are heard. Settings choose which decks and devices you hear.
  • The page can be hosted on another site and used from a phone. See docs/phone.md.
  • ?demo runs a bench made of JavaScript inside the page, with no server.

Safety

  • The API now refuses requests from web pages of another origin, since any site could otherwise drive a bench on localhost. --allow-origin lets one in.
  • --token makes the API ask for a token.

Releases and hosting

  • A tag now makes a GitHub release with the changelog entry as its notes.
  • The tests run on Ubuntu and Windows, and the workflow says which test failed.
  • The page is served by its own Cloudflare worker, so changing it needs no push to the website. See docs/hosting.md.

Fixes

  • UDP sockets are shared with SO_REUSEPORT on macOS.
  • The page's server no longer does a reverse lookup at start, which held it up for many seconds on a macOS runner.
  • The WSL test of Bench only runs where a WSL distribution starts.
  • The mixer's channel rows no longer share a CSS class with the beat strips.