mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-12-01 11:22:58 +00:00
0b3eef7441
This will be EOL at the end of November, so there's little reason to keep it in 24.11[1]. As discussed, we'd like to keep it for as long as possible to make sure there's a state in nixpkgs that has the latest minor of postgresql_12 available with the most recent CVEs fixed for people who cannot upgrade[2]. This aspect has been made explicit in the manual now for the next .11 release. During the discussions it has been brought up that if people just do `services.postgresql.enable = true;` and let the code decide the postgresql version based on `system.stateVersion`, there's a chance that such EOL dates will be missed. To make this harder, a warning will now be raised when using the stateVersion-condition and the oldest still available major is selected. Additionally regrouped the postgresql things in the release notes to make sure these are all shown consecutively. Otherwise it's a little hard to keep track of all the changes made to postgresql in 24.11. [1] https://endoflife.date/postgresql [2] https://github.com/NixOS/nixpkgs/pull/353158#issuecomment-2453056692
32 lines
1.0 KiB
Nix
32 lines
1.0 KiB
Nix
self:
|
|
let
|
|
# Before removing an EOL major version, make sure to check the versioning policy in:
|
|
# <nixpkgs>/nixos/modules/services/databases/postgresql.md
|
|
#
|
|
# Before removing, make sure to update it to the last minor version - and if only in
|
|
# an immediately preceding commit. This allows people relying on that old major version
|
|
# for a bit longer to still update up to this commit to at least get the latest minor
|
|
# version. In other words: Do not remove the second-to-last minor version from nixpkgs,
|
|
# yet. Update first.
|
|
versions = {
|
|
postgresql_13 = ./13.nix;
|
|
postgresql_14 = ./14.nix;
|
|
postgresql_15 = ./15.nix;
|
|
postgresql_16 = ./16.nix;
|
|
postgresql_17 = ./17.nix;
|
|
};
|
|
|
|
mkAttributes = jitSupport:
|
|
self.lib.mapAttrs' (version: path:
|
|
let
|
|
attrName = if jitSupport then "${version}_jit" else version;
|
|
in
|
|
self.lib.nameValuePair attrName (import path {
|
|
inherit jitSupport self;
|
|
})
|
|
) versions;
|
|
|
|
in
|
|
# variations without and with JIT
|
|
(mkAttributes false) // (mkAttributes true)
|