{"action":"created","issue":{"url":"https://api.github.com/repos/pyca/cryptography/issues/3187","repository_url":"https://api.github.com/repos/pyca/cryptography","labels_url":"https://api.github.com/repos/pyca/cryptography/issues/3187/labels{/name}","comments_url":"https://api.github.com/repos/pyca/cryptography/issues/3187/comments","events_url":"https://api.github.com/repos/pyca/cryptography/issues/3187/events","html_url":"https://github.com/pyca/cryptography/issues/3187","id":180551427,"number":3187,"title":"Got \"sorry, but this version only supports 100 named groups\" while installing","user":{"login":"chitoge","id":9479710,"avatar_url":"https://avatars.githubusercontent.com/u/9479710?v=3","gravatar_id":"","url":"https://api.github.com/users/chitoge","html_url":"https://github.com/chitoge","followers_url":"https://api.github.com/users/chitoge/followers","following_url":"https://api.github.com/users/chitoge/following{/other_user}","gists_url":"https://api.github.com/users/chitoge/gists{/gist_id}","starred_url":"https://api.github.com/users/chitoge/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chitoge/subscriptions","organizations_url":"https://api.github.com/users/chitoge/orgs","repos_url":"https://api.github.com/users/chitoge/repos","events_url":"https://api.github.com/users/chitoge/events{/privacy}","received_events_url":"https://api.github.com/users/chitoge/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":10,"created_at":"2016-10-03T02:09:47Z","updated_at":"2016-10-03T11:18:56Z","closed_at":null,"body":"Hello,\r\n\r\nWhen I tried to install `cryptography` globally with `pip install cryptography` on Ubuntu, I got the following error:\r\n\r\n```\r\nCollecting cryptography\r\n  Downloading cryptography-1.5.2.tar.gz (400kB)\r\n    100% |████████████████████████████████| 409kB 764kB/s \r\nRequirement already up-to-date: idna>=2.0 in /usr/local/lib/python2.7/dist-packages (from cryptography)\r\nRequirement already up-to-date: pyasn1>=0.1.8 in /usr/local/lib/python2.7/dist-packages (from cryptography)\r\nRequirement already up-to-date: six>=1.4.1 in /usr/local/lib/python2.7/dist-packages (from cryptography)\r\nRequirement already up-to-date: setuptools>=11.3 in /usr/local/lib/python2.7/dist-packages (from cryptography)\r\nRequirement already up-to-date: enum34 in /usr/local/lib/python2.7/dist-packages (from cryptography)\r\nRequirement already up-to-date: ipaddress in /usr/local/lib/python2.7/dist-packages (from cryptography)\r\nRequirement already up-to-date: cffi>=1.4.1 in /usr/local/lib/python2.7/dist-packages (from cryptography)\r\nRequirement already up-to-date: pycparser in /usr/local/lib/python2.7/dist-packages (from cffi>=1.4.1->cryptography)\r\nInstalling collected packages: cryptography\r\n  Running setup.py install for cryptography ... error\r\n    Complete output from command /usr/bin/python -u -c \"import setuptools, tokenize;__file__='/tmp/pip-build-mKAWjL/cryptography/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\\r\\n', '\\n'), __file__, 'exec'))\" install --record /tmp/pip-0njxcc-record/install-record.txt --single-version-externally-managed --compile:\r\n    Traceback (most recent call last):\r\n      File \"<string>\", line 1, in <module>\r\n      File \"/tmp/pip-build-mKAWjL/cryptography/setup.py\", line 334, in <module>\r\n        **keywords_with_side_effects(sys.argv)\r\n      File \"/usr/lib/python2.7/distutils/core.py\", line 111, in setup\r\n        _setup_distribution = dist = klass(attrs)\r\n      File \"/usr/local/lib/python2.7/dist-packages/setuptools/dist.py\", line 318, in __init__\r\n        _Distribution.__init__(self, attrs)\r\n      File \"/usr/lib/python2.7/distutils/dist.py\", line 287, in __init__\r\n        self.finalize_options()\r\n      File \"/usr/local/lib/python2.7/dist-packages/setuptools/dist.py\", line 376, in finalize_options\r\n        ep.load()(self, ep.name, value)\r\n      File \"/usr/local/lib/python2.7/dist-packages/cffi/setuptools_ext.py\", line 181, in cffi_modules\r\n        add_cffi_module(dist, cffi_module)\r\n      File \"/usr/local/lib/python2.7/dist-packages/cffi/setuptools_ext.py\", line 48, in add_cffi_module\r\n        execfile(build_file_name, mod_vars)\r\n      File \"/usr/local/lib/python2.7/dist-packages/cffi/setuptools_ext.py\", line 24, in execfile\r\n        exec(code, glob, glob)\r\n      File \"src/_cffi_src/build_openssl.py\", line 81, in <module>\r\n        extra_link_args=extra_link_args(compiler_type()),\r\n      File \"/tmp/pip-build-mKAWjL/cryptography/src/_cffi_src/utils.py\", line 61, in build_ffi_for_binding\r\n        extra_link_args=extra_link_args,\r\n      File \"/tmp/pip-build-mKAWjL/cryptography/src/_cffi_src/utils.py\", line 70, in build_ffi\r\n        ffi.cdef(cdef_source)\r\n      File \"/usr/local/lib/python2.7/dist-packages/cffi/api.py\", line 105, in cdef\r\n        self._cdef(csource, override=override, packed=packed)\r\n      File \"/usr/local/lib/python2.7/dist-packages/cffi/api.py\", line 119, in _cdef\r\n        self._parser.parse(csource, override=override, **options)\r\n      File \"/usr/local/lib/python2.7/dist-packages/cffi/cparser.py\", line 299, in parse\r\n        self._internal_parse(csource)\r\n      File \"/usr/local/lib/python2.7/dist-packages/cffi/cparser.py\", line 304, in _internal_parse\r\n        ast, macros, csource = self._parse(csource)\r\n      File \"/usr/local/lib/python2.7/dist-packages/cffi/cparser.py\", line 260, in _parse\r\n        ast = _get_parser().parse(csource)\r\n      File \"/usr/local/lib/python2.7/dist-packages/cffi/cparser.py\", line 40, in _get_parser\r\n        _parser_cache = pycparser.CParser()\r\n      File \"/usr/local/lib/python2.7/dist-packages/pycparser/c_parser.py\", line 87, in __init__\r\n        outputdir=taboutputdir)\r\n      File \"/usr/local/lib/python2.7/dist-packages/pycparser/c_lexer.py\", line 66, in build\r\n        self.lexer = lex.lex(object=self, **kwargs)\r\n      File \"/usr/local/lib/python2.7/dist-packages/pycparser/ply/lex.py\", line 911, in lex\r\n        lexobj.readtab(lextab, ldict)\r\n      File \"/usr/local/lib/python2.7/dist-packages/pycparser/ply/lex.py\", line 233, in readtab\r\n        titem.append((re.compile(pat, lextab._lexreflags | re.VERBOSE), _names_to_funcs(func_name, fdict)))\r\n      File \"/usr/lib/python2.7/re.py\", line 194, in compile\r\n        return _compile(pattern, flags)\r\n      File \"/usr/lib/python2.7/re.py\", line 249, in _compile\r\n        p = sre_compile.compile(pattern, flags)\r\n      File \"/usr/lib/python2.7/sre_compile.py\", line 583, in compile\r\n        \"sorry, but this version only supports 100 named groups\"\r\n    AssertionError: sorry, but this version only supports 100 named groups\r\n    \r\n    ----------------------------------------\r\nCommand \"/usr/bin/python -u -c \"import setuptools, tokenize;__file__='/tmp/pip-build-mKAWjL/cryptography/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\\r\\n', '\\n'), __file__, 'exec'))\" install --record /tmp/pip-0njxcc-record/install-record.txt --single-version-externally-managed --compile\" failed with error code 1 in /tmp/pip-build-mKAWjL/cryptography/\r\n```\r\n\r\nSeems like there are other users having this bug recently as well: https://community.letsencrypt.org/t/certbot-auto-fails-while-setting-up-virtual-environment-complains-about-package-hashes/20529\r\n\r\nI'm using a fresh installation of Ubuntu 16.04, with Python 2.7.12 and pip 8.1.2.\r\n\r\nThanks."},"comment":{"url":"https://api.github.com/repos/pyca/cryptography/issues/comments/251082610","html_url":"https://github.com/pyca/cryptography/issues/3187#issuecomment-251082610","issue_url":"https://api.github.com/repos/pyca/cryptography/issues/3187","id":251082610,"user":{"login":"BTheunissen","id":9065090,"avatar_url":"https://avatars.githubusercontent.com/u/9065090?v=3","gravatar_id":"","url":"https://api.github.com/users/BTheunissen","html_url":"https://github.com/BTheunissen","followers_url":"https://api.github.com/users/BTheunissen/followers","following_url":"https://api.github.com/users/BTheunissen/following{/other_user}","gists_url":"https://api.github.com/users/BTheunissen/gists{/gist_id}","starred_url":"https://api.github.com/users/BTheunissen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/BTheunissen/subscriptions","organizations_url":"https://api.github.com/users/BTheunissen/orgs","repos_url":"https://api.github.com/users/BTheunissen/repos","events_url":"https://api.github.com/users/BTheunissen/events{/privacy}","received_events_url":"https://api.github.com/users/BTheunissen/received_events","type":"User","site_admin":false},"created_at":"2016-10-03T11:18:56Z","updated_at":"2016-10-03T11:18:56Z","body":"@eka Apologies, I did initially but I messed up my original response, now edited."}}
{"actor":{"display_login":"BTheunissen"}}