projvar 0.20.0

A tiny CLI tool that tries to gather project specific meta-data in different ways, to store them into key=value pairs in a file for later use by other tools. See --list for the keys set by this tool.
Documentation
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2024"
name = "projvar"
version = "0.20.0"
authors = ["Robin Vobruba <hoijui.quaero@gmail.com>"]
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = """
    A tiny CLI tool that tries to gather project specific meta-data in different ways,
    to store them into key=value pairs in a file
    for later use by other tools.
    See --list for the keys set by this tool.
    """
homepage = "https://github.com/hoijui/projvar"
readme = "README.md"
keywords = [
    "cli",
    "ci",
    "utility",
    "parsing",
    "git",
]
categories = [
    "command-line-utilities",
    "filesystem",
    "text-processing",
]
license = "AGPL-3.0-or-later"
repository = "https://github.com/hoijui/projvar"

[features]
default = []
env-sink = []

[lib]
name = "projvar"
path = "src/lib.rs"

[[bin]]
name = "projvar"
path = "src/main.rs"

[[test]]
name = "bitbucket_ci"
path = "tests/bitbucket_ci.rs"

[[test]]
name = "common"
path = "tests/common.rs"

[[test]]
name = "deriver"
path = "tests/deriver.rs"

[[test]]
name = "fs_and_git"
path = "tests/fs_and_git.rs"

[[test]]
name = "github_ci"
path = "tests/github_ci.rs"

[[test]]
name = "gitlab_ci"
path = "tests/gitlab_ci.rs"

[[test]]
name = "main"
path = "tests/main.rs"

[dependencies.askalono]
version = "0.5"

[dependencies.chrono]
version = "0.4"

[dependencies.clap]
version = "4.6"
features = [
    "cargo",
    "derive",
]

[dependencies.cli_utils]
version = "0.13"
package = "cli_utils_hoijui"

[dependencies.const_format]
version = "0.2"

[dependencies.enum-map]
version = "2.7"

[dependencies.git-version]
version = "0.3"

[dependencies.git2]
version = "0.21"
default-features = false

[dependencies.gix-url]
version = "0.36"

[dependencies.human-panic]
version = "2.0"

[dependencies.log]
version = "0.4"

[dependencies.proc-macro2]
version = "1.0"

[dependencies.regex]
version = "1.13"

[dependencies.remain]
version = "0.2"

[dependencies.repvar]
version = "0.14"

[dependencies.serde]
version = "1.0"
features = [
    "derive",
    "rc",
]

[dependencies.serde_json]
version = "1.0"

[dependencies.spdx]
version = "0.13"

[dependencies.strum]
version = "0.28"

[dependencies.strum_macros]
version = "0.28"

[dependencies.thiserror]
version = "2.0"

[dependencies.tracing]
version = "0.1"
default-features = false

[dependencies.tracing-subscriber]
version = "0.3"

[dependencies.url]
version = "2.5"

[dev-dependencies.assert_cmd]
version = "2.2"

[dev-dependencies.assert_fs]
version = "1.1"

[dev-dependencies.cmd_lib]
version = "2.0"

[dev-dependencies.const-fnv1a-hash]
version = "1.1"

[dev-dependencies.directories]
version = "6.0"

[dev-dependencies.fake]
version = "5.1"
features = [
    "chrono",
    "uuid",
]

[dev-dependencies.predicates]
version = "3.1"

[dev-dependencies.uuid]
version = "1.23"

[build-dependencies.reqwest]
version = "0.13"
features = [
    "blocking",
    "rustls",
]
default-features = false

[lints.clippy]
clone_on_ref_ptr = "warn"
else_if_without_else = "warn"
empty_structs_with_brackets = "warn"
indexing_slicing = "warn"
option_if_let_else = "allow"
print_stderr = "warn"
print_stdout = "warn"
shadow_reuse = "allow"
string_slice = "warn"
try_err = "warn"
use_debug = "warn"
wildcard_enum_match_arm = "warn"

[lints.clippy.all]
level = "deny"
priority = -1

[lints.clippy.cargo]
level = "warn"
priority = -1

[lints.clippy.nursery]
level = "warn"
priority = -1

[lints.clippy.pedantic]
level = "warn"
priority = -1

[lints.rust.rust_2024_compatibility]
level = "warn"
priority = -1