tlpytools 0.2.3__tar.gz → 0.2.4__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.
- {tlpytools-0.2.3 → tlpytools-0.2.4}/.github/copilot-instructions.md +2 -2
- {tlpytools-0.2.3 → tlpytools-0.2.4}/.github/workflows/deploy.yml +1 -1
- {tlpytools-0.2.3 → tlpytools-0.2.4}/CHANGELOG.md +5 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/DEVELOPER_GUIDE.md +2 -7
- {tlpytools-0.2.3 → tlpytools-0.2.4}/PKG-INFO +1 -1
- {tlpytools-0.2.3 → tlpytools-0.2.4}/pyproject.toml +1 -1
- {tlpytools-0.2.3 → tlpytools-0.2.4}/src/tlpytools/__init__.py +1 -1
- {tlpytools-0.2.3 → tlpytools-0.2.4}/src/tlpytools/orca/orchestrator.py +38 -10
- {tlpytools-0.2.3 → tlpytools-0.2.4}/uv.lock +80 -37
- {tlpytools-0.2.3 → tlpytools-0.2.4}/.env.example +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/.github/skills/README.md +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/.github/skills/prepare-official-release/SKILL.md +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/.github/workflows/code-formatting-pr.yml +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/.github/workflows/code-formatting.yml +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/.github/workflows/test.yml +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/.gitignore +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/.pre-commit-config.yaml +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/.python-version +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/ENVIRONMENT_VARIABLES.md +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/Makefile +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/README.md +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/docs/adls_server.md +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/docs/azure_credential_manager.md +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/docs/diagrams/README.md +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/docs/diagrams/orca_cloud_workflow.drawio +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/docs/diagrams/orca_detailed_steps.drawio +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/docs/diagrams/orca_file_structure.drawio +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/docs/diagrams/orca_local_workflow.drawio +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/docs/diagrams/orca_main_features.drawio +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/docs/unified_logging.md +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/requirements.txt +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/src/examples/batchtask.py +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/src/examples/data_files/example.csv +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/src/examples/mydataproject.py +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/src/examples/readwritedata.py +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/src/examples/unified_logging.py +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/src/tlpytools/adls_server.py +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/src/tlpytools/azure_credential.py +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/src/tlpytools/config.py +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/src/tlpytools/data.py +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/src/tlpytools/data_store.py +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/src/tlpytools/env_config.py +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/src/tlpytools/log.py +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/src/tlpytools/orca/README.md +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/src/tlpytools/orca/__init__.py +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/src/tlpytools/orca/__main__.py +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/src/tlpytools/orca/batch_task_runner.py +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/src/tlpytools/orca/cli.py +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/src/tlpytools/orca/orca_model_config_barebone.yaml +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/src/tlpytools/orca/orca_model_config_example.yaml +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/src/tlpytools/sql_server.py +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/tests/README.md +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/tests/__init__.py +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/tests/conftest.py +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/tests/run_tests.py +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/tests/test_azure_credential.py +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/tests/test_basic.py +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/tests/test_core.py +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/tests/test_orca_integration.py +0 -0
- {tlpytools-0.2.3 → tlpytools-0.2.4}/tests/test_orca_unit.py +0 -0
|
@@ -98,8 +98,8 @@ Interpretation for agent PRs:
|
|
|
98
98
|
|
|
99
99
|
Observed result:
|
|
100
100
|
- Build succeeds and produces:
|
|
101
|
-
- `dist/tlpytools-0.2.
|
|
102
|
-
- `dist/tlpytools-0.2.
|
|
101
|
+
- `dist/tlpytools-0.2.4.tar.gz`
|
|
102
|
+
- `dist/tlpytools-0.2.4-py3-none-any.whl`
|
|
103
103
|
|
|
104
104
|
### 5) Run
|
|
105
105
|
- ORCA CLI (module form):
|
|
@@ -200,7 +200,7 @@ make check-all
|
|
|
200
200
|
4. Click **"Run workflow"** button
|
|
201
201
|
5. Fill in the required information:
|
|
202
202
|
- **Branch**: Select `main` (or your release branch)
|
|
203
|
-
- **Version number**: Enter the new version (e.g., `0.2.
|
|
203
|
+
- **Version number**: Enter the new version (e.g., `0.2.4`)
|
|
204
204
|
- **Is this a pre-release?**: Check if this is a pre-release version
|
|
205
205
|
|
|
206
206
|
#### 3. Monitor the Release
|
|
@@ -219,7 +219,7 @@ After the workflow completes:
|
|
|
219
219
|
|
|
220
220
|
```bash
|
|
221
221
|
# Verify the package is available on PyPI
|
|
222
|
-
pip install tlpytools==0.2.
|
|
222
|
+
pip install tlpytools==0.2.4 # Replace with your version
|
|
223
223
|
|
|
224
224
|
# Test installation in a fresh environment
|
|
225
225
|
python -c "import tlpytools; print(tlpytools.__version__)"
|
|
@@ -233,11 +233,6 @@ TLPyTools follows semantic versioning (SemVer):
|
|
|
233
233
|
- **Minor** (0.x.0): New features, backwards compatible
|
|
234
234
|
- **Patch** (0.0.x): Bug fixes, backwards compatible
|
|
235
235
|
|
|
236
|
-
Examples:
|
|
237
|
-
- `0.1.7` → `0.1.8` (patch release)
|
|
238
|
-
- `0.1.8` → `0.2.3` (minor release)
|
|
239
|
-
- `0.2.3` → `1.0.0` (major release)
|
|
240
|
-
|
|
241
236
|
### Pre-releases
|
|
242
237
|
|
|
243
238
|
For testing purposes, you can create pre-release versions:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: tlpytools
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.4
|
|
4
4
|
Summary: TransLink's Python Tools - A comprehensive toolkit for transportation modeling and forecasting
|
|
5
5
|
Project-URL: Homepage, https://github.com/TransLinkForecasting/tlpytools
|
|
6
6
|
Project-URL: Bug Tracker, https://github.com/TransLinkForecasting/tlpytools/issues
|
|
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "tlpytools"
|
|
7
|
-
version = "0.2.
|
|
7
|
+
version = "0.2.4"
|
|
8
8
|
description = "TransLink's Python Tools - A comprehensive toolkit for transportation modeling and forecasting"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.10.0, <3.13"
|
|
@@ -4062,18 +4062,46 @@ class OrcaOrchestrator:
|
|
|
4062
4062
|
"Failed to delete existing archive %s: %s", zip_filename, e
|
|
4063
4063
|
)
|
|
4064
4064
|
|
|
4065
|
-
#
|
|
4066
|
-
#
|
|
4067
|
-
|
|
4068
|
-
|
|
4069
|
-
|
|
4070
|
-
|
|
4071
|
-
|
|
4072
|
-
include_empty_dirs=False,
|
|
4073
|
-
compression_type=compression_type,
|
|
4074
|
-
compresslevel=compresslevel,
|
|
4065
|
+
# Optimisation: if patterns is a single zip file with no wildcards,
|
|
4066
|
+
# copy and rename it directly instead of wrapping it in another zip.
|
|
4067
|
+
single_zip_pattern = (
|
|
4068
|
+
len(patterns) == 1
|
|
4069
|
+
and patterns[0].endswith(".zip")
|
|
4070
|
+
and "*" not in patterns[0]
|
|
4071
|
+
and "?" not in patterns[0]
|
|
4075
4072
|
)
|
|
4076
4073
|
|
|
4074
|
+
if single_zip_pattern:
|
|
4075
|
+
source_zip = os.path.join(step_dir, patterns[0])
|
|
4076
|
+
if os.path.exists(source_zip):
|
|
4077
|
+
os.makedirs(os.path.dirname(archive_path), exist_ok=True)
|
|
4078
|
+
shutil.copy2(source_zip, archive_path)
|
|
4079
|
+
self.logger.info(
|
|
4080
|
+
"Copied single zip file %s -> %s",
|
|
4081
|
+
os.path.basename(source_zip),
|
|
4082
|
+
zip_filename,
|
|
4083
|
+
)
|
|
4084
|
+
else:
|
|
4085
|
+
self.logger.warning(
|
|
4086
|
+
"Single zip pattern '%s' not found at %s, skipping archive: %s",
|
|
4087
|
+
patterns[0],
|
|
4088
|
+
source_zip,
|
|
4089
|
+
archive_name,
|
|
4090
|
+
)
|
|
4091
|
+
continue
|
|
4092
|
+
else:
|
|
4093
|
+
# Use the zip_directory utility function to create the archive
|
|
4094
|
+
# Note: zip_directory now logs its own summary
|
|
4095
|
+
self.scenario.zip_directory(
|
|
4096
|
+
dir_path=step_dir,
|
|
4097
|
+
zip_path=archive_path,
|
|
4098
|
+
# Skip everything except the specified patterns
|
|
4099
|
+
skip_patterns=["*"] + [f"!{pattern}" for pattern in patterns],
|
|
4100
|
+
include_empty_dirs=False,
|
|
4101
|
+
compression_type=compression_type,
|
|
4102
|
+
compresslevel=compresslevel,
|
|
4103
|
+
)
|
|
4104
|
+
|
|
4077
4105
|
# Register the archive in state for future retrieval
|
|
4078
4106
|
self._register_output_archive(
|
|
4079
4107
|
step_name, archive_name, zip_filename, display_iteration
|
|
@@ -337,7 +337,7 @@ resolution-markers = [
|
|
|
337
337
|
dependencies = [
|
|
338
338
|
{ name = "msgpack", marker = "python_full_version < '3.11'" },
|
|
339
339
|
{ name = "ndindex", marker = "python_full_version < '3.11'" },
|
|
340
|
-
{ name = "numexpr", marker = "python_full_version < '3.11' and platform_machine != 'wasm32'" },
|
|
340
|
+
{ name = "numexpr", version = "2.14.1", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.11' and platform_machine != 'wasm32'" },
|
|
341
341
|
{ name = "numpy", marker = "python_full_version < '3.11'" },
|
|
342
342
|
{ name = "pydantic", marker = "python_full_version < '3.11'" },
|
|
343
343
|
{ name = "requests", marker = "python_full_version < '3.11'" },
|
|
@@ -378,7 +378,7 @@ dependencies = [
|
|
|
378
378
|
{ name = "httpx", extra = ["http2"], marker = "python_full_version >= '3.11'" },
|
|
379
379
|
{ name = "msgpack", marker = "python_full_version >= '3.11'" },
|
|
380
380
|
{ name = "ndindex", marker = "python_full_version >= '3.11'" },
|
|
381
|
-
{ name = "numexpr", marker = "python_full_version >= '3.11' and platform_machine != 'wasm32'" },
|
|
381
|
+
{ name = "numexpr", version = "2.14.2", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.11' and platform_machine != 'wasm32'" },
|
|
382
382
|
{ name = "numpy", marker = "python_full_version >= '3.11'" },
|
|
383
383
|
{ name = "pydantic", marker = "python_full_version >= '3.11'" },
|
|
384
384
|
{ name = "rich", marker = "python_full_version >= '3.11'" },
|
|
@@ -446,7 +446,7 @@ version = "0.25.0"
|
|
|
446
446
|
source = { registry = "https://pypi.org/simple" }
|
|
447
447
|
dependencies = [
|
|
448
448
|
{ name = "matplotlib", version = "3.10.9", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.11'" },
|
|
449
|
-
{ name = "matplotlib", version = "3.11.
|
|
449
|
+
{ name = "matplotlib", version = "3.11.1", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.11'" },
|
|
450
450
|
{ name = "numpy" },
|
|
451
451
|
{ name = "packaging" },
|
|
452
452
|
{ name = "pyproj", version = "3.7.1", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.11'" },
|
|
@@ -674,7 +674,7 @@ dependencies = [
|
|
|
674
674
|
{ name = "geopy" },
|
|
675
675
|
{ name = "joblib" },
|
|
676
676
|
{ name = "matplotlib", version = "3.10.9", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.11'" },
|
|
677
|
-
{ name = "matplotlib", version = "3.11.
|
|
677
|
+
{ name = "matplotlib", version = "3.11.1", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.11'" },
|
|
678
678
|
{ name = "mercantile" },
|
|
679
679
|
{ name = "pillow" },
|
|
680
680
|
{ name = "rasterio" },
|
|
@@ -1250,11 +1250,11 @@ wheels = [
|
|
|
1250
1250
|
|
|
1251
1251
|
[[package]]
|
|
1252
1252
|
name = "filelock"
|
|
1253
|
-
version = "3.
|
|
1253
|
+
version = "3.31.1"
|
|
1254
1254
|
source = { registry = "https://pypi.org/simple" }
|
|
1255
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
1255
|
+
sdist = { url = "https://files.pythonhosted.org/packages/53/55/1e19b2b56a24a4b94624f7e819e1bb87fa6c5609dbaf621df3aa6568a761/filelock-3.31.1.tar.gz", hash = "sha256:9e0c4e88ebe90833c1beafd3a547ccbc0bf7f491cd3858c3ec7aed63efe02163", size = 196656, upload-time = "2026-07-20T03:14:32.414Z" }
|
|
1256
1256
|
wheels = [
|
|
1257
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1257
|
+
{ url = "https://files.pythonhosted.org/packages/88/61/df1d9db18f188d0ae648956a1decadc0e3b77d0571474370fd01f28a82b1/filelock-3.31.1-py3-none-any.whl", hash = "sha256:9ea33146c780161bf67cb20c7cb26b651566820d65ad8dfdd79422602a2dcfc0", size = 97189, upload-time = "2026-07-20T03:14:31.307Z" },
|
|
1258
1258
|
]
|
|
1259
1259
|
|
|
1260
1260
|
[[package]]
|
|
@@ -2351,7 +2351,7 @@ wheels = [
|
|
|
2351
2351
|
|
|
2352
2352
|
[[package]]
|
|
2353
2353
|
name = "matplotlib"
|
|
2354
|
-
version = "3.11.
|
|
2354
|
+
version = "3.11.1"
|
|
2355
2355
|
source = { registry = "https://pypi.org/simple" }
|
|
2356
2356
|
resolution-markers = [
|
|
2357
2357
|
"python_full_version >= '3.12' and sys_platform == 'win32'",
|
|
@@ -2372,25 +2372,25 @@ dependencies = [
|
|
|
2372
2372
|
{ name = "pyparsing", marker = "python_full_version >= '3.11'" },
|
|
2373
2373
|
{ name = "python-dateutil", marker = "python_full_version >= '3.11'" },
|
|
2374
2374
|
]
|
|
2375
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
2375
|
+
sdist = { url = "https://files.pythonhosted.org/packages/49/64/f9a391af28f518b11ad45a8a712353c94a0aefce09d3703200e5c54b610a/matplotlib-3.11.1.tar.gz", hash = "sha256:69647db5746941c793d6e445a4cd349323ffb87d9cc958c2ad84a659b4832d30", size = 32612045, upload-time = "2026-07-18T03:39:46.63Z" }
|
|
2376
2376
|
wheels = [
|
|
2377
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
2378
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
2379
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
2380
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
2381
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
2382
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
2383
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
2384
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
2385
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
2386
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
2387
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
2388
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
2389
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
2390
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
2391
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
2392
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
2393
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
2377
|
+
{ url = "https://files.pythonhosted.org/packages/6e/d0/791aa183dd88491555cf7d4be0b52b0bcf6c3c2a2c22c815a2e819bf53e2/matplotlib-3.11.1-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:b7cf158e7add54a8d51ac9b5a84abd6d4e13ed4951b4f25f1c5139f41c2addb2", size = 9440302, upload-time = "2026-07-18T03:38:03.844Z" },
|
|
2378
|
+
{ url = "https://files.pythonhosted.org/packages/35/74/82bbdf683a301f4478384c8aaba6903631a2ca18294b2d7655c9a542bffb/matplotlib-3.11.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:d2ace7273b9a5061a3b420918a16fae1f2dc5dfee1abcc13aba71b5d94b1820c", size = 9268549, upload-time = "2026-07-18T03:38:06.144Z" },
|
|
2379
|
+
{ url = "https://files.pythonhosted.org/packages/f0/f0/9b4298911303f74e6d83e64a81d996c0616405ec95046fac7f17e4258b9e/matplotlib-3.11.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:aee55e9041211bf84302ab55ec3965df18dd90ae19f8b58332a7feaf208bfe83", size = 10024922, upload-time = "2026-07-18T03:38:08.236Z" },
|
|
2380
|
+
{ url = "https://files.pythonhosted.org/packages/84/6f/0bc3c3d05b021db44c14bc379a7c0df7d57302aa15380c16fd4e63fd6a9b/matplotlib-3.11.1-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:96f4bdeea33a8d15a071dbfe6d119451b1d719c733ac666d65357082901a9099", size = 10832170, upload-time = "2026-07-18T03:38:10.276Z" },
|
|
2381
|
+
{ url = "https://files.pythonhosted.org/packages/db/4d/e375f39acdb2af5a9342730618608e39790ec842e6f1b392863028781459/matplotlib-3.11.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:b4c78ceb2f11bcac7389d305cda17aeb1f4586a857854ab5780bd3dd8dbfc407", size = 10916701, upload-time = "2026-07-18T03:38:12.512Z" },
|
|
2382
|
+
{ url = "https://files.pythonhosted.org/packages/bc/be/fa26ed085b41298f64a8f9b7592c671bbf1acc8b0df124c1c5de96b859f8/matplotlib-3.11.1-cp311-cp311-win_amd64.whl", hash = "sha256:7f33a781e12b1e53b278deb2f5373c2e55ec4f10727be3440c0cfb5cda9f944f", size = 9315331, upload-time = "2026-07-18T03:38:14.949Z" },
|
|
2383
|
+
{ url = "https://files.pythonhosted.org/packages/b6/f3/eb5bdf3b6e191b200db298b08bbc1638b7f3c82cdc8680f9d88bf72559ae/matplotlib-3.11.1-cp311-cp311-win_arm64.whl", hash = "sha256:67e4c3cd578c65ebd81bdc09a1b6592ceafee6dfafe116dc85dfcb647b5bbb18", size = 9003475, upload-time = "2026-07-18T03:38:17.205Z" },
|
|
2384
|
+
{ url = "https://files.pythonhosted.org/packages/f2/6c/7ef7ebcb2bd9739b2b66b18b076e077f44bb46fdbe28ca0506edb3c62c79/matplotlib-3.11.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:e15ef41507f3d525f46154ac9e3ae785dacde9f20e593a25de8986267892ef74", size = 9453849, upload-time = "2026-07-18T03:38:19.593Z" },
|
|
2385
|
+
{ url = "https://files.pythonhosted.org/packages/eb/f8/6d0c312c8d9738e7d9677f09fe5c986b3239e651a7b73a2deb38b65e4a71/matplotlib-3.11.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:21a67b961a6d597bca54fae826cd20695ba4a6e4d05424a08da6e13e3176fd6b", size = 9283113, upload-time = "2026-07-18T03:38:21.95Z" },
|
|
2386
|
+
{ url = "https://files.pythonhosted.org/packages/c9/cf/b4ad2cc81b6672ea29ea04e64e350a9f9b493b0908ccd884c67eeff8f7b2/matplotlib-3.11.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:ba8f811b8ddfac493734d6af0b2dff96919d0c28ca0d641858dab4262777c6ea", size = 10035615, upload-time = "2026-07-18T03:38:24.315Z" },
|
|
2387
|
+
{ url = "https://files.pythonhosted.org/packages/88/90/4e10e033d9b66589d8ed98b84c95cdbb57033d57c1f41339d7393dbd2f2e/matplotlib-3.11.1-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c52f7ad20ef476806ed212380b1d54d20310c8b86bdc2c9a68b51f0024a44472", size = 10842559, upload-time = "2026-07-18T03:38:26.285Z" },
|
|
2388
|
+
{ url = "https://files.pythonhosted.org/packages/88/eb/799612d0f8cd3e816a10fec59329fca52cd2353264df80378dfc541ae855/matplotlib-3.11.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:8b14eb22961fe865efb0e4ff167e333e428908b00115a8d800ccb65ee108e481", size = 10927532, upload-time = "2026-07-18T03:38:28.532Z" },
|
|
2389
|
+
{ url = "https://files.pythonhosted.org/packages/88/89/56649bbaa2fd12e20f3be03dbcc135b0c8676d88bac17977599e3eb442a0/matplotlib-3.11.1-cp312-cp312-win_amd64.whl", hash = "sha256:88a2a27dd9691ae448dfae4b26f59036be90c3c28757edd3553a29559d00859f", size = 9333886, upload-time = "2026-07-18T03:38:30.477Z" },
|
|
2390
|
+
{ url = "https://files.pythonhosted.org/packages/c1/11/4d124efbbad677b7b7552f6f85a3bd432d4232f95400cea98fcd2ae36ef3/matplotlib-3.11.1-cp312-cp312-win_arm64.whl", hash = "sha256:480194afceca4df2f137c2721227d3cba67121fbf4397b69cee7f83714b0a58a", size = 9007545, upload-time = "2026-07-18T03:38:32.833Z" },
|
|
2391
|
+
{ url = "https://files.pythonhosted.org/packages/ee/38/ceb1d637c4db6d06141f3739e93af3321e7caaabe69b57ae48ffe3ee95b1/matplotlib-3.11.1-pp311-pypy311_pp73-macosx_10_15_x86_64.whl", hash = "sha256:427258425f9a3fc4ed79a91f9e9b9aaf5a82cb6571e85dc14063cc6fbb993741", size = 9438045, upload-time = "2026-07-18T03:39:39.491Z" },
|
|
2392
|
+
{ url = "https://files.pythonhosted.org/packages/89/25/72ad8b58602d3a6ef1dfc4b65ecd01634ab65a2bdf494c9fe0e966dbf081/matplotlib-3.11.1-pp311-pypy311_pp73-macosx_11_0_arm64.whl", hash = "sha256:1ac697e591c11b6ad04679a73c2d2f9980fe9d9f0311fb414a2e329706343dfb", size = 9266127, upload-time = "2026-07-18T03:39:41.597Z" },
|
|
2393
|
+
{ url = "https://files.pythonhosted.org/packages/8a/6d/69552382fcc8e93d1f2763ef2665980a900a48b7f3a4c57ed290726d1cbc/matplotlib-3.11.1-pp311-pypy311_pp73-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:e4b9ac2f1f607ecda2af90a5232beee2af7582fce1cc30c4b6a1b012dc21ee99", size = 10019439, upload-time = "2026-07-18T03:39:43.78Z" },
|
|
2394
2394
|
]
|
|
2395
2395
|
|
|
2396
2396
|
[[package]]
|
|
@@ -2804,8 +2804,14 @@ wheels = [
|
|
|
2804
2804
|
name = "numexpr"
|
|
2805
2805
|
version = "2.14.1"
|
|
2806
2806
|
source = { registry = "https://pypi.org/simple" }
|
|
2807
|
+
resolution-markers = [
|
|
2808
|
+
"python_full_version < '3.11' and sys_platform == 'win32'",
|
|
2809
|
+
"python_full_version < '3.11' and sys_platform == 'darwin'",
|
|
2810
|
+
"python_full_version < '3.11' and sys_platform == 'linux'",
|
|
2811
|
+
"python_full_version < '3.11' and sys_platform != 'darwin' and sys_platform != 'linux' and sys_platform != 'win32'",
|
|
2812
|
+
]
|
|
2807
2813
|
dependencies = [
|
|
2808
|
-
{ name = "numpy" },
|
|
2814
|
+
{ name = "numpy", marker = "python_full_version < '3.11'" },
|
|
2809
2815
|
]
|
|
2810
2816
|
sdist = { url = "https://files.pythonhosted.org/packages/cb/2f/fdba158c9dbe5caca9c3eca3eaffffb251f2fb8674bf8e2d0aed5f38d319/numexpr-2.14.1.tar.gz", hash = "sha256:4be00b1086c7b7a5c32e31558122b7b80243fe098579b170967da83f3152b48b", size = 119400, upload-time = "2025-10-13T16:17:27.351Z" }
|
|
2811
2817
|
wheels = [
|
|
@@ -2835,6 +2841,43 @@ wheels = [
|
|
|
2835
2841
|
{ url = "https://files.pythonhosted.org/packages/1f/67/ffe750b5452eb66de788c34e7d21ec6d886abb4d7c43ad1dc88ceb3d998f/numexpr-2.14.1-cp312-cp312-win_amd64.whl", hash = "sha256:fdd886f4b7dbaf167633ee396478f0d0aa58ea2f9e7ccc3c6431019623e8d68f", size = 160187, upload-time = "2025-10-13T16:17:11.974Z" },
|
|
2836
2842
|
]
|
|
2837
2843
|
|
|
2844
|
+
[[package]]
|
|
2845
|
+
name = "numexpr"
|
|
2846
|
+
version = "2.14.2"
|
|
2847
|
+
source = { registry = "https://pypi.org/simple" }
|
|
2848
|
+
resolution-markers = [
|
|
2849
|
+
"python_full_version >= '3.12' and sys_platform == 'win32'",
|
|
2850
|
+
"python_full_version == '3.11.*' and sys_platform == 'win32'",
|
|
2851
|
+
"python_full_version >= '3.11' and sys_platform == 'emscripten'",
|
|
2852
|
+
"python_full_version >= '3.11' and sys_platform == 'darwin'",
|
|
2853
|
+
"python_full_version >= '3.11' and sys_platform == 'linux'",
|
|
2854
|
+
"python_full_version >= '3.11' and sys_platform != 'darwin' and sys_platform != 'emscripten' and sys_platform != 'linux' and sys_platform != 'win32'",
|
|
2855
|
+
]
|
|
2856
|
+
dependencies = [
|
|
2857
|
+
{ name = "numpy", marker = "python_full_version >= '3.11'" },
|
|
2858
|
+
]
|
|
2859
|
+
sdist = { url = "https://files.pythonhosted.org/packages/79/c4/27ea7849eb4a7e3b51db446b0414254326dba8c6bdee09b9f2abf963e55d/numexpr-2.14.2.tar.gz", hash = "sha256:e7144e83ea9e581f2273e0304f15836736c4e470e2bd2e378ce617662a1ca278", size = 121744, upload-time = "2026-07-18T10:52:43.185Z" }
|
|
2860
|
+
wheels = [
|
|
2861
|
+
{ url = "https://files.pythonhosted.org/packages/b9/a3/1904a5928de2c16935172a54772082e6a64efa4e763ed829c2e9f23d8eb1/numexpr-2.14.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:2aa65ddc2243f19c6915f34ee0978b4a2df20f297230a793c4ee6d55f3472599", size = 164944, upload-time = "2026-07-18T10:51:37.875Z" },
|
|
2862
|
+
{ url = "https://files.pythonhosted.org/packages/fb/03/533659d9c05c0aee359f29c6e1bb80f0b91848b75522bd9809861b0b0f25/numexpr-2.14.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:bf959e6df6cb603611c034b6cba7b03a361be0ad0b80b73f163fab95f5ccbb7f", size = 153218, upload-time = "2026-07-18T10:51:39.429Z" },
|
|
2863
|
+
{ url = "https://files.pythonhosted.org/packages/cd/34/e20830b6388568c1a6fd1529953ccac09d7ed57eb79dacfd298646bd95c8/numexpr-2.14.2-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d534ecb456a4ae3995f99c8a5deb469bfff05d4ec610a7885c175c881d12f710", size = 453750, upload-time = "2026-07-18T10:51:40.735Z" },
|
|
2864
|
+
{ url = "https://files.pythonhosted.org/packages/d6/15/9a7bf92b7c8047157fd96bc42ff6b0a20351f43aa58b9f61eb8f5ff3048b/numexpr-2.14.2-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:f41170e9d0dbba76851e35d80cfa9f4ca5fe78628c5bf24d941cf3364940ab7a", size = 443546, upload-time = "2026-07-18T10:51:41.95Z" },
|
|
2865
|
+
{ url = "https://files.pythonhosted.org/packages/86/ed/a2aaca2a65d5aa04379d3bcc8360c067aa2503fbad2c88c0709f1b3e1e6c/numexpr-2.14.2-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:6acafb2fdbeaaa6681a8f1a1d8b3f7dcd33704baace7057b950754b258be7c43", size = 1418879, upload-time = "2026-07-18T10:51:43.315Z" },
|
|
2866
|
+
{ url = "https://files.pythonhosted.org/packages/62/6d/dde6da68ef817d9aa0995a0ecdfb9b0ba5745688fb324b96b2250bb00131/numexpr-2.14.2-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:7ca9e71195b36cc7aeafe97347549e1e1c1e889ff700238782ef6447651ec26d", size = 1465942, upload-time = "2026-07-18T10:51:44.609Z" },
|
|
2867
|
+
{ url = "https://files.pythonhosted.org/packages/96/2f/5b352550476d10b85e4198bd045c155ca63a55853aeb11861996f05707a0/numexpr-2.14.2-cp311-cp311-win32.whl", hash = "sha256:779129d50974e7d6d6581d322f75b8f8375e96215b6861a2d5460347997ef649", size = 161260, upload-time = "2026-07-18T10:51:45.861Z" },
|
|
2868
|
+
{ url = "https://files.pythonhosted.org/packages/44/5e/00d696bca8bb9cad9c8a775ae5c1559e4a7cc083029f274c14cae5bc52fa/numexpr-2.14.2-cp311-cp311-win_amd64.whl", hash = "sha256:2f132777d7d425471c458af5617e023402f13f5006301eacf8a1a6e7118ea70c", size = 157406, upload-time = "2026-07-18T10:51:47.065Z" },
|
|
2869
|
+
{ url = "https://files.pythonhosted.org/packages/23/00/fd8caf2a08304e4d2bc64031ef11da3ccd863853d277f424adf91d44371f/numexpr-2.14.2-cp311-cp311-win_arm64.whl", hash = "sha256:f1de5c88515ed9fbcad42699a0e2b5821b4d0f0adb0da6fb7e009e5cb19d8493", size = 148781, upload-time = "2026-07-18T10:51:48.1Z" },
|
|
2870
|
+
{ url = "https://files.pythonhosted.org/packages/09/fd/3e7ca4328c22b28717cfe05cd23ca35ffd84e4ca36c3da004323528e9e20/numexpr-2.14.2-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:606ceaf5722e295ef965ca591736fc26d9e5f13ad950a479e64cead1947f8a3d", size = 164757, upload-time = "2026-07-18T10:51:49.05Z" },
|
|
2871
|
+
{ url = "https://files.pythonhosted.org/packages/ed/5c/9780d48c4d5effcf55fc7ab7c5651ed82b43250ac8410cce4ef1e97583ed/numexpr-2.14.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:790da022539fe7c37dc893acf530a91c2ca6964d7ba11f464131383729d058f3", size = 153507, upload-time = "2026-07-18T10:51:50.273Z" },
|
|
2872
|
+
{ url = "https://files.pythonhosted.org/packages/41/13/ed5efda74ace9a7e2e933476b85bba6d00f2ebf6b833ef59a796ec9af88c/numexpr-2.14.2-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:327be9ee62251c173236dc620147ff2d0e732a32f5bad918d78a10082f502f63", size = 455373, upload-time = "2026-07-18T10:51:51.466Z" },
|
|
2873
|
+
{ url = "https://files.pythonhosted.org/packages/ea/11/e8953226d658ae67e3e002abaa60a101c693f9c57d74974001729afab5ef/numexpr-2.14.2-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:d6a5d8fc7016bf6f6e1808b011510aa7c3bd75ec1407f7650874ec591db59f5e", size = 445187, upload-time = "2026-07-18T10:51:52.849Z" },
|
|
2874
|
+
{ url = "https://files.pythonhosted.org/packages/b2/f7/f51b7e10c312bd9617df829e063c87a6d443fd97af54688282ba2b11b1fd/numexpr-2.14.2-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:4b1ff261c3e69c4c59578d3a9ca6132603619d38ae1abe73325563bed3b9bbaf", size = 1420426, upload-time = "2026-07-18T10:51:54.079Z" },
|
|
2875
|
+
{ url = "https://files.pythonhosted.org/packages/14/bf/21b4e362039ba52f9033a3f57d68160c0829c9c8d66fa7b443b82491322c/numexpr-2.14.2-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:8b8384592c49cb15a91caa54e2cd84d1ce18edb7af030bb76cd29b52e5dc155d", size = 1467554, upload-time = "2026-07-18T10:51:55.391Z" },
|
|
2876
|
+
{ url = "https://files.pythonhosted.org/packages/2b/75/0856b1add4e5a7741b80b615f3faace8e3cfffe11e22b6a940ebf25443aa/numexpr-2.14.2-cp312-cp312-win32.whl", hash = "sha256:41cdeacf1b4e51c1143983ea61fcee68139ca47222b55a9265b4fa73826c4260", size = 161441, upload-time = "2026-07-18T10:51:56.503Z" },
|
|
2877
|
+
{ url = "https://files.pythonhosted.org/packages/a3/78/c87a88b8e63b5f78c67d555afebefafe81f6e3d98640b4bc1c125d76c9d3/numexpr-2.14.2-cp312-cp312-win_amd64.whl", hash = "sha256:8fc55d14bcf17b3fe69213bea14f999451892b4690717008c66f2edfd6a085ce", size = 157563, upload-time = "2026-07-18T10:51:57.521Z" },
|
|
2878
|
+
{ url = "https://files.pythonhosted.org/packages/15/37/eea56d5ed1ae5252447f45bb461930eab66338eeab32e533aceb080db0bb/numexpr-2.14.2-cp312-cp312-win_arm64.whl", hash = "sha256:806a4471310fe20aa7cb1b2816a6f5e508073a1ad1c2e18041b83e57066fad6a", size = 148820, upload-time = "2026-07-18T10:51:58.536Z" },
|
|
2879
|
+
]
|
|
2880
|
+
|
|
2838
2881
|
[[package]]
|
|
2839
2882
|
name = "numpy"
|
|
2840
2883
|
version = "1.26.4"
|
|
@@ -3204,11 +3247,11 @@ wheels = [
|
|
|
3204
3247
|
|
|
3205
3248
|
[[package]]
|
|
3206
3249
|
name = "platformdirs"
|
|
3207
|
-
version = "4.10.
|
|
3250
|
+
version = "4.10.1"
|
|
3208
3251
|
source = { registry = "https://pypi.org/simple" }
|
|
3209
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
3252
|
+
sdist = { url = "https://files.pythonhosted.org/packages/52/cd/4f25b2f95b23f5d2c9c1fe43e49841bff5800562149b2666afc09309aa8f/platformdirs-4.10.1.tar.gz", hash = "sha256:ceab4084426fe6319ce18e86deada8ab1b7487c7aee7040c55e277c9ae793695", size = 31678, upload-time = "2026-07-18T03:53:43.808Z" }
|
|
3210
3253
|
wheels = [
|
|
3211
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
3254
|
+
{ url = "https://files.pythonhosted.org/packages/ec/73/6fd0bb9ce84138c3857f12e9de63bc901852975a092d545f18087a204aa2/platformdirs-4.10.1-py3-none-any.whl", hash = "sha256:0e4eff26be2d75293977f7cddc153fd9b8eaa7fb0c7b64ffe4076cb443117443", size = 22906, upload-time = "2026-07-18T03:53:42.576Z" },
|
|
3212
3255
|
]
|
|
3213
3256
|
|
|
3214
3257
|
[[package]]
|
|
@@ -4378,7 +4421,7 @@ version = "0.13.2"
|
|
|
4378
4421
|
source = { registry = "https://pypi.org/simple" }
|
|
4379
4422
|
dependencies = [
|
|
4380
4423
|
{ name = "matplotlib", version = "3.10.9", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.11'" },
|
|
4381
|
-
{ name = "matplotlib", version = "3.11.
|
|
4424
|
+
{ name = "matplotlib", version = "3.11.1", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.11'" },
|
|
4382
4425
|
{ name = "numpy" },
|
|
4383
4426
|
{ name = "pandas", version = "2.3.3", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.11'" },
|
|
4384
4427
|
{ name = "pandas", version = "3.0.3", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.11'" },
|
|
@@ -4452,11 +4495,11 @@ wheels = [
|
|
|
4452
4495
|
|
|
4453
4496
|
[[package]]
|
|
4454
4497
|
name = "soupsieve"
|
|
4455
|
-
version = "2.
|
|
4498
|
+
version = "2.9"
|
|
4456
4499
|
source = { registry = "https://pypi.org/simple" }
|
|
4457
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
4500
|
+
sdist = { url = "https://files.pythonhosted.org/packages/80/f1/93422647dd7e461f23d254e6b2bfa687a85b53aeb4903fcdbb74474d4584/soupsieve-2.9.tar.gz", hash = "sha256:acee8417325c5653e1377dc31eccad59eb82cbc65942afe6174c53b3aaad63fc", size = 122122, upload-time = "2026-07-19T01:35:18.425Z" }
|
|
4458
4501
|
wheels = [
|
|
4459
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
4502
|
+
{ url = "https://files.pythonhosted.org/packages/7b/d6/3185ab5ad1280319b31986898f3206dd7227cd75e293d4dba2a5e6bf27a0/soupsieve-2.9-py3-none-any.whl", hash = "sha256:a2b2c76d67df2382d245409fd71e321a571717e58463efa32ace87dcadac2c12", size = 37387, upload-time = "2026-07-19T01:35:17.106Z" },
|
|
4460
4503
|
]
|
|
4461
4504
|
|
|
4462
4505
|
[[package]]
|
|
@@ -4519,7 +4562,7 @@ resolution-markers = [
|
|
|
4519
4562
|
]
|
|
4520
4563
|
dependencies = [
|
|
4521
4564
|
{ name = "blosc2", version = "4.3.3", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.11'" },
|
|
4522
|
-
{ name = "numexpr", marker = "python_full_version < '3.11'" },
|
|
4565
|
+
{ name = "numexpr", version = "2.14.1", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.11'" },
|
|
4523
4566
|
{ name = "numpy", marker = "python_full_version < '3.11'" },
|
|
4524
4567
|
{ name = "packaging", marker = "python_full_version < '3.11'" },
|
|
4525
4568
|
{ name = "py-cpuinfo", marker = "python_full_version < '3.11'" },
|
|
@@ -4558,7 +4601,7 @@ resolution-markers = [
|
|
|
4558
4601
|
]
|
|
4559
4602
|
dependencies = [
|
|
4560
4603
|
{ name = "blosc2", version = "4.9.1", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.11'" },
|
|
4561
|
-
{ name = "numexpr", marker = "python_full_version >= '3.11'" },
|
|
4604
|
+
{ name = "numexpr", version = "2.14.2", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.11'" },
|
|
4562
4605
|
{ name = "numpy", marker = "python_full_version >= '3.11'" },
|
|
4563
4606
|
{ name = "packaging", marker = "python_full_version >= '3.11'" },
|
|
4564
4607
|
{ name = "py-cpuinfo", marker = "python_full_version >= '3.11'" },
|
|
@@ -4609,7 +4652,7 @@ wheels = [
|
|
|
4609
4652
|
|
|
4610
4653
|
[[package]]
|
|
4611
4654
|
name = "tlpytools"
|
|
4612
|
-
version = "0.2.
|
|
4655
|
+
version = "0.2.4"
|
|
4613
4656
|
source = { editable = "." }
|
|
4614
4657
|
dependencies = [
|
|
4615
4658
|
{ name = "azure-core" },
|
|
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
|