gflow 0.4.11

A lightweight, single-node job scheduler written in Rust.
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 = "2021"
name = "gflow"
version = "0.4.11"
authors = ["PuQing <me@puqing.work>"]
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A lightweight, single-node job scheduler written in Rust."
documentation = "https://runqd.com"
readme = "README.md"
keywords = [
    "slurm",
    "scheduler",
    "job",
    "rust",
]
categories = ["command-line-interface"]
license = "MIT"
repository = "https://github.com/AndPuQing/gflow.git"

[features]
default = []
metrics = [
    "prometheus",
    "lazy_static",
]

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

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

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

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

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

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

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

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

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

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

[[bench]]
name = "filtering_bench"
path = "benches/filtering_bench.rs"
harness = false

[[bench]]
name = "scheduler_bench"
path = "benches/scheduler_bench.rs"
harness = false

[[bench]]
name = "serialization_bench"
path = "benches/serialization_bench.rs"
harness = false

[dependencies.anyhow]
version = "1.0.95"

[dependencies.axum]
version = "0.8.0"
features = [
    "http1",
    "json",
    "macros",
    "tokio",
    "query",
]
default-features = false

[dependencies.chrono]
version = "0.4.42"
features = ["clock"]

[dependencies.chrono-tz]
version = "0.10"

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

[dependencies.clap-verbosity-flag]
version = "3.0.4"
features = ["tracing"]
default-features = false

[dependencies.clap_complete]
version = "4.5.44"

[dependencies.compact_str]
version = "0.9"
features = ["serde"]

[dependencies.config]
version = "0.15.7"
features = ["toml"]
default-features = false

[dependencies.csv]
version = "1.3"

[dependencies.dirs]
version = "6.0.0"

[dependencies.lazy_static]
version = "1.4.0"
optional = true

[dependencies.libc]
version = "0.2"

[dependencies.nvml-wrapper]
version = "0.11.0"

[dependencies.owo-colors]
version = "4.1.0"

[dependencies.prometheus]
version = "0.14.0"
optional = true

[dependencies.range-parser]
version = "0.1.2"

[dependencies.regex]
version = "1"

[dependencies.reqwest]
version = "0.13.0"
features = [
    "json",
    "query",
]
default-features = false

[dependencies.rmp-serde]
version = "1.3"

[dependencies.serde]
version = "1.0.217"
features = ["derive"]
default-features = false

[dependencies.serde_json]
version = "1.0"

[dependencies.shell-escape]
version = "0.1.5"

[dependencies.smallvec]
version = "1.13"
features = ["serde"]

[dependencies.socket2]
version = "0.6"

[dependencies.strum]
version = "0.27.0"
features = ["derive"]

[dependencies.tabled]
version = "0.20.0"
features = ["ansi"]

[dependencies.tmux_interface]
version = "0.3.2"

[dependencies.tokio]
version = "1.43.0"
features = [
    "rt-multi-thread",
    "fs",
    "macros",
    "sync",
    "signal",
    "io-util",
]
default-features = false

[dependencies.tracing]
version = "0.1.40"

[dependencies.tracing-subscriber]
version = "0.3.18"
features = [
    "env-filter",
    "fmt",
    "ansi",
    "json",
]

[dependencies.uuid]
version = "1.10.0"
features = [
    "v4",
    "fast-rng",
]

[dev-dependencies.criterion]
version = "0.8"
features = ["html_reports"]

[dev-dependencies.mockall]
version = "0.14.0"

[dev-dependencies.nvml-wrapper]
version = "0.11.0"

[dev-dependencies.proptest]
version = "1.5"

[dev-dependencies.tempfile]
version = "3.16.0"

[dev-dependencies.tower]
version = "0.5"

[build-dependencies.anyhow]
version = "1.0.95"

[build-dependencies.vergen-gix]
version = "9.0.0"
features = [
    "build",
    "cargo",
]

[target.'cfg(target_arch = "x86_64")'.dependencies.mimalloc]
version = "0.1"
features = ["v3"]

[profile.dist]
inherits = "release"

[profile.fast-build]
opt-level = 1
debug = 0
inherits = "dev"
strip = "debuginfo"

[profile.minimal-size]
opt-level = "z"
codegen-units = 1
panic = "abort"
inherits = "release"

[profile.no-debug]
debug = 0
inherits = "dev"
strip = "debuginfo"

[profile.profiling]
lto = false
debug = 2
inherits = "release"
strip = false

[profile.release]
lto = "fat"
strip = true