Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG] pre-commit hook installation is broken on 3.10+ #3112

Closed
2 tasks done
evilhamsterman opened this issue Aug 30, 2023 · 2 comments · Fixed by #3113
Closed
2 tasks done

[BUG] pre-commit hook installation is broken on 3.10+ #3112

evilhamsterman opened this issue Aug 30, 2023 · 2 comments · Fixed by #3113

Comments

@evilhamsterman
Copy link
Contributor

evilhamsterman commented Aug 30, 2023

Describe the bug
Pre-commit hook installation on newer versions of Python it appears to be due to the pycln hook

pre-commit.log

version information

pre-commit version: 2.21.0
git --version: git version 2.41.0
sys.version:
    3.11.4 (main, Jul 28 2023, 05:02:22) [GCC 12.2.0]
sys.executable: /home/vscode/.cache/pypoetry/virtualenvs/rich-2QMMeOcc-py3.11/bin/python
os.name: posix
sys.platform: linux

error information

An unexpected error has occurred: CalledProcessError: command: ('/home/vscode/.cache/pre-commit/repopym0e_4s/py_env-python3/bin/python', '-mpip', 'install', '.')
return code: 1
stdout:
    Processing /home/vscode/.cache/pre-commit/repopym0e_4s
      Installing build dependencies: started
      Installing build dependencies: finished with status 'done'
      Getting requirements to build wheel: started
      Getting requirements to build wheel: finished with status 'done'
      Preparing metadata (pyproject.toml): started
      Preparing metadata (pyproject.toml): finished with status 'done'
    Collecting libcst<0.4.0,>=0.3.10 (from pycln==1.2.5)
      Using cached libcst-0.3.23-py3-none-any.whl (517 kB)
    Collecting pathspec<0.10.0,>=0.9.0 (from pycln==1.2.5)
      Using cached pathspec-0.9.0-py2.py3-none-any.whl (31 kB)
    Collecting pyyaml<6.0.0,>=5.3.1 (from pycln==1.2.5)
      Using cached PyYAML-5.4.1.tar.gz (175 kB)
      Installing build dependencies: started
      Installing build dependencies: finished with status 'done'
      Getting requirements to build wheel: started
      Getting requirements to build wheel: finished with status 'error'
    
