From 82c32629bb16162ae6f638f0e9f6a133e76d8855 Mon Sep 17 00:00:00 2001 From: fakeshadow <24548779@qq.com> Date: Tue, 25 Jun 2024 23:40:46 +0800 Subject: [PATCH] bump msrv to 1.79 (#1039) * bump msrv to 1.78. * more msrv bump. * further bump msrv to enable inline const. --- .github/workflows/ci.yml | 4 ++-- README.md | 2 +- client/Cargo.toml | 8 ++++---- client/src/h1/proto/decode.rs | 10 +++++----- http/CHANGES.md | 9 ++++++++- http/Cargo.toml | 14 +++++++------- http/README.md | 2 +- http/src/h1/proto/decode.rs | 7 ++++--- http/src/util/buffered/buffer.rs | 8 +++----- http/src/util/service/handler.rs | 11 +++++++++++ io/CHANGES.md | 5 ++++- io/Cargo.toml | 4 ++-- postgres/Cargo.toml | 8 ++++---- router/CHANGES.md | 5 ++++- router/Cargo.toml | 4 ++-- server/CHANGES.md | 7 ++++++- server/Cargo.toml | 8 ++++---- service/CHANGES.md | 3 +++ service/Cargo.toml | 4 ++-- test/Cargo.toml | 12 ++++++------ tls/CHANGES.md | 5 ++++- tls/Cargo.toml | 4 ++-- unsafe_collection/CHANGES.md | 12 ++++++++---- unsafe_collection/Cargo.toml | 2 +- unsafe_collection/src/bound_queue/stack.rs | 4 +--- unsafe_collection/src/bytes/uninit.rs | 8 +++----- unsafe_collection/src/small_str.rs | 6 +++--- unsafe_collection/src/uninit.rs | 8 -------- web/CHANGES.md | 8 +++++++- web/Cargo.toml | 12 ++++++------ 30 files changed, 118 insertions(+), 86 deletions(-) create mode 100644 service/CHANGES.md diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ee2f9d1a5..dcbce50e3 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -14,7 +14,7 @@ jobs: - { name: Linux, os: ubuntu-latest } - { name: macOS, os: macos-latest } version: - - 1.75 + - 1.79 name: http check @ ${{ matrix.target.name }} - ${{ matrix.version }} runs-on: ${{ matrix.target.os }} @@ -108,7 +108,7 @@ jobs: - { name: Linux, os: ubuntu-latest } - { name: macOS, os: macos-latest } version: - - 1.75 + - 1.79 name: client check @ ${{ matrix.target.name }} - ${{ matrix.version }} runs-on: ${{ matrix.target.os }} diff --git a/README.md b/README.md index de2639f48..55720ee53 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # An alternative http library and web framework inspired by hyper ## Minimum Supported Rust Version -- 1.75 [^1] +- 1.79 [^1] ## Motivation - Less synchronization and thread per core design is used. diff --git a/client/Cargo.toml b/client/Cargo.toml index 31b561b59..c7513537f 100644 --- a/client/Cargo.toml +++ b/client/Cargo.toml @@ -30,9 +30,9 @@ websocket = ["http-ws"] dangerous = [] [dependencies] -xitca-http = { version = "0.5", default-features = false, features = ["runtime"] } -xitca-io = "0.3.0" -xitca-unsafe-collection = "0.1.1" +xitca-http = { version = "0.6.0", default-features = false, features = ["runtime"] } +xitca-io = "0.4.0" +xitca-unsafe-collection = "0.2.0" futures-core = { version = "0.3.17", default-features = false } futures-sink = { version = "0.3.17", default-features = false } @@ -56,7 +56,7 @@ async-stream = { version = "0.3", optional = true } itoa = { version = "1", optional = true } # tls shared -xitca-tls = { version = "0.3.0", optional = true } +xitca-tls = { version = "0.4.0", optional = true } # rustls, http3 and dangerous features shared webpki-roots = { version = "0.26", optional = true } diff --git a/client/src/h1/proto/decode.rs b/client/src/h1/proto/decode.rs index d6c5c3e4d..9da193acf 100644 --- a/client/src/h1/proto/decode.rs +++ b/client/src/h1/proto/decode.rs @@ -1,20 +1,20 @@ +use core::mem::MaybeUninit; + use httparse::{ParserConfig, Status}; +use super::context::Context; use xitca_http::{ bytes::BytesMut, h1::proto::{codec::TransferCoding, error::ProtoError, header::HeaderIndex}, http::{Response, StatusCode, Version}, }; -use xitca_unsafe_collection::uninit; - -use super::context::Context; impl Context<'_, '_, HEADER_LIMIT> { pub(crate) fn decode_head( &mut self, buf: &mut BytesMut, ) -> Result, TransferCoding)>, ProtoError> { - let mut headers = uninit::uninit_array::<_, HEADER_LIMIT>(); + let mut headers = [const { MaybeUninit::uninit() }; HEADER_LIMIT]; let mut parsed = httparse::Response::new(&mut []); @@ -32,7 +32,7 @@ impl Context<'_, '_, HEADER_LIMIT> { let status = StatusCode::from_u16(parsed.code.unwrap())?; // record the index of headers from the buffer. - let mut header_idx = uninit::uninit_array::<_, HEADER_LIMIT>(); + let mut header_idx = [const { MaybeUninit::uninit() }; HEADER_LIMIT]; let header_idx_slice = HeaderIndex::record(&mut header_idx, buf, parsed.headers); let headers_len = parsed.headers.len(); diff --git a/http/CHANGES.md b/http/CHANGES.md index 664edde58..1795f62ac 100644 --- a/http/CHANGES.md +++ b/http/CHANGES.md @@ -1,4 +1,11 @@ -# unreleased +# unreleased 0.6.0 +## Change +- bump MSRV to `1.79` +- update `xitca-io` to `0.4.0` +- update `xitca-router` to `0.3.0` +- update `xitca-service` to `0.2.0` +- update `xitca-tls` to `0.4.0` +- update `xitca-unsafe-collection` to `0.2.0` # 0.5.0 ## Change diff --git a/http/Cargo.toml b/http/Cargo.toml index 8a3900003..caafcada9 100644 --- a/http/Cargo.toml +++ b/http/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "xitca-http" -version = "0.5.0" +version = "0.6.0" edition = "2021" license = "Apache-2.0" description = "http library for xitca" @@ -34,9 +34,9 @@ io-uring = ["xitca-io/runtime-uring", "tokio-uring"] router = ["xitca-router"] [dependencies] -xitca-io = "0.3.0" -xitca-service = { version = "0.1", features = ["alloc", "std"] } -xitca-unsafe-collection = { version = "0.1.1", features = ["bytes"] } +xitca-io = "0.4.0" +xitca-service = { version = "0.2.0", features = ["alloc", "std"] } +xitca-unsafe-collection = { version = "0.2.0", features = ["bytes"] } futures-core = "0.3.17" http = "1" @@ -48,7 +48,7 @@ tracing = { version = "0.1.40", default-features = false } native-tls = { version = "0.2.7", features = ["alpn"], optional = true } # tls support shared -xitca-tls = { version = "0.3.0", optional = true } +xitca-tls = { version = "0.4.0", optional = true } # http/1 support httparse = { version = "1.8", optional = true } @@ -68,7 +68,7 @@ h3-quinn = { version = "0.0.6", optional = true } tokio = { version = "1.30", features = ["rt", "time"], optional = true } # util service support -xitca-router = { version = "0.2", optional = true } +xitca-router = { version = "0.3.0", optional = true } # io-uring support tokio-uring = { version = "0.4.0", features = ["bytes"], optional = true } @@ -78,7 +78,7 @@ socket2 = { version = "0.5.1", features = ["all"] } [dev-dependencies] criterion = "0.5" -xitca-server = "0.3" +xitca-server = "0.4" [[bench]] name = "h1_decode" diff --git a/http/README.md b/http/README.md index 0c9abf685..6c2411f03 100644 --- a/http/README.md +++ b/http/README.md @@ -1 +1 @@ -# http library for xitca \ No newline at end of file +# http library for xitca diff --git a/http/src/h1/proto/decode.rs b/http/src/h1/proto/decode.rs index 112d95240..3695e7648 100644 --- a/http/src/h1/proto/decode.rs +++ b/http/src/h1/proto/decode.rs @@ -1,5 +1,6 @@ +use core::mem::MaybeUninit; + use httparse::Status; -use xitca_unsafe_collection::uninit; use crate::{ bytes::{Buf, Bytes, BytesMut}, @@ -25,7 +26,7 @@ impl Context<'_, D, MAX_HEADERS> { buf: &mut BytesMut, ) -> Result, ProtoError> { let mut req = httparse::Request::new(&mut []); - let mut headers = uninit::uninit_array::<_, MAX_HEADERS>(); + let mut headers = [const { MaybeUninit::uninit() }; MAX_HEADERS]; match req.parse_with_uninit_headers(buf, &mut headers)? { Status::Complete(len) => { @@ -58,7 +59,7 @@ impl Context<'_, D, MAX_HEADERS> { }; // record indices of headers from bytes buffer. - let mut header_idx = uninit::uninit_array::<_, MAX_HEADERS>(); + let mut header_idx = [const { MaybeUninit::uninit() }; MAX_HEADERS]; let header_idx_slice = HeaderIndex::record(&mut header_idx, buf, req.headers); let headers_len = req.headers.len(); diff --git a/http/src/util/buffered/buffer.rs b/http/src/util/buffered/buffer.rs index dd87b67b1..9be46ab22 100644 --- a/http/src/util/buffered/buffer.rs +++ b/http/src/util/buffered/buffer.rs @@ -1,5 +1,6 @@ use core::{ fmt, + mem::MaybeUninit, ops::{Deref, DerefMut}, }; @@ -7,10 +8,7 @@ use std::io; use tracing::trace; use xitca_io::bytes::{Buf, BytesMut}; -use xitca_unsafe_collection::{ - bytes::{read_buf, BufList, ChunkVectoredUninit}, - uninit::uninit_array, -}; +use xitca_unsafe_collection::bytes::{read_buf, BufList, ChunkVectoredUninit}; pub use xitca_io::bytes::{BufInterest, BufRead, BufWrite}; @@ -240,7 +238,7 @@ where break; } - let mut buf = uninit_array::<_, BUF_LIST_CNT>(); + let mut buf = [const { MaybeUninit::uninit() }; BUF_LIST_CNT]; let slice = queue.chunks_vectored_uninit_into_init(&mut buf); match io.write_vectored(slice) { Ok(0) => return write_zero(self.want_write_io()), diff --git a/http/src/util/service/handler.rs b/http/src/util/service/handler.rs index 2d3c1ab0d..da0bb820f 100644 --- a/http/src/util/service/handler.rs +++ b/http/src/util/service/handler.rs @@ -111,6 +111,12 @@ where /// assert_eq!(extract.0, input.as_str()); /// # } /// ``` + +#[diagnostic::on_unimplemented( + message = "`{Self}` does not impl FromRequest trait", + label = "handler function arguments must impl FromRequest trait", + note = "consider add `impl FromRequest<_> for {Self}`" +)] pub trait FromRequest<'a, Req>: Sized { // Used to construct the type for any lifetime 'b. type Type<'b>: FromRequest<'b, Req, Error = Self::Error>; @@ -155,6 +161,11 @@ from_req_impl! { A, B, C, D, E, F, G, H, I, } /// Make Response with ownership of Req. /// The Output type is what returns from [handler_service] function. +#[diagnostic::on_unimplemented( + message = "`{Self}` does not impl Responder trait", + label = "handler function return type must impl Responder trait", + note = "consider add `impl Responder<_> for {Self}`" +)] pub trait Responder { type Response; type Error; diff --git a/io/CHANGES.md b/io/CHANGES.md index a398aa1e0..fb0cfd444 100644 --- a/io/CHANGES.md +++ b/io/CHANGES.md @@ -1,4 +1,7 @@ -# unreleased +# unreleased 0.4.0 +## Change +- bump MSRV to `1.79` +- update `xitca-unsafe-collection` to `0.2.0` # 0.3.0 ## Change diff --git a/io/Cargo.toml b/io/Cargo.toml index f60cfdfc1..ce2e54c6f 100644 --- a/io/Cargo.toml +++ b/io/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "xitca-io" -version = "0.3.0" +version = "0.4.0" edition = "2021" license = "Apache-2.0" description = "async network io types and traits" @@ -19,7 +19,7 @@ runtime-uring = ["tokio-uring"] quic = ["quinn", "runtime"] [dependencies] -xitca-unsafe-collection = { version = "0.1", features = ["bytes"] } +xitca-unsafe-collection = { version = "0.2.0", features = ["bytes"] } bytes = "1.4" diff --git a/postgres/Cargo.toml b/postgres/Cargo.toml index b44c345a0..99de2d816 100644 --- a/postgres/Cargo.toml +++ b/postgres/Cargo.toml @@ -15,9 +15,9 @@ quic = ["quinn", "rustls-pemfile", "tls"] io-uring = ["xitca-io/runtime-uring"] [dependencies] -xitca-io = { version = "0.3.0", features = ["runtime"] } -xitca-service = "0.1" -xitca-unsafe-collection = { version = "0.1", features = ["bytes"] } +xitca-io = { version = "0.4.0", features = ["runtime"] } +xitca-service = "0.2.0" +xitca-unsafe-collection = { version = "0.2.0", features = ["bytes"] } fallible-iterator = "0.2" percent-encoding = "2" @@ -29,7 +29,7 @@ tracing = { version = "0.1.40", default-features = false } # tls sha2 = { version = "0.10.8", optional = true } webpki-roots = { version = "0.26", optional = true } -xitca-tls = { version = "0.3.0", optional = true } +xitca-tls = { version = "0.4.0", optional = true } # quic quinn = { version = "0.11", features = ["ring"], optional = true } diff --git a/router/CHANGES.md b/router/CHANGES.md index df72cb29e..a5d8aa00b 100644 --- a/router/CHANGES.md +++ b/router/CHANGES.md @@ -1,4 +1,7 @@ -# unreleased 0.2.1 +# unreleased 0.3.0 +## Change +- bump MSRV to `1.79` + ## Fix - allow catch all matching for route without leading slash. `foo/*` and `foo/*bar` become valid pattern. diff --git a/router/Cargo.toml b/router/Cargo.toml index c554b6faa..fc4baab4b 100644 --- a/router/Cargo.toml +++ b/router/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "xitca-router" -version = "0.2.1" +version = "0.3.0" edition = "2021" license = "MIT" description = "router for xitca" @@ -10,7 +10,7 @@ authors = ["fakeshadow "] readme= "README.md" [dependencies] -xitca-unsafe-collection = "0.1" +xitca-unsafe-collection = "0.2.0" [dev-dependencies] criterion = "0.5" diff --git a/server/CHANGES.md b/server/CHANGES.md index 11f1fadc1..22b688851 100644 --- a/server/CHANGES.md +++ b/server/CHANGES.md @@ -1,4 +1,9 @@ -# unreleased +# unreleased 0.4.0 +## Change +- bump MSRV to `1.79` +- update `xitca-io` to `0.4.0` +- update `xitca-service` to `0.2.0` +- update `xitca-unsafe-collection` to `0.2.0` # 0.3.0 ## Remove diff --git a/server/Cargo.toml b/server/Cargo.toml index 0a46150ab..9a18a5158 100644 --- a/server/Cargo.toml +++ b/server/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "xitca-server" -version = "0.3.0" +version = "0.4.0" edition = "2021" license = "Apache-2.0" description = "http server for xitca" @@ -16,9 +16,9 @@ quic = ["xitca-io/quic"] io-uring = ["tokio-uring"] [dependencies] -xitca-io = { version = "0.3.0", features = ["runtime"] } -xitca-service = { version = "0.1", features = ["alloc"] } -xitca-unsafe-collection = "0.1" +xitca-io = { version = "0.4.0", features = ["runtime"] } +xitca-service = { version = "0.2.0", features = ["alloc"] } +xitca-unsafe-collection = "0.2.0" tracing = { version = "0.1.40", default-features = false } diff --git a/service/CHANGES.md b/service/CHANGES.md new file mode 100644 index 000000000..62a6d974c --- /dev/null +++ b/service/CHANGES.md @@ -0,0 +1,3 @@ +# unreleased 0.2.0 +## Change +- bump MSRV to `1.79` diff --git a/service/Cargo.toml b/service/Cargo.toml index 1c86abcc0..720de8879 100644 --- a/service/Cargo.toml +++ b/service/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "xitca-service" -version = "0.1.0" +version = "0.2.0" edition = "2021" license = "Apache-2.0" description = "async traits for xitca" @@ -14,4 +14,4 @@ alloc = [] std = [] [dev-dependencies] -xitca-unsafe-collection = "0.1" +xitca-unsafe-collection = "0.2.0" diff --git a/test/Cargo.toml b/test/Cargo.toml index eb52640a2..1148c0e95 100644 --- a/test/Cargo.toml +++ b/test/Cargo.toml @@ -8,13 +8,13 @@ io-uring = ["xitca-http/io-uring", "xitca-server/io-uring"] [dependencies] xitca-client = { version = "0.1", features = ["http2", "http3", "websocket", "dangerous"] } -xitca-http = { version = "0.5", features = ["http2", "http3"] } +xitca-http = { version = "0.6", features = ["http2", "http3"] } xitca-codegen = "0.2" -xitca-io = "0.3.0" -xitca-server = { version = "0.3", features = ["quic"] } -xitca-service = "0.1" -xitca-unsafe-collection = "0.1.1" -xitca-web = "0.5" +xitca-io = "0.4.0" +xitca-server = { version = "0.4", features = ["quic"] } +xitca-service = "0.2.0" +xitca-unsafe-collection = "0.2" +xitca-web = "0.6" http-ws = { version = "0.4", features = ["stream"] } diff --git a/tls/CHANGES.md b/tls/CHANGES.md index 016414fd5..ccdd1f7b6 100644 --- a/tls/CHANGES.md +++ b/tls/CHANGES.md @@ -1,4 +1,7 @@ -# unreleased +# unreleased 0.4.0 +## Change +- bump MSRV to `1.79` +- update `xitca-io` to `0.4.0` # 0.3.0 - update `xitca-io` to `0.3.0` diff --git a/tls/Cargo.toml b/tls/Cargo.toml index 53c252abd..5b54ec3de 100644 --- a/tls/Cargo.toml +++ b/tls/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "xitca-tls" -version = "0.3.0" +version = "0.4.0" edition = "2021" license = "Apache-2.0" description = "tls utility for xitca" @@ -23,7 +23,7 @@ rustls-uring-no-crypto = ["rustls_crate", "xitca-io/runtime-uring"] rustls-uring = ["rustls_crate/aws-lc-rs", "xitca-io/runtime-uring"] [dependencies] -xitca-io = { version = "0.3.0", features = ["runtime"] } +xitca-io = { version = "0.4.0", features = ["runtime"] } openssl = { version = "0.10", optional = true } rustls_crate = { package = "rustls", version = "0.23", default-features = false, features = ["logging", "std", "tls12"], optional = true } diff --git a/unsafe_collection/CHANGES.md b/unsafe_collection/CHANGES.md index 8c852c4ec..fdf5fcde7 100644 --- a/unsafe_collection/CHANGES.md +++ b/unsafe_collection/CHANGES.md @@ -1,5 +1,9 @@ -# unreleased - -# 0.1.1 +# unreleased 0.2.0 ## Add -- add `futures::CatchUnwind`. +- add `futures::CatchUnwind` + +## Change +- bump MSRV to `1.79` + +## Remove +- reduce unsafe code block by removing `uninit::uninit_array` diff --git a/unsafe_collection/Cargo.toml b/unsafe_collection/Cargo.toml index 70420b3c6..8b56914ad 100644 --- a/unsafe_collection/Cargo.toml +++ b/unsafe_collection/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "xitca-unsafe-collection" -version = "0.1.1" +version = "0.2.0" edition = "2021" license = "Apache-2.0" description = "unsafe keyword enabled utilities for xitca" diff --git a/unsafe_collection/src/bound_queue/stack.rs b/unsafe_collection/src/bound_queue/stack.rs index 6a2ab92a3..2d5e37dd9 100644 --- a/unsafe_collection/src/bound_queue/stack.rs +++ b/unsafe_collection/src/bound_queue/stack.rs @@ -1,7 +1,5 @@ use core::{fmt, mem::MaybeUninit}; -use crate::uninit; - use super::{Bounded, PushError, Queueable}; pub struct StackQueue { @@ -19,7 +17,7 @@ impl StackQueue { pub const fn new() -> Self { Self { inner: Bounded { - queue: uninit::uninit_array(), + queue: [const { MaybeUninit::uninit() }; N], next: 0, len: 0, }, diff --git a/unsafe_collection/src/bytes/uninit.rs b/unsafe_collection/src/bytes/uninit.rs index c9cbe041b..5f8c3e1cf 100644 --- a/unsafe_collection/src/bytes/uninit.rs +++ b/unsafe_collection/src/bytes/uninit.rs @@ -72,7 +72,7 @@ impl BufList { /// let mut lst = xitca_unsafe_collection::bytes::BufList::<&[u8], 6>::new(); /// lst.push(&b"996"[..]); /// lst.push(&b"007"[..]); - /// let mut dst = xitca_unsafe_collection::uninit::uninit_array::, 8>(); + /// let mut dst = [const { core::mem::MaybeUninit::uninit() }; 8]; /// let init_slice = lst.chunks_vectored_uninit_into_init(&mut dst); /// assert_eq!(init_slice.len(), 2); /// assert_eq!(&*init_slice[0], &b"996"[..]); @@ -160,13 +160,11 @@ impl ChunkVectoredUninit for &'_ [u8] { mod test { use super::*; - use crate::uninit::uninit_array; - #[test] fn either_buf() { let mut lst = BufList::<_, 2>::new(); - let mut buf = uninit_array::<_, 4>(); + let mut buf = [const { MaybeUninit::uninit() }; 4]; lst.push(EitherBuf::Left(&b"left"[..])); lst.push(EitherBuf::Right(&b"right"[..])); @@ -182,7 +180,7 @@ mod test { fn either_chain() { let mut lst = BufList::<_, 3>::new(); - let mut buf = uninit_array::<_, 5>(); + let mut buf = [const { MaybeUninit::uninit() }; 5]; lst.push(EitherBuf::Left((&b"1"[..]).chain(&b"2"[..]))); lst.push(EitherBuf::Right(&b"3"[..])); diff --git a/unsafe_collection/src/small_str.rs b/unsafe_collection/src/small_str.rs index 401413950..f2419e13b 100644 --- a/unsafe_collection/src/small_str.rs +++ b/unsafe_collection/src/small_str.rs @@ -15,7 +15,7 @@ mod inner { slice, }; - use crate::uninit::{slice_assume_init, uninit_array}; + use crate::uninit::slice_assume_init; const TAG: u8 = 0b1000_0000; @@ -34,7 +34,7 @@ mod inner { // SAFETY: // caller must make sure slice is no more than 15 bytes in length. unsafe fn from_slice(slice: &[u8]) -> Self { - let mut arr = uninit_array(); + let mut arr = [const { MaybeUninit::uninit() }; 15]; let len = slice.len(); @@ -107,7 +107,7 @@ mod inner { { Self { inline: Inline { - arr: uninit_array(), + arr: [const { MaybeUninit::uninit() }; 15], len: TAG, }, } diff --git a/unsafe_collection/src/uninit.rs b/unsafe_collection/src/uninit.rs index 9e083c561..99a840b5a 100644 --- a/unsafe_collection/src/uninit.rs +++ b/unsafe_collection/src/uninit.rs @@ -2,14 +2,6 @@ use core::mem::MaybeUninit; -/// A shortcut for create array of uninit type. -#[allow(clippy::uninit_assumed_init)] // wtf -#[inline(always)] -pub const fn uninit_array() -> [MaybeUninit; N] { - // SAFETY: An uninitialized `[MaybeUninit<_>; LEN]` is valid. - unsafe { MaybeUninit::uninit().assume_init() } -} - // SAFETY: // // It is up to the caller to guarantee that the `MaybeUninit` elements diff --git a/web/CHANGES.md b/web/CHANGES.md index 80c65dfd7..02c4de74f 100644 --- a/web/CHANGES.md +++ b/web/CHANGES.md @@ -1,6 +1,12 @@ -# unreleased 0.5.1 +# unreleased 0.6.0 ## Change - remove generic type param from `IntoCtx` trait +- bump MSRV to `1.79` +- update `xitca-http` to `0.6.0` +- update `xitca-server` to `0.4.0` +- update `xitca-service` to `0.2.0` +- update `xitca-tls` to `0.4.0` +- update `xitca-unsafe-collection` to `0.2.0` # 0.5.0 ## Add diff --git a/web/Cargo.toml b/web/Cargo.toml index 7c9395002..fc1f3b724 100644 --- a/web/Cargo.toml +++ b/web/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "xitca-web" -version = "0.5.1" +version = "0.6.0" edition = "2021" license = "Apache-2.0" description = "an async web framework" @@ -78,19 +78,19 @@ serde = ["dep:serde"] __server = ["xitca-http/runtime", "xitca-server"] [dependencies] -xitca-http = { version = "0.5", features = ["router"], default-features = false } -xitca-service = { version = "0.1", features = ["alloc", "std"] } -xitca-unsafe-collection = "0.1.1" +xitca-http = { version = "0.6.0", features = ["router"], default-features = false } +xitca-service = { version = "0.2.0", features = ["alloc", "std"] } +xitca-unsafe-collection = "0.2.0" futures-core = "0.3" pin-project-lite = "0.2.9" tokio = { version = "1", features = ["rt", "sync"] } # http server -xitca-server = { version = "0.3", optional = true } +xitca-server = { version = "0.4.0", optional = true } # tls -xitca-tls = { version = "0.3.0", optional = true } +xitca-tls = { version = "0.4.0", optional = true } # (de)serialization shared. serde = { version = "1", optional = true }