cuenv-workspaces 0.26.19

Workspace and dependency resolution for cuenv across multiple package managers
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 = "cuenv-workspaces"
version = "0.26.19"
authors = ["cuenv Contributors"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Workspace and dependency resolution for cuenv across multiple package managers"
homepage = "https://github.com/cuenv/cuenv"
readme = "readme.md"
keywords = [
    "cue",
    "configuration",
    "validation",
    "ffi",
]
categories = [
    "config",
    "development-tools",
    "parsing",
]
license = "AGPL-3.0-or-later"
repository = "https://github.com/cuenv/cuenv"
resolver = "2"

[features]
default = [
    "detection",
    "parsers-javascript",
    "discovery-javascript",
]
detection = [
    "toml",
    "serde_yaml",
]
discovery-cargo = [
    "dep:glob",
    "toml",
    "dep:walkdir",
]
discovery-javascript = [
    "discovery-package-json",
    "discovery-pnpm",
]
discovery-package-json = [
    "dep:glob",
    "dep:walkdir",
]
discovery-pnpm = [
    "dep:glob",
    "serde_yaml",
    "dep:walkdir",
]
discovery-rust = ["discovery-cargo"]
parser-bun = ["jsonc-parser"]
parser-cargo = [
    "dep:cargo-lock",
    "dep:cargo_toml",
    "toml",
    "dep:glob",
]
parser-npm = []
parser-pnpm = ["serde_yaml"]
parser-yarn-classic = ["dep:yarn_lock_parser"]
parser-yarn-modern = ["serde_yaml"]
parsers-javascript = [
    "parser-npm",
    "parser-bun",
    "parser-pnpm",
    "parser-yarn-classic",
    "parser-yarn-modern",
]
parsers-rust = ["parser-cargo"]

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

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

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

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

[dependencies.cargo-lock]
version = "11.0"
optional = true

[dependencies.cargo_toml]
version = "0.22"
optional = true

[dependencies.glob]
version = "0.3"
optional = true

[dependencies.jsonc-parser]
version = "0.28"
optional = true

[dependencies.miette]
version = "7.6"
features = ["fancy"]

[dependencies.petgraph]
version = "0.8.3"

[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.thiserror]
version = "2.0"

[dependencies.toml]
version = "0.9"
optional = true

[dependencies.tracing]
version = "0.1"

[dependencies.walkdir]
version = "2.5"
optional = true

[dependencies.yarn_lock_parser]
version = "0.12.0"
optional = true
package = "yarn-lock-parser"

[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"