stderr:
      error: subprocess-exited-with-error
      
      × Getting requirements to build wheel did not run successfully.
      │ exit code: 1
      ╰─> [68 lines of output]
          /tmp/pip-build-env-a7onesou/overlay/lib/python3.11/site-packages/setuptools/config/setupcfg.py:293: _DeprecatedConfig: Deprecated config in `setup.cfg`
          !!
          
                  ********************************************************************************
                  The license_file parameter is deprecated, use license_files instead.
          
                  By 2023-Oct-30, you need to update your project and remove deprecated calls
                  or your builds will no longer be supported.
          
                  See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details.
                  ********************************************************************************
          
          !!
            parsed = self.parsers.get(option_name, lambda x: x)(value)
          running egg_info
          writing lib3/PyYAML.egg-info/PKG-INFO
          writing dependency_links to lib3/PyYAML.egg-info/dependency_links.txt
          writing top-level names to lib3/PyYAML.egg-info/top_level.txt
          Traceback (most recent call last):
            File "/home/vscode/.cache/pre-commit/repopym0e_4s/py_env-python3/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
              main()
            File "/home/vscode/.cache/pre-commit/repopym0e_4s/py_env-python3/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main
              json_out['return_val'] = hook(**hook_input['kwargs'])
                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
            File "/home/vscode/.cache/pre-commit/repopym0e_4s/py_env-python3/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 118, in get_requires_for_build_wheel
              return hook(config_settings)
                     ^^^^^^^^^^^^^^^^^^^^^
            File "/tmp/pip-build-env-a7onesou/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 355, in get_requires_for_build_wheel
              return self._get_build_requires(config_settings, requirements=['wheel'])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
            File "/tmp/pip-build-env-a7onesou/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 325, in _get_build_requires
              self.run_setup()
            File "/tmp/pip-build-env-a7onesou/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 341, in run_setup
              exec(code, locals())
            File "<string>", line 271, in <module>
            File "/tmp/pip-build-env-a7onesou/overlay/lib/python3.11/site-packages/setuptools/__init__.py", line 107, in setup
              return distutils.core.setup(**attrs)
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
            File "/tmp/pip-build-env-a7onesou/overlay/lib/python3.11/site-packages/setuptools/_distutils/core.py", line 185, in setup
              return run_commands(dist)
                     ^^^^^^^^^^^^^^^^^^
            File "/tmp/pip-build-env-a7onesou/overlay/lib/python3.11/site-packages/setuptools/_distutils/core.py", line 201, in run_commands
              dist.run_commands()
            File "/tmp/pip-build-env-a7onesou/overlay/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 969, in run_commands
              self.run_command(cmd)
            File "/tmp/pip-build-env-a7onesou/overlay/lib/python3.11/site-packages/setuptools/dist.py", line 1233, in run_command
              super().run_command(command)
            File "/tmp/pip-build-env-a7onesou/overlay/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
              cmd_obj.run()
            File "/tmp/pip-build-env-a7onesou/overlay/lib/python3.11/site-packages/setuptools/command/egg_info.py", line 319, in run
              self.find_sources()
            File "/tmp/pip-build-env-a7onesou/overlay/lib/python3.11/site-packages/setuptools/command/egg_info.py", line 327, in find_sources
              mm.run()
            File "/tmp/pip-build-env-a7onesou/overlay/lib/python3.11/site-packages/setuptools/command/egg_info.py", line 549, in run
              self.add_defaults()
            File "/tmp/pip-build-env-a7onesou/overlay/lib/python3.11/site-packages/setuptools/command/egg_info.py", line 587, in add_defaults
              sdist.add_defaults(self)
            File "/tmp/pip-build-env-a7onesou/overlay/lib/python3.11/site-packages/setuptools/command/sdist.py", line 113, in add_defaults
              super().add_defaults()
            File "/tmp/pip-build-env-a7onesou/overlay/lib/python3.11/site-packages/setuptools/_distutils/command/sdist.py", line 251, in add_defaults
              self._add_defaults_ext()
            File "/tmp/pip-build-env-a7onesou/overlay/lib/python3.11/site-packages/setuptools/_distutils/command/sdist.py", line 336, in _add_defaults_ext
              self.filelist.extend(build_ext.get_source_files())
                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
            File "<string>", line 201, in get_source_files
            File "/tmp/pip-build-env-a7onesou/overlay/lib/python3.11/site-packages/setuptools/_distutils/cmd.py", line 107, in __getattr__
              raise AttributeError(attr)
          AttributeError: cython_sources
          [end of output]
      
      note: This error originates from a subprocess, and is likely not a problem with pip.
    error: subprocess-exited-with-error
    
    × Getting requirements to build wheel did not run successfully.
    │ exit code: 1
    ╰─> See above for output.
    
    note: This error originates from a subprocess, and is likely not a problem with pip.
    
