3.1 Manifest.toml interactive components
Update the runtime module path and interface for UI components:- Component ID:
krl.2→krl.4 - Runtime module path:
keplerscript.runtime.loader_2→runtime.react_native_kepler_4 - Interface:
IKeplerScript_2_0→IReactNativeKepler_0
3.2 Manifest.toml headless components
If your app uses headless components (services or tasks), update their runtime modules as shown in the examples below.- Runtime module path:
headless.runtime.loader_2→runtime.react_native_kepler_headless_4 - Interface:
IKeplerScript_2_0→IReactNativeKeplerHeadless_0
3.3 Manifest.toml OS version
Yourmanifest.toml must have an [os.version] section to build with SDK 2.0. This requirement applies whether you migrate to RN 0.83 or stay on RN 0.72. If your app was created with SDK 0.23 or earlier, it doesn’t have this section, and the build fails with the following error:
target to 2.0, the OS version that SDK 2.0 builds against. Set min to the oldest OS version your app supports. 2.0 is the recommended value, and you can set 1.2 to also support OS 1.2. For help choosing, see Choose min.
[os.version] section. Pick the one that matches what else you want to change.
--os-version and --os-min. Without them, update-manifest prompts for the values, and in a non-interactive shell, such as CI, it accepts the defaults without asking. If you leave out --os-min, update-manifest and update set min to the oldest available OS version.
The install --fix and update commands change the @amazon-devices/* versions in package.json. After you run either one, run npm install. If you run update-manifest alone, vega project doctor keeps warning about out-of-date package versions until you run vega project install --fix.
If your manifest already has an [os.version] section, check its target value. install --fix doesn’t change an existing target. To change it to 2.0, use update-manifest or update.
Don’t add OS version module entries (/com.amazon.vega.os@IVega_*) to your source manifest.toml. The build generates them from [os.version]. For details, see Manifest [os.version] Section.
3.4 app.json updates
Update the component ID in app.json fromkrl.2 to krl.4:
3.5 CMakeLists.txt updates
Update version numbers, C++ standard, and library targets in the CMakeLists.txt file. Template pattern (krl.2 → krl.4)- CMake 3.22+
- C++20-compatible compiler (GCC 10+, Clang 12+, MSVC 2019+)
3.6 Vega bundle configuration
If your app uses JavaScript system bundling, add the bundle configuration package in your package.json file. A standard app doesn’t need this package, and the Vega app template doesn’t include it.disableSplitBundle or set to false to enable code splitting for better performance.

