krank: Krank checks issue tracker link status in your source code

[ bsd3, library, program, quality ] [ Propose Tags ]

Krank checks issue tracker link status in your source code. When you implement a workaround because of an upstream issue, you often put a link in comment in your code. Krank will tell you when the issue associated with your workaround is closed, meaning that you may get ride of your workaround.

[Skip to Readme]
Versions [RSS] [faq] 0.1.0, 0.2.0, 0.2.1, 0.2.2, 0.2.3
Change log
Dependencies aeson (>=1.4.4), base (>=4.9 && <=5.0), bytestring, containers, http-client (>=0.6), http-types (>=0.12), krank, lifted-async, mtl, optparse-applicative (>=0.14), pcre-heavy, pretty-terminal, process, PyF (>=, req (>=2.1.0), safe-exceptions, text (>=1.2.3), unordered-containers (>=0.2.10) [details]
License BSD-3-Clause
Author Guillaume Bouchard
Category quality
Home page
Bug tracker
Uploaded by guibou at 2021-07-18T15:22:46Z
Distributions LTSHaskell:0.2.3, NixOS:0.2.3, Stackage:0.2.3
Executables krank
Downloads 740 total (12 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs available [build log]
Last success reported on 2021-07-18 [all 1 reports]


[Index] [Quick Jump]


Maintainer's Corner

For package maintainers and hackage trustees


Readme for krank-0.2.3

[back to package description]



Krank checks your code source comments for link to issue trackers, such as gitlab or github.

Krank will then outputs a report of the status of theses issues, if they are closed or still open.


You are blocked on upstream ticket, there you write a nice comment in your code such as:

# blocked on upstream ticket https//
# This workaround should be removed once the upstream ticket is closed
if workaround:

And, this stays in your codebase for the next ten years, even if the upstream issue is closed.

Now you can run krank on your codebase, and it will tells you that issue #1234 in project Foo/Bar has been closed. Time to remove your workaround.


Just launch the krank command, optionally with a list of files as arguments. It works on any kind of source code file and prints a report of informations found in the comments:

$ krank

default.nix:20:20: info:
  still Open:

foo.hs:67:11: error:
  now Closed:

krank will fail (i.e. non-zero exit code) in case of any error.

Here krank is telling us that our source code links to github issues which are now closed. Time to remove some workarounds now that upstream issues are fixed!

You can check krank --help for a list of options, such as configuring your API token for external services, such as github and gitlab.

Specific documentation

IssueTracker is listing Github and Gitlab issue linked in comment. Issues which are still Open will be listed as info and Closed issues are listed as error. Convenient to know when to remove workarounds.

Red herring

If you want to ignore all krank checkers on a given line of code, add krank:ignore-line on this same line. Krank will then skip this line and not report anything on it