Clone Tools
  • last updated a few minutes ago
Constraints: committers
Constraints: files
Constraints: dates
Polish GradleKotlinDslKtlintConventionPlugin

Add BuildCachePreemptive to iml file

Improve performance of handling capabilities conflicts

In particular, remove the need for `ComponentWithCapabilities` in the capabilities

conflict handler. Resolving a conflict itself might be a bit slower, but registering

the conflicts, which happens much more frequently, should be faster.

TeamCity preemptive build cache pipeline (#4704)

Add missing test coverage for removal of capabilities

There wasn't any test coverage for rules which remove capabilities.

Mention Philippe Agra in release notes

    • -0
    • +1
Merge pull request #4680 from philippeagra/master

Fix annotation-processors cache

Fix ktlint ruleset jar cache key in ktlint-convention plugin

by computing it at build time

    • -1
    • +11
Polish buildSrc KotlinDslPluginBundle

Merge pull request #4630 from gradle/hansd/delete-test-with-unknown-os

Deleted obsolete build script test-with-unknown-os

Document incremental annotation processing

  1. … 3 more files in changeset.
Add an implicit capability for each component

This commit makes sure that every component has an implicit capability corresponding

to its GAV coordinates. For example, the module `asm:asm:3.0` has an implicit capability

with the same group, name and version. This simplifies rules, in particular when a module

needs to explain that it provides the same capability as a different module published

at different coordinates.

Remove unhelpful comment

Extract Spec implementation into constant

Recompile source file when dependency of generated file changes

Otherwise the incremental compiler would delete the generated file,

but not recompile the source file, making the generated file disappear

completely and breaking the code.

Always recompile types generated by aggregating processors

Since they can have 0 originating elements, we need to clean

them up on every compilation so we don't end up with stale


Fail when the plugins {} block is non top-level

Build scripts body is cleared out of the effective plugins block if any

Build script template plugins {} function throws

This commit does the plugins block extraction twice, to be fixed.

Avoid method name that is illegal with Java 9

Declare optional `DefaultFileOperations` arguments as `@Nullable`

`DefaultFileOperations` is used by the `kotlin-dsl` and Kotlin won't

allow non nullable parameters to be given null arguments.

Rebaseline performance tests for large java project

This is done to lock improvements from #4396 which was the fix for


Replace `CapabilitiesExtension` with outgoing variants DSL

This commit replaces the need for a `CapabilitiesExtension` by adding the declaration

of variant capabilities on outgoing configuration variants. Instead of:


capabilities {

api 'org.test:foo:1.0'



one should now write:


configurations.api.outgoing {

capability 'org.test:foo:1.0'



  1. … 10 more files in changeset.
Fix PrecompiledScriptPluginTest compilation

Apply linting rules to buildSrc Kotlin code

    • -0
    • +3
    • -0
    • +8
    • -0
    • +2
Dogfood ktlint-convention plugin 0.1.0 on buildSrc too

Allow build operation listeners to log (#4693)

This change moves build operation listening out of the standard listener infrastructure, to remove serialisation guarantees. As logging output now causes build operation notifications, whenever a build operation listener logged something it would fail due to the listener manager blocking overlapping signals.

By moving build operation listening out, overlapping and concurrent signals are now allowed.

This places more responsibility on listener implementations (e.g. thread safety), but there are few and they are all internal.

Additionally, listeners will now never receive progress notifications before start notifications and after finish notifications for that operation.

  1. … 4 more files in changeset.
Dogfood ktlint-convention plugin 0.1.0

Bump :plugins-experiments version

:plugins-experiments do not publish ruleset jar artifact

Make sure tests prove something by not systematically apply fix

This commit splits the test cases for fixing capability conflicts in two variants:

- one which only applies the component metadata rules to create a conflict, but without fixing

- one that additionally applies a fix, as the user would have to write

Remove unused code