Upgrading wandb 0.23 to 0.24
Breaking0.23.1 → 0.24.2Breaking1New4Changed1Fixed10Other1
BreakingUpgrade verdict
1 breaking change.
In plain terms
- The old beta model logging helpers are gone. Use the artifact methods on a run instead.
Must act 1 item needs code or config changes
What you must change
Breaking1
Removes the deprecated wandb.beta.workflows module, including log_model(), use_model() and link_model().
wandb.beta.workflowslog_model()use_model()link_model()Run.log_artifactRun.use_artifactRun.link_artifactAPI changes
Generated by DepDelta from published Python source. Not mixed with prose notes.
- changed:
function agent(sweep_id: str, function: Optional[Callable]=…, entity: Optional[str]=…, project: Optional[str]=…, count: Optional[int]=…) -> None → function agent(sweep_id: str, function: Optional[Callable]=…, entity: Optional[str]=…, project: Optional[str]=…, count: Optional[int]=…, forward_signals: bool=…) -> None
- changed:
constructor Attrs(attrs: MutableMapping[str, Any]) → constructor Attrs(attrs: Mapping[str, Any])
- changed:
method Api.clear_setting(key: str, globally: bool=…, persist: bool=…) -> None → method Api.clear_setting(key: str) -> None - changed:
method Api.set_setting(key: str, value: Any, globally: bool=…, persist: bool=…) -> None → method Api.set_setting(key: str, value: Any) -> None
- changed:
constructor Paginator(client: _Client, variables: Mapping[str, Any], per_page: int=…) → constructor Paginator(client: RetryingClient, variables: Mapping[str, Any], per_page: int=…)
- added:
export DownloadHistoryResult - added:
export IncompleteRunHistoryError
- removed:
field Api.CREATE_PROJECT - removed:
field Api.DEFAULT_ENTITY_QUERY - removed:
field Api.USERS_QUERY - removed:
field Api.VIEWER_QUERY
- changed:
constructor ArtifactCollection(client: Client, entity: str, project: str, name: str, type: str, organization: str | None=…, attrs: ArtifactCollectionFragment | None=…) → constructor ArtifactCollection(client: RetryingClient, entity: str, project: str, name: str, type: str, organization: str | None=…, attrs: ArtifactCollectionFragment | None=…) - changed:
constructor ArtifactCollections(client: Client, entity: str, project: str, type_name: str, per_page: int=…) → constructor ArtifactCollections(client: RetryingClient, entity: str, project: str, type_name: str, per_page: int=…) - changed:
constructor ArtifactFiles(client: Client, artifact: Artifact, names: Sequence[str] | None=…, per_page: int=…) → constructor ArtifactFiles(client: RetryingClient, artifact: Artifact, names: Sequence[str] | None=…, per_page: int=…) - changed:
constructor ArtifactType(client: Client, entity: str, project: str, type_name: str, attrs: ArtifactTypeFragment | None=…) → constructor ArtifactType(client: RetryingClient, entity: str, project: str, type_name: str, attrs: ArtifactTypeFragment | None=…) - changed:
constructor ArtifactTypes(client: Client, entity: str, project: str, per_page: int=…) → constructor ArtifactTypes(client: RetryingClient, entity: str, project: str, per_page: int=…) - changed:
constructor Artifacts(client: Client, entity: str, project: str, collection_name: str, type: str, filters: Mapping[str, Any] | None=…, order: str | None=…, per_page: int=…, tags: str | list[str] | None=…) → constructor Artifacts(client: RetryingClient, entity: str, project: str, collection_name: str, type: str, filters: Mapping[str, Any] | None=…, order: str | None=…, per_page: int=…, tags: str | list[str] | None=…) - changed:
constructor RunArtifacts(client: Client, run: Run, mode: Literal['logged', 'used']=…, per_page: int=…) → constructor RunArtifacts(client: RetryingClient, run: Run, mode: Literal['logged', 'used']=…, per_page: int=…)
- changed:
constructor Automations(client: _Client, variables: Mapping[str, Any], per_page: int=…, *, _query: Document) → constructor Automations(client: RetryingClient, variables: Mapping[str, Any], per_page: int=…, *, _query: Document)
- removed:
property File.size - removed:
property Files.cursor - removed:
property Files.more - changed:
constructor File(client, attrs, run=…) → constructor File(client: RetryingClient, attrs: dict[str, Any], run: Run | None=…) - changed:
method File.delete() → method File.delete() -> None - changed:
method Files.convert_objects() → method Files.convert_objects() -> list[File] - changed:
method Files.update_variables() → method Files.update_variables() -> None - added:
property File.size -> int - added:
property Files.cursor -> str | None - added:
property Files.more -> bool
- changed:
class BetaHistoryScan → class BetaHistoryScan(Iterator[_RowDict]) - changed:
class HistoryScan → class HistoryScan(Iterator[_RowDict]) - changed:
class SampledHistoryScan → class SampledHistoryScan(Iterator[_RowDict]) - changed:
constructor BetaHistoryScan(api: public.Api, run: runs.Run, min_step: int, max_step: int, keys: list[str] | None=…, page_size: int=…, use_cache: bool=…) → constructor BetaHistoryScan(api: Api, run: runs.Run, min_step: int, max_step: int, keys: list[str] | None=…, page_size: int=…, use_cache: bool=…) - changed:
constructor HistoryScan(client: api.RetryingClient, run: runs.Run, min_step: int, max_step: int, page_size: int=…) → constructor HistoryScan(client: RetryingClient, run: runs.Run, min_step: int, max_step: int, page_size: int=…) - changed:
constructor SampledHistoryScan(client: api.RetryingClient, run: runs.Run, keys: list, min_step: int, max_step: int, page_size: int=…) → constructor SampledHistoryScan(client: RetryingClient, run: runs.Run, keys: list[str], min_step: int, max_step: int, page_size: int=…) - changed:
static method BetaHistoryScan.cleanup(api: public.Api, request_id: int) → static method BetaHistoryScan.cleanup(api: Api, request_id: int) -> None
- changed:
constructor Integrations(client: _Client, variables: dict[str, Any], per_page: int=…) → constructor Integrations(client: RetryingClient, variables: dict[str, Any], per_page: int=…)
- removed:
property Job.name - removed:
property QueuedRun.entity - removed:
property QueuedRun.id - removed:
property QueuedRun.project - removed:
property QueuedRun.queue_name - removed:
property QueuedRun.state - removed:
property RunQueue.default_resource_config - removed:
property RunQueue.entity - removed:
property RunQueue.name - removed:
property RunQueue.template_variables - changed:
constructor QueuedRun(client, entity, project, queue_name, run_queue_item_id, project_queue=…, priority=…) → constructor QueuedRun(client: RetryingClient, entity: str, project: str, queue_name: str, run_queue_item_id: str, project_queue: str=…, priority: int | None=…) - changed:
constructor RunQueue(client: RetryingClient, name: str, entity: str, prioritization_mode: RunQueuePrioritizationMode | None=…, _access: RunQueueAccessType | None=…, _default_resource_config_id: int | None=…, _default_resource_config: dict | None=…) -> None → constructor RunQueue(client: RetryingClient, name: str, entity: str, prioritization_mode: RunQueuePrioritizationMode | None=…, _access: RunQueueAccessType | None=…, _default_resource_config_id: int | None=…, _default_resource_config: dict[str, Any] | None=…) -> None - changed:
method Job.set_entrypoint(entrypoint: list[str]) → method Job.set_entrypoint(entrypoint: list[str]) -> None - changed:
method QueuedRun.delete(delete_artifacts=…) → method QueuedRun.delete(delete_artifacts: bool=…) -> None - changed:
method QueuedRun.wait_until_finished() → method QueuedRun.wait_until_finished() -> public.Run - changed:
method QueuedRun.wait_until_running() → method QueuedRun.wait_until_running() -> public.Run - changed:
method RunQueue.delete() → method RunQueue.delete() -> None - added:
property Job.name -> str - added:
property QueuedRun.entity -> str - added:
property QueuedRun.id -> str - added:
property QueuedRun.project -> str - added:
property QueuedRun.queue_name -> str - added:
property QueuedRun.state -> str - added:
property RunQueue.default_resource_config -> dict[str, Any] - added:
property RunQueue.entity -> str - added:
property RunQueue.name -> str - added:
property RunQueue.template_variables -> dict[str, Any]
- removed:
field Project.QUERY - removed:
method Projects.convert_objects() - removed:
property Project.path - removed:
property Project.url - removed:
property Projects.cursor - removed:
property Projects.more - removed:
variable PROJECT_FRAGMENT - changed:
class Projects(Paginator['Project']) → class Projects(RelayPaginator['ProjectFragment', 'Project']) - changed:
constructor Project(client: RetryingClient, entity: str, project: str, attrs: dict) -> Project → constructor Project(client: RetryingClient, entity: str, project: str, attrs: Mapping[str, Any]) -> Project - changed:
field Projects.QUERY → field Projects.QUERY: ClassVar[Document | None] - changed:
method Project.artifacts_types(per_page=…) → method Project.artifacts_types(per_page: int=…) -> public.ArtifactTypes - changed:
method Project.sweeps(per_page=…) → method Project.sweeps(per_page: int=…) -> Sweeps - changed:
method Project.to_html(height=…, hidden=…) → method Project.to_html(height: int=…, hidden: bool=…) -> str - added:
field Projects.last_response: Connection[ProjectFragment] | None - added:
property Project.path -> list[str] - added:
property Project.url -> str
- changed:
constructor Registry(client: Client, organization: str, entity: str, name: str, attrs: RegistryFragment | None=…) → constructor Registry(client: RetryingClient, organization: str, entity: str, name: str, attrs: RegistryFragment | None=…) - changed:
static method Registry.create(client: Client, organization: str, name: str, visibility: Literal['organization', 'restricted'], description: str | None=…, artifact_types: list[str] | None=…) -> Self → static method Registry.create(client: RetryingClient, organization: str, name: str, visibility: Literal['organization', 'restricted'], description: str | None=…, artifact_types: list[str] | None=…) -> Self
- removed:
property BetaReport.description - removed:
property BetaReport.display_name - removed:
property BetaReport.id - removed:
property BetaReport.name - removed:
property BetaReport.spec - removed:
property BetaReport.url - removed:
property Reports.cursor - changed:
constructor BetaReport(client, attrs, entity=…, project=…) → constructor BetaReport(client: RetryingClient, attrs: dict, entity: str | None=…, project: str | None=…) - changed:
constructor Reports(client, project, name=…, entity=…, per_page=…) → constructor Reports(client: RetryingClient, project: Project, name: str | None=…, entity: str | None=…, per_page: int=…) - changed:
method BetaReport.runs(section, per_page=…, only_selected=…) → method BetaReport.runs(section: dict[str, Any], per_page: int=…, only_selected: bool=…) -> public.Runs - changed:
method BetaReport.to_html(height=…, hidden=…) → method BetaReport.to_html(height: int=…, hidden: bool=…) -> str - changed:
method Reports.convert_objects() → method Reports.convert_objects() -> list[BetaReport] - changed:
method Reports.update_variables() → method Reports.update_variables() -> None - added:
property BetaReport.description -> str | None - added:
property BetaReport.display_name -> str | None - added:
property BetaReport.id -> str - added:
property BetaReport.name -> str | None - added:
property BetaReport.spec -> dict[str, Any] - added:
property BetaReport.url -> str | None - added:
property Reports.cursor -> str | None
- removed:
property Run.config - removed:
property Run.entity - removed:
property Run.id - removed:
property Run.json_config - removed:
property Run.lastHistoryStep - removed:
property Run.metadata - removed:
property Run.name - removed:
property Run.path - removed:
property Run.rawconfig - removed:
property Run.state - removed:
property Run.storage_id - removed:
property Run.summary - removed:
property Run.summary_metrics - removed:
property Run.sweep_name - removed:
property Run.system_metrics - removed:
property Run.url - removed:
property Run.username - changed:
method Run.beta_scan_history(keys: list[str] | None=…, page_size=…, min_step=…, max_step=…, use_cache=…) -> public.BetaHistoryScan → method Run.beta_scan_history(keys: list[str] | None=…, page_size: int=…, min_step: int=…, max_step: int | None=…, use_cache: bool=…) -> public.BetaHistoryScan - changed:
method Run.delete(delete_artifacts=…) → method Run.delete(delete_artifacts: bool=…) -> None - changed:
method Run.file(name) → method Run.file(name: str) -> public.File - changed:
method Run.files(names: list[str] | None=…, pattern: str | None=…, per_page: int=…) → method Run.files(names: list[str] | None=…, pattern: str | None=…, per_page: int=…) -> public.Files - changed:
method Run.history(samples=…, keys=…, x_axis=…, pandas=…, stream=…) → method Run.history(samples: int=…, keys: list[str] | None=…, x_axis: str=…, pandas: bool=…, stream: Literal['default', 'system']=…) -> list[dict[str, Any]] | pd.DataFrame - changed:
method Run.load(force=…) → method Run.load(force: bool=…) -> dict[str, Any] - changed:
method Run.log_artifact(artifact: wandb.Artifact, aliases: Collection[str] | None=…, tags: Collection[str] | None=…) → method Run.log_artifact(artifact: wandb.Artifact, aliases: Collection[str] | None=…, tags: Collection[str] | None=…) -> wandb.Artifact - changed:
method Run.save() → method Run.save() -> None - changed:
method Run.scan_history(keys=…, page_size=…, min_step=…, max_step=…) → method Run.scan_history(keys: list[str] | None=…, page_size: int=…, min_step: int | None=…, max_step: int | None=…) -> Iterator[dict[str, Any]] - changed:
method Run.to_html(height=…, hidden=…) → method Run.to_html(height: int=…, hidden: bool=…) -> str - changed:
method Run.update() → method Run.update() -> None - changed:
method Run.upload_file(path, root=…) → method Run.upload_file(path: str, root: str=…) -> public.File - changed:
method Run.use_artifact(artifact, use_as=…) → method Run.use_artifact(artifact: wandb.Artifact, use_as: str | None=…) -> wandb.Artifact - changed:
method Run.wait_until_finished() → method Run.wait_until_finished() -> None - changed:
method Runs.convert_objects() → method Runs.convert_objects() -> list[Run] - changed:
method Runs.histories(samples: int=…, keys: list[str] | None=…, x_axis: str=…, format: Literal['default', 'pandas', 'polars']=…, stream: Literal['default', 'system']=…) → method Runs.histories(samples: int=…, keys: list[str] | None=…, x_axis: str=…, format: Literal['default', 'pandas', 'polars']=…, stream: Literal['default', 'system']=…) -> list[dict[str, Any]] | pd.DataFrame | pl.DataFrame - changed:
method Runs.upgrade_to_full() → method Runs.upgrade_to_full() -> None - changed:
static method Run.create(api: public.Api, run_id: str | None=…, project: str | None=…, entity: str | None=…, state: Literal['running', 'pending']=…) → static method Run.create(api: public.Api, run_id: str | None=…, project: str | None=…, entity: str | None=…, state: Literal['running', 'pending']=…) -> Self - added:
class DownloadHistoryResult - added:
class IncompleteRunHistoryError(Exception) - added:
field DownloadHistoryResult.contains_live_data: bool - added:
field DownloadHistoryResult.errors: dict[pathlib.Path, str] | None - added:
field DownloadHistoryResult.paths: list[pathlib.Path] - added:
method Run.download_history_exports(download_dir: pathlib.Path | str, require_complete_history: bool=…) -> DownloadHistoryResult - added:
method Run.update_state(state: Literal['pending']) -> bool - added:
property Run.config -> dict[str, Any] - added:
property Run.entity -> str - added:
property Run.id -> str - added:
property Run.json_config -> str - added:
property Run.lastHistoryStep -> int - added:
property Run.metadata -> dict[str, Any] | None - added:
property Run.name -> str | None - added:
property Run.path -> list[str] - added:
property Run.rawconfig -> dict[str, Any] - added:
property Run.state -> str - added:
property Run.storage_id -> str - added:
property Run.summary -> HTTPSummary - added:
property Run.summary_metrics -> dict[str, Any] - added:
property Run.sweep_name -> str | None - added:
property Run.system_metrics -> dict[str, Any] - added:
property Run.url -> str - added:
property Run.username -> str
- removed:
field Sweep.LEGACY_QUERY - removed:
field Sweep.QUERY - removed:
method Sweeps.update_variables() - removed:
property Sweep.entity - removed:
property Sweep.username - removed:
property Sweeps.cursor - removed:
property Sweeps.more - removed:
variable SWEEP_FRAGMENT - changed:
constructor Sweep(client, entity, project, sweep_id, attrs=…) → constructor Sweep(client: RetryingClient, entity: str, project: str, sweep_id: str, attrs: Mapping[str, Any] | None=…) - changed:
field Sweeps.QUERY → field Sweeps.QUERY: ClassVar[Document | None] - changed:
method Sweep.to_html(height=…, hidden=…) → method Sweep.to_html(height: int=…, hidden: bool=…) -> str - changed:
method Sweeps.convert_objects() → method Sweeps.convert_objects() -> list[Sweep] - changed:
static method Sweep.get(client: RetryingClient, entity: str | None=…, project: str | None=…, sid: str | None=…, order: str | None=…, query: str | None=…, **kwargs) → static method Sweep.get(client: RetryingClient, entity: str | None=…, project: str | None=…, sid: str | None=…, order: str | None=…, query: Document | None=…, **kwargs) - added:
field Sweeps.last_response: GetSweeps | None - added:
property Sweep.entity -> str - added:
property Sweep.username -> str - added:
property Sweeps.cursor -> str | None - added:
property Sweeps.more -> bool
- removed:
field Member.DELETE_MEMBER_MUTATION - removed:
field Team.CREATE_INVITE_MUTATION - removed:
field Team.CREATE_SERVICE_ACCOUNT_MUTATION - removed:
field Team.CREATE_TEAM_MUTATION - removed:
field Team.TEAM_QUERY - changed:
constructor Member(client, team, attrs) → constructor Member(client: RetryingClient, team: str, attrs: Mapping[str, Any]) - changed:
constructor Team(client, name, attrs=…) → constructor Team(client: RetryingClient, name: str, attrs: Mapping[str, Any] | None=…) - changed:
method Team.create_service_account(description) → method Team.create_service_account(description: str) -> Member | None - changed:
method Team.invite(username_or_email, admin=…) → method Team.invite(username_or_email: str, admin: bool=…) -> bool - changed:
method Team.load(force=…) → method Team.load(force: bool=…) -> dict[str, Any] - changed:
static method Team.create(api, team, admin_username=…) → static method Team.create(api: Api, team: str, admin_username: str | None=…) -> Self
- removed:
field User.CREATE_USER_MUTATION - removed:
field User.DELETE_API_KEY_MUTATION - removed:
field User.GENERATE_API_KEY_MUTATION - removed:
property User.api_keys - removed:
property User.teams - removed:
property User.user_api - changed:
constructor User(client, attrs) → constructor User(client: RetryingClient, attrs: MutableMapping[str, Any]) - changed:
method User.delete_api_key(api_key) → method User.delete_api_key(api_key: str) -> bool - changed:
method User.generate_api_key(description=…) → method User.generate_api_key(description: str | None=…) -> str | None - changed:
static method User.create(api, email, admin=…) → static method User.create(api: Api, email: str, admin: bool=…) -> Self - added:
property User.api_keys -> list[str] - added:
property User.teams -> list[str] - added:
property User.user_api -> Api | None
- removed:
function link_model(model: _SavedModel, target_path: str, aliases: str | list[str] | None=…) -> None - removed:
function log_model(model_obj: Any, name: str=…, aliases: str | list[str] | None=…, description: str | None=…, metadata: dict | None=…, project: str | None=…, scope_project: bool | None=…, **kwargs: dict[str, Any]) -> _SavedModel - removed:
function use_model(aliased_path: str, unsafe: bool=…) -> _SavedModel
- changed:
function leet(path: str | None=…) -> None → function leet(path: str | None=…, pprof: str=…) -> None - changed:
function sync(paths: tuple[str, ...], skip_synced: bool, dry_run: bool, verbose: bool, n: int) -> None → function sync(paths: tuple[str, ...], live: bool, entity: str, project: str, run_id: str, job_type: str, replace_tags: str, skip_synced: bool, dry_run: bool, verbose: bool, n: int) -> None
- changed:
function launch(path: str | None) -> Never → function launch(path: str | None, pprof: str) -> Never
- changed:
function sync(paths: list[pathlib.Path], *, dry_run: bool, skip_synced: bool, verbose: bool, parallelism: int) -> None → function sync(paths: list[pathlib.Path], *, live: bool, entity: str, project: str, run_id: str, job_type: str, replace_tags: str, dry_run: bool, skip_synced: bool, verbose: bool, parallelism: int) -> None
- changed:
function agent(ctx, project, entity, count, sweep_id) → function agent(ctx, project, entity, count, forward_signals, sweep_id)
- added:
function confirm(prompt: str) -> bool
- changed:
class WandbCallback(xgb.callback.TrainingCallback) → class WandbCallback(xgboost.callback.TrainingCallback) - changed:
field CallbackEnv.evaluation_result_list: List → field CallbackEnv.evaluation_result_list: list - changed:
method WandbCallback.after_iteration(model: Booster, epoch: int, evals_log: dict) -> bool → method WandbCallback.after_iteration(model: xgb.Booster, epoch: int, evals_log: _EvalsLog) -> bool - changed:
method WandbCallback.after_training(model: Booster) -> Booster → method WandbCallback.after_training(model: xgb.Booster) -> xgb.Booster - changed:
method WandbCallback.before_training(model: Booster) -> Booster → method WandbCallback.before_training(model: xgb.Booster) -> xgb.Booster
- removed:
class Settings - removed:
constructor Settings(load_settings: bool=…, root_dir: Optional[str]=…) -> None - removed:
field Settings.DEFAULT_SECTION - removed:
method Settings.clear(section, key, globally=…, persist=…) -> None - removed:
method Settings.get(section: str, key: str, fallback: Any=…) -> Any - removed:
method Settings.items(section: str=…) - removed:
method Settings.set(section, key, value, globally=…, persist=…) -> None
- added:
variable DownloadRunHistory - added:
variable DownloadRunHistoryResponse - added:
variable ErrorType - added:
variable INCOMPLETE_RUN_HISTORY_ERROR - added:
variable IncompleteRunHistoryError - added:
variable UNKNOWN_ERROR
- added:
variable ServerCancelRequest
- changed:
method Api.clear_setting(key: str, globally: bool=…, persist: bool=…) -> None → method Api.clear_setting(key: str) -> None - changed:
method Api.set_setting(key: str, value: Any, globally: bool=…, persist: bool=…) -> None → method Api.set_setting(key: str, value: Any) -> None - changed:
method Api.settings(key: None=…, section: str=…) -> dict[str, Any] | (key: str, section: str=…) -> Any → method Api.settings(key: None=…) -> dict[str, Any] | (key: str) -> Any
- removed:
export Auth - removed:
export AuthApiKey - removed:
export AuthIdentityTokenFile - removed:
export WriteNetrcError - removed:
export authenticate_session - removed:
export check_api_key - removed:
export prompt_and_save_api_key - removed:
export read_netrc_auth - removed:
export session_credentials - removed:
export unauthenticate_session - removed:
export use_explicit_auth - removed:
export write_netrc_auth
- removed:
class Auth(abc.ABC) - removed:
class AuthApiKey(Auth) - removed:
class AuthIdentityTokenFile(Auth) - removed:
class AuthWithSource - removed:
constructor Auth(*, host: str | HostUrl) -> None - removed:
constructor AuthApiKey(*, host: str | HostUrl, api_key: str) -> None - removed:
constructor AuthIdentityTokenFile(*, host: str | HostUrl, path: str) -> None - removed:
field AuthWithSource.auth: Auth - removed:
field AuthWithSource.source: str - removed:
property Auth.host -> HostUrl - removed:
property AuthApiKey.api_key -> str - removed:
property AuthIdentityTokenFile.path -> pathlib.Path
- removed:
function authenticate_session(*, host: str, source: str, no_offline: bool=…, no_create: bool=…, input_timeout: float | None=…, referrer: str=…, relogin: bool=…) -> Auth | None - removed:
function session_credentials(*, host: str) -> Auth | None - removed:
function unauthenticate_session() -> Auth | None - removed:
function use_explicit_auth(auth: Auth, *, source: str) -> None
- removed:
class HostUrl - removed:
constructor HostUrl(url: str) -> None - removed:
method HostUrl.is_same_url(value: str | HostUrl, /) -> bool - removed:
property HostUrl.url -> str
- removed:
function prompt_and_save_api_key(*, host: str, no_offline: bool=…, no_create: bool=…, referrer: str=…, input_timeout: float | None=…) -> str | None
- removed:
function is_wandb_domain(url: str) -> bool
- removed:
function check_api_key(key: str) -> str | None
- removed:
class WriteNetrcError(Exception) - removed:
function read_netrc_auth(*, host: str) -> str | None - removed:
function read_netrc_auth_with_source(*, host: str) -> AuthWithSource | None - removed:
function write_netrc_auth(*, host: str, api_key: str) -> None
- added:
function in_vscode_notebook() -> bool
- changed:
method ProgressPrinter.update(stats_or_groups: pb.OperationStats | dict[str, pb.OperationStats]) -> None → method ProgressPrinter.update(stats_or_list: pb.OperationStats | list[pb.OperationStats]) -> None
- changed:
async method ServiceConnection.init_sync(paths: set[pathlib.Path], settings: wandb_settings.Settings) -> MailboxHandle[wandb_sync_pb2.ServerInitSyncResponse] → async method ServiceConnection.init_sync(paths: set[pathlib.Path], settings: wandb_settings.Settings, *, cwd: pathlib.Path | None, live: bool, entity: str, project: str, run_id: str, job_type: str, tag_replacements: dict[str, str]) -> MailboxHandle[wandb_sync_pb2.ServerInitSyncResponse] - added:
constructor WandbApiFailedError(message: str, response: wandb_api_pb2.ApiErrorResponse | None=…)
- added:
class SaveSettingsError(Error) - added:
class SettingsFiles - added:
constructor SettingsFiles(*, global_settings: pathlib.Path | None, local_settings: pathlib.Path) -> None - added:
method SettingsFiles.all() -> dict[str, str] - added:
method SettingsFiles.clear(key: str, *, globally: bool=…) -> None - added:
method SettingsFiles.save() -> None - added:
method SettingsFiles.set(key: str, value: str, *, globally: bool=…) -> None - added:
property SettingsFiles.sources -> list[pathlib.Path]
- added:
export Auth - added:
export AuthApiKey - added:
export AuthIdentityTokenFile - added:
export HostUrl - added:
export WriteNetrcError - added:
export authenticate_session - added:
export check_api_key - added:
export prompt_and_save_api_key - added:
export read_netrc_auth - added:
export session_credentials - added:
export unauthenticate_session - added:
export use_explicit_auth - added:
export write_netrc_auth
- added:
class Auth(abc.ABC) - added:
class AuthApiKey(Auth) - added:
class AuthIdentityTokenFile(Auth) - added:
class AuthWithSource - added:
constructor Auth(*, host: str | HostUrl) -> None - added:
constructor AuthApiKey(*, host: str | HostUrl, api_key: str) -> None - added:
constructor AuthIdentityTokenFile(*, host: str | HostUrl, path: str, credentials_file: str) -> None - added:
field AuthWithSource.auth: Auth - added:
field AuthWithSource.source: str - added:
method Auth.as_requests_auth() -> requests.auth.AuthBase - added:
method AuthApiKey.as_requests_auth() -> requests.auth.AuthBase - added:
method AuthIdentityTokenFile.as_requests_auth() -> requests.auth.AuthBase - added:
method AuthIdentityTokenFile.fetch_access_token() -> str - added:
property Auth.host -> HostUrl - added:
property AuthApiKey.api_key -> str - added:
property AuthIdentityTokenFile.credentials_path -> pathlib.Path - added:
property AuthIdentityTokenFile.path -> pathlib.Path
- added:
function authenticate_session(*, host: str | HostUrl, source: str, no_offline: bool=…, no_create: bool=…, input_timeout: float | None=…, referrer: str=…, relogin: bool=…) -> Auth | None - added:
function session_credentials(*, host: str | HostUrl) -> Auth | None - added:
function unauthenticate_session(*, update_settings: bool=…) -> Auth | None - added:
function use_explicit_auth(auth: Auth, *, source: str) -> None
- added:
class HostUrl - added:
constructor HostUrl(url: str, *, app_url: str | None=…) -> None - added:
method HostUrl.is_same_url(value: str | HostUrl, /) -> bool - added:
property HostUrl.app_url -> str - added:
property HostUrl.url -> str
- added:
function prompt_and_save_api_key(*, host: str | HostUrl, no_offline: bool=…, no_create: bool=…, referrer: str=…, input_timeout: float | None=…) -> str | None
- added:
function is_wandb_domain(url: str) -> bool
- added:
function check_api_key(key: str) -> str | None
- added:
class WriteNetrcError(Exception) - added:
function read_netrc_auth(*, host: str | HostUrl) -> str | None - added:
function read_netrc_auth_with_source(*, host: HostUrl) -> AuthWithSource | None - added:
function write_netrc_auth(*, host: str, api_key: str) -> None
- changed:
constructor Mailbox(asyncer: asyncio_manager.AsyncioManager) -> None → constructor Mailbox(asyncer: asyncio_manager.AsyncioManager, cancel: Callable[[str], Awaitable[None]]) -> None
- removed:
method MailboxHandle.abandon() -> None - changed:
method MailboxHandle.cancel(iface: interface.InterfaceBase) -> None → method MailboxHandle.cancel() -> None
- changed:
constructor MailboxResponseHandle(address: str, *, asyncer: asyncio_manager.AsyncioManager) -> None → constructor MailboxResponseHandle(address: str, *, asyncer: asyncio_manager.AsyncioManager, cancel: Callable[[str], Awaitable[None]]) -> None - changed:
method MailboxResponseHandle.cancel(iface: interface.InterfaceBase) -> None → method MailboxResponseHandle.cancel() -> None
- removed:
class ApiKeyStatus(enum.Enum) - removed:
class OidcError(Exception) - removed:
field ApiKeyStatus.DISABLED - removed:
field ApiKeyStatus.NOTTY - removed:
field ApiKeyStatus.OFFLINE - removed:
field ApiKeyStatus.VALID
- removed:
method Settings.update_from_system_config_file() - removed:
method Settings.update_from_workspace_config_file() - added:
field Settings.app_url_override: Optional[str] - added:
method Settings.read_system_settings() -> settings_file.SettingsFiles - added:
method Settings.update_from_system_settings() -> None - added:
property Settings.app_url -> str
- added:
function api_to_app_url(api_url: str) -> str
- changed:
constructor Agent(api, queue, sweep_id=…, function=…, in_jupyter=…, count=…) → constructor Agent(api, queue, sweep_id=…, function=…, in_jupyter=…, count=…, forward_signals=…) - changed:
constructor AgentProcess(env=…, command=…, function=…, run_id=…, in_jupyter=…) → constructor AgentProcess(env=…, command=…, function=…, run_id=…, in_jupyter=…, forward_signals=…) - changed:
function agent(sweep_id: str, function: Optional[Callable]=…, entity: Optional[str]=…, project: Optional[str]=…, count: Optional[int]=…) -> None → function agent(sweep_id: str, function: Optional[Callable]=…, entity: Optional[str]=…, project: Optional[str]=…, count: Optional[int]=…, forward_signals: bool=…) -> None - changed:
function run_agent(sweep_id, function=…, in_jupyter=…, entity=…, project=…, count=…) → function run_agent(sweep_id, function=…, in_jupyter=…, entity=…, project=…, count=…, forward_signals=…)