{voucher} is an R interface to a Trustdown
database as used by vouch, a
“community trust management system based on explicit vouches to
participate.” This package directly interacts with the vouched file
format and doesn’t rely on vouch or
Nushell.
From the vouch README:
People must be vouched for before interacting with certain parts of a project (the exact parts are configurable to the project to enforce). People can also be explicitly denounced to block them from interacting with the project.
Read more about why you may want to use vouching in the vouch
README.
voucher providesSubset of vouch’s behavior:
VOUCHED.td) with
use_vouch()add()denounce()vouched, denounced,
unknown) of users with check()vouch_gha()# install.packages("pak")
pak::pak("VisruthSK/voucher")library(voucher)
project <- file.path(tempdir(), "voucher-demo")
dir.create(project, recursive = TRUE)
old <- setwd(project)
on.exit(setwd(old), add = TRUE)
# Initialize vouch files in a temporary project
use_vouch()
add("alice", write = TRUE)
denounce("spammer", reason = "spam", write = TRUE)
# Check status
check(c("alice","spammer"))
# Can also try to check git blame
check(c("alice","spammer"), blame = TRUE)
# Add GitHub Action workflows
vouch_gha(c("check-issue", "check-pr"))vouch and is
owned by Mitchell Hashimoto.