Commit Graph

536 Commits

Author SHA1 Message Date
Brandon Thomas bd5b5f17fa Merge #209's latest into the landing branch 2026-10-13 06:25:56 -04:00
grovebit 338411b99a Merge remote-tracking branch 'origin/main' into zoom-toggle
# Conflicts:
#	crates/model/src/lib.rs
2026-10-13 10:51:29 +01:00
Brandon Thomas 468125aaf4 Merge main into #209 2026-10-13 05:27:22 -04:00
Brandon Thomas 4ebdc35b04 Merge #360 2026-10-13 05:24:58 -04:00
Brandon Thomas e927e295bb Fix build after merging main into #360
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-13 05:24:58 -04:00
Brandon Thomas 70c9bcf7dd Merge main into #360 2026-10-13 05:24:45 -04:00
Brandon Thomas dec75a8086 Merge #384 2026-10-13 05:21:33 -04:00
Brandon Thomas 3f3f64746f Merge main into #384 2026-10-13 05:21:33 -04:00
Brandon Thomas cd981d723e Merge #365 2026-10-13 05:17:58 -04:00
Brandon Thomas bb3a6bdd9a Fix build after merging main into #365
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-13 05:17:58 -04:00
Brandon Thomas 2bba5c334d Merge main into #365 2026-10-13 05:17:58 -04:00
Brandon Thomas edcdf770b2 Merge #393 2026-10-13 05:12:31 -04:00
Brandon Thomas 5051b4a45f Merge main into #393 2026-10-13 05:12:31 -04:00
Brandon Thomas 9c994f3f7b Merge #367 2026-10-13 05:11:18 -04:00
Brandon Thomas e32c16b82e Merge main into #367 2026-10-13 05:11:18 -04:00
Brandon Thomas c46d6efd4c Merge #369 2026-10-13 05:08:27 -04:00
Brandon Thomas a47135b228 Merge main into #369 2026-10-13 05:08:26 -04:00
Brandon Thomas 574b3117e7 Merge #215 2026-10-13 05:03:15 -04:00
Brandon Thomas 5d98ddfa69 Merge main into #215 2026-10-13 05:03:15 -04:00
Brandon Thomas b4f7c4af6d Merge #328 2026-10-13 04:59:31 -04:00
Brandon Thomas 0eee82a49c Merge main into #328 2026-10-13 04:59:30 -04:00
Brandon Thomas ae7155d95f Merge #300 2026-10-13 04:56:48 -04:00
Brandon Thomas d4b7300a1e Merge main into #300 2026-10-13 04:56:48 -04:00
Brandon Thomas 93181762ee Merge #368 2026-10-13 04:56:40 -04:00
Brandon Thomas 3cc0dc77cb Fix build after merging main into #368
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-13 04:56:26 -04:00
Brandon Thomas 46399aa729 Merge main into #368 2026-10-13 04:50:04 -04:00
Brandon Thomas 8d5b38ab3a
Merge pull request #406 from storytold/fix/reachability-ratchet
Fix main: drop now-reachable commands from the reachability ratchet
2026-10-13 04:49:40 -04:00
Brandon Thomas 391a0aa66c Drop track.timebase and track.elastic from the unreachable-commands list
Both gained a UI path from PRs that landed today, so the reachability
ratchet from #358 now fails on main.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-13 04:49:31 -04:00
Brandon Thomas 5495378d7a
Merge pull request #309 from isaac-levine/mcp-automation-roots
MCP: confine file access with --automation-read-root and --automation-write-root
2026-10-13 04:43:44 -04:00
Brandon Thomas 9c7e5018b3
Merge pull request #333 from grovebit/strip-silence-long
Stop Strip Silence deleting clips late in long selections
2026-10-13 04:43:41 -04:00
Brandon Thomas 849d1a6b07
Merge pull request #331 from grovebit/corrupt-audio
Refuse corrupt audio files instead of crashing
2026-10-13 04:43:37 -04:00
Brandon Thomas 663ccd0004
Merge pull request #330 from grovebit/new-track-button
Add tracks from the Tracks list and the empty space below the tracks
2026-10-13 04:43:34 -04:00
Brandon Thomas 061c238e68
Merge pull request #329 from grovebit/record-unarmed
Say at the Record button why Record did nothing
2026-10-13 04:43:30 -04:00
Brandon Thomas 50b0f68363
Merge pull request #320 from grovebit/range-shortcuts
Make the Zoom Preset, Waveform Zoom and Clip Rating keys work; add Commands Focus 1–5 and N
2026-10-13 04:43:26 -04:00
Brandon Thomas 6c836b4389
Merge pull request #308 from grovebit/automation-overwrite
Automation passes replace the automation they play over, in one undo step
2026-10-13 04:43:21 -04:00
Brandon Thomas ed42ac49f9
Merge pull request #299 from grovebit/marker-rename
Rename a marker by double-clicking it in the ruler
2026-10-13 04:43:16 -04:00
Brandon Thomas 1831b4173a
Merge pull request #298 from grovebit/tempo-drag
Drag or type the tempo in the toolbar
2026-10-13 04:43:12 -04:00
Brandon Thomas 116ccfac5b
Merge pull request #297 from grovebit/track-list-reorder
Reorder tracks by dragging them in the Tracks list
2026-10-13 04:43:05 -04:00
Brandon Thomas 0ef67b795b
Merge pull request #210 from grovebit/realtime-safety
Stop allocating and freeing memory on the audio thread
2026-10-13 04:43:00 -04:00
Brandon Thomas b764e299bc
Merge pull request #326 from grovebit/long-renders
Refuse renders too long to finish instead of cutting the audio short
2026-10-13 04:42:56 -04:00
Brandon Thomas 3d5b4dec8d
Merge pull request #389 from grovebit/tab-focus
Keep shortcuts working after Tab
2026-10-13 04:42:51 -04:00
Brandon Thomas b81bd5e064
Merge pull request #361 from grovebit/track-name-menu
Right-click a track's name for the track menu, in Edit and Mix
2026-10-13 04:42:46 -04:00
Brandon Thomas 007e6ab78f
Merge pull request #359 from grovebit/grid-over-clips
Draw grid lines over clips in the Edit window
2026-10-13 04:42:42 -04:00
Brandon Thomas f08581b545
Merge pull request #378 from grovebit/tracks-scroll-bar
Mark the Tracks panel's edge with a scroll bar
2026-10-13 04:42:38 -04:00
Brandon Thomas e5ca24cc3e
Merge pull request #397 from grovebit/mix-narrow-headers
Fit the section names in narrow Mix strips
2026-10-13 04:42:33 -04:00
Brandon Thomas 7676de2749
Merge pull request #383 from grovebit/pt-track-headers
Lay out Edit window tracks and plugin slots like Pro Tools
2026-10-13 04:42:30 -04:00
Brandon Thomas 7347e98e79
Merge pull request #363 from grovebit/more-shortcuts
Pro Tools keys for nudging, Grid and Nudge values, playlists and windows
2026-10-13 04:42:25 -04:00
Brandon Thomas 74b3278a19 control server: cap request lines at about 86 MiB, not 256 MiB
256 MiB per line times 16 connections let a peer make the app buffer about
4 GiB. 16 MiB would break a legitimate request: mix.insert_state carries a
plugin's state as base64 inline, and the engine accepts states of up to
b64::MAX_DECODED_BYTES (64 MiB), about 85.3 MiB of base64. Nothing else sent
to the app is that large (screenshots are replies, which this doesn't bound).
So the cap is that base64 length plus 1 MiB for the JSON around it, derived
from the same constant so the two stay in step; a compile-time check keeps it
under 96 MiB, about 1.5 GiB across all 16 connections.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-13 04:37:04 -04:00
Brandon Thomas 41c8561d51 Signal Generator refuses a selection longer than one render
It cut the new clip at MAX_RENDER_SAMPLES / channels without a word, after
allocating up to 2 GiB for it. Refuse such a selection up front, as #326
does for other renders, before anything is generated.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-13 04:33:35 -04:00
Brandon Thomas c7a4c544c0
Merge pull request #261 from Silvertree2010/fix/cli-convert-validation
Reject invalid --rate and --bit-depth in convert (#256)
2026-10-13 04:33:02 -04:00