lightning-sdk 2025.10.23__py3-none-any.whl → 2025.10.27__py3-none-any.whl

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.
lightning_sdk/__init__.py CHANGED
@@ -35,7 +35,7 @@ __all__ = [
35
35
  "VM",
36
36
  ]
37
37
 
38
- __version__ = "2025.10.23"
38
+ __version__ = "2025.10.27"
39
39
 
40
40
  _version_checker = VersionChecker()
41
41
  _version_checker.check_and_prompt_upgrade(__version__)
@@ -88,6 +88,7 @@ class MMTApiV2:
88
88
  artifacts_local: Optional[str], # deprecated in favor of path_mappings
89
89
  artifacts_remote: Optional[str], # deprecated in favor of path_mappings
90
90
  max_runtime: Optional[int],
91
+ reuse_snapshot: bool,
91
92
  ) -> V1MultiMachineJob:
92
93
  body = self._create_mmt_body(
93
94
  name=name,
@@ -106,6 +107,7 @@ class MMTApiV2:
106
107
  artifacts_local=artifacts_local, # deprecated in favor of path_mappings
107
108
  artifacts_remote=artifacts_remote, # deprecated in favor of path_mappings
108
109
  max_runtime=max_runtime,
110
+ reuse_snapshot=reuse_snapshot,
109
111
  )
110
112
 
111
113
  job: V1MultiMachineJob = self._client.jobs_service_create_multi_machine_job(project_id=teamspace_id, body=body)
@@ -128,6 +130,7 @@ class MMTApiV2:
128
130
  path_mappings: Optional[Dict[str, str]],
129
131
  artifacts_local: Optional[str], # deprecated in favor of path_mappings
130
132
  artifacts_remote: Optional[str], # deprecated in favor of path_mappings
133
+ reuse_snapshot: bool,
131
134
  max_runtime: Optional[int] = None,
132
135
  machine_image_version: Optional[str] = None,
133
136
  ) -> ProjectIdMultimachinejobsBody:
@@ -138,7 +141,7 @@ class MMTApiV2:
138
141
 
139
142
  instance_name = _machine_to_compute_name(machine)
140
143
 
141
- run_id = __GLOBAL_LIGHTNING_UNIQUE_IDS_STORE__[studio_id] if studio_id is not None else ""
144
+ run_id = __GLOBAL_LIGHTNING_UNIQUE_IDS_STORE__[studio_id] if (studio_id is not None and reuse_snapshot) else ""
142
145
 
143
146
  path_mappings_list = resolve_path_mappings(
144
147
  mappings=path_mappings or {},
lightning_sdk/mmt/base.py CHANGED
@@ -75,6 +75,7 @@ class _BaseMMT(_BaseJob):
75
75
  artifacts_local: Optional[str] = None, # deprecated in favor of path_mappings
76
76
  artifacts_remote: Optional[str] = None, # deprecated in favor of path_mappings
77
77
  cluster: Optional[str] = None, # deprecated in favor of cloud_account
78
+ reuse_snapshot: bool = True,
78
79
  ) -> "_BaseMMT":
79
80
  """Run async workloads using a docker image across multiple machines.
80
81
 
@@ -119,6 +120,8 @@ class _BaseMMT(_BaseJob):
119
120
  Irrelevant for most machines, required for some of the top-end machines on GCP.
120
121
  If in doubt, set it. Won't have an effect on machines not requiring it.
121
122
  Defaults to 3h
123
+ reuse_snapshot: Whether the job should reuse a Studio snapshot when multiple jobs for the same Studio are
124
+ submitted. Turning this off may result in longer job startup times. Defaults to True.
122
125
  """
123
126
  from lightning_sdk.lightning_cloud.openapi.rest import ApiException
124
127
  from lightning_sdk.studio import Studio
@@ -214,6 +217,7 @@ class _BaseMMT(_BaseJob):
214
217
  artifacts_local=artifacts_local,
