neon_arch commited on
Commit
d110f72
1 Parent(s): 991f3f5

:sparkles: feat: new experimental feature to improve performance using `io_uring` on linux distributions (#541)

Browse files

* :sparkles: feat: provide a new experimental conditional compilation feature to enable io-uring support (#528)

* :bookmark: chore(release): bump the app version (#528)

Files changed (2) hide show
  1. Cargo.lock +47 -5
  2. Cargo.toml +2 -2
Cargo.lock CHANGED
@@ -136,6 +136,7 @@ checksum = "28f32d40287d3f402ae0028a9d54bef51af15c8769492826a69d28f81893151d"
136
  dependencies = [
137
  "futures-core",
138
  "tokio 1.36.0",
 
139
  ]
140
 
141
  [[package]]
@@ -150,8 +151,9 @@ dependencies = [
150
  "futures-core",
151
  "futures-util",
152
  "mio 0.8.11",
153
- "socket2",
154
  "tokio 1.36.0",
 
155
  "tracing",
156
  ]
157
 
@@ -211,7 +213,7 @@ dependencies = [
211
  "serde_json",
212
  "serde_urlencoded 0.7.1",
213
  "smallvec 1.13.1",
214
- "socket2",
215
  "time 0.3.34",
216
  "url 2.5.0",
217
  ]
@@ -1667,7 +1669,7 @@ dependencies = [
1667
  "httpdate",
1668
  "itoa 1.0.10",
1669
  "pin-project-lite",
1670
- "socket2",
1671
  "tokio 1.36.0",
1672
  "tower-service",
1673
  "tracing",
@@ -1762,6 +1764,16 @@ dependencies = [
1762
  "generic-array",
1763
  ]
1764
 
 
 
 
 
 
 
 
 
 
 
1765
  [[package]]
1766
  name = "iovec"
1767
  version = "0.1.4"
@@ -3127,6 +3139,12 @@ dependencies = [
3127
  "windows-sys 0.52.0",
3128
  ]
3129
 
 
 
 
 
 
 
3130
  [[package]]
3131
  name = "scopeguard"
3132
  version = "1.2.0"
@@ -3372,6 +3390,16 @@ dependencies = [
3372
  "serde",
3373
  ]
3374
 
 
 
 
 
 
 
 
 
 
 
3375
  [[package]]
3376
  name = "socket2"
3377
  version = "0.5.6"
@@ -3685,7 +3713,7 @@ dependencies = [
3685
  "parking_lot 0.12.1",
3686
  "pin-project-lite",
3687
  "signal-hook-registry",
3688
- "socket2",
3689
  "tokio-macros",
3690
  "windows-sys 0.48.0",
3691
  ]
@@ -3836,6 +3864,20 @@ dependencies = [
3836
  "tokio-executor",
3837
  ]
3838
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3839
  [[package]]
3840
  name = "tokio-util"
3841
  version = "0.7.10"
@@ -4157,7 +4199,7 @@ checksum = "5f20c57d8d7db6d3b86154206ae5d8fba62dd39573114de97c2cb0578251f8e1"
4157
 
4158
  [[package]]
4159
  name = "websurfx"
4160
- version = "1.10.9"
4161
  dependencies = [
4162
  "actix-cors",
4163
  "actix-files",
 
136
  dependencies = [
137
  "futures-core",
138
  "tokio 1.36.0",
139
+ "tokio-uring",
140
  ]
141
 
142
  [[package]]
 
151
  "futures-core",
152
  "futures-util",
153
  "mio 0.8.11",
154
+ "socket2 0.5.6",
155
  "tokio 1.36.0",
156
+ "tokio-uring",
157
  "tracing",
158
  ]
159
 
 
213
  "serde_json",
214
  "serde_urlencoded 0.7.1",
215
  "smallvec 1.13.1",
216
+ "socket2 0.5.6",
217
  "time 0.3.34",
218
  "url 2.5.0",
219
  ]
 
1669
  "httpdate",
1670
  "itoa 1.0.10",
1671
  "pin-project-lite",
1672
+ "socket2 0.5.6",
1673
  "tokio 1.36.0",
1674
  "tower-service",
1675
  "tracing",
 
1764
  "generic-array",
1765
  ]
1766
 
1767
+ [[package]]
1768
+ name = "io-uring"
1769
+ version = "0.5.13"
1770
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1771
+ checksum = "dd1e1a01cfb924fd8c5c43b6827965db394f5a3a16c599ce03452266e1cf984c"
1772
+ dependencies = [
1773
+ "bitflags 1.3.2",
1774
+ "libc",
1775
+ ]
1776
+
1777
  [[package]]
1778
  name = "iovec"
1779
  version = "0.1.4"
 
3139
  "windows-sys 0.52.0",
3140
  ]
3141
 
3142
+ [[package]]
3143
+ name = "scoped-tls"
3144
+ version = "1.0.1"
3145
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3146
+ checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294"
3147
+
3148
  [[package]]
3149
  name = "scopeguard"
3150
  version = "1.2.0"
 
3390
  "serde",
3391
  ]
3392
 
3393
+ [[package]]
3394
+ name = "socket2"
3395
+ version = "0.4.10"
3396
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3397
+ checksum = "9f7916fc008ca5542385b89a3d3ce689953c143e9304a9bf8beec1de48994c0d"
3398
+ dependencies = [
3399
+ "libc",
3400
+ "winapi 0.3.9",
3401
+ ]
3402
+
3403
  [[package]]
3404
  name = "socket2"
3405
  version = "0.5.6"
 
3713
  "parking_lot 0.12.1",
3714
  "pin-project-lite",
3715
  "signal-hook-registry",
3716
+ "socket2 0.5.6",
3717
  "tokio-macros",
3718
  "windows-sys 0.48.0",
3719
  ]
 
3864
  "tokio-executor",
3865
  ]
3866
 
3867
+ [[package]]
3868
+ name = "tokio-uring"
3869
+ version = "0.4.0"
3870
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3871
+ checksum = "0d5e02bb137e030b3a547c65a3bd2f1836d66a97369fdcc69034002b10e155ef"
3872
+ dependencies = [
3873
+ "io-uring",
3874
+ "libc",
3875
+ "scoped-tls",
3876
+ "slab",
3877
+ "socket2 0.4.10",
3878
+ "tokio 1.36.0",
3879
+ ]
3880
+
3881
  [[package]]
3882
  name = "tokio-util"
3883
  version = "0.7.10"
 
4199
 
4200
  [[package]]
4201
  name = "websurfx"
4202
+ version = "1.11.0"
4203
  dependencies = [
4204
  "actix-cors",
4205
  "actix-files",
Cargo.toml CHANGED
@@ -1,6 +1,6 @@
1
  [package]
2
  name = "websurfx"
3
- version = "1.10.9"
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"
@@ -87,4 +87,4 @@ redis-cache = ["dep:redis","dep:base64"]
87
  compress-cache-results = ["dep:async-compression","dep:cfg-if"]
88
  encrypt-cache-results = ["dep:chacha20poly1305","dep:chacha20"]
89
  cec-cache-results = ["compress-cache-results","encrypt-cache-results"]
90
-
 
1
  [package]
2
  name = "websurfx"
3
+ version = "1.11.0"
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"
 
87
  compress-cache-results = ["dep:async-compression","dep:cfg-if"]
88
  encrypt-cache-results = ["dep:chacha20poly1305","dep:chacha20"]
89
  cec-cache-results = ["compress-cache-results","encrypt-cache-results"]
90
+ experimental-io-uring = ["actix-web/experimental-io-uring"]