Open OnDemand 4.0 Release

Open OnDemand 4.0 is now available. Thank you to all of the community members who contributed code, suggestions, bug reports, and other assistance across the project.

We especially want to thank:

Leonard Wisniewski, Aday Bujeda, and Michael Reekie at Harvard University: Institute for Quantitative Social Science.

Robin Karlsson and Simon Westersund at CSC - IT Center for Science.

Please see the Acknowledgements section in the release notes for more details on their contributions as well as those of other community members.

Release Overview

This release brings significant enhancements, new features, breaking changes, and dependency updates. Please see the Special Note and Breaking Changes for important notices about this release.

Special Note

We are releasing version 4.0 with four known bugs, two of which are fully related to the Project Manager. The Project Manager is turned off by default, so we hope this impact is minimal. We are actively working on the bug fixes and hope to have a 4.0.1 patch sooner than later. See below for more details on the bugs:

  • #4048 The path_selector widget continues to spin even after the directory options are shown. The impacted applications are batch connect apps, such as VS Code, and the Project Manager.

  • #4052 The Project Manager template creation is broken. Only when creating a project from a template do issues arise. Creating a new project works as expected.

  • #4053 The Project Manager icon picker is broken when creating a new project.

  • #4056 The batch connect cards incorrectly display cores. For example, if a user submits a 4 core job, the job will run with 4 cores as selected, but it will only display 1 core. As a reference point for impact, we received one OSC support ticket from our hundreds of users.

Breaking Changes or Changes That May Impact Your Site

  • Autoloading during initialization has been removed.

  • Configurations whitelist and blacklist have been replaced.

  • Batch connect form IDs are now lowercase.

  • All configuration files must be root owned.

  • NavConfig has been removed.

Deprecations

  • POLL_DELAY is replaced by documented configurations.

Dependency Updates

  • Ruby 3.3 for RHEL 8 & 9 Only

  • NodeJS 20

  • Passenger 6.0.23

  • NGINX 1.26.1

  • ondemand-dex 2.41.1

Several Highlights of New Features and Enhancements

  • Support for required announcements and additional support for dismissible announcements.

  • Updates to the file editor interface for a seamless, consistent design.

  • Enhanced XDMoD job efficiency widget with metrics for CPU, memory, and elapsed time.

  • Users can now edit and delete saved settings for interactive applications, which improves control and customization.

  • Interactive application forms can display additional text headers for better guidance.

  • The nginx_clean method now removes PUNs and files for disabled users, which enhances system operations.

Additional Resources

For a detailed list of changes, please refer to our v4.0 Release Notes or consult the Changelog for a complete overview of the release.

We recommend testing the upgrade on development or test environments before applying it to production systems. Please see the Upgrade Instructions for step-by-step upgrade directions.

We extend our heartfelt thanks to all community contributors for their invaluable support in making this release possible.

3 Likes

Open OnDemand 4.0.1 is now available. Thank you to all community members who contributed code, suggestions, bug reports, and other assistance across the project.

Release Overview

This release contains several bug fixes, including the four known bugs from Open OnDemand 4.0.0. For a full list of changes, please see the changelog. To compare versions 4.0.0 and 4.0.1, please see this link.

Bug Fixes from Known 4.0 Bugs

  • The path_selector widget, used in VS Code and the Project Manager, no longer spins indefinitely. Previously, the widget continued to spin even after directory options appeared.

  • The Project Manager template creation now works correctly. Previously, only new projects could only be created.

  • The Project Manager’s icon picker now functions as expected. Previously, icons could not be selected for projects.

  • Batch connect cards now accurately display node and core allocations. Previously, they incorrectly showed only 1 core, regardless of the actual submission.

Bug Fixes

  • Native VNC connection tabs now open as expected.

  • The path_selector widget correctly handles files with spaces, resolving URL encoding issues.

  • OnDemand now properly accounts for usernames that are entirely numeric.

  • Usernames with dots (‘.’) can now successfully launch applications.

  • Applications with external URLs now function properly, with the menu bar using the external URL instead of a relative URL. This prevents unsafe redirects in OnDemand.

  • The Files application now properly handles files containing non-UTF-8 characters.

  • Open OnDemand packages now require proc-ps, correcting an issue with sites operating in containerized environments.

Open OnDemand 4.0.2 is now available. Thank you to all community members who contributed code, suggestions, bug reports, and other assistance across the project.

Release Overview

This release includes several bug fixes and usability improvements. For a full list of changes, please see the changelog. To compare versions 4.0.1 and 4.0.2, please see this comparison link.

Bug Fixes

  • File transfer failures now correctly display the error modal.

  • Plugins now load correctly, resolving fatal errors in previous versions.

  • Active navigation link colors now display as expected. Links can be reconfigured to custom colors.

  • bc_desktop sessions now launch with a safer PATH, improving environment issues caused by dbus-launch and Python conflicts.

  • The “Select Path” button in the path_selector widget now responds to internationalization (i18n).

  • Empty title entries in manifest.yml files no longer cause issues in the navigation bar.

  • Clusters with hyphens in their name now correctly respond to dynamic batch connect directives.