Skip to content

Commit 3e6ab70

Browse files
authored
Merge pull request #249 from jbr/no-url-direct-dep
Remove url direct dep (rebase and extension of #243)
2 parents 10178c5 + 30edbd3 commit 3e6ab70

File tree

5 files changed

+18
-31
lines changed

5 files changed

+18
-31
lines changed

Cargo.toml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,9 +34,8 @@ log = { version = "0.4.7", features = ["kv_unstable"] }
3434
mime_guess = "2.0.3"
3535
serde = "1.0.97"
3636
serde_json = "1.0.40"
37-
url = "2.0.0"
3837
http-client = { version = "6.0.0", default-features = false }
39-
http-types = "2.0.0"
38+
http-types = "2.5.0"
4039
async-std = { version = "1.6.0", default-features = false, features = ["std"] }
4140
async-trait = "0.1.36"
4241
pin-project-lite = "0.1.1"

src/lib.rs

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -86,13 +86,11 @@ pub mod middleware;
8686
pub mod utils;
8787

8888
#[doc(inline)]
89-
pub use http_types::{self as http, Body, Error, Status, StatusCode};
89+
pub use http_types::{self as http, Body, Error, Status, StatusCode, Url};
9090

9191
#[doc(inline)]
9292
pub use http_client::HttpClient;
9393

94-
pub use url;
95-
9694
pub use client::Client;
9795
pub use request::Request;
9896
pub use request_builder::RequestBuilder;

src/middleware/redirect/mod.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,8 @@
1212
//! # Ok(()) }
1313
//! ```
1414
15-
use crate::http::{headers, StatusCode};
15+
use crate::http::{headers, StatusCode, Url};
1616
use crate::middleware::{Middleware, Next, Request, Response};
17-
use crate::url::Url;
1817
use crate::{Client, Result};
1918

2019
// List of acceptible 300-series redirect codes.

src/request.rs

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,11 @@
11
use crate::http::{
22
self,
33
headers::{self, HeaderName, HeaderValues, ToHeaderValues},
4-
Body, Method, Mime,
4+
Body, Method, Mime, Url,
55
};
66
use crate::RequestBuilder;
77

88
use serde::Serialize;
9-
use url::Url;
109

1110
use std::fmt;
1211
use std::ops::Index;
@@ -30,12 +29,10 @@ impl Request {
3029
/// ```no_run
3130
/// # #[async_std::main]
3231
/// # async fn main() -> surf::Result<()> {
33-
/// use surf::http::Method;
34-
/// use surf::url::Url;
32+
/// use surf::http::{Url, Method};
3533
///
36-
/// let method = Method::Get;
3734
/// let url = Url::parse("https://httpbin.org/get")?;
38-
/// let req = surf::Request::new(method, url);
35+
/// let req = surf::Request::new(Method::Get, url);
3936
/// # Ok(()) }
4037
/// ```
4138
pub fn new(method: Method, url: Url) -> Self {
@@ -47,19 +44,18 @@ impl Request {
4744
///
4845
/// # Example:
4946
/// ```rust
50-
/// # use surf::url::Url;
51-
/// # use surf::{http, Request};
47+
/// use surf::http::{Method, mime::HTML, Url};
5248
/// # #[async_std::main]
5349
/// # async fn main() -> surf::Result<()> {
5450
/// let url = Url::parse("https://httpbin.org/post")?;
55-
/// let mut request = Request::builder(http::Method::Post, url.clone())
51+
/// let mut request = surf::Request::builder(Method::Post, url.clone())
5652
/// .body("<html>hi</html>")
5753
/// .header("custom-header", "value")
58-
/// .content_type(http::mime::HTML)
54+
/// .content_type(HTML)
5955
/// .build();
6056
///
6157
/// assert_eq!(request.take_body().into_string().await.unwrap(), "<html>hi</html>");
62-
/// assert_eq!(request.method(), http::Method::Post);
58+
/// assert_eq!(request.method(), Method::Post);
6359
/// assert_eq!(request.url(), &url);
6460
/// assert_eq!(request["custom-header"], "value");
6561
/// assert_eq!(request["content-type"], "text/html;charset=utf-8");
@@ -234,7 +230,7 @@ impl Request {
234230
/// ```no_run
235231
/// # #[async_std::main]
236232
/// # async fn main() -> surf::Result<()> {
237-
/// use surf::url::Url;
233+
/// use surf::http::Url;
238234
/// let req = surf::get("https://httpbin.org/get").build();
239235
/// assert_eq!(req.url(), &Url::parse("https://httpbin.org/get")?);
240236
/// # Ok(()) }

src/request_builder.rs

Lines changed: 7 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,11 @@
11
use crate::http::{
22
headers::{HeaderName, ToHeaderValues},
3-
Body, Method, Mime,
3+
Body, Method, Mime, Url,
44
};
55
use crate::{Client, Error, Request, Response, Result};
66

77
use futures_util::future::BoxFuture;
88
use serde::Serialize;
9-
use url::Url;
109

1110
use std::fmt;
1211
use std::future::Future;
@@ -22,18 +21,17 @@ use std::task::{Context, Poll};
2221
/// # Examples
2322
///
2423
/// ```rust
25-
/// # use surf::url::Url;
26-
/// # use surf::{http, Request};
24+
/// use surf::http::{Method, mime::HTML, Url};
2725
/// # #[async_std::main]
2826
/// # async fn main() -> surf::Result<()> {
2927
/// let mut request = surf::post("https://httpbin.org/post")
3028
/// .body("<html>hi</html>")
3129
/// .header("custom-header", "value")
32-
/// .content_type(http::mime::HTML)
30+
/// .content_type(HTML)
3331
/// .build();
3432
///
3533
/// assert_eq!(request.take_body().into_string().await.unwrap(), "<html>hi</html>");
36-
/// assert_eq!(request.method(), http::Method::Post);
34+
/// assert_eq!(request.method(), Method::Post);
3735
/// assert_eq!(request.url(), &Url::parse("https://httpbin.org/post")?);
3836
/// assert_eq!(request["custom-header"], "value");
3937
/// assert_eq!(request["content-type"], "text/html;charset=utf-8");
@@ -42,12 +40,11 @@ use std::task::{Context, Poll};
4240
/// ```
4341
///
4442
/// ```rust
45-
/// # use surf::url::Url;
46-
/// # use surf::{http, Request};
43+
/// use surf::http::{Method, Url};
4744
/// # #[async_std::main]
4845
/// # async fn main() -> surf::Result<()> {
4946
/// let url = Url::parse("https://httpbin.org/post")?;
50-
/// let request = Request::builder(http::Method::Post, url).build();
47+
/// let request = surf::Request::builder(Method::Post, url).build();
5148
/// # Ok(())
5249
/// # }
5350
/// ```
@@ -73,10 +70,8 @@ impl RequestBuilder {
7370
/// ```no_run
7471
/// # #[async_std::main]
7572
/// # async fn main() -> surf::Result<()> {
76-
/// use surf::http::Method;
77-
/// use surf::url::Url;
73+
/// use surf::http::{Method, Url};
7874
///
79-
/// let method = Method::Get;
8075
/// let url = Url::parse("https://httpbin.org/get")?;
8176
/// let req = surf::RequestBuilder::new(Method::Get, url).build();
8277
/// # Ok(()) }

0 commit comments

Comments
 (0)