2023-04-22 07:35:07 -04:00
[ package ]
name = "websurfx"
2024-03-21 02:47:38 -04:00
version = "1.12.1"
2023-04-22 07:35:07 -04:00
edition = "2021"
2023-06-05 05:30:14 -04:00
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"
2023-04-22 07:35:07 -04:00
2023-10-14 10:18:22 -04:00
[ [ bin ] ]
name = "websurfx"
test = true
bench = false
path = "src/bin/websurfx.rs"
2023-04-22 07:35:07 -04:00
[ dependencies ]
2024-06-01 18:51:43 -04:00
reqwest = { version = "0.12.4" , default-features = false , features = [
2024-03-25 05:16:49 -04:00
"rustls-tls" ,
"brotli" ,
"gzip" ,
] }
tokio = { version = "1.32.0" , features = [
"rt-multi-thread" ,
"macros" ,
"fs" ,
"io-util" ,
] , default-features = false }
serde = { version = "1.0.196" , default-features = false , features = [ "derive" ] }
2024-05-02 10:06:17 -04:00
serde_json = { version = "1.0.116" , default-features = false }
2024-05-02 09:54:52 -04:00
maud = { version = "0.26.0" , default-features = false , features = [
2024-03-25 05:16:49 -04:00
"actix-web" ,
] }
scraper = { version = "0.18.1" , default-features = false }
actix-web = { version = "4.4.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.1" , features = [
"luajit" ,
"vendored" ,
] , default-features = false }
redis = { version = "0.24.0" , features = [
"tokio-comp" ,
"connection-manager" ,
] , default-features = false , optional = true }
blake3 = { version = "1.5.0" , default-features = false }
error-stack = { version = "0.4.0" , default-features = false , features = [
"std" ,
] }
2024-05-02 09:59:45 -04:00
async-trait = { version = "0.1.80" , default-features = false }
2024-03-25 05:16:49 -04:00
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 }
2023-08-29 13:16:51 -04:00
mimalloc = { version = "0.1.38" , default-features = false }
2024-03-25 05:16:49 -04:00
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.6" , 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 }
2024-05-02 10:11:45 -04:00
keyword_extraction = { version = "1.4.3" , default-features = false , features = [
2024-03-25 05:16:49 -04:00
"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" ,
] }
2023-06-01 05:25:36 -04:00
[ dev-dependencies ]
2024-03-25 05:16:49 -04:00
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 }
2023-06-05 05:30:14 -04:00
2023-10-30 12:20:19 -04:00
[ build-dependencies ]
2024-05-02 10:25:11 -04:00
lightningcss = { version = "1.0.0-alpha.55" , default-features = false , features = [
2024-03-25 05:16:49 -04:00
"grid" ,
] }
2024-05-04 12:57:40 -04:00
# 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 }
2023-10-30 12:20:19 -04:00
2023-06-05 05:30:14 -04:00
[ profile . dev ]
opt-level = 0
debug = true
2023-11-08 11:04:57 -05:00
split-debuginfo = 'unpacked'
2023-06-05 05:30:14 -04:00
debug-assertions = true
overflow-checks = true
lto = false
panic = 'unwind'
incremental = true
codegen-units = 256
rpath = false
[ profile . release ]
opt-level = 3
2023-08-27 14:10:36 -04:00
debug = false # This should only be commented when testing with dhat profiler
# debug = 1 # This should only be uncommented when testing with dhat profiler
2023-06-05 05:30:14 -04:00
split-debuginfo = '...'
debug-assertions = false
overflow-checks = false
2024-03-13 04:25:54 -04:00
lto = 'thin'
2023-08-22 12:23:39 -04:00
panic = 'abort'
2023-06-05 05:30:14 -04:00
incremental = false
2023-08-30 12:05:38 -04:00
codegen-units = 1
2023-06-05 05:30:14 -04:00
rpath = false
2024-03-18 17:59:37 -04:00
strip = "symbols"
2023-08-27 14:10:36 -04:00
[ features ]
2024-03-25 05:16:49 -04:00
use-synonyms-search = [ "thesaurus/static" ]
2023-09-13 17:19:44 -04:00
default = [ "memory-cache" ]
2024-03-25 05:16:49 -04:00
dhat-heap = [ "dep:dhat" ]
2023-09-13 17:19:44 -04:00
memory-cache = [ "dep:mini-moka" ]
2024-03-25 05:16:49 -04:00
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" ]
2024-03-12 08:36:13 -04:00
experimental-io-uring = [ "actix-web/experimental-io-uring" ]
2024-03-25 05:16:49 -04:00
use-non-static-synonyms-search = [ "thesaurus" ]