IdeaMultiModuleIntegrationTest.groovy

Clone Tools
  • last updated a few seconds ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Rename @FailsWithInstantExecution to @ToBeFixedForInstantExecution

Signed-off-by: Paul Merlin <paul@gradle.com>

    • -13
    • +13
    ./IdeaMultiModuleIntegrationTest.groovy
  1. … 872 more files in changeset.
Annotate JUnit integ tests failing with instant execution

in already annotated subprojects

Signed-off-by: Paul Merlin <paul@gradle.com>

    • -0
    • +14
    ./IdeaMultiModuleIntegrationTest.groovy
  1. … 19 more files in changeset.
Annotate JUnit integ tests failing with instant execution

in already annotated subprojects

Signed-off-by: Paul Merlin <paul@gradle.com>

    • -0
    • +14
    ./IdeaMultiModuleIntegrationTest.groovy
  1. … 19 more files in changeset.
Revert "Do not emit deprecation warning for deprecated 'force'"

This reverts commit 1db54192db6ef9af5c2fd6b227004eed9a27c07f.

    • -0
    • +1
    ./IdeaMultiModuleIntegrationTest.groovy
  1. … 10 more files in changeset.
Do not emit deprecation warning for deprecated 'force'

Nagging for this deprecation will only start with 6.1 to ease

the migration from 'force' to 'strictly'.

    • -1
    • +0
    ./IdeaMultiModuleIntegrationTest.groovy
  1. … 10 more files in changeset.
Do not emit deprecation warning for deprecated 'force'

Nagging for this deprecation will only start with 6.1 to ease

the migration from 'force' to 'strictly'.

    • -1
    • +0
    ./IdeaMultiModuleIntegrationTest.groovy
  1. … 10 more files in changeset.
Deprecated `force` on first-level dependencies

This commit deprecates using `force` in favor of using the

new "strictly" behavior. The "force" flag is still used

internally, in particular in case of virtual platforms, but

its usage should be discouraged as we have a solution which

is better now.

    • -0
    • +1
    ./IdeaMultiModuleIntegrationTest.groovy
  1. … 23 more files in changeset.
Deprecated `force` on first-level dependencies

This commit deprecates using `force` in favor of using the

new "strictly" behavior. The "force" flag is still used

internally, in particular in case of virtual platforms, but

its usage should be discouraged as we have a solution which

is better now.

    • -0
    • +1
    ./IdeaMultiModuleIntegrationTest.groovy
  1. … 23 more files in changeset.
Let ide tests not use deprecated configurations

    • -23
    • +23
    ./IdeaMultiModuleIntegrationTest.groovy
  1. … 40 more files in changeset.
Let ide tests not use deprecated configurations

    • -23
    • +23
    ./IdeaMultiModuleIntegrationTest.groovy
  1. … 61 more files in changeset.
Let ide tests not use deprecated configurations

    • -23
    • +23
    ./IdeaMultiModuleIntegrationTest.groovy
  1. … 61 more files in changeset.
Let ide tests not use deprecated configurations

    • -23
    • +23
    ./IdeaMultiModuleIntegrationTest.groovy
  1. … 61 more files in changeset.
Let ide tests not use deprecated configurations

    • -23
    • +23
    ./IdeaMultiModuleIntegrationTest.groovy
  1. … 40 more files in changeset.
Change `ProjectComponentIdentifier` and `ProjectComponentSelector` implementations to carry enough information to report the correct display name and project name. Change more places to delegate to the `BuildState` for a particular build to determine these values for a given project, rather than duplicating the logic to calculate these things.

    • -2
    • +1
    ./IdeaMultiModuleIntegrationTest.groovy
  1. … 43 more files in changeset.
Update integration tests for optimized IDEA dependencies

    • -36
    • +37
    ./IdeaMultiModuleIntegrationTest.groovy
  1. … 6 more files in changeset.
Cleanup some stale TODOs

    • -1
    • +1
    ./IdeaMultiModuleIntegrationTest.groovy
  1. … 4 more files in changeset.
Deduplicate IDE modules based on available projects

Instead of de-duplication based on post-processing the configured

IDE module names, de-duplication is now done for the default IDE

module names, based on the set of available projects. This results

in slightly more predictable behaviour, since the default name of

a module is not dependent on which projects have the IDE plugin

applied.

In addition, we now _always_ honour the user-configured IDE module

name, even if this will result in a duplicate name.

    • -6
    • +6
    ./IdeaMultiModuleIntegrationTest.groovy
  1. … 7 more files in changeset.
Simplified resolving name of dependent IDE module

For any project that has the appropriate IDE plugin applied, the

name will be taken from the 'published' IDE metadata artifact.

For a project without the IDE plugin applied, we derive the project

name from the project path.

    • -5
    • +52
    ./IdeaMultiModuleIntegrationTest.groovy
  1. … 4 more files in changeset.
