Skip to content

Releases: spalencsar/bearwave

BearWave 1.0.5

21 Jun 06:59

Choose a tag to compare

BearWave 1.0.5

Stability, security, and UI refactor release. Includes all changes from 1.0.4 plus CI fixes.

Security (1.0.4)

  • Validate manual station URLs: only http:// and https:// schemes accepted
  • Restrict notification cover art downloads to HTTPS URLs
  • Add network transfer timeouts for ICY metadata, cover art, and notification fetches

Fixed

  • Playback index for history, resume, and next/previous navigation
  • Radio Browser API race where stale responses could overwrite newer results
  • Error banner when cached station data is still available
  • Search filter persisting across page changes and compact-mode debounce
  • Stale list index after station list reload
  • Wayland system tray menu via native QSystemTrayIcon
  • MPRIS metadata publishing for desktop media widgets (e.g. PlasMusic)
  • 1.0.5: Unit tests in headless CI/Docker (Qt offscreen + FFmpeg backend)

Changed

  • Refactor Main.qml into reusable QML components and BearTheme singleton (~1800 → ~270 lines)
  • Remove unused Kirigami, I18n, and CoreAddons dependencies
  • Add backend unit tests for playback navigation and API race handling
  • CI runs ctest and broader qmllint

Install

Arch (AUR): yay -S bearwave-git

Source build:

cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build -j"$(nproc)"
cmake --install build --prefix "$HOME/.local"

Flatpak: see README

Full changelog: https://github.com/spalencsar/bearwave/blob/v1.0.5/CHANGELOG.md

BearWave 1.0.4 (git tag)

21 Jun 07:02

Choose a tag to compare

BearWave 1.0.4 — git tag release (retroactive)

This release documents the v1.0.4 git tag. It was created before CI was fully green and was not published on GitHub at the time.

Recommended install: use v1.0.5 instead (same changes + CI test fixes).

Included in this tag

See CHANGELOG 1.0.4:

  • Security: manual URL validation (http/https), HTTPS cover downloads, network timeouts
  • Fixed: playback navigation, API races, tray, MPRIS, search UX
  • Changed: modular QML refactor, unit tests, dependency cleanup

v1.0.3

30 May 08:11

Choose a tag to compare

Added

  • Dynamic World Categories dashboard showing country flags and popular genre tags.
  • Dynamic country name localization mapping for German translation support.
  • Local JSON caching for countries retrieved from the Radio Browser API.

Changed

  • Optimized Categories view layout to prevent text clipping (dynamic grid columns and scroll margins).

BearWave v1.0.2

28 May 06:32

Choose a tag to compare

What's new in this release:

Single Instance Check: Implemented a session DBus check at startup to ensure only one instance of the app runs at a time. Starting the app again will raise and focus the existing window.
Wayland Crash Fix: Replaced blocking DBus calls with asynchronous pending calls to prevent segmentation faults and freezes under Wayland.
Stream Metadata Improvements:
• Fixed a bug where QMediaPlayer metadata updates would overwrite and clear valid ICY stream metadata.
• Fixed a regex parsing issue that caused stream metadata to fail on song titles containing apostrophes.
• Fixed infinite loading of radio stations by introducing connection timeouts.
Project License & Standards:
• Relicensed the project to GNU GPLv3 (GPL-3.0-or-later).
• Added SPDX license headers to all source files and OARS content rating metadata.

BearWave v1.0.1

22 May 14:46

Choose a tag to compare

What's new in this release:

  • Automatic Online Search Fallback: Automatically switches to searching the online radio-browser.info database after a short typing pause (600ms) if no local matching station is found.
  • Stream Details: Displays technical stream codec and bitrate badges directly in the player footer.
  • Edit Custom Stations: Added support to edit manually added stations directly via a pencil icon (✏) in the UI.
  • Desktop Notifications & Cover Art Caching: Song/metadata change notifications on the desktop now display matching cover art (or fallback to the station's favicon) using a localized cached directory.
  • Mute Control: Click the speaker icon in the footer to mute/unmute audio playback.

BearWave v1.0.0-beta.1

20 May 17:32

Choose a tag to compare

First public beta release of BearWave.

BearWave is a KDE-focused desktop internet radio app for Linux, built with Qt 6, QML, KDE Frameworks, and Phonon. This beta is intended for testers, contributors, and technically comfortable Linux users.

Highlights

  • Internet radio playback via the Radio Browser API
  • Station browsing for Top, Germany, Netherlands, and quick world/genre filters
  • Local search, sorting, favorites, and resume support
  • MPRIS integration and system tray support
  • German and English UI support via system locale
  • Improved compact layout behavior
  • Refined repository structure, branding, README, and CI

Platform status

  • Primary target: Linux
  • Primary desktop target: KDE Plasma
  • Best-supported environment right now: Arch Linux
  • Source-first release, no official Flatpak or AppImage yet

Known limitations

  • Still in beta, not yet a final 1.0 release
  • Broader distro support is not yet validated to the same standard
  • Some desktop integration details may still need refinement

Recommended install paths

  • Build from source
  • Use the included PKGBUILD on Arch Linux

Feedback welcome

  • Bug reports
  • Plasma integration issues
  • Playback regressions
  • Distro-specific build and install problems
  • UI issues in compact layouts