Releases: sPROFFEs/Aoede
Release list
Aoede v1.2.7 — macOS shutdown and party/admin fixes
Fixes desktop wrapper shutdown, WebKit volume, in-app notices and favicon sizing, alongside the Android playback and party/admin fixes.
- Desktop shutdown now runs on the native UI thread without waiting on its own queue or destroying the window before queued callbacks finish. Native close and API exit passed after external navigation on Windows and Linux (x64 and ARM64); macOS also passed application Quit. Optional ScreenCaptureKit is weak-linked for older macOS startup compatibility.
- WebKit audio resumes during the playback gesture, and initial volume no longer applies twice through HTML audio and the gain graph. Remaining federation-admin alerts use accessible in-app toasts that fit narrow screens. The favicon is larger with a consistent margin.
- The desktop server address is saved before navigation in the system app-data directory, with legacy preference migration and visible save errors. Launch with
--setupto change an unreachable saved server. Native API permissions are restricted to the setup operations. - Party deletion and other destructive actions use an accessible in-app confirmation dialog, including Cancel and Escape. Federated-room deletion remains owner-only and disconnects remote listeners.
- Admin settings open
/admin/directly; the federation panel initializes after its module loads. Session redirects from imported views are followed as page navigation. - All six desktop packages include consistent icons; macOS archives include complete Aoede.app bundles and declare macOS 10.15 as the minimum runtime version.
- Android APK and complete wrapper source have been updated to Android 1.0.4 (build 4). Background playback retains the player across activity recreation, Home/Back and notification reopening. Headphone/Bluetooth disconnection and system Pause suspend only this device, including in parties, until an explicit Play. Media notifications, buffering, CPU wake locks and artwork loading now clean up correctly; the native bridge is restricted to the configured server origin.
Update the Aoede server for the audio, notices and favicon fixes and reinstall the desktop wrapper for native shutdown and preference fixes.
Validation: 62 focused Python tests, JavaScript regressions, lint and formatting; native macOS close tests.
Android update: the old APK 1.0.3 used a debug signing key that was not retained. Uninstall it before installing this APK; uninstalling removes local settings and offline downloads. Android 1.0.4 uses a stable distribution key backed up in encrypted GitHub repository secrets for future in-place updates.
Android validation: bridge and party interruption regressions, eight Android lifecycle/receiver tests on API 21 and 34, release lint, a non-debuggable release build and APK signature verification. Physical-device checks for prolonged screen-off playback, Bluetooth and phone-call interruptions remain to be confirmed.
Desktop update validation: focused JavaScript and Python regressions, lint and formatting; nine native lifecycle checks across macOS, Windows and Linux, plus macOS weak-framework linkage verification: desktop runtime CI. Audio output on physical devices remains to be confirmed.
Aoede v1.2.6 (Desktop & Android)
Federated party rooms now join their host instance instead of looking up a remote room ID in the local database. Membership, live events, queue operations, and audio streams follow the same authenticated server-side route; remote listeners cannot impersonate a local room owner.
Desktop windows now exit through Neutralino's native close setting, including after connecting to a server, before login, and when the webapp is unavailable. The webapp no longer needs a local WebSocket bridge or native credentials in its URL to close the application.
The macOS wrapper uses the existing Web Audio graph for volume and mute. The macOS archives include a complete Aoede.app bundle with a multi-resolution ICNS generated from the same artwork as the running window. The installer registers the updated bundle with LaunchServices.
Update both federated servers and reinstall the desktop wrapper to receive these fixes.
Validation: 51 targeted Python tests, JavaScript regression checks for remote party routing and macOS volume, lint and formatting checks, a Neutralino rebuild, and inspection of all six desktop archives. Native macOS/Windows execution was not available in the Linux build environment.
Includes Linux x64/arm64, macOS universal/arm64/x64, and Windows x64. The Android APK and source ZIP are carried forward unchanged from v1.2.1.
Aoede v1.2.2
Release v1.2.2 with automated desktop releases, desktop wrapper close handling fix, and maintenance improvements.