bambu-rs 0.1.0

AI-agent-friendly Bambu Lab 3D printer CLI & library
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"
rust-version = "1.88.0"
name = "bambu-rs"
version = "0.1.0"
build = "build.rs"
include = [
    "/Cargo.toml",
    "/Cargo.lock",
    "/build.rs",
    "/README.md",
    "/LICENSE",
    "/about.toml",
    "/src",
    "/web/src",
    "/web/index.html",
    "/web/package.json",
    "/web/pnpm-lock.yaml",
    "/web/pnpm-workspace.yaml",
    "/web/tsconfig.json",
    "/web/vite.config.ts",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "AI-agent-friendly Bambu Lab 3D printer CLI & library"
readme = "README.md"
keywords = [
    "bambulab",
    "3d-printing",
    "mqtt",
    "cli",
    "printer",
]
categories = [
    "command-line-utilities",
    "api-bindings",
]
license = "MIT"
repository = "https://github.com/sksat/bambu-rs"

[package.metadata.binstall]
pkg-url = "{ repo }/releases/download/v{ version }/{ name }-{ target }-v{ version }.tar.gz"
bin-dir = "{ name }-{ target }-v{ version }/{ bin }{ binary-ext }"
pkg-fmt = "tgz"

[package.metadata.binstall.overrides.x86_64-pc-windows-msvc]
pkg-url = "{ repo }/releases/download/v{ version }/{ name }-{ target }-v{ version }.zip"
pkg-fmt = "zip"

[features]
cli = [
    "dep:clap",
    "dep:ctrlc",
]
dashboard = [
    "server",
    "dep:rust-embed",
]
default = [
    "cli",
    "server",
]
license-notice = [
    "cli",
    "dep:notalawyer",
    "dep:notalawyer-clap",
    "dep:notalawyer-build",
]
server = [
    "cli",
    "dep:axum",
    "dep:axum-extra",
    "dep:tower",
    "dep:tower-http",
    "dep:futures-util",
    "tokio/rt-multi-thread",
    "tokio/sync",
    "tokio/net",
    "tokio/process",
    "tokio/fs",
    "tokio/io-util",
    "dep:ureq",
]
ts-rs = ["dep:ts-rs"]

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

[[bin]]
name = "bambu"
path = "src/main.rs"
required-features = ["cli"]

[dependencies.anyhow]
version = "1.0.102"

[dependencies.axum]
version = "0.8.9"
features = ["ws"]
optional = true

[dependencies.axum-extra]
version = "0.12.6"
features = ["typed-header"]
optional = true

[dependencies.clap]
version = "4.6.1"
features = [
    "derive",
    "env",
]
optional = true

[dependencies.ctrlc]
version = "3.5.0"
optional = true

[dependencies.futures-util]
version = "0.3.31"
optional = true
default-features = false

[dependencies.md-5]
version = "0.11.0"

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

[dependencies.notalawyer-clap]
version = "0.3"
optional = true

[dependencies.rumqttc]
version = "0.25.1"
features = ["use-rustls"]
default-features = false

[dependencies.rust-embed]
version = "8.11.0"
optional = true

[dependencies.rustls]
version = "0.23.40"
features = [
    "ring",
    "logging",
    "tls12",
]
default-features = false

[dependencies.rustls-pki-types]
version = "1.14.1"

[dependencies.serde]
version = "1.0.228"
features = ["derive"]

[dependencies.serde_json]
version = "1.0.150"

[dependencies.suppaftp]
version = "8.0.4"
features = [
    "rustls-ring",
    "deprecated",
]

[dependencies.tempfile]
version = "3.27.0"

[dependencies.thiserror]
version = "2.0.18"

[dependencies.tokio]
version = "1.52.3"
features = [
    "rt",
    "time",
    "macros",
]
default-features = false

[dependencies.toml]
version = "1.1.2"

[dependencies.tower]
version = "0.5.3"
optional = true

[dependencies.tower-http]
version = "0.6.11"
features = [
    "cors",
    "trace",
    "compression-gzip",
]
optional = true

[dependencies.ts-rs]
version = "12"
optional = true

[dependencies.ureq]
version = "2"
optional = true
default-features = false

[dependencies.zip]
version = "7.2.0"
features = ["deflate"]
default-features = false

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

[dev-dependencies.axum-test]
version = "20.1.0"
features = ["ws"]

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

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

[dev-dependencies.tokio]
version = "1.52.3"
features = [
    "test-util",
    "rt",
    "macros",
]
default-features = false

[build-dependencies.notalawyer-build]
version = "0.3"
optional = true

[profile.release]
strip = true