MixInLegacyTypesClassLoaderTest.groovy

Clone Tools
  • last updated a few seconds ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Named classloaders (#6834)

This should help give some more context while debugging classloading issues.

    • -1
    • +1
    ./MixInLegacyTypesClassLoaderTest.groovy
  1. … 40 more files in changeset.
Remove deprecated Class.newInstance() (#6496)

`Class.newInstance()` was deprecated in Java 9.

    • -2
    • +3
    ./MixInLegacyTypesClassLoaderTest.groovy
  1. … 34 more files in changeset.
Use umodifiable list in DefaultClassPath

This makes accidental mutation impossible and reduces some

of the repeated wrapping.

    • -5
    • +5
    ./MixInLegacyTypesClassLoaderTest.groovy
  1. … 37 more files in changeset.
Favour `ClassPath.EMPTY` over `new DefaultClassPath()`

As it is more intent revealing, shorter and avoids an allocation.

    • -2
    • +3
    ./MixInLegacyTypesClassLoaderTest.groovy
  1. … 11 more files in changeset.
Change LegacyTypesSupport from static util to service

+review REVIEW-6246

    • -6
    • +6
    ./MixInLegacyTypesClassLoaderTest.groovy
  1. … 8 more files in changeset.
Create get getters for booleans for converted Classes

In Groovy, a public boolean field converted into a private

field and public get getters, is getters and setters. In order to not break any plugins

we now generate these get getters at runtime.

By this we do not break binary compatibility. As soon as the plugin is

recompiled the reference to the getter is not any more in the bytecode.

We plan to remove these mixings for 4.0

+review REVIEW-6102

    • -8
    • +63
    ./MixInLegacyTypesClassLoaderTest.groovy
  1. … 21 more files in changeset.
Create getters for constants for converted Classes

In Groovy, a public static constant is converted into a private

constant and public static getters. In order to not break any plugins

we now generate these getters at runtime. Since we only have String

constants only this is supported.

By this we do not break binary compatibility. As soon as the plugin is

recompiled the reference to the getter is not any more in the bytecode.

We plan to remove these mixings for 4.0

    • -0
    • +44
    ./MixInLegacyTypesClassLoaderTest.groovy
  1. … 9 more files in changeset.
Generate interfaces instead of classes for those old types that have been removed. These old types were empty interfaces, not empty classes.

    • -1
    • +2
    ./MixInLegacyTypesClassLoaderTest.groovy
  1. … 1 more file in changeset.
Generate synthetic classes at runtime for internal types that where replaced in older versions, but which are referenced (but unused) by task types compiled against older Gradle versions.

This will allow us to remove these empty and unused types from the source tree.

    • -0
    • +20
    ./MixInLegacyTypesClassLoaderTest.groovy
  1. … 3 more files in changeset.
Make `FilteringClassLoader` immutable

`SystemClassLoaderSpec` is moved to its own class so that it can be

included in `gradle-worker.jar`.

+review REVIEW-6020

    • -3
    • +3
    ./MixInLegacyTypesClassLoaderTest.groovy
  1. … 20 more files in changeset.
Revert "Make `FilteringClassLoader` immutable"

This reverts commit 18ee27f8561df18b19761ebd65f209eed88c19f5.

    • -3
    • +3
    ./MixInLegacyTypesClassLoaderTest.groovy
  1. … 15 more files in changeset.
Make `FilteringClassLoader` immutable

+review REVIEW-6020

    • -3
    • +3
    ./MixInLegacyTypesClassLoaderTest.groovy
  1. … 15 more files in changeset.
Remove unused `MutableURLClassLoader.addURL()` method

This effectively makes `MutableURLClassLoader` not publicly mutable,

thus the rename to `VisitableURLClassLoader`.

+review REVIEW-6020

    • -2
    • +2
    ./MixInLegacyTypesClassLoaderTest.groovy
  1. … 21 more files in changeset.
Fixed package and code source information attached to classes loaded from the core plugins ClassLoader.

    • -1
    • +24
    ./MixInLegacyTypesClassLoaderTest.groovy
  1. … 2 more files in changeset.
Mix `GroovyObject` into `JavaPluginConvention` when loaded, for backwards compatibility with plugins compiled against older Gradle versions.

    • -0
    • +88
    ./MixInLegacyTypesClassLoaderTest.groovy
  1. … 6 more files in changeset.