Weave documentation
Rust referenceloom-gateway

loom-gateway · routes::commits

Source declarations, signatures and documentation for routes::commits.

Source: sigil/weave/tools/loom-gateway/src/routes/commits.rs. SHA-256: 33c7d451d60b0ab9f4d2145192930267fe1622fa6e456dfc5e9e51fe5f51139b.

This reference follows declared source modules, retains conditional attributes, and includes public declarations and implementation methods. Private-module re-exports and trait resolution require the compiler; this is a source reference, not a claim that every listed item is a root import. Function bodies and constant values are omitted.

routes::commits::CommitSummary

#[derive(Serialize)]
pub struct CommitSummary {
pub seq: u64,
pub id: String,
pub author: String,
pub timestamp_ms: u64,
pub message: String,
pub parents: Vec<u64>,
pub tree_id: String,
pub files: usize
}

Source line: 11.

routes::commits::LogEnvelope

#[derive(Serialize)]
pub struct LogEnvelope {
pub items: Vec<CommitSummary>,
pub branch: Option<String>,
pub head_seq: Option<u64>
}

Source line: 23.

routes::commits::LogQuery

#[derive(Deserialize)]
pub struct LogQuery {
/// Optional ref (branch name) to start the walk from.

pub branch: Option<String>,
/// Maximum entries to return (default 50, cap 500).

pub limit: Option<usize>
}

Source line: 30.

routes::commits::list

GET /api/v1/repos/:name/commits

pub async fn list(
    State(state): State<AppState>,
    Path(name): Path<String>,
    Query(q): Query<LogQuery>,
) -> Result<Json<LogEnvelope>, ApiError>;

Source line: 38.

routes::commits::CommitDetail

#[derive(Serialize)]
pub struct CommitDetail {
pub summary: CommitSummary,
pub tree: Vec<FileEntry>
}

Source line: 81.

routes::commits::FileEntry

#[derive(Serialize)]
pub struct FileEntry {
pub path: String,
pub blob: String,
pub size: u64,
pub mode: String
}

Source line: 87.

routes::commits::detail

GET /api/v1/repos/:name/commits/:rev

pub async fn detail(
    State(state): State<AppState>,
    Path((name, rev)): Path<(String, String)>,
) -> Result<Json<CommitDetail>, ApiError>;

Source line: 95.

On this page