damianszczepanik / cucumber-reporting

HTML reports for Cucumber
GNU Lesser General Public License v2.1
542 stars 403 forks source link

[pom] Adjust so javadocs are also java 11 now that code base is set to 11 #1148

Closed hazendaz closed 6 months ago

codecov[bot] commented 6 months ago

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (b9dd893) 98.27% compared to head (78842e7) 98.27%.

Additional details and impacted files ```diff @@ Coverage Diff @@ ## master #1148 +/- ## ========================================= Coverage 98.27% 98.27% Complexity 567 567 ========================================= Files 55 55 Lines 1214 1214 Branches 105 105 ========================================= Hits 1193 1193 Misses 10 10 Partials 11 11 ```

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

hazendaz commented 6 months ago

This one needs a bit of explaining. I don't think maven did a great job on naming legacyMode so I have added a comment. For the past 4 years (since 2019), javadocs have been incredibly broken in case where automatic module naming was added. I don't know that is true here yet but better to protect from that. In those 4 years there were numerous issues raised, pull requests to fix, etc. I even raised issues multiple times. The maven team dismissed the community as wrong and kept carrying on forcing modular that doesn't and hasn't worked out very well at all and maven certainly barely supports it. It was not until recently someone on their physical team finally ran into this issue and rather than used very well named fix from a contributor PR, they went their own way. So its legacyMode which doesn't really mean anything (IMO). What it simply does though is stop trying to erroneously force a project to pretend its modular and not classpath driven.

Now why I added that in addition to setting source to 11. Well for one, source didn't need set since project itself was set to 11 but given the potential here that the project ends up thinking it is modular and blows up builds, this protects from it happening. And subsequently we just keep the java 11 flag here separate is it is.

What this will then do for you is remove any javadoc warnings if any for being java 11 build/runtime but stating you wanted java 8 for javadocs.