chtd / psycopg2cffi

Port to cffi with some speed improvements
Other
177 stars 43 forks source link

AssertionError: sorry, but this version only supports 100 named groups #70

Closed d33tah closed 7 years ago

d33tah commented 7 years ago
  Running setup.py install for psycopg2cffi: started
    Running setup.py install for psycopg2cffi: finished with status 'error'
    Complete output from command /usr/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-T6AT89/psycopg2cffi/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-CazIs3-record/install-record.txt --single-version-externally-managed --compile:

    ================================================================================

    Found libpq at:
     -> /usr/pgsql-9.4/lib/libpq.so

    ================================================================================
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pip-build-T6AT89/psycopg2cffi/setup.py", line 126, in <module>
        setup(**setup_kwargs)
      File "/usr/lib64/python2.7/distutils/core.py", line 112, in setup
        _setup_distribution = dist = klass(attrs)
      File "/usr/lib/python2.7/site-packages/setuptools/dist.py", line 272, in __init__
        _Distribution.__init__(self,attrs)
      File "/usr/lib64/python2.7/distutils/dist.py", line 287, in __init__
        self.finalize_options()
      File "/usr/lib/python2.7/site-packages/setuptools/dist.py", line 327, in finalize_options
        ep.load()(self, ep.name, value)
      File "/usr/lib64/python2.7/site-packages/cffi/setuptools_ext.py", line 181, in cffi_modules
        add_cffi_module(dist, cffi_module)
      File "/usr/lib64/python2.7/site-packages/cffi/setuptools_ext.py", line 48, in add_cffi_module
        execfile(build_file_name, mod_vars)
      File "/usr/lib64/python2.7/site-packages/cffi/setuptools_ext.py", line 24, in execfile
        exec(code, glob, glob)
      File "psycopg2cffi/_impl/_build_libpq.py", line 208, in <module>
        _config = PostgresConfig()
      File "psycopg2cffi/_impl/_build_libpq.py", line 20, in __init__
        from psycopg2cffi import _config
      File "/tmp/pip-build-T6AT89/psycopg2cffi/psycopg2cffi/__init__.py", line 4, in <module>
        from psycopg2cffi import extensions
      File "/tmp/pip-build-T6AT89/psycopg2cffi/psycopg2cffi/extensions.py", line 39, in <module>
        from psycopg2cffi._impl import connection as _connection
      File "/tmp/pip-build-T6AT89/psycopg2cffi/psycopg2cffi/_impl/connection.py", line 10, in <module>
        from psycopg2cffi._impl import exceptions
      File "/tmp/pip-build-T6AT89/psycopg2cffi/psycopg2cffi/_impl/exceptions.py", line 12, in <module>
        from psycopg2cffi._impl.libpq import libpq, ffi
      File "/tmp/pip-build-T6AT89/psycopg2cffi/psycopg2cffi/_impl/libpq.py", line 4, in <module>
        from psycopg2cffi._impl._build_libpq import ffi, C_SOURCE, C_SOURCE_KWARGS
      File "/tmp/pip-build-T6AT89/psycopg2cffi/psycopg2cffi/_impl/_build_libpq.py", line 369, in <module>
        ''')
      File "/usr/lib64/python2.7/site-packages/cffi/api.py", line 105, in cdef
        self._cdef(csource, override=override, packed=packed)
      File "/usr/lib64/python2.7/site-packages/cffi/api.py", line 119, in _cdef
        self._parser.parse(csource, override=override, **options)
      File "/usr/lib64/python2.7/site-packages/cffi/cparser.py", line 299, in parse
        self._internal_parse(csource)
      File "/usr/lib64/python2.7/site-packages/cffi/cparser.py", line 304, in _internal_parse
        ast, macros, csource = self._parse(csource)
      File "/usr/lib64/python2.7/site-packages/cffi/cparser.py", line 260, in _parse
        ast = _get_parser().parse(csource)
      File "/usr/lib64/python2.7/site-packages/cffi/cparser.py", line 40, in _get_parser
        _parser_cache = pycparser.CParser()
      File "/usr/lib/python2.7/site-packages/pycparser/c_parser.py", line 87, in __init__
        outputdir=taboutputdir)
      File "/usr/lib/python2.7/site-packages/pycparser/c_lexer.py", line 66, in build
        self.lexer = lex.lex(object=self, **kwargs)
      File "/usr/lib/python2.7/site-packages/pycparser/ply/lex.py", line 911, in lex
        lexobj.readtab(lextab, ldict)
      File "/usr/lib/python2.7/site-packages/pycparser/ply/lex.py", line 233, in readtab
        titem.append((re.compile(pat, lextab._lexreflags | re.VERBOSE), _names_to_funcs(func_name, fdict)))
      File "/usr/lib64/python2.7/re.py", line 190, in compile
        return _compile(pattern, flags)
      File "/usr/lib64/python2.7/re.py", line 240, in _compile
        p = sre_compile.compile(pattern, flags)
      File "/usr/lib64/python2.7/sre_compile.py", line 512, in compile
        "sorry, but this version only supports 100 named groups"
    AssertionError: sorry, but this version only supports 100 named groups

    ----------------------------------------
Command "/usr/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-T6AT89/psycopg2cffi/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-CazIs3-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-build-T6AT89/psycopg2cffi/
lopuhin commented 7 years ago

Probably related to https://github.com/eliben/pycparser/issues/147

d33tah commented 7 years ago

@lopuhin: man, you are amazing :3 adding --no-binary pycparser solved it for me.

lopuhin commented 7 years ago

@d33tah you're welcome! Wrote an issue for a better long-term fix.

d33tah commented 7 years ago

@lopuhin could you link to the issue so I could subscribe to it?

lopuhin commented 7 years ago

@d33tah sure, I meant this one #71 - I thought that with wheels pycparser won't be involved, but now I'm not sure, I have to check.