215
218
  artifacts_remote=artifacts_remote,
216
219
  max_runtime=max_runtime,
220
+ reuse_snapshot=reuse_snapshot,
217
221
  )
218
222
  return inst
219
223
 
@@ -236,6 +240,7 @@ class _BaseMMT(_BaseJob):
236
240
  artifacts_local: Optional[str] = None, # deprecated in favor of path_mappings
237
241
  artifacts_remote: Optional[str] = None, # deprecated in favor of path_mappings
238
242
  max_runtime: Optional[int] = None,
243
+ reuse_snapshot: bool = True,
239
244
  ) -> None:
240
245
  """Submit a new multi-machine job to the Lightning AI platform.
241
246
 
@@ -271,6 +276,8 @@ class _BaseMMT(_BaseJob):
271
276
  Irrelevant for most machines, required for some of the top-end machines on GCP.
272
277
  If in doubt, set it. Won't have an effect on machines not requiring it.
273
278
  Defaults to 3h
279
+ reuse_snapshot: Whether the job should reuse a Studio snapshot when multiple jobs for the same Studio are
280
+ submitted. Turning this off may result in longer job startup times. Defaults to True.
274
281
  """
275
282
 
276
283
  @property
lightning_sdk/mmt/mmt.py CHANGED
@@ -102,6 +102,7 @@ class MMT(_BaseMMT):
102
102
  artifacts_local: Optional[str] = None,
103
103
  artifacts_remote: Optional[str] = None,
104
104
  cluster: Optional[str] = None, # deprecated in favor of cloud_account
105
+ reuse_snapshot: bool = True,
105
106
  ) -> "MMT":
106
107
  """Run async workloads using a docker image across multiple machines.
107
108
 
@@ -141,6 +142,8 @@ class MMT(_BaseMMT):
141
142
  }
142
143
  If the path inside the connection is omitted it's assumed to be the root path of that connection.
143
144
  Only applicable when submitting docker jobs.
145
+ reuse_snapshot: Whether the job should reuse a Studio snapshot when multiple jobs for the same Studio are
146
+ submitted. Turning this off may result in longer job startup times. Defaults to True.
144
147
  """
145
148
  ret_val = super().run(
146
149
  name=name,
@@ -164,6 +167,7 @@ class MMT(_BaseMMT):
164
167
  artifacts_remote=artifacts_remote,
165
168
  cluster=cluster, # deprecated in favor of cloud_account
166
169
  max_runtime=max_runtime,
170
+ reuse_snapshot=reuse_snapshot,
167
171
  )
168
172
  # required for typing with "MMT"
169
173
  assert isinstance(ret_val, cls)
@@ -191,6 +195,7 @@ class MMT(_BaseMMT):
191
195
  max_runtime: Optional[int] = None,
192
196
  artifacts_local: Optional[str] = None, # deprecated in favor of path_mappings
193
197
  artifacts_remote: Optional[str] = None, # deprecated in favor of path_mappings
198
+ reuse_snapshot: bool = True,
194
199
  ) -> "MMT":
195
200
  """Submit a new multi-machine job to the Lightning AI platform.
196
201
 
@@ -231,6 +236,8 @@ class MMT(_BaseMMT):
231
236
  Irrelevant for most machines, required for some of the top-end machines on GCP.
232
237
  If in doubt, set it. Won't have an effect on machines not requiring it.
233
238
  Defaults to 3h
239
+ reuse_snapshot: Whether the job should reuse a Studio snapshot when multiple jobs for the same Studio are
240
+ submitted. Turning this off may result in longer job startup times. Defaults to True.
234
241
  """
235
242
  self._job = self._internal_mmt._submit(
236
243
  num_machines=num_machines,
@@ -249,6 +256,7 @@ class MMT(_BaseMMT):
249
256
  artifacts_local=artifacts_local,
250
257
  artifacts_remote=artifacts_remote,
251
258
  max_runtime=max_runtime,
259
+ reuse_snapshot=reuse_snapshot,
252
260
  )
