commit c40ab378bbccf2f7713e2b4da6af68ebb3712f67 Author: MSVSphere Packaging Team Date: Fri Dec 20 15:03:35 2024 +0300 import rust-cbindgen-0.27.0-1.el10 diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..cc03b31 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +SOURCES/cbindgen-0.27.0.crate diff --git a/.rust-cbindgen.metadata b/.rust-cbindgen.metadata new file mode 100644 index 0000000..3dac69c --- /dev/null +++ b/.rust-cbindgen.metadata @@ -0,0 +1 @@ +69a5da46ac3b45b0bfb97730042b729bc857a453 SOURCES/cbindgen-0.27.0.crate diff --git a/SOURCES/0001-backport-support-for-clap-v4.patch b/SOURCES/0001-backport-support-for-clap-v4.patch new file mode 100644 index 0000000..1aa02fc --- /dev/null +++ b/SOURCES/0001-backport-support-for-clap-v4.patch @@ -0,0 +1,378 @@ +From 3c866c32ec9135731d29066a980ca4edb692201d Mon Sep 17 00:00:00 2001 +From: Fabio Valentini +Date: Mon, 30 Sep 2024 14:55:09 +0200 +Subject: [PATCH] backport support for clap v4 + +--- + src/bindgen/builder.rs | 2 +- + src/bindgen/cargo/cargo.rs | 2 +- + src/main.rs | 120 ++++++++++++++++++++----------------- + tests/depfile.rs | 12 +++- + 4 files changed, 76 insertions(+), 60 deletions(-) + +diff --git a/src/bindgen/builder.rs b/src/bindgen/builder.rs +index a0328b4..4d2eee1 100644 +--- a/src/bindgen/builder.rs ++++ b/src/bindgen/builder.rs +@@ -375,7 +375,7 @@ impl Builder { + } + + if let Some((lib_dir, binding_lib_name)) = self.lib.clone() { +- let lockfile = self.lockfile.as_ref().and_then(|p| p.to_str()); ++ let lockfile = self.lockfile.as_deref(); + + let cargo = Cargo::load( + &lib_dir, +diff --git a/src/bindgen/cargo/cargo.rs b/src/bindgen/cargo/cargo.rs +index 69cf938..542f8e3 100644 +--- a/src/bindgen/cargo/cargo.rs ++++ b/src/bindgen/cargo/cargo.rs +@@ -36,7 +36,7 @@ impl Cargo { + /// need to be parsed. + pub(crate) fn load( + crate_dir: &Path, +- lock_file: Option<&str>, ++ lock_file: Option<&Path>, + binding_crate_name: Option<&str>, + use_cargo_lock: bool, + clean: bool, +diff --git a/src/main.rs b/src/main.rs +index eb78a08..cd4f271 100644 +--- a/src/main.rs ++++ b/src/main.rs +@@ -20,60 +20,58 @@ extern crate quote; + extern crate syn; + extern crate toml; + +-use clap::{Arg, ArgMatches, Command}; ++use clap::{value_parser, Arg, ArgAction, ArgMatches, Command}; + + mod bindgen; + mod logging; + +-use crate::bindgen::{Bindings, Builder, Cargo, Config, Error, Profile, Style}; ++use bindgen::{Bindings, Builder, Cargo, Config, Error}; + + fn apply_config_overrides(config: &mut Config, matches: &ArgMatches) { + // We allow specifying a language to override the config default. This is + // used by compile-tests. +- if let Some(lang) = matches.value_of("lang") { +- config.language = match lang.parse() { +- Ok(lang) => lang, +- Err(reason) => { +- error!("{}", reason); +- return; +- } ++ match matches.try_get_one::("lang") { ++ Ok(Some(lang)) => { ++ config.language = bindgen::Language::from_str(lang).unwrap(); ++ } ++ Err(reason) => { ++ error!("{}", reason); ++ return; + } ++ _ => (), + } + +- if matches.is_present("cpp-compat") { ++ if matches.get_flag("cpp-compat") { + config.cpp_compat = true; + } + +- if matches.is_present("only-target-dependencies") { ++ if matches.get_flag("only-target-dependencies") { + config.only_target_dependencies = true; + } + +- if let Some(style) = matches.value_of("style") { +- config.style = match style { +- "Both" => Style::Both, +- "both" => Style::Both, +- "Tag" => Style::Tag, +- "tag" => Style::Tag, +- "Type" => Style::Type, +- "type" => Style::Type, +- _ => { +- error!("Unknown style specified."); +- return; +- } ++ match matches.try_get_one::("style") { ++ Ok(Some(style)) => { ++ config.style = bindgen::Style::from_str(style).unwrap(); ++ } ++ Err(_) => { ++ error!("Unknown style specified."); ++ return; + } ++ _ => (), + } + +- if let Some(profile) = matches.value_of("profile") { +- config.parse.expand.profile = match Profile::from_str(profile) { +- Ok(p) => p, +- Err(e) => { +- error!("{}", e); +- return; +- } ++ match matches.try_get_one::("profile") { ++ Ok(Some(profile)) => { ++ config.parse.expand.profile = bindgen::Profile::from_str(profile).unwrap(); ++ } ++ Err(e) => { ++ error!("{}", e); ++ return; + } ++ _ => (), + } + +- if matches.is_present("d") { ++ if matches.get_flag("d") { + config.parse.parse_deps = true; + } + } +@@ -82,7 +80,7 @@ fn load_bindings(input: &Path, matches: &ArgMatches) -> Result + // If a file is specified then we load it as a single source + if !input.is_dir() { + // Load any config specified or search in the input directory +- let mut config = match matches.value_of("config") { ++ let mut config = match matches.get_one::("config") { + Some(c) => Config::from_file(c).unwrap(), + None => Config::from_root_or_default( + input +@@ -102,16 +100,16 @@ fn load_bindings(input: &Path, matches: &ArgMatches) -> Result + // We have to load a whole crate, so we use cargo to gather metadata + let lib = Cargo::load( + input, +- matches.value_of("lockfile"), +- matches.value_of("crate"), ++ matches.get_one::("lockfile").map(|s| s.as_path()), ++ matches.get_one::("crate").map(|s| s.as_str()), + true, +- matches.is_present("clean"), +- matches.is_present("only-target-dependencies"), +- matches.value_of("metadata").map(Path::new), ++ matches.get_flag("clean"), ++ matches.get_flag("only-target-dependencies"), ++ matches.get_one::("metadata").map(Path::new), + )?; + + // Load any config specified or search in the binding crate directory +- let mut config = match matches.value_of("config") { ++ let mut config = match matches.get_one::("config") { + Some(c) => Config::from_file(c).unwrap(), + None => { + let binding_crate_dir = lib.find_crate_dir(&lib.binding_crate_ref()); +@@ -140,12 +138,13 @@ fn main() { + .arg( + Arg::new("v") + .short('v') +- .multiple_occurrences(true) ++ .action(ArgAction::Count) + .help("Enable verbose logging"), + ) + .arg( + Arg::new("verify") + .long("verify") ++ .action(ArgAction::SetTrue) + .help("Generate bindings and compare it to the existing bindings file and error if they are different"), + ) + .arg( +@@ -153,6 +152,7 @@ fn main() { + .short('c') + .long("config") + .value_name("PATH") ++ .value_parser(value_parser!(PathBuf)) + .help("Specify path to a `cbindgen.toml` config to use"), + ) + .arg( +@@ -161,16 +161,18 @@ fn main() { + .long("lang") + .value_name("LANGUAGE") + .help("Specify the language to output bindings in") +- .possible_values(["c++", "C++", "c", "C", "cython", "Cython"]), ++ .value_parser(["c++", "C++", "c", "C", "cython", "Cython"]), + ) + .arg( + Arg::new("cpp-compat") + .long("cpp-compat") ++ .action(ArgAction::SetTrue) + .help("Whether to add C++ compatibility to generated C bindings") + ) + .arg( + Arg::new("only-target-dependencies") + .long("only-target-dependencies") ++ .action(ArgAction::SetTrue) + .help("Only fetch dependencies needed by the target platform. \ + The target platform defaults to the host platform; set TARGET to override.") + ) +@@ -180,17 +182,19 @@ fn main() { + .long("style") + .value_name("STYLE") + .help("Specify the declaration style to use for bindings") +- .possible_values(["Both", "both", "Tag", "tag", "Type", "type"]), ++ .value_parser(["Both", "both", "Tag", "tag", "Type", "type"]), + ) + .arg( + Arg::new("d") + .short('d') + .long("parse-dependencies") ++ .action(ArgAction::SetTrue) + .help("Whether to parse dependencies when generating bindings"), + ) + .arg( + Arg::new("clean") + .long("clean") ++ .action(ArgAction::SetTrue) + .help( + "Whether to use a new temporary directory for expanding macros. \ + Affects performance, but might be required in certain build processes.") +@@ -203,6 +207,7 @@ fn main() { + In general this is the folder where the Cargo.toml file of \ + source Rust library resides.") + .required(false) ++ .value_parser(value_parser!(PathBuf)) + .index(1), + ) + .arg( +@@ -221,6 +226,7 @@ fn main() { + .long("output") + .value_name("PATH") + .help("The file to output the bindings to") ++ .value_parser(value_parser!(PathBuf)) + .required(false), + ) + .arg( +@@ -232,6 +238,7 @@ fn main() { + is not specified, the Cargo.lock file is searched for in the \ + same folder as the Cargo.toml file. This option is useful for \ + projects that use workspaces.") ++ .value_parser(value_parser!(PathBuf)) + .required(false), + ) + .arg( +@@ -247,6 +254,7 @@ fn main() { + `cargo metadata --all-features --format-version 1 \ + --manifest-path " + ) ++ .value_parser(value_parser!(PathBuf)) + .required(false), + ) + .arg( +@@ -257,12 +265,13 @@ fn main() { + "Specify the profile to use when expanding macros. \ + Has no effect otherwise." + ) +- .possible_values(["Debug", "debug", "Release", "release"]), ++ .value_parser(["Debug", "debug", "Release", "release"]), + ) + .arg( + Arg::new("quiet") + .short('q') + .long("quiet") ++ .action(ArgAction::SetTrue) + .help("Report errors only (overrides verbosity options).") + .required(false), + ) +@@ -270,10 +279,9 @@ fn main() { + Arg::new("depfile") + .value_name("PATH") + .long("depfile") +- .takes_value(true) +- .min_values(1) +- .max_values(1) ++ .num_args(1) + .required(false) ++ .value_parser(value_parser!(PathBuf)) + .help("Generate a depfile at the given Path listing the source files \ + cbindgen traversed when generating the bindings. Useful when \ + integrating cbindgen into 3rd party build-systems. \ +@@ -282,7 +290,7 @@ fn main() { + ) + .get_matches(); + +- if !matches.is_present("out") && matches.is_present("verify") { ++ if matches.get_flag("verify") && !matches.contains_id("out") { + error!( + "Cannot verify bindings against `stdout`, please specify a file to compare against." + ); +@@ -290,10 +298,10 @@ fn main() { + } + + // Initialize logging +- if matches.is_present("quiet") { ++ if matches.get_flag("quiet") { + logging::ErrorLogger::init().unwrap(); + } else { +- match matches.occurrences_of("v") { ++ match matches.get_count("v") { + 0 => logging::WarnLogger::init().unwrap(), + 1 => logging::InfoLogger::init().unwrap(), + _ => logging::TraceLogger::init().unwrap(), +@@ -301,10 +309,10 @@ fn main() { + } + + // Find the input directory +- let input = match matches.value_of("INPUT") { +- Some(input) => PathBuf::from(input), +- None => env::current_dir().unwrap(), +- }; ++ let input: PathBuf = matches ++ .get_one("INPUT") ++ .cloned() ++ .unwrap_or_else(|| env::current_dir().unwrap()); + + let bindings = match load_bindings(&input, &matches) { + Ok(bindings) => bindings, +@@ -316,15 +324,15 @@ fn main() { + }; + + // Write the bindings file +- match matches.value_of("out") { ++ match matches.get_one::("out") { + Some(file) => { + let changed = bindings.write_to_file(file); + +- if matches.is_present("verify") && changed { +- error!("Bindings changed: {}", file); ++ if matches.get_flag("verify") && changed { ++ error!("Bindings changed: {}", file.display()); + std::process::exit(2); + } +- if let Some(depfile) = matches.value_of("depfile") { ++ if let Some(depfile) = matches.get_one("depfile") { + bindings.generate_depfile(file, depfile) + } + } +diff --git a/tests/depfile.rs b/tests/depfile.rs +index 7d629f3..512f69b 100644 +--- a/tests/depfile.rs ++++ b/tests/depfile.rs +@@ -44,7 +44,11 @@ fn test_project(project_path: &str) { + let mut cmake_build = Command::new("cmake"); + cmake_build.arg("--build").arg(&build_dir); + let output = cmake_build.output().expect("Failed to execute process"); +- assert!(output.status.success(), "Building test project failed"); ++ assert!( ++ output.status.success(), ++ "Building test project failed: {:?}", ++ output ++ ); + let out_str = String::from_utf8(output.stdout).unwrap(); + assert!( + out_str.contains("Running cbindgen"), +@@ -85,7 +89,11 @@ fn test_project(project_path: &str) { + assert_eq!(dep_list, expected_dep_list); + + let output = cmake_build.output().expect("Failed to execute process"); +- assert!(output.status.success(), "Building test project failed"); ++ assert!( ++ output.status.success(), ++ "Building test project failed: {:?}", ++ output ++ ); + let out_str = String::from_utf8(output.stdout).unwrap(); + assert!( + !out_str.contains("Running cbindgen"), +-- +2.46.2 + diff --git a/SOURCES/cbindgen-fix-metadata.diff b/SOURCES/cbindgen-fix-metadata.diff new file mode 100644 index 0000000..5f72750 --- /dev/null +++ b/SOURCES/cbindgen-fix-metadata.diff @@ -0,0 +1,20 @@ +--- cbindgen-0.27.0/Cargo.toml 1970-01-01T00:00:01+00:00 ++++ cbindgen-0.27.0/Cargo.toml 2024-10-09T17:50:19.136975+00:00 +@@ -63,7 +63,7 @@ + optional = true + + [dependencies.heck] +-version = "0.4" ++version = "0.5" + + [dependencies.indexmap] + version = "2.1.0" +@@ -107,7 +107,7 @@ + version = "1.4.0" + + [dev-dependencies.serial_test] +-version = "2.0.0" ++version = "3.1" + default-features = false + + [features] diff --git a/SOURCES/rust2rpm.toml b/SOURCES/rust2rpm.toml new file mode 100644 index 0000000..908dd30 --- /dev/null +++ b/SOURCES/rust2rpm.toml @@ -0,0 +1,13 @@ +[package] +cargo-toml-patch-comments = [ + "bump heck dependency from 0.4 to 0.5", + "bump serial_test dev-dependency from 2.0 to 3.1", +] + +[requires] +test = [ + "/usr/bin/cython", + "/usr/bin/gcc", + "/usr/bin/g++", +] + diff --git a/SPECS/rust-cbindgen.spec b/SPECS/rust-cbindgen.spec new file mode 100644 index 0000000..b471c0f --- /dev/null +++ b/SPECS/rust-cbindgen.spec @@ -0,0 +1,315 @@ +## START: Set by rpmautospec +## (rpmautospec version 0.7.2) +## 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 26 +%bcond_without check + +%global crate cbindgen + +Name: rust-cbindgen +Version: 0.27.0 +Release: %autorelease +Summary: Tool for generating C bindings to Rust code + +License: MPL-2.0 +URL: https://crates.io/crates/cbindgen +Source: %{crates_source} +# Manually created patch for downstream crate metadata changes +# * bump heck dependency from 0.4 to 0.5 +# * bump serial_test dev-dependency from 2.0 to 3.1 +Patch: cbindgen-fix-metadata.diff + +BuildRequires: cargo-rpm-macros >= 24 +%if %{with check} +BuildRequires: /usr/bin/cython +BuildRequires: /usr/bin/gcc +BuildRequires: /usr/bin/g++ +%endif + +%global _description %{expand: +A tool for generating C bindings to Rust code.} + +%description %{_description} + +%package -n %{crate} +Summary: %{summary} +# (MIT OR Apache-2.0) AND Unicode-DFS-2016 +# Apache-2.0 OR BSL-1.0 +# Apache-2.0 OR MIT +# Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT +# MIT +# MIT OR Apache-2.0 +# MPL-2.0 +# Unlicense OR MIT +License: MPL-2.0 AND MIT AND Unicode-DFS-2016 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 (Unlicense OR MIT) +# LICENSE.dependencies contains a full license breakdown + +%description -n %{crate} %{_description} + +%files -n %{crate} +%license LICENSE +%license LICENSE.dependencies +%doc README.md +%doc contributing.md +%doc docs.md +%doc internals.md +%{_bindir}/cbindgen + +%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 +%doc %{crate_instdir}/README.md +%doc %{crate_instdir}/contributing.md +%doc %{crate_instdir}/docs.md +%doc %{crate_instdir}/internals.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}+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 + +%prep +%autosetup -n %{crate}-%{version} -p1 +%cargo_prep + +%generate_buildrequires +%cargo_generate_buildrequires + +%build +%cargo_build +%{cargo_license_summary} +%{cargo_license} > LICENSE.dependencies + +%install +%cargo_install + +%if %{with check} +%check +%cargo_test +%endif + +%changelog +* Fri Dec 20 2024 MSVSphere Packaging Team - 0.27.0-1 +- Rebuilt for MSVSphere 10 + +## START: Generated by rpmautospec +* Wed Oct 09 2024 Fabio Valentini - 0.27.0-1 +- Update to version 0.27.0; Fixes RHBZ#2303946 + +* Mon Sep 30 2024 Fabio Valentini - 0.26.0-5 +- Port to clap v4, bump to heck v0.5 and serial_test v3.1 + +* Fri Jul 19 2024 Fedora Release Engineering - 0.26.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Thu May 23 2024 Fabio Valentini - 0.26.0-3 +- Rebuild with Rust 1.78 to fix incomplete debuginfo and backtraces + +* Fri Jan 26 2024 Fedora Release Engineering - 0.26.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Sat Nov 11 2023 Fabio Valentini - 0.26.0-1 +- Update to version 0.26.0; Fixes RHBZ#2234876 + +* Sun Jul 23 2023 Fabio Valentini - 0.24.5-3 +- Disable tests on Fedora 39+ (broken with Cython 3.0.0) + +* Fri Jul 21 2023 Fedora Release Engineering - 0.24.5-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Mon May 29 2023 Fabio Valentini - 0.24.5-1 +- Update to version 0.24.5; Fixes RHBZ#2210810 + +* Sat Feb 04 2023 Fabio Valentini - 0.24.3-3 +- Rebuild for fixed frame pointer compiler flags in Rust RPM macros + +* Fri Jan 20 2023 Fedora Release Engineering - 0.24.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Thu Aug 25 2022 Fabio Valentini - 0.24.3-1 +- Update to version 0.24.3; Fixes RHBZ#2068608 + +* Sat Jul 23 2022 Fedora Release Engineering - 0.20.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Tue Feb 15 2022 Zbigniew Jędrzejewski-Szmek - 0.20.0-3 +- Rebuild with package notes + +* Fri Jan 21 2022 Fedora Release Engineering - 0.20.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Thu Aug 26 2021 Fabio Valentini - 0.20.0-1 +- Update to version 0.20.0; Fixes RHBZ#1909565 + +* Fri Jul 23 2021 Fedora Release Engineering - 0.17.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Mon Mar 29 2021 Fabio Valentini - 0.17.0-1 +- Update to version 0.17.0. + +* Wed Jan 27 2021 Fedora Release Engineering - 0.15.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Mon Dec 28 13:28:28 CET 2020 Igor Raits - 0.15.0-2 +- Rebuild + +* Sun Nov 29 2020 Fabio Valentini - 0.15.0-1 +- Update to version 0.15.0. +- Fixes RHBZ#1885957 + +* Wed Sep 23 2020 Fabio Valentini - 0.14.6-1 +- Update to version 0.14.6. + +* Wed Aug 26 2020 Josh Stone - 0.14.4-1 +- Update to 0.14.4 + +* Wed Jul 29 2020 Fedora Release Engineering - 0.14.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Fri Jun 26 2020 Josh Stone - 0.14.3-1 +- Update to 0.14.3 + +* Tue May 05 2020 Josh Stone - 0.14.2-1 +- Update to 0.14.2 + +* Fri Apr 17 2020 Josh Stone - 0.14.1-1 +- Update to 0.14.1 + +* Sun Mar 29 10:15:09 CEST 2020 Igor Raits - 0.13.2-1 +- Update to 0.13.2 + +* Thu Feb 27 2020 Josh Stone - 0.13.1-1 +- Update to 0.13.1 + +* Thu Jan 30 2020 Fedora Release Engineering - 0.12.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Thu Jan 16 2020 Josh Stone - 0.12.2-1 +- Update to 0.12.2 + +* Tue Dec 17 2019 Josh Stone - 0.12.0-1 +- Update to 0.12.0 + +* Sun Dec 15 13:00:19 CET 2019 Igor Gnatenko - 0.11.1-1 +- Update to 0.11.1 + +* Fri Dec 06 10:45:49 CET 2019 Igor Gnatenko - 0.11.0-1 +- Update to 0.11.0 + +* Fri Nov 15 2019 Josh Stone - 0.9.1-1 +- Update to 0.9.1 + +* Fri Jul 26 2019 Fedora Release Engineering - 0.8.7-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Tue May 14 07:50:25 CEST 2019 Igor Gnatenko - 0.8.7-1 +- Update to 0.8.7 + +* Tue May 07 14:58:53 CEST 2019 Igor Gnatenko - 0.8.6-1 +- Update to 0.8.6 + +* Thu May 02 2019 Josh Stone - 0.8.4-1 +- Update to 0.8.4 + +* Tue Apr 02 2019 Josh Stone - 0.8.3-1 +- Update to 0.8.3 + +* Thu Mar 07 2019 Josh Stone - 0.8.2-1 +- Update to 0.8.2 + +* Thu Feb 21 2019 Josh Stone - 0.8.0-1 +- Update to 0.8.0 + +* Sat Feb 02 2019 Fedora Release Engineering - 0.7.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Sat Jan 26 2019 Josh Stone - 0.7.1-1 +- Update to 0.7.1 + +* Thu Jan 24 2019 Josh Stone - 0.7.0-1 +- Update to 0.7.0 + +* Mon Jan 07 2019 Josh Stone - 0.6.8-1 +- Update to 0.6.8 + +* Fri Nov 02 2018 Igor Gnatenko - 0.6.7-1 +- Update to 0.6.7 + +* Mon Oct 22 2018 Josh Stone - 0.6.6-1 +- Update to 0.6.6 + +* Thu Oct 04 2018 Josh Stone - 0.6.4-1 +- Update to 0.6.4 + +* Sat Sep 15 2018 Igor Gnatenko - 0.6.3-2 +- Add cbindgen back + +* Wed Sep 05 2018 Igor Gnatenko - 0.6.3-1 +- Update to 0.6.3 + +* Sat Jul 28 2018 Igor Gnatenko - 0.6.1-3 +- Drop cbindgen executable + +* Sat Jul 28 2018 Igor Gnatenko - 0.6.1-2 +- Rebuild to trigger tests + +* Thu Jul 26 2018 Igor Gnatenko - 0.6.1-1 +- Update to 0.6.1 + +* Sat Jul 14 2018 Fedora Release Engineering - 0.4.3-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Fri Feb 09 2018 Fedora Release Engineering - 0.4.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Thu Feb 01 2018 Josh Stone - 0.4.3-1 +- Update to 0.4.3 + +* Tue Jan 30 2018 Igor Gnatenko - 0.4.2-1 +- Update to 0.4.2 + +* Mon Jan 08 2018 Igor Gnatenko - 0.4.0-2 +- Rebuild for rust-packaging v5 + +* Fri Jan 05 2018 Igor Gnatenko - 0.4.0-1 +- Update to 0.4.0 + +* Mon Jan 01 2018 Igor Gnatenko - 0.3.3-1 +- Initial package + +## END: Generated by rpmautospec