lxml fails to build on pypy3

Bug #1377501 reported by Andrey Kislyuk
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
lxml
Fix Released
Low
scoder

Bug Description

See e.g. https://travis-ci.org/kislyuk/signxml/jobs/37061786

Relevant build log excerpt:

Searching for lxml==3.3.6
Reading https://pypi.python.org/simple/lxml/
Best match: lxml 3.3.6
Downloading https://pypi.python.org/packages/source/l/lxml/lxml-3.3.6.tar.gz#md5=a804b36864c483fe7abdd7f493a0c379
Processing lxml-3.3.6.tar.gz
Writing /tmp/easy_install-2ufauw/lxml-3.3.6/setup.cfg
Running lxml-3.3.6/setup.py -q bdist_egg --dist-dir /tmp/easy_install-2ufauw/lxml-3.3.6/egg-dist-tmp-n7yrza
Building lxml version 3.3.6.
Building without Cython.
Using build configuration of libxslt 1.1.26
Building against libxml2/libxslt in the following directory: /usr/lib/x86_64-linux-gnu
/opt/python/pypy3-2.3.1/lib-python/3/distutils/dist.py:257: UserWarning: Unknown distribution option: 'bugtrack_url'
  warnings.warn(msg)
src/lxml/lxml.etree.c: In function ‘__pyx_f_4lxml_5etree__utf8’:
src/lxml/lxml.etree.c:26499:81: error: ‘PyBytes_Type’ undeclared (first use in this function)
src/lxml/lxml.etree.c:26499:81: note: each undeclared identifier is reported only once for each function it appears in
src/lxml/lxml.etree.c: In function ‘__pyx_pw_4lxml_5etree_22_IncrementalFileWriter_1__cinit__’:
src/lxml/lxml.etree.c:120082:7: error: ‘PyBytes_Type’ undeclared (first use in this function)
src/lxml/lxml.etree.c: In function ‘__pyx_f_4lxml_5etree__elementStringResultFactory’:
src/lxml/lxml.etree.c:141513:90: error: ‘PyBytes_Type’ undeclared (first use in this function)
src/lxml/lxml.etree.c: In function ‘PyInit_etree’:
src/lxml/lxml.etree.c:194381:3: error: ‘PyBytes_Type’ undeclared (first use in this function)
src/lxml/lxml.etree.c: In function ‘__Pyx_Raise’:
src/lxml/lxml.etree.c:196333:34: error: ‘PyThreadState’ has no member named ‘curexc_traceback’
src/lxml/lxml.etree.c:196336:19: error: ‘PyThreadState’ has no member named ‘curexc_traceback’
error: Setup script exited with error: command 'cc' failed with exit status 1

Andrey Kislyuk (weaver)
description: updated
Revision history for this message
scoder (scoder) wrote :

It seems that the C-API support in PyPy3 is even more broken than that in PyPy2. Please report the problems on their side first so that they can fix them. Then, I can take a look at what can be done on Cython/lxml side to improve the situation.

Changed in lxml:
assignee: nobody → scoder (scoder)
importance: Undecided → Low
status: New → Triaged
Revision history for this message
scoder (scoder) wrote :

More specifically, they need to provide "PyBytes_Type". I can take care of the "PyThreadState" issue.

Revision history for this message
scoder (scoder) wrote :
Revision history for this message
Andrey Kislyuk (weaver) wrote :

Thanks for filing upstream.

Revision history for this message
scoder (scoder) wrote :
Revision history for this message
scoder (scoder) wrote :

Should be ok in lxml 4.0.0. Fixes need to go mostly into PyPy anyway, rather not into lxml.

Changed in lxml:
milestone: none → 4.0.0
status: Triaged → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.