wandb 0.17.4__py3-none-win32.whl → 0.17.5__py3-none-win32.whl

Sign up to get free protection for your applications and to get access to all the features.
wandb/sdk/wandb_run.py CHANGED
@@ -2100,36 +2100,56 @@ class Run:
2100
2100
  return self._finish(exit_code, quiet)
2101
2101
 
2102
2102
  def _finish(
2103
- self, exit_code: Optional[int] = None, quiet: Optional[bool] = None
2103
+ self,
2104
+ exit_code: Optional[int] = None,
2105
+ quiet: Optional[bool] = None,
2104
2106
  ) -> None:
2105
- if quiet is not None:
2106
- self._quiet = quiet
2107
+ logger.info(f"finishing run {self._get_path()}")
2107
2108
  with telemetry.context(run=self) as tel:
2108
2109
  tel.feature.finish = True
2109
- logger.info(f"finishing run {self._get_path()}")
2110
- # detach jupyter hooks / others that needs to happen before backend shutdown
2111
- for hook in self._teardown_hooks:
2112
- if hook.stage == TeardownStage.EARLY:
2113
- hook.call()
2114
2110
 
2115
- self._atexit_cleanup(exit_code=exit_code)
2111
+ if quiet is not None:
2112
+ self._quiet = quiet
2113
+
2114
+ # Pop this run (hopefully) from the run stack, to support the "reinit"
2115
+ # functionality of wandb.init().
2116
+ #
2117
+ # TODO: It's not clear how _global_run_stack could have length other
2118
+ # than 1 at this point in the code. If you're reading this, consider
2119
+ # refactoring this thing.
2116
2120
  if self._wl and len(self._wl._global_run_stack) > 0:
2117
2121
  self._wl._global_run_stack.pop()
2118
- # detach logger / others meant to be run after we've shutdown the backend
2122
+
2123
+ # Run hooks that need to happen before the last messages to the
2124
+ # internal service, like Jupyter hooks.
2119
2125
  for hook in self._teardown_hooks:
2120
- if hook.stage == TeardownStage.LATE:
2126
+ if hook.stage == TeardownStage.EARLY:
2121
2127
  hook.call()
2122
- self._teardown_hooks = []
2123
- module.unset_globals()
2124
-
2125
- # inform manager this run is finished
2126
- manager = self._wl and self._wl._get_manager()
2127
- if manager:
2128
- manager._inform_finish(run_id=self._run_id)
2129
2128
 
2129
+ # Early-stage hooks may use methods that require _is_finished
2130
+ # to be False, so we set this after running those hooks.
2130
2131
  self._is_finished = True
2131
- # end sentry session
2132
- wandb._sentry.end_session()
2132
+
2133
+ try:
2134
+ self._atexit_cleanup(exit_code=exit_code)
2135
+
2136
+ # Run hooks that should happen after the last messages to the
2137
+ # internal service, like detaching the logger.
2138
+ for hook in self._teardown_hooks:
2139
+ if hook.stage == TeardownStage.LATE:
2140
+ hook.call()
2141
+ self._teardown_hooks = []
2142
+
2143
+ # Inform the service that we're done sending messages for this run.
2144
+ #
2145
+ # TODO: Why not do this in _atexit_cleanup()?
2146
+ manager = self._wl and self._wl._get_manager()
2147
+ if manager:
2148
+ manager._inform_finish(run_id=self._run_id)
2149
+
2150
+ finally:
2151
+ module.unset_globals()
2152
+ wandb._sentry.end_session()
2133
2153
 
2134
2154
  @_run_decorator._noop
2135
2155
  @_run_decorator._attach
@@ -2345,36 +2365,49 @@ class Run:
2345
2365
  return
2346
2366
  self._atexit_cleanup_called = True
2347
2367
 
2348
- exit_code = exit_code or self._hooks.exit_code if self._hooks else 0
2368
+ exit_code = (
2369
+ exit_code #
2370
+ or (self._hooks and self._hooks.exit_code)
2371
+ or 0
2372
+ )
2373
+ self._exit_code = exit_code
2349
2374
  logger.info(f"got exitcode: {exit_code}")
2375
+
2376
+ # Delete this run's "resume" file if the run finished successfully.
2377
+ #
2378
+ # This is used by the "auto" resume mode, which resumes from the last
2379
+ # failed (or unfinished/crashed) run. If we reach this line, then this
2380
+ # run shouldn't be a candidate for "auto" resume.
2350
2381
  if exit_code == 0:
2351
- # Cleanup our resume file on a clean exit
2352
2382
  if os.path.exists(self._settings.resume_fname):
2353
2383
  os.remove(self._settings.resume_fname)
2354
2384
 
2355
- self._exit_code = exit_code
2356
- report_failure = False
2357
2385
  try:
2358
2386
  self._on_finish()
