pub struct Repo {
pub namespace: String,
pub name: String,
pub hash_kind: HashKind,
pub default_branch: String,
pub visibility: Visibility,
pub created: UnixMillis,
pub description: String,
pub encrypted: bool,
}Expand description
A repository, as the catalog holds it.
Fields§
§namespace: StringThe namespace it lives in, possibly nested.
name: StringIts name, without any .git suffix.
hash_kind: HashKindsha1 or sha256. Fixed at creation; a repository never changes hash.
default_branch: StringFull ref name, e.g. refs/heads/main.
visibility: VisibilityWho may read it without a grant.
created: UnixMillisWhen it was created.
description: StringFree-text description, for UIs.
encrypted: boolEncrypted repository (2026-10-05): the server refuses any push
that would put plaintext on it — every new blob must be a
gunnar-crypt envelope (the encrypted push gate). The server holds no
key either way. Only the ACCOUNT admin sets it. Skipped when false, so
every older row reads as not encrypted and is stored byte for byte as
before.
Implementations§
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Repo
impl<'de> Deserialize<'de> for Repo
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>,
Source§impl Display for Repo
The same string Repo::key returns, written straight into the formatter.
impl Display for Repo
The same string Repo::key returns, written straight into the formatter.
key() allocates; a repo = %repo span or log field does not. Both spell
<namespace>/<repo> and there is one implementation of that shape here, so
a log line and a catalog lookup can never disagree about what a repository
is called (one implementation). RepoRef already had exactly this pair.
impl Eq for Repo
impl StructuralPartialEq for Repo
Auto Trait Implementations§
impl Freeze for Repo
impl RefUnwindSafe for Repo
impl Send for Repo
impl Sync for Repo
impl Unpin for Repo
impl UnsafeUnpin for Repo
impl UnwindSafe for Repo
Blanket Implementations§
impl<T> Allocation for T
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.