#issue-tracking #github #gitlab #compile-time

build issue

Tracks open issues during compile time and emits warnings if issues are closed

4 releases

0.1.4 Jul 21, 2021
0.1.2 Jul 21, 2021
0.1.1 Jul 16, 2021
0.1.0 Jul 15, 2021

#559 in Build Utils

24 downloads per month
Used in cargo-issue

Custom license

8KB
94 lines

Issue-rs

Ever added a todo based on an open issue (perhaps in one of your dependencies)? Track the issue and be warned when it is closed!

// Our trait implementation never returns an error, but until the `nevertype`
// is stabilized, we need to use the unit type.
#[issue::track(url="https://github.com/rust-lang/rust/issues/35121")]
type Result<T> = core::result::Result<T, ()>;

Once the tracked issue is resolved, a warning will be emitted during compile time.

CI and Configuration

Locally it is recommended to always run the tracked issue. Alternatively, setting the environment variable ISSUE_RS_IGNORE to any value will disable it entirely.

For reproducible builds, set ISSUE_RS_IGNORE and use the cargo-issue subcommand as a separate step in CI. This will still require network connectivity however. cargo-issue offers higher performance by concurrently tracking issues, which for large codebases, with many tracked issues, can significantly improve performance as well.

TODO

  • Support Gitlab
  • Support arbitrary URLS/private instances
  • Authentication for private repos

Dependencies

~5–17MB
~240K SLoC