253
261
  return self
254
262
 
lightning_sdk/mmt/v1.py CHANGED
@@ -58,6 +58,7 @@ class _MMTV1(_BaseMMT):
58
58
  max_runtime: Optional[int] = None,
59
59
  artifacts_local: Optional[str] = None,
60
60
  artifacts_remote: Optional[str] = None,
61
+ reuse_snapshot: bool = True,
61
62
  ) -> "_MMTV1":
62
63
  """Submit a new multi-machine job to the Lightning AI platform.
63
64
 
@@ -96,7 +97,8 @@ class _MMTV1(_BaseMMT):
96
97
  Irrelevant for most machines, required for some of the top-end machines on GCP.
97
98
  If in doubt, set it. Won't have an effect on machines not requiring it.
98
99
  Defaults to 3h
99
-
100
+ reuse_snapshot: Whether the job should reuse a Studio snapshot when multiple jobs for the same Studio are
101
+ submitted. Turning this off may result in longer job startup times. Defaults to True.
100
102
  """
101
103
  raise NotImplementedError("Cannot submit new mmts with MMTV1!")
102
104
 
lightning_sdk/mmt/v2.py CHANGED
@@ -58,6 +58,7 @@ class _MMTV2(_BaseMMT):
58
58
  max_runtime: Optional[int] = None,
59
59
  artifacts_local: Optional[str] = None, # deprecated in favor of path_mappings
60
60
  artifacts_remote: Optional[str] = None, # deprecated in favor of path_mappings
61
+ reuse_snapshot: bool = True,
61
62
  ) -> "_MMTV2":
62
63
  """Submit a new multi-machine job to the Lightning AI platform.
63
64
 
@@ -98,6 +99,8 @@ class _MMTV2(_BaseMMT):
98
99
  Irrelevant for most machines, required for some of the top-end machines on GCP.
99
100
  If in doubt, set it. Won't have an effect on machines not requiring it.
100
101
  Defaults to 3h
102
+ reuse_snapshot: Whether the job should reuse a Studio snapshot when multiple jobs for the same Studio are
103
+ submitted. Turning this off may result in longer job startup times. Defaults to True.
101
104
  """
102
105
  # Command is required if Studio is provided to know what to run
103
106
  # Image is mutually exclusive with Studio
@@ -141,6 +144,7 @@ class _MMTV2(_BaseMMT):
141
144
  artifacts_local=artifacts_local,
142
145
  artifacts_remote=artifacts_remote,
143
146
  max_runtime=max_runtime,
147
+ reuse_snapshot=reuse_snapshot,
144
148
  )
145
149
  self._job = submitted
146
150
  self._name = submitted.name
@@ -175,6 +175,7 @@ class JobStep:
175
175
  path_mappings: Optional[Dict[str, str]] = None,
176
176
  max_runtime: Optional[int] = None,
177
177
  wait_for: Union[str, List[str], None] = DEFAULT,
178
+ reuse_snapshot: bool = True,
178
179
  ) -> None:
179
180
  self.name = name
180
181
  self.machine = machine or Machine.CPU
@@ -201,6 +202,7 @@ class JobStep:
201
202
  self.path_mappings = path_mappings
202
203
  self.max_runtime = max_runtime
203
204
  self.wait_for = wait_for
205
+ self.reuse_snapshot = reuse_snapshot
204
206
 
205
207
  def to_proto(
206
208
  self, teamspace: "Teamspace", cloud_account: str, shared_filesystem: Union[bool, V1SharedFilesystem]
@@ -239,7 +241,7 @@ class JobStep:
239
241
  artifacts_remote=None,
240
242
  max_runtime=self.max_runtime,
241
243
  machine_image_version=machine_image_version,
242
- reuse_snapshot=True,
244
+ reuse_snapshot=self.reuse_snapshot,
243
245
  )
244
246
 
