[Xapian-tickets] [Xapian] #818: Build issue with 1.14.4 under python 3.12
Xapian
nobody at xapian.org
Mon Jun 27 02:28:55 BST 2022
#818: Build issue with 1.14.4 under python 3.12
--------------------------------------+------------------------------------
Reporter: rouilj | Owner: Richard Boulton
Type: defect | Status: new
Priority: normal | Milestone:
Component: Xapian-bindings (Python) | Version: 1.4.14
Severity: normal | Resolution:
Keywords: | Blocked By:
Blocking: | Operating System: Linux
--------------------------------------+------------------------------------
Comment (by Olly Betts):
> What leads you to believe I am mismatching xapian bindings and xapian
core?
You have me backwards - it seems you're using version 1.4.14 xapian-
bindings because the Ubuntu version you're using packages xapian-core
1.4.14, and I'm saying that you don't necessarily need to do that, and
especially for debugging the problems you're hitting it'd be more helpful
to test with the latest stable release as that will likely have fixes for
at least some of the problems. Testing with the RELEASE/1.4 branch from
git is arguably better still, but requires disproportionally more effort
to close a much smaller window of potential fixes.
For example, xapian-bindings 1.4.19 should have fixed `warning: ‘int
PyEval_ThreadsInitialized()’ is deprecated`, and earleir today I pushed
fixes to the RELEASE/1.4 branch for `SO` to `EXT_SUFFIX` change, and for
the deprecation warnings I still saw with Python 3.11.
> Is your suggestion to upgrade the xapian core/devel packages for my
Ubuntu 3.12 and try recompiling a matching xapian-bindings? If so, does
your continuous integration environment have a build of xapian that works
for Python 3.12?
I'm suggesting you test with the latest xapian-bindings you easily can.
If that works with the 1.4.14 xapian-core packages then fine, but you
might need to pull newer xapian-core packages from the PPA.
You won't be able to use packaged xapian-bindings with a newer Python
version as the module currently needs recompiling for each Python minor
version. Maybe one day we'll support the Python stable ABI but we don't
currently.
Currently our CI just tests whatever the default python3 version packaged
for each test environment is.
> Did you look at the error message in context? If so does it indicate
that a newer version of xapian-bindings might work with updates for swig
and Python 3.12?
I did, but more context didn't help.
But as a general strategy, if you're trying to debug a compatibility issue
like this then my advice would be to test with the latest version you can
as it helps avoid wasting time and effort chasing down problems that have
already been fixed.
I had a quick look at Python's git repo to see what that header currently
is, and I think you've probably hit a Python bug as they merged a fix 15
hours ago to the code where the error is reported:
https://github.com/python/cpython/pull/94234/files
However I see Python 3.12 isn't due to be released for over 15 months (at
least according to https://peps.python.org/pep-0693/) and at this stage
you probably need be prepared to deal with this sort of breakage yourself,
or else wait to test with it until it's more stable.
--
Ticket URL: <https://trac.xapian.org/ticket/818#comment:5>
Xapian <https://xapian.org/>
Xapian
More information about the Xapian-tickets
mailing list