You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
docs: expand v0.9.5.1 release notes with all post-v0.9.5 fixes (#2288)
The v0.9.5.1 entry was originally cut for just the TCI TX hotfix
(#2285), but six additional fixes had already landed in main between
the v0.9.5 tag and v0.9.5.1:
- #2275 NR2 wisdom generation off the audio thread
- #2278 SmartLink disconnect teardown
- #2279 Reset RX slice tabs on disconnect (#2254)
- #2280 macOS panadapter pop-out refresh + multi-pan dock layout
- #2282 SmartLink reconnect after WAN drop
- #2284 Qt log handler serialization fixes macOS tune-time crash
CHANGELOG.md gets a per-fix entry with root cause + behavior change.
WhatsNewData.cpp regenerated via scripts/gen_whatsnew.py so the
in-app What's New dialog reflects the full v0.9.5.1 contents.
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
{ChangeCategory::BugFix, QStringLiteral("TCI TX silent on Windows / Linux non-PipeWire"), QStringLiteral("`evaluateDaxTxPolicy()` now always allows `DaxTxRequestReason::TciTxAudio` regardless of platform / hosted-DAX availability. TCI receives audio over WebSocket and feeds it into a dedicated `dax_tx...")},
11
+
{ChangeCategory::BugFix, QStringLiteral("SmartLink reconnect after WAN drop"), QStringLiteral("`MainWindow` now owns a WAN reconnect timer that re-requests a SmartLink radio connection using the last selected WAN radio when `RadioModel` reports an unexpected WAN disconnect, instead of leavin...")},
12
+
{ChangeCategory::BugFix, QStringLiteral("SmartLink disconnect teardown"), QStringLiteral("WAN disconnect previously closed the WAN socket *after* disconnecting RadioModel's signals and nulled `m_wanConn` directly, skipping `RadioModel::onDisconnected()` cleanup entirely. Panadapters, s...")},
13
+
{ChangeCategory::BugFix, QStringLiteral("Reset RX slice tabs on disconnect between radios with different slice counts"), QStringLiteral("`RxApplet::clearSliceButtons()` tears down generated slice tab buttons and restores the static slice badge on disconnect. Stale A–H buttons no longer linger after switching from a high-slice radio...")},
14
+
{ChangeCategory::BugFix, QStringLiteral("Qt log handler serialization fixes macOS tune-time crash"), QStringLiteral("The global `qInstallMessageHandler` callback wrote through a single `QFile*` without synchronization, and concurrent `qCInfo`/`qDebug` output from main + worker threads corrupted Qt's internal file...")},
15
+
{ChangeCategory::BugFix, QStringLiteral("macOS panadapter pop-out refresh + multi-pan dock layout"), QStringLiteral("Detached panadapter windows on macOS no longer show a static/stale spectrum image. Cross-window reparenting now resets the native QRhi/Metal surface and re-requests pan dimensions from the radio a...")},
16
+
{ChangeCategory::BugFix, QStringLiteral("NR2 wisdom generation no longer freezes the audio thread"), QStringLiteral("`AudioEngine::needsWisdomGeneration()` previously only checked whether `aethersdr_fftw_wisdom` existed. If the file was stale or incompatible (e.g. `fftw-3.3.10` header on a build that uses FFTW 3...")},
0 commit comments