Skip to content

loom.splitEnvironmentSourceSets() breaks inheritance for non-client & non-main classpaths #25

@Ampflower

Description

@Ampflower

Expected:

For testRuntimeClasspath and testCompileClasspath to correctly inherit runtimeClasspath and compileClasspath respectively when loom.splitEnvironmentSourceSets() is called.

Actual:

testRuntimeClasspath and testCompileClasspath fail to inherit the parent classpaths, only getting the modRuntimeClasspathMapped and modCompileClasspathMapped configuration. testAnnotationProcessor is the only configuration that correctly inherits from annotationProcessor.

Steps to Reproduce:

  1. Call loom.splitEnvironmentSourceSets() in your standard build.gradle for modding.
  2. Run ./gradlew dependencies

Problems this causes:

  • The inability to call Minecraft's dependencies and Minecraft itself within the test source sets.
  • mod* taking priority on any dependencies that Minecraft normally declares.
    • This was seen via the Quilt Loader 0.18.1 betas on QFAPI, which seems to be able to correctly resolve GSON despite it not being present in testmodCompileClasspath on Quilt Loader 0.17.10?
  • Manually defined configurations also can fail to inherit from the main classpaths, even when explicitly called.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions