NonIncrementalGroovyCompileAvoidanceAgainstJarIntegrationSpec.groovy

Clone Tools
  • last updated a few seconds ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
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.

    • -1
    • +3
    ./NonIncrementalGroovyCompileAvoidanceAgainstJarIntegrationSpec.groovy
  1. … 73 more files in changeset.
Test groovy incremental support

    • -1
    • +3
    ./NonIncrementalGroovyCompileAvoidanceAgainstJarIntegrationSpec.groovy
  1. … 38 more files in changeset.
Test groovy incremental support

    • -1
    • +3
    ./NonIncrementalGroovyCompileAvoidanceAgainstJarIntegrationSpec.groovy
  1. … 38 more files in changeset.
Test groovy incremental support

    • -1
    • +3
    ./NonIncrementalGroovyCompileAvoidanceAgainstJarIntegrationSpec.groovy
  1. … 38 more files in changeset.
Test groovy incremental compilation

    • -1
    • +3
    ./NonIncrementalGroovyCompileAvoidanceAgainstJarIntegrationSpec.groovy
  1. … 38 more files in changeset.
Rewrite the tests for Groovy incremental compilation

    • -1
    • +3
    ./NonIncrementalGroovyCompileAvoidanceAgainstJarIntegrationSpec.groovy
  1. … 21 more files in changeset.
Rewrite the tests for Groovy incremental compilation

    • -1
    • +3
    ./NonIncrementalGroovyCompileAvoidanceAgainstJarIntegrationSpec.groovy
  1. … 21 more files in changeset.
Groovy incremental compilation support

    • -1
    • +3
    ./NonIncrementalGroovyCompileAvoidanceAgainstJarIntegrationSpec.groovy
  1. … 45 more files in changeset.
Groovy incremental compilation support

    • -1
    • +3
    ./NonIncrementalGroovyCompileAvoidanceAgainstJarIntegrationSpec.groovy
  1. … 45 more files in changeset.
Groovy incremental compilation support

Signed-off-by: Bo Zhang <bo@gradle.com>

    • -1
    • +3
    ./NonIncrementalGroovyCompileAvoidanceAgainstJarIntegrationSpec.groovy
  1. … 45 more files in changeset.
Daily commit

    • -1
    • +3
    ./NonIncrementalGroovyCompileAvoidanceAgainstJarIntegrationSpec.groovy
  1. … 33 more files in changeset.
Groovy compilation avoidance: first step (#9513)

### Context

See https://github.com/gradle/gradle/issues/9517

We want to enable compilation avoidance for Groovy: the Groovy transformation classpath should be normailzed with `@Classpath` and other classpath should be normalized with `@CompileClasspath`. This PR adds a `compilerPluginClasspath` field (the name is not finalized yet, suggestion is always welcomed) to `GroovyCompile`. Users can enable `org.gradle.groovy.compilation.avoidance` and set `compilerPluginClasspath`.

    • -0
    • +23
    ./NonIncrementalGroovyCompileAvoidanceAgainstJarIntegrationSpec.groovy
  1. … 13 more files in changeset.
Adjust compilation avoidance tests structure

    • -1
    • +2
    ./NonIncrementalGroovyCompileAvoidanceAgainstJarIntegrationSpec.groovy
  1. … 11 more files in changeset.
Add AST transformation tests

    • -0
    • +22
    ./NonIncrementalGroovyCompileAvoidanceAgainstJarIntegrationSpec.groovy
  1. … 12 more files in changeset.