Ultralytics v8.3.252 is out!
Quick overview: v8.3.252 focuses on cleaner console output and more reliable exports, plus a docs pass to align examples with practical, real-world defaults ![]()
![]()
New Features & Highlights
Cleaner progress bars (no more double “100%”)
A small but impactful quality-of-life fix: tqdm will no longer render the final “complete” line twice in some cases.
Fix duplicated final progress-bar render in PR #23158 by @glenn-jocher
Improvements
More predictable exports when changing imgsz
Export now clears cached input shape (m.shape = None) to reduce the risk of exporting with a stale shape after switching image sizes.
Cleaner Ultralytics Platform run URLs
Project/run names are now URL-safe via slugify() + _get_project_name(), improving link readability and reducing broken/odd URLs in logs and streaming views.
Fewer tracing warnings during export
Anchor creation avoids a TracerWarning by iterating over len(feats) instead of directly iterating over the strides tensor.
Docs & Example Defaults (practical tuning)
Examples and docs were updated to reflect more typical thresholds so new users get reasonable results faster:
-
Tracking examples: conf=0.1,iou=0.7 -
Predict examples: conf=0.25 -
Val examples: iou=0.7 -
Export docs: INT8 calibration fallback uses coco8.yamlifdataisn’t provided -
Docs + examples updates in PR #23157 by @glenn-jocher
Why this release matters
Cleaner logs & CI output: no confusing duplicate “100%” lines
More consistent exports: fewer surprises when changing imgsz
More robust platform links: URL-safe names improve logging/streaming reliability
Better onboarding defaults: examples now match common “works out of the box” settings
Try it now
Upgrade and give it a spin:
pip install -U ultralytics
If you hit anything unexpected (or want to suggest tweaks), please share details in the forum—version, OS, Python, and a minimal repro help a ton ![]()
You can also review the release details in the v8.3.252 release notes and browse the full changelog.