Re: Use Python "Limited API" in PL/Python
Peter Eisentraut <peter@eisentraut.org>
From: Peter Eisentraut <peter@eisentraut.org>
To: Bryan Green <dbryan.green@gmail.com>
Cc: pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2026-01-05T07:55:08Z
Lists: pgsql-hackers
On 02.01.26 19:12, Bryan Green wrote:
>> I have a patch that works around this by manually constructing the
>> Python dependency on MSVC to use python3.lib instead of python3XX.lib,
>> using cc.find_library('python3') and building the dependency with the
>> appropriate include directory. It passes CI when I push. I'll see what
>> cfbot thinks.
>>
>> Still testing, but wanted to share progress and get feedback on the
>> approach.
>>
>
> cfbot seems to be happy:
> https://cirrus-ci.com/github/postgresql-cfbot/postgresql/cf%2F6369
Another thing you could test is whether this actually makes the ABI
stable. So for example build PL/Python against Python 3.13 and then
install Python 3.14 (and uninstall 3.13 just to be sure) and then start
a server and run some PL/Python stuff.
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