2359
- except KeyboardInterrupt as ki:
2360
- if wandb.wandb_agent._is_running():
2361
- raise ki
2362
- wandb.termerror("Control-C detected -- Run data was not synced")
2363
- if not self._settings._notebook:
2364
- os._exit(-1)
2387
+
2388
+ except KeyboardInterrupt:
2389
+ if not wandb.wandb_agent._is_running():
2390
+ wandb.termerror("Control-C detected -- Run data was not synced")
2391
+ raise
2392
+
2365
2393
  except Exception as e:
2366
- if not self._settings._notebook:
2367
- report_failure = True
2368
2394
  self._console_stop()
2369
- self._backend.cleanup()
2370
2395
  logger.error("Problem finishing run", exc_info=e)
2371
2396
  wandb.termerror("Problem finishing run")
2372
- traceback.print_exc()
2373
- else:
2374
- self._on_final()
2375
- finally:
2376
- if report_failure:
2377
- os._exit(-1)
2397
+ raise
2398
+
2399
+ Run._footer(
2400
+ sampled_history=self._sampled_history,
2401
+ final_summary=self._final_summary,
2402
+ poll_exit_response=self._poll_exit_response,
2403
+ server_info_response=self._server_info_response,
2404
+ check_version_response=self._check_version,
2405
+ internal_messages_response=self._internal_messages_response,
2406
+ reporter=self._reporter,
2407
+ quiet=self._quiet,
2408
+ settings=self._settings,
2409
+ printer=self._printer,
2410
+ )
2378
2411
 
2379
2412
  def _console_start(self) -> None:
2380
2413
  logger.info("atexit reg")
@@ -2659,20 +2692,6 @@ class Run:
2659
2692
  for module_name in import_telemetry_set:
2660
2693
  unregister_post_import_hook(module_name, run_id)
2661
2694
 
2662
- def _on_final(self) -> None:
2663
- self._footer(
2664
- sampled_history=self._sampled_history,
2665
- final_summary=self._final_summary,
2666
- poll_exit_response=self._poll_exit_response,
2667
- server_info_response=self._server_info_response,
2668
- check_version_response=self._check_version,
2669
- internal_messages_response=self._internal_messages_response,
2670
- reporter=self._reporter,
2671
- quiet=self._quiet,
2672
- settings=self._settings,
2673
- printer=self._printer,
2674
- )
2675
-
2676
2695
  @_run_decorator._noop_on_finish()
2677
2696
  @_run_decorator._attach
