Gerbera v2.2.0
release-drafter
released this
05 Jul 12:26
·
128 commits
to refs/heads/master
since this release
We are happy to announce that Gerbera Media Server 2.2.0 is now available.
This includes a special thanks to all our contributors since we now have more that 2000 pull requests!
This update brings a new design for the start page, better logging and a new repository for ubuntu and debian getting rid of jfrog.
Also virtual items are detected during import and cleaned up as required instead of deleting and recreating them all.
This requires a change in js scripts: All import functions have to return a list of created object ids.
NEW Features
- Configuration for case sensitive media tags (allow making them insensitive)
- Configuration options for playlist layout
- Configuration option to activate
IN_ATTRIB
event for, e.g. permission changes on disk incl. retry if that fails - WebUI: New design for home page and login screen
- Allow metadata handler to be disabled, add charset support
- UPnP specification files (description.xml, cds.xml) now reflect client quirks
- Search for
upnp:lastPlaybackTime
,upnp:playbackCount
andplay_group
- Additional command line options for logging (
--syslog
and--rotatelog
) - TagLib messages are logged with gerbera now. They also show up with
debug-mode="taglib"
. - LibExiv2 messages are logged with gerbera now. They also show up with
debug-mode="exiv2"
. - LibExif messages are logged with gerbera now. They also show up with
debug-mode="exif"
. - ffmpeg messages are logged with gerbera now. They also show up with
debug-mode="ffmpeg"
.
FIXES
- Album artist handling in default js layout
- Build with ffmpegthumbnailer but without ffmpeg
- Changed repository for ubuntu and debian to https://pkg.gerbera.io/
- Autologout from UI
- Finally SIGHUP can be used to reload gerbera without restarting
Code Improvements
- Rework of server mechanism for file and data requests
- Update versions of pupnp (1.14.19), npupnp (6.1.2), spdlog (1.14.1), taglib (2.0.1), ffmpegthumbnailer(2.2.2-60-g1b5a779), fmt (11.0.0)
- Allow building of libexif (up to v0.6.24-90-g2ed252d)
- Refactoring of property handling in scripts
- Refactoring of Inotify code and command line handling
- Refactoring of Config and Content code
- Reduce header nesting
Changes
- Gerbera 2.2.0 (#3137), thanks @KarlStraussberger
- Xml2Json: improve encoding for special chars (#3146), thanks @KarlStraussberger
- FFMpeg: Reduce logger noise (#3145), thanks @KarlStraussberger
- FFMpeg: Reduce logger noise (#3144), thanks @KarlStraussberger
- Build against fmt 11.0.0 (#3142), thanks @KarlStraussberger
- Fix database calls for browsing dynamic containers (#3141), thanks @KarlStraussberger
- Fix logger.cc without DEBUG (#3140), thanks @KarlStraussberger
- Implement updating virtual entries (#3135), thanks @KarlStraussberger
- Fix crashes on freebsd 14.1 (#3134), thanks @vovkasm
- Bump ws, engine.io and socket.io-adapter in /gerbera-web (#3133), thanks @dependabot
- Improve documentation (#3132), thanks @KarlStraussberger
- Search: Add playstatus details to search properties (#3131), thanks @KarlStraussberger
- Config: Separate config values (#3129), thanks @KarlStraussberger
- Bump ws from 8.14.2 to 8.17.1 in /gerbera-web (#3130), thanks @dependabot
- Extract Content interface (#3127), thanks @KarlStraussberger
- Bump braces from 3.0.2 to 3.0.3 in /gerbera-web (#3128), thanks @dependabot
- UPnP description: Allow dynamic capability values (#3124), thanks @KarlStraussberger
- Startup: Always check dirs (#3126), thanks @KarlStraussberger
- Add log sinks for rotating log files and syslog (#3121), thanks @KarlStraussberger
- Extract command line argument handling to Runtime class (#3118), thanks @KarlStraussberger
- Fix creation of mr_reg.xml (#3117), thanks @KarlStraussberger
- Build: Upload for focal (#3116), thanks @KarlStraussberger
- Build: add older debian (#3114), thanks @KarlStraussberger
- Build: Upload for focal (#3113), thanks @KarlStraussberger
- Build: Upload for focal (#3111), thanks @KarlStraussberger
- Build: Upload for focal (#3110), thanks @KarlStraussberger
- Build: split debian modules (#3109), thanks @KarlStraussberger
- Build: Upload for focal (#3108), thanks @KarlStraussberger
- Build: Upload for bionic (#3106), thanks @KarlStraussberger
- Build: Upload for bionic (#3105), thanks @KarlStraussberger
- Build: Use ruby2.7 for bionic (#3104), thanks @KarlStraussberger
- Build: Use Ruby2.6 for bionic (#3103), thanks @KarlStraussberger
- Build: Scripts fail again with build (#3102), thanks @KarlStraussberger
- Add missing define on ubuntu 18 (#3101), thanks @KarlStraussberger
- Add sample-frequency to config2.xsd (#3100), thanks @cweiske
- Inotify: Handle Inotify access failed (#3092), thanks @KarlStraussberger
- config2.xsd fixes (#3099), thanks @cweiske
- Handle broken Systemd on some debian (#3097), thanks @KarlStraussberger
- Insecure download due to ubuntu-20.04/armhf failing (#3096), thanks @KarlStraussberger
- Build: Add install scripts for alpine/docker (#3095), thanks @KarlStraussberger
- Build: Add install scripts for OpenSuSE (#3094), thanks @KarlStraussberger
- Build: rework dependency handling (#3089), thanks @KarlStraussberger
- Logging: Separate description requests (#3088), thanks @KarlStraussberger
- Libexif: add custom logger (#3086), thanks @KarlStraussberger
- FFMpeg: add custom logger (#3085), thanks @KarlStraussberger
- Config: Add flag to disable dynamic descriptions (#3084), thanks @KarlStraussberger
- UPnP specification files reflect client quirks (#3083), thanks @KarlStraussberger
- UI: Fix auto logout (#3069), thanks @whyman
- Metadata: Unify handling and allow to disable (#3081), thanks @KarlStraussberger
- Build support for libnpupnp 6.1.2 (#3080), thanks @KarlStraussberger
- Fix discovery (#3078), thanks @KarlStraussberger
- Server: Handle all HTTP via virtualdir (#3076), thanks @whyman
- Documentation: Update with new WebUI (#3071), thanks @KarlStraussberger
- Import: Add option case sensitive tags (#3070), thanks @KarlStraussberger
- UI: Tidy up login and homepage (#3067), thanks @whyman
- Build: Allow build of ffmpegthumbnailer without ffmpeg (#3065), thanks @KarlStraussberger
- clang-tidy: don't cast through void (#3062), thanks @neheb
- Adding consistent album artist support (#3060), thanks @TheMarstonConnell
- Import: fix single file update (#3058), thanks @KarlStraussberger
- Playlist: Allow configuration of directory depth (#3053), thanks @KarlStraussberger
- docs: Update Arch Linux installs (#3052), thanks @whyman
- Docs: Update Ubuntu/Debian repo instructions (#3050), thanks @whyman
- CI: Pass publish-deb secrets via env instead (#3049), thanks @whyman
- CI: Upload debs to pkg.gerbera.io (#3048), thanks @whyman
- CI: Drop excluded ubuntu versions as CMake PPA now supports those com… (#3047), thanks @whyman
- TagLib: Use DebugListener to suppress messages (#3046), thanks @KarlStraussberger
- Bump master (#3045), thanks @KarlStraussberger
Please see our Documentation for how to install the latest Gerbera version on your system.