commit: 6b068ac8419da703ac1d3804ce5b1201113ef1cf Author: Armas Spann <zappel <AT> simple-co <DOT> de> AuthorDate: Mon Jul 7 21:55:05 2025 +0000 Commit: Maciej Barć <xgqt <AT> gentoo <DOT> org> CommitDate: Mon Jul 7 22:33:24 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6b068ac8
dev-vcs/git-cliff: new package, add 2.9.1 dev-vcs/git-cliff: new package, add 2.9.1 This PR aims to get `git-cliff` inside the official Gentoo portage-tree. `git-cliff` is a Git extension for automated changelog creation. As such a helper might be a benefit for staying close to conventional-commits as well as keeping an organized Git structure. This extension might help or support one or another to get rid of annoying changelog issues. This PR adds the following ***ebuild***: * `git-cliff-2.9.1.ebuild`: latest "tagged" version And the following ***patches***: * `git-cliff-2.9.1-disable_repo_tests.patch`: disables git-repository related tests (not available inside sandbox) * `git-cliff-2.9.1-silence_run_os_command_test.patch`: disables failing OS-command test (not available inside sandbox) Adding myself as the maintainer of this ebuild. Signed-off-by: Armas Spann <zappel <AT> simple-co.de> Part-of: https://github.com/gentoo/gentoo/pull/42924 Closes: https://github.com/gentoo/gentoo/pull/42924 Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org> dev-vcs/git-cliff/Manifest | 2 + .../files/git-cliff-2.9.1-disable_repo_tests.patch | 66 ++++++++++++++++++++++ ...t-cliff-2.9.1-silence_run_os_command_test.patch | 11 ++++ dev-vcs/git-cliff/git-cliff-2.9.1.ebuild | 57 +++++++++++++++++++ dev-vcs/git-cliff/metadata.xml | 18 ++++++ 5 files changed, 154 insertions(+) diff --git a/dev-vcs/git-cliff/Manifest b/dev-vcs/git-cliff/Manifest new file mode 100644 index 000000000000..1cf474d0a65c --- /dev/null +++ b/dev-vcs/git-cliff/Manifest @@ -0,0 +1,2 @@ +DIST git-cliff-2.9.1-crates.tar.xz 36436428 BLAKE2B 949df9967197a44e9fd8121045c10fdd35bedf327224ce83913b10fa0cfbecebbc80d05fbe07513ce15c18db93e1a634a31a7139716b67b17c1fbd7b40563976 SHA512 e89212b41c3afee380f96d1b0903e4f5d18436f425f7d9484b19550ad8daa46f1e65753c77d96d97c32ff7cef507ba01df34fba6dd16ead68efc20d844018a73 +DIST git-cliff-2.9.1.gh.tar.gz 13057370 BLAKE2B bb5082e14a3a8d8ad890f2e79f414875ffd91b95bca949a50c6c5d45c68c4bb47208f7519cd745c3b94678721b907cf5c56c7fb949cd458561841b521a804f74 SHA512 97a460852911f1cb65896de8075aeebbf52e2f1fd55421b8ac379ff1c59d4b8eaf9c5481fc6dcb3da14d877920f6c126f686fed7b4e9dfcc6a02bc36702c6f33 diff --git a/dev-vcs/git-cliff/files/git-cliff-2.9.1-disable_repo_tests.patch b/dev-vcs/git-cliff/files/git-cliff-2.9.1-disable_repo_tests.patch new file mode 100644 index 000000000000..67776320fb3c --- /dev/null +++ b/dev-vcs/git-cliff/files/git-cliff-2.9.1-disable_repo_tests.patch @@ -0,0 +1,66 @@ +--- a/git-cliff-core/src/repo.rs ++++ b/git-cliff-core/src/repo.rs +@@ -584,6 +584,7 @@ + Ok(()) + } + ++ #[ignore] + #[test] + fn get_latest_commit() -> Result<()> { + let repository = get_repository()?; +@@ -594,6 +595,7 @@ + Ok(()) + } + ++ #[ignore] + #[test] + fn commit_search() -> Result<()> { + let repository = get_repository()?; +@@ -603,6 +605,7 @@ + Ok(()) + } + ++ #[ignore] + #[test] + fn get_latest_tag() -> Result<()> { + let repository = get_repository()?; +@@ -615,6 +618,7 @@ + Ok(()) + } + ++ #[ignore] + #[test] + fn git_tags() -> Result<()> { + let repository = get_repository()?; +@@ -656,6 +660,7 @@ + Ok(()) + } + ++ #[ignore] + #[test] + fn git_upstream_remote() -> Result<()> { + let repository = get_repository()?; +@@ -673,6 +678,7 @@ + Ok(()) + } + ++ #[ignore] + #[test] + fn resolves_existing_tag_with_name_and_message() -> Result<()> { + let repository = get_repository()?; +@@ -690,6 +696,7 @@ + Ok(()) + } + ++ #[ignore] + #[test] + fn resolves_tag_when_no_tags_exist() -> Result<()> { + let repository = get_repository()?; +@@ -699,6 +706,7 @@ + Ok(()) + } + ++ #[ignore] + #[test] + fn includes_root_commit() -> Result<()> { + let repository = get_repository()?; diff --git a/dev-vcs/git-cliff/files/git-cliff-2.9.1-silence_run_os_command_test.patch b/dev-vcs/git-cliff/files/git-cliff-2.9.1-silence_run_os_command_test.patch new file mode 100644 index 000000000000..1d8175a3a946 --- /dev/null +++ b/dev-vcs/git-cliff/files/git-cliff-2.9.1-silence_run_os_command_test.patch @@ -0,0 +1,11 @@ +--- a/git-cliff-core/src/command.rs ++++ b/git-cliff-core/src/command.rs +@@ -89,7 +89,7 @@ + run("rev", Some(env!("CARGO_PKG_NAME").to_string()), vec![])?.trim() + ); + assert_eq!("testing", run("echo 'testing'", None, vec![])?.trim()); +- assert!(run("some_command", None, vec![]).is_err()); ++ assert!(run("false", None, vec![]).is_err()); + Ok(()) + } + } diff --git a/dev-vcs/git-cliff/git-cliff-2.9.1.ebuild b/dev-vcs/git-cliff/git-cliff-2.9.1.ebuild new file mode 100644 index 000000000000..70720047ba44 --- /dev/null +++ b/dev-vcs/git-cliff/git-cliff-2.9.1.ebuild @@ -0,0 +1,57 @@ +# Copyright 2024-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +RUST_MIN_VER="1.85.0" + +inherit cargo shell-completion + +DESCRIPTION="A highly customizable changelog generator" +HOMEPAGE="https://git-cliff.org/" +SRC_URI=" + https://github.com/orhun/${PN}/archive/refs/tags/v${PV}.tar.gz + -> ${P}.gh.tar.gz + https://dev.gentoo.org/~xgqt/distfiles/deps/${P}-crates.tar.xz +" + +LICENSE="Apache-2.0 MIT BSD-2 BSD Boost-1.0 CDDL ISC MPL-2.0 Unicode-3.0 + Unicode-DFS-2016 ZLIB" +SLOT="0" +KEYWORDS="~amd64" + +PATCHES=( + # disables tests against local (.)git repo + "${FILESDIR}/${P}-disable_repo_tests.patch" + # silences a "command not found" error (QA) + "${FILESDIR}/${P}-silence_run_os_command_test.patch" +) + +src_compile() { + cargo_src_compile + + local target_dir="${S}/$(cargo_target_dir)" + + # generating man pages + mkdir "${target_dir}/man" + OUT_DIR="${target_dir}/man" "${target_dir}/"${PN}-mangen + + # generating completion scripts + mkdir "${target_dir}/completion" + OUT_DIR="${target_dir}/completion" "${target_dir}/"${PN}-completions +} + +src_install() { + local release_dir="${S}/$(cargo_target_dir)" + + insinto /usr/bin + dobin "${release_dir}/"${PN} + + doman "${release_dir}/man/"${PN}.1 + + newbashcomp "${release_dir}/completion/${PN}.bash" ${PN} + newfishcomp "${release_dir}/completion/${PN}.fish" ${PN} + + einstalldocs + dodoc -r "${S}"/examples/ +} diff --git a/dev-vcs/git-cliff/metadata.xml b/dev-vcs/git-cliff/metadata.xml new file mode 100644 index 000000000000..6814b95fb91c --- /dev/null +++ b/dev-vcs/git-cliff/metadata.xml @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>[email protected]</email> + <name>Armas Spann</name> + </maintainer> + <maintainer type="project" proxied="proxy"> + <email>[email protected]</email> + <name>Proxy Maintainers</name> + </maintainer> + <upstream> + <remote-id type="github">orhun/git-cliff</remote-id> + <doc>https://git-cliff.org/docs/</doc> + <bugs-to>https://github.com/orhun/git-cliff/issues</bugs-to> + </upstream> + <longdescription>A highly customizable Changelog Generator that follows Conventional Commit specifications</longdescription> +</pkgmetadata>
