Library version
2.2.0
Description
Dynamic Widget environments report env.build.voltraVersion as 1.4.1 even though the artifacts are versioned 2.2.0.
WidgetBuildEnvironment.voltraVersion is documented as the installed Voltra package version and can be used by widgets for compatibility checks and error reporting. Several runtime and prerender paths currently contain a hard-coded stale value:
packages/ios-client/ios/target/VoltraClientWidgetRuntime.swift
packages/ios-client/expo-plugin/src/ios-widget/clientRenderedPrerender.ts
packages/android-client/expo-plugin/src/android/files/clientRenderedPrerender.ts
packages/cli/src/platforms/shared/widgetModule.ts
On iOS this affects every runtime render. On Android it affects the prerendered placeholder before the native runtime supplies the correct BuildConfig.VOLTRA_VERSION. CLI-generated placeholder environments are also affected.
Minimal reproduction
export default function VersionWidget(_props, env) {
console.log(env.build.voltraVersion)
return <Voltra.Text>{env.build.voltraVersion}</Voltra.Text>
}
Using Voltra 2.2.0, the iOS Dynamic Widget reports 1.4.1.
Expected behavior
For Voltra 2.2.0, env.build.voltraVersion should return 2.2.0. Future releases should automatically report their corresponding package version.
Proposed resolution
Generate a shared version constant from the relevant package.json during the build instead of maintaining release strings manually. Use it in the native iOS runtime, both Expo-plugin prerender paths, and CLI-generated environments.
Acceptance criteria
env.build.voltraVersion matches the published package version.
- No hard-coded historical Voltra version remains in runtime or prerender source.
- iOS runtime, iOS/Android placeholders, and CLI-generated environments agree.
- Tests fail if the reported version diverges from package metadata.
Library version
2.2.0
Description
Dynamic Widget environments report
env.build.voltraVersionas1.4.1even though the artifacts are versioned2.2.0.WidgetBuildEnvironment.voltraVersionis documented as the installed Voltra package version and can be used by widgets for compatibility checks and error reporting. Several runtime and prerender paths currently contain a hard-coded stale value:packages/ios-client/ios/target/VoltraClientWidgetRuntime.swiftpackages/ios-client/expo-plugin/src/ios-widget/clientRenderedPrerender.tspackages/android-client/expo-plugin/src/android/files/clientRenderedPrerender.tspackages/cli/src/platforms/shared/widgetModule.tsOn iOS this affects every runtime render. On Android it affects the prerendered placeholder before the native runtime supplies the correct
BuildConfig.VOLTRA_VERSION. CLI-generated placeholder environments are also affected.Minimal reproduction
Using Voltra 2.2.0, the iOS Dynamic Widget reports
1.4.1.Expected behavior
For Voltra 2.2.0,
env.build.voltraVersionshould return2.2.0. Future releases should automatically report their corresponding package version.Proposed resolution
Generate a shared version constant from the relevant
package.jsonduring the build instead of maintaining release strings manually. Use it in the native iOS runtime, both Expo-plugin prerender paths, and CLI-generated environments.Acceptance criteria
env.build.voltraVersionmatches the published package version.