mirror of https://github.com/fafhrd91/actix-net
				
				
				
			Compare commits
	
		
			No commits in common. "master" and "rt-v2.11.0" have entirely different histories.
		
	
	
		
			master
			...
			rt-v2.11.0
		
	
		| 
						 | 
					@ -2,7 +2,6 @@ version: "0.2"
 | 
				
			||||||
words:
 | 
					words:
 | 
				
			||||||
  - actix
 | 
					  - actix
 | 
				
			||||||
  - addrs
 | 
					  - addrs
 | 
				
			||||||
  - bytestring
 | 
					 | 
				
			||||||
  - clippy
 | 
					  - clippy
 | 
				
			||||||
  - deque
 | 
					  - deque
 | 
				
			||||||
  - itertools
 | 
					  - itertools
 | 
				
			||||||
| 
						 | 
					@ -14,7 +13,6 @@ words:
 | 
				
			||||||
  - rcgen
 | 
					  - rcgen
 | 
				
			||||||
  - Rustls
 | 
					  - Rustls
 | 
				
			||||||
  - rustup
 | 
					  - rustup
 | 
				
			||||||
  - serde
 | 
					 | 
				
			||||||
  - spki
 | 
					  - spki
 | 
				
			||||||
  - uring
 | 
					  - uring
 | 
				
			||||||
  - webpki
 | 
					  - webpki
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -59,12 +59,12 @@ jobs:
 | 
				
			||||||
          echo "RUSTFLAGS=-C target-feature=+crt-static" >> $GITHUB_ENV
 | 
					          echo "RUSTFLAGS=-C target-feature=+crt-static" >> $GITHUB_ENV
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Install Rust (${{ matrix.version }})
 | 
					      - name: Install Rust (${{ matrix.version }})
 | 
				
			||||||
        uses: actions-rust-lang/setup-rust-toolchain@v1.15.2
 | 
					        uses: actions-rust-lang/setup-rust-toolchain@v1.14.0
 | 
				
			||||||
        with:
 | 
					        with:
 | 
				
			||||||
          toolchain: ${{ matrix.version }}
 | 
					          toolchain: ${{ matrix.version }}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Install just, cargo-hack, cargo-nextest, cargo-ci-cache-clean
 | 
					      - name: Install just, cargo-hack, cargo-nextest, cargo-ci-cache-clean
 | 
				
			||||||
        uses: taiki-e/install-action@v2.62.39
 | 
					        uses: taiki-e/install-action@v2.58.21
 | 
				
			||||||
        with:
 | 
					        with:
 | 
				
			||||||
          tool: just,cargo-hack,cargo-nextest,cargo-ci-cache-clean
 | 
					          tool: just,cargo-hack,cargo-nextest,cargo-ci-cache-clean
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -116,12 +116,12 @@ jobs:
 | 
				
			||||||
      - uses: actions/checkout@v5
 | 
					      - uses: actions/checkout@v5
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Install Rust (nightly)
 | 
					      - name: Install Rust (nightly)
 | 
				
			||||||
        uses: actions-rust-lang/setup-rust-toolchain@v1.15.2
 | 
					        uses: actions-rust-lang/setup-rust-toolchain@v1.14.0
 | 
				
			||||||
        with:
 | 
					        with:
 | 
				
			||||||
          toolchain: nightly
 | 
					          toolchain: nightly
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Install cargo-hack & cargo-minimal-versions
 | 
					      - name: Install cargo-hack & cargo-minimal-versions
 | 
				
			||||||
        uses: taiki-e/install-action@v2.62.39
 | 
					        uses: taiki-e/install-action@v2.58.21
 | 
				
			||||||
        with:
 | 
					        with:
 | 
				
			||||||
          tool: cargo-hack,cargo-minimal-versions
 | 
					          tool: cargo-hack,cargo-minimal-versions
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -68,12 +68,12 @@ jobs:
 | 
				
			||||||
          echo "RUSTFLAGS=-C target-feature=+crt-static" >> $GITHUB_ENV
 | 
					          echo "RUSTFLAGS=-C target-feature=+crt-static" >> $GITHUB_ENV
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Install Rust (${{ matrix.version.name }})
 | 
					      - name: Install Rust (${{ matrix.version.name }})
 | 
				
			||||||
        uses: actions-rust-lang/setup-rust-toolchain@v1.15.2
 | 
					        uses: actions-rust-lang/setup-rust-toolchain@v1.14.0
 | 
				
			||||||
        with:
 | 
					        with:
 | 
				
			||||||
          toolchain: ${{ matrix.version.version }}
 | 
					          toolchain: ${{ matrix.version.version }}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Install just, cargo-hack, cargo-nextest, cargo-ci-cache-clean
 | 
					      - name: Install just, cargo-hack, cargo-nextest, cargo-ci-cache-clean
 | 
				
			||||||
        uses: taiki-e/install-action@v2.62.39
 | 
					        uses: taiki-e/install-action@v2.58.21
 | 
				
			||||||
        with:
 | 
					        with:
 | 
				
			||||||
          tool: just,cargo-hack,cargo-nextest,cargo-ci-cache-clean
 | 
					          tool: just,cargo-hack,cargo-nextest,cargo-ci-cache-clean
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -120,12 +120,12 @@ jobs:
 | 
				
			||||||
      - uses: actions/checkout@v5
 | 
					      - uses: actions/checkout@v5
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Install Rust (nightly)
 | 
					      - name: Install Rust (nightly)
 | 
				
			||||||
        uses: actions-rust-lang/setup-rust-toolchain@v1.15.2
 | 
					        uses: actions-rust-lang/setup-rust-toolchain@v1.14.0
 | 
				
			||||||
        with:
 | 
					        with:
 | 
				
			||||||
          toolchain: nightly
 | 
					          toolchain: nightly
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Install just
 | 
					      - name: Install just
 | 
				
			||||||
        uses: taiki-e/install-action@v2.62.39
 | 
					        uses: taiki-e/install-action@v2.58.21
 | 
				
			||||||
        with:
 | 
					        with:
 | 
				
			||||||
          tool: just
 | 
					          tool: just
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -18,12 +18,12 @@ jobs:
 | 
				
			||||||
      - uses: actions/checkout@v5
 | 
					      - uses: actions/checkout@v5
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Install Rust
 | 
					      - name: Install Rust
 | 
				
			||||||
        uses: actions-rust-lang/setup-rust-toolchain@v1.15.2
 | 
					        uses: actions-rust-lang/setup-rust-toolchain@v1.14.0
 | 
				
			||||||
        with:
 | 
					        with:
 | 
				
			||||||
          components: llvm-tools-preview
 | 
					          components: llvm-tools-preview
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Install cargo-llvm-cov
 | 
					      - name: Install cargo-llvm-cov
 | 
				
			||||||
        uses: taiki-e/install-action@v2.62.39
 | 
					        uses: taiki-e/install-action@v2.58.21
 | 
				
			||||||
        with:
 | 
					        with:
 | 
				
			||||||
          tool: cargo-llvm-cov
 | 
					          tool: cargo-llvm-cov
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -31,7 +31,7 @@ jobs:
 | 
				
			||||||
        run: cargo llvm-cov --workspace --all-features --codecov --output-path codecov.json
 | 
					        run: cargo llvm-cov --workspace --all-features --codecov --output-path codecov.json
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Upload coverage to Codecov
 | 
					      - name: Upload coverage to Codecov
 | 
				
			||||||
        uses: codecov/codecov-action@v5.5.1
 | 
					        uses: codecov/codecov-action@v5.5.0
 | 
				
			||||||
        with:
 | 
					        with:
 | 
				
			||||||
          files: codecov.json
 | 
					          files: codecov.json
 | 
				
			||||||
          fail_ci_if_error: true
 | 
					          fail_ci_if_error: true
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -18,7 +18,7 @@ jobs:
 | 
				
			||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
      - uses: actions/checkout@v5
 | 
					      - uses: actions/checkout@v5
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - uses: actions-rust-lang/setup-rust-toolchain@v1.15.2
 | 
					      - uses: actions-rust-lang/setup-rust-toolchain@v1.14.0
 | 
				
			||||||
        with:
 | 
					        with:
 | 
				
			||||||
          toolchain: nightly
 | 
					          toolchain: nightly
 | 
				
			||||||
          components: rustfmt
 | 
					          components: rustfmt
 | 
				
			||||||
