libmagic-rs 0.12.0

A pure-Rust implementation of libmagic for file type identification
Documentation

# Sole source of truth for rust on the mise path: `[tools] rust` below declares
# version, components, and targets. `[settings]` sets
# `idiomatic_version_file_enable_tools = []`, so mise reads no idiomatic version
# files -- it ignores rust-toolchain.toml, which serves rustup-only users and
# must declare the same exact version (nothing enforces the match). Do not add
# `rust` to that list: mise would then resolve from both files and, on drift,
# install two toolchains whose components collide on CI runners (`detected
# conflict` / `Directory not empty`).
#
# Bumping rustc: an exact pin means `mise upgrade rust` does NOT move it -- edit
# `version` below (and rust-toolchain.toml) then `mise install`, or use
# `mise upgrade --bump rust`. Commit the refreshed mise.lock, and update
# Cargo.toml `rust-version` if the MSRV moves.
[tools]
rust                        = { version = "1.97.1", components = "llvm-tools,cargo,rustfmt,clippy", profile = "default", targets = "aarch64-apple-darwin,aarch64-unknown-linux-gnu,aarch64-pc-windows-msvc,x86_64-apple-darwin,x86_64-unknown-linux-gnu,x86_64-unknown-linux-musl,x86_64-pc-windows-msvc" }
cargo-binstall              = "1.20.1"
cargo-insta                 = "1.48.0"
"cargo:cargo-audit"         = "0.22.2"
"cargo:cargo-deny"          = "0.20.2"
"cargo:cargo-dist"          = "0.32.0"
"cargo:cargo-llvm-cov"      = "0.8.7"
"cargo:cargo-nextest"       = "0.9.140"
"cargo:mdbook"              = "0.5.4"
"cargo:mdbook-linkcheck"    = "0.7.7"
"cargo:mdbook-tabs"         = "1.0.4"
"cargo:mdbook-mermaid"      = "0.17.0"
"cargo:mdbook-toc"          = "0.15.4"
"cargo:mdbook-admonish"     = "1.20.0"
"cargo:mdbook-open-on-gh"   = "3.0.0"
"cargo:mdbook-i18n-helpers" = "0.4.0"
just                        = "1.55.1"
python                      = "3.14.6"
"cargo:cargo-outdated"      = "0.19.0"
"cargo:cargo-release"       = "1.1.2"
"cargo:cargo-auditable"     = "0.7.5"
"cargo:cargo-cyclonedx"     = "0.5.9"
"pipx:mdformat"             = { version = "1.0.0", uvx_args = "--with mdformat-gfm --with mdformat-config --with mdformat-footnote --with mdformat-front-matters --with mdformat-simple-breaks --with mdformat-web --with mdformat-wikilink --with mdformat-gfm-alerts --with mdformat-toc" }
actionlint                  = "1.7.12"
markdownlint-cli2           = "0.23.0"
"cargo:cargo-machete"       = "0.9.2"
"cargo:git-cliff"           = "2.13.1"
scorecard                   = "5.5.0"
"cargo:release-plz"         = "0.3.159"
"pipx:pre-commit"           = "latest"
bun                         = "1.3.14"
shellcheck                  = "0.11.0"

# Many of these settings are defaults, but we are explicit in case they change in the future and to make it clear to users what is enabled.
[settings]
activate_aggressive = true
# Empty: mise reads no idiomatic version files (.python-version, .bun-version,
# rust-toolchain.toml). All tool versions come from [tools] above. See the
# header comment -- do not add `rust` here (dual-toolchain collision on CI).
idiomatic_version_file_enable_tools = [ ]
env_cache           = true
exec_auto_install   = true
github_attestations = true
lockfile            = true
pin                 = true
slsa                = true
experimental        = true

[settings.npm]
package_manager = "bun"

[settings.pipx]
uvx = true

[settings.cargo]
binstall_only         = false
binstall_quickinstall = true
binstall_native       = true