Clone Tools
  • last updated a few seconds ago
Constraints: committers
Constraints: files
Constraints: dates
Make errorprone smoke test work with Java 8

Inject a filtering classloader for java annotation processor classpath

Recognise contribution

    • -0
    • +1
Special case for deferred selector

When a dependency activates a pending constraint, do not defer

selection if the pending constraint comes from a virtual platform.

Because of their special aspects, virtual platforms really need to be

handled in line each time.

Fixes #9882

fix expectation

Signed-off-by: Dan Sanduleac <>

Simplify test

Signed-off-by: Dan Sanduleac <>

Failing test

Signed-off-by: Dan Sanduleac <>


    • -1
    • +1
Merge pull request #9788 from gradle/marc/wrapper-https-license

Use HTTPS for links to Apache license in wrapper scripts

Use HTTPS for links to Apache license in wrapper scripts

Using HTTP when HTTPS is available is generally discouraged. Moreover,

builds of projects using the io.spring.nohttp plugin in its default

configuration now fail.

Update to RC4

    • -1
    • +1
Merge pull request #9769 from gradle/marc/fix-jupiter-typos

Fix JUnit Jupiter related typos

Fix JUnit Jupiter related typos

- Fix broken links to and use HTTPS

- Use `java-library` type in corresponding section

Move 'processing of dependency excludes' to upgrading guide

    • -6
    • +0
Fix early reset of cached filtered states

The cached filtered states should only be reset if we are

actually going to recompute them. Otherwise we do it too

early and it causes the test to check against `null` and

we would always say that it's a different dependency set.

Add more missing optimizations

Fix cached filtered states being reset too early

This was causing us to take the "short path" always, when we


Add debug log processing script

Add ability to trace stack overflows only

Do not use heuristic to tell if we should revisit a node

The previous implementation assumed that if we visited a node once,

and then revisit later, and that the exclusion filter "excludes

the same things if we ignore artifacts", then we don't need to revisit.

The problem with this approach is that it's a heuristic, that in

practice compares the exclude specs. But, two exclude specs can

be _equivalent_ (they would exclude the same things) but not _equal_

(their structure is different, because for example they were reduced

differently because of ordering).

This commit removes this faulty `equalsIgnoreArtifact` method in

favor of a direct comparison of the result of excluding edges. If

both specs are equivalent, they will exclude the same edges.

Optimize A ∩ (B ∪ C)

-> (A ∩ B) ∪ (A ∩ C)

User data shows this can often be reduced to an empty set because

distribution will compute empty sets on both sides.

Add missing optimization of intersection

when module ids are different

Add missing optimization of intersection

Add a logging exclude factory

This factory is enabled if, and only if, the log level is set to debug (`-d`).

Then it will log all merge operations, and report if there's a stack overflow

in merging exclude specs.

Add test coverage for intersections of 3 elements

and add more test coverage for unions

Add more logging to exclusion of edges

Use constant mask instead of class hashcode

Add randomization of sets

Rework test setup for exclude merging