mirror of
https://github.com/neon-mmd/websurfx.git
synced 2024-11-23 14:38:21 -05:00
190 lines
5.4 KiB
TOML
190 lines
5.4 KiB
TOML
[package]
|
|
name = "websurfx"
|
|
version = "1.17.20"
|
|
edition = "2021"
|
|
description = "An open-source alternative to Searx that provides clean, ad-free, and organic results with incredible speed while keeping privacy and security in mind."
|
|
repository = "https://github.com/neon-mmd/websurfx"
|
|
license = "AGPL-3.0"
|
|
|
|
[[bin]]
|
|
name = "websurfx"
|
|
test = true
|
|
bench = false
|
|
path = "src/bin/websurfx.rs"
|
|
|
|
[dependencies]
|
|
reqwest = { version = "0.12.5", default-features = false, features = [
|
|
"rustls-tls",
|
|
"brotli",
|
|
"gzip",
|
|
"http2"
|
|
] }
|
|
tokio = { version = "1.32.0", features = [
|
|
"rt-multi-thread",
|
|
"macros",
|
|
"fs",
|
|
"io-util",
|
|
], default-features = false }
|
|
serde = { version = "1.0.209", default-features = false, features = ["derive"] }
|
|
serde_json = { version = "1.0.122", default-features = false }
|
|
maud = { version = "0.26.0", default-features = false, features = [
|
|
"actix-web",
|
|
] }
|
|
scraper = { version = "0.20.0", default-features = false }
|
|
actix-web = { version = "4.9.0", features = [
|
|
"cookies",
|
|
"macros",
|
|
"compress-brotli",
|
|
], default-features = false }
|
|
actix-files = { version = "0.6.5", default-features = false }
|
|
actix-cors = { version = "0.7.0", default-features = false }
|
|
fake-useragent = { version = "0.1.3", default-features = false }
|
|
env_logger = { version = "0.11.1", default-features = false }
|
|
log = { version = "0.4.21", default-features = false }
|
|
mlua = { version = "0.9.9", features = [
|
|
"luajit",
|
|
"vendored",
|
|
], default-features = false }
|
|
redis = { version = "0.25.4", features = [
|
|
"tokio-comp",
|
|
"connection-manager",
|
|
], default-features = false, optional = true }
|
|
blake3 = { version = "1.5.4", default-features = false }
|
|
error-stack = { version = "0.4.0", default-features = false, features = [
|
|
"std",
|
|
] }
|
|
async-trait = { version = "0.1.80", default-features = false }
|
|
regex = { version = "1.9.4", features = ["perf"], default-features = false }
|
|
smallvec = { version = "1.13.1", features = [
|
|
"union",
|
|
"serde",
|
|
], default-features = false }
|
|
futures = { version = "0.3.30", default-features = false, features = ["alloc"] }
|
|
dhat = { version = "0.3.2", optional = true, default-features = false }
|
|
mimalloc = { version = "0.1.43", default-features = false }
|
|
async-once-cell = { version = "0.5.3", default-features = false }
|
|
actix-governor = { version = "0.5.0", default-features = false }
|
|
mini-moka = { version = "0.10", optional = true, default-features = false, features = [
|
|
"sync",
|
|
] }
|
|
async-compression = { version = "0.4.12", default-features = false, features = [
|
|
"brotli",
|
|
"tokio",
|
|
], optional = true }
|
|
chacha20poly1305 = { version = "0.10.1", default-features = false, features = [
|
|
"alloc",
|
|
"getrandom",
|
|
], optional = true }
|
|
chacha20 = { version = "0.9.1", default-features = false, optional = true }
|
|
base64 = { version = "0.21.5", default-features = false, features = [
|
|
"std",
|
|
], optional = true }
|
|
cfg-if = { version = "1.0.0", default-features = false, optional = true }
|
|
keyword_extraction = { version = "1.4.3", default-features = false, features = [
|
|
"tf_idf",
|
|
] }
|
|
|
|
stop-words = { version = "0.8.0", default-features = false, features = ["iso"] }
|
|
thesaurus = { version = "0.5.2", default-features = false, optional = true, features = [
|
|
"moby",
|
|
]}
|
|
itertools = {version = "0.13.0", default-features = false}
|
|
|
|
[dev-dependencies]
|
|
rusty-hook = { version = "^0.11.2", default-features = false }
|
|
criterion = { version = "0.5.1", default-features = false }
|
|
tempfile = { version = "3.10.1", default-features = false }
|
|
|
|
[build-dependencies]
|
|
lightningcss = { version = "1.0.0-alpha.57", default-features = false, features = [
|
|
"grid",
|
|
] }
|
|
# Disabled until bug fixing update
|
|
# minify-js = { version = "0.6.0", default-features = false }
|
|
# Temporary fork with fix
|
|
minify-js = { git = "https://github.com/RuairidhWilliamson/minify-js", branch = "master", version = "0.6.0", default-features = false}
|
|
|
|
|
|
|
|
[profile.dev]
|
|
opt-level = 0
|
|
debug = true
|
|
split-debuginfo = 'unpacked'
|
|
debug-assertions = true
|
|
overflow-checks = true
|
|
lto = false
|
|
panic = 'unwind'
|
|
incremental = true
|
|
codegen-units = 256
|
|
rpath = false
|
|
|
|
[profile.release]
|
|
opt-level = 3
|
|
debug = false # This should only be commented when testing with dhat profiler
|
|
# debug = 1 # This should only be uncommented when testing with dhat profiler
|
|
split-debuginfo = '...'
|
|
debug-assertions = false
|
|
overflow-checks = false
|
|
lto = 'thin'
|
|
panic = 'abort'
|
|
incremental = false
|
|
codegen-units = 1
|
|
rpath = false
|
|
strip = "symbols"
|
|
|
|
[profile.bsr1]
|
|
inherits = "release"
|
|
opt-level = "s"
|
|
|
|
[profile.bsr2]
|
|
inherits = "bsr1"
|
|
opt-level = "z"
|
|
|
|
[profile.lpcb1]
|
|
inherits = "release"
|
|
codegen-units = 16
|
|
|
|
[profile.lpcb2]
|
|
inherits = "lpcb1"
|
|
lto = "off"
|
|
|
|
[profile.lpcb3]
|
|
inherits = "lpcb2"
|
|
opt-level = 2
|
|
|
|
[profile.bsr_and_lpcb1]
|
|
inherits = "lpcb1"
|
|
opt-level = "s"
|
|
|
|
[profile.bsr_and_lpcb2]
|
|
inherits = "lpcb2"
|
|
opt-level = "s"
|
|
|
|
[profile.bsr_and_lpcb3]
|
|
inherits = "lpcb3"
|
|
opt-level = "s"
|
|
|
|
[profile.bsr_and_lpcb4]
|
|
inherits = "lpcb1"
|
|
opt-level = "z"
|
|
|
|
[profile.bsr_and_lpcb5]
|
|
inherits = "lpcb1"
|
|
opt-level = "z"
|
|
|
|
[profile.bsr_and_lpcb6]
|
|
inherits = "lpcb1"
|
|
opt-level = "z"
|
|
|
|
[features]
|
|
use-synonyms-search = ["thesaurus/static"]
|
|
default = ["memory-cache"]
|
|
dhat-heap = ["dep:dhat"]
|
|
memory-cache = ["dep:mini-moka"]
|
|
redis-cache = ["dep:redis", "dep:base64"]
|
|
compress-cache-results = ["dep:async-compression", "dep:cfg-if"]
|
|
encrypt-cache-results = ["dep:chacha20poly1305", "dep:chacha20"]
|
|
cec-cache-results = ["compress-cache-results", "encrypt-cache-results"]
|
|
experimental-io-uring = ["actix-web/experimental-io-uring"]
|
|
use-non-static-synonyms-search = ["thesaurus"]
|