deriva-ml 1.17.5__tar.gz → 1.17.7__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.
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/PKG-INFO +1 -1
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml/__init__.py +2 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml/core/base.py +6 -2
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml/execution/__init__.py +2 -2
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml/execution/execution.py +6 -1
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml/execution/execution_configuration.py +8 -2
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml/execution/workflow.py +12 -3
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml/schema/create_schema.py +1 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml.egg-info/PKG-INFO +1 -1
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/uv.lock +88 -94
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/.github/release-drafter.yml +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/.github/workflows/publish-docs.yml +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/.github/workflows/release.yml +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/.gitignore +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/LICENSE +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/README.md +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/docs/.DS_Store +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/docs/Notebooks/DerivaML Create Notes.ipynb +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/docs/Notebooks/DerivaML Dataset.ipynb +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/docs/Notebooks/DerivaML Execution.ipynb +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/docs/Notebooks/DerivaML Features.ipynb +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/docs/Notebooks/DerivaML Ingest.ipynb +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/docs/Notebooks/DerivaML Vocabulary.ipynb +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/docs/assets/ERD.png +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/docs/assets/Launcher.png +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/docs/assets/copy_minid.png +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/docs/assets/deriva-logo.png +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/docs/assets/deriva-ml.pdf +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/docs/assets/sharing-at-home.pdf +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/docs/code-docs/dataset.md +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/docs/code-docs/dataset_aux_classes.md +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/docs/code-docs/dataset_bag.md +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/docs/code-docs/deriva_definitions.md +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/docs/code-docs/deriva_ml_base.md +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/docs/code-docs/deriva_model.md +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/docs/code-docs/execution.md +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/docs/code-docs/execution_configuration.md +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/docs/code-docs/feature.md +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/docs/code-docs/upload.md +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/docs/index.md +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/docs/release-notes.md +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/docs/user-guide/datasets.md +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/docs/user-guide/deriva_ml_structure.md +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/docs/user-guide/execution-configuration.md +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/docs/user-guide/file-assets.md +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/docs/user-guide/identifiers.md +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/docs/user-guide/install.md +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/docs/user-guide/notebooks.md +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/docs/user-guide/overview.md +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/mkdocs.yml +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/pyproject.toml +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/setup.cfg +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/.DS_Store +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml/.DS_Store +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml/bump_version.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml/core/__init__.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml/core/config.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml/core/constants.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml/core/definitions.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml/core/enums.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml/core/ermrest.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml/core/exceptions.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml/core/filespec.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml/dataset/__init__.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml/dataset/aux_classes.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml/dataset/dataset.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml/dataset/dataset_bag.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml/dataset/history.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml/dataset/upload.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml/demo_catalog.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml/execution/environment.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml/feature.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml/install_kernel.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml/model/__init__.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml/model/catalog.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml/model/database.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml/protocols/dataset.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml/run_notebook.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml/schema/__init__.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml/schema/annotations.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml/schema/check_schema.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml/schema/deriva-ml-reference.json +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml/schema/policy.json +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml/schema/table_comments_utils.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml/test.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml.egg-info/SOURCES.txt +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml.egg-info/dependency_links.txt +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml.egg-info/entry_points.txt +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml.egg-info/requires.txt +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/src/deriva_ml.egg-info/top_level.txt +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/tests/__init__.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/tests/conftest.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/tests/core/__init__.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/tests/core/test_basic_tables.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/tests/core/test_file.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/tests/core/test_vocabulary.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/tests/dataset/__init__.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/tests/dataset/demo-catalog-schema.json +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/tests/dataset/deriva-ml-reference.json +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/tests/dataset/eye-ai-catalog-schema.json +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/tests/dataset/test_dataset_version.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/tests/dataset/test_datasets.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/tests/dataset/test_download.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/tests/execution/__init__.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/tests/execution/test_execution.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/tests/execution/workflow-test.ipynb +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/tests/execution/workflow-test.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/tests/feature/test_features.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/tests/model/__init__.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/tests/model/test_database.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/tests/model/test_models.py +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/tests/test-files/execution-parameters.json +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/tests/test-files/notebook-parameters.json +0 -0
- {deriva_ml-1.17.5 → deriva_ml-1.17.7}/tests/test_utils.py +0 -0
|
@@ -187,6 +187,7 @@ class DerivaML(Dataset):
|
|
|
187
187
|
logger_config = DEFAULT_LOGGER_OVERRIDES
|
|
188
188
|
# allow for reconfiguration of module-specific logging levels
|
|
189
189
|
[logging.getLogger(name).setLevel(level) for name, level in logger_config.items()]
|
|
190
|
+
logging.getLogger("root").setLevel(deriva_logging_level)
|
|
190
191
|
logging.getLogger("bagit").setLevel(deriva_logging_level)
|
|
191
192
|
logging.getLogger("bdbag").setLevel(deriva_logging_level)
|
|
192
193
|
|
|
@@ -1439,7 +1440,9 @@ class DerivaML(Dataset):
|
|
|
1439
1440
|
# Create and return a new workflow object
|
|
1440
1441
|
return Workflow(name=name, workflow_type=workflow_type, description=description)
|
|
1441
1442
|
|
|
1442
|
-
def create_execution(
|
|
1443
|
+
def create_execution(
|
|
1444
|
+
self, configuration: ExecutionConfiguration, workflow: Workflow | RID | None = None, dry_run: bool = False
|
|
1445
|
+
) -> "Execution":
|
|
1443
1446
|
"""Creates an execution environment.
|
|
1444
1447
|
|
|
1445
1448
|
Given an execution configuration, initialize the local compute environment to prepare for executing an
|
|
@@ -1454,6 +1457,7 @@ class DerivaML(Dataset):
|
|
|
1454
1457
|
|
|
1455
1458
|
Args:
|
|
1456
1459
|
configuration: ExecutionConfiguration:
|
|
1460
|
+
workflow: Workflow object representing the workflow to execute if not present in the ExecutionConfiguration.
|
|
1457
1461
|
dry_run: Do not create an execution record or upload results.
|
|
1458
1462
|
|
|
1459
1463
|
Returns:
|
|
@@ -1463,7 +1467,7 @@ class DerivaML(Dataset):
|
|
|
1463
1467
|
from deriva_ml.execution.execution import Execution
|
|
1464
1468
|
|
|
1465
1469
|
# Create and store an execution instance
|
|
1466
|
-
self._execution = Execution(configuration, self, dry_run=dry_run)
|
|
1470
|
+
self._execution = Execution(configuration, self, workflow=workflow, dry_run=dry_run)
|
|
1467
1471
|
return self._execution
|
|
1468
1472
|
|
|
1469
1473
|
def restore_execution(self, execution_rid: RID | None = None) -> Execution:
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
from typing import TYPE_CHECKING
|
|
2
2
|
|
|
3
3
|
# Safe imports - no circular dependencies
|
|
4
|
-
from deriva_ml.execution.execution_configuration import
|
|
4
|
+
from deriva_ml.execution.execution_configuration import AssetRIDConfig, ExecutionConfiguration
|
|
5
5
|
from deriva_ml.execution.workflow import Workflow
|
|
6
6
|
|
|
7
7
|
if TYPE_CHECKING:
|
|
@@ -22,5 +22,5 @@ __all__ = [
|
|
|
22
22
|
"Execution", # Lazy-loaded
|
|
23
23
|
"ExecutionConfiguration",
|
|
24
24
|
"Workflow",
|
|
25
|
-
"AssetRIDConfig"
|
|
25
|
+
"AssetRIDConfig",
|
|
26
26
|
]
|
|
@@ -216,6 +216,7 @@ class Execution:
|
|
|
216
216
|
self,
|
|
217
217
|
configuration: ExecutionConfiguration,
|
|
218
218
|
ml_object: DerivaML,
|
|
219
|
+
workflow: Workflow | RID | None = None,
|
|
219
220
|
reload: RID | None = None,
|
|
220
221
|
dry_run: bool = False,
|
|
221
222
|
):
|
|
@@ -227,6 +228,8 @@ class Execution:
|
|
|
227
228
|
Args:
|
|
228
229
|
configuration: Settings and parameters for the execution.
|
|
229
230
|
ml_object: DerivaML instance managing the execution.
|
|
231
|
+
workflow: Optional workflow RID or Workflow object. If not specified, the workflow RID is taken from
|
|
232
|
+
the ExecutionConfiguration object
|
|
230
233
|
reload: Optional RID of existing execution to reload.
|
|
231
234
|
dry_run: If True, don't create catalog records or upload results.
|
|
232
235
|
|
|
@@ -234,7 +237,7 @@ class Execution:
|
|
|
234
237
|
DerivaMLException: If initialization fails or configuration is invalid.
|
|
235
238
|
"""
|
|
236
239
|
|
|
237
|
-
self.asset_paths: list[AssetFilePath] =
|
|
240
|
+
self.asset_paths: dict[str, list[AssetFilePath]] = {}
|
|
238
241
|
self.configuration = configuration
|
|
239
242
|
self._ml_object = ml_object
|
|
240
243
|
self._model = ml_object.model
|
|
@@ -253,6 +256,8 @@ class Execution:
|
|
|
253
256
|
self._dry_run = dry_run
|
|
254
257
|
|
|
255
258
|
# Make sure we have a good workflow.
|
|
259
|
+
if workflow:
|
|
260
|
+
self.configuration.workflow = workflow
|
|
256
261
|
if isinstance(self.configuration.workflow, Workflow):
|
|
257
262
|
self._ml_object.lookup_term(MLVocab.workflow_type, configuration.workflow.workflow_type)
|
|
258
263
|
self.workflow_rid = (
|
|
@@ -26,9 +26,11 @@ import json
|
|
|
26
26
|
import sys
|
|
27
27
|
from dataclasses import dataclass
|
|
28
28
|
from pathlib import Path
|
|
29
|
+
from typing import Any
|
|
29
30
|
|
|
30
31
|
from hydra_zen import builds
|
|
31
|
-
from
|
|
32
|
+
from omegaconf import DictConfig
|
|
33
|
+
from pydantic import BaseModel, ConfigDict, Field, field_validator
|
|
32
34
|
|
|
33
35
|
from deriva_ml.core.definitions import RID
|
|
34
36
|
from deriva_ml.dataset.aux_classes import DatasetSpec
|
|
@@ -67,7 +69,7 @@ class ExecutionConfiguration(BaseModel):
|
|
|
67
69
|
|
|
68
70
|
datasets: list[DatasetSpec] = []
|
|
69
71
|
assets: list[RID] = []
|
|
70
|
-
workflow: RID | Workflow
|
|
72
|
+
workflow: RID | Workflow | None = None
|
|
71
73
|
description: str = ""
|
|
72
74
|
argv: list[str] = Field(default_factory=lambda: sys.argv)
|
|
73
75
|
|
|
@@ -80,6 +82,10 @@ class ExecutionConfiguration(BaseModel):
|
|
|
80
82
|
# config_list: DatasetList = value
|
|
81
83
|
# value = config_list.datasets
|
|
82
84
|
# return value
|
|
85
|
+
@field_validator("assets", mode="before")
|
|
86
|
+
@classmethod
|
|
87
|
+
def validate_assets(cls, value: Any) -> Any:
|
|
88
|
+
return [v.rid if isinstance(v, DictConfig) or isinstance(v, AssetRID) else v for v in value]
|
|
83
89
|
|
|
84
90
|
@staticmethod
|
|
85
91
|
def load_configuration(path: Path) -> ExecutionConfiguration:
|
|
@@ -3,6 +3,7 @@ import logging
|
|
|
3
3
|
import os
|
|
4
4
|
import subprocess
|
|
5
5
|
import sys
|
|
6
|
+
import warnings
|
|
6
7
|
from pathlib import Path
|
|
7
8
|
from typing import Any
|
|
8
9
|
|
|
@@ -130,7 +131,6 @@ class Workflow(BaseModel):
|
|
|
130
131
|
self.git_root = Workflow._get_git_root(path)
|
|
131
132
|
|
|
132
133
|
self.version = Workflow.get_dynamic_version(root=str(self.git_root or Path.cwd()))
|
|
133
|
-
|
|
134
134
|
self._logger = logging.getLogger("deriva_ml")
|
|
135
135
|
return self
|
|
136
136
|
|
|
@@ -392,10 +392,19 @@ class Workflow(BaseModel):
|
|
|
392
392
|
|
|
393
393
|
Works under uv / Python 3.10+ by forcing setuptools to use stdlib distutils.
|
|
394
394
|
"""
|
|
395
|
-
#
|
|
395
|
+
# 1) Tell setuptools to use stdlib distutils (or no override) to avoid
|
|
396
|
+
# the '_distutils_hack' assertion you hit.
|
|
396
397
|
os.environ.setdefault("SETUPTOOLS_USE_DISTUTILS", "stdlib")
|
|
397
398
|
|
|
398
|
-
|
|
399
|
+
warnings.filterwarnings(
|
|
400
|
+
"ignore",
|
|
401
|
+
category=UserWarning,
|
|
402
|
+
module="_distutils_hack",
|
|
403
|
+
)
|
|
404
|
+
try:
|
|
405
|
+
from setuptools_scm import get_version
|
|
406
|
+
except Exception as e: # ImportError or anything environment-specific
|
|
407
|
+
raise RuntimeError(f"setuptools_scm is not available: {e}") from e
|
|
399
408
|
|
|
400
409
|
if root is None:
|
|
401
410
|
# Adjust this to point at your repo root if needed
|
|
@@ -310,6 +310,7 @@ def initialize_ml_schema(model: Model, schema_name: str = "deriva-ml"):
|
|
|
310
310
|
},
|
|
311
311
|
{"Name": "File", "Description": "A file that is not managed by Hatrac"},
|
|
312
312
|
{"Name": "Input_File", "Description": "A file input to an execution."},
|
|
313
|
+
{"Name": "Output_File", "Description": "A file output from an execution."},
|
|
313
314
|
{"Name": "Model_File", "Description": "The ML model."},
|
|
314
315
|
{
|
|
315
316
|
"Name": "Notebook_Output",
|
|
@@ -1168,63 +1168,57 @@ wheels = [
|
|
|
1168
1168
|
|
|
1169
1169
|
[[package]]
|
|
1170
1170
|
name = "greenlet"
|
|
1171
|
-
version = "3.
|
|
1172
|
-
source = { registry = "https://pypi.org/simple" }
|
|
1173
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
1174
|
-
wheels = [
|
|
1175
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1176
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1177
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1178
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1179
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1180
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1181
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1182
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1183
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1184
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1185
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1186
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1187
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1188
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1189
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1190
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1191
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1192
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1193
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1194
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1195
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1196
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1197
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1198
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1199
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1200
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1201
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1202
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1203
|
-
{ url = "https://files.pythonhosted.org/packages/8e/
|
|
1204
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1205
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1206
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1207
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1208
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1209
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1210
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1211
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1212
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1213
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1214
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1215
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1216
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1217
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1218
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1219
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1220
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1221
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1222
|
-
{ url = "https://files.pythonhosted.org/packages/dc/8b/29aae55436521f1d6f8ff4e12fb676f3400de7fcf27fccd1d4d17fd8fecd/greenlet-3.2.4-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:b4a1870c51720687af7fa3e7cda6d08d801dae660f75a76f3845b642b4da6ee1", size = 694659, upload-time = "2025-08-07T13:53:17.759Z" },
|
|
1223
|
-
{ url = "https://files.pythonhosted.org/packages/92/2e/ea25914b1ebfde93b6fc4ff46d6864564fba59024e928bdc7de475affc25/greenlet-3.2.4-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:061dc4cf2c34852b052a8620d40f36324554bc192be474b9e9770e8c042fd735", size = 695355, upload-time = "2025-08-07T13:18:34.517Z" },
|
|
1224
|
-
{ url = "https://files.pythonhosted.org/packages/72/60/fc56c62046ec17f6b0d3060564562c64c862948c9d4bc8aa807cf5bd74f4/greenlet-3.2.4-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:44358b9bf66c8576a9f57a590d5f5d6e72fa4228b763d0e43fee6d3b06d3a337", size = 657512, upload-time = "2025-08-07T13:18:33.969Z" },
|
|
1225
|
-
{ url = "https://files.pythonhosted.org/packages/23/6e/74407aed965a4ab6ddd93a7ded3180b730d281c77b765788419484cdfeef/greenlet-3.2.4-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:2917bdf657f5859fbf3386b12d68ede4cf1f04c90c3a6bc1f013dd68a22e2269", size = 1612508, upload-time = "2025-11-04T12:42:23.427Z" },
|
|
1226
|
-
{ url = "https://files.pythonhosted.org/packages/0d/da/343cd760ab2f92bac1845ca07ee3faea9fe52bee65f7bcb19f16ad7de08b/greenlet-3.2.4-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:015d48959d4add5d6c9f6c5210ee3803a830dce46356e3bc326d6776bde54681", size = 1680760, upload-time = "2025-11-04T12:42:25.341Z" },
|
|
1227
|
-
{ url = "https://files.pythonhosted.org/packages/e3/a5/6ddab2b4c112be95601c13428db1d8b6608a8b6039816f2ba09c346c08fc/greenlet-3.2.4-cp314-cp314-win_amd64.whl", hash = "sha256:e37ab26028f12dbb0ff65f29a8d3d44a765c61e729647bf2ddfbbed621726f01", size = 303425, upload-time = "2025-08-07T13:32:27.59Z" },
|
|
1171
|
+
version = "3.3.0"
|
|
1172
|
+
source = { registry = "https://pypi.org/simple" }
|
|
1173
|
+
sdist = { url = "https://files.pythonhosted.org/packages/c7/e5/40dbda2736893e3e53d25838e0f19a2b417dfc122b9989c91918db30b5d3/greenlet-3.3.0.tar.gz", hash = "sha256:a82bb225a4e9e4d653dd2fb7b8b2d36e4fb25bc0165422a11e48b88e9e6f78fb", size = 190651, upload-time = "2025-12-04T14:49:44.05Z" }
|
|
1174
|
+
wheels = [
|
|
1175
|
+
{ url = "https://files.pythonhosted.org/packages/32/6a/33d1702184d94106d3cdd7bfb788e19723206fce152e303473ca3b946c7b/greenlet-3.3.0-cp310-cp310-macosx_11_0_universal2.whl", hash = "sha256:6f8496d434d5cb2dce025773ba5597f71f5410ae499d5dd9533e0653258cdb3d", size = 273658, upload-time = "2025-12-04T14:23:37.494Z" },
|
|
1176
|
+
{ url = "https://files.pythonhosted.org/packages/d6/b7/2b5805bbf1907c26e434f4e448cd8b696a0b71725204fa21a211ff0c04a7/greenlet-3.3.0-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b96dc7eef78fd404e022e165ec55327f935b9b52ff355b067eb4a0267fc1cffb", size = 574810, upload-time = "2025-12-04T14:50:04.154Z" },
|
|
1177
|
+
{ url = "https://files.pythonhosted.org/packages/94/38/343242ec12eddf3d8458c73f555c084359883d4ddc674240d9e61ec51fd6/greenlet-3.3.0-cp310-cp310-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:73631cd5cccbcfe63e3f9492aaa664d278fda0ce5c3d43aeda8e77317e38efbd", size = 586248, upload-time = "2025-12-04T14:57:39.35Z" },
|
|
1178
|
+
{ url = "https://files.pythonhosted.org/packages/f0/d0/0ae86792fb212e4384041e0ef8e7bc66f59a54912ce407d26a966ed2914d/greenlet-3.3.0-cp310-cp310-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:b299a0cb979f5d7197442dccc3aee67fce53500cd88951b7e6c35575701c980b", size = 597403, upload-time = "2025-12-04T15:07:10.831Z" },
|
|
1179
|
+
{ url = "https://files.pythonhosted.org/packages/b6/a8/15d0aa26c0036a15d2659175af00954aaaa5d0d66ba538345bd88013b4d7/greenlet-3.3.0-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:7dee147740789a4632cace364816046e43310b59ff8fb79833ab043aefa72fd5", size = 586910, upload-time = "2025-12-04T14:25:59.705Z" },
|
|
1180
|
+
{ url = "https://files.pythonhosted.org/packages/e1/9b/68d5e3b7ccaba3907e5532cf8b9bf16f9ef5056a008f195a367db0ff32db/greenlet-3.3.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:39b28e339fc3c348427560494e28d8a6f3561c8d2bcf7d706e1c624ed8d822b9", size = 1547206, upload-time = "2025-12-04T15:04:21.027Z" },
|
|
1181
|
+
{ url = "https://files.pythonhosted.org/packages/66/bd/e3086ccedc61e49f91e2cfb5ffad9d8d62e5dc85e512a6200f096875b60c/greenlet-3.3.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:b3c374782c2935cc63b2a27ba8708471de4ad1abaa862ffdb1ef45a643ddbb7d", size = 1613359, upload-time = "2025-12-04T14:27:26.548Z" },
|
|
1182
|
+
{ url = "https://files.pythonhosted.org/packages/f4/6b/d4e73f5dfa888364bbf02efa85616c6714ae7c631c201349782e5b428925/greenlet-3.3.0-cp310-cp310-win_amd64.whl", hash = "sha256:b49e7ed51876b459bd645d83db257f0180e345d3f768a35a85437a24d5a49082", size = 300740, upload-time = "2025-12-04T14:47:52.773Z" },
|
|
1183
|
+
{ url = "https://files.pythonhosted.org/packages/1f/cb/48e964c452ca2b92175a9b2dca037a553036cb053ba69e284650ce755f13/greenlet-3.3.0-cp311-cp311-macosx_11_0_universal2.whl", hash = "sha256:e29f3018580e8412d6aaf5641bb7745d38c85228dacf51a73bd4e26ddf2a6a8e", size = 274908, upload-time = "2025-12-04T14:23:26.435Z" },
|
|
1184
|
+
{ url = "https://files.pythonhosted.org/packages/28/da/38d7bff4d0277b594ec557f479d65272a893f1f2a716cad91efeb8680953/greenlet-3.3.0-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:a687205fb22794e838f947e2194c0566d3812966b41c78709554aa883183fb62", size = 577113, upload-time = "2025-12-04T14:50:05.493Z" },
|
|
1185
|
+
{ url = "https://files.pythonhosted.org/packages/3c/f2/89c5eb0faddc3ff014f1c04467d67dee0d1d334ab81fadbf3744847f8a8a/greenlet-3.3.0-cp311-cp311-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:4243050a88ba61842186cb9e63c7dfa677ec146160b0efd73b855a3d9c7fcf32", size = 590338, upload-time = "2025-12-04T14:57:41.136Z" },
|
|
1186
|
+
{ url = "https://files.pythonhosted.org/packages/80/d7/db0a5085035d05134f8c089643da2b44cc9b80647c39e93129c5ef170d8f/greenlet-3.3.0-cp311-cp311-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:670d0f94cd302d81796e37299bcd04b95d62403883b24225c6b5271466612f45", size = 601098, upload-time = "2025-12-04T15:07:11.898Z" },
|
|
1187
|
+
{ url = "https://files.pythonhosted.org/packages/dc/a6/e959a127b630a58e23529972dbc868c107f9d583b5a9f878fb858c46bc1a/greenlet-3.3.0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:6cb3a8ec3db4a3b0eb8a3c25436c2d49e3505821802074969db017b87bc6a948", size = 590206, upload-time = "2025-12-04T14:26:01.254Z" },
|
|
1188
|
+
{ url = "https://files.pythonhosted.org/packages/48/60/29035719feb91798693023608447283b266b12efc576ed013dd9442364bb/greenlet-3.3.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:2de5a0b09eab81fc6a382791b995b1ccf2b172a9fec934747a7a23d2ff291794", size = 1550668, upload-time = "2025-12-04T15:04:22.439Z" },
|
|
1189
|
+
{ url = "https://files.pythonhosted.org/packages/0a/5f/783a23754b691bfa86bd72c3033aa107490deac9b2ef190837b860996c9f/greenlet-3.3.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:4449a736606bd30f27f8e1ff4678ee193bc47f6ca810d705981cfffd6ce0d8c5", size = 1615483, upload-time = "2025-12-04T14:27:28.083Z" },
|
|
1190
|
+
{ url = "https://files.pythonhosted.org/packages/1d/d5/c339b3b4bc8198b7caa4f2bd9fd685ac9f29795816d8db112da3d04175bb/greenlet-3.3.0-cp311-cp311-win_amd64.whl", hash = "sha256:7652ee180d16d447a683c04e4c5f6441bae7ba7b17ffd9f6b3aff4605e9e6f71", size = 301164, upload-time = "2025-12-04T14:42:51.577Z" },
|
|
1191
|
+
{ url = "https://files.pythonhosted.org/packages/f8/0a/a3871375c7b9727edaeeea994bfff7c63ff7804c9829c19309ba2e058807/greenlet-3.3.0-cp312-cp312-macosx_11_0_universal2.whl", hash = "sha256:b01548f6e0b9e9784a2c99c5651e5dc89ffcbe870bc5fb2e5ef864e9cc6b5dcb", size = 276379, upload-time = "2025-12-04T14:23:30.498Z" },
|
|
1192
|
+
{ url = "https://files.pythonhosted.org/packages/43/ab/7ebfe34dce8b87be0d11dae91acbf76f7b8246bf9d6b319c741f99fa59c6/greenlet-3.3.0-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:349345b770dc88f81506c6861d22a6ccd422207829d2c854ae2af8025af303e3", size = 597294, upload-time = "2025-12-04T14:50:06.847Z" },
|
|
1193
|
+
{ url = "https://files.pythonhosted.org/packages/a4/39/f1c8da50024feecd0793dbd5e08f526809b8ab5609224a2da40aad3a7641/greenlet-3.3.0-cp312-cp312-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:e8e18ed6995e9e2c0b4ed264d2cf89260ab3ac7e13555b8032b25a74c6d18655", size = 607742, upload-time = "2025-12-04T14:57:42.349Z" },
|
|
1194
|
+
{ url = "https://files.pythonhosted.org/packages/77/cb/43692bcd5f7a0da6ec0ec6d58ee7cddb606d055ce94a62ac9b1aa481e969/greenlet-3.3.0-cp312-cp312-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:c024b1e5696626890038e34f76140ed1daf858e37496d33f2af57f06189e70d7", size = 622297, upload-time = "2025-12-04T15:07:13.552Z" },
|
|
1195
|
+
{ url = "https://files.pythonhosted.org/packages/75/b0/6bde0b1011a60782108c01de5913c588cf51a839174538d266de15e4bf4d/greenlet-3.3.0-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:047ab3df20ede6a57c35c14bf5200fcf04039d50f908270d3f9a7a82064f543b", size = 609885, upload-time = "2025-12-04T14:26:02.368Z" },
|
|
1196
|
+
{ url = "https://files.pythonhosted.org/packages/49/0e/49b46ac39f931f59f987b7cd9f34bfec8ef81d2a1e6e00682f55be5de9f4/greenlet-3.3.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:2d9ad37fc657b1102ec880e637cccf20191581f75c64087a549e66c57e1ceb53", size = 1567424, upload-time = "2025-12-04T15:04:23.757Z" },
|
|
1197
|
+
{ url = "https://files.pythonhosted.org/packages/05/f5/49a9ac2dff7f10091935def9165c90236d8f175afb27cbed38fb1d61ab6b/greenlet-3.3.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:83cd0e36932e0e7f36a64b732a6f60c2fc2df28c351bae79fbaf4f8092fe7614", size = 1636017, upload-time = "2025-12-04T14:27:29.688Z" },
|
|
1198
|
+
{ url = "https://files.pythonhosted.org/packages/6c/79/3912a94cf27ec503e51ba493692d6db1e3cd8ac7ac52b0b47c8e33d7f4f9/greenlet-3.3.0-cp312-cp312-win_amd64.whl", hash = "sha256:a7a34b13d43a6b78abf828a6d0e87d3385680eaf830cd60d20d52f249faabf39", size = 301964, upload-time = "2025-12-04T14:36:58.316Z" },
|
|
1199
|
+
{ url = "https://files.pythonhosted.org/packages/02/2f/28592176381b9ab2cafa12829ba7b472d177f3acc35d8fbcf3673d966fff/greenlet-3.3.0-cp313-cp313-macosx_11_0_universal2.whl", hash = "sha256:a1e41a81c7e2825822f4e068c48cb2196002362619e2d70b148f20a831c00739", size = 275140, upload-time = "2025-12-04T14:23:01.282Z" },
|
|
1200
|
+
{ url = "https://files.pythonhosted.org/packages/2c/80/fbe937bf81e9fca98c981fe499e59a3f45df2a04da0baa5c2be0dca0d329/greenlet-3.3.0-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:9f515a47d02da4d30caaa85b69474cec77b7929b2e936ff7fb853d42f4bf8808", size = 599219, upload-time = "2025-12-04T14:50:08.309Z" },
|
|
1201
|
+
{ url = "https://files.pythonhosted.org/packages/c2/ff/7c985128f0514271b8268476af89aee6866df5eec04ac17dcfbc676213df/greenlet-3.3.0-cp313-cp313-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:7d2d9fd66bfadf230b385fdc90426fcd6eb64db54b40c495b72ac0feb5766c54", size = 610211, upload-time = "2025-12-04T14:57:43.968Z" },
|
|
1202
|
+
{ url = "https://files.pythonhosted.org/packages/79/07/c47a82d881319ec18a4510bb30463ed6891f2ad2c1901ed5ec23d3de351f/greenlet-3.3.0-cp313-cp313-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:30a6e28487a790417d036088b3bcb3f3ac7d8babaa7d0139edbaddebf3af9492", size = 624311, upload-time = "2025-12-04T15:07:14.697Z" },
|
|
1203
|
+
{ url = "https://files.pythonhosted.org/packages/fd/8e/424b8c6e78bd9837d14ff7df01a9829fc883ba2ab4ea787d4f848435f23f/greenlet-3.3.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:087ea5e004437321508a8d6f20efc4cfec5e3c30118e1417ea96ed1d93950527", size = 612833, upload-time = "2025-12-04T14:26:03.669Z" },
|
|
1204
|
+
{ url = "https://files.pythonhosted.org/packages/b5/ba/56699ff9b7c76ca12f1cdc27a886d0f81f2189c3455ff9f65246780f713d/greenlet-3.3.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:ab97cf74045343f6c60a39913fa59710e4bd26a536ce7ab2397adf8b27e67c39", size = 1567256, upload-time = "2025-12-04T15:04:25.276Z" },
|
|
1205
|
+
{ url = "https://files.pythonhosted.org/packages/1e/37/f31136132967982d698c71a281a8901daf1a8fbab935dce7c0cf15f942cc/greenlet-3.3.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:5375d2e23184629112ca1ea89a53389dddbffcf417dad40125713d88eb5f96e8", size = 1636483, upload-time = "2025-12-04T14:27:30.804Z" },
|
|
1206
|
+
{ url = "https://files.pythonhosted.org/packages/7e/71/ba21c3fb8c5dce83b8c01f458a42e99ffdb1963aeec08fff5a18588d8fd7/greenlet-3.3.0-cp313-cp313-win_amd64.whl", hash = "sha256:9ee1942ea19550094033c35d25d20726e4f1c40d59545815e1128ac58d416d38", size = 301833, upload-time = "2025-12-04T14:32:23.929Z" },
|
|
1207
|
+
{ url = "https://files.pythonhosted.org/packages/d7/7c/f0a6d0ede2c7bf092d00bc83ad5bafb7e6ec9b4aab2fbdfa6f134dc73327/greenlet-3.3.0-cp314-cp314-macosx_11_0_universal2.whl", hash = "sha256:60c2ef0f578afb3c8d92ea07ad327f9a062547137afe91f38408f08aacab667f", size = 275671, upload-time = "2025-12-04T14:23:05.267Z" },
|
|
1208
|
+
{ url = "https://files.pythonhosted.org/packages/44/06/dac639ae1a50f5969d82d2e3dd9767d30d6dbdbab0e1a54010c8fe90263c/greenlet-3.3.0-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:0a5d554d0712ba1de0a6c94c640f7aeba3f85b3a6e1f2899c11c2c0428da9365", size = 646360, upload-time = "2025-12-04T14:50:10.026Z" },
|
|
1209
|
+
{ url = "https://files.pythonhosted.org/packages/e0/94/0fb76fe6c5369fba9bf98529ada6f4c3a1adf19e406a47332245ef0eb357/greenlet-3.3.0-cp314-cp314-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:3a898b1e9c5f7307ebbde4102908e6cbfcb9ea16284a3abe15cab996bee8b9b3", size = 658160, upload-time = "2025-12-04T14:57:45.41Z" },
|
|
1210
|
+
{ url = "https://files.pythonhosted.org/packages/93/79/d2c70cae6e823fac36c3bbc9077962105052b7ef81db2f01ec3b9bf17e2b/greenlet-3.3.0-cp314-cp314-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:dcd2bdbd444ff340e8d6bdf54d2f206ccddbb3ccfdcd3c25bf4afaa7b8f0cf45", size = 671388, upload-time = "2025-12-04T15:07:15.789Z" },
|
|
1211
|
+
{ url = "https://files.pythonhosted.org/packages/b8/14/bab308fc2c1b5228c3224ec2bf928ce2e4d21d8046c161e44a2012b5203e/greenlet-3.3.0-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:5773edda4dc00e173820722711d043799d3adb4f01731f40619e07ea2750b955", size = 660166, upload-time = "2025-12-04T14:26:05.099Z" },
|
|
1212
|
+
{ url = "https://files.pythonhosted.org/packages/4b/d2/91465d39164eaa0085177f61983d80ffe746c5a1860f009811d498e7259c/greenlet-3.3.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:ac0549373982b36d5fd5d30beb8a7a33ee541ff98d2b502714a09f1169f31b55", size = 1615193, upload-time = "2025-12-04T15:04:27.041Z" },
|
|
1213
|
+
{ url = "https://files.pythonhosted.org/packages/42/1b/83d110a37044b92423084d52d5d5a3b3a73cafb51b547e6d7366ff62eff1/greenlet-3.3.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:d198d2d977460358c3b3a4dc844f875d1adb33817f0613f663a656f463764ccc", size = 1683653, upload-time = "2025-12-04T14:27:32.366Z" },
|
|
1214
|
+
{ url = "https://files.pythonhosted.org/packages/7c/9a/9030e6f9aa8fd7808e9c31ba4c38f87c4f8ec324ee67431d181fe396d705/greenlet-3.3.0-cp314-cp314-win_amd64.whl", hash = "sha256:73f51dd0e0bdb596fb0417e475fa3c5e32d4c83638296e560086b8d7da7c4170", size = 305387, upload-time = "2025-12-04T14:26:51.063Z" },
|
|
1215
|
+
{ url = "https://files.pythonhosted.org/packages/a0/66/bd6317bc5932accf351fc19f177ffba53712a202f9df10587da8df257c7e/greenlet-3.3.0-cp314-cp314t-macosx_11_0_universal2.whl", hash = "sha256:d6ed6f85fae6cdfdb9ce04c9bf7a08d666cfcfb914e7d006f44f840b46741931", size = 282638, upload-time = "2025-12-04T14:25:20.941Z" },
|
|
1216
|
+
{ url = "https://files.pythonhosted.org/packages/30/cf/cc81cb030b40e738d6e69502ccbd0dd1bced0588e958f9e757945de24404/greenlet-3.3.0-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d9125050fcf24554e69c4cacb086b87b3b55dc395a8b3ebe6487b045b2614388", size = 651145, upload-time = "2025-12-04T14:50:11.039Z" },
|
|
1217
|
+
{ url = "https://files.pythonhosted.org/packages/9c/ea/1020037b5ecfe95ca7df8d8549959baceb8186031da83d5ecceff8b08cd2/greenlet-3.3.0-cp314-cp314t-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:87e63ccfa13c0a0f6234ed0add552af24cc67dd886731f2261e46e241608bee3", size = 654236, upload-time = "2025-12-04T14:57:47.007Z" },
|
|
1218
|
+
{ url = "https://files.pythonhosted.org/packages/69/cc/1e4bae2e45ca2fa55299f4e85854606a78ecc37fead20d69322f96000504/greenlet-3.3.0-cp314-cp314t-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:2662433acbca297c9153a4023fe2161c8dcfdcc91f10433171cf7e7d94ba2221", size = 662506, upload-time = "2025-12-04T15:07:16.906Z" },
|
|
1219
|
+
{ url = "https://files.pythonhosted.org/packages/57/b9/f8025d71a6085c441a7eaff0fd928bbb275a6633773667023d19179fe815/greenlet-3.3.0-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:3c6e9b9c1527a78520357de498b0e709fb9e2f49c3a513afd5a249007261911b", size = 653783, upload-time = "2025-12-04T14:26:06.225Z" },
|
|
1220
|
+
{ url = "https://files.pythonhosted.org/packages/f6/c7/876a8c7a7485d5d6b5c6821201d542ef28be645aa024cfe1145b35c120c1/greenlet-3.3.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:286d093f95ec98fdd92fcb955003b8a3d054b4e2cab3e2707a5039e7b50520fd", size = 1614857, upload-time = "2025-12-04T15:04:28.484Z" },
|
|
1221
|
+
{ url = "https://files.pythonhosted.org/packages/4f/dc/041be1dff9f23dac5f48a43323cd0789cb798342011c19a248d9c9335536/greenlet-3.3.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:6c10513330af5b8ae16f023e8ddbfb486ab355d04467c4679c5cfe4659975dd9", size = 1676034, upload-time = "2025-12-04T14:27:33.531Z" },
|
|
1228
1222
|
]
|
|
1229
1223
|
|
|
1230
1224
|
[[package]]
|
|
@@ -1346,7 +1340,7 @@ dependencies = [
|
|
|
1346
1340
|
{ name = "comm" },
|
|
1347
1341
|
{ name = "debugpy" },
|
|
1348
1342
|
{ name = "ipython", version = "8.37.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.11'" },
|
|
1349
|
-
{ name = "ipython", version = "9.
|
|
1343
|
+
{ name = "ipython", version = "9.8.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.11'" },
|
|
1350
1344
|
{ name = "jupyter-client" },
|
|
1351
1345
|
{ name = "jupyter-core" },
|
|
1352
1346
|
{ name = "matplotlib-inline" },
|
|
@@ -1389,7 +1383,7 @@ wheels = [
|
|
|
1389
1383
|
|
|
1390
1384
|
[[package]]
|
|
1391
1385
|
name = "ipython"
|
|
1392
|
-
version = "9.
|
|
1386
|
+
version = "9.8.0"
|
|
1393
1387
|
source = { registry = "https://pypi.org/simple" }
|
|
1394
1388
|
resolution-markers = [
|
|
1395
1389
|
"python_full_version >= '3.14'",
|
|
@@ -1409,9 +1403,9 @@ dependencies = [
|
|
|
1409
1403
|
{ name = "traitlets", marker = "python_full_version >= '3.11'" },
|
|
1410
1404
|
{ name = "typing-extensions", marker = "python_full_version == '3.11.*'" },
|
|
1411
1405
|
]
|
|
1412
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
1406
|
+
sdist = { url = "https://files.pythonhosted.org/packages/12/51/a703c030f4928646d390b4971af4938a1b10c9dfce694f0d99a0bb073cb2/ipython-9.8.0.tar.gz", hash = "sha256:8e4ce129a627eb9dd221c41b1d2cdaed4ef7c9da8c17c63f6f578fe231141f83", size = 4424940, upload-time = "2025-12-03T10:18:24.353Z" }
|
|
1413
1407
|
wheels = [
|
|
1414
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1408
|
+
{ url = "https://files.pythonhosted.org/packages/f1/df/8ee1c5dd1e3308b5d5b2f2dfea323bb2f3827da8d654abb6642051199049/ipython-9.8.0-py3-none-any.whl", hash = "sha256:ebe6d1d58d7d988fbf23ff8ff6d8e1622cfdb194daf4b7b73b792c4ec3b85385", size = 621374, upload-time = "2025-12-03T10:18:22.335Z" },
|
|
1415
1409
|
]
|
|
1416
1410
|
|
|
1417
1411
|
[[package]]
|
|
@@ -1433,7 +1427,7 @@ source = { registry = "https://pypi.org/simple" }
|
|
|
1433
1427
|
dependencies = [
|
|
1434
1428
|
{ name = "comm" },
|
|
1435
1429
|
{ name = "ipython", version = "8.37.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.11'" },
|
|
1436
|
-
{ name = "ipython", version = "9.
|
|
1430
|
+
{ name = "ipython", version = "9.8.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.11'" },
|
|
1437
1431
|
{ name = "jupyterlab-widgets" },
|
|
1438
1432
|
{ name = "traitlets" },
|
|
1439
1433
|
{ name = "widgetsnbextension" },
|
|
@@ -1577,7 +1571,7 @@ source = { registry = "https://pypi.org/simple" }
|
|
|
1577
1571
|
dependencies = [
|
|
1578
1572
|
{ name = "ipykernel" },
|
|
1579
1573
|
{ name = "ipython", version = "8.37.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.11'" },
|
|
1580
|
-
{ name = "ipython", version = "9.
|
|
1574
|
+
{ name = "ipython", version = "9.8.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.11'" },
|
|
1581
1575
|
{ name = "jupyter-client" },
|
|
1582
1576
|
{ name = "jupyter-core" },
|
|
1583
1577
|
{ name = "prompt-toolkit" },
|
|
@@ -2048,7 +2042,7 @@ python = [
|
|
|
2048
2042
|
|
|
2049
2043
|
[[package]]
|
|
2050
2044
|
name = "mkdocstrings-python"
|
|
2051
|
-
version = "2.0.
|
|
2045
|
+
version = "2.0.1"
|
|
2052
2046
|
source = { registry = "https://pypi.org/simple" }
|
|
2053
2047
|
dependencies = [
|
|
2054
2048
|
{ name = "griffe" },
|
|
@@ -2056,9 +2050,9 @@ dependencies = [
|
|
|
2056
2050
|
{ name = "mkdocstrings" },
|
|
2057
2051
|
{ name = "typing-extensions", marker = "python_full_version < '3.11'" },
|
|
2058
2052
|
]
|
|
2059
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
2053
|
+
sdist = { url = "https://files.pythonhosted.org/packages/24/75/d30af27a2906f00eb90143470272376d728521997800f5dce5b340ba35bc/mkdocstrings_python-2.0.1.tar.gz", hash = "sha256:843a562221e6a471fefdd4b45cc6c22d2607ccbad632879234fa9692e9cf7732", size = 199345, upload-time = "2025-12-03T14:26:11.755Z" }
|
|
2060
2054
|
wheels = [
|
|
2061
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
2055
|
+
{ url = "https://files.pythonhosted.org/packages/81/06/c5f8deba7d2cbdfa7967a716ae801aa9ca5f734b8f54fd473ef77a088dbe/mkdocstrings_python-2.0.1-py3-none-any.whl", hash = "sha256:66ecff45c5f8b71bf174e11d49afc845c2dfc7fc0ab17a86b6b337e0f24d8d90", size = 105055, upload-time = "2025-12-03T14:26:10.184Z" },
|
|
2062
2056
|
]
|
|
2063
2057
|
|
|
2064
2058
|
[[package]]
|
|
@@ -2668,11 +2662,11 @@ wheels = [
|
|
|
2668
2662
|
|
|
2669
2663
|
[[package]]
|
|
2670
2664
|
name = "platformdirs"
|
|
2671
|
-
version = "4.5.
|
|
2665
|
+
version = "4.5.1"
|
|
2672
2666
|
source = { registry = "https://pypi.org/simple" }
|
|
2673
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
2667
|
+
sdist = { url = "https://files.pythonhosted.org/packages/cf/86/0248f086a84f01b37aaec0fa567b397df1a119f73c16f6c7a9aac73ea309/platformdirs-4.5.1.tar.gz", hash = "sha256:61d5cdcc6065745cdd94f0f878977f8de9437be93de97c1c12f853c9c0cdcbda", size = 21715, upload-time = "2025-12-05T13:52:58.638Z" }
|
|
2674
2668
|
wheels = [
|
|
2675
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
2669
|
+
{ url = "https://files.pythonhosted.org/packages/cb/28/3bfe2fa5a7b9c46fe7e13c97bda14c895fb10fa2ebf1d0abb90e0cea7ee1/platformdirs-4.5.1-py3-none-any.whl", hash = "sha256:d03afa3963c806a9bed9d5125c8f4cb2fdaf74a55ab60e5d59b3fde758104d31", size = 18731, upload-time = "2025-12-05T13:52:56.823Z" },
|
|
2676
2670
|
]
|
|
2677
2671
|
|
|
2678
2672
|
[[package]]
|
|
@@ -3640,28 +3634,28 @@ wheels = [
|
|
|
3640
3634
|
|
|
3641
3635
|
[[package]]
|
|
3642
3636
|
name = "ruff"
|
|
3643
|
-
version = "0.14.
|
|
3644
|
-
source = { registry = "https://pypi.org/simple" }
|
|
3645
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
3646
|
-
wheels = [
|
|
3647
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
3648
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
3649
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
3650
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
3651
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
3652
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
3653
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
3654
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
3655
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
3656
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
3657
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
3658
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
3659
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
3660
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
3661
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
3662
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
3663
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
3664
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
3637
|
+
version = "0.14.8"
|
|
3638
|
+
source = { registry = "https://pypi.org/simple" }
|
|
3639
|
+
sdist = { url = "https://files.pythonhosted.org/packages/ed/d9/f7a0c4b3a2bf2556cd5d99b05372c29980249ef71e8e32669ba77428c82c/ruff-0.14.8.tar.gz", hash = "sha256:774ed0dd87d6ce925e3b8496feb3a00ac564bea52b9feb551ecd17e0a23d1eed", size = 5765385, upload-time = "2025-12-04T15:06:17.669Z" }
|
|
3640
|
+
wheels = [
|
|
3641
|
+
{ url = "https://files.pythonhosted.org/packages/48/b8/9537b52010134b1d2b72870cc3f92d5fb759394094741b09ceccae183fbe/ruff-0.14.8-py3-none-linux_armv6l.whl", hash = "sha256:ec071e9c82eca417f6111fd39f7043acb53cd3fde9b1f95bbed745962e345afb", size = 13441540, upload-time = "2025-12-04T15:06:14.896Z" },
|
|
3642
|
+
{ url = "https://files.pythonhosted.org/packages/24/00/99031684efb025829713682012b6dd37279b1f695ed1b01725f85fd94b38/ruff-0.14.8-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:8cdb162a7159f4ca36ce980a18c43d8f036966e7f73f866ac8f493b75e0c27e9", size = 13669384, upload-time = "2025-12-04T15:06:51.809Z" },
|
|
3643
|
+
{ url = "https://files.pythonhosted.org/packages/72/64/3eb5949169fc19c50c04f28ece2c189d3b6edd57e5b533649dae6ca484fe/ruff-0.14.8-py3-none-macosx_11_0_arm64.whl", hash = "sha256:2e2fcbefe91f9fad0916850edf0854530c15bd1926b6b779de47e9ab619ea38f", size = 12806917, upload-time = "2025-12-04T15:06:08.925Z" },
|
|
3644
|
+
{ url = "https://files.pythonhosted.org/packages/c4/08/5250babb0b1b11910f470370ec0cbc67470231f7cdc033cee57d4976f941/ruff-0.14.8-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a9d70721066a296f45786ec31916dc287b44040f553da21564de0ab4d45a869b", size = 13256112, upload-time = "2025-12-04T15:06:23.498Z" },
|
|
3645
|
+
{ url = "https://files.pythonhosted.org/packages/78/4c/6c588e97a8e8c2d4b522c31a579e1df2b4d003eddfbe23d1f262b1a431ff/ruff-0.14.8-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:2c87e09b3cd9d126fc67a9ecd3b5b1d3ded2b9c7fce3f16e315346b9d05cfb52", size = 13227559, upload-time = "2025-12-04T15:06:33.432Z" },
|
|
3646
|
+
{ url = "https://files.pythonhosted.org/packages/23/ce/5f78cea13eda8eceac71b5f6fa6e9223df9b87bb2c1891c166d1f0dce9f1/ruff-0.14.8-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1d62cb310c4fbcb9ee4ac023fe17f984ae1e12b8a4a02e3d21489f9a2a5f730c", size = 13896379, upload-time = "2025-12-04T15:06:02.687Z" },
|
|
3647
|
+
{ url = "https://files.pythonhosted.org/packages/cf/79/13de4517c4dadce9218a20035b21212a4c180e009507731f0d3b3f5df85a/ruff-0.14.8-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:1af35c2d62633d4da0521178e8a2641c636d2a7153da0bac1b30cfd4ccd91344", size = 15372786, upload-time = "2025-12-04T15:06:29.828Z" },
|
|
3648
|
+
{ url = "https://files.pythonhosted.org/packages/00/06/33df72b3bb42be8a1c3815fd4fae83fa2945fc725a25d87ba3e42d1cc108/ruff-0.14.8-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:25add4575ffecc53d60eed3f24b1e934493631b48ebbc6ebaf9d8517924aca4b", size = 14990029, upload-time = "2025-12-04T15:06:36.812Z" },
|
|
3649
|
+
{ url = "https://files.pythonhosted.org/packages/64/61/0f34927bd90925880394de0e081ce1afab66d7b3525336f5771dcf0cb46c/ruff-0.14.8-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4c943d847b7f02f7db4201a0600ea7d244d8a404fbb639b439e987edcf2baf9a", size = 14407037, upload-time = "2025-12-04T15:06:39.979Z" },
|
|
3650
|
+
{ url = "https://files.pythonhosted.org/packages/96/bc/058fe0aefc0fbf0d19614cb6d1a3e2c048f7dc77ca64957f33b12cfdc5ef/ruff-0.14.8-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cb6e8bf7b4f627548daa1b69283dac5a296bfe9ce856703b03130732e20ddfe2", size = 14102390, upload-time = "2025-12-04T15:06:46.372Z" },
|
|
3651
|
+
{ url = "https://files.pythonhosted.org/packages/af/a4/e4f77b02b804546f4c17e8b37a524c27012dd6ff05855d2243b49a7d3cb9/ruff-0.14.8-py3-none-manylinux_2_31_riscv64.whl", hash = "sha256:7aaf2974f378e6b01d1e257c6948207aec6a9b5ba53fab23d0182efb887a0e4a", size = 14230793, upload-time = "2025-12-04T15:06:20.497Z" },
|
|
3652
|
+
{ url = "https://files.pythonhosted.org/packages/3f/52/bb8c02373f79552e8d087cedaffad76b8892033d2876c2498a2582f09dcf/ruff-0.14.8-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:e5758ca513c43ad8a4ef13f0f081f80f08008f410790f3611a21a92421ab045b", size = 13160039, upload-time = "2025-12-04T15:06:49.06Z" },
|
|
3653
|
+
{ url = "https://files.pythonhosted.org/packages/1f/ad/b69d6962e477842e25c0b11622548df746290cc6d76f9e0f4ed7456c2c31/ruff-0.14.8-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:f74f7ba163b6e85a8d81a590363bf71618847e5078d90827749bfda1d88c9cdf", size = 13205158, upload-time = "2025-12-04T15:06:54.574Z" },
|
|
3654
|
+
{ url = "https://files.pythonhosted.org/packages/06/63/54f23da1315c0b3dfc1bc03fbc34e10378918a20c0b0f086418734e57e74/ruff-0.14.8-py3-none-musllinux_1_2_i686.whl", hash = "sha256:eed28f6fafcc9591994c42254f5a5c5ca40e69a30721d2ab18bb0bb3baac3ab6", size = 13469550, upload-time = "2025-12-04T15:05:59.209Z" },
|
|
3655
|
+
{ url = "https://files.pythonhosted.org/packages/70/7d/a4d7b1961e4903bc37fffb7ddcfaa7beb250f67d97cfd1ee1d5cddb1ec90/ruff-0.14.8-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:21d48fa744c9d1cb8d71eb0a740c4dd02751a5de9db9a730a8ef75ca34cf138e", size = 14211332, upload-time = "2025-12-04T15:06:06.027Z" },
|
|
3656
|
+
{ url = "https://files.pythonhosted.org/packages/5d/93/2a5063341fa17054e5c86582136e9895db773e3c2ffb770dde50a09f35f0/ruff-0.14.8-py3-none-win32.whl", hash = "sha256:15f04cb45c051159baebb0f0037f404f1dc2f15a927418f29730f411a79bc4e7", size = 13151890, upload-time = "2025-12-04T15:06:11.668Z" },
|
|
3657
|
+
{ url = "https://files.pythonhosted.org/packages/02/1c/65c61a0859c0add13a3e1cbb6024b42de587456a43006ca2d4fd3d1618fe/ruff-0.14.8-py3-none-win_amd64.whl", hash = "sha256:9eeb0b24242b5bbff3011409a739929f497f3fb5fe3b5698aba5e77e8c833097", size = 14537826, upload-time = "2025-12-04T15:06:26.409Z" },
|
|
3658
|
+
{ url = "https://files.pythonhosted.org/packages/6d/63/8b41cea3afd7f58eb64ac9251668ee0073789a3bc9ac6f816c8c6fef986d/ruff-0.14.8-py3-none-win_arm64.whl", hash = "sha256:965a582c93c63fe715fd3e3f8aa37c4b776777203d8e1d8aa3cc0c14424a4b99", size = 13634522, upload-time = "2025-12-04T15:06:43.212Z" },
|
|
3665
3659
|
]
|
|
3666
3660
|
|
|
3667
3661
|
[[package]]
|
|
@@ -3977,11 +3971,11 @@ wheels = [
|
|
|
3977
3971
|
|
|
3978
3972
|
[[package]]
|
|
3979
3973
|
name = "urllib3"
|
|
3980
|
-
version = "2.
|
|
3974
|
+
version = "2.6.0"
|
|
3981
3975
|
source = { registry = "https://pypi.org/simple" }
|
|
3982
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
3976
|
+
sdist = { url = "https://files.pythonhosted.org/packages/1c/43/554c2569b62f49350597348fc3ac70f786e3c32e7f19d266e19817812dd3/urllib3-2.6.0.tar.gz", hash = "sha256:cb9bcef5a4b345d5da5d145dc3e30834f58e8018828cbc724d30b4cb7d4d49f1", size = 432585, upload-time = "2025-12-05T15:08:47.885Z" }
|
|
3983
3977
|
wheels = [
|
|
3984
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
3978
|
+
{ url = "https://files.pythonhosted.org/packages/56/1a/9ffe814d317c5224166b23e7c47f606d6e473712a2fad0f704ea9b99f246/urllib3-2.6.0-py3-none-any.whl", hash = "sha256:c90f7a39f716c572c4e3e58509581ebd83f9b59cced005b7db7ad2d22b0db99f", size = 131083, upload-time = "2025-12-05T15:08:45.983Z" },
|
|
3985
3979
|
]
|
|
3986
3980
|
|
|
3987
3981
|
[[package]]
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|