2
2
3
3
pub ( crate ) mod page;
4
4
5
+ use crate :: utils:: get_correct_docsrs_style_file;
5
6
use crate :: utils:: report_error;
6
7
use anyhow:: { anyhow, Context as _} ;
7
8
use log:: info;
@@ -534,6 +535,9 @@ pub(crate) struct MetaData {
534
535
pub ( crate ) default_target : String ,
535
536
pub ( crate ) doc_targets : Vec < String > ,
536
537
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 ,
537
541
}
538
542
539
543
impl MetaData {
@@ -552,7 +556,8 @@ impl MetaData {
552
556
releases.rustdoc_status,
553
557
releases.default_target,
554
558
releases.doc_targets,
555
- releases.yanked
559
+ releases.yanked,
560
+ releases.doc_rustc_version
556
561
FROM releases
557
562
INNER JOIN crates ON crates.id = releases.crate_id
558
563
WHERE crates.name = $1 AND releases.version = $2" ,
@@ -572,6 +577,7 @@ impl MetaData {
572
577
default_target : row. get ( 5 ) ,
573
578
doc_targets : MetaData :: parse_doc_targets ( row. get ( 6 ) ) ,
574
579
yanked : row. get ( 7 ) ,
580
+ rustdoc_css_file : get_correct_docsrs_style_file ( row. get ( 8 ) ) ,
575
581
} )
576
582
}
577
583
@@ -927,6 +933,7 @@ mod test {
927
933
"arm64-unknown-linux-gnu" . to_string( ) ,
928
934
] ,
929
935
yanked : false ,
936
+ rustdoc_css_file : "rustdoc.css" . to_string ( ) ,
930
937
} ;
931
938
932
939
let correct_json = json ! ( {
@@ -942,6 +949,7 @@ mod test {
942
949
"arm64-unknown-linux-gnu" ,
943
950
] ,
944
951
"yanked" : false ,
952
+ "rustdoc_css_file" : "rustdoc.css" ,
945
953
} ) ;
946
954
947
955
assert_eq ! ( correct_json, serde_json:: to_value( & metadata) . unwrap( ) ) ;
@@ -960,6 +968,7 @@ mod test {
960
968
"arm64-unknown-linux-gnu" ,
961
969
] ,
962
970
"yanked" : false ,
971
+ "rustdoc_css_file" : "rustdoc 1.59.0-nightly (e100ec5bc 2021-12-21)" ,
963
972
} ) ;
964
973
965
974
assert_eq ! ( correct_json, serde_json:: to_value( & metadata) . unwrap( ) ) ;
@@ -978,6 +987,7 @@ mod test {
978
987
"arm64-unknown-linux-gnu" ,
979
988
] ,
980
989
"yanked" : false ,
990
+ "rustdoc_css_file" : "rustdoc 1.59.0-nightly (e100ec5bc 2021-12-21)" ,
981
991
} ) ;
982
992
983
993
assert_eq ! ( correct_json, serde_json:: to_value( & metadata) . unwrap( ) ) ;
@@ -1001,6 +1011,7 @@ mod test {
1001
1011
default_target: "x86_64-unknown-linux-gnu" . to_string( ) ,
1002
1012
doc_targets: vec![ ] ,
1003
1013
yanked: false ,
1014
+ rustdoc_css_file: "rustdoc.css" . to_string( ) ,
1004
1015
} ,
1005
1016
) ;
1006
1017
Ok ( ( ) )
0 commit comments