* Add support for adding & removing labels when no longer stale
* Add remove/addLabelsWhenUpdatedFromStale to relevant spec files. Modify arguments to remove ambiguity in 'labels' var & parameter
* Change parameters for clarity, let autoformat do its thing
* PR feedback: More useful logging when removing labels
* Wrap client calls in try catches
* Use Unstale in variable names
* Don't run add label logic under debug
* Add test for labels added to unstale issues
* PR Feedback: logging
* Update README
* Rename vars to labels-to-add/remove-when-unstale
* Apply doc suggestions from code review
Co-authored-by: Geoffrey Testelin <geoffrey.testelin@gmail.com>
* PR Feedback
Co-authored-by: Geoffrey Testelin <geoffrey.testelin@gmail.com>
* feat(options): simplify config by removing skip stale message options
Closes#405Closes#455
BREAKING CHANGES: remove skip-stale-issue-message and skip-stale-pr-message options. If you used this option, replace it by an empty message for the options stale-issue-message and stale-pr-message
* build(dist): update dist
also lint some files
* docs(readme): update the docs by removing the skip options
* docs(only-labels): enhance the docs and fix duplicate (#341)
* docs(only-labels): remove duplicated option and improve descriptions
a bad rebase happend
* docs(readme): use a multi-line array and remove the optional column
the option column was not helpful since each value is optional
the multi-line array will allow to have a better UI in small devices and basically in GitHub too due to the max-width
* style(readme): break line for the statistics
* docs(readme): add a better description for the ascending option
* docs(action): add missing punctuation
* build(deps-dev): bump @typescript-eslint/eslint-plugin (#342)
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 4.15.2 to 4.16.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v4.16.1/packages/eslint-plugin)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* build(deps): bump @octokit/rest from 18.3.0 to 18.3.2 (#350)
Bumps [@octokit/rest](https://github.com/octokit/rest.js) from 18.3.0 to 18.3.2.
- [Release notes](https://github.com/octokit/rest.js/releases)
- [Commits](https://github.com/octokit/rest.js/compare/v18.3.0...v18.3.2)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* test: add more coverage for the stale label behaviour (#352) (#15)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* test: add more coverage for the stale label behaviour (#352) (#17)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* test: add more coverage for the stale label behaviour (#352) (#18)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* feat(remove-stale-when-updated): add 2 options for issues and prs
closes#377
also I closed the stale process once the stale label is removed since the following process is regarding the closing and it should simply not occur if no longer stale
* chore(logs): add more logs to understand the process
* chore(logs): highlights more logs and humanize a bit more
* chore(index): update it
* refactor(checks): simplify if complexity
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* docs(only-labels): enhance the docs and fix duplicate (#341)
* docs(only-labels): remove duplicated option and improve descriptions
a bad rebase happend
* docs(readme): use a multi-line array and remove the optional column
the option column was not helpful since each value is optional
the multi-line array will allow to have a better UI in small devices and basically in GitHub too due to the max-width
* style(readme): break line for the statistics
* docs(readme): add a better description for the ascending option
* docs(action): add missing punctuation
* build(deps-dev): bump @typescript-eslint/eslint-plugin (#342)
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 4.15.2 to 4.16.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v4.16.1/packages/eslint-plugin)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* build(deps): bump @octokit/rest from 18.3.0 to 18.3.2 (#350)
Bumps [@octokit/rest](https://github.com/octokit/rest.js) from 18.3.0 to 18.3.2.
- [Release notes](https://github.com/octokit/rest.js/releases)
- [Commits](https://github.com/octokit/rest.js/compare/v18.3.0...v18.3.2)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* test: add more coverage for the stale label behaviour (#352) (#15)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* test: add more coverage for the stale label behaviour (#352) (#17)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* test(refactor): use toHaveLength
* feat(statistics): split the processed issues and prs
* feat(statistics): split the new stale issues and prs
* feat(statistics): split the no longer stale issues and prs
* chore(deps): undo upgrade of dependencies
* feat(statistics): split closed issues and prs
* feat(statistics): use the word "items" when something concern both issues and prs
* feat(statistics): split more stats by issues and prs
* feat(statistics): split more stats by issues and prs (final)
* chore(index): update it
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* test: add more coverage
* docs: reorder and enhance typo
* docs(contributing): add more information about the npm scripts
* feat(statistics): add simple statistics
* feat(statistics): add more stats
* refactor(issues-processor): remove some options from the constructor
it should have been only useful for the tests
* feat(statistics): add stats for new stale or undo stale issues
* chore(rebase): handle rebase conflicts
* feat(assignees): add new option to avoid stale for assignees
closes#271
* test: add more coverage
* docs: fix readme format issue
* docs: reorder and enhance typo
* docs(contributing): add more information about the npm scripts
* docs(readme): update the default values to reflect the real applied ones
* feat(close-label): automatically remove it when no longer closed nor locked
closes#278
* refactor: move and rename the interfaces/classes
closes#272
* docs: update the readme and action to describe the new options for milestones
* refactor: split the tests into multiple files
* feat(milestones): add new options to exempt all milestones
* test: add coverage for the default values
* test(milestones): add more coverage (wip)
* test(milestones): add more coverage for the multiple exempt milestones
* test: reduce duplicated code
* test: change some describes
* test: add more coverage
* test: add more coverage
* test: add final coverage
* build(tsc): add missing project flag to build with the right tsconfig
* test(milestones): use each to reduce the complexity of the tests
* chore: fix an eslint issue with prettier on windows
the end of line was wrong each time the os process the files
* docs: move the contribution section to a dedicated file
add more content to help the debug
* chore: make sure the rebase is ok