checkstyle / test-configs

Stores configs for regression-report.yml (checkstyle repository) and diff.groovy (contribution repository)
https://github.com/checkstyle/checkstyle/tree/master/.github/workflows#regression-report-workflow---regression-reportyml
GNU Lesser General Public License v2.1
2 stars 3 forks source link

Create special RequireThis configs with custom set of projects #20

Closed relentless-pursuit closed 4 months ago

relentless-pursuit commented 5 months ago

We should have a kind of global properties list, where we can dump projects to be tested. These not beed part of specific module folders as most users might not be using it.

https://checkstyle.org/checks/coding/requirethis.html#RequireThis

we need to make sure that https://github.com/checkstyle/contribution/blob/d85c3ddc6ae531dc372b83509be88a1b15b86ac3/checkstyle-tester/projects-to-test-on-for-github-action.properties#L40-L41 is in testing scope we do not have it at https://github.com/checkstyle/test-configs/blob/main/extractor/src/main/resources/all-projects.properties so lets create special list of projects for this Check.

romani commented 5 months ago

our extractor application will have somewhere config that define list of projects to place in result project files. so we should expect have something like: generic set of project, Check specific set of projects, Check-config specific set of projects.

Check-config specific set of projects.

example is japan period for SummaryJavadoc. Example3 has very special list of projects https://github.com/checkstyle/test-configs/issues/23

Imaginary config (just to give idea, not strict requirement): project will have config with all details for all projcts, ti will be like a library/repository.

here is config for all checks (example is only for single):

default-projects: &default-projects
  - checkstyle
  - sevntu-checkstyle
  - checkstyle-sonar
  - openjdk17
  - guava
  - spotbugs
.....

- SummaryJavadoc:
  - Example1:
    - projects: $default-projects
  - Example2:
    - projects: $default-projects
  - Example3:
    - projects:
      # javadocs in japan language 
      - WxJava
      # JDK Project a lot of javadocs
      - openjdk17
      # custom javadoc tags
      - nbia-dcm4che-tools
nrmancuso commented 5 months ago

Few things:

romani commented 4 months ago

@relentless-pursuit , please send PR for RequireThis it looks like need special set of projects too.

this Check is very heavy in execution, it unlikley to finish in ~50 min of deadline/timeout for github action try to trigger girthub action in main repo for RequireThis.

Example of testing you did for another Check - https://github.com/checkstyle/checkstyle/pull/14935

romani commented 4 months ago

@relentless-pursuit , please add new project to this Check only to all bundles.

romani commented 4 months ago

Resolved by https://github.com/checkstyle/test-configs/pull/112