v0.28.2
Breaking Changes📦 weights-biasesView on GitHub →
⚠ 2 breaking✨ 6 features🐛 20 fixes⚡ 1 deprecations🔧 30 symbols
Summary
This release introduces gzip compression for filestream requests and enhances the `wandb login` command with default credential verification. It also includes numerous bug fixes and improvements to API operations and TensorBoard integration.
⚠️ Breaking Changes
- The `wandb sync --clean` command now exits with code 1. Use `wandb clean` instead.
- Releases no longer include 32-bit Windows (`win32`) wheels. Users on Windows must use a 64-bit Python installation.
Migration Steps
- Replace `wandb sync --clean` with `wandb clean`.
- If using 32-bit Windows Python, upgrade to a 64-bit Python installation.
✨ New Features
- Added support for gzip compression of filestream requests (opt-in, requires server support). Set `x_file_stream_no_gzip=False` in `wandb.Settings` to enable.
- Added a `--term-timeout` flag to `wandb agent`.
- Added `run.sync_dir`.
- `wandb login` now verifies credentials by default. This can be disabled with `wandb login --no-verify` or programmatically with `wandb.login(verify=False)`.
- The `global_step` metric created when syncing TensorBoard files is no longer prefixed, making it easier to compare training and validation metrics.
- The TensorBoard integration now produces fewer W&B steps by merging data for the same `global_step` into one W&B step when possible.
🐛 Bug Fixes
- Registry search `registries(order=...).collections(order=...).versions()` now returns artifact versions in registry and/or collection order.
- macOS x86_64 wheels now contain x86_64 builds of the `wandb-xpu` binary and the Rust parquet library, fixing issues on Intel Macs.
- `wandb.login(verify=True)` and `wandb login --verify` now verify federated identity (identity token) credentials.
- `wandb login` and `wandb verify` no longer update the system host settings when failing to login.
- `wandb verify` now reports a failed check instead of crashing when an operation still fails after retries.
- Calling Sweeps agent with a custom `WANDB_DIR` will now respect it when dumping JSON output.
- Fixed `wandb.Api(overrides={\"base_url\": ...})` failing to authenticate with federated identity (identity token) credentials when the specified server was not the default one, unless `WANDB_BASE_URL` was also set.
- When using federated identity, the identity token file is now re-read for each access token exchange, ensuring short-lived identity tokens keep working.
- When using federated identity, requests now fail immediately with the server's error message when the server rejects the identity token exchange.
- `wandb login` validates api keys prior to saving to the `.netrc` file.
- `wandb sync` no longer hangs on a run that set its name, tags, or notes after starting.
- `wandb login` no longer removes or corrupts credentials belonging to other machines in your `.netrc` file.
- Log messages captured from Python loggers no longer add blank lines to a run's logs.
- `del run.summary[key]` now removes metrics that were logged as nested values.
- Debug logs no longer contain CoreWeave cluster credentials.
- `wandb docker` and `wandb docker-run` no longer pass your API key on the command line.
- `wandb.init()` now reports the error it was retrying when it times out, instead of a generic timeout message. The `init_timeout` setting now also bounds the backend's retries during run initialization.
- `wandb.Api().create_run_queue()`, `wandb.Api().create_custom_chart()`, and `wandb.Api().upsert_run_queue()` now raise `WandbApiFailedError` when the operation fails on the backend.
- Paginated artifact and registry query methods now perform client-side validation of pagination arguments before attempting to fetch any results.
- Ordered registry search now scopes per-registry collection and version queries to the current registry's internal id for more reliable pagination and filtering.
Affected Symbols
`wandb sync --clean``wandb clean``wandb login``wandb.login``wandb agent``run.sync_dir``wandb launch``wandb.Api``wandb.init``wandb.Api().create_run_queue()``wandb.Api().create_custom_chart()``wandb.Api().upsert_run_queue()``Api.artifacts()``Api.artifact_collections()``Api.registries()``Registries.collections()``Registries.versions()``Collections.versions()``Registry.collections()``Registry.versions()``Project.collections()``wandb-xpu``wandb verify``WANDB_DIR``wandb.Api(overrides={\"base_url\": ...})``WANDB_BASE_URL``del run.summary[key]``wandb docker``wandb docker-run``wandb sync --sync-tensorboard`
⚡ Deprecations
- `wandb sync --sync-tensorboard` is deprecated and will be removed in a future release.