RFR: WIP/RFC: added ProblemLists check to jcheck

Igor Ignatyev iignatyev at openjdk.java.net
Thu Mar 19 23:53:23 UTC 2020

Hi all,

This is more of a request for comments than an actual PR.

The idea behind the patch is to ensure that whenever someone fixes a bug, its ID is not used in any of the problem
lists. As some of you might know this is not a hypothetical issue, people forget to clean problem lists quite often,
which in some cases results in poorly tested patches. Although it's true that even if we ensure that all commits are
correct, there still will be ways to have "fixed" bugs in problem lists, e.g. closing as WNF, duplicate, etc, it's
nevertheless believed that the majority (or the most annoying) "violations" are caused by commits.

The proposed check parses all problem lists specified by `dirs` (bar-separated list of test suites) and `pattern`
(regexp pattern for files withing the `dirs`) and verifies that none of the issues fixed by a patch is listed in any of
problem lists. The original / python-time
[patch](http://cr.openjdk.java.net/~iignatyev//jcheck/problem-list/webrev.00/index.html) used a list glob-pattern, but
unfortunately, Java SE doesn't have a good(fast) API to find all files matching a glob, and I didn't want to bring 3rd
party dependency just for this use-case.

-- Igor


Commit messages:
 - added tests for ProblemListsCheck
 - cleaned up imports
 - ProblemListsIssue should use set to store information about files
 - refiened default pattern in ProblemListsConfiguration
 - updated ProblemListsCheck to list files in a dir via ReadOnlyRepository
 - updated ProblemListsCheck to read files' content via ReadOnlyRepository
 - added ProblemLists check to jcheck

Changes: https://git.openjdk.java.net/skara/pull/518/files
 Webrev: https://webrevs.openjdk.java.net/skara/518/webrev.00
  Stats: 656 lines in 10 files changed: 650 ins; 1 del; 5 mod
  Patch: https://git.openjdk.java.net/skara/pull/518.diff
  Fetch: git fetch https://git.openjdk.java.net/skara pull/518/head:pull/518

PR: https://git.openjdk.java.net/skara/pull/518

More information about the skara-dev mailing list