2678
2697
  def define_metric(
@@ -2878,7 +2897,7 @@ class Run:
2878
2897
  if artifact.is_draft() and not artifact._is_draft_save_started():
2879
2898
  artifact = self._log_artifact(artifact)
2880
2899
  if not self._settings._offline:
2881
- self._backend.interface.publish_link_artifact(
2900
+ handle = self._backend.interface.deliver_link_artifact(
2882
2901
  self,
2883
2902
  artifact,
2884
2903
  portfolio,
@@ -2890,6 +2909,13 @@ class Run:
2890
2909
  wandb.termwarn(
2891
2910
  "Artifact TTL will be disabled for source artifacts that are linked to portfolios."
2892
2911
  )
2912
+ result = handle.wait(timeout=-1)
2913
+ if result is None:
2914
+ handle.abandon()
2915
+ else:
2916
+ response = result.response.link_artifact_response
2917
+ if response.error_message:
2918
+ wandb.termerror(response.error_message)
2893
2919
  else:
2894
2920
  # TODO: implement offline mode + sync
2895
2921
  raise NotImplementedError
@@ -3836,34 +3862,33 @@ class Run:
3836
3862
  if not poll_exit_response:
3837
3863
  return
3838
3864
 
3839
- progress = poll_exit_response.pusher_stats
3840
- done = poll_exit_response.done
3865
+ stats = poll_exit_response.pusher_stats
3841
3866
 
3842
3867
  megabyte = wandb.util.POW_2_BYTES[2][1]
3843
- line = f"{progress.uploaded_bytes / megabyte :.3f} MB of {progress.total_bytes / megabyte:.3f} MB uploaded"
3844
- if progress.deduped_bytes > 0:
3845
- line += f" ({progress.deduped_bytes / megabyte:.3f} MB deduped)\r"
3846
- else:
3847
- line += "\r"
3848
-
3849
- percent_done = (
3850
- 1.0
3851
- if progress.total_bytes == 0
3852
- else progress.uploaded_bytes / progress.total_bytes
3868
+ line = (
3869
+ f"{stats.uploaded_bytes / megabyte:.3f} MB"
3870
+ f" of {stats.total_bytes / megabyte:.3f} MB uploaded"
3853
3871
  )
3872
+ if stats.deduped_bytes > 0:
3873
+ line += f" ({stats.deduped_bytes / megabyte:.3f} MB deduped)"
3874
+ line += "\r"
3854
3875
 
3855
- printer.progress_update(line, percent_done)
3856
- if done:
3876
+ if stats.total_bytes > 0:
3877
+ printer.progress_update(line, stats.uploaded_bytes / stats.total_bytes)
3878
+ else:
3879
+ printer.progress_update(line, 1.0)
3880
+
3881
+ if poll_exit_response.done:
3857
3882
  printer.progress_close()
3858
3883
 
3859
- dedupe_fraction = (
3860
- progress.deduped_bytes / float(progress.total_bytes)
3861
- if progress.total_bytes > 0
3862
- else 0
3863
- )
3864
- if dedupe_fraction > 0.01:
3884
+ if stats.total_bytes > 0:
3885
+ dedupe_fraction = stats.deduped_bytes / float(stats.total_bytes)
3886
+ else:
3887
+ dedupe_fraction = 0
3888
+
3889
+ if stats.deduped_bytes > 0.01:
3865
3890
  printer.display(
3866
- f"W&B sync reduced upload amount by {dedupe_fraction * 100:.1f}% "
3891
+ f"W&B sync reduced upload amount by {dedupe_fraction:.1%}"
3867
3892
  )
3868
3893
 
3869
3894
  @staticmethod
wandb/util.py CHANGED
@@ -1748,21 +1748,39 @@ def make_docker_image_name_safe(name: str) -> str:
1748
1748
  return trimmed if trimmed else "image"
1749
1749
 
1750
1750
 
1751
- def merge_dicts(source: Dict[str, Any], destination: Dict[str, Any]) -> Dict[str, Any]:
1752
- """Recursively merge two dictionaries."""
1751
+ def merge_dicts(
1752
+ source: Dict[str, Any],
1753
+ destination: Dict[str, Any],
1754
+ ) -> Dict[str, Any]:
1755
+ """Recursively merge two dictionaries.
1756
+
1757
+ This mutates the destination and its nested dictionaries and lists.
1758
+
1759
+ Instances of `dict` are recursively merged and instances of `list`
1760
+ are appended to the destination. If the destination type is not
1761
+ `dict` or `list`, respectively, the key is overwritten with the
1762
+ source value.
1763
+
1764
+ For all other types, the source value overwrites the destination value.
1765
+ """
1753
1766
  for key, value in source.items():
1754
1767
  if isinstance(value, dict):
1755
- # get node or create one
1756
- node = destination.setdefault(key, {})
1757
- merge_dicts(value, node)
1758
- else:
1759
- if isinstance(value, list):
1760
- if key in destination:
1761
- destination[key].extend(value)
1762
- else:
1763
- destination[key] = value
1768
+ node = destination.get(key)
1769
+ if isinstance(node, dict):
1770
+ merge_dicts(value, node)
1764
1771
  else:
1765
1772
  destination[key] = value
1773
+
1774
+ elif isinstance(value, list):
1775
+ dest_value = destination.get(key)
1776
+ if isinstance(dest_value, list):
1777
+ dest_value.extend(value)
1778
+ else:
1779
+ destination[key] = value
1780
+
1781
+ else:
1782
+ destination[key] = value
1783
+
1766
1784
  return destination
1767
1785
 
1768
1786
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: wandb
3
- Version: 0.17.4
3
+ Version: 0.17.5
4
4
  Summary: A CLI and library for interacting with the Weights & Biases API.
5
5
  Project-URL: Source, https://github.com/wandb/wandb
6
6
  Project-URL: Bug Reports, https://github.com/wandb/wandb/issues
@@ -1,5 +1,5 @@
1
1
  package_readme.md,sha256=7MrccgnqmTcd7_bEs_vUZ_OpN-nfniSlgAzeJkzNw7g,4477
2
- wandb/__init__.py,sha256=7kzWwvhOCQkFQeX088LfTtWlipoK_-xu-d0q-BmNETA,7484
2
+ wandb/__init__.py,sha256=8aeTlxKaEHaEfKIpjlXTeU1sZRlaRpV9H3f72gBwz1Q,7484
3
3
  wandb/__main__.py,sha256=uHY6OxHT6RtTH34zC8_UC1GsCTkndgbdsHXv-t7dOMI,67
4
4
  wandb/_globals.py,sha256=NwgYSB2tl2Z5t1Tn1xpLtfkcmPy_dF01u-xxgnCbzoc,721
5
5
  wandb/data_types.py,sha256=kClN3cbqn7cHK34VB0IrsL4aeQzJlH6JByTfXaU9jao,75220
@@ -8,7 +8,7 @@ wandb/jupyter.py,sha256=k35p4hRr_lwMyyVO1ahDuB6EO9GmU4Lt8GGCWnMtDP0,17454
8
8
  wandb/magic.py,sha256=grKCI_AKHF4vYtTXS-Ts7FeK3sdFB8t2JRqmFwjR-F0,62
9
9
  wandb/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
10
10
  wandb/trigger.py,sha256=d9TizmMPsvr0k9_3SBK2nq-Mb95bTzf9DZ1aE_F0ASo,644
11
- wandb/util.py,sha256=p4zNxORIs5g6rWtMRoa_4WKdMTTHD2GYlZ0cAVNOmrw,62942
11
+ wandb/util.py,sha256=EjXi4XTOeogINglkBDOQiAJI8Got_cGcfg_RO6H4Pc8,63419
12
12
  wandb/viz.py,sha256=o5K7rLL1we5qw9XIxfzk1nyNmf-Y6bKS0UKpWpQAUGw,3578
13
13
  wandb/wandb_agent.py,sha256=BJOMNNmpkS7snPh9sPaWMMdKnfKmg5YK64kmHjUaIeA,21617
14
14
  wandb/wandb_controller.py,sha256=mIwttTH5-b0O_kxlcpZRxI17L5PbB1KkKWFDwgbi0Xg,25525
@@ -49,7 +49,7 @@ wandb/apis/reports/v1/__init__.py,sha256=dat5IoxIT4Ds0gJYh7kd_u01Lk2ArqgPtsF9PuV
49
49
  wandb/apis/reports/v2/__init__.py,sha256=z6cC7mTR35UPLYFwjnDZxodFoOO7KcFWOwePJqwH2iI,270
50
50
  wandb/apis/workspaces/__init__.py,sha256=l7rmQGzeR4XpAKiq5idMMPulve07fgDIMdl8MIQypFk,272
51
51
  wandb/beta/workflows.py,sha256=ENy_lmIyn3k_FHdD2ZO8HBaXdeoLrsPVbEfL_KYW8Ps,10527
52
- wandb/bin/wandb-core,sha256=rPo1b7_3wd2JIWWJ-MPrNHMCjd71iKv9dP52wxBPfkA,11951104
52
+ wandb/bin/wandb-core,sha256=9dcMkhm0IJaMRMNaZBOsdjeo81-iGzTqiuI6p6cO-dE,11761152
53
53
  wandb/cli/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
54
54
  wandb/cli/cli.py,sha256=gV2qVdx-wLS4uuEz9WomgNtEYP5Tc68ZxoGwHqC-tYI,100738
55
55
  wandb/docker/__init__.py,sha256=Wkv5q5xCf9MAzLjGzg_QpuatP6pURCoKsiWpTj7G1jM,10894
@@ -65,7 +65,7 @@ wandb/filesync/stats.py,sha256=RZJQD1rzV38HRAgUsFSN-aIKlOhg3w7_k2-MVGeo9Sk,3150
65
65
  wandb/filesync/step_checksum.py,sha256=V5jeeSkArxid081Zl4Z7G0bZ_4rbUJ3oYDAKQwHqdM0,4832
66
66
  wandb/filesync/step_prepare.py,sha256=QN3pcEkJdUMsEL3gpKsZqTa9D8obnWx8aLQVZ806Vws,5679
67
67
  wandb/filesync/step_upload.py,sha256=es123hTuRW9CDFFk8dNbd5_LM25IPzNirZZziHgn9yg,10663
68
- wandb/filesync/upload_job.py,sha256=jeUzY4IGqAHIz7dm0TR6STCi54aRdInVbJbgC2FVkdU,5613
68
+ wandb/filesync/upload_job.py,sha256=pqqHoMt-yYktz3s7QLGTz1xXYIQiWWTClI6A7yJQCbI,5640
69
69
  wandb/integration/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
70
70
  wandb/integration/magic.py,sha256=r97_Zv-rSoHf6c0cz3BBINyz9LjgyWqzahth3rKtWUA,17802
71
71
  wandb/integration/catboost/__init__.py,sha256=VZfvmNwDlzCJEdFdtFn8qkBOF7-7iHcO_IMzhJJgvko,132
@@ -159,18 +159,18 @@ wandb/proto/wandb_settings_pb2.py,sha256=Aq7nH9PsYXcPKFOPi0Oh2CAaCUpDoPfedycOleI
159
159
  wandb/proto/wandb_telemetry_pb2.py,sha256=bNLhk5I9SDqNvzxi_anYorfvZjv8nG4cMZQvDS0BT9Q,332
160
160
  wandb/proto/v3/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
161
161
  wandb/proto/v3/wandb_base_pb2.py,sha256=TfmnqqxmajAojyOq2NgCBbyybb0DZQViQCw1H0WzXo4,2302
162
- wandb/proto/v3/wandb_internal_pb2.py,sha256=CBP6tPiz4xY9elOsCmOme0mzPiSWoQh86xI08Cuzrh0,107552
162
+ wandb/proto/v3/wandb_internal_pb2.py,sha256=e5A0s12vNcn7s1yj_ap63yuJSqjlhX_mVtkMdASYYS0,108479
163
163
  wandb/proto/v3/wandb_server_pb2.py,sha256=_UR_gBIiHMYiG4CjU2zTKD16Qrd0dXqslA_7VeqXpb8,13838
164
164
  wandb/proto/v3/wandb_settings_pb2.py,sha256=Z_0qzHRllCoU0XA9xLZNvCsmAj_RgneO3QhtdX4l-u8,19804
165
165
  wandb/proto/v3/wandb_telemetry_pb2.py,sha256=cHAORColUwhRDgrUEzJruTqeal1KURVUgFteE_irNAI,13473
166
166
  wandb/proto/v4/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
167
167
  wandb/proto/v4/wandb_base_pb2.py,sha256=C-hDafnFQQtkzyq4MkgwenHl4CJqJ6z7itKjLnFis54,1344
168
- wandb/proto/v4/wandb_internal_pb2.py,sha256=aWUv4tUnI2x6H-6aX-5dT9IMS6cxXhJdQObrMPn0Swo,48640
168
+ wandb/proto/v4/wandb_internal_pb2.py,sha256=-UUwyQyrFJ3ysBEJV13qSGmlhl3DDm5ipLn03mfaknE,49140
169
169
  wandb/proto/v4/wandb_server_pb2.py,sha256=0m6kJn4oG2RAdi1WFR9g6baiZfeB25F3snCIFhl90k8,6053
170
170
  wandb/proto/v4/wandb_settings_pb2.py,sha256=GI0xqS2DinrAKQm4qRblSft6_XMbYy1qKKALz2lCts0,16468
171
171
  wandb/proto/v4/wandb_telemetry_pb2.py,sha256=19GVAVDbiEuc_0Jtch1eF81JSlYXMslcFc3Rm_fp8us,10855
172
172
  wandb/proto/v5/wandb_base_pb2.py,sha256=JegTdMe2YWCrglu-GpI2lVqFxRHoP8hQc2n8bPpv1zE,1471
173
- wandb/proto/v5/wandb_internal_pb2.py,sha256=OHfpJRkJ4Ls_rg4Upqo-3A0lREyJQdm-QgiOi9Rb-hE,52652
173
+ wandb/proto/v5/wandb_internal_pb2.py,sha256=Uag8pygbTwzWZ1aR6frZ6JafrKNrQ_gPIYJmGxbb8a8,53176
174
174
  wandb/proto/v5/wandb_server_pb2.py,sha256=icyGXLmqZLS6gDQsdYO_G75pXVII_JweUNIa_HOaWnA,6540
175
175
  wandb/proto/v5/wandb_settings_pb2.py,sha256=scE47j8a8xawW2JXz3kULrc9XPYhNOPbk9zWsRoCfFA,16777
176
176
  wandb/proto/v5/wandb_telemetry_pb2.py,sha256=5fBL1ngzpWdQfvDIC1G_ErP3f3K7CCW5PS0BfcSAC3Q,11102
@@ -180,11 +180,11 @@ wandb/sdk/wandb_config.py,sha256=w1TaryDssJKF0_r1ps41HTLbMHN1O-bE3A7exd1cLq8,111
180
180
  wandb/sdk/wandb_helper.py,sha256=kc5Ib648to7cEGEwAuJus07rsHudL1Ux7FWPPSRnKy8,1878
181
181
  wandb/sdk/wandb_init.py,sha256=U68L1JeCSQu9X7aoBODpORMVBI3msOa2XVzr08URf1o,50564
182
182
  wandb/sdk/wandb_login.py,sha256=3jL5BufOtcRplOKt2n9gAik0SuH3tt8bQ3G1HTyGs28,11511
183
- wandb/sdk/wandb_manager.py,sha256=t0UdBu5mMZyWmIRMKlrqNxdkG-dilv2DrO7l_STdBnc,7195
183
+ wandb/sdk/wandb_manager.py,sha256=5D5waEeym_R_Ho2GuXaCfZZCOK7O2L4Oc4yvIdgaxbA,7235
184
184
  wandb/sdk/wandb_metric.py,sha256=oI6NQJJ_tyZ3YcnO0Xg5avDVr3Dh6tpTvHuPEMda30A,3378
185
185
  wandb/sdk/wandb_require.py,sha256=ecGIPaRLUemYuCPNpeJKqZtpG_gieMfpQEd9mfqiB44,2950
186
186
  wandb/sdk/wandb_require_helpers.py,sha256=4PUXmVw86_XaKj3rn20s5DAjBMO8L0m26KqnTLaQJNc,1375
187
- wandb/sdk/wandb_run.py,sha256=V33oAR06blTQyhIAauGPKWqvPP--AWl-Kpcxshv4SNw,165136
187
+ wandb/sdk/wandb_run.py,sha256=5fq9uBPumKANT8qyqG1XBX64qHtleHxsfFRsS-_64kY,166036
188
188
  wandb/sdk/wandb_settings.py,sha256=uf-UvTWN2Y2wXPH-G5LgBYk85JyMnzLXQr4nXJJYjz0,76693
189
189
  wandb/sdk/wandb_setup.py,sha256=U1nmZSXQ7LlZsajlkh6qD5MAJtyLnRQqt-wFNTcgKiM,11243
190
190
  wandb/sdk/wandb_summary.py,sha256=eEV3hvHhbc1XQus0MUqFmvhXCzd3SPjvVVVg_fVZ1QM,4686
@@ -192,7 +192,7 @@ wandb/sdk/wandb_sweep.py,sha256=5cSa-T1HooltrUwWQiKEUnU655ss1QPkylax-Q_vu7Q,4004
192
192
  wandb/sdk/wandb_sync.py,sha256=Y_eZ_xW3q9oRAlFUo7s9n2V55z6SP-rd5xr5g6HDKR0,2348
193
193
  wandb/sdk/wandb_watch.py,sha256=--65AwGFLLj1sSUvI4cZunjvhdxXnFTktpzaxEFtdJk,4026
194
194
  wandb/sdk/artifacts/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
195
- wandb/sdk/artifacts/artifact.py,sha256=f2PmJUqrbJa6k16-7i1cSsoenJtUe_lsvkjUyP2_FwQ,91270
195
+ wandb/sdk/artifacts/artifact.py,sha256=0waaRJhKrKop_V6XEJ2ptzsU1RxIDMKqwpGDFc_i1Zk,90919
196
196
  wandb/sdk/artifacts/artifact_download_logger.py,sha256=ENR9uoGFakQzorsVHpHLdzuVElvI7L-RgPONHT1FJw4,1544
197
197
  wandb/sdk/artifacts/artifact_file_cache.py,sha256=rjIKi5oBrev_NVgI60oydvWGl95KsBmYGYeax1XsKFY,10091
198
198
  wandb/sdk/artifacts/artifact_instance_cache.py,sha256=6k5VvyWyRfMCJsBDST3IBs91uctfIZdxZ74DJg-Pa00,488
@@ -249,10 +249,10 @@ wandb/sdk/integration_utils/auto_logging.py,sha256=veVzow8oICc0MzGj2_HkyAVPAbW6r
249
249
  wandb/sdk/integration_utils/data_logging.py,sha256=DtSEZB-TzxQKhjm9IXNxDeOAUZyDXGYrfRvVh2Cju54,20008
250
250
  wandb/sdk/interface/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
251
251
  wandb/sdk/interface/constants.py,sha256=GKZ2hATTBCt7yU8kloafZR34yLChiI36O_VtxZZbQyg,64
252
- wandb/sdk/interface/interface.py,sha256=VMr11kpx6cc63HKJFQlttWaTYHk483PlS4Yk1UJKHSM,34915
252
+ wandb/sdk/interface/interface.py,sha256=zf8qkm7g9pQptC6vd1GjJvZl3Br4w2kKSBCwp8Bkj4E,35217
253
253
  wandb/sdk/interface/interface_queue.py,sha256=QxHmramXIHs4rQEzIk3qzF9ui5BPEAcXSGPt8TZjaEE,2026
254
254
  wandb/sdk/interface/interface_relay.py,sha256=R28bIhebZux7PwFeJmO8wOOkm_uCjmQ2T5lKKy3sL-Y,1567
255
- wandb/sdk/interface/interface_shared.py,sha256=NZBQjyre1nlnlHtbvxNnWhGVA2NXAwfaVOpEMawckrw,21143
255
+ wandb/sdk/interface/interface_shared.py,sha256=soKp6vxj63eb83qse0tUWSQ31j-J6QnaAvnVBj4o54Q,21187
256
256
  wandb/sdk/interface/interface_sock.py,sha256=aurQAyibPjE19ZWi2lCCDsLjo4v3Pi5f59rL1VZ9J0w,2045
257
257
  wandb/sdk/interface/message_future.py,sha256=SlMF8psfA1AW3iVuB_PVLo41bC4U-AAvek1Zlh31mdE,712
258
258
  wandb/sdk/interface/message_future_poll.py,sha256=8a7GcNtCyohHUnxoJ5sx6RRQa2Vu_hjiBqeQ-UQ0RTc,1460
@@ -267,16 +267,16 @@ wandb/sdk/internal/datastore.py,sha256=BPDqVbpOMMbu50haTrKXJ_F-_GFTRp79wD1TgOeIR
267
267
  wandb/sdk/internal/file_pusher.py,sha256=p2a19_6mP0QJYtY1IwHXvahsx6Oj2lTRSmv6mhEibjM,6284
268
268
  wandb/sdk/internal/file_stream.py,sha256=-euEOevpl32WiFyruJv3zgeIqAMKd2Owe9GUM5UI2ec,26619
269
269
  wandb/sdk/internal/flow_control.py,sha256=RL1lKVRwxV9vDwIMBz9L07p25eZgDi5XSDanHfbNzF8,8847
270
- wandb/sdk/internal/handler.py,sha256=HRcHGiPcNIL4-5Ty0_-tZy396QXHQEyISe1npuxlz5I,34589
270
+ wandb/sdk/internal/handler.py,sha256=ll0JUeIGFmwvS1Q6YN4MWPRB84lVagjciEvDLPGqcMo,34597
271
271
  wandb/sdk/internal/internal.py,sha256=b-oc7U7P7xKiL8s-HqTPScDJpYvilyCOEnnBIt9-Clo,13139
272
- wandb/sdk/internal/internal_api.py,sha256=x9p-n7tWXBSxv0-8yM28V4oJW21p2SPuZvfReHJJBws,151392
272
+ wandb/sdk/internal/internal_api.py,sha256=5k7sHeYEdhFJde3Ilx_j6N3T5ATrBCCju054MQN90Sk,151416
273
273
  wandb/sdk/internal/internal_util.py,sha256=LtusH3QYE12A4vH-7-gHXX0O7TfJ2haESf0_MYdYe50,2754
274
274
  wandb/sdk/internal/job_builder.py,sha256=9iMyyEmUfe3-WE-bVpR5X5ci-67kYX1VwG1n2SK7ukA,23326
275
275
  wandb/sdk/internal/profiler.py,sha256=QM5R8-0oWE7WhllhpPEAEwCyB6Uk62HATz8e2F5qIUk,2426
276
276
  wandb/sdk/internal/progress.py,sha256=Tfz1DJNlIj80-Ghb2b7TzHBftgXkfPWwwHlO2NK8UyA,2529
277
277
  wandb/sdk/internal/run.py,sha256=rkEwqdaYPUh_oB-gdCnQ1JIpSHTMoOVadV9CJEgy-kA,707
278
278
  wandb/sdk/internal/sample.py,sha256=QE80NZeW-UsUZBlnf9hG_2KNIZWmLzEpZStYTuL4fOI,2512
279
- wandb/sdk/internal/sender.py,sha256=Xb7nJovZ5rjbVBd9r6CfMboz1-8oMhOtmWs3iWQaj00,67698
279
+ wandb/sdk/internal/sender.py,sha256=fMMH2r_WLaMoJRQP3lIiaHvbTySGZKSDJy3YNZDwLyU,68169
280
280
  wandb/sdk/internal/sender_config.py,sha256=LZaQY4_bzb9003D2j6aynGqv-Mr2GwUGcNmnQrhJOJw,6964
281
281
  wandb/sdk/internal/settings_static.py,sha256=tUieif_B36dCFqJKwfcr4bLF0KVgFhGN6q-vg3orRzw,3616
282
282
  wandb/sdk/internal/tb_watcher.py,sha256=_lOVLuxKBB8EFXdDpwBB6pcS5nC6B3Q2B5jKqsJ8fYU,19206
@@ -322,7 +322,7 @@ wandb/sdk/launch/builder/abstract.py,sha256=CNEtAIn0obqJyVNyyLqgjTzF8A4MR4aWlLUd
322
322
  wandb/sdk/launch/builder/build.py,sha256=qmcdf6r0oK5_6CpbOzQSZSv2cTVq15N9mZWyhe7d12A,11080
323
323
  wandb/sdk/launch/builder/context_manager.py,sha256=pri9aPNLZm8MQIJVekmSIc604PdXOlTKbbyS867i22M,9853
324
324
  wandb/sdk/launch/builder/docker_builder.py,sha256=a3Ijnqr8eW3G0Eoqq053CpsED7evoncjk-PfQ7IqsWw,6493
325
- wandb/sdk/launch/builder/kaniko_builder.py,sha256=XbQkYLB9jLC6bOn3U_hFa0Q0WxbJT53i-NtYpiLuelE,23373
325
+ wandb/sdk/launch/builder/kaniko_builder.py,sha256=ERzVYUOQkIryjs9esWsArzMmLeYYCdoEXFkd-Zq3bhg,24253
326
326
  wandb/sdk/launch/builder/noop.py,sha256=Mr_3IKCmfwX45xztku4uVzeGZh2fbuwylNbNBS3Pjmk,1958
327
327
  wandb/sdk/launch/builder/templates/_wandb_bootstrap.py,sha256=_UKbEWu8PBEXEELSYxlBPFWtNQUUMrJgzwXIatV1jA0,7413
328
328
  wandb/sdk/launch/builder/templates/dockerfile.py,sha256=b-wKn1YguEjxmNAHeRBD0pwur1w_ixtkre2znyZHxS0,2356
@@ -332,8 +332,8 @@ wandb/sdk/launch/environment/azure_environment.py,sha256=75Wamar_QS4lr0RSjdsrENR
332
332
  wandb/sdk/launch/environment/gcp_environment.py,sha256=68PDJaYlT_YXXqbFseXg_AlTR7CDF4R3Qonp6AXfs2g,13069
333
333
  wandb/sdk/launch/environment/local_environment.py,sha256=UeG3fL5w4kbN9SCOvKlJaQwYYne0sB2dymwwcCxbi_s,2324
334
334
  wandb/sdk/launch/inputs/files.py,sha256=wLBb6riNplCtUY_p0uVwyCYH8La7H6naUpB5RVGiMUU,4833
335
- wandb/sdk/launch/inputs/internal.py,sha256=F4UjKYhdpWTktdlY69QwDGbKG8CCI0-pVyxHTt67dOA,6545
336
- wandb/sdk/launch/inputs/manage.py,sha256=eM8B8vh43-yP9N3nFLZionztGODL1apDv54QB798KiU,3881
335
+ wandb/sdk/launch/inputs/internal.py,sha256=Nl0snraGpu-PpVXlQitOPcaVOgdDNPKKiXxgOo_kBos,9693
336
+ wandb/sdk/launch/inputs/manage.py,sha256=OeU9nx_NnpCG2qxXsQgZRQiZBDGiW6046j0RUD9lYI8,5116
337
337
  wandb/sdk/launch/registry/abstract.py,sha256=rpPQlTfOTA6wWTU1DdtbnM9myJxQAwXrg4SQPbo9ORY,1194
338
338
  wandb/sdk/launch/registry/anon.py,sha256=tpo6zCREdt3-uUCc47cpX5e97y2QIfRq9lUrh_9zWNg,972
339
339
  wandb/sdk/launch/registry/azure_container_registry.py,sha256=dc9MomABu6RWA4VVaRFItyJuY1WamKZO7qxsSYyT4Ns,4694
@@ -394,7 +394,7 @@ wandb/sdk/lib/sparkline.py,sha256=x5XSsLn0bV8hLuy54K4TToRcEZtRHUugK8VDiHFo93o,14
394
394
  wandb/sdk/lib/telemetry.py,sha256=1_QPck47Zj0b5dA37lIfpev1tHaHJHoNaiXKjyvdPoA,2852
395
395
  wandb/sdk/lib/timed_input.py,sha256=XF03SXTQj0AysHiIV-LKtbwxtSUx0E7xts7zDPs9kJQ,3362
396
396
  wandb/sdk/lib/timer.py,sha256=Ar1t8f3OFAA4PB2fB2MT9D41y3g2Or56wSAYezvdXqo,459
397
- wandb/sdk/lib/tracelog.py,sha256=_Ng37iwpAxEevt8UAEkUl9cLUim790CskU6k3CNc-A0,7795
397
+ wandb/sdk/lib/tracelog.py,sha256=IvK-t8cQ4AIMZ0hXBqDkJZdX-fBNSwZ422zsRw_nT5M,7827
398
398
  wandb/sdk/lib/wburls.py,sha256=m2CWuFtFPD9R4SzEEsKN-iSwCKiKr6dhOi8_WYrvzHY,1481
399
399
  wandb/sdk/service/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
400
400
  wandb/sdk/service/_startup_debug.py,sha256=piYn6Jg-uR5W-EkablqikEpenyYPQuoQynrPq-iccdo,610
@@ -813,8 +813,8 @@ wandb/vendor/watchdog_0_9_0/wandb_watchdog/utils/importlib2.py,sha256=kX0rdVmTDL
813
813
  wandb/vendor/watchdog_0_9_0/wandb_watchdog/utils/platform.py,sha256=7fpTDfxSYvSRtHvyog-plRdLR5A6k1QVY_AL0gVhhPM,1563
814
814
  wandb/vendor/watchdog_0_9_0/wandb_watchdog/utils/unicode_paths.py,sha256=xzyQmuba2gns1s3Qemu9SXaKV5zeTL3TP9--xOi541g,2254
815
815
  wandb/vendor/watchdog_0_9_0/wandb_watchdog/utils/win32stat.py,sha256=R48kuuEIi7XzCJBJ6Xo7v6DJIbOP5EwcsWaPf5Axn_g,3951
816
- wandb-0.17.4.dist-info/METADATA,sha256=pj2Xkm34_t4x4J8nBDjJbRNnRJOzJwQwAJMUQeSuTZM,10047
817
- wandb-0.17.4.dist-info/WHEEL,sha256=2DRd_I5Nluwhn03SIbdmN0V_7r9FqkBQixEKn2cGyEA,89
818
- wandb-0.17.4.dist-info/entry_points.txt,sha256=v4FCOZ9gW7Pc6KLsmgQqpCiKTrA1wh2XHmNf-NUP1-I,67
819
- wandb-0.17.4.dist-info/licenses/LICENSE,sha256=rJ7p1acqNi17WFOAJ9WqsImXZtKZDA3i_gzdDVGRuFQ,1102
820
- wandb-0.17.4.dist-info/RECORD,,
816
+ wandb-0.17.5.dist-info/METADATA,sha256=bIFHpDndbwGaGh4sip_nuhnf8TeECcLhriJ_tlVDSmc,10047
817
+ wandb-0.17.5.dist-info/WHEEL,sha256=2DRd_I5Nluwhn03SIbdmN0V_7r9FqkBQixEKn2cGyEA,89
818
+ wandb-0.17.5.dist-info/entry_points.txt,sha256=v4FCOZ9gW7Pc6KLsmgQqpCiKTrA1wh2XHmNf-NUP1-I,67
819
+ wandb-0.17.5.dist-info/licenses/LICENSE,sha256=rJ7p1acqNi17WFOAJ9WqsImXZtKZDA3i_gzdDVGRuFQ,1102
820
+ wandb-0.17.5.dist-info/RECORD,,
File without changes