podstack 1.3.9__tar.gz → 1.3.11__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. {podstack-1.3.9 → podstack-1.3.11}/PKG-INFO +1 -1
  2. {podstack-1.3.9 → podstack-1.3.11}/podstack/registry/client.py +13 -7
  3. {podstack-1.3.9 → podstack-1.3.11}/podstack.egg-info/PKG-INFO +1 -1
  4. {podstack-1.3.9 → podstack-1.3.11}/pyproject.toml +1 -1
  5. {podstack-1.3.9 → podstack-1.3.11}/LICENSE +0 -0
  6. {podstack-1.3.9 → podstack-1.3.11}/README.md +0 -0
  7. {podstack-1.3.9 → podstack-1.3.11}/podstack/__init__.py +0 -0
  8. {podstack-1.3.9 → podstack-1.3.11}/podstack/annotations.py +0 -0
  9. {podstack-1.3.9 → podstack-1.3.11}/podstack/client.py +0 -0
  10. {podstack-1.3.9 → podstack-1.3.11}/podstack/exceptions.py +0 -0
  11. {podstack-1.3.9 → podstack-1.3.11}/podstack/execution.py +0 -0
  12. {podstack-1.3.9 → podstack-1.3.11}/podstack/gpu_runner.py +0 -0
  13. {podstack-1.3.9 → podstack-1.3.11}/podstack/models.py +0 -0
  14. {podstack-1.3.9 → podstack-1.3.11}/podstack/notebook.py +0 -0
  15. {podstack-1.3.9 → podstack-1.3.11}/podstack/registry/__init__.py +0 -0
  16. {podstack-1.3.9 → podstack-1.3.11}/podstack/registry/exceptions.py +0 -0
  17. {podstack-1.3.9 → podstack-1.3.11}/podstack/registry/experiment.py +0 -0
  18. {podstack-1.3.9 → podstack-1.3.11}/podstack/registry/model.py +0 -0
  19. {podstack-1.3.9 → podstack-1.3.11}/podstack/registry/model_utils.py +0 -0
  20. {podstack-1.3.9 → podstack-1.3.11}/podstack.egg-info/SOURCES.txt +0 -0
  21. {podstack-1.3.9 → podstack-1.3.11}/podstack.egg-info/dependency_links.txt +0 -0
  22. {podstack-1.3.9 → podstack-1.3.11}/podstack.egg-info/requires.txt +0 -0
  23. {podstack-1.3.9 → podstack-1.3.11}/podstack.egg-info/top_level.txt +0 -0
  24. {podstack-1.3.9 → podstack-1.3.11}/podstack_gpu/__init__.py +0 -0
  25. {podstack-1.3.9 → podstack-1.3.11}/podstack_gpu/app.py +0 -0
  26. {podstack-1.3.9 → podstack-1.3.11}/podstack_gpu/exceptions.py +0 -0
  27. {podstack-1.3.9 → podstack-1.3.11}/podstack_gpu/image.py +0 -0
  28. {podstack-1.3.9 → podstack-1.3.11}/podstack_gpu/runner.py +0 -0
  29. {podstack-1.3.9 → podstack-1.3.11}/podstack_gpu/secret.py +0 -0
  30. {podstack-1.3.9 → podstack-1.3.11}/podstack_gpu/utils.py +0 -0
  31. {podstack-1.3.9 → podstack-1.3.11}/podstack_gpu/volume.py +0 -0
  32. {podstack-1.3.9 → podstack-1.3.11}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: podstack
3
- Version: 1.3.9
3
+ Version: 1.3.11
4
4
  Summary: Official Python SDK for Podstack GPU Notebook Platform
5
5
  Author-email: Podstack <support@podstack.ai>
6
6
  License-Expression: MIT
@@ -413,23 +413,29 @@ class RegistryClient:
413
413
 
414
414
  try:
415
415
  data = self._request("POST", "/models", json=body)
416
+ model_data = data.get("model", data)
417
+ model = RegisteredModel.from_dict(model_data, client=self)
416
418
  except RegistryError as e:
417
419
  if "already exists" in str(e).lower():
418
- data = self._request("GET", f"/models/{name}")
420
+ # get_model() handles both UUID and name lookup correctly
421
+ model = self.get_model(name)
419
422
  else:
420
423
  raise
421
- model_data = data.get("model", data)
422
- model = RegisteredModel.from_dict(model_data, client=self)
423
424
 
424
- # Auto-create version 1 when run_id is provided.
425
+ # Auto-create a version when run_id is provided.
425
426
  # Only pass source when the artifact dir actually exists locally;
426
427
  # otherwise let the backend derive it from the run's artifact URI.
427
428
  if run_id:
428
429
  artifact_dir = self._get_artifact_dir(run_id)
429
430
  source = artifact_dir if os.path.isdir(artifact_dir) else None
430
- self.create_model_version(
431
- model.id, run_id=run_id, source=source
432
- )
431
+ try:
432
+ self.create_model_version(
433
+ model.id, run_id=run_id, source=source
434
+ )
435
+ except RegistryError as ve:
436
+ # Version may already exist — that is fine.
437
+ if "already exists" not in str(ve).lower():
438
+ raise
433
439
 
434
440
  return model
435
441
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: podstack
3
- Version: 1.3.9
3
+ Version: 1.3.11
4
4
  Summary: Official Python SDK for Podstack GPU Notebook Platform
5
5
  Author-email: Podstack <support@podstack.ai>
6
6
  License-Expression: MIT
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "podstack"
7
- version = "1.3.9"
7
+ version = "1.3.11"
8
8
  description = "Official Python SDK for Podstack GPU Notebook Platform"
9
9
  readme = "README.md"
10
10
  license = "MIT"
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes