22
33pub ( crate ) mod page;
44
5+ use crate :: utils:: get_correct_docsrs_style_file;
56use crate :: utils:: report_error;
67use anyhow:: { anyhow, Context as _} ;
78use log:: info;
@@ -534,6 +535,9 @@ pub(crate) struct MetaData {
534535 pub ( crate ) default_target : String ,
535536 pub ( crate ) doc_targets : Vec < String > ,
536537 pub ( crate ) yanked : bool ,
538+ /// CSS file to use depending on the rustdoc version used to generate this version of this
539+ /// crate.
540+ pub ( crate ) rustdoc_css_file : String ,
537541}
538542
539543impl MetaData {
@@ -552,7 +556,8 @@ impl MetaData {
552556 releases.rustdoc_status,
553557 releases.default_target,
554558 releases.doc_targets,
555- releases.yanked
559+ releases.yanked,
560+ releases.doc_rustc_version
556561 FROM releases
557562 INNER JOIN crates ON crates.id = releases.crate_id
558563 WHERE crates.name = $1 AND releases.version = $2" ,
@@ -572,6 +577,7 @@ impl MetaData {
572577 default_target : row. get ( 5 ) ,
573578 doc_targets : MetaData :: parse_doc_targets ( row. get ( 6 ) ) ,
574579 yanked : row. get ( 7 ) ,
580+ rustdoc_css_file : get_correct_docsrs_style_file ( row. get ( 8 ) ) . unwrap ( ) ,
575581 } )
576582 }
577583
@@ -927,6 +933,7 @@ mod test {
927933 "arm64-unknown-linux-gnu" . to_string( ) ,
928934 ] ,
929935 yanked : false ,
936+ rustdoc_css_file : "rustdoc.css" . to_string ( ) ,
930937 } ;
931938
932939 let correct_json = json ! ( {
@@ -942,6 +949,7 @@ mod test {
942949 "arm64-unknown-linux-gnu" ,
943950 ] ,
944951 "yanked" : false ,
952+ "rustdoc_css_file" : "rustdoc.css" ,
945953 } ) ;
946954
947955 assert_eq ! ( correct_json, serde_json:: to_value( & metadata) . unwrap( ) ) ;
@@ -960,6 +968,7 @@ mod test {
960968 "arm64-unknown-linux-gnu" ,
961969 ] ,
962970 "yanked" : false ,
971+ "rustdoc_css_file" : "rustdoc.css" ,
963972 } ) ;
964973
965974 assert_eq ! ( correct_json, serde_json:: to_value( & metadata) . unwrap( ) ) ;
@@ -978,6 +987,7 @@ mod test {
978987 "arm64-unknown-linux-gnu" ,
979988 ] ,
980989 "yanked" : false ,
990+ "rustdoc_css_file" : "rustdoc.css" ,
981991 } ) ;
982992
983993 assert_eq ! ( correct_json, serde_json:: to_value( & metadata) . unwrap( ) ) ;
@@ -1001,6 +1011,7 @@ mod test {
10011011 default_target: "x86_64-unknown-linux-gnu" . to_string( ) ,
10021012 doc_targets: vec![ ] ,
10031013 yanked: false ,
1014+ rustdoc_css_file: "rustdoc.css" . to_string( ) ,
10041015 } ,
10051016 ) ;
10061017 Ok ( ( ) )
0 commit comments