[RESOLVED] Unable to rebuild app after migration to architecture 8.6.0

Hi,
I am currently experiencing an issue when trying to rebuild my app with the new architecture version 8.6.0.

I get the following error:

[dynSOAR2CSTask] 19 : SOAR-S ERROR :
[dynSOAR2CSTask] [M62] - Feature type 'demo.TestClone' cannot extend or implement 'java.lang.Cloneable' because it is declared final by the Kernel in a 'kernel.api' file.

Could you please help me understand what might be causing this issue or how to resolve it?
Thank you.
Yeo

Hi @yeo ,

With Architecture 8.6.0, we have introduced stricter validation for Kernel APIs. SOAR now prevents invalid usage when Kernel APIs expose only a subset of the functionality provided by a library.

These issues are now detected at build time rather than at runtime, resulting in stricter validation for both Kernel and Feature builds compared to previous versions.

Please refer to the migration guide for more details:
https://docs.microej.com/en/managedc/VEEPortingGuide/architecture8.6Migration.html#migrate-kernel-api-build

In your case, it is likely that your Kernel does not explicitly declare the Cloneable type. According to the KF specification, types that are implicitly exposed as APIs are not extendable by default.

You should update your kernel.api file to explicitly declare this type:
<type name="java.lang.Cloneable"/>

Best regards,
Frédéric