Spaces:
Runtime error
Runtime error
Merge branch 'rolling' into check
Browse files- .gitpod.yml +45 -0
- CONTRIBUTING.md +1 -1
- Cargo.lock +440 -289
- Cargo.toml +2 -1
- PULL_REQUEST_TEMPLATE.md +1 -1
- README.md +2 -2
- public/static/pagination.js +2 -2
- src/config_parser/parser.rs +33 -40
- src/config_parser/parser_models.rs +1 -1
- src/engines/duckduckgo.rs +2 -2
- src/engines/engine_models.rs +1 -1
- src/search_results_handler/aggregator.rs +1 -1
- src/server/routes.rs +9 -33
.gitpod.yml
ADDED
@@ -0,0 +1,45 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
---
|
2 |
+
image: ubuntu:latest
|
3 |
+
# Commands that will run on workspace start
|
4 |
+
tasks:
|
5 |
+
- name: Setup, Install & Build
|
6 |
+
- before: apt install cargo redis-server nodejs npm && cargo test
|
7 |
+
- init: cargo install cargo-watch
|
8 |
+
- command: redis-server --port 8080 & cargo watch -q -w "." -x "run"
|
9 |
+
# Ports to expose on workspace startup
|
10 |
+
ports:
|
11 |
+
- name: Website
|
12 |
+
description: Website Preview
|
13 |
+
port: 8080
|
14 |
+
onOpen: open-browser
|
15 |
+
# vscode IDE setup
|
16 |
+
vscode:
|
17 |
+
extensions:
|
18 |
+
- vadimcn.vscode-lldb
|
19 |
+
- rust-lang.rust-analyzer
|
20 |
+
- bungcip.better-toml
|
21 |
+
- serayuzgur.crates
|
22 |
+
- usernamehw.errorlens
|
23 |
+
- DavidAnson.vscode-markdownlint
|
24 |
+
- esbenp.prettier-vscode
|
25 |
+
- stylelint.vscode-stylelint
|
26 |
+
- dbaeumer.vscode-eslint
|
27 |
+
- evgeniypeshkov.syntax-highlighter
|
28 |
+
- redhat.vscode-yaml
|
29 |
+
- ms-azuretools.vscode-docker
|
30 |
+
- GitHub.vscode-github-actions
|
31 |
+
- Catppuccin.catppuccin-vsc
|
32 |
+
- PKief.material-icon-theme
|
33 |
+
- tal7aouy.rainbow-bracket
|
34 |
+
- oderwat.indent-rainbow
|
35 |
+
- formulahendry.auto-rename-tag
|
36 |
+
- eamodio.gitlens
|
37 |
+
github:
|
38 |
+
prebuilds:
|
39 |
+
master: true
|
40 |
+
branches: true
|
41 |
+
pullRequests: true
|
42 |
+
pullRequestsFromForks: true
|
43 |
+
addCheck: true
|
44 |
+
addComment: false
|
45 |
+
addBadge: true
|
CONTRIBUTING.md
CHANGED
@@ -14,7 +14,7 @@ Know how to fix or improve a github action?. Consider Submitting a Pull request
|
|
14 |
|
15 |
## Source Code
|
16 |
|
17 |
-
You should know
|
18 |
|
19 |
- Rust basics
|
20 |
- Actix-web crate basics
|
|
|
14 |
|
15 |
## Source Code
|
16 |
|
17 |
+
You should know at least one of the things below to start contributing:
|
18 |
|
19 |
- Rust basics
|
20 |
- Actix-web crate basics
|
Cargo.lock
CHANGED
@@ -8,13 +8,13 @@ version = "0.5.1"
|
|
8 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
9 |
checksum = "617a8268e3537fe1d8c9ead925fca49ef6400927ee7bc26750e90ecee14ce4b8"
|
10 |
dependencies = [
|
11 |
-
"bitflags",
|
12 |
"bytes 1.4.0",
|
13 |
"futures-core",
|
14 |
"futures-sink",
|
15 |
"memchr",
|
16 |
"pin-project-lite",
|
17 |
-
"tokio 1.
|
18 |
"tokio-util",
|
19 |
"tracing",
|
20 |
]
|
@@ -30,7 +30,7 @@ dependencies = [
|
|
30 |
"actix-utils",
|
31 |
"actix-web",
|
32 |
"askama_escape",
|
33 |
-
"bitflags",
|
34 |
"bytes 1.4.0",
|
35 |
"derive_more",
|
36 |
"futures-core",
|
@@ -54,7 +54,7 @@ dependencies = [
|
|
54 |
"actix-utils",
|
55 |
"ahash 0.8.3",
|
56 |
"base64 0.21.2",
|
57 |
-
"bitflags",
|
58 |
"brotli",
|
59 |
"bytes 1.4.0",
|
60 |
"bytestring",
|
@@ -62,7 +62,7 @@ dependencies = [
|
|
62 |
"encoding_rs",
|
63 |
"flate2",
|
64 |
"futures-core",
|
65 |
-
"h2 0.3.
|
66 |
"http 0.2.9",
|
67 |
"httparse",
|
68 |
"httpdate",
|
@@ -75,7 +75,7 @@ dependencies = [
|
|
75 |
"rand 0.8.5",
|
76 |
"sha1",
|
77 |
"smallvec 1.10.0",
|
78 |
-
"tokio 1.
|
79 |
"tokio-util",
|
80 |
"tracing",
|
81 |
"zstd",
|
@@ -87,7 +87,7 @@ version = "0.2.3"
|
|
87 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
88 |
checksum = "465a6172cf69b960917811022d8f29bc0b7fa1398bc4f78b3c466673db1213b6"
|
89 |
dependencies = [
|
90 |
-
"quote 1.0.
|
91 |
"syn 1.0.109",
|
92 |
]
|
93 |
|
@@ -111,7 +111,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
111 |
checksum = "15265b6b8e2347670eb363c47fc8c75208b4a4994b27192f345fcbe707804f3e"
|
112 |
dependencies = [
|
113 |
"futures-core",
|
114 |
-
"tokio 1.
|
115 |
]
|
116 |
|
117 |
[[package]]
|
@@ -128,7 +128,7 @@ dependencies = [
|
|
128 |
"mio 0.8.8",
|
129 |
"num_cpus",
|
130 |
"socket2",
|
131 |
-
"tokio 1.
|
132 |
"tracing",
|
133 |
]
|
134 |
|
@@ -201,16 +201,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
201 |
checksum = "2262160a7ae29e3415554a3f1fc04c764b1540c116aa524683208078b7a75bc9"
|
202 |
dependencies = [
|
203 |
"actix-router",
|
204 |
-
"proc-macro2 1.0.
|
205 |
-
"quote 1.0.
|
206 |
"syn 1.0.109",
|
207 |
]
|
208 |
|
209 |
[[package]]
|
210 |
name = "addr2line"
|
211 |
-
version = "0.
|
212 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
213 |
-
checksum = "
|
214 |
dependencies = [
|
215 |
"gimli",
|
216 |
]
|
@@ -227,7 +227,7 @@ version = "0.7.6"
|
|
227 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
228 |
checksum = "fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47"
|
229 |
dependencies = [
|
230 |
-
"getrandom
|
231 |
"once_cell",
|
232 |
"version_check",
|
233 |
]
|
@@ -239,7 +239,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
239 |
checksum = "2c99f64d1e06488f620f932677e24bc6e2897582980441ae90a671415bd7ec2f"
|
240 |
dependencies = [
|
241 |
"cfg-if 1.0.0",
|
242 |
-
"getrandom
|
243 |
"once_cell",
|
244 |
"version_check",
|
245 |
]
|
@@ -268,6 +268,18 @@ dependencies = [
|
|
268 |
"alloc-no-stdlib",
|
269 |
]
|
270 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
271 |
[[package]]
|
272 |
name = "anyhow"
|
273 |
version = "1.0.71"
|
@@ -297,15 +309,15 @@ checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
|
|
297 |
|
298 |
[[package]]
|
299 |
name = "backtrace"
|
300 |
-
version = "0.3.
|
301 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
302 |
-
checksum = "
|
303 |
dependencies = [
|
304 |
"addr2line",
|
305 |
"cc",
|
306 |
"cfg-if 1.0.0",
|
307 |
"libc",
|
308 |
-
"miniz_oxide
|
309 |
"object",
|
310 |
"rustc-demangle",
|
311 |
]
|
@@ -346,6 +358,12 @@ version = "1.3.2"
|
|
346 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
347 |
checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
|
348 |
|
|
|
|
|
|
|
|
|
|
|
|
|
349 |
[[package]]
|
350 |
name = "block-buffer"
|
351 |
version = "0.10.4"
|
@@ -423,6 +441,12 @@ dependencies = [
|
|
423 |
"bytes 1.4.0",
|
424 |
]
|
425 |
|
|
|
|
|
|
|
|
|
|
|
|
|
426 |
[[package]]
|
427 |
name = "cc"
|
428 |
version = "1.0.79"
|
@@ -453,13 +477,65 @@ dependencies = [
|
|
453 |
"envmnt",
|
454 |
]
|
455 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
456 |
[[package]]
|
457 |
name = "cloudabi"
|
458 |
version = "0.0.3"
|
459 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
460 |
checksum = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f"
|
461 |
dependencies = [
|
462 |
-
"bitflags",
|
463 |
]
|
464 |
|
465 |
[[package]]
|
@@ -551,17 +627,74 @@ dependencies = [
|
|
551 |
"cfg-if 1.0.0",
|
552 |
]
|
553 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
554 |
[[package]]
|
555 |
name = "crossbeam-deque"
|
556 |
version = "0.7.4"
|
557 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
558 |
checksum = "c20ff29ded3204c5106278a81a38f4b482636ed4fa1e6cfbeef193291beb29ed"
|
559 |
dependencies = [
|
560 |
-
"crossbeam-epoch",
|
561 |
-
"crossbeam-utils",
|
562 |
"maybe-uninit",
|
563 |
]
|
564 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
565 |
[[package]]
|
566 |
name = "crossbeam-epoch"
|
567 |
version = "0.8.2"
|
@@ -570,10 +703,23 @@ checksum = "058ed274caafc1f60c4997b5fc07bf7dc7cca454af7c6e81edffe5f33f70dace"
|
|
570 |
dependencies = [
|
571 |
"autocfg 1.1.0",
|
572 |
"cfg-if 0.1.10",
|
573 |
-
"crossbeam-utils",
|
574 |
"lazy_static",
|
575 |
"maybe-uninit",
|
576 |
-
"memoffset",
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
577 |
"scopeguard",
|
578 |
]
|
579 |
|
@@ -584,7 +730,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
584 |
checksum = "774ba60a54c213d409d5353bda12d49cd68d14e45036a285234c8d6f91f92570"
|
585 |
dependencies = [
|
586 |
"cfg-if 0.1.10",
|
587 |
-
"crossbeam-utils",
|
588 |
"maybe-uninit",
|
589 |
]
|
590 |
|
@@ -599,6 +745,15 @@ dependencies = [
|
|
599 |
"lazy_static",
|
600 |
]
|
601 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
602 |
[[package]]
|
603 |
name = "crypto-common"
|
604 |
version = "0.1.6"
|
@@ -611,19 +766,15 @@ dependencies = [
|
|
611 |
|
612 |
[[package]]
|
613 |
name = "cssparser"
|
614 |
-
version = "0.
|
615 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
616 |
-
checksum = "
|
617 |
dependencies = [
|
618 |
"cssparser-macros",
|
619 |
"dtoa-short",
|
620 |
"itoa 1.0.6",
|
621 |
-
"
|
622 |
-
"phf 0.10.1",
|
623 |
-
"proc-macro2 1.0.60",
|
624 |
-
"quote 1.0.28",
|
625 |
"smallvec 1.10.0",
|
626 |
-
"syn 1.0.109",
|
627 |
]
|
628 |
|
629 |
[[package]]
|
@@ -632,8 +783,8 @@ version = "0.6.1"
|
|
632 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
633 |
checksum = "13b588ba4ac1a99f7f2964d24b3d896ddc6bf847ee3855dbd4366f058cfcd331"
|
634 |
dependencies = [
|
635 |
-
"quote 1.0.
|
636 |
-
"syn 2.0.
|
637 |
]
|
638 |
|
639 |
[[package]]
|
@@ -643,8 +794,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
643 |
checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321"
|
644 |
dependencies = [
|
645 |
"convert_case",
|
646 |
-
"proc-macro2 1.0.
|
647 |
-
"quote 1.0.
|
648 |
"rustc_version 0.4.0",
|
649 |
"syn 1.0.109",
|
650 |
]
|
@@ -771,8 +922,8 @@ version = "0.1.8"
|
|
771 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
772 |
checksum = "aa4da3c766cd7a0db8242e326e9e4e081edd567072893ed320008189715366a4"
|
773 |
dependencies = [
|
774 |
-
"proc-macro2 1.0.
|
775 |
-
"quote 1.0.
|
776 |
"syn 1.0.109",
|
777 |
"synstructure",
|
778 |
]
|
@@ -804,7 +955,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
804 |
checksum = "3b9429470923de8e8cbd4d2dc513535400b4b3fef0319fb5c4e1f520a7bef743"
|
805 |
dependencies = [
|
806 |
"crc32fast",
|
807 |
-
"miniz_oxide
|
808 |
]
|
809 |
|
810 |
[[package]]
|
@@ -855,7 +1006,7 @@ version = "0.3.3"
|
|
855 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
856 |
checksum = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82"
|
857 |
dependencies = [
|
858 |
-
"bitflags",
|
859 |
"fuchsia-zircon-sys",
|
860 |
]
|
861 |
|
@@ -958,17 +1109,6 @@ dependencies = [
|
|
958 |
"unicode-width",
|
959 |
]
|
960 |
|
961 |
-
[[package]]
|
962 |
-
name = "getrandom"
|
963 |
-
version = "0.1.16"
|
964 |
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
965 |
-
checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce"
|
966 |
-
dependencies = [
|
967 |
-
"cfg-if 1.0.0",
|
968 |
-
"libc",
|
969 |
-
"wasi 0.9.0+wasi-snapshot-preview1",
|
970 |
-
]
|
971 |
-
|
972 |
[[package]]
|
973 |
name = "getrandom"
|
974 |
version = "0.2.10"
|
@@ -1006,9 +1146,9 @@ dependencies = [
|
|
1006 |
|
1007 |
[[package]]
|
1008 |
name = "h2"
|
1009 |
-
version = "0.3.
|
1010 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1011 |
-
checksum = "
|
1012 |
dependencies = [
|
1013 |
"bytes 1.4.0",
|
1014 |
"fnv",
|
@@ -1018,11 +1158,17 @@ dependencies = [
|
|
1018 |
"http 0.2.9",
|
1019 |
"indexmap",
|
1020 |
"slab",
|
1021 |
-
"tokio 1.
|
1022 |
"tokio-util",
|
1023 |
"tracing",
|
1024 |
]
|
1025 |
|
|
|
|
|
|
|
|
|
|
|
|
|
1026 |
[[package]]
|
1027 |
name = "handlebars"
|
1028 |
version = "4.3.7"
|
@@ -1044,15 +1190,6 @@ version = "0.12.3"
|
|
1044 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1045 |
checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
|
1046 |
|
1047 |
-
[[package]]
|
1048 |
-
name = "hermit-abi"
|
1049 |
-
version = "0.2.6"
|
1050 |
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1051 |
-
checksum = "ee512640fe35acbfb4bb779db6f0d80704c2cacfa2e39b601ef3e3f47d1ae4c7"
|
1052 |
-
dependencies = [
|
1053 |
-
"libc",
|
1054 |
-
]
|
1055 |
-
|
1056 |
[[package]]
|
1057 |
name = "hermit-abi"
|
1058 |
version = "0.3.1"
|
@@ -1082,8 +1219,8 @@ dependencies = [
|
|
1082 |
"log",
|
1083 |
"mac",
|
1084 |
"markup5ever 0.11.0",
|
1085 |
-
"proc-macro2 1.0.
|
1086 |
-
"quote 1.0.
|
1087 |
"syn 1.0.109",
|
1088 |
]
|
1089 |
|
@@ -1188,15 +1325,15 @@ dependencies = [
|
|
1188 |
|
1189 |
[[package]]
|
1190 |
name = "hyper"
|
1191 |
-
version = "0.14.
|
1192 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1193 |
-
checksum = "
|
1194 |
dependencies = [
|
1195 |
"bytes 1.4.0",
|
1196 |
"futures-channel",
|
1197 |
"futures-core",
|
1198 |
"futures-util",
|
1199 |
-
"h2 0.3.
|
1200 |
"http 0.2.9",
|
1201 |
"http-body 0.4.5",
|
1202 |
"httparse",
|
@@ -1204,7 +1341,7 @@ dependencies = [
|
|
1204 |
"itoa 1.0.6",
|
1205 |
"pin-project-lite",
|
1206 |
"socket2",
|
1207 |
-
"tokio 1.
|
1208 |
"tower-service",
|
1209 |
"tracing",
|
1210 |
"want 0.3.1",
|
@@ -1230,9 +1367,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1230 |
checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905"
|
1231 |
dependencies = [
|
1232 |
"bytes 1.4.0",
|
1233 |
-
"hyper 0.14.
|
1234 |
"native-tls",
|
1235 |
-
"tokio 1.
|
1236 |
"tokio-native-tls",
|
1237 |
]
|
1238 |
|
@@ -1293,7 +1430,7 @@ version = "1.0.11"
|
|
1293 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1294 |
checksum = "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2"
|
1295 |
dependencies = [
|
1296 |
-
"hermit-abi
|
1297 |
"libc",
|
1298 |
"windows-sys 0.48.0",
|
1299 |
]
|
@@ -1309,22 +1446,30 @@ dependencies = [
|
|
1309 |
|
1310 |
[[package]]
|
1311 |
name = "ipnet"
|
1312 |
-
version = "2.
|
1313 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1314 |
-
checksum = "
|
1315 |
|
1316 |
[[package]]
|
1317 |
name = "is-terminal"
|
1318 |
-
version = "0.4.
|
1319 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1320 |
-
checksum = "
|
1321 |
dependencies = [
|
1322 |
-
"hermit-abi
|
1323 |
-
"
|
1324 |
-
"rustix",
|
1325 |
"windows-sys 0.48.0",
|
1326 |
]
|
1327 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1328 |
[[package]]
|
1329 |
name = "itoa"
|
1330 |
version = "0.4.8"
|
@@ -1379,9 +1524,9 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
|
|
1379 |
|
1380 |
[[package]]
|
1381 |
name = "libc"
|
1382 |
-
version = "0.2.
|
1383 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1384 |
-
checksum = "
|
1385 |
|
1386 |
[[package]]
|
1387 |
name = "linux-raw-sys"
|
@@ -1389,6 +1534,12 @@ version = "0.3.8"
|
|
1389 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1390 |
checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519"
|
1391 |
|
|
|
|
|
|
|
|
|
|
|
|
|
1392 |
[[package]]
|
1393 |
name = "local-channel"
|
1394 |
version = "0.1.3"
|
@@ -1502,6 +1653,15 @@ dependencies = [
|
|
1502 |
"autocfg 1.1.0",
|
1503 |
]
|
1504 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1505 |
[[package]]
|
1506 |
name = "mime"
|
1507 |
version = "0.3.17"
|
@@ -1518,15 +1678,6 @@ dependencies = [
|
|
1518 |
"unicase",
|
1519 |
]
|
1520 |
|
1521 |
-
[[package]]
|
1522 |
-
name = "miniz_oxide"
|
1523 |
-
version = "0.6.2"
|
1524 |
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1525 |
-
checksum = "b275950c28b37e794e8c55d88aeb5e139d0ce23fdbbeda68f8d7174abdf9e8fa"
|
1526 |
-
dependencies = [
|
1527 |
-
"adler",
|
1528 |
-
]
|
1529 |
-
|
1530 |
[[package]]
|
1531 |
name = "miniz_oxide"
|
1532 |
version = "0.7.1"
|
@@ -1620,12 +1771,6 @@ version = "0.5.0"
|
|
1620 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1621 |
checksum = "ab250442c86f1850815b5d268639dff018c0627022bc1940eb2d642ca1ce12f0"
|
1622 |
|
1623 |
-
[[package]]
|
1624 |
-
name = "nodrop"
|
1625 |
-
version = "0.1.14"
|
1626 |
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1627 |
-
checksum = "72ef4a56884ca558e5ddb05a1d1e7e1bfd9a68d9ed024c21704cc98872dae1bb"
|
1628 |
-
|
1629 |
[[package]]
|
1630 |
name = "num-traits"
|
1631 |
version = "0.2.15"
|
@@ -1637,19 +1782,19 @@ dependencies = [
|
|
1637 |
|
1638 |
[[package]]
|
1639 |
name = "num_cpus"
|
1640 |
-
version = "1.
|
1641 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1642 |
-
checksum = "
|
1643 |
dependencies = [
|
1644 |
-
"hermit-abi
|
1645 |
"libc",
|
1646 |
]
|
1647 |
|
1648 |
[[package]]
|
1649 |
name = "object"
|
1650 |
-
version = "0.
|
1651 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1652 |
-
checksum = "
|
1653 |
dependencies = [
|
1654 |
"memchr",
|
1655 |
]
|
@@ -1660,13 +1805,19 @@ version = "1.18.0"
|
|
1660 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1661 |
checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d"
|
1662 |
|
|
|
|
|
|
|
|
|
|
|
|
|
1663 |
[[package]]
|
1664 |
name = "openssl"
|
1665 |
-
version = "0.10.
|
1666 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1667 |
-
checksum = "
|
1668 |
dependencies = [
|
1669 |
-
"bitflags",
|
1670 |
"cfg-if 1.0.0",
|
1671 |
"foreign-types",
|
1672 |
"libc",
|
@@ -1681,9 +1832,9 @@ version = "0.1.1"
|
|
1681 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1682 |
checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
|
1683 |
dependencies = [
|
1684 |
-
"proc-macro2 1.0.
|
1685 |
-
"quote 1.0.
|
1686 |
-
"syn 2.0.
|
1687 |
]
|
1688 |
|
1689 |
[[package]]
|
@@ -1694,9 +1845,9 @@ checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf"
|
|
1694 |
|
1695 |
[[package]]
|
1696 |
name = "openssl-sys"
|
1697 |
-
version = "0.9.
|
1698 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1699 |
-
checksum = "
|
1700 |
dependencies = [
|
1701 |
"cc",
|
1702 |
"libc",
|
@@ -1773,9 +1924,9 @@ checksum = "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94"
|
|
1773 |
|
1774 |
[[package]]
|
1775 |
name = "pest"
|
1776 |
-
version = "2.
|
1777 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1778 |
-
checksum = "
|
1779 |
dependencies = [
|
1780 |
"thiserror",
|
1781 |
"ucd-trie",
|
@@ -1783,9 +1934,9 @@ dependencies = [
|
|
1783 |
|
1784 |
[[package]]
|
1785 |
name = "pest_derive"
|
1786 |
-
version = "2.
|
1787 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1788 |
-
checksum = "
|
1789 |
dependencies = [
|
1790 |
"pest",
|
1791 |
"pest_generator",
|
@@ -1793,22 +1944,22 @@ dependencies = [
|
|
1793 |
|
1794 |
[[package]]
|
1795 |
name = "pest_generator"
|
1796 |
-
version = "2.
|
1797 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1798 |
-
checksum = "
|
1799 |
dependencies = [
|
1800 |
"pest",
|
1801 |
"pest_meta",
|
1802 |
-
"proc-macro2 1.0.
|
1803 |
-
"quote 1.0.
|
1804 |
-
"syn 2.0.
|
1805 |
]
|
1806 |
|
1807 |
[[package]]
|
1808 |
name = "pest_meta"
|
1809 |
-
version = "2.
|
1810 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1811 |
-
checksum = "
|
1812 |
dependencies = [
|
1813 |
"once_cell",
|
1814 |
"pest",
|
@@ -1826,22 +1977,21 @@ dependencies = [
|
|
1826 |
|
1827 |
[[package]]
|
1828 |
name = "phf"
|
1829 |
-
version = "0.
|
1830 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1831 |
-
checksum = "
|
1832 |
dependencies = [
|
1833 |
-
"phf_shared 0.
|
1834 |
]
|
1835 |
|
1836 |
[[package]]
|
1837 |
name = "phf"
|
1838 |
-
version = "0.
|
1839 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1840 |
-
checksum = "
|
1841 |
dependencies = [
|
1842 |
"phf_macros",
|
1843 |
-
"phf_shared 0.
|
1844 |
-
"proc-macro-hack",
|
1845 |
]
|
1846 |
|
1847 |
[[package]]
|
@@ -1854,16 +2004,6 @@ dependencies = [
|
|
1854 |
"phf_shared 0.7.24",
|
1855 |
]
|
1856 |
|
1857 |
-
[[package]]
|
1858 |
-
name = "phf_codegen"
|
1859 |
-
version = "0.8.0"
|
1860 |
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1861 |
-
checksum = "cbffee61585b0411840d3ece935cce9cb6321f01c45477d30066498cd5e1a815"
|
1862 |
-
dependencies = [
|
1863 |
-
"phf_generator 0.8.0",
|
1864 |
-
"phf_shared 0.8.0",
|
1865 |
-
]
|
1866 |
-
|
1867 |
[[package]]
|
1868 |
name = "phf_codegen"
|
1869 |
version = "0.10.0"
|
@@ -1886,36 +2026,35 @@ dependencies = [
|
|
1886 |
|
1887 |
[[package]]
|
1888 |
name = "phf_generator"
|
1889 |
-
version = "0.
|
1890 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1891 |
-
checksum = "
|
1892 |
dependencies = [
|
1893 |
-
"phf_shared 0.
|
1894 |
-
"rand 0.
|
1895 |
]
|
1896 |
|
1897 |
[[package]]
|
1898 |
name = "phf_generator"
|
1899 |
-
version = "0.
|
1900 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1901 |
-
checksum = "
|
1902 |
dependencies = [
|
1903 |
-
"phf_shared 0.
|
1904 |
"rand 0.8.5",
|
1905 |
]
|
1906 |
|
1907 |
[[package]]
|
1908 |
name = "phf_macros"
|
1909 |
-
version = "0.
|
1910 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1911 |
-
checksum = "
|
1912 |
dependencies = [
|
1913 |
-
"phf_generator 0.
|
1914 |
-
"phf_shared 0.
|
1915 |
-
"proc-
|
1916 |
-
"
|
1917 |
-
"
|
1918 |
-
"syn 1.0.109",
|
1919 |
]
|
1920 |
|
1921 |
[[package]]
|
@@ -1929,18 +2068,18 @@ dependencies = [
|
|
1929 |
|
1930 |
[[package]]
|
1931 |
name = "phf_shared"
|
1932 |
-
version = "0.
|
1933 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1934 |
-
checksum = "
|
1935 |
dependencies = [
|
1936 |
"siphasher 0.3.10",
|
1937 |
]
|
1938 |
|
1939 |
[[package]]
|
1940 |
name = "phf_shared"
|
1941 |
-
version = "0.
|
1942 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1943 |
-
checksum = "
|
1944 |
dependencies = [
|
1945 |
"siphasher 0.3.10",
|
1946 |
]
|
@@ -1963,6 +2102,34 @@ version = "0.3.27"
|
|
1963 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1964 |
checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964"
|
1965 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1966 |
[[package]]
|
1967 |
name = "ppv-lite86"
|
1968 |
version = "0.2.17"
|
@@ -1975,12 +2142,6 @@ version = "0.1.1"
|
|
1975 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1976 |
checksum = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c"
|
1977 |
|
1978 |
-
[[package]]
|
1979 |
-
name = "proc-macro-hack"
|
1980 |
-
version = "0.5.20+deprecated"
|
1981 |
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1982 |
-
checksum = "dc375e1527247fe1a97d8b7156678dfe7c1af2fc075c9a4db3690ecd2a148068"
|
1983 |
-
|
1984 |
[[package]]
|
1985 |
name = "proc-macro2"
|
1986 |
version = "0.4.30"
|
@@ -1992,9 +2153,9 @@ dependencies = [
|
|
1992 |
|
1993 |
[[package]]
|
1994 |
name = "proc-macro2"
|
1995 |
-
version = "1.0.
|
1996 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1997 |
-
checksum = "
|
1998 |
dependencies = [
|
1999 |
"unicode-ident",
|
2000 |
]
|
@@ -2020,11 +2181,11 @@ dependencies = [
|
|
2020 |
|
2021 |
[[package]]
|
2022 |
name = "quote"
|
2023 |
-
version = "1.0.
|
2024 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025 |
-
checksum = "
|
2026 |
dependencies = [
|
2027 |
-
"proc-macro2 1.0.
|
2028 |
]
|
2029 |
|
2030 |
[[package]]
|
@@ -2037,29 +2198,15 @@ dependencies = [
|
|
2037 |
"libc",
|
2038 |
"rand_chacha 0.1.1",
|
2039 |
"rand_core 0.4.2",
|
2040 |
-
"rand_hc
|
2041 |
"rand_isaac",
|
2042 |
"rand_jitter",
|
2043 |
"rand_os",
|
2044 |
-
"rand_pcg
|
2045 |
"rand_xorshift",
|
2046 |
"winapi 0.3.9",
|
2047 |
]
|
2048 |
|
2049 |
-
[[package]]
|
2050 |
-
name = "rand"
|
2051 |
-
version = "0.7.3"
|
2052 |
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2053 |
-
checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03"
|
2054 |
-
dependencies = [
|
2055 |
-
"getrandom 0.1.16",
|
2056 |
-
"libc",
|
2057 |
-
"rand_chacha 0.2.2",
|
2058 |
-
"rand_core 0.5.1",
|
2059 |
-
"rand_hc 0.2.0",
|
2060 |
-
"rand_pcg 0.2.1",
|
2061 |
-
]
|
2062 |
-
|
2063 |
[[package]]
|
2064 |
name = "rand"
|
2065 |
version = "0.8.5"
|
@@ -2081,16 +2228,6 @@ dependencies = [
|
|
2081 |
"rand_core 0.3.1",
|
2082 |
]
|
2083 |
|
2084 |
-
[[package]]
|
2085 |
-
name = "rand_chacha"
|
2086 |
-
version = "0.2.2"
|
2087 |
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2088 |
-
checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402"
|
2089 |
-
dependencies = [
|
2090 |
-
"ppv-lite86",
|
2091 |
-
"rand_core 0.5.1",
|
2092 |
-
]
|
2093 |
-
|
2094 |
[[package]]
|
2095 |
name = "rand_chacha"
|
2096 |
version = "0.3.1"
|
@@ -2116,22 +2253,13 @@ version = "0.4.2"
|
|
2116 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2117 |
checksum = "9c33a3c44ca05fa6f1807d8e6743f3824e8509beca625669633be0acbdf509dc"
|
2118 |
|
2119 |
-
[[package]]
|
2120 |
-
name = "rand_core"
|
2121 |
-
version = "0.5.1"
|
2122 |
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2123 |
-
checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
|
2124 |
-
dependencies = [
|
2125 |
-
"getrandom 0.1.16",
|
2126 |
-
]
|
2127 |
-
|
2128 |
[[package]]
|
2129 |
name = "rand_core"
|
2130 |
version = "0.6.4"
|
2131 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2132 |
checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
|
2133 |
dependencies = [
|
2134 |
-
"getrandom
|
2135 |
]
|
2136 |
|
2137 |
[[package]]
|
@@ -2143,15 +2271,6 @@ dependencies = [
|
|
2143 |
"rand_core 0.3.1",
|
2144 |
]
|
2145 |
|
2146 |
-
[[package]]
|
2147 |
-
name = "rand_hc"
|
2148 |
-
version = "0.2.0"
|
2149 |
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2150 |
-
checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
|
2151 |
-
dependencies = [
|
2152 |
-
"rand_core 0.5.1",
|
2153 |
-
]
|
2154 |
-
|
2155 |
[[package]]
|
2156 |
name = "rand_isaac"
|
2157 |
version = "0.1.1"
|
@@ -2197,21 +2316,34 @@ dependencies = [
|
|
2197 |
]
|
2198 |
|
2199 |
[[package]]
|
2200 |
-
name = "
|
2201 |
-
version = "0.
|
2202 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2203 |
-
checksum = "
|
2204 |
dependencies = [
|
2205 |
-
"rand_core 0.
|
2206 |
]
|
2207 |
|
2208 |
[[package]]
|
2209 |
-
name = "
|
2210 |
-
version = "
|
2211 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2212 |
-
checksum = "
|
2213 |
dependencies = [
|
2214 |
-
"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2215 |
]
|
2216 |
|
2217 |
[[package]]
|
@@ -2249,7 +2381,7 @@ version = "0.3.5"
|
|
2249 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2250 |
checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29"
|
2251 |
dependencies = [
|
2252 |
-
"bitflags",
|
2253 |
]
|
2254 |
|
2255 |
[[package]]
|
@@ -2314,10 +2446,10 @@ dependencies = [
|
|
2314 |
"encoding_rs",
|
2315 |
"futures-core",
|
2316 |
"futures-util",
|
2317 |
-
"h2 0.3.
|
2318 |
"http 0.2.9",
|
2319 |
"http-body 0.4.5",
|
2320 |
-
"hyper 0.14.
|
2321 |
"hyper-tls 0.5.0",
|
2322 |
"ipnet",
|
2323 |
"js-sys",
|
@@ -2330,7 +2462,7 @@ dependencies = [
|
|
2330 |
"serde",
|
2331 |
"serde_json",
|
2332 |
"serde_urlencoded 0.7.1",
|
2333 |
-
"tokio 1.
|
2334 |
"tokio-native-tls",
|
2335 |
"tower-service",
|
2336 |
"url 2.4.0",
|
@@ -2346,7 +2478,7 @@ version = "0.19.5"
|
|
2346 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2347 |
checksum = "753540fb29c9a615ce5dd64be5c957271adc887c8424555fc372e0b88ebde074"
|
2348 |
dependencies = [
|
2349 |
-
"bitflags",
|
2350 |
"bstr",
|
2351 |
"libc",
|
2352 |
"num-traits",
|
@@ -2390,15 +2522,28 @@ dependencies = [
|
|
2390 |
|
2391 |
[[package]]
|
2392 |
name = "rustix"
|
2393 |
-
version = "0.37.
|
2394 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2395 |
-
checksum = "
|
2396 |
dependencies = [
|
2397 |
-
"bitflags",
|
2398 |
"errno",
|
2399 |
"io-lifetimes",
|
2400 |
"libc",
|
2401 |
-
"linux-raw-sys",
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2402 |
"windows-sys 0.48.0",
|
2403 |
]
|
2404 |
|
@@ -2446,9 +2591,9 @@ checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd"
|
|
2446 |
|
2447 |
[[package]]
|
2448 |
name = "scraper"
|
2449 |
-
version = "0.
|
2450 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2451 |
-
checksum = "
|
2452 |
dependencies = [
|
2453 |
"ahash 0.8.3",
|
2454 |
"cssparser",
|
@@ -2467,7 +2612,7 @@ version = "2.9.1"
|
|
2467 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2468 |
checksum = "1fc758eb7bffce5b308734e9b0c1468893cae9ff70ebf13e7090be8dcbcc83a8"
|
2469 |
dependencies = [
|
2470 |
-
"bitflags",
|
2471 |
"core-foundation",
|
2472 |
"core-foundation-sys",
|
2473 |
"libc",
|
@@ -2496,17 +2641,18 @@ dependencies = [
|
|
2496 |
|
2497 |
[[package]]
|
2498 |
name = "selectors"
|
2499 |
-
version = "0.
|
2500 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2501 |
-
checksum = "
|
2502 |
dependencies = [
|
2503 |
-
"bitflags",
|
2504 |
"cssparser",
|
2505 |
"derive_more",
|
2506 |
"fxhash",
|
2507 |
"log",
|
2508 |
-
"
|
2509 |
-
"
|
|
|
2510 |
"precomputed-hash",
|
2511 |
"servo_arc",
|
2512 |
"smallvec 1.10.0",
|
@@ -2548,16 +2694,16 @@ version = "1.0.164"
|
|
2548 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2549 |
checksum = "d9735b638ccc51c28bf6914d90a2e9725b377144fc612c49a611fddd1b631d68"
|
2550 |
dependencies = [
|
2551 |
-
"proc-macro2 1.0.
|
2552 |
-
"quote 1.0.
|
2553 |
-
"syn 2.0.
|
2554 |
]
|
2555 |
|
2556 |
[[package]]
|
2557 |
name = "serde_json"
|
2558 |
-
version = "1.0.
|
2559 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2560 |
-
checksum = "
|
2561 |
dependencies = [
|
2562 |
"itoa 1.0.6",
|
2563 |
"ryu",
|
@@ -2590,11 +2736,10 @@ dependencies = [
|
|
2590 |
|
2591 |
[[package]]
|
2592 |
name = "servo_arc"
|
2593 |
-
version = "0.
|
2594 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2595 |
-
checksum = "
|
2596 |
dependencies = [
|
2597 |
-
"nodrop",
|
2598 |
"stable_deref_trait",
|
2599 |
]
|
2600 |
|
@@ -2733,8 +2878,8 @@ checksum = "f0f45ed1b65bf9a4bf2f7b7dc59212d1926e9eaf00fa998988e420fd124467c6"
|
|
2733 |
dependencies = [
|
2734 |
"phf_generator 0.7.24",
|
2735 |
"phf_shared 0.7.24",
|
2736 |
-
"proc-macro2 1.0.
|
2737 |
-
"quote 1.0.
|
2738 |
"string_cache_shared",
|
2739 |
]
|
2740 |
|
@@ -2746,8 +2891,8 @@ checksum = "6bb30289b722be4ff74a408c3cc27edeaad656e06cb1fe8fa9231fa59c728988"
|
|
2746 |
dependencies = [
|
2747 |
"phf_generator 0.10.0",
|
2748 |
"phf_shared 0.10.0",
|
2749 |
-
"proc-macro2 1.0.
|
2750 |
-
"quote 1.0.
|
2751 |
]
|
2752 |
|
2753 |
[[package]]
|
@@ -2773,19 +2918,19 @@ version = "1.0.109"
|
|
2773 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2774 |
checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
|
2775 |
dependencies = [
|
2776 |
-
"proc-macro2 1.0.
|
2777 |
-
"quote 1.0.
|
2778 |
"unicode-ident",
|
2779 |
]
|
2780 |
|
2781 |
[[package]]
|
2782 |
name = "syn"
|
2783 |
-
version = "2.0.
|
2784 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2785 |
-
checksum = "
|
2786 |
dependencies = [
|
2787 |
-
"proc-macro2 1.0.
|
2788 |
-
"quote 1.0.
|
2789 |
"unicode-ident",
|
2790 |
]
|
2791 |
|
@@ -2795,8 +2940,8 @@ version = "0.12.6"
|
|
2795 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2796 |
checksum = "f36bdaa60a83aca3921b5259d5400cbf5e90fc51931376a9bd4a0eb79aa7210f"
|
2797 |
dependencies = [
|
2798 |
-
"proc-macro2 1.0.
|
2799 |
-
"quote 1.0.
|
2800 |
"syn 1.0.109",
|
2801 |
"unicode-xid 0.2.4",
|
2802 |
]
|
@@ -2811,7 +2956,7 @@ dependencies = [
|
|
2811 |
"cfg-if 1.0.0",
|
2812 |
"fastrand",
|
2813 |
"redox_syscall 0.3.5",
|
2814 |
-
"rustix",
|
2815 |
"windows-sys 0.48.0",
|
2816 |
]
|
2817 |
|
@@ -2850,9 +2995,9 @@ version = "1.0.40"
|
|
2850 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2851 |
checksum = "f9456a42c5b0d803c8cd86e73dd7cc9edd429499f37a3550d286d5e86720569f"
|
2852 |
dependencies = [
|
2853 |
-
"proc-macro2 1.0.
|
2854 |
-
"quote 1.0.
|
2855 |
-
"syn 2.0.
|
2856 |
]
|
2857 |
|
2858 |
[[package]]
|
@@ -2893,6 +3038,16 @@ dependencies = [
|
|
2893 |
"time-core",
|
2894 |
]
|
2895 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2896 |
[[package]]
|
2897 |
name = "tinyvec"
|
2898 |
version = "1.6.0"
|
@@ -2929,11 +3084,12 @@ dependencies = [
|
|
2929 |
|
2930 |
[[package]]
|
2931 |
name = "tokio"
|
2932 |
-
version = "1.
|
2933 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2934 |
-
checksum = "
|
2935 |
dependencies = [
|
2936 |
"autocfg 1.1.0",
|
|
|
2937 |
"bytes 1.4.0",
|
2938 |
"libc",
|
2939 |
"mio 0.8.8",
|
@@ -2973,7 +3129,7 @@ version = "0.1.10"
|
|
2973 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2974 |
checksum = "fb2d1b8f4548dbf5e1f7818512e9c406860678f29c300cdf0ebac72d1a3a1671"
|
2975 |
dependencies = [
|
2976 |
-
"crossbeam-utils",
|
2977 |
"futures",
|
2978 |
]
|
2979 |
|
@@ -2994,9 +3150,9 @@ version = "2.1.0"
|
|
2994 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2995 |
checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e"
|
2996 |
dependencies = [
|
2997 |
-
"proc-macro2 1.0.
|
2998 |
-
"quote 1.0.
|
2999 |
-
"syn 2.0.
|
3000 |
]
|
3001 |
|
3002 |
[[package]]
|
@@ -3006,7 +3162,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
3006 |
checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2"
|
3007 |
dependencies = [
|
3008 |
"native-tls",
|
3009 |
-
"tokio 1.
|
3010 |
]
|
3011 |
|
3012 |
[[package]]
|
@@ -3015,7 +3171,7 @@ version = "0.1.12"
|
|
3015 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
3016 |
checksum = "09bc590ec4ba8ba87652da2068d150dcada2cfa2e07faae270a5e0409aa51351"
|
3017 |
dependencies = [
|
3018 |
-
"crossbeam-utils",
|
3019 |
"futures",
|
3020 |
"lazy_static",
|
3021 |
"log",
|
@@ -3058,9 +3214,9 @@ version = "0.1.18"
|
|
3058 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
3059 |
checksum = "df720b6581784c118f0eb4310796b12b1d242a7eb95f716a8367855325c25f89"
|
3060 |
dependencies = [
|
3061 |
-
"crossbeam-deque",
|
3062 |
"crossbeam-queue",
|
3063 |
-
"crossbeam-utils",
|
3064 |
"futures",
|
3065 |
"lazy_static",
|
3066 |
"log",
|
@@ -3075,7 +3231,7 @@ version = "0.2.13"
|
|
3075 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
3076 |
checksum = "93044f2d313c95ff1cb7809ce9a7a05735b012288a888b62d4434fd58c94f296"
|
3077 |
dependencies = [
|
3078 |
-
"crossbeam-utils",
|
3079 |
"futures",
|
3080 |
"slab",
|
3081 |
"tokio-executor",
|
@@ -3091,7 +3247,7 @@ dependencies = [
|
|
3091 |
"futures-core",
|
3092 |
"futures-sink",
|
3093 |
"pin-project-lite",
|
3094 |
-
"tokio 1.
|
3095 |
"tracing",
|
3096 |
]
|
3097 |
|
@@ -3285,12 +3441,6 @@ dependencies = [
|
|
3285 |
"try-lock",
|
3286 |
]
|
3287 |
|
3288 |
-
[[package]]
|
3289 |
-
name = "wasi"
|
3290 |
-
version = "0.9.0+wasi-snapshot-preview1"
|
3291 |
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
3292 |
-
checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519"
|
3293 |
-
|
3294 |
[[package]]
|
3295 |
name = "wasi"
|
3296 |
version = "0.10.0+wasi-snapshot-preview1"
|
@@ -3322,9 +3472,9 @@ dependencies = [
|
|
3322 |
"bumpalo",
|
3323 |
"log",
|
3324 |
"once_cell",
|
3325 |
-
"proc-macro2 1.0.
|
3326 |
-
"quote 1.0.
|
3327 |
-
"syn 2.0.
|
3328 |
"wasm-bindgen-shared",
|
3329 |
]
|
3330 |
|
@@ -3346,7 +3496,7 @@ version = "0.2.87"
|
|
3346 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
3347 |
checksum = "dee495e55982a3bd48105a7b947fd2a9b4a8ae3010041b9e0faab3f9cd028f1d"
|
3348 |
dependencies = [
|
3349 |
-
"quote 1.0.
|
3350 |
"wasm-bindgen-macro-support",
|
3351 |
]
|
3352 |
|
@@ -3356,9 +3506,9 @@ version = "0.2.87"
|
|
3356 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
3357 |
checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b"
|
3358 |
dependencies = [
|
3359 |
-
"proc-macro2 1.0.
|
3360 |
-
"quote 1.0.
|
3361 |
-
"syn 2.0.
|
3362 |
"wasm-bindgen-backend",
|
3363 |
"wasm-bindgen-shared",
|
3364 |
]
|
@@ -3381,10 +3531,11 @@ dependencies = [
|
|
3381 |
|
3382 |
[[package]]
|
3383 |
name = "websurfx"
|
3384 |
-
version = "0.13.
|
3385 |
dependencies = [
|
3386 |
"actix-files",
|
3387 |
"actix-web",
|
|
|
3388 |
"env_logger",
|
3389 |
"error-stack",
|
3390 |
"fake-useragent",
|
@@ -3400,7 +3551,7 @@ dependencies = [
|
|
3400 |
"scraper",
|
3401 |
"serde",
|
3402 |
"serde_json",
|
3403 |
-
"tokio 1.
|
3404 |
]
|
3405 |
|
3406 |
[[package]]
|
@@ -3472,9 +3623,9 @@ dependencies = [
|
|
3472 |
|
3473 |
[[package]]
|
3474 |
name = "windows-targets"
|
3475 |
-
version = "0.48.
|
3476 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
3477 |
-
checksum = "
|
3478 |
dependencies = [
|
3479 |
"windows_aarch64_gnullvm 0.48.0",
|
3480 |
"windows_aarch64_msvc 0.48.0",
|
|
|
8 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
9 |
checksum = "617a8268e3537fe1d8c9ead925fca49ef6400927ee7bc26750e90ecee14ce4b8"
|
10 |
dependencies = [
|
11 |
+
"bitflags 1.3.2",
|
12 |
"bytes 1.4.0",
|
13 |
"futures-core",
|
14 |
"futures-sink",
|
15 |
"memchr",
|
16 |
"pin-project-lite",
|
17 |
+
"tokio 1.29.1",
|
18 |
"tokio-util",
|
19 |
"tracing",
|
20 |
]
|
|
|
30 |
"actix-utils",
|
31 |
"actix-web",
|
32 |
"askama_escape",
|
33 |
+
"bitflags 1.3.2",
|
34 |
"bytes 1.4.0",
|
35 |
"derive_more",
|
36 |
"futures-core",
|
|
|
54 |
"actix-utils",
|
55 |
"ahash 0.8.3",
|
56 |
"base64 0.21.2",
|
57 |
+
"bitflags 1.3.2",
|
58 |
"brotli",
|
59 |
"bytes 1.4.0",
|
60 |
"bytestring",
|
|
|
62 |
"encoding_rs",
|
63 |
"flate2",
|
64 |
"futures-core",
|
65 |
+
"h2 0.3.20",
|
66 |
"http 0.2.9",
|
67 |
"httparse",
|
68 |
"httpdate",
|
|
|
75 |
"rand 0.8.5",
|
76 |
"sha1",
|
77 |
"smallvec 1.10.0",
|
78 |
+
"tokio 1.29.1",
|
79 |
"tokio-util",
|
80 |
"tracing",
|
81 |
"zstd",
|
|
|
87 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
88 |
checksum = "465a6172cf69b960917811022d8f29bc0b7fa1398bc4f78b3c466673db1213b6"
|
89 |
dependencies = [
|
90 |
+
"quote 1.0.29",
|
91 |
"syn 1.0.109",
|
92 |
]
|
93 |
|
|
|
111 |
checksum = "15265b6b8e2347670eb363c47fc8c75208b4a4994b27192f345fcbe707804f3e"
|
112 |
dependencies = [
|
113 |
"futures-core",
|
114 |
+
"tokio 1.29.1",
|
115 |
]
|
116 |
|
117 |
[[package]]
|
|
|
128 |
"mio 0.8.8",
|
129 |
"num_cpus",
|
130 |
"socket2",
|
131 |
+
"tokio 1.29.1",
|
132 |
"tracing",
|
133 |
]
|
134 |
|
|
|
201 |
checksum = "2262160a7ae29e3415554a3f1fc04c764b1540c116aa524683208078b7a75bc9"
|
202 |
dependencies = [
|
203 |
"actix-router",
|
204 |
+
"proc-macro2 1.0.63",
|
205 |
+
"quote 1.0.29",
|
206 |
"syn 1.0.109",
|
207 |
]
|
208 |
|
209 |
[[package]]
|
210 |
name = "addr2line"
|
211 |
+
version = "0.20.0"
|
212 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
213 |
+
checksum = "f4fa78e18c64fce05e902adecd7a5eed15a5e0a3439f7b0e169f0252214865e3"
|
214 |
dependencies = [
|
215 |
"gimli",
|
216 |
]
|
|
|
227 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
228 |
checksum = "fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47"
|
229 |
dependencies = [
|
230 |
+
"getrandom",
|
231 |
"once_cell",
|
232 |
"version_check",
|
233 |
]
|
|
|
239 |
checksum = "2c99f64d1e06488f620f932677e24bc6e2897582980441ae90a671415bd7ec2f"
|
240 |
dependencies = [
|
241 |
"cfg-if 1.0.0",
|
242 |
+
"getrandom",
|
243 |
"once_cell",
|
244 |
"version_check",
|
245 |
]
|
|
|
268 |
"alloc-no-stdlib",
|
269 |
]
|
270 |
|
271 |
+
[[package]]
|
272 |
+
name = "anes"
|
273 |
+
version = "0.1.6"
|
274 |
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
275 |
+
checksum = "4b46cbb362ab8752921c97e041f5e366ee6297bd428a31275b9fcf1e380f7299"
|
276 |
+
|
277 |
+
[[package]]
|
278 |
+
name = "anstyle"
|
279 |
+
version = "1.0.1"
|
280 |
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
281 |
+
checksum = "3a30da5c5f2d5e72842e00bcb57657162cdabef0931f40e2deb9b4140440cecd"
|
282 |
+
|
283 |
[[package]]
|
284 |
name = "anyhow"
|
285 |
version = "1.0.71"
|
|
|
309 |
|
310 |
[[package]]
|
311 |
name = "backtrace"
|
312 |
+
version = "0.3.68"
|
313 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
314 |
+
checksum = "4319208da049c43661739c5fade2ba182f09d1dc2299b32298d3a31692b17e12"
|
315 |
dependencies = [
|
316 |
"addr2line",
|
317 |
"cc",
|
318 |
"cfg-if 1.0.0",
|
319 |
"libc",
|
320 |
+
"miniz_oxide",
|
321 |
"object",
|
322 |
"rustc-demangle",
|
323 |
]
|
|
|
358 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
359 |
checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
|
360 |
|
361 |
+
[[package]]
|
362 |
+
name = "bitflags"
|
363 |
+
version = "2.3.3"
|
364 |
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
365 |
+
checksum = "630be753d4e58660abd17930c71b647fe46c27ea6b63cc59e1e3851406972e42"
|
366 |
+
|
367 |
[[package]]
|
368 |
name = "block-buffer"
|
369 |
version = "0.10.4"
|
|
|
441 |
"bytes 1.4.0",
|
442 |
]
|
443 |
|
444 |
+
[[package]]
|
445 |
+
name = "cast"
|
446 |
+
version = "0.3.0"
|
447 |
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
448 |
+
checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5"
|
449 |
+
|
450 |
[[package]]
|
451 |
name = "cc"
|
452 |
version = "1.0.79"
|
|
|
477 |
"envmnt",
|
478 |
]
|
479 |
|
480 |
+
[[package]]
|
481 |
+
name = "ciborium"
|
482 |
+
version = "0.2.1"
|
483 |
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
484 |
+
checksum = "effd91f6c78e5a4ace8a5d3c0b6bfaec9e2baaef55f3efc00e45fb2e477ee926"
|
485 |
+
dependencies = [
|
486 |
+
"ciborium-io",
|
487 |
+
"ciborium-ll",
|
488 |
+
"serde",
|
489 |
+
]
|
490 |
+
|
491 |
+
[[package]]
|
492 |
+
name = "ciborium-io"
|
493 |
+
version = "0.2.1"
|
494 |
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
495 |
+
checksum = "cdf919175532b369853f5d5e20b26b43112613fd6fe7aee757e35f7a44642656"
|
496 |
+
|
497 |
+
[[package]]
|
498 |
+
name = "ciborium-ll"
|
499 |
+
version = "0.2.1"
|
500 |
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
501 |
+
checksum = "defaa24ecc093c77630e6c15e17c51f5e187bf35ee514f4e2d67baaa96dae22b"
|
502 |
+
dependencies = [
|
503 |
+
"ciborium-io",
|
504 |
+
"half",
|
505 |
+
]
|
506 |
+
|
507 |
+
[[package]]
|
508 |
+
name = "clap"
|
509 |
+
version = "4.3.10"
|
510 |
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
511 |
+
checksum = "384e169cc618c613d5e3ca6404dda77a8685a63e08660dcc64abaf7da7cb0c7a"
|
512 |
+
dependencies = [
|
513 |
+
"clap_builder",
|
514 |
+
]
|
515 |
+
|
516 |
+
[[package]]
|
517 |
+
name = "clap_builder"
|
518 |
+
version = "4.3.10"
|
519 |
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
520 |
+
checksum = "ef137bbe35aab78bdb468ccfba75a5f4d8321ae011d34063770780545176af2d"
|
521 |
+
dependencies = [
|
522 |
+
"anstyle",
|
523 |
+
"clap_lex",
|
524 |
+
]
|
525 |
+
|
526 |
+
[[package]]
|
527 |
+
name = "clap_lex"
|
528 |
+
version = "0.5.0"
|
529 |
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
530 |
+
checksum = "2da6da31387c7e4ef160ffab6d5e7f00c42626fe39aea70a7b0f1773f7dd6c1b"
|
531 |
+
|
532 |
[[package]]
|
533 |
name = "cloudabi"
|
534 |
version = "0.0.3"
|
535 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
536 |
checksum = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f"
|
537 |
dependencies = [
|
538 |
+
"bitflags 1.3.2",
|
539 |
]
|
540 |
|
541 |
[[package]]
|
|
|
627 |
"cfg-if 1.0.0",
|
628 |
]
|
629 |
|
630 |
+
[[package]]
|
631 |
+
name = "criterion"
|
632 |
+
version = "0.5.1"
|
633 |
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
634 |
+
checksum = "f2b12d017a929603d80db1831cd3a24082f8137ce19c69e6447f54f5fc8d692f"
|
635 |
+
dependencies = [
|
636 |
+
"anes",
|
637 |
+
"cast",
|
638 |
+
"ciborium",
|
639 |
+
"clap",
|
640 |
+
"criterion-plot",
|
641 |
+
"is-terminal",
|
642 |
+
"itertools",
|
643 |
+
"num-traits",
|
644 |
+
"once_cell",
|
645 |
+
"oorandom",
|
646 |
+
"plotters",
|
647 |
+
"rayon",
|
648 |
+
"regex",
|
649 |
+
"serde",
|
650 |
+
"serde_derive",
|
651 |
+
"serde_json",
|
652 |
+
"tinytemplate",
|
653 |
+
"walkdir",
|
654 |
+
]
|
655 |
+
|
656 |
+
[[package]]
|
657 |
+
name = "criterion-plot"
|
658 |
+
version = "0.5.0"
|
659 |
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
660 |
+
checksum = "6b50826342786a51a89e2da3a28f1c32b06e387201bc2d19791f622c673706b1"
|
661 |
+
dependencies = [
|
662 |
+
"cast",
|
663 |
+
"itertools",
|
664 |
+
]
|
665 |
+
|
666 |
+
[[package]]
|
667 |
+
name = "crossbeam-channel"
|
668 |
+
version = "0.5.8"
|
669 |
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
670 |
+
checksum = "a33c2bf77f2df06183c3aa30d1e96c0695a313d4f9c453cc3762a6db39f99200"
|
671 |
+
dependencies = [
|
672 |
+
"cfg-if 1.0.0",
|
673 |
+
"crossbeam-utils 0.8.16",
|
674 |
+
]
|
675 |
+
|
676 |
[[package]]
|
677 |
name = "crossbeam-deque"
|
678 |
version = "0.7.4"
|
679 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
680 |
checksum = "c20ff29ded3204c5106278a81a38f4b482636ed4fa1e6cfbeef193291beb29ed"
|
681 |
dependencies = [
|
682 |
+
"crossbeam-epoch 0.8.2",
|
683 |
+
"crossbeam-utils 0.7.2",
|
684 |
"maybe-uninit",
|
685 |
]
|
686 |
|
687 |
+
[[package]]
|
688 |
+
name = "crossbeam-deque"
|
689 |
+
version = "0.8.3"
|
690 |
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
691 |
+
checksum = "ce6fd6f855243022dcecf8702fef0c297d4338e226845fe067f6341ad9fa0cef"
|
692 |
+
dependencies = [
|
693 |
+
"cfg-if 1.0.0",
|
694 |
+
"crossbeam-epoch 0.9.15",
|
695 |
+
"crossbeam-utils 0.8.16",
|
696 |
+
]
|
697 |
+
|
698 |
[[package]]
|
699 |
name = "crossbeam-epoch"
|
700 |
version = "0.8.2"
|
|
|
703 |
dependencies = [
|
704 |
"autocfg 1.1.0",
|
705 |
"cfg-if 0.1.10",
|
706 |
+
"crossbeam-utils 0.7.2",
|
707 |
"lazy_static",
|
708 |
"maybe-uninit",
|
709 |
+
"memoffset 0.5.6",
|
710 |
+
"scopeguard",
|
711 |
+
]
|
712 |
+
|
713 |
+
[[package]]
|
714 |
+
name = "crossbeam-epoch"
|
715 |
+
version = "0.9.15"
|
716 |
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
717 |
+
checksum = "ae211234986c545741a7dc064309f67ee1e5ad243d0e48335adc0484d960bcc7"
|
718 |
+
dependencies = [
|
719 |
+
"autocfg 1.1.0",
|
720 |
+
"cfg-if 1.0.0",
|
721 |
+
"crossbeam-utils 0.8.16",
|
722 |
+
"memoffset 0.9.0",
|
723 |
"scopeguard",
|
724 |
]
|
725 |
|
|
|
730 |
checksum = "774ba60a54c213d409d5353bda12d49cd68d14e45036a285234c8d6f91f92570"
|
731 |
dependencies = [
|
732 |
"cfg-if 0.1.10",
|
733 |
+
"crossbeam-utils 0.7.2",
|
734 |
"maybe-uninit",
|
735 |
]
|
736 |
|
|
|
745 |
"lazy_static",
|
746 |
]
|
747 |
|
748 |
+
[[package]]
|
749 |
+
name = "crossbeam-utils"
|
750 |
+
version = "0.8.16"
|
751 |
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
752 |
+
checksum = "5a22b2d63d4d1dc0b7f1b6b2747dd0088008a9be28b6ddf0b1e7d335e3037294"
|
753 |
+
dependencies = [
|
754 |
+
"cfg-if 1.0.0",
|
755 |
+
]
|
756 |
+
|
757 |
[[package]]
|
758 |
name = "crypto-common"
|
759 |
version = "0.1.6"
|
|
|
766 |
|
767 |
[[package]]
|
768 |
name = "cssparser"
|
769 |
+
version = "0.31.2"
|
770 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
771 |
+
checksum = "5b3df4f93e5fbbe73ec01ec8d3f68bba73107993a5b1e7519273c32db9b0d5be"
|
772 |
dependencies = [
|
773 |
"cssparser-macros",
|
774 |
"dtoa-short",
|
775 |
"itoa 1.0.6",
|
776 |
+
"phf 0.11.2",
|
|
|
|
|
|
|
777 |
"smallvec 1.10.0",
|
|
|
778 |
]
|
779 |
|
780 |
[[package]]
|
|
|
783 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
784 |
checksum = "13b588ba4ac1a99f7f2964d24b3d896ddc6bf847ee3855dbd4366f058cfcd331"
|
785 |
dependencies = [
|
786 |
+
"quote 1.0.29",
|
787 |
+
"syn 2.0.22",
|
788 |
]
|
789 |
|
790 |
[[package]]
|
|
|
794 |
checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321"
|
795 |
dependencies = [
|
796 |
"convert_case",
|
797 |
+
"proc-macro2 1.0.63",
|
798 |
+
"quote 1.0.29",
|
799 |
"rustc_version 0.4.0",
|
800 |
"syn 1.0.109",
|
801 |
]
|
|
|
922 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
923 |
checksum = "aa4da3c766cd7a0db8242e326e9e4e081edd567072893ed320008189715366a4"
|
924 |
dependencies = [
|
925 |
+
"proc-macro2 1.0.63",
|
926 |
+
"quote 1.0.29",
|
927 |
"syn 1.0.109",
|
928 |
"synstructure",
|
929 |
]
|
|
|
955 |
checksum = "3b9429470923de8e8cbd4d2dc513535400b4b3fef0319fb5c4e1f520a7bef743"
|
956 |
dependencies = [
|
957 |
"crc32fast",
|
958 |
+
"miniz_oxide",
|
959 |
]
|
960 |
|
961 |
[[package]]
|
|
|
1006 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1007 |
checksum = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82"
|
1008 |
dependencies = [
|
1009 |
+
"bitflags 1.3.2",
|
1010 |
"fuchsia-zircon-sys",
|
1011 |
]
|
1012 |
|
|
|
1109 |
"unicode-width",
|
1110 |
]
|
1111 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1112 |
[[package]]
|
1113 |
name = "getrandom"
|
1114 |
version = "0.2.10"
|
|
|
1146 |
|
1147 |
[[package]]
|
1148 |
name = "h2"
|
1149 |
+
version = "0.3.20"
|
1150 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1151 |
+
checksum = "97ec8491ebaf99c8eaa73058b045fe58073cd6be7f596ac993ced0b0a0c01049"
|
1152 |
dependencies = [
|
1153 |
"bytes 1.4.0",
|
1154 |
"fnv",
|
|
|
1158 |
"http 0.2.9",
|
1159 |
"indexmap",
|
1160 |
"slab",
|
1161 |
+
"tokio 1.29.1",
|
1162 |
"tokio-util",
|
1163 |
"tracing",
|
1164 |
]
|
1165 |
|
1166 |
+
[[package]]
|
1167 |
+
name = "half"
|
1168 |
+
version = "1.8.2"
|
1169 |
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1170 |
+
checksum = "eabb4a44450da02c90444cf74558da904edde8fb4e9035a9a6a4e15445af0bd7"
|
1171 |
+
|
1172 |
[[package]]
|
1173 |
name = "handlebars"
|
1174 |
version = "4.3.7"
|
|
|
1190 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1191 |
checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
|
1192 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1193 |
[[package]]
|
1194 |
name = "hermit-abi"
|
1195 |
version = "0.3.1"
|
|
|
1219 |
"log",
|
1220 |
"mac",
|
1221 |
"markup5ever 0.11.0",
|
1222 |
+
"proc-macro2 1.0.63",
|
1223 |
+
"quote 1.0.29",
|
1224 |
"syn 1.0.109",
|
1225 |
]
|
1226 |
|
|
|
1325 |
|
1326 |
[[package]]
|
1327 |
name = "hyper"
|
1328 |
+
version = "0.14.27"
|
1329 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1330 |
+
checksum = "ffb1cfd654a8219eaef89881fdb3bb3b1cdc5fa75ded05d6933b2b382e395468"
|
1331 |
dependencies = [
|
1332 |
"bytes 1.4.0",
|
1333 |
"futures-channel",
|
1334 |
"futures-core",
|
1335 |
"futures-util",
|
1336 |
+
"h2 0.3.20",
|
1337 |
"http 0.2.9",
|
1338 |
"http-body 0.4.5",
|
1339 |
"httparse",
|
|
|
1341 |
"itoa 1.0.6",
|
1342 |
"pin-project-lite",
|
1343 |
"socket2",
|
1344 |
+
"tokio 1.29.1",
|
1345 |
"tower-service",
|
1346 |
"tracing",
|
1347 |
"want 0.3.1",
|
|
|
1367 |
checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905"
|
1368 |
dependencies = [
|
1369 |
"bytes 1.4.0",
|
1370 |
+
"hyper 0.14.27",
|
1371 |
"native-tls",
|
1372 |
+
"tokio 1.29.1",
|
1373 |
"tokio-native-tls",
|
1374 |
]
|
1375 |
|
|
|
1430 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1431 |
checksum = "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2"
|
1432 |
dependencies = [
|
1433 |
+
"hermit-abi",
|
1434 |
"libc",
|
1435 |
"windows-sys 0.48.0",
|
1436 |
]
|
|
|
1446 |
|
1447 |
[[package]]
|
1448 |
name = "ipnet"
|
1449 |
+
version = "2.8.0"
|
1450 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1451 |
+
checksum = "28b29a3cd74f0f4598934efe3aeba42bae0eb4680554128851ebbecb02af14e6"
|
1452 |
|
1453 |
[[package]]
|
1454 |
name = "is-terminal"
|
1455 |
+
version = "0.4.8"
|
1456 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1457 |
+
checksum = "24fddda5af7e54bf7da53067d6e802dbcc381d0a8eef629df528e3ebf68755cb"
|
1458 |
dependencies = [
|
1459 |
+
"hermit-abi",
|
1460 |
+
"rustix 0.38.1",
|
|
|
1461 |
"windows-sys 0.48.0",
|
1462 |
]
|
1463 |
|
1464 |
+
[[package]]
|
1465 |
+
name = "itertools"
|
1466 |
+
version = "0.10.5"
|
1467 |
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1468 |
+
checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473"
|
1469 |
+
dependencies = [
|
1470 |
+
"either",
|
1471 |
+
]
|
1472 |
+
|
1473 |
[[package]]
|
1474 |
name = "itoa"
|
1475 |
version = "0.4.8"
|
|
|
1524 |
|
1525 |
[[package]]
|
1526 |
name = "libc"
|
1527 |
+
version = "0.2.147"
|
1528 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1529 |
+
checksum = "b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3"
|
1530 |
|
1531 |
[[package]]
|
1532 |
name = "linux-raw-sys"
|
|
|
1534 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1535 |
checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519"
|
1536 |
|
1537 |
+
[[package]]
|
1538 |
+
name = "linux-raw-sys"
|
1539 |
+
version = "0.4.3"
|
1540 |
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1541 |
+
checksum = "09fc20d2ca12cb9f044c93e3bd6d32d523e6e2ec3db4f7b2939cd99026ecd3f0"
|
1542 |
+
|
1543 |
[[package]]
|
1544 |
name = "local-channel"
|
1545 |
version = "0.1.3"
|
|
|
1653 |
"autocfg 1.1.0",
|
1654 |
]
|
1655 |
|
1656 |
+
[[package]]
|
1657 |
+
name = "memoffset"
|
1658 |
+
version = "0.9.0"
|
1659 |
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1660 |
+
checksum = "5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c"
|
1661 |
+
dependencies = [
|
1662 |
+
"autocfg 1.1.0",
|
1663 |
+
]
|
1664 |
+
|
1665 |
[[package]]
|
1666 |
name = "mime"
|
1667 |
version = "0.3.17"
|
|
|
1678 |
"unicase",
|
1679 |
]
|
1680 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1681 |
[[package]]
|
1682 |
name = "miniz_oxide"
|
1683 |
version = "0.7.1"
|
|
|
1771 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1772 |
checksum = "ab250442c86f1850815b5d268639dff018c0627022bc1940eb2d642ca1ce12f0"
|
1773 |
|
|
|
|
|
|
|
|
|
|
|
|
|
1774 |
[[package]]
|
1775 |
name = "num-traits"
|
1776 |
version = "0.2.15"
|
|
|
1782 |
|
1783 |
[[package]]
|
1784 |
name = "num_cpus"
|
1785 |
+
version = "1.16.0"
|
1786 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1787 |
+
checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43"
|
1788 |
dependencies = [
|
1789 |
+
"hermit-abi",
|
1790 |
"libc",
|
1791 |
]
|
1792 |
|
1793 |
[[package]]
|
1794 |
name = "object"
|
1795 |
+
version = "0.31.1"
|
1796 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1797 |
+
checksum = "8bda667d9f2b5051b8833f59f3bf748b28ef54f850f4fcb389a252aa383866d1"
|
1798 |
dependencies = [
|
1799 |
"memchr",
|
1800 |
]
|
|
|
1805 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1806 |
checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d"
|
1807 |
|
1808 |
+
[[package]]
|
1809 |
+
name = "oorandom"
|
1810 |
+
version = "11.1.3"
|
1811 |
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1812 |
+
checksum = "0ab1bc2a289d34bd04a330323ac98a1b4bc82c9d9fcb1e66b63caa84da26b575"
|
1813 |
+
|
1814 |
[[package]]
|
1815 |
name = "openssl"
|
1816 |
+
version = "0.10.55"
|
1817 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1818 |
+
checksum = "345df152bc43501c5eb9e4654ff05f794effb78d4efe3d53abc158baddc0703d"
|
1819 |
dependencies = [
|
1820 |
+
"bitflags 1.3.2",
|
1821 |
"cfg-if 1.0.0",
|
1822 |
"foreign-types",
|
1823 |
"libc",
|
|
|
1832 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1833 |
checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
|
1834 |
dependencies = [
|
1835 |
+
"proc-macro2 1.0.63",
|
1836 |
+
"quote 1.0.29",
|
1837 |
+
"syn 2.0.22",
|
1838 |
]
|
1839 |
|
1840 |
[[package]]
|
|
|
1845 |
|
1846 |
[[package]]
|
1847 |
name = "openssl-sys"
|
1848 |
+
version = "0.9.90"
|
1849 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1850 |
+
checksum = "374533b0e45f3a7ced10fcaeccca020e66656bc03dac384f852e4e5a7a8104a6"
|
1851 |
dependencies = [
|
1852 |
"cc",
|
1853 |
"libc",
|
|
|
1924 |
|
1925 |
[[package]]
|
1926 |
name = "pest"
|
1927 |
+
version = "2.7.0"
|
1928 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1929 |
+
checksum = "f73935e4d55e2abf7f130186537b19e7a4abc886a0252380b59248af473a3fc9"
|
1930 |
dependencies = [
|
1931 |
"thiserror",
|
1932 |
"ucd-trie",
|
|
|
1934 |
|
1935 |
[[package]]
|
1936 |
name = "pest_derive"
|
1937 |
+
version = "2.7.0"
|
1938 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1939 |
+
checksum = "aef623c9bbfa0eedf5a0efba11a5ee83209c326653ca31ff019bec3a95bfff2b"
|
1940 |
dependencies = [
|
1941 |
"pest",
|
1942 |
"pest_generator",
|
|
|
1944 |
|
1945 |
[[package]]
|
1946 |
name = "pest_generator"
|
1947 |
+
version = "2.7.0"
|
1948 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1949 |
+
checksum = "b3e8cba4ec22bada7fc55ffe51e2deb6a0e0db2d0b7ab0b103acc80d2510c190"
|
1950 |
dependencies = [
|
1951 |
"pest",
|
1952 |
"pest_meta",
|
1953 |
+
"proc-macro2 1.0.63",
|
1954 |
+
"quote 1.0.29",
|
1955 |
+
"syn 2.0.22",
|
1956 |
]
|
1957 |
|
1958 |
[[package]]
|
1959 |
name = "pest_meta"
|
1960 |
+
version = "2.7.0"
|
1961 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1962 |
+
checksum = "a01f71cb40bd8bb94232df14b946909e14660e33fc05db3e50ae2a82d7ea0ca0"
|
1963 |
dependencies = [
|
1964 |
"once_cell",
|
1965 |
"pest",
|
|
|
1977 |
|
1978 |
[[package]]
|
1979 |
name = "phf"
|
1980 |
+
version = "0.10.1"
|
1981 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1982 |
+
checksum = "fabbf1ead8a5bcbc20f5f8b939ee3f5b0f6f281b6ad3468b84656b658b455259"
|
1983 |
dependencies = [
|
1984 |
+
"phf_shared 0.10.0",
|
1985 |
]
|
1986 |
|
1987 |
[[package]]
|
1988 |
name = "phf"
|
1989 |
+
version = "0.11.2"
|
1990 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1991 |
+
checksum = "ade2d8b8f33c7333b51bcf0428d37e217e9f32192ae4772156f65063b8ce03dc"
|
1992 |
dependencies = [
|
1993 |
"phf_macros",
|
1994 |
+
"phf_shared 0.11.2",
|
|
|
1995 |
]
|
1996 |
|
1997 |
[[package]]
|
|
|
2004 |
"phf_shared 0.7.24",
|
2005 |
]
|
2006 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007 |
[[package]]
|
2008 |
name = "phf_codegen"
|
2009 |
version = "0.10.0"
|
|
|
2026 |
|
2027 |
[[package]]
|
2028 |
name = "phf_generator"
|
2029 |
+
version = "0.10.0"
|
2030 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2031 |
+
checksum = "5d5285893bb5eb82e6aaf5d59ee909a06a16737a8970984dd7746ba9283498d6"
|
2032 |
dependencies = [
|
2033 |
+
"phf_shared 0.10.0",
|
2034 |
+
"rand 0.8.5",
|
2035 |
]
|
2036 |
|
2037 |
[[package]]
|
2038 |
name = "phf_generator"
|
2039 |
+
version = "0.11.2"
|
2040 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2041 |
+
checksum = "48e4cc64c2ad9ebe670cb8fd69dd50ae301650392e81c05f9bfcb2d5bdbc24b0"
|
2042 |
dependencies = [
|
2043 |
+
"phf_shared 0.11.2",
|
2044 |
"rand 0.8.5",
|
2045 |
]
|
2046 |
|
2047 |
[[package]]
|
2048 |
name = "phf_macros"
|
2049 |
+
version = "0.11.2"
|
2050 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2051 |
+
checksum = "3444646e286606587e49f3bcf1679b8cef1dc2c5ecc29ddacaffc305180d464b"
|
2052 |
dependencies = [
|
2053 |
+
"phf_generator 0.11.2",
|
2054 |
+
"phf_shared 0.11.2",
|
2055 |
+
"proc-macro2 1.0.63",
|
2056 |
+
"quote 1.0.29",
|
2057 |
+
"syn 2.0.22",
|
|
|
2058 |
]
|
2059 |
|
2060 |
[[package]]
|
|
|
2068 |
|
2069 |
[[package]]
|
2070 |
name = "phf_shared"
|
2071 |
+
version = "0.10.0"
|
2072 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2073 |
+
checksum = "b6796ad771acdc0123d2a88dc428b5e38ef24456743ddb1744ed628f9815c096"
|
2074 |
dependencies = [
|
2075 |
"siphasher 0.3.10",
|
2076 |
]
|
2077 |
|
2078 |
[[package]]
|
2079 |
name = "phf_shared"
|
2080 |
+
version = "0.11.2"
|
2081 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2082 |
+
checksum = "90fcb95eef784c2ac79119d1dd819e162b5da872ce6f3c3abe1e8ca1c082f72b"
|
2083 |
dependencies = [
|
2084 |
"siphasher 0.3.10",
|
2085 |
]
|
|
|
2102 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2103 |
checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964"
|
2104 |
|
2105 |
+
[[package]]
|
2106 |
+
name = "plotters"
|
2107 |
+
version = "0.3.5"
|
2108 |
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2109 |
+
checksum = "d2c224ba00d7cadd4d5c660deaf2098e5e80e07846537c51f9cfa4be50c1fd45"
|
2110 |
+
dependencies = [
|
2111 |
+
"num-traits",
|
2112 |
+
"plotters-backend",
|
2113 |
+
"plotters-svg",
|
2114 |
+
"wasm-bindgen",
|
2115 |
+
"web-sys",
|
2116 |
+
]
|
2117 |
+
|
2118 |
+
[[package]]
|
2119 |
+
name = "plotters-backend"
|
2120 |
+
version = "0.3.5"
|
2121 |
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2122 |
+
checksum = "9e76628b4d3a7581389a35d5b6e2139607ad7c75b17aed325f210aa91f4a9609"
|
2123 |
+
|
2124 |
+
[[package]]
|
2125 |
+
name = "plotters-svg"
|
2126 |
+
version = "0.3.5"
|
2127 |
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2128 |
+
checksum = "38f6d39893cca0701371e3c27294f09797214b86f1fb951b89ade8ec04e2abab"
|
2129 |
+
dependencies = [
|
2130 |
+
"plotters-backend",
|
2131 |
+
]
|
2132 |
+
|
2133 |
[[package]]
|
2134 |
name = "ppv-lite86"
|
2135 |
version = "0.2.17"
|
|
|
2142 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2143 |
checksum = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c"
|
2144 |
|
|
|
|
|
|
|
|
|
|
|
|
|
2145 |
[[package]]
|
2146 |
name = "proc-macro2"
|
2147 |
version = "0.4.30"
|
|
|
2153 |
|
2154 |
[[package]]
|
2155 |
name = "proc-macro2"
|
2156 |
+
version = "1.0.63"
|
2157 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2158 |
+
checksum = "7b368fba921b0dce7e60f5e04ec15e565b3303972b42bcfde1d0713b881959eb"
|
2159 |
dependencies = [
|
2160 |
"unicode-ident",
|
2161 |
]
|
|
|
2181 |
|
2182 |
[[package]]
|
2183 |
name = "quote"
|
2184 |
+
version = "1.0.29"
|
2185 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2186 |
+
checksum = "573015e8ab27661678357f27dc26460738fd2b6c86e46f386fde94cb5d913105"
|
2187 |
dependencies = [
|
2188 |
+
"proc-macro2 1.0.63",
|
2189 |
]
|
2190 |
|
2191 |
[[package]]
|
|
|
2198 |
"libc",
|
2199 |
"rand_chacha 0.1.1",
|
2200 |
"rand_core 0.4.2",
|
2201 |
+
"rand_hc",
|
2202 |
"rand_isaac",
|
2203 |
"rand_jitter",
|
2204 |
"rand_os",
|
2205 |
+
"rand_pcg",
|
2206 |
"rand_xorshift",
|
2207 |
"winapi 0.3.9",
|
2208 |
]
|
2209 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2210 |
[[package]]
|
2211 |
name = "rand"
|
2212 |
version = "0.8.5"
|
|
|
2228 |
"rand_core 0.3.1",
|
2229 |
]
|
2230 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2231 |
[[package]]
|
2232 |
name = "rand_chacha"
|
2233 |
version = "0.3.1"
|
|
|
2253 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2254 |
checksum = "9c33a3c44ca05fa6f1807d8e6743f3824e8509beca625669633be0acbdf509dc"
|
2255 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2256 |
[[package]]
|
2257 |
name = "rand_core"
|
2258 |
version = "0.6.4"
|
2259 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2260 |
checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
|
2261 |
dependencies = [
|
2262 |
+
"getrandom",
|
2263 |
]
|
2264 |
|
2265 |
[[package]]
|
|
|
2271 |
"rand_core 0.3.1",
|
2272 |
]
|
2273 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2274 |
[[package]]
|
2275 |
name = "rand_isaac"
|
2276 |
version = "0.1.1"
|
|
|
2316 |
]
|
2317 |
|
2318 |
[[package]]
|
2319 |
+
name = "rand_xorshift"
|
2320 |
+
version = "0.1.1"
|
2321 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2322 |
+
checksum = "cbf7e9e623549b0e21f6e97cf8ecf247c1a8fd2e8a992ae265314300b2455d5c"
|
2323 |
dependencies = [
|
2324 |
+
"rand_core 0.3.1",
|
2325 |
]
|
2326 |
|
2327 |
[[package]]
|
2328 |
+
name = "rayon"
|
2329 |
+
version = "1.7.0"
|
2330 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2331 |
+
checksum = "1d2df5196e37bcc87abebc0053e20787d73847bb33134a69841207dd0a47f03b"
|
2332 |
dependencies = [
|
2333 |
+
"either",
|
2334 |
+
"rayon-core",
|
2335 |
+
]
|
2336 |
+
|
2337 |
+
[[package]]
|
2338 |
+
name = "rayon-core"
|
2339 |
+
version = "1.11.0"
|
2340 |
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2341 |
+
checksum = "4b8f95bd6966f5c87776639160a66bd8ab9895d9d4ab01ddba9fc60661aebe8d"
|
2342 |
+
dependencies = [
|
2343 |
+
"crossbeam-channel",
|
2344 |
+
"crossbeam-deque 0.8.3",
|
2345 |
+
"crossbeam-utils 0.8.16",
|
2346 |
+
"num_cpus",
|
2347 |
]
|
2348 |
|
2349 |
[[package]]
|
|
|
2381 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2382 |
checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29"
|
2383 |
dependencies = [
|
2384 |
+
"bitflags 1.3.2",
|
2385 |
]
|
2386 |
|
2387 |
[[package]]
|
|
|
2446 |
"encoding_rs",
|
2447 |
"futures-core",
|
2448 |
"futures-util",
|
2449 |
+
"h2 0.3.20",
|
2450 |
"http 0.2.9",
|
2451 |
"http-body 0.4.5",
|
2452 |
+
"hyper 0.14.27",
|
2453 |
"hyper-tls 0.5.0",
|
2454 |
"ipnet",
|
2455 |
"js-sys",
|
|
|
2462 |
"serde",
|
2463 |
"serde_json",
|
2464 |
"serde_urlencoded 0.7.1",
|
2465 |
+
"tokio 1.29.1",
|
2466 |
"tokio-native-tls",
|
2467 |
"tower-service",
|
2468 |
"url 2.4.0",
|
|
|
2478 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2479 |
checksum = "753540fb29c9a615ce5dd64be5c957271adc887c8424555fc372e0b88ebde074"
|
2480 |
dependencies = [
|
2481 |
+
"bitflags 1.3.2",
|
2482 |
"bstr",
|
2483 |
"libc",
|
2484 |
"num-traits",
|
|
|
2522 |
|
2523 |
[[package]]
|
2524 |
name = "rustix"
|
2525 |
+
version = "0.37.21"
|
2526 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2527 |
+
checksum = "62f25693a73057a1b4cb56179dd3c7ea21a7c6c5ee7d85781f5749b46f34b79c"
|
2528 |
dependencies = [
|
2529 |
+
"bitflags 1.3.2",
|
2530 |
"errno",
|
2531 |
"io-lifetimes",
|
2532 |
"libc",
|
2533 |
+
"linux-raw-sys 0.3.8",
|
2534 |
+
"windows-sys 0.48.0",
|
2535 |
+
]
|
2536 |
+
|
2537 |
+
[[package]]
|
2538 |
+
name = "rustix"
|
2539 |
+
version = "0.38.1"
|
2540 |
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2541 |
+
checksum = "fbc6396159432b5c8490d4e301d8c705f61860b8b6c863bf79942ce5401968f3"
|
2542 |
+
dependencies = [
|
2543 |
+
"bitflags 2.3.3",
|
2544 |
+
"errno",
|
2545 |
+
"libc",
|
2546 |
+
"linux-raw-sys 0.4.3",
|
2547 |
"windows-sys 0.48.0",
|
2548 |
]
|
2549 |
|
|
|
2591 |
|
2592 |
[[package]]
|
2593 |
name = "scraper"
|
2594 |
+
version = "0.17.1"
|
2595 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2596 |
+
checksum = "c95a930e03325234c18c7071fd2b60118307e025d6fff3e12745ffbf63a3d29c"
|
2597 |
dependencies = [
|
2598 |
"ahash 0.8.3",
|
2599 |
"cssparser",
|
|
|
2612 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2613 |
checksum = "1fc758eb7bffce5b308734e9b0c1468893cae9ff70ebf13e7090be8dcbcc83a8"
|
2614 |
dependencies = [
|
2615 |
+
"bitflags 1.3.2",
|
2616 |
"core-foundation",
|
2617 |
"core-foundation-sys",
|
2618 |
"libc",
|
|
|
2641 |
|
2642 |
[[package]]
|
2643 |
name = "selectors"
|
2644 |
+
version = "0.25.0"
|
2645 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2646 |
+
checksum = "4eb30575f3638fc8f6815f448d50cb1a2e255b0897985c8c59f4d37b72a07b06"
|
2647 |
dependencies = [
|
2648 |
+
"bitflags 2.3.3",
|
2649 |
"cssparser",
|
2650 |
"derive_more",
|
2651 |
"fxhash",
|
2652 |
"log",
|
2653 |
+
"new_debug_unreachable",
|
2654 |
+
"phf 0.10.1",
|
2655 |
+
"phf_codegen 0.10.0",
|
2656 |
"precomputed-hash",
|
2657 |
"servo_arc",
|
2658 |
"smallvec 1.10.0",
|
|
|
2694 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2695 |
checksum = "d9735b638ccc51c28bf6914d90a2e9725b377144fc612c49a611fddd1b631d68"
|
2696 |
dependencies = [
|
2697 |
+
"proc-macro2 1.0.63",
|
2698 |
+
"quote 1.0.29",
|
2699 |
+
"syn 2.0.22",
|
2700 |
]
|
2701 |
|
2702 |
[[package]]
|
2703 |
name = "serde_json"
|
2704 |
+
version = "1.0.99"
|
2705 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2706 |
+
checksum = "46266871c240a00b8f503b877622fe33430b3c7d963bdc0f2adc511e54a1eae3"
|
2707 |
dependencies = [
|
2708 |
"itoa 1.0.6",
|
2709 |
"ryu",
|
|
|
2736 |
|
2737 |
[[package]]
|
2738 |
name = "servo_arc"
|
2739 |
+
version = "0.3.0"
|
2740 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2741 |
+
checksum = "d036d71a959e00c77a63538b90a6c2390969f9772b096ea837205c6bd0491a44"
|
2742 |
dependencies = [
|
|
|
2743 |
"stable_deref_trait",
|
2744 |
]
|
2745 |
|
|
|
2878 |
dependencies = [
|
2879 |
"phf_generator 0.7.24",
|
2880 |
"phf_shared 0.7.24",
|
2881 |
+
"proc-macro2 1.0.63",
|
2882 |
+
"quote 1.0.29",
|
2883 |
"string_cache_shared",
|
2884 |
]
|
2885 |
|
|
|
2891 |
dependencies = [
|
2892 |
"phf_generator 0.10.0",
|
2893 |
"phf_shared 0.10.0",
|
2894 |
+
"proc-macro2 1.0.63",
|
2895 |
+
"quote 1.0.29",
|
2896 |
]
|
2897 |
|
2898 |
[[package]]
|
|
|
2918 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2919 |
checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
|
2920 |
dependencies = [
|
2921 |
+
"proc-macro2 1.0.63",
|
2922 |
+
"quote 1.0.29",
|
2923 |
"unicode-ident",
|
2924 |
]
|
2925 |
|
2926 |
[[package]]
|
2927 |
name = "syn"
|
2928 |
+
version = "2.0.22"
|
2929 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2930 |
+
checksum = "2efbeae7acf4eabd6bcdcbd11c92f45231ddda7539edc7806bd1a04a03b24616"
|
2931 |
dependencies = [
|
2932 |
+
"proc-macro2 1.0.63",
|
2933 |
+
"quote 1.0.29",
|
2934 |
"unicode-ident",
|
2935 |
]
|
2936 |
|
|
|
2940 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2941 |
checksum = "f36bdaa60a83aca3921b5259d5400cbf5e90fc51931376a9bd4a0eb79aa7210f"
|
2942 |
dependencies = [
|
2943 |
+
"proc-macro2 1.0.63",
|
2944 |
+
"quote 1.0.29",
|
2945 |
"syn 1.0.109",
|
2946 |
"unicode-xid 0.2.4",
|
2947 |
]
|
|
|
2956 |
"cfg-if 1.0.0",
|
2957 |
"fastrand",
|
2958 |
"redox_syscall 0.3.5",
|
2959 |
+
"rustix 0.37.21",
|
2960 |
"windows-sys 0.48.0",
|
2961 |
]
|
2962 |
|
|
|
2995 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2996 |
checksum = "f9456a42c5b0d803c8cd86e73dd7cc9edd429499f37a3550d286d5e86720569f"
|
2997 |
dependencies = [
|
2998 |
+
"proc-macro2 1.0.63",
|
2999 |
+
"quote 1.0.29",
|
3000 |
+
"syn 2.0.22",
|
3001 |
]
|
3002 |
|
3003 |
[[package]]
|
|
|
3038 |
"time-core",
|
3039 |
]
|
3040 |
|
3041 |
+
[[package]]
|
3042 |
+
name = "tinytemplate"
|
3043 |
+
version = "1.2.1"
|
3044 |
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
3045 |
+
checksum = "be4d6b5f19ff7664e8c98d03e2139cb510db9b0a60b55f8e8709b689d939b6bc"
|
3046 |
+
dependencies = [
|
3047 |
+
"serde",
|
3048 |
+
"serde_json",
|
3049 |
+
]
|
3050 |
+
|
3051 |
[[package]]
|
3052 |
name = "tinyvec"
|
3053 |
version = "1.6.0"
|
|
|
3084 |
|
3085 |
[[package]]
|
3086 |
name = "tokio"
|
3087 |
+
version = "1.29.1"
|
3088 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
3089 |
+
checksum = "532826ff75199d5833b9d2c5fe410f29235e25704ee5f0ef599fb51c21f4a4da"
|
3090 |
dependencies = [
|
3091 |
"autocfg 1.1.0",
|
3092 |
+
"backtrace",
|
3093 |
"bytes 1.4.0",
|
3094 |
"libc",
|
3095 |
"mio 0.8.8",
|
|
|
3129 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
3130 |
checksum = "fb2d1b8f4548dbf5e1f7818512e9c406860678f29c300cdf0ebac72d1a3a1671"
|
3131 |
dependencies = [
|
3132 |
+
"crossbeam-utils 0.7.2",
|
3133 |
"futures",
|
3134 |
]
|
3135 |
|
|
|
3150 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
3151 |
checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e"
|
3152 |
dependencies = [
|
3153 |
+
"proc-macro2 1.0.63",
|
3154 |
+
"quote 1.0.29",
|
3155 |
+
"syn 2.0.22",
|
3156 |
]
|
3157 |
|
3158 |
[[package]]
|
|
|
3162 |
checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2"
|
3163 |
dependencies = [
|
3164 |
"native-tls",
|
3165 |
+
"tokio 1.29.1",
|
3166 |
]
|
3167 |
|
3168 |
[[package]]
|
|
|
3171 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
3172 |
checksum = "09bc590ec4ba8ba87652da2068d150dcada2cfa2e07faae270a5e0409aa51351"
|
3173 |
dependencies = [
|
3174 |
+
"crossbeam-utils 0.7.2",
|
3175 |
"futures",
|
3176 |
"lazy_static",
|
3177 |
"log",
|
|
|
3214 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
3215 |
checksum = "df720b6581784c118f0eb4310796b12b1d242a7eb95f716a8367855325c25f89"
|
3216 |
dependencies = [
|
3217 |
+
"crossbeam-deque 0.7.4",
|
3218 |
"crossbeam-queue",
|
3219 |
+
"crossbeam-utils 0.7.2",
|
3220 |
"futures",
|
3221 |
"lazy_static",
|
3222 |
"log",
|
|
|
3231 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
3232 |
checksum = "93044f2d313c95ff1cb7809ce9a7a05735b012288a888b62d4434fd58c94f296"
|
3233 |
dependencies = [
|
3234 |
+
"crossbeam-utils 0.7.2",
|
3235 |
"futures",
|
3236 |
"slab",
|
3237 |
"tokio-executor",
|
|
|
3247 |
"futures-core",
|
3248 |
"futures-sink",
|
3249 |
"pin-project-lite",
|
3250 |
+
"tokio 1.29.1",
|
3251 |
"tracing",
|
3252 |
]
|
3253 |
|
|
|
3441 |
"try-lock",
|
3442 |
]
|
3443 |
|
|
|
|
|
|
|
|
|
|
|
|
|
3444 |
[[package]]
|
3445 |
name = "wasi"
|
3446 |
version = "0.10.0+wasi-snapshot-preview1"
|
|
|
3472 |
"bumpalo",
|
3473 |
"log",
|
3474 |
"once_cell",
|
3475 |
+
"proc-macro2 1.0.63",
|
3476 |
+
"quote 1.0.29",
|
3477 |
+
"syn 2.0.22",
|
3478 |
"wasm-bindgen-shared",
|
3479 |
]
|
3480 |
|
|
|
3496 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
3497 |
checksum = "dee495e55982a3bd48105a7b947fd2a9b4a8ae3010041b9e0faab3f9cd028f1d"
|
3498 |
dependencies = [
|
3499 |
+
"quote 1.0.29",
|
3500 |
"wasm-bindgen-macro-support",
|
3501 |
]
|
3502 |
|
|
|
3506 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
3507 |
checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b"
|
3508 |
dependencies = [
|
3509 |
+
"proc-macro2 1.0.63",
|
3510 |
+
"quote 1.0.29",
|
3511 |
+
"syn 2.0.22",
|
3512 |
"wasm-bindgen-backend",
|
3513 |
"wasm-bindgen-shared",
|
3514 |
]
|
|
|
3531 |
|
3532 |
[[package]]
|
3533 |
name = "websurfx"
|
3534 |
+
version = "0.13.7"
|
3535 |
dependencies = [
|
3536 |
"actix-files",
|
3537 |
"actix-web",
|
3538 |
+
"criterion",
|
3539 |
"env_logger",
|
3540 |
"error-stack",
|
3541 |
"fake-useragent",
|
|
|
3551 |
"scraper",
|
3552 |
"serde",
|
3553 |
"serde_json",
|
3554 |
+
"tokio 1.29.1",
|
3555 |
]
|
3556 |
|
3557 |
[[package]]
|
|
|
3623 |
|
3624 |
[[package]]
|
3625 |
name = "windows-targets"
|
3626 |
+
version = "0.48.1"
|
3627 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
3628 |
+
checksum = "05d4b17490f70499f20b9e791dcf6a299785ce8af4d709018206dc5b4953e95f"
|
3629 |
dependencies = [
|
3630 |
"windows_aarch64_gnullvm 0.48.0",
|
3631 |
"windows_aarch64_msvc 0.48.0",
|
Cargo.toml
CHANGED
@@ -1,6 +1,6 @@
|
|
1 |
[package]
|
2 |
name = "websurfx"
|
3 |
-
version = "0.13.
|
4 |
edition = "2021"
|
5 |
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."
|
6 |
repository = "https://github.com/neon-mmd/websurfx"
|
@@ -27,6 +27,7 @@ error-stack = {version="0.3.1"}
|
|
27 |
|
28 |
[dev-dependencies]
|
29 |
rusty-hook = "^0.11.2"
|
|
|
30 |
|
31 |
[profile.dev]
|
32 |
opt-level = 0
|
|
|
1 |
[package]
|
2 |
name = "websurfx"
|
3 |
+
version = "0.13.7"
|
4 |
edition = "2021"
|
5 |
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."
|
6 |
repository = "https://github.com/neon-mmd/websurfx"
|
|
|
27 |
|
28 |
[dev-dependencies]
|
29 |
rusty-hook = "^0.11.2"
|
30 |
+
criterion = "0.5.1"
|
31 |
|
32 |
[profile.dev]
|
33 |
opt-level = 0
|
PULL_REQUEST_TEMPLATE.md
CHANGED
@@ -16,7 +16,7 @@
|
|
16 |
|
17 |
## Author's checklist
|
18 |
|
19 |
-
<!-- additional notes for
|
20 |
|
21 |
## Related issues
|
22 |
|
|
|
16 |
|
17 |
## Author's checklist
|
18 |
|
19 |
+
<!-- additional notes for reviewers -->
|
20 |
|
21 |
## Related issues
|
22 |
|
README.md
CHANGED
@@ -59,7 +59,7 @@
|
|
59 |
- **Community**
|
60 |
- [📊 System Requirements](#system-requirements-)
|
61 |
- [🗨️ FAQ (Frequently Asked Questions)](#faq-frequently-asked-questions-)
|
62 |
-
- [📣 More
|
63 |
- [💖 Supporting Websurfx](#supporting-websurfx-)
|
64 |
- [📘 Documentation](#documentation-)
|
65 |
- [🛣️ Roadmap](#roadmap-)
|
@@ -165,7 +165,7 @@ Websurfx is based on Rust due to its memory safety features, which prevents vuln
|
|
165 |
|
166 |
**[⬆️ Back to Top](#--)**
|
167 |
|
168 |
-
# More
|
169 |
|
170 |
We are looking for more willing contributors to help grow this project. For more information on how you can contribute, check out the [project board](https://github.com/neon-mmd/websurfx/projects?query=is%3Aopen) and the [CONTRIBUTING.md](CONTRIBUTING.md) file for guidelines and rules for making contributions.
|
171 |
|
|
|
59 |
- **Community**
|
60 |
- [📊 System Requirements](#system-requirements-)
|
61 |
- [🗨️ FAQ (Frequently Asked Questions)](#faq-frequently-asked-questions-)
|
62 |
+
- [📣 More Contributors Wanted](#more-contributors-wanted-)
|
63 |
- [💖 Supporting Websurfx](#supporting-websurfx-)
|
64 |
- [📘 Documentation](#documentation-)
|
65 |
- [🛣️ Roadmap](#roadmap-)
|
|
|
165 |
|
166 |
**[⬆️ Back to Top](#--)**
|
167 |
|
168 |
+
# More Contributors Wanted 📣
|
169 |
|
170 |
We are looking for more willing contributors to help grow this project. For more information on how you can contribute, check out the [project board](https://github.com/neon-mmd/websurfx/projects?query=is%3Aopen) and the [CONTRIBUTING.md](CONTRIBUTING.md) file for guidelines and rules for making contributions.
|
171 |
|
public/static/pagination.js
CHANGED
@@ -30,8 +30,8 @@ function navigate_backward() {
|
|
30 |
let page = parseInt(searchParams.get('page'));
|
31 |
|
32 |
if (isNaN(page)) {
|
33 |
-
page =
|
34 |
-
} else if (page >
|
35 |
page--;
|
36 |
}
|
37 |
|
|
|
30 |
let page = parseInt(searchParams.get('page'));
|
31 |
|
32 |
if (isNaN(page)) {
|
33 |
+
page = 0;
|
34 |
+
} else if (page > 0) {
|
35 |
page--;
|
36 |
}
|
37 |
|
src/config_parser/parser.rs
CHANGED
@@ -24,46 +24,35 @@ pub struct Config {
|
|
24 |
pub binding_ip_addr: String,
|
25 |
pub style: Style,
|
26 |
pub redis_connection_url: String,
|
27 |
-
pub aggregator:
|
28 |
pub logging: bool,
|
29 |
pub debug: bool,
|
30 |
}
|
31 |
|
32 |
/// Configuration options for the aggregator.
|
33 |
#[derive(Clone)]
|
34 |
-
pub struct
|
35 |
/// Whether to introduce a random delay before sending the request to the search engine.
|
36 |
pub random_delay: bool,
|
37 |
}
|
38 |
|
39 |
impl Config {
|
40 |
/// A function which parses the config.lua file and puts all the parsed options in the newly
|
41 |
-
///
|
42 |
///
|
43 |
/// # Error
|
44 |
///
|
45 |
/// Returns a lua parse error if parsing of the config.lua file fails or has a syntax error
|
46 |
-
/// or io error if the config.lua file doesn't exists otherwise it returns a newly
|
47 |
/// Config struct with all the parsed config options from the parsed config file.
|
48 |
pub fn parse() -> Result<Self, Box<dyn std::error::Error>> {
|
49 |
Lua::new().context(|context| -> Result<Self, Box<dyn std::error::Error>> {
|
50 |
let globals = context.globals();
|
51 |
|
52 |
context
|
53 |
-
.load(&fs::read_to_string(
|
54 |
-
Config::handle_different_config_file_path()?,
|
55 |
-
)?)
|
56 |
.exec()?;
|
57 |
|
58 |
-
let production_use = globals.get::<_, bool>("production_use")?;
|
59 |
-
let aggregator_config = if production_use {
|
60 |
-
AggreatorConfig { random_delay: true }
|
61 |
-
} else {
|
62 |
-
AggreatorConfig {
|
63 |
-
random_delay: false,
|
64 |
-
}
|
65 |
-
};
|
66 |
-
|
67 |
Ok(Config {
|
68 |
port: globals.get::<_, u16>("port")?,
|
69 |
binding_ip_addr: globals.get::<_, String>("binding_ip_addr")?,
|
@@ -72,7 +61,9 @@ impl Config {
|
|
72 |
globals.get::<_, String>("colorscheme")?,
|
73 |
),
|
74 |
redis_connection_url: globals.get::<_, String>("redis_connection_url")?,
|
75 |
-
aggregator:
|
|
|
|
|
76 |
logging: globals.get::<_, bool>("logging")?,
|
77 |
debug: globals.get::<_, bool>("debug")?,
|
78 |
})
|
@@ -90,35 +81,37 @@ impl Config {
|
|
90 |
/// one (3).
|
91 |
/// 3. `websurfx/` (under project folder ( or codebase in other words)) if it is not present
|
92 |
/// here then it returns an error as mentioned above.
|
93 |
-
fn
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
)
|
102 |
-
|
103 |
-
{
|
104 |
-
Ok(format!(
|
105 |
"{}/.config/{}/{}",
|
106 |
std::env::var("HOME").unwrap(),
|
107 |
COMMON_DIRECTORY_NAME,
|
108 |
CONFIG_FILE_NAME
|
109 |
-
))
|
110 |
-
}
|
111 |
-
|
112 |
-
|
113 |
-
.
|
114 |
-
{
|
115 |
-
Ok("/etc/xdg/websurfx/config.lua".to_string())
|
116 |
-
} else if Path::new(format!("./{}/{}", COMMON_DIRECTORY_NAME, CONFIG_FILE_NAME).as_str())
|
117 |
.exists()
|
118 |
{
|
119 |
-
Ok("
|
120 |
-
} else {
|
121 |
-
Err("Config file not found!!".to_string().into())
|
122 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
123 |
}
|
124 |
}
|
|
|
24 |
pub binding_ip_addr: String,
|
25 |
pub style: Style,
|
26 |
pub redis_connection_url: String,
|
27 |
+
pub aggregator: AggregatorConfig,
|
28 |
pub logging: bool,
|
29 |
pub debug: bool,
|
30 |
}
|
31 |
|
32 |
/// Configuration options for the aggregator.
|
33 |
#[derive(Clone)]
|
34 |
+
pub struct AggregatorConfig {
|
35 |
/// Whether to introduce a random delay before sending the request to the search engine.
|
36 |
pub random_delay: bool,
|
37 |
}
|
38 |
|
39 |
impl Config {
|
40 |
/// A function which parses the config.lua file and puts all the parsed options in the newly
|
41 |
+
/// constructed Config struct and returns it.
|
42 |
///
|
43 |
/// # Error
|
44 |
///
|
45 |
/// Returns a lua parse error if parsing of the config.lua file fails or has a syntax error
|
46 |
+
/// or io error if the config.lua file doesn't exists otherwise it returns a newly constructed
|
47 |
/// Config struct with all the parsed config options from the parsed config file.
|
48 |
pub fn parse() -> Result<Self, Box<dyn std::error::Error>> {
|
49 |
Lua::new().context(|context| -> Result<Self, Box<dyn std::error::Error>> {
|
50 |
let globals = context.globals();
|
51 |
|
52 |
context
|
53 |
+
.load(&fs::read_to_string(Config::get_config_path()?)?)
|
|
|
|
|
54 |
.exec()?;
|
55 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
56 |
Ok(Config {
|
57 |
port: globals.get::<_, u16>("port")?,
|
58 |
binding_ip_addr: globals.get::<_, String>("binding_ip_addr")?,
|
|
|
61 |
globals.get::<_, String>("colorscheme")?,
|
62 |
),
|
63 |
redis_connection_url: globals.get::<_, String>("redis_connection_url")?,
|
64 |
+
aggregator: AggregatorConfig {
|
65 |
+
random_delay: globals.get::<_, bool>("production_use")?,
|
66 |
+
},
|
67 |
logging: globals.get::<_, bool>("logging")?,
|
68 |
debug: globals.get::<_, bool>("debug")?,
|
69 |
})
|
|
|
81 |
/// one (3).
|
82 |
/// 3. `websurfx/` (under project folder ( or codebase in other words)) if it is not present
|
83 |
/// here then it returns an error as mentioned above.
|
84 |
+
fn get_config_path() -> Result<String, Box<dyn std::error::Error>> {
|
85 |
+
// check user config
|
86 |
+
|
87 |
+
let path = format!(
|
88 |
+
"{}/.config/{}/config.lua",
|
89 |
+
std::env::var("HOME").unwrap(),
|
90 |
+
COMMON_DIRECTORY_NAME
|
91 |
+
);
|
92 |
+
if Path::new(path.as_str()).exists() {
|
93 |
+
return Ok(format!(
|
|
|
|
|
94 |
"{}/.config/{}/{}",
|
95 |
std::env::var("HOME").unwrap(),
|
96 |
COMMON_DIRECTORY_NAME,
|
97 |
CONFIG_FILE_NAME
|
98 |
+
));
|
99 |
+
}
|
100 |
+
|
101 |
+
// look for config in /etc/xdg
|
102 |
+
if Path::new(format!("/etc/xdg/{}/{}", COMMON_DIRECTORY_NAME, CONFIG_FILE_NAME).as_str())
|
|
|
|
|
|
|
103 |
.exists()
|
104 |
{
|
105 |
+
return Ok("/etc/xdg/websurfx/config.lua".to_string());
|
|
|
|
|
106 |
}
|
107 |
+
|
108 |
+
// use dev config
|
109 |
+
if Path::new(format!("./{}/{}", COMMON_DIRECTORY_NAME, CONFIG_FILE_NAME).as_str()).exists()
|
110 |
+
{
|
111 |
+
return Ok("./websurfx/config.lua".to_string());
|
112 |
+
}
|
113 |
+
|
114 |
+
// if no of the configs above exist, return error
|
115 |
+
Err("Config file not found!!".to_string().into())
|
116 |
}
|
117 |
}
|
src/config_parser/parser_models.rs
CHANGED
@@ -1,5 +1,5 @@
|
|
1 |
//! This module provides public models for handling, storing and serializing parsed config file
|
2 |
-
//! options from config.lua by grouping them
|
3 |
|
4 |
use serde::{Deserialize, Serialize};
|
5 |
|
|
|
1 |
//! This module provides public models for handling, storing and serializing parsed config file
|
2 |
+
//! options from config.lua by grouping them together.
|
3 |
|
4 |
use serde::{Deserialize, Serialize};
|
5 |
|
src/engines/duckduckgo.rs
CHANGED
@@ -36,7 +36,7 @@ pub async fn results(
|
|
36 |
user_agent: &str,
|
37 |
) -> Result<HashMap<String, RawSearchResult>, EngineError> {
|
38 |
// Page number can be missing or empty string and so appropriate handling is required
|
39 |
-
// so that upstream server
|
40 |
let url: String = match page {
|
41 |
1 => {
|
42 |
format!("https://html.duckduckgo.com/html/?q={query}&s=&dc=&v=1&o=json&api=/d.js")
|
@@ -86,7 +86,7 @@ pub async fn results(
|
|
86 |
let results: String = reqwest::Client::new()
|
87 |
.get(url)
|
88 |
.timeout(Duration::from_secs(5))
|
89 |
-
.headers(header_map) // add spoofed headers to emulate human
|
90 |
.send()
|
91 |
.await
|
92 |
.into_report()
|
|
|
36 |
user_agent: &str,
|
37 |
) -> Result<HashMap<String, RawSearchResult>, EngineError> {
|
38 |
// Page number can be missing or empty string and so appropriate handling is required
|
39 |
+
// so that upstream server receives valid page number.
|
40 |
let url: String = match page {
|
41 |
1 => {
|
42 |
format!("https://html.duckduckgo.com/html/?q={query}&s=&dc=&v=1&o=json&api=/d.js")
|
|
|
86 |
let results: String = reqwest::Client::new()
|
87 |
.get(url)
|
88 |
.timeout(Duration::from_secs(5))
|
89 |
+
.headers(header_map) // add spoofed headers to emulate human behavior
|
90 |
.send()
|
91 |
.await
|
92 |
.into_report()
|
src/engines/engine_models.rs
CHANGED
@@ -13,7 +13,7 @@ use std::fmt;
|
|
13 |
/// search engines.
|
14 |
/// * `UnexpectedError` - This variant handles all the errors which are unexpected or occur rarely
|
15 |
/// and are errors mostly related to failure in initialization of HeaderMap, Selector errors and
|
16 |
-
/// all other errors
|
17 |
#[derive(Debug)]
|
18 |
pub enum EngineError {
|
19 |
EmptyResultSet,
|
|
|
13 |
/// search engines.
|
14 |
/// * `UnexpectedError` - This variant handles all the errors which are unexpected or occur rarely
|
15 |
/// and are errors mostly related to failure in initialization of HeaderMap, Selector errors and
|
16 |
+
/// all other errors occurring within the code handling the `upstream search engines`.
|
17 |
#[derive(Debug)]
|
18 |
pub enum EngineError {
|
19 |
EmptyResultSet,
|
src/search_results_handler/aggregator.rs
CHANGED
@@ -17,7 +17,7 @@ use crate::engines::{duckduckgo, searx};
|
|
17 |
/// then removes duplicate results and if two results are found to be from two or more engines
|
18 |
/// then puts their names together to show the results are fetched from these upstream engines
|
19 |
/// and then removes all data from the HashMap and puts into a struct of all results aggregated
|
20 |
-
/// into a vector and also adds the query used into the struct this is
|
21 |
/// otherwise the search bar in search remains empty if searched from the query url
|
22 |
///
|
23 |
/// # Example:
|
|
|
17 |
/// then removes duplicate results and if two results are found to be from two or more engines
|
18 |
/// then puts their names together to show the results are fetched from these upstream engines
|
19 |
/// and then removes all data from the HashMap and puts into a struct of all results aggregated
|
20 |
+
/// into a vector and also adds the query used into the struct this is necessary because
|
21 |
/// otherwise the search bar in search remains empty if searched from the query url
|
22 |
///
|
23 |
/// # Example:
|
src/server/routes.rs
CHANGED
@@ -1,5 +1,5 @@
|
|
1 |
//! This module provides the functionality to handle different routes of the `websurfx`
|
2 |
-
//! meta search engine website and provide
|
3 |
//! when requested.
|
4 |
|
5 |
use std::fs::read_to_string;
|
@@ -82,40 +82,16 @@ pub async fn search(
|
|
82 |
.insert_header(("location", "/"))
|
83 |
.finish())
|
84 |
} else {
|
85 |
-
let
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
let page = match params.page {
|
90 |
-
Some(page_number) => {
|
91 |
-
if page_number <= 1 {
|
92 |
-
page_url = format!(
|
93 |
-
"http://{}:{}/search?q={}&page={}",
|
94 |
-
config.binding_ip_addr, config.port, query, 1
|
95 |
-
);
|
96 |
-
1
|
97 |
-
} else {
|
98 |
-
page_url = format!(
|
99 |
-
"http://{}:{}/search?q={}&page={}",
|
100 |
-
config.binding_ip_addr, config.port, query, page_number
|
101 |
-
);
|
102 |
-
|
103 |
-
page_number
|
104 |
-
}
|
105 |
-
}
|
106 |
-
None => {
|
107 |
-
page_url = format!(
|
108 |
-
"http://{}:{}{}&page={}",
|
109 |
-
config.binding_ip_addr,
|
110 |
-
config.port,
|
111 |
-
req.uri(),
|
112 |
-
1
|
113 |
-
);
|
114 |
-
|
115 |
-
1
|
116 |
-
}
|
117 |
};
|
118 |
|
|
|
|
|
|
|
|
|
|
|
119 |
// fetch the cached results json.
|
120 |
let cached_results_json = redis_cache.cached_results_json(&page_url);
|
121 |
// check if fetched results was indeed fetched or it was an error and if so
|
|
|
1 |
//! This module provides the functionality to handle different routes of the `websurfx`
|
2 |
+
//! meta search engine website and provide appropriate response to each route/page
|
3 |
//! when requested.
|
4 |
|
5 |
use std::fs::read_to_string;
|
|
|
82 |
.insert_header(("location", "/"))
|
83 |
.finish())
|
84 |
} else {
|
85 |
+
let page = match ¶ms.page {
|
86 |
+
Some(page) => *page,
|
87 |
+
None => 0,
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
88 |
};
|
89 |
|
90 |
+
let page_url = format!(
|
91 |
+
"http://{}:{}/search?q={}&page={}",
|
92 |
+
config.binding_ip_addr, config.port, query, page
|
93 |
+
);
|
94 |
+
|
95 |
// fetch the cached results json.
|
96 |
let cached_results_json = redis_cache.cached_results_json(&page_url);
|
97 |
// check if fetched results was indeed fetched or it was an error and if so
|