From 8fece6cb29f250fbcdb2fc8ffe275ec2c9c57332 Mon Sep 17 00:00:00 2001 From: Aumetra Weisman Date: Sun, 8 Sep 2024 12:54:10 +0000 Subject: [PATCH] Replace `vergen` (#580) --- Cargo.lock | 108 ++++++------------------------ crates/kitsune-core/Cargo.toml | 5 +- crates/kitsune-core/build.rs | 19 ------ crates/kitsune-core/src/consts.rs | 19 +++++- 4 files changed, 39 insertions(+), 112 deletions(-) delete mode 100644 crates/kitsune-core/build.rs diff --git a/Cargo.lock b/Cargo.lock index ddd4f9ea..9c694857 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2499,18 +2499,6 @@ dependencies = [ "wasm-bindgen", ] -[[package]] -name = "getset" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e45727250e75cc04ff2846a66397da8ef2b3db8e40e0cef4df67950a07621eb9" -dependencies = [ - "proc-macro-error", - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "gimli" version = "0.28.1" @@ -2528,6 +2516,26 @@ dependencies = [ "stable_deref_trait", ] +[[package]] +name = "git-version" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1ad568aa3db0fcbc81f2f116137f263d7304f512a1209b35b85150d3ef88ad19" +dependencies = [ + "git-version-macro", +] + +[[package]] +name = "git-version-macro" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "53010ccb100b96a67bc32c0175f0ed1426b31b655d562898e57325f81c023ac0" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.77", +] + [[package]] name = "glob" version = "0.3.1" @@ -3592,6 +3600,7 @@ version = "0.0.1-pre.6" dependencies = [ "async-trait", "const_format", + "git-version", "kitsune-db", "kitsune-error", "paste", @@ -3599,7 +3608,6 @@ dependencies = [ "triomphe", "typed-builder", "unsize", - "vergen-gitcl", ] [[package]] @@ -4745,15 +4753,6 @@ dependencies = [ "libm", ] -[[package]] -name = "num_threads" -version = "0.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c7398b9c8b70908f6371f47ed36737907c87c52af34c268fed0bf0ceb92ead9" -dependencies = [ - "libc", -] - [[package]] name = "oauth2" version = "5.0.0-alpha.4" @@ -5456,30 +5455,6 @@ dependencies = [ "toml_edit", ] -[[package]] -name = "proc-macro-error" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" -dependencies = [ - "proc-macro-error-attr", - "proc-macro2", - "quote", - "syn 1.0.109", - "version_check", -] - -[[package]] -name = "proc-macro-error-attr" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" -dependencies = [ - "proc-macro2", - "quote", - "version_check", -] - [[package]] name = "proc-macro-hack" version = "0.5.20+deprecated" @@ -7031,9 +7006,7 @@ checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885" dependencies = [ "deranged", "itoa 1.0.11", - "libc", "num-conv", - "num_threads", "powerfmt", "serde", "time-core", @@ -7790,45 +7763,6 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" -[[package]] -name = "vergen" -version = "9.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c32e7318e93a9ac53693b6caccfb05ff22e04a44c7cf8a279051f24c09da286f" -dependencies = [ - "anyhow", - "derive_builder", - "rustversion", - "time", - "vergen-lib", -] - -[[package]] -name = "vergen-gitcl" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3bbdc9746577cb4767f218d320ee0b623d415e8130332f8f562b910b61cc2c4e" -dependencies = [ - "anyhow", - "derive_builder", - "rustversion", - "time", - "vergen", - "vergen-lib", -] - -[[package]] -name = "vergen-lib" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e06bee42361e43b60f363bad49d63798d0f42fb1768091812270eca00c784720" -dependencies = [ - "anyhow", - "derive_builder", - "getset", - "rustversion", -] - [[package]] name = "version_check" version = "0.9.5" diff --git a/crates/kitsune-core/Cargo.toml b/crates/kitsune-core/Cargo.toml index 21584cdd..a84690a6 100644 --- a/crates/kitsune-core/Cargo.toml +++ b/crates/kitsune-core/Cargo.toml @@ -4,11 +4,11 @@ authors.workspace = true edition.workspace = true version.workspace = true license.workspace = true -build = "build.rs" [dependencies] async-trait = "0.1.82" const_format = "0.2.33" +git-version = "0.3.9" kitsune-db = { workspace = true } kitsune-error = { workspace = true } paste = "1.0.15" @@ -17,8 +17,5 @@ triomphe = { workspace = true } typed-builder = "0.20.0" unsize = "1.1.0" -[build-dependencies] -vergen-gitcl = { version = "1.0.0", features = ["build"] } - [lints] workspace = true diff --git a/crates/kitsune-core/build.rs b/crates/kitsune-core/build.rs deleted file mode 100644 index 152a4fd8..00000000 --- a/crates/kitsune-core/build.rs +++ /dev/null @@ -1,19 +0,0 @@ -use std::env; -use vergen_gitcl::{Emitter, GitclBuilder}; - -const PRIMARY_PACKAGE_KEY: &str = "CARGO_PRIMARY_PACKAGE"; -const PRIMARY_PACKAGE_FALLBACK_VALUE: &str = "kitsune"; - -fn main() { - if env::var(PRIMARY_PACKAGE_KEY).is_err() { - println!("cargo:rustc-env={PRIMARY_PACKAGE_KEY}={PRIMARY_PACKAGE_FALLBACK_VALUE}"); - } - - let gitcl = GitclBuilder::default().sha(true).build().unwrap(); - - Emitter::new() - .add_instructions(&gitcl) - .unwrap() - .emit() - .unwrap(); -} diff --git a/crates/kitsune-core/src/consts.rs b/crates/kitsune-core/src/consts.rs index ba98a24d..a57595df 100644 --- a/crates/kitsune-core/src/consts.rs +++ b/crates/kitsune-core/src/consts.rs @@ -1,8 +1,23 @@ use const_format::concatcp; +use git_version::git_version; pub const API_MAX_LIMIT: usize = 40; pub const MAX_EMOJI_SHORTCODE_LENGTH: usize = 64; pub const MAX_MEDIA_DESCRIPTION_LENGTH: usize = 5000; -pub const PROJECT_IDENTIFIER: &str = env!("CARGO_PRIMARY_PACKAGE"); + +pub const PROJECT_IDENTIFIER: &str = const { + const FALLBACK_NAME: &str = "kitsune"; + + if let Some(package_name) = option_env!("CARGO_PRIMARY_PACKAGE") { + package_name + } else { + FALLBACK_NAME + } +}; + pub const USER_AGENT: &str = concatcp!(PROJECT_IDENTIFIER, "/", VERSION); -pub const VERSION: &str = concatcp!(env!("CARGO_PKG_VERSION"), "-", env!("VERGEN_GIT_SHA")); +pub const VERSION: &str = concatcp!( + env!("CARGO_PKG_VERSION"), + "-", + git_version!(fallback = "unknown") +);