@@ -6,7 +6,6 @@ pub(crate) mod cache;
66pub ( crate ) mod crate_details;
77mod csp;
88pub ( crate ) mod error;
9- mod escaped_uri;
109pub ( crate ) mod extractors;
1110mod features;
1211mod file;
@@ -48,7 +47,6 @@ use docs_rs_types::{BuildStatus, CrateId, KrateName, ReqVersion, Version, Versio
4847use docs_rs_utils:: rustc_version:: parse_rustc_date;
4948use error:: AxumNope ;
5049use page:: TemplateData ;
51- use percent_encoding:: { AsciiSet , CONTROLS , utf8_percent_encode} ;
5250use sentry:: integrations:: tower as sentry_tower;
5351use serde:: Serialize ;
5452use serde_json:: Value ;
@@ -61,19 +59,6 @@ use tower::ServiceBuilder;
6159use tower_http:: { catch_panic:: CatchPanicLayer , timeout:: TimeoutLayer , trace:: TraceLayer } ;
6260use tracing:: { info, instrument} ;
6361
64- // from https://github.com/servo/rust-url/blob/master/url/src/parser.rs
65- // and https://github.com/tokio-rs/axum/blob/main/axum-extra/src/lib.rs
66- const FRAGMENT : & AsciiSet = & CONTROLS . add ( b' ' ) . add ( b'"' ) . add ( b'<' ) . add ( b'>' ) . add ( b'`' ) ;
67- const PATH : & AsciiSet = & FRAGMENT . add ( b'#' ) . add ( b'?' ) . add ( b'{' ) . add ( b'}' ) ;
68-
69- pub ( crate ) fn encode_url_path ( path : & str ) -> String {
70- utf8_percent_encode ( path, PATH ) . to_string ( )
71- }
72-
73- pub ( crate ) fn url_decode < ' a > ( input : & ' a str ) -> Result < Cow < ' a , str > > {
74- Ok ( percent_encoding:: percent_decode ( input. as_bytes ( ) ) . decode_utf8 ( ) ?)
75- }
76-
7762/// Picks the correct "rustdoc.css" static file depending on which rustdoc version was used to
7863/// generate this version of this crate.
7964pub fn get_correct_docsrs_style_file ( version : & str ) -> Result < String > {
@@ -641,18 +626,18 @@ impl_axum_webpage! {
641626
642627#[ cfg( test) ]
643628mod test {
644- use std:: str:: FromStr as _;
645-
646629 use super :: * ;
647630 use crate :: docbuilder:: DocCoverage ;
648631 use crate :: test:: {
649632 AxumResponseTestExt , AxumRouterTestExt , FakeBuild , TestDatabase , TestEnvironment ,
650633 async_wrapper,
651634 } ;
652635 use docs_rs_types:: ReleaseId ;
636+ use docs_rs_uri:: encode_url_path;
653637 use kuchikiki:: traits:: TendrilSink ;
654638 use pretty_assertions:: assert_eq;
655639 use serde_json:: json;
640+ use std:: str:: FromStr as _;
656641 use test_case:: test_case;
657642
658643 async fn release ( version : & str , env : & TestEnvironment ) -> ReleaseId {
0 commit comments