Traceback (most recent call last):
  File "/home/vscode/.cache/pypoetry/virtualenvs/rich-2QMMeOcc-py3.11/lib/python3.11/site-packages/pre_commit/error_handler.py", line 73, in error_handler
    yield
  File "/home/vscode/.cache/pypoetry/virtualenvs/rich-2QMMeOcc-py3.11/lib/python3.11/site-packages/pre_commit/main.py", line 390, in main
    return install_hooks(args.config, store)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/vscode/.cache/pypoetry/virtualenvs/rich-2QMMeOcc-py3.11/lib/python3.11/site-packages/pre_commit/commands/install_uninstall.py", line 146, in install_hooks
    install_hook_envs(all_hooks(load_config(config_file), store), store)
  File "/home/vscode/.cache/pypoetry/virtualenvs/rich-2QMMeOcc-py3.11/lib/python3.11/site-packages/pre_commit/repository.py", line 223, in install_hook_envs
    _hook_install(hook)
  File "/home/vscode/.cache/pypoetry/virtualenvs/rich-2QMMeOcc-py3.11/lib/python3.11/site-packages/pre_commit/repository.py", line 79, in _hook_install
    lang.install_environment(
  File "/home/vscode/.cache/pypoetry/virtualenvs/rich-2QMMeOcc-py3.11/lib/python3.11/site-packages/pre_commit/languages/python.py", line 221, in install_environment
    helpers.run_setup_cmd(prefix, install_cmd)
  File "/home/vscode/.cache/pypoetry/virtualenvs/rich-2QMMeOcc-py3.11/lib/python3.11/site-packages/pre_commit/languages/helpers.py", line 48, in run_setup_cmd
    cmd_output_b(*cmd, cwd=prefix.prefix_dir, **kwargs)
  File "/home/vscode/.cache/pypoetry/virtualenvs/rich-2QMMeOcc-py3.11/lib/python3.11/site-packages/pre_commit/util.py", line 143, in cmd_output_b
    raise CalledProcessError(returncode, cmd, stdout_b, stderr_b)
pre_commit.util.CalledProcessError: command: ('/home/vscode/.cache/pre-commit/repopym0e_4s/py_env-python3/bin/python', '-mpip', 'install', '.')
return code: 1
stdout:
    Processing /home/vscode/.cache/pre-commit/repopym0e_4s
      Installing build dependencies: started
      Installing build dependencies: finished with status 'done'
      Getting requirements to build wheel: started
      Getting requirements to build wheel: finished with status 'done'
      Preparing metadata (pyproject.toml): started
      Preparing metadata (pyproject.toml): finished with status 'done'
    Collecting libcst<0.4.0,>=0.3.10 (from pycln==1.2.5)
      Using cached libcst-0.3.23-py3-none-any.whl (517 kB)
    Collecting pathspec<0.10.0,>=0.9.0 (from pycln==1.2.5)
      Using cached pathspec-0.9.0-py2.py3-none-any.whl (31 kB)
    Collecting pyyaml<6.0.0,>=5.3.1 (from pycln==1.2.5)
      Using cached PyYAML-5.4.1.tar.gz (175 kB)
      Installing build dependencies: started
      Installing build dependencies: finished with status 'done'
      Getting requirements to build wheel: started
      Getting requirements to build wheel: finished with status 'error'
    
stderr:
      error: subprocess-exited-with-error
      
      × Getting requirements to build wheel did not run successfully.
      │ exit code: 1
      ╰─> [68 lines of output]
          /tmp/pip-build-env-a7onesou/overlay/lib/python3.11/site-packages/setuptools/config/setupcfg.py:293: _DeprecatedConfig: Deprecated config in `setup.cfg`
          !!
          
                  ********************************************************************************
                  The license_file parameter is deprecated, use license_files instead.
          
                  By 2023-Oct-30, you need to update your project and remove deprecated calls
                  or your builds will no longer be supported.
          
                  See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details.
                  ********************************************************************************
          
          !!
            parsed = self.parsers.get(option_name, lambda x: x)(value)
          running egg_info
          writing lib3/PyYAML.egg-info/PKG-INFO
          writing dependency_links to lib3/PyYAML.egg-info/dependency_links.txt
          writing top-level names to lib3/PyYAML.egg-info/top_level.txt
          Traceback (most recent call last):
            File "/home/vscode/.cache/pre-commit/repopym0e_4s/py_env-python3/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
              main()
            File "/home/vscode/.cache/pre-commit/repopym0e_4s/py_env-python3/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main
              json_out['return_val'] = hook(**hook_input['kwargs'])
                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
            File "/home/vscode/.cache/pre-commit/repopym0e_4s/py_env-python3/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 118, in get_requires_for_build_wheel
              return hook(config_settings)
                     ^^^^^^^^^^^^^^^^^^^^^
            File "/tmp/pip-build-env-a7onesou/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 355, in get_requires_for_build_wheel
              return self._get_build_requires(config_settings, requirements=['wheel'])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
            File "/tmp/pip-build-env-a7onesou/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 325, in _get_build_requires
              self.run_setup()
            File "/tmp/pip-build-env-a7onesou/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 341, in run_setup
              exec(code, locals())
            File "<string>", line 271, in <module>
            File "/tmp/pip-build-env-a7onesou/overlay/lib/python3.11/site-packages/setuptools/__init__.py", line 107, in setup
              return distutils.core.setup(**attrs)
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
            File "/tmp/pip-build-env-a7onesou/overlay/lib/python3.11/site-packages/setuptools/_distutils/core.py", line 185, in setup
              return run_commands(dist)
                     ^^^^^^^^^^^^^^^^^^
            File "/tmp/pip-build-env-a7onesou/overlay/lib/python3.11/site-packages/setuptools/_distutils/core.py", line 201, in run_commands
              dist.run_commands()
            File "/tmp/pip-build-env-a7onesou/overlay/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 969, in run_commands
              self.run_command(cmd)
            File "/tmp/pip-build-env-a7onesou/overlay/lib/python3.11/site-packages/setuptools/dist.py", line 1233, in run_command
              super().run_command(command)
            File "/tmp/pip-build-env-a7onesou/overlay/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
              cmd_obj.run()
            File "/tmp/pip-build-env-a7onesou/overlay/lib/python3.11/site-packages/setuptools/command/egg_info.py", line 319, in run
              self.find_sources()
            File "/tmp/pip-build-env-a7onesou/overlay/lib/python3.11/site-packages/setuptools/command/egg_info.py", line 327, in find_sources
              mm.run()
            File "/tmp/pip-build-env-a7onesou/overlay/lib/python3.11/site-packages/setuptools/command/egg_info.py", line 549, in run
              self.add_defaults()
            File "/tmp/pip-build-env-a7onesou/overlay/lib/python3.11/site-packages/setuptools/command/egg_info.py", line 587, in add_defaults
              sdist.add_defaults(self)
            File "/tmp/pip-build-env-a7onesou/overlay/lib/python3.11/site-packages/setuptools/command/sdist.py", line 113, in add_defaults
              super().add_defaults()
            File "/tmp/pip-build-env-a7onesou/overlay/lib/python3.11/site-packages/setuptools/_distutils/command/sdist.py", line 251, in add_defaults
              self._add_defaults_ext()
            File "/tmp/pip-build-env-a7onesou/overlay/lib/python3.11/site-packages/setuptools/_distutils/command/sdist.py", line 336, in _add_defaults_ext
              self.filelist.extend(build_ext.get_source_files())
                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
            File "<string>", line 201, in get_source_files
            File "/tmp/pip-build-env-a7onesou/overlay/lib/python3.11/site-packages/setuptools/_distutils/cmd.py", line 107, in __getattr__
              raise AttributeError(attr)
          AttributeError: cython_sources
          [end of output]
      
      note: This error originates from a subprocess, and is likely not a problem with pip.
    error: subprocess-exited-with-error
    
    × Getting requirements to build wheel did not run successfully.
    │ exit code: 1
    ╰─> See above for output.
    
    note: This error originates from a subprocess, and is likely not a problem with pip.
</details>



**Platform**
I've tried on Mac and Linux Python 3.9, 3.10, 3.11. The hooks fail to install on 3.10 and 3.11

@github-actions
Copy link

Thank you for your issue. Give us a little time to review it.

PS. You might want to check the FAQ if you haven't done so already.

This is an automated reply, generated by FAQtory

darrenburns pushed a commit that referenced this issue Nov 7, 2023
Copy link

github-actions bot commented Nov 7, 2023

I hope we solved your problem.

If you like using Rich, you might also enjoy Textual

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant