Browse Source

[xitca-web] fix wasi build (#8828)

* [xitca-web] fix wasm build.

* fix config.
fakeshadow 1 year ago
parent
commit
10ba7ee5ab

+ 1 - 1
frameworks/Rust/xitca-web/.cargo/config.toml

@@ -2,5 +2,5 @@
 rustflags = ["-C", "target-cpu=native"]
 rustflags = ["-C", "target-cpu=native"]
 incremental = false
 incremental = false
 
 
-[target.wasm32-wasi-preview1-threads]
+[target.wasm32-wasip1-threads]
 rustflags = ["-C", "target-feature=+simd128", "--cfg", "tokio_unstable"]
 rustflags = ["-C", "target-feature=+simd128", "--cfg", "tokio_unstable"]

+ 58 - 46
frameworks/Rust/xitca-web/Cargo.lock

@@ -19,9 +19,9 @@ checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
 
 
 [[package]]
 [[package]]
 name = "async-trait"
 name = "async-trait"
-version = "0.1.77"
+version = "0.1.79"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c980ee35e870bd1a4d2c8294d4c04d0499e67bca1e4b5cefcc693c2fa00caea9"
+checksum = "a507401cad91ec6a857ed5513a2073c82a9b9048762b885bb98655b306964681"
 dependencies = [
 dependencies = [
  "proc-macro2",
  "proc-macro2",
  "quote",
  "quote",
@@ -39,15 +39,15 @@ dependencies = [
 
 
 [[package]]
 [[package]]
 name = "autocfg"
 name = "autocfg"
-version = "1.1.0"
+version = "1.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
+checksum = "f1fdabc7756949593fe60f30ec81974b613357de856987752631dea1e3394c80"
 
 
 [[package]]
 [[package]]
 name = "axum"
 name = "axum"
-version = "0.7.4"
+version = "0.7.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1236b4b292f6c4d6dc34604bb5120d85c3fe1d1aa596bd5cc52ca054d13e7b9e"
+checksum = "3a6c9af12842a67734c9a2e355436e5d03b22383ed60cf13cd0c18fbfe3dcbcf"
 dependencies = [
 dependencies = [
  "async-trait",
  "async-trait",
  "axum-core",
  "axum-core",
@@ -67,7 +67,7 @@ dependencies = [
  "serde_json",
  "serde_json",
  "serde_path_to_error",
  "serde_path_to_error",
  "serde_urlencoded",
  "serde_urlencoded",
- "sync_wrapper",
+ "sync_wrapper 1.0.0",
  "tower",
  "tower",
  "tower-layer",
  "tower-layer",
  "tower-service",
  "tower-service",
@@ -88,16 +88,16 @@ dependencies = [
  "mime",
  "mime",
  "pin-project-lite",
  "pin-project-lite",
  "rustversion",
  "rustversion",
- "sync_wrapper",
+ "sync_wrapper 0.1.2",
  "tower-layer",
  "tower-layer",
  "tower-service",
  "tower-service",
 ]
 ]
 
 
 [[package]]
 [[package]]
 name = "backtrace"
 name = "backtrace"
-version = "0.3.69"
+version = "0.3.71"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837"
+checksum = "26b05800d2e817c8b3b4b54abd461726265fa9789ae34330622f2db9ee696f9d"
 dependencies = [
 dependencies = [
  "addr2line",
  "addr2line",
  "cc",
  "cc",
@@ -122,9 +122,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
 
 
 [[package]]
 [[package]]
 name = "bitflags"
 name = "bitflags"
-version = "2.4.2"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ed570934406eb16438a4e976b1b4500774099c13b8cb96eec99f620f05090ddf"
+checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1"
 
 
 [[package]]
 [[package]]
 name = "block-buffer"
 name = "block-buffer"
@@ -143,9 +143,9 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
 
 
 [[package]]
 [[package]]
 name = "bytes"
 name = "bytes"
-version = "1.5.0"
+version = "1.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223"
+checksum = "514de17de45fdb8dc022b1a7975556c53c86f9f0aa5f534b98977b171857c2c9"
 
 
 [[package]]
 [[package]]
 name = "cc"
 name = "cc"
@@ -180,11 +180,11 @@ dependencies = [
 
 
 [[package]]
 [[package]]
 name = "diesel"
 name = "diesel"
-version = "2.1.4"
+version = "2.1.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62c6fcf842f17f8c78ecf7c81d75c5ce84436b41ee07e03f490fbb5f5a8731d8"
+checksum = "03fc05c17098f21b89bc7d98fe1dd3cce2c11c2ad8e145f2a44fe08ed28eb559"
 dependencies = [
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "byteorder",
  "byteorder",
  "diesel_derives",
  "diesel_derives",
  "itoa",
  "itoa",
@@ -194,9 +194,9 @@ dependencies = [
 
 
 [[package]]
 [[package]]
 name = "diesel_derives"
 name = "diesel_derives"
-version = "2.1.2"
+version = "2.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ef8337737574f55a468005a83499da720f20c65586241ffea339db9ecdfd2b44"
+checksum = "5d02eecb814ae714ffe61ddc2db2dd03e6c49a42e269b5001355500d431cce0c"
 dependencies = [
 dependencies = [
  "diesel_table_macro_syntax",
  "diesel_table_macro_syntax",
  "proc-macro2",
  "proc-macro2",
@@ -361,12 +361,12 @@ dependencies = [
 
 
 [[package]]
 [[package]]
 name = "http-body-util"
 name = "http-body-util"
-version = "0.1.0"
+version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "41cb79eb393015dadd30fc252023adb0b2400a0caee0fa2a077e6e21a551e840"
+checksum = "0475f8b2ac86659c21b64320d5d653f9efe42acd2a4e560073ec61a155a34f1d"
 dependencies = [
 dependencies = [
  "bytes",
  "bytes",
- "futures-util",
+ "futures-core",
  "http",
  "http",
  "http-body",
  "http-body",
  "pin-project-lite",
  "pin-project-lite",
@@ -396,9 +396,9 @@ dependencies = [
 
 
 [[package]]
 [[package]]
 name = "itoa"
 name = "itoa"
-version = "1.0.10"
+version = "1.0.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c"
+checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b"
 
 
 [[package]]
 [[package]]
 name = "itoap"
 name = "itoap"
@@ -446,9 +446,9 @@ dependencies = [
 
 
 [[package]]
 [[package]]
 name = "memchr"
 name = "memchr"
-version = "2.7.1"
+version = "2.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149"
+checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d"
 
 
 [[package]]
 [[package]]
 name = "mime"
 name = "mime"
@@ -467,8 +467,9 @@ dependencies = [
 
 
 [[package]]
 [[package]]
 name = "mio"
 name = "mio"
-version = "0.8.9"
-source = "git+https://github.com/fakeshadow/mio.git?rev=52b72d372bfe5807755b7f5e3e1edf282954d6ba#52b72d372bfe5807755b7f5e3e1edf282954d6ba"
+version = "0.8.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c"
 dependencies = [
 dependencies = [
  "libc",
  "libc",
  "wasi",
  "wasi",
@@ -566,9 +567,9 @@ dependencies = [
 
 
 [[package]]
 [[package]]
 name = "pin-project-lite"
 name = "pin-project-lite"
-version = "0.2.13"
+version = "0.2.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58"
+checksum = "bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02"
 
 
 [[package]]
 [[package]]
 name = "pin-utils"
 name = "pin-utils"
@@ -622,9 +623,9 @@ dependencies = [
 
 
 [[package]]
 [[package]]
 name = "proc-macro2"
 name = "proc-macro2"
-version = "1.0.78"
+version = "1.0.79"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e2422ad645d89c99f8f3e6b88a9fdeca7fabeac836b1002371c4367c8f984aae"
+checksum = "e835ff2298f5721608eb1a980ecaee1aef2c132bf95ecc026a11b7bf3c01c02e"
 dependencies = [
 dependencies = [
  "unicode-ident",
  "unicode-ident",
 ]
 ]
@@ -785,9 +786,9 @@ dependencies = [
 
 
 [[package]]
 [[package]]
 name = "serde_json"
 name = "serde_json"
-version = "1.0.114"
+version = "1.0.115"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c5f09b1bd632ef549eaa9f60a1f8de742bdbc698e6cee2095fc84dde5f549ae0"
+checksum = "12dc5c46daa8e9fdf4f5e71b6cf9a53f2487da0e86e55808e2d35539666497dd"
 dependencies = [
 dependencies = [
  "itoa",
  "itoa",
  "ryu",
  "ryu",
@@ -796,9 +797,9 @@ dependencies = [
 
 
 [[package]]
 [[package]]
 name = "serde_path_to_error"
 name = "serde_path_to_error"
-version = "0.1.15"
+version = "0.1.16"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ebd154a240de39fdebcf5775d2675c204d7c13cf39a4c697be6493c8e734337c"
+checksum = "af99884400da37c88f5e9146b7f1fd0fbcae8f6eec4e9da38b67d05486f814a6"
 dependencies = [
 dependencies = [
  "itoa",
  "itoa",
  "serde",
  "serde",
@@ -847,9 +848,9 @@ dependencies = [
 
 
 [[package]]
 [[package]]
 name = "smallvec"
 name = "smallvec"
-version = "1.13.1"
+version = "1.13.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e6ecd384b10a64542d77071bd64bd7b231f4ed5940fba55e98c3de13824cf3d7"
+checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67"
 
 
 [[package]]
 [[package]]
 name = "socket2"
 name = "socket2"
@@ -890,9 +891,9 @@ checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc"
 
 
 [[package]]
 [[package]]
 name = "syn"
 name = "syn"
-version = "2.0.52"
+version = "2.0.57"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b699d15b36d1f02c3e7c69f8ffef53de37aefae075d8488d4ba1a7788d574a07"
+checksum = "11a6ae1e52eb25aab8f3fb9fca13be982a373b8f1157ca14b897a825ba4a2d35"
 dependencies = [
 dependencies = [
  "proc-macro2",
  "proc-macro2",
  "quote",
  "quote",
@@ -905,6 +906,12 @@ version = "0.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160"
 checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160"
 
 
+[[package]]
+name = "sync_wrapper"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "384595c11a4e2969895cad5a8c4029115f5ab956a9e5ef4de79d11a426e5f20c"
+
 [[package]]
 [[package]]
 name = "tinyvec"
 name = "tinyvec"
 version = "1.6.0"
 version = "1.6.0"
@@ -922,9 +929,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
 
 
 [[package]]
 [[package]]
 name = "tokio"
 name = "tokio"
-version = "1.36.0"
+version = "1.37.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "61285f6515fa018fb2d1e46eb21223fff441ee8db5d0f1435e8ab4f5cdb80931"
+checksum = "1adbebffeca75fcfd058afa480fb6c0b81e165a0323f9c9d39c9697e37c46787"
 dependencies = [
 dependencies = [
  "backtrace",
  "backtrace",
  "libc",
  "libc",
@@ -972,7 +979,7 @@ version = "0.5.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "1e9cd434a998747dd2c4276bc96ee2e0c7a2eadf3cae88e52be55a05fa9053f5"
 checksum = "1e9cd434a998747dd2c4276bc96ee2e0c7a2eadf3cae88e52be55a05fa9053f5"
 dependencies = [
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "bytes",
  "bytes",
  "http",
  "http",
  "http-body",
  "http-body",
@@ -1247,9 +1254,9 @@ dependencies = [
 
 
 [[package]]
 [[package]]
 name = "xitca-io"
 name = "xitca-io"
-version = "0.2.0"
+version = "0.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7581c12bcd8b2194271da2117926a577e4e974ab840c7a3f61cc187a249335c8"
+checksum = "15e3340548aec525e517557432502238ed86ae69b6fc1eed851693773516b399"
 dependencies = [
 dependencies = [
  "bytes",
  "bytes",
  "tokio",
  "tokio",
@@ -1260,7 +1267,7 @@ dependencies = [
 [[package]]
 [[package]]
 name = "xitca-postgres"
 name = "xitca-postgres"
 version = "0.1.0"
 version = "0.1.0"
-source = "git+https://github.com/HFQR/xitca-web.git?rev=13a28c51a2f6e23e4e6b96e508a8af1e5e79d0b6#13a28c51a2f6e23e4e6b96e508a8af1e5e79d0b6"
+source = "git+https://github.com/HFQR/xitca-web.git?rev=d76b2e188edcbdd801ecb4a7359b4d56070d6dc4#d76b2e188edcbdd801ecb4a7359b4d56070d6dc4"
 dependencies = [
 dependencies = [
  "fallible-iterator",
  "fallible-iterator",
  "percent-encoding",
  "percent-encoding",
@@ -1358,3 +1365,8 @@ dependencies = [
  "xitca-service",
  "xitca-service",
  "xitca-unsafe-collection",
  "xitca-unsafe-collection",
 ]
 ]
+
+[[patch.unused]]
+name = "mio"
+version = "1.0.0"
+source = "git+https://github.com/fakeshadow/mio.git?rev=dcc85ea7a3af3159efdf7e3a17b3a8b58131a15f#dcc85ea7a3af3159efdf7e3a17b3a8b58131a15f"

+ 2 - 2
frameworks/Rust/xitca-web/Cargo.toml

@@ -92,5 +92,5 @@ codegen-units = 1
 panic = "abort"
 panic = "abort"
 
 
 [patch.crates-io]
 [patch.crates-io]
-xitca-postgres = { git = "https://github.com/HFQR/xitca-web.git", rev = "13a28c51a2f6e23e4e6b96e508a8af1e5e79d0b6" }
-mio = { git = "https://github.com/fakeshadow/mio.git", rev = "52b72d372bfe5807755b7f5e3e1edf282954d6ba" }
+xitca-postgres = { git = "https://github.com/HFQR/xitca-web.git", rev = "d76b2e188edcbdd801ecb4a7359b4d56070d6dc4" }
+mio = { git = "https://github.com/fakeshadow/mio.git", rev = "dcc85ea7a3af3159efdf7e3a17b3a8b58131a15f" }

+ 1 - 1
frameworks/Rust/xitca-web/src/ser.rs

@@ -173,6 +173,6 @@ where
 {
 {
     serde_json::to_writer(BufMutWriter(buf), value)?;
     serde_json::to_writer(BufMutWriter(buf), value)?;
     let mut res = req.into_response(buf.split().freeze());
     let mut res = req.into_response(buf.split().freeze());
-    res.headers_mut().append(CONTENT_TYPE, JSON);
+    res.headers_mut().insert(CONTENT_TYPE, JSON);
     Ok(res)
     Ok(res)
 }
 }

+ 1 - 1
frameworks/Rust/xitca-web/xitca-web-axum.dockerfile

@@ -1,4 +1,4 @@
-FROM rust:1.76
+FROM rust:1.77
 
 
 ADD ./ /xitca-web
 ADD ./ /xitca-web
 WORKDIR /xitca-web
 WORKDIR /xitca-web

+ 1 - 1
frameworks/Rust/xitca-web/xitca-web-iou.dockerfile

@@ -1,4 +1,4 @@
-FROM rust:1.76
+FROM rust:1.77
 
 
 ADD ./ /xitca-web
 ADD ./ /xitca-web
 WORKDIR /xitca-web
 WORKDIR /xitca-web

+ 1 - 1
frameworks/Rust/xitca-web/xitca-web-sync.dockerfile

@@ -1,4 +1,4 @@
-FROM rust:1.76
+FROM rust:1.77
 
 
 ADD ./ /xitca-web
 ADD ./ /xitca-web
 WORKDIR /xitca-web
 WORKDIR /xitca-web

+ 2 - 2
frameworks/Rust/xitca-web/xitca-web-wasm.dockerfile

@@ -1,7 +1,7 @@
 ARG WASMTIME_VERSION=15.0.0
 ARG WASMTIME_VERSION=15.0.0
-ARG WASM_TARGET=wasm32-wasi-preview1-threads
+ARG WASM_TARGET=wasm32-wasip1-threads
 
 
-FROM rust:1.76 AS compile
+FROM rust:1.77 AS compile
 
 
 ARG WASMTIME_VERSION
 ARG WASMTIME_VERSION
 ARG WASM_TARGET
 ARG WASM_TARGET

+ 1 - 1
frameworks/Rust/xitca-web/xitca-web.dockerfile

@@ -1,4 +1,4 @@
-FROM rust:1.76
+FROM rust:1.77
 
 
 ADD ./ /xitca-web
 ADD ./ /xitca-web
 WORKDIR /xitca-web
 WORKDIR /xitca-web