Skip to content

Releases: wandb/wandb

v0.25.1

10 Mar 23:54

Choose a tag to compare

What's Changed

Added

  • Run console logs pane in W&B LEET TUI (wandb beta leet command, toggle with l). (@dmitryduev in #11345)
  • System metrics pane in multi-run workspace mode in W&B LEET TUI (wandb beta leet command, toggle with s). (@dmitryduev in #11391)
  • System metrics filtering in W&B LEET TUI (wandb beta leet command, toggle with \). (@dmitryduev in #11391)
  • ArtifactType.collections() now supports filtering and ordering of collections. (@amusipatla-wandb in #11268)
  • Warning message when run.log_artifact does not create a new version because the artifact content is identical to an existing version. (@pingleiwandb in #11340)
  • Project.collections() to fetch filtered and ordered artifact collections in a project. (@amusipatla-wandb in #11319)
  • wandb purge-cache command to clean up cached files (@jacobromero in #10996)

Fixed

  • Fixed a rare deadlock caused when GC triggers at an unlucky time and runs a __del__ method that prints (@timoffex in #11402)
  • api.Run.user raising AttributeError when accessing runs from an api.Runs iteration (@jacobromero in #11439)

v0.25.0

13 Feb 19:44

Choose a tag to compare

What's Changed

Notable Changes

This version drops support for Python 3.8.

Added

  • Multi-run workspace experience in W&B LEET TUI (wandb beta leet command). (@dmitryduev in #11299)
  • Config editor for W&B LEET TUI (wandb beta leet config command). (@dmitryduev in #11327)
  • owner property on wandb.apis.public.Project to access the project owner's user information. (@jacobromero in #11278)

Changed

Fixed

  • Sweep agents now exit gracefully when the sweep is deleted, instead of running indefinitely with repeated 404 errors (@domphan-wandb in #11226)
  • wandb-core crashes no longer produce extremely long, repetitive tracebacks in older Python versions (@timoffex in #11284)
  • TensorBoard sync no longer stops after 1 MB of data (@timoffex in #11334)
    • Regression introduced in 0.24.0

v0.24.2

05 Feb 00:19

Choose a tag to compare

What's Changed

Added

Fixed

  • Refresh presigned download url when it expires during artifact file downloads. (@pingleiwandb in #11242)

v0.24.1

29 Jan 23:47

Choose a tag to compare

What's Changed

Notable Changes

Runs created with wandb==0.24.0 may fail to upload some data, which this release fixes. Missing data is stored in the run's .wandb file and can be reuploaded with wandb sync.

Added

  • download_history_exports in api.Run class to download exported run history in parquet file format (@jacobromero in #11094)

Changed

  • When a settings file (such as ./wandb/settings or ~/.config/wandb/settings) contains an invalid setting, all settings files are ignored and an error is printed (@timoffex in #11207)

Fixed

  • After wandb login --host <invalid-url>, using wandb login --host <valid-url> works as usual (@timoffex in #11207)
    • Regression introduced in 0.24.0
  • wandb beta sync correctly loads credentials (@timoffex in #11231)
    • Regression introduced in 0.24.0
    • Caused wandb beta sync to get stuck on Syncing...
  • Fixed occasional unuploaded data in 0.24.0 (@timoffex in #11249)
    • All data is stored in the run's .wandb file and can be reuploaded with wandb sync

v0.24.0

13 Jan 23:01

Choose a tag to compare

⚠️ This release has been yanked from PyPI.
Do not use this version. Runs created with wandb==0.24.0 may in rare cases silently fail to upload data. Upgrade immediately to v0.24.1, which fixes this issue. If you've already used this version, missing data is stored in the run's .wandb file and can be recovered with wandb sync.

What's Changed

Notable Changes

This version removes the legacy, deprecated wandb.beta.workflows module, including its log_model()/use_model()/link_model() functions. This is formally a breaking change.

Added

  • wandb agent and wandb.agent() now accept a forward_signals flag (CLI: --forward-signals/-f) to relay SIGINT/SIGTERM and other catchable signals from the agent to its sweep child runs, enabling cleaner shutdowns when you interrupt an agent process (@KyleGoyette, @domphan-wandb in #9651)
  • wandb beta sync now supports a --live option for syncing a run while it's being logged (@timoffex in #11079)

Removed

  • Removed the deprecated wandb.beta.workflows module, including its log_model(), use_model(), and link_model() functions, and whose modern successors are the Run.log_artifact, Run.use_artifact, and Run.link_artifact methods, respectively (@tonyyli-wandb in [TODO: PR link])

Fixed

  • Fixed Run.__exit__ type annotations to accept None values, which are passed when no exception is raised (@moldhouse in #11100)
  • Fixed Invalid Client ID digest error when creating artifacts after calling random.seed(). Client IDs could collide when random state was seeded deterministically. (@pingleiwandb in #11039)
  • Fixed CLI error when listing empty artifacts (@ruhiparvatam in #11157)
  • Fixed regression for calling api.run() on a Sweeps run (@willtryagain in #11088 and @kelu-wandb in #11097)
  • Fixed the "View run at" message printed at the end of a run which sometimes did not include a URL (@timoffex in #11113)
  • Runs queried from wandb.Api() now display a string representation in VSCode notebooks instead of a broken HTML window (@jacobromero in #11040)

v0.23.1

03 Dec 02:27

Choose a tag to compare

What's Changed

Added

  • Regex support in metrics and run overview filters in W&B LEET TUI (@dmitryduev in #10919)
  • Chart inspection in W&B LEET TUI: right-click and drag to show (x, y) at the nearest data point; hold Alt for synchronized inspection across all visible charts (@dmitryduev in #10989)
  • The automations API now supports creating and editing automations that trigger on run states (@tonyyli-wandb in #10848)
  • The automations API now support basic zscore automation events (@matthoare117-wandb in #10931)
  • Simplified the syntax for creating z-score metric automation triggers in the automations API (@matthoare117-wandb in #10953)
  • beta_history_scan method to Run objects for faster history scanning performance with wandb.Api (@jacobromero in #10779)

Changed

  • wandb.Api() now raises a UsageError if WANDB_IDENTITY_TOKEN_FILE is set and an explicit API key is not provided (@timoffex in #10970)
    • wandb.Api() has only ever worked using an API key

Deprecated

  • Anonymous mode, including the anonymous setting, the WANDB_ANONYMOUS environment variable, wandb.init(anonymous=...), wandb login --anonymously and wandb.login(anonymous=...) is deprecated and will emit warnings (@timoffex in #10909)

Fixed

  • wandb.Image() no longer prints a deprecation warning (@jacobromero in #10880)
  • Registry.description and ArtifactCollection.description no longer reject empty strings (@tonyyli-wandb in #10891)
  • Instantiating Artifact objects is now significantly faster (@tonyyli-wandb in #10819)
  • wandb.Run.save() now falls back to hardlinks and, if needed, copying (downgrading the 'live' file policy to 'now', if applicable) when symlinks are disabled or unavailable (e.g., cross‑volume or no Developer Mode on Windows) (@dmitryduev in #10894)
  • Artifact collection aliases are now fetched lazily on accessing ArtifactCollection.aliases instead of on instantiating ArtifactCollection, improving performance of Api.artifact_collections(), Api.registries().collections(), etc. (@tonyyli-wandb in #10731)
  • Use explicitly provided API key in wandb.init(settings=wandb.Settings(api_key="...")) for login. Use the key from run when logging artifacts via run.log_artifact (@pingleiwandb in #10914)
  • W&B LEET TUI correctly displays negative Y axis tick values and base/display units of certain system metrics (@dmitryduev in #10905)
  • Fixed a rare infinite loop in console_capture.py (@timoffex in #10955)
  • File upload/download now respects WANDB_X_EXTRA_HTTP_HEADERS except for reference artifacts

v0.23.0

11 Nov 21:27

Choose a tag to compare

What's Changed

Added

  • Experimental wandb beta leet command - Lightweight Experiment Exploration Tool - a terminal UI for viewing W&B runs locally with real-time metrics visualization and system monitoring (@dmitryduev in #10764)
  • The registry API now supports programmatic management of user and team members of individual registries. (@tonyyli-wandb in #10542)
  • Registry.id has been added as a (read-only) property of Registry objects (@tonyyli-wandb in #10785).

Fixed

  • Artifact.files() now has a correct len() when filtering by the names parameter (@matthoare117-wandb in #10796)
  • The numerator for file upload progress no longer occasionally exceeds the total file size (@timoffex in #10812)
  • Artifact.link() now logs unsaved artifacts instead of raising an error, consistent with the behavior of Run.link_artifact() (@tonyyli-wandb in https://github.com/wandb/wandb/10822)
  • Automatic code saving now works when running ipython notebooks in VSCode's Jupyter notebook extension (@jacobromero in #10746)
  • Logging an artifact with infinite floats in Artifact.metadata now raises a ValueError early, instead of waiting on request retries to time out (@tonyyli-wandb in #10845).

v0.22.3

29 Oct 00:00

Choose a tag to compare

What's Changed

Added

  • Settings console_chunk_max_seconds and console_chunk_max_bytes for size- and time-based multipart console logs file chunking (@dmitryduev in #10162)
  • Registry API query methods (Api.registries(), Registry.{collections,versions}(), Api.registries().{collections,versions}()) now accept a per_page keyword arg to override the default batch size for paginated results (@tonyyli-wandb in #10713).

Changed

Fixed

  • run.config now properly returns a dict when calling artifact.logged_by() in v0.22.1 (@thanos-wandb in #10682)
  • wandb.Api(api_key=...) now prioritizes the explicitly provided API key over thread-local cached credentials (@pingleiwandb in #10657)
  • Fixed a rare deadlock in console_capture.py (@timoffex in #10683)
    • If you dump thread tracebacks during the deadlock and see the wandb-AsyncioManager-main thread stuck on a line in console_capture.py: this is now fixed.
  • Fixed an issue where TensorBoard sync would sometimes stop working if the tfevents files were being written live (@timoffex in #10625)
  • Artifact.manifest delays downloading and generating the download URL for the artifact manifest until it's first used. If the manifest has not been locally modified, Artifact.size and Artifact.digest can return without waiting to fetch the full manifest (@tonyyli-wandb in #10680)
  • Fixed uploading GCS folder references via artifact.add_reference (@amusipatla-wandb in #10679)
  • The SDK now correctly infers notebooks paths in Jupyter sessions, using th server's root directory, so code saving works in subdirectories (e.g. code/nested/.ipynb) (@jacobromero in #10709)

v0.22.2

07 Oct 19:55

Choose a tag to compare

What's Changed

Fixed

  • Possibly fixed some cases where the output.log file was not being uploaded (@timoffex in #10620)
  • Fixed excessive data uploads when calling run.save() repeatedly on unchanged files (@dmitryduev in #10639)

v0.22.1

29 Sep 17:18

Choose a tag to compare

What's Changed

Added

  • Optimize artifacts downloads re-verification with checksum caching (@thanos-wandb in #10157)
  • Lazy loading support for Api().runs() to improve performance when listing runs. The new lazy=True parameter (default) loads only essential metadata initially, with automatic on-demand loading of heavy fields like config and summary when accessed (@thanos-wandb in #10034)
  • Add storage_region option when creating artifacts. Users can use CoreWeave AI Object Storage by specifying wandb.Artifact(storage_region="coreweave-us") when using wandb.ai for faster artifact upload/download on CoreWeave's infrastructure. (@pingleiwandb in #10533)

Fixed

  • Api.artifact_exists() and Api.artifact_collection_exists() now raise on encountering timeout errors, rather than (potentially erroneously) returning False. (@tonyyli-wandb in #10591)