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 1709774

Summary: python3-typed_ast FTBFS with Python 3.8
Product: [Fedora] Fedora Reporter: Lumír Balhar <lbalhar>
Component: python3-typed_astAssignee: Gwyn Ciesla <gwync>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: gwync, pviktori
Target Milestone: ---Keywords: Reopened
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-05-15 14:12:03 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1686977    
Attachments:
Description Flags
Full build log from COPR none

Description Lumír Balhar 2019-05-14 10:02:35 UTC
Created attachment 1568353 [details]
Full build log from COPR

python3-typed_ast-1.3.1-1.fc31 fails to build in Fedora rawhide with Python 3.8.

The problem is a missing header file so it might be caused by a missing dependency:

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 -Iast27/Include -I/usr/include/python3.8 -c ast27/Parser/acceler.c -o build/temp.linux-x86_64-3.8/ast27/Parser/acceler.o
BUILDSTDERR: ast27/Parser/acceler.c:13:10: fatal error: pgenheaders.h: No such file or directory
BUILDSTDERR:    13 | #include "pgenheaders.h"
BUILDSTDERR:       |          ^~~~~~~~~~~~~~~
BUILDSTDERR: compilation terminated.
BUILDSTDERR: error: command 'gcc' failed with exit status 1
RPM build errors:
BUILDSTDERR: error: Bad exit status from /var/tmp/rpm-tmp.ZaMfkv (%build)
BUILDSTDERR:     Bad exit status from /var/tmp/rpm-tmp.ZaMfkv (%build)
Child return code was: 1
EXCEPTION: [Error()]

Comment 1 Lumír Balhar 2019-05-15 07:33:15 UTC
Hello.

Unfortunately, disabling tests is not a proper fix here because, as you can see in the build log, the problem is in the build phase and it's (probably) caused by missing header file.

Could you please take a look on it again?

Comment 2 Lumír Balhar 2019-05-15 08:49:24 UTC
I've dived into this problem deeper and it seems that it's caused by missing pgenhearders.h file which was entirely removed from Python 3.8.

Upstream issue: https://bugs.python.org/issue36623
Upstream issue about pgen itself: https://bugs.python.org/issue35808
Upstream commit: https://github.com/python/cpython/commit/f2cf1e3e2892a6326949c2570f1bb6d6c95715fb

I am going to check how this change is handled in the upstream of typed_ast.

Comment 3 Lumír Balhar 2019-05-15 08:56:46 UTC
pgenheaders.h file was removed in 3.8a4 - in previous 3.8a3 it's still present

Comment 4 Petr Viktorin 2019-05-15 11:06:42 UTC
Looks like this is fixed upstream: https://github.com/python/typed_ast/commit/2c1b6c4e0d83f4f1ef3035af03beead614b912d2

Comment 5 Gwyn Ciesla 2019-05-15 14:12:03 UTC
1.3.5 seems to do the trick.

Comment 6 Lumír Balhar 2019-05-15 15:41:34 UTC
JFYI you enabled tests back but the command you have in the %check section actually runs zero tests.

https://kojipkgs.fedoraproject.org//packages/python3-typed_ast/1.3.5/1.fc31/data/logs/x86_64/build.log

Comment 7 Gwyn Ciesla 2019-05-15 15:51:15 UTC
Odd. I'll look into that.