> Calculating task graph as no configuration c...
# multiplatform
a
Calculating task graph as no configuration cache is available for tasks: sharedembedAndSignAppleFrameworkForXcode
Type-safe project accessors is an incubating feature.
13 problems were found storing the configuration cache, 5 of which seem unique.
- Task
:shared:skieConfigureMinOsVersionDebugFrameworkIosSimulatorArm64
of type `co.touchlab.skie.plugin.coroutines.ConfigureMinOsVersionTask`: cannot serialize object of type 'org.gradle.api.DefaultTask', a subtype of 'org.gradle.api.Task', as these are not supported with the configuration cache.
See https://docs.gradle.org/8.2/userguide/configuration_cache.html#config_cache:requirements:task_access
- Task
:shared:skieConfigureMinOsVersionDebugFrameworkIosSimulatorArm64
of type `co.touchlab.skie.plugin.coroutines.ConfigureMinOsVersionTask`: cannot serialize object of type 'org.gradle.api.internal.artifacts.configurations.DefaultConfiguration', a subtype of 'org.gradle.api.artifacts.Configuration', as these are not supported with the configuration cache.
See https://docs.gradle.org/8.2/userguide/configuration_cache.html#config_cache:requirements:disallowed_types
- Task
:shared:skieConfigureMinOsVersionDebugFrameworkIosSimulatorArm64
of type `co.touchlab.skie.plugin.coroutines.ConfigureMinOsVersionTask`: cannot serialize object of type 'org.gradle.api.internal.file.DefaultSourceDirectorySet', a subtype of 'org.gradle.api.file.SourceDirectorySet', as these are not supported with the configuration cache.
See https://docs.gradle.org/8.2/userguide/configuration_cache.html#config_cache:requirements:disallowed_types
- Task
:shared:skieConfigureMinOsVersionDebugFrameworkIosSimulatorArm64
of type `co.touchlab.skie.plugin.coroutines.ConfigureMinOsVersionTask`: cannot serialize object of type 'org.gradle.api.internal.project.DefaultProject', a subtype of 'org.gradle.api.Project', as these are not supported with the configuration cache.
See https://docs.gradle.org/8.2/userguide/configuration_cache.html#config_cache:requirements:disallowed_types
- Task
:shared:skieConfigureMinOsVersionDebugFrameworkIosSimulatorArm64
of type `co.touchlab.skie.plugin.coroutines.ConfigureMinOsVersionTask`: cannot serialize object of type 'org.jetbrains.kotlin.gradle.targets.native.tasks.KotlinNativeSimulatorTest', a subtype of 'org.gradle.api.Task', as these are not supported with the configuration cache.
See https://docs.gradle.org/8.2/userguide/configuration_cache.html#config_cache:requirements:task_access
See the complete report at file:///Users/ellet/AndroidStudioProjects/KMPBasics/build/reports/configuration-cache/7daeenlf1vm9ffwt2vs2m657i/2d1ajit7k8j7851zkompucq7y/configuration-cache-report.html
FAILURE: Build failed with an exception.
* What went wrong:
Configuration cache state could not be cached: field
apiConfiguration
of
org.jetbrains.kotlin.gradle.plugin.mpp.compilationImpl.DefaultKotlinCompilationConfigurationsContainer
bean found in field
dependencyConfigurations
of
org.jetbrains.kotlin.gradle.plugin.mpp.compilationImpl.KotlinCompilationImpl$Params
bean found in field
params
of
org.jetbrains.kotlin.gradle.plugin.mpp.compilationImpl.KotlinCompilationImpl
bean found in field
$$delegate_0
of
org.jetbrains.kotlin.gradle.plugin.mpp.KotlinCommonCompilation
bean found in field
underlying
of
org.jetbrains.kotlin.gradle.utils.MutableObservableSetImpl
bean found in field
compilations
of
org.jetbrains.kotlin.gradle.plugin.sources.DefaultKotlinSourceSet
bean found in field
value
of
org.jetbrains.kotlin.tooling.core.Extras$Entry
bean found in field
extras
of
org.jetbrains.kotlin.tooling.core.MutableExtrasImpl
bean found in field
extras
of
org.jetbrains.kotlin.gradle.plugin.mpp.compilationImpl.KotlinCompilationImpl
bean found in field
$$delegate_0
of
org.jetbrains.kotlin.gradle.plugin.mpp.KotlinSharedNativeCompilation
bean found in field
map
of
org.gradle.api.internal.DefaultNamedDomainObjectCollection$UnfilteredIndex
bean found in field
index
of
org.gradle.api.internal.FactoryNamedDomainObjectContainer
bean found in field
compilations
of
org.jetbrains.kotlin.gradle.plugin.mpp.KotlinMetadataTarget
bean found in field
metadataTarget
of
org.jetbrains.kotlin.gradle.plugin.mpp.KotlinVariantWithMetadataVariant
bean found in field
element
of
java.util.Collections$SingletonSet
bean found in field
value
of
kotlin.InitializedLazyImpl
bean found in field
kotlinComponents$delegate
of
org.jetbrains.kotlin.gradle.plugin.mpp.KotlinNativeTargetWithSimulatorTests
bean found in field
target
of
co.touchlab.skie.plugin.util.SkieTarget$TargetBinary
bean found in field
__target__
of task
:shared:skieConfigureMinOsVersionDebugFrameworkIosSimulatorArm64
of type `co.touchlab.skie.plugin.coroutines.ConfigureMinOsVersionTask`: error writing value of type 'org.gradle.api.internal.artifacts.configurations.DefaultConfiguration'
> Resolving dependency configuration 'metadataCompilationApi' is not allowed as it is defined as 'canBeResolved=false'.
Instead, a resolvable ('canBeResolved=true') dependency configuration that extends 'metadataCompilationApi' should be resolved.
Hi, have any of you face such issue when building the iOS app in KMP
đź§µ 3
f
Hi! Based on the error I’d guess that your project has enabled Gradle configuration cache which is not supported by SKIE yet.
👍 1
a
Thanks, I though that's the issue but the error is not that clear to me, I'm not good at Gradle tasks
I did enable anything I just used the default configurations in KMP project
Copy code
org.gradle.caching=true
org.gradle.configuration-cache=true
Does disabling it make the build much slower?
f
to an extend yes mainly because it makes the configuration phase slower, however you can only use it with plugins that support the configuration cache. Some plugins already do but others don’t. That’s because it’s a relatively new thing and adding support for it can be not trivial in some cases.
you need to remove the
org.gradle.configuration-cache=true
(the other caching should work fine)
👍 1
a
What is the difference anyway?
f
the other one is a build cache which caches the outputs of the task
👍 1
a
And the first?
f
the first caches the configuration of the tasks so that it doesn’t have to be recomputed every single time you run some task without changing the Gradle scripts
👍 1
a
Thanks