mirror of
https://github.com/Hopiu/lychee.git
synced 2026-03-16 20:50:25 +00:00
This avoids creating a DOM tree for link extraction and instead uses a `TokenSink` for on-the-fly extraction. In hyperfine benchmarks it was about 10-25% faster than the master. Old: 4.557 s ± 0.404 s New: 3.832 s ± 0.131 s The performance fluctuates a little less as well. Some missing element/attribute pairs were also added, which contain links according to the HTML spec. These occur very rarely, but it's good to parse them for completeness' sake. Furthermore tried to clean up a lot of papercuts around our types. We now differentiate between a `RawUri` (stringy-types) and a Uri, which is a properly parsed `URI` type. The extractor now only deals with extracting `RawUri`s while the collector creates the request objects.
62 lines
1.5 KiB
TOML
62 lines
1.5 KiB
TOML
[package]
|
|
name = "lychee-lib"
|
|
authors = ["Matthias Endler <matthias@endler.dev>"]
|
|
description = "A glorious link checker"
|
|
documentation = "https://github.com/lycheeverse/lychee/blob/master/README.md"
|
|
edition = "2018"
|
|
homepage = "https://github.com/lycheeverse/lychee"
|
|
keywords = [
|
|
"link",
|
|
"checker",
|
|
"cli",
|
|
"link-checker",
|
|
"validator",
|
|
]
|
|
license = "Apache-2.0/MIT"
|
|
repository = "https://github.com/lycheeverse/lychee"
|
|
version = "0.8.1"
|
|
|
|
[dependencies]
|
|
check-if-email-exists = "0.8.25"
|
|
fast_chemail = "0.9.6"
|
|
glob = "0.3.0"
|
|
html5ever = "0.25.1"
|
|
http = "0.2.5"
|
|
hubcaps = "0.6.2"
|
|
linkify = "0.8.0"
|
|
openssl-sys = "0.9.72"
|
|
pulldown-cmark = "0.8.0"
|
|
regex = "1.4.6"
|
|
reqwest = { version = "0.11.7", features = ["gzip"] }
|
|
# 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.16.20"
|
|
serde = { version = "1.0.125", features = ["derive"] }
|
|
shellexpand = "2.1.0"
|
|
tokio = { version = "1.14.0", features = ["full"] }
|
|
typed-builder = "0.9.1"
|
|
url = { version = "2.2.2", features = ["serde"] }
|
|
log = "0.4.14"
|
|
path-clean = "0.1.0"
|
|
percent-encoding = "2.1.0"
|
|
async-stream = "0.3.2"
|
|
jwalk = "0.6.0"
|
|
cached = "0.26.2"
|
|
once_cell = "1.9.0"
|
|
thiserror = "1.0"
|
|
futures = "0.3.18"
|
|
|
|
[dependencies.par-stream]
|
|
version = "0.7.0"
|
|
features = ["runtime-tokio"]
|
|
|
|
[dev-dependencies]
|
|
doc-comment = "0.3.3"
|
|
pretty_assertions = "1.0.0"
|
|
tempfile = "3.2.0"
|
|
wiremock = "0.5.7"
|
|
|
|
[features]
|
|
vendored-openssl = ["openssl-sys/vendored"]
|