| 
						 | 
					@ -35,7 +35,7 @@ jobs:
 | 
				
			||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
      - uses: actions/checkout@v5
 | 
					      - uses: actions/checkout@v5
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - uses: actions-rust-lang/setup-rust-toolchain@v1.15.2
 | 
					      - uses: actions-rust-lang/setup-rust-toolchain@v1.14.0
 | 
				
			||||||
        with: { components: clippy }
 | 
					        with: { components: clippy }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - uses: giraffate/clippy-action@v1.0.1
 | 
					      - uses: giraffate/clippy-action@v1.0.1
 | 
				
			||||||
| 
						 | 
					@ -51,17 +51,17 @@ jobs:
 | 
				
			||||||
      - uses: actions/checkout@v5
 | 
					      - uses: actions/checkout@v5
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Install Rust (${{ vars.RUST_VERSION_EXTERNAL_TYPES }})
 | 
					      - name: Install Rust (${{ vars.RUST_VERSION_EXTERNAL_TYPES }})
 | 
				
			||||||
        uses: actions-rust-lang/setup-rust-toolchain@v1.15.2
 | 
					        uses: actions-rust-lang/setup-rust-toolchain@v1.14.0
 | 
				
			||||||
        with:
 | 
					        with:
 | 
				
			||||||
          toolchain: ${{ vars.RUST_VERSION_EXTERNAL_TYPES }}
 | 
					          toolchain: ${{ vars.RUST_VERSION_EXTERNAL_TYPES }}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Install just
 | 
					      - name: Install just
 | 
				
			||||||
        uses: taiki-e/install-action@v2.62.39
 | 
					        uses: taiki-e/install-action@v2.58.21
 | 
				
			||||||
        with:
 | 
					        with:
 | 
				
			||||||
          tool: just
 | 
					          tool: just
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Install cargo-check-external-types
 | 
					      - name: Install cargo-check-external-types
 | 
				
			||||||
        uses: taiki-e/cache-cargo-install-action@v2.3.1
 | 
					        uses: taiki-e/cache-cargo-install-action@v2.3.0
 | 
				
			||||||
        with:
 | 
					        with:
 | 
				
			||||||
          tool: cargo-check-external-types
 | 
					          tool: cargo-check-external-types
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							| 
						 | 
					@ -19,7 +19,7 @@ homepage = "https://actix.rs"
 | 
				
			||||||
