{"action":"opened","issue":{"url":"https://api.github.com/repos/pypa/readme_renderer/issues/124","repository_url":"https://api.github.com/repos/pypa/readme_renderer","labels_url":"https://api.github.com/repos/pypa/readme_renderer/issues/124/labels{/name}","comments_url":"https://api.github.com/repos/pypa/readme_renderer/issues/124/comments","events_url":"https://api.github.com/repos/pypa/readme_renderer/issues/124/events","html_url":"https://github.com/pypa/readme_renderer/issues/124","id":363253822,"node_id":"MDU6SXNzdWUzNjMyNTM4MjI=","number":124,"title":"Switch to `cmarkgfm` now seems to require a compiler","user":{"login":"raiderrobert","id":806571,"node_id":"MDQ6VXNlcjgwNjU3MQ==","avatar_url":"https://avatars3.githubusercontent.com/u/806571?v=4","gravatar_id":"","url":"https://api.github.com/users/raiderrobert","html_url":"https://github.com/raiderrobert","followers_url":"https://api.github.com/users/raiderrobert/followers","following_url":"https://api.github.com/users/raiderrobert/following{/other_user}","gists_url":"https://api.github.com/users/raiderrobert/gists{/gist_id}","starred_url":"https://api.github.com/users/raiderrobert/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/raiderrobert/subscriptions","organizations_url":"https://api.github.com/users/raiderrobert/orgs","repos_url":"https://api.github.com/users/raiderrobert/repos","events_url":"https://api.github.com/users/raiderrobert/events{/privacy}","received_events_url":"https://api.github.com/users/raiderrobert/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2018-09-24T17:53:55Z","updated_at":"2018-09-24T17:53:55Z","closed_at":null,"author_association":"NONE","body":"The switch to `cmarkgfm` (on this commit, I think https://github.com/pypa/readme_renderer/commit/50d399cd6cc1cf45a780f9e9057b397c0cc14586 ) seems to require a compiler based on the message below.\r\n\r\nI'm running on a docker image without all those things installed, and I expect many others are too. \r\n\r\nERROR\r\n``` shell\r\nUsing Docker executor with image python:3.6-alpine3.8 ...\r\nPulling docker image python:3.6-alpine3.8 ...\r\nUsing docker image sha256:da04299043e37f3ac248a7045993ce5dc84bc08a163713331202b908096dce96 for python:3.6-alpine3.8 ...\r\nRunning on runner-71faaddd-project-42-concurrent-0 via 5eb10032be48...\r\n\r\n***SNIP***\r\n\r\n$ pip install -U setuptools wheel twine\r\nCollecting setuptools\r\n  Downloading https://files.pythonhosted.org/packages/96/06/c8ee69628191285ddddffb277bd5abdf769166e7a14b867c2a172f0175b1/setuptools-40.4.3-py2.py3-none-any.whl (569kB)\r\nRequirement already up-to-date: wheel in /usr/local/lib/python3.6/site-packages (0.31.1)\r\nCollecting twine\r\n  Downloading https://files.pythonhosted.org/packages/13/ad/4738f78528f4c47ef1fd145e929bc123f19b0a424d6847ce618365c2826e/twine-1.12.0-py2.py3-none-any.whl\r\nCollecting pkginfo>=1.4.2 (from twine)\r\n  Downloading https://files.pythonhosted.org/packages/a3/fe/f32a48d48f40a7209be9825fba2566cab92364787cf37de2e08300dd6ce7/pkginfo-1.4.2-py2.py3-none-any.whl\r\nCollecting requests!=2.15,!=2.16,>=2.5.0 (from twine)\r\n  Downloading https://files.pythonhosted.org/packages/65/47/7e02164a2a3db50ed6d8a6ab1d6d60b69c4c3fdf57a284257925dfc12bda/requests-2.19.1-py2.py3-none-any.whl (91kB)\r\nCollecting tqdm>=4.14 (from twine)\r\n  Downloading https://files.pythonhosted.org/packages/79/43/19c9fee28110cd47f73e6bc596394337fe9f3e5825b4de402bbf30b3beb5/tqdm-4.26.0-py2.py3-none-any.whl (43kB)\r\nCollecting readme-renderer>=21.0 (from twine)\r\n  Downloading https://files.pythonhosted.org/packages/a8/a1/6f474ee3be067328e11faa3c6391823ceb687cabd54ac6801c8db346d6e4/readme_renderer-22.0-py2.py3-none-any.whl\r\nCollecting requests-toolbelt>=0.8.0 (from twine)\r\n  Downloading https://files.pythonhosted.org/packages/97/8a/d710f792d6f6ecc089c5e55b66e66c3f2f35516a1ede5a8f54c13350ffb0/requests_toolbelt-0.8.0-py2.py3-none-any.whl (54kB)\r\nCollecting urllib3<1.24,>=1.21.1 (from requests!=2.15,!=2.16,>=2.5.0->twine)\r\n  Downloading https://files.pythonhosted.org/packages/bd/c9/6fdd990019071a4a32a5e7cb78a1d92c53851ef4f56f62a3486e6a7d8ffb/urllib3-1.23-py2.py3-none-any.whl (133kB)\r\nCollecting chardet<3.1.0,>=3.0.2 (from requests!=2.15,!=2.16,>=2.5.0->twine)\r\n  Downloading https://files.pythonhosted.org/packages/bc/a9/01ffebfb562e4274b6487b4bb1ddec7ca55ec7510b22e4c51f14098443b8/chardet-3.0.4-py2.py3-none-any.whl (133kB)\r\nCollecting certifi>=2017.4.17 (from requests!=2.15,!=2.16,>=2.5.0->twine)\r\n  Downloading https://files.pythonhosted.org/packages/df/f7/04fee6ac349e915b82171f8e23cee63644d83663b34c539f7a09aed18f9e/certifi-2018.8.24-py2.py3-none-any.whl (147kB)\r\nCollecting idna<2.8,>=2.5 (from requests!=2.15,!=2.16,>=2.5.0->twine)\r\n  Downloading https://files.pythonhosted.org/packages/4b/2a/0276479a4b3caeb8a8c1af2f8e4355746a97fab05a372e4a2c6a6b876165/idna-2.7-py2.py3-none-any.whl (58kB)\r\nCollecting cmarkgfm>=0.2.0 (from readme-renderer>=21.0->twine)\r\n  Downloading https://files.pythonhosted.org/packages/e2/a3/4021fbc17c5afe7f307d14eba0d6899a8e66b351ab65649b1c89c50a836d/cmarkgfm-0.4.2.tar.gz (133kB)\r\n    Complete output from command python setup.py egg_info:\r\n    \r\n        No working compiler found, or bogus compiler options passed to\r\n        the compiler from Python's standard \"distutils\" module.  See\r\n        the error messages above.  Likely, the problem is not related\r\n        to CFFI but generic to the setup.py of any Python package that\r\n        tries to compile C code.  (Hints: on OS/X 10.8, for errors about\r\n        -mno-fused-madd see http://stackoverflow.com/questions/22313407/\r\n        Otherwise, see https://wiki.python.org/moin/CompLangPython or\r\n        the IRC channel #python on irc.freenode.net.)\r\n    Traceback (most recent call last):\r\n      File \"/usr/local/lib/python3.6/site-packages/setuptools/sandbox.py\", line 154, in save_modules\r\n        yield saved\r\n      File \"/usr/local/lib/python3.6/site-packages/setuptools/sandbox.py\", line 195, in setup_context\r\n        yield\r\n      File \"/usr/local/lib/python3.6/site-packages/setuptools/sandbox.py\", line 250, in run_setup\r\n        _execfile(setup_script, ns)\r\n      File \"/usr/local/lib/python3.6/site-packages/setuptools/sandbox.py\", line 45, in _execfile\r\n        exec(code, globals, locals)\r\n      File \"/tmp/easy_install-qbnzeym8/cffi-1.11.5/setup.py\", line 142, in <module>\r\n      File \"/tmp/easy_install-qbnzeym8/cffi-1.11.5/setup.py\", line 77, in ask_supports_thread\r\n      File \"/tmp/easy_install-qbnzeym8/cffi-1.11.5/setup.py\", line 59, in no_working_compiler_found\r\n        cmdclass={\r\n    SystemExit: 1\r\n    \r\n    During handling of the above exception, another exception occurred:\r\n    \r\n    Traceback (most recent call last):\r\n      File \"/usr/local/lib/python3.6/site-packages/setuptools/command/easy_install.py\", line 1141, in run_setup\r\n        run_setup(setup_script, args)\r\n      File \"/usr/local/lib/python3.6/site-packages/setuptools/sandbox.py\", line 253, in run_setup\r\n        raise\r\n      File \"/usr/local/lib/python3.6/contextlib.py\", line 99, in __exit__\r\n        self.gen.throw(type, value, traceback)\r\n      File \"/usr/local/lib/python3.6/site-packages/setuptools/sandbox.py\", line 195, in setup_context\r\n        yield\r\n      File \"/usr/local/lib/python3.6/contextlib.py\", line 99, in __exit__\r\n        self.gen.throw(type, value, traceback)\r\n      File \"/usr/local/lib/python3.6/site-packages/setuptools/sandbox.py\", line 166, in save_modules\r\n        saved_exc.resume()\r\n      File \"/usr/local/lib/python3.6/site-packages/setuptools/sandbox.py\", line 141, in resume\r\n        six.reraise(type, exc, self._tb)\r\n      File \"/usr/local/lib/python3.6/site-packages/setuptools/_vendor/six.py\", line 685, in reraise\r\n        raise value.with_traceback(tb)\r\n      File \"/usr/local/lib/python3.6/site-packages/setuptools/sandbox.py\", line 154, in save_modules\r\n        yield saved\r\n      File \"/usr/local/lib/python3.6/site-packages/setuptools/sandbox.py\", line 195, in setup_context\r\n        yield\r\n      File \"/usr/local/lib/python3.6/site-packages/setuptools/sandbox.py\", line 250, in run_setup\r\n        _execfile(setup_script, ns)\r\n      File \"/usr/local/lib/python3.6/site-packages/setuptools/sandbox.py\", line 45, in _execfile\r\n        exec(code, globals, locals)\r\n      File \"/tmp/easy_install-qbnzeym8/cffi-1.11.5/setup.py\", line 142, in <module>\r\n      File \"/tmp/easy_install-qbnzeym8/cffi-1.11.5/setup.py\", line 77, in ask_supports_thread\r\n      File \"/tmp/easy_install-qbnzeym8/cffi-1.11.5/setup.py\", line 59, in no_working_compiler_found\r\n        cmdclass={\r\n    SystemExit: 1\r\n    \r\n    During handling of the above exception, another exception occurred:\r\n    \r\n    Traceback (most recent call last):\r\n      File \"<string>\", line 1, in <module>\r\n      File \"/tmp/pip-install-3krl0lcz/cmarkgfm/setup.py\", line 60, in <module>\r\n        'build_ext': custom_build_ext,\r\n      File \"/usr/local/lib/python3.6/site-packages/setuptools/__init__.py\", line 139, in setup\r\n        _install_setup_requires(attrs)\r\n      File \"/usr/local/lib/python3.6/site-packages/setuptools/__init__.py\", line 134, in _install_setup_requires\r\n        dist.fetch_build_eggs(dist.setup_requires)\r\n      File \"/usr/local/lib/python3.6/site-packages/setuptools/dist.py\", line 514, in fetch_build_eggs\r\n        replace_conflicting=True,\r\n      File \"/usr/local/lib/python3.6/site-packages/pkg_resources/__init__.py\", line 777, in resolve\r\n        replace_conflicting=replace_conflicting\r\n      File \"/usr/local/lib/python3.6/site-packages/pkg_resources/__init__.py\", line 1060, in best_match\r\n        return self.obtain(req, installer)\r\n      File \"/usr/local/lib/python3.6/site-packages/pkg_resources/__init__.py\", line 1072, in obtain\r\n        return installer(requirement)\r\n      File \"/usr/local/lib/python3.6/site-packages/setuptools/dist.py\", line 581, in fetch_build_egg\r\n        return cmd.easy_install(req)\r\n      File \"/usr/local/lib/python3.6/site-packages/setuptools/command/easy_install.py\", line 676, in easy_install\r\n        return self.install_item(spec, dist.location, tmpdir, deps)\r\n      File \"/usr/local/lib/python3.6/site-packages/setuptools/command/easy_install.py\", line 702, in install_item\r\n        dists = self.install_eggs(spec, download, tmpdir)\r\n      File \"/usr/local/lib/python3.6/site-packages/setuptools/command/easy_install.py\", line 887, in install_eggs\r\n        return self.build_and_install(setup_script, setup_base)\r\n      File \"/usr/local/lib/python3.6/site-packages/setuptools/command/easy_install.py\", line 1155, in build_and_install\r\n        self.run_setup(setup_script, setup_base, args)\r\n      File \"/usr/local/lib/python3.6/site-packages/setuptools/command/easy_install.py\", line 1143, in run_setup\r\n        raise DistutilsError(\"Setup script exited with %s\" % (v.args[0],))\r\n    distutils.errors.DistutilsError: Setup script exited with 1\r\n    \r\n    ----------------------------------------\r\nCommand \"python setup.py egg_info\" failed with error code 1 in /tmp/pip-install-3krl0lcz/cmarkgfm/\r\nERROR: Job failed: exit code 1\r\n```\r\n\r\n**Solution/Work Around**\r\n\r\nMy current solution is to basically prevent using this commit with `twine` as the previous one worked just fine.\r\n\r\ngitlab.ci config\r\n``` \r\nimage:\r\n  python:3.6-alpine3.8\r\n\r\nstages:\r\n  - deploy\r\n\r\npackage:\r\n  stage: deploy\r\n  only:\r\n    - tags\r\n  script:\r\n    - pip install -r requirements/test.txt\r\n    - pip install -U setuptools wheel \"twine<1.12\"\r\n    - python setup.py bdist_wheel\r\n    - twine upload --repository-url https://pypi.example.com/simple/ dist/*\r\n```\r\n"}}
{"actor":{"display_login":"raiderrobert"}}