initialization

Clone Tools
  • last updated a few seconds ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Use volatile in DefaultClassLoaderScope

This is an attempt to fix https://github.com/gradle/gradle-private/issues/1903

A field should be volatile when used in multithread environment, otherwise there might

be visibility issues - which might be the cause of gradle-private#1903

This commit fixes this issue by using volatile correctly.

Revert "Change `DefaultClassLoaderCache` to use the same strategy for caching as the other cross build caches, retaining soft references to `ClassLoader` instances used in previous builds."

This reverts commit 86ab109726c291e96c84a82b99daa006d4a97740.

    • -80
    • +115
    ./loadercache/DefaultClassLoaderCache.java
  1. … 3 more files in changeset.
Revert "Change `DefaultClassLoaderCache` to use the same strategy for caching as the other cross build caches, retaining soft references to `ClassLoader` instances used in previous builds."

This reverts commit 86ab109726c291e96c84a82b99daa006d4a97740.

    • -80
    • +115
    ./loadercache/DefaultClassLoaderCache.java
  1. … 3 more files in changeset.
WIP - do not use strong references for loaders used in the previous build.

    • -5
    • +3
    ./loadercache/DefaultClassLoaderCache.java
Build buildSrc after applying the settings file (#10305)

Fixes #9094 and #5333

    • -150
    • +0
    ./DefaultDeprecatedClassLoader.java
  1. … 48 more files in changeset.
Merge remote-tracking branch 'origin/master' into ldaley/settings-before-buildsrc

# Conflicts:

# subprojects/core/src/integTest/groovy/org/gradle/initialization/buildsrc/BuildSrcDeprecatedInSettingsIntegrationTest.groovy

# subprojects/core/src/main/java/org/gradle/api/internal/initialization/DefaultDeprecatedClassLoader.java

# subprojects/core/src/main/java/org/gradle/api/internal/initialization/DeprecatedClassLoaderScope.java

  1. … 4 more files in changeset.
Change `DefaultClassLoaderCache` to use the same strategy for caching as the other cross build caches, retaining soft references to `ClassLoader` instances used in previous builds.

Remove the `ClassLoaderCache.remove()` method, as this is not required. The implementation can take care of this.

    • -115
    • +80
    ./loadercache/DefaultClassLoaderCache.java
  1. … 3 more files in changeset.
Change `DefaultClassLoaderCache` to use the same strategy for caching as the other cross build caches, retaining soft references to `ClassLoader` instances used in previous builds.

Remove the `ClassLoaderCache.remove()` method, as this is not required. The implementation can take care of this.

    • -115
    • +80
    ./loadercache/DefaultClassLoaderCache.java
  1. … 3 more files in changeset.
Change `DefaultClassLoaderCache` to use the same strategy for caching as the other cross build caches, retaining soft references to `ClassLoader` instances used in previous builds.

Remove the `ClassLoaderCache.remove()` method, as this is not required. The implementation can take care of this.

    • -115
    • +80
    ./loadercache/DefaultClassLoaderCache.java
  1. … 3 more files in changeset.
Fix previous commit.

  1. … 7 more files in changeset.
Fix previous commit.

Fix previous commit.

Record the ClassLoader associated with each class that is serialized to the instant execution cache, and use this to make class lookup on deserialize faster and to deal correctly with multiple classes with the same name.

Move some ClassLoader lifecycling from Groovy DSL script compilation to `ClassLoaderScope`, so that the scope takes care of creating and caching the script ClassLoader.

  1. … 26 more files in changeset.
Record the ClassLoader associated with each class that is serialized to the instant execution cache, and use this to make class lookup on deserialize faster and to deal correctly with multiple classes with the same name.

Move some ClassLoader lifecycling from Groovy DSL script compilation to `ClassLoaderScope`, so that the scope takes care of creating and caching the script ClassLoader.

  1. … 19 more files in changeset.
Record the ClassLoader associated with each class that is serialized to the instant execution cache, and use this to make class lookup on deserialize faster and to deal correctly with multiple classes with the same name.

Move some ClassLoader lifecycling from Groovy DSL script compilation to `ClassLoaderScope`, so that the scope takes care of creating and caching the script ClassLoader.

  1. … 19 more files in changeset.
Record the ClassLoader associated with each class that is serialized to the instant execution cache, and use this to make class lookup on deserialize faster and to deal correctly with multiple classes with the same name.

Move some ClassLoader lifecycling from Groovy DSL script compilation to `ClassLoaderScope`, so that the scope takes care of creating and caching the script ClassLoader.

  1. … 26 more files in changeset.
Merge remote-tracking branch 'origin/release'

* origin/release:

Fix resolving `DirectoryTee` elements of a `FileCollection`.

Avoid sharing the same id for the deprecated classloader as the real classloader

Recognize contributor

enhanced test source folder detection for eclipse task. (#10320)

Turn 'multiple publications with same coordinates' error into warning

Override getResources in DefaultDeprecatedClassLoader

Update default scan plugin version to 2.4.1

    • -7
    • +21
    ./DefaultDeprecatedClassLoader.java
  1. … 3 more files in changeset.
Merge remote-tracking branch 'origin/master-test' into release-test

  1. … 2 more files in changeset.
Merge remote-tracking branch 'origin/master-test' into release-test

  1. … 2 more files in changeset.
Avoid sharing the same id for the deprecated classloader as the real classloader

    • -10
    • +7
    ./DefaultDeprecatedClassLoader.java
  1. … 1 more file in changeset.
Try using separate classloader ids

    • -13
    • +8
    ./DefaultDeprecatedClassLoader.java
Try using separate classloader ids

    • -11
    • +8
    ./DefaultDeprecatedClassLoader.java
Close classloader on release

    • -0
    • +2
    ./loadercache/DefaultClassLoaderCache.java
Close classloader on release

    • -0
    • +1
    ./loadercache/DefaultClassLoaderCache.java
Close classloader on release

    • -0
    • +5
    ./loadercache/DefaultClassLoaderCache.java
Return an empty enumeration?

    • -3
    • +16
    ./DefaultDeprecatedClassLoader.java
Maybe works

  1. … 1 more file in changeset.
wip

    • -14
    • +1
    ./DefaultDeprecatedClassLoader.java
wip

    • -14
    • +15
    ./DefaultDeprecatedClassLoader.java
wip

  1. … 1 more file in changeset.