mirror of
https://github.com/Hopiu/lychee.git
synced 2026-04-13 01:40:59 +00:00
107 lines
3.2 KiB
TOML
107 lines
3.2 KiB
TOML
[package]
|
|
name = "lychee"
|
|
authors = ["Matthias Endler <matthias@endler.dev>"]
|
|
description = "A fast, async link checker"
|
|
documentation = "https://docs.rs/lychee"
|
|
homepage = "https://github.com/lycheeverse/lychee"
|
|
edition = "2024"
|
|
keywords = ["link", "checker", "cli", "link-checker", "validator"]
|
|
license = "Apache-2.0 OR MIT"
|
|
repository = "https://github.com/lycheeverse/lychee"
|
|
readme = "../README.md"
|
|
version.workspace = true
|
|
rust-version = "1.85.0"
|
|
|
|
[dependencies]
|
|
# NOTE: We need to specify the version of lychee-lib here because crates.io
|
|
# requires all dependencies to have a version number.
|
|
lychee-lib = { path = "../lychee-lib", version = "0.19.1", default-features = false }
|
|
|
|
anyhow = "1.0.98"
|
|
assert-json-diff = "2.0.2"
|
|
clap = { version = "4.5.38", features = ["env", "derive"] }
|
|
console = "0.15.11"
|
|
const_format = "0.2.34"
|
|
csv = "1.3.1"
|
|
dashmap = { version = "6.1.0", features = ["serde"] }
|
|
env_logger = "0.11.8"
|
|
futures = "0.3.31"
|
|
headers = "0.4.0"
|
|
http = "1.3.1"
|
|
http-serde = "2.1.1"
|
|
humantime = "2.2.0"
|
|
humantime-serde = "1.1.1"
|
|
human-sort = "0.2.2"
|
|
indicatif = "0.17.11"
|
|
log = "0.4.27"
|
|
openssl-sys = { version = "0.9.108", optional = true }
|
|
pad = "0.1.6"
|
|
regex = "1.11.1"
|
|
reqwest = { version = "0.12.15", default-features = false, features = [
|
|
"gzip",
|
|
"json",
|
|
] }
|
|
reqwest_cookie_store = "0.8.0"
|
|
# Make build work on Apple Silicon.
|
|
# See https://github.com/briansmith/ring/issues/1163
|
|
# This is necessary for the homebrew build
|
|
# https://github.com/Homebrew/homebrew-core/pull/70216
|
|
ring = "0.17.14"
|
|
secrecy = { version = "0.10.3", features = ["serde"] }
|
|
serde = { version = "1.0.219", features = ["derive"] }
|
|
serde_json = "1.0.140"
|
|
strum = { version = "0.27.1", features = ["derive"] }
|
|
supports-color = "3.0.2"
|
|
tabled = "0.19.0"
|
|
tokio = { version = "1.45.1", features = ["full"] }
|
|
tokio-stream = "0.1.17"
|
|
toml = "0.8.22"
|
|
url = "2.5.4"
|
|
|
|
|
|
[dev-dependencies]
|
|
assert_cmd = "2.0.17"
|
|
cookie_store = "0.21.1"
|
|
predicates = "3.1.3"
|
|
pretty_assertions = "1.4.1"
|
|
tempfile = "3.20.0"
|
|
tracing-subscriber = { version = "0.3.19", default-features = false, features = [
|
|
"fmt",
|
|
"registry",
|
|
"env-filter",
|
|
] }
|
|
uuid = { version = "1.17.0", features = ["v4"] }
|
|
wiremock = "0.6.3"
|
|
|
|
[features]
|
|
|
|
# Compile and statically link a copy of OpenSSL.
|
|
vendored-openssl = ["openssl-sys/vendored"]
|
|
|
|
# Allow checking example domains such as example.com.
|
|
check_example_domains = ["lychee-lib/check_example_domains"]
|
|
|
|
# Enable checking email addresses. Requires the native-tls feature.
|
|
email-check = ["lychee-lib/email-check"]
|
|
|
|
# Use platform-native TLS.
|
|
native-tls = ["lychee-lib/native-tls", "openssl-sys", "reqwest/native-tls"]
|
|
|
|
# Use Rustls TLS.
|
|
rustls-tls = ["lychee-lib/rustls-tls", "reqwest/rustls-tls-native-roots"]
|
|
|
|
default = ["native-tls", "email-check"]
|
|
|
|
# Unfortunately, it's not possible to automatically enable features for cargo
|
|
# test. See rust-lang/cargo#2911. As a workaround we introduce a new feature to
|
|
# allow example domains in integration tests.
|
|
[[test]]
|
|
name = "cli"
|
|
path = "tests/cli.rs"
|
|
required-features = ["check_example_domains"]
|
|
|
|
# Metadata for cargo-binstall to get the right artifacts
|
|
[package.metadata.binstall]
|
|
pkg-url = "{ repo }/releases/download/{ name }-v{ version }/{ name }-{ target }{ archive-suffix }"
|
|
bin-dir = "{ bin }{ binary-ext }"
|
|
pkg-fmt = "tgz"
|