coiled 1.134.1.dev9__tar.gz → 1.134.2.dev1__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 (104) hide show
  1. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/PKG-INFO +1 -1
  2. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/setup/azure.py +5 -5
  3. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/core.py +7 -3
  4. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/v2/core.py +1 -1
  5. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/.gitignore +0 -0
  6. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/LICENSE +0 -0
  7. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/README.md +0 -0
  8. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/__init__.py +0 -0
  9. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/__main__.py +0 -0
  10. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/analytics.py +0 -0
  11. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/auth.py +0 -0
  12. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/batch.py +0 -0
  13. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/capture_environment.py +0 -0
  14. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/__init__.py +0 -0
  15. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/batch/__init__.py +0 -0
  16. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/batch/list.py +0 -0
  17. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/batch/logs.py +0 -0
  18. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/batch/run.py +0 -0
  19. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/batch/status.py +0 -0
  20. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/batch/util.py +0 -0
  21. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/batch/wait.py +0 -0
  22. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/cluster/__init__.py +0 -0
  23. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/cluster/azure_logs.py +0 -0
  24. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/cluster/better_logs.py +0 -0
  25. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/cluster/crud.py +0 -0
  26. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/cluster/get_address.py +0 -0
  27. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/cluster/list.py +0 -0
  28. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/cluster/logs.py +0 -0
  29. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/cluster/metrics.py +0 -0
  30. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/cluster/ssh.py +0 -0
  31. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/cluster/utils.py +0 -0
  32. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/config.py +0 -0
  33. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/core.py +0 -0
  34. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/curl.py +0 -0
  35. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/diagnostics.py +0 -0
  36. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/env.py +0 -0
  37. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/file.py +0 -0
  38. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/hello/__init__.py +0 -0
  39. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/hello/examples/__init__.py +0 -0
  40. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/hello/examples/exit.py +0 -0
  41. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/hello/examples/hello_world.py +0 -0
  42. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/hello/examples/nyc_parquet.py +0 -0
  43. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/hello/examples/pytorch.py +0 -0
  44. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/hello/examples/xarray_nwm.py +0 -0
  45. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/hello/hello.py +0 -0
  46. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/hello/scripts/fill_ipython.py +0 -0
  47. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/hello/scripts/nyc_parquet.py +0 -0
  48. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/hello/scripts/pytorch.py +0 -0
  49. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/hello/scripts/xarray_nwm.py +0 -0
  50. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/hello/utils.py +0 -0
  51. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/login.py +0 -0
  52. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/mpi.py +0 -0
  53. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/notebook/__init__.py +0 -0
  54. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/notebook/notebook.py +0 -0
  55. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/package_sync.py +0 -0
  56. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/prefect.py +0 -0
  57. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/prefect_serve.py +0 -0
  58. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/run.py +0 -0
  59. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/setup/__init__.py +0 -0
  60. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/setup/amp.py +0 -0
  61. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/setup/aws.py +0 -0
  62. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/setup/entry.py +0 -0
  63. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/setup/gcp.py +0 -0
  64. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/setup/prometheus.py +0 -0
  65. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/setup/util.py +0 -0
  66. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/sync.py +0 -0
  67. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cli/utils.py +0 -0
  68. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/cluster.py +0 -0
  69. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/coiled.yaml +0 -0
  70. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/compatibility.py +0 -0
  71. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/config.py +0 -0
  72. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/context.py +0 -0
  73. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/credentials/__init__.py +0 -0
  74. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/credentials/aws.py +0 -0
  75. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/credentials/google.py +0 -0
  76. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/errors.py +0 -0
  77. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/exceptions.py +0 -0
  78. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/extensions/__init__.py +0 -0
  79. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/extensions/prefect/__init__.py +0 -0
  80. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/extensions/prefect/runners.py +0 -0
  81. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/extensions/prefect/workers.py +0 -0
  82. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/filestore.py +0 -0
  83. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/function.py +0 -0
  84. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/plugins.py +0 -0
  85. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/prefect.py +0 -0
  86. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/pypi_conda_map.py +0 -0
  87. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/scan.py +0 -0
  88. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/software.py +0 -0
  89. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/software_utils.py +0 -0
  90. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/spans.py +0 -0
  91. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/spark.py +0 -0
  92. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/types.py +0 -0
  93. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/utils.py +0 -0
  94. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/v2/__init__.py +0 -0
  95. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/v2/cluster.py +0 -0
  96. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/v2/cluster_comms.py +0 -0
  97. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/v2/cwi_log_link.py +0 -0
  98. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/v2/states.py +0 -0
  99. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/v2/widgets/__init__.py +0 -0
  100. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/v2/widgets/interface.py +0 -0
  101. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/v2/widgets/rich.py +0 -0
  102. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/v2/widgets/util.py +0 -0
  103. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/coiled/websockets.py +0 -0
  104. {coiled-1.134.1.dev9 → coiled-1.134.2.dev1}/pyproject.toml +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: coiled
