pub trait IssueApi: Send + Sync {
// Required methods
fn list_open_issues(&self, repo: &str) -> Result<Vec<RawIssue>, GhError>;
fn create_issue(
&self,
repo: &str,
title: &str,
body: &str,
labels: &[String],
) -> Result<u64, GhError>;
}Expand description
The GitHub issue operations reporting needs, behind a seam.
Same idiom as super::merge::GitHubApi and
super::contract::derive_contract: the interesting behaviour here is
deduplication and the noise gate, and neither is testable against a live
tracker.
Required Methods§
Sourcefn list_open_issues(&self, repo: &str) -> Result<Vec<RawIssue>, GhError>
fn list_open_issues(&self, repo: &str) -> Result<Vec<RawIssue>, GhError>
Every open issue on repo, as the tracker returned it.
Returns RawIssue, which carries no accessor for its text: matching a
marker is a predicate, and reading a body requires a resolved trust
tier. See super::provenance.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".