From 8e21088e87eb03b2e1a1eb838f011c1f44f6da22 Mon Sep 17 00:00:00 2001 From: Petr Bokoc Date: Mar 12 2020 19:39:06 +0000 Subject: [PATCH 1/52] Branch for F32 --- diff --git a/antora.yml b/antora.yml index d70d031..ff37a1c 100644 --- a/antora.yml +++ b/antora.yml @@ -1,5 +1,5 @@ --- name: fedora -version: rawhide +version: f32 # Navigation is in the main 'fedora' component: # https://pagure.io/fedora-docs/release-docs-home diff --git a/modules/release-notes/nav.adoc b/modules/release-notes/nav.adoc index 0c2ffab..32e2a24 100644 --- a/modules/release-notes/nav.adoc +++ b/modules/release-notes/nav.adoc @@ -34,5 +34,5 @@ include::{partialsdir}/entities.adoc[] *** xref:developers/Development_Rust.adoc[Rust] *** xref:developers/Development_Web.adoc[Web Development] //CHANGE THIS WITH A NEW RELEASE -** link:https://fedoraproject.org/wiki/Common_F30_bugs[Common Bugs] +** link:https://fedoraproject.org/wiki/Common_F32_bugs[Common Bugs] ** xref:Revision_History.adoc[Revision History] diff --git a/modules/release-notes/pages/_partials/entities.adoc b/modules/release-notes/pages/_partials/entities.adoc index 2fef569..a70b240 100644 --- a/modules/release-notes/pages/_partials/entities.adoc +++ b/modules/release-notes/pages/_partials/entities.adoc @@ -1,8 +1,8 @@ :BOOKID: release-notes :BZURL: https://pagure.io/fedora-docs/release-notes/issues -:COMMONBUGS_URL: https://fedoraproject.org/wiki/Common_F31_bugs +:COMMONBUGS_URL: https://fedoraproject.org/wiki/Common_F32_bugs :HOLDER: Fedora Project Contributors -:PREVVER: 30 +:PREVVER: 31 :PRODUCT: Fedora Documentation -:PRODVER: rawhide -:YEAR: 2019 +:PRODVER: 32 +:YEAR: 2020 diff --git a/site.yml b/site.yml index addab67..f4d43ac 100644 --- a/site.yml +++ b/site.yml @@ -6,7 +6,7 @@ content: - url: . branches: HEAD - url: https://pagure.io/fedora-docs/release-docs-home.git - branches: master + branches: f32 ui: bundle: url: https://asamalik.fedorapeople.org/ui-bundle.zip From cf154b9c26aefc4aff53c033a48cb37049064304 Mon Sep 17 00:00:00 2001 From: Jaroslav Klech Date: Mar 20 2020 18:08:34 +0000 Subject: [PATCH 2/52] Describes issue #398 --- diff --git a/modules/release-notes/pages/developers/Development_Tools.adoc b/modules/release-notes/pages/developers/Development_Tools.adoc index 5b17332..7caaa34 100644 --- a/modules/release-notes/pages/developers/Development_Tools.adoc +++ b/modules/release-notes/pages/developers/Development_Tools.adoc @@ -3,3 +3,12 @@ include::{partialsdir}/entities.adoc[] [[sect-development-tools]] = Development Tools + +== NeuroFedora lab + +A new lab called NeuroFedora has been added to the suite. This change provides a pre-packaged, ready-to-install lab image with Free and Open Source Software (FOSS) to streamline neuroscience work. The change also aims to encourage more users to use Fedora in their scientific efforts. + +For more information about NeuroFedora, see the link:https://docs.fedoraproject.org/en-US/neurofedora/overview/[upstream documentation]. + +For a list of Fedora labs, see the link:https://labs.fedoraproject.org/[Functional bundles for Fedora] page. + From 3baee5ae4e99083bf4de7ce5f7c139fdd892b4d6 Mon Sep 17 00:00:00 2001 From: Jaroslav Klech Date: Mar 25 2020 07:38:23 +0000 Subject: [PATCH 3/52] Applies sme feedback --- diff --git a/modules/release-notes/pages/developers/Development_Tools.adoc b/modules/release-notes/pages/developers/Development_Tools.adoc index 7caaa34..dc20b56 100644 --- a/modules/release-notes/pages/developers/Development_Tools.adoc +++ b/modules/release-notes/pages/developers/Development_Tools.adoc @@ -4,11 +4,11 @@ include::{partialsdir}/entities.adoc[] [[sect-development-tools]] = Development Tools -== NeuroFedora lab +== Comp-NeuroFedora lab -A new lab called NeuroFedora has been added to the suite. This change provides a pre-packaged, ready-to-install lab image with Free and Open Source Software (FOSS) to streamline neuroscience work. The change also aims to encourage more users to use Fedora in their scientific efforts. +A new lab called Comp-NeuroFedora has been added to the suite. This change provides a pre-packaged, ready-to-install lab image with Free and Open Source Software (FOSS) to streamline computational neuroscience work. The change also aims to encourage more users to use Fedora in their scientific efforts. -For more information about NeuroFedora, see the link:https://docs.fedoraproject.org/en-US/neurofedora/overview/[upstream documentation]. +For more information about Comp-NeuroFedora, see the link:https://neuro.fedoraproject.org[upstream documentation]. For a list of Fedora labs, see the link:https://labs.fedoraproject.org/[Functional bundles for Fedora] page. From 1ee8a4b906bc02141e09717b6c605d6c61dcb2ee Mon Sep 17 00:00:00 2001 From: Jaroslav Klech Date: Mar 25 2020 17:26:58 +0000 Subject: [PATCH 4/52] Describes issue #415 --- diff --git a/modules/release-notes/pages/sysadmin/System_Utilities.adoc b/modules/release-notes/pages/sysadmin/System_Utilities.adoc index 2f57f6e..cce106c 100644 --- a/modules/release-notes/pages/sysadmin/System_Utilities.adoc +++ b/modules/release-notes/pages/sysadmin/System_Utilities.adoc @@ -3,3 +3,9 @@ include::{partialsdir}/entities.adoc[] [[sect-system-utilities]] = System Utilities + +== Bazaar has been replaced by Breezy + +Fedora 32 introduces the `breezy` package for a version control system that obsoletes the `bzr` and `git-remote-bzr` packages related to the Bazaar version control system. As a result, users who install `bzr` will receive `breezy` instead. The `bzr` command (Bazaar) will be provided as a symbolic link to the `brz` command (Breezy). + + \ No newline at end of file From df9cfa610e65655c40c3032c147bf13409bfa839 Mon Sep 17 00:00:00 2001 From: Jaroslav Klech Date: Mar 25 2020 17:26:58 +0000 Subject: [PATCH 5/52] Applies SME feedback --- diff --git a/modules/release-notes/pages/sysadmin/System_Utilities.adoc b/modules/release-notes/pages/sysadmin/System_Utilities.adoc index cce106c..1573e27 100644 --- a/modules/release-notes/pages/sysadmin/System_Utilities.adoc +++ b/modules/release-notes/pages/sysadmin/System_Utilities.adoc @@ -6,6 +6,6 @@ include::{partialsdir}/entities.adoc[] == Bazaar has been replaced by Breezy -Fedora 32 introduces the `breezy` package for a version control system that obsoletes the `bzr` and `git-remote-bzr` packages related to the Bazaar version control system. As a result, users who install `bzr` will receive `breezy` instead. The `bzr` command (Bazaar) will be provided as a symbolic link to the `brz` command (Breezy). +In Fedora 32, the `breezy` package for a version control system obsoletes the `bzr` and `git-remote-bzr` packages related to the Bazaar version control system. As a result, users who install `bzr` will receive `breezy` instead. The `bzr` command (Bazaar) will be provided as a symbolic link to the `brz` command (Breezy). \ No newline at end of file From 7715130471b307d90ef7800503fc3d976a95a009 Mon Sep 17 00:00:00 2001 From: Jaroslav Klech Date: Mar 26 2020 09:51:00 +0000 Subject: [PATCH 6/52] Describes issue #391 --- diff --git a/modules/release-notes/pages/sysadmin/System_Utilities.adoc b/modules/release-notes/pages/sysadmin/System_Utilities.adoc index 1573e27..4752970 100644 --- a/modules/release-notes/pages/sysadmin/System_Utilities.adoc +++ b/modules/release-notes/pages/sysadmin/System_Utilities.adoc @@ -8,4 +8,21 @@ include::{partialsdir}/entities.adoc[] In Fedora 32, the `breezy` package for a version control system obsoletes the `bzr` and `git-remote-bzr` packages related to the Bazaar version control system. As a result, users who install `bzr` will receive `breezy` instead. The `bzr` command (Bazaar) will be provided as a symbolic link to the `brz` command (Breezy). - \ No newline at end of file +== MariaDB 10.4 + +Fedora 32 provides the `mariadb` package 10.4, up from version 10.3 in Fedora 31. + +Notable changes include: ++ +* Possibility to use more than one authentication plugins for each user account. ++ +* Support for user password expiry. ++ +* Implementation of the optimizer trace. ++ +* Performance increase in Unicode collations. ++ +* Various changes in syntax, variables and the InnoDB storage engine. + +For full information about this release, see the link:https://mariadb.com/kb/en/changes-improvements-in-mariadb-104/[official MariaDB release notes]. + From e4698425184cf74cd3c85a454c10dc2d65cd2971 Mon Sep 17 00:00:00 2001 From: Shweta Date: Mar 27 2020 14:14:19 +0000 Subject: [PATCH 7/52] RN for https://pagure.io/fedora-docs/release-notes/issue/442 --- diff --git a/pages/developers/Development_Python.adoc b/pages/developers/Development_Python.adoc new file mode 100644 index 0000000..062f129 --- /dev/null +++ b/pages/developers/Development_Python.adoc @@ -0,0 +1,8 @@ +== Deprecated support + +=== Deprecated support for Nose + +Support for Nose is now deprecated. However for now, the python3-nose package continues to be available in the Fedora repositories. +No specific release it yet targeted to remove the python3-nose package. + +Users and packagers of dependent packages are encouraged to switch to python3-pytest or python3-nose2. From b728d9cf3fe6ba960309629ea15b40ff9f6b7785 Mon Sep 17 00:00:00 2001 From: Jaroslav Klech Date: Apr 01 2020 14:36:03 +0000 Subject: [PATCH 8/52] Adds SME feedback --- diff --git a/modules/release-notes/pages/sysadmin/System_Utilities.adoc b/modules/release-notes/pages/sysadmin/System_Utilities.adoc index 4752970..0a726c8 100644 --- a/modules/release-notes/pages/sysadmin/System_Utilities.adoc +++ b/modules/release-notes/pages/sysadmin/System_Utilities.adoc @@ -14,6 +14,8 @@ Fedora 32 provides the `mariadb` package 10.4, up from version 10.3 in Fedora 31 Notable changes include: + +* The `root` and `mysql` users can log in without a password using the `unix_socket` authentication plugin. ++ * Possibility to use more than one authentication plugins for each user account. + * Support for user password expiry. From d88309dcbe8a674fe9e8083d6a1713b753027530 Mon Sep 17 00:00:00 2001 From: Jaroslav Klech Date: Apr 02 2020 11:48:11 +0000 Subject: [PATCH 9/52] Describes issue #433 --- diff --git a/modules/release-notes/pages/sysadmin/Distribution.adoc b/modules/release-notes/pages/sysadmin/Distribution.adoc index efbfd5d..f66d3af 100644 --- a/modules/release-notes/pages/sysadmin/Distribution.adoc +++ b/modules/release-notes/pages/sysadmin/Distribution.adoc @@ -3,3 +3,10 @@ include::{partialsdir}/entities.adoc[] [[select-distribution]] = Distribution-wide Changes + +== Provides tag was moved to langpacks package + +This change aims to provide more reliable, predictable, and consistent fonts installation as well as better user experience around font dependencies. To achieve this, the change moves the `Provides: font(:lang=*)` tags into the `langpacks-core-font-*` sub-packages of the `langpacks` package. The sub-packages already obtain the default font, locale and input-method for each language. As a result, whenever a missing glyph font installation is requested, the `langpacks-core-font-` package will be installed and will get the default font using the existing `Requires:` tag. + + + From db09a0dfb937e782bd68585fd36eb64ff9f3c47d Mon Sep 17 00:00:00 2001 From: Petr Bokoc Date: Apr 07 2020 14:57:30 +0000 Subject: [PATCH 10/52] Merge #458 `Describes issue #391` --- diff --git a/modules/release-notes/pages/sysadmin/System_Utilities.adoc b/modules/release-notes/pages/sysadmin/System_Utilities.adoc index 1573e27..0a726c8 100644 --- a/modules/release-notes/pages/sysadmin/System_Utilities.adoc +++ b/modules/release-notes/pages/sysadmin/System_Utilities.adoc @@ -8,4 +8,23 @@ include::{partialsdir}/entities.adoc[] In Fedora 32, the `breezy` package for a version control system obsoletes the `bzr` and `git-remote-bzr` packages related to the Bazaar version control system. As a result, users who install `bzr` will receive `breezy` instead. The `bzr` command (Bazaar) will be provided as a symbolic link to the `brz` command (Breezy). - \ No newline at end of file +== MariaDB 10.4 + +Fedora 32 provides the `mariadb` package 10.4, up from version 10.3 in Fedora 31. + +Notable changes include: ++ +* The `root` and `mysql` users can log in without a password using the `unix_socket` authentication plugin. ++ +* Possibility to use more than one authentication plugins for each user account. ++ +* Support for user password expiry. ++ +* Implementation of the optimizer trace. ++ +* Performance increase in Unicode collations. ++ +* Various changes in syntax, variables and the InnoDB storage engine. + +For full information about this release, see the link:https://mariadb.com/kb/en/changes-improvements-in-mariadb-104/[official MariaDB release notes]. + From 7978844bd42c05a8a69673bd8b4ac5bb8936be1e Mon Sep 17 00:00:00 2001 From: Shweta Date: Apr 07 2020 15:19:46 +0000 Subject: [PATCH 11/52] RN for https://pagure.io/fedora-docs/release-notes/issue/426 --- diff --git a/pages/sysadmin/Distribution.adoc b/pages/sysadmin/Distribution.adoc new file mode 100644 index 0000000..84d3795 --- /dev/null +++ b/pages/sysadmin/Distribution.adoc @@ -0,0 +1,10 @@ +== Packaging changes in clang-libs package + +The clang-libs package now does not include the individual component libraries like libclangBasic.so, libclangAST.so and so on. +Packages that depend on the clang libraries are now linked to libclang-cpp.so. + +As a result of this change, + +* There is an improved stability in Fedora and application start-up time. +* End-users who develop applications using clang libraries must update their applications to use libclang-cpp.so instead of the individual component libraries. +However, the end-users using Fedora packages that depend on clang libraries do not have any impact of this change. From 6e493ffc5e8ce5cd383a40848359c804fd3865c6 Mon Sep 17 00:00:00 2001 From: Shweta Date: Apr 07 2020 15:19:46 +0000 Subject: [PATCH 12/52] RN for https://pagure.io/fedora-docs/release-notes/issue/416 --- diff --git a/pages/sysadmin/Distribution.adoc b/pages/sysadmin/Distribution.adoc index 84d3795..8ee3df3 100644 --- a/pages/sysadmin/Distribution.adoc +++ b/pages/sysadmin/Distribution.adoc @@ -8,3 +8,10 @@ As a result of this change, * There is an improved stability in Fedora and application start-up time. * End-users who develop applications using clang libraries must update their applications to use libclang-cpp.so instead of the individual component libraries. However, the end-users using Fedora packages that depend on clang libraries do not have any impact of this change. + + +== Added support for AArch64 and ppc64le packages with extended availability of FPC-dependent packages + +An updated version (3.2.0) of Free Pascal Compiler is now available with Fedora 32. +With the updated Free Pascal Compiler you can now build the AArch64 and ppc64le packages. +Also, the Free Pascal Compiler now supports new architectures. As a result, the programs that are compiled using FPC are available to run on more architectures that Fedora supports. From af989c4e66182641bd399629d6c51899617ac5c8 Mon Sep 17 00:00:00 2001 From: Oğuz Ersen Date: Apr 07 2020 15:31:52 +0000 Subject: [PATCH 13/52] modules/release-notes/pages/welcome/Hardware_Overview.adoc: typo fix --- diff --git a/modules/release-notes/pages/welcome/Hardware_Overview.adoc b/modules/release-notes/pages/welcome/Hardware_Overview.adoc index 9434838..fcde4d1 100644 --- a/modules/release-notes/pages/welcome/Hardware_Overview.adoc +++ b/modules/release-notes/pages/welcome/Hardware_Overview.adoc @@ -16,7 +16,7 @@ The figures below are a recommended minimum for the default installation. Your r * 10GB unallocated drive space -Users of system equipped with the minimum memory of 1GB may want to consider Fedora Spins with less ressource intense Desktop Environments +Users of system equipped with the minimum memory of 1GB may want to consider Fedora Spins with less resource intense Desktop Environments .Low memory installations [NOTE] From 1d316d6f5c4179d09b1dafcca1cd2e8c48754071 Mon Sep 17 00:00:00 2001 From: Petr Bokoc Date: Apr 07 2020 15:32:50 +0000 Subject: [PATCH 14/52] Merge #466 `#433 Move fonts language Provides to Langpacks` --- diff --git a/modules/release-notes/pages/sysadmin/Distribution.adoc b/modules/release-notes/pages/sysadmin/Distribution.adoc index efbfd5d..f66d3af 100644 --- a/modules/release-notes/pages/sysadmin/Distribution.adoc +++ b/modules/release-notes/pages/sysadmin/Distribution.adoc @@ -3,3 +3,10 @@ include::{partialsdir}/entities.adoc[] [[select-distribution]] = Distribution-wide Changes + +== Provides tag was moved to langpacks package + +This change aims to provide more reliable, predictable, and consistent fonts installation as well as better user experience around font dependencies. To achieve this, the change moves the `Provides: font(:lang=*)` tags into the `langpacks-core-font-*` sub-packages of the `langpacks` package. The sub-packages already obtain the default font, locale and input-method for each language. As a result, whenever a missing glyph font installation is requested, the `langpacks-core-font-` package will be installed and will get the default font using the existing `Requires:` tag. + + + From 43396122360a3e14aea4388190faa3d07549d94d Mon Sep 17 00:00:00 2001 From: Jaroslav Klech Date: Apr 07 2020 15:38:33 +0000 Subject: [PATCH 15/52] Describes issue #401 --- diff --git a/modules/release-notes/pages/developers/Development_Web.adoc b/modules/release-notes/pages/developers/Development_Web.adoc index 7b8324d..b7d7c88 100644 --- a/modules/release-notes/pages/developers/Development_Web.adoc +++ b/modules/release-notes/pages/developers/Development_Web.adoc @@ -3,3 +3,22 @@ include::{partialsdir}/entities.adoc[] [[sect-web-development]] = Web Development + +== Django 3.0 + +The `python-django` package has been updated to version 3.0 in Fedora 32. Notable changes in this version include: ++ +* ASGI support ++ +* MariaDB support ++ +* Exclusion constraints on PostgreSQL ++ +* Enumerations for model field choices ++ +* Various minor features ++ +* Several deprecations and removals + +See the link:https://docs.djangoproject.com/en/3.0/releases/3.0/[upstream release notes] for full information about this release. + From 0cae26f974ddbf574cd7a40efccca55d48b0ab1b Mon Sep 17 00:00:00 2001 From: Jaroslav Klech Date: Apr 07 2020 15:38:33 +0000 Subject: [PATCH 16/52] Applies SME feedback --- diff --git a/modules/release-notes/pages/developers/Development_Web.adoc b/modules/release-notes/pages/developers/Development_Web.adoc index b7d7c88..1c2e32d 100644 --- a/modules/release-notes/pages/developers/Development_Web.adoc +++ b/modules/release-notes/pages/developers/Development_Web.adoc @@ -10,13 +10,13 @@ The `python-django` package has been updated to version 3.0 in Fedora 32. Notabl + * ASGI support + -* MariaDB support +* Official MariaDB support + * Exclusion constraints on PostgreSQL + * Enumerations for model field choices + -* Various minor features +* Various new minor features + * Several deprecations and removals From 60fa7a04a01d91272f7bfcf43f153323580c25c5 Mon Sep 17 00:00:00 2001 From: roypen Date: Apr 07 2020 15:40:56 +0000 Subject: [PATCH 17/52] Created file with release notes for Binutils 2.33. Added menu entry with link to development section. Issue #411 Signed-off-by: roypen --- diff --git a/modules/release-notes/nav.adoc b/modules/release-notes/nav.adoc index 32e2a24..60bb186 100644 --- a/modules/release-notes/nav.adoc +++ b/modules/release-notes/nav.adoc @@ -24,6 +24,7 @@ include::{partialsdir}/entities.adoc[] *** xref:developers/Development_Tools.adoc[Development Tools] *** xref:developers/Development_C.adoc[C] *** xref:developers/Containers.adoc[Containers] +*** xref:developers/Development_Binutils.adoc[Binutils] *** xref:developers/Development_Boost.adoc[Boost] *** xref:developers/Development_D.adoc[D] *** xref:developers/Development_Erlang.adoc[Erlang] diff --git a/modules/release-notes/pages/developers/Development_Binutils.adoc b/modules/release-notes/pages/developers/Development_Binutils.adoc new file mode 100644 index 0000000..0ce84cd --- /dev/null +++ b/modules/release-notes/pages/developers/Development_Binutils.adoc @@ -0,0 +1,78 @@ + +include::{partialsdir}/entities.adoc[] + +[[sect-binutils]] + + += Binutils +[[back]] +== GNU Binutils 2.33 +Fedora 32 comes with GNU Binutils based on 2.33.1 release. This release brings a lot of bug fixes, improvements to the linker, as well as support for the CTF debug format. + +=== New Features and Bug Fixes: + + +== Assembler: + + * Adds support for the Arm Scalable Vector Extension version 2 + (SVE2) instructions, the Arm Transactional Memory Extension (TME) + instructions and the Armv8.1-M Mainline and M-profile Vector + Extension (MVE) instructions. + + * Adds support for the Arm Cortex-A76AE, Cortex-A77 and Cortex-M35P + processors and the AArch64 Cortex-A34, Cortex-A65, Cortex-A65AE, + Cortex-A76AE, and Cortex-A77 processors. + + * Adds a .float16 directive for both Arm and AArch64 to allow + encoding of 16-bit floating point literals. + + * For MIPS, Add -m[no-]fix-loongson3-llsc option to fix (or not) + Loongson3 LLSC Errata. Add a --enable-mips-fix-loongson3-llsc=[yes|no] + configure time option to set the default behavior. Set the default + if the configure option is not used to "no". + + +== Linker: + + * The Cortex-A53 Erratum 843419 workaround now supports a choice of + which workaround to use. The option --fix-cortex-a53-843419 now + takes an optional argument --fix-cortex-a53-843419[=full|adr|adrp] + which can be used to force a particular workaround to be used. + See --help for AArch64 for more details. + + * Add support for GNU_PROPERTY_AARCH64_FEATURE_1_BTI and + GNU_PROPERTY_AARCH64_FEATURE_1_PAC in ELF GNU program properties + in the AArch64 ELF linker. + + * Add -z force-bti for AArch64 to enable GNU_PROPERTY_AARCH64_FEATURE_1_BTI + on output while warning about missing GNU_PROPERTY_AARCH64_FEATURE_1_BTI + on inputs and use PLTs protected with BTI. + + * Add -z pac-plt for AArch64 to pick PAC enabled PLTs. + +== Utilities: + + * Add `--source-comment[=]` option to objdump which if present, + provides a prefix to source code lines displayed in a disassembly. + + * Add `--set-section-alignment` = + option to objcopy to allow the changing of section alignments. + + * Add `--verilog-data-width` option to objcopy for verilog targets to + control width of data elements in verilog hex format. + + * The separate debug info file options of readelf (--debug-dump=links + and --debug-dump=follow) and objdump (--dwarf=links and + --dwarf=follow-links) will now display and/or follow multiple + links if more than one are present in a file. (This usually + happens when gcc's -gsplit-dwarf option is used). + + + * Add support for dumping types encoded in the Compact Type Format + to objdump and readelf. + +See the link:https://lists.gnu.org/archive/html/info-gnu/2019-10/msg00006.html[upstream release announcement] for more detailed information about this release. + +<> + + From d61a1e79818c888aa56cac2a379ed0e4f2d73fa0 Mon Sep 17 00:00:00 2001 From: Lukas Piekarski Date: Apr 07 2020 15:40:56 +0000 Subject: [PATCH 18/52] Update modules/release-notes/pages/developers/Development_Binutils.adoc --- diff --git a/modules/release-notes/pages/developers/Development_Binutils.adoc b/modules/release-notes/pages/developers/Development_Binutils.adoc index 0ce84cd..7d42292 100644 --- a/modules/release-notes/pages/developers/Development_Binutils.adoc +++ b/modules/release-notes/pages/developers/Development_Binutils.adoc @@ -1,18 +1,18 @@ - include::{partialsdir}/entities.adoc[] [[sect-binutils]] = Binutils + [[back]] + == GNU Binutils 2.33 Fedora 32 comes with GNU Binutils based on 2.33.1 release. This release brings a lot of bug fixes, improvements to the linker, as well as support for the CTF debug format. === New Features and Bug Fixes: - -== Assembler: +==== Assembler: * Adds support for the Arm Scalable Vector Extension version 2 (SVE2) instructions, the Arm Transactional Memory Extension (TME) @@ -23,49 +23,49 @@ Fedora 32 comes with GNU Binutils based on 2.33.1 release. This release brings a processors and the AArch64 Cortex-A34, Cortex-A65, Cortex-A65AE, Cortex-A76AE, and Cortex-A77 processors. - * Adds a .float16 directive for both Arm and AArch64 to allow + * Adds a `.float16` directive for both Arm and AArch64 to allow encoding of 16-bit floating point literals. - * For MIPS, Add -m[no-]fix-loongson3-llsc option to fix (or not) - Loongson3 LLSC Errata. Add a --enable-mips-fix-loongson3-llsc=[yes|no] + * For MIPS, Add `-m[no-]fix-loongson3-llsc` option to fix (or not) + Loongson3 LLSC Errata. Add a `--enable-mips-fix-loongson3-llsc=[yes|no]` configure time option to set the default behavior. Set the default if the configure option is not used to "no". -== Linker: +==== Linker: * The Cortex-A53 Erratum 843419 workaround now supports a choice of - which workaround to use. The option --fix-cortex-a53-843419 now - takes an optional argument --fix-cortex-a53-843419[=full|adr|adrp] + which workaround to use. The option `--fix-cortex-a53-843419` now + takes an optional argument `--fix-cortex-a53-843419[=full|adr|adrp]` which can be used to force a particular workaround to be used. - See --help for AArch64 for more details. + See `--help` for AArch64 for more details. - * Add support for GNU_PROPERTY_AARCH64_FEATURE_1_BTI and - GNU_PROPERTY_AARCH64_FEATURE_1_PAC in ELF GNU program properties + * Add support for `GNU_PROPERTY_AARCH64_FEATURE_1_BTI` and + `GNU_PROPERTY_AARCH64_FEATURE_1_PAC` in ELF GNU program properties in the AArch64 ELF linker. - * Add -z force-bti for AArch64 to enable GNU_PROPERTY_AARCH64_FEATURE_1_BTI - on output while warning about missing GNU_PROPERTY_AARCH64_FEATURE_1_BTI + * Add `-z force-bti` for AArch64 to enable `GNU_PROPERTY_AARCH64_FEATURE_1_BTI` + on output while warning about missing `GNU_PROPERTY_AARCH64_FEATURE_1_BTI` on inputs and use PLTs protected with BTI. - * Add -z pac-plt for AArch64 to pick PAC enabled PLTs. + * Add `-z pac-plt` for AArch64 to pick PAC enabled PLTs. -== Utilities: +==== Utilities: * Add `--source-comment[=]` option to objdump which if present, provides a prefix to source code lines displayed in a disassembly. - * Add `--set-section-alignment` = + * Add `--set-section-alignment` `=` option to objcopy to allow the changing of section alignments. * Add `--verilog-data-width` option to objcopy for verilog targets to control width of data elements in verilog hex format. - * The separate debug info file options of readelf (--debug-dump=links - and --debug-dump=follow) and objdump (--dwarf=links and - --dwarf=follow-links) will now display and/or follow multiple + * The separate debug info file options of readelf (`--debug-dump=links` + and `--debug-dump=follow`) and objdump (`--dwarf=links` and + `--dwarf=follow-links`) will now display and/or follow multiple links if more than one are present in a file. (This usually - happens when gcc's -gsplit-dwarf option is used). + happens when gcc's `-gsplit-dwarf` option is used). * Add support for dumping types encoded in the Compact Type Format From 6e395064adbf287e23e9d2371bec4c57c2e3e232 Mon Sep 17 00:00:00 2001 From: roypen Date: Apr 07 2020 15:41:33 +0000 Subject: [PATCH 19/52] Release notes for Ruby 2.7. Issue #428 Signed-off-by: roypen --- diff --git a/modules/release-notes/pages/developers/Development_Ruby.adoc b/modules/release-notes/pages/developers/Development_Ruby.adoc index f40ff6e..8cf95c2 100644 --- a/modules/release-notes/pages/developers/Development_Ruby.adoc +++ b/modules/release-notes/pages/developers/Development_Ruby.adoc @@ -2,4 +2,202 @@ include::{partialsdir}/entities.adoc[] [[sect-ruby]] -= Ruby += Ruby 2.7 + +Fedora 32 provides Ruby 2.7 version. With this major update from Ruby 2.6, Fedora becomes the superior Ruby development platform. +[[back]] +== Changes since Ruby 2.6: + +Ruby 2.7 comes with several new features and performance improvements. + +=== New features: + +* <> +* <> +* <> +* <> + +=== Performance improvements: + +* JIT [Experimental] +* Fiber’s cache strategy is changed and fiber creation is speeded up. +* `Module#name`, `true.to_s`, `false.to_s`, and `nil.to_s` now always return a frozen String. The returned String is always the same for a given object. [Experimental] +* The performance of Monitor and MonitorMixin is improved. +* The performance of `CGI.escapeHTML` is improved. +* The performance of Monitor and MonitorMixin is improved. +* Per-call-site method cache, which has been there since around 1.9, was improved: cache hit rate raised from 89% to 94%. +* RubyVM::InstructionSequence#to_binary method generates compiled binary. The binary size is reduced. + +=== Other notable changes: + + +* Some standard libraries are updated. +** Bundler 2.1.2 (Release note) +** RubyGems 3.1.2 +** Racc 1.4.15 +** CSV 3.1.2 (NEWS) +** REXML 3.2.3 (NEWS) +** RSS 0.2.8 (NEWS) +** StringScanner 1.0.3 +** Some other libraries that have no original version are also updated. +* The following libraries are no longer bundled gems. Install corresponding gems to use these features. +** CMath (cmath gem) +** Scanf (scanf gem) +** Shell (shell gem) +** Synchronizer (sync gem) +** ThreadsWait (thwait gem) +** E2MM (e2mmap gem) + +* profile.rb was removed from standard library. +* Promote stdlib to default gems +** The following default gems were published on rubygems.org +*** benchmark +*** cgi +*** delegate +*** getoptlong +*** net-pop +*** net-smtp +*** open3 +*** pstore +*** singleton +** The following default gems were only promoted at ruby-core, but not yet published on rubygems.org. +*** monitor +*** observer +*** timeout +*** tracer +*** uri +*** yaml + +* Proc.new and proc with no block in a method called with a block is warned now. + +* lambda with no block in a method called with a block raises an exception. + +* Update Unicode version and Emoji version from 11.0.0 to 12.0.0. + +* Update Unicode version to 12.1.0, adding support for U+32FF SQUARE ERA NAME REIWA. + +* Date.jisx0301, Date#jisx0301, and Date.parse support the new Japanese era. +* Require compilers to support C99. + + +== Detailed changes: + + +[[Pattern]] +=== Pattern Matching [Experimental] + + + +Pattern matching, a widely used feature in functional programming languages, is introduced as an experimental feature. It can traverse a given object and assign it's value if it matches a pattern. + +---- +require "json" + +json = < 2 +end +---- + + +[[REPL]] +=== REPL improvement + + +`irb`, the bundled interactive environment (REPL; Read-Eval-Print-Loop), now supports multi-line editing. It is powered by `reline`, a `readline` -compatible library implemented in pure Ruby. It also provides rdoc integration. In `irb` you can display the reference for a given class, module, or method. + + +[[GC]] +=== Compaction GC + + +This release introduces Compaction GC which can defragment a fragmented memory space. + +Some multi-threaded Ruby programs may cause memory fragmentation, leading to high memory usage and degraded speed. + +The `GC.compact` method is introduced for compacting the heap. This function compacts live objects in the heap so that fewer pages may be used, and the heap may be more CoW (copy-on-write) friendly. + + + +[[Separation]] +=== Separation of positional and keyword arguments + + +Automatic conversion of keyword arguments and positional arguments is deprecated, and conversion will be removed in Ruby 3. + +==== Changes: + + + +* When a method call passes a Hash at the last argument, and when it passes no keywords, and when the called method accepts keywords, a warning is emitted. To continue treating the hash as keywords, add a double splat operator to avoid the warning and ensure correct behavior in Ruby 3. + +---- + def foo(key: 42); end; foo({key: 42}) # warned + def foo(**kw); end; foo({key: 42}) # warned + def foo(key: 42); end; foo(**{key: 42}) # OK + def foo(**kw); end; foo(**{key: 42}) # OK +---- + +* When a method call passes keywords to a method that accepts keywords, but it does not pass enough required positional arguments, the keywords are treated as a final required positional argument, and a warning is emitted. Pass the argument as a hash instead of keywords to avoid the warning and ensure correct behavior in Ruby 3. + +---- + def foo(h, **kw); end; foo(key: 42) # warned + def foo(h, key: 42); end; foo(key: 42) # warned + def foo(h, **kw); end; foo({key: 42}) # OK + def foo(h, key: 42); end; foo({key: 42}) # OK +---- + +* When a method accepts specific keywords but not a keyword splat, and a hash or keywords splat is passed to the method that includes both Symbol and non-Symbol keys, the hash will continue to be split, and a warning will be emitted. You will need to update the calling code to pass separate hashes to ensure correct behavior in Ruby 3. + +---- + def foo(h={}, key: 42); end; foo("key" => 43, key: 42) # warned + def foo(h={}, key: 42); end; foo({"key" => 43, key: 42}) # warned + def foo(h={}, key: 42); end; foo({"key" => 43}, key: 42) # OK +---- + +* If a method does not accept keywords, and is called with keywords, the keywords are still treated as a positional hash, with no warning. This behavior will continue to work in Ruby 3. + +---- + def foo(opt={}); end; foo( key: 42 ) # OK +---- + +* Non-symbols are allowed as keyword argument keys if the method accepts arbitrary keywords. [Feature #14183] + +---- + def foo(**kw); p kw; end; foo("str" => 1) #=> {"str"=>1} +---- + +* `**nil` is allowed in method definitions to explicitly mark that the method accepts no keywords. Calling such a method with keywords will result in an ArgumentError. + +---- + def foo(h, **nil); end; foo(key: 1) # ArgumentError + def foo(h, **nil); end; foo(**{key: 1}) # ArgumentError + def foo(h, **nil); end; foo("str" => 1) # ArgumentError + def foo(h, **nil); end; foo({key: 1}) # OK + def foo(h, **nil); end; foo({"str" => 1}) # OK +---- + +* Passing an empty keyword splat to a method that does not accept keywords no longer passes an empty hash, unless the empty hash is necessary for a required parameter, in which case a warning will be emitted. Remove the double splat to continue passing a positional hash. [Feature #14183] + +---- + h = {}; def foo(*a) a end; foo(**h) # [] + h = {}; def foo(a) a end; foo(**h) # {} and warning + h = {}; def foo(*a) a end; foo(h) # [{}] + h = {}; def foo(a) a end; foo(h) # {} +---- + +If you want to disable the deprecation warnings, please use a command-line argument -W:no-deprecated or add Warning[:deprecated] = false to your code. + +See the link:https://www.ruby-lang.org/en/news/2019/12/25/ruby-2-7-0-released/[upstream release announcement] for more detailed information about this release. + +<> + + From 88cb20e8abb261ec9fd77ea46e543aabd7c8eed2 Mon Sep 17 00:00:00 2001 From: Lukas Piekarski Date: Apr 07 2020 15:41:33 +0000 Subject: [PATCH 20/52] Update modules/release-notes/pages/developers/Development_Ruby.adoc - removed duplicates - module names, functions, commands are now marked up - removed ((Release note), (NEWS)) - syntax highlighting - added [source,*language*] at the beginning of the code block --- diff --git a/modules/release-notes/pages/developers/Development_Ruby.adoc b/modules/release-notes/pages/developers/Development_Ruby.adoc index 8cf95c2..c496224 100644 --- a/modules/release-notes/pages/developers/Development_Ruby.adoc +++ b/modules/release-notes/pages/developers/Development_Ruby.adoc @@ -1,4 +1,3 @@ - include::{partialsdir}/entities.adoc[] [[sect-ruby]] @@ -22,22 +21,21 @@ Ruby 2.7 comes with several new features and performance improvements. * JIT [Experimental] * Fiber’s cache strategy is changed and fiber creation is speeded up. * `Module#name`, `true.to_s`, `false.to_s`, and `nil.to_s` now always return a frozen String. The returned String is always the same for a given object. [Experimental] -* The performance of Monitor and MonitorMixin is improved. +* The performance of `Monitor` and `MonitorMixin` is improved. * The performance of `CGI.escapeHTML` is improved. -* The performance of Monitor and MonitorMixin is improved. -* Per-call-site method cache, which has been there since around 1.9, was improved: cache hit rate raised from 89% to 94%. -* RubyVM::InstructionSequence#to_binary method generates compiled binary. The binary size is reduced. +* `Per-call-site` method cache, which has been there since around 1.9, was improved: cache hit rate raised from 89% to 94%. +* `RubyVM::InstructionSequence#to_binary` method generates compiled binary. The binary size is reduced. === Other notable changes: * Some standard libraries are updated. -** Bundler 2.1.2 (Release note) +** Bundler 2.1.2 ** RubyGems 3.1.2 ** Racc 1.4.15 -** CSV 3.1.2 (NEWS) -** REXML 3.2.3 (NEWS) -** RSS 0.2.8 (NEWS) +** CSV 3.1.2 +** REXML 3.2.3 +** RSS 0.2.8 ** StringScanner 1.0.3 ** Some other libraries that have no original version are also updated. * The following libraries are no longer bundled gems. Install corresponding gems to use these features. @@ -48,8 +46,8 @@ Ruby 2.7 comes with several new features and performance improvements. ** ThreadsWait (thwait gem) ** E2MM (e2mmap gem) -* profile.rb was removed from standard library. -* Promote stdlib to default gems +* `profile.rb` was removed from standard library. +* Promote `stdlib` to default gems ** The following default gems were published on rubygems.org *** benchmark *** cgi @@ -68,7 +66,7 @@ Ruby 2.7 comes with several new features and performance improvements. *** uri *** yaml -* Proc.new and proc with no block in a method called with a block is warned now. +* `Proc.new` and `proc` with no block in a method called with a block is warned now. * lambda with no block in a method called with a block raises an exception. @@ -76,7 +74,8 @@ Ruby 2.7 comes with several new features and performance improvements. * Update Unicode version to 12.1.0, adding support for U+32FF SQUARE ERA NAME REIWA. -* Date.jisx0301, Date#jisx0301, and Date.parse support the new Japanese era. +* `Date.jisx0301`, `Date#jisx0301`, and `Date.parse` support the new Japanese era. + * Require compilers to support C99. @@ -90,6 +89,7 @@ Ruby 2.7 comes with several new features and performance improvements. Pattern matching, a widely used feature in functional programming languages, is introduced as an experimental feature. It can traverse a given object and assign it's value if it matches a pattern. +[source,json] ---- require "json" @@ -139,6 +139,7 @@ Automatic conversion of keyword arguments and positional arguments is deprecated * When a method call passes a Hash at the last argument, and when it passes no keywords, and when the called method accepts keywords, a warning is emitted. To continue treating the hash as keywords, add a double splat operator to avoid the warning and ensure correct behavior in Ruby 3. +[source,ruby] ---- def foo(key: 42); end; foo({key: 42}) # warned def foo(**kw); end; foo({key: 42}) # warned @@ -148,6 +149,7 @@ Automatic conversion of keyword arguments and positional arguments is deprecated * When a method call passes keywords to a method that accepts keywords, but it does not pass enough required positional arguments, the keywords are treated as a final required positional argument, and a warning is emitted. Pass the argument as a hash instead of keywords to avoid the warning and ensure correct behavior in Ruby 3. +[source,ruby] ---- def foo(h, **kw); end; foo(key: 42) # warned def foo(h, key: 42); end; foo(key: 42) # warned @@ -157,6 +159,7 @@ Automatic conversion of keyword arguments and positional arguments is deprecated * When a method accepts specific keywords but not a keyword splat, and a hash or keywords splat is passed to the method that includes both Symbol and non-Symbol keys, the hash will continue to be split, and a warning will be emitted. You will need to update the calling code to pass separate hashes to ensure correct behavior in Ruby 3. +[source,ruby] ---- def foo(h={}, key: 42); end; foo("key" => 43, key: 42) # warned def foo(h={}, key: 42); end; foo({"key" => 43, key: 42}) # warned @@ -165,18 +168,21 @@ Automatic conversion of keyword arguments and positional arguments is deprecated * If a method does not accept keywords, and is called with keywords, the keywords are still treated as a positional hash, with no warning. This behavior will continue to work in Ruby 3. +[source,ruby] ---- def foo(opt={}); end; foo( key: 42 ) # OK ---- -* Non-symbols are allowed as keyword argument keys if the method accepts arbitrary keywords. [Feature #14183] +* Non-symbols are allowed as keyword argument keys if the method accepts arbitrary keywords. +[source,ruby] ---- def foo(**kw); p kw; end; foo("str" => 1) #=> {"str"=>1} ---- -* `**nil` is allowed in method definitions to explicitly mark that the method accepts no keywords. Calling such a method with keywords will result in an ArgumentError. +* `**nil` is allowed in method definitions to explicitly mark that the method accepts no keywords. Calling such a method with keywords will result in an `ArgumentError`. +[source,ruby] ---- def foo(h, **nil); end; foo(key: 1) # ArgumentError def foo(h, **nil); end; foo(**{key: 1}) # ArgumentError @@ -185,8 +191,9 @@ Automatic conversion of keyword arguments and positional arguments is deprecated def foo(h, **nil); end; foo({"str" => 1}) # OK ---- -* Passing an empty keyword splat to a method that does not accept keywords no longer passes an empty hash, unless the empty hash is necessary for a required parameter, in which case a warning will be emitted. Remove the double splat to continue passing a positional hash. [Feature #14183] +* Passing an empty keyword splat to a method that does not accept keywords no longer passes an empty hash, unless the empty hash is necessary for a required parameter, in which case a warning will be emitted. Remove the double splat to continue passing a positional hash. +[source,ruby] ---- h = {}; def foo(*a) a end; foo(**h) # [] h = {}; def foo(a) a end; foo(**h) # {} and warning From bda903cc1346fffe8492275a0b868a0737fb021f Mon Sep 17 00:00:00 2001 From: roypen Date: Apr 07 2020 15:50:07 +0000 Subject: [PATCH 21/52] release notes for issue #434 Signed-off-by: roypen --- diff --git a/modules/release-notes/pages/developers/Development_C.adoc b/modules/release-notes/pages/developers/Development_C.adoc index c3c4506..57c6368 100644 --- a/modules/release-notes/pages/developers/Development_C.adoc +++ b/modules/release-notes/pages/developers/Development_C.adoc @@ -3,3 +3,189 @@ include::{partialsdir}/entities.adoc[] [[sect-c]] = C +[[back]] +== GCC +The GNU compiler suite has been update to version 10.0.1. See the http://gcc.gnu.org/gcc-10/changes.html[upstream documentation] for user visible changes. Packages in Fedora 32 have been rebuilt with the new version of the compiler. + +=== New Features and General Improvements: + + +* New built-in functions: +** The '__has_builtin' built-in preprocessor operator can be used to query support for built-in functions provided by GCC and other compilers that support it. +** '__builtin_roundeven' for the corresponding function from ISO/IEC TS 18661. +* New command-line options: +** '-fallocation-dce' removes unneeded pairs of new and delete operators. +** '-fprofile-partial-training' can now be used to inform the compiler that code paths not covered by the training run should not be optimized for size. +** '-fprofile-reproducible' controls level of reproducibility of profile gathered by -fprofile-generate. This makes it possible to rebuild program with same outcome which is useful, for example, for distribution packages. +* Inter-procedural optimization improvements: +** The inter-procedural scalar replacement for aggregates (IPA-SRA) pass was re-implemented to work at link-time. +** `-finline-functions` is now enabled at -O2 and was retuned for better code size versus runtime performance trade-offs. Inliner heuristics was also significantly sped up to avoid negative impact to -flto -O2 compile times. +** Inliner heuristics and function cloning can now use value-range information to predict effectivity of individual transformations. +** During link-time optimization the C++ One Definition Rule is used to increase precision of type based alias analysis. +* Link-time optimization improvements: +** A new binary lto-dump has been added. The program can dump various information about a LTO bytecode object file. +** Parallel phase of the LTO can automatically detect a running make's jobserver or can fall back to number of available cores. +** The LTO bytecode can be compressed with zstd algorithm. Configure script can automatically detect the zstd support. +** Most `--param` values can now be specified at translation unit granularity. This includes all parameters controlling the inliner and other inter-procedural optimizations. Unlike earlier releases, GCC 10 will ignore parameters controlling optimizations specified at link-time and apply parameters specified at compile-time in the same manner as done for optimization flags. +* Profile driven optimization improvements: +** Profile New Languages and Language-Specific Improvementsmaintenance during compilation and hot/cold code partitioning have been improved. +** Using -fprofile-values, an instrumented binary can track multiple values (up to 4) for e.g. indirect calls and provide more precise profile information. + + +=== New Languages and Language-Specific Improvements: + + +* Version 2.6 of the OpenACC specification is now supported in the C, C++ and Fortran compilers. See the implementation status section on the OpenACC wiki page and the run-time library documentation for further information. +* OpenMP and OpenACC now support offloading to AMD Radeon (GCN) GPUs; supported are the third-generation Fiji (fiji) and the fifth-generation VEGA 10/VEGA 20 (gfx900 or gfx906). + +==== C family +* New attributes. +* New warnings. +* Enhancements to existing warnings + +==== C + +* Several new features from the upcoming C2X revision of the ISO C standard are supported with `-std=c2x` and `-std=gnu2x`. Some of these features are also supported as extensions when compiling for older language versions. In addition to the features listed, some features previously supported as extensions and now added to the C standard are enabled by default in C2X mode and not diagnosed with `-std=c2x -Wpedantic`. +* GCC now defaults to `-fno-common`. As a result, global variable accesses are more efficient on various targets. In C, global variables with multiple tentative definitions now result in linker errors. With `-fcommon` such definitions are silently merged during linking. + +==== C++ + +* Several 'C++20' features have been implemented. +* Several 'C++ Defect' Reports have been resolved. +* New warnings. +* G++ can now detect modifying constant objects in constexpr evaluation (which is undefined behavior). +* G++ no longer emits bogus -Wsign-conversion warnings with explicit casts. +* Narrowing is now detected in more contexts (e.g., case values). +* Memory consumption of the compiler has been reduced in constexpr evaluation. +* The noexcept-specifier is now properly treated as a complete-class context as per [class.mem]. +* The attribute deprecated can now be used on namespaces too. + +==== Runtime Library (libstdc++) + +* Improved experimental `C++2a` support, including. +* Support for RDSEED in std::random_device. +* Reduced header dependencies, leading to faster compilation for some code. + + +== The GNU C Library version 2.31: + +Fedora 32 provides the GNU C Library - `glibc` - version 2.31. Notable changes include: + +=== New Features: + +* The GNU C Library now supports a feature test macro _ISOC2X_SOURCE + to enable features from the draft ISO C2X standard. Only some + features from this draft standard are supported by the GNU C + Library, and as the draft is under active development, the set of + features enabled by this macro is liable to change. Features from + C2X are also enabled by _GNU_SOURCE, or by compiling with "gcc + -std=gnu2x". + +* The functions that round their results to a narrower type + now have corresponding type-generic macros in , as defined + in TS 18661-1:2014 and TS 18661-3:2015 as amended by the resolution + of Clarification Request 13 to TS 18661-3. + +* The function pthread_clockjoin_np has been added, enabling join with + a terminated thread with a specific clock. It allows waiting + against CLOCK_MONOTONIC and CLOCK_REALTIME. This function is a GNU + extension. + +* New locale added: mnw_MM (Mon language spoken in Myanmar). + +* The DNS stub resolver will optionally send the AD (authenticated + data) bit in queries if the trust-ad option is set via the options + directive in /etc/resolv.conf (or if RES_TRUSTAD is set in + _res.options). In this mode, the AD bit, as provided by the name + server, is available to applications which call res_search and + related functions. In the default mode, the AD bit is not set in + queries, and it is automatically cleared in responses, indicating a + lack of DNSSEC validation. (Therefore, the name servers and the + network path to them are treated as untrusted.) + + +=== Deprecated and Removed Features: + +* The totalorder and totalordermag functions, and the corresponding + functions for other floating-point types, now take pointer arguments + to avoid signaling NaNs possibly being converted to quiet NaNs in + argument passing. This is in accordance with the resolution of + Clarification Request 25 to TS 18661-1, as applied for C2X. + Existing binaries that pass floating-point arguments directly will + continue to work. + +* The obsolete function stime is no longer available to newly linked + binaries, and its declaration has been removed from . + Programs that set the system time should use clock_settime instead. + +* We plan to remove the obsolete function ftime, and the header + , in a future version of glibc. In this release, the + header still exists but calling ftime will cause a compiler warning. + All programs should use gettimeofday or clock_gettime instead. + +* The gettimeofday function no longer reports information about a + system-wide time zone. This 4.2-BSD-era feature has been deprecated + for many years, as it cannot handle the full complexity of the + world's timezones, but hitherto we have supported it on a + best-effort basis. Changes required to support 64-bit time_t on + 32-bit architectures have made this no longer practical. + + +* The settimeofday function can still be used to set a system-wide + time zone when the operating system supports it. This is because + the Linux kernel reused the API, on some architectures, to describe + a system-wide time-zone-like offset between the software clock + maintained by the kernel, and the "RTC" clock that keeps time when + the system is shut down. + + +* SPARC ISA v7 is no longer supported. v8 is still supported, but + only if the optional CAS instruction is implemented (for instance, + LEON processors are still supported, but SuperSPARC processors are + not). + + As the oldest 64-bit SPARC ISA is v9, this only affects 32-bit + configurations. + +* If a lazy binding failure happens during dlopen, during the + execution of an ELF constructor, the process is now terminated. + Previously, the dynamic loader would return NULL from dlopen, with + the lazy binding error captured in a dlerror message. In general, + this is unsafe because resetting the stack in an arbitrary function + call is not possible. + +* For MIPS hard-float ABIs, the GNU C Library will be configured to + need an executable stack unless explicitly configured at build time + to require minimum kernel version 4.8 or newer. This is because + executing floating-point branches on a non-executable stack on Linux + kernels prior to 4.8 can lead to application crashes for some MIPS + configurations. While currently PT_GNU_STACK is not widely used on + MIPS, future releases of GCC are expected to enable non-executable + stack by default with PT_GNU_STACK by default and is thus likely to + trigger a crash on older kernels. + + The GNU C Library can be built with --enable-kernel=4.8.0 in order + to keep a non-executable stack while dropping support for older + kernels. + +* System call wrappers for time system calls now use the new time64 + system calls when available. On 32-bit targets, these wrappers + attempt to call the new system calls first and fall back to the + older 32-bit time system calls if they are not present. This may + cause issues in environments that cannot handle unsupported system + calls gracefully by returning -ENOSYS. Seccomp sandboxes are + affected by this issue. + +=== Security Related Changes: + +* CVE-2019-19126: ld.so failed to ignore the LD_PREFER_MAP_32BIT_EXEC + environment variable during program execution after a security + transition, allowing local attackers to restrict the possible + mapping addresses for loaded libraries and thus bypass ASLR for a + setuid program. Reported by Marcin Kościelnicki. + +For detailed information about glibc-2.31 see the link:https://sourceware.org/legacy-ml/libc-announce/2020/msg00001.html[upstream NEWS document]; note that you may need to scroll down to find version 2.31 as the document continues to be updated. + +<> + + From 943069a984ee5ffdbf2f2ebf2b22ce3efdb5c52d Mon Sep 17 00:00:00 2001 From: roypen Date: Apr 07 2020 15:50:07 +0000 Subject: [PATCH 22/52] Marked options, function names with `` instead '' A + sign didn't solve multiparagraph list item, so I remove text which was presented in the code block. Signed-off-by: roypen --- diff --git a/modules/release-notes/pages/developers/Development_C.adoc b/modules/release-notes/pages/developers/Development_C.adoc index 57c6368..00b0049 100644 --- a/modules/release-notes/pages/developers/Development_C.adoc +++ b/modules/release-notes/pages/developers/Development_C.adoc @@ -3,20 +3,23 @@ include::{partialsdir}/entities.adoc[] [[sect-c]] = C + [[back]] -== GCC + +== GCC + The GNU compiler suite has been update to version 10.0.1. See the http://gcc.gnu.org/gcc-10/changes.html[upstream documentation] for user visible changes. Packages in Fedora 32 have been rebuilt with the new version of the compiler. === New Features and General Improvements: * New built-in functions: -** The '__has_builtin' built-in preprocessor operator can be used to query support for built-in functions provided by GCC and other compilers that support it. -** '__builtin_roundeven' for the corresponding function from ISO/IEC TS 18661. +** The `__has_builtin` built-in preprocessor operator can be used to query support for built-in functions provided by GCC and other compilers that support it. +** `__builtin_roundeven` for the corresponding function from ISO/IEC TS 18661. * New command-line options: -** '-fallocation-dce' removes unneeded pairs of new and delete operators. -** '-fprofile-partial-training' can now be used to inform the compiler that code paths not covered by the training run should not be optimized for size. -** '-fprofile-reproducible' controls level of reproducibility of profile gathered by -fprofile-generate. This makes it possible to rebuild program with same outcome which is useful, for example, for distribution packages. +** `-fallocation-dce` removes unneeded pairs of new and delete operators. +** `-fprofile-partial-training` can now be used to inform the compiler that code paths not covered by the training run should not be optimized for size. +** `-fprofile-reproducible` controls level of reproducibility of profile gathered by -fprofile-generate. This makes it possible to rebuild program with same outcome which is useful, for example, for distribution packages. * Inter-procedural optimization improvements: ** The inter-procedural scalar replacement for aggregates (IPA-SRA) pass was re-implemented to work at link-time. ** `-finline-functions` is now enabled at -O2 and was retuned for better code size versus runtime performance trade-offs. Inliner heuristics was also significantly sped up to avoid negative impact to -flto -O2 compile times. @@ -24,12 +27,12 @@ The GNU compiler suite has been update to version 10.0.1. See the http://gcc.gnu ** During link-time optimization the C++ One Definition Rule is used to increase precision of type based alias analysis. * Link-time optimization improvements: ** A new binary lto-dump has been added. The program can dump various information about a LTO bytecode object file. -** Parallel phase of the LTO can automatically detect a running make's jobserver or can fall back to number of available cores. +** Parallel phase of the LTO can automatically detect a running make`s jobserver or can fall back to number of available cores. ** The LTO bytecode can be compressed with zstd algorithm. Configure script can automatically detect the zstd support. ** Most `--param` values can now be specified at translation unit granularity. This includes all parameters controlling the inliner and other inter-procedural optimizations. Unlike earlier releases, GCC 10 will ignore parameters controlling optimizations specified at link-time and apply parameters specified at compile-time in the same manner as done for optimization flags. * Profile driven optimization improvements: ** Profile New Languages and Language-Specific Improvementsmaintenance during compilation and hot/cold code partitioning have been improved. -** Using -fprofile-values, an instrumented binary can track multiple values (up to 4) for e.g. indirect calls and provide more precise profile information. +** Using `-fprofile-values`, an instrumented binary can track multiple values (up to 4) for e.g. indirect calls and provide more precise profile information. === New Languages and Language-Specific Improvements: @@ -50,8 +53,8 @@ The GNU compiler suite has been update to version 10.0.1. See the http://gcc.gnu ==== C++ -* Several 'C++20' features have been implemented. -* Several 'C++ Defect' Reports have been resolved. +* Several `C++20` features have been implemented. +* Several `C++ Defect` Reports have been resolved. * New warnings. * G++ can now detect modifying constant objects in constexpr evaluation (which is undefined behavior). * G++ no longer emits bogus -Wsign-conversion warnings with explicit casts. @@ -63,7 +66,7 @@ The GNU compiler suite has been update to version 10.0.1. See the http://gcc.gnu ==== Runtime Library (libstdc++) * Improved experimental `C++2a` support, including. -* Support for RDSEED in std::random_device. +* Support for RDSEED in `std::random_device`. * Reduced header dependencies, leading to faster compilation for some code. @@ -78,25 +81,25 @@ Fedora 32 provides the GNU C Library - `glibc` - version 2.31. Notable changes i features from this draft standard are supported by the GNU C Library, and as the draft is under active development, the set of features enabled by this macro is liable to change. Features from - C2X are also enabled by _GNU_SOURCE, or by compiling with "gcc - -std=gnu2x". + C2X are also enabled by _GNU_SOURCE, or by compiling with `gcc + -std=gnu2x`. -* The functions that round their results to a narrower type - now have corresponding type-generic macros in , as defined +* The `` functions that round their results to a narrower type + now have corresponding type-generic macros in ``, as defined in TS 18661-1:2014 and TS 18661-3:2015 as amended by the resolution of Clarification Request 13 to TS 18661-3. -* The function pthread_clockjoin_np has been added, enabling join with +* The function `pthread_clockjoin_np` has been added, enabling join with a terminated thread with a specific clock. It allows waiting - against CLOCK_MONOTONIC and CLOCK_REALTIME. This function is a GNU + against `CLOCK_MONOTONIC` and `CLOCK_REALTIME`. This function is a GNU extension. -* New locale added: mnw_MM (Mon language spoken in Myanmar). +* New locale added: `mnw_MM` (Mon language spoken in Myanmar). * The DNS stub resolver will optionally send the AD (authenticated data) bit in queries if the trust-ad option is set via the options - directive in /etc/resolv.conf (or if RES_TRUSTAD is set in - _res.options). In this mode, the AD bit, as provided by the name + directive in /etc/resolv.conf (or if `RES_TRUSTAD` is set in + `_res.options`). In this mode, the AD bit, as provided by the name server, is available to applications which call res_search and related functions. In the default mode, the AD bit is not set in queries, and it is automatically cleared in responses, indicating a @@ -115,18 +118,18 @@ Fedora 32 provides the GNU C Library - `glibc` - version 2.31. Notable changes i continue to work. * The obsolete function stime is no longer available to newly linked - binaries, and its declaration has been removed from . - Programs that set the system time should use clock_settime instead. + binaries, and its declaration has been removed from ``. + Programs that set the system time should use `clock_settime` instead. * We plan to remove the obsolete function ftime, and the header - , in a future version of glibc. In this release, the + ``, in a future version of glibc. In this release, the header still exists but calling ftime will cause a compiler warning. All programs should use gettimeofday or clock_gettime instead. * The gettimeofday function no longer reports information about a system-wide time zone. This 4.2-BSD-era feature has been deprecated for many years, as it cannot handle the full complexity of the - world's timezones, but hitherto we have supported it on a + world`s timezones, but hitherto we have supported it on a best-effort basis. Changes required to support 64-bit time_t on 32-bit architectures have made this no longer practical. @@ -143,9 +146,7 @@ Fedora 32 provides the GNU C Library - `glibc` - version 2.31. Notable changes i only if the optional CAS instruction is implemented (for instance, LEON processors are still supported, but SuperSPARC processors are not). - - As the oldest 64-bit SPARC ISA is v9, this only affects 32-bit - configurations. + * If a lazy binding failure happens during dlopen, during the execution of an ELF constructor, the process is now terminated. @@ -159,26 +160,23 @@ Fedora 32 provides the GNU C Library - `glibc` - version 2.31. Notable changes i to require minimum kernel version 4.8 or newer. This is because executing floating-point branches on a non-executable stack on Linux kernels prior to 4.8 can lead to application crashes for some MIPS - configurations. While currently PT_GNU_STACK is not widely used on + configurations. While currently `PT_GNU_STACK` is not widely used on MIPS, future releases of GCC are expected to enable non-executable - stack by default with PT_GNU_STACK by default and is thus likely to - trigger a crash on older kernels. + stack by default with `PT_GNU_STACK` by default and is thus likely to + trigger a crash on older kernels. - The GNU C Library can be built with --enable-kernel=4.8.0 in order - to keep a non-executable stack while dropping support for older - kernels. * System call wrappers for time system calls now use the new time64 system calls when available. On 32-bit targets, these wrappers attempt to call the new system calls first and fall back to the older 32-bit time system calls if they are not present. This may cause issues in environments that cannot handle unsupported system - calls gracefully by returning -ENOSYS. Seccomp sandboxes are + calls gracefully by returning `-ENOSYS`. Seccomp sandboxes are affected by this issue. === Security Related Changes: -* CVE-2019-19126: ld.so failed to ignore the LD_PREFER_MAP_32BIT_EXEC +* CVE-2019-19126: ld.so failed to ignore the `LD_PREFER_MAP_32BIT_EXEC` environment variable during program execution after a security transition, allowing local attackers to restrict the possible mapping addresses for loaded libraries and thus bypass ASLR for a From a5f6aa2767c4cebc936d759e6f82877ef273b18d Mon Sep 17 00:00:00 2001 From: Jaroslav Klech Date: Apr 07 2020 15:52:46 +0000 Subject: [PATCH 23/52] Describes issue #438 --- diff --git a/modules/release-notes/pages/developers/Development_Tools.adoc b/modules/release-notes/pages/developers/Development_Tools.adoc index dc20b56..4fad4bb 100644 --- a/modules/release-notes/pages/developers/Development_Tools.adoc +++ b/modules/release-notes/pages/developers/Development_Tools.adoc @@ -12,3 +12,9 @@ For more information about Comp-NeuroFedora, see the link:https://neuro.fedorapr For a list of Fedora labs, see the link:https://labs.fedoraproject.org/[Functional bundles for Fedora] page. + +== Mono has been updated to 6.6 + +The Mono development platform has been updated from version 5.20 to 6.6. + +For more information about Mono 6.6, see the link:https://www.mono-project.com/docs/about-mono/releases/6.6.0/[upstream release notes]. From 4c317ed54db807bc991fc05d73b68f800497801c Mon Sep 17 00:00:00 2001 From: Petr Bokoc Date: Apr 07 2020 15:58:08 +0000 Subject: [PATCH 24/52] Merge #455 ` #434 F32 System-Wide Change: GCC 10 ` --- diff --git a/modules/release-notes/pages/developers/Development_C.adoc b/modules/release-notes/pages/developers/Development_C.adoc index c3c4506..00b0049 100644 --- a/modules/release-notes/pages/developers/Development_C.adoc +++ b/modules/release-notes/pages/developers/Development_C.adoc @@ -3,3 +3,187 @@ include::{partialsdir}/entities.adoc[] [[sect-c]] = C + +[[back]] + +== GCC + +The GNU compiler suite has been update to version 10.0.1. See the http://gcc.gnu.org/gcc-10/changes.html[upstream documentation] for user visible changes. Packages in Fedora 32 have been rebuilt with the new version of the compiler. + +=== New Features and General Improvements: + + +* New built-in functions: +** The `__has_builtin` built-in preprocessor operator can be used to query support for built-in functions provided by GCC and other compilers that support it. +** `__builtin_roundeven` for the corresponding function from ISO/IEC TS 18661. +* New command-line options: +** `-fallocation-dce` removes unneeded pairs of new and delete operators. +** `-fprofile-partial-training` can now be used to inform the compiler that code paths not covered by the training run should not be optimized for size. +** `-fprofile-reproducible` controls level of reproducibility of profile gathered by -fprofile-generate. This makes it possible to rebuild program with same outcome which is useful, for example, for distribution packages. +* Inter-procedural optimization improvements: +** The inter-procedural scalar replacement for aggregates (IPA-SRA) pass was re-implemented to work at link-time. +** `-finline-functions` is now enabled at -O2 and was retuned for better code size versus runtime performance trade-offs. Inliner heuristics was also significantly sped up to avoid negative impact to -flto -O2 compile times. +** Inliner heuristics and function cloning can now use value-range information to predict effectivity of individual transformations. +** During link-time optimization the C++ One Definition Rule is used to increase precision of type based alias analysis. +* Link-time optimization improvements: +** A new binary lto-dump has been added. The program can dump various information about a LTO bytecode object file. +** Parallel phase of the LTO can automatically detect a running make`s jobserver or can fall back to number of available cores. +** The LTO bytecode can be compressed with zstd algorithm. Configure script can automatically detect the zstd support. +** Most `--param` values can now be specified at translation unit granularity. This includes all parameters controlling the inliner and other inter-procedural optimizations. Unlike earlier releases, GCC 10 will ignore parameters controlling optimizations specified at link-time and apply parameters specified at compile-time in the same manner as done for optimization flags. +* Profile driven optimization improvements: +** Profile New Languages and Language-Specific Improvementsmaintenance during compilation and hot/cold code partitioning have been improved. +** Using `-fprofile-values`, an instrumented binary can track multiple values (up to 4) for e.g. indirect calls and provide more precise profile information. + + +=== New Languages and Language-Specific Improvements: + + +* Version 2.6 of the OpenACC specification is now supported in the C, C++ and Fortran compilers. See the implementation status section on the OpenACC wiki page and the run-time library documentation for further information. +* OpenMP and OpenACC now support offloading to AMD Radeon (GCN) GPUs; supported are the third-generation Fiji (fiji) and the fifth-generation VEGA 10/VEGA 20 (gfx900 or gfx906). + +==== C family +* New attributes. +* New warnings. +* Enhancements to existing warnings + +==== C + +* Several new features from the upcoming C2X revision of the ISO C standard are supported with `-std=c2x` and `-std=gnu2x`. Some of these features are also supported as extensions when compiling for older language versions. In addition to the features listed, some features previously supported as extensions and now added to the C standard are enabled by default in C2X mode and not diagnosed with `-std=c2x -Wpedantic`. +* GCC now defaults to `-fno-common`. As a result, global variable accesses are more efficient on various targets. In C, global variables with multiple tentative definitions now result in linker errors. With `-fcommon` such definitions are silently merged during linking. + +==== C++ + +* Several `C++20` features have been implemented. +* Several `C++ Defect` Reports have been resolved. +* New warnings. +* G++ can now detect modifying constant objects in constexpr evaluation (which is undefined behavior). +* G++ no longer emits bogus -Wsign-conversion warnings with explicit casts. +* Narrowing is now detected in more contexts (e.g., case values). +* Memory consumption of the compiler has been reduced in constexpr evaluation. +* The noexcept-specifier is now properly treated as a complete-class context as per [class.mem]. +* The attribute deprecated can now be used on namespaces too. + +==== Runtime Library (libstdc++) + +* Improved experimental `C++2a` support, including. +* Support for RDSEED in `std::random_device`. +* Reduced header dependencies, leading to faster compilation for some code. + + +== The GNU C Library version 2.31: + +Fedora 32 provides the GNU C Library - `glibc` - version 2.31. Notable changes include: + +=== New Features: + +* The GNU C Library now supports a feature test macro _ISOC2X_SOURCE + to enable features from the draft ISO C2X standard. Only some + features from this draft standard are supported by the GNU C + Library, and as the draft is under active development, the set of + features enabled by this macro is liable to change. Features from + C2X are also enabled by _GNU_SOURCE, or by compiling with `gcc + -std=gnu2x`. + +* The `` functions that round their results to a narrower type + now have corresponding type-generic macros in ``, as defined + in TS 18661-1:2014 and TS 18661-3:2015 as amended by the resolution + of Clarification Request 13 to TS 18661-3. + +* The function `pthread_clockjoin_np` has been added, enabling join with + a terminated thread with a specific clock. It allows waiting + against `CLOCK_MONOTONIC` and `CLOCK_REALTIME`. This function is a GNU + extension. + +* New locale added: `mnw_MM` (Mon language spoken in Myanmar). + +* The DNS stub resolver will optionally send the AD (authenticated + data) bit in queries if the trust-ad option is set via the options + directive in /etc/resolv.conf (or if `RES_TRUSTAD` is set in + `_res.options`). In this mode, the AD bit, as provided by the name + server, is available to applications which call res_search and + related functions. In the default mode, the AD bit is not set in + queries, and it is automatically cleared in responses, indicating a + lack of DNSSEC validation. (Therefore, the name servers and the + network path to them are treated as untrusted.) + + +=== Deprecated and Removed Features: + +* The totalorder and totalordermag functions, and the corresponding + functions for other floating-point types, now take pointer arguments + to avoid signaling NaNs possibly being converted to quiet NaNs in + argument passing. This is in accordance with the resolution of + Clarification Request 25 to TS 18661-1, as applied for C2X. + Existing binaries that pass floating-point arguments directly will + continue to work. + +* The obsolete function stime is no longer available to newly linked + binaries, and its declaration has been removed from ``. + Programs that set the system time should use `clock_settime` instead. + +* We plan to remove the obsolete function ftime, and the header + ``, in a future version of glibc. In this release, the + header still exists but calling ftime will cause a compiler warning. + All programs should use gettimeofday or clock_gettime instead. + +* The gettimeofday function no longer reports information about a + system-wide time zone. This 4.2-BSD-era feature has been deprecated + for many years, as it cannot handle the full complexity of the + world`s timezones, but hitherto we have supported it on a + best-effort basis. Changes required to support 64-bit time_t on + 32-bit architectures have made this no longer practical. + + +* The settimeofday function can still be used to set a system-wide + time zone when the operating system supports it. This is because + the Linux kernel reused the API, on some architectures, to describe + a system-wide time-zone-like offset between the software clock + maintained by the kernel, and the "RTC" clock that keeps time when + the system is shut down. + + +* SPARC ISA v7 is no longer supported. v8 is still supported, but + only if the optional CAS instruction is implemented (for instance, + LEON processors are still supported, but SuperSPARC processors are + not). + + +* If a lazy binding failure happens during dlopen, during the + execution of an ELF constructor, the process is now terminated. + Previously, the dynamic loader would return NULL from dlopen, with + the lazy binding error captured in a dlerror message. In general, + this is unsafe because resetting the stack in an arbitrary function + call is not possible. + +* For MIPS hard-float ABIs, the GNU C Library will be configured to + need an executable stack unless explicitly configured at build time + to require minimum kernel version 4.8 or newer. This is because + executing floating-point branches on a non-executable stack on Linux + kernels prior to 4.8 can lead to application crashes for some MIPS + configurations. While currently `PT_GNU_STACK` is not widely used on + MIPS, future releases of GCC are expected to enable non-executable + stack by default with `PT_GNU_STACK` by default and is thus likely to + trigger a crash on older kernels. + + +* System call wrappers for time system calls now use the new time64 + system calls when available. On 32-bit targets, these wrappers + attempt to call the new system calls first and fall back to the + older 32-bit time system calls if they are not present. This may + cause issues in environments that cannot handle unsupported system + calls gracefully by returning `-ENOSYS`. Seccomp sandboxes are + affected by this issue. + +=== Security Related Changes: + +* CVE-2019-19126: ld.so failed to ignore the `LD_PREFER_MAP_32BIT_EXEC` + environment variable during program execution after a security + transition, allowing local attackers to restrict the possible + mapping addresses for loaded libraries and thus bypass ASLR for a + setuid program. Reported by Marcin Kościelnicki. + +For detailed information about glibc-2.31 see the link:https://sourceware.org/legacy-ml/libc-announce/2020/msg00001.html[upstream NEWS document]; note that you may need to scroll down to find version 2.31 as the document continues to be updated. + +<> + + From b195c41b13f5ff348a51287cefbb312d624bfdec Mon Sep 17 00:00:00 2001 From: Jaroslav Klech Date: Apr 08 2020 10:07:06 +0000 Subject: [PATCH 25/52] Describes issue #427 --- diff --git a/modules/release-notes/pages/sysadmin/Distribution.adoc b/modules/release-notes/pages/sysadmin/Distribution.adoc index f66d3af..c3170e1 100644 --- a/modules/release-notes/pages/sysadmin/Distribution.adoc +++ b/modules/release-notes/pages/sysadmin/Distribution.adoc @@ -9,4 +9,21 @@ include::{partialsdir}/entities.adoc[] This change aims to provide more reliable, predictable, and consistent fonts installation as well as better user experience around font dependencies. To achieve this, the change moves the `Provides: font(:lang=*)` tags into the `langpacks-core-font-*` sub-packages of the `langpacks` package. The sub-packages already obtain the default font, locale and input-method for each language. As a result, whenever a missing glyph font installation is requested, the `langpacks-core-font-` package will be installed and will get the default font using the existing `Requires:` tag. +== Physical optical media does not require pre-GA testing +Since Fedora 32, the operating system to be installed from the physical optical media will not need to be tested before the general availability. However, issues regarding physical media boot will still be treated as blocker bugs. + +The change will affect the following images: ++ +* `Fedora-Everything-netinst-x86_64-_RELEASE_MILESTONE_.iso` ++ +* `Fedora-Workstation-Live-x86_64-_RELEASE_MILESTONE_.iso` + +The change aims to address the trend of ever decreasing amount of new computers and laptops with CD/DVD drivers and errors that installation using this media entails. + +As a result, the Fedora QE Team and community testers will have more capacity to test parts of Fedora that are far more visible and exposed to end users. + +[IMPORTANT] +==== +Due to some bugs, users might not be able in some cases to complete the installation from optical media. +==== From cbd57bc1d3f43febdb6d71907423a887c8076901 Mon Sep 17 00:00:00 2001 From: Omair Majid Date: Apr 09 2020 17:16:31 +0000 Subject: [PATCH 26/52] Add .NET Core to the release notes We already had a doc for mono, which is another .NET implementation. So lets moves all the .NET docs into one page, with mono and .NET Core appearing in alphabetical order in that page. --- diff --git a/modules/release-notes/nav.adoc b/modules/release-notes/nav.adoc index 60bb186..2040688 100644 --- a/modules/release-notes/nav.adoc +++ b/modules/release-notes/nav.adoc @@ -30,6 +30,7 @@ include::{partialsdir}/entities.adoc[] *** xref:developers/Development_Erlang.adoc[Erlang] *** xref:developers/Development_Go.adoc[Go] *** xref:developers/Development_Haskell.adoc[Haskell] +*** xref:developers/Development_Dotnet.adoc[.NET] *** xref:developers/Development_Python.adoc[Python] *** xref:developers/Development_Ruby.adoc[Ruby] *** xref:developers/Development_Rust.adoc[Rust] diff --git a/modules/release-notes/pages/developers/Development_Dotnet.adoc b/modules/release-notes/pages/developers/Development_Dotnet.adoc new file mode 100644 index 0000000..c6bd50c --- /dev/null +++ b/modules/release-notes/pages/developers/Development_Dotnet.adoc @@ -0,0 +1,28 @@ + +include::{partialsdir}/entities.adoc[] + +[[sect-dotnet]] += .NET + +== Mono has been updated to 6.6 + +The Mono development platform has been updated from version 5.20 to 6.6. + +For more information about Mono 6.6, see the link:https://www.mono-project.com/docs/about-mono/releases/6.6.0/[upstream release notes]. + +== .NET Core 3.1 + +{empty}.NET Core is now available in Fedora. + +The current version of .NET Core is 3.1, which is the latest Long Term Support (LTS) release. See the https://devblogs.microsoft.com/dotnet/announcing-net-core-3-1/[upstream annoucement] for all the new features and user visible changes in this release of .NET Core. + +=== New packages + +* .NET Core Runtimes: +** `dotnet-runtime-3.1` provides the .NET Core Runtime +** `aspnetcore-runtime-3.1` provides the ASP.NET Core Runtime +* .NET Core SDK: +** `dotnet-sdk-3.1` provides the .NET Core SDK + +<> + diff --git a/modules/release-notes/pages/developers/Development_Tools.adoc b/modules/release-notes/pages/developers/Development_Tools.adoc index 4fad4bb..96a73e6 100644 --- a/modules/release-notes/pages/developers/Development_Tools.adoc +++ b/modules/release-notes/pages/developers/Development_Tools.adoc @@ -11,10 +11,3 @@ A new lab called Comp-NeuroFedora has been added to the suite. This change provi For more information about Comp-NeuroFedora, see the link:https://neuro.fedoraproject.org[upstream documentation]. For a list of Fedora labs, see the link:https://labs.fedoraproject.org/[Functional bundles for Fedora] page. - - -== Mono has been updated to 6.6 - -The Mono development platform has been updated from version 5.20 to 6.6. - -For more information about Mono 6.6, see the link:https://www.mono-project.com/docs/about-mono/releases/6.6.0/[upstream release notes]. From eae7dcc99b93ea973078b4d6e838e9bb239d6f53 Mon Sep 17 00:00:00 2001 From: roypen Date: Apr 10 2020 20:27:10 +0000 Subject: [PATCH 27/52] LLVM release notes and menu entry Signed-off-by: roypen --- diff --git a/modules/release-notes/nav.adoc b/modules/release-notes/nav.adoc index 32e2a24..33481ad 100644 --- a/modules/release-notes/nav.adoc +++ b/modules/release-notes/nav.adoc @@ -29,6 +29,7 @@ include::{partialsdir}/entities.adoc[] *** xref:developers/Development_Erlang.adoc[Erlang] *** xref:developers/Development_Go.adoc[Go] *** xref:developers/Development_Haskell.adoc[Haskell] +*** xref:developers/Development_LLVM.adoc[LLVM] *** xref:developers/Development_Python.adoc[Python] *** xref:developers/Development_Ruby.adoc[Ruby] *** xref:developers/Development_Rust.adoc[Rust] diff --git a/modules/release-notes/pages/developers/Development_LLVM.adoc b/modules/release-notes/pages/developers/Development_LLVM.adoc new file mode 100644 index 0000000..2aa030f --- /dev/null +++ b/modules/release-notes/pages/developers/Development_LLVM.adoc @@ -0,0 +1,34 @@ + +include::{partialsdir}/entities.adoc[] + +[[sect-llvm]] + += LLVM + +== LLVM 10.0.0 + +Fedora 32 comes with LLVM 10. Please note that the `soname` version for LLVM libraries has been changed. Maintainers of packages that depend on `clang-libs` or `llvm-libs` will need to update their spec files to depend on the `clang9.0` and `llvm9.0` compatibility packages if they want to rebuild their package and it does not work with LLVM 10 yet. Compatibility packages `clang9.0` and `llvm9.0` was added to this release. Spec file changes are only needed if the package is going to be rebuilt after LLVM 10 and Fedora update. + +=== Changes: + +Full list of new features, improvements and bug fixes that comes with LLVM 10 can be found here: + +https://releases.llvm.org/10.0.0/docs/ReleaseNotes.html[upstream release notes] + +==== All LLVM sub-projects in Fedora 32 was also updated to version 10 : + +* clang https://releases.llvm.org/10.0.0/tools/clang/docs/ReleaseNotes.html[details] +* lld https://releases.llvm.org/10.0.0/tools/lld/docs/ReleaseNotes.html[details] +* lldb https://releases.llvm.org/10.0.0/docs/ReleaseNotes.html#changes-to-lldb[details] +* libcxx (libc++) https://releases.llvm.org/10.0.0/projects/libcxx/docs/ReleaseNotes.html[details] + +==== As well as: + +* compiler-rt +* libomp +* llvm-test-suite +* libcxxabi (libc++abi) +* python-lit + + + From 19baeaa5526e760c5ae66e56c39c252fc716745e Mon Sep 17 00:00:00 2001 From: roypen Date: Apr 10 2020 20:31:54 +0000 Subject: [PATCH 28/52] Corrected Plus sigh Signed-off-by: roypen --- diff --git a/modules/release-notes/pages/developers/Development_LLVM.adoc b/modules/release-notes/pages/developers/Development_LLVM.adoc index 2aa030f..86cd713 100644 --- a/modules/release-notes/pages/developers/Development_LLVM.adoc +++ b/modules/release-notes/pages/developers/Development_LLVM.adoc @@ -20,14 +20,14 @@ https://releases.llvm.org/10.0.0/docs/ReleaseNotes.html[upstream release notes] * clang https://releases.llvm.org/10.0.0/tools/clang/docs/ReleaseNotes.html[details] * lld https://releases.llvm.org/10.0.0/tools/lld/docs/ReleaseNotes.html[details] * lldb https://releases.llvm.org/10.0.0/docs/ReleaseNotes.html#changes-to-lldb[details] -* libcxx (libc++) https://releases.llvm.org/10.0.0/projects/libcxx/docs/ReleaseNotes.html[details] +* libcxx (libc{plus}{plus}) https://releases.llvm.org/10.0.0/projects/libcxx/docs/ReleaseNotes.html[details] ==== As well as: * compiler-rt * libomp * llvm-test-suite -* libcxxabi (libc++abi) +* libcxxabi (libc{plus}{plus}abi) * python-lit From fe46b5b85c6f93e6531bfec08b05abcfbc25310e Mon Sep 17 00:00:00 2001 From: Marek Suchánek Date: Apr 12 2020 20:19:04 +0000 Subject: [PATCH 29/52] Add a RN for the Haskell update; Issue #444 --- diff --git a/modules/release-notes/pages/developers/Development_Haskell.adoc b/modules/release-notes/pages/developers/Development_Haskell.adoc index 7a2af12..e975cae 100644 --- a/modules/release-notes/pages/developers/Development_Haskell.adoc +++ b/modules/release-notes/pages/developers/Development_Haskell.adoc @@ -3,3 +3,12 @@ include::{partialsdir}/entities.adoc[] [[sect-haskell]] = Haskell + +== The Haskell platform has been updated + +This release updates the Haskell libraries that are packaged in Fedora. The libraries update from the Stackage platform version 13 LTS to version 14 LTS. + +Note that not all packages from Stackage are included in Fedora. + +For more information about Stackage 14 LTS, see link:https://www.stackage.org/lts-14[]. + From 151a576424d3b16a9e9c46f7f74ebf0e6ac30ac0 Mon Sep 17 00:00:00 2001 From: Marek Suchánek Date: Apr 12 2020 20:44:26 +0000 Subject: [PATCH 30/52] Add a RN for the Python2 removal; Issue #338 --- diff --git a/modules/release-notes/pages/developers/Development_Python.adoc b/modules/release-notes/pages/developers/Development_Python.adoc index 9a2ac8c..123a655 100644 --- a/modules/release-notes/pages/developers/Development_Python.adoc +++ b/modules/release-notes/pages/developers/Development_Python.adoc @@ -3,3 +3,25 @@ include::{partialsdir}/entities.adoc[] [[sect-python]] = Python + +== Python 2 has been removed + +The Python upstream stopped supporting Python 2 on 1 January 2020. For this reason, Fedora 32 removes Python 2 packages. + +The following packages are no longer available: + +* The `python2` package and all its subpackages +* All packages that need Python 2 to run +* All packages that need Python 2 to build + +Fedora 32 still provides a legacy `python27` package. This package is intended for developers who need to support Python 2 and for users who need to use software that depends on Python 2. + +The `python27` package has several limitations compared to the original `python2` package: + +* The package has no subpackages. All content is stored in the single package. +* The package provides no debug build, which was previously available as `python2-debug`. +* The package does note provide the `/usr/bin/python` binary. + +// TODO: I don't quite understand this point. Rephrase? +// * Any special backwards compatible Provides are removed (this package is not intended to be depended upon) + From ff454ba058e36e7c782b11a35dc44b8ab6957da8 Mon Sep 17 00:00:00 2001 From: Marek Suchánek Date: Apr 12 2020 21:29:26 +0000 Subject: [PATCH 31/52] Add a RN for fstrim.timer; Issue #430 --- diff --git a/modules/release-notes/nav.adoc b/modules/release-notes/nav.adoc index 60bb186..ebde516 100644 --- a/modules/release-notes/nav.adoc +++ b/modules/release-notes/nav.adoc @@ -13,6 +13,7 @@ include::{partialsdir}/entities.adoc[] *** xref:sysadmin/Security.adoc[Security] *** xref:sysadmin/Automation.adoc[Automation] *** xref:sysadmin/Virtualization.adoc[Virtualization] +*** xref:sysadmin/Storage.adoc[Storage] *** xref:sysadmin/Mail_Servers.adoc[Mail Servers] *** xref:sysadmin/Xorg.adoc[X.Org] *** xref:sysadmin/System_Utilities.adoc[System Utilities] diff --git a/modules/release-notes/pages/sysadmin/Storage.adoc b/modules/release-notes/pages/sysadmin/Storage.adoc new file mode 100644 index 0000000..72d0d25 --- /dev/null +++ b/modules/release-notes/pages/sysadmin/Storage.adoc @@ -0,0 +1,18 @@ + +include::{partialsdir}/entities.adoc[] + +[[sect-storage]] += Storage + +== Weekly file system TRIM is now enabled + +The `fstrim.timer` unit is now enabled by default for new installations and upgrades. The unit weekly runs the `fstrim` tool, which sends the `TRIM` command to all mounted file systems that are listed in the `/etc/fstab` file. + +The `TRIM` command informs physical and virtual storage devices about unused blocks. This has the following effects: + +* The hinting can make wear leveling and block erasure more efficient. +* `TRIM` returns free logical extents on LVM thin provisioning to the thin pool. +* `TRIM` prevents the slow downs that might occur in certain flash storage devices. + +For details about the `TRIM` command and the `fstrim` tool, see the `fstrim` man page. + From 398a84c41106b011a6753cbe2cbd4db14435134b Mon Sep 17 00:00:00 2001 From: Marek Suchánek Date: Apr 12 2020 22:08:44 +0000 Subject: [PATCH 32/52] Add a RN for earlyoom; Issue #447 --- diff --git a/modules/release-notes/pages/sysadmin/Kernel.adoc b/modules/release-notes/pages/sysadmin/Kernel.adoc index a5f7301..95a9d48 100644 --- a/modules/release-notes/pages/sysadmin/Kernel.adoc +++ b/modules/release-notes/pages/sysadmin/Kernel.adoc @@ -3,3 +3,19 @@ include::{partialsdir}/entities.adoc[] [[sect-kernel]] = Kernel + +== Quicker recovery from low-memory situations in Fedora Workstation + +// TODO: Revisit the section placement. This RN isn't really about the kernel -- the change was made in user space, not kernel space. However, it is sufficiently low-level, affecting memory management. + +The `earlyoom` service is now enabled by default in Fedora Workstation. + +The `earlyoom` service monitors system memory usage. If free memory falls below a set limit, `earlyoom` terminates an appropriate process to free up memory. As a result, the system does not become unresponsive for long periods of time in low-memory situations. + +The following is the default `earlyoom` configuration: + +1. If both RAM and swap go below 10% free, `earlyoom` sends the `SIGTERM` signal to the process with the largest `oom_score`. +2. If both RAM and swap go below 5% free, `earlyoom` sends the `SIGKILL` signal to the process with the largest `oom_score`. + +For more information, see the `earlyoom` man page. + From 619b326a7fa07e4a1801ef8413b8af55ba3f376c Mon Sep 17 00:00:00 2001 From: Marek Suchánek Date: Apr 12 2020 22:29:46 +0000 Subject: [PATCH 33/52] Add a RN for Jekyll; Issue #388 --- diff --git a/modules/release-notes/pages/developers/Development_Ruby.adoc b/modules/release-notes/pages/developers/Development_Ruby.adoc index c496224..547e275 100644 --- a/modules/release-notes/pages/developers/Development_Ruby.adoc +++ b/modules/release-notes/pages/developers/Development_Ruby.adoc @@ -1,22 +1,24 @@ include::{partialsdir}/entities.adoc[] [[sect-ruby]] -= Ruby 2.7 += Ruby + +== Ruby 2.7 Fedora 32 provides Ruby 2.7 version. With this major update from Ruby 2.6, Fedora becomes the superior Ruby development platform. [[back]] -== Changes since Ruby 2.6: +=== Changes since Ruby 2.6: Ruby 2.7 comes with several new features and performance improvements. -=== New features: +==== New features: * <> * <> * <> * <> -=== Performance improvements: +==== Performance improvements: * JIT [Experimental] * Fiber’s cache strategy is changed and fiber creation is speeded up. @@ -26,7 +28,7 @@ Ruby 2.7 comes with several new features and performance improvements. * `Per-call-site` method cache, which has been there since around 1.9, was improved: cache hit rate raised from 89% to 94%. * `RubyVM::InstructionSequence#to_binary` method generates compiled binary. The binary size is reduced. -=== Other notable changes: +==== Other notable changes: * Some standard libraries are updated. @@ -79,11 +81,11 @@ Ruby 2.7 comes with several new features and performance improvements. * Require compilers to support C99. -== Detailed changes: +=== Detailed changes: [[Pattern]] -=== Pattern Matching [Experimental] +==== Pattern Matching [Experimental] @@ -109,14 +111,14 @@ end [[REPL]] -=== REPL improvement +==== REPL improvement `irb`, the bundled interactive environment (REPL; Read-Eval-Print-Loop), now supports multi-line editing. It is powered by `reline`, a `readline` -compatible library implemented in pure Ruby. It also provides rdoc integration. In `irb` you can display the reference for a given class, module, or method. [[GC]] -=== Compaction GC +==== Compaction GC This release introduces Compaction GC which can defragment a fragmented memory space. @@ -128,12 +130,12 @@ The `GC.compact` method is introduced for compacting the heap. This function com [[Separation]] -=== Separation of positional and keyword arguments +==== Separation of positional and keyword arguments Automatic conversion of keyword arguments and positional arguments is deprecated, and conversion will be removed in Ruby 3. -==== Changes: +===== Changes: @@ -205,6 +207,19 @@ If you want to disable the deprecation warnings, please use a command-line argum See the link:https://www.ruby-lang.org/en/news/2019/12/25/ruby-2-7-0-released/[upstream release announcement] for more detailed information about this release. -<> +== Jekyll has been updated to version 4 + +// TODO: Make sure that I didn't break anything by nesting the previous release note one level deeper. + +The *Jekyll* static page generator and its plug-ins have been updated to version 4.0.0. + +This version includes the following changes compared to version 3.8: + +* Significant performance improvements +* Cleanups and bug fixes +* Other minor changes incompatible with the previous release + +For more information about *Jekyll* 4.0.0, see link:https://jekyllrb.com/news/2019/08/20/jekyll-4-0-0-released/[]. + From d83bd1bf296d94511a5a1381656028418b476296 Mon Sep 17 00:00:00 2001 From: Frank Crawford Date: Apr 13 2020 16:26:26 +0000 Subject: [PATCH 34/52] Update modules/release-notes/pages/sysadmin/System_Utilities.adoc Added release notes for rdiff-backup v2.0.0 for F32 release. --- diff --git a/modules/release-notes/pages/sysadmin/System_Utilities.adoc b/modules/release-notes/pages/sysadmin/System_Utilities.adoc index 0a726c8..4e3ac11 100644 --- a/modules/release-notes/pages/sysadmin/System_Utilities.adoc +++ b/modules/release-notes/pages/sysadmin/System_Utilities.adoc @@ -1,4 +1,3 @@ - include::{partialsdir}/entities.adoc[] [[sect-system-utilities]] @@ -28,3 +27,36 @@ Notable changes include: For full information about this release, see the link:https://mariadb.com/kb/en/changes-improvements-in-mariadb-104/[official MariaDB release notes]. +== rdiff-backup 2.0.0 + +This new release has been made truly ready for the future, with a move to https://github.com/rdiff-backup[GitHub], Python 3 support, automated CI/CD +pipeline on https://travis-ci.org/rdiff-backup[Travis], availability on https://pypi.org/project/rdiff-backup[PyPi] and no known regression bug +compared to version 1.2.8/1.3.3. + +We even found the time to add a few features for you (details in the https://github.com/rdiff-backup/rdiff-backup/blob/v2.0.0/CHANGELOG[change log]): + +* sparse files handling has become more efficient on file systems which support it +* more compressed file formats are kept as-is +* have a look at the `--no-fsync` option to improve speed of backup (at the slight risk of data loss) +* reproducible builds are possible +* verbosity can be set via environment variable `RDIFF_BACKUP_VERBOSITY` + +On the down side, we have to say that due to the many changes, rdiff-backup 2.x can't communicate with older versions 1.x in client-server mode (*but* the +repository formats remain compatible), so you'll need to upgrade client and server at once. + +Which brings us to the installation, described in details in the https://github.com/rdiff-backup/rdiff-backup/blob/v2.0.0/README.md[read me], +but here's the quick version: + +* On Fedora 32, in this distribution +* On Fedora 30 and 31 available as an update +* CentOS/RHEL 7 and 8, available as an update in https://fedoraproject.org/wiki/EPEL[EPEL] +* On Ubuntu, you may use https://code.launchpad.net/~rdiff-backup/+archive/ubuntu/rdiff-backup-development[Otto's PPA repo] +* Windows, download the asset `rdiff-backup-2.0.0.win32exe.zip` from https://github.com/rdiff-backup/rdiff-backup/releases/tag/v2.0.0[here] and +unpack it somewhere in your `PATH`. +* Any other supported platform, use `pip install rdiff-backup` (or download and install the proper asset from +https://github.com/rdiff-backup/rdiff-backup/releases/tag/v2.0.0[here]). + +If you encounter issues, log a ticket in https://bugzilla.redhat.com/[Bugzilla], contact us on the https://lists.nongnu.org/mailman/listinfo/rdiff-backup-user[rdiff-backup-users mailing list] +and/or https://github.com/rdiff-backup/rdiff-backup/issues/new[report an issue]. + +Happy backup, and remember: _no_ backup, _no_ pity! From e0a6993425ada8c424a3d67d36dfc63ed5c97943 Mon Sep 17 00:00:00 2001 From: Eliane Pereira Date: Apr 13 2020 16:29:20 +0000 Subject: [PATCH 35/52] iss437 Golang packages rebase --- diff --git a/modules/release-notes/pages/developers/Development_Go.adoc b/modules/release-notes/pages/developers/Development_Go.adoc index f06a944..370fb21 100644 --- a/modules/release-notes/pages/developers/Development_Go.adoc +++ b/modules/release-notes/pages/developers/Development_Go.adoc @@ -3,3 +3,13 @@ include::{partialsdir}/entities.adoc[] [[sect-development-go]] = Go + +== Golang Packages rebase to version 1.14 + +A rebase of the `Golang` packages is present in the version 1.14 on Fedora 32. + +This rebase provides performance improvements in support for currently supported platforms among other bug fixes and new features. + +For a complete list of changes see the notes at link:https://tip.golang.org/doc/go1.14.[Go 1.14 Release Notes] + +As a result, Fedora will be providing a solid development platform for the Go language. From 03176e057c75ee29ae669530ef3b306c45fdcf96 Mon Sep 17 00:00:00 2001 From: Eliane Pereira Date: Apr 13 2020 16:30:04 +0000 Subject: [PATCH 36/52] iss446 postgreSQL update --- diff --git a/modules/release-notes/pages/developers/Developers.adoc b/modules/release-notes/pages/developers/Developers.adoc index 1488cd6..747b358 100644 --- a/modules/release-notes/pages/developers/Developers.adoc +++ b/modules/release-notes/pages/developers/Developers.adoc @@ -4,3 +4,9 @@ include::{partialsdir}/entities.adoc[] This section lists changes in Fedora {PRODVER} relevant to developers. Use the navigation tab on the left to view release notes for various languages. + +== PostgreSQL has been updated to version 12 in the non-modular builds + +PostgreSQL `postgresql` and `libpq components have been updated in Fedora 32 from 11 to 12 version in the non-modular main builds. + +For a complete list of enhancements, see link:https://www.postgresql.org/docs/12/release-12.html[PostgreSQL Release 12] From f216c8d165803ff3ace751c3eed044b84396ee89 Mon Sep 17 00:00:00 2001 From: Eliane Pereira Date: Apr 13 2020 16:31:38 +0000 Subject: [PATCH 37/52] Describes iss448 changing in the release criteria for ARM and AARch64 --- diff --git a/modules/release-notes/pages/desktop/Desktop.adoc b/modules/release-notes/pages/desktop/Desktop.adoc index d348ffc..bd3e580 100644 --- a/modules/release-notes/pages/desktop/Desktop.adoc +++ b/modules/release-notes/pages/desktop/Desktop.adoc @@ -3,3 +3,15 @@ include::{partialsdir}/entities.adoc[] [[sect-desktop]] = Desktop + +== Change the Desktop release criteria for ARM and AArch64 + +The following release criteria changes are now present in Fedora 32: + +* drop `Xfce` on 32-bit ARM from release-blocking desktops +* workstation on AArch64 to release-blocking desktops + +The new additions to release-blocking deliverables include `IoT` and `CoreOS` architecture. +To reduce the overall test coverage and release-blocking desktops it no longer blocks on the 32-Bit `ARM Xfce` Desktop spin and adds `Workstation` on AArch64 as a release-blocking desktop. + +As a result, this change reduces the release-blocking desktops and potential for blocker bugs. From 1ed40ad2475390bd605f79e5809bb86e1b99c10a Mon Sep 17 00:00:00 2001 From: Marek Suchánek Date: Apr 13 2020 18:00:57 +0000 Subject: [PATCH 38/52] Add a RN for OpenType bitmap fonts; Issue #443 --- diff --git a/modules/release-notes/pages/desktop/Desktop.adoc b/modules/release-notes/pages/desktop/Desktop.adoc index d348ffc..112478b 100644 --- a/modules/release-notes/pages/desktop/Desktop.adoc +++ b/modules/release-notes/pages/desktop/Desktop.adoc @@ -3,3 +3,21 @@ include::{partialsdir}/entities.adoc[] [[sect-desktop]] = Desktop + +== Selected bitmap fonts are now available as OpenType + +In Fedora 31, the *Pango* library switched to the *HarfBuzz* back end, which does not support bitmap fonts. Applications that use *Pango* for font rendering, such as *GNOME Terminal*, can no longer use bitmap fonts. + +This release introduces new packages that provide selected bitmap fonts converted to the OpenType format. This format is supported by *Pango*. + +The following packages now provide OpenType versions of bitmap fonts: + +* `bitmap-lucida-typewriter-opentype-fonts` +* `bitmap-fangsongti-opentype-fonts` +* `bitmap-console-opentype-fonts` +* `bitmap-fixed-opentype-fonts` +* `ucs-miscfixed-opentype-fonts` +* `terminus-fonts` + +You cannot install both the bitmap and OpenType versions of the packages, with the exception of `terminus-fonts`, which includes both formats. + From 1b86adce3ed0a174d922a12b502b261385a3fccf Mon Sep 17 00:00:00 2001 From: Marek Suchánek Date: Apr 13 2020 18:11:06 +0000 Subject: [PATCH 39/52] Checked that my Ruby RN doesn't break anything; fixes in list alignment for the Ruby 2.7 RN --- diff --git a/modules/release-notes/pages/developers/Development_Ruby.adoc b/modules/release-notes/pages/developers/Development_Ruby.adoc index 547e275..7315762 100644 --- a/modules/release-notes/pages/developers/Development_Ruby.adoc +++ b/modules/release-notes/pages/developers/Development_Ruby.adoc @@ -140,7 +140,7 @@ Automatic conversion of keyword arguments and positional arguments is deprecated * When a method call passes a Hash at the last argument, and when it passes no keywords, and when the called method accepts keywords, a warning is emitted. To continue treating the hash as keywords, add a double splat operator to avoid the warning and ensure correct behavior in Ruby 3. - ++ [source,ruby] ---- def foo(key: 42); end; foo({key: 42}) # warned @@ -150,7 +150,7 @@ Automatic conversion of keyword arguments and positional arguments is deprecated ---- * When a method call passes keywords to a method that accepts keywords, but it does not pass enough required positional arguments, the keywords are treated as a final required positional argument, and a warning is emitted. Pass the argument as a hash instead of keywords to avoid the warning and ensure correct behavior in Ruby 3. - ++ [source,ruby] ---- def foo(h, **kw); end; foo(key: 42) # warned @@ -160,7 +160,7 @@ Automatic conversion of keyword arguments and positional arguments is deprecated ---- * When a method accepts specific keywords but not a keyword splat, and a hash or keywords splat is passed to the method that includes both Symbol and non-Symbol keys, the hash will continue to be split, and a warning will be emitted. You will need to update the calling code to pass separate hashes to ensure correct behavior in Ruby 3. - ++ [source,ruby] ---- def foo(h={}, key: 42); end; foo("key" => 43, key: 42) # warned @@ -169,21 +169,21 @@ Automatic conversion of keyword arguments and positional arguments is deprecated ---- * If a method does not accept keywords, and is called with keywords, the keywords are still treated as a positional hash, with no warning. This behavior will continue to work in Ruby 3. - ++ [source,ruby] ---- def foo(opt={}); end; foo( key: 42 ) # OK ---- * Non-symbols are allowed as keyword argument keys if the method accepts arbitrary keywords. - ++ [source,ruby] ---- def foo(**kw); p kw; end; foo("str" => 1) #=> {"str"=>1} ---- * `**nil` is allowed in method definitions to explicitly mark that the method accepts no keywords. Calling such a method with keywords will result in an `ArgumentError`. - ++ [source,ruby] ---- def foo(h, **nil); end; foo(key: 1) # ArgumentError @@ -194,7 +194,7 @@ Automatic conversion of keyword arguments and positional arguments is deprecated ---- * Passing an empty keyword splat to a method that does not accept keywords no longer passes an empty hash, unless the empty hash is necessary for a required parameter, in which case a warning will be emitted. Remove the double splat to continue passing a positional hash. - ++ [source,ruby] ---- h = {}; def foo(*a) a end; foo(**h) # [] @@ -211,8 +211,6 @@ See the link:https://www.ruby-lang.org/en/news/2019/12/25/ruby-2-7-0-released/[u == Jekyll has been updated to version 4 -// TODO: Make sure that I didn't break anything by nesting the previous release note one level deeper. - The *Jekyll* static page generator and its plug-ins have been updated to version 4.0.0. This version includes the following changes compared to version 3.8: From 0bab5e30df7f10fe6c9b6b24178819bf3dc3fd0c Mon Sep 17 00:00:00 2001 From: Marek Suchánek Date: Apr 13 2020 18:13:19 +0000 Subject: [PATCH 40/52] Fix list formatting in the Django 3.0 RN --- diff --git a/modules/release-notes/pages/developers/Development_Web.adoc b/modules/release-notes/pages/developers/Development_Web.adoc index 1c2e32d..945610f 100644 --- a/modules/release-notes/pages/developers/Development_Web.adoc +++ b/modules/release-notes/pages/developers/Development_Web.adoc @@ -7,17 +7,17 @@ include::{partialsdir}/entities.adoc[] == Django 3.0 The `python-django` package has been updated to version 3.0 in Fedora 32. Notable changes in this version include: -+ + * ASGI support -+ + * Official MariaDB support -+ + * Exclusion constraints on PostgreSQL -+ + * Enumerations for model field choices -+ + * Various new minor features -+ + * Several deprecations and removals See the link:https://docs.djangoproject.com/en/3.0/releases/3.0/[upstream release notes] for full information about this release. From 2f6ff788e96c405bf03b4b3de6af36ceedfecd47 Mon Sep 17 00:00:00 2001 From: Marek Suchánek Date: Apr 13 2020 18:14:43 +0000 Subject: [PATCH 41/52] Fix list formatting in the optical media RN --- diff --git a/modules/release-notes/pages/sysadmin/Distribution.adoc b/modules/release-notes/pages/sysadmin/Distribution.adoc index c3170e1..daff84c 100644 --- a/modules/release-notes/pages/sysadmin/Distribution.adoc +++ b/modules/release-notes/pages/sysadmin/Distribution.adoc @@ -14,9 +14,9 @@ This change aims to provide more reliable, predictable, and consistent fonts ins Since Fedora 32, the operating system to be installed from the physical optical media will not need to be tested before the general availability. However, issues regarding physical media boot will still be treated as blocker bugs. The change will affect the following images: -+ + * `Fedora-Everything-netinst-x86_64-_RELEASE_MILESTONE_.iso` -+ + * `Fedora-Workstation-Live-x86_64-_RELEASE_MILESTONE_.iso` The change aims to address the trend of ever decreasing amount of new computers and laptops with CD/DVD drivers and errors that installation using this media entails. From afa00882c3e99cbea71cc3502a00b4c383bce5e8 Mon Sep 17 00:00:00 2001 From: Marek Suchánek Date: Apr 13 2020 18:16:04 +0000 Subject: [PATCH 42/52] Fix list formatting in the MariaDB 10.4 RN --- diff --git a/modules/release-notes/pages/sysadmin/System_Utilities.adoc b/modules/release-notes/pages/sysadmin/System_Utilities.adoc index 0a726c8..5b54ac6 100644 --- a/modules/release-notes/pages/sysadmin/System_Utilities.adoc +++ b/modules/release-notes/pages/sysadmin/System_Utilities.adoc @@ -13,17 +13,17 @@ In Fedora 32, the `breezy` package for a version control system obsoletes the `b Fedora 32 provides the `mariadb` package 10.4, up from version 10.3 in Fedora 31. Notable changes include: -+ + * The `root` and `mysql` users can log in without a password using the `unix_socket` authentication plugin. -+ + * Possibility to use more than one authentication plugins for each user account. -+ + * Support for user password expiry. -+ + * Implementation of the optimizer trace. -+ + * Performance increase in Unicode collations. -+ + * Various changes in syntax, variables and the InnoDB storage engine. For full information about this release, see the link:https://mariadb.com/kb/en/changes-improvements-in-mariadb-104/[official MariaDB release notes]. From 9ba2afb5d08cd33f69215f1314703047a28fadfb Mon Sep 17 00:00:00 2001 From: Eliane Pereira Date: Apr 13 2020 18:39:52 +0000 Subject: [PATCH 43/52] iss432 describing adopting sysuser.d format --- diff --git a/modules/release-notes/pages/sysadmin/Sysadmins.adoc b/modules/release-notes/pages/sysadmin/Sysadmins.adoc index ff39b19..b0aed22 100644 --- a/modules/release-notes/pages/sysadmin/Sysadmins.adoc +++ b/modules/release-notes/pages/sysadmin/Sysadmins.adoc @@ -4,3 +4,33 @@ include::{partialsdir}/entities.adoc[] This section lists changes in Fedora {PRODVER} relevant to system administrators. Use the navigation tab on the left to view release notes for various fields of interest. + += System-Wide Change: Adopting sysusers.d format + +Previously, users were created in `%pre` file by calling the commands `getent`, `useradd`, and `groupadd`. + +With this update, user are defined in the `sysusers.d` format. +It adds an rpm package `Provides generator` to create user() and group() virtual Provides for packages with sysusers.d files. + +An rpm package `Provides` generator is added to generate user() and group() for packages with sysusers.d files. + +As a benefit: + +* the packages declare system users using a uniform syntax. +* standardize the scriptlet part. +* admins may easily introspect the system user list and which packages require users. +* admins may easily override definitions of system users by providing appropriate `sysusers.d` files with higher priority. ++ +NOTE: users are still created using old-style `useradd` calls. + +As a result, it makes possible to introspect system users. + + + + + + + + + + From 4208635ca6f082ef57348dea1613ec6555dd9d12 Mon Sep 17 00:00:00 2001 From: Eliane Pereira Date: Apr 13 2020 18:39:52 +0000 Subject: [PATCH 44/52] Fixes misisng title level --- diff --git a/modules/release-notes/pages/sysadmin/Sysadmins.adoc b/modules/release-notes/pages/sysadmin/Sysadmins.adoc index b0aed22..00bb165 100644 --- a/modules/release-notes/pages/sysadmin/Sysadmins.adoc +++ b/modules/release-notes/pages/sysadmin/Sysadmins.adoc @@ -5,7 +5,7 @@ include::{partialsdir}/entities.adoc[] This section lists changes in Fedora {PRODVER} relevant to system administrators. Use the navigation tab on the left to view release notes for various fields of interest. -= System-Wide Change: Adopting sysusers.d format +== System-Wide Change: Adopting sysusers.d format Previously, users were created in `%pre` file by calling the commands `getent`, `useradd`, and `groupadd`. From 09e835e03a6f289b7fea71d6ac63a07e0b126035 Mon Sep 17 00:00:00 2001 From: Petr Bokoc Date: Apr 13 2020 18:49:28 +0000 Subject: [PATCH 45/52] Merge branch 'pr479' into f32 --- diff --git a/modules/release-notes/nav.adoc b/modules/release-notes/nav.adoc index 2040688..f2ae2c9 100644 --- a/modules/release-notes/nav.adoc +++ b/modules/release-notes/nav.adoc @@ -13,6 +13,7 @@ include::{partialsdir}/entities.adoc[] *** xref:sysadmin/Security.adoc[Security] *** xref:sysadmin/Automation.adoc[Automation] *** xref:sysadmin/Virtualization.adoc[Virtualization] +*** xref:sysadmin/Storage.adoc[Storage] *** xref:sysadmin/Mail_Servers.adoc[Mail Servers] *** xref:sysadmin/Xorg.adoc[X.Org] *** xref:sysadmin/System_Utilities.adoc[System Utilities] diff --git a/modules/release-notes/pages/desktop/Desktop.adoc b/modules/release-notes/pages/desktop/Desktop.adoc index bd3e580..4fab8d7 100644 --- a/modules/release-notes/pages/desktop/Desktop.adoc +++ b/modules/release-notes/pages/desktop/Desktop.adoc @@ -12,6 +12,23 @@ The following release criteria changes are now present in Fedora 32: * workstation on AArch64 to release-blocking desktops The new additions to release-blocking deliverables include `IoT` and `CoreOS` architecture. -To reduce the overall test coverage and release-blocking desktops it no longer blocks on the 32-Bit `ARM Xfce` Desktop spin and adds `Workstation` on AArch64 as a release-blocking desktop. +To reduce the overall test coverage and release-blocking desktops it no longer blocks on the 32-Bit `ARM Xfce` Desktop spin and adds `Workstation` on AArch64 as a release-blocking desktop. As a result, this change reduces the release-blocking desktops and potential for blocker bugs. + +== Selected bitmap fonts are now available as OpenType + +In Fedora 31, the *Pango* library switched to the *HarfBuzz* back end, which does not support bitmap fonts. Applications that use *Pango* for font rendering, such as *GNOME Terminal*, can no longer use bitmap fonts. + +This release introduces new packages that provide selected bitmap fonts converted to the OpenType format. This format is supported by *Pango*. + +The following packages now provide OpenType versions of bitmap fonts: + +* `bitmap-lucida-typewriter-opentype-fonts` +* `bitmap-fangsongti-opentype-fonts` +* `bitmap-console-opentype-fonts` +* `bitmap-fixed-opentype-fonts` +* `ucs-miscfixed-opentype-fonts` +* `terminus-fonts` + +You cannot install both the bitmap and OpenType versions of the packages, with the exception of `terminus-fonts`, which includes both formats. diff --git a/modules/release-notes/pages/developers/Development_Haskell.adoc b/modules/release-notes/pages/developers/Development_Haskell.adoc index 7a2af12..e975cae 100644 --- a/modules/release-notes/pages/developers/Development_Haskell.adoc +++ b/modules/release-notes/pages/developers/Development_Haskell.adoc @@ -3,3 +3,12 @@ include::{partialsdir}/entities.adoc[] [[sect-haskell]] = Haskell + +== The Haskell platform has been updated + +This release updates the Haskell libraries that are packaged in Fedora. The libraries update from the Stackage platform version 13 LTS to version 14 LTS. + +Note that not all packages from Stackage are included in Fedora. + +For more information about Stackage 14 LTS, see link:https://www.stackage.org/lts-14[]. + diff --git a/modules/release-notes/pages/developers/Development_Python.adoc b/modules/release-notes/pages/developers/Development_Python.adoc index 9a2ac8c..123a655 100644 --- a/modules/release-notes/pages/developers/Development_Python.adoc +++ b/modules/release-notes/pages/developers/Development_Python.adoc @@ -3,3 +3,25 @@ include::{partialsdir}/entities.adoc[] [[sect-python]] = Python + +== Python 2 has been removed + +The Python upstream stopped supporting Python 2 on 1 January 2020. For this reason, Fedora 32 removes Python 2 packages. + +The following packages are no longer available: + +* The `python2` package and all its subpackages +* All packages that need Python 2 to run +* All packages that need Python 2 to build + +Fedora 32 still provides a legacy `python27` package. This package is intended for developers who need to support Python 2 and for users who need to use software that depends on Python 2. + +The `python27` package has several limitations compared to the original `python2` package: + +* The package has no subpackages. All content is stored in the single package. +* The package provides no debug build, which was previously available as `python2-debug`. +* The package does note provide the `/usr/bin/python` binary. + +// TODO: I don't quite understand this point. Rephrase? +// * Any special backwards compatible Provides are removed (this package is not intended to be depended upon) + diff --git a/modules/release-notes/pages/developers/Development_Ruby.adoc b/modules/release-notes/pages/developers/Development_Ruby.adoc index c496224..7315762 100644 --- a/modules/release-notes/pages/developers/Development_Ruby.adoc +++ b/modules/release-notes/pages/developers/Development_Ruby.adoc @@ -1,22 +1,24 @@ include::{partialsdir}/entities.adoc[] [[sect-ruby]] -= Ruby 2.7 += Ruby + +== Ruby 2.7 Fedora 32 provides Ruby 2.7 version. With this major update from Ruby 2.6, Fedora becomes the superior Ruby development platform. [[back]] -== Changes since Ruby 2.6: +=== Changes since Ruby 2.6: Ruby 2.7 comes with several new features and performance improvements. -=== New features: +==== New features: * <> * <> * <> * <> -=== Performance improvements: +==== Performance improvements: * JIT [Experimental] * Fiber’s cache strategy is changed and fiber creation is speeded up. @@ -26,7 +28,7 @@ Ruby 2.7 comes with several new features and performance improvements. * `Per-call-site` method cache, which has been there since around 1.9, was improved: cache hit rate raised from 89% to 94%. * `RubyVM::InstructionSequence#to_binary` method generates compiled binary. The binary size is reduced. -=== Other notable changes: +==== Other notable changes: * Some standard libraries are updated. @@ -79,11 +81,11 @@ Ruby 2.7 comes with several new features and performance improvements. * Require compilers to support C99. -== Detailed changes: +=== Detailed changes: [[Pattern]] -=== Pattern Matching [Experimental] +==== Pattern Matching [Experimental] @@ -109,14 +111,14 @@ end [[REPL]] -=== REPL improvement +==== REPL improvement `irb`, the bundled interactive environment (REPL; Read-Eval-Print-Loop), now supports multi-line editing. It is powered by `reline`, a `readline` -compatible library implemented in pure Ruby. It also provides rdoc integration. In `irb` you can display the reference for a given class, module, or method. [[GC]] -=== Compaction GC +==== Compaction GC This release introduces Compaction GC which can defragment a fragmented memory space. @@ -128,17 +130,17 @@ The `GC.compact` method is introduced for compacting the heap. This function com [[Separation]] -=== Separation of positional and keyword arguments +==== Separation of positional and keyword arguments Automatic conversion of keyword arguments and positional arguments is deprecated, and conversion will be removed in Ruby 3. -==== Changes: +===== Changes: * When a method call passes a Hash at the last argument, and when it passes no keywords, and when the called method accepts keywords, a warning is emitted. To continue treating the hash as keywords, add a double splat operator to avoid the warning and ensure correct behavior in Ruby 3. - ++ [source,ruby] ---- def foo(key: 42); end; foo({key: 42}) # warned @@ -148,7 +150,7 @@ Automatic conversion of keyword arguments and positional arguments is deprecated ---- * When a method call passes keywords to a method that accepts keywords, but it does not pass enough required positional arguments, the keywords are treated as a final required positional argument, and a warning is emitted. Pass the argument as a hash instead of keywords to avoid the warning and ensure correct behavior in Ruby 3. - ++ [source,ruby] ---- def foo(h, **kw); end; foo(key: 42) # warned @@ -158,7 +160,7 @@ Automatic conversion of keyword arguments and positional arguments is deprecated ---- * When a method accepts specific keywords but not a keyword splat, and a hash or keywords splat is passed to the method that includes both Symbol and non-Symbol keys, the hash will continue to be split, and a warning will be emitted. You will need to update the calling code to pass separate hashes to ensure correct behavior in Ruby 3. - ++ [source,ruby] ---- def foo(h={}, key: 42); end; foo("key" => 43, key: 42) # warned @@ -167,21 +169,21 @@ Automatic conversion of keyword arguments and positional arguments is deprecated ---- * If a method does not accept keywords, and is called with keywords, the keywords are still treated as a positional hash, with no warning. This behavior will continue to work in Ruby 3. - ++ [source,ruby] ---- def foo(opt={}); end; foo( key: 42 ) # OK ---- * Non-symbols are allowed as keyword argument keys if the method accepts arbitrary keywords. - ++ [source,ruby] ---- def foo(**kw); p kw; end; foo("str" => 1) #=> {"str"=>1} ---- * `**nil` is allowed in method definitions to explicitly mark that the method accepts no keywords. Calling such a method with keywords will result in an `ArgumentError`. - ++ [source,ruby] ---- def foo(h, **nil); end; foo(key: 1) # ArgumentError @@ -192,7 +194,7 @@ Automatic conversion of keyword arguments and positional arguments is deprecated ---- * Passing an empty keyword splat to a method that does not accept keywords no longer passes an empty hash, unless the empty hash is necessary for a required parameter, in which case a warning will be emitted. Remove the double splat to continue passing a positional hash. - ++ [source,ruby] ---- h = {}; def foo(*a) a end; foo(**h) # [] @@ -205,6 +207,17 @@ If you want to disable the deprecation warnings, please use a command-line argum See the link:https://www.ruby-lang.org/en/news/2019/12/25/ruby-2-7-0-released/[upstream release announcement] for more detailed information about this release. -<> +== Jekyll has been updated to version 4 + +The *Jekyll* static page generator and its plug-ins have been updated to version 4.0.0. + +This version includes the following changes compared to version 3.8: + +* Significant performance improvements +* Cleanups and bug fixes +* Other minor changes incompatible with the previous release + +For more information about *Jekyll* 4.0.0, see link:https://jekyllrb.com/news/2019/08/20/jekyll-4-0-0-released/[]. + diff --git a/modules/release-notes/pages/developers/Development_Web.adoc b/modules/release-notes/pages/developers/Development_Web.adoc index 1c2e32d..945610f 100644 --- a/modules/release-notes/pages/developers/Development_Web.adoc +++ b/modules/release-notes/pages/developers/Development_Web.adoc @@ -7,17 +7,17 @@ include::{partialsdir}/entities.adoc[] == Django 3.0 The `python-django` package has been updated to version 3.0 in Fedora 32. Notable changes in this version include: -+ + * ASGI support -+ + * Official MariaDB support -+ + * Exclusion constraints on PostgreSQL -+ + * Enumerations for model field choices -+ + * Various new minor features -+ + * Several deprecations and removals See the link:https://docs.djangoproject.com/en/3.0/releases/3.0/[upstream release notes] for full information about this release. diff --git a/modules/release-notes/pages/sysadmin/Distribution.adoc b/modules/release-notes/pages/sysadmin/Distribution.adoc index c3170e1..daff84c 100644 --- a/modules/release-notes/pages/sysadmin/Distribution.adoc +++ b/modules/release-notes/pages/sysadmin/Distribution.adoc @@ -14,9 +14,9 @@ This change aims to provide more reliable, predictable, and consistent fonts ins Since Fedora 32, the operating system to be installed from the physical optical media will not need to be tested before the general availability. However, issues regarding physical media boot will still be treated as blocker bugs. The change will affect the following images: -+ + * `Fedora-Everything-netinst-x86_64-_RELEASE_MILESTONE_.iso` -+ + * `Fedora-Workstation-Live-x86_64-_RELEASE_MILESTONE_.iso` The change aims to address the trend of ever decreasing amount of new computers and laptops with CD/DVD drivers and errors that installation using this media entails. diff --git a/modules/release-notes/pages/sysadmin/Kernel.adoc b/modules/release-notes/pages/sysadmin/Kernel.adoc index a5f7301..95a9d48 100644 --- a/modules/release-notes/pages/sysadmin/Kernel.adoc +++ b/modules/release-notes/pages/sysadmin/Kernel.adoc @@ -3,3 +3,19 @@ include::{partialsdir}/entities.adoc[] [[sect-kernel]] = Kernel + +== Quicker recovery from low-memory situations in Fedora Workstation + +// TODO: Revisit the section placement. This RN isn't really about the kernel -- the change was made in user space, not kernel space. However, it is sufficiently low-level, affecting memory management. + +The `earlyoom` service is now enabled by default in Fedora Workstation. + +The `earlyoom` service monitors system memory usage. If free memory falls below a set limit, `earlyoom` terminates an appropriate process to free up memory. As a result, the system does not become unresponsive for long periods of time in low-memory situations. + +The following is the default `earlyoom` configuration: + +1. If both RAM and swap go below 10% free, `earlyoom` sends the `SIGTERM` signal to the process with the largest `oom_score`. +2. If both RAM and swap go below 5% free, `earlyoom` sends the `SIGKILL` signal to the process with the largest `oom_score`. + +For more information, see the `earlyoom` man page. + diff --git a/modules/release-notes/pages/sysadmin/Storage.adoc b/modules/release-notes/pages/sysadmin/Storage.adoc new file mode 100644 index 0000000..72d0d25 --- /dev/null +++ b/modules/release-notes/pages/sysadmin/Storage.adoc @@ -0,0 +1,18 @@ + +include::{partialsdir}/entities.adoc[] + +[[sect-storage]] += Storage + +== Weekly file system TRIM is now enabled + +The `fstrim.timer` unit is now enabled by default for new installations and upgrades. The unit weekly runs the `fstrim` tool, which sends the `TRIM` command to all mounted file systems that are listed in the `/etc/fstab` file. + +The `TRIM` command informs physical and virtual storage devices about unused blocks. This has the following effects: + +* The hinting can make wear leveling and block erasure more efficient. +* `TRIM` returns free logical extents on LVM thin provisioning to the thin pool. +* `TRIM` prevents the slow downs that might occur in certain flash storage devices. + +For details about the `TRIM` command and the `fstrim` tool, see the `fstrim` man page. + diff --git a/modules/release-notes/pages/sysadmin/System_Utilities.adoc b/modules/release-notes/pages/sysadmin/System_Utilities.adoc index 4e3ac11..96ae101 100644 --- a/modules/release-notes/pages/sysadmin/System_Utilities.adoc +++ b/modules/release-notes/pages/sysadmin/System_Utilities.adoc @@ -12,17 +12,17 @@ In Fedora 32, the `breezy` package for a version control system obsoletes the `b Fedora 32 provides the `mariadb` package 10.4, up from version 10.3 in Fedora 31. Notable changes include: -+ + * The `root` and `mysql` users can log in without a password using the `unix_socket` authentication plugin. -+ + * Possibility to use more than one authentication plugins for each user account. -+ + * Support for user password expiry. -+ + * Implementation of the optimizer trace. -+ + * Performance increase in Unicode collations. -+ + * Various changes in syntax, variables and the InnoDB storage engine. For full information about this release, see the link:https://mariadb.com/kb/en/changes-improvements-in-mariadb-104/[official MariaDB release notes]. From e5d1fb227a3db902583d387fcc160c5f550b9a16 Mon Sep 17 00:00:00 2001 From: Petr Bokoc Date: Apr 13 2020 18:52:09 +0000 Subject: [PATCH 46/52] Merge branch 'pr473' into f32 --- diff --git a/modules/release-notes/nav.adoc b/modules/release-notes/nav.adoc index f2ae2c9..7122906 100644 --- a/modules/release-notes/nav.adoc +++ b/modules/release-notes/nav.adoc @@ -32,6 +32,7 @@ include::{partialsdir}/entities.adoc[] *** xref:developers/Development_Go.adoc[Go] *** xref:developers/Development_Haskell.adoc[Haskell] *** xref:developers/Development_Dotnet.adoc[.NET] +*** xref:developers/Development_LLVM.adoc[LLVM] *** xref:developers/Development_Python.adoc[Python] *** xref:developers/Development_Ruby.adoc[Ruby] *** xref:developers/Development_Rust.adoc[Rust] diff --git a/modules/release-notes/pages/developers/Development_LLVM.adoc b/modules/release-notes/pages/developers/Development_LLVM.adoc new file mode 100644 index 0000000..86cd713 --- /dev/null +++ b/modules/release-notes/pages/developers/Development_LLVM.adoc @@ -0,0 +1,34 @@ + +include::{partialsdir}/entities.adoc[] + +[[sect-llvm]] + += LLVM + +== LLVM 10.0.0 + +Fedora 32 comes with LLVM 10. Please note that the `soname` version for LLVM libraries has been changed. Maintainers of packages that depend on `clang-libs` or `llvm-libs` will need to update their spec files to depend on the `clang9.0` and `llvm9.0` compatibility packages if they want to rebuild their package and it does not work with LLVM 10 yet. Compatibility packages `clang9.0` and `llvm9.0` was added to this release. Spec file changes are only needed if the package is going to be rebuilt after LLVM 10 and Fedora update. + +=== Changes: + +Full list of new features, improvements and bug fixes that comes with LLVM 10 can be found here: + +https://releases.llvm.org/10.0.0/docs/ReleaseNotes.html[upstream release notes] + +==== All LLVM sub-projects in Fedora 32 was also updated to version 10 : + +* clang https://releases.llvm.org/10.0.0/tools/clang/docs/ReleaseNotes.html[details] +* lld https://releases.llvm.org/10.0.0/tools/lld/docs/ReleaseNotes.html[details] +* lldb https://releases.llvm.org/10.0.0/docs/ReleaseNotes.html#changes-to-lldb[details] +* libcxx (libc{plus}{plus}) https://releases.llvm.org/10.0.0/projects/libcxx/docs/ReleaseNotes.html[details] + +==== As well as: + +* compiler-rt +* libomp +* llvm-test-suite +* libcxxabi (libc{plus}{plus}abi) +* python-lit + + + From 7a3f5253c28b6523fc8ab12986ad5e1fb6b4cff5 Mon Sep 17 00:00:00 2001 From: Petr Bokoc Date: Apr 14 2020 09:18:33 +0000 Subject: [PATCH 47/52] Fix Shweta's issues --- diff --git a/modules/release-notes/pages/developers/Development_Python.adoc b/modules/release-notes/pages/developers/Development_Python.adoc index 123a655..9cf4d78 100644 --- a/modules/release-notes/pages/developers/Development_Python.adoc +++ b/modules/release-notes/pages/developers/Development_Python.adoc @@ -4,6 +4,12 @@ include::{partialsdir}/entities.adoc[] [[sect-python]] = Python +== Improved performance of Python + +Depending on the workload, up to 27% improved performance is now observed in Python-based software. The improved performance is accomplished by building the Python interpreter with `-fno-semantic-interposition`. Because there is no semantic interposition now, the internal symbol look-ups from `libpython` to `libpython` library are direct and faster. + +As a consequence, if Fedora users need to use `LD_PRELOAD` to override symbols in `libpython`, the recommended way is to build a custom Python build without `-fno-semantic-interposition`. However, it is still possible to use `LD_PRELOAD` to override symbols in other libraries (for example in glibc). + == Python 2 has been removed The Python upstream stopped supporting Python 2 on 1 January 2020. For this reason, Fedora 32 removes Python 2 packages. @@ -25,3 +31,10 @@ The `python27` package has several limitations compared to the original `python2 // TODO: I don't quite understand this point. Rephrase? // * Any special backwards compatible Provides are removed (this package is not intended to be depended upon) +== Deprecated support for Nose + +Support for Nose is now deprecated. However for now, the `python3-nose` package continues to be available in the Fedora repositories. + +No specific release it yet targeted to remove the `python3-nose` package. + +Users and packagers of dependent packages are encouraged to switch to `python3-pytest` or `python3-nose2`. diff --git a/modules/release-notes/pages/sysadmin/Distribution.adoc b/modules/release-notes/pages/sysadmin/Distribution.adoc index daff84c..3590ada 100644 --- a/modules/release-notes/pages/sysadmin/Distribution.adoc +++ b/modules/release-notes/pages/sysadmin/Distribution.adoc @@ -27,3 +27,19 @@ As a result, the Fedora QE Team and community testers will have more capacity to ==== Due to some bugs, users might not be able in some cases to complete the installation from optical media. ==== + +== Packaging changes in clang-libs package + +The `clang-libs` package no longer includes individual component libraries like `libclangBasic.so`, `libclangAST.so` and so on. Packages that depend on the clang libraries are now linked to `libclang-cpp.so`. + +As a result of this change: + +* There is an improved stability in Fedora and application start-up time. +* End-users who develop applications using clang libraries are required to update their applications to use `libclang-cpp.so` instead of the individual component libraries. +* End-users who use Fedora packages that depend on clang libraries do not have any impact due to this change. + +== Added support for AArch64 and ppc64le packages with extended availability of FPC-dependent packages + +An updated version (3.2.0) of Free Pascal Compiler is now available with Fedora 32. +With the updated Free Pascal Compiler you can now build `Arch64` and `ppc64le` packages. +Also, the Free Pascal Compiler now supports new architectures. As a result, the programs that are compiled using FPC are available to run on more architectures that Fedora supports. From 9af9194a0f8573ada5c398aa4bc701039299a3de Mon Sep 17 00:00:00 2001 From: Petr Bokoc Date: Apr 14 2020 11:08:42 +0000 Subject: [PATCH 48/52] Issue 402 - mpfr 4.0.2 --- diff --git a/modules/release-notes/pages/developers/Development_C.adoc b/modules/release-notes/pages/developers/Development_C.adoc index 00b0049..7d57c74 100644 --- a/modules/release-notes/pages/developers/Development_C.adoc +++ b/modules/release-notes/pages/developers/Development_C.adoc @@ -3,16 +3,16 @@ include::{partialsdir}/entities.adoc[] [[sect-c]] = C +:toc: [[back]] == GCC - + The GNU compiler suite has been update to version 10.0.1. See the http://gcc.gnu.org/gcc-10/changes.html[upstream documentation] for user visible changes. Packages in Fedora 32 have been rebuilt with the new version of the compiler. === New Features and General Improvements: - * New built-in functions: ** The `__has_builtin` built-in preprocessor operator can be used to query support for built-in functions provided by GCC and other compilers that support it. ** `__builtin_roundeven` for the corresponding function from ISO/IEC TS 18661. @@ -43,7 +43,7 @@ The GNU compiler suite has been update to version 10.0.1. See the http://gcc.gnu ==== C family * New attributes. -* New warnings. +* New warnings. * Enhancements to existing warnings ==== C @@ -146,7 +146,7 @@ Fedora 32 provides the GNU C Library - `glibc` - version 2.31. Notable changes i only if the optional CAS instruction is implemented (for instance, LEON processors are still supported, but SuperSPARC processors are not). - + * If a lazy binding failure happens during dlopen, during the execution of an ELF constructor, the process is now terminated. @@ -163,7 +163,7 @@ Fedora 32 provides the GNU C Library - `glibc` - version 2.31. Notable changes i configurations. While currently `PT_GNU_STACK` is not widely used on MIPS, future releases of GCC are expected to enable non-executable stack by default with `PT_GNU_STACK` by default and is thus likely to - trigger a crash on older kernels. + trigger a crash on older kernels. * System call wrappers for time system calls now use the new time64 @@ -184,6 +184,16 @@ Fedora 32 provides the GNU C Library - `glibc` - version 2.31. Notable changes i For detailed information about glibc-2.31 see the link:https://sourceware.org/legacy-ml/libc-announce/2020/msg00001.html[upstream NEWS document]; note that you may need to scroll down to find version 2.31 as the document continues to be updated. -<> +== mpfr version 4.0.2 +Fedora 32 provides the GNU MPFR library version 4.0.2. Notable changes include: +* mpfr now supports shared caches for multithreaded applications, thereby reducing memory usage. +* Improved caching: a minimum of 10% increase of the precision is guaranteed to avoid too many recomputations, thereby reducing CPU usage. +* A small-precision `mpz_t` pool is used to reduce the number of memory allocations, thereby reducing CPU usage. +* Several functions are now faster; e.g., `mpfr_add`, `mpfr_sub`, `mpfr_mul`, `mpfr_div`, `mpfr_sqrt`, `mpfr_set_d`, and `mpfr_get_d`. +* The `mpfr_div_ui` function could produce incorrectly rounded results in mpfr 3; the bug has been fixed in mpfr 4. + +For more information, visit the upstream release notes for version link:https://www.mpfr.org/mpfr-4.0.0/#changes[4.0.0], link:http://www.mpfr.org/mpfr-4.0.1/#changes[4.0.1], and link:http://www.mpfr.org/mpfr-4.0.2/#changes[4.0.2]. + +<> From 953d2c18ae11f88b622eee137a651c420c946348 Mon Sep 17 00:00:00 2001 From: Petr Bokoc Date: Apr 14 2020 11:50:37 +0000 Subject: [PATCH 49/52] Issue 392 - PHP 7.4 --- diff --git a/modules/release-notes/pages/developers/Development_Web.adoc b/modules/release-notes/pages/developers/Development_Web.adoc index 945610f..a2ce2ee 100644 --- a/modules/release-notes/pages/developers/Development_Web.adoc +++ b/modules/release-notes/pages/developers/Development_Web.adoc @@ -22,3 +22,8 @@ The `python-django` package has been updated to version 3.0 in Fedora 32. Notabl See the link:https://docs.djangoproject.com/en/3.0/releases/3.0/[upstream release notes] for full information about this release. +== PHP 7.4 + +Fedora 32 provides the latest version 7.4 of the PHP stack. +This new version provides a large set of new features, new functions, classes, and interfaces, performance improvements, as well as some removals, deprecations, and backward incompatible changes. +Those using the PHP stack on Fedora should therefore read through the link:https://raw.githubusercontent.com/php/php-src/PHP-7.4/UPGRADING[upstream Upgrade Notes]. link:https://raw.githubusercontent.com/php/php-src/PHP-7.4/UPGRADING.INTERNALS[Internals Upgrade Notes] are also available upstream. From 6b60d070e9deebad6440b695e08cd867e196ef89 Mon Sep 17 00:00:00 2001 From: Petr Bokoc Date: Apr 14 2020 12:50:53 +0000 Subject: [PATCH 50/52] Issue 450 - Installer changes --- diff --git a/modules/release-notes/pages/sysadmin/Installation.adoc b/modules/release-notes/pages/sysadmin/Installation.adoc index c985d75..1c31cf7 100644 --- a/modules/release-notes/pages/sysadmin/Installation.adoc +++ b/modules/release-notes/pages/sysadmin/Installation.adoc @@ -9,17 +9,31 @@ include::{partialsdir}/entities.adoc[] This section covers changes in the [application]*Anaconda* installer, including changes in the graphical and text mode interactive installers, Kickstart, and installer boot options. -[[sect-installation-anaconda-gui]] -=== Changes in the Graphical Interface - -[[sect-installation-anaconda-tui]] -=== Changes in the Text Mode Interface +[[sect-installation-anaconda-general]] +=== General changes + +* `/boot` can now be placed on a BTRFS subvolume. +* It is no longer possible to attempt to add more than the maximum allowed number of boot-device NVRAMs on `ppc64le`. +* Anaconda now uses the DBus storage module instead of the local storage object. +This change has been in development for multiple releases, and is now complete. +* Anaconda add-ons now have full DBus support, allowing add-on developers to use their own DBus modules. +See the link:https://github.com/rhinstaller/hello-world-anaconda-addon[add-on example] for more information. +* The Anaconda development team has implemented their own DBus library, `python3-dasbus`. +The library is written in Python, based on GLib, and inspired by `pydbus`. +The repository, including documentation, is available at link:https://github.com/rhinstaller/dasbus[GitHub]. +* Comps files can now set specific architectures on which packages can be installed. +* Packages can no longer be downloaded to RAM. +This option has been disabled because it could previously cause out-of-memory issues. +Packages can now only be downloaded to a hard drive, which also means the minimum storage requirements are slightly higher. +* The Network & Hostname screen no longer allows a trailing dot in a host name, which mirrors the behavior of the underlying `systemd-hostnamed` and the kernel. +Previously, attempting to set such a host name crashed the installer. +Note that the actual FQDN specification does technically allow for host names with a trailing dot, but the installer does not. +* Translations have been migrated to the Weblate platform. See the link:https://translate.fedoraproject.org/projects/anaconda/[project page] if you would like to contribute. [[sect-installation-kickstart]] === Kickstart Changes -[[sect-installation-anaconda-boot-options]] -=== Changes in Anaconda Boot Options - -[[sect-installation-anaconda-other]] -=== Other Anaconda Changes +* The `liveimg` command now avoids attempts to download an image twice, which could previously cause the installer to crash due to running out of memory. +* The `%packages` section now supports the `--ignorebroken` option. +Using this option, you can stop DNF from checking packages, groups, or modules with conflicting files. +The default behavior is to abort the installation with an error listing the conflicting files. From 7433ee2696fe3f463c0e68ceab1938412ab27849 Mon Sep 17 00:00:00 2001 From: Petr Bokoc Date: Apr 14 2020 13:20:40 +0000 Subject: [PATCH 51/52] Issue 387 - Limit scriptlet usage --- diff --git a/modules/release-notes/pages/sysadmin/Sysadmins.adoc b/modules/release-notes/pages/sysadmin/Sysadmins.adoc index 00bb165..3339881 100644 --- a/modules/release-notes/pages/sysadmin/Sysadmins.adoc +++ b/modules/release-notes/pages/sysadmin/Sysadmins.adoc @@ -9,8 +9,8 @@ Use the navigation tab on the left to view release notes for various fields of i Previously, users were created in `%pre` file by calling the commands `getent`, `useradd`, and `groupadd`. -With this update, user are defined in the `sysusers.d` format. -It adds an rpm package `Provides generator` to create user() and group() virtual Provides for packages with sysusers.d files. +With this update, user are defined in the `sysusers.d` format. +It adds an rpm package `Provides generator` to create user() and group() virtual Provides for packages with sysusers.d files. An rpm package `Provides` generator is added to generate user() and group() for packages with sysusers.d files. @@ -25,12 +25,9 @@ NOTE: users are still created using old-style `useradd` calls. As a result, it makes possible to introspect system users. +== Limited scriptlet usage of core packages +In Fedora 32, core packages (packages that are used to build the minimal container image) have had all of their scriptlet calls (`%pre`, `%post`, `%preun`, `%postun`) removed. +This means the entire install process of the container image is now declarative and transparent to packaging tools such as `rpm`, `ostree`, or `composer`, the installation is faster, and keeping this approach in the future will allow for additional optimizations and features. - - - - - - - +Packages can still make changes to the system during installation by placing files in specific locations that trigger actions. From ecc9ef354f82a95c33fa908ddd8c816be3227410 Mon Sep 17 00:00:00 2001 From: Petr Bokoc Date: Apr 14 2020 13:43:05 +0000 Subject: [PATCH 52/52] Issue 423 - Rebase apt from apt-rpm to Debian's apt --- diff --git a/modules/release-notes/pages/sysadmin/System_Utilities.adoc b/modules/release-notes/pages/sysadmin/System_Utilities.adoc index 96ae101..ffae866 100644 --- a/modules/release-notes/pages/sysadmin/System_Utilities.adoc +++ b/modules/release-notes/pages/sysadmin/System_Utilities.adoc @@ -5,7 +5,7 @@ include::{partialsdir}/entities.adoc[] == Bazaar has been replaced by Breezy -In Fedora 32, the `breezy` package for a version control system obsoletes the `bzr` and `git-remote-bzr` packages related to the Bazaar version control system. As a result, users who install `bzr` will receive `breezy` instead. The `bzr` command (Bazaar) will be provided as a symbolic link to the `brz` command (Breezy). +In Fedora 32, the `breezy` package for a version control system obsoletes the `bzr` and `git-remote-bzr` packages related to the Bazaar version control system. As a result, users who install `bzr` will receive `breezy` instead. The `bzr` command (Bazaar) will be provided as a symbolic link to the `brz` command (Breezy). == MariaDB 10.4 @@ -29,8 +29,8 @@ For full information about this release, see the link:https://mariadb.com/kb/en/ == rdiff-backup 2.0.0 -This new release has been made truly ready for the future, with a move to https://github.com/rdiff-backup[GitHub], Python 3 support, automated CI/CD -pipeline on https://travis-ci.org/rdiff-backup[Travis], availability on https://pypi.org/project/rdiff-backup[PyPi] and no known regression bug +This new release has been made truly ready for the future, with a move to https://github.com/rdiff-backup[GitHub], Python 3 support, automated CI/CD +pipeline on https://travis-ci.org/rdiff-backup[Travis], availability on https://pypi.org/project/rdiff-backup[PyPi] and no known regression bug compared to version 1.2.8/1.3.3. We even found the time to add a few features for you (details in the https://github.com/rdiff-backup/rdiff-backup/blob/v2.0.0/CHANGELOG[change log]): @@ -41,22 +41,34 @@ We even found the time to add a few features for you (details in the https://git * reproducible builds are possible * verbosity can be set via environment variable `RDIFF_BACKUP_VERBOSITY` -On the down side, we have to say that due to the many changes, rdiff-backup 2.x can't communicate with older versions 1.x in client-server mode (*but* the +On the down side, we have to say that due to the many changes, rdiff-backup 2.x can't communicate with older versions 1.x in client-server mode (*but* the repository formats remain compatible), so you'll need to upgrade client and server at once. -Which brings us to the installation, described in details in the https://github.com/rdiff-backup/rdiff-backup/blob/v2.0.0/README.md[read me], +Which brings us to the installation, described in details in the https://github.com/rdiff-backup/rdiff-backup/blob/v2.0.0/README.md[read me], but here's the quick version: * On Fedora 32, in this distribution * On Fedora 30 and 31 available as an update * CentOS/RHEL 7 and 8, available as an update in https://fedoraproject.org/wiki/EPEL[EPEL] * On Ubuntu, you may use https://code.launchpad.net/~rdiff-backup/+archive/ubuntu/rdiff-backup-development[Otto's PPA repo] -* Windows, download the asset `rdiff-backup-2.0.0.win32exe.zip` from https://github.com/rdiff-backup/rdiff-backup/releases/tag/v2.0.0[here] and +* Windows, download the asset `rdiff-backup-2.0.0.win32exe.zip` from https://github.com/rdiff-backup/rdiff-backup/releases/tag/v2.0.0[here] and unpack it somewhere in your `PATH`. -* Any other supported platform, use `pip install rdiff-backup` (or download and install the proper asset from +* Any other supported platform, use `pip install rdiff-backup` (or download and install the proper asset from https://github.com/rdiff-backup/rdiff-backup/releases/tag/v2.0.0[here]). If you encounter issues, log a ticket in https://bugzilla.redhat.com/[Bugzilla], contact us on the https://lists.nongnu.org/mailman/listinfo/rdiff-backup-user[rdiff-backup-users mailing list] and/or https://github.com/rdiff-backup/rdiff-backup/issues/new[report an issue]. Happy backup, and remember: _no_ backup, _no_ pity! + +== apt package rebased from apt-rpm to Debian's apt + +Before Fedora 32, the `apt` package did not use the mainline `apt` software from Debian, but instead the `apr-rpm` fork. +It had the advantage of allowing users to use `apt-get` commands in the terminal and use them to install packages from Fedora's DNF repositories. +This was useful because a lot of tutorials online use `apt-get`. + +By switching the Fedora apt package from `apt-rpm` to regular `apt` we move from a dead to a living upstream. +We also close security holes and introduce a critical dependency for more packages from the `DPKG` ecosystem. +It is already possible to build Deb packages in Fedora, including with `pbuilder`, an equivalent for `mock` in the `DPKG` ecosystem, however `pbuilder` uses `debootstrap` to provision a build environment. +While we may lose the ability to `apt-get install` Fedora packages from the command line, we also open the gate for `sbuild`, another mock equivalent to build Debs in a clean environment. +This change offers more options to target Debian and derivative systems without leaving the Fedora comfort zone.