pub struct ProjectCreate {
pub source: SourceName,
pub id: NativeId,
pub title: String,
pub body: Body,
pub status: Option<StatusCategory>,
pub labels: Option<Vec<String>>,
pub repositories: Option<Vec<Repository>>,
pub metadata: BTreeMap<MetadataKey, Value>,
}Expand description
One project to create, or replace, in one source.
A project the source already holds under ProjectCreate::id has its content, its
provenance and — where the source keeps them — its stored answers replaced whole, and
keeps everything else it holds: its status, labels and repositories unless this names
them, every metadata key this does not set, and its dependencies.
Fields§
§source: SourceNameThe configured source to write it in.
id: NativeIdThe id to write it under: a project the source already holds by this id is replaced, and otherwise one is created under it where the source lets a caller name what it creates.
title: StringIts title.
body: BodyIts content.
status: Option<StatusCategory>Its status category: todo for a new project when none is given, and the status it
holds for one being replaced.
labels: Option<Vec<String>>The names of its labels: none for a new project when not given, and the labels it holds for one being replaced.
repositories: Option<Vec<Repository>>The repositories it concerns: none for a new project when not given, and the ones it holds for one being replaced.
metadata: BTreeMap<MetadataKey, Value>The caller’s own metadata keys, each set over what a project being replaced holds.