File tree Expand file tree Collapse file tree 2 files changed +20
-5
lines changed Expand file tree Collapse file tree 2 files changed +20
-5
lines changed Original file line number Diff line number Diff line change @@ -198,7 +198,7 @@ fn get_latest_upstream_commit_that_modified_files(
198
198
/// author.
199
199
///
200
200
/// If we are in CI, we simply return our first parent.
201
- fn get_closest_upstream_commit (
201
+ pub fn get_closest_upstream_commit (
202
202
git_dir : Option < & Path > ,
203
203
config : & GitConfig < ' _ > ,
204
204
env : CiEnv ,
Original file line number Diff line number Diff line change 3
3
4
4
use std:: process:: Command ;
5
5
6
+ use build_helper:: ci:: CiEnv ;
7
+ use build_helper:: git:: { GitConfig , get_closest_upstream_commit} ;
8
+
6
9
fn git_diff ( base_commit : & str , extra_arg : & str ) -> Option < String > {
7
10
let output = Command :: new ( "git" ) . arg ( "diff" ) . arg ( base_commit) . arg ( extra_arg) . output ( ) . ok ( ) ?;
8
11
Some ( String :: from_utf8_lossy ( & output. stdout ) . into ( ) )
9
12
}
10
13
11
14
pub fn check ( bad : & mut bool ) {
12
- let Ok ( base_commit) = std:: env:: var ( "BASE_COMMIT" ) else {
13
- // Not in CI so nothing we can check here.
14
- println ! ( "not checking rustdoc JSON `FORMAT_VERSION` update" ) ;
15
- return ;
15
+ let base_commit = match get_closest_upstream_commit (
16
+ None ,
17
+ & GitConfig { nightly_branch : "" , git_merge_commit_email : "[email protected] " } ,
18
+ CiEnv :: current ( ) ,
19
+ ) {
20
+ Ok ( Some ( commit) ) => commit,
21
+ Ok ( None ) => {
22
+ eprintln ! ( "No base commit found, skipping rustdoc_json check" ) ;
23
+ return ;
24
+ }
25
+ Err ( error) => {
26
+ eprintln ! (
27
+ "Failed to retrieve base commit for rustdoc_json check because of `{error}`, skipping it"
28
+ ) ;
29
+ return ;
30
+ }
16
31
} ;
17
32
18
33
// First we check that `src/rustdoc-json-types` was modified.
You can’t perform that action at this time.
0 commit comments