# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 PYTHON_COMPAT=( python3_{11..13} ) PYTHON_REQ_USE="sqlite" DISTUTILS_SINGLE_IMPL="ON" DISTUTILS_USE_PEP517="setuptools" inherit distutils-r1 DESCRIPTION="A framework for managing and maintaining multi-language Git pre-commit hooks" HOMEPAGE="https://pre-commit.com/ https://github.com/pre-commit/pre-commit/" if [[ "${PV}" == *9999* ]] ; then inherit git-r3 EGIT_REPO_URI="https://github.com/${PN}/${PN}.git" else SRC_URI="https://github.com/${PN}/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz" KEYWORDS="~amd64 ~arm64 ~hppa ~ppc ~ppc64 ~x86" fi LICENSE="MIT" SLOT="0" RDEPEND=" dev-vcs/git $(python_gen_cond_dep ' >=dev-python/cfgv-2.0.0[${PYTHON_USEDEP}] >=dev-python/identify-1.0.0[${PYTHON_USEDEP}] >=dev-python/nodeenv-0.11.1[${PYTHON_USEDEP}] >=dev-python/pyyaml-5.1[${PYTHON_USEDEP}] >=dev-python/virtualenv-20.10.0[${PYTHON_USEDEP}] ') " # coreutils requirement, see bug #885559 BDEPEND=" sys-apps/coreutils[-multicall] test? ( $(python_gen_cond_dep ' dev-python/pytest-env[${PYTHON_USEDEP}] dev-python/re-assert[${PYTHON_USEDEP}] ') ) " PATCHES=( "${FILESDIR}/${PN}-3.1.1-tests_git_file_transport.patch" ) EPYTEST_DESELECT=( # All of these require a boatload of dependencies (e.g. Conda, Go, R and # more) in order to run and while some of them do include # "skip if not found" logic, most of them do not. tests/languages/ tests/repository_test.py # These three consistently fail with # Calling "git rev-parse" fails with "fatal: # not a git repository (or any of the parent directories): .git". # including with the sandbox disabled. tests/main_test.py::test_all_cmds tests/main_test.py::test_hook_stage_migration tests/main_test.py::test_try_repo # These two fail if pre-commit is already installed (Bug #894502) tests/commands/install_uninstall_test.py::test_environment_not_sourced tests/commands/install_uninstall_test.py::test_installed_from_venv ) distutils_enable_tests pytest DOCS=( CHANGELOG.md CONTRIBUTING.md README.md )