245
247
  return V1PipelineStep(
@@ -273,6 +275,7 @@ class MMTStep:
273
275
  path_mappings: Optional[Dict[str, str]] = None,
274
276
  max_runtime: Optional[int] = None,
275
277
  wait_for: Optional[Union[str, List[str]]] = DEFAULT,
278
+ reuse_snapshot: bool = True,
276
279
  ) -> None:
277
280
  self.machine = machine or Machine.CPU
278
281
  self.num_machines = num_machines
@@ -298,6 +301,7 @@ class MMTStep:
298
301
  self.path_mappings = path_mappings
299
302
  self.max_runtime = max_runtime
300
303
  self.wait_for = wait_for
304
+ self.reuse_snapshot = reuse_snapshot
301
305
 
302
306
  def to_proto(
303
307
  self, teamspace: "Teamspace", cloud_account: str, shared_filesystem: Union[bool, V1SharedFilesystem]
@@ -333,6 +337,7 @@ class MMTStep:
333
337
  artifacts_remote=None, # deprecated in favor of path_mappings
334
338
  max_runtime=self.max_runtime,
335
339
  machine_image_version=machine_image_version,
340
+ reuse_snapshot=self.reuse_snapshot,
336
341
  )
337
342
 
338
343
  return V1PipelineStep(
lightning_sdk/plugin.py CHANGED
@@ -128,6 +128,7 @@ class JobsPlugin(_Plugin):
128
128
  machine: Machine = Machine.CPU,
129
129
  cloud_compute: Optional[Machine] = None,
130
130
  interruptible: bool = False,
131
+ reuse_snapshot: bool = True,
131
132
  ) -> Job:
132
133
  """Launches an asynchronous job.
133
134
 
@@ -137,6 +138,8 @@ class JobsPlugin(_Plugin):
137
138
  machine: The machine to run the job on.
138
139
  interruptible: Whether to run the job on an interruptible machine.
139
140
  These are cheaper but can be preempted at any time.
141
+ reuse_snapshot: Whether the job should reuse a Studio snapshot when multiple jobs for the same Studio are
142
+ submitted. Turning this off may result in longer job startup times. Defaults to True.
140
143
  """
141
144
  if not name:
142
145
  name = _run_name("job")
@@ -151,6 +154,7 @@ class JobsPlugin(_Plugin):
151
154
  teamspace=self._studio.teamspace,
152
155
  cloud_account=self._studio.cloud_account,
153
156
  interruptible=interruptible,
157
+ reuse_snapshot=reuse_snapshot,
154
158
  )
155
159
 
156
160
 
lightning_sdk/studio.py CHANGED
@@ -627,6 +627,7 @@ class Studio:
627
627
  command: str,
628
628
  env: Optional[Dict[str, str]] = None,
629
629
  interruptible: bool = False,
630
+ reuse_snapshot: bool = True,
630
631
  ) -> "Job":
631
632
  """Run async workloads using the compute environment from your studio.
632
633
 
@@ -636,6 +637,8 @@ class Studio:
636
637
  command: The command to run inside your job.
637
638
  env: Environment variables to set inside the job.
638
639
  interruptible: Whether the job should run on interruptible instances. They are cheaper but can be preempted.
640
+ reuse_snapshot: Whether the job should reuse a Studio snapshot when multiple jobs for the same Studio are
641
+ submitted. Turning this off may result in longer job startup times. Defaults to True.
639
642
  """
640
643
  from lightning_sdk.job import Job
641
644
 
@@ -649,6 +652,7 @@ class Studio:
649
652
  cloud_account=self.cloud_account,
650
653
  env=env,
651
654
  interruptible=interruptible,
655
+ reuse_snapshot=reuse_snapshot,
652
656
  )
653
657
 
