Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nu3j9-0003KZ-6h for pgsql-hackers@arkaria.postgresql.org; Thu, 26 May 2022 02:59:55 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1nu3j8-0003OS-1T for pgsql-hackers@arkaria.postgresql.org; Thu, 26 May 2022 02:59:54 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nu3j7-0003OJ-41 for pgsql-hackers@lists.postgresql.org; Thu, 26 May 2022 02:59:53 +0000 Received: from out4-smtp.messagingengine.com ([66.111.4.28]) by makus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nu3j2-0006Ek-UD for pgsql-hackers@lists.postgresql.org; Thu, 26 May 2022 02:59:52 +0000 Received: from compute2.internal (compute2.nyi.internal [10.202.2.46]) by mailout.nyi.internal (Postfix) with ESMTP id 086EA5C0032; Wed, 25 May 2022 22:59:47 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute2.internal (MEProxy); Wed, 25 May 2022 22:59:47 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=paquier.xyz; h= cc:cc:content-type:date:date:from:from:in-reply-to:message-id :mime-version:reply-to:sender:subject:subject:to:to; s=fm1; t= 1653533987; x=1653620387; bh=BJO/pwXiBMH6tlOzsAMWj1G+lJKP6+n9yi7 HsiFkWIc=; b=ouk6E4/eGLUlncNuCp+LZJWKmy6kNuU9Bt08TZri41Rr3DZ3Zko ncReCV7txtBHoOnrp87ZQIIQ+B/7XJ2nkv1aUzf8XHfTyAOQkUUn/nN+nQJPIrXC Izw0QSwFexxusdP2m+qgTSmImvcCTnYvC+cusRBmJJY3BbQMWmR7KqB5iKTChb5e WYCCc5J73k8rKDtWKlevMZqks3TQvUm1t+r6QhyjaZ+Ud8uuVAYOlCCWic/1MZpO HgAT3vakOsDgdLZaULPutygeNiL1jKhkQo08VvY+Eh8Khr5zpVbYuwPMh9wl9se3 hgtt7g2UbZaL+RLdRVy1K0ZkOxwzEmXSh+A== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:date:date:feedback-id :feedback-id:from:from:in-reply-to:message-id:mime-version :reply-to:sender:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=1653533987; x= 1653620387; bh=BJO/pwXiBMH6tlOzsAMWj1G+lJKP6+n9yi7HsiFkWIc=; b=r NTIlaiLEjetyN70Ej6YxrR5uYAxuTBPU2Zmx+XFrP2PHBVGp8+7rav5fGQJVkEmi qBYy898fu6Fh9gdJeMSg07d/fX8uyTfFwJ0h+sHO+imWKMhhhNKVS/MQhU7SHYSs Fytwr8BOZhjogBXu8OC/6Rd9r0ChiRsO8HzUyXgxx/RtgER3SuwiAcwaUrr2h/JU AImSDYzuEC89LkSobSPcpZYWwdRNFeIWL+XtPC5iKtOe4BP3E4eDhMZd6V92tY2z EF5uBHBAr5ZJIPVWrxtENaKoPaiWXz3jIb5YsKqJZELBhBBysmBVU/2chNK8YxQe 8k981Kpl+Lzfgdee88+kw== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvfedrjeeigdeihecutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenfg hrlhcuvffnffculdefhedmnecujfgurhepfffhvfevuffkgggtugesghdtreertddtvden ucfhrhhomhepofhitghhrggvlhcurfgrqhhuihgvrhcuoehmihgthhgrvghlsehprghquh hivghrrdighiiiqeenucggtffrrghtthgvrhhnpefgtefhudfhhfdtieehfefffeeludel ieekkedvgeffheegteejuddtfeefueduteenucffohhmrghinhepphhoshhtghhrvghsqh hlrdhorhhgnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhho mhepmhhitghhrggvlhesphgrqhhuihgvrhdrgiihii X-ME-Proxy: Feedback-ID: i0fe9450f:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed, 25 May 2022 22:59:45 -0400 (EDT) Date: Thu, 26 May 2022 11:59:40 +0900 From: Michael Paquier To: Postgres hackers Cc: Juan =?iso-8859-1?Q?Jos=E9_Santamar=EDa?= Flecha Subject: Bump MIN_WINNT to 0x0600 (Vista) as minimal runtime in 16~ Message-ID: MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="W6S8nCAL2yDDIoE+" Content-Disposition: inline List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --W6S8nCAL2yDDIoE+ Content-Type: multipart/mixed; boundary="bbmc/nkjDrZ0l1z2" Content-Disposition: inline --bbmc/nkjDrZ0l1z2 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Hi all, On the thread about the removal of VS 2013, Jose (in CC) has mentioned that bumping MIN_WINNT independently would make sense, as the simplication of locales would expose under MinGW some code for GetLocaleInfoEx(): https://www.postgresql.org/message-id/CAC+AXB3himFH+-pGRO1cYju6zF2hLH6VmwPbf5RAytF1UBm_nw@mail.gmail.com Attached is a patch to set MIN_WINNT, the minimal version of Windows allowed at run-time to 0x0600 for all environments, aka Vista. This results in removing the support for XP at run-time when compiling with anything else than VS >= 2015 (VS 2013, MinGW, etc.). We could cut things more, I hope, but this bump makes sense in itself with the business related to locales. What I would like to do is to apply that at the beginning of the dev cycle for v16, in parallel of the removal of VS 2013. This move is rather independent of the other thread, which is why I am spawning a new one here. And it is better than having to dig into the other thread for a change like that. Thoughts or opinions? -- Michael --bbmc/nkjDrZ0l1z2 Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0001-Bump-WIN_MINNT-to-0x0600-everywhere.patch" Content-Transfer-Encoding: quoted-printable =46rom 26da923e3007e7eb1b459826158623c9db47e983 Mon Sep 17 00:00:00 2001 =46rom: Michael Paquier Date: Thu, 26 May 2022 10:20:06 +0900 Subject: [PATCH] Bump WIN_MINNT to 0x0600 everywhere --- src/include/port/win32.h | 10 +++------- src/backend/utils/adt/pg_locale.c | 4 ++-- doc/src/sgml/installation.sgml | 2 +- 3 files changed, 6 insertions(+), 10 deletions(-) diff --git a/src/include/port/win32.h b/src/include/port/win32.h index c6213c77c3..4d24c46812 100644 --- a/src/include/port/win32.h +++ b/src/include/port/win32.h @@ -11,15 +11,11 @@ =20 /* * Make sure _WIN32_WINNT has the minimum required value. - * Leave a higher value in place. When building with at least Visual - * Studio 2015 the minimum requirement is Windows Vista (0x0600) to - * get support for GetLocaleInfoEx() with locales. For everything else - * the minimum version is Windows XP (0x0501). + * Leave a higher value in place. The minimum requirement is Windows Vista + * (0x0600) to get support for GetLocaleInfoEx() with locales. */ -#if defined(_MSC_VER) && _MSC_VER >=3D 1900 +#if defined(_MSC_VER) #define MIN_WINNT 0x0600 -#else -#define MIN_WINNT 0x0501 #endif =20 #if defined(_WIN32_WINNT) && _WIN32_WINNT < MIN_WINNT diff --git a/src/backend/utils/adt/pg_locale.c b/src/backend/utils/adt/pg_l= ocale.c index a0490a7522..4c39841b99 100644 --- a/src/backend/utils/adt/pg_locale.c +++ b/src/backend/utils/adt/pg_locale.c @@ -1729,7 +1729,7 @@ get_collation_actual_version(char collprovider, const= char *collcollate) else ereport(ERROR, (errmsg("could not load locale \"%s\"", collcollate))); -#elif defined(WIN32) && _WIN32_WINNT >=3D 0x0600 +#elif defined(WIN32) /* * If we are targeting Windows Vista and above, we can ask for a name * given a collation name (earlier versions required a location code @@ -1757,7 +1757,7 @@ get_collation_actual_version(char collprovider, const= char *collcollate) collcollate, GetLastError()))); } - collversion =3D psprintf("%d.%d,%d.%d", + collversion =3D psprintf("%ld.%ld,%ld.%ld", (version.dwNLSVersion >> 8) & 0xFFFF, version.dwNLSVersion & 0xFF, (version.dwDefinedVersion >> 8) & 0xFFFF, diff --git a/doc/src/sgml/installation.sgml b/doc/src/sgml/installation.sgml index c585078029..5e2541137b 100644 --- a/doc/src/sgml/installation.sgml +++ b/doc/src/sgml/installation.sgml @@ -2136,7 +2136,7 @@ export MANPATH =20 PostgreSQL can be expected to work on these = operating - systems: Linux (all recent distributions), Windows (XP and later), + systems: Linux (all recent distributions), Windows (Vista and later), FreeBSD, OpenBSD, NetBSD, macOS, AIX, HP/UX, and Solaris. Other Unix-like systems may also work but are not currently being tested. In most cases, all CPU architectures supported by --=20 2.36.1 --bbmc/nkjDrZ0l1z2-- --W6S8nCAL2yDDIoE+ Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEG72nH6vTowiyblFKnvQgOdbyQH0FAmKO7RwACgkQnvQgOdby QH2MwQ/+LNRdiHrMrAEtYNBpo7yrZ8LgA6V88oq3czTn4HLzvDVWqHrHd0WpD1xr /UfMCuJYCtmbNMBTqwB/hjMM9PRkBloFYCR6XrG37fDPNXtZlkItlMpFYJgXm6jb Rg0/EPp9tGs2OMSWP2VQr1lbVa0LPhHSeyg/OmsOyGsXVVOB15n5kSDnBUvezr4e yFwcYfsZjKbV380BVBb9HjMC1mjmZpjRCUZfGxzFt/b6zQ+oMj5SB2Hzlh0aCYTK 8MLPDTCi5N9qjbPoX5cXpgIk5qEis+QqZExwsOK9b+J59Qy8Ud54rgUYQYcqtox7 dSDjC/yYVEq+/soBITGjB6HVXfJW1BmiV+lpax+8HvX+c+7niYKd10NbT7CT3IX+ 35o3cuQgslm6c1jBbwvr5rm3VnCwrINdssM5C3ZPP6Ubv5i+pG2Lylfmeih7iqIc sVLRnKKggwdOgtNLVPORLjinVISXJg92JRBOEw371TvmTQVMKCFQoneK6iOVE+uU RnGHNn061oSrKhxnr7rxMXTZ645gD4nP0MhvIA2t8p/qcSdfxGxehHv1WRQ1TGqJ l+Sgp7QPBOentKe8ztnt7drglUVF9mcF2pz6ikX2F51pN0HjixVeeRbhV6gc0Ey8 cLwSnljtEoGkrYBKqCuWGHBzy2aVfIqsEZBv3pxB8S74FIUx7FU= =yZN3 -----END PGP SIGNATURE----- --W6S8nCAL2yDDIoE+--