diff options
author | Benedikt Peetz <benedikt.peetz@b-peetz.de> | 2024-12-23 18:29:35 +0100 |
---|---|---|
committer | Benedikt Peetz <benedikt.peetz@b-peetz.de> | 2024-12-23 18:29:35 +0100 |
commit | 4bcadcd2244989a8bb7d8dffdaf11f131b96c8ff (patch) | |
tree | a081c1c4216f4d1517940c2bc92dc7d8b3e15bb9 /pkgs/by-name/ba/back/src/issues/issue_show.rs | |
parent | fix(modules/disko): Remove deprecated legacy type and migrate to `by-name` (diff) | |
download | nixos-server-4bcadcd2244989a8bb7d8dffdaf11f131b96c8ff.zip |
feat(pkgs/back): Init
Other options, for example `git-bug webui --read-only` is just to bugged to be useful.
Diffstat (limited to 'pkgs/by-name/ba/back/src/issues/issue_show.rs')
-rw-r--r-- | pkgs/by-name/ba/back/src/issues/issue_show.rs | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/pkgs/by-name/ba/back/src/issues/issue_show.rs b/pkgs/by-name/ba/back/src/issues/issue_show.rs new file mode 100644 index 0000000..638840e --- /dev/null +++ b/pkgs/by-name/ba/back/src/issues/issue_show.rs @@ -0,0 +1,34 @@ +// Back - An extremely simple git issue tracking system. Inspired by tvix's +// panettone +// +// Copyright (C) 2024 Benedikt Peetz <benedikt.peetz@b-peetz.de> +// SPDX-License-Identifier: AGPL-3.0-or-later +// +// This file is part of Back. +// +// You should have received a copy of the License along with this program. +// If not, see <https://www.gnu.org/licenses/agpl.txt>. + +use std::fmt::Display; + +use gix::hash::Prefix; +use rocket::request::FromParam; + +pub struct BackPrefix { + prefix: Prefix, +} +impl Display for BackPrefix { + fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { + self.prefix.fmt(f) + } +} + +impl<'a> FromParam<'a> for BackPrefix { + type Error = gix::hash::prefix::from_hex::Error; + + fn from_param(param: &'a str) -> Result<Self, Self::Error> { + let prefix = Prefix::from_hex(param)?; + + Ok(Self { prefix }) + } +} |