Clone Tools
  • last updated a few seconds ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Resolve review feedback

    • -1
    • +1
    ./tasks/compile/ApiGroovyCompiler.java
    • -0
    • +4
    ./tasks/compile/GroovyCompileSpec.java
  1. … 10 more files in changeset.
Apply `Anonymous type can be replaced with lambda` inspection the whole project

    • -40
    • +22
    ./tasks/compile/ApiGroovyCompiler.java
  1. … 664 more files in changeset.
Apply `Explicit type can be replaced with <>` inspection the whole project

    • -1
    • +1
    ./tasks/compile/ApiGroovyCompiler.java
    • -1
    • +1
    ./tasks/compile/GroovyCompileTransformingClassLoader.java
    • -1
    • +1
    ./tasks/compile/GroovyCompilerFactory.java
  1. … 907 more files in changeset.
Refactor code

    • -5
    • +5
    ./tasks/compile/daemon/DaemonGroovyCompiler.java
  1. … 4 more files in changeset.
Refactor code

    • -5
    • +14
    ./tasks/compile/daemon/DaemonGroovyCompiler.java
  1. … 4 more files in changeset.
Full recompilation with annotation processor (#9917)

This fixes #9871

We don't want to support annotation processing with incremental Groovy compilation because there're too many complicated corner cases - we simply disable Groovy incremental compilation if any Java annotation processors detected.

    • -4
    • +2
    ./tasks/compile/ApiGroovyCompiler.java
  1. … 3 more files in changeset.
Remove unused import

    • -1
    • +0
    ./tasks/compile/daemon/DaemonGroovyCompiler.java
Remove unused import

    • -1
    • +0
    ./tasks/compile/daemon/DaemonGroovyCompiler.java
Remove unused import

    • -1
    • +0
    ./tasks/compile/daemon/DaemonGroovyCompiler.java
Remove unused import

    • -1
    • +0
    ./tasks/compile/daemon/DaemonGroovyCompiler.java
Refine deprecation warning

    • -7
    • +1
    ./tasks/compile/ApiGroovyCompiler.java
  1. … 3 more files in changeset.
Full recompilation with annotation processor

    • -3
    • +7
    ./tasks/compile/ApiGroovyCompiler.java
  1. … 2 more files in changeset.
Full recompilation with annotation processor

    • -4
    • +10
    ./tasks/compile/ApiGroovyCompiler.java
  1. … 1 more file in changeset.
Full recompilation with annotation processor

    • -3
    • +8
    ./tasks/compile/ApiGroovyCompiler.java
  1. … 2 more files in changeset.
Full recompilation with annotation processor

    • -3
    • +7
    ./tasks/compile/ApiGroovyCompiler.java
  1. … 2 more files in changeset.
Move compiler parameters into compiler implementation classes

    • -2
    • +24
    ./tasks/compile/daemon/DaemonGroovyCompiler.java
  1. … 5 more files in changeset.
Move compiler parameters into compiler implementation classes

    • -2
    • +24
    ./tasks/compile/daemon/DaemonGroovyCompiler.java
  1. … 5 more files in changeset.
Move compiler parameters into compiler implementation classes

    • -2
    • +24
    ./tasks/compile/daemon/DaemonGroovyCompiler.java
  1. … 5 more files in changeset.
Move compiler parameters into compiler implementation classes

    • -2
    • +24
    ./tasks/compile/daemon/DaemonGroovyCompiler.java
  1. … 5 more files in changeset.
Move compiler parameters into compiler implementation classes

    • -2
    • +24
    ./tasks/compile/daemon/DaemonGroovyCompiler.java
  1. … 5 more files in changeset.
Full recompilation on Groovy-Java joint compilation (#9890)

Currently, incremental Groovy compilation only works for files compiled by the Groovy compiler. Java files are compiled by the Java compiler.

This PR disables incremental compiler if Java files found because this might cause incorrectness.

    • -5
    • +8
    ./tasks/compile/ApiGroovyCompiler.java
  1. … 5 more files in changeset.
Removed unused param

    • -6
    • +3
    ./tasks/compile/ApiGroovyCompiler.java
Only full recompile when Java file changes detected

    • -5
    • +1
    ./tasks/compile/ApiGroovyCompiler.java
  1. … 2 more files in changeset.
Full recompilation on Groovy-Java joint compilation

Currently, incremental Groovy compilation only works for files compiled by the Groovy compiler. Java files are compiled by the Java compiler.

This PR disables incremental compiler if Java files found because this might cause incorrectness.

    • -7
    • +17
    ./tasks/compile/ApiGroovyCompiler.java
  1. … 4 more files in changeset.
Follow-ups of incremental Groovy compilation (#9848)

This PR:

- Closes https://github.com/gradle/gradle/issues/9785 and https://github.com/gradle/gradle/issues/9380

- Adds tests for

- Multiple classes in a same source Groovy file.

- Moving files between source set roots

Previously, removing a source directory from a source set would break the Java (and Groovy) incremental compiler (https://github.com/gradle/gradle/issues/9380). This PR detects this case and runs a full recompilation.

It also records relative path instead of absolute path in Groovy incremental compilation to make it build-cache-friendly.

    • -4
    • +8
    ./tasks/compile/ApiGroovyCompiler.java
    • -8
    • +8
    ./tasks/compile/SourceClassesMappingFileAccessor.java
  1. … 26 more files in changeset.
Resolve review feedbacks

    • -3
    • +3
    ./tasks/compile/ApiGroovyCompiler.java
    • -6
    • +6
    ./tasks/compile/SourceClassesMappingFileAccessor.java
  1. … 7 more files in changeset.
Followups of incremental Groovy compilation

    • -4
    • +8
    ./tasks/compile/ApiGroovyCompiler.java
    • -2
    • +2
    ./tasks/compile/SourceClassesMappingFileAccessor.java
  1. … 19 more files in changeset.
Groovy incremental compilation support (#9616)

Inspired by https://github.com/gradle/gradle/pull/9388 , this PR implements Groovy compilation avoidance. Unlike Java, things are a little more complex in Groovy compilation - a compilation unit can generate multiple classes. Thus, we introduced a `sourceClassMappingFile`, which records the source to classes mappings during the compilation process. Later, we can use this information in incremental compiler: only the affected groovy source files get recompiled in next compilation.

    • -0
    • +83
    ./tasks/compile/ApiGroovyCompiler.java
    • -0
    • +13
    ./tasks/compile/DefaultGroovyJavaJointCompileSpec.java
    • -0
    • +4
    ./tasks/compile/GroovyCompileSpec.java
    • -0
    • +90
    ./tasks/compile/SourceClassesMappingFileAccessor.java
    • -0
    • +20
    ./tasks/compile/package-info.java
  1. … 67 more files in changeset.
Use isolated parameters for all worker isolation modes

    • -2
    • +5
    ./tasks/compile/GroovyCompilerFactory.java
    • -2
    • +3
    ./tasks/compile/daemon/DaemonGroovyCompiler.java
  1. … 41 more files in changeset.
Use isolated parameters for all worker isolation modes

    • -2
    • +5
    ./tasks/compile/GroovyCompilerFactory.java
    • -2
    • +3
    ./tasks/compile/daemon/DaemonGroovyCompiler.java
  1. … 43 more files in changeset.