gx 0.8.5

CLI to manage Github Actions dependencies
#![expect(clippy::pub_use, reason = "reexport from extracted submodule")]

/// Security advisory lookups over GitHub's GraphQL API.
mod advisory;
/// Commit, release, and tag date lookups against the GitHub API.
mod dates;
/// GitHub API client, error types, and `VersionRegistry` implementation.
mod registry;
/// Repository state lookups: whether a repo is archived, and when it was last pushed.
mod repo_meta;
/// Ref resolution: the tag, release, branch, and commit fallback chain.
mod resolve;
/// GitHub API response deserialization types.
mod responses;
/// Tag enumeration: tags for a SHA, version tags, and pagination.
mod tags;

pub use advisory::{Advisory, AdvisoryQuery, GraphQlAdvisories, Severity as AdvisorySeverity};

/// The [`AdvisoryQuery`] test double, so advisory-consuming checks are testable offline.
#[cfg(test)]
pub use advisory::fake::FakeAdvisories;
pub use registry::{Error, Registry};
/// The repository-metadata test double, for checks in other modules that consume the seam.
#[cfg(test)]
pub use repo_meta::fake::CannedRepos;
pub use repo_meta::{RepoMeta, RepoMetadata, RestRepoMetadata};
/// The [`TagResolver`] test double.
#[cfg(test)]
pub use resolve::fake::FakeTags;
pub use resolve::{GitTags, TagResolver};