repository = "https://github.com/actix/actix-net"
 | 
					repository = "https://github.com/actix/actix-net"
 | 
				
			||||||
license = "MIT OR Apache-2.0"
 | 
					license = "MIT OR Apache-2.0"
 | 
				
			||||||
edition = "2021"
 | 
					edition = "2021"
 | 
				
			||||||
rust-version = "1.76"
 | 
					rust-version = "1.75"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
[patch.crates-io]
 | 
					[patch.crates-io]
 | 
				
			||||||
actix-codec = { path = "actix-codec" }
 | 
					actix-codec = { path = "actix-codec" }
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -2,7 +2,7 @@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Unreleased
 | 
					## Unreleased
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- Minimum supported Rust version (MSRV) is now 1.76.
 | 
					- Minimum supported Rust version (MSRV) is now 1.75.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## 0.5.2
 | 
					## 0.5.2
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -2,7 +2,7 @@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Unreleased
 | 
					## Unreleased
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- Minimum supported Rust version (MSRV) is now 1.76.
 | 
					- Minimum supported Rust version (MSRV) is now 1.75.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## 0.2.4
 | 
					## 0.2.4
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -2,8 +2,6 @@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Unreleased
 | 
					## Unreleased
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- Minimum supported Rust version (MSRV) is now 1.76.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
## 2.11.0
 | 
					## 2.11.0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- Implement `ActixStream` for `tokio::io::BufReader<IO>`.
 | 
					- Implement `ActixStream` for `tokio::io::BufReader<IO>`.
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -2,8 +2,6 @@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Unreleased
 | 
					## Unreleased
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- Minimum supported Rust version (MSRV) is now 1.76.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
## 2.6.0
 | 
					## 2.6.0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- Add `ServerBuilder::shutdown_signal()` method.
 | 
					- Add `ServerBuilder::shutdown_signal()` method.
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -2,7 +2,7 @@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Unreleased
 | 
					## Unreleased
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- Minimum supported Rust version (MSRV) is now 1.76.
 | 
					- Minimum supported Rust version (MSRV) is now 1.75.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## 2.0.3
 | 
					## 2.0.3
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -2,7 +2,7 @@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Unreleased
 | 
					## Unreleased
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- Minimum supported Rust version (MSRV) is now 1.76.
 | 
					- Minimum supported Rust version (MSRV) is now 1.75.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## 3.4.0
 | 
					## 3.4.0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -51,12 +51,12 @@ rustls-0_21-native-roots = ["tokio-rustls-024", "dep:rustls-native-certs-06"]
 | 
				
			||||||