654
658
  def run_mmt(
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: lightning_sdk
3
- Version: 2025.10.23
3
+ Version: 2025.10.27
4
4
  Summary: SDK to develop using Lightning AI Studios
5
5
  Author-email: Lightning-AI <justus@lightning.ai>
6
6
  License: MIT License
@@ -1,5 +1,5 @@
1
1
  docs/source/conf.py,sha256=r8yX20eC-4mHhMTd0SbQb5TlSWHhO6wnJ0VJ_FBFpag,13249
2
- lightning_sdk/__init__.py,sha256=1Fy5JKAINN88i-aGaLpdZ0CcDOVMctjDeVtiyxy0IOM,1262
2
+ lightning_sdk/__init__.py,sha256=ynn4c3czFAQaLzR5sDdZx7dFJ9S1CMTNEyW-ksxckzc,1262
3
3
  lightning_sdk/agents.py,sha256=ly6Ma1j0ZgGPFyvPvMN28JWiB9dATIstFa5XM8pMi6I,1577
4
4
  lightning_sdk/ai_hub.py,sha256=iI1vNhgcz_Ff1c3rN1ogN7dK-r-HXRj6NMtS2cA14UA,6925
5
5
  lightning_sdk/base_studio.py,sha256=yMvZ1dDq_avW3iu98CLEo9W9UL54mx4C6FC43IKLWAE,4691
@@ -10,11 +10,11 @@ lightning_sdk/machine.py,sha256=GBx4w8qbx_V7ji4-f-uiZ04Z202muORW83Ku0nIbLfA,9614
10
10
  lightning_sdk/models.py,sha256=ur1My3oivAe0p2tAYtOAGM_1tPBht3Oh-xLun-oUK08,7861
11
11
  lightning_sdk/organization.py,sha256=jizjG4oW_oxkP2Qz4vL5cle4Cg12xB_vf4eT-bnvLP0,1352
12
12
  lightning_sdk/owner.py,sha256=t5svD2it4C9pbSpVuG9WJL46CYi37JXNziwnXxhiU5U,1361
13
- lightning_sdk/plugin.py,sha256=f3P5-xZY6x-MX0Fs2z_Q2erSxPSiHZARO0BVkCezHw4,15192
13
+ lightning_sdk/plugin.py,sha256=_XIjgxAmqFtbYjqJc8ItjhBsjE-XWuVUgsPj4UD_d_8,15492
14
14
  lightning_sdk/sandbox.py,sha256=_NvnWotEXW2rBiVFZZ4krKXxVjuAqfNh04qELSM0-Pg,5786
15
15
  lightning_sdk/serve.py,sha256=uW7zLhQ3X90ifetpxzTb8FNxifv5vIs7qZlgfEjVKzk,11794
16
16
  lightning_sdk/status.py,sha256=lLGAuSvXBoXQFEEsEYwdCi0RcSNatUn5OPjJVjDtoM0,386
17
- lightning_sdk/studio.py,sha256=7Z-zhIQdXwANfyJrHUFDx0_2pvVpf35dmJzcxXV-Oo4,36399
17
+ lightning_sdk/studio.py,sha256=fvHZGF3jg7pXWHeBxTzKh3W1rpu-ZE7ITlMTxjp97Zc,36699
18
18
  lightning_sdk/teamspace.py,sha256=iYaEaZH8N8Yj4XXj6M4zIH0tsjPVrAf_BzAAv6Jt9VI,26556
19
19
  lightning_sdk/user.py,sha256=TSYh38rxoi7qKOfrK2JYh_Nknya2Kbz2ngDIY85fFOY,1778
20
20
  lightning_sdk/api/__init__.py,sha256=xrp_RNECJGQtL5rZHF69WOzEuEIbWSLtjWAJAz4R5K4,500
@@ -27,7 +27,7 @@ lightning_sdk/api/job_api.py,sha256=_wB666oyRd6P3Gm8Q0MERQx3Av9QuUpi0XG96x2GhP4,
27
27
  lightning_sdk/api/license_api.py,sha256=nr72JMjGxJktvZmzF1yTz-8kwbeLSBjq1IqHpxV820w,1344
28
28
  lightning_sdk/api/lit_container_api.py,sha256=jCJVwd-3MNjejL9FyvH89pzt-SeG3G8qCJD16iTMJAQ,11454
29
29
  lightning_sdk/api/llm_api.py,sha256=8ouowlX-Ld0hRvueIS6fQqaEJLQMYskvhKV5-Z_A6gE,11886
30
- lightning_sdk/api/mmt_api.py,sha256=adVGNFpinnsE3lkY4QZhpWxq4ZQjhyC1XTmOhpBWXvk,10691
30
+ lightning_sdk/api/mmt_api.py,sha256=yI_iFtxGd1g0pW82xQWY80jSYVmF_xU-eT1-LgUA-KI,10815
31
31
  lightning_sdk/api/org_api.py,sha256=Ze3z_ATVrukobujV5YdC42DKj45Vuwl7X52q_Vr-o3U,803
32
32
  lightning_sdk/api/pipeline_api.py,sha256=rJYp_FN7uUjC5xbc6K67l2eRSmVuOkijd5i8Nm5BF7I,4621
33
33
  lightning_sdk/api/studio_api.py,sha256=itQqpC9Be2O69CX7eful3Q2t66NrtMPAizhxUDImpKA,39927
@@ -1227,15 +1227,15 @@ lightning_sdk/llm/__init__.py,sha256=ErZva0HqN2iPtK_6hI6GN7A_HPGNrHo3wYh7vyFdO3Q
1227
1227
  lightning_sdk/llm/llm.py,sha256=pjBs8fbGZjs0tQRKHx-WdfTmeECKAwI_T1ShVBgdyO4,20836
1228
1228
  lightning_sdk/llm/public_assistants.py,sha256=k0yc41AyrKImnRa8Fv-ow9javnlrRQeP63507p2VybA,1579
1229
1229
  lightning_sdk/mmt/__init__.py,sha256=ExMu90-96bGBnyp5h0CErQszUGB1-PcjC4-R8_NYbeY,117
1230
- lightning_sdk/mmt/base.py,sha256=iqVudKDxazomuezj6l7pa-m9I1EQnM82OKs4ZQbo4Ck,16434
1231
- lightning_sdk/mmt/mmt.py,sha256=CZK0KopnW8j-oez464bYMxc0UbqzsYazsNTq1vBtdlg,14982
1232
- lightning_sdk/mmt/v1.py,sha256=tIMp7Oy5243LEExbLEAm8frKqffdiNA5WjvTdr4NOio,8858
1233
- lightning_sdk/mmt/v2.py,sha256=8DDXYpr5U1Nh8IlMRl3ePBartqh1At_-FcTQ-gsvQEw,10869
1230
+ lightning_sdk/mmt/base.py,sha256=fP5bcZewLgUCLTH82CTauKSH6J4994pS8ZuFnzzN9BI,16991
1231
+ lightning_sdk/mmt/mmt.py,sha256=UqRWtXUAF8XYbatEAwJOW3sOiHcxQ0CxNLldcybW54s,15582
1232
+ lightning_sdk/mmt/v1.py,sha256=PRyqgoHUlzZWsjUv2q8vHT00FxyCSqqVt5p5R9tu36s,9114
1233
+ lightning_sdk/mmt/v2.py,sha256=iQOXb631M1zk63nJzomG-7fh0BLScZz98ndKjn4NMYo,11169
1234
1234
  lightning_sdk/pipeline/__init__.py,sha256=Sja_0NJ8vgh-2ThSVP3WDI9a9qghrWd21LkaQp4Zsp8,378
1235
1235
  lightning_sdk/pipeline/pipeline.py,sha256=A11Q_bRhiQm89n-VcdaXBJsvK8Yb_EY_IijOGnBmPoI,6163
1236
1236
  lightning_sdk/pipeline/printer.py,sha256=fsewFE_nnI-x5KscviYvQbKgNcgMyn-uT0UWlArGn-8,4828
1237
1237
  lightning_sdk/pipeline/schedule.py,sha256=J6lfjeuUMqGhX6xo6-qIliyi7KmB4e8BimTKJh7cJXY,20059
1238
- lightning_sdk/pipeline/steps.py,sha256=70jRyZnIQICIwSQjcDGHlCbTWCuuALt193jC1PMl8j4,14197
1238
+ lightning_sdk/pipeline/steps.py,sha256=vo7pC4gmcx_xMfWwAIctBk39QCxzmbjvDVwWSnTswI4,14424
1239
1239
  lightning_sdk/pipeline/utils.py,sha256=3L7UgY78w2VAVSQmelQNnz_X9zJdFo1NJBtez221ge0,3923
1240
1240
  lightning_sdk/services/__init__.py,sha256=wi1yv0SCnfJub5tOq8y9SblK3-CEseHJuvH-HmtAy7U,229
1241
1241
  lightning_sdk/services/file_endpoint.py,sha256=F_ivy1cPvyvdE5C4aJY7PBSVGn6Dj88QqObbwSvKfYQ,7673
@@ -1249,9 +1249,9 @@ lightning_sdk/utils/license.py,sha256=r68pBJPcjCQ_I-U-0dXxguk9vCskxw8EEhA-Ug0z8c
1249
1249
  lightning_sdk/utils/names.py,sha256=1EuXbIh7wldkDp1FG10oz9vIOyWrpGWeFFVy-DQBgzA,18162
1250
1250
  lightning_sdk/utils/progress.py,sha256=bLWw39fzq29PMWoFXaPIVfoS3Ug245950oWOFJ2ZaiU,12596
1251
1251
  lightning_sdk/utils/resolve.py,sha256=ukC-Zn35gNZV-fQ-ZyUgZkRPFb8nwsFh_aN7YcJ0sl8,10613
1252
- lightning_sdk-2025.10.23.dist-info/LICENSE,sha256=uFIuZwj5z-4TeF2UuacPZ1o17HkvKObT8fY50qN84sg,1064
1253
- lightning_sdk-2025.10.23.dist-info/METADATA,sha256=5DrRQImxzMNSt5ZNWxoJLXBhFP0YQS1xE6H7TvY30Js,4131
1254
- lightning_sdk-2025.10.23.dist-info/WHEEL,sha256=iAkIy5fosb7FzIOwONchHf19Qu7_1wCWyFNR5gu9nU0,91
1255
- lightning_sdk-2025.10.23.dist-info/entry_points.txt,sha256=OoZa4Fc8NMs6GSN0cdA1J8e6couzAcL82CbM1yo4f_M,122
1256
- lightning_sdk-2025.10.23.dist-info/top_level.txt,sha256=ps8doKILFXmN7F1mHncShmnQoTxKBRPIcchC8TpoBw4,19
1257
- lightning_sdk-2025.10.23.dist-info/RECORD,,
1252
+ lightning_sdk-2025.10.27.dist-info/LICENSE,sha256=uFIuZwj5z-4TeF2UuacPZ1o17HkvKObT8fY50qN84sg,1064
1253
+ lightning_sdk-2025.10.27.dist-info/METADATA,sha256=YHS7qReBt5GlmYyMjd6lnBlLQskh9x3Fr0uaQbP9IPo,4131
1254
+ lightning_sdk-2025.10.27.dist-info/WHEEL,sha256=iAkIy5fosb7FzIOwONchHf19Qu7_1wCWyFNR5gu9nU0,91
1255
+ lightning_sdk-2025.10.27.dist-info/entry_points.txt,sha256=OoZa4Fc8NMs6GSN0cdA1J8e6couzAcL82CbM1yo4f_M,122
1256
+ lightning_sdk-2025.10.27.dist-info/top_level.txt,sha256=ps8doKILFXmN7F1mHncShmnQoTxKBRPIcchC8TpoBw4,19
1257
+ lightning_sdk-2025.10.27.dist-info/RECORD,,