From 66b27c621a50b397727bdec6a8ae568f7ac69b3c Mon Sep 17 00:00:00 2001 From: Lars Kanis Date: Fri, 2 Oct 2026 10:29:10 +0200 Subject: [PATCH] Update dependencies for binary gems to PostgreSQL-18.6 OpenSSL-3.6.5 krb5-1.22.2 Patches were merged upstream at: - https://github.com/postgres/postgres/commit/2167302b748fb8fa9112710014b50910b19b9f15 - https://github.com/openssl/openssl/commit/9da1a9c30e105571dc09ad7bcf756872a99027a7 --- ext/extconf.rb | 6 +-- ...01-Allow-static-linking-krb5-library.patch | 0 ...unknown-command-line-option-on-clang.patch | 0 .../openssl/3.5.2/0001-aarch64-mingw.patch | 21 -------- ...ffered-SSL-read-bytes-to-support-rec.patch | 52 ------------------- ...f-__builtin_setjmp-only-on-MINGW-on-.patch | 0 6 files changed, 3 insertions(+), 76 deletions(-) rename ports/patches/krb5/{1.22.1 => 1.22.2}/0001-Allow-static-linking-krb5-library.patch (100%) rename ports/patches/krb5/{1.22.1 => 1.22.2}/0002-unknown-command-line-option-on-clang.patch (100%) delete mode 100644 ports/patches/openssl/3.5.2/0001-aarch64-mingw.patch delete mode 100644 ports/patches/postgresql/18.1/0001-libpq-Process-buffered-SSL-read-bytes-to-support-rec.patch rename ports/patches/postgresql/{18.1 => 18.6}/0001-Use-workaround-of-__builtin_setjmp-only-on-MINGW-on-.patch (100%) diff --git a/ext/extconf.rb b/ext/extconf.rb index 7fa3ef51a..a2f26886a 100644 --- a/ext/extconf.rb +++ b/ext/extconf.rb @@ -27,13 +27,13 @@ gem 'mini_portile2', '~>2.1' require 'mini_portile2' - OPENSSL_VERSION = ENV['OPENSSL_VERSION'] || '3.6.0' + OPENSSL_VERSION = ENV['OPENSSL_VERSION'] || '3.6.5' OPENSSL_SOURCE_URI = "https://www.openssl.org/source/openssl-#{OPENSSL_VERSION}.tar.gz" - KRB5_VERSION = ENV['KRB5_VERSION'] || '1.22.1' + KRB5_VERSION = ENV['KRB5_VERSION'] || '1.22.2' KRB5_SOURCE_URI = "https://kerberos.org/dist/krb5/#{KRB5_VERSION[/^(\d+\.\d+)/]}/krb5-#{KRB5_VERSION}.tar.gz" - POSTGRESQL_VERSION = ENV['POSTGRESQL_VERSION'] || '18.1' + POSTGRESQL_VERSION = ENV['POSTGRESQL_VERSION'] || '18.6' POSTGRESQL_SOURCE_URI = "https://ftp.postgresql.org/pub/source/v#{POSTGRESQL_VERSION}/postgresql-#{POSTGRESQL_VERSION}.tar.bz2" class BuildRecipe < MiniPortile diff --git a/ports/patches/krb5/1.22.1/0001-Allow-static-linking-krb5-library.patch b/ports/patches/krb5/1.22.2/0001-Allow-static-linking-krb5-library.patch similarity index 100% rename from ports/patches/krb5/1.22.1/0001-Allow-static-linking-krb5-library.patch rename to ports/patches/krb5/1.22.2/0001-Allow-static-linking-krb5-library.patch diff --git a/ports/patches/krb5/1.22.1/0002-unknown-command-line-option-on-clang.patch b/ports/patches/krb5/1.22.2/0002-unknown-command-line-option-on-clang.patch similarity index 100% rename from ports/patches/krb5/1.22.1/0002-unknown-command-line-option-on-clang.patch rename to ports/patches/krb5/1.22.2/0002-unknown-command-line-option-on-clang.patch diff --git a/ports/patches/openssl/3.5.2/0001-aarch64-mingw.patch b/ports/patches/openssl/3.5.2/0001-aarch64-mingw.patch deleted file mode 100644 index 0cd894c86..000000000 --- a/ports/patches/openssl/3.5.2/0001-aarch64-mingw.patch +++ /dev/null @@ -1,21 +0,0 @@ ---- a/Configurations/10-main.conf -+++ b/Configurations/10-main.conf -@@ -1603,6 +1603,18 @@ - multilib => "64", - }, - -+ "mingwarm64" => { -+ inherit_from => [ "mingw-common" ], -+ cflags => "", -+ sys_id => "MINGWARM64", -+ bn_ops => add("SIXTY_FOUR_BIT"), -+ asm_arch => 'aarch64', -+ uplink_arch => 'armv8', -+ perlasm_scheme => "win64", -+ shared_rcflag => "", -+ multilib => "-arm64", -+ }, -+ - #### UEFI - "UEFI" => { - inherit_from => [ "BASE_unix" ], diff --git a/ports/patches/postgresql/18.1/0001-libpq-Process-buffered-SSL-read-bytes-to-support-rec.patch b/ports/patches/postgresql/18.1/0001-libpq-Process-buffered-SSL-read-bytes-to-support-rec.patch deleted file mode 100644 index 3d6818132..000000000 --- a/ports/patches/postgresql/18.1/0001-libpq-Process-buffered-SSL-read-bytes-to-support-rec.patch +++ /dev/null @@ -1,52 +0,0 @@ -From ab793829a4ce473f1cc2bbc0e2a6f6753553255d Mon Sep 17 00:00:00 2001 -From: Lars Kanis -Date: Sun, 8 Sep 2024 13:59:05 +0200 -Subject: [PATCH] libpq: Process buffered SSL read bytes to support records - >8kB on async API - -The async API of libpq doesn't support SSL record sizes >8kB so far. -This size isn't exceeded by vanilla PostgreSQL, but by other products using -the postgres wire protocol 3. -PQconsumeInput() reads all data readable from the socket, so that the read -condition is cleared. -But it doesn't process all the data that is pending on the SSL layer. -Also a subsequent call to PQisBusy() doesn't process it, so that the client -is triggered to wait for more readable data on the socket. -But this never arrives, so that the connection blocks infinitely. - -To fix this issue call pqReadData() repeatedly until there is no buffered -SSL data left to be read. - -The synchronous libpq API isn't affected, since it supports arbitrary SSL -record sizes already. ---- - src/interfaces/libpq/fe-exec.c | 13 +++++++++++++ - 1 file changed, 13 insertions(+) - -diff --git a/src/interfaces/libpq/fe-exec.c b/src/interfaces/libpq/fe-exec.c -index 0d224a852..637894ee1 100644 ---- a/src/interfaces/libpq/fe-exec.c -+++ b/src/interfaces/libpq/fe-exec.c -@@ -2006,6 +2006,19 @@ PQconsumeInput(PGconn *conn) - if (pqReadData(conn) < 0) - return 0; - -+ #ifdef USE_SSL -+ /* -+ * Ensure all buffered read bytes in the SSL library are processed, -+ * which might be not the case, if the SSL record size exceeds 8k. -+ * Otherwise parseInput can't process the data. -+ */ -+ while (conn->ssl_in_use && pgtls_read_pending(conn)) -+ { -+ if (pqReadData(conn) < 0) -+ return 0; -+ } -+ #endif -+ - /* Parsing of the data waits till later. */ - return 1; - } --- -2.43.0 - diff --git a/ports/patches/postgresql/18.1/0001-Use-workaround-of-__builtin_setjmp-only-on-MINGW-on-.patch b/ports/patches/postgresql/18.6/0001-Use-workaround-of-__builtin_setjmp-only-on-MINGW-on-.patch similarity index 100% rename from ports/patches/postgresql/18.1/0001-Use-workaround-of-__builtin_setjmp-only-on-MINGW-on-.patch rename to ports/patches/postgresql/18.6/0001-Use-workaround-of-__builtin_setjmp-only-on-MINGW-on-.patch