github tphakala/birdnet-go nightly-20260311
Nightly Build nightly-20260311

pre-release9 hours ago

This nightly focuses on stability and bug fixes across audio processing, database migrations, taxonomy mappings, and the frontend. It also adds Prometheus observability metrics and refreshes the Species settings page.

New Features

  • Species settings page redesign — refreshed Species settings page with the system design language for a more consistent look and feel (#2190)
  • Prometheus metrics for BirdNET buffer overruns — new metrics to monitor when the BirdNET processing pipeline drops audio segments due to buffer pressure (#2230)
  • MyAudio Prometheus metrics wired up — previously unused audio capture metrics are now exported to Prometheus (#2232)
  • Buffer overrun tracking for BirdNET processing — internal telemetry to track when audio buffers overflow during analysis (#2229)

Bug Fixes

Audio & Analysis

  • 503 instead of 404 when audio is still encoding — audio requests now return 503 (Service Unavailable) while encoding is in progress, allowing clients to retry (#2227)
  • Handle missing analysis buffer during RTSP reconnection — prevents panic when RTSP source reconnects before the analysis buffer is allocated (#2214)
  • Increase audio file readiness timeout for slow storage — longer timeout for NAS and network-mounted storage (#2210)
  • Preserve exponential backoff in audio file validation retries — backoff was accidentally flattened, now correctly exponential (#2218)

FFmpeg & Path Handling

  • Prevent ingress path prefix from contaminating FFmpeg binary path — path prefix no longer leaks into FFmpeg executable resolution (#2216)
  • Extend FFmpeg path validation to all execution points — consistent path validation everywhere FFmpeg is invoked (#2219)

Database & Datastore

  • Detect and fix v2 column contamination in legacy image_caches table — auto-repairs legacy tables that picked up v2 columns (#2188)
  • Disable FK checks during MySQL orphaned table cleanup — prevents migration failures on MySQL when dropping orphaned tables (#2208)
  • Restore species_code and fix empty summary in v2only analytics — analytics queries now return correct species codes and summaries (#2223)

Taxonomy

  • Add BirdNET synonym mappings for reclassified species — maps renamed species back to their current taxonomy (#2215)
  • Resolve remaining unmapped BirdNET species — fixes the last 10 species that had no taxonomy mapping (#2217)

Frontend

  • Enforce 4:3 aspect ratio on all bird thumbnail images — consistent thumbnail sizing across all views (#2189)
  • Correct PWA manifest start_url and scope — fixes PWA install and navigation behavior (#2221)
  • Prevent each_key_duplicate errors in species lists — eliminates Svelte console warnings from duplicate keys (#2224)
  • Show scientific_name in imageprovider error notifications — error toasts now include the species scientific name for easier debugging (#2231)

Image Provider

  • Cache network failures to avoid repeated broken DNS lookups — failed DNS lookups are cached to prevent flooding (#2222)
  • Add species and provider context to ErrImageNotFound errors — error messages now include which species and provider failed (#2225)
  • Return 404 instead of 500 for missing species images — correct HTTP status code for missing images (#2213)

Notifications & MQTT

  • Display error context in notification UI — notification errors now show actionable context (#2226)
  • Improve MQTT connection error handling and reconnection backoff — better error messages and exponential backoff for MQTT reconnects (#2220)

Infrastructure

  • Handle missing mount point gracefully in containers — system monitor no longer errors when container mount points are unavailable (#2211)
  • Skip files with unexpected filename format gracefully — disk manager ignores unrecognized files instead of erroring (#2212)

Telemetry Improvements

  • Close Sentry reporting gaps across 8 packages — previously uncovered error paths now report to Sentry (#2187)
  • Improve Sentry error reporting quality — better fingerprinting and context for error reports (#2209)

Don't miss a new birdnet-go release

NewReleases is sending notifications on new releases.