Skip to content
Advertisement

unknown version in python library pyparsing

I am trying to install airnotifier on my machine, I am getting this error

My python version is 3.6

PS C:airnotifier> python app.py
Traceback (most recent call last):
  File "app.py", line 32, in <module>
    from pushservices.bootstrap import init_messaging_agents
  File "C:airnotifierpushservicesbootstrap.py", line 4, in <module>
    from .fcm import FCMClient
  File "C:airnotifierpushservicesfcm.py", line 5, in <module>
    from oauth2client.service_account import ServiceAccountCredentials
  File "C:UserssmacrsadminAppDataLocalProgramsPythonPython36libsite-packagesoauth2clientservice_account.py", line 25, in <module>
    from oauth2client import client
  File "C:UserssmacrsadminAppDataLocalProgramsPythonPython36libsite-packagesoauth2clientclient.py", line 39, in <module>
    from oauth2client import transport
  File "C:UserssmacrsadminAppDataLocalProgramsPythonPython36libsite-packagesoauth2clienttransport.py", line 17, in <module>
    import httplib2
  File "C:UserssmacrsadminAppDataLocalProgramsPythonPython36libsite-packageshttplib2__init__.py", line 52, in <module>
    from . import auth
  File "C:UserssmacrsadminAppDataLocalProgramsPythonPython36libsite-packageshttplib2auth.py", line 4, in <module>
    import pyparsing as pp
  File "C:UserssmacrsadminAppDataLocalProgramsPythonPython36libsite-packagespyparsing__init__.py", line 130, in <module>
    __version__ = __version_info__.__version__
AttributeError: 'version_info' object has no attribute '__version__'

Advertisement

Answer

I received the same error and I’m also in Python 3.6.0 …

AttributeError: 'version_info' object has no attribute '__version__'

If you want to dig a little more, you can type this in your console and detect which package is using this dependency.

> pip show pyparsing

In my case the output was something like this, indicating that packaging:

  • Name: pyparsing
  • Version: 2.4.7
  • Summary: Python parsing module
  • License: MIT License
  • Location:
  • Requires:
  • Required-by: packaging

To fix it, you can go with the suggestion from PaulMcG

pip install pyparsing==2.4.7

Update 2022-Jun-03:

Reference to the issue

https://github.com/pyparsing/pyparsing/releases/tag/pyparsing_3.0.8

Note says:

API CHANGE: modified pyproject.toml to require Python version 3.6.8 or later for pyparsing 3.x. Earlier minor versions of 3.6 fail in evaluating the version_info class (implemented using typing.NamedTuple). If you are using an earlier version of Python 3.6, you will need to use pyparsing 2.4.7.

User contributions licensed under: CC BY-SA
10 People found this is helpful
Advertisement