# use rustls v0.22 impls
 | 
					# use rustls v0.22 impls
 | 
				
			||||||
rustls-0_22 = ["dep:tokio-rustls-025", "dep:rustls-pki-types-1"]
 | 
					rustls-0_22 = ["dep:tokio-rustls-025", "dep:rustls-pki-types-1"]
 | 
				
			||||||
rustls-0_22-webpki-roots = ["rustls-0_22", "dep:webpki-roots-026"]
 | 
					rustls-0_22-webpki-roots = ["rustls-0_22", "dep:webpki-roots-026"]
 | 
				
			||||||
rustls-0_22-native-roots = ["rustls-0_22", "dep:rustls-native-certs-08"]
 | 
					rustls-0_22-native-roots = ["rustls-0_22", "dep:rustls-native-certs-07"]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# use rustls v0.23 impls
 | 
					# use rustls v0.23 impls
 | 
				
			||||||
rustls-0_23 = ["dep:tokio-rustls-026", "dep:rustls-pki-types-1"]
 | 
					rustls-0_23 = ["dep:tokio-rustls-026", "dep:rustls-pki-types-1"]
 | 
				
			||||||
rustls-0_23-webpki-roots = ["rustls-0_23", "dep:webpki-roots-026"]
 | 
					rustls-0_23-webpki-roots = ["rustls-0_23", "dep:webpki-roots-026"]
 | 
				
			||||||
rustls-0_23-native-roots = ["rustls-0_23", "dep:rustls-native-certs-08"]
 | 
					rustls-0_23-native-roots = ["rustls-0_23", "dep:rustls-native-certs-07"]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# use native-tls impls
 | 
					# use native-tls impls
 | 
				
			||||||
native-tls = ["dep:tokio-native-tls"]
 | 
					native-tls = ["dep:tokio-native-tls"]
 | 
				
			||||||
