From 08561ae8d3b38d43980b0844b615b88517c3ec18 Mon Sep 17 00:00:00 2001 From: Filip Janus Date: Wed, 3 Jan 2024 16:01:16 +0100 Subject: [PATCH 01/44] Add symbol -any to each subpackage to ensure conflict. Majorname cant be used for such use case due to different behavior of dnf install and dnf builddep --- postgresql16.spec | 44 +++++++++++++++++++++----------------------- 1 file changed, 21 insertions(+), 23 deletions(-) diff --git a/postgresql16.spec b/postgresql16.spec index c933c7d..ff9bc75 100644 --- a/postgresql16.spec +++ b/postgresql16.spec @@ -182,17 +182,18 @@ BuildRequires: libicu-devel Obsoletes: postgresql%{majorversion}%{?1:-%{1}}\ } %else -%define obsoletes_postgresqlXX_if_default() %{expand:\ -Provides: %{majorname}%{?1:-%{1}} = %precise_version\ -Provides: %{majorname}%{?1:-%{1}}%{?_isa} = %precise_version\ -} +%define obsoletes_postgresqlXX_if_default() %{nil} %endif +%define conflict_with_other_streams() %{expand:\ +Provides: %{majorname}%{?1:-%{1}}-any\ +Conflicts: %{majorname}%{?1:-%{1}}-any\ +} Provides: %{pkgname} = %precise_version Provides: %{pkgname}%{?_isa} = %precise_version -Conflicts: %{majorname} +%conflict_with_other_streams %obsoletes_postgresqlXX_if_default # https://bugzilla.redhat.com/1464368 @@ -227,9 +228,9 @@ Requires(post): glibc Requires(postun): glibc Provides: %{pkgname}-private-libs = %precise_version Provides: %{pkgname}-private-libs%{?_isa} = %precise_version -Conflicts: %{majorname}-private-libs %obsoletes_postgresqlXX_if_default private-libs +%conflict_with_other_streams private-libs %description -n %{pkgname}-private-libs The postgresql-private-libs package provides the shared libraries for this @@ -246,9 +247,9 @@ Requires: %{pkgname}-private-libs%{?_isa} = %precise_version Conflicts: libpq-devel Provides: %{pkgname}-devel = %precise_version Provides: %{pkgname}-devel%{?_isa} = %precise_version -Conflicts: %{majorname}-devel %obsoletes_postgresqlXX_if_default private-devel +%conflict_with_other_streams private-devel %description -n %{pkgname}-private-devel The postgresql-private-devel package contains the header files and libraries @@ -282,10 +283,9 @@ Provides: %{pkgname}-server = %precise_version Provides: %{pkgname}-server%{?_isa} = %precise_version # Provide symbol regardless version. This symbol is present in every single # postgresql stream -Provides: %{majorname}-server-any -Conflicts: %{majorname}-server %obsoletes_postgresqlXX_if_default server +%conflict_with_other_streams server %description -n %{pkgname}-server PostgreSQL is an advanced Object-Relational database management system (DBMS). @@ -299,9 +299,9 @@ Summary: Extra documentation for PostgreSQL Requires: %{pkgname}%{?_isa} = %precise_version Provides: %{pkgname}-doc = %precise_version Provides: %{pkgname}-docs = %precise_version -Conflicts: %{majorname}-docs %obsoletes_postgresqlXX_if_default docs +%conflict_with_other_streams docs %description -n %{pkgname}-docs The postgresql-docs package contains some additional documentation for @@ -314,9 +314,9 @@ Summary: Extension modules distributed with PostgreSQL Requires: %{pkgname}%{?_isa} = %precise_version Provides: %{pkgname}-contrib = %precise_version Provides: %{pkgname}-contrib%{?_isa} = %precise_version -Conflicts: %{majorname}-contrib %obsoletes_postgresqlXX_if_default contrib +%conflict_with_other_streams contrib %description -n %{pkgname}-contrib The postgresql-contrib package contains various extension modules that are @@ -344,9 +344,9 @@ Requires: %{pkgname}-private-devel %endif Provides: %{pkgname}-server-devel = %precise_version Provides: %{pkgname}-server-devel%{?_isa} = %precise_version -Conflicts: %{majorname}-server-devel %obsoletes_postgresqlXX_if_default server-devel +%conflict_with_other_streams server-devel %description -n %{pkgname}-server-devel The postgresql-server-devel package contains the header files and configuration @@ -357,13 +357,11 @@ Summary: Convenience RPM macros for build-time testing against PostgreSQL server Requires: %{pkgname}-server = %precise_version BuildArch: noarch Provides: %{pkgname}-test-rpm-macros = %precise_version -Conflicts: %{majorname}-test-rpm-macros %if %?postgresql_default Obsoletes: postgresql%{majorversion}-test-rpm-macros -%else -Provides: %{majorname}%-test-rpm-macros = %precise_version %endif +%conflict_with_other_streams test-rpm-macros %description -n %{pkgname}-test-rpm-macros This package is meant to be added as BuildRequires: dependency of other packages @@ -375,9 +373,9 @@ Summary: Statically linked PostgreSQL libraries Requires: %{pkgname}-server-devel%{?_isa} = %precise_version Provides: %{pkgname}-static = %precise_version Provides: %{pkgname}-static%{?_isa} = %precise_version -Conflicts: %{majorname}-static %obsoletes_postgresqlXX_if_default static +%conflict_with_other_streams static %description -n %{pkgname}-static Statically linked PostgreSQL libraries that do not have dynamically linked @@ -391,9 +389,9 @@ Requires: %{pkgname}-server%{?_isa} = %precise_version Provides: bundled(postgresql-server) = %prevversion Provides: %{pkgname}-upgrade = %precise_version Provides: %{pkgname}-upgrade%{?_isa} = %precise_version -Conflicts: %{majorname}-upgrade %obsoletes_postgresqlXX_if_default upgrade +%conflict_with_other_streams upgrade %description -n %{pkgname}-upgrade The postgresql-upgrade package contains the pg_upgrade utility and supporting @@ -406,9 +404,9 @@ Summary: Support for build of extensions required for upgrade process Requires: %{pkgname}-upgrade%{?_isa} = %precise_version Provides: %{pkgname}-upgrade-devel = %precise_version Provides: %{pkgname}-upgrade-devel%{?_isa} = %precise_version -Conflicts: %{majorname}-upgrade-devel %obsoletes_postgresqlXX_if_default upgrade-devel +%conflict_with_other_streams upgrade-devel %description -n %{pkgname}-upgrade-devel The postgresql-devel package contains the header files and libraries @@ -428,9 +426,9 @@ BuildRequires: perl(Data::Dumper) %endif Provides: %{pkgname}-plperl = %precise_version Provides: %{pkgname}-plperl%{?_isa} = %precise_version -Conflicts: %{majorname}-plperl %obsoletes_postgresqlXX_if_default plperl +%conflict_with_other_streams plperl %description -n %{pkgname}-plperl The postgresql-plperl package contains the PL/Perl procedural language, @@ -445,9 +443,9 @@ Summary: The Python3 procedural language for PostgreSQL Requires: %{pkgname}-server%{?_isa} = %precise_version Provides: %{pkgname}-plpython3 = %precise_version Provides: %{pkgname}-plpython3%{?_isa} = %precise_version -Conflicts: %{majorname}-plpython3 %obsoletes_postgresqlXX_if_default python3 +%conflict_with_other_streams python3 %description -n %{pkgname}-plpython3 The postgresql-plpython3 package contains the PL/Python3 procedural language, @@ -462,9 +460,9 @@ Summary: The Tcl procedural language for PostgreSQL Requires: %{pkgname}-server%{?_isa} = %precise_version Provides: %{pkgname}-pltcl = %precise_version Provides: %{pkgname}-pltcl%{?_isa} = %precise_version -Conflicts: %{majorname}-pltcl %obsoletes_postgresqlXX_if_default pltcl +%conflict_with_other_streams plctl %description -n %{pkgname}-pltcl The postgresql-pltcl package contains the PL/Tcl procedural language, @@ -481,9 +479,9 @@ Requires: %{pkgname}-server-devel%{?_isa} = %precise_version Requires: %{pkgname}-contrib%{?_isa} = %precise_version Provides: %{pkgname}-test = %precise_version Provides: %{pkgname}-test%{?_isa} = %precise_version -Conflicts: %{majorname}-test %obsoletes_postgresqlXX_if_default test +%conflict_with_other_streams test %description -n %{pkgname}-test The postgresql-test package contains files needed for various tests for the @@ -503,11 +501,11 @@ Requires: llvm => 5.0 Provides: postgresql-llvmjit >= %{version}-%{release} Provides: %{pkgname}-llvmjit = %precise_version Provides: %{pkgname}-llvmjit%{?_isa} = %precise_version -Conflicts: %{majorname}-llvmjit BuildRequires: llvm-devel >= 5.0 clang-devel >= 5.0 %obsoletes_postgresqlXX_if_default llvmjit +%conflict_with_other_streams llvmjit %description -n %{pkgname}-llvmjit The postgresql-llvmjit package contains support for From fb8ae9e7e40da9dcecfbc25afd675d23d6625102 Mon Sep 17 00:00:00 2001 From: Filip Janus Date: Wed, 3 Jan 2024 16:43:53 +0100 Subject: [PATCH 02/44] Set default to 0 and release bump --- postgresql16.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/postgresql16.spec b/postgresql16.spec index ff9bc75..751da01 100644 --- a/postgresql16.spec +++ b/postgresql16.spec @@ -29,7 +29,7 @@ %{!?sdt:%global sdt 1} %{!?selinux:%global selinux 1} %{!?runselftest:%global runselftest 1} -%{!?postgresql_default:%global postgresql_default 1} +%{!?postgresql_default:%global postgresql_default 0} %global majorname postgresql %global majorversion 16 @@ -48,7 +48,7 @@ Summary: PostgreSQL client programs Name: %{majorname}%{majorversion} Version: %{majorversion}.1 -Release: 1%{?dist} +Release: 2%{?dist} # The PostgreSQL license is very similar to other MIT licenses, but the OSI # recognizes it as an independent license, so we do as well. From 1fe2f9b4daa335181b78a2f3f828131e99e371b2 Mon Sep 17 00:00:00 2001 From: Filip Janus Date: Wed, 3 Jan 2024 16:01:16 +0100 Subject: [PATCH 03/44] Add symbol -any to each subpackage to ensure conflict with othere postgresql streams. Symbol postgresql is now used only for setting the default version of postgresql in the repository. The majorname cant be used for such usecase due to different behavior of dnf install and dnf builddep More about it: https://github.com/rpm-software-management/dnf5/issues/620 Related: 2255013 --- postgresql16.spec | 53 ++++++++++++++++++++++++++--------------------- 1 file changed, 29 insertions(+), 24 deletions(-) diff --git a/postgresql16.spec b/postgresql16.spec index c933c7d..433c9e0 100644 --- a/postgresql16.spec +++ b/postgresql16.spec @@ -48,7 +48,7 @@ Summary: PostgreSQL client programs Name: %{majorname}%{majorversion} Version: %{majorversion}.1 -Release: 1%{?dist} +Release: 2%{?dist} # The PostgreSQL license is very similar to other MIT licenses, but the OSI # recognizes it as an independent license, so we do as well. @@ -182,17 +182,18 @@ BuildRequires: libicu-devel Obsoletes: postgresql%{majorversion}%{?1:-%{1}}\ } %else -%define obsoletes_postgresqlXX_if_default() %{expand:\ -Provides: %{majorname}%{?1:-%{1}} = %precise_version\ -Provides: %{majorname}%{?1:-%{1}}%{?_isa} = %precise_version\ -} +%define obsoletes_postgresqlXX_if_default() %{nil} %endif +%define conflict_with_other_streams() %{expand:\ +Provides: %{majorname}%{?1:-%{1}}-any\ +Conflicts: %{majorname}%{?1:-%{1}}-any\ +} Provides: %{pkgname} = %precise_version Provides: %{pkgname}%{?_isa} = %precise_version -Conflicts: %{majorname} +%conflict_with_other_streams %obsoletes_postgresqlXX_if_default # https://bugzilla.redhat.com/1464368 @@ -227,9 +228,9 @@ Requires(post): glibc Requires(postun): glibc Provides: %{pkgname}-private-libs = %precise_version Provides: %{pkgname}-private-libs%{?_isa} = %precise_version -Conflicts: %{majorname}-private-libs %obsoletes_postgresqlXX_if_default private-libs +%conflict_with_other_streams private-libs %description -n %{pkgname}-private-libs The postgresql-private-libs package provides the shared libraries for this @@ -246,9 +247,9 @@ Requires: %{pkgname}-private-libs%{?_isa} = %precise_version Conflicts: libpq-devel Provides: %{pkgname}-devel = %precise_version Provides: %{pkgname}-devel%{?_isa} = %precise_version -Conflicts: %{majorname}-devel %obsoletes_postgresqlXX_if_default private-devel +%conflict_with_other_streams private-devel %description -n %{pkgname}-private-devel The postgresql-private-devel package contains the header files and libraries @@ -282,10 +283,9 @@ Provides: %{pkgname}-server = %precise_version Provides: %{pkgname}-server%{?_isa} = %precise_version # Provide symbol regardless version. This symbol is present in every single # postgresql stream -Provides: %{majorname}-server-any -Conflicts: %{majorname}-server %obsoletes_postgresqlXX_if_default server +%conflict_with_other_streams server %description -n %{pkgname}-server PostgreSQL is an advanced Object-Relational database management system (DBMS). @@ -299,9 +299,9 @@ Summary: Extra documentation for PostgreSQL Requires: %{pkgname}%{?_isa} = %precise_version Provides: %{pkgname}-doc = %precise_version Provides: %{pkgname}-docs = %precise_version -Conflicts: %{majorname}-docs %obsoletes_postgresqlXX_if_default docs +%conflict_with_other_streams docs %description -n %{pkgname}-docs The postgresql-docs package contains some additional documentation for @@ -314,9 +314,9 @@ Summary: Extension modules distributed with PostgreSQL Requires: %{pkgname}%{?_isa} = %precise_version Provides: %{pkgname}-contrib = %precise_version Provides: %{pkgname}-contrib%{?_isa} = %precise_version -Conflicts: %{majorname}-contrib %obsoletes_postgresqlXX_if_default contrib +%conflict_with_other_streams contrib %description -n %{pkgname}-contrib The postgresql-contrib package contains various extension modules that are @@ -344,9 +344,9 @@ Requires: %{pkgname}-private-devel %endif Provides: %{pkgname}-server-devel = %precise_version Provides: %{pkgname}-server-devel%{?_isa} = %precise_version -Conflicts: %{majorname}-server-devel %obsoletes_postgresqlXX_if_default server-devel +%conflict_with_other_streams server-devel %description -n %{pkgname}-server-devel The postgresql-server-devel package contains the header files and configuration @@ -357,13 +357,11 @@ Summary: Convenience RPM macros for build-time testing against PostgreSQL server Requires: %{pkgname}-server = %precise_version BuildArch: noarch Provides: %{pkgname}-test-rpm-macros = %precise_version -Conflicts: %{majorname}-test-rpm-macros %if %?postgresql_default Obsoletes: postgresql%{majorversion}-test-rpm-macros -%else -Provides: %{majorname}%-test-rpm-macros = %precise_version %endif +%conflict_with_other_streams test-rpm-macros %description -n %{pkgname}-test-rpm-macros This package is meant to be added as BuildRequires: dependency of other packages @@ -375,9 +373,9 @@ Summary: Statically linked PostgreSQL libraries Requires: %{pkgname}-server-devel%{?_isa} = %precise_version Provides: %{pkgname}-static = %precise_version Provides: %{pkgname}-static%{?_isa} = %precise_version -Conflicts: %{majorname}-static %obsoletes_postgresqlXX_if_default static +%conflict_with_other_streams static %description -n %{pkgname}-static Statically linked PostgreSQL libraries that do not have dynamically linked @@ -391,9 +389,9 @@ Requires: %{pkgname}-server%{?_isa} = %precise_version Provides: bundled(postgresql-server) = %prevversion Provides: %{pkgname}-upgrade = %precise_version Provides: %{pkgname}-upgrade%{?_isa} = %precise_version -Conflicts: %{majorname}-upgrade %obsoletes_postgresqlXX_if_default upgrade +%conflict_with_other_streams upgrade %description -n %{pkgname}-upgrade The postgresql-upgrade package contains the pg_upgrade utility and supporting @@ -406,9 +404,9 @@ Summary: Support for build of extensions required for upgrade process Requires: %{pkgname}-upgrade%{?_isa} = %precise_version Provides: %{pkgname}-upgrade-devel = %precise_version Provides: %{pkgname}-upgrade-devel%{?_isa} = %precise_version -Conflicts: %{majorname}-upgrade-devel %obsoletes_postgresqlXX_if_default upgrade-devel +%conflict_with_other_streams upgrade-devel %description -n %{pkgname}-upgrade-devel The postgresql-devel package contains the header files and libraries @@ -428,9 +426,9 @@ BuildRequires: perl(Data::Dumper) %endif Provides: %{pkgname}-plperl = %precise_version Provides: %{pkgname}-plperl%{?_isa} = %precise_version -Conflicts: %{majorname}-plperl %obsoletes_postgresqlXX_if_default plperl +%conflict_with_other_streams plperl %description -n %{pkgname}-plperl The postgresql-plperl package contains the PL/Perl procedural language, @@ -445,9 +443,9 @@ Summary: The Python3 procedural language for PostgreSQL Requires: %{pkgname}-server%{?_isa} = %precise_version Provides: %{pkgname}-plpython3 = %precise_version Provides: %{pkgname}-plpython3%{?_isa} = %precise_version -Conflicts: %{majorname}-plpython3 %obsoletes_postgresqlXX_if_default python3 +%conflict_with_other_streams python3 %description -n %{pkgname}-plpython3 The postgresql-plpython3 package contains the PL/Python3 procedural language, @@ -462,9 +460,9 @@ Summary: The Tcl procedural language for PostgreSQL Requires: %{pkgname}-server%{?_isa} = %precise_version Provides: %{pkgname}-pltcl = %precise_version Provides: %{pkgname}-pltcl%{?_isa} = %precise_version -Conflicts: %{majorname}-pltcl %obsoletes_postgresqlXX_if_default pltcl +%conflict_with_other_streams plctl %description -n %{pkgname}-pltcl The postgresql-pltcl package contains the PL/Tcl procedural language, @@ -481,9 +479,9 @@ Requires: %{pkgname}-server-devel%{?_isa} = %precise_version Requires: %{pkgname}-contrib%{?_isa} = %precise_version Provides: %{pkgname}-test = %precise_version Provides: %{pkgname}-test%{?_isa} = %precise_version -Conflicts: %{majorname}-test %obsoletes_postgresqlXX_if_default test +%conflict_with_other_streams test %description -n %{pkgname}-test The postgresql-test package contains files needed for various tests for the @@ -503,11 +501,11 @@ Requires: llvm => 5.0 Provides: postgresql-llvmjit >= %{version}-%{release} Provides: %{pkgname}-llvmjit = %precise_version Provides: %{pkgname}-llvmjit%{?_isa} = %precise_version -Conflicts: %{majorname}-llvmjit BuildRequires: llvm-devel >= 5.0 clang-devel >= 5.0 %obsoletes_postgresqlXX_if_default llvmjit +%conflict_with_other_streams llvmjit %description -n %{pkgname}-llvmjit The postgresql-llvmjit package contains support for @@ -1349,6 +1347,13 @@ make -C postgresql-setup-%{setup_version} check %changelog +* Fri Jan 5 2024 Filip Janus - 16.1-2 +- Add symbol any to ensure conflict with othere postgresql streams +- sympol postgresql is now used only for setting the default version + of postgresql in the repository +- It was done due to dnf feature. more about it: + https://github.com/rpm-software-management/dnf5/issues/620 + * Mon Nov 27 2023 Filip Janus - 16.1-1 - Update to 16.1 - Initial import of demodularized version From 4c0280b8e6233e5e1bf8b58c9835e9c3c8f78632 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sun, 21 Jan 2024 22:12:44 +0000 Subject: [PATCH 04/44] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- postgresql16.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/postgresql16.spec b/postgresql16.spec index 433c9e0..e1a04f6 100644 --- a/postgresql16.spec +++ b/postgresql16.spec @@ -48,7 +48,7 @@ Summary: PostgreSQL client programs Name: %{majorname}%{majorversion} Version: %{majorversion}.1 -Release: 2%{?dist} +Release: 3%{?dist} # The PostgreSQL license is very similar to other MIT licenses, but the OSI # recognizes it as an independent license, so we do as well. @@ -1347,6 +1347,9 @@ make -C postgresql-setup-%{setup_version} check %changelog +* Sun Jan 21 2024 Fedora Release Engineering - 16.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Fri Jan 5 2024 Filip Janus - 16.1-2 - Add symbol any to ensure conflict with othere postgresql streams - sympol postgresql is now used only for setting the default version From 70ab2f6574d666e994265d540f32ecaceb5b3ed9 Mon Sep 17 00:00:00 2001 From: Yaakov Selkowitz Date: Tue, 23 Jan 2024 21:57:38 -0500 Subject: [PATCH 05/44] Fix build with GCC 14 and libxml2 2.12.0 --- postgresql-libxml2.patch | 37 +++++++++++++++++++++++++++++++++++++ postgresql15-libxml2.patch | 37 +++++++++++++++++++++++++++++++++++++ postgresql16.spec | 5 +++++ 3 files changed, 79 insertions(+) create mode 100644 postgresql-libxml2.patch create mode 100644 postgresql15-libxml2.patch diff --git a/postgresql-libxml2.patch b/postgresql-libxml2.patch new file mode 100644 index 0000000..98a53f4 --- /dev/null +++ b/postgresql-libxml2.patch @@ -0,0 +1,37 @@ +Fixes for GCC 14 and libxml2 2.12.0 "error: Make more xmlError structs constant" + +xml.c: In function ‘pg_xml_init’: +xml.c:1177:52: error: passing argument 2 of ‘xmlSetStructuredErrorFunc’ from incompatible pointer type [-Wincompatible-pointer-types] + 1177 | xmlSetStructuredErrorFunc((void *) errcxt, xml_errorHandler); + | ^~~~~~~~~~~~~~~~ + | | + | void (*)(void *, xmlError *) {aka void (*)(void *, struct _xmlError *)} +In file included from /usr/include/libxml2/libxml/valid.h:15, + from /usr/include/libxml2/libxml/parser.h:19, + from xml.c:50: +/usr/include/libxml2/libxml/xmlerror.h:898:57: note: expected ‘xmlStructuredErrorFunc’ {aka ‘void (*)(void *, const struct _xmlError *)’} but argument is of type ‘void (*)(void *, xmlError *)’ {aka ‘void (*)(void *, struct _xmlError *)’} + 898 | xmlStructuredErrorFunc handler); + | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ + +diff --git a/src/backend/utils/adt/xml.c b/src/backend/utils/adt/xml.c +index d3db75eb87..619f908c6d 100644 +--- a/src/backend/utils/adt/xml.c ++++ b/src/backend/utils/adt/xml.c +@@ -124,7 +124,7 @@ static xmlParserInputPtr xmlPgEntityLoader(const char *URL, const char *ID, + xmlParserCtxtPtr ctxt); + static void xml_errsave(Node *escontext, PgXmlErrorContext *errcxt, + int sqlcode, const char *msg); +-static void xml_errorHandler(void *data, xmlErrorPtr error); ++static void xml_errorHandler(void *data, const xmlError *error); + static int errdetail_for_xml_code(int code); + static void chopStringInfoNewlines(StringInfo str); + static void appendStringInfoLineSeparator(StringInfo str); +@@ -2044,7 +2044,7 @@ xml_errsave(Node *escontext, PgXmlErrorContext *errcxt, + * Error handler for libxml errors and warnings + */ + static void +-xml_errorHandler(void *data, xmlErrorPtr error) ++xml_errorHandler(void *data, const xmlError *error) + { + PgXmlErrorContext *xmlerrcxt = (PgXmlErrorContext *) data; + xmlParserCtxtPtr ctxt = (xmlParserCtxtPtr) error->ctxt; diff --git a/postgresql15-libxml2.patch b/postgresql15-libxml2.patch new file mode 100644 index 0000000..ffc87ef --- /dev/null +++ b/postgresql15-libxml2.patch @@ -0,0 +1,37 @@ +Fixes for GCC 14 and libxml2 2.12.0 "error: Make more xmlError structs constant" + +xml.c: In function ‘pg_xml_init’: +xml.c:1177:52: error: passing argument 2 of ‘xmlSetStructuredErrorFunc’ from incompatible pointer type [-Wincompatible-pointer-types] + 1177 | xmlSetStructuredErrorFunc((void *) errcxt, xml_errorHandler); + | ^~~~~~~~~~~~~~~~ + | | + | void (*)(void *, xmlError *) {aka void (*)(void *, struct _xmlError *)} +In file included from /usr/include/libxml2/libxml/valid.h:15, + from /usr/include/libxml2/libxml/parser.h:19, + from xml.c:50: +/usr/include/libxml2/libxml/xmlerror.h:898:57: note: expected ‘xmlStructuredErrorFunc’ {aka ‘void (*)(void *, const struct _xmlError *)’} but argument is of type ‘void (*)(void *, xmlError *)’ {aka ‘void (*)(void *, struct _xmlError *)’} + 898 | xmlStructuredErrorFunc handler); + | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ + +diff --git a/src/backend/utils/adt/xml.c b/src/backend/utils/adt/xml.c +index 6411f56b99..0eb39fcfc2 100644 +--- a/src/backend/utils/adt/xml.c ++++ b/src/backend/utils/adt/xml.c +@@ -119,7 +119,7 @@ struct PgXmlErrorContext + + static xmlParserInputPtr xmlPgEntityLoader(const char *URL, const char *ID, + xmlParserCtxtPtr ctxt); +-static void xml_errorHandler(void *data, xmlErrorPtr error); ++static void xml_errorHandler(void *data, const xmlError *error); + static void xml_ereport_by_code(int level, int sqlcode, + const char *msg, int errcode); + static void chopStringInfoNewlines(StringInfo str); +@@ -1749,7 +1749,7 @@ xml_ereport(PgXmlErrorContext *errcxt, int level, int sqlcode, const char *msg) + * Error handler for libxml errors and warnings + */ + static void +-xml_errorHandler(void *data, xmlErrorPtr error) ++xml_errorHandler(void *data, const xmlError *error) + { + PgXmlErrorContext *xmlerrcxt = (PgXmlErrorContext *) data; + xmlParserCtxtPtr ctxt = (xmlParserCtxtPtr) error->ctxt; diff --git a/postgresql16.spec b/postgresql16.spec index e1a04f6..73943e9 100644 --- a/postgresql16.spec +++ b/postgresql16.spec @@ -95,6 +95,8 @@ Patch9: postgresql-server-pg_config.patch # rhbz#1940964 Patch10: postgresql-datalayout-mismatch-on-s390.patch Patch12: postgresql-no-libecpg.patch +Patch13: postgresql-libxml2.patch +Patch14: postgresql15-libxml2.patch # This macro is used for package names in the files section %if %?postgresql_default @@ -533,6 +535,7 @@ goal of accelerating analytics queries. %endif %patch 9 -p1 %patch 10 -p1 +%patch 13 -p1 %if ! %external_libpq @@ -549,6 +552,8 @@ tar xfj %{SOURCE3} find . -type f -name Makefile -exec sed -i -e "s/SO_MAJOR_VERSION=\s\?\([0-9]\+\)/SO_MAJOR_VERSION= %{private_soname}-\1/" {} \; %endif +%patch 14 -p1 -d postgresql-%{prevversion} + # apply once SOURCE3 is extracted %endif From 9114cc0efea3e9e1965fbdf6b6a6073b1ecb8281 Mon Sep 17 00:00:00 2001 From: Pete Walter Date: Wed, 31 Jan 2024 20:07:45 +0000 Subject: [PATCH 06/44] Rebuild for ICU 74 --- postgresql16.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/postgresql16.spec b/postgresql16.spec index 73943e9..475c0bd 100644 --- a/postgresql16.spec +++ b/postgresql16.spec @@ -48,7 +48,7 @@ Summary: PostgreSQL client programs Name: %{majorname}%{majorversion} Version: %{majorversion}.1 -Release: 3%{?dist} +Release: 4%{?dist} # The PostgreSQL license is very similar to other MIT licenses, but the OSI # recognizes it as an independent license, so we do as well. @@ -1352,6 +1352,9 @@ make -C postgresql-setup-%{setup_version} check %changelog +* Wed Jan 31 2024 Pete Walter - 16.1-4 +- Rebuild for ICU 74 + * Sun Jan 21 2024 Fedora Release Engineering - 16.1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From ceda0e6f43c15160d8012b71522cea38b398e0c0 Mon Sep 17 00:00:00 2001 From: Filip Janus Date: Mon, 5 Feb 2024 15:04:15 +0100 Subject: [PATCH 07/44] Add versioned provide to the default version Obsolete versioned is no more needed since only default stream provides postgresql symbol --- postgresql16.spec | 51 +++++++++++++++++++++++------------------------ 1 file changed, 25 insertions(+), 26 deletions(-) diff --git a/postgresql16.spec b/postgresql16.spec index 475c0bd..325b853 100644 --- a/postgresql16.spec +++ b/postgresql16.spec @@ -48,7 +48,7 @@ Summary: PostgreSQL client programs Name: %{majorname}%{majorversion} Version: %{majorversion}.1 -Release: 4%{?dist} +Release: 5%{?dist} # The PostgreSQL license is very similar to other MIT licenses, but the OSI # recognizes it as an independent license, so we do as well. @@ -175,16 +175,13 @@ BuildRequires: libselinux-devel BuildRequires: libicu-devel %endif -# Let's remove versioned provides in default version -# It should ensure that unversioned(default version) postgresql stream -# will be preferable to an versioned one. -# postgresql-16.0-1 will replace postgresql16-16.0-1 %if %?postgresql_default -%define obsoletes_postgresqlXX_if_default() %{expand:\ -Obsoletes: postgresql%{majorversion}%{?1:-%{1}}\ +%define postgresqlXX_if_default() %{expand:\ +Provides: postgresql%{majorversion}%{?1:-%{1}} = %precise_version\ +Provides: postgresql%{majorversion}%{?1:-%{1}}%{?_isa} = %precise_version\ } %else -%define obsoletes_postgresqlXX_if_default() %{nil} +%define postgresqlXX_if_default() %{nil} %endif %define conflict_with_other_streams() %{expand:\ @@ -196,7 +193,7 @@ Provides: %{pkgname} = %precise_version Provides: %{pkgname}%{?_isa} = %precise_version %conflict_with_other_streams -%obsoletes_postgresqlXX_if_default +%postgresqlXX_if_default # https://bugzilla.redhat.com/1464368 # and do not provide pkgconfig RPM provides (RHBZ#1980992) and #2121696 @@ -231,7 +228,7 @@ Requires(postun): glibc Provides: %{pkgname}-private-libs = %precise_version Provides: %{pkgname}-private-libs%{?_isa} = %precise_version -%obsoletes_postgresqlXX_if_default private-libs +%postgresqlXX_if_default private-libs %conflict_with_other_streams private-libs %description -n %{pkgname}-private-libs @@ -250,7 +247,7 @@ Conflicts: libpq-devel Provides: %{pkgname}-devel = %precise_version Provides: %{pkgname}-devel%{?_isa} = %precise_version -%obsoletes_postgresqlXX_if_default private-devel +%postgresqlXX_if_default private-devel %conflict_with_other_streams private-devel %description -n %{pkgname}-private-devel @@ -286,7 +283,7 @@ Provides: %{pkgname}-server%{?_isa} = %precise_version # Provide symbol regardless version. This symbol is present in every single # postgresql stream -%obsoletes_postgresqlXX_if_default server +%postgresqlXX_if_default server %conflict_with_other_streams server %description -n %{pkgname}-server @@ -302,7 +299,7 @@ Requires: %{pkgname}%{?_isa} = %precise_version Provides: %{pkgname}-doc = %precise_version Provides: %{pkgname}-docs = %precise_version -%obsoletes_postgresqlXX_if_default docs +%postgresqlXX_if_default docs %conflict_with_other_streams docs %description -n %{pkgname}-docs @@ -317,7 +314,7 @@ Requires: %{pkgname}%{?_isa} = %precise_version Provides: %{pkgname}-contrib = %precise_version Provides: %{pkgname}-contrib%{?_isa} = %precise_version -%obsoletes_postgresqlXX_if_default contrib +%postgresqlXX_if_default contrib %conflict_with_other_streams contrib %description -n %{pkgname}-contrib @@ -347,7 +344,7 @@ Requires: %{pkgname}-private-devel Provides: %{pkgname}-server-devel = %precise_version Provides: %{pkgname}-server-devel%{?_isa} = %precise_version -%obsoletes_postgresqlXX_if_default server-devel +%postgresqlXX_if_default server-devel %conflict_with_other_streams server-devel %description -n %{pkgname}-server-devel @@ -360,9 +357,6 @@ Requires: %{pkgname}-server = %precise_version BuildArch: noarch Provides: %{pkgname}-test-rpm-macros = %precise_version -%if %?postgresql_default -Obsoletes: postgresql%{majorversion}-test-rpm-macros -%endif %conflict_with_other_streams test-rpm-macros %description -n %{pkgname}-test-rpm-macros @@ -376,7 +370,7 @@ Requires: %{pkgname}-server-devel%{?_isa} = %precise_version Provides: %{pkgname}-static = %precise_version Provides: %{pkgname}-static%{?_isa} = %precise_version -%obsoletes_postgresqlXX_if_default static +%postgresqlXX_if_default static %conflict_with_other_streams static %description -n %{pkgname}-static @@ -392,7 +386,7 @@ Provides: bundled(postgresql-server) = %prevversion Provides: %{pkgname}-upgrade = %precise_version Provides: %{pkgname}-upgrade%{?_isa} = %precise_version -%obsoletes_postgresqlXX_if_default upgrade +%postgresqlXX_if_default upgrade %conflict_with_other_streams upgrade %description -n %{pkgname}-upgrade @@ -407,7 +401,7 @@ Requires: %{pkgname}-upgrade%{?_isa} = %precise_version Provides: %{pkgname}-upgrade-devel = %precise_version Provides: %{pkgname}-upgrade-devel%{?_isa} = %precise_version -%obsoletes_postgresqlXX_if_default upgrade-devel +%postgresqlXX_if_default upgrade-devel %conflict_with_other_streams upgrade-devel %description -n %{pkgname}-upgrade-devel @@ -429,7 +423,7 @@ BuildRequires: perl(Data::Dumper) Provides: %{pkgname}-plperl = %precise_version Provides: %{pkgname}-plperl%{?_isa} = %precise_version -%obsoletes_postgresqlXX_if_default plperl +%postgresqlXX_if_default plperl %conflict_with_other_streams plperl %description -n %{pkgname}-plperl @@ -446,7 +440,7 @@ Requires: %{pkgname}-server%{?_isa} = %precise_version Provides: %{pkgname}-plpython3 = %precise_version Provides: %{pkgname}-plpython3%{?_isa} = %precise_version -%obsoletes_postgresqlXX_if_default python3 +%postgresqlXX_if_default python3 %conflict_with_other_streams python3 %description -n %{pkgname}-plpython3 @@ -463,7 +457,7 @@ Requires: %{pkgname}-server%{?_isa} = %precise_version Provides: %{pkgname}-pltcl = %precise_version Provides: %{pkgname}-pltcl%{?_isa} = %precise_version -%obsoletes_postgresqlXX_if_default pltcl +%postgresqlXX_if_default pltcl %conflict_with_other_streams plctl %description -n %{pkgname}-pltcl @@ -482,7 +476,7 @@ Requires: %{pkgname}-contrib%{?_isa} = %precise_version Provides: %{pkgname}-test = %precise_version Provides: %{pkgname}-test%{?_isa} = %precise_version -%obsoletes_postgresqlXX_if_default test +%postgresqlXX_if_default test %conflict_with_other_streams test %description -n %{pkgname}-test @@ -506,7 +500,7 @@ Provides: %{pkgname}-llvmjit%{?_isa} = %precise_version BuildRequires: llvm-devel >= 5.0 clang-devel >= 5.0 -%obsoletes_postgresqlXX_if_default llvmjit +%postgresqlXX_if_default llvmjit %conflict_with_other_streams llvmjit %description -n %{pkgname}-llvmjit @@ -1352,6 +1346,11 @@ make -C postgresql-setup-%{setup_version} check %changelog +* Mon Feb 5 2024 Filip Janus - 16.1-5 +- Add versioned provide to the default version +- Obsolete versioned is no more needed since only default stream provides + postgresql symbol + * Wed Jan 31 2024 Pete Walter - 16.1-4 - Rebuild for ICU 74 From 9647cd2b6450c8348a00f915060b82ebc158402c Mon Sep 17 00:00:00 2001 From: Filip Janus Date: Mon, 5 Feb 2024 15:52:43 +0100 Subject: [PATCH 08/44] Add macro virtual_conflicts_and_provides to be specfile more readable --- postgresql16.spec | 50 +++++++++++++++++++---------------------------- 1 file changed, 20 insertions(+), 30 deletions(-) diff --git a/postgresql16.spec b/postgresql16.spec index 325b853..766478c 100644 --- a/postgresql16.spec +++ b/postgresql16.spec @@ -189,11 +189,15 @@ Provides: %{majorname}%{?1:-%{1}}-any\ Conflicts: %{majorname}%{?1:-%{1}}-any\ } +%define virtual_conflicts_and_provides() %{expand:\ +%conflict_with_other_streams %{**}\ +%postgresqlXX_if_default %{**}\ +} + Provides: %{pkgname} = %precise_version Provides: %{pkgname}%{?_isa} = %precise_version -%conflict_with_other_streams -%postgresqlXX_if_default +%virtual_conflicts_and_provides # https://bugzilla.redhat.com/1464368 # and do not provide pkgconfig RPM provides (RHBZ#1980992) and #2121696 @@ -228,8 +232,7 @@ Requires(postun): glibc Provides: %{pkgname}-private-libs = %precise_version Provides: %{pkgname}-private-libs%{?_isa} = %precise_version -%postgresqlXX_if_default private-libs -%conflict_with_other_streams private-libs +%virtual_conflicts_and_provides private-libs %description -n %{pkgname}-private-libs The postgresql-private-libs package provides the shared libraries for this @@ -247,8 +250,7 @@ Conflicts: libpq-devel Provides: %{pkgname}-devel = %precise_version Provides: %{pkgname}-devel%{?_isa} = %precise_version -%postgresqlXX_if_default private-devel -%conflict_with_other_streams private-devel +%virtual_conflicts_and_provides private-devel %description -n %{pkgname}-private-devel The postgresql-private-devel package contains the header files and libraries @@ -283,8 +285,7 @@ Provides: %{pkgname}-server%{?_isa} = %precise_version # Provide symbol regardless version. This symbol is present in every single # postgresql stream -%postgresqlXX_if_default server -%conflict_with_other_streams server +%virtual_conflicts_and_provides server %description -n %{pkgname}-server PostgreSQL is an advanced Object-Relational database management system (DBMS). @@ -299,8 +300,7 @@ Requires: %{pkgname}%{?_isa} = %precise_version Provides: %{pkgname}-doc = %precise_version Provides: %{pkgname}-docs = %precise_version -%postgresqlXX_if_default docs -%conflict_with_other_streams docs +%virtual_conflicts_and_provides docs %description -n %{pkgname}-docs The postgresql-docs package contains some additional documentation for @@ -314,8 +314,7 @@ Requires: %{pkgname}%{?_isa} = %precise_version Provides: %{pkgname}-contrib = %precise_version Provides: %{pkgname}-contrib%{?_isa} = %precise_version -%postgresqlXX_if_default contrib -%conflict_with_other_streams contrib +%virtual_conflicts_and_provides contrib %description -n %{pkgname}-contrib The postgresql-contrib package contains various extension modules that are @@ -344,8 +343,7 @@ Requires: %{pkgname}-private-devel Provides: %{pkgname}-server-devel = %precise_version Provides: %{pkgname}-server-devel%{?_isa} = %precise_version -%postgresqlXX_if_default server-devel -%conflict_with_other_streams server-devel +%virtual_conflicts_and_provides server-devel %description -n %{pkgname}-server-devel The postgresql-server-devel package contains the header files and configuration @@ -370,8 +368,7 @@ Requires: %{pkgname}-server-devel%{?_isa} = %precise_version Provides: %{pkgname}-static = %precise_version Provides: %{pkgname}-static%{?_isa} = %precise_version -%postgresqlXX_if_default static -%conflict_with_other_streams static +%virtual_conflicts_and_provides static %description -n %{pkgname}-static Statically linked PostgreSQL libraries that do not have dynamically linked @@ -386,8 +383,7 @@ Provides: bundled(postgresql-server) = %prevversion Provides: %{pkgname}-upgrade = %precise_version Provides: %{pkgname}-upgrade%{?_isa} = %precise_version -%postgresqlXX_if_default upgrade -%conflict_with_other_streams upgrade +%virtual_conflicts_and_provides upgrade %description -n %{pkgname}-upgrade The postgresql-upgrade package contains the pg_upgrade utility and supporting @@ -401,8 +397,7 @@ Requires: %{pkgname}-upgrade%{?_isa} = %precise_version Provides: %{pkgname}-upgrade-devel = %precise_version Provides: %{pkgname}-upgrade-devel%{?_isa} = %precise_version -%postgresqlXX_if_default upgrade-devel -%conflict_with_other_streams upgrade-devel +%virtual_conflicts_and_provides upgrade-devel %description -n %{pkgname}-upgrade-devel The postgresql-devel package contains the header files and libraries @@ -423,8 +418,7 @@ BuildRequires: perl(Data::Dumper) Provides: %{pkgname}-plperl = %precise_version Provides: %{pkgname}-plperl%{?_isa} = %precise_version -%postgresqlXX_if_default plperl -%conflict_with_other_streams plperl +%virtual_conflicts_and_provides plperl %description -n %{pkgname}-plperl The postgresql-plperl package contains the PL/Perl procedural language, @@ -440,8 +434,7 @@ Requires: %{pkgname}-server%{?_isa} = %precise_version Provides: %{pkgname}-plpython3 = %precise_version Provides: %{pkgname}-plpython3%{?_isa} = %precise_version -%postgresqlXX_if_default python3 -%conflict_with_other_streams python3 +%virtual_conflicts_and_provides python3 %description -n %{pkgname}-plpython3 The postgresql-plpython3 package contains the PL/Python3 procedural language, @@ -457,8 +450,7 @@ Requires: %{pkgname}-server%{?_isa} = %precise_version Provides: %{pkgname}-pltcl = %precise_version Provides: %{pkgname}-pltcl%{?_isa} = %precise_version -%postgresqlXX_if_default pltcl -%conflict_with_other_streams plctl +%virtual_conflicts_and_provides plctl %description -n %{pkgname}-pltcl The postgresql-pltcl package contains the PL/Tcl procedural language, @@ -476,8 +468,7 @@ Requires: %{pkgname}-contrib%{?_isa} = %precise_version Provides: %{pkgname}-test = %precise_version Provides: %{pkgname}-test%{?_isa} = %precise_version -%postgresqlXX_if_default test -%conflict_with_other_streams test +%virtual_conflicts_and_provides test %description -n %{pkgname}-test The postgresql-test package contains files needed for various tests for the @@ -500,8 +491,7 @@ Provides: %{pkgname}-llvmjit%{?_isa} = %precise_version BuildRequires: llvm-devel >= 5.0 clang-devel >= 5.0 -%postgresqlXX_if_default llvmjit -%conflict_with_other_streams llvmjit +%virtual_conflicts_and_provides llvmjit %description -n %{pkgname}-llvmjit The postgresql-llvmjit package contains support for From 9b9a8eb409c56b9e497f61e21cf1bc4bdd44cc13 Mon Sep 17 00:00:00 2001 From: Yaakov Selkowitz Date: Mon, 19 Feb 2024 21:52:30 -0500 Subject: [PATCH 09/44] Backport OpenSSL 3.2 fix from upstream master https://git.postgresql.org/gitweb/?p=postgresql.git;h=b2b1f12882fb561c7d474b834044dd8ed570bfea --- postgresql-openssl32.patch | 142 +++++++++++++++++++++++++++++++++++++ postgresql16.spec | 7 +- 2 files changed, 148 insertions(+), 1 deletion(-) create mode 100644 postgresql-openssl32.patch diff --git a/postgresql-openssl32.patch b/postgresql-openssl32.patch new file mode 100644 index 0000000..683ffc5 --- /dev/null +++ b/postgresql-openssl32.patch @@ -0,0 +1,142 @@ +Backport of commit b2b1f12882fb561c7d474b834044dd8ed570bfea to 16.1 + +Use BIO_{get,set}_app_data instead of BIO_{get,set}_data. + +We should have done it this way all along, but we accidentally got +away with using the wrong BIO field up until OpenSSL 3.2. There, +the library's BIO routines that we rely on use the "data" field +for their own purposes, and our conflicting use causes assorted +weird behaviors up to and including core dumps when SSL connections +are attempted. Switch to using the approved field for the purpose, +i.e. app_data. + +While at it, remove our configure probes for BIO_get_data as well +as the fallback implementation. BIO_{get,set}_app_data have been +there since long before any OpenSSL version that we still support, +even in the back branches. + +Also, update src/test/ssl/t/001_ssltests.pl to allow for a minor +change in an error message spelling that evidently came in with 3.2. + +Tristan Partin and Bo Andreson. Back-patch to all supported branches. + +Discussion: https://postgr.es/m/CAN55FZ1eDDYsYaL7mv+oSLUij2h_u6hvD4Qmv-7PK7jkji0uyQ@mail.gmail.com +--- + +diff --git a/src/backend/libpq/be-secure-openssl.c b/src/backend/libpq/be-secure-openssl.c +index 31b6a6eacdf0..1b8b32c5b39e 100644 +--- a/src/backend/libpq/be-secure-openssl.c ++++ b/src/backend/libpq/be-secure-openssl.c +@@ -842,11 +842,6 @@ be_tls_write(Port *port, void *ptr, size_t len, int *waitfor) + * to retry; do we need to adopt their logic for that? + */ + +-#ifndef HAVE_BIO_GET_DATA +-#define BIO_get_data(bio) (bio->ptr) +-#define BIO_set_data(bio, data) (bio->ptr = data) +-#endif +- + static BIO_METHOD *my_bio_methods = NULL; + + static int +@@ -856,7 +851,7 @@ my_sock_read(BIO *h, char *buf, int size) + + if (buf != NULL) + { +- res = secure_raw_read(((Port *) BIO_get_data(h)), buf, size); ++ res = secure_raw_read(((Port *) BIO_get_app_data(h)), buf, size); + BIO_clear_retry_flags(h); + if (res <= 0) + { +@@ -876,7 +871,7 @@ my_sock_write(BIO *h, const char *buf, int size) + { + int res = 0; + +- res = secure_raw_write(((Port *) BIO_get_data(h)), buf, size); ++ res = secure_raw_write(((Port *) BIO_get_app_data(h)), buf, size); + BIO_clear_retry_flags(h); + if (res <= 0) + { +@@ -952,7 +947,7 @@ my_SSL_set_fd(Port *port, int fd) + SSLerr(SSL_F_SSL_SET_FD, ERR_R_BUF_LIB); + goto err; + } +- BIO_set_data(bio, port); ++ BIO_set_app_data(bio, port); + + BIO_set_fd(bio, fd, BIO_NOCLOSE); + SSL_set_bio(port->ssl, bio, bio); +diff --git a/src/interfaces/libpq/fe-secure-openssl.c b/src/interfaces/libpq/fe-secure-openssl.c +index 4aeaf08312ce..e669bdbf1d2d 100644 +--- a/src/interfaces/libpq/fe-secure-openssl.c ++++ b/src/interfaces/libpq/fe-secure-openssl.c +@@ -1815,11 +1815,6 @@ PQsslAttribute(PGconn *conn, const char *attribute_name) + * to retry; do we need to adopt their logic for that? + */ + +-#ifndef HAVE_BIO_GET_DATA +-#define BIO_get_data(bio) (bio->ptr) +-#define BIO_set_data(bio, data) (bio->ptr = data) +-#endif +- + static BIO_METHOD *my_bio_methods; + + static int +@@ -1828,7 +1823,7 @@ my_sock_read(BIO *h, char *buf, int size) + { + int res; + +- res = pqsecure_raw_read((PGconn *) BIO_get_data(h), buf, size); ++ res = pqsecure_raw_read((PGconn *) BIO_get_app_data(h), buf, size); + BIO_clear_retry_flags(h); + if (res < 0) + { +@@ -1858,7 +1853,7 @@ my_sock_write(BIO *h, const char *buf, int size) + { + int res; + +- res = pqsecure_raw_write((PGconn *) BIO_get_data(h), buf, size); ++ res = pqsecure_raw_write((PGconn *) BIO_get_app_data(h), buf, size); + BIO_clear_retry_flags(h); + if (res < 0) + { +@@ -1968,7 +1963,7 @@ my_SSL_set_fd(PGconn *conn, int fd) + SSLerr(SSL_F_SSL_SET_FD, ERR_R_BUF_LIB); + goto err; + } +- BIO_set_data(bio, conn); ++ BIO_set_app_data(bio, conn); + + SSL_set_bio(conn->ssl, bio, bio); + BIO_set_fd(bio, fd, BIO_NOCLOSE); +diff --git a/src/test/ssl/t/001_ssltests.pl b/src/test/ssl/t/001_ssltests.pl +index a049fd2ff03a..d921f1dde9fa 100644 +--- a/src/test/ssl/t/001_ssltests.pl ++++ b/src/test/ssl/t/001_ssltests.pl +@@ -776,7 +776,7 @@ sub switch_server_cert + "$common_connstr user=ssltestuser sslcert=ssl/client-revoked.crt " + . sslkey('client-revoked.key'), + "certificate authorization fails with revoked client cert", +- expected_stderr => qr/SSL error: sslv3 alert certificate revoked/, ++ expected_stderr => qr|SSL error: ssl[a-z0-9/]* alert certificate revoked|, + # temporarily(?) skip this check due to timing issue + # log_like => [ + # qr{Client certificate verification failed at depth 0: certificate revoked}, +@@ -881,7 +881,7 @@ sub switch_server_cert + "$common_connstr user=ssltestuser sslcert=ssl/client-revoked.crt " + . sslkey('client-revoked.key'), + "certificate authorization fails with revoked client cert with server-side CRL directory", +- expected_stderr => qr/SSL error: sslv3 alert certificate revoked/, ++ expected_stderr => qr|SSL error: ssl[a-z0-9/]* alert certificate revoked|, + # temporarily(?) skip this check due to timing issue + # log_like => [ + # qr{Client certificate verification failed at depth 0: certificate revoked}, +@@ -894,7 +894,7 @@ sub switch_server_cert + "$common_connstr user=ssltestuser sslcert=ssl/client-revoked-utf8.crt " + . sslkey('client-revoked-utf8.key'), + "certificate authorization fails with revoked UTF-8 client cert with server-side CRL directory", +- expected_stderr => qr/SSL error: sslv3 alert certificate revoked/, ++ expected_stderr => qr|SSL error: ssl[a-z0-9/]* alert certificate revoked|, + # temporarily(?) skip this check due to timing issue + # log_like => [ + # qr{Client certificate verification failed at depth 0: certificate revoked}, diff --git a/postgresql16.spec b/postgresql16.spec index 766478c..514ae73 100644 --- a/postgresql16.spec +++ b/postgresql16.spec @@ -48,7 +48,7 @@ Summary: PostgreSQL client programs Name: %{majorname}%{majorversion} Version: %{majorversion}.1 -Release: 5%{?dist} +Release: 6%{?dist} # The PostgreSQL license is very similar to other MIT licenses, but the OSI # recognizes it as an independent license, so we do as well. @@ -97,6 +97,7 @@ Patch10: postgresql-datalayout-mismatch-on-s390.patch Patch12: postgresql-no-libecpg.patch Patch13: postgresql-libxml2.patch Patch14: postgresql15-libxml2.patch +Patch15: postgresql-openssl32.patch # This macro is used for package names in the files section %if %?postgresql_default @@ -520,6 +521,7 @@ goal of accelerating analytics queries. %patch 9 -p1 %patch 10 -p1 %patch 13 -p1 +%patch 15 -p1 %if ! %external_libpq @@ -1336,6 +1338,9 @@ make -C postgresql-setup-%{setup_version} check %changelog +* Tue Feb 20 2024 Yaakov Selkowitz - 16.1-6 +- Backport OpenSSL 3.2 fix from upstream master + * Mon Feb 5 2024 Filip Janus - 16.1-5 - Add versioned provide to the default version - Obsolete versioned is no more needed since only default stream provides From e1172c877b1bd86b06ecaf20ff51a54886f88ca6 Mon Sep 17 00:00:00 2001 From: Filip Janus Date: Mon, 26 Feb 2024 13:09:54 +0100 Subject: [PATCH 10/44] Since /var/run/postgresql is symlink to /run/postgresql it could be removed. Its not necessary to install /var/run/postgresql directory because /run/postgresql is created by systemd script Upstream rpm also deals only with /run https://git.postgresql.org/gitweb/?p=pgrpms.git;a=blob;f=rpm/redhat/main/non-common/postgresql-16/main/postgresql-16.spec;h=93ebd0a0cfe52cf49cdf8b7bd18c3277c9df9402;hb=HEAD#l1179 Related:RHEL-25756 --- postgresql16.spec | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/postgresql16.spec b/postgresql16.spec index 514ae73..997502c 100644 --- a/postgresql16.spec +++ b/postgresql16.spec @@ -48,7 +48,7 @@ Summary: PostgreSQL client programs Name: %{majorname}%{majorversion} Version: %{majorversion}.1 -Release: 6%{?dist} +Release: 7%{?dist} # The PostgreSQL license is very similar to other MIT licenses, but the OSI # recognizes it as an independent license, so we do as well. @@ -814,10 +814,6 @@ install -d $RPM_BUILD_ROOT/etc/pam.d install -m 644 %{SOURCE10} $RPM_BUILD_ROOT/etc/pam.d/postgresql %endif -# Create the directory for sockets. -install -d -m 755 $RPM_BUILD_ROOT%{?_localstatedir}/run/postgresql - -# ... and make a tmpfiles script to recreate it at reboot. mkdir -p $RPM_BUILD_ROOT%{_tmpfilesdir} install -m 0644 %{SOURCE9} $RPM_BUILD_ROOT%{_tmpfilesdir}/postgresql.conf @@ -1237,7 +1233,7 @@ make -C postgresql-setup-%{setup_version} check %attr(644,postgres,postgres) %config(noreplace) %{?_localstatedir}/lib/pgsql/.bash_profile %attr(700,postgres,postgres) %dir %{?_localstatedir}/lib/pgsql/backups %attr(700,postgres,postgres) %dir %{?_localstatedir}/lib/pgsql/data -%attr(755,postgres,postgres) %dir %{?_localstatedir}/run/postgresql +%ghost %attr(755,postgres,postgres) %dir %{_rundir}/postgresql %if %pam %config(noreplace) /etc/pam.d/postgresql %endif @@ -1338,6 +1334,9 @@ make -C postgresql-setup-%{setup_version} check %changelog +* Mon Feb 26 2024 Filip Janus - 16.1-7 +- Remove /var/run/postgresql + * Tue Feb 20 2024 Yaakov Selkowitz - 16.1-6 - Backport OpenSSL 3.2 fix from upstream master From ab3a6898d4f35f0c414441df7274272226c5c841 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Fri, 7 Jun 2024 08:34:01 +0200 Subject: [PATCH 11/44] Rebuilt for Python 3.13 --- postgresql16.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/postgresql16.spec b/postgresql16.spec index 997502c..74715de 100644 --- a/postgresql16.spec +++ b/postgresql16.spec @@ -48,7 +48,7 @@ Summary: PostgreSQL client programs Name: %{majorname}%{majorversion} Version: %{majorversion}.1 -Release: 7%{?dist} +Release: 8%{?dist} # The PostgreSQL license is very similar to other MIT licenses, but the OSI # recognizes it as an independent license, so we do as well. @@ -1334,6 +1334,9 @@ make -C postgresql-setup-%{setup_version} check %changelog +* Fri Jun 07 2024 Python Maint - 16.1-8 +- Rebuilt for Python 3.13 + * Mon Feb 26 2024 Filip Janus - 16.1-7 - Remove /var/run/postgresql From c23a399ca10735024670d8c6916e1613a3acde3f Mon Sep 17 00:00:00 2001 From: Jitka Plesnikova Date: Wed, 12 Jun 2024 12:55:37 +0200 Subject: [PATCH 12/44] Perl 5.40 rebuild --- postgresql16.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/postgresql16.spec b/postgresql16.spec index 74715de..77f8ad6 100644 --- a/postgresql16.spec +++ b/postgresql16.spec @@ -48,7 +48,7 @@ Summary: PostgreSQL client programs Name: %{majorname}%{majorversion} Version: %{majorversion}.1 -Release: 8%{?dist} +Release: 9%{?dist} # The PostgreSQL license is very similar to other MIT licenses, but the OSI # recognizes it as an independent license, so we do as well. @@ -1334,6 +1334,9 @@ make -C postgresql-setup-%{setup_version} check %changelog +* Wed Jun 12 2024 Jitka Plesnikova - 16.1-9 +- Perl 5.40 rebuild + * Fri Jun 07 2024 Python Maint - 16.1-8 - Rebuilt for Python 3.13 From 4a7744bef244ba0d316aaf253f263f13209d9c6e Mon Sep 17 00:00:00 2001 From: Ales Nezbeda Date: Mon, 17 Jun 2024 15:05:35 +0200 Subject: [PATCH 13/44] Update to 16.3 and 15.7 LibXML and OpenSSL patches no longer needed. --- .gitignore | 4 ++ postgresql-libxml2.patch | 37 ---------- postgresql-openssl32.patch | 142 ------------------------------------- postgresql15-libxml2.patch | 37 ---------- postgresql16.spec | 18 +++-- sources | 8 +-- 6 files changed, 16 insertions(+), 230 deletions(-) delete mode 100644 postgresql-libxml2.patch delete mode 100644 postgresql-openssl32.patch delete mode 100644 postgresql15-libxml2.patch mode change 100755 => 100644 sources diff --git a/.gitignore b/.gitignore index cac2c1c..42d69d3 100755 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,7 @@ /postgresql-16.1.tar.bz2 /postgresql-16.1.tar.bz2.sha256 /postgresql-setup-8.9.tar.gz +/postgresql-15.7.tar.bz2 +/postgresql-16.3.tar.bz2 +/postgresql-15.7.tar.bz2.sha256 +/postgresql-16.3.tar.bz2.sha256 diff --git a/postgresql-libxml2.patch b/postgresql-libxml2.patch deleted file mode 100644 index 98a53f4..0000000 --- a/postgresql-libxml2.patch +++ /dev/null @@ -1,37 +0,0 @@ -Fixes for GCC 14 and libxml2 2.12.0 "error: Make more xmlError structs constant" - -xml.c: In function ‘pg_xml_init’: -xml.c:1177:52: error: passing argument 2 of ‘xmlSetStructuredErrorFunc’ from incompatible pointer type [-Wincompatible-pointer-types] - 1177 | xmlSetStructuredErrorFunc((void *) errcxt, xml_errorHandler); - | ^~~~~~~~~~~~~~~~ - | | - | void (*)(void *, xmlError *) {aka void (*)(void *, struct _xmlError *)} -In file included from /usr/include/libxml2/libxml/valid.h:15, - from /usr/include/libxml2/libxml/parser.h:19, - from xml.c:50: -/usr/include/libxml2/libxml/xmlerror.h:898:57: note: expected ‘xmlStructuredErrorFunc’ {aka ‘void (*)(void *, const struct _xmlError *)’} but argument is of type ‘void (*)(void *, xmlError *)’ {aka ‘void (*)(void *, struct _xmlError *)’} - 898 | xmlStructuredErrorFunc handler); - | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ - -diff --git a/src/backend/utils/adt/xml.c b/src/backend/utils/adt/xml.c -index d3db75eb87..619f908c6d 100644 ---- a/src/backend/utils/adt/xml.c -+++ b/src/backend/utils/adt/xml.c -@@ -124,7 +124,7 @@ static xmlParserInputPtr xmlPgEntityLoader(const char *URL, const char *ID, - xmlParserCtxtPtr ctxt); - static void xml_errsave(Node *escontext, PgXmlErrorContext *errcxt, - int sqlcode, const char *msg); --static void xml_errorHandler(void *data, xmlErrorPtr error); -+static void xml_errorHandler(void *data, const xmlError *error); - static int errdetail_for_xml_code(int code); - static void chopStringInfoNewlines(StringInfo str); - static void appendStringInfoLineSeparator(StringInfo str); -@@ -2044,7 +2044,7 @@ xml_errsave(Node *escontext, PgXmlErrorContext *errcxt, - * Error handler for libxml errors and warnings - */ - static void --xml_errorHandler(void *data, xmlErrorPtr error) -+xml_errorHandler(void *data, const xmlError *error) - { - PgXmlErrorContext *xmlerrcxt = (PgXmlErrorContext *) data; - xmlParserCtxtPtr ctxt = (xmlParserCtxtPtr) error->ctxt; diff --git a/postgresql-openssl32.patch b/postgresql-openssl32.patch deleted file mode 100644 index 683ffc5..0000000 --- a/postgresql-openssl32.patch +++ /dev/null @@ -1,142 +0,0 @@ -Backport of commit b2b1f12882fb561c7d474b834044dd8ed570bfea to 16.1 - -Use BIO_{get,set}_app_data instead of BIO_{get,set}_data. - -We should have done it this way all along, but we accidentally got -away with using the wrong BIO field up until OpenSSL 3.2. There, -the library's BIO routines that we rely on use the "data" field -for their own purposes, and our conflicting use causes assorted -weird behaviors up to and including core dumps when SSL connections -are attempted. Switch to using the approved field for the purpose, -i.e. app_data. - -While at it, remove our configure probes for BIO_get_data as well -as the fallback implementation. BIO_{get,set}_app_data have been -there since long before any OpenSSL version that we still support, -even in the back branches. - -Also, update src/test/ssl/t/001_ssltests.pl to allow for a minor -change in an error message spelling that evidently came in with 3.2. - -Tristan Partin and Bo Andreson. Back-patch to all supported branches. - -Discussion: https://postgr.es/m/CAN55FZ1eDDYsYaL7mv+oSLUij2h_u6hvD4Qmv-7PK7jkji0uyQ@mail.gmail.com ---- - -diff --git a/src/backend/libpq/be-secure-openssl.c b/src/backend/libpq/be-secure-openssl.c -index 31b6a6eacdf0..1b8b32c5b39e 100644 ---- a/src/backend/libpq/be-secure-openssl.c -+++ b/src/backend/libpq/be-secure-openssl.c -@@ -842,11 +842,6 @@ be_tls_write(Port *port, void *ptr, size_t len, int *waitfor) - * to retry; do we need to adopt their logic for that? - */ - --#ifndef HAVE_BIO_GET_DATA --#define BIO_get_data(bio) (bio->ptr) --#define BIO_set_data(bio, data) (bio->ptr = data) --#endif -- - static BIO_METHOD *my_bio_methods = NULL; - - static int -@@ -856,7 +851,7 @@ my_sock_read(BIO *h, char *buf, int size) - - if (buf != NULL) - { -- res = secure_raw_read(((Port *) BIO_get_data(h)), buf, size); -+ res = secure_raw_read(((Port *) BIO_get_app_data(h)), buf, size); - BIO_clear_retry_flags(h); - if (res <= 0) - { -@@ -876,7 +871,7 @@ my_sock_write(BIO *h, const char *buf, int size) - { - int res = 0; - -- res = secure_raw_write(((Port *) BIO_get_data(h)), buf, size); -+ res = secure_raw_write(((Port *) BIO_get_app_data(h)), buf, size); - BIO_clear_retry_flags(h); - if (res <= 0) - { -@@ -952,7 +947,7 @@ my_SSL_set_fd(Port *port, int fd) - SSLerr(SSL_F_SSL_SET_FD, ERR_R_BUF_LIB); - goto err; - } -- BIO_set_data(bio, port); -+ BIO_set_app_data(bio, port); - - BIO_set_fd(bio, fd, BIO_NOCLOSE); - SSL_set_bio(port->ssl, bio, bio); -diff --git a/src/interfaces/libpq/fe-secure-openssl.c b/src/interfaces/libpq/fe-secure-openssl.c -index 4aeaf08312ce..e669bdbf1d2d 100644 ---- a/src/interfaces/libpq/fe-secure-openssl.c -+++ b/src/interfaces/libpq/fe-secure-openssl.c -@@ -1815,11 +1815,6 @@ PQsslAttribute(PGconn *conn, const char *attribute_name) - * to retry; do we need to adopt their logic for that? - */ - --#ifndef HAVE_BIO_GET_DATA --#define BIO_get_data(bio) (bio->ptr) --#define BIO_set_data(bio, data) (bio->ptr = data) --#endif -- - static BIO_METHOD *my_bio_methods; - - static int -@@ -1828,7 +1823,7 @@ my_sock_read(BIO *h, char *buf, int size) - { - int res; - -- res = pqsecure_raw_read((PGconn *) BIO_get_data(h), buf, size); -+ res = pqsecure_raw_read((PGconn *) BIO_get_app_data(h), buf, size); - BIO_clear_retry_flags(h); - if (res < 0) - { -@@ -1858,7 +1853,7 @@ my_sock_write(BIO *h, const char *buf, int size) - { - int res; - -- res = pqsecure_raw_write((PGconn *) BIO_get_data(h), buf, size); -+ res = pqsecure_raw_write((PGconn *) BIO_get_app_data(h), buf, size); - BIO_clear_retry_flags(h); - if (res < 0) - { -@@ -1968,7 +1963,7 @@ my_SSL_set_fd(PGconn *conn, int fd) - SSLerr(SSL_F_SSL_SET_FD, ERR_R_BUF_LIB); - goto err; - } -- BIO_set_data(bio, conn); -+ BIO_set_app_data(bio, conn); - - SSL_set_bio(conn->ssl, bio, bio); - BIO_set_fd(bio, fd, BIO_NOCLOSE); -diff --git a/src/test/ssl/t/001_ssltests.pl b/src/test/ssl/t/001_ssltests.pl -index a049fd2ff03a..d921f1dde9fa 100644 ---- a/src/test/ssl/t/001_ssltests.pl -+++ b/src/test/ssl/t/001_ssltests.pl -@@ -776,7 +776,7 @@ sub switch_server_cert - "$common_connstr user=ssltestuser sslcert=ssl/client-revoked.crt " - . sslkey('client-revoked.key'), - "certificate authorization fails with revoked client cert", -- expected_stderr => qr/SSL error: sslv3 alert certificate revoked/, -+ expected_stderr => qr|SSL error: ssl[a-z0-9/]* alert certificate revoked|, - # temporarily(?) skip this check due to timing issue - # log_like => [ - # qr{Client certificate verification failed at depth 0: certificate revoked}, -@@ -881,7 +881,7 @@ sub switch_server_cert - "$common_connstr user=ssltestuser sslcert=ssl/client-revoked.crt " - . sslkey('client-revoked.key'), - "certificate authorization fails with revoked client cert with server-side CRL directory", -- expected_stderr => qr/SSL error: sslv3 alert certificate revoked/, -+ expected_stderr => qr|SSL error: ssl[a-z0-9/]* alert certificate revoked|, - # temporarily(?) skip this check due to timing issue - # log_like => [ - # qr{Client certificate verification failed at depth 0: certificate revoked}, -@@ -894,7 +894,7 @@ sub switch_server_cert - "$common_connstr user=ssltestuser sslcert=ssl/client-revoked-utf8.crt " - . sslkey('client-revoked-utf8.key'), - "certificate authorization fails with revoked UTF-8 client cert with server-side CRL directory", -- expected_stderr => qr/SSL error: sslv3 alert certificate revoked/, -+ expected_stderr => qr|SSL error: ssl[a-z0-9/]* alert certificate revoked|, - # temporarily(?) skip this check due to timing issue - # log_like => [ - # qr{Client certificate verification failed at depth 0: certificate revoked}, diff --git a/postgresql15-libxml2.patch b/postgresql15-libxml2.patch deleted file mode 100644 index ffc87ef..0000000 --- a/postgresql15-libxml2.patch +++ /dev/null @@ -1,37 +0,0 @@ -Fixes for GCC 14 and libxml2 2.12.0 "error: Make more xmlError structs constant" - -xml.c: In function ‘pg_xml_init’: -xml.c:1177:52: error: passing argument 2 of ‘xmlSetStructuredErrorFunc’ from incompatible pointer type [-Wincompatible-pointer-types] - 1177 | xmlSetStructuredErrorFunc((void *) errcxt, xml_errorHandler); - | ^~~~~~~~~~~~~~~~ - | | - | void (*)(void *, xmlError *) {aka void (*)(void *, struct _xmlError *)} -In file included from /usr/include/libxml2/libxml/valid.h:15, - from /usr/include/libxml2/libxml/parser.h:19, - from xml.c:50: -/usr/include/libxml2/libxml/xmlerror.h:898:57: note: expected ‘xmlStructuredErrorFunc’ {aka ‘void (*)(void *, const struct _xmlError *)’} but argument is of type ‘void (*)(void *, xmlError *)’ {aka ‘void (*)(void *, struct _xmlError *)’} - 898 | xmlStructuredErrorFunc handler); - | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ - -diff --git a/src/backend/utils/adt/xml.c b/src/backend/utils/adt/xml.c -index 6411f56b99..0eb39fcfc2 100644 ---- a/src/backend/utils/adt/xml.c -+++ b/src/backend/utils/adt/xml.c -@@ -119,7 +119,7 @@ struct PgXmlErrorContext - - static xmlParserInputPtr xmlPgEntityLoader(const char *URL, const char *ID, - xmlParserCtxtPtr ctxt); --static void xml_errorHandler(void *data, xmlErrorPtr error); -+static void xml_errorHandler(void *data, const xmlError *error); - static void xml_ereport_by_code(int level, int sqlcode, - const char *msg, int errcode); - static void chopStringInfoNewlines(StringInfo str); -@@ -1749,7 +1749,7 @@ xml_ereport(PgXmlErrorContext *errcxt, int level, int sqlcode, const char *msg) - * Error handler for libxml errors and warnings - */ - static void --xml_errorHandler(void *data, xmlErrorPtr error) -+xml_errorHandler(void *data, const xmlError *error) - { - PgXmlErrorContext *xmlerrcxt = (PgXmlErrorContext *) data; - xmlParserCtxtPtr ctxt = (xmlParserCtxtPtr) error->ctxt; diff --git a/postgresql16.spec b/postgresql16.spec index 77f8ad6..aa23129 100644 --- a/postgresql16.spec +++ b/postgresql16.spec @@ -47,8 +47,8 @@ Summary: PostgreSQL client programs Name: %{majorname}%{majorversion} -Version: %{majorversion}.1 -Release: 9%{?dist} +Version: %{majorversion}.3 +Release: 1%{?dist} # The PostgreSQL license is very similar to other MIT licenses, but the OSI # recognizes it as an independent license, so we do as well. @@ -60,7 +60,7 @@ Url: http://www.postgresql.org/ # that this be kept up with the latest minor release of the previous series; # but update when bugs affecting pg_dump output are fixed. %global prevmajorversion 15 -%global prevversion %{prevmajorversion}.5 +%global prevversion %{prevmajorversion}.7 %global prev_prefix %{_libdir}/pgsql/postgresql-%{prevmajorversion} %global precise_version %{?epoch:%epoch:}%version-%release @@ -95,9 +95,6 @@ Patch9: postgresql-server-pg_config.patch # rhbz#1940964 Patch10: postgresql-datalayout-mismatch-on-s390.patch Patch12: postgresql-no-libecpg.patch -Patch13: postgresql-libxml2.patch -Patch14: postgresql15-libxml2.patch -Patch15: postgresql-openssl32.patch # This macro is used for package names in the files section %if %?postgresql_default @@ -520,8 +517,6 @@ goal of accelerating analytics queries. %endif %patch 9 -p1 %patch 10 -p1 -%patch 13 -p1 -%patch 15 -p1 %if ! %external_libpq @@ -538,8 +533,6 @@ tar xfj %{SOURCE3} find . -type f -name Makefile -exec sed -i -e "s/SO_MAJOR_VERSION=\s\?\([0-9]\+\)/SO_MAJOR_VERSION= %{private_soname}-\1/" {} \; %endif -%patch 14 -p1 -d postgresql-%{prevversion} - # apply once SOURCE3 is extracted %endif @@ -1195,6 +1188,7 @@ make -C postgresql-setup-%{setup_version} check %{_datadir}/pgsql/system_constraints.sql %{_datadir}/pgsql/system_functions.sql %{_datadir}/pgsql/system_views.sql +%{_datadir}/pgsql/fix-CVE-2024-4317.sql %{_datadir}/pgsql/timezonesets/ %{_datadir}/pgsql/tsearch_data/ %dir %{_datadir}/postgresql-setup @@ -1334,6 +1328,10 @@ make -C postgresql-setup-%{setup_version} check %changelog +* Mon Jun 17 2024 Ales Nezbeda - 16.3-1 +- Update to 16.3 +- Remove unneeded libXML and OpenSSL patches + * Wed Jun 12 2024 Jitka Plesnikova - 16.1-9 - Perl 5.40 rebuild diff --git a/sources b/sources old mode 100755 new mode 100644 index 42e0a5c..3696058 --- a/sources +++ b/sources @@ -1,5 +1,5 @@ -SHA512 (postgresql-15.5.tar.bz2) = 9ed9d160b3cef99954ccd47a970c107b7e3b0196a7d848f740bf3c52a1c626f6f457814c97f37b9f0467bb07734e19806a15bd9cf3c39445e1d89e75b37064cc -SHA512 (postgresql-15.5.tar.bz2.sha256) = 896ad3a1952f54bc5186d49eb4faec40843813d3e1c200f7b27f0e099b426ef9b59e0c15cb5453ac166e8a566b24178b95836776207de0bf19f5e021fdccfbca -SHA512 (postgresql-16.1.tar.bz2) = 69f4635e5841452599f13b47df41ce2425ab34b4e4582fd2c635bc78d561fa36c5b03eccb4ae6569872dc74775be1b5a62dee20c9a4f12a43339250128352918 -SHA512 (postgresql-16.1.tar.bz2.sha256) = 3f573d81a7af02dea2a3eee180d4e465546fc4d283dde5b6627d25af0be4a546ffd3ae914dd3490e45264d1a43cf143e829e14e5cd9c6bd8f179b6eae4fd6ff1 +SHA512 (postgresql-15.7.tar.bz2) = 8a03e2d7a267f0d11c27d90a2fb605725accb41cfebba2b56c735d4af45bb5f977d4ba051a02ac8d31f93253372df3d3b5efdd159e258d6fcc506b73e3ad6e27 +SHA512 (postgresql-16.3.tar.bz2) = dc1c8d4fbc8e53e9be91dcf1b644b3969bd634f11bf5a1c4fe16619fd386f3349a5509788d43e6a57d099ad75233026d4dd4e0bb180ffc747fd3c1a575c51a5f SHA512 (postgresql-setup-8.9.tar.gz) = 118e9ebf858722a38b0e90324bc1b49fc7058cda601ca0a7e78c94e7b95e89d6dbbc46f377626364b068614ced3cde3cb4733973ad2d71bf17892ad773657ef7 +SHA512 (postgresql-15.7.tar.bz2.sha256) = bff16a90703353ad9577d827e3f0616ed8f41ee6ebc86d36ca62c199a2339de482e7f2246a6a3ea843136b9b7e654e4d291e31bfc243ae5a32743c22440dc8f5 +SHA512 (postgresql-16.3.tar.bz2.sha256) = eeebced14bc6c42df864c00397caaafa91b3ddc1c3900943989f04d396674907f63051b93aeb6b1b2408ffeb1b2fc44521b123b42b986b45c19bdcf706523c84 From 7fa64c3e44c94c82ab2778935715d93c07c029af Mon Sep 17 00:00:00 2001 From: Filip Janus Date: Wed, 3 Jul 2024 12:54:17 +0200 Subject: [PATCH 14/44] Disable ENGINE API --- postgresql16.spec | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/postgresql16.spec b/postgresql16.spec index aa23129..5e9eabd 100644 --- a/postgresql16.spec +++ b/postgresql16.spec @@ -48,7 +48,7 @@ Summary: PostgreSQL client programs Name: %{majorname}%{majorversion} Version: %{majorversion}.3 -Release: 1%{?dist} +Release: 2%{?dist} # The PostgreSQL license is very similar to other MIT licenses, but the OSI # recognizes it as an independent license, so we do as well. @@ -571,6 +571,7 @@ cd .. # Fiddling with CFLAGS. CFLAGS="${CFLAGS:-%optflags}" +CFLAGS="$CFLAGS -DOPENSSL_NO_ENGINE" # Strip out -ffast-math from CFLAGS.... CFLAGS=`echo $CFLAGS|xargs -n 1|grep -v ffast-math|xargs -n 100` export CFLAGS @@ -697,7 +698,7 @@ upgrade_configure () # its ideas about installation paths. # The -fno-aggressive-loop-optimizations is hack for #993532 - CFLAGS="$CFLAGS -fno-aggressive-loop-optimizations" ./configure \ + CFLAGS="$CFLAGS -fno-aggressive-loop-optimizations -DOPENSSL_NO_ENGINE" ./configure \ --build=%{_build} \ --host=%{_host} \ --prefix=%prev_prefix \ @@ -1328,6 +1329,11 @@ make -C postgresql-setup-%{setup_version} check %changelog +* Wed Jul 3 2024 Filip Janus - 16.3-2 +- Disable openssl ENGINE_API +- Fedora change: https://fedoraproject.org/wiki/Changes/OpensslDeprecateEngine +- BZ: 2295339 + * Mon Jun 17 2024 Ales Nezbeda - 16.3-1 - Update to 16.3 - Remove unneeded libXML and OpenSSL patches From e03e328e889d9c991464f1dcb96643ee946a697b Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 19 Jul 2024 08:20:17 +0000 Subject: [PATCH 15/44] Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild --- postgresql16.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/postgresql16.spec b/postgresql16.spec index 5e9eabd..3c773c3 100644 --- a/postgresql16.spec +++ b/postgresql16.spec @@ -48,7 +48,7 @@ Summary: PostgreSQL client programs Name: %{majorname}%{majorversion} Version: %{majorversion}.3 -Release: 2%{?dist} +Release: 3%{?dist} # The PostgreSQL license is very similar to other MIT licenses, but the OSI # recognizes it as an independent license, so we do as well. @@ -1329,6 +1329,9 @@ make -C postgresql-setup-%{setup_version} check %changelog +* Fri Jul 19 2024 Fedora Release Engineering - 16.3-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + * Wed Jul 3 2024 Filip Janus - 16.3-2 - Disable openssl ENGINE_API - Fedora change: https://fedoraproject.org/wiki/Changes/OpensslDeprecateEngine From b005b05197e2f38b432c3e289d62230861ab30b3 Mon Sep 17 00:00:00 2001 From: Lumir Balhar Date: Mon, 29 Jul 2024 13:17:16 +0200 Subject: [PATCH 16/44] Add new systemtap-sdt-dtrace to build deps This is a part of approved Fedora change: https://fedoraproject.org/wiki/Changes/Separate_dtrace_package systemtap-sdt-devel will stop requiring systemtap-sdt-dtrace and that would break the build of this package. --- postgresql16.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/postgresql16.spec b/postgresql16.spec index 3c773c3..bdebced 100644 --- a/postgresql16.spec +++ b/postgresql16.spec @@ -48,7 +48,7 @@ Summary: PostgreSQL client programs Name: %{majorname}%{majorversion} Version: %{majorversion}.3 -Release: 3%{?dist} +Release: 4%{?dist} # The PostgreSQL license is very similar to other MIT licenses, but the OSI # recognizes it as an independent license, so we do as well. @@ -163,6 +163,7 @@ BuildRequires: pam-devel %if %sdt BuildRequires: systemtap-sdt-devel +BuildRequires: systemtap-sdt-dtrace %endif %if %selinux @@ -1329,6 +1330,9 @@ make -C postgresql-setup-%{setup_version} check %changelog +* Mon Jul 29 2024 Lumír Balhar - 16.3-4 +- Add new systemtap-sdt-dtrace to build deps + * Fri Jul 19 2024 Fedora Release Engineering - 16.3-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild From fed07ce08a78116395249f34e59582cadf90f1d3 Mon Sep 17 00:00:00 2001 From: Filip Janus Date: Mon, 5 Aug 2024 14:58:36 +0200 Subject: [PATCH 17/44] Add Obsoletes: postgresqlXX to make the upgrade path from alternative version clear --- postgresql16.spec | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/postgresql16.spec b/postgresql16.spec index bdebced..cdc626f 100644 --- a/postgresql16.spec +++ b/postgresql16.spec @@ -48,7 +48,7 @@ Summary: PostgreSQL client programs Name: %{majorname}%{majorversion} Version: %{majorversion}.3 -Release: 4%{?dist} +Release: 5%{?dist} # The PostgreSQL license is very similar to other MIT licenses, but the OSI # recognizes it as an independent license, so we do as well. @@ -178,6 +178,7 @@ BuildRequires: libicu-devel %define postgresqlXX_if_default() %{expand:\ Provides: postgresql%{majorversion}%{?1:-%{1}} = %precise_version\ Provides: postgresql%{majorversion}%{?1:-%{1}}%{?_isa} = %precise_version\ +Obsoletes: postgresql%{majorversion}%{?1:-%{1}}\ } %else %define postgresqlXX_if_default() %{nil} @@ -1330,6 +1331,10 @@ make -C postgresql-setup-%{setup_version} check %changelog +* Mon Aug 05 2024 Filip Janus - 16.3-5 +- Add Obsoletes of versioned alternative stream from F39 +- It makes the upgrade path clear + * Mon Jul 29 2024 Lumír Balhar - 16.3-4 - Add new systemtap-sdt-dtrace to build deps From 4055d7a0f2c3d0d1a252974efd1f76c97dc82bb7 Mon Sep 17 00:00:00 2001 From: Filip Date: Mon, 16 Sep 2024 21:08:41 +0200 Subject: [PATCH 18/44] Fix typos in provides --- postgresql16.spec | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/postgresql16.spec b/postgresql16.spec index cdc626f..2cd107f 100644 --- a/postgresql16.spec +++ b/postgresql16.spec @@ -48,7 +48,7 @@ Summary: PostgreSQL client programs Name: %{majorname}%{majorversion} Version: %{majorversion}.3 -Release: 5%{?dist} +Release: 6%{?dist} # The PostgreSQL license is very similar to other MIT licenses, but the OSI # recognizes it as an independent license, so we do as well. @@ -434,7 +434,7 @@ Requires: %{pkgname}-server%{?_isa} = %precise_version Provides: %{pkgname}-plpython3 = %precise_version Provides: %{pkgname}-plpython3%{?_isa} = %precise_version -%virtual_conflicts_and_provides python3 +%virtual_conflicts_and_provides plpython3 %description -n %{pkgname}-plpython3 The postgresql-plpython3 package contains the PL/Python3 procedural language, @@ -450,7 +450,7 @@ Requires: %{pkgname}-server%{?_isa} = %precise_version Provides: %{pkgname}-pltcl = %precise_version Provides: %{pkgname}-pltcl%{?_isa} = %precise_version -%virtual_conflicts_and_provides plctl +%virtual_conflicts_and_provides pltcl %description -n %{pkgname}-pltcl The postgresql-pltcl package contains the PL/Tcl procedural language, @@ -1331,6 +1331,9 @@ make -C postgresql-setup-%{setup_version} check %changelog +* Mon Sep 16 2024 Filip Janus - 16.3-6 +- Fix typos in provides + * Mon Aug 05 2024 Filip Janus - 16.3-5 - Add Obsoletes of versioned alternative stream from F39 - It makes the upgrade path clear From 0b4a6b39f4afb7e080d493c33e228ba55a2d6407 Mon Sep 17 00:00:00 2001 From: Yaakov Selkowitz Date: Wed, 4 Sep 2024 07:59:49 -0400 Subject: [PATCH 19/44] Fix flatpak build tzdata is part of the runtime and therefore remains in /usr even for flatpaks. The initscripts (which are unused in flatpaks) are installed into /usr regardless, just like the systemd units. --- postgresql16.spec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/postgresql16.spec b/postgresql16.spec index 2cd107f..fcff0b9 100644 --- a/postgresql16.spec +++ b/postgresql16.spec @@ -615,7 +615,7 @@ common_configure_options=' %if %selinux --with-selinux %endif - --with-system-tzdata=%_datadir/zoneinfo + --with-system-tzdata=/usr/share/zoneinfo --datadir=%_datadir/pgsql --with-systemd --with-lz4 @@ -1204,8 +1204,8 @@ make -C postgresql-setup-%{setup_version} check %{_libdir}/pgsql/pg_prewarm.so %{_libdir}/pgsql/pgoutput.so %{_libdir}/pgsql/plpgsql.so -%dir %{_libexecdir}/initscripts/legacy-actions/postgresql -%{_libexecdir}/initscripts/legacy-actions/postgresql/* +%dir %{_usr}/libexec/initscripts/legacy-actions/postgresql +%{_usr}/libexec/initscripts/legacy-actions/postgresql/* %{_libexecdir}/postgresql-check-db-dir %dir %{_sysconfdir}/postgresql-setup %dir %{_sysconfdir}/postgresql-setup/upgrade From e0a3c723a9c7eac258290e3464ed8a727dffb3d7 Mon Sep 17 00:00:00 2001 From: Yaakov Selkowitz Date: Thu, 26 Sep 2024 10:55:11 -0400 Subject: [PATCH 20/44] Fix tclconfig location for flatpaks As of F41, tcl is part of the flatpak runtime, and is therefore in /usr even when building in /app. --- postgresql16.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/postgresql16.spec b/postgresql16.spec index fcff0b9..c89ef7d 100644 --- a/postgresql16.spec +++ b/postgresql16.spec @@ -585,7 +585,7 @@ common_configure_options=' %endif %if %pltcl --with-tcl - --with-tclconfig=%_libdir + --with-tclconfig=/usr/%_lib %endif %if %ldap --with-ldap @@ -743,7 +743,7 @@ upgrade_configure () %if %plpython3 --with-python \ %endif - --with-tclconfig=%_libdir \ + --with-tclconfig=/usr/%_lib \ --with-system-tzdata=/usr/share/zoneinfo \ "$@" } From 84c13e436e1d1d88aa85e1519581bb338532b713 Mon Sep 17 00:00:00 2001 From: Pete Walter Date: Sun, 8 Dec 2024 22:39:37 +0000 Subject: [PATCH 21/44] Rebuild for ICU 76 --- postgresql16.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/postgresql16.spec b/postgresql16.spec index c89ef7d..bf96573 100644 --- a/postgresql16.spec +++ b/postgresql16.spec @@ -48,7 +48,7 @@ Summary: PostgreSQL client programs Name: %{majorname}%{majorversion} Version: %{majorversion}.3 -Release: 6%{?dist} +Release: 7%{?dist} # The PostgreSQL license is very similar to other MIT licenses, but the OSI # recognizes it as an independent license, so we do as well. @@ -1331,6 +1331,9 @@ make -C postgresql-setup-%{setup_version} check %changelog +* Sun Dec 08 2024 Pete Walter - 16.3-7 +- Rebuild for ICU 76 + * Mon Sep 16 2024 Filip Janus - 16.3-6 - Fix typos in provides From 705af7d6d46fbfa69b6fddeae47d6c0000eb7c81 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 18 Jan 2025 10:38:46 +0000 Subject: [PATCH 22/44] Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild --- postgresql16.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/postgresql16.spec b/postgresql16.spec index bf96573..75ae4f9 100644 --- a/postgresql16.spec +++ b/postgresql16.spec @@ -48,7 +48,7 @@ Summary: PostgreSQL client programs Name: %{majorname}%{majorversion} Version: %{majorversion}.3 -Release: 7%{?dist} +Release: 8%{?dist} # The PostgreSQL license is very similar to other MIT licenses, but the OSI # recognizes it as an independent license, so we do as well. @@ -1331,6 +1331,9 @@ make -C postgresql-setup-%{setup_version} check %changelog +* Sat Jan 18 2025 Fedora Release Engineering - 16.3-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + * Sun Dec 08 2024 Pete Walter - 16.3-7 - Rebuild for ICU 76 From 1bc1753d812251a838d841d85b512a3a37027329 Mon Sep 17 00:00:00 2001 From: Filip Janus Date: Wed, 29 Jan 2025 12:31:27 +0000 Subject: [PATCH 23/44] update to 16.6 stick with std=c18 --- .gitignore | 2 ++ postgresql16.spec | 10 +++++++--- sources | 6 +++--- 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/.gitignore b/.gitignore index 42d69d3..6f26282 100755 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,5 @@ /postgresql-16.3.tar.bz2 /postgresql-15.7.tar.bz2.sha256 /postgresql-16.3.tar.bz2.sha256 +/postgresql-16.6.tar.bz2 +/postgresql-16.6.tar.bz2.sha256 diff --git a/postgresql16.spec b/postgresql16.spec index 75ae4f9..e018687 100644 --- a/postgresql16.spec +++ b/postgresql16.spec @@ -47,8 +47,8 @@ Summary: PostgreSQL client programs Name: %{majorname}%{majorversion} -Version: %{majorversion}.3 -Release: 8%{?dist} +Version: %{majorversion}.6 +Release: 1%{?dist} # The PostgreSQL license is very similar to other MIT licenses, but the OSI # recognizes it as an independent license, so we do as well. @@ -573,7 +573,7 @@ cd .. # Fiddling with CFLAGS. CFLAGS="${CFLAGS:-%optflags}" -CFLAGS="$CFLAGS -DOPENSSL_NO_ENGINE" +CFLAGS="$CFLAGS -DOPENSSL_NO_ENGINE -std=c18" # Strip out -ffast-math from CFLAGS.... CFLAGS=`echo $CFLAGS|xargs -n 1|grep -v ffast-math|xargs -n 100` export CFLAGS @@ -1331,6 +1331,10 @@ make -C postgresql-setup-%{setup_version} check %changelog +* Wed Jan 29 2025 Filip Janus - 16.6-1 +- Update to 16.6 +- stick with std=C18 + * Sat Jan 18 2025 Fedora Release Engineering - 16.3-8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild diff --git a/sources b/sources index 3696058..52b6cbc 100644 --- a/sources +++ b/sources @@ -1,5 +1,5 @@ +SHA512 (postgresql-16.6.tar.bz2) = ffd6d39fb7aed87241237d68af4934fba1b4ac1be4d3c2833e308e50c21a693796fe54b73e0905365d7557009c40049a23b966aa86765b969797434a0d4bd5f8 +SHA512 (postgresql-16.6.tar.bz2.sha256) = 2b43dbf07487208f113ebc56958c4e16eb596d39104dc26ffdfded84c196b9fbc12cb52b03775727777fabc297ca26a4c1048b281a3a7b5c20a7bdedc533295f SHA512 (postgresql-15.7.tar.bz2) = 8a03e2d7a267f0d11c27d90a2fb605725accb41cfebba2b56c735d4af45bb5f977d4ba051a02ac8d31f93253372df3d3b5efdd159e258d6fcc506b73e3ad6e27 -SHA512 (postgresql-16.3.tar.bz2) = dc1c8d4fbc8e53e9be91dcf1b644b3969bd634f11bf5a1c4fe16619fd386f3349a5509788d43e6a57d099ad75233026d4dd4e0bb180ffc747fd3c1a575c51a5f -SHA512 (postgresql-setup-8.9.tar.gz) = 118e9ebf858722a38b0e90324bc1b49fc7058cda601ca0a7e78c94e7b95e89d6dbbc46f377626364b068614ced3cde3cb4733973ad2d71bf17892ad773657ef7 SHA512 (postgresql-15.7.tar.bz2.sha256) = bff16a90703353ad9577d827e3f0616ed8f41ee6ebc86d36ca62c199a2339de482e7f2246a6a3ea843136b9b7e654e4d291e31bfc243ae5a32743c22440dc8f5 -SHA512 (postgresql-16.3.tar.bz2.sha256) = eeebced14bc6c42df864c00397caaafa91b3ddc1c3900943989f04d396674907f63051b93aeb6b1b2408ffeb1b2fc44521b123b42b986b45c19bdcf706523c84 +SHA512 (postgresql-setup-8.9.tar.gz) = 118e9ebf858722a38b0e90324bc1b49fc7058cda601ca0a7e78c94e7b95e89d6dbbc46f377626364b068614ced3cde3cb4733973ad2d71bf17892ad773657ef7 From 6e4e3dd713e37a8adb6cb283e71f120458b3cf7e Mon Sep 17 00:00:00 2001 From: Filip Janus Date: Mon, 24 Feb 2025 10:26:12 +0000 Subject: [PATCH 24/44] Packit onboarding add helper script --- packit-update-sources.sh | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 packit-update-sources.sh diff --git a/packit-update-sources.sh b/packit-update-sources.sh new file mode 100644 index 0000000..cbebc59 --- /dev/null +++ b/packit-update-sources.sh @@ -0,0 +1,6 @@ + git clone --depth 1 --branch master https://github.com/postgres/postgres.git + cd postgres && git fetch --tags + NEW_MINOR=$(cd postgres && git tag -l "REL_15_*" | sed -E "s/REL_15_([0-9]+)/\1/" | sort -n | tail -n 1) + pushd $PACKIT_DOWNSTREAM_REPO + sed -i "s/\(%global prevversion %{prevmajorversion}\)\.[0-9]\+/\1.$NEW_MINOR/" $PACKIT_DOWNSTREAM_PACKAGE_NAME' + popd From 90650b63711fa71e2d8a5740c368b8b8a740ad40 Mon Sep 17 00:00:00 2001 From: Filip Janus Date: Mon, 24 Feb 2025 10:58:36 +0000 Subject: [PATCH 25/44] add x flag for packit script --- packit-update-sources.sh | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 packit-update-sources.sh diff --git a/packit-update-sources.sh b/packit-update-sources.sh old mode 100644 new mode 100755 From de696001ac3d72bea433fa10858541f5bc914e27 Mon Sep 17 00:00:00 2001 From: Filip Janus Date: Mon, 24 Feb 2025 21:33:43 +0000 Subject: [PATCH 26/44] Fix helper script --- packit-update-sources.sh | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/packit-update-sources.sh b/packit-update-sources.sh index cbebc59..5875193 100755 --- a/packit-update-sources.sh +++ b/packit-update-sources.sh @@ -1,6 +1,8 @@ git clone --depth 1 --branch master https://github.com/postgres/postgres.git - cd postgres && git fetch --tags - NEW_MINOR=$(cd postgres && git tag -l "REL_15_*" | sed -E "s/REL_15_([0-9]+)/\1/" | sort -n | tail -n 1) + pushd postgres + git fetch --tags + NEW_MINOR=$(git tag -l "REL_15_*" | sed -E "s/REL_15_([0-9]+)/\1/" | sort -n | tail -n 1) + popd pushd $PACKIT_DOWNSTREAM_REPO sed -i "s/\(%global prevversion %{prevmajorversion}\)\.[0-9]\+/\1.$NEW_MINOR/" $PACKIT_DOWNSTREAM_PACKAGE_NAME' popd From 28b8023ffdb618549a0b183c2a9a3064dd09df0b Mon Sep 17 00:00:00 2001 From: Filip Janus Date: Mon, 24 Feb 2025 21:58:57 +0000 Subject: [PATCH 27/44] fix typo in packit helper script --- packit-update-sources.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packit-update-sources.sh b/packit-update-sources.sh index 5875193..ba137b6 100755 --- a/packit-update-sources.sh +++ b/packit-update-sources.sh @@ -4,5 +4,5 @@ NEW_MINOR=$(git tag -l "REL_15_*" | sed -E "s/REL_15_([0-9]+)/\1/" | sort -n | tail -n 1) popd pushd $PACKIT_DOWNSTREAM_REPO - sed -i "s/\(%global prevversion %{prevmajorversion}\)\.[0-9]\+/\1.$NEW_MINOR/" $PACKIT_DOWNSTREAM_PACKAGE_NAME' + sed -i "s/\(%global prevversion %{prevmajorversion}\)\.[0-9]\+/\1.$NEW_MINOR/" $PACKIT_DOWNSTREAM_PACKAGE_NAME popd From 8cd443c5495bd9c8b528c1690ada2d806be93cb5 Mon Sep 17 00:00:00 2001 From: Filip Janus Date: Tue, 25 Feb 2025 22:09:00 +0000 Subject: [PATCH 28/44] Add missing suffix in packit helper script --- packit-update-sources.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packit-update-sources.sh b/packit-update-sources.sh index ba137b6..370ade6 100755 --- a/packit-update-sources.sh +++ b/packit-update-sources.sh @@ -4,5 +4,5 @@ NEW_MINOR=$(git tag -l "REL_15_*" | sed -E "s/REL_15_([0-9]+)/\1/" | sort -n | tail -n 1) popd pushd $PACKIT_DOWNSTREAM_REPO - sed -i "s/\(%global prevversion %{prevmajorversion}\)\.[0-9]\+/\1.$NEW_MINOR/" $PACKIT_DOWNSTREAM_PACKAGE_NAME + sed -i "s/\(%global prevversion %{prevmajorversion}\)\.[0-9]\+/\1.$NEW_MINOR/" $PACKIT_DOWNSTREAM_PACKAGE_NAME.spec popd From 84ff0438ceb9e7172721a36ef637373e53826344 Mon Sep 17 00:00:00 2001 From: Packit Date: Wed, 26 Feb 2025 06:31:53 +0000 Subject: [PATCH 29/44] Update to 16.8 upstream release - Resolves: rhbz#2282749 Commit authored by Packit automation (https://packit.dev/) --- .gitignore | 4 ++++ README.packit | 3 +++ postgresql16.spec | 8 ++++++-- sources | 8 ++++---- 4 files changed, 17 insertions(+), 6 deletions(-) create mode 100644 README.packit diff --git a/.gitignore b/.gitignore index 6f26282..e9134b1 100755 --- a/.gitignore +++ b/.gitignore @@ -9,3 +9,7 @@ /postgresql-16.3.tar.bz2.sha256 /postgresql-16.6.tar.bz2 /postgresql-16.6.tar.bz2.sha256 +/postgresql-16.8.tar.bz2 +/postgresql-15.12.tar.bz2 +/postgresql-16.8.tar.bz2.sha256 +/postgresql-15.12.tar.bz2.sha256 diff --git a/README.packit b/README.packit new file mode 100644 index 0000000..2cdc258 --- /dev/null +++ b/README.packit @@ -0,0 +1,3 @@ +This repository is maintained by packit. +https://packit.dev/ +The file was generated using packit 1.1.1.post1.dev1+g7c5e02df. diff --git a/postgresql16.spec b/postgresql16.spec index e018687..837f524 100644 --- a/postgresql16.spec +++ b/postgresql16.spec @@ -47,7 +47,7 @@ Summary: PostgreSQL client programs Name: %{majorname}%{majorversion} -Version: %{majorversion}.6 +Version: %{majorversion}.8 Release: 1%{?dist} # The PostgreSQL license is very similar to other MIT licenses, but the OSI @@ -60,7 +60,7 @@ Url: http://www.postgresql.org/ # that this be kept up with the latest minor release of the previous series; # but update when bugs affecting pg_dump output are fixed. %global prevmajorversion 15 -%global prevversion %{prevmajorversion}.7 +%global prevversion %{prevmajorversion}.12 %global prev_prefix %{_libdir}/pgsql/postgresql-%{prevmajorversion} %global precise_version %{?epoch:%epoch:}%version-%release @@ -1331,6 +1331,10 @@ make -C postgresql-setup-%{setup_version} check %changelog +* Wed Feb 26 2025 Packit - 16.8-1 +- Update to version 16.8 +- Resolves: rhbz#2282749 + * Wed Jan 29 2025 Filip Janus - 16.6-1 - Update to 16.6 - stick with std=C18 diff --git a/sources b/sources index 52b6cbc..dd2fdbd 100644 --- a/sources +++ b/sources @@ -1,5 +1,5 @@ -SHA512 (postgresql-16.6.tar.bz2) = ffd6d39fb7aed87241237d68af4934fba1b4ac1be4d3c2833e308e50c21a693796fe54b73e0905365d7557009c40049a23b966aa86765b969797434a0d4bd5f8 -SHA512 (postgresql-16.6.tar.bz2.sha256) = 2b43dbf07487208f113ebc56958c4e16eb596d39104dc26ffdfded84c196b9fbc12cb52b03775727777fabc297ca26a4c1048b281a3a7b5c20a7bdedc533295f -SHA512 (postgresql-15.7.tar.bz2) = 8a03e2d7a267f0d11c27d90a2fb605725accb41cfebba2b56c735d4af45bb5f977d4ba051a02ac8d31f93253372df3d3b5efdd159e258d6fcc506b73e3ad6e27 -SHA512 (postgresql-15.7.tar.bz2.sha256) = bff16a90703353ad9577d827e3f0616ed8f41ee6ebc86d36ca62c199a2339de482e7f2246a6a3ea843136b9b7e654e4d291e31bfc243ae5a32743c22440dc8f5 +SHA512 (postgresql-16.8.tar.bz2) = f44fdfe01fbf82f3ffe4c9fc860bd27e06dddfe43b6bd6d1c6e267d64086eb5517e23cc1b2b8895cb73e63fce76779993ea9785a97e6e348ed91b4c08bb0492d +SHA512 (postgresql-15.12.tar.bz2) = 6ccb44cb7ff2133ccb03dfc6b49e26714d9aecb91f4b9d019a8f1e7d0d71ed0bf8101fbbda0185091e4688a557600f020a12306c389e819d731184c17e182717 SHA512 (postgresql-setup-8.9.tar.gz) = 118e9ebf858722a38b0e90324bc1b49fc7058cda601ca0a7e78c94e7b95e89d6dbbc46f377626364b068614ced3cde3cb4733973ad2d71bf17892ad773657ef7 +SHA512 (postgresql-16.8.tar.bz2.sha256) = 878f5b5d71a10de9416bdd74bef034efade87cc9d6fad6ce1491842ab6415f897c715a2817552f627744ab23cf2a8287010d5e2e2f1c9206e563a1d0e26d39cc +SHA512 (postgresql-15.12.tar.bz2.sha256) = b0965f1a4a5baf304eb7cfc279a8cdbe58e6036635757cb5674699d9f46072b05bb41618e3afba76ec384670f4806fc12879dd8bb050cbff54468a0c91b634e7 From 4bee6b768780d4b10f7a783907985eb50eacf919 Mon Sep 17 00:00:00 2001 From: Filip Janus Date: Mon, 24 Feb 2025 10:42:57 +0000 Subject: [PATCH 30/44] add packit support for all versions of supported fedora packit-update-sources.sh script is related to this change --- packit.yaml | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 packit.yaml diff --git a/packit.yaml b/packit.yaml new file mode 100644 index 0000000..96a8367 --- /dev/null +++ b/packit.yaml @@ -0,0 +1,19 @@ +# See the documentation for more information: +# https://packit.dev/docs/configuration/ +actions: + pre-sync: + - bash -c "$PACKIT_DOWNSTREAM_REPO/packit-update-sources.sh" + +jobs: + - job: pull_from_upstream + trigger: release + dist_git_branches: + - fedora-all + - job: koji_build + trigger: commit + dist_git_branches: + - fedora-all + - job: bodhi_update + trigger: commit + dist_git_branches: + fedora-all From 78d431c36a92ec857fea08c8fa5381996c6b719b Mon Sep 17 00:00:00 2001 From: Packit Date: Wed, 26 Feb 2025 06:48:55 +0000 Subject: [PATCH 31/44] Update to 16.8 upstream release - Resolves: rhbz#2282749 Commit authored by Packit automation (https://packit.dev/) --- postgresql16.spec | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/postgresql16.spec b/postgresql16.spec index 837f524..7803868 100644 --- a/postgresql16.spec +++ b/postgresql16.spec @@ -1335,6 +1335,10 @@ make -C postgresql-setup-%{setup_version} check - Update to version 16.8 - Resolves: rhbz#2282749 +* Wed Feb 26 2025 Packit - 16.8-1 +- Update to version 16.8 +- Resolves: rhbz#2282749 + * Wed Jan 29 2025 Filip Janus - 16.6-1 - Update to 16.6 - stick with std=C18 From 792d3562895c039b47707ee526427ebe6ca41a55 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Tue, 11 Feb 2025 15:53:31 +0100 Subject: [PATCH 32/44] Add sysusers.d config file to allow rpm to create users/groups automatically See https://fedoraproject.org/wiki/Changes/RPMSuportForSystemdSysusers. --- postgresql16.spec | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/postgresql16.spec b/postgresql16.spec index 7803868..cd36d00 100644 --- a/postgresql16.spec +++ b/postgresql16.spec @@ -48,7 +48,7 @@ Summary: PostgreSQL client programs Name: %{majorname}%{majorversion} Version: %{majorversion}.8 -Release: 1%{?dist} +Release: 2%{?dist} # The PostgreSQL license is very similar to other MIT licenses, but the OSI # recognizes it as an independent license, so we do as well. @@ -264,7 +264,6 @@ will interact with a PostgreSQL server. %package -n %{pkgname}-server Summary: The programs needed to create and run a PostgreSQL server Requires: %{pkgname}%{?_isa} = %precise_version -Requires(pre): /usr/sbin/useradd # We require this to be present for %%{_prefix}/lib/tmpfiles.d Requires: systemd # Make sure it's there when scriptlets run, too @@ -541,6 +540,11 @@ find . -type f -name Makefile -exec sed -i -e "s/SO_MAJOR_VERSION=\s\?\([0-9]\+\ # remove .gitignore files to ensure none get into the RPMs (bug #642210) find . -type f -name .gitignore | xargs rm +# Create a sysusers.d config file +cat >postgresql16.sysusers.conf </dev/null 2>&1 || : -/usr/sbin/useradd -M -N -g postgres -o -r -d /var/lib/pgsql -s /bin/bash \ - -c "PostgreSQL Server" -u 26 postgres >/dev/null 2>&1 || : +install -m0644 -D postgresql16.sysusers.conf %{buildroot}%{_sysusersdir}/postgresql16.conf + %post -n %{pkgname}-server %systemd_post %service_name @@ -1234,6 +1236,7 @@ make -C postgresql-setup-%{setup_version} check %if %pam %config(noreplace) /etc/pam.d/postgresql %endif +%{_sysusersdir}/postgresql16.conf %files -n %{pkgname}-server-devel -f devel.lst @@ -1331,6 +1334,9 @@ make -C postgresql-setup-%{setup_version} check %changelog +* Wed Feb 26 2025 Zbigniew Jędrzejewski-Szmek - 16.8-2 +- Add sysusers.d config file to allow rpm to create users/groups automatically + * Wed Feb 26 2025 Packit - 16.8-1 - Update to version 16.8 - Resolves: rhbz#2282749 From 72061a9ba24351eeafb2f8a59648b0ee3feaa0d1 Mon Sep 17 00:00:00 2001 From: Packit Date: Thu, 8 May 2025 14:33:41 +0000 Subject: [PATCH 33/44] Update to 16.9 upstream release - Resolves: rhbz#2365100 Commit authored by Packit automation (https://packit.dev/) --- README.packit | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.packit b/README.packit index 2cdc258..807ffc6 100644 --- a/README.packit +++ b/README.packit @@ -1,3 +1,3 @@ This repository is maintained by packit. https://packit.dev/ -The file was generated using packit 1.1.1.post1.dev1+g7c5e02df. +The file was generated using packit 1.6.0.post1.dev2+gd5a7662a. From 4e5009ca145ac444dcc8921a8b79e5dcd9f2fa0a Mon Sep 17 00:00:00 2001 From: Packit Date: Wed, 21 May 2025 07:17:57 +0000 Subject: [PATCH 34/44] Update to 16.9 upstream release - Resolves: rhbz#2365100 Commit authored by Packit automation (https://packit.dev/) --- .gitignore | 4 ++++ README.packit | 2 +- postgresql16.spec | 10 +++++++--- sources | 8 ++++---- 4 files changed, 16 insertions(+), 8 deletions(-) diff --git a/.gitignore b/.gitignore index e9134b1..39ee307 100755 --- a/.gitignore +++ b/.gitignore @@ -13,3 +13,7 @@ /postgresql-15.12.tar.bz2 /postgresql-16.8.tar.bz2.sha256 /postgresql-15.12.tar.bz2.sha256 +/postgresql-16.9.tar.bz2 +/postgresql-15.13.tar.bz2 +/postgresql-16.9.tar.bz2.sha256 +/postgresql-15.13.tar.bz2.sha256 diff --git a/README.packit b/README.packit index 807ffc6..f327e3e 100644 --- a/README.packit +++ b/README.packit @@ -1,3 +1,3 @@ This repository is maintained by packit. https://packit.dev/ -The file was generated using packit 1.6.0.post1.dev2+gd5a7662a. +The file was generated using packit 1.8.0.post1.dev8+gd9516300. diff --git a/postgresql16.spec b/postgresql16.spec index cd36d00..6806c23 100644 --- a/postgresql16.spec +++ b/postgresql16.spec @@ -47,8 +47,8 @@ Summary: PostgreSQL client programs Name: %{majorname}%{majorversion} -Version: %{majorversion}.8 -Release: 2%{?dist} +Version: %{majorversion}.9 +Release: 1%{?dist} # The PostgreSQL license is very similar to other MIT licenses, but the OSI # recognizes it as an independent license, so we do as well. @@ -60,7 +60,7 @@ Url: http://www.postgresql.org/ # that this be kept up with the latest minor release of the previous series; # but update when bugs affecting pg_dump output are fixed. %global prevmajorversion 15 -%global prevversion %{prevmajorversion}.12 +%global prevversion %{prevmajorversion}.13 %global prev_prefix %{_libdir}/pgsql/postgresql-%{prevmajorversion} %global precise_version %{?epoch:%epoch:}%version-%release @@ -1334,6 +1334,10 @@ make -C postgresql-setup-%{setup_version} check %changelog +* Wed May 21 2025 Packit - 16.9-1 +- Update to version 16.9 +- Resolves: rhbz#2365100 + * Wed Feb 26 2025 Zbigniew Jędrzejewski-Szmek - 16.8-2 - Add sysusers.d config file to allow rpm to create users/groups automatically diff --git a/sources b/sources index dd2fdbd..b2104f4 100644 --- a/sources +++ b/sources @@ -1,5 +1,5 @@ -SHA512 (postgresql-16.8.tar.bz2) = f44fdfe01fbf82f3ffe4c9fc860bd27e06dddfe43b6bd6d1c6e267d64086eb5517e23cc1b2b8895cb73e63fce76779993ea9785a97e6e348ed91b4c08bb0492d -SHA512 (postgresql-15.12.tar.bz2) = 6ccb44cb7ff2133ccb03dfc6b49e26714d9aecb91f4b9d019a8f1e7d0d71ed0bf8101fbbda0185091e4688a557600f020a12306c389e819d731184c17e182717 +SHA512 (postgresql-16.9.tar.bz2) = 23a3d983c5be49c3daabbbde35db2920bd2e2ba8d9baba805e7908da1f43153ff438c76c253ea8ee8ac6f8a9313fbf0348a1e9b45ef530c5e156fee0daceb814 +SHA512 (postgresql-15.13.tar.bz2) = dd16bc331f6e33cd8ba7a6f19582d4e94d66e4cf4b89b8fe1872f16854401b9f7caf0900478b64a05047d22d2ca07aea5ba71fd5c96fa04bd45713235acdd686 SHA512 (postgresql-setup-8.9.tar.gz) = 118e9ebf858722a38b0e90324bc1b49fc7058cda601ca0a7e78c94e7b95e89d6dbbc46f377626364b068614ced3cde3cb4733973ad2d71bf17892ad773657ef7 -SHA512 (postgresql-16.8.tar.bz2.sha256) = 878f5b5d71a10de9416bdd74bef034efade87cc9d6fad6ce1491842ab6415f897c715a2817552f627744ab23cf2a8287010d5e2e2f1c9206e563a1d0e26d39cc -SHA512 (postgresql-15.12.tar.bz2.sha256) = b0965f1a4a5baf304eb7cfc279a8cdbe58e6036635757cb5674699d9f46072b05bb41618e3afba76ec384670f4806fc12879dd8bb050cbff54468a0c91b634e7 +SHA512 (postgresql-16.9.tar.bz2.sha256) = 94e162a061df0d97c9e2010662b25a30f178f9bf6b9f9a57627e52609cbea964a5e9b2a16606f0e6f51bcc254e3a61b2d7b5f1df509093d3d056f103e85227c2 +SHA512 (postgresql-15.13.tar.bz2.sha256) = 2e82c5cd43b1c56b21dd339490d2cd8f8c63119dfdb079d551f5021caf45bbd9f9d7d54e0e44c909d6e4c46e14120b74562b3a540312087007dcbdddb556900f From 290d36f9d84f8787578787b9a0cd2bbcdca6fb88 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Mon, 2 Jun 2025 19:59:38 +0200 Subject: [PATCH 35/44] Rebuilt for Python 3.14 --- postgresql16.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/postgresql16.spec b/postgresql16.spec index 6806c23..0633743 100644 --- a/postgresql16.spec +++ b/postgresql16.spec @@ -48,7 +48,7 @@ Summary: PostgreSQL client programs Name: %{majorname}%{majorversion} Version: %{majorversion}.9 -Release: 1%{?dist} +Release: 2%{?dist} # The PostgreSQL license is very similar to other MIT licenses, but the OSI # recognizes it as an independent license, so we do as well. @@ -1334,6 +1334,9 @@ make -C postgresql-setup-%{setup_version} check %changelog +* Mon Jun 02 2025 Python Maint - 16.9-2 +- Rebuilt for Python 3.14 + * Wed May 21 2025 Packit - 16.9-1 - Update to version 16.9 - Resolves: rhbz#2365100 From 042df027b07c789408ebdc4c1885ce834a639c6d Mon Sep 17 00:00:00 2001 From: Filip Janus Date: Tue, 24 Jun 2025 21:32:47 +0000 Subject: [PATCH 36/44] Add tmpfiles.d configuration --- postgresql16.spec | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/postgresql16.spec b/postgresql16.spec index 0633743..0b95ea5 100644 --- a/postgresql16.spec +++ b/postgresql16.spec @@ -48,7 +48,7 @@ Summary: PostgreSQL client programs Name: %{majorname}%{majorversion} Version: %{majorversion}.9 -Release: 2%{?dist} +Release: 3%{?dist} # The PostgreSQL license is very similar to other MIT licenses, but the OSI # recognizes it as an independent license, so we do as well. @@ -545,6 +545,9 @@ cat >postgresql16.sysusers.conf < postgresql16.tmpfiles.conf < - 16.9-3 +- Add tmpfiles.d configuration file definition + * Mon Jun 02 2025 Python Maint - 16.9-2 - Rebuilt for Python 3.14 From 51276f54f1463618fe6853a2800113a6c20f70c3 Mon Sep 17 00:00:00 2001 From: Filip Janus Date: Wed, 25 Jun 2025 06:13:34 +0000 Subject: [PATCH 37/44] Enable zstd support --- postgresql16.spec | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/postgresql16.spec b/postgresql16.spec index 0b95ea5..daafb50 100644 --- a/postgresql16.spec +++ b/postgresql16.spec @@ -48,7 +48,7 @@ Summary: PostgreSQL client programs Name: %{majorname}%{majorversion} Version: %{majorversion}.9 -Release: 3%{?dist} +Release: 4%{?dist} # The PostgreSQL license is very similar to other MIT licenses, but the OSI # recognizes it as an independent license, so we do as well. @@ -107,6 +107,7 @@ Summary: PostgreSQL client programs BuildRequires: make BuildRequires: lz4-devel +BuildRequires: libzstd-devel BuildRequires: gcc BuildRequires: perl(ExtUtils::MakeMaker) glibc-devel bison flex gawk BuildRequires: perl(ExtUtils::Embed), perl-devel @@ -626,6 +627,7 @@ common_configure_options=' --datadir=%_datadir/pgsql --with-systemd --with-lz4 + --with-zstd %if %icu --with-icu %endif @@ -713,6 +715,7 @@ upgrade_configure () --prefix=%prev_prefix \ --disable-rpath \ --with-lz4 \ + --with-zstd \ %if %icu --with-icu \ %endif @@ -1339,6 +1342,9 @@ make -C postgresql-setup-%{setup_version} check %changelog +* Wed Jun 25 2025 Filip Janus - 16.9-4 +- Enable zstd + * Mon Jun 16 2025 Filip Janus - 16.9-3 - Add tmpfiles.d configuration file definition From f33689347e225ddc2c21aebf0cca2842d2467082 Mon Sep 17 00:00:00 2001 From: Jitka Plesnikova Date: Mon, 7 Jul 2025 16:43:50 +0200 Subject: [PATCH 38/44] Perl 5.42 rebuild --- postgresql16.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/postgresql16.spec b/postgresql16.spec index daafb50..cf9c94b 100644 --- a/postgresql16.spec +++ b/postgresql16.spec @@ -48,7 +48,7 @@ Summary: PostgreSQL client programs Name: %{majorname}%{majorversion} Version: %{majorversion}.9 -Release: 4%{?dist} +Release: 5%{?dist} # The PostgreSQL license is very similar to other MIT licenses, but the OSI # recognizes it as an independent license, so we do as well. @@ -1342,6 +1342,9 @@ make -C postgresql-setup-%{setup_version} check %changelog +* Mon Jul 07 2025 Jitka Plesnikova - 16.9-5 +- Perl 5.42 rebuild + * Wed Jun 25 2025 Filip Janus - 16.9-4 - Enable zstd From 27a75ba780bf328afa11c19426eeb68fa5bab5f0 Mon Sep 17 00:00:00 2001 From: Nikola Davidova Date: Tue, 22 Jul 2025 10:55:14 +0200 Subject: [PATCH 39/44] Make postgresql16 non default --- postgresql16.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/postgresql16.spec b/postgresql16.spec index cf9c94b..9af5f11 100644 --- a/postgresql16.spec +++ b/postgresql16.spec @@ -29,7 +29,7 @@ %{!?sdt:%global sdt 1} %{!?selinux:%global selinux 1} %{!?runselftest:%global runselftest 1} -%{!?postgresql_default:%global postgresql_default 1} +%{!?postgresql_default:%global postgresql_default 0} %global majorname postgresql %global majorversion 16 @@ -48,7 +48,7 @@ Summary: PostgreSQL client programs Name: %{majorname}%{majorversion} Version: %{majorversion}.9 -Release: 5%{?dist} +Release: 6%{?dist} # The PostgreSQL license is very similar to other MIT licenses, but the OSI # recognizes it as an independent license, so we do as well. @@ -1342,6 +1342,9 @@ make -C postgresql-setup-%{setup_version} check %changelog +* Tue Jul 22 2025 Nikola Davidova - 16.9-6 +- Make Postgresql16 non default + * Mon Jul 07 2025 Jitka Plesnikova - 16.9-5 - Perl 5.42 rebuild From 349f48f183977d995dc0cacecd4cf94027967da1 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 25 Jul 2025 06:04:17 +0000 Subject: [PATCH 40/44] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild --- postgresql16.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/postgresql16.spec b/postgresql16.spec index 9af5f11..817a6ea 100644 --- a/postgresql16.spec +++ b/postgresql16.spec @@ -48,7 +48,7 @@ Summary: PostgreSQL client programs Name: %{majorname}%{majorversion} Version: %{majorversion}.9 -Release: 6%{?dist} +Release: 7%{?dist} # The PostgreSQL license is very similar to other MIT licenses, but the OSI # recognizes it as an independent license, so we do as well. @@ -1342,6 +1342,9 @@ make -C postgresql-setup-%{setup_version} check %changelog +* Fri Jul 25 2025 Fedora Release Engineering - 16.9-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + * Tue Jul 22 2025 Nikola Davidova - 16.9-6 - Make Postgresql16 non default From 3004e003d4bc9e947f8026aefea2d201d0705d1d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Franti=C5=A1ek=20Zatloukal?= Date: Wed, 6 Aug 2025 09:57:02 +0200 Subject: [PATCH 41/44] Rebuilt for icu 77.1 --- postgresql16.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/postgresql16.spec b/postgresql16.spec index 817a6ea..55d633a 100644 --- a/postgresql16.spec +++ b/postgresql16.spec @@ -48,7 +48,7 @@ Summary: PostgreSQL client programs Name: %{majorname}%{majorversion} Version: %{majorversion}.9 -Release: 7%{?dist} +Release: 8%{?dist} # The PostgreSQL license is very similar to other MIT licenses, but the OSI # recognizes it as an independent license, so we do as well. @@ -1342,6 +1342,9 @@ make -C postgresql-setup-%{setup_version} check %changelog +* Wed Aug 06 2025 František Zatloukal - 16.9-8 +- Rebuilt for icu 77.1 + * Fri Jul 25 2025 Fedora Release Engineering - 16.9-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild From 3eef9b7f6921c6f96ff4da80339178a670e47f5d Mon Sep 17 00:00:00 2001 From: Packit Date: Thu, 14 Aug 2025 16:06:53 +0000 Subject: [PATCH 42/44] Update to 16.10 upstream release - Resolves: rhbz#2388580 Commit authored by Packit automation (https://packit.dev/) --- .gitignore | 4 ++++ README.packit | 2 +- postgresql16.spec | 10 +++++++--- sources | 8 ++++---- 4 files changed, 16 insertions(+), 8 deletions(-) diff --git a/.gitignore b/.gitignore index 39ee307..2d4fa49 100755 --- a/.gitignore +++ b/.gitignore @@ -17,3 +17,7 @@ /postgresql-15.13.tar.bz2 /postgresql-16.9.tar.bz2.sha256 /postgresql-15.13.tar.bz2.sha256 +/postgresql-16.10.tar.bz2 +/postgresql-15.14.tar.bz2 +/postgresql-16.10.tar.bz2.sha256 +/postgresql-15.14.tar.bz2.sha256 diff --git a/README.packit b/README.packit index f327e3e..3ad54d6 100644 --- a/README.packit +++ b/README.packit @@ -1,3 +1,3 @@ This repository is maintained by packit. https://packit.dev/ -The file was generated using packit 1.8.0.post1.dev8+gd9516300. +The file was generated using packit 1.11.0. diff --git a/postgresql16.spec b/postgresql16.spec index 55d633a..ad48a0a 100644 --- a/postgresql16.spec +++ b/postgresql16.spec @@ -47,8 +47,8 @@ Summary: PostgreSQL client programs Name: %{majorname}%{majorversion} -Version: %{majorversion}.9 -Release: 8%{?dist} +Version: %{majorversion}.10 +Release: 1%{?dist} # The PostgreSQL license is very similar to other MIT licenses, but the OSI # recognizes it as an independent license, so we do as well. @@ -60,7 +60,7 @@ Url: http://www.postgresql.org/ # that this be kept up with the latest minor release of the previous series; # but update when bugs affecting pg_dump output are fixed. %global prevmajorversion 15 -%global prevversion %{prevmajorversion}.13 +%global prevversion %{prevmajorversion}.14 %global prev_prefix %{_libdir}/pgsql/postgresql-%{prevmajorversion} %global precise_version %{?epoch:%epoch:}%version-%release @@ -1342,6 +1342,10 @@ make -C postgresql-setup-%{setup_version} check %changelog +* Thu Aug 14 2025 Packit - 16.10-1 +- Update to version 16.10 +- Resolves: rhbz#2388580 + * Wed Aug 06 2025 František Zatloukal - 16.9-8 - Rebuilt for icu 77.1 diff --git a/sources b/sources index b2104f4..0114819 100644 --- a/sources +++ b/sources @@ -1,5 +1,5 @@ -SHA512 (postgresql-16.9.tar.bz2) = 23a3d983c5be49c3daabbbde35db2920bd2e2ba8d9baba805e7908da1f43153ff438c76c253ea8ee8ac6f8a9313fbf0348a1e9b45ef530c5e156fee0daceb814 -SHA512 (postgresql-15.13.tar.bz2) = dd16bc331f6e33cd8ba7a6f19582d4e94d66e4cf4b89b8fe1872f16854401b9f7caf0900478b64a05047d22d2ca07aea5ba71fd5c96fa04bd45713235acdd686 +SHA512 (postgresql-16.10.tar.bz2) = b6de80d522f863b0d9dd8c2bf4f71bea309bd07586859e309a9821e7f6fd5839557dc396351e7b61aebf492bf8c8a053a324f059a1dee621ac1a6d5e8eccea22 +SHA512 (postgresql-15.14.tar.bz2) = 6bef254af257eb79a6b4ec1fd09a996351848561a493e529b7e44b053b368753d56cd76de74b07fff6d637606773963e83e4c3bb321682774b12d24dfa1ca8f4 SHA512 (postgresql-setup-8.9.tar.gz) = 118e9ebf858722a38b0e90324bc1b49fc7058cda601ca0a7e78c94e7b95e89d6dbbc46f377626364b068614ced3cde3cb4733973ad2d71bf17892ad773657ef7 -SHA512 (postgresql-16.9.tar.bz2.sha256) = 94e162a061df0d97c9e2010662b25a30f178f9bf6b9f9a57627e52609cbea964a5e9b2a16606f0e6f51bcc254e3a61b2d7b5f1df509093d3d056f103e85227c2 -SHA512 (postgresql-15.13.tar.bz2.sha256) = 2e82c5cd43b1c56b21dd339490d2cd8f8c63119dfdb079d551f5021caf45bbd9f9d7d54e0e44c909d6e4c46e14120b74562b3a540312087007dcbdddb556900f +SHA512 (postgresql-16.10.tar.bz2.sha256) = 2489a4a2074c7be5c352153ab899681f0761db5dfce8fe315be19783d91613c033570a2f5f85145e5608550e1636231abbeb96aacaa8a94f463caf0c02af48a1 +SHA512 (postgresql-15.14.tar.bz2.sha256) = cfcde2aa89e08d4e630872d1db059dc4f3a062ccf6a30de41c7be7a86553a63c5c7e82b53c8cef551ab7e1536071b2d7529650e34f6a90375a27252b76723798 From 9f35c14618b6b002d7be274d9d48fc7af2ca9521 Mon Sep 17 00:00:00 2001 From: Filip Janus Date: Tue, 9 Sep 2025 19:50:33 +0000 Subject: [PATCH 43/44] Add OpenSSL support to upgrade_configure function - Add --with-openssl parameter to upgrade_configure function - This ensures upgrade server is compiled with OpenSSL support - Required for SSL/TLS connections during database upgrades - Bump release to 16.10-2 --- postgresql16.spec | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/postgresql16.spec b/postgresql16.spec index ad48a0a..2fb950a 100644 --- a/postgresql16.spec +++ b/postgresql16.spec @@ -48,7 +48,7 @@ Summary: PostgreSQL client programs Name: %{majorname}%{majorversion} Version: %{majorversion}.10 -Release: 1%{?dist} +Release: 2%{?dist} # The PostgreSQL license is very similar to other MIT licenses, but the OSI # recognizes it as an independent license, so we do as well. @@ -748,6 +748,9 @@ upgrade_configure () --enable-dtrace \ %endif %if %selinux +%if %ssl + --with-openssl \ +%endif --with-selinux \ %endif %if %plpython3 @@ -1342,6 +1345,11 @@ make -C postgresql-setup-%{setup_version} check %changelog +* Tue Sep 09 2025 Filip Janus - 16.10-2 +- Add OpenSSL support to upgrade_configure function +- This ensures upgrade server is compiled with OpenSSL support +- Required for SSL/TLS connections during database upgrades + * Thu Aug 14 2025 Packit - 16.10-1 - Update to version 16.10 - Resolves: rhbz#2388580 From 54bbb24079cff88ee90ceebf560bc6ac93d369d1 Mon Sep 17 00:00:00 2001 From: Packit Date: Thu, 13 Nov 2025 15:05:06 +0000 Subject: [PATCH 44/44] Update to 16.11 upstream release - Resolves: rhbz#2414832 Commit authored by Packit automation (https://packit.dev/) --- .gitignore | 4 ++++ README.packit | 2 +- postgresql16.spec | 10 +++++++--- sources | 8 ++++---- 4 files changed, 16 insertions(+), 8 deletions(-) diff --git a/.gitignore b/.gitignore index 2d4fa49..18a7948 100755 --- a/.gitignore +++ b/.gitignore @@ -21,3 +21,7 @@ /postgresql-15.14.tar.bz2 /postgresql-16.10.tar.bz2.sha256 /postgresql-15.14.tar.bz2.sha256 +/postgresql-16.11.tar.bz2 +/postgresql-15.15.tar.bz2 +/postgresql-16.11.tar.bz2.sha256 +/postgresql-15.15.tar.bz2.sha256 diff --git a/README.packit b/README.packit index 3ad54d6..a901bca 100644 --- a/README.packit +++ b/README.packit @@ -1,3 +1,3 @@ This repository is maintained by packit. https://packit.dev/ -The file was generated using packit 1.11.0. +The file was generated using packit 1.12.0.post1.dev18+gc39b0e7d4. diff --git a/postgresql16.spec b/postgresql16.spec index 2fb950a..2aaf0a1 100644 --- a/postgresql16.spec +++ b/postgresql16.spec @@ -47,8 +47,8 @@ Summary: PostgreSQL client programs Name: %{majorname}%{majorversion} -Version: %{majorversion}.10 -Release: 2%{?dist} +Version: %{majorversion}.11 +Release: 1%{?dist} # The PostgreSQL license is very similar to other MIT licenses, but the OSI # recognizes it as an independent license, so we do as well. @@ -60,7 +60,7 @@ Url: http://www.postgresql.org/ # that this be kept up with the latest minor release of the previous series; # but update when bugs affecting pg_dump output are fixed. %global prevmajorversion 15 -%global prevversion %{prevmajorversion}.14 +%global prevversion %{prevmajorversion}.15 %global prev_prefix %{_libdir}/pgsql/postgresql-%{prevmajorversion} %global precise_version %{?epoch:%epoch:}%version-%release @@ -1345,6 +1345,10 @@ make -C postgresql-setup-%{setup_version} check %changelog +* Thu Nov 13 2025 Packit - 16.11-1 +- Update to version 16.11 +- Resolves: rhbz#2414832 + * Tue Sep 09 2025 Filip Janus - 16.10-2 - Add OpenSSL support to upgrade_configure function - This ensures upgrade server is compiled with OpenSSL support diff --git a/sources b/sources index 0114819..4064aa7 100644 --- a/sources +++ b/sources @@ -1,5 +1,5 @@ -SHA512 (postgresql-16.10.tar.bz2) = b6de80d522f863b0d9dd8c2bf4f71bea309bd07586859e309a9821e7f6fd5839557dc396351e7b61aebf492bf8c8a053a324f059a1dee621ac1a6d5e8eccea22 -SHA512 (postgresql-15.14.tar.bz2) = 6bef254af257eb79a6b4ec1fd09a996351848561a493e529b7e44b053b368753d56cd76de74b07fff6d637606773963e83e4c3bb321682774b12d24dfa1ca8f4 +SHA512 (postgresql-16.11.tar.bz2) = f11f8f3e5855cfce27108a1bd2122c5a7a1ff37c6d9366d7a96a041aab67a4e4a31e54f0757b6b97c72d841acdcaa97d3eaa765213d4899b2cf7047c549012b8 +SHA512 (postgresql-15.15.tar.bz2) = efd5dcdb6e45bc13cd4b1b73f4de19fc3ae2bac96e85086cacd649bfbf50969429c40193e86717380759c6995204c18e14ac5352565d5ae85df61c0a127a1562 SHA512 (postgresql-setup-8.9.tar.gz) = 118e9ebf858722a38b0e90324bc1b49fc7058cda601ca0a7e78c94e7b95e89d6dbbc46f377626364b068614ced3cde3cb4733973ad2d71bf17892ad773657ef7 -SHA512 (postgresql-16.10.tar.bz2.sha256) = 2489a4a2074c7be5c352153ab899681f0761db5dfce8fe315be19783d91613c033570a2f5f85145e5608550e1636231abbeb96aacaa8a94f463caf0c02af48a1 -SHA512 (postgresql-15.14.tar.bz2.sha256) = cfcde2aa89e08d4e630872d1db059dc4f3a062ccf6a30de41c7be7a86553a63c5c7e82b53c8cef551ab7e1536071b2d7529650e34f6a90375a27252b76723798 +SHA512 (postgresql-16.11.tar.bz2.sha256) = 3c07dc85608f8cee5071bd7d404feff1c767afb468a8f41225b73d5df05334dca9a3465e16307a3b5b21c1a44684deab0c496fbd03b9d061e4a9559684876671 +SHA512 (postgresql-15.15.tar.bz2.sha256) = dcabc9fceaa557dac1d6d5b014d21ec6edfb7409103651820126351b5534c1605255f36bb18d654cd537f5128e705d2847f2bd52e38c6dd442a21c0722f39b76