A GitHub App built with Probot that does a lot of usefull things.
.github/dev-assist.ymlbased on the following template.
.github/dev-assist.yml file is required in the default branch (usually
master) of your repository to customize the app for your requirements. If you don't provide the file, the app will use the following default values:
pull_request: # tag to look for in Pull Request(PR) Title, in PR Body or in the most recent commit message # tag is to be wrapped inside open_marker and close_marker # if [in progress] is found (case insensitively) in any of the above positions, merging is put on hold # alternatively, any of these labels: ['no merge', 'in progress', 'work in progress'], can also be used to put merging on hold merge_on_hold_text: tag: "in progress" open_marker: "[" close_marker: "]" issue: # omit this field to disable the locking of closed issues and PRs. # lock closed issues and PRs as resolved after this many days. lock_interval: 30 # omit the entire section to disable the archiving of stale issues and PRs. # archive old (older than <interval> number of days) open issues and PRs # by putting a label (named 'archived') archive: interval: 30 # Alternatively, just omit this field to disable the archiving
This app does a lot of things to help you in the development process.
Its primary task is Linting your code for all the pull requests created in the repository. It automatically scans newly committed files in the pull requests to find out lint errors in them and update the status of the commit accordingly.
It comes with support for 3 languages to find out lint errors.
stylelint, that supports
SugarSS and native
ESLint, that supports
ES6 and the new
golint, that official lint checker for
Apart from linting the code, it also analyses the pull request to find out the languages used in the PR and makes a helpful pie-chart out of it.
It also parses comments from issues and pull requests for commands. Currently it supports only the
/reminder command. It automatically reminds you (or some other user) of the task on the mentioned date/time.
This app periodically checks for updats on every 15 minutes. So, there might be a delay of atmost 15 minutes for the reminder to come.
If someone is regularly making changes to some pull request, that person can let the reviewers know that the pull request is not ready for review (or merging) by using a simple tag:
[in progress] (can be changed from the
.github/dev-assist.yml configuration file). It sets the status of the pull request to
pending if it finds
[in progress] or whichever tag is set in
.github/dev-assist.yml (not case-sensitive) in:
Alternatively, adding any one of these labels to the pull request will also set the pull request status as
All these labels are created automatically at the time of installing the app.
If it doesn’t find the tag(s)/label(s) anywhere, it will set status to
This app locks closed issues and pull requests as
resolved after 30 days (this default value can be changed from the
issue.lock_interval field in
.github/dev-assist.yml configuration file).
If the file exists and the
lock_interval field is omitted in the file, this feature will be disabled.
Last but not the least, it archives old inactive issues and pull requests by automatically setting a label: archived 📁, after 30 days of inactivity (again this default value can be changed from the
issue.archive.interval field in
If the file exists and the
archive.interval (or only the
interval field) is omitted in the file, this feature will be disabled.
MIT Copyright © 2018-2019 Dibyendu Das
The logo was created by Freepik