Skip to main content

ag_forge/
lib.rs

1//! Forge review-request adapters, normalized types, and remote detection.
2
3mod adapter_common;
4mod client;
5mod command;
6mod github;
7mod gitlab;
8mod model;
9mod remote;
10
11pub(crate) use adapter_common::{
12    looks_like_authentication_failure, looks_like_host_resolution_failure, map_spawn_error,
13    normalize_provider_label, status_summary_parts,
14};
15#[cfg(any(test, feature = "test-utils"))]
16pub use client::MockReviewRequestClient;
17pub use client::{RealReviewRequestClient, ReviewRequestClient};
18pub(crate) use command::{
19    ForgeCommand, ForgeCommandError, ForgeCommandOutput, ForgeCommandRunner,
20    RealForgeCommandRunner, command_output_detail,
21};
22pub(crate) use github::GitHubReviewRequestAdapter;
23pub(crate) use gitlab::GitLabReviewRequestAdapter;
24pub use model::{
25    CreateReviewRequestInput, ForgeFuture, ForgeKind, ForgeRemote, ReviewComment,
26    ReviewCommentAnchorSide, ReviewCommentSnapshot, ReviewCommentThread, ReviewRequestError,
27    ReviewRequestState, ReviewRequestSummary, is_gitlab_host,
28};
29pub use remote::detect_remote;
30pub(crate) use remote::{parse_remote_url, strip_port};