Skip to content

Conversation

kwokcb
Copy link
Contributor

@kwokcb kwokcb commented Sep 12, 2025

Updates

  • Fix the packages used for MaterialXTest and MaterialXView so that they are compatible with the current version of NodeJS used (16.20.2).

  • The default emscripten 2.0.20 utility script sets NodeJS version to a version which is too old and will result in possible incompatibilities.

  • Lock the packages versions until such time as NodeJS version is changed.

    • This will avoid new package versions from accidently being installed (via npm install) which has already occurred.
    • For example the build / tests / installs using packages for NodeJS 18 will not work as the current code is not compatible with changes from 16 to 18.
  • Note This does not try to bump any version of emcripten or NodeJS, it just fixes so that the appropriate packages are now used.

  • Fixes: Web Viewer : Packages are incompatible using Node version 16. #2547, WebPack Packages are incompatible (won't run) for MaterialXView #2545

Tests

  • Cleaned out node modules and rebuild locked package manifest.
  • Rebuilt, tested and run on Windows local and via CI. CI no longer shows any warnings / error messages.

Documentation

  • Updated with appropriate NodeJS version information
  • Fix documentation for emscripten version as not any verson can be used. Note the locked version require.

@kwokcb kwokcb requested a review from ashwinbhat September 12, 2025 22:04
@kwokcb
Copy link
Contributor Author

kwokcb commented Sep 12, 2025

@ashwinbhat , @jstone-lucasfilm : I'm not sure if it's too late for this change, but I think it would be better to patch this to have a known safe version of the packages used for the JS build.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Lock these to avoid version "creep". New versions can make it so that tests won't run.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fix this as version "creep" has already occurred. This is 100% compatible with the NodeJS version we are locked on for builds (16.20.2). I set this to test locally on Windows.

@@ -5,8 +5,8 @@
@rem Edit the following paths to match your local locations for the Emscripten and MaterialX projects.
set EMSDK_LOCATION=C:/GitHub/emsdk
set MATERIALX_LOCATION=C:/GitHub/MaterialX
call %EMSDK_LOCATION%/emsdk.bat install latest
call %EMSDK_LOCATION%/emsdk.bat activate latest
call %EMSDK_LOCATION%/emsdk.bat install 2.0.20
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should never have been used as newer versions can be incompatible and not build the C++ code due to API changes.

@jstone-lucasfilm
Copy link
Member

This change sounds very reasonable to me, @kwokcb, though since it's a significant number of edits, I'd feel more confident waiting until 1.39.5 to move forward with this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Web Viewer : Packages are incompatible using Node version 16.
2 participants