Re: Use Python "Limited API" in PL/Python
Peter Eisentraut <peter@eisentraut.org>
From: Peter Eisentraut <peter@eisentraut.org>
To: Jakob Egger <jakob@eggerapps.at>
Cc: pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2025-01-15T22:20:58Z
Lists: pgsql-hackers
Attachments
- v2-0001-Remove-obsolete-Python-version-check.patch (text/plain) patch v2-0001
- v2-0002-Prepare-for-Python-Limited-API-in-PL-Python.patch (text/plain) patch v2-0002
- v2-0003-Activate-Python-Limited-API-in-PL-Python.patch (text/plain) patch v2-0003
On 15.01.25 12:28, Jakob Egger wrote: > On 14.01.2025, at 16:51, Jakob Egger <jakob@eggerapps.at> wrote: >> I've tried to create a patch with this change. I'm attaching it to >> this message so that cfbot picks it up. (I was unable to reproduce the >> issue locally) > > Apologies, please disregard my last patch. It does not work. > > It looks like meson just can't build libraries that link with Python > that use the limited API. > > My understanding of Meson is limited, so I am unsure how to best work > around this limitation. > > I've spent two days trying to figure it out; I'm at the end of my wits. Thanks for checking. I've also been poking at this, without success. What we could do is just not activate the limited API on Windows (actually MSVC, since it works on MinGW). If someone later finds a way to make it work on Windows/MSVC, then it's easy to change. So here is an updated patch set with that change. It should pass cfbot like this.
Commits
-
Enable Python Limited API for PL/Python on MSVC
- 2bc60f86219b 19 (unreleased) landed
-
Activate Python "Limited API" in PL/Python
- 0793ab810038 18.0 landed
-
Prepare for Python "Limited API" in PL/Python
- 72a3d0462b9a 18.0 landed
- c47e8df815c1 18.0 landed
-
Remove obsolete Python version check
- 32c393f9f1f1 18.0 landed