commit 6f664259628d1729dad9b8619e5ec9e03e1b8b6d Author: tigro Date: Mon Jan 15 20:34:21 2024 +0300 import rust-bat-0.24.0-1.el9 diff --git a/.rust-bat.metadata b/.rust-bat.metadata new file mode 100644 index 0000000..e69de29 diff --git a/SOURCES/0001-port-from-path_abs-to-path-absolutize.patch b/SOURCES/0001-port-from-path_abs-to-path-absolutize.patch new file mode 100644 index 0000000..f1315aa --- /dev/null +++ b/SOURCES/0001-port-from-path_abs-to-path-absolutize.patch @@ -0,0 +1,39 @@ +From 6639f0061b39a21ae2e3bcfca21c7915319039db Mon Sep 17 00:00:00 2001 +From: Fabio Valentini +Date: Thu, 21 Jul 2022 10:45:26 +0200 +Subject: [PATCH] port from path_abs to path-absolutize + +--- + src/assets.rs | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/src/assets.rs b/src/assets.rs +index 8126843..f578d70 100644 +--- a/src/assets.rs ++++ b/src/assets.rs +@@ -1,3 +1,4 @@ ++use std::borrow::Cow; + use std::ffi::OsStr; + use std::fs; + use std::path::Path; +@@ -7,7 +8,7 @@ use once_cell::unsync::OnceCell; + use syntect::highlighting::Theme; + use syntect::parsing::{SyntaxReference, SyntaxSet}; + +-use path_abs::PathAbs; ++use path_absolutize::Absolutize; + + use crate::error::*; + use crate::input::{InputReader, OpenedInput}; +@@ -224,7 +225,7 @@ impl HighlightingAssets { + let path = input.path(); + let path_syntax = if let Some(path) = path { + self.get_syntax_for_path( +- PathAbs::new(path).map_or_else(|_| path.to_owned(), |p| p.as_path().to_path_buf()), ++ path.absolutize().unwrap_or(Cow::Borrowed(path)), + mapping, + ) + } else { +-- +2.37.1 + diff --git a/SOURCES/bat-0.24.0.crate b/SOURCES/bat-0.24.0.crate new file mode 100644 index 0000000..3c3426d Binary files /dev/null and b/SOURCES/bat-0.24.0.crate differ diff --git a/SOURCES/bat-fix-metadata-auto.diff b/SOURCES/bat-fix-metadata-auto.diff new file mode 100644 index 0000000..9331cfb --- /dev/null +++ b/SOURCES/bat-fix-metadata-auto.diff @@ -0,0 +1,15 @@ +--- bat-0.24.0/Cargo.toml 1970-01-01T00:00:01+00:00 ++++ bat-0.24.0/Cargo.toml 2023-10-29T19:40:03.835368+00:00 +@@ -199,12 +199,6 @@ + regex-fancy = ["syntect/regex-fancy"] + regex-onig = ["syntect/regex-onig"] + +-[target."cfg(target_os = \"macos\")".dependencies.home] +-version = "0.5.4" +- +-[target."cfg(target_os = \"macos\")".dependencies.plist] +-version = "1.4.3" +- + [target."cfg(unix)".dev-dependencies.nix] + version = "0.26.2" + features = ["term"] diff --git a/SOURCES/bat-fix-metadata.diff b/SOURCES/bat-fix-metadata.diff new file mode 100644 index 0000000..92dd922 --- /dev/null +++ b/SOURCES/bat-fix-metadata.diff @@ -0,0 +1,28 @@ +--- bat-0.24.0/Cargo.toml 1970-01-01T00:00:01+00:00 ++++ bat-0.24.0/Cargo.toml 2023-10-29T19:40:36.874627+00:00 +@@ -30,7 +30,6 @@ + [profile.release] + lto = true + codegen-units = 1 +-strip = true + + [dependencies.ansi_colours] + version = "^1.2" +@@ -91,12 +90,11 @@ + version = "1.18" + + [dependencies.os_str_bytes] +-version = "~6.4" +-optional = true +- +-[dependencies.path_abs] +-version = "0.5" +-default-features = false ++version = "~6.6" ++optional = true ++ ++[dependencies.path-absolutize] ++version = "3" + + [dependencies.regex] + version = "1.8.3" diff --git a/SPECS/rust-bat.spec b/SPECS/rust-bat.spec new file mode 100644 index 0000000..1bb070d --- /dev/null +++ b/SPECS/rust-bat.spec @@ -0,0 +1,512 @@ +## START: Set by rpmautospec +## (rpmautospec version 0.3.5) +## RPMAUTOSPEC: autorelease, autochangelog +%define autorelease(e:s:pb:n) %{?-p:0.}%{lua: + release_number = 1; + base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}")); + print(release_number + base_release_number - 1); +}%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}} +## END: Set by rpmautospec + +# Generated by rust2rpm 24 +%bcond_without check + +%global crate bat + +Name: rust-bat +Version: 0.24.0 +Release: %autorelease +Summary: Cat(1) clone with wings + +License: MIT OR Apache-2.0 +URL: https://crates.io/crates/bat +Source: %{crates_source} +# Automatically generated patch to strip foreign dependencies +Patch: bat-fix-metadata-auto.diff +# Manually created patch for downstream crate metadata changes +# * remove compiler settings that are incompatible with RPM packaging +# * Port from path_abs to path-absolutize: +# https://github.com/sharkdp/bat/pull/1025 +# * Bump os_str_bytes from 6.4 to 6.6 +Patch: bat-fix-metadata.diff +Patch: 0001-port-from-path_abs-to-path-absolutize.patch + +BuildRequires: rust-packaging >= 23 + +%global _description %{expand: +A cat(1) clone with wings.} + +%description %{_description} + +%package -n %{crate} +Summary: %{summary} +# (Apache-2.0 OR MIT) AND BSD-3-Clause +# (MIT OR Apache-2.0) AND BSD-3-Clause AND GPL-2.0-only WITH GCC-exception-2.0 AND MIT +# (MIT OR Apache-2.0) AND Unicode-DFS-2016 +# 0BSD OR MIT OR Apache-2.0 +# Apache-2.0 +# Apache-2.0 OR BSL-1.0 +# Apache-2.0 OR MIT +# Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT +# BSD-2-Clause +# LGPL-3.0-or-later +# MIT +# MIT OR Apache-2.0 +# MIT OR Apache-2.0 OR Zlib +# MIT OR Zlib OR Apache-2.0 +# Unlicense OR MIT +# Zlib OR Apache-2.0 OR MIT +License: Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND CC0-1.0 AND GPL-2.0-only WITH GCC-exception-2.0 AND LGPL-3.0-or-later AND MIT AND Unicode-DFS-2016 AND (0BSD OR MIT OR Apache-2.0) AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND (MIT OR Apache-2.0 OR Zlib) AND (Unlicense OR MIT) +# LICENSE.dependencies contains a full license breakdown + +%description -n %{crate} %{_description} + +%files -n %{crate} +%license LICENSE-APACHE +%license LICENSE-MIT +%license NOTICE +%license LICENSE.dependencies +%doc CHANGELOG.md +%doc CONTRIBUTING.md +%doc README.md +%{_bindir}/bat +%{_mandir}/man1/bat.1* +%{bash_completions_dir}/bat.bash +%{fish_completions_dir}/bat.fish +%{zsh_completions_dir}/_bat + +%package devel +Summary: %{summary} +BuildArch: noarch + +%description devel %{_description} + +This package contains library source intended for building other packages which +use the "%{crate}" crate. + +%files devel +%license %{crate_instdir}/LICENSE-APACHE +%license %{crate_instdir}/LICENSE-MIT +%license %{crate_instdir}/NOTICE +%doc %{crate_instdir}/CHANGELOG.md +%doc %{crate_instdir}/CONTRIBUTING.md +%doc %{crate_instdir}/README.md +%{crate_instdir}/ + +%package -n %{name}+default-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+default-devel %{_description} + +This package contains library source intended for building other packages which +use the "default" feature of the "%{crate}" crate. + +%files -n %{name}+default-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+application-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+application-devel %{_description} + +This package contains library source intended for building other packages which +use the "application" feature of the "%{crate}" crate. + +%files -n %{name}+application-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+bugreport-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+bugreport-devel %{_description} + +This package contains library source intended for building other packages which +use the "bugreport" feature of the "%{crate}" crate. + +%files -n %{name}+bugreport-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+build-assets-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+build-assets-devel %{_description} + +This package contains library source intended for building other packages which +use the "build-assets" feature of the "%{crate}" crate. + +%files -n %{name}+build-assets-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+clap-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+clap-devel %{_description} + +This package contains library source intended for building other packages which +use the "clap" feature of the "%{crate}" crate. + +%files -n %{name}+clap-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+etcetera-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+etcetera-devel %{_description} + +This package contains library source intended for building other packages which +use the "etcetera" feature of the "%{crate}" crate. + +%files -n %{name}+etcetera-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+git-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+git-devel %{_description} + +This package contains library source intended for building other packages which +use the "git" feature of the "%{crate}" crate. + +%files -n %{name}+git-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+git2-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+git2-devel %{_description} + +This package contains library source intended for building other packages which +use the "git2" feature of the "%{crate}" crate. + +%files -n %{name}+git2-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+grep-cli-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+grep-cli-devel %{_description} + +This package contains library source intended for building other packages which +use the "grep-cli" feature of the "%{crate}" crate. + +%files -n %{name}+grep-cli-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+lessopen-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+lessopen-devel %{_description} + +This package contains library source intended for building other packages which +use the "lessopen" feature of the "%{crate}" crate. + +%files -n %{name}+lessopen-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+minimal-application-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+minimal-application-devel %{_description} + +This package contains library source intended for building other packages which +use the "minimal-application" feature of the "%{crate}" crate. + +%files -n %{name}+minimal-application-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+os_str_bytes-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+os_str_bytes-devel %{_description} + +This package contains library source intended for building other packages which +use the "os_str_bytes" feature of the "%{crate}" crate. + +%files -n %{name}+os_str_bytes-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+paging-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+paging-devel %{_description} + +This package contains library source intended for building other packages which +use the "paging" feature of the "%{crate}" crate. + +%files -n %{name}+paging-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+regex-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+regex-devel %{_description} + +This package contains library source intended for building other packages which +use the "regex" feature of the "%{crate}" crate. + +%files -n %{name}+regex-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+regex-fancy-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+regex-fancy-devel %{_description} + +This package contains library source intended for building other packages which +use the "regex-fancy" feature of the "%{crate}" crate. + +%files -n %{name}+regex-fancy-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+regex-onig-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+regex-onig-devel %{_description} + +This package contains library source intended for building other packages which +use the "regex-onig" feature of the "%{crate}" crate. + +%files -n %{name}+regex-onig-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+run_script-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+run_script-devel %{_description} + +This package contains library source intended for building other packages which +use the "run_script" feature of the "%{crate}" crate. + +%files -n %{name}+run_script-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+shell-words-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+shell-words-devel %{_description} + +This package contains library source intended for building other packages which +use the "shell-words" feature of the "%{crate}" crate. + +%files -n %{name}+shell-words-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+walkdir-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+walkdir-devel %{_description} + +This package contains library source intended for building other packages which +use the "walkdir" feature of the "%{crate}" crate. + +%files -n %{name}+walkdir-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+wild-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+wild-devel %{_description} + +This package contains library source intended for building other packages which +use the "wild" feature of the "%{crate}" crate. + +%files -n %{name}+wild-devel +%ghost %{crate_instdir}/Cargo.toml + +%prep +%autosetup -n %{crate}-%{version_no_tilde} -p1 +%cargo_prep + +%generate_buildrequires +%cargo_generate_buildrequires + +%build +%cargo_build +%{cargo_license_summary} +%{cargo_license} > LICENSE.dependencies + +%install +%cargo_install +# install man page +install -Dpm0644 target/release/build/%{crate}-*/out/assets/manual/bat.1 \ + -t %{buildroot}%{_mandir}/man1/ +# install shell completions +install -Dpm0644 target/release/build/%{crate}-*/out/assets/completions/bat.bash \ + %{buildroot}/%{bash_completions_dir}/bat.bash +install -Dpm0644 target/release/build/%{crate}-*/out/assets/completions/bat.fish \ + %{buildroot}/%{fish_completions_dir}/bat.fish +install -Dpm0644 target/release/build/%{crate}-*/out/assets/completions/bat.zsh \ + %{buildroot}/%{zsh_completions_dir}/_bat + +%if %{with check} +%check +%cargo_test +%endif + +%changelog +* Mon Jan 15 2024 Arkady L. Shane - 0.24.0-1 +- Rebuilt for MSVSphere 9.3 + +* Tue Nov 21 2023 Michel Lind - 0.24.0-1 +- Update to 0.24.0 + +* Tue Nov 21 2023 Fabio Valentini - 0.23.0-1 +- Update to version 0.23.0; Fixes RHBZ#2124711 + +* Tue Nov 21 2023 Fabio Valentini - 0.21.0-8 +- Revert "Maintain compatibility with rust-packaging v21 on EPEL 9" + +* Mon Jan 30 2023 Fabio Valentini - 0.21.0-7 +- Maintain compatibility with rust-packaging v21 on EPEL 9 + +* Sat Jan 28 2023 Fabio Valentini - 0.21.0-6 +- Rebuild for CVE-2022-24765 and CVE-2022-29187 in libgit2 + +* Fri Jan 20 2023 Fedora Release Engineering - 0.21.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Wed Dec 21 2022 Fabio Valentini - 0.21.0-4 +- Disable doctests on ppc64le to work around a compiler crash on LLVM 15 + +* Sat Jul 23 2022 Fedora Release Engineering - 0.21.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Thu Jul 21 2022 Fabio Valentini - 0.21.0-2 +- Disable doctests on armv7hl to work around a compiler crash on LLVM 14 + +* Thu Jul 21 2022 Fabio Valentini - 0.21.0-1 +- Update to version 0.21.0; Fixes RHBZ#2038592 + +* Wed Feb 16 2022 Maxwell G - 0.18.3-5 +- Add missing shell completions + +* Tue Feb 15 2022 Zbigniew Jędrzejewski-Szmek - 0.18.3-4 +- Rebuild with package notes + +* Fri Jan 21 2022 Fedora Release Engineering - 0.18.3-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Sun Nov 28 2021 Igor Raits - 0.18.3-2 +- Rebuild for libgit2 1.3.x + +* Sun Nov 14 2021 Robert-André Mauchin - 0.18.3-1 +- Bump assert_cmd to 2.0.0 + +* Fri Jul 23 2021 Fedora Release Engineering - 0.17.1-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Wed Jan 27 2021 Fedora Release Engineering - 0.17.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Tue Dec 29 14:21:41 CET 2020 Igor Raits - 0.17.1-3 +- Rebuild against libgit2 1.1.x + +* Mon Dec 28 13:27:34 CET 2020 Igor Raits - 0.17.1-2 +- Rebuild + +* Sat Dec 12 2020 Fabio Valentini - 0.17.1-1 +- Update to version 0.17.1. +- Remove features with missing dependencies (regex-fancy). +- Fixes RHBZ#1900814 + +* Tue Oct 27 2020 Fabio Valentini - 0.16.0-1 +- Update to version 0.16.0. + +* Sun Aug 16 15:01:11 GMT 2020 Igor Raits - 0.15.4-3 +- Rebuild + +* Wed Jul 29 2020 Fedora Release Engineering - 0.15.4-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Sun Jun 21 10:43:31 CEST 2020 Igor Raits - 0.15.4-1 +- Update to 0.15.4 + +* Mon May 25 18:52:24 CEST 2020 Igor Raits - 0.15.2-1 +- Update to 0.15.2 + +* Tue May 12 2020 Josh Stone - 0.15.1-1 +- Update to 0.15.1 + +* Sat May 02 10:58:34 CEST 2020 Igor Raits - 0.15.0-2 +- Update console to 0.11.2 + +* Mon Apr 27 08:12:43 CEST 2020 Igor Raits - 0.15.0-1 +- Update to 0.15.0 + +* Thu Apr 23 2020 Josh Stone - 0.14.0-1 +- Update to 0.14.0 + +* Wed Apr 15 2020 Igor Raits - 0.13.0-2 +- Rebuild for libgit2 1.0.0 + +* Sun Mar 22 14:24:13 CET 2020 Igor Raits - 0.13.0-1 +- Update to 0.13.0 + +* Thu Mar 19 11:31:13 CET 2020 Igor Raits - 0.12.1-5 +- Update git2 to 0.13 + +* Tue Mar 03 2020 Josh Stone - 0.12.1-4 +- Bump git2 to 0.12 + +* Thu Jan 30 2020 Fedora Release Engineering - 0.12.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Wed Dec 25 09:50:18 CET 2019 Igor Gnatenko - 0.12.1-2 +- Bump git2 to 0.11 + +* Tue Dec 10 2019 Josh Stone - 0.12.1-1 +- Update to 0.12.1 + +* Fri Jul 26 2019 Fedora Release Engineering - 0.11.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Sun Jul 14 18:28:38 CEST 2019 Igor Gnatenko - 0.11.0-3 +- Update dirs to 2.0 + +* Fri Jun 07 2019 Josh Stone - 0.11.0-2 +- Bump git2 to 0.9 + +* Sat Jun 01 2019 Josh Stone - 0.11.0-1 +- Update to 0.11.0 + +* Sun Feb 10 2019 Igor Gnatenko - 0.10.0-1 +- Update to 0.10.0 + +* Sat Feb 02 2019 Fedora Release Engineering - 0.9.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Tue Nov 13 2018 Josh Stone - 0.9.0-1 +- Update to 0.9.0 + +* Sun Nov 04 2018 Igor Gnatenko - 0.8.0-1 +- Update to 0.8.0 + +* Thu Oct 04 2018 Igor Gnatenko - 0.7.1-1 +- Update to 0.7.1 + +* Thu Sep 13 2018 Igor Gnatenko - 0.7.0-1 +- Update to 0.7.0 + +* Mon Sep 03 2018 Igor Gnatenko - 0.6.1-1 +- Initial package +