| 
						 | 
					@ -105,7 +105,7 @@ webpki-roots-026 = { package = "webpki-roots", version = "0.26", optional = true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# native root certificates for rustls impls
 | 
					# native root certificates for rustls impls
 | 
				
			||||||
rustls-native-certs-06 = { package = "rustls-native-certs", version = "0.6", optional = true }
 | 
					rustls-native-certs-06 = { package = "rustls-native-certs", version = "0.6", optional = true }
 | 
				
			||||||
rustls-native-certs-08 = { package = "rustls-native-certs", version = "0.8", optional = true }
 | 
					rustls-native-certs-07 = { package = "rustls-native-certs", version = "0.7", optional = true }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# native-tls
 | 
					# native-tls
 | 
				
			||||||
tokio-native-tls = { version = "0.3", optional = true }
 | 
					tokio-native-tls = { version = "0.3", optional = true }
 | 
				
			||||||
| 
						 | 
					@ -120,12 +120,12 @@ actix-rt = "2.2"
 | 
				
			||||||
actix-server = "2"
 | 
					actix-server = "2"
 | 
				
			||||||
bytes = "1"
 | 
					bytes = "1"
 | 
				
			||||||
futures-util = { version = "0.3.17", default-features = false, features = ["sink"] }
 | 
					futures-util = { version = "0.3.17", default-features = false, features = ["sink"] }
 | 
				
			||||||
hickory-resolver = "0.25"
 | 
					 | 
				
			||||||
itertools = "0.14"
 | 
					itertools = "0.14"
 | 
				
			||||||
pretty_env_logger = "0.5"
 | 
					pretty_env_logger = "0.5"
 | 
				
			||||||
rcgen = "0.13"
 | 
					rcgen = "0.13"
 | 
				
			||||||
rustls-pemfile = "2"
 | 
					rustls-pemfile = "2"
 | 
				
			||||||
tokio-rustls-026 = { package = "tokio-rustls", version = "0.26" }
 | 
					tokio-rustls-026 = { package = "tokio-rustls", version = "0.26" }
 | 
				
			||||||
 | 
					trust-dns-resolver = "0.23"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
[[example]]
 | 
					[[example]]
 | 
				
			||||||
name = "accept-rustls"
 | 
					name = "accept-rustls"
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -13,11 +13,11 @@ use futures_core::future::LocalBoxFuture;
 | 
				
			||||||
/// use actix_tls::connect::{Resolve, Resolver};
 | 
					/// use actix_tls::connect::{Resolve, Resolver};
 | 
				
			||||||
/// use futures_util::future::LocalBoxFuture;
 | 
					/// use futures_util::future::LocalBoxFuture;
 | 
				
			||||||
///
 | 
					///
 | 
				
			||||||
/// // use Hickory DNS tokio resolver
 | 
					/// // use trust-dns async tokio resolver
 | 
				
			||||||
/// use hickory_resolver::TokioResolver;
 | 
					/// use trust_dns_resolver::TokioAsyncResolver;
 | 
				
			||||||
///
 | 
					///
 | 
				
			||||||
/// struct MyResolver {
 | 
					/// struct MyResolver {
 | 
				
			||||||
///     hickory_dns: TokioResolver,
 | 
					///     trust_dns: TokioAsyncResolver,
 | 
				
			||||||
/// };
 | 
					/// };
 | 
				
			||||||
///
 | 
					///
 | 
				
			||||||
/// // impl Resolve trait and convert given host address str and port to SocketAddr.
 | 
					/// // impl Resolve trait and convert given host address str and port to SocketAddr.
 | 
				
			||||||
| 
						 | 
					@ -29,7 +29,7 @@ use futures_core::future::LocalBoxFuture;
 | 
				
			||||||
///     ) -> LocalBoxFuture<'a, Result<Vec<SocketAddr>, Box<dyn std::error::Error>>> {
 | 
					///     ) -> LocalBoxFuture<'a, Result<Vec<SocketAddr>, Box<dyn std::error::Error>>> {
 | 
				
			||||||
///         Box::pin(async move {
 | 
					///         Box::pin(async move {
 | 
				
			||||||
///             let res = self
 | 
					///             let res = self
 | 
				
			||||||
///                 .hickory_dns
 | 
					///                 .trust_dns
 | 
				
			||||||
///                 .lookup_ip(host)
 | 
					///                 .lookup_ip(host)
 | 
				
			||||||
///                 .await?
 | 
					///                 .await?
 | 
				
			||||||
///                 .iter()
 | 
					///                 .iter()
 | 
				
			||||||
| 
						 | 
					@ -41,7 +41,7 @@ use futures_core::future::LocalBoxFuture;
 | 
				
			||||||
/// }
 | 
					/// }
 | 
				
			||||||
///
 | 
					///
 | 
				
			||||||
/// let my_resolver = MyResolver {
 | 
					/// let my_resolver = MyResolver {
 | 
				
			||||||
///     hickory_dns: TokioResolver::builder_tokio().unwrap().build(),
 | 
					///     trust_dns: TokioAsyncResolver::tokio_from_system_conf().unwrap(),
 | 
				
			||||||
/// };
 | 
					/// };
 | 
				
			||||||
///
 | 
					///
 | 
				
			||||||
/// // wrap custom resolver
 | 
					/// // wrap custom resolver
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -35,17 +35,12 @@ pub mod reexports {
 | 
				
			||||||
///
 | 
					///
 | 
				
			||||||
/// See [`rustls_native_certs::load_native_certs()`] for more info on behavior and errors.
 | 
					/// See [`rustls_native_certs::load_native_certs()`] for more info on behavior and errors.
 | 
				
			||||||
///
 | 
					///
 | 
				
			||||||
/// [`rustls_native_certs::load_native_certs()`]: rustls_native_certs_08::load_native_certs()
 | 
					/// [`rustls_native_certs::load_native_certs()`]: rustls_native_certs_07::load_native_certs()
 | 
				
			||||||
#[cfg(feature = "rustls-0_22-native-roots")]
 | 
					#[cfg(feature = "rustls-0_22-native-roots")]
 | 
				
			||||||
pub fn native_roots_cert_store() -> io::Result<tokio_rustls::rustls::RootCertStore> {
 | 
					pub fn native_roots_cert_store() -> io::Result<tokio_rustls::rustls::RootCertStore> {
 | 
				
			||||||
    let mut root_certs = tokio_rustls::rustls::RootCertStore::empty();
 | 
					    let mut root_certs = tokio_rustls::rustls::RootCertStore::empty();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    let certs = rustls_native_certs_08::load_native_certs();
 | 
					    for cert in rustls_native_certs_07::load_native_certs()? {
 | 
				
			||||||
    if let Some(err) = certs.errors.into_iter().next() {
 | 
					 | 
				
			||||||
        return Err(io::Error::other(err));
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    for cert in certs.certs {
 | 
					 | 
				
			||||||
        root_certs.add(cert).unwrap();
 | 
					        root_certs.add(cert).unwrap();
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -35,17 +35,12 @@ pub mod reexports {
 | 
				
			||||||
///
 | 
					///
 | 
				
			||||||
/// See [`rustls_native_certs::load_native_certs()`] for more info on behavior and errors.
 | 
					/// See [`rustls_native_certs::load_native_certs()`] for more info on behavior and errors.
 | 
				
			||||||
///
 | 
					///
 | 
				
			||||||
/// [`rustls_native_certs::load_native_certs()`]: rustls_native_certs_08::load_native_certs()
 | 
					/// [`rustls_native_certs::load_native_certs()`]: rustls_native_certs_07::load_native_certs()
 | 
				
			||||||
#[cfg(feature = "rustls-0_23-native-roots")]
 | 
					#[cfg(feature = "rustls-0_23-native-roots")]
 | 
				
			||||||
pub fn native_roots_cert_store() -> io::Result<tokio_rustls::rustls::RootCertStore> {
 | 
					pub fn native_roots_cert_store() -> io::Result<tokio_rustls::rustls::RootCertStore> {
 | 
				
			||||||
    let mut root_certs = tokio_rustls::rustls::RootCertStore::empty();
 | 
					    let mut root_certs = tokio_rustls::rustls::RootCertStore::empty();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    let certs = rustls_native_certs_08::load_native_certs();
 | 
					    for cert in rustls_native_certs_07::load_native_certs()? {
 | 
				
			||||||
    if let Some(err) = certs.errors.into_iter().next() {
 | 
					 | 
				
			||||||
        return Err(io::Error::other(err));
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    for cert in certs.certs {
 | 
					 | 
				
			||||||
        root_certs.add(cert).unwrap();
 | 
					        root_certs.add(cert).unwrap();
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -2,7 +2,7 @@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#![doc(html_logo_url = "https://actix.rs/img/logo.png")]
 | 
					#![doc(html_logo_url = "https://actix.rs/img/logo.png")]
 | 
				
			||||||
#![doc(html_favicon_url = "https://actix.rs/favicon.ico")]
 | 
					#![doc(html_favicon_url = "https://actix.rs/favicon.ico")]
 | 
				
			||||||
#![cfg_attr(docsrs, feature(doc_cfg))]
 | 
					#![cfg_attr(docsrs, feature(doc_auto_cfg))]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#[cfg(feature = "openssl")]
 | 
					#[cfg(feature = "openssl")]
 | 
				
			||||||
#[allow(unused_extern_crates)]
 | 
					#[allow(unused_extern_crates)]
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -50,12 +50,12 @@ async fn custom_resolver_connect() {
 | 
				
			||||||
        Connector::new(resolver)
 | 
					        Connector::new(resolver)
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    use hickory_resolver::TokioResolver;
 | 
					    use trust_dns_resolver::TokioAsyncResolver;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    let srv = TestServer::start(|| fn_service(|_io: TcpStream| async { Ok::<_, io::Error>(()) }));
 | 
					    let srv = TestServer::start(|| fn_service(|_io: TcpStream| async { Ok::<_, io::Error>(()) }));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    struct MyResolver {
 | 
					    struct MyResolver {
 | 
				
			||||||
        hickory_dns: TokioResolver,
 | 
					        trust_dns: TokioAsyncResolver,
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    impl Resolve for MyResolver {
 | 
					    impl Resolve for MyResolver {
 | 
				
			||||||
| 
						 | 
					@ -66,7 +66,7 @@ async fn custom_resolver_connect() {
 | 
				
			||||||
        ) -> LocalBoxFuture<'a, Result<Vec<SocketAddr>, Box<dyn std::error::Error>>> {
 | 
					        ) -> LocalBoxFuture<'a, Result<Vec<SocketAddr>, Box<dyn std::error::Error>>> {
 | 
				
			||||||
            Box::pin(async move {
 | 
					            Box::pin(async move {
 | 
				
			||||||
                let res = self
 | 
					                let res = self
 | 
				
			||||||
                    .hickory_dns
 | 
					                    .trust_dns
 | 
				
			||||||
                    .lookup_ip(host)
 | 
					                    .lookup_ip(host)
 | 
				
			||||||
                    .await?
 | 
					                    .await?
 | 
				
			||||||
                    .iter()
 | 
					                    .iter()
 | 
				
			||||||
| 
						 | 
					@ -78,7 +78,7 @@ async fn custom_resolver_connect() {
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    let resolver = MyResolver {
 | 
					    let resolver = MyResolver {
 | 
				
			||||||
        hickory_dns: TokioResolver::builder_tokio().unwrap().build(),
 | 
					        trust_dns: TokioAsyncResolver::tokio_from_system_conf().unwrap(),
 | 
				
			||||||
    };
 | 
					    };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    let factory = connector_factory(Resolver::custom(resolver));
 | 
					    let factory = connector_factory(Resolver::custom(resolver));
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -2,7 +2,7 @@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Unreleased
 | 
					## Unreleased
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- Minimum supported Rust version (MSRV) is now 1.76.
 | 
					- Minimum supported Rust version (MSRV) is now 1.75.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## 0.1.0
 | 
					## 0.1.0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -2,7 +2,7 @@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Unreleased
 | 
					## Unreleased
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- Minimum supported Rust version (MSRV) is now 1.76.
 | 
					- Minimum supported Rust version (MSRV) is now 1.75.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## 3.0.1
 | 
					## 3.0.1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -2,13 +2,7 @@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Unreleased
 | 
					## Unreleased
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- Minimum supported Rust version (MSRV) is now 1.76.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
## 1.5.0
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
- Migrate `serde` dependency to `serde_core`.
 | 
					 | 
				
			||||||
- Minimum supported Rust version (MSRV) is now 1.75.
 | 
					- Minimum supported Rust version (MSRV) is now 1.75.
 | 
				
			||||||
- Switch `serde` to `serde_core`
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
## 1.4.0
 | 
					## 1.4.0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,6 +1,6 @@
 | 
				
			||||||
[package]
 | 
					[package]
 | 
				
			||||||
name = "bytestring"
 | 
					name = "bytestring"
 | 
				
			||||||
version = "1.5.0"
 | 
					version = "1.4.0"
 | 
				
			||||||
description = "A UTF-8 encoded read-only string using `Bytes` as storage"
 | 
					description = "A UTF-8 encoded read-only string using `Bytes` as storage"
 | 
				
			||||||
authors = ["Nikolay Kim <fafhrd91@gmail.com>", "Rob Ede <robjtede@icloud.com>"]
 | 
					authors = ["Nikolay Kim <fafhrd91@gmail.com>", "Rob Ede <robjtede@icloud.com>"]
 | 
				
			||||||
keywords = ["string", "bytes", "utf8", "web", "bytestring"]
 | 
					keywords = ["string", "bytes", "utf8", "web", "bytestring"]
 | 
				
			||||||
| 
						 | 
					@ -12,14 +12,11 @@ edition.workspace = true
 | 
				
			||||||
rust-version.workspace = true
 | 
					rust-version.workspace = true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
[package.metadata.cargo_check_external_types]
 | 
					[package.metadata.cargo_check_external_types]
 | 
				
			||||||
allowed_external_types = ["bytes::*", "serde_core::*"]
 | 
					allowed_external_types = ["bytes::*", "serde::*"]
 | 
				
			||||||
 | 
					 | 
				
			||||||
[features]
 | 
					 | 
				
			||||||
serde = ["dep:serde_core"]
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
[dependencies]
 | 
					[dependencies]
 | 
				
			||||||
bytes = { version = "1.2", default-features = false }
 | 
					bytes = { version = "1.2", default-features = false }
 | 
				
			||||||
serde_core = { version = "1", optional = true }
 | 
					serde = { version = "1", optional = true }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
[dev-dependencies]
 | 
					[dev-dependencies]
 | 
				
			||||||
ahash = { version = "0.8", default-features = false }
 | 
					ahash = { version = "0.8", default-features = false }
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -5,11 +5,11 @@
 | 
				
			||||||
<!-- prettier-ignore-start -->
 | 
					<!-- prettier-ignore-start -->
 | 
				
			||||||
 | 
					
 | 
				
			||||||
[](https://crates.io/crates/bytestring)
 | 
					[](https://crates.io/crates/bytestring)
 | 
				
			||||||
[](https://docs.rs/bytestring/1.5.0)
 | 
					[](https://docs.rs/bytestring/1.4.0)
 | 
				
			||||||
[](https://blog.rust-lang.org/2021/05/06/Rust-1.52.0.html)
 | 
					[](https://blog.rust-lang.org/2021/05/06/Rust-1.52.0.html)
 | 
				
			||||||

 | 
					
 | 
				
			||||||
<br />
 | 
					<br />
 | 
				
			||||||
[](https://deps.rs/crate/bytestring/1.5.0)
 | 
					[](https://deps.rs/crate/bytestring/1.4.0)
 | 
				
			||||||

 | 
					
 | 
				
			||||||
[](https://discord.gg/NWpN5mmg3x)
 | 
					[](https://discord.gg/NWpN5mmg3x)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -275,7 +275,7 @@ impl fmt::Display for ByteString {
 | 
				
			||||||
mod serde {
 | 
					mod serde {
 | 
				
			||||||
    use alloc::string::String;
 | 
					    use alloc::string::String;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    use serde_core::{
 | 
					    use serde::{
 | 
				
			||||||
        de::{Deserialize, Deserializer},
 | 
					        de::{Deserialize, Deserializer},
 | 
				
			||||||
        ser::{Serialize, Serializer},
 | 
					        ser::{Serialize, Serializer},
 | 
				
			||||||
    };
 | 
					    };
 | 
				
			||||||
| 
						 | 
					@ -304,7 +304,7 @@ mod serde {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    #[cfg(test)]
 | 
					    #[cfg(test)]
 | 
				
			||||||
    mod serde_impl_tests {
 | 
					    mod serde_impl_tests {
 | 
				
			||||||
        use serde_core::de::DeserializeOwned;
 | 
					        use serde::de::DeserializeOwned;
 | 
				
			||||||
        use static_assertions::assert_impl_all;
 | 
					        use static_assertions::assert_impl_all;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        use super::*;
 | 
					        use super::*;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										1
									
								
								justfile
								
								
								
								
							
							
						
						
									
										1
									
								
								justfile
								
								
								
								
							| 
						 | 
					@ -30,7 +30,6 @@ downgrade-for-msrv:
 | 
				
			||||||
    cargo {{ toolchain }} update -p=litemap --precise=0.7.4 # next ver: 1.81.0
 | 
					    cargo {{ toolchain }} update -p=litemap --precise=0.7.4 # next ver: 1.81.0
 | 
				
			||||||
    cargo {{ toolchain }} update -p=zerofrom --precise=0.1.5 # next ver: 1.81.0
 | 
					    cargo {{ toolchain }} update -p=zerofrom --precise=0.1.5 # next ver: 1.81.0
 | 
				
			||||||
    cargo {{ toolchain }} update -p=half --precise=2.4.1 # next ver: 1.81.0
 | 
					    cargo {{ toolchain }} update -p=half --precise=2.4.1 # next ver: 1.81.0
 | 
				
			||||||
    cargo {{ toolchain }} update -p=time --precise=0.3.41 # next ver: 1.81.0
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
msrv := ```
 | 
					msrv := ```
 | 
				
			||||||
    cargo metadata --format-version=1 \
 | 
					    cargo metadata --format-version=1 \
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -2,7 +2,7 @@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Unreleased
 | 
					## Unreleased
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- Minimum supported Rust version (MSRV) is now 1.76.
 | 
					- Minimum supported Rust version (MSRV) is now 1.75.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## 0.1.5
 | 
					## 0.1.5
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -2,7 +2,7 @@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Unreleased
 | 
					## Unreleased
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- Minimum supported Rust version (MSRV) is now 1.76.
 | 
					- Minimum supported Rust version (MSRV) is now 1.75.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## 0.1.4
 | 
					## 0.1.4
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue