* [gentoo-commits] repo/gentoo:master commit in: dev-vcs/pre-commit/, dev-vcs/pre-commit/files/
@ 2022-11-13 22:34 Marek Szuba
0 siblings, 0 replies; 2+ messages in thread
From: Marek Szuba @ 2022-11-13 22:34 UTC (permalink / raw
To: gentoo-commits
commit: 96238e309ddbd3f6aca08d59c9db543a67be67c9
Author: Marek Szuba <marecki <AT> gentoo <DOT> org>
AuthorDate: Sun Nov 13 22:26:10 2022 +0000
Commit: Marek Szuba <marecki <AT> gentoo <DOT> org>
CommitDate: Sun Nov 13 22:34:16 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=96238e30
dev-vcs/pre-commit: allow the tests to use the 'file' transport
Needed for the test suite to work against git versions including the fix
for CVE-2022-39253. Should be harmless enough even if upstream gets
compromised and publishes a tarball containing malicious symlinks,
unless someone makes a serious effort to grant Portage a lot of
unnecessary privileges.
Closes: https://bugs.gentoo.org/878781
Signed-off-by: Marek Szuba <marecki <AT> gentoo.org>
...re-commit-2.20.0-tests_git_file_transport.patch | 44 ++++++++++++++++++++++
dev-vcs/pre-commit/pre-commit-2.20.0-r1.ebuild | 1 +
2 files changed, 45 insertions(+)
diff --git a/dev-vcs/pre-commit/files/pre-commit-2.20.0-tests_git_file_transport.patch b/dev-vcs/pre-commit/files/pre-commit-2.20.0-tests_git_file_transport.patch
new file mode 100644
index 000000000000..9845e1311da5
--- /dev/null
+++ b/dev-vcs/pre-commit/files/pre-commit-2.20.0-tests_git_file_transport.patch
@@ -0,0 +1,44 @@
+--- a/tests/commands/install_uninstall_test.py
++++ b/tests/commands/install_uninstall_test.py
+@@ -176,7 +176,7 @@
+ def test_install_in_submodule_and_run(tempdir_factory, store):
+ src_path = make_consuming_repo(tempdir_factory, 'script_hooks_repo')
+ parent_path = git_dir(tempdir_factory)
+- cmd_output('git', 'submodule', 'add', src_path, 'sub', cwd=parent_path)
++ cmd_output('git', '-c', 'protocol.file.allow=always', 'submodule', 'add', src_path, 'sub', cwd=parent_path)
+ git_commit(cwd=parent_path)
+
+ sub_pth = os.path.join(parent_path, 'sub')
+--- a/tests/conftest.py
++++ b/tests/conftest.py
+@@ -90,7 +90,7 @@
+ git_dir_1 = git_dir(tempdir_factory)
+ git_dir_2 = git_dir(tempdir_factory)
+ git_commit(msg=in_conflicting_submodule.__name__, cwd=git_dir_2)
+- cmd_output('git', 'submodule', 'add', git_dir_2, 'sub', cwd=git_dir_1)
++ cmd_output('git', '-c', 'protocol.file.allow=always', 'submodule', 'add', git_dir_2, 'sub', cwd=git_dir_1)
+ with cwd(os.path.join(git_dir_1, 'sub')):
+ _make_conflict()
+ yield
+--- a/tests/repository_test.py
++++ b/tests/repository_test.py
+@@ -443,7 +443,7 @@
+ repo.join('main.go').write(main_go)
+ cmd_output('git', '-C', str(repo), 'init', '.')
+ cmd_output('git', '-C', str(repo), 'add', '.')
+- cmd_output('git', '-C', str(repo), 'submodule', 'add', str(sub), 'sub')
++ cmd_output('git', '-C', str(repo), '-c', 'protocol.file.allow=always', 'submodule', 'add', str(sub), 'sub')
+ git.commit(str(repo))
+
+ config = make_config_from_repo(str(repo))
+--- a/tests/staged_files_only_test.py
++++ b/tests/staged_files_only_test.py
+@@ -207,7 +207,7 @@
+ cmd_output('git', 'add', 'bar')
+ git_commit()
+ cmd_output(
+- 'git', 'submodule', 'add', repo_with_commits.path, 'sub',
++ 'git', '-c', 'protocol.file.allow=always', 'submodule', 'add', repo_with_commits.path, 'sub',
+ )
+ checkout_submodule(repo_with_commits.rev1)
+ cmd_output('git', 'add', 'sub')
diff --git a/dev-vcs/pre-commit/pre-commit-2.20.0-r1.ebuild b/dev-vcs/pre-commit/pre-commit-2.20.0-r1.ebuild
index 5c803594ede5..0661c9a15854 100644
--- a/dev-vcs/pre-commit/pre-commit-2.20.0-r1.ebuild
+++ b/dev-vcs/pre-commit/pre-commit-2.20.0-r1.ebuild
@@ -35,6 +35,7 @@ BDEPEND="test? (
PATCHES=(
"${FILESDIR}"/${PN}-2.20.0-no_toml.patch
+ "${FILESDIR}"/${PN}-2.20.0-tests_git_file_transport.patch
)
DOCS=( CHANGELOG.md CONTRIBUTING.md README.md )
^ permalink raw reply related [flat|nested] 2+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-vcs/pre-commit/, dev-vcs/pre-commit/files/
@ 2023-03-27 20:21 Marek Szuba
0 siblings, 0 replies; 2+ messages in thread
From: Marek Szuba @ 2023-03-27 20:21 UTC (permalink / raw
To: gentoo-commits
commit: 3e2910bf7df5032dd7c05c439ece6cb6858f5292
Author: Marek Szuba <marecki <AT> gentoo <DOT> org>
AuthorDate: Mon Mar 27 20:20:36 2023 +0000
Commit: Marek Szuba <marecki <AT> gentoo <DOT> org>
CommitDate: Mon Mar 27 20:20:36 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3e2910bf
dev-vcs/pre-commit: drop 2.20.0-r1
Signed-off-by: Marek Szuba <marecki <AT> gentoo.org>
dev-vcs/pre-commit/Manifest | 1 -
.../files/pre-commit-2.20.0-no_toml.patch | 81 ----------------------
dev-vcs/pre-commit/pre-commit-2.20.0-r1.ebuild | 57 ---------------
3 files changed, 139 deletions(-)
diff --git a/dev-vcs/pre-commit/Manifest b/dev-vcs/pre-commit/Manifest
index 36eb088f6b44..d6e1dd955c7a 100644
--- a/dev-vcs/pre-commit/Manifest
+++ b/dev-vcs/pre-commit/Manifest
@@ -1,3 +1,2 @@
-DIST pre-commit-2.20.0.gh.tar.gz 266604 BLAKE2B 470f032e6d5bfcdd9ac8ba8f37d4323b601da0c82bcd524ffc575dc688fe81ad326a1f6a8ddd03da6e37130319ee40070c03d9789cd6e0e4b427a1d6e646416e SHA512 b1da558a0e5d8f2f655427089f1d0b11b01ad7513ece7a0b3b67c33529cf3584edba558c78704e6da6ca18876b1d6c0fa8698e01fd7c2439b8d4dc0a93961e52
DIST pre-commit-3.0.4.gh.tar.gz 264952 BLAKE2B 3c45da675d5a1a1fc115db0ef7186c1ec1e5a6d6d9353c5a53dba85a14de2c94bafe0ef9e8d0b04bae55ded81890d726997e695c95889719096205e1b212a237 SHA512 d51aca29b50f67ae42aa70d849939e6af96ff64c6fb214cddbc5a35cacebb8a54a4911110d0615a1a499516fcc2a06bb47d7e11da84ef636c3fcfdc8d2cbe343
DIST pre-commit-3.2.1.gh.tar.gz 267233 BLAKE2B 39843fa9f7529ee38670b3c7ebea1e29b080db47ae3db73d5a218455fd51b7bf86bb1ab1a979946a57bf6417f8a4e7050e8ba34f873bf4d76fa49fa76358964e SHA512 5e2c114049d84eae2ec6cbf123c8e3976d8e9e392a6e04f78d446ad85758a78fb912c0f6070b9c506f8c1bb87e1fd1ecbe763deb8d1430e1d3d8f296dd0cc389
diff --git a/dev-vcs/pre-commit/files/pre-commit-2.20.0-no_toml.patch b/dev-vcs/pre-commit/files/pre-commit-2.20.0-no_toml.patch
deleted file mode 100644
index f7f335c29e14..000000000000
--- a/dev-vcs/pre-commit/files/pre-commit-2.20.0-no_toml.patch
+++ /dev/null
@@ -1,81 +0,0 @@
-Backported upstream commit e703982de45ac64492897b25fa4edbdb8da10e62.
-
---- a/pre_commit/languages/rust.py
-+++ b/pre_commit/languages/rust.py
-@@ -5,8 +5,6 @@
- from typing import Generator
- from typing import Sequence
-
--import toml
--
- import pre_commit.constants as C
- from pre_commit.envcontext import envcontext
- from pre_commit.envcontext import PatchesT
-@@ -38,18 +36,16 @@
-
-
- def _add_dependencies(
-- cargo_toml_path: str,
-+ prefix: Prefix,
- additional_dependencies: set[str],
- ) -> None:
-- with open(cargo_toml_path, 'r+') as f:
-- cargo_toml = toml.load(f)
-- cargo_toml.setdefault('dependencies', {})
-- for dep in additional_dependencies:
-- name, _, spec = dep.partition(':')
-- cargo_toml['dependencies'][name] = spec or '*'
-- f.seek(0)
-- toml.dump(cargo_toml, f)
-- f.truncate()
-+ crates = []
-+ for dep in additional_dependencies:
-+ name, _, spec = dep.partition(':')
-+ crate = f'{name}@{spec or "*"}'
-+ crates.append(crate)
-+
-+ helpers.run_setup_cmd(prefix, ('cargo', 'add', *crates))
-
-
- def install_environment(
-@@ -77,9 +73,6 @@
- }
- lib_deps = set(additional_dependencies) - cli_deps
-
-- if len(lib_deps) > 0:
-- _add_dependencies(prefix.path('Cargo.toml'), lib_deps)
--
- with clean_path_on_failure(directory):
- packages_to_install: set[tuple[str, ...]] = {('--path', '.')}
- for cli_dep in cli_deps:
-@@ -90,6 +83,9 @@
- else:
- packages_to_install.add((package,))
-
-+ if len(lib_deps) > 0:
-+ _add_dependencies(prefix, lib_deps)
-+
- for args in packages_to_install:
- cmd_output_b(
- 'cargo', 'install', '--bins', '--root', directory, *args,
---- a/setup.cfg
-+++ b/setup.cfg
-@@ -27,7 +27,6 @@
- identify>=1.0.0
- nodeenv>=0.11.1
- pyyaml>=5.1
-- toml
- virtualenv>=20.0.8
- importlib-metadata;python_version<"3.8"
- python_requires = >=3.7
---- a/tests/repository_test.py
-+++ b/tests/repository_test.py
-@@ -485,7 +485,7 @@
- path = make_repo(tempdir_factory, 'rust_hooks_repo')
- config = make_config_from_repo(path)
- # A small rust package with no dependencies.
-- deps = ['shellharden:3.1.0']
-+ deps = ['shellharden:3.1.0', 'git-version']
- config['hooks'][0]['additional_dependencies'] = deps
- hook = _get_hook(config, store, 'rust-hook')
- binaries = os.listdir(
diff --git a/dev-vcs/pre-commit/pre-commit-2.20.0-r1.ebuild b/dev-vcs/pre-commit/pre-commit-2.20.0-r1.ebuild
deleted file mode 100644
index d6e3496abf3e..000000000000
--- a/dev-vcs/pre-commit/pre-commit-2.20.0-r1.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{9..11} )
-DISTUTILS_SINGLE_IMPL=1
-DISTUTILS_USE_PEP517=setuptools
-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}.gh.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~hppa ~ppc ~ppc64 x86"
-
-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.0.8[${PYTHON_USEDEP}]
- ')"
-# coreutils requirement: see Bug #885559
-BDEPEND="test? (
- $(python_gen_cond_dep '
- dev-python/pytest-env[${PYTHON_USEDEP}]
- dev-python/re-assert[${PYTHON_USEDEP}]
- ')
- sys-apps/coreutils[-multicall]
-)"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-2.20.0-no_toml.patch
- "${FILESDIR}"/${PN}-2.20.0-tests_git_file_transport.patch
-)
-
-DOCS=( CHANGELOG.md CONTRIBUTING.md README.md )
-
-# The former two 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.
-# The latter 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 and when run manually with tox.
-EPYTEST_DESELECT=(
- tests/languages/
- tests/repository_test.py
- tests/main_test.py::test_all_cmds
- tests/main_test.py::test_try_repo
-)
-
-distutils_enable_tests pytest
^ permalink raw reply related [flat|nested] 2+ messages in thread
end of thread, other threads:[~2023-03-27 20:21 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-03-27 20:21 [gentoo-commits] repo/gentoo:master commit in: dev-vcs/pre-commit/, dev-vcs/pre-commit/files/ Marek Szuba
-- strict thread matches above, loose matches on Subject: below --
2022-11-13 22:34 Marek Szuba
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox