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 1336913 - FFI.cdef() prints WARNING: yacc table file version is out of date
Summary: FFI.cdef() prints WARNING: yacc table file version is out of date
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: python-pycparser
Version: 24
Hardware: All
OS: Linux
unspecified
low
Target Milestone: ---
Assignee: Eric Smith
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: 1668230
TreeView+ depends on / blocked
 
Reported: 2016-05-17 19:37 UTC by Robbie Harwood
Modified: 2019-01-22 09:15 UTC (History)
19 users (show)

Fixed In Version: python-pycparser-2.14-6.fc24
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
: 1668230 (view as bug list)
Environment:
Last Closed: 2016-07-12 15:01:35 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
install log (58.85 KB, text/plain)
2016-05-17 20:18 UTC, Robbie Harwood
no flags Details
yacctab.py (123.18 KB, text/plain)
2016-05-17 20:29 UTC, Robbie Harwood
no flags Details
lextab.py (7.01 KB, text/plain)
2016-05-17 20:29 UTC, Robbie Harwood
no flags Details

Description Robbie Harwood 2016-05-17 19:37:40 UTC
With a fresh fc24 install, ipa-client-install prints the following warning:

# ipa-client-install -N
WARNING: yacc table file version is out of date
Discovery was successful!

and then proceeds to configure the client as normal.  Nothing seems to be broken, but I didn't do anything obviously odd and this warning is esoteric.

Comment 1 Robbie Harwood 2016-05-17 20:18:09 UTC
Created attachment 1158504 [details]
install log

I don't see anything in here, but attaching it as requested.

Comment 2 Robbie Harwood 2016-05-17 20:29:37 UTC
Created attachment 1158507 [details]
yacctab.py

Found this in root's homedir after install

Comment 3 Robbie Harwood 2016-05-17 20:29:59 UTC
Created attachment 1158508 [details]
lextab.py

Same with this

Comment 4 Petr Vobornik 2016-05-18 10:42:04 UTC
what is you version of:
  python-ply
  python-pycparser
  python-cffi
  python-cryptography

and python3 variants

I've a feeling that the issue is in one of the packages. Probably python-pycparser.

Comment 5 Robbie Harwood 2016-05-18 16:01:24 UTC
This is fc24 (with updates-testing), so:

python2-ply-3.8-1.fc24.noarch
python-pycparser-2.14-5.fc24.noarch
python2-cffi-1.5.2-1.fc24.x86_64
python2-cryptography-1.3.1-1.fc24.x86_64

No python3 versions of any of the above are installed.  Python versions:

python3-3.5.1-7.fc24.x86_64
python-2.7.11-4.fc24.x86_64

Comment 6 Petr Spacek 2016-05-23 10:22:11 UTC
This can be reproduced on F24 system using this Python snippet:

>>> from cffi import FFI
>>> _ffi = FFI()
>>> _ffi.cdef("""
... int rpmvercmp (const char *a, const char *b);
... """)
WARNING: yacc table file version is out of date

Moving to cffi.

Comment 7 Christian Heimes 2016-05-23 10:38:42 UTC
It's a bug in python-ply (Python lexx and yacc). cffi uses pyparsing and ply to parse C declarations.

/usr/lib/python2.7/site-packages/ply/yacc.py:            raise VersionError('yacc table file version is out of date')

Comment 8 Tom "spot" Callaway 2016-05-25 16:09:04 UTC
I don't see the bug in ply (not that I'm necessary disputing it existing). When I change the debugging string like this:

raise VersionError('yacc table file version is out of date %s vs %s' % (parsetab._tabversion, __tabversion__))

We get:

Python 2.7.11 (default, Feb  5 2016, 01:53:41) 
[GCC 6.0.0 20160201 (Red Hat 6.0.0-0.9)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from cffi import FFI
>>> _ffi = FFI()
>>> _ffi.cdef("""
... int rpmvercmp (const char *a, const char *b);
... """)
WARNING: yacc table file version is out of date 3.5 vs 3.8
>>> 

I'm not sure why the file version is coming in from ffi at 3.5.

Comment 9 Adam Williamson 2016-06-21 21:24:33 UTC
note that *every* time this happens, a yacctab.py gets dumped in the working directory. Which is kind of annoying.

I'm seeing it on my server after upgrading to F24, every time I run ipactl.

Comment 10 Nathaniel McCallum 2016-06-21 21:34:16 UTC
FYI, I downgraded python-ply to 3.6-4.fc24 and the problem went away. So, definitely a PLY issue.

Comment 11 Christian Heimes 2016-06-22 10:19:51 UTC
It's a bug in pycparser. The error message doesn't have enough information to point to the right file. It's not yacc.py but yacctab.py! The yacctab in pycparser has version 3.5. After I changed _tabversion = '3.8' in /usr/lib/python2.7/site-packages/pycparser/yacctab.py, the warning is gone.

Comment 12 Ben Lipton 2016-06-27 15:30:22 UTC
Just rebuilding pycparser against the new python-ply package in F24 seems to do the trick.

Comment 13 Jan Pazdziora 2016-07-08 13:40:56 UTC
Could we get updated packages in Fedora 24?

Comment 14 Fedora Update System 2016-07-08 14:13:57 UTC
python-pycparser-2.14-6.fc24 has been submitted as an update to Fedora 24. https://bodhi.fedoraproject.org/updates/FEDORA-2016-f7eac4df7e

Comment 15 Fedora Update System 2016-07-10 15:57:56 UTC
python-pycparser-2.14-6.fc24 has been pushed to the Fedora 24 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2016-f7eac4df7e

Comment 16 Jan Pazdziora 2016-07-11 08:52:21 UTC
I confirm that with upgrade to python-pycparser-2.14-6.fc24, ipa-server-install no longer emits the

WARNING: yacc table file version is out of date

message.

Comment 18 Fedora Update System 2016-07-12 15:01:29 UTC
python-pycparser-2.14-6.fc24 has been pushed to the Fedora 24 stable repository. If problems still persist, please make note of it in this bug report.


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