From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 80BCF13835B for ; Fri, 16 Apr 2021 15:35:28 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 968A3E0829; Fri, 16 Apr 2021 15:35:27 +0000 (UTC) Received: from smtp.gentoo.org (dev.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 74B89E0829 for ; Fri, 16 Apr 2021 15:35:27 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 173F9340BDE for ; Fri, 16 Apr 2021 15:35:26 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 738CA66A for ; Fri, 16 Apr 2021 15:35:24 +0000 (UTC) From: "Marek Szuba" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Marek Szuba" Message-ID: <1618587315.cfc5aaf1ec3029a7aeb0401b5180619a6201e782.marecki@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: dev-vcs/pre-commit/ X-VCS-Repository: repo/gentoo X-VCS-Files: dev-vcs/pre-commit/Manifest dev-vcs/pre-commit/metadata.xml dev-vcs/pre-commit/pre-commit-2.12.0.ebuild X-VCS-Directories: dev-vcs/pre-commit/ X-VCS-Committer: marecki X-VCS-Committer-Name: Marek Szuba X-VCS-Revision: cfc5aaf1ec3029a7aeb0401b5180619a6201e782 X-VCS-Branch: master Date: Fri, 16 Apr 2021 15:35:24 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: cc7839aa-a1c2-4e95-a168-046be11b8ff1 X-Archives-Hash: 1bddb12e4acc076190a2cf0571fc045a commit: cfc5aaf1ec3029a7aeb0401b5180619a6201e782 Author: Marek Szuba gentoo org> AuthorDate: Fri Apr 16 15:25:14 2021 +0000 Commit: Marek Szuba gentoo org> CommitDate: Fri Apr 16 15:35:15 2021 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cfc5aaf1 dev-vcs/pre-commit: new package With tests regrettably restricted for now - although their vast majority (excluding the language/repository ones, which have a lot of dependencies and do not always handle their absence correctly) passes, there are 9 which fail due to unspecified problems invoking git. Closes: https://bugs.gentoo.org/679014 Signed-off-by: Marek Szuba gentoo.org> dev-vcs/pre-commit/Manifest | 1 + dev-vcs/pre-commit/metadata.xml | 12 ++++++ dev-vcs/pre-commit/pre-commit-2.12.0.ebuild | 67 +++++++++++++++++++++++++++++ 3 files changed, 80 insertions(+) diff --git a/dev-vcs/pre-commit/Manifest b/dev-vcs/pre-commit/Manifest new file mode 100644 index 00000000000..38fb887c07e --- /dev/null +++ b/dev-vcs/pre-commit/Manifest @@ -0,0 +1 @@ +DIST pre-commit-2.12.0.tar.gz 246269 BLAKE2B a697cc0287e0cd5698d78056cd51484115788fc22ab36d951e3f390efad881353ed10a39f04fbfda78c163f2eb67357d6b0050d2a34d79fcb4c3495b9eab6046 SHA512 b65dab5dade2186785b2065d9d73427836a61acc3b2efcf54e74313361dcdb89c7ec829a1f653a4491afbe78d11cd4ed640ca579e7d2ca383daeb9680867812d diff --git a/dev-vcs/pre-commit/metadata.xml b/dev-vcs/pre-commit/metadata.xml new file mode 100644 index 00000000000..cf8278c8169 --- /dev/null +++ b/dev-vcs/pre-commit/metadata.xml @@ -0,0 +1,12 @@ + + + + + marecki@gentoo.org + Marek Szuba + + + pre-commit/pre-commit + pre-commit + + diff --git a/dev-vcs/pre-commit/pre-commit-2.12.0.ebuild b/dev-vcs/pre-commit/pre-commit-2.12.0.ebuild new file mode 100644 index 00000000000..8dc97acfe00 --- /dev/null +++ b/dev-vcs/pre-commit/pre-commit-2.12.0.ebuild @@ -0,0 +1,67 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{8..9} ) +DISTUTILS_SINGLE_IMPL=1 +DISTUTILS_USE_SETUPTOOLS=rdepend +PYTHON_REQ_USE="sqlite" + +inherit distutils-r1 + +DESCRIPTION="A framework for managing and maintaining multi-language Git pre-commit hooks" +HOMEPAGE="https://pre-commit.com/" +SRC_URI="https://github.com/${PN}/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64" + +# TODO: figure out why these tests - all of which invoke git - fail: +# - tests/main_test.py::test_all_cmds[autoupdate,hook-impl,install,install-hooks,migrate-config,run,uninstall] +# "Git failed", not much information beyond that +# - tests/main_test.py::test_try_repo +# Ditto +# - tests/commands/install_uninstall_test.py::test_installed_from_venv +# "git commit" returns 1 instead of 0, again no details +# even with the environment variables normally handled by pytest-env (which we haven't got in the tree yet) +# explicitly declared in python_test(). +#RESTRICT="test" + +RDEPEND="dev-vcs/git + $(python_gen_cond_dep ' + dev-python/cfgv[${PYTHON_USEDEP}] + dev-python/identify[${PYTHON_USEDEP}] + dev-python/nodeenv[${PYTHON_USEDEP}] + dev-python/pyyaml[${PYTHON_USEDEP}] + dev-python/toml[${PYTHON_USEDEP}] + >=dev-python/virtualenv-20.0.8[${PYTHON_USEDEP}] + ')" +BDEPEND="test? ( + $(python_gen_cond_dep 'dev-python/re-assert[${PYTHON_USEDEP}]') +)" + +DOCS=( CHANGELOG.md CONTRIBUTING.md README.md ) + +distutils_enable_tests --install pytest + +src_prepare() { + default + + # These tests 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. + rm -rf tests/languages tests/repository_test.py +} + +python_test() { + # TODO: add pytest-env to the tree so that these can be read from tox.ini + declare -x GIT_AUTHOR_NAME=test + declare -x GIT_COMMITTER_NAME=test + declare -x GIT_AUTHOR_EMAIL=test@example.com + declare -x GIT_COMMITTER_EMAIL=test@example.com + declare -x VIRTUALENV_NO_DOWNLOAD=1 + declare -x PRE_COMMIT_NO_CONCURRENCY=1 + + distutils-r1_python_test +}