Re: minimum Meson version - Mailing list pgsql-hackers
From | Nazir Bilal Yavuz |
---|---|
Subject | Re: minimum Meson version |
Date | |
Msg-id | CAN55FZ3Os-F+LbDqtDazZvLSG8Vr=rGtwAYAj9S32f53ccXj-w@mail.gmail.com Whole thread Raw |
In response to | minimum Meson version (Peter Eisentraut <peter@eisentraut.org>) |
Responses |
Re: minimum Meson version
|
List | pgsql-hackers |
Hi, On Wed, 18 Jun 2025 at 11:58, Peter Eisentraut <peter@eisentraut.org> wrote: > > On 17.06.25 19:36, Peter Eisentraut wrote: > > meson.build currently says > > > > # We want < 0.56 for python 3.5 compatibility on old platforms. EPEL for > > # RHEL 7 has 0.55. < 0.54 would require replacing some uses of the fs > > # module, < 0.53 all uses of fs. So far there's no need to go to >=0.56. > > meson_version: '>=0.54', > > > > Since the current minimum supported Python version is now actually 3.6, > > we could update this a bit. > > > > The first Meson version to require Python 3.7 is 0.62, so we should stay > > below that. > > > > Moving to 0.55 and 0.56 would get rid of some future-deprecated warnings. > > > > There is some conditional code for 0.57 and 0.59, so landing on either > > of these would allow getting rid of some of that. > > > > I see that Rocky Linux 8 ships with Meson 0.58.2 [0], so maybe that is a > > good target to aim for. (I don't know if that carried over from RHEL 8 > > or is their own doing.) But there aren't any compelling features new in > > 0.58 (format strings seem nice but are pretty much cosmetic), so maybe > > setting the minimum to 0.57 is enough. > > Ok, let's make a small start. Here is a patch set that moves the > requirement to >=0.57. As explained above, this allows getting rid of a > bunch of conditional code and the future-deprecated warnings. Thanks for the patches! I didn't check them yet but I encountered some errors while using meson 0.57.0 and 0.57.1 but 0.56.2, 0.57.2 and 0.58.0 worked successfully. These errors seem to be related to these specific minor versions, but I just wanted to mention them: - meson install command fails on 0.57.0: FAILED: src/interfaces/ecpg/preproc/preproc.y /usr/bin/perl ../../postgres/src/interfaces/ecpg/preproc/parse.pl --srcdir @CURRENT_SOURCE_DIR@ --parser ../../postgres/src/interfaces/ecpg/preproc/../../../backend/parser/gram.y --output src/interfaces/ecpg/preproc/preproc.y Died at ../../postgres/src/interfaces/ecpg/preproc/parse.pl line 698. - meson test command fails on 0.57.1: Exception in callback TestHarness._run_tests.<locals>.test_done() at /home/nbyavuz/Desktop/projects/meson/meson/mesonbuild/mtest.py:1807 handle: <Handle TestHarness._run_tests.<locals>.test_done() at /home/nbyavuz/Desktop/projects/meson/meson/mesonbuild/mtest.py:1807> Traceback (most recent call last): File "/usr/lib/python3.13/asyncio/events.py", line 89, in _run self._context.run(self._callback, *self._args) ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/nbyavuz/Desktop/projects/meson/meson/mesonbuild/mtest.py", line 1809, in test_done f.result() ~~~~~~~~^^ File "/home/nbyavuz/Desktop/projects/meson/meson/mesonbuild/mtest.py", line 1804, in run_test res = await test.run(self) ^^^^^^^^^^^^^^^^^^^^ File "/home/nbyavuz/Desktop/projects/meson/meson/mesonbuild/mtest.py", line 1350, in run await self._run_cmd(harness, cmd) File "/home/nbyavuz/Desktop/projects/meson/meson/mesonbuild/mtest.py", line 1416, in _run_cmd returncode, result, additional_error = await p.wait(self.runobj.timeout) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/nbyavuz/Desktop/projects/meson/meson/mesonbuild/mtest.py", line 1242, in wait await try_wait_one(p.wait(), timeout=timeout) File "/home/nbyavuz/Desktop/projects/meson/meson/mesonbuild/mtest.py", line 1133, in try_wait_one await asyncio.wait(awaitables, timeout=timeout, return_when=asyncio.FIRST_COMPLETED) File "/usr/lib/python3.13/asyncio/tasks.py", line 448, in wait raise TypeError("Passing coroutines is forbidden, use tasks explicitly.") TypeError: Passing coroutines is forbidden, use tasks explicitly. /usr/lib/python3.13/asyncio/events.py:89: RuntimeWarning: coroutine 'Process.wait' was never awaited self._context.run(self._callback, *self._args) RuntimeWarning: Enable tracemalloc to get the object allocation traceback -- Regards, Nazir Bilal Yavuz Microsoft
pgsql-hackers by date: