Repository navigation
v0.1.40 - Update Platform API contract (#65)
🌟 Summary
Ultralytics Platform API and Python SDK updated to 0.1.40 with corrected file-upload examples and clearer, more reliable SDK release automation. 🚀
📊 Key Changes
- 🔄 Updated the Platform API contract from
0.1.39to0.1.40, including the matching OpenAPI checksum. - 🐍 Released Python SDK version
0.1.40forultralytics-platform. - 📁 Corrected file-upload examples for deployment and model prediction:
- Examples now open files in binary mode with
open("path/to/file", "rb"). - This ensures uploaded images and other files are passed correctly to the API.
- Examples now open files in binary mode with
- ✅ Strengthened SDK validation and regeneration workflows:
- CI regenerates the SDK from the OpenAPI contract and checks for unexpected differences.
- Generated output is validated before builds and tests complete.
- 📦 Clarified versioning rules:
- Intentional SDK-only changes must update the Python version and regenerated files in the same pull request.
- Automatically detected generated changes receive a patch-version bump when appropriate.
- Releases consistently follow
MAJOR.MINOR.PATCH.
- 📚 Improved contributor and agent documentation in
AGENTS.md,README.md, andREADME.zh-CN.md, including clearer setup, testing, and release guidance.
🎯 Purpose & Impact
- 👍 More reliable Python SDK usage: Developers can now follow the file-upload examples without manually correcting how files are opened.
- 🔐 Better consistency between API and SDK: The published SDK is synchronized with the versioned Platform API contract.
- 🧪 Fewer regression risks: Automated drift checks help detect when generated SDK code no longer matches the API definition.
- 🚀 More predictable releases: Clear patch-version rules reduce confusion around when SDK changes are published.
- 🛠️ Easier maintenance for contributors: Updated instructions make SDK regeneration, validation, and troubleshooting more straightforward.
No new model architecture or training feature was introduced in this release; the main improvements focus on the Platform API contract, Python SDK reliability, and release automation.
What's Changed
- Clarify SDK release rules and streamline agent guidance by @glenn-jocher in #64
- Update Platform API contract by @UltralyticsAssistant in #65
Full Changelog: v0.1.39...v0.1.40