Repository navigation
Expand file tree
/
Copy pathCargo.toml
More file actions
79 lines (62 loc) · 2.28 KB
/
Copy pathCargo.toml
File metadata and controls
79 lines (62 loc) · 2.28 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
[workspace]
resolver = "2"
members = ["crates/*"]
[workspace.package]
version = "0.7.1"
edition = "2021"
license = "MIT"
authors = ["Everruns"]
repository = "https://github.com/everruns/fetchkit"
description = "AI-friendly web content fetching and HTML-to-Markdown conversion library"
keywords = ["fetch", "web", "markdown", "llm", "ai"]
categories = ["web-programming", "text-processing"]
[workspace.dependencies]
# Async runtime
tokio = { version = "1.54.1", features = ["rt-multi-thread", "macros", "time", "sync"] }
# HTTP client. Default features off: TLS, HTTP/2, proxy discovery and body
# decompression are opted into by fetchkit's `reqwest-tls` feature (on by
# default), so embedders that supply their own `HttpTransport` (e.g. bashkit,
# ring-only rustls) do not get a second TLS stack or aws-lc-sys.
reqwest = { version = "0.13", default-features = false, features = ["stream", "json"] }
# Serialization
serde = { version = "1", features = ["derive"] }
serde_json = "1"
# Schema generation
schemars = "1"
# URL parsing
url = "2"
percent-encoding = "2"
# Logging
tracing = "0.1"
# Error handling
thiserror = "2"
# CLI. Default features off (no color, no did-you-mean suggestions) to match
# bashkit's clap set: bashkit embeds this CLI as a builtin, and clap features
# unify, so color/suggestions here would change bashkit's output and make help
# and error text differ between the standalone binary and the builtin.
clap = { version = "4", default-features = false, features = ["derive", "std", "help", "usage", "error-context"] }
# Async streaming
futures = "0.3"
bytes = "1"
# Testing
wiremock = "0.6"
tempfile = "3"
# Async traits
async-trait = "0.1"
# Service trait
tower = { version = "0.5", features = ["util"] }
# Binary document extraction
pdf-inspector = "1.25.2"
markkit = { version = "0.3.1", default-features = false, features = ["docx", "spreadsheet"] }
calamine = { version = "0.38", default-features = false }
zip = { version = "9", default-features = false, features = ["deflate"] }
quick-xml = "0.42"
# Platform filesystem flags
libc = "0.2"
# Optional rendered fetching
rakers = { version = "0.1.7", default-features = false, features = ["rquickjs"] }
# Crypto (bot-auth feature)
ed25519-dalek = { version = "3", features = ["rand_core"] }
base64 = "0.23"
sha2 = "0.11"
rand = "0.10"