Radish alpha
r
rad:zwTxygwuz5LDGBq255RA2CbNGrz8
Radicle CI broker
Radicle
Git
refactor: add a TagName type alias
Lars Wirzenius committed 1 year ago
commit 0bda319b548bae0a920fb9a91936a43d41b46856
parent 765e6b6
2 files changed +12 -9
modified src/ci_event.rs
@@ -12,7 +12,7 @@ use radicle::{
    storage::RefUpdate,
};

-
use crate::refs::ref_string;
+
use crate::refs::{ref_string, TagName};

#[derive(Debug, Eq, PartialEq, Clone, Serialize, Deserialize)]
#[non_exhaustive]
@@ -46,20 +46,20 @@ pub enum CiEventV1 {
    TagCreated {
        from_node: NodeId,
        repo: RepoId,
-
        tag: RefString,
+
        tag: TagName,
        tip: Oid,
    },
    TagUpdated {
        from_node: NodeId,
        repo: RepoId,
-
        tag: RefString,
+
        tag: TagName,
        tip: Oid,
        old_tip: Oid,
    },
    TagDeleted {
        from_node: NodeId,
        repo: RepoId,
-
        tag: RefString,
+
        tag: TagName,
        tip: Oid,
    },
    PatchCreated {
@@ -119,7 +119,7 @@ impl CiEvent {
        }
    }

-
    pub fn tag(&self) -> Option<&RefString> {
+
    pub fn tag(&self) -> Option<&TagName> {
        match self {
            Self::V1(CiEventV1::Shutdown) => None,
            Self::V1(CiEventV1::BranchCreated { .. }) => None,
@@ -211,7 +211,7 @@ impl CiEvent {
    pub fn tag_created(
        from_node: NodeId,
        repo: RepoId,
-
        tag: &RefString,
+
        tag: &TagName,
        tip: Oid,
    ) -> Result<Self, CiEventError> {
        assert!(!tag.starts_with("refs/"));
@@ -226,7 +226,7 @@ impl CiEvent {
    pub fn tag_updated(
        from_node: NodeId,
        repo: RepoId,
-
        tag: &RefString,
+
        tag: &TagName,
        tip: Oid,
        old_tip: Oid,
    ) -> Result<Self, CiEventError> {
@@ -243,7 +243,7 @@ impl CiEvent {
    pub fn tag_deleted(
        from_node: NodeId,
        repo: RepoId,
-
        tag: &RefString,
+
        tag: &TagName,
        tip: Oid,
    ) -> Result<Self, CiEventError> {
        assert!(!tag.starts_with("refs/"));
@@ -667,7 +667,7 @@ mod test {
enum ParsedRef {
    Branch(BranchName),
    Patch(PatchId),
-
    Tag(RefString),
+
    Tag(TagName),
}

impl ParsedRef {
modified src/refs.rs
@@ -7,6 +7,9 @@ use radicle::{
    git::{BranchName, Component, Namespaced, Qualified, RefStr, RefString},
};

+
/// A tag name.
+
pub type TagName = RefString;
+

/// Convert a plain branch name (`main`) from a Git ref
pub fn branch_ref(name: &RefStr) -> Result<BranchName, RefError> {
    if name.starts_with("refs/") {