Skip to content

Commit

Permalink
Merge #9936
Browse files Browse the repository at this point in the history
9936: proc_macro_api: make commit & date suffix of binary version optional r=lnicola a=lnicola

Closes #9916

bors r+

Co-authored-by: Florian sp1rit​ <sp1ritCS@protonmail.com>
  • Loading branch information
bors[bot] and sp1ritCS authored Aug 17, 2021
2 parents 75f2a5b + 2bfaffb commit 6ee17ab
Showing 1 changed file with 20 additions and 14 deletions.
34 changes: 20 additions & 14 deletions crates/proc_macro_api/src/version.rs
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,8 @@ use snap::read::FrameDecoder as SnapDecoder;
pub struct RustCInfo {
pub version: (usize, usize, usize),
pub channel: String,
pub commit: String,
pub date: String,
pub commit: Option<String>,
pub date: Option<String>,
}

/// Read rustc dylib information
Expand All @@ -38,18 +38,24 @@ pub fn read_dylib_info(dylib_path: &AbsPath) -> io::Result<RustCInfo> {
let version = version_parts.next().ok_or_else(|| err!("no version"))?;
let channel = version_parts.next().unwrap_or_default().to_string();

let commit = items.next().ok_or_else(|| err!("no commit info"))?;
// remove (
if commit.len() == 0 {
return Err(err!("commit format error"));
}
let commit = commit[1..].to_string();
let date = items.next().ok_or_else(|| err!("no date info"))?;
// remove )
if date.len() == 0 {
return Err(err!("date format error"));
}
let date = date[0..date.len() - 2].to_string();
let commit = match items.next() {
Some(commit) => {
match commit.len() {
0 => None,
_ => Some(commit[1..].to_string() /* remove ( */)
}
},
None => None
};
let date = match items.next() {
Some(date) => {
match date.len() {
0 => None,
_ => Some(date[0..date.len() - 2].to_string() /* remove ) */)
}
},
None => None
};

let version_numbers = version
.split('.')
Expand Down

0 comments on commit 6ee17ab

Please sign in to comment.