Releases: MarchSnow-1/midibridge-android
Releases Β· MarchSnow-1/midibridge-android
Release list
v1.1.0
v1.1.0 - 1 September 2026
π Merged PRs
This release includes 1 merged pull request that has been successfully integrated into the codebase.
- Security hardening & WS server & MIDI parsing & UI/lifecycle robustness & config fixes by @MarchSnow-1 in #1
π Bug Fixes
- Merge pull request #1 from MarchSnow-1/fix-0830
c1ff727by @MarchSnow-1 - Midi: Rewrite USB MIDI as a standard byte-stream state machine β correct SysEx reassembly, Running Status support, robust against malformed/concat messages; extract testable MidiParser with 28 JVM unit tests
411b139by @MarchSnow-1 - Server: IP allowlist hardening β strict IPv4 validation, CIDR bounds checked, no DNS on the accept path; 24 JVM unit tests
7a174b1by @MarchSnow-1 - Server: WebSocket server hardened β per-IP ban on repeated auth failures, Origin validation, connection & frame-size limits, ordered per-client send channels, safe removal of kicked clients
7fc371aby @MarchSnow-1 - Threading: Move save/restart off the main thread; serialize bridge start/stop/restart; clean up before stopSelf
5d8c05aby @MarchSnow-1 - Security: Leaving the password field empty no longer resets it to a default; hardcoded default password removed
0b98d74by @MarchSnow-1 - Lifecycle: Bridge auto-resumes after a sticky restart; foreground started before any init; nullable module refs eliminate crashes; ACTION_STOP wired to stopForeground
14f3107by @MarchSnow-1 - Midi: Detect USB device unplug β close stale handles, no ghost "connected" state after late callbacks
f610ecaby @MarchSnow-1 - Service: Surface video keep-alive failures in the UI; keep the toggle off until started successfully
143fad3by @MarchSnow-1 - Ui: One-shot events no longer replay after screen rotation
d9b0792by @MarchSnow-1 - Manifest: Disable
allowBackup(auth/config not backed up to the cloud); request notification permission on Android 13+; single-top activity727b24fby @MarchSnow-1 - Ui: Clear stale device selection on restart; show the real configured port when stopped; cancel collector scope across restarts
27563b5by @MarchSnow-1 - Ws: Fix Origin same-host check β compare hostname without port so same-origin browsers are accepted
3d6ca8cby @MarchSnow-1 - Config: Verbose MIDI logging defaults to off; drop new events when the buffer is full (matches the Go client)
e5cec3bby @MarchSnow-1 - Ui: Cancel the previous polling loop before starting a new one β no duplicate loops after service rebind
5a0fb48by @MarchSnow-1 - Util: Logger ring buffer no longer corrupts after 2Β³ΒΉ log entries
877481aby @MarchSnow-1 - Auth: Password length counts unicode code points, matching the Go server
0af8d5eby @MarchSnow-1 - Ui: Skip re-selecting a device that is already selected
8a2af46by @MarchSnow-1
π Documentation Changes
- Optimize documentation descriptions
574632aby @MarchSnow-1
π· Continuous Integration
- Optimize build process
2a0023aby @MarchSnow-1
Full Changelog: v1.0.0...v1.1.0
v1.0.0
v1.0.0 - 2026-05-24
π New Features
- Init
1a3b91eby @MarchSnow-1
π§ Chores And Housekeeping
- Add gitignore file
df13ec3by @MarchSnow-1