1 个不稳定版本
0.1.0 | 2021年6月2日 |
---|
#8 在 #github-issues
15KB
104 行
GitHub问题URL
GitHub预填充问题URL构建器
动机
您可以通过在“新建问题”URL(https://github.com/<User | Organization>//issues/new)中指定某些查询参数来预填充问题表单字段。
例如
https://github.com/EstebanBorai/github-issue-url/issues/new?
title=Null%3A+The+Billion+Dollar+Mistake
&body=Null+is+a+flag.+It+represents+different+situations
&template=bug_report.md
&labels=bug%2Cproduction%2Chigh-severity
&assignee=EstebanBorai
&milestone=1
&projects=1
这样,您可以为Rust应用程序提供一个一键“打开问题”按钮,例如,您可以从应用程序运行的主机系统读取一些堆栈跟踪或详细信息,让用户无需自行指定系统/或应用程序详细信息即可在GitHub上打开问题。
安装
[dependencies]
github-issue-url = "0.1"
用法
要创建上述URL,您必须使用此crate中包含的Issue
结构体,指定仓库所有者和仓库名,然后使用“setter-like”方法定义相关字段,例如标题、正文、模板、标签、分配人、里程碑和/或项目。
use github_issue_url::Issue;
const GITHUB_ISSUE_LINK: &str = "https://github.com/EstebanBorai/github-issue-url/issues/new?title=Null%3A+The+Billion+Dollar+Mistake&body=Null+is+a+flag.+It+represents+different+situations+depending+on+the+context+in+which+it+is+used+and+invoked.+This+yields+the+most+serious+error+in+software+development%3A+Coupling+a+hidden+decision+in+the+contract+between+an+object+and+who+uses+it.&template=bug_report.md&labels=bug%2Cproduction%2Chigh-severity&assignee=EstebanBorai&milestone=1&projects=1";
let mut have = Issue::new("github-issue-url", "EstebanBorai").unwrap();
have.title("Null: The Billion Dollar Mistake");
have.body(SAMPLE_ISSUE_BODY);
have.template("bug_report.md");
have.labels("bug,production,high-severity");
have.assignee("EstebanBorai");
have.milestone("1");
have.projects("1");
let have = have.url().unwrap();
assert_eq!(have, GITHUB_ISSUE_LINK.to_string());
发布
git tag -a v0.1.0 -m "Release Message"
git push origin main --follow-tags
贡献
欢迎对项目的任何贡献!请随意发起拉取请求或问题。
许可证
双重许可,受MIT许可证和Apache 2.0许可证的约束。
依赖项
~1.3–2.1MB
~67K SLoC