pre-commit-ci / issues

public issues for https://pre-commit.ci
16 stars 3 forks source link

Incompatible with pip-tools #133

Closed saulshanabrook closed 2 years ago

saulshanabrook commented 2 years ago

Hello!

First off, thank you for providing this free CI service! I am using it on a new package (https://github.com/metadsl/python-code-data/pull/45) and am loving how fast it is, and how it automatically commits back changes it makes. That really eliminates a lot of headaches, over having to look at where, say, black failed and fixing it locally.

I have been running into a few issues using the pip-tools pip-compile task with it.

First off, I was having trouble, because it was saying that ensurepip was not found. I managed to fix that by including virtualenv as an additional dependency.

Now, I am having trouble because it is complaining about a virtualenv cache directory not being writeable:

pip-compile..............................................................Failed
- hook id: pip-compile
- exit code: 1

Traceback (most recent call last):
  File "/pc/clone/YRm0_vvnTo-8WMbXmHaE9A/py_env-python3.10/bin/pip-compile", line 8, in <module>
    sys.exit(cli())
  File "/pc/clone/YRm0_vvnTo-8WMbXmHaE9A/py_env-python3.10/lib/python3.10/site-packages/click/core.py", line 1130, in __call__
    return self.main(*args, **kwargs)
  File "/pc/clone/YRm0_vvnTo-8WMbXmHaE9A/py_env-python3.10/lib/python3.10/site-packages/click/core.py", line 1055, in main
    rv = self.invoke(ctx)
  File "/pc/clone/YRm0_vvnTo-8WMbXmHaE9A/py_env-python3.10/lib/python3.10/site-packages/click/core.py", line 1404, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/pc/clone/YRm0_vvnTo-8WMbXmHaE9A/py_env-python3.10/lib/python3.10/site-packages/click/core.py", line 760, in invoke
    return __callback(*args, **kwargs)
  File "/pc/clone/YRm0_vvnTo-8WMbXmHaE9A/py_env-python3.10/lib/python3.10/site-packages/click/decorators.py", line 26, in new_func
    return f(get_current_context(), *args, **kwargs)
  File "/pc/clone/YRm0_vvnTo-8WMbXmHaE9A/py_env-python3.10/lib/python3.10/site-packages/piptools/scripts/compile.py", line 421, in cli
    metadata = project_wheel_metadata(
  File "/pc/clone/YRm0_vvnTo-8WMbXmHaE9A/py_env-python3.10/lib/python3.10/site-packages/build/util.py", line 50, in project_wheel_metadata
    with build.env.IsolatedEnvBuilder() as env:
  File "/pc/clone/YRm0_vvnTo-8WMbXmHaE9A/py_env-python3.10/lib/python3.10/site-packages/build/env.py", line 105, in __enter__
    executable, scripts_dir = _create_isolated_env_virtualenv(self._path)
  File "/pc/clone/YRm0_vvnTo-8WMbXmHaE9A/py_env-python3.10/lib/python3.10/site-packages/build/env.py", line 228, in _create_isolated_env_virtualenv
    result = virtualenv.cli_run(cmd, setup_logging=False)
  File "/pc/clone/YRm0_vvnTo-8WMbXmHaE9A/py_env-python3.10/lib/python3.10/site-packages/virtualenv/run/__init__.py", line 32, in cli_run
    of_session.run()
  File "/pc/clone/YRm0_vvnTo-8WMbXmHaE9A/py_env-python3.10/lib/python3.10/site-packages/virtualenv/run/session.py", line 47, in run
    self._seed()
  File "/pc/clone/YRm0_vvnTo-8WMbXmHaE9A/py_env-python3.10/lib/python3.10/site-packages/virtualenv/run/session.py", line 60, in _seed
    self.seeder.run(self.creator)
  File "/pc/clone/YRm0_vvnTo-8WMbXmHaE9A/py_env-python3.10/lib/python3.10/site-packages/virtualenv/seed/embed/via_app_data/via_app_data.py", line 71, in run
    raise RuntimeError("\n".join(messages))
RuntimeError: failed to build image pip because:
Traceback (most recent call last):
  File "/pc/clone/YRm0_vvnTo-8WMbXmHaE9A/py_env-python3.10/lib/python3.10/site-packages/virtualenv/seed/embed/via_app_data/via_app_data.py", line 56, in _install
    installer.build_image()
  File "/pc/clone/YRm0_vvnTo-8WMbXmHaE9A/py_env-python3.10/lib/python3.10/site-packages/virtualenv/seed/embed/via_app_data/pip_install/symlink.py", line 54, in build_image
    super(SymlinkPipInstall, self).build_image()
  File "/pc/clone/YRm0_vvnTo-8WMbXmHaE9A/py_env-python3.10/lib/python3.10/site-packages/virtualenv/seed/embed/via_app_data/pip_install/base.py", line 52, in build_image
    zip_ref.extractall(str(self._image_dir))
  File "/usr/lib/python3.10/zipfile.py", line 1643, in extractall
    self._extract_member(zipinfo, path, pwd)
  File "/usr/lib/python3.10/zipfile.py", line 1689, in _extract_member
    os.makedirs(upperdirs)
  File "/usr/lib/python3.10/os.py", line 215, in makedirs
    makedirs(head, exist_ok=exist_ok)
  File "/usr/lib/python3.10/os.py", line 225, in makedirs
    mkdir(name, mode)
PermissionError: [Errno 13] Permission denied: '/opt/virtualenv/cache/wheel/3.10/image/1/SymlinkPipInstall/pip-22.1.2-py3-none-any'
asottile commented 2 years ago

network is not allowed at runtime, as such you'll want to utilize skip: