Release notes
Version 1.0.14 (February 3rd, 2026)
New Features
- Added support for the Scoring Runtime in H2O Driverless AI 2.3.2
Fixes
- Security vulnerability fixes for several components.
- [Storage] Added a retry workaround to handle intermittent Authz errors.
Python client v1.4.11
Fixes
- Updated the batch service URL to remove the deprecated
/deploymentServerpath.
Version 1.0.13 (January 22nd, 2026)
New Features
- Added support for the Scoring Runtime in H2O Driverless AI 2.2.5
Fixes
- Applied vulnerability fixes for Runtimes, Monitoring Aggregator, Monitoring Frontend and Runtimes Processors.
Version 1.0.12 (January 8th, 2026)
New Features
- Added support for the Scoring Runtime in H2O Driverless AI 2.3.1
Fixes
- [Deployment Server] More flexible workspace labeling for better control of pods.
- Applied vulnerability fixes for Monitoring Aggregator, Monitoring Frontend and Runtimes.
Version 1.0.11 (December 17th, 2025)
Fixes
- [Monitoring Frontend] Remove the need for Kubernetes CLUSTER ROLE by using SQL validation with schema-level access control.
- [Monitoring Frontend] Hide listed dashboards and datasets in case users have no access to those.
Version 1.0.10 (December 10th, 2025)
Features
- [Deployment Server] Added support for resource labels and annotations for Workspace-Enabled Dynamic Engines, and extended the same labels and annotations to batch scoring jobs.
- [Deployment Server] Integrated cloud-specific labels, annotations, and environment with MLOPs ecosystem.
- [Deployment Server] Introduced automated migration from
app.mlops.h2o.ai/project-idto the newcloud.h2o.ai/workspace-idlabel standard. - [Telemetry] Supporting new telemetry API.
- [Superset] Improving security with configurable content security policies.
- [Superset] Improved Keycloak admin-role user connection handling.
- [Migrator] Improved NaN handling and type conversion during scoring and metadata processing.
- [Migrator] Improving migration performance.
Fixes
- Security vulnerability fixes for several components.
Python client v1.4.9 and v1.4.10
Fixes
- Enhanced logical type detection and improved distinct count handling in numerical/categorical type inference for monitoring options.
Version 1.0.9 (November 20th, 2025)
Fixes
- Security vulnerability fixes for Monitoring Frontend, Monitoring Aggregator, Deployment Server, Batch Scorer, Security proxy, Proxy, Storage, gPRC Gateway and Telemetry.
- [Monitoring Frontend] Addressed an issue causing excessive memory consumption by the Superset worker.
- [Deployment Server] Fixed an issue when baseline with name and type was send without data.
- [Deployment Server] Use correct
ErrEntityNotFoundErrorwhen deployment is not found in storage. - [Proxy] Adding support for new telemetry fields.
Python client v1.4.8
Fixes
- Fixed an issue with duplicated infinity for baselines and aggregates.
Version 1.0.8 (November 12th, 2025)
Fixes
- Addressed a security vulnerability in Monitoring Frontend.
- Upgraded the base Python version for MLFlow Runtimes.
Version 1.0.7 (November 11th, 2025)
Fixes
- Applied vulnerability fixes for Monitoring Frontend, Artifact Fetcher, Deployment Updater and Runtimes.
Version 1.0.6 (November 7th, 2025)
Fixes
- [Migrator] Introduced a deployment migration path for cases where only telemetry was enabled without monitoring. Fixed an issue preventing migration when the project owner had been removed from OIDC.
- [Deployment Server] Added validation logic to prevent saving baseline data to the database with duplicated "infinity" values appear at both the beginning and the end.
- [Storage] Fixed user table migration to preserve old_id mapping for cross-service user reference migration and correctly update deployment owner data.
Version 1.0.5 (November 3rd, 2025)
Fixes
- Applied vulnerability fixes for Go based projects.
Version 1.0.4 (October 31st, 2025)
New Features
- Added support for the Scoring Runtime in H2O Driverless AI 2.3.0
Version 1.0.3 (October 29th, 2025)
This release includes various component bug and security fixes.
Features
- [Deployment Server] Automatically terminates long-unhealthy deployments for smoother operations.
- [Deployment Server] Allows reusing endpoint paths when a workspace is deleted or archived.
- [gRPC Gateway] Ensures MLOps API events are recorded in the audit trail with resource and request parameter details.
Fixes
- [Aggregator] Fixed bin edge and count calculation errors to ensure accurate metrics.
- [Deployment Server] Cleaned up stale log entries and correctly marked inactive deployments as terminated.
- [Deployment Server] Improved handling of numeric edge cases by filtering invalid values.
- [Storage] Restricted bootstrap to MLOps-related actions for stable initialization.
- [gRPC Gateway] Ensured MLOps API events are recorded in the audit trail with action values registered in Authz when available.
Python client v1.4.7
Fixes
- Disabled model registration during experiment linking to prevent unintended registrations.
Version 1.0.2 (October 10th, 2025)
This release includes various vulnerability fixes.
Fixes
- [Monitoring Migrator] Fixed an issue where migration failed when duplicate columns differed by letter case or data type.
- [Monitoring Frontend] Added support for alert and report notifications.
Version 1.0.1 (September 23rd, 2025)
Fixes
This release includes a vulnerability fix.
- [Monitoring Frontend] Applied vulnerability fixes.
Version 1.0.0 (July 31, 2025)
This release marks a significant milestone in the evolution of H2O MLOps. It introduces the following major changes:
- The legacy Wave-based UI and Admin Analytics app have been replaced by the unified H2O AI Cloud user interface.
- A fully featured and user-friendly Python client is now available, replacing the previously generated client.
- The Deployer component has been rewritten to address previous architectural limitations.
- A new monitoring solution has been added, based on aggregated data and Apache Superset.
See the full release notes below for a complete list of new features, and fixes.
New Features
- Introduced a new native user interface that replaces the legacy H2O Admin Analytics Wave app and the H2O MLOps Wave app.
- Added a new model monitoring solution based on aggregated data and Apache Superset. To learn more, see Model monitoring.
- Added support for using CSV files with headers as sink (input) for batch scoring jobs. For configuration details, see Batch scoring.
- Enabled support for using a public S3 bucket as the source for batch scoring jobs.
- Integrated H2O MLOps with H2O AI Cloud’s Authz service for authorization control.
- Integrated H2O MLOps with H2O AI Cloud’s Workspace service. All projects have been migrated to Workspaces.
- Integrated H2O MLOps with H2O AI Cloud’s User service.
- Added the ability to manually retry failed deployments.
- Added support for
AWS_MSK_IAMandSCRAMKafka authentication methods. - Added support for forwarding input scoring data to customer-specific Kafka topics.
- Integrated H2O MLOps with the Audit Trail component. All API interactions from H2O MLOps components are captured and sent to the Audit Trail service for processing. Users can view the collected data in the Audit Trail UI.
- Upgraded the MOJO library used in runtimes to version 2.8.9.1.
- Added support for H2O Driverless AI runtimes:
- 1.10.7.4
- 1.10.7.5
- 2.2.3
- 2.2.4
- Added support for specifying security contexts for all dynamically created pods, including batch scoring jobs, artifact fetchers, proxies, and runtimes.
- Added support for specifying affinity and tolerations in batch scoring jobs.
- Introduce competition statistics for batch scoring jobs.
- Introduce startup timeout option for batch scoring jobs and associated scorers.
Fixes
- Applied security fixes across all components.
- Allowed additional input fields beyond the expected schema in batch scoring jobs.
- Resolved Azure download timeout errors when Azure is used as the data source in batch scoring jobs.
- Added support for table names with special characters when using JDBC as the data source in batch scoring jobs.
- Fixed a segmentation fault that occurred during batch scoring when GCP was used as the data source.
- Corrected the supported MIME types for JDBC output sinks.
- Deployments are no longer processed sequentially.
- Prevented segmentation faults caused by concurrent hash generation in the security proxy component.
- Instead of failing whole batch scoring jobs when scoring fails, write the affected entry to error file and continue.
Python client v1.4.6
Fixes
- Added retry logic for workspace creation when personal workspaces cannot be resolved.
- Ensured additional fields are passed to MLOps APIs.
- Reverted unintended exposure of the deployment artifacts service.
Python client v1.4.5
Fixes
- Fixed an issue with preparing monitoring data for monitoring records.
Python client v1.4.4
Fixes
- Ensured that an isolated
httpxclient with a limited connection pool is used internally for native scorer support.
Python client v1.4.3
New features
- Exposed configurable API timeout settings.
Fixes
- Prevented retrieval of large experiment and dataset metadata by allowing retrieval based on user inputs only.
Python client v1.4.2
Fixes
- Added support for accepting
job_start_timeoutwhen creating batch scoring jobs.
Python client v1.4.1
Fixes
- Added support for initializing the client by passing
token_provideralong withh2o_cloud_url.
Python client v1.4.0
New features
- Released the official H2O MLOps Python client (
h2o-mlops), available on PyPI, which fully replaces the previously generated Python client. The generated client is no longer supported. For usage details, see H2O MLOps Python client. - Added native support for accessing common scorer endpoints.
Removed features
- Removed
gateway_urlandtoken_providerfrom Client constructor. Users should useh2o_cloud_urlinstead.
Version 0.70.7 (May 30, 2025)
New Features
- Added support for the Scoring Runtime in H2O Driverless AI 2.1.0
Version 0.70.6 (May 29, 2025)
Fixes
- [Python Client] Unpinned Python package dependencies.
- [Wave UI] Fixed security vulnerabilities.
Version 0.70.5 (Apr 25, 2025)
Fixes
- Fixed an issue where batch scoring jobs failed when Azure was used as the input data source.
Version 0.70.4 (Apr 8, 2025)
Fixes
- [Deployer] Added missing service accounts to existing deployments during deployment updates.
Version 0.70.3 (Apr 3, 2025)
Fixes
- Fix deployer memory leak
Version 0.70.2 (Apr 3, 2025)
Fixes
- Ensured that the Driverless AI Scoring Pipeline does not run under the root user.
- Resolved regression that prevented scoring on the Java runtime by upgrading to the latest MOJO library.
- Fixed an issue where the Storage connection was incorrectly closed in the deployment server.
Version 0.70.1 (Mar 31, 2025)
New Features
- [Runtimes] Added support for H2O Driverless AI v2.0.0.
Fixes
- Added missing component versions to Go-based H2O MLOPs components.
- [Batch Scoring] Added missing security context to batch scoring job pods.
- [Security] Fixed newly discovered vulnerabilities.
- [Deployer] Added missing access token for the
readArtifactAsAdminoperation. - [Helm] Added configuration to refresh intervals for JWKS keys in service-to-service authentication. This ensures timely updates, regardless of Cache-Control headers.
Version 0.70.0 (Mar 13, 2025)
New features
- Added support for Workload Identity in all MLOPs components.
- Enabled IAM support across all MLOps components.
- Replaced SPIFFE with service accounts for service-to-service authentication.
- Removed the custom TLS implementation. Users are encouraged to use a service mesh, such as Istio, to secure in-cluster communication.
- Introduced native Batch Scoring implementation. Users can access this capability through the Python client and the new user interface.
- Launched a new user interface that runs alongside the existing one for the upcoming release.
- [Helm] Moved global CORS configuration to Helm.
Fixes
- Fixed vulnerabilities across all MLOps components.
- [Storage] Updated to return a
Not FoundgRPC error code when a dataset cannot be found in the storage database. - [Monitor Proxy] Updated to pass secrets instead of plain text for Kafka credentials.
- [Helm] Fixed automatic cleanup of the updater job.
- [Wave UI] Prevented redirection to projects while filling out the Create deployment form.
Version 0.69.7 (Feb 17, 2025)
Fixes
- [Deployer] Resolved an issue where resource limit specifications were not correctly applied to runtime processors.
Version 0.69.6 (Feb 13, 2025)
Fixes
- [Security] Applied security patches from the latest major release.
- [Deployer] Fixed an issue by adding the missing volume mount for Kafka TLS-enabled deployments.
Version 0.69.5 (Feb 6, 2025)
Fixes
- [Wave App] Prevented redirection to
#projectswhile filling out thecreate deploymentform.
Version 0.69.4 (Jan 21, 2025)
Fixes
- [Helm Chart] Updated the InfluxDB network policy to allow connections from pods with any of the required labels.
Version 0.69.3 (Jan 17, 2025)
Fixes
- [Wave UI] Fixed an issue where Driverless AI version 1.11.1.1 was incorrectly displayed as 1.11.1 in the UI.
Version 0.69.2 (Jan 14, 2025)
This release includes new features and fixes.
New features
- [Deployment Updater] Added functionality to update the image repository during deployment update jobs.
Fixes
- [Deployer] Fixed
CVE-2023-3635.
Version 0.69.1 (Jan 9, 2025)
This release includes a new feature.
New features
- [Runtimes] Added support for the Driverless AI runtime version 1.11.1.1.
Version 0.69.0 (Dec 19, 2024)
This release includes new features and fixes.
New features
- [Runtimes] Added support for MLflow Model Scorer runtime for Python 3.11 and 3.12, and Dynamic MLflow Model Scorer runtime for Python 3.12.
- [Runtimes] Added support for H2O Driverless AI runtime version 1.10.7.3.
- [Runtimes] Exposed Kubernetes readiness probe on deployments.
- [UI] Replaced bcrypt with PBKDF2 hashing when creating deployments with the
Passphrase (Stored Hashed)security option. - [Deployer] Introduced PBKDF2-based passphrase hashing for improved security.
- [Deployer] Added support for Generic Ephemeral Volumes in the Runtimes.
- [Deployer] Introduced
/readyzreadiness probe endpoint for dynamically deployed runtimes. - [Deployer] Introduced a pod disruption budget for enhanced stability.
- [Helm] Enabled JVM config passing to the monitoring proxy.
- [Helm] Added support for configuring limits and JVM settings in the deployer.
- [Helm] Defined
MLOPS_WAVE_APP_URLas an environment variable for better configuration.
Fixes
- [UI] Ensured UI accessibility even when listing deployments fails.
- [UI] Fixed the issue where signing in from the access denied page resulted in an
Missing parameters: id_token_hinterror. - [Monitor Proxy] Stopped sending
TransactionTransmissionevents to downstream transmitters whenenableTransactionisfalse. - [Storage] Removed storage cleanup cron job and implemented it within a thread of storage itself.
- [Helm] Ensured proper RBAC configuration when multiple groups are specified.
- [Helm] Removed legacy
LOCALandMIGRATEmode code. - [Runtimes] Fixed memory leak in MOJO2 runtimes by upgrading the internal MOJO2 library.
- [Deployer] Ensured that stale deployments will be redeployed.
- [Deployer] Skipped routing migration in cases of errors not related to deployment migration.
- [Deployer] Used response header modifier instead of request header modifier for CORS.
- [Deployer] Added configurable Kubernetes client timeout for better performance and reliability.
Python client v1.2.0
New features
- Added support for SSL settings via the Client constructor.
- Added support for PBKDF2 hashed security option.
Fixes
- Added
ValueErrorfor missing or invalid protocol in the gateway URL. - Configured SSL settings for the functions
get_capabilities,get_sample_request, andget_schemasince they access deployment endpoints.
Version 0.68.0 (Nov 05, 2024)
This release includes new features and fixes.
New features
- [UI] Enabled model and model version deletion.
- [UI] Enabled to use the default deployment security option from the backend.
- [UI] Added support for H2O Driverless AI runtime versions 1.10.7.2 and 1.11.1.
- [Storage] Storage only supports blob storage from this release onwards. A one-time migrator job was introduced to migrate all the storage data from K8S PVC to blob storage to support seamless upgrades for users.
- [Telemetry] The MLOps-Telemetry component is no longer running as a cron job; it is now a long-running microservice that publishes event data at scheduled intervals.
- [Helm] MLOps storage can be configured to use blob storages from any of the 3 main clouds AWS, Azure and GCP. Minio is also supported for on-premise installations.
- [Helm] Added
H2O_SCORER_MODEL_LOADING_MODEset to "subprocess" across all MLOps Python-based runtimes. - [Helm] Introduced a migration job for transferring persistent storage to cloud platforms, now supporting Minio and Azure Blob.
- [Helm] Introduced a
SCHEDULER_INTERVAL_SECONDSenvironment variable to configure the interval of mlops-telemetry events publishing. - [Deployer] Introduced Vertical Pod Autoscaling (VPA) support.
- [Deployer] Exposed easy access to the security options available in the cluster.
- [Deployer] Restructured environment security options:
- Activated security options list
- Configurable default security option
- [Deployer] Introduced the No-Security option.
Fixes
- [UI] Resolved an error occurring when attempting to view experiment details for experiments with missing metadata.
- [UI] Made the maximum selectable count for deployment replicas configurable.
- [UI] Removed support for MLflow Model Scorer and Dynamic Model Scorers for Python 3.8.
- [UI] Removed support for HT Flexible Runtimes for Python 3.8, including both GPU and CPU variants.
- [gRPC Gateway] Updated
/healthzto return a 200 status if at least one health check passes, fixing an issue where the gateway would restart if any service was unhealthy. - [Helm] Removed Python 3.8 support for HT and MLFlow runtimes.
- [Helm] Removed the
EnableUserExternalIDUpdateenvironment variable from storage for simpler configuration. - [Helm] Added a
-jobsuffix to theapp.kubernetes.io/component label for the monitoring backend job to improve component labeling. - [Helm] Updated rclone configurations to enhance compatibility with Google Cloud Storage (GCS).
- [Helm] Set the telemetry service’s replica count to one to optimize resource usage.
- [Helm] Changed the telemetry scheduler’s default interval to 300 seconds for more efficient scheduling.
- [Storage]
IDP_ID(i.e. keycloak/ Okta ID) is now used as the primary key for the Users table in MLOps Storage. The username is also not a unique field anymore. Existing user data will be migrated accordingly by the Storage itself when it's spinning up. [Deployer] Only "internal" grpc status are now logged at the ERROR level.
Python client v1.1.2
New features
- Introduced two SSL settings (
verify_sslandssl_cacert) that can be configured via the Client Constructor to improve certificate security.
Python client v1.1.0
New features
- Introduced a timeout parameter (default: 5 seconds) for MLOpsScoringDeployment's methods:
get_capabilities,get_sample_request, andget_schema. - Added support for creating deployment with token-based authentication as a security option.
- Enabled model deletion.
- Enabled the option to unregister an experiment from a model.
- Introduced the
disabled_securityoption to manage deployments with No-Security.
Fixes
- Improved handling of missing deployment attributes (security and monitor) in backend responses.
- Upgraded the minimum supported Python version to 3.9.
Python client v1.0.1
Fixes
- Improved handling of missing deployment attributes (security and monitor) in backend responses.
Version 0.67.4 (Oct 10, 2024)
This release includes various fixes.
Fixes
- [Helm] Gateway creation is now skipped when
Values.gatewayApi.createis set to false. - [Helm] You can now specify extra ingress for Influx.
Version 0.67.3 (Oct 01, 2024)
This release includes new features and fixes.
New features
- [Runtimes] Added support for the Driverless AI 1.11.1 Python scoring pipeline.
Fixes
- [Security] Fixed critical vulnerabilities on Java-based rest scorer and monitoring proxy.
- [Helm] Ensure that registry specification on each image has higher priority over the global image registry configuration.
Version 0.67.2 (Sep 19, 2024)
This release includes new features and fixes.
New features
- [Runtimes] Added support for the Driverless AI 1.10.7.2 Python scoring pipeline.
Fixes
- [Helm] Removed hard-coded dev/vorvan prefix.
- [Helm] Influx network policy was missing a specific label which lead to cleanup job not running.
Version 0.67.1 (Sep 13, 2024)
This release includes various fixes.
Fixes
- [Monitoring Backend] Updated Dockerfile to use numerical user ID, preventing false warnings in systems that check for root access.
- [Drift] Fixed an issue where the worker image could not find the
datatabledependency.
Version 0.67.0 (Sep 02, 2024)
This release includes various vulnerability fixes.
New features
- [Monitor Proxy] Per project monitoring data retention period can be set for Influx DB during the MLOps installation or upgrade.
- [UI] Added the functionality to log out from the Wave app.
- [UI] Added support for new HT Flexible Runtimes for Python
3.10, including GPU and CPU variants. - [UI] Added support for DAI runtime versions
1.10.6.3,1.10.7.1, and1.11.0. - [UI] Added support for MLflow Model Scorer and Dynamic Model Scorers for Python
3.10and3.11. - [Deployer] Added support for token based authentication for deployments.
- [Runtimes] Added support for DAI runtime versions
1.10.6.3,1.10.7.1, and1.11.0. - [Runtimes] Added support for new HT Flexible Runtimes for Python
3.10. - [Helm Chart] Added component configuration support for applying tolerations, node selectors, and affinity settings to cron jobs.
- [Helm Chart] Added CA certificate support to the API Gateway deployment.
- [Helm Chart] Replaced Ambassador with Gateway API due to the removal of Emissary.
Fixes
- [UI] Removed the functionality for importing models from external model repositories.
- [UI] Removed the ability to upload experiments as serialised Python (
.pkl/.pickle) files. - [UI] Disallowed the creation of tags with commas.
- [UI] Reduced the timeout for notification bars.
- [UI] Fixed the issue where a red cross appeared when registering a model shortly after creating an experiment.
- [UI] Removed support for DAI Python runtimes for
1.10.4.3and older versions. - [UI] Removed support for MLFlow Model Scorer for Python
3.6and Python3.7. - [Runtimes] Removed support for DAI Python runtimes for
1.10.4.3and older versions. - [Runtimes] Fix critical vulnerabilities in all runtimes except DAI Python based one.
- [Runtimes] Fix critical and high vulnerabilities in rest scorer.
- [Helm Chart] Corrected the nodeSelector YAML formatting.
- [Helm Chart] Renamed environment variable
STORAGE_URLtoAPI_GATEWAY_URLin the Wave app. - [Helm Chart] Updated
H2O_WAVE_POST_REDIRECT_URLto resolve "Page Not Found" errors when logging out from the Wave app. - [Helm Chart] Updated the Wave app secret
H2O_WAVE_OIDC_END_SESSION_URLfor improved logout functionality. - [Helm Chart] The
enable_user_externalid_updatesetting is now configurable. - [Helm Chart] Exposed resource requests and limits for monitoring-drift, model-ingest, and api-gateway components.
Python client v1.0.0
Removed features
- The
external_registrypackage has been removed.
Version 0.66.1
This release includes various vulnerability fixes.
New features
-
Released Base Python Scorer v1.2.0 (BYOM).
-
Released Python based runtimes v1.2.0 (BYOM).
-
Released HT runtime v1.2.0 (BYOM).
-
Released MLflow runtime v1.2.0 (BYOM).
Version 0.66.0 (June 04, 2024)
This release includes new features, improvements, bug fixes, and security improvements.
Announcement
This version of H2O MLOps adds optional role-based access control (RBAC). This feature relies on two RBAC configurations: one for the front end (FE) and the other for the back end (BE). When using RBAC, both configurations must be set up identically to ensure proper functionality and a seamless user experience.
The following is an illustrative configuration for both FE and BE RBAC. Note that in this example, it is assumed that "admin" is included in the user access token groups claim. However, it is important to customize this configuration based on your specific requirements at the time of deployment.
apiGateway:
config:
# -- Log verbosity.
logLevel: "debug"
authorization:
# -- Whether authorization is enabled.
enabled: true
# -- JWT claim key which contains the role/group information.
userJwtClaim: "groups"
# -- List of role/group values that should have access to MLOps API Gateway as an array.
allowedUserRoles: ["admin"]
waveApp:
authorization:
# -- Whether authorization is enabled.
enabled: true
# -- JWT claim key which contains the role/group information.
userJwtClaim: "groups"
# -- Comma separated list of role/group values that should have access to MLOps FE.
allowedUserRoles: "admin"
# -- Separator character for role/group values in JWT claim.
userRoleValueSeparator: ",