[package]
edition = "2024"
name = "cuenv-github"
version = "0.26.12"
authors = ["cuenv Contributors"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "GitHub provider implementations for cuenv"
homepage = "https://github.com/cuenv/cuenv"
readme = "readme.md"
keywords = [
"cue",
"configuration",
"validation",
"ffi",
]
categories = [
"development-tools",
"development-tools::build-utils",
]
license = "AGPL-3.0-or-later"
repository = "https://github.com/cuenv/cuenv"
resolver = "2"
[features]
ci = [
"dep:cuenv-ci",
"dep:octocrab",
"dep:async-trait",
]
codeowners = ["dep:cuenv-codeowners"]
default = [
"codeowners",
"ci",
"workflow",
"release",
]
release = [
"dep:cuenv-release",
"dep:octocrab",
"dep:async-trait",
"dep:tokio",
"dep:bytes",
]
workflow = [
"dep:cuenv-ci",
"dep:serde_yaml",
"dep:indexmap",
]
[lib]
name = "cuenv_github"
path = "src/lib.rs"
[[test]]
name = "ci_provider_tests"
path = "tests/ci_provider_tests.rs"
[dependencies.async-trait]
version = "0.1"
optional = true
[dependencies.bytes]
version = "1.11"
optional = true
[dependencies.cuenv-ci]
version = "0.26.0"
optional = true
[dependencies.cuenv-codeowners]
version = "0.26.0"
optional = true
[dependencies.cuenv-core]
version = "0.26.0"
[dependencies.cuenv-release]
version = "0.26.0"
optional = true
[dependencies.indexmap]
version = "2.13"
features = ["serde"]
optional = true
[dependencies.octocrab]
version = "0.48"
features = [
"rustls",
"rustls-ring",
"default-client",
"timeout",
"retry",
]
optional = true
default-features = false
[dependencies.serde]
version = "1.0"
features = ["derive"]
[dependencies.serde_json]
version = "1.0"
features = ["raw_value"]
[dependencies.serde_yaml]
version = "0.9"
optional = true
[dependencies.tokio]
version = "1.49"
features = [
"full",
"fs",
]
optional = true
[dependencies.tracing]
version = "0.1"
[dev-dependencies.temp-env]
version = "0.3"
features = ["async_closure"]
[dev-dependencies.tempfile]
version = "3.25"
[lints.clippy]
as_ptr_cast_mut = "allow"
cognitive_complexity = "allow"
dbg_macro = "warn"
derive_partial_eq_without_eq = "allow"
doc_markdown = "allow"
expect_used = "warn"
implicit_hasher = "allow"
iter_on_single_items = "allow"
missing_const_for_fn = "allow"
missing_panics_doc = "allow"
multiple_crate_versions = "allow"
needless_collect = "allow"
needless_pass_by_ref_mut = "allow"
option_if_let_else = "allow"
or_fun_call = "allow"
panic = "warn"
print_stderr = "warn"
print_stdout = "warn"
redundant_clone = "allow"
redundant_closure_for_method_calls = "allow"
significant_drop_tightening = "allow"
todo = "warn"
too_many_arguments = "allow"
too_many_lines = "allow"
unimplemented = "warn"
uninlined_format_args = "allow"
unnecessary_literal_bound = "allow"
unnecessary_map_or = "allow"
unwrap_used = "warn"
[lints.clippy.all]
level = "warn"
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]
missing_docs = "warn"
unsafe_code = "warn"