1
0
mirror of https://github.com/fafhrd91/actix-net synced 2024-11-27 18:02:58 +01:00

Replace str_split_once to lower actix-tls msrv to 1.50.0 and bump actix-net to 1.50.0 (#434)

This commit is contained in:
david-mcgillicuddy-moixa 2022-01-10 17:00:04 +00:00 committed by GitHub
parent 01e0f922de
commit 9ec3cc0fe7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 13 additions and 5 deletions

View File

@ -1,7 +1,7 @@
# Changes # Changes
## Unreleased - 2021-xx-xx ## Unreleased - 2021-xx-xx
- Remove use of `str::split_once` to lower MSRV of `actix-tls` to a de-facto 1.50.0 from 1.52.0
## 3.0.0 - 2021-12-26 ## 3.0.0 - 2021-12-26
* No significant changes since `3.0.0-rc.2`. * No significant changes since `3.0.0-rc.2`.

View File

@ -27,25 +27,25 @@ pub trait Host: Unpin + 'static {
impl Host for String { impl Host for String {
fn hostname(&self) -> &str { fn hostname(&self) -> &str {
self.split_once(':') str_split_once(self, ':')
.map(|(hostname, _)| hostname) .map(|(hostname, _)| hostname)
.unwrap_or(self) .unwrap_or(self)
} }
fn port(&self) -> Option<u16> { fn port(&self) -> Option<u16> {
self.split_once(':').and_then(|(_, port)| port.parse().ok()) str_split_once(self, ':').and_then(|(_, port)| port.parse().ok())
} }
} }
impl Host for &'static str { impl Host for &'static str {
fn hostname(&self) -> &str { fn hostname(&self) -> &str {
self.split_once(':') str_split_once(self, ':')
.map(|(hostname, _)| hostname) .map(|(hostname, _)| hostname)
.unwrap_or(self) .unwrap_or(self)
} }
fn port(&self) -> Option<u16> { fn port(&self) -> Option<u16> {
self.split_once(':').and_then(|(_, port)| port.parse().ok()) str_split_once(self, ':').and_then(|(_, port)| port.parse().ok())
} }
} }
@ -69,3 +69,11 @@ mod tests {
assert_connection_info_eq!("example.com:false:false", "example.com", None); assert_connection_info_eq!("example.com:false:false", "example.com", None);
} }
} }
// `str::split_once` is stabilized in 1.52.0
fn str_split_once(str: &str, delimiter: char) -> Option<(&str, &str)> {
let mut splitn = str.splitn(2, delimiter);
let prefix = splitn.next()?;
let suffix = splitn.next()?;
Some((prefix, suffix))
}