Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -108,7 +108,7 @@ jobs:
- name: Install Rust
uses: dtolnay/rust-toolchain@stable
with:
toolchain: "1.88" # STABLE
toolchain: "1.89" # STABLE
- uses: Swatinem/rust-cache@v2
- name: Check documentation
env:
Expand All @@ -123,7 +123,7 @@ jobs:
- name: Install Rust
uses: dtolnay/rust-toolchain@stable
with:
toolchain: "1.88" # STABLE
toolchain: "1.89" # STABLE
components: rustfmt
- uses: Swatinem/rust-cache@v2
- name: Check formatting
Expand All @@ -139,7 +139,7 @@ jobs:
- name: Install Rust
uses: dtolnay/rust-toolchain@stable
with:
toolchain: "1.88" # STABLE
toolchain: "1.89" # STABLE
components: clippy
- uses: Swatinem/rust-cache@v2
- name: Install SARIF tools
Expand Down
29 changes: 0 additions & 29 deletions src/testing.rs
Original file line number Diff line number Diff line change
Expand Up @@ -85,35 +85,6 @@ pub(crate) struct GitRunOptions {
pub(crate) env: HashMap<String, String>,
}

/// The parsed version of Git.
#[derive(Debug, PartialEq, PartialOrd, Eq)]
pub(crate) struct GitVersion(pub(crate) isize, pub(crate) isize, pub(crate) isize);

impl std::str::FromStr for GitVersion {
type Err = eyre::Error;

fn from_str(output: &str) -> eyre::Result<GitVersion> {
let output = output.trim();
let words = output.split(&[' ', '-'][..]).collect::<Vec<&str>>();
let version_str = match &words.as_slice() {
[_git, _version, version_str, ..] => version_str,
_ => eyre::bail!("Could not parse Git version output: {:?}", output),
};
match version_str.split('.').collect::<Vec<&str>>().as_slice() {
[major, minor, patch, ..] => {
let major = major.parse()?;
let minor = minor.parse()?;

// Example version without a real patch number: `2.33.GIT`.
let patch: isize = patch.parse().unwrap_or_default();

Ok(GitVersion(major, minor, patch))
}
_ => eyre::bail!("Could not parse Git version string: {}", version_str),
}
}
}

impl Git {
/// Constructor.
pub(crate) fn new(git_run_info: GitRunInfo, repo_path: PathBuf) -> Self {
Expand Down
Loading