Spaces:
Running
Running
[package] | |
name = "websurfx" | |
version = "1.21.0" | |
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", | |
"socks", | |
] } | |
tokio = { version = "1.43.0", features = [ | |
"rt-multi-thread", | |
"macros", | |
"fs", | |
"io-util", | |
], default-features = false } | |
serde = { version = "1.0.215", default-features = false, features = ["derive"] } | |
serde_json = { version = "1.0.138", default-features = false } | |
bincode = {version="1.3.3", default-features=false} | |
maud = { version = "0.26.0", default-features = false, features = [ | |
"actix-web", | |
] } | |
scraper = { version = "0.21.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.6", default-features = false } | |
log = { version = "0.4.21", default-features = false } | |
mlua = { version = "0.10.3", features = [ | |
"luajit", | |
"vendored", | |
], default-features = false } | |
redis = { version = "0.28.2", features = [ | |
"tokio-comp", | |
"connection-manager", | |
"tcp_nodelay" | |
], 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.86", default-features = false } | |
regex = { version = "1.11.1", features = ["perf"], default-features = false } | |
futures = { version = "0.3.31", 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.4", default-features = false } | |
actix-governor = { version = "0.8.0", default-features = false } | |
moka = { version = "0.12.8", optional = true, default-features = false, features = [ | |
"future", | |
] } | |
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.22.1", default-features = false, features = [ | |
"std", | |
], optional = true } | |
cfg-if = { version = "1.0.0", default-features = false, optional = true } | |
keyword_extraction = { version = "1.5.0", default-features = false, features = [ | |
"tf_idf", | |
"rayon", | |
] } | |
stop-words = { version = "0.8.0", default-features = false, features = ["iso"] } | |
thesaurus = { version = "0.5.2", default-features = false, optional = true, features = [ | |
"moby", | |
]} | |
actix-multipart = { version = "0.7.2", default-features = false, features = [ | |
"derive", | |
"tempfile", | |
]} | |
itertools = {version = "0.14.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.14.0", 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: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"] | |