Merge pull request #174607 from Mic92/changelog

doc: rework notable changes

authored by

Jörg Thalheim and committed by
GitHub
8cb4bd86 a40fb837

+151 -129
+105 -95
nixos/doc/manual/from_md/release-notes/rl-2205.section.xml
··· 17 <itemizedlist> 18 <listitem> 19 <para> 20 - The <literal>firefox</literal> browser on 21 - <literal>x86_64-linux</literal> is now making use of 22 - profile-guided optimization resulting in a much more 23 - responsive browsing experience. 24 </para> 25 </listitem> 26 <listitem> 27 <para> 28 - <literal>security.acme.defaults</literal> has been added to 29 - simplify configuring settings for many certificates at once. 30 - This also opens up the the option to use DNS-01 validation 31 - when using <literal>enableACME</literal> on web server virtual 32 - hosts (e.g. 33 - <literal>services.nginx.virtualHosts.*.enableACME</literal>). 34 </para> 35 </listitem> 36 <listitem> 37 <para> 38 GNOME has been upgraded to 42. Please take a look at their 39 <link xlink:href="https://release.gnome.org/42/">Release 40 - Notes</link> for details. Notably, it replaces gedit with 41 - GNOME Text Editor, GNOME Terminal with GNOME Console (formerly 42 - King’s Cross), and GNOME Screenshot with a tool built into the 43 - Shell. 44 </para> 45 </listitem> 46 <listitem> 47 <para> 48 - <literal>stdenv.mkDerivation</literal> now supports a 49 - self-referencing <literal>finalAttrs:</literal> parameter 50 - containing the final <literal>mkDerivation</literal> arguments 51 - including overrides. <literal>drv.overrideAttrs</literal> now 52 - supports two parameters 53 - <literal>finalAttrs: previousAttrs:</literal>. This allows 54 - packaging configuration to be overridden in a consistent 55 - manner by providing an alternative to 56 - <literal>rec {}</literal> syntax. 57 - </para> 58 - <para> 59 - Additionally, <literal>passthru</literal> can now reference 60 - <literal>finalAttrs.finalPackage</literal> containing the 61 - final package, including attributes such as the output paths 62 - and <literal>overrideAttrs</literal>. 63 - </para> 64 - <para> 65 - New language integrations can be simplified by overriding a 66 - <quote>prototype</quote> package containing the 67 - language-specific logic. This removes the need for a extra 68 - layer of overriding for the <quote>generic builder</quote> 69 - arguments, thus removing a usability problem and source of 70 - error. 71 - </para> 72 - </listitem> 73 - <listitem> 74 - <para> 75 - PHP 8.1 is now available 76 - </para> 77 - </listitem> 78 - <listitem> 79 - <para> 80 - Mattermost has been updated to extended support release 6.3, 81 - as the previously packaged extended support release 5.37 is 82 - <link xlink:href="https://docs.mattermost.com/upgrade/extended-support-release.html">reaching 83 - its end of life</link>. Migrations may take a while, see the 84 - <link xlink:href="https://docs.mattermost.com/install/self-managed-changelog.html#release-v6-3-extended-support-release">changelog</link> 85 - and 86 - <link xlink:href="https://docs.mattermost.com/upgrade/important-upgrade-notes.html">important 87 - upgrade notes</link>. 88 </para> 89 </listitem> 90 <listitem> ··· 102 </listitem> 103 <listitem> 104 <para> 105 - Pulseaudio has been upgraded to version 15.0 and now 106 - optionally 107 <link xlink:href="https://www.freedesktop.org/wiki/Software/PulseAudio/Notes/15.0/#supportforldacandaptxbluetoothcodecsplussbcxqsbcwithhigher-qualityparameters">supports 108 - additional Bluetooth audio codecs</link> like aptX or LDAC, 109 - with codec switching support being available in 110 <literal>pavucontrol</literal>. This feature is disabled by 111 - default but can be enabled by using 112 <literal>hardware.pulseaudio.package = pkgs.pulseaudioFull;</literal>. 113 - Existing 3rd party modules that provided similar 114 - functionality, like <literal>pulseaudio-modules-bt</literal> 115 - or <literal>pulseaudio-hsphfpd</literal> are deprecated and 116 - have been removed. 117 </para> 118 </listitem> 119 <listitem> ··· 123 </listitem> 124 <listitem> 125 <para> 126 - The new 127 - <link xlink:href="https://nixos.org/manual/nixpkgs/stable/#sec-postgresqlTestHook"><literal>postgresqlTestHook</literal></link> 128 - runs a PostgreSQL server for the duration of package checks. 129 - </para> 130 - </listitem> 131 - <listitem> 132 - <para> 133 - <link xlink:href="https://kops.sigs.k8s.io"><literal>kops</literal></link> 134 - defaults to 1.23.2, which will enable 135 - <link xlink:href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-instance-metadata-service.html">Instance 136 - Metadata Service Version 2</link> and require tokens on new 137 - clusters with Kubernetes &gt;= 1.22. This will increase 138 - security by default, but may break some types of workloads. 139 - The default behaviour for 140 - <literal>spec.kubeDNS.nodeLocalDNS.forwardToKubeDNS</literal> 141 - has changed from <literal>true</literal> to 142 - <literal>false</literal>. Cilium now has 143 - <literal>disable-cnp-status-updates: true</literal> by 144 - default. Set this to false if you rely on the 145 - CiliumNetworkPolicy status fields. Support for Kubernetes 146 - 1.17, the Lyft CNI, Weave CNI on Kubernetes &gt;= 1.23, CentOS 147 - 7 and 8, Debian 9, RHEL 7, and Ubuntu 16.05 (Xenial) has been 148 - removed. See the 149 - <link xlink:href="https://kops.sigs.k8s.io/releases/1.22-notes/">1.22 150 - release notes</link> and 151 - <link xlink:href="https://kops.sigs.k8s.io/releases/1.23-notes/">1.23 152 - release notes</link> for more details, including other 153 - significant changes. 154 - </para> 155 - </listitem> 156 - <listitem> 157 - <para> 158 Module authors can use 159 <literal>mkRenamedOptionModuleWith</literal> to automate the 160 deprecation cycle without annoying out-of-tree module authors ··· 175 <literal>pkgs.calamares</literal> and 176 <literal>pkgs.calamares-nixos-extensions</literal> to allow 177 users to easily install and set up NixOS with a GUI. 178 </para> 179 </listitem> 180 </itemizedlist> ··· 2048 </listitem> 2049 <listitem> 2050 <para> 2051 The 2052 <literal>writers.writePyPy2</literal>/<literal>writers.writePyPy3</literal> 2053 and corresponding ··· 2759 doesn’t have any effect if such an interface is matched by a 2760 <literal>.network-</literal>unit with a lower priority). In 2761 case of scripted networking, no behavior was changed. 2762 </para> 2763 </listitem> 2764 </itemizedlist>
··· 17 <itemizedlist> 18 <listitem> 19 <para> 20 + Nix has been updated from 2.3 to 2.8. This mainly brings 21 + experimental support for Flakes, but also marks the 22 + <literal>nix</literal> command as experimental which now has 23 + to be enabled via the configuration explicitly. For more 24 + information and instructions for upgrades, see the 25 + <link xlink:href="https://nixos.org/manual/nix/stable/release-notes/release-notes.html">Release 26 + Notes</link>. 27 </para> 28 </listitem> 29 <listitem> 30 <para> 31 + The <literal>firefox</literal> browser on 32 + <literal>x86_64-linux</literal> now makes use of 33 + profile-guided optimisation, resulting in a much more 34 + responsive browsing experience. 35 </para> 36 </listitem> 37 <listitem> 38 <para> 39 GNOME has been upgraded to 42. Please take a look at their 40 <link xlink:href="https://release.gnome.org/42/">Release 41 + Notes</link> for details. In particular, it replaces gedit 42 + with GNOME Text Editor, GNOME Terminal with GNOME Console 43 + (formerly King’s Cross) and GNOME Screenshot by a tool 44 + integrated into the Shell. 45 </para> 46 </listitem> 47 <listitem> 48 <para> 49 + PHP 8.1 is now available. 50 </para> 51 </listitem> 52 <listitem> ··· 64 </listitem> 65 <listitem> 66 <para> 67 + Pulseaudio has been updated to version 15.0 and now optionally 68 <link xlink:href="https://www.freedesktop.org/wiki/Software/PulseAudio/Notes/15.0/#supportforldacandaptxbluetoothcodecsplussbcxqsbcwithhigher-qualityparameters">supports 69 + additional Bluetooth audio codecs</link> such as aptX or LDAC, 70 + with codec switching available in 71 <literal>pavucontrol</literal>. This feature is disabled by 72 + default, but can be enabled with the option 73 <literal>hardware.pulseaudio.package = pkgs.pulseaudioFull;</literal>. 74 + Existing third-party modules that offered similar functions, 75 + such as <literal>pulseaudio-modules-bt</literal> or 76 + <literal>pulseaudio-hsphfpd</literal>, are obsolete and have 77 + been removed. 78 </para> 79 </listitem> 80 <listitem> ··· 84 </listitem> 85 <listitem> 86 <para> 87 Module authors can use 88 <literal>mkRenamedOptionModuleWith</literal> to automate the 89 deprecation cycle without annoying out-of-tree module authors ··· 104 <literal>pkgs.calamares</literal> and 105 <literal>pkgs.calamares-nixos-extensions</literal> to allow 106 users to easily install and set up NixOS with a GUI. 107 + </para> 108 + </listitem> 109 + <listitem> 110 + <para> 111 + <literal>security.acme.defaults</literal> has been added to 112 + simplify the configuration of settings for many certificates 113 + at once. This also opens up the option to use DNS-01 114 + validation when using <literal>enableACME</literal> web server 115 + virtual hosts (e.g. 116 + <literal>services.nginx.virtualHosts.*.enableACME</literal>). 117 </para> 118 </listitem> 119 </itemizedlist> ··· 1987 </listitem> 1988 <listitem> 1989 <para> 1990 + <link xlink:href="https://kops.sigs.k8s.io"><literal>kops</literal></link> 1991 + defaults to 1.23.2, which will enable 1992 + <link xlink:href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-instance-metadata-service.html">Instance 1993 + Metadata Service Version 2</link> and require tokens on new 1994 + clusters with Kubernetes &gt;= 1.22. This will increase 1995 + security by default, but may break some types of workloads. 1996 + The default behaviour for 1997 + <literal>spec.kubeDNS.nodeLocalDNS.forwardToKubeDNS</literal> 1998 + has changed from <literal>true</literal> to 1999 + <literal>false</literal>. Cilium now has 2000 + <literal>disable-cnp-status-updates: true</literal> by 2001 + default. Set this to false if you rely on the 2002 + CiliumNetworkPolicy status fields. Support for Kubernetes 2003 + 1.17, the Lyft CNI, Weave CNI on Kubernetes &gt;= 1.23, CentOS 2004 + 7 and 8, Debian 9, RHEL 7, and Ubuntu 16.05 (Xenial) has been 2005 + removed. See the 2006 + <link xlink:href="https://kops.sigs.k8s.io/releases/1.22-notes/">1.22 2007 + release notes</link> and 2008 + <link xlink:href="https://kops.sigs.k8s.io/releases/1.23-notes/">1.23 2009 + release notes</link> for more details, including other 2010 + significant changes. 2011 + </para> 2012 + </listitem> 2013 + <listitem> 2014 + <para> 2015 + Mattermost has been upgraded to extended support version 6.3 2016 + as the previously packaged extended support version 5.37 is 2017 + <link xlink:href="https://docs.mattermost.com/upgrade/extended-support-release.html">reaching 2018 + end of life</link>. Migration may take some time, see the 2019 + <link xlink:href="https://docs.mattermost.com/install/self-managed-changelog.html#release-v6-3-extended-support-release">changelog</link> 2020 + and 2021 + <link xlink:href="https://docs.mattermost.com/upgrade/important-upgrade-notes.html">important 2022 + upgrade notes</link>. 2023 + </para> 2024 + </listitem> 2025 + <listitem> 2026 + <para> 2027 The 2028 <literal>writers.writePyPy2</literal>/<literal>writers.writePyPy3</literal> 2029 and corresponding ··· 2735 doesn’t have any effect if such an interface is matched by a 2736 <literal>.network-</literal>unit with a lower priority). In 2737 case of scripted networking, no behavior was changed. 2738 + </para> 2739 + </listitem> 2740 + <listitem> 2741 + <para> 2742 + The new 2743 + <link xlink:href="https://nixos.org/manual/nixpkgs/stable/#sec-postgresqlTestHook"><literal>postgresqlTestHook</literal></link> 2744 + runs a PostgreSQL server for the duration of package checks. 2745 + </para> 2746 + </listitem> 2747 + <listitem> 2748 + <para> 2749 + <literal>stdenv.mkDerivation</literal> now supports a 2750 + self-referencing <literal>finalAttrs:</literal> parameter 2751 + containing the final <literal>mkDerivation</literal> arguments 2752 + including overrides. <literal>drv.overrideAttrs</literal> now 2753 + supports two parameters 2754 + <literal>finalAttrs: previousAttrs:</literal>. This allows 2755 + packaging configuration to be overridden in a consistent 2756 + manner by providing an alternative to 2757 + <literal>rec {}</literal> syntax. 2758 + </para> 2759 + <para> 2760 + Additionally, <literal>passthru</literal> can now reference 2761 + <literal>finalAttrs.finalPackage</literal> containing the 2762 + final package, including attributes such as the output paths 2763 + and <literal>overrideAttrs</literal>. 2764 + </para> 2765 + <para> 2766 + New language integrations can be simplified by overriding a 2767 + <quote>prototype</quote> package containing the 2768 + language-specific logic. This removes the need for a extra 2769 + layer of overriding for the <quote>generic builder</quote> 2770 + arguments, thus removing a usability problem and source of 2771 + error. 2772 </para> 2773 </listitem> 2774 </itemizedlist>
+46 -34
nixos/doc/manual/release-notes/rl-2205.section.md
··· 6 7 In addition to numerous new and upgraded packages, this release has the following highlights: 8 9 - - The `firefox` browser on `x86_64-linux` is now making use of 10 - profile-guided optimization resulting in a much more responsive 11 - browsing experience. 12 - 13 - - `security.acme.defaults` has been added to simplify configuring 14 - settings for many certificates at once. This also opens up the 15 - the option to use DNS-01 validation when using `enableACME` on 16 - web server virtual hosts (e.g. `services.nginx.virtualHosts.*.enableACME`). 17 - 18 - - GNOME has been upgraded to 42. Please take a look at their [Release Notes](https://release.gnome.org/42/) for details. Notably, it replaces gedit with GNOME Text Editor, GNOME Terminal with GNOME Console (formerly King’s Cross), and GNOME Screenshot with a tool built into the Shell. 19 - 20 - - `stdenv.mkDerivation` now supports a self-referencing `finalAttrs:` parameter 21 - containing the final `mkDerivation` arguments including overrides. 22 - `drv.overrideAttrs` now supports two parameters `finalAttrs: previousAttrs:`. 23 - This allows packaging configuration to be overridden in a consistent manner by 24 - providing an alternative to `rec {}` syntax. 25 - 26 - Additionally, `passthru` can now reference `finalAttrs.finalPackage` containing 27 - the final package, including attributes such as the output paths and 28 - `overrideAttrs`. 29 30 - New language integrations can be simplified by overriding a "prototype" 31 - package containing the language-specific logic. This removes the need for a 32 - extra layer of overriding for the "generic builder" arguments, thus removing a 33 - usability problem and source of error. 34 35 - - PHP 8.1 is now available 36 37 - - Mattermost has been updated to extended support release 6.3, as the previously packaged extended support release 5.37 is [reaching its end of life](https://docs.mattermost.com/upgrade/extended-support-release.html). 38 - Migrations may take a while, see the [changelog](https://docs.mattermost.com/install/self-managed-changelog.html#release-v6-3-extended-support-release) 39 - and [important upgrade notes](https://docs.mattermost.com/upgrade/important-upgrade-notes.html). 40 41 - systemd services can now set [systemd.services.\<name\>.reloadTriggers](#opt-systemd.services) instead of `reloadIfChanged` for a more granular distinction between reloads and restarts. 42 43 - Systemd has been upgraded to the version 250. 44 45 - - Pulseaudio has been upgraded to version 15.0 and now optionally [supports additional Bluetooth audio codecs](https://www.freedesktop.org/wiki/Software/PulseAudio/Notes/15.0/#supportforldacandaptxbluetoothcodecsplussbcxqsbcwithhigher-qualityparameters) like aptX or LDAC, with codec switching support being available in `pavucontrol`. This feature is disabled by default but can be enabled by using `hardware.pulseaudio.package = pkgs.pulseaudioFull;`. 46 - Existing 3rd party modules that provided similar functionality, like `pulseaudio-modules-bt` or `pulseaudio-hsphfpd` are deprecated and have been removed. 47 48 - PostgreSQL now defaults to major version 14. 49 50 - - The new [`postgresqlTestHook`](https://nixos.org/manual/nixpkgs/stable/#sec-postgresqlTestHook) runs a PostgreSQL server for the duration of package checks. 51 - 52 - - [`kops`](https://kops.sigs.k8s.io) defaults to 1.23.2, which will enable [Instance Metadata Service Version 2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-instance-metadata-service.html) and require tokens on new clusters with Kubernetes >= 1.22. This will increase security by default, but may break some types of workloads. The default behaviour for `spec.kubeDNS.nodeLocalDNS.forwardToKubeDNS` has changed from `true` to `false`. Cilium now has `disable-cnp-status-updates: true` by default. Set this to false if you rely on the CiliumNetworkPolicy status fields. Support for Kubernetes 1.17, the Lyft CNI, Weave CNI on Kubernetes >= 1.23, CentOS 7 and 8, Debian 9, RHEL 7, and Ubuntu 16.05 (Xenial) has been removed. See the [1.22 release notes](https://kops.sigs.k8s.io/releases/1.22-notes/) and [1.23 release notes](https://kops.sigs.k8s.io/releases/1.23-notes/) for more details, including other significant changes. 53 - 54 - Module authors can use `mkRenamedOptionModuleWith` to automate the deprecation cycle without annoying out-of-tree module authors and their users. 55 56 - The default GHC version has been updated from 8.10.7 to 9.0.2. `pkgs.haskellPackages` and `pkgs.ghc` will now use this version by default. 57 58 - The GNOME and Plasma installation CDs now use `pkgs.calamares` and `pkgs.calamares-nixos-extensions` to allow users to easily install and set up NixOS with a GUI. 59 60 ## New Services {#sec-release-22.05-new-services} 61 62 - [1password](https://1password.com/), command-lines and graphic interface for 1Password. Available as [programs._1password](#opt-programs._1password.enable) and [programs._1password-gui](#opt-programs._1password.enable). ··· 737 - The configuration portion of the `nix-daemon` module has been reworked and exposed as [nix.settings](options.html#opt-nix-settings): 738 * Legacy options have been mapped to the corresponding options under under [nix.settings](options.html#opt-nix.settings) and will be deprecated when NixOS 21.11 reaches end of life. 739 * [nix.buildMachines.publicHostKey](options.html#opt-nix.buildMachines.publicHostKey) has been added. 740 741 - The `writers.writePyPy2`/`writers.writePyPy3` and corresponding `writers.writePyPy2Bin`/`writers.writePyPy3Bin` convenience functions to create executable Python 2/3 scripts using the PyPy interpreter were added. 742 ··· 953 or `wl*` with priority 99 (which means that it doesn't have any effect if such an interface is matched 954 by a `.network-`unit with a lower priority). In case of scripted networking, no behavior 955 was changed. 956 957 <!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->
··· 6 7 In addition to numerous new and upgraded packages, this release has the following highlights: 8 9 + - Nix has been updated from 2.3 to 2.8. This mainly brings experimental support 10 + for Flakes, but also marks the `nix` command as experimental which now has to be enabled via the configuration explicitly. For more 11 + information and instructions for upgrades, see the [Release Notes](https://nixos.org/manual/nix/stable/release-notes/release-notes.html). 12 13 + - The `firefox` browser on `x86_64-linux` now makes use of profile-guided 14 + optimisation, resulting in a much more responsive browsing experience. 15 16 + - GNOME has been upgraded to 42. Please take a look at their [Release 17 + Notes](https://release.gnome.org/42/) for details. In particular, it replaces 18 + gedit with GNOME Text Editor, GNOME Terminal with GNOME Console (formerly 19 + King's Cross) and GNOME Screenshot by a tool integrated into the Shell. 20 21 + - PHP 8.1 is now available. 22 23 - systemd services can now set [systemd.services.\<name\>.reloadTriggers](#opt-systemd.services) instead of `reloadIfChanged` for a more granular distinction between reloads and restarts. 24 25 - Systemd has been upgraded to the version 250. 26 27 + - Pulseaudio has been updated to version 15.0 and now optionally 28 + [supports additional Bluetooth audio codecs](https://www.freedesktop.org/wiki/Software/PulseAudio/Notes/15.0/#supportforldacandaptxbluetoothcodecsplussbcxqsbcwithhigher-qualityparameters) 29 + such as aptX or LDAC, with codec switching available in `pavucontrol`. This 30 + feature is disabled by default, but can be enabled with the option 31 + `hardware.pulseaudio.package = pkgs.pulseaudioFull;`. Existing third-party 32 + modules that offered similar functions, such as `pulseaudio-modules-bt` or 33 + `pulseaudio-hsphfpd`, are obsolete and have been removed. 34 35 - PostgreSQL now defaults to major version 14. 36 37 - Module authors can use `mkRenamedOptionModuleWith` to automate the deprecation cycle without annoying out-of-tree module authors and their users. 38 39 - The default GHC version has been updated from 8.10.7 to 9.0.2. `pkgs.haskellPackages` and `pkgs.ghc` will now use this version by default. 40 41 - The GNOME and Plasma installation CDs now use `pkgs.calamares` and `pkgs.calamares-nixos-extensions` to allow users to easily install and set up NixOS with a GUI. 42 43 + - `security.acme.defaults` has been added to simplify the configuration of 44 + settings for many certificates at once. This also opens up the option to use 45 + DNS-01 validation when using `enableACME` web server virtual hosts (e.g. 46 + `services.nginx.virtualHosts.*.enableACME`). 47 + 48 ## New Services {#sec-release-22.05-new-services} 49 50 - [1password](https://1password.com/), command-lines and graphic interface for 1Password. Available as [programs._1password](#opt-programs._1password.enable) and [programs._1password-gui](#opt-programs._1password.enable). ··· 725 - The configuration portion of the `nix-daemon` module has been reworked and exposed as [nix.settings](options.html#opt-nix-settings): 726 * Legacy options have been mapped to the corresponding options under under [nix.settings](options.html#opt-nix.settings) and will be deprecated when NixOS 21.11 reaches end of life. 727 * [nix.buildMachines.publicHostKey](options.html#opt-nix.buildMachines.publicHostKey) has been added. 728 + 729 + - [`kops`](https://kops.sigs.k8s.io) defaults to 1.23.2, which will enable [Instance Metadata Service Version 2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-instance-metadata-service.html) and require tokens on new clusters with Kubernetes >= 1.22. This will increase security by default, but may break some types of workloads. The default behaviour for `spec.kubeDNS.nodeLocalDNS.forwardToKubeDNS` has changed from `true` to `false`. Cilium now has `disable-cnp-status-updates: true` by default. Set this to false if you rely on the CiliumNetworkPolicy status fields. Support for Kubernetes 1.17, the Lyft CNI, Weave CNI on Kubernetes >= 1.23, CentOS 7 and 8, Debian 9, RHEL 7, and Ubuntu 16.05 (Xenial) has been removed. See the [1.22 release notes](https://kops.sigs.k8s.io/releases/1.22-notes/) and [1.23 release notes](https://kops.sigs.k8s.io/releases/1.23-notes/) for more details, including other significant changes. 730 + 731 + - Mattermost has been upgraded to extended support version 6.3 as the previously 732 + packaged extended support version 5.37 is [reaching end of life](https://docs.mattermost.com/upgrade/extended-support-release.html). 733 + Migration may take some time, see the [changelog](https://docs.mattermost.com/install/self-managed-changelog.html#release-v6-3-extended-support-release) 734 + and [important upgrade notes](https://docs.mattermost.com/upgrade/important-upgrade-notes.html). 735 736 - The `writers.writePyPy2`/`writers.writePyPy3` and corresponding `writers.writePyPy2Bin`/`writers.writePyPy3Bin` convenience functions to create executable Python 2/3 scripts using the PyPy interpreter were added. 737 ··· 948 or `wl*` with priority 99 (which means that it doesn't have any effect if such an interface is matched 949 by a `.network-`unit with a lower priority). In case of scripted networking, no behavior 950 was changed. 951 + 952 + - The new [`postgresqlTestHook`](https://nixos.org/manual/nixpkgs/stable/#sec-postgresqlTestHook) runs a PostgreSQL server for the duration of package checks. 953 + 954 + - `stdenv.mkDerivation` now supports a self-referencing `finalAttrs:` parameter 955 + containing the final `mkDerivation` arguments including overrides. 956 + `drv.overrideAttrs` now supports two parameters `finalAttrs: previousAttrs:`. 957 + This allows packaging configuration to be overridden in a consistent manner by 958 + providing an alternative to `rec {}` syntax. 959 + 960 + Additionally, `passthru` can now reference `finalAttrs.finalPackage` containing 961 + the final package, including attributes such as the output paths and 962 + `overrideAttrs`. 963 + 964 + New language integrations can be simplified by overriding a "prototype" 965 + package containing the language-specific logic. This removes the need for a 966 + extra layer of overriding for the "generic builder" arguments, thus removing a 967 + usability problem and source of error. 968 969 <!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->