v0.29.0
Breaking Changes📦 weights-biasesView on GitHub →
⚠ 5 breaking✨ 9 features🐛 6 fixes⚡ 4 deprecations🔧 36 symbols
Summary
This release removes several deprecated features and properties, introduces new API functionalities for console logs and automations, and enhances the LEET interface with improved chart and layout controls. It also includes important compatibility updates for macOS users.
⚠️ Breaking Changes
- The `.length` property on paginated objects (e.g. `Api.runs()`, `Api.sweeps()`, `run.files()`) has been removed. Use `len(...)` instead.
- `wandb.Video()` now requires the `format` argument when initializing from a numpy array, raw bytes, or an io object.
- `wandb.Image` no longer normalizes pixel values. Callers must now ensure their data already falls within the range [0, 255].
- On macOS, `wandb` now requires macOS 13 (Ventura) or newer.
- The macOS wheels now require macOS 13 (Ventura) or newer.
Migration Steps
- Use `len(...)` instead of the `.length` property on paginated objects.
- When initializing `wandb.Video()` from a numpy array, raw bytes, or an io object, provide the `format` argument.
- Ensure pixel values for `wandb.Image` fall within the range [0, 255].
- Upgrade to macOS 13 (Ventura) or newer if using macOS.
- Use `summary="min"` or `summary="max"` instead of `summary="best"` or the `goal` argument in `run.define_metric()`.
- Use `wandb.Settings(quiet=...)` instead of the `quiet` argument in `run.finish()` and `wandb.finish()`.
- Use the `run.project`, `run.url`, `run.project_url`, and `run.sweep_url` properties instead of the `run.project_name()`, `run.get_url()`, `run.get_project_url()`, and `run.get_sweep_url()` methods.
- If you use `wandb beta core`, restart the service after upgrading `wandb`.
✨ New Features
- Added `run.console_logs()` to the public API for reading the console output that W&B captured for a run — the whole log, or only the last N lines with `run.console_logs(last=N)`, for finished and still-running runs alike. Reading from the beginning requires W&B Server 0.77 or newer.
- The automations API now supports team and organization scopes.
- The automations API now supports creating and editing automations whose scope is a `Registry` object.
- Press `g` in LEET to draw guides behind line charts: a dotted background or horizontal lines aligned with the axis ticks. The choice is saved and can also be set with `chart_guides` in `wandb leet config`.
- Drag the separator lines between LEET's run overview sections to resize them with the mouse. The proportions are saved per view; press `0` to reset them along with the other pane sizes.
- Registry API version queries (`Api.registries().versions()`, `Api.registries().collections().versions()`, `Registry.versions()`, `Registry.collections().versions()`) now accept an optional `order` string as a keyword argument for organizations with advanced search. The API supports ordering versions by `created_at`, `artifact_size`, and `linked_at`.
- Added `Artifact.linked_at` which returns when the version was linked to the relevant portfolio. This is valid only for linked versions, and for source artifacts returns `None`.
- `wandb.Artifact` now accepts a `digest_algorithm` argument (`"MD5"` or `"XXH128"`, defaulting to `"MD5"`). Passing `digest_algorithm="XXH128"` opts the artifact into XXH128 hashing when possible.
- `wandb leet inspect [PATH]` browses the raw records in a run's `.wandb` transaction log: a filterable list of every record next to a text view of the selected one, following live runs as they write. Press `i` in LEET's single-run view to open it for the current run, and pipe or redirect to print the records instead, e.g. `wandb leet inspect | less.`
🐛 Bug Fixes
- `Artifact.new_file` now works for artifacts uploaded with `wandb sync`.
- At certain pane widths, such as while dragging a sidebar edge, LEET drew metric charts wider than the space available, pushing the right sidebar off screen.
- `wandb leet config` now works on short terminal windows: the field list scrolls with the selection and Space toggles boolean settings.
- `Run.scan_history(keys=...)` no longer fails for runs with nested values.
- LEET media panels painted black bars around images in the ANSI view and flashed black when switching to the full-res view; the area around the image now shows the terminal background and mode switches no longer flash or move the image.
- Reject file or artifact name that contain relative path when downloading artifacts via `artifact.files()`, `artifact.checkout()`.
Affected Symbols
start_methodApi.runs()Api.sweeps()run.files()wandb.Video()run.define_metric()run.finish()wandb.finish()run.project_name()run.get_url()run.get_project_url()run.get_sweep_url()run.projectrun.urlrun.project_urlrun.sweep_urlwandb.Imagerun.console_logs()Api.create_automation()Api.update_automation()wandb.sandboxApi.registries().collections().versions()Artifact.linked_atwandb.Artifactdigest_algorithmartifact.verify()wandb leet inspectwandb.tensorboard.log()wandb.tensorflow.log()wandb.apis.paginator.SizedPaginatorArtifact.new_fileRun.scan_history()artifact.files()artifact.checkout()
⚡ Deprecations
- Removed the deprecated `start_method` setting that already had no effect.
- Removed the deprecated `summary="best"` option and `goal` argument of `run.define_metric()`. Use `summary="min"` or `summary="max"` instead.
- Removed the deprecated `quiet` argument of `run.finish()` and `wandb.finish()`. Use `wandb.Settings(quiet=...)` instead.
- Removed the deprecated `run.project_name()`, `run.get_url()`, `run.get_project_url()`, and `run.get_sweep_url()` methods. Use the `run.project`, `run.url`, `run.project_url`, and `run.sweep_url` properties instead.