Simplify IDEA scope mapping

The old scope mapping code was hardcoded, hard to understand and exploded in complexity

each time we added a new configuration to the Java plugin. It was doing this hardcoded

mapping in an attempt to minimize the number of dependency declarations in IDEA, e.g.

remove `testRuntime` dependencies from the `TEST` scope if they were already in the `RUNTIME`

scope and not present in `testCompile`. While this slightly reduces the number of false positives

in auto completion, it is hard to follow, as IDEA itself simply does not differentiate between

"test compilation" and "test runtime".

The new implementation accepts IDEA's dependency model and does the simples possible mapping to it:

- no hardcoded mapping rules for the Java plugin

- users can put dependencies into the 4 IDEA scopes (`COMPILE`,`PROVIDED`,`RUNTIME`, `TEST`)

- the IdeaPlugin uses the same API for adding dependencies that the user would use

- those scopes are not postprocessed in any way

The default mapping for the Java plugin is simplified to:

- `COMPILE` is empty

- `PROVIDED` = `compileClasspath`

- `RUNTIME` = `runtimeClasspath`

- `TEST`= `testCompileClasspath + testRuntimeClasspath`

The benefit of this mapping is that we no longer use `minus` configurations, which we might want

to deprecate/remove as well.

    • -33
    • +81
    ./IdeaMultiModuleIntegrationTest.groovy
  1. … 20 more files in changeset.
Fix de-duplication and dependencies for IDE plugins

When root project did not apply the IDE plugin, de-duplication and

IDE dependency customization were not correctly applied.

    • -0
    • +38
    ./IdeaMultiModuleIntegrationTest.groovy
  1. … 5 more files in changeset.
Revert changes related to the Eclipse WTP tests

This commit revers the changes tried to resolve the sporadic

failures in the Eclipse integration tests.

The following commits are reverted:

- 49de851ccf82ad82d7ff9753db2aebcf59cf15da.

- 5aeff16fa18f1612b456d013d8fbd9066afada2b.

- e779cc3f3dcda8edf3e021ef589cd16fd752ce85.

- cf5a452a6739f86723d29d081e46f2d11af160c7.

- b8db30bf62b0506b70d2795dee0d4ee54d87b4d8.

- 9b6988c4e7ab27a88c8acd2a30aece0780bda0e0.

- 3bff9e349b1bfdaefd0256376a1c04ee96c148c4.

    • -4
    • +4
    ./IdeaMultiModuleIntegrationTest.groovy
  1. … 3 more files in changeset.
Make IdeaMultiModuleIntegrationTest assertions more robust

    • -4
    • +4
    ./IdeaMultiModuleIntegrationTest.groovy
initial work on updated ide module name deduplication

- integration test coverage for eclipse

TODO: add integration test coverage for IDEA

    • -7
    • +7
    ./IdeaMultiModuleIntegrationTest.groovy
  1. … 9 more files in changeset.
add more coverage for IDE classpath setup

- add coverage for scenario where dependent project has same lib dependency with different version

- ensure conflict resolution is used to get "correct" lib on project classpath

+review REVIEW-5508

    • -0
    • +60
    ./IdeaMultiModuleIntegrationTest.groovy
  1. … 1 more file in changeset.
address review items

+review REVIEW-5508

    • -1
    • +0
    ./IdeaMultiModuleIntegrationTest.groovy
  1. … 8 more files in changeset.
fix idea metadata file generation

- handle fix possible project cycle

- fix IdeaIntegrationTest

+review REVIEW-5508

    • -5
    • +7
    ./IdeaMultiModuleIntegrationTest.groovy
  1. … 3 more files in changeset.
change ide classpath mapping

- all transitive repository deps are mapped as direct dependencies

- all (transitive) project dependencies are mapped as direct project dependencies

- deprecated EclipseClasspath.noExportConfigurations

- deprecated AbstractLibrary.declaredConfigurationName and ProjectDependency.declaredConfigurationName

- TODO

- add all transitive file only dependencies

- fix temporally ignored IdeaIntegrationTest / IdeaMultiModuleIntegrationTest

    • -0
    • +2
    ./IdeaMultiModuleIntegrationTest.groovy
  1. … 23 more files in changeset.
Lock observed state separately from resolved state in DefaultConfiguration

- This should prevent current deadlock situation.

- Locking is still pretty half-assed: in order to be fully thread safe, we’d need

to make a copy of the configuration fields when beginning resolution.

    • -4
    • +0
    ./IdeaMultiModuleIntegrationTest.groovy
  1. … 4 more files in changeset.
use org.junit.Ignore instead of spock.lang.Ignore in Junit4 test

    • -1
    • +1
    ./IdeaMultiModuleIntegrationTest.groovy
Disable deadlocking test

    • -0
    • +3
    ./IdeaMultiModuleIntegrationTest.groovy