Package: redis Version: 5:5.0.7-2 Severity: normal Dear Maintainer,
* What led up to the situation? Upgrades between versions of the package, with local configuration changes * What exactly did you do (or not do) that was effective Nothing particular other than modifying the default config (even if modification is trivial) * What was the outcome of this action? Upgrade caused a configuration conflict which necessitated manual intervention and patching/merging of config options. We frequently updagade/downgrade this package for dev puposes and this has been a thorn in our back. * What outcome did you expect instead? Currently the redis.conf configuration file supports the "include" keyword. However, by default, nothing is included. Problems can pop up when local configuration needs to be maintained between upgrades/downgrades. The upgrade mechanism will prompt for manual intervention with the configuration file, if any changes were made to it. Depending on the amount of customization done therein, this could cause a time-consuming and error-prone situation of having to merge/patch things up. Other packages, such as Apache and MySQL (for instance, amongst many others), have addressed this by providing a "conf.d"-style directory and having "include conf.d/*" type of statement in the default configuration file that's maintained by the package maintainer. This is effectively the standard approach seen nowadays in Linux. The benefit is obvious: one can simply drop their local configuration file into the provided conf.d directory and upgrade away with far fewer worries. In summary, please consider affecting the following two (or three) changes to the redis package: 1) add an empty /etc/redis/conf.d directory to the package 2) add the statement "include /etc/reds/conf.d/*" to the bottom of the official /etc/redis.conf file to serve as an override of all default settings 3) it's not clear to me whether wildcard can actually currently be specified in the include statement. If they currently cannot be specified, please patch the code to glob using the pattern specified in the include, instead of targeting an individual file. Ideally, redis' default configraion should include an additional statement at the bottom of the config file like this: include "/etc/redis/conf.d/*" plus the package should contain a default empty /etc/redis/conf.d directory. -- System Information: Debian Release: bullseye/sid APT prefers focal-updates APT policy: (500, 'focal-updates'), (500, 'focal-security'), (500, 'focal'), (100, 'focal-backports') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 5.11.13-051113-generic (SMP w/12 CPU cores) Kernel taint flags: TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE Locale: LANG=en_CA.UTF-8, LC_CTYPE=en_CA.UTF-8 (charmap=UTF-8), LANGUAGE=en_CA:en (charmap=UTF-8) Shell: /bin/sh linked to /usr/bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages redis depends on: ii redis-server 5:5.0.7-2 redis recommends no packages. redis suggests no packages. -- no debconf information