Skip to content

Conversation

@danielperezz
Copy link
Contributor

📝 Description

Implement get_hub_step new SDK and new HubStep class as part of supporting this new hub asset in MLRun.


🛠️ Changes Made

  • New HubAsset class to implement all the common hub assets functionalities
  • Make HubModule inherit from HubAsset
  • New HubStep class which also inherits from HubAsset
  • new get_hub_step SDK

✅ Checklist

  • I updated the documentation (if applicable)
  • I have tested the changes in this PR
  • I confirmed whether my changes are covered by system tests
    • If yes, I ran all relevant system tests and ensured they passed before submitting this PR
    • I updated existing system tests and/or added new ones if needed to cover my changes
  • If I introduced a deprecation:

🧪 Testing


🔗 References


🚨 Breaking Changes?

  • Yes (explain below)
  • No

🔍️ Additional Notes

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR implements support for hub steps in MLRun by introducing a new HubStep class and get_hub_step SDK function. The implementation follows a common pattern by creating a shared HubAsset base class that both HubModule and the new HubStep inherit from, promoting code reuse and consistency. The refactoring also deprecates the download_module_files method in favor of a unified download_files method across all hub assets.

Key changes:

  • Introduced HubAsset base class to encapsulate common functionality for all hub assets (modules, steps)
  • Refactored HubModule to inherit from HubAsset instead of ModelObj
  • Added new HubStep class with get_hub_step SDK function for retrieving steps from the hub
  • Deprecated download_module_files in favor of the unified download_files method

Reviewed changes

Copilot reviewed 8 out of 8 changed files in this pull request and generated 8 comments.

Show a summary per file
File Description
mlrun/hub/base.py New base class providing shared functionality for hub assets including file downloading, module importing, and requirements installation
mlrun/hub/module.py Refactored to inherit from HubAsset; deprecated download_module_files method; removed duplicated code now in base class
mlrun/hub/step.py New HubStep class and get_hub_step function implementing hub step support
mlrun/hub/init.py Added get_hub_step to module exports
mlrun/init.py Added get_hub_step to top-level imports
mlrun/common/schemas/hub.py Added 'steps' to HubSourceType enum
tests/integration/sdk_api/hub/test_hub.py Updated test to use new download_files method; added tests for get_hub_step (marked as skipped until steps are available in hub)
docs/runtimes/load-from-hub.md Updated documentation to reference new download_files method

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@danielperezz danielperezz requested a review from Copilot December 17, 2025 07:52
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 8 out of 8 changed files in this pull request and generated 4 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 8 out of 8 changed files in this pull request and generated 6 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 8 out of 8 changed files in this pull request and generated 8 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link
Member

@Eyal-Danieli Eyal-Danieli left a comment

Choose a reason for hiding this comment

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

Nice!
few comments

@Eyal-Danieli Eyal-Danieli merged commit 4280878 into mlrun:development Dec 25, 2025
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