- Use the new 1.0.0-alpha.1 Grolifant release that has configuration-cache
safety built-in.
- Check that no usage of `Project` object will be done after configuration
phase has ended.
- Maintain compatibility down to Gradle 4.3.
- `JRubyPluginExtension`
- `JRubyExec`
- Split out `GemUtils.OverwriteAction` into its own class `GemOverwriteAction`.
- Moved `GemUtils` to `core-plugin`.
- Removed `RubygemsServlet`.
- Reworked `GemVersion` to be more Ivy-like rather than Maven-like.
- Reworked `JRubyPrepare` & `JRubyExec`.
- Extract common `JRubyPrepare` code to `AbstractJRubyPrepare`.
- Cleaned up `JRubyExec` to no longer depend on `JRubyExecTraits`.
- Cleaned up `JRubyExecDelegate` to no longer depend on `JRubyExecTraits`.
- In `JRubyPlugin`, register tasks instead of creating them if Gradle supports lazy-creation.
- Removed last usages of `jar-dependencies`.
- Cleaned up integration tests and unit tests
Making this as a separate commit so it's easier to figure out later. But either
way, this ensures that jar files go into the shadowed jrubyjar unmolested.
Fixes#307
There are some object/class conflicts between the "stock" commons compression
code, and the vendored under shadow.*
For simplicity's sake, just taking everything from the shadow. namespace instead
of fighting these silly objects
I believe that we were previously relying on the shadow plugin to bring in too
many of our dependencies, and with recent versions of the plugin those
dependency declarations went away.
This commit gets the missing dependencies compiling again, and addresses one
backwards incompatible change with the asm-commons library, see:
https://issues.apache.org/jira/browse/MSHADE-258