Skip to content

Release Notes - Version 2.1.0

Release Date: July 9, 2026

🎉 Highlights

Version 2.1.0 introduces workload-fit intelligence — a new capability that lets users and the platform preview how a prospective job maps to available queues before submission, including per-queue eligibility, resource availability, and cost estimates. Administrators gain a redesigned unified dashboard for tracking job activity across all clusters. The API backend is upgraded to Python 3.12 and the frontend receives an Angular security patch. An extensive type-safety refactoring effort covers most write paths in the UI, reducing the risk of payload mismatches. GPU metrics documentation and updated application guides complete the release.


🚀 New features

🔍 Workload-fit queue selector

Users submitting workloads can now see how their job maps to each available queue before committing to a submission. The new workload-fit API returns per-queue eligibility, free resource counts, cost estimates, and a consolidated status value. The UI consumes this endpoint in the queue selection step, displaying a wait-column indicator so users can choose the best queue at a glance. Limit enforcement was also tightened: reducing a queue's or cluster's limits now correctly re-evaluates and trims any team allocations that would exceed the new cap.


📊 Redesigned admin dashboard

The admin dashboard has been redesigned to present job charts from all clusters in a single unified view with consistent loading states across all panels. A new unified jobs dashboard API endpoint powers these charts, aggregating job data across clusters in a single call.


🔧 Improvements

  • Python 3.12 upgrade — The API backend was upgraded from Python 3.10 to 3.12, aligning it with the latest supported runtime for improved performance and long-term security support.
  • OpenAPI typed write DTOs — Write paths for applications, datasets, coupons, billing accounts, ACL teams, file uploads, user registration, and queue estimations were migrated to strongly typed OpenAPI-generated DTOs, reducing runtime errors and improving type safety throughout the UI.
  • FormHelperService modernization — The form helper service was systematically refactored to remove reflective model mutations, extract reusable validation utilities, and add characterization tests, making form handling more predictable and maintainable.
  • Exact team name filtering — Team name search now supports an exact-match mode alongside the contains filter, giving administrators finer control when looking up teams.
  • Invitation refresh on Okta sign-up — Expired invitations are automatically refreshed when a user completes sign-up through Okta, removing a common onboarding blocker.
  • Ansible-core 2.21.1 upgrade — Infrastructure automation dependencies were updated to fix Python 3.12 compatibility warnings and deprecation errors, and missing Ansible collections were added to requirements.yml.
  • File download billing removed — The file download billing flow was removed after the corresponding API pricing endpoint was retired, simplifying the file management experience.
  • Global stylesheet extraction — Material table-list styles were moved from the root stylesheet into dedicated SCSS partials, improving maintainability and reducing unintended style overrides.

🐛 Bug fixes

  • Fixed application enabled toggle displaying the wrong state after a failed API update — the toggle now always reflects the server's confirmed state
  • Fixed sending an empty categories array when clearing application categories on edit
  • Fixed end-to-end provider team scenario not filling the maximum execution time field on the resources step, which masked submission regressions
  • Fixed Kubernetes workloads being accepted with a storage size of zero or less — a validation rule now rejects such configurations
  • Fixed team description and user email columns being too narrow to hold values from the Carbonara data source

🔒 Security

  • Angular 20.3.25 — Frontend framework bumped to address CVE-2026-54267
  • SonarQube blockers resolved — Prometheus group validator and CodeceptJS typing issues flagged as blockers were fixed
  • SonarQube CI on develop — A SonarQube workflow now runs on every merge to the develop branch, generating coverage reports, JUnit output, and downloadable scan artifacts

Documentation updates

  • GPU metrics guide — New documentation covering GPU metrics available in queue and cluster views
  • Docker interactive app guide updated — The Docker interactive application example was updated to reflect automatic SSH installation, removing manual setup steps
  • JupyterLab guide updated — Manual SSH setup instructions were removed from the JupyterLab application guide, aligning it with the current platform behaviour

← Back to What's New | Previous Release (v2.0.0) → | Next Release (v2.2.0) →