3
- Version: 1.134.1.dev9
3
+ Version: 1.134.2.dev1
4
4
  Summary: Python client for coiled.io dask clusters
5
5
  Project-URL: Homepage, https://coiled.io
6
6
  Maintainer-email: Coiled <info@coiled.io>
@@ -388,15 +388,15 @@ def setup_with_service_principal(
388
388
  json.dump(log_role_def(sub_id), f)
389
389
 
390
390
  az_cli_wrapper(
391
- f"az role definition create --role-definition @{role_def_path}",
392
- command_if_exists=f"az role definition update --role-definition @{role_def_path}"
391
+ f"az role definition create --role-definition '@{role_def_path}'",
392
+ command_if_exists=f"az role definition update --role-definition '@{role_def_path}'"
393
393
  if update_role_definitions
394
394
  else None,
395
395
  )
396
396
  print(f" [bright_black]Creating/updating role definition {LOG_ROLE_NAME}...")
397
397
  az_cli_wrapper(
398
- f"az role definition create --role-definition @{log_role_def_path}",
399
- command_if_exists=f"az role definition update --role-definition @{log_role_def_path}"
398
+ f"az role definition create --role-definition '@{log_role_def_path}'",
399
+ command_if_exists=f"az role definition update --role-definition '@{log_role_def_path}'"
400
400
  if update_role_definitions
401
401
  else None,
402
402
  )
@@ -473,7 +473,7 @@ def submit_azure_credentials(coiled_account, sub_id, rg_name, region, creds_to_s
473
473
 
474
474
 
475
475
  def strip_output(output: str) -> str:
476
- return output.strip(' \n"')
476
+ return output.strip(' \r\n"')
477
477
 
478
478
 
479
479
  def get_cli_path() -> str | None:
@@ -396,9 +396,13 @@ class Cloud(Generic[IsAsynchronous]):
396
396
 
397
397
  @backoff.on_exception(
398
398
  backoff.expo,
399
- # `aiohttp.client_exceptions.ClientOSError` is the same as `aiohttp.ClientOSError`
400
- # except that pyright doesn't like the former
401
- aiohttp.ClientOSError,
399
+ (
400
+ # `aiohttp.client_exceptions.ClientOSError` is the same as `aiohttp.ClientOSError`
401
+ # except that pyright doesn't like the former
402
+ aiohttp.ClientOSError,
403
+ # sibling of ClientOSError; covers transient TCP-connect timeouts
404
+ aiohttp.ConnectionTimeoutError,
405
+ ),
402
406
  logger=logger,
403
407
  max_time=5 * 60,
404
408
  **backoff_log_level_kwargs,
@@ -596,7 +596,7 @@ class CloudV2(OldCloud, Generic[IsAsynchronous]):
596
596
 
597
597
  async def _load_server_dask_config(self, workspace: str | None = None):
598
598
  workspace = workspace or self.default_workspace
599
- response = await self._do_request(
599
+ response = await self._do_request_idempotent(
600
600
  "GET",
601
601
  self.server + f"/api/v2/user/workspace/{workspace}/dask-config-overrides",
602
602
  )
File without changes
File without changes
File without changes