Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.
Bug 1709817 - python-twisted FTBFS with Python 3.8
Summary: python-twisted FTBFS with Python 3.8
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: python-twisted
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
high
Target Milestone: ---
Assignee: Robert-André Mauchin 🐧
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: PYTHON38
TreeView+ depends on / blocked
 
Reported: 2019-05-14 11:16 UTC by Lumír Balhar
Modified: 2019-05-14 16:28 UTC (History)
3 users (show)

Fixed In Version: python-twisted-19.2.0-2.fc31
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2019-05-14 15:58:21 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
Full build log from COPR (16.08 KB, text/plain)
2019-05-14 11:16 UTC, Lumír Balhar
no flags Details

Description Lumír Balhar 2019-05-14 11:16:29 UTC
Created attachment 1568403 [details]
Full build log from COPR

python-twisted-19.2.0-1.fc31 fails to build from source in Fedora rawhide with Python 3.8.

The compilation failure is:

gcc -pthread -Wno-unused-result -Wsign-compare -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DNDEBUG -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -D_GNU_SOURCE -fPIC -fwrapv -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fPIC -I/usr/include/python3.8 -c src/twisted/test/raiser.c -o build/temp.linux-x86_64-3.8/src/twisted/test/raiser.o
BUILDSTDERR: src/twisted/test/raiser.c: In function ‘__Pyx_InitCachedConstants’:
BUILDSTDERR: src/twisted/test/raiser.c:1140:89: warning: passing argument 6 of ‘PyCode_New’ makes integer from pointer without a cast [-Wint-conversion]
BUILDSTDERR:  1140 |   __pyx_codeobj__2 = (PyObject*)__Pyx_PyCode_New(0, 0, 0, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_twisted_test_raiser_pyx, __pyx_n_s_raiseException, 17, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__2)) __PYX_ERR(0, 17, __pyx_L1_error)
BUILDSTDERR:       |                                                                                         ^~~~~~~~~~~~~~~~~
BUILDSTDERR:       |                                                                                         |
BUILDSTDERR:       |                                                                                         PyObject * {aka struct _object *}
BUILDSTDERR: src/twisted/test/raiser.c:296:37: note: in definition of macro ‘__Pyx_PyCode_New’
BUILDSTDERR:   296 |           PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
BUILDSTDERR:       |                                     ^~~~
BUILDSTDERR: In file included from /usr/include/python3.8/compile.h:5,
BUILDSTDERR:                  from /usr/include/python3.8/Python.h:137,
BUILDSTDERR:                  from src/twisted/test/raiser.c:4:
BUILDSTDERR: /usr/include/python3.8/code.h:105:28: note: expected ‘int’ but argument is of type ‘PyObject *’ {aka ‘struct _object *’}
BUILDSTDERR:   105 | PyAPI_FUNC(PyCodeObject *) PyCode_New(
BUILDSTDERR:       |                            ^~~~~~~~~~
BUILDSTDERR: src/twisted/test/raiser.c:1140:269: warning: passing argument 14 of ‘PyCode_New’ makes pointer from integer without a cast [-Wint-conversion]
BUILDSTDERR:  1140 |   __pyx_codeobj__2 = (PyObject*)__Pyx_PyCode_New(0, 0, 0, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_twisted_test_raiser_pyx, __pyx_n_s_raiseException, 17, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__2)) __PYX_ERR(0, 17, __pyx_L1_error)
BUILDSTDERR:       |                                                                                                                                                                                                                                                                             ^~
BUILDSTDERR:       |                                                                                                                                                                                                                                                                             |
BUILDSTDERR:       |                                                                                                                                                                                                                                                                             int
BUILDSTDERR: src/twisted/test/raiser.c:296:72: note: in definition of macro ‘__Pyx_PyCode_New’
BUILDSTDERR:   296 |           PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
BUILDSTDERR:       |                                                                        ^~~~~
BUILDSTDERR: In file included from /usr/include/python3.8/compile.h:5,
BUILDSTDERR:                  from /usr/include/python3.8/Python.h:137,
BUILDSTDERR:                  from src/twisted/test/raiser.c:4:
BUILDSTDERR: /usr/include/python3.8/code.h:105:28: note: expected ‘PyObject *’ {aka ‘struct _object *’} but argument is of type ‘int’
BUILDSTDERR:   105 | PyAPI_FUNC(PyCodeObject *) PyCode_New(
BUILDSTDERR:       |                            ^~~~~~~~~~
BUILDSTDERR: src/twisted/test/raiser.c:1140:273: warning: passing argument 15 of ‘PyCode_New’ makes integer from pointer without a cast [-Wint-conversion]
BUILDSTDERR:  1140 |   __pyx_codeobj__2 = (PyObject*)__Pyx_PyCode_New(0, 0, 0, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_twisted_test_raiser_pyx, __pyx_n_s_raiseException, 17, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__2)) __PYX_ERR(0, 17, __pyx_L1_error)
BUILDSTDERR:       |                                                                                                                                                                                                                                                                                 ^~~~~~~~~~~~~~~~~
BUILDSTDERR:       |                                                                                                                                                                                                                                                                                 |
BUILDSTDERR:       |                                                                                                                                                                                                                                                                                 PyObject * {aka struct _object *}
BUILDSTDERR: src/twisted/test/raiser.c:296:79: note: in definition of macro ‘__Pyx_PyCode_New’
BUILDSTDERR:   296 |           PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
BUILDSTDERR:       |                                                                               ^~~~
BUILDSTDERR: In file included from /usr/include/python3.8/compile.h:5,
BUILDSTDERR:                  from /usr/include/python3.8/Python.h:137,
BUILDSTDERR:                  from src/twisted/test/raiser.c:4:
BUILDSTDERR: /usr/include/python3.8/code.h:105:28: note: expected ‘int’ but argument is of type ‘PyObject *’ {aka ‘struct _object *’}
BUILDSTDERR:   105 | PyAPI_FUNC(PyCodeObject *) PyCode_New(
BUILDSTDERR:       |                            ^~~~~~~~~~
BUILDSTDERR: src/twisted/test/raiser.c:296:11: error: too few arguments to function ‘PyCode_New’
BUILDSTDERR:   296 |           PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
BUILDSTDERR:       |           ^~~~~~~~~~
BUILDSTDERR: src/twisted/test/raiser.c:1140:33: note: in expansion of macro ‘__Pyx_PyCode_New’
BUILDSTDERR:  1140 |   __pyx_codeobj__2 = (PyObject*)__Pyx_PyCode_New(0, 0, 0, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_twisted_test_raiser_pyx, __pyx_n_s_raiseException, 17, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__2)) __PYX_ERR(0, 17, __pyx_L1_error)
BUILDSTDERR:       |                                 ^~~~~~~~~~~~~~~~
BUILDSTDERR: In file included from /usr/include/python3.8/compile.h:5,
BUILDSTDERR:                  from /usr/include/python3.8/Python.h:137,
BUILDSTDERR:                  from src/twisted/test/raiser.c:4:
BUILDSTDERR: /usr/include/python3.8/code.h:105:28: note: declared here
BUILDSTDERR:   105 | PyAPI_FUNC(PyCodeObject *) PyCode_New(
BUILDSTDERR:       |                            ^~~~~~~~~~
BUILDSTDERR: src/twisted/test/raiser.c: In function ‘__Pyx_CreateCodeObjectForTraceback’:
BUILDSTDERR: src/twisted/test/raiser.c:2007:9: warning: passing argument 6 of ‘PyCode_New’ makes integer from pointer without a cast [-Wint-conversion]
BUILDSTDERR:  2007 |         __pyx_empty_bytes, /*PyObject *code,*/
BUILDSTDERR:       |         ^~~~~~~~~~~~~~~~~
BUILDSTDERR:       |         |
BUILDSTDERR:       |         PyObject * {aka struct _object *}
BUILDSTDERR: src/twisted/test/raiser.c:296:37: note: in definition of macro ‘__Pyx_PyCode_New’
BUILDSTDERR:   296 |           PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
BUILDSTDERR:       |                                     ^~~~
BUILDSTDERR: In file included from /usr/include/python3.8/compile.h:5,
BUILDSTDERR:                  from /usr/include/python3.8/Python.h:137,
BUILDSTDERR:                  from src/twisted/test/raiser.c:4:
BUILDSTDERR: /usr/include/python3.8/code.h:105:28: note: expected ‘int’ but argument is of type ‘PyObject *’ {aka ‘struct _object *’}
BUILDSTDERR:   105 | PyAPI_FUNC(PyCodeObject *) PyCode_New(
BUILDSTDERR:       |                            ^~~~~~~~~~
BUILDSTDERR: src/twisted/test/raiser.c:2015:9: warning: passing argument 14 of ‘PyCode_New’ makes pointer from integer without a cast [-Wint-conversion]
BUILDSTDERR:  2015 |         py_line,
BUILDSTDERR:       |         ^~~~~~~
BUILDSTDERR:       |         |
BUILDSTDERR:       |         int
BUILDSTDERR: src/twisted/test/raiser.c:296:72: note: in definition of macro ‘__Pyx_PyCode_New’
BUILDSTDERR:   296 |           PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
BUILDSTDERR:       |                                                                        ^~~~~
BUILDSTDERR: In file included from /usr/include/python3.8/compile.h:5,
BUILDSTDERR:                  from /usr/include/python3.8/Python.h:137,
BUILDSTDERR:                  from src/twisted/test/raiser.c:4:
BUILDSTDERR: /usr/include/python3.8/code.h:105:28: note: expected ‘PyObject *’ {aka ‘struct _object *’} but argument is of type ‘int’
BUILDSTDERR:   105 | PyAPI_FUNC(PyCodeObject *) PyCode_New(
BUILDSTDERR:       |                            ^~~~~~~~~~
BUILDSTDERR: src/twisted/test/raiser.c:2016:9: warning: passing argument 15 of ‘PyCode_New’ makes integer from pointer without a cast [-Wint-conversion]
BUILDSTDERR:  2016 |         __pyx_empty_bytes  /*PyObject *lnotab*/
BUILDSTDERR:       |         ^~~~~~~~~~~~~~~~~
BUILDSTDERR:       |         |
BUILDSTDERR:       |         PyObject * {aka struct _object *}
BUILDSTDERR: src/twisted/test/raiser.c:296:79: note: in definition of macro ‘__Pyx_PyCode_New’
BUILDSTDERR:   296 |           PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
BUILDSTDERR:       |                                                                               ^~~~
BUILDSTDERR: In file included from /usr/include/python3.8/compile.h:5,
BUILDSTDERR:                  from /usr/include/python3.8/Python.h:137,
BUILDSTDERR:                  from src/twisted/test/raiser.c:4:
BUILDSTDERR: /usr/include/python3.8/code.h:105:28: note: expected ‘int’ but argument is of type ‘PyObject *’ {aka ‘struct _object *’}
BUILDSTDERR:   105 | PyAPI_FUNC(PyCodeObject *) PyCode_New(
BUILDSTDERR:       |                            ^~~~~~~~~~
BUILDSTDERR: src/twisted/test/raiser.c:296:11: error: too few arguments to function ‘PyCode_New’
BUILDSTDERR:   296 |           PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
BUILDSTDERR:       |           ^~~~~~~~~~
BUILDSTDERR: src/twisted/test/raiser.c:2001:15: note: in expansion of macro ‘__Pyx_PyCode_New’
BUILDSTDERR:  2001 |     py_code = __Pyx_PyCode_New(
BUILDSTDERR:       |               ^~~~~~~~~~~~~~~~
BUILDSTDERR: In file included from /usr/include/python3.8/compile.h:5,
BUILDSTDERR:                  from /usr/include/python3.8/Python.h:137,
BUILDSTDERR:                  from src/twisted/test/raiser.c:4:
BUILDSTDERR: /usr/include/python3.8/code.h:105:28: note: declared here
BUILDSTDERR:   105 | PyAPI_FUNC(PyCodeObject *) PyCode_New(
BUILDSTDERR:       |                            ^~~~~~~~~~
BUILDSTDERR: error: command 'gcc' failed with exit status 1
RPM build errors:
BUILDSTDERR: error: Bad exit status from /var/tmp/rpm-tmp.aIpoJw (%build)
BUILDSTDERR:     Bad exit status from /var/tmp/rpm-tmp.aIpoJw (%build)
Child return code was: 1

Comment 1 Miro Hrončok 2019-05-14 12:39:51 UTC
This looks like a common problem after positional only arguments were introduced. See the Cython fix for reference:



https://github.com/cython/cython/commit/d22678c700446636360d3fe97aef60f0cedef741

Comment 2 Robert-André Mauchin 🐧 2019-05-14 14:26:39 UTC
https://github.com/cython/cython/issues/2938

Comment 3 Miro Hrončok 2019-05-14 14:51:50 UTC
Oh, so this is Cython generated code? That fix should fix that but only if we regenerate the code. Currently, twisted doesn't seem to BR Cython at all.

Comment 4 Robert-André Mauchin 🐧 2019-05-14 15:19:19 UTC
Yes I've sent a patch upstream:
https://twistedmatrix.com/trac/ticket/9640#comment:1
https://github.com/twisted/twisted/pull/1140

I'm rebuilding master with a patch. I've tested it with the Py 3.8 COPR and it works.

Comment 5 Robert-André Mauchin 🐧 2019-05-14 15:58:21 UTC
Fixed in python-twisted-19.2.0-2.fc31.

Comment 6 Miro Hrončok 2019-05-14 16:28:39 UTC
Yes, it builds. Thank you.


Note You need to log in before you can comment on or make changes to this bug.