Skip to content

Conversation

@alxtkr77
Copy link
Member

📝 Description

This PR removes all deprecated APIs that were marked in version 1.8.0 for removal in 1.11.0, as per MLRun's deprecation policy.

All deprecated APIs have been removed from the data-flows components including model monitoring, serving, and execution context APIs.


🛠️ Changes Made

API Removals:

  • Model Monitoring API: Removed rebuild_images parameter from enable_model_monitoring() endpoint
  • Model Endpoints API: Removed snake_case query parameters:
    • endpoint_id (old) → use endpoint-id (kebab-case)
    • feature_analysis (old) → use feature-analysis (kebab-case)
  • Serving Runtime: Removed batch parameter from ServingRuntime.set_tracking() method
  • Execution Context: Removed MLClientCtx.get_cached_artifact() method
  • Launcher: Removed legacy uncompressed serving spec handling for pre-1.8.0 clients

Documentation:

  • Updated docs/serving/custom-model-serving-class.md to reflect new set_tracking() signature

✅ Checklist

  • I updated the documentation (if applicable)
  • I have tested the changes in this PR

🧪 Testing

Unit Tests (All Passing):

  • ✅ Model endpoints API tests (1/1 passed)
  • ✅ Model monitoring API tests (3/3 passed)
  • ✅ Serving tracking tests (57/57 passed)

Verification:

  • Verified no internal code uses deprecated APIs
  • Verified no templates/configs reference deprecated APIs
  • Linting passes cleanly

Coverage:
Existing tests verify the replacement APIs work correctly. No new tests needed for removals.


🔗 References

  • Jira Ticket: ML-11435
  • Parent Feature: ML-11321 (1.11.0 Deprecations)
  • Changelog: docs/change-log/index.md already documents these deprecations

🚨 Breaking Changes?

  • Yes (explain below)

Breaking Changes:

Old API (Removed) New API (Use Instead)
enable_model_monitoring(rebuild_images=True) DELETE endpoint first, then PUT with new image
delete_model_endpoint(endpoint_id=...) Use endpoint-id (kebab-case) parameter
get_model_endpoint(endpoint_id=..., feature_analysis=...) Use endpoint-id and feature-analysis (kebab-case) parameters
ServingRuntime.set_tracking(batch=100) Remove parameter (was no-op since 1.8.0)
context.get_cached_artifact(key) Use context.get_artifact(key)
Pre-1.8.0 serving spec format All clients must be >=1.8.0 for compression support

Migration:
Users already received deprecation warnings since 1.8.0. These APIs have been marked as deprecated for 3 releases per MLRun policy.


🔍️ Additional Notes

Files Modified:

  • server/py/services/api/api/endpoints/model_monitoring.py
  • server/py/services/api/api/endpoints/model_endpoints.py
  • mlrun/runtimes/nuclio/serving.py
  • server/py/services/api/launcher.py
  • mlrun/execution.py
  • docs/serving/custom-model-serving-class.md

Impact:
This is part of the standard deprecation cycle. Users have had 3 releases (1.8.0, 1.9.0, 1.10.0) to migrate away from these APIs.

Remove deprecated APIs marked in 1.8.0 for removal in 1.11.0:
- rebuild_images parameter from model monitoring endpoint
- endpoint_id/feature_analysis snake_case parameters from model endpoints API
- batch parameter from ServingRuntime.set_tracking()
- MLClientCtx.get_cached_artifact() method
- Legacy uncompressed serving spec handling

Reference: ML-11435
@alxtkr77 alxtkr77 force-pushed the ML-11435-dataflows-deprecations branch from f0712c8 to a9c9067 Compare December 25, 2025 10:13
@assaf758 assaf758 merged commit e14a9ac into mlrun:development Dec 28, 2025
15 of 16 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants