keeper icon indicating copy to clipboard operation
keeper copied to clipboard

`java.lang.IllegalStateException: The value for this file collection cannot be changed any further.` with AGP 8.4.0-alpha05

Open alexvanyo opened this issue 5 months ago • 1 comments

Keeper version: 0.15.0 AGP version: 8.4.0-alpha05 or later

Steps to reproduce:

Reproducing PR: https://github.com/alexvanyo/composelife/pull/1500 with published Gradle scan

Expected result:

Project configures correctly with Keeper

Actual result:

Project configuration fails with following exception:

Caused by: java.lang.IllegalStateException: The value for this file collection cannot be changed any further.
        at org.gradle.api.internal.provider.ValueState$NonFinalizedValue.beforeMutate(ValueState.java:139)
        at org.gradle.api.internal.file.collections.DefaultConfigurableFileCollection.assertMutable(DefaultConfigurableFileCollection.java:249)
        at org.gradle.api.internal.file.collections.DefaultConfigurableFileCollection.from(DefaultConfigurableFileCollection.java:227)
        at com.slack.keeper.KeeperPlugin$applyGeneratedRules$2.execute(KeeperPlugin.kt:372)
        at com.slack.keeper.KeeperPlugin$applyGeneratedRules$2.execute(KeeperPlugin.kt:370)
        at org.gradle.internal.code.DefaultUserCodeApplicationContext$CurrentApplication$1.execute(DefaultUserCodeApplicationContext.java:122)
        at org.gradle.api.internal.DefaultCollectionCallbackActionDecorator$BuildOperationEmittingAction$1.run(DefaultCollectionCallbackActionDecorator.java:110)
        at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:29)
        at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:26)
        at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66)
        at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59)
        at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:157)
        at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59)
        at org.gradle.internal.operations.DefaultBuildOperationRunner.run(DefaultBuildOperationRunner.java:47)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:68)
        at org.gradle.api.internal.DefaultCollectionCallbackActionDecorator$BuildOperationEmittingAction.execute(DefaultCollectionCallbackActionDecorator.java:107)
        at org.gradle.api.internal.DefaultMutationGuard$1.execute(DefaultMutationGuard.java:45)
        at org.gradle.api.internal.DefaultMutationGuard$1.execute(DefaultMutationGuard.java:45)
        at org.gradle.api.internal.collections.CollectionFilter$1.execute(CollectionFilter.java:62)
        at org.gradle.api.internal.collections.CollectionFilter$1.execute(Collec
tionFilter.java:62)
        at org.gradle.internal.ImmutableActionSet$SetWithManyActions.execute(ImmutableActionSet.java:329)
        at org.gradle.api.internal.DefaultDomainObjectCollection.doAdd(DefaultDomainObjectCollection.java:262)
        at org.gradle.api.internal.DefaultNamedDomainObjectCollection.doAdd(DefaultNamedDomainObjectCollection.java:124)
        at org.gradle.api.internal.DefaultDomainObjectCollection.add(DefaultDomainObjectCollection.java:256)
        at org.gradle.api.internal.DefaultNamedDomainObjectCollection$AbstractDomainObjectCreatingProvider.tryCreate(DefaultNamedDomainObjectCollection.java:1005)
        ... 196 more

https://cs.android.com/android-studio/platform/tools/base/+/bf083e52cf2c1c72dbb458b67596b3cee2e53552 seems like a relevant change, which introduced a call to disallowChanges() on configurationFiles.

alexvanyo avatar Jan 28 '24 23:01 alexvanyo