#[non_exhaustive]pub struct Version {
pub changelog: String,
pub created_at: Timestamp,
pub device_id: Option<Uuid>,
pub id: Uuid,
pub major: i32,
pub minor: i32,
pub patch: i32,
pub status: VersionStatus,
pub updated_at: Timestamp,
}Expand description
A release version of the monitored software, with its publication status and changelog.
JSON schema
{
"description": "A release version of the monitored software, with its publication\nstatus and changelog.",
"type": "object",
"required": [
"changelog",
"created_at",
"id",
"major",
"minor",
"patch",
"status",
"updated_at"
],
"properties": {
"changelog": {
"description": "Changelog text for this version, as Markdown.",
"type": "string"
},
"created_at": {
"description": "When the version record was created.",
"$ref": "#/definitions/CanopyTimestamp"
},
"device_id": {
"description": "The releaser device that published this version, if it was published\nby a device rather than created by an operator.",
"type": [
"string",
"null"
],
"format": "uuid"
},
"id": {
"description": "Unique identifier of the version.",
"type": "string",
"format": "uuid"
},
"major": {
"description": "Major version number.",
"type": "integer",
"format": "int32"
},
"minor": {
"description": "Minor version number.",
"type": "integer",
"format": "int32"
},
"patch": {
"description": "Patch version number.",
"type": "integer",
"format": "int32"
},
"status": {
"description": "Publication status: `draft`, `published`, or `yanked`.",
"$ref": "#/components/schemas/VersionStatus"
},
"updated_at": {
"description": "When the version record was last changed.",
"$ref": "#/definitions/CanopyTimestamp"
}
}
}Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.changelog: StringChangelog text for this version, as Markdown.
created_at: TimestampWhen the version record was created.
device_id: Option<Uuid>The releaser device that published this version, if it was published by a device rather than created by an operator.
id: UuidUnique identifier of the version.
major: i32Major version number.
minor: i32Minor version number.
patch: i32Patch version number.
status: VersionStatusPublication status: draft, published, or yanked.
updated_at: TimestampWhen the version record was last changed.
Implementations§
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Version
impl<'de> Deserialize<'de> for Version
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for Version
impl RefUnwindSafe for Version
impl Send for Version
impl Sync for Version
impl Unpin for Version
impl UnsafeUnpin for Version
impl UnwindSafe for Version
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more