Upgrading to the latest BMC Helix Innovation Studio SDK
To upgrade to the latest BMC Helix Innovation Studio SDK
- After you receive a notification that your BMC Helix Innovation Studio has been updated, download the BMC Helix Innovation Studio SDK ZIP file (com.bmc.arsys.rx.sdk-25.2.01.zip).
- Install Node.js version 20.15.1 and Yarn version v1.22.22. For more information, see To install Node.js and To install Yarn.
- The development environment has changed to OpenJDK. To install OpenJDK, see Setting-up-your-IDE-and-installing-BMC-Helix-Innovation-Studio-SDK.
Comment the maven-default-http-blocker to avoid the following error on HTTP download:
Could not transfer artifact com.bmc.arsys.mojo:is-build-helper-maven-plugin:pom:1.0 from/to maven-default-http-blocker (http://0.0.0.0/): Blocked mirror for repositories: [bmcmanaged-nexus-tps (http://<server>:<port>/nexus/content/repositories/BMCRemedyManagedRepo, default, releases+snapshots)<!--
<mirror>
<id>maven-default-http-blocker</id>
<mirrorOf>external:http:*</mirrorOf>
<name>Pseudo repository to mirror external repositories initially using HTTP.</name>
<url>http://0.0.0.0/</url>
<blocked>true</blocked>
</mirror>
-->If your maven compilation fails due to the error, Return code is: 501 , ReasonPhrase:HTTPS Required,
add the following entry in the <mirrors> section in the settings.xml file located in your <maven installation>/conf directory.
Some Maven repositories might not be available over HTTP.
For more information, see Creating-a-Project-using-Maven-and-the-Archetype.<mirror>
<id>central-over-https</id>
<mirrorOf>central</mirrorOf>
<name>Maven Central Repository</name>
<url>https://repo.maven.apache.org/maven2</url>
</mirror>- Rename your current SDK folder to create a backup.
For example, rename it to com.bmc.arsys.rx.sdk-25.2.00.BACKUP. - At the location where you want to install the SDK, create a new SDK folder and extract the BMC Helix Innovation Studio SDK ZIP file (com.bmc.arsys.rx.sdk-25.2.01.zip).
- Add an environment variable, RX_SDK_HOME, that points to the sdk folder location.
- Find the .m2 folder (usually located in your user directory, such as %USERPROFILE%\.m2\repository\com\bmc on windows). Delete the arsys and rx folders located there.
Install BMC Helix Innovation Studio SDK in your Maven repository by using the following commands:
\com.bmc.arsys.rx.sdk-25.2.01> cd lib
\com.bmc.arsys.rx.sdk-25.2.01\lib> mvn clean installUpdate the archetype-catalog.xml file to delete the earlier archetype versions (for example 25.2.00) and make sure the archetype-catalog.xml file has the archetype version as 25.2.01-SNAPSHOT.
The archetype-catalog.xml file might be located at the following locations:
- .m2
- .m2/repository
For example:
<archetype>
<groupId>com.bmc.arsys</groupId>
<artifactId>rx-sdk-archetype-application</artifactId>
<version>25.2.01-SNAPSHOT</version>
<description>Rx SDK application archetype</description>
</archetype>
To upgrade your application or library by using the SDK from version 25.2.00 to 25.2.01
To upgrade your applications or libraries created by using the SDK from version 25.2.00 to 25.2.01, perform the following steps:
Change the version of the following parameter in the parent pom.xml file located in the project folder:
Current version
Updated version
<rx-sdk.version>25.2.00-SNAPSHOT</rx-sdk.version><rx-sdk.version>25.2.01-SNAPSHOT</rx-sdk.version>- Update the bundle/pom.xml file and search for <artifactId>maven-resources-plugin</artifactId> with id copy-resources
and add the <include>*config_public-path*</include> below <include>*${project.artifactId}*</include>. - Delete the content of the following folders:
- /bundle/src/main/webapp/scripts/
- /bundle/src/main/webapp/tools/
- /bundle/src/main/webapp/apps/
- /bundle/src/main/webapp/dist/
- /bundle/src/main/webapp/styles/
- /bundle/src/main/webapp/node_modules/
- Delete the following file:
/bundle/src/main/webapp/yarn.lock - Use the APAPT CSS variable. The _variables.scss is no longer included in BMC Helix Innovation Studio SDK, so scss import of a variable will not function.
For example,
Before:
.foo { color: $gray-500; }
After:
.foo { color: var(--gray-500); } - (Optional) The @import syntax has been deprecated for the CSS stylesheet. Update your CSS file to use @use syntax.
For more information, see https://sass-lang.com/blog/import-is-deprecated/ and https://sass-lang.com/documentation/at-rules/import/. Build, export, and deploy your application project. For example:
myproj> mvn clean install -Pexport -Pdeploy- Verify that your application functions correctly.
To upgrade your application or library by using the SDK from version 25.1.xx to 25.2.00
To upgrade your applications or libraries created by using the SDK from version 25.1.02 to 25.2.00, perform the following steps:
Change the version of the following parameter in the parent pom.xml file located in the project folder:
Current version
Updated version
<rx-sdk.version>25.1.02-SNAPSHOT</rx-sdk.version><rx-sdk.version>25.2.00-SNAPSHOT</rx-sdk.version>- Update the bundle/pom.xml file and search for <artifactId>maven-resources-plugin</artifactId> with id copy-resources
and add the <include>*config_public-path*</include> below <include>*${project.artifactId}*</include>. - Delete the content of the following folders:
- /bundle/src/main/webapp/scripts/
- /bundle/src/main/webapp/tools/
- /bundle/src/main/webapp/apps/
- /bundle/src/main/webapp/dist/
- /bundle/src/main/webapp/styles/
- /bundle/src/main/webapp/node_modules/
- Delete the following file:
/bundle/src/main/webapp/yarn.lock - Use the APAPT CSS variable. The _variables.scss is no longer included in BMC Helix Innovation Studio SDK, so scss import of a variable will not function.
For example,
Before:
.foo { color: $gray-500; }
After:
.foo { color: var(--gray-500); } - (Optional) The @import syntax has been deprecated for the CSS stylesheet. Update your CSS file to use @use syntax.
For more information, see https://sass-lang.com/blog/import-is-deprecated/ and https://sass-lang.com/documentation/at-rules/import/. - (Optional) Perform this step only if you are running unit test cases. Update the unit test configuration.
- Remove the content of bundle/src/main/webapp/jest.preset.js.
- Remove the preset property from bundle/src/main/webapp/libs/<library-name>/jest.config.js.
- Update the transformIgnorePatterns property from bundle/src/main/webapp/libs/<library-name>/jest.config.js.
For example,
Before:
'node_modules/(?!.*.mjs$)'
After:
'node_modules/(?!.*.mjs$|d3*)' - Update the scripts of the package.json file under webapp directory with
"test": "yarn run nx-high-memory run-many --target=test --all --parallel --code-coverage --exclude=shell"
Build, export, and deploy your application project. For example:
myproj> mvn clean install -Pexport -Pdeploy- Verify that your application functions correctly.
Troubleshooting
This section describes the steps to resolve issues that you might encounter when upgrading your applications or libraries to version 25.2.00.
View Component or View Action is not available in the palette
You might encounter the following issues:
- A View component and Action are not visible in the BMC Helix Innovation Studio palette or in the button action list and/or are not executed at runtime.
- An Initializer is not executed at runtime.
To resolve this issue, verify the following points:
- A View Component, Action, or Initializer is not visible in BMC Helix Innovation Studio palette or button action list and is not executed at runtime.
- The View Component, View Action, and Initializer must be declared in the manifest file. To declare the components, complete the following tasks:
- The manifest file must be generated.
- The View Component, View Action, and Initializers must be declared by using the Platform decorators @RxViewComponent(), @RxViewAction(), and @RxApplicationInitializer().
For more information, see Implement decorators for view components, actions, and initializers.
Build issue with browserslist
When you build a coded bundle, the following error is displayed:
./libs/foo/src/lib/styles/foo.scss - Error: Module build failed {from ./node_modules/@angular-devkit/build-angular/node_modules/mii-css-extract-plugin/dist/loader.js}; HookWebpackError: Module build failed {from ./node_modules/@angular-devkit/build-angular/node_modules/postcss-loader/dist/cjs.js};
BrowserlistError: Unknown version 104 of android
To resolve this issue, perform the following steps:
- Locate and delete the yarn.lock file from the /bundle/src/main/webapp location.
Run the following command:
mvn clean install
Build issue with yarn cache
When you build a coded bundle, the following error is displayed:
error an unexpected error occurred: "There should only be one folder in a package cache (got in C:\\Users\\Administrator\\AppDainfog report with the information provided in "C:\\foo\\bundle\\src\\main\\webapp\\yarn-error.log".
To resolve the issue, clear the yarn cache by running the following command:
.