olamy opened a new pull request, #524:
URL: https://github.com/apache/maven-build-cache-extension/pull/524
A goal like jetty:run or hpi:run builds the project through a forked
lifecycle before it runs. Until now that fork could restore from the
cache but never saved, so the first run after a clean always rebuilt
and repeated runs never reused anything.
Now such a fork also saves what it built, controlled by a new flag
maven.build.cache.saveForkedExecutions (default true), so the next run
can restore it. Cache entries are keyed by checksum alone, so a fork
never overwrites an entry that already reached a later phase: a
jetty:run fork stopping at test-compile won't clobber a full
"mvn install" entry.
Also relax the fork-restore check so it only requires target/classes or
target/test-classes when the fork would actually build them. With test
compilation skipped (maven.test.skip, e.g. -P quick-build) or a module
with no sources, the missing directory no longer forces a recompile.
Add integration tests for the save/restore round-trip, the opt-out, the
don't-degrade guard, and the skipped/absent-sources cases, and document
the new option.
Following this checklist to help us incorporate your
contribution quickly and easily:
- [ ] Your pull request should address just one issue, without pulling in
other changes.
- [ ] Write a pull request description that is detailed enough to understand
what the pull request does, how, and why.
- [ ] Each commit in the pull request should have a meaningful subject line
and body.
Note that commits might be squashed by a maintainer on merge.
- [ ] Write unit tests that match behavioral changes, where the tests fail
if the changes to the runtime are not applied.
This may not always be possible but is a best-practice.
- [ ] Run `mvn verify` to make sure basic checks pass.
A more thorough check will be performed on your pull request automatically.
- [ ] You have run the integration tests successfully (`mvn -Prun-its
verify`).
If your pull request is about ~20 lines of code you don't need to sign an
[Individual Contributor License
Agreement](https://www.apache.org/licenses/icla.pdf) if you are unsure
please ask on the developers list.
To make clear that you license your contribution under
the [Apache License Version 2.0, January
2004](http://www.apache.org/licenses/LICENSE-2.0)
you have to acknowledge this by using the following check-box.
- [ ] I hereby declare this contribution to be licenced under the [Apache
License Version 2.0, January 2004](http://www.apache.org/licenses/LICENSE-2.0)
- [ ] In any other case, please file an [Apache Individual Contributor
License Agreement](https://www.apache.org/licenses/icla.pdf).
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]