diff --git a/.github/workflows/core_compat_helper.yml b/.github/workflows/core_compat_helper.yml
index ac35110da..9c211232d 100644
--- a/.github/workflows/core_compat_helper.yml
+++ b/.github/workflows/core_compat_helper.yml
@@ -15,9 +15,9 @@ jobs:
run: which julia
continue-on-error: true
- name: Install Julia, but only if it is not already available in the PATH
- uses: julia-actions/setup-julia@v1
+ uses: julia-actions/setup-julia@v2
with:
- version: '1'
+ version: "1"
arch: ${{ runner.arch }}
if: steps.julia_in_path.outcome != 'success'
- name: "Add the General registry via Git"
@@ -37,7 +37,10 @@ jobs:
- name: "Run CompatHelper"
run: |
import CompatHelper
- CompatHelper.main(; subdirs=["core"])
+ CompatHelper.main(;
+ subdirs=["core"],
+ bump_compat_containing_equality_specifier=false,
+ )
shell: julia --color=yes {0}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
diff --git a/.github/workflows/core_testmodels.yml b/.github/workflows/core_testmodels.yml
index 8a5580b79..91d5f6e3f 100644
--- a/.github/workflows/core_testmodels.yml
+++ b/.github/workflows/core_testmodels.yml
@@ -29,15 +29,15 @@ jobs:
- x64
steps:
- uses: actions/checkout@v4
- - uses: julia-actions/cache@v1
+ - uses: julia-actions/cache@v2
with:
cache-compiled: "true"
cache-registries: "true"
- - uses: prefix-dev/setup-pixi@v0.5.1
+ - uses: prefix-dev/setup-pixi@v0.6.0
with:
- pixi-version: "v0.15.2"
+ pixi-version: "latest"
- name: Prepare pixi
- run: pixi run install-ci
+ run: pixi run --environment=dev install-ci
- name: Run testmodels with Ribasim Core
run: |
pixi run ribasim-core-testmodels
diff --git a/.github/workflows/core_tests.yml b/.github/workflows/core_tests.yml
index 0a765a530..921469bc4 100644
--- a/.github/workflows/core_tests.yml
+++ b/.github/workflows/core_tests.yml
@@ -29,15 +29,15 @@ jobs:
- x64
steps:
- uses: actions/checkout@v4
- - uses: julia-actions/cache@v1
+ - uses: julia-actions/cache@v2
with:
cache-compiled: "true"
cache-registries: "true"
- - uses: prefix-dev/setup-pixi@v0.5.1
+ - uses: prefix-dev/setup-pixi@v0.6.0
with:
pixi-version: "latest"
- name: Prepare pixi
- run: pixi run install-ci
+ run: pixi run --environment=dev install-ci
- name: Test Ribasim Core
run: |
pixi run test-ribasim-core-cov
diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml
index 3dbb49563..622ba67f7 100644
--- a/.github/workflows/docs.yml
+++ b/.github/workflows/docs.yml
@@ -20,15 +20,15 @@ jobs:
contents: write
steps:
- uses: actions/checkout@v4
- - uses: julia-actions/cache@v1
+ - uses: julia-actions/cache@v2
with:
cache-compiled: "true"
cache-registries: "true"
- - uses: prefix-dev/setup-pixi@v0.5.1
+ - uses: prefix-dev/setup-pixi@v0.6.0
with:
pixi-version: "latest"
- name: Prepare pixi
- run: pixi run install-ci
+ run: pixi run --environment=dev install-ci
- name: Check Quarto installation and all engines
run: pixi run quarto-check
@@ -41,7 +41,7 @@ jobs:
- name: Publish Quarto Project
if: github.ref == 'refs/heads/main'
- uses: peaceiris/actions-gh-pages@v3
+ uses: peaceiris/actions-gh-pages@v4
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./docs/_site
diff --git a/.github/workflows/julia_auto_update.yml b/.github/workflows/julia_auto_update.yml
index f0011c3c8..3bfd87d37 100644
--- a/.github/workflows/julia_auto_update.yml
+++ b/.github/workflows/julia_auto_update.yml
@@ -14,7 +14,7 @@ jobs:
- uses: actions/checkout@v4
with:
ssh-key: ${{ secrets.SSH_PRIVATE_KEY }}
- - uses: prefix-dev/setup-pixi@v0.5.1
+ - uses: prefix-dev/setup-pixi@v0.6.0
with:
pixi-version: "latest"
- name: Update Julia manifest file
diff --git a/.github/workflows/python_lint.yml b/.github/workflows/mypy.yml
similarity index 87%
rename from .github/workflows/python_lint.yml
rename to .github/workflows/mypy.yml
index 15bcb778e..e20da5c90 100644
--- a/.github/workflows/python_lint.yml
+++ b/.github/workflows/mypy.yml
@@ -1,4 +1,4 @@
-name: Python Lint
+name: Mypy Type Check
on:
push:
branches: [main, update/pixi-lock]
@@ -16,11 +16,11 @@ jobs:
continue-on-error: true
steps:
- uses: actions/checkout@v4
- - uses: prefix-dev/setup-pixi@v0.5.1
+ - uses: prefix-dev/setup-pixi@v0.6.0
with:
pixi-version: "latest"
- name: Prepare pixi
- run: pixi run install-ci
+ run: pixi run --environment=dev install-ci
- name: Run mypy on python/ribasim
run: |
pixi run mypy-ribasim-python
diff --git a/.github/workflows/pixi_auto_update.yml b/.github/workflows/pixi_auto_update.yml
index 0b9096599..9c3ee9e42 100644
--- a/.github/workflows/pixi_auto_update.yml
+++ b/.github/workflows/pixi_auto_update.yml
@@ -14,7 +14,7 @@ jobs:
- uses: actions/checkout@v4
with:
ssh-key: ${{ secrets.SSH_PRIVATE_KEY }}
- - uses: prefix-dev/setup-pixi@v0.5.1
+ - uses: prefix-dev/setup-pixi@v0.6.0
with:
pixi-version: "latest"
cache: false
diff --git a/.github/workflows/python_codegen.yml b/.github/workflows/python_codegen.yml
index 3d6cac018..c14cbbd9f 100644
--- a/.github/workflows/python_codegen.yml
+++ b/.github/workflows/python_codegen.yml
@@ -16,11 +16,11 @@ jobs:
continue-on-error: true
steps:
- uses: actions/checkout@v4
- - uses: prefix-dev/setup-pixi@v0.5.1
+ - uses: prefix-dev/setup-pixi@v0.6.0
with:
pixi-version: "latest"
- name: Prepare pixi
- run: pixi run install-ci
+ run: pixi run --environment=dev install-ci
- name: Test if codegen runs without errors
run: pixi run codegen
- name: Ensure that no code has been generated
diff --git a/.github/workflows/python_tests.yml b/.github/workflows/python_tests.yml
index 1a64d7922..6546b815f 100644
--- a/.github/workflows/python_tests.yml
+++ b/.github/workflows/python_tests.yml
@@ -11,7 +11,7 @@ concurrency:
cancel-in-progress: true
jobs:
test:
- name: Python ${{ matrix.python-version }} - ${{ matrix.os }}
+ name: ${{ matrix.pixi-environment }} - ${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
@@ -20,26 +20,19 @@ jobs:
- ubuntu-latest
- macOS-latest
- windows-latest
- python-version:
- - "3.10"
- - "3.11"
- - "3.12"
+ pixi-environment:
+ - py312
+ - py311
+ - py310
steps:
- uses: actions/checkout@v4
-
- - name: Set up Python ${{ matrix.python-version }}
- uses: actions/setup-python@v5
+ - uses: prefix-dev/setup-pixi@v0.6.0
with:
- python-version: "${{ matrix.python-version }}"
-
- - name: Install test dependencies
- run: |
- pip install --editable "python/ribasim_testmodels"
- pip install --editable "python/ribasim[tests]"
-
- - name: Run tests
- run: pytest --numprocesses=auto --cov=ribasim --cov-report=xml python/ribasim/tests
-
+ pixi-version: "latest"
+ - name: Prepare pixi
+ run: pixi run --environment ${{ matrix.pixi-environment }} install-python
+ - name: Test Ribasim Python
+ run: pixi run --environment ${{ matrix.pixi-environment }} test-ribasim-python-cov
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v4
with:
diff --git a/.github/workflows/qgis.yml b/.github/workflows/qgis.yml
index e8f46b333..6130f4dd5 100644
--- a/.github/workflows/qgis.yml
+++ b/.github/workflows/qgis.yml
@@ -22,12 +22,12 @@ jobs:
- windows-latest
steps:
- uses: actions/checkout@v4
- - uses: prefix-dev/setup-pixi@v0.5.1
+ - uses: prefix-dev/setup-pixi@v0.6.0
with:
pixi-version: "latest"
- name: Prepare pixi
run: |
- pixi run install-ci
+ pixi run --environment=dev install-ci
- name: Run tests
run: pixi run test-ribasim-qgis-cov
- name: Upload coverage to Codecov
diff --git a/.gitignore b/.gitignore
index 8ee64eb35..5e8b06ffc 100644
--- a/.gitignore
+++ b/.gitignore
@@ -10,8 +10,8 @@ docs/build/
docs/site/
/generated_testmodels
-build/ribasim_cli/
-build/libribasim/
+build/ribasim/
+build/cli/target
JuliaSysimage.dll
LocalPreferences.toml
diff --git a/.teamcity/Ribasim/buildTypes/Ribasim_GenerateTestmodels.xml b/.teamcity/Ribasim/buildTypes/Ribasim_GenerateTestmodels.xml
index 6ec728832..c2945c1aa 100644
--- a/.teamcity/Ribasim/buildTypes/Ribasim_GenerateTestmodels.xml
+++ b/.teamcity/Ribasim/buildTypes/Ribasim_GenerateTestmodels.xml
@@ -19,7 +19,7 @@ source /usr/share/Modules/init/bash
module load pixi
pixi --version
-pixi run install-ci]]>
+pixi run --environment=dev install-ci]]>
@@ -39,13 +39,10 @@ pixi run generate-testmodels]]>
-
-
-
-
-
+
+
@@ -59,4 +56,3 @@ pixi run generate-testmodels]]>
-
diff --git a/.teamcity/Ribasim/buildTypes/Ribasim_GitHubIntegrationTemplate.xml b/.teamcity/Ribasim/buildTypes/Ribasim_GitHubIntegrationTemplate.xml
index 4b62b639d..53d47f3cd 100644
--- a/.teamcity/Ribasim/buildTypes/Ribasim_GitHubIntegrationTemplate.xml
+++ b/.teamcity/Ribasim/buildTypes/Ribasim_GitHubIntegrationTemplate.xml
@@ -6,7 +6,7 @@
-
+
@@ -17,7 +17,7 @@
-
+
diff --git a/.teamcity/Ribasim/buildTypes/Ribasim_Linux.xml b/.teamcity/Ribasim/buildTypes/Ribasim_Linux.xml
new file mode 100644
index 000000000..901a95ae3
--- /dev/null
+++ b/.teamcity/Ribasim/buildTypes/Ribasim_Linux.xml
@@ -0,0 +1,20 @@
+
+
+ Linux
+ Template for agent that uses Linux OS
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/.teamcity/Ribasim/buildTypes/Ribasim_Ribasim_BuildPythonWheels.xml b/.teamcity/Ribasim/buildTypes/Ribasim_Ribasim_BuildPythonWheels.xml
deleted file mode 100644
index e81d4a0a2..000000000
--- a/.teamcity/Ribasim/buildTypes/Ribasim_Ribasim_BuildPythonWheels.xml
+++ /dev/null
@@ -1,48 +0,0 @@
-
-
- Build Python Wheels
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-+:v*]]>
-
-
-
-
-
-
-
-
-
diff --git a/.teamcity/Ribasim/buildTypes/Ribasim_Ribasim_MakeGitHubRelease.xml b/.teamcity/Ribasim/buildTypes/Ribasim_Ribasim_MakeGitHubRelease.xml
index 341866805..074939b49 100644
--- a/.teamcity/Ribasim/buildTypes/Ribasim_Ribasim_MakeGitHubRelease.xml
+++ b/.teamcity/Ribasim/buildTypes/Ribasim_Ribasim_MakeGitHubRelease.xml
@@ -2,9 +2,9 @@
Make GitHub Release
-
+
-
+
@@ -14,8 +14,7 @@ set -euxo pipefail
. /usr/share/Modules/init/bash
module load pixi
-pixi run github-release
-]]>
+pixi run github-release]]>
@@ -24,13 +23,12 @@ pixi run github-release
-
-
-
+
-
+
@@ -58,17 +56,17 @@ pixi run github-release
-
+
-
+
-
+
-
+
-
+
@@ -80,25 +78,25 @@ pixi run github-release
-
+
-
+
-
+
-
+
@@ -112,3 +110,4 @@ pixi run github-release
+
diff --git a/.teamcity/Ribasim/buildTypes/Ribasim_Ribasim_MakeQgisPlugin.xml b/.teamcity/Ribasim/buildTypes/Ribasim_Ribasim_MakeQgisPlugin.xml
index 61df7b30f..f40eff904 100644
--- a/.teamcity/Ribasim/buildTypes/Ribasim_Ribasim_MakeQgisPlugin.xml
+++ b/.teamcity/Ribasim/buildTypes/Ribasim_Ribasim_MakeQgisPlugin.xml
@@ -2,10 +2,13 @@
Make QGIS plugin
-
+
+
+
+
@@ -24,26 +27,6 @@ zip -r ribasim_qgis.zip ribasim_qgis]]>
-
-
-
-
-
-+:v*]]>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/.teamcity/Ribasim/buildTypes/Ribasim_Ribasim_PushSuccessfulNightlyBuildToS3.xml b/.teamcity/Ribasim/buildTypes/Ribasim_Ribasim_PushSuccessfulNightlyBuildToS3.xml
deleted file mode 100644
index 9fe85659d..000000000
--- a/.teamcity/Ribasim/buildTypes/Ribasim_Ribasim_PushSuccessfulNightlyBuildToS3.xml
+++ /dev/null
@@ -1,65 +0,0 @@
-
-
- Push successful nightly build to S3
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/.teamcity/Ribasim/buildTypes/Ribasim_Windows.xml b/.teamcity/Ribasim/buildTypes/Ribasim_Windows.xml
new file mode 100644
index 000000000..978df74f5
--- /dev/null
+++ b/.teamcity/Ribasim/buildTypes/Ribasim_Windows.xml
@@ -0,0 +1,19 @@
+
+
+ Windows
+ Template for agent that uses Windows OS
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/.teamcity/Ribasim/project-config.xml b/.teamcity/Ribasim/project-config.xml
index 48a3307fa..c3c16c983 100644
--- a/.teamcity/Ribasim/project-config.xml
+++ b/.teamcity/Ribasim/project-config.xml
@@ -3,6 +3,20 @@
Ribasim
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -11,9 +25,9 @@
-
+
-
+
@@ -46,20 +60,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/.teamcity/Ribasim/vcsRoots/Ribasim_Ribasim.xml b/.teamcity/Ribasim/vcsRoots/Ribasim_Ribasim.xml
index 6d2362381..754676e5a 100644
--- a/.teamcity/Ribasim/vcsRoots/Ribasim_Ribasim.xml
+++ b/.teamcity/Ribasim/vcsRoots/Ribasim_Ribasim.xml
@@ -3,18 +3,18 @@
Ribasim
-
+
+
-
-
+
diff --git a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_BuildLibribasim.xml b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_BuildRibasim.xml
similarity index 80%
rename from .teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_BuildLibribasim.xml
rename to .teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_BuildRibasim.xml
index 646583b20..d47affbe6 100644
--- a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_BuildLibribasim.xml
+++ b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_BuildRibasim.xml
@@ -1,13 +1,11 @@
- Build libribasim
+ Build Ribasim
-
+
-
-
+
-
@@ -19,7 +17,7 @@ source /usr/share/Modules/init/bash
module load pixi
pixi --version
-pixi run install-ci]]>
+pixi run --environment=dev install-ci]]>
@@ -34,7 +32,7 @@ source /usr/share/Modules/init/bash
module load pixi
module load gcc/11.3.0
pixi run remove-artifacts
-pixi run build-libribasim]]>
+pixi run build]]>
@@ -46,9 +44,7 @@ pixi run build-libribasim]]>
-
-
-
+
@@ -56,11 +52,10 @@ pixi run build-libribasim]]>
-
+
-
diff --git a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_BuildRibasimCli.xml b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_BuildRibasimCli.xml
deleted file mode 100644
index b5f19d98f..000000000
--- a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_BuildRibasimCli.xml
+++ /dev/null
@@ -1,73 +0,0 @@
-
-
- Build ribasim_cli
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimApi.xml b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimBinaries.xml
similarity index 84%
rename from .teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimApi.xml
rename to .teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimBinaries.xml
index 9a3c252da..a49348465 100644
--- a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimApi.xml
+++ b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimBinaries.xml
@@ -1,15 +1,13 @@
- Test ribasim_api
+ Test Ribasim Binaries
-
+
-
-
+
+
-
-
-
+
@@ -19,7 +17,7 @@ source /usr/share/Modules/init/bash
module load pixi
pixi --version
-pixi run install-ci]]>
+pixi run install-python]]>
@@ -32,8 +30,9 @@ pixi run install-ci]]>
source /usr/share/Modules/init/bash
module load pixi
-pixi --version
-pixi run test-ribasim-api]]>
+pixi run --environment=dev install
+pixi run test-ribasim-api
+pixi run test-ribasim-cli]]>
@@ -51,8 +50,7 @@ pixi run test-ribasim-api]]>
-
-+:v*]]>
+
@@ -74,14 +72,6 @@ pixi run test-ribasim-api]]>
-
-
-
-
-
-
-
-
@@ -89,15 +79,23 @@ pixi run test-ribasim-api]]>
+
+
+
+
+
+
+
+
-
+
-
+
-
+
diff --git a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimCli.xml b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimCli.xml
deleted file mode 100644
index c376f147d..000000000
--- a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimCli.xml
+++ /dev/null
@@ -1,111 +0,0 @@
-
-
- Test ribasim_cli
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-+:v*]]>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/.teamcity/Ribasim_Linux/project-config.xml b/.teamcity/Ribasim_Linux/project-config.xml
index 562047376..9a893e1ae 100644
--- a/.teamcity/Ribasim_Linux/project-config.xml
+++ b/.teamcity/Ribasim_Linux/project-config.xml
@@ -1,9 +1,7 @@
Linux
-
-
-
+
diff --git a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildLibribasim.xml b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildRibasim.xml
similarity index 84%
rename from .teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildLibribasim.xml
rename to .teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildRibasim.xml
index 06a31dcbe..9e8740b03 100644
--- a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildLibribasim.xml
+++ b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildRibasim.xml
@@ -1,20 +1,22 @@
- Build libribasim
+ Build Ribasim
-
+
-
-
+
+
+
+
+pixi run --environment=dev install-ci]]>
@@ -23,7 +25,7 @@ pixi run install-ci]]>
+pixi run build]]>
@@ -45,7 +47,7 @@ pixi run build-libribasim]]>
-
+
diff --git a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildRibasimCli.xml b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildRibasimCli.xml
deleted file mode 100644
index a731216c4..000000000
--- a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildRibasimCli.xml
+++ /dev/null
@@ -1,61 +0,0 @@
-
-
- Build ribasim_cli
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_TestRibasimApi.xml b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_TestRibasimBinaries.xml
similarity index 83%
rename from .teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_TestRibasimApi.xml
rename to .teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_TestRibasimBinaries.xml
index 820192d09..23a1e8ca0 100644
--- a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_TestRibasimApi.xml
+++ b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_TestRibasimBinaries.xml
@@ -1,19 +1,16 @@
- Test ribasim_api
+ Test Ribasim Binaries
-
+
-
-
+
-
-
-
+
-
+
@@ -21,7 +18,9 @@
-
+
@@ -39,8 +38,7 @@
-
-+:v*]]>
+
@@ -67,7 +65,7 @@
-
+
@@ -80,13 +78,13 @@
-
+
-
+
-
+
diff --git a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_TestRibasimCli.xml b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_TestRibasimCli.xml
deleted file mode 100644
index 9c9484b66..000000000
--- a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_TestRibasimCli.xml
+++ /dev/null
@@ -1,100 +0,0 @@
-
-
- Test ribasim_cli
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-+:v*]]>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/.teamcity/Ribasim_Windows/project-config.xml b/.teamcity/Ribasim_Windows/project-config.xml
index 79e9fcbe0..ea879c65f 100644
--- a/.teamcity/Ribasim_Windows/project-config.xml
+++ b/.teamcity/Ribasim_Windows/project-config.xml
@@ -2,8 +2,6 @@
Windows
-
-
diff --git a/.vscode/extensions.json b/.vscode/extensions.json
index d9a3b3ac2..0506b40b0 100644
--- a/.vscode/extensions.json
+++ b/.vscode/extensions.json
@@ -7,6 +7,7 @@
"njpwerner.autodocstring",
"quarto.quarto",
"tamasfe.even-better-toml",
- "samuelcolvin.jinjahtml"
+ "samuelcolvin.jinjahtml",
+ "yy0931.vscode-sqlite3-editor"
]
}
diff --git a/Manifest.toml b/Manifest.toml
index d596926b1..cdb214bc6 100644
--- a/Manifest.toml
+++ b/Manifest.toml
@@ -1,13 +1,13 @@
# This file is machine-generated - editing it directly is not advised
-julia_version = "1.10.0"
+julia_version = "1.10.3"
manifest_format = "2.0"
-project_hash = "a66ce8b152bba81b582cbf6d8a2e07a88d016add"
+project_hash = "045162196d64ccb59bdab2af0422fde0b0e83c77"
[[deps.ADTypes]]
-git-tree-sha1 = "41c37aa88889c171f1300ceac1313c06e891d245"
+git-tree-sha1 = "016833eb52ba2d6bea9fcb50ca295980e728ee24"
uuid = "47edcb42-4c32-4615-8424-f2b9edc5f35b"
-version = "0.2.6"
+version = "0.2.7"
[[deps.ANSIColoredPrinters]]
git-tree-sha1 = "574baf8110975760d391c710b6341da1afa48d8c"
@@ -42,9 +42,9 @@ version = "0.1.36"
[[deps.Adapt]]
deps = ["LinearAlgebra", "Requires"]
-git-tree-sha1 = "e2a9873379849ce2ac9f9fa34b0e37bde5d5fe0a"
+git-tree-sha1 = "6a55b747d1812e699320963ffde36f1ebdda4099"
uuid = "79e6a3ab-5dfb-504d-930d-738a2a938a0e"
-version = "4.0.2"
+version = "4.0.4"
weakdeps = ["StaticArrays"]
[deps.Adapt.extensions]
@@ -61,20 +61,22 @@ version = "1.1.1"
[[deps.ArnoldiMethod]]
deps = ["LinearAlgebra", "Random", "StaticArrays"]
-git-tree-sha1 = "62e51b39331de8911e4a7ff6f5aaf38a5f4cc0ae"
+git-tree-sha1 = "d57bd3762d308bded22c3b82d033bff85f6195c6"
uuid = "ec485272-7323-5ecc-a04f-4719b315124d"
-version = "0.2.0"
+version = "0.4.0"
[[deps.ArrayInterface]]
-deps = ["Adapt", "LinearAlgebra", "Requires", "SparseArrays", "SuiteSparse"]
-git-tree-sha1 = "881e43f1aa014a6f75c8fc0847860e00a1500846"
+deps = ["Adapt", "LinearAlgebra", "SparseArrays", "SuiteSparse"]
+git-tree-sha1 = "133a240faec6e074e07c31ee75619c90544179cf"
uuid = "4fba245c-0d91-5ea0-9b3e-6abc04ee57a9"
-version = "7.8.0"
+version = "7.10.0"
[deps.ArrayInterface.extensions]
ArrayInterfaceBandedMatricesExt = "BandedMatrices"
ArrayInterfaceBlockBandedMatricesExt = "BlockBandedMatrices"
ArrayInterfaceCUDAExt = "CUDA"
+ ArrayInterfaceCUDSSExt = "CUDSS"
+ ArrayInterfaceChainRulesExt = "ChainRules"
ArrayInterfaceGPUArraysCoreExt = "GPUArraysCore"
ArrayInterfaceReverseDiffExt = "ReverseDiff"
ArrayInterfaceStaticArraysCoreExt = "StaticArraysCore"
@@ -84,6 +86,8 @@ version = "7.8.0"
BandedMatrices = "aae01518-5342-5314-be14-df237901396f"
BlockBandedMatrices = "ffab5731-97b5-5995-9138-79e8c1846df0"
CUDA = "052768ef-5323-5732-b1bb-66c8b64840ba"
+ CUDSS = "45b445bb-4962-46a0-9369-b4df9d0f772e"
+ ChainRules = "082447d4-558c-5d27-93f4-14fc19e9eca2"
GPUArraysCore = "46192b85-c4d5-4398-a991-12ede77f4527"
ReverseDiff = "37e2e3b7-166d-5795-8a7a-e32c996b4267"
StaticArraysCore = "1e83bf80-4336-4d27-bf5d-d5a4f845583c"
@@ -91,9 +95,9 @@ version = "7.8.0"
[[deps.ArrayLayouts]]
deps = ["FillArrays", "LinearAlgebra"]
-git-tree-sha1 = "e46675dbc095ddfdf2b5fba247d5a25f34e1f8a2"
+git-tree-sha1 = "33207a8be6267bc389d0701e97a9bce6a4de68eb"
uuid = "4c555306-a7a7-4459-81d9-ec55ddd5c99a"
-version = "1.6.1"
+version = "1.9.2"
weakdeps = ["SparseArrays"]
[deps.ArrayLayouts.extensions]
@@ -222,32 +226,36 @@ weakdeps = ["Dates", "LinearAlgebra"]
[[deps.CompilerSupportLibraries_jll]]
deps = ["Artifacts", "Libdl"]
uuid = "e66e0078-7015-5450-92f7-15fbd957f2ae"
-version = "1.0.5+1"
+version = "1.1.1+0"
[[deps.ComponentArrays]]
deps = ["ArrayInterface", "ChainRulesCore", "ForwardDiff", "Functors", "LinearAlgebra", "PackageExtensionCompat", "StaticArrayInterface", "StaticArraysCore"]
-git-tree-sha1 = "e3ced166fcefe2352b73f9ae3e1cf6f2c5d4e806"
+git-tree-sha1 = "dded0a186977e5a4a12b1f1224f73956e4e8e90a"
uuid = "b0b7db55-cfe3-40fc-9ded-d10e2dbeff66"
-version = "0.15.10"
+version = "0.15.11"
[deps.ComponentArrays.extensions]
ComponentArraysAdaptExt = "Adapt"
ComponentArraysConstructionBaseExt = "ConstructionBase"
ComponentArraysGPUArraysExt = "GPUArrays"
+ ComponentArraysOptimisersExt = "Optimisers"
ComponentArraysRecursiveArrayToolsExt = "RecursiveArrayTools"
ComponentArraysReverseDiffExt = "ReverseDiff"
ComponentArraysSciMLBaseExt = "SciMLBase"
ComponentArraysTrackerExt = "Tracker"
+ ComponentArraysTruncatedStacktracesExt = "TruncatedStacktraces"
ComponentArraysZygoteExt = "Zygote"
[deps.ComponentArrays.weakdeps]
Adapt = "79e6a3ab-5dfb-504d-930d-738a2a938a0e"
ConstructionBase = "187b0558-2788-49d3-abe0-74a17ed4e7c9"
GPUArrays = "0c68f7d7-f131-5f86-a1c3-88cf8149b2d7"
+ Optimisers = "3bd65402-5787-11e9-1adc-39752487f4e2"
RecursiveArrayTools = "731186ca-8d62-57ce-b412-fbd966d074cd"
ReverseDiff = "37e2e3b7-166d-5795-8a7a-e32c996b4267"
SciMLBase = "0bca4576-84f4-4d90-8ffe-ffa030f20462"
Tracker = "9f7883ad-71c0-57eb-9f7f-b5c9e6d3789c"
+ TruncatedStacktraces = "781d530d-4396-4725-bb49-402e4bee1e77"
Zygote = "e88e6eb3-aa80-5325-afca-941959d7151f"
[[deps.CompositionsBase]]
@@ -266,9 +274,9 @@ version = "0.2.3"
[[deps.ConcurrentUtilities]]
deps = ["Serialization", "Sockets"]
-git-tree-sha1 = "9c4708e3ed2b799e6124b5673a712dda0b596a9b"
+git-tree-sha1 = "6cbbd4d241d7e6579ab354737f4dd95ca43946e1"
uuid = "f0e56b4a-5159-44fe-b623-3e5288b988bb"
-version = "2.3.1"
+version = "2.4.1"
[[deps.Conda]]
deps = ["Downloads", "JSON", "VersionParsing"]
@@ -284,9 +292,9 @@ version = "0.17.6"
[[deps.ConstructionBase]]
deps = ["LinearAlgebra"]
-git-tree-sha1 = "c53fc348ca4d40d7b371e71fd52251839080cbc9"
+git-tree-sha1 = "260fd2400ed2dab602a7c15cf10c1933c59930a2"
uuid = "187b0558-2788-49d3-abe0-74a17ed4e7c9"
-version = "1.5.4"
+version = "1.5.5"
[deps.ConstructionBase.extensions]
ConstructionBaseIntervalSetsExt = "IntervalSets"
@@ -308,9 +316,9 @@ uuid = "a8cc5b0e-0ffa-5ad4-8c14-923d3ee1735f"
version = "4.1.1"
[[deps.DBInterface]]
-git-tree-sha1 = "6f93ab5557fa0ffd02e3d751186f329ac21da791"
+git-tree-sha1 = "a444404b3f94deaa43ca2a58e18153a82695282b"
uuid = "a10d1c49-ce27-4219-8d33-6db1a4562965"
-version = "2.6.0"
+version = "2.6.1"
[[deps.DataAPI]]
git-tree-sha1 = "abe83f3a2f1b857aac70ef8b269080af17764bbe"
@@ -324,10 +332,10 @@ uuid = "a93c6f00-e57d-5684-b7b6-d8193f3e46c0"
version = "1.6.1"
[[deps.DataInterpolations]]
-deps = ["LinearAlgebra", "PrettyTables", "RecipesBase", "Reexport"]
-git-tree-sha1 = "79e533ab41ad6784eea6eafbf3f1c615c9a1349e"
+deps = ["FindFirstFunctions", "LinearAlgebra", "PrettyTables", "RecipesBase", "Reexport"]
+git-tree-sha1 = "6af80a2e4d79f1f1ed9f0cee69ba5ac4ba3358a1"
uuid = "82cc6244-b520-54b8-b5a6-8a565e85f1d0"
-version = "4.7.0"
+version = "4.7.2"
[deps.DataInterpolations.extensions]
DataInterpolationsChainRulesCoreExt = "ChainRulesCore"
@@ -344,9 +352,9 @@ version = "4.7.0"
[[deps.DataStructures]]
deps = ["Compat", "InteractiveUtils", "OrderedCollections"]
-git-tree-sha1 = "0f4b5d62a88d8f59003e43c25a8a90de9eb76317"
+git-tree-sha1 = "1d0a14036acb104d9e89698bd408f63ab58cdc82"
uuid = "864edb3b-99cc-5e75-8d2d-829cb0a9cfe8"
-version = "0.18.18"
+version = "0.18.20"
[[deps.DataValueInterfaces]]
git-tree-sha1 = "bfc1187b79289637fa0ef6d4436ebdfe6905cbd6"
@@ -359,15 +367,15 @@ uuid = "ade2ca70-3891-5945-98fb-dc099432e06a"
[[deps.Dictionaries]]
deps = ["Indexing", "Random", "Serialization"]
-git-tree-sha1 = "573c92ef22ee0783bfaa4007c732b044c791bc6d"
+git-tree-sha1 = "35b66b6744b2d92c778afd3a88d2571875664a2a"
uuid = "85a47980-9c8c-11e8-2b9f-f7ca1fa99fb4"
-version = "0.4.1"
+version = "0.4.2"
[[deps.DiffEqBase]]
-deps = ["ArrayInterface", "DataStructures", "DocStringExtensions", "EnumX", "EnzymeCore", "FastBroadcast", "ForwardDiff", "FunctionWrappers", "FunctionWrappersWrappers", "LinearAlgebra", "Logging", "Markdown", "MuladdMacro", "Parameters", "PreallocationTools", "PrecompileTools", "Printf", "RecursiveArrayTools", "Reexport", "SciMLBase", "SciMLOperators", "Setfield", "SparseArrays", "Static", "StaticArraysCore", "Statistics", "Tricks", "TruncatedStacktraces"]
-git-tree-sha1 = "b19b2bb1ecd1271334e4b25d605e50f75e68fcae"
+deps = ["ArrayInterface", "ConcreteStructs", "DataStructures", "DocStringExtensions", "EnumX", "EnzymeCore", "FastBroadcast", "FastClosures", "ForwardDiff", "FunctionWrappers", "FunctionWrappersWrappers", "LinearAlgebra", "Logging", "Markdown", "MuladdMacro", "Parameters", "PreallocationTools", "PrecompileTools", "Printf", "RecursiveArrayTools", "Reexport", "SciMLBase", "SciMLOperators", "Setfield", "SparseArrays", "Static", "StaticArraysCore", "Statistics", "Tricks", "TruncatedStacktraces"]
+git-tree-sha1 = "531c53fd0405716712a8b4960216c3b7b5ec89b9"
uuid = "2b5f629d-d688-5b77-993f-72d75c75574e"
-version = "6.148.0"
+version = "6.149.1"
[deps.DiffEqBase.extensions]
DiffEqBaseChainRulesCoreExt = "ChainRulesCore"
@@ -395,9 +403,9 @@ version = "6.148.0"
[[deps.DiffEqCallbacks]]
deps = ["DataStructures", "DiffEqBase", "ForwardDiff", "Functors", "LinearAlgebra", "Markdown", "NonlinearSolve", "Parameters", "RecipesBase", "RecursiveArrayTools", "SciMLBase", "StaticArraysCore"]
-git-tree-sha1 = "32b4359949681e76eb09f9b7a4536cb664172980"
+git-tree-sha1 = "c959cfd2657d16beada157a74d52269e8556500e"
uuid = "459566f4-90b8-5000-8ac3-15dfb0a30def"
-version = "3.3.0"
+version = "3.6.2"
[deps.DiffEqCallbacks.weakdeps]
OrdinaryDiffEq = "1dea7af3-3e70-54e6-95c3-0bf5283fa5ed"
@@ -453,9 +461,9 @@ uuid = "4e289a0a-7415-4d19-859d-a7e5c4648b56"
version = "1.0.4"
[[deps.EnzymeCore]]
-git-tree-sha1 = "59c44d8fbc651c0395d8a6eda64b05ce316f58b4"
+git-tree-sha1 = "1bc328eec34ffd80357f84a84bb30e4374e9bd60"
uuid = "f151be2c-9106-41f4-ab19-57ee4f262869"
-version = "0.6.5"
+version = "0.6.6"
weakdeps = ["Adapt"]
[deps.EnzymeCore.extensions]
@@ -496,18 +504,18 @@ version = "2.0.2"
[[deps.FileIO]]
deps = ["Pkg", "Requires", "UUIDs"]
-git-tree-sha1 = "c5c28c245101bd59154f649e19b038d15901b5dc"
+git-tree-sha1 = "82d8afa92ecf4b52d78d869f038ebfb881267322"
uuid = "5789e2e9-d7fb-5bc7-8068-2c6fae9b9549"
-version = "1.16.2"
+version = "1.16.3"
[[deps.FileWatching]]
uuid = "7b1f6079-737a-58dc-b8bc-7a2ca5c1b5ee"
[[deps.FillArrays]]
-deps = ["LinearAlgebra", "Random"]
-git-tree-sha1 = "5b93957f6dcd33fc343044af3d48c215be2562f1"
+deps = ["LinearAlgebra"]
+git-tree-sha1 = "57f08d5665e76397e96b168f9acc12ab17c84a68"
uuid = "1a297f60-69ca-5386-bcde-b61e274b549b"
-version = "1.9.3"
+version = "1.10.2"
[deps.FillArrays.extensions]
FillArraysPDMatsExt = "PDMats"
@@ -519,11 +527,16 @@ version = "1.9.3"
SparseArrays = "2f01184e-e22b-5df5-ae63-d93ebab69eaf"
Statistics = "10745b16-79ce-11e8-11f9-7d13ad32a3b2"
+[[deps.FindFirstFunctions]]
+git-tree-sha1 = "e90fef90f7d75e6a5b435b0fd65609759f99717a"
+uuid = "64ca27bc-2ba2-4a57-88aa-44e436879224"
+version = "1.2.0"
+
[[deps.FiniteDiff]]
deps = ["ArrayInterface", "LinearAlgebra", "Requires", "Setfield", "SparseArrays"]
-git-tree-sha1 = "73d1214fec245096717847c62d389a5d2ac86504"
+git-tree-sha1 = "2de436b72c3422940cbe1367611d137008af7ec3"
uuid = "6a86dc24-6348-571c-b903-95158fe2bd41"
-version = "2.22.0"
+version = "2.23.1"
[deps.FiniteDiff.extensions]
FiniteDiffBandedMatricesExt = "BandedMatrices"
@@ -558,9 +571,9 @@ version = "0.1.3"
[[deps.Functors]]
deps = ["LinearAlgebra"]
-git-tree-sha1 = "166c544477f97bbadc7179ede1c1868e0e9b426b"
+git-tree-sha1 = "d3e63d9fa13f8eaa2f06f64949e2afc593ff52c2"
uuid = "d9f16b24-f501-4c13-a1f2-28368ffc5196"
-version = "0.4.7"
+version = "0.4.10"
[[deps.Future]]
deps = ["Random"]
@@ -574,9 +587,9 @@ version = "0.1.6"
[[deps.GenericSchur]]
deps = ["LinearAlgebra", "Printf"]
-git-tree-sha1 = "fb69b2a645fa69ba5f474af09221b9308b160ce6"
+git-tree-sha1 = "af49a0851f8113fcfae2ef5027c6d49d0acec39b"
uuid = "c145ed77-6b09-5dd9-b285-bf645a82121e"
-version = "0.5.3"
+version = "0.5.4"
[[deps.Glob]]
git-tree-sha1 = "97285bbd5230dd766e9ef6749b80fc617126d496"
@@ -585,9 +598,9 @@ version = "1.3.1"
[[deps.Graphs]]
deps = ["ArnoldiMethod", "Compat", "DataStructures", "Distributed", "Inflate", "LinearAlgebra", "Random", "SharedArrays", "SimpleTraits", "SparseArrays", "Statistics"]
-git-tree-sha1 = "899050ace26649433ef1af25bc17a815b3db52b7"
+git-tree-sha1 = "3863330da5466410782f2bffc64f3d505a6a8334"
uuid = "86223c79-3864-5bf0-83f7-82e725a168b6"
-version = "1.9.0"
+version = "1.10.0"
[[deps.HiGHS]]
deps = ["HiGHS_jll", "MathOptInterface", "PrecompileTools", "SparseArrays"]
@@ -597,9 +610,9 @@ version = "1.9.0"
[[deps.HiGHS_jll]]
deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "Libdl", "Zlib_jll"]
-git-tree-sha1 = "f596ee3668df8587158bcaef1ae47bf75bc0fe39"
+git-tree-sha1 = "9a550d55c49334beb538c5ad9504f07fc29a13dc"
uuid = "8fd58aa0-07eb-5a78-9b36-339c94fd15ea"
-version = "1.6.0+1"
+version = "1.7.0+0"
[[deps.HostCPUFeatures]]
deps = ["BitTwiddlingConvenienceFunctions", "IfElse", "Libdl", "Static"]
@@ -631,9 +644,9 @@ version = "1.1.1"
[[deps.Infiltrator]]
deps = ["InteractiveUtils", "Markdown", "REPL", "UUIDs"]
-git-tree-sha1 = "838a8df6dd9ce18565fac062f6346b0a1fca5609"
+git-tree-sha1 = "663ecbf362df6a7775bbb56b4bddcea0b291cb01"
uuid = "5903a43b-9cc3-4c30-8d17-598619ec4e9b"
-version = "1.7.0"
+version = "1.8.2"
[[deps.Inflate]]
git-tree-sha1 = "ea8031dea4aff6bd41f1df8f2fdfb25b33626381"
@@ -648,9 +661,9 @@ version = "1.4.0"
[[deps.IntelOpenMP_jll]]
deps = ["Artifacts", "JLLWrappers", "Libdl"]
-git-tree-sha1 = "5fdf2fe6724d8caabf43b557b84ce53f3b7e2f6b"
+git-tree-sha1 = "be50fe8df3acbffa0274a744f1a99d29c45a57f4"
uuid = "1d5cc7b8-4909-519e-a0f8-d0f5ad9712d0"
-version = "2024.0.2+0"
+version = "2024.1.0+0"
[[deps.InteractiveUtils]]
deps = ["Markdown"]
@@ -658,9 +671,13 @@ uuid = "b77e0a4c-d291-57a0-90e8-8db25a27a240"
[[deps.InverseFunctions]]
deps = ["Test"]
-git-tree-sha1 = "68772f49f54b479fa88ace904f6127f0a3bb2e46"
+git-tree-sha1 = "e7cbed5032c4c397a6ac23d1493f3289e01231c4"
uuid = "3587e190-3f89-42d0-90ee-14403ec27112"
-version = "0.1.12"
+version = "0.1.14"
+weakdeps = ["Dates"]
+
+ [deps.InverseFunctions.extensions]
+ DatesExt = "Dates"
[[deps.InvertedIndices]]
git-tree-sha1 = "0dc7b50b8d436461be01300fd8cd45aa0274b038"
@@ -712,9 +729,9 @@ weakdeps = ["ArrowTypes"]
[[deps.JuMP]]
deps = ["LinearAlgebra", "MacroTools", "MathOptInterface", "MutableArithmetics", "OrderedCollections", "PrecompileTools", "Printf", "SparseArrays"]
-git-tree-sha1 = "4e44cff1595c6c02cdbca4e87ce376e63c33a584"
+git-tree-sha1 = "07385c772da34d91fc55d6c704b6224302082ba0"
uuid = "4076af6c-e467-56ae-b986-b466b2749572"
-version = "1.20.0"
+version = "1.21.1"
[deps.JuMP.extensions]
JuMPDimensionalDataExt = "DimensionalData"
@@ -724,9 +741,9 @@ version = "1.20.0"
[[deps.JuliaInterpreter]]
deps = ["CodeTracking", "InteractiveUtils", "Random", "UUIDs"]
-git-tree-sha1 = "7b762d81887160169ddfc93a47e5fd7a6a3e78ef"
+git-tree-sha1 = "e9648d90370e2d0317f9518c9c6e0841db54a90b"
uuid = "aa1ae85d-cabe-5617-a682-6adf51b2e16a"
-version = "0.9.29"
+version = "0.9.31"
[[deps.KLU]]
deps = ["LinearAlgebra", "SparseArrays", "SuiteSparse_jll"]
@@ -753,9 +770,9 @@ version = "0.1.15"
[[deps.LazyArrays]]
deps = ["ArrayLayouts", "FillArrays", "LinearAlgebra", "MacroTools", "MatrixFactorizations", "SparseArrays"]
-git-tree-sha1 = "9cfca23ab83b0dfac93cb1a1ef3331ab9fe596a5"
+git-tree-sha1 = "35079a6a869eecace778bcda8641f9a54ca3a828"
uuid = "5078a376-72f3-5289-bfd5-ec5146d43c02"
-version = "1.8.3"
+version = "1.10.0"
weakdeps = ["StaticArrays"]
[deps.LazyArrays.extensions]
@@ -815,15 +832,16 @@ deps = ["Libdl", "OpenBLAS_jll", "libblastrampoline_jll"]
uuid = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
[[deps.LinearSolve]]
-deps = ["ArrayInterface", "ChainRulesCore", "ConcreteStructs", "DocStringExtensions", "EnumX", "FastLapackInterface", "GPUArraysCore", "InteractiveUtils", "KLU", "Krylov", "Libdl", "LinearAlgebra", "MKL_jll", "Markdown", "PrecompileTools", "Preferences", "RecursiveFactorization", "Reexport", "SciMLBase", "SciMLOperators", "Setfield", "SparseArrays", "Sparspak", "StaticArraysCore", "UnPack"]
-git-tree-sha1 = "b2cc25978eb8efda63ee5786f2ed72c35a711b61"
+deps = ["ArrayInterface", "ChainRulesCore", "ConcreteStructs", "DocStringExtensions", "EnumX", "FastLapackInterface", "GPUArraysCore", "InteractiveUtils", "KLU", "Krylov", "LazyArrays", "Libdl", "LinearAlgebra", "MKL_jll", "Markdown", "PrecompileTools", "Preferences", "RecursiveFactorization", "Reexport", "SciMLBase", "SciMLOperators", "Setfield", "SparseArrays", "Sparspak", "StaticArraysCore", "UnPack"]
+git-tree-sha1 = "c55172df0d19b34db93c410cfcd79dbc3e52ba6f"
uuid = "7ed4a6bd-45f5-4d41-b270-4a48e9bafcae"
-version = "2.26.0"
+version = "2.29.1"
[deps.LinearSolve.extensions]
LinearSolveBandedMatricesExt = "BandedMatrices"
LinearSolveBlockDiagonalsExt = "BlockDiagonals"
LinearSolveCUDAExt = "CUDA"
+ LinearSolveCUDSSExt = "CUDSS"
LinearSolveEnzymeExt = ["Enzyme", "EnzymeCore"]
LinearSolveFastAlmostBandedMatricesExt = ["FastAlmostBandedMatrices"]
LinearSolveHYPREExt = "HYPRE"
@@ -838,6 +856,7 @@ version = "2.26.0"
BandedMatrices = "aae01518-5342-5314-be14-df237901396f"
BlockDiagonals = "0a1fb500-61f7-11e9-3c65-f5ef3456f9f0"
CUDA = "052768ef-5323-5732-b1bb-66c8b64840ba"
+ CUDSS = "45b445bb-4962-46a0-9369-b4df9d0f772e"
Enzyme = "7da242da-08ed-463a-9acd-ee780be4f1d9"
EnzymeCore = "f151be2c-9106-41f4-ab19-57ee4f262869"
FastAlmostBandedMatrices = "9d29842c-ecb8-4973-b1e9-a27b1157504e"
@@ -876,9 +895,9 @@ version = "1.0.3"
[[deps.LoopVectorization]]
deps = ["ArrayInterface", "CPUSummary", "CloseOpenIntervals", "DocStringExtensions", "HostCPUFeatures", "IfElse", "LayoutPointers", "LinearAlgebra", "OffsetArrays", "PolyesterWeave", "PrecompileTools", "SIMDTypes", "SLEEFPirates", "Static", "StaticArrayInterface", "ThreadingUtilities", "UnPack", "VectorizationBase"]
-git-tree-sha1 = "0f5648fbae0d015e3abe5867bca2b362f67a5894"
+git-tree-sha1 = "8f6786d8b2b3248d79db3ad359ce95382d5a6df8"
uuid = "bdcacae8-1622-11e9-2a5c-532679323890"
-version = "0.12.166"
+version = "0.12.170"
weakdeps = ["ChainRulesCore", "ForwardDiff", "SpecialFunctions"]
[deps.LoopVectorization.extensions]
@@ -898,10 +917,10 @@ uuid = "5ced341a-0733-55b8-9ab6-a4889d929147"
version = "1.9.4+0"
[[deps.MKL_jll]]
-deps = ["Artifacts", "IntelOpenMP_jll", "JLLWrappers", "LazyArtifacts", "Libdl"]
-git-tree-sha1 = "72dc3cf284559eb8f53aa593fe62cb33f83ed0c0"
+deps = ["Artifacts", "IntelOpenMP_jll", "JLLWrappers", "LazyArtifacts", "Libdl", "oneTBB_jll"]
+git-tree-sha1 = "80b2833b56d466b3858d565adcd16a4a05f2089b"
uuid = "856f044c-d86e-5d09-b602-aeab76dc8ba7"
-version = "2024.0.0+0"
+version = "2024.1.0+0"
[[deps.MacroTools]]
deps = ["Markdown", "Random"]
@@ -926,21 +945,21 @@ version = "1.1.0"
[[deps.MathOptInterface]]
deps = ["BenchmarkTools", "CodecBzip2", "CodecZlib", "DataStructures", "ForwardDiff", "JSON", "LinearAlgebra", "MutableArithmetics", "NaNMath", "OrderedCollections", "PrecompileTools", "Printf", "SparseArrays", "SpecialFunctions", "Test", "Unicode"]
-git-tree-sha1 = "679c1aec6934d322783bd15db4d18f898653be4f"
+git-tree-sha1 = "9cc5acd6b76174da7503d1de3a6f8cf639b6e5cb"
uuid = "b8f27783-ece8-5eb3-8dc8-9495eed66fee"
-version = "1.27.0"
+version = "1.29.0"
[[deps.MatrixFactorizations]]
deps = ["ArrayLayouts", "LinearAlgebra", "Printf", "Random"]
-git-tree-sha1 = "78f6e33434939b0ac9ba1df81e6d005ee85a7396"
+git-tree-sha1 = "6731e0574fa5ee21c02733e397beb133df90de35"
uuid = "a3b82374-2e81-5b9e-98ce-41277c0e4c87"
-version = "2.1.0"
+version = "2.2.0"
[[deps.MaybeInplace]]
deps = ["ArrayInterface", "LinearAlgebra", "MacroTools", "SparseArrays"]
-git-tree-sha1 = "a85c6a98c9e5a2a7046bc1bb89f28a3241e1de4d"
+git-tree-sha1 = "b1f2f92feb0bc201e91c155ef575bcc7d9cc3526"
uuid = "bb5d69b7-63fc-4a16-80bd-7e42200c7bdb"
-version = "0.1.1"
+version = "0.1.2"
[[deps.MbedTLS]]
deps = ["Dates", "MbedTLS_jll", "MozillaCACerts_jll", "NetworkOptions", "Random", "Sockets"]
@@ -961,18 +980,18 @@ version = "0.7.0"
[[deps.Missings]]
deps = ["DataAPI"]
-git-tree-sha1 = "f66bdc5de519e8f8ae43bdc598782d35a25b1272"
+git-tree-sha1 = "ec4f7fbeab05d7747bdf98eb74d130a2a2ed298d"
uuid = "e1d29d7a-bbdc-5cf2-9ac0-f12de2c33e28"
-version = "1.1.0"
+version = "1.2.0"
[[deps.Mmap]]
uuid = "a63ad114-7e13-5084-954f-fe012c677804"
[[deps.Mocking]]
deps = ["Compat", "ExprTools"]
-git-tree-sha1 = "4cc0c5a83933648b615c36c2b956d94fda70641e"
+git-tree-sha1 = "bf17d9cb4f0d2882351dfad030598f64286e5936"
uuid = "78c3b35d-d492-501b-9361-3d52fe80e533"
-version = "0.7.7"
+version = "0.7.8"
[[deps.MozillaCACerts_jll]]
uuid = "14a3606d-f60d-562e-9121-12d972cd8159"
@@ -985,9 +1004,9 @@ version = "0.2.4"
[[deps.MutableArithmetics]]
deps = ["LinearAlgebra", "SparseArrays", "Test"]
-git-tree-sha1 = "302fd161eb1c439e4115b51ae456da4e9984f130"
+git-tree-sha1 = "a3589efe0005fc4718775d8641b2de9060d23f73"
uuid = "d8a4904e-b15c-11e9-3269-09a3773c0cb0"
-version = "1.4.1"
+version = "1.4.4"
[[deps.NLSolversBase]]
deps = ["DiffResults", "Distributed", "FiniteDiff", "ForwardDiff"]
@@ -1006,10 +1025,10 @@ uuid = "ca575930-c2e3-43a9-ace4-1e988b2c1908"
version = "1.2.0"
[[deps.NonlinearSolve]]
-deps = ["ADTypes", "ArrayInterface", "ConcreteStructs", "DiffEqBase", "FastBroadcast", "FastClosures", "FiniteDiff", "ForwardDiff", "LazyArrays", "LineSearches", "LinearAlgebra", "LinearSolve", "MaybeInplace", "PrecompileTools", "Preferences", "Printf", "RecursiveArrayTools", "Reexport", "SciMLBase", "SimpleNonlinearSolve", "SparseArrays", "SparseDiffTools", "StaticArraysCore", "TimerOutputs"]
-git-tree-sha1 = "f409959245f04c8004bd3711915d71c93b2043f7"
+deps = ["ADTypes", "ArrayInterface", "ConcreteStructs", "DiffEqBase", "FastBroadcast", "FastClosures", "FiniteDiff", "ForwardDiff", "LazyArrays", "LineSearches", "LinearAlgebra", "LinearSolve", "MaybeInplace", "PrecompileTools", "Preferences", "Printf", "RecursiveArrayTools", "Reexport", "SciMLBase", "SimpleNonlinearSolve", "SparseArrays", "SparseDiffTools", "StaticArraysCore", "SymbolicIndexingInterface", "TimerOutputs"]
+git-tree-sha1 = "4891b745bd621f88aac661f2504d014931b443ba"
uuid = "8913a72c-1f9b-4ce2-8d82-65094dcecaec"
-version = "3.7.3"
+version = "3.10.0"
[deps.NonlinearSolve.extensions]
NonlinearSolveBandedMatricesExt = "BandedMatrices"
@@ -1038,9 +1057,9 @@ version = "3.7.3"
Zygote = "e88e6eb3-aa80-5325-afca-941959d7151f"
[[deps.OffsetArrays]]
-git-tree-sha1 = "6a731f2b5c03157418a20c12195eb4b74c8f8621"
+git-tree-sha1 = "e64b4f5ea6b7389f6f046d13d4896a8f9c1ba71e"
uuid = "6fe1bfb0-de20-5000-8ca7-80f57d26f881"
-version = "1.13.0"
+version = "1.14.0"
weakdeps = ["Adapt"]
[deps.OffsetArrays.extensions]
@@ -1049,7 +1068,7 @@ weakdeps = ["Adapt"]
[[deps.OpenBLAS_jll]]
deps = ["Artifacts", "CompilerSupportLibraries_jll", "Libdl"]
uuid = "4536629a-c528-5b80-bd46-f80d51c5b363"
-version = "0.3.23+2"
+version = "0.3.23+4"
[[deps.OpenLibm_jll]]
deps = ["Artifacts", "Libdl"]
@@ -1069,15 +1088,15 @@ version = "1.6.3"
[[deps.OrdinaryDiffEq]]
deps = ["ADTypes", "Adapt", "ArrayInterface", "DataStructures", "DiffEqBase", "DocStringExtensions", "ExponentialUtilities", "FastBroadcast", "FastClosures", "FillArrays", "FiniteDiff", "ForwardDiff", "FunctionWrappersWrappers", "IfElse", "InteractiveUtils", "LineSearches", "LinearAlgebra", "LinearSolve", "Logging", "MacroTools", "MuladdMacro", "NonlinearSolve", "Polyester", "PreallocationTools", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "SciMLBase", "SciMLOperators", "SimpleNonlinearSolve", "SimpleUnPack", "SparseArrays", "SparseDiffTools", "StaticArrayInterface", "StaticArrays", "TruncatedStacktraces"]
-git-tree-sha1 = "287159684e32db56c82dbf545004a7884c6e5198"
+git-tree-sha1 = "91079af18db922354197eeae2a17b177079e24c1"
uuid = "1dea7af3-3e70-54e6-95c3-0bf5283fa5ed"
-version = "6.74.0"
+version = "6.74.1"
[[deps.OteraEngine]]
deps = ["Markdown", "Pkg", "TOML"]
-git-tree-sha1 = "0d57df750e20a4534a117398dc04eb237d86ea70"
+git-tree-sha1 = "c92627db1d45055c1b33b8133e829e1bce9d04fd"
uuid = "b2d7f28f-acd6-4007-8b26-bc27716e5513"
-version = "0.4.1"
+version = "0.5.2"
[[deps.PackageCompiler]]
deps = ["Artifacts", "Glob", "LazyArtifacts", "Libdl", "Pkg", "Printf", "RelocatableFolders", "TOML", "UUIDs", "p7zip_jll"]
@@ -1110,9 +1129,9 @@ version = "1.10.0"
[[deps.Polyester]]
deps = ["ArrayInterface", "BitTwiddlingConvenienceFunctions", "CPUSummary", "IfElse", "ManualMemory", "PolyesterWeave", "Requires", "Static", "StaticArrayInterface", "StrideArraysCore", "ThreadingUtilities"]
-git-tree-sha1 = "fca25670784a1ae44546bcb17288218310af2778"
+git-tree-sha1 = "2ba5f33cbb51a85ef58a850749492b08f9bf2193"
uuid = "f517fe37-dbe3-4b94-8317-1923a5111588"
-version = "0.7.9"
+version = "0.7.13"
[[deps.PolyesterWeave]]
deps = ["BitTwiddlingConvenienceFunctions", "CPUSummary", "IfElse", "Static", "ThreadingUtilities"]
@@ -1128,9 +1147,9 @@ version = "1.4.3"
[[deps.PreallocationTools]]
deps = ["Adapt", "ArrayInterface", "ForwardDiff"]
-git-tree-sha1 = "b6665214f2d0739f2d09a17474dd443b9139784a"
+git-tree-sha1 = "a660e9daab5db07adf3dedfe09b435cc530d855e"
uuid = "d236fae5-4411-538c-8e31-a6e3d9e00b46"
-version = "0.4.20"
+version = "0.4.21"
[deps.PreallocationTools.extensions]
PreallocationToolsReverseDiffExt = "ReverseDiff"
@@ -1140,9 +1159,9 @@ version = "0.4.20"
[[deps.PrecompileTools]]
deps = ["Preferences"]
-git-tree-sha1 = "03b4c25b43cb84cee5c90aa9b5ea0a78fd848d2f"
+git-tree-sha1 = "5aa36f7049a63a1528fe8f7c3f2113413ffd4e1f"
uuid = "aea7be01-6a6a-4083-8856-8a6e6704d82a"
-version = "1.2.0"
+version = "1.2.1"
[[deps.Preferences]]
deps = ["TOML"]
@@ -1192,9 +1211,9 @@ version = "1.3.4"
[[deps.RecursiveArrayTools]]
deps = ["Adapt", "ArrayInterface", "DocStringExtensions", "GPUArraysCore", "IteratorInterfaceExtensions", "LinearAlgebra", "RecipesBase", "SparseArrays", "StaticArraysCore", "Statistics", "SymbolicIndexingInterface", "Tables"]
-git-tree-sha1 = "dc428bb59c20dafd1ec500c3432b9e3d7e78e7f3"
+git-tree-sha1 = "d8f131090f2e44b145084928856a561c83f43b27"
uuid = "731186ca-8d62-57ce-b412-fbd966d074cd"
-version = "3.10.1"
+version = "3.13.0"
[deps.RecursiveArrayTools.extensions]
RecursiveArrayToolsFastBroadcastExt = "FastBroadcast"
@@ -1216,9 +1235,9 @@ version = "3.10.1"
[[deps.RecursiveFactorization]]
deps = ["LinearAlgebra", "LoopVectorization", "Polyester", "PrecompileTools", "StrideArraysCore", "TriangularSolve"]
-git-tree-sha1 = "8bc86c78c7d8e2a5fe559e3721c0f9c9e303b2ed"
+git-tree-sha1 = "6db1a75507051bc18bfa131fbc7c3f169cc4b2f6"
uuid = "f2c3362d-daeb-58d1-803e-2bc74f2840b4"
-version = "0.2.21"
+version = "0.2.23"
[[deps.Reexport]]
git-tree-sha1 = "45e428421666073eab6f2da5c9d310d99bb12f9b"
@@ -1244,16 +1263,16 @@ uuid = "295af30f-e4ad-537b-8983-00126c2a3abe"
version = "3.5.14"
[[deps.Ribasim]]
-deps = ["Accessors", "Arrow", "BasicModelInterface", "CodecZstd", "ComponentArrays", "Configurations", "DBInterface", "DataInterpolations", "DataStructures", "Dates", "Dictionaries", "DiffEqCallbacks", "EnumX", "FiniteDiff", "ForwardDiff", "Graphs", "HiGHS", "IterTools", "JuMP", "Legolas", "LinearSolve", "Logging", "LoggingExtras", "MetaGraphsNext", "OrdinaryDiffEq", "PreallocationTools", "SQLite", "SciMLBase", "SparseArrays", "StructArrays", "Tables", "TerminalLoggers", "TimeZones", "TimerOutputs", "TranscodingStreams"]
+deps = ["Accessors", "Arrow", "BasicModelInterface", "CodecZstd", "ComponentArrays", "Configurations", "DBInterface", "DataInterpolations", "DataStructures", "Dates", "Dictionaries", "DiffEqCallbacks", "EnumX", "FiniteDiff", "ForwardDiff", "Graphs", "HiGHS", "IterTools", "JuMP", "Legolas", "LinearSolve", "Logging", "LoggingExtras", "MetaGraphsNext", "OrdinaryDiffEq", "PreallocationTools", "SQLite", "SciMLBase", "SparseArrays", "StructArrays", "Tables", "TerminalLoggers", "TimerOutputs", "TranscodingStreams"]
path = "core"
uuid = "aac5e3d9-0b8f-4d4f-8241-b1a7a9632635"
-version = "2024.4.0"
+version = "2024.7.0"
[[deps.RuntimeGeneratedFunctions]]
deps = ["ExprTools", "SHA", "Serialization"]
-git-tree-sha1 = "6aacc5eefe8415f47b3e34214c1d79d2674a0ba2"
+git-tree-sha1 = "04c968137612c4a5629fa531334bb81ad5680f00"
uuid = "7e49a35a-f44a-4d26-94aa-eba1b4ca6b47"
-version = "0.5.12"
+version = "0.5.13"
[[deps.SHA]]
uuid = "ea8e919c-243c-51af-8825-aaa63cd721ce"
@@ -1283,10 +1302,10 @@ uuid = "76ed43ae-9a5d-5a62-8c75-30186b810ce8"
version = "3.45.0+0"
[[deps.SciMLBase]]
-deps = ["ADTypes", "ArrayInterface", "CommonSolve", "ConstructionBase", "Distributed", "DocStringExtensions", "EnumX", "FunctionWrappersWrappers", "IteratorInterfaceExtensions", "LinearAlgebra", "Logging", "Markdown", "PrecompileTools", "Preferences", "Printf", "RecipesBase", "RecursiveArrayTools", "Reexport", "RuntimeGeneratedFunctions", "SciMLOperators", "StaticArraysCore", "Statistics", "SymbolicIndexingInterface", "Tables"]
-git-tree-sha1 = "3a281a9fce9cd62b849d7f16e412933a5fe755cb"
+deps = ["ADTypes", "ArrayInterface", "CommonSolve", "ConstructionBase", "Distributed", "DocStringExtensions", "EnumX", "FunctionWrappersWrappers", "IteratorInterfaceExtensions", "LinearAlgebra", "Logging", "Markdown", "PrecompileTools", "Preferences", "Printf", "RecipesBase", "RecursiveArrayTools", "Reexport", "RuntimeGeneratedFunctions", "SciMLOperators", "SciMLStructures", "StaticArraysCore", "Statistics", "SymbolicIndexingInterface", "Tables"]
+git-tree-sha1 = "beb1f94b08c4976ed1db0ca01b9e6bac89706faf"
uuid = "0bca4576-84f4-4d90-8ffe-ffa030f20462"
-version = "2.29.0"
+version = "2.35.0"
[deps.SciMLBase.extensions]
SciMLBaseChainRulesCoreExt = "ChainRulesCore"
@@ -1313,6 +1332,11 @@ git-tree-sha1 = "10499f619ef6e890f3f4a38914481cc868689cd5"
uuid = "c0aeaf25-5076-4817-a8d5-81caf7dfa961"
version = "0.3.8"
+[[deps.SciMLStructures]]
+git-tree-sha1 = "5833c10ce83d690c124beedfe5f621b50b02ba4d"
+uuid = "53ae85a6-f571-4167-b2af-e1d143709226"
+version = "1.1.0"
+
[[deps.Scratch]]
deps = ["Dates"]
git-tree-sha1 = "3bac05bc7e74a75fd9cba4295cde4045d9fe2386"
@@ -1339,20 +1363,26 @@ deps = ["Distributed", "Mmap", "Random", "Serialization"]
uuid = "1a1011a3-84de-559e-8e89-a11a2f7dc383"
[[deps.SimpleNonlinearSolve]]
-deps = ["ADTypes", "ArrayInterface", "ConcreteStructs", "DiffEqBase", "FastClosures", "FiniteDiff", "ForwardDiff", "LinearAlgebra", "MaybeInplace", "PrecompileTools", "Reexport", "SciMLBase", "StaticArraysCore"]
-git-tree-sha1 = "873a1bf90744acfa615e45cd5dddfd0ee89a094f"
+deps = ["ADTypes", "ArrayInterface", "ConcreteStructs", "DiffEqBase", "DiffResults", "FastClosures", "FiniteDiff", "ForwardDiff", "LinearAlgebra", "MaybeInplace", "PrecompileTools", "Reexport", "SciMLBase", "StaticArraysCore"]
+git-tree-sha1 = "d4c17fc60bf5f8f2be02777c4836878f27ac7b9b"
uuid = "727e6d20-b764-4bd8-a329-72de5adea6c7"
-version = "1.5.0"
+version = "1.7.0"
[deps.SimpleNonlinearSolve.extensions]
SimpleNonlinearSolveChainRulesCoreExt = "ChainRulesCore"
SimpleNonlinearSolvePolyesterForwardDiffExt = "PolyesterForwardDiff"
+ SimpleNonlinearSolveReverseDiffExt = "ReverseDiff"
SimpleNonlinearSolveStaticArraysExt = "StaticArrays"
+ SimpleNonlinearSolveTrackerExt = "Tracker"
+ SimpleNonlinearSolveZygoteExt = "Zygote"
[deps.SimpleNonlinearSolve.weakdeps]
ChainRulesCore = "d360d2e6-b24c-11e9-a2a3-2a2ae2dbcce4"
PolyesterForwardDiff = "98d1487c-24ca-40b6-b7ab-df2af84e126b"
+ ReverseDiff = "37e2e3b7-166d-5795-8a7a-e32c996b4267"
StaticArrays = "90137ffa-7385-5640-81b9-e52037218182"
+ Tracker = "9f7883ad-71c0-57eb-9f7f-b5c9e6d3789c"
+ Zygote = "e88e6eb3-aa80-5325-afca-941959d7151f"
[[deps.SimpleTraits]]
deps = ["InteractiveUtils", "MacroTools"]
@@ -1387,9 +1417,9 @@ version = "1.10.0"
[[deps.SparseDiffTools]]
deps = ["ADTypes", "Adapt", "ArrayInterface", "Compat", "DataStructures", "FiniteDiff", "ForwardDiff", "Graphs", "LinearAlgebra", "PackageExtensionCompat", "Random", "Reexport", "SciMLOperators", "Setfield", "SparseArrays", "StaticArrayInterface", "StaticArrays", "Tricks", "UnPack", "VertexSafeGraphs"]
-git-tree-sha1 = "a616ac46c38da60ac05cecf52064d44732edd05e"
+git-tree-sha1 = "cce98ad7c896e52bb0eded174f02fc2a29c38477"
uuid = "47a9eef4-7e08-11e9-0b38-333d64bd3804"
-version = "2.17.0"
+version = "2.18.0"
[deps.SparseDiffTools.extensions]
SparseDiffToolsEnzymeExt = "Enzyme"
@@ -1460,10 +1490,10 @@ uuid = "10745b16-79ce-11e8-11f9-7d13ad32a3b2"
version = "1.10.0"
[[deps.StrideArraysCore]]
-deps = ["ArrayInterface", "CloseOpenIntervals", "IfElse", "LayoutPointers", "ManualMemory", "SIMDTypes", "Static", "StaticArrayInterface", "ThreadingUtilities"]
-git-tree-sha1 = "d6415f66f3d89c615929af907fdc6a3e17af0d8c"
+deps = ["ArrayInterface", "CloseOpenIntervals", "IfElse", "LayoutPointers", "LinearAlgebra", "ManualMemory", "SIMDTypes", "Static", "StaticArrayInterface", "ThreadingUtilities"]
+git-tree-sha1 = "25349bf8f63aa36acbff5e3550a86e9f5b0ef682"
uuid = "7792a7ef-975c-4747-a70f-980b88e8d1da"
-version = "0.5.2"
+version = "0.5.6"
[[deps.StringManipulation]]
deps = ["PrecompileTools"]
@@ -1500,9 +1530,10 @@ uuid = "bea87d4a-7f5b-5778-9afe-8cc45184846c"
version = "7.2.1+1"
[[deps.SymbolicIndexingInterface]]
-git-tree-sha1 = "251bb311585143931a306175c3b7ced220300578"
+deps = ["Accessors", "ArrayInterface", "MacroTools", "RuntimeGeneratedFunctions", "StaticArraysCore"]
+git-tree-sha1 = "7a7be02e16d11c17e2407bab80c2dd1410f774cb"
uuid = "2efcf032-c050-4f8e-a9bb-153293bab1f5"
-version = "0.3.8"
+version = "0.3.17"
[[deps.TOML]]
deps = ["Dates"]
@@ -1511,9 +1542,9 @@ version = "1.0.3"
[[deps.TZJData]]
deps = ["Artifacts"]
-git-tree-sha1 = "b69f8338df046774bd975b13be9d297eca5efacb"
+git-tree-sha1 = "1607ad46cf8d642aa779a1d45af1c8620dbf6915"
uuid = "dc5dba14-91b3-4cab-a142-028a31da12f7"
-version = "1.1.0+2023d"
+version = "1.2.0+2024a"
[[deps.TableTraits]]
deps = ["IteratorInterfaceExtensions"]
@@ -1555,12 +1586,10 @@ uuid = "8290d209-cae3-49c0-8002-c8c24d57dab5"
version = "0.5.2"
[[deps.TimeZones]]
-deps = ["Artifacts", "Dates", "Downloads", "InlineStrings", "Mocking", "Printf", "Scratch", "TZJData", "Unicode", "p7zip_jll"]
-git-tree-sha1 = "021f851fb28228de4df641cd128f1ad702cd24df"
-repo-rev = "cldr-ribasim"
-repo-url = "https://github.com/visr/TimeZones.jl"
+deps = ["Dates", "Downloads", "InlineStrings", "Mocking", "Printf", "Scratch", "TZJData", "Unicode", "p7zip_jll"]
+git-tree-sha1 = "96793c9316d6c9f9be4641f2e5b1319a205e6f27"
uuid = "f269a46b-ccf7-5d73-abea-4c690281aa53"
-version = "1.14.0"
+version = "1.15.0"
weakdeps = ["RecipesBase"]
[deps.TimeZones.extensions]
@@ -1573,9 +1602,9 @@ uuid = "a759f4b9-e2f1-59dc-863e-4aeb61b1ea8f"
version = "0.5.23"
[[deps.TranscodingStreams]]
-git-tree-sha1 = "3caa21522e7efac1ba21834a03734c57b4611c7e"
+git-tree-sha1 = "71509f04d045ec714c4748c785a59045c3736349"
uuid = "3bb67fe8-82b1-5028-8e26-92a6c54297fa"
-version = "0.10.4"
+version = "0.10.7"
weakdeps = ["Random", "Test"]
[deps.TranscodingStreams.extensions]
@@ -1583,9 +1612,9 @@ weakdeps = ["Random", "Test"]
[[deps.TriangularSolve]]
deps = ["CloseOpenIntervals", "IfElse", "LayoutPointers", "LinearAlgebra", "LoopVectorization", "Polyester", "Static", "VectorizationBase"]
-git-tree-sha1 = "fadebab77bf3ae041f77346dd1c290173da5a443"
+git-tree-sha1 = "66c68a20907800c0b7c04ff8a6164115e8747de2"
uuid = "d5829a12-d9aa-46ab-831f-fb7c9ab06edf"
-version = "0.1.20"
+version = "0.2.0"
[[deps.Tricks]]
git-tree-sha1 = "eae1bb484cd63b36999ee58be2de6c178105112f"
@@ -1612,9 +1641,9 @@ uuid = "4ec0a83e-493e-50e2-b9ac-8f72acf5a8f5"
[[deps.VectorizationBase]]
deps = ["ArrayInterface", "CPUSummary", "HostCPUFeatures", "IfElse", "LayoutPointers", "Libdl", "LinearAlgebra", "SIMDTypes", "Static", "StaticArrayInterface"]
-git-tree-sha1 = "7209df901e6ed7489fe9b7aa3e46fb788e15db85"
+git-tree-sha1 = "6129a4faf6242e7c3581116fbe3270f3ab17c90d"
uuid = "3d5dd08c-fd9d-11e8-17fa-ed2836048c2f"
-version = "0.21.65"
+version = "0.21.67"
[[deps.VersionParsing]]
git-tree-sha1 = "58d6e80b4ee071f5efd07fda82cb9fbe17200868"
@@ -1652,9 +1681,9 @@ version = "1.2.13+1"
[[deps.Zstd_jll]]
deps = ["Artifacts", "JLLWrappers", "Libdl"]
-git-tree-sha1 = "49ce682769cd5de6c72dcf1b94ed7790cd08974c"
+git-tree-sha1 = "e678132f07ddb5bfa46857f0d7620fb9be675d3b"
uuid = "3161d3a3-bdf6-5164-811a-617609db77b4"
-version = "1.5.5+0"
+version = "1.5.6+0"
[[deps.libblastrampoline_jll]]
deps = ["Artifacts", "Libdl"]
@@ -1672,6 +1701,12 @@ deps = ["Artifacts", "Libdl"]
uuid = "8e850ede-7688-5339-a07c-302acd2aaf8d"
version = "1.52.0+1"
+[[deps.oneTBB_jll]]
+deps = ["Artifacts", "JLLWrappers", "Libdl"]
+git-tree-sha1 = "7d0ea0f4895ef2f5cb83645fa689e52cb55cf493"
+uuid = "1317d2d5-d96f-522e-a858-c73665f53c3e"
+version = "2021.12.0+0"
+
[[deps.p7zip_jll]]
deps = ["Artifacts", "Libdl"]
uuid = "3f19e933-33d8-53b3-aaab-bd5110c3b7a0"
diff --git a/Project.toml b/Project.toml
index 3919b75a2..3b2e47a5b 100644
--- a/Project.toml
+++ b/Project.toml
@@ -53,9 +53,5 @@ TOML = "fa267f1f-6049-4f14-aa54-33bafae1ed76"
Tables = "bd369af6-aec1-5ad0-b16a-f7cc5008161c"
TerminalLoggers = "5d786b92-1e48-4d6f-9151-6b4477ca9bed"
TestEnv = "1e6cf692-eddd-4d53-88a5-2d735e33781b"
-TimeZones = "f269a46b-ccf7-5d73-abea-4c690281aa53"
TimerOutputs = "a759f4b9-e2f1-59dc-863e-4aeb61b1ea8f"
TranscodingStreams = "3bb67fe8-82b1-5028-8e26-92a6c54297fa"
-
-[compat]
-OteraEngine = "0.4"
diff --git a/README.md b/README.md
index dd5894f1a..8bf297918 100644
--- a/README.md
+++ b/README.md
@@ -10,11 +10,10 @@
Ribasim is a water resources model, designed to be the replacement of the regional surface
water modules Mozart and SIMRES in the Netherlands Hydrological Instrument (NHI). Ribasim is
a work in progress, it is a prototype that demonstrates all essential functionalities.
-Further development of the prototype in a software release is planned in 2022 and 2023.
Ribasim is written in the [Julia programming language](https://julialang.org/) and is built
on top of the [SciML: Open Source Software for Scientific Machine Learning](https://sciml.ai/)
-libraries, notably [ModelingToolkit.jl](https://mtk.sciml.ai/stable/).
+libraries.
# Download
@@ -25,12 +24,6 @@ For most users the [latest release](https://github.com/Deltares/Ribasim/releases
- QGIS plugin: [ribasim_qgis.zip](https://github.com/Deltares/Ribasim/releases/latest/download/ribasim_qgis.zip).
- Generated testmodels: [generated_testmodels.zip](https://github.com/Deltares/Ribasim/releases/latest/download/generated_testmodels.zip)
-The nightly builds contain the latest developments and can be found below. It is important to either use the release or nightly for all components.
-
-- Ribasim executable: [ribasim_cli.zip](https://ribasim.s3.eu-west-3.amazonaws.com/teamcity/Ribasim_Ribasim/BuildRibasimCliWindows/latest/ribasim_cli.zip).
-- QGIS plugin: [ribasim_qgis.zip](https://ribasim.s3.eu-west-3.amazonaws.com/teamcity/Ribasim_Ribasim/BuildRibasimCliWindows/latest/ribasim_qgis.zip).
-
-Currently only Windows builds for `ribasim_cli.zip` are available.
![Timeseries of
results](https://user-images.githubusercontent.com/4471859/179259333-070dfe18-8f43-4ac4-bb38-013b252e2e4b.png)
diff --git a/build/README.md b/build/README.md
index 941fb0cbb..dfcf79605 100644
--- a/build/README.md
+++ b/build/README.md
@@ -1,18 +1,6 @@
# Create Binaries
-Build the app with:
-
-```sh
-pixi run build-ribasim-cli
-```
-
-Build the shared library with:
-
-```sh
-pixi run build-libribasim
-```
-
-Build both with:
+Build the app and shared library with:
```sh
pixi run build
diff --git a/build/build.jl b/build/build.jl
index f19181825..d22918d66 100644
--- a/build/build.jl
+++ b/build/build.jl
@@ -3,25 +3,145 @@ using PackageCompiler
using TOML
using LibGit2
-include("src/add_metadata.jl")
-include("src/create_app.jl")
-include("src/create_lib.jl")
-
"""
-Build the Ribasim CLI, libribasim, or both, using PackageCompiler.
-Run from the command line with:
+# Ribasim CLI
+
+In order to find out about it's usage call `ribasim --help`
+
+# Libribasim
+
+Libribasim is a shared library that exposes Ribasim functionality to external (non-Julian)
+programs. It can be compiled using [PackageCompiler's
+create_lib](https://julialang.github.io/PackageCompiler.jl/stable/libs.html), which is set
+up in this directory. The C API that is offered to control Ribasim is the C API of the
+[Basic Model Interface](https://bmi.readthedocs.io/en/latest/), also known as BMI.
+
+Not all BMI functions are implemented yet, this has been set up as a proof of concept to
+demonstrate that we can use other software such as
+[`imod_coupler`](https://github.com/Deltares/imod_coupler) to control Ribasim and couple it to
+other models.
+
+Here is an example of using libribasim from Python:
+
+```python
+In [1]: from ctypes import CDLL, c_int, c_char_p, create_string_buffer, byref
- julia --project build.jl --app --lib
+In [2]: c_dll = CDLL("libribasim", winmode=0x08) # winmode for Windows
+
+In [3]: argument = create_string_buffer(0)
+ ...: c_dll.init_julia(c_int(0), byref(argument))
+Out[3]: 1
+
+In [4]: config_path = "ribasim.toml"
+
+In [5]: c_dll.initialize(c_char_p(config_path.encode()))
+Out[5]: 0
+
+In [6]: c_dll.update()
+Out[6]: 0
+```
"""
-function main(ARGS)
+function main()
+ project_dir = "../core"
+ license_file = "../LICENSE"
+ output_dir = "ribasim"
+ git_repo = ".."
+
# change directory to this script's location
cd(@__DIR__)
- if "--app" in ARGS
- build_app()
- elseif "--lib" in ARGS
- build_lib()
+ create_library(
+ project_dir,
+ output_dir;
+ lib_name = "libribasim",
+ precompile_execution_file = "precompile.jl",
+ include_lazy_artifacts = false,
+ include_transitive_dependencies = false,
+ include_preferences = true,
+ force = true,
+ )
+
+ readme = @doc(build_app)
+ add_metadata(project_dir, license_file, output_dir, git_repo, readme)
+ run(Cmd(`cargo build --release`; dir = "cli"))
+ ribasim = Sys.iswindows() ? "ribasim.exe" : "ribasim"
+ cp("cli/target/release/$ribasim", "ribasim/$ribasim"; force = true)
+end
+
+"""
+Add the following metadata files to the newly created build:
+
+- Build.toml
+- Project.toml
+- Manifest.toml
+- README.md
+- LICENSE
+"""
+function add_metadata(project_dir, license_file, output_dir, git_repo, readme)
+ # save some environment variables in a Build.toml file for debugging purposes
+ vars = ["BUILD_NUMBER", "BUILD_VCS_NUMBER"]
+ dict = Dict(var => ENV[var] for var in vars if haskey(ENV, var))
+ open(normpath(output_dir, "share/julia/Build.toml"), "w") do io
+ TOML.print(io, dict)
+ end
+
+ # a stripped Project.toml is already added in the same location by PackageCompiler
+ # however it is better to copy the original, since it includes the version and compat
+ cp(
+ normpath(project_dir, "Project.toml"),
+ normpath(output_dir, "share/julia/Project.toml");
+ force = true,
+ )
+ # the Manifest.toml always gives the exact version of Ribasim that was built
+ cp(
+ normpath(git_repo, "Manifest.toml"),
+ normpath(output_dir, "share/julia/Manifest.toml");
+ force = true,
+ )
+
+ # put the LICENSE in the top level directory
+ cp(license_file, normpath(output_dir, "LICENSE"); force = true)
+ open(normpath(output_dir, "README.md"), "w") do io
+ println(io, readme)
+
+ # since the exact Ribasim version may be hard to find in the Manifest.toml file
+ # we can also extract that information, and add it to the README.md
+ manifest = TOML.parsefile(normpath(git_repo, "Manifest.toml"))
+ if !haskey(manifest, "manifest_format")
+ error("Manifest.toml is in the old format, run Pkg.upgrade_manifest()")
+ end
+ julia_version = manifest["julia_version"]
+ ribasim_entry = only(manifest["deps"]["Ribasim"])
+ version = ribasim_entry["version"]
+ repo = GitRepo(git_repo)
+ branch = LibGit2.head(repo)
+ commit = LibGit2.peel(LibGit2.GitCommit, branch)
+ short_name = LibGit2.shortname(branch)
+ short_commit = string(LibGit2.GitShortHash(LibGit2.GitHash(commit), 10))
+
+ # get the release from the current tag, like `git describe --tags`
+ # if it is a commit after a tag, it will be -g
+ options =
+ LibGit2.DescribeOptions(; describe_strategy = LibGit2.Consts.DESCRIBE_TAGS)
+ result = LibGit2.GitDescribeResult(repo; options)
+ tag = LibGit2.format(result)
+
+ url = "https://github.com/Deltares/Ribasim/tree"
+ version_info = """
+
+ ## Version
+
+ This build uses the Ribasim version mentioned below.
+
+ ```toml
+ release = "$tag"
+ commit = "$url/$short_commit"
+ branch = "$url/$short_name"
+ julia_version = "$julia_version"
+ core_version = "$version"
+ ```"""
+ println(io, version_info)
end
end
-main(ARGS)
+main()
diff --git a/build/cli/Cargo.lock b/build/cli/Cargo.lock
new file mode 100644
index 000000000..0fe889c8f
--- /dev/null
+++ b/build/cli/Cargo.lock
@@ -0,0 +1,254 @@
+# This file is automatically @generated by Cargo.
+# It is not intended for manual editing.
+version = 3
+
+[[package]]
+name = "anstream"
+version = "0.6.13"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d96bd03f33fe50a863e394ee9718a706f988b9079b20c3784fb726e7678b62fb"
+dependencies = [
+ "anstyle",
+ "anstyle-parse",
+ "anstyle-query",
+ "anstyle-wincon",
+ "colorchoice",
+ "utf8parse",
+]
+
+[[package]]
+name = "anstyle"
+version = "1.0.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8901269c6307e8d93993578286ac0edf7f195079ffff5ebdeea6a59ffb7e36bc"
+
+[[package]]
+name = "anstyle-parse"
+version = "0.2.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c75ac65da39e5fe5ab759307499ddad880d724eed2f6ce5b5e8a26f4f387928c"
+dependencies = [
+ "utf8parse",
+]
+
+[[package]]
+name = "anstyle-query"
+version = "1.0.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e28923312444cdd728e4738b3f9c9cac739500909bb3d3c94b43551b16517648"
+dependencies = [
+ "windows-sys",
+]
+
+[[package]]
+name = "anstyle-wincon"
+version = "3.0.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1cd54b81ec8d6180e24654d0b371ad22fc3dd083b6ff8ba325b72e00c87660a7"
+dependencies = [
+ "anstyle",
+ "windows-sys",
+]
+
+[[package]]
+name = "cfg-if"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
+
+[[package]]
+name = "clap"
+version = "4.5.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "90bc066a67923782aa8515dbaea16946c5bcc5addbd668bb80af688e53e548a0"
+dependencies = [
+ "clap_builder",
+ "clap_derive",
+]
+
+[[package]]
+name = "clap_builder"
+version = "4.5.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ae129e2e766ae0ec03484e609954119f123cc1fe650337e155d03b022f24f7b4"
+dependencies = [
+ "anstream",
+ "anstyle",
+ "clap_lex",
+ "strsim",
+]
+
+[[package]]
+name = "clap_derive"
+version = "4.5.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "528131438037fd55894f62d6e9f068b8f45ac57ffa77517819645d10aed04f64"
+dependencies = [
+ "heck",
+ "proc-macro2",
+ "quote",
+ "syn",
+]
+
+[[package]]
+name = "clap_lex"
+version = "0.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "98cc8fbded0c607b7ba9dd60cd98df59af97e84d24e49c8557331cfc26d301ce"
+
+[[package]]
+name = "colorchoice"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7"
+
+[[package]]
+name = "heck"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea"
+
+[[package]]
+name = "libc"
+version = "0.2.153"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd"
+
+[[package]]
+name = "libloading"
+version = "0.8.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0c2a198fb6b0eada2a8df47933734e6d35d350665a33a3593d7164fa52c75c19"
+dependencies = [
+ "cfg-if",
+ "windows-targets",
+]
+
+[[package]]
+name = "proc-macro2"
+version = "1.0.81"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3d1597b0c024618f09a9c3b8655b7e430397a36d23fdafec26d6965e9eec3eba"
+dependencies = [
+ "unicode-ident",
+]
+
+[[package]]
+name = "quote"
+version = "1.0.36"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7"
+dependencies = [
+ "proc-macro2",
+]
+
+[[package]]
+name = "ribasim"
+version = "2024.7.0"
+dependencies = [
+ "clap",
+ "libc",
+ "libloading",
+]
+
+[[package]]
+name = "strsim"
+version = "0.11.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f"
+
+[[package]]
+name = "syn"
+version = "2.0.60"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "909518bc7b1c9b779f1bbf07f2929d35af9f0f37e47c6e9ef7f9dddc1e1821f3"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "unicode-ident",
+]
+
+[[package]]
+name = "unicode-ident"
+version = "1.0.12"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b"
+
+[[package]]
+name = "utf8parse"
+version = "0.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a"
+
+[[package]]
+name = "windows-sys"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
+dependencies = [
+ "windows-targets",
+]
+
+[[package]]
+name = "windows-targets"
+version = "0.52.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb"
+dependencies = [
+ "windows_aarch64_gnullvm",
+ "windows_aarch64_msvc",
+ "windows_i686_gnu",
+ "windows_i686_gnullvm",
+ "windows_i686_msvc",
+ "windows_x86_64_gnu",
+ "windows_x86_64_gnullvm",
+ "windows_x86_64_msvc",
+]
+
+[[package]]
+name = "windows_aarch64_gnullvm"
+version = "0.52.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263"
+
+[[package]]
+name = "windows_aarch64_msvc"
+version = "0.52.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6"
+
+[[package]]
+name = "windows_i686_gnu"
+version = "0.52.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670"
+
+[[package]]
+name = "windows_i686_gnullvm"
+version = "0.52.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9"
+
+[[package]]
+name = "windows_i686_msvc"
+version = "0.52.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf"
+
+[[package]]
+name = "windows_x86_64_gnu"
+version = "0.52.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9"
+
+[[package]]
+name = "windows_x86_64_gnullvm"
+version = "0.52.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596"
+
+[[package]]
+name = "windows_x86_64_msvc"
+version = "0.52.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0"
diff --git a/build/cli/Cargo.toml b/build/cli/Cargo.toml
new file mode 100644
index 000000000..82b19f5ba
--- /dev/null
+++ b/build/cli/Cargo.toml
@@ -0,0 +1,11 @@
+[package]
+name = "ribasim"
+version = "2024.7.0"
+edition = "2021"
+
+# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
+
+[dependencies]
+clap = { version = "4.5.4", features = ["derive"] }
+libc = "0.2.153"
+libloading = "0.8.3"
diff --git a/build/cli/src/main.rs b/build/cli/src/main.rs
new file mode 100644
index 000000000..3aa394c3f
--- /dev/null
+++ b/build/cli/src/main.rs
@@ -0,0 +1,67 @@
+use std::{
+ env::{self, consts::OS},
+ ffi::CString,
+ path::PathBuf,
+};
+
+use clap::Parser;
+use libloading::{Library, Symbol};
+use std::process::ExitCode;
+
+#[derive(Parser)]
+#[command(version)]
+struct Cli {
+ /// Path to the TOML file
+ toml_path: PathBuf,
+}
+
+fn main() -> ExitCode {
+ // Get the path to the directory containing the current executable
+ let exe_dir = env::current_exe().unwrap().parent().unwrap().to_owned();
+
+ // Set the appropriate environment variable for the current platform
+ if OS == "windows" {
+ env::set_var(
+ "PATH",
+ format!(
+ "{};{}",
+ exe_dir.join("bin").display(),
+ env::var("PATH").unwrap_or_default()
+ ),
+ );
+ }
+
+ // TODO: Do we need to set LD_LIBRARY_PATH on linux?
+
+ // Parse command line arguments
+ let cli = Cli::parse();
+
+ if !cli.toml_path.is_file() {
+ eprintln!("File not found {:?}", cli.toml_path);
+ return ExitCode::FAILURE;
+ }
+
+ let shared_lib_path = match OS {
+ "windows" => exe_dir.join("bin/libribasim.dll"),
+ "linux" => exe_dir.join("lib/libribasim.so"),
+ _ => unimplemented!(),
+ };
+ unsafe {
+ // Load the library
+ let lib = Library::new(shared_lib_path).unwrap();
+
+ // Init Julia
+ let init_julia: Symbol i32> =
+ lib.get(b"init_julia").unwrap();
+ init_julia(0, CString::default().as_ptr());
+
+ // Execute
+ let execute: Symbol i32> =
+ lib.get(b"execute").unwrap();
+ let toml_path_c = CString::new(cli.toml_path.to_str().unwrap()).unwrap();
+ let exit_code = execute(toml_path_c.as_ptr());
+
+ // Return with same exit code as `execute` did
+ ExitCode::from(exit_code as u8)
+ }
+}
diff --git a/build/src/add_metadata.jl b/build/src/add_metadata.jl
deleted file mode 100644
index 45e2ed836..000000000
--- a/build/src/add_metadata.jl
+++ /dev/null
@@ -1,75 +0,0 @@
-"""
-Add the following metadata files to the newly created build:
-
-- Build.toml
-- Project.toml
-- Manifest.toml
-- README.md
-- LICENSE
-"""
-function add_metadata(project_dir, license_file, output_dir, git_repo, readme)
- # save some environment variables in a Build.toml file for debugging purposes
- vars = ["BUILD_NUMBER", "BUILD_VCS_NUMBER"]
- dict = Dict(var => ENV[var] for var in vars if haskey(ENV, var))
- open(normpath(output_dir, "share/julia/Build.toml"), "w") do io
- TOML.print(io, dict)
- end
-
- # a stripped Project.toml is already added in the same location by PackageCompiler
- # however it is better to copy the original, since it includes the version and compat
- cp(
- normpath(project_dir, "Project.toml"),
- normpath(output_dir, "share/julia/Project.toml");
- force = true,
- )
- # the Manifest.toml always gives the exact version of Ribasim that was built
- cp(
- normpath(git_repo, "Manifest.toml"),
- normpath(output_dir, "share/julia/Manifest.toml");
- force = true,
- )
-
- # put the LICENSE in the top level directory
- cp(license_file, normpath(output_dir, "LICENSE"); force = true)
- open(normpath(output_dir, "README.md"), "w") do io
- println(io, readme)
-
- # since the exact Ribasim version may be hard to find in the Manifest.toml file
- # we can also extract that information, and add it to the README.md
- manifest = TOML.parsefile(normpath(git_repo, "Manifest.toml"))
- if !haskey(manifest, "manifest_format")
- error("Manifest.toml is in the old format, run Pkg.upgrade_manifest()")
- end
- julia_version = manifest["julia_version"]
- ribasim_entry = only(manifest["deps"]["Ribasim"])
- version = ribasim_entry["version"]
- repo = GitRepo(git_repo)
- branch = LibGit2.head(repo)
- commit = LibGit2.peel(LibGit2.GitCommit, branch)
- short_name = LibGit2.shortname(branch)
- short_commit = string(LibGit2.GitShortHash(LibGit2.GitHash(commit), 10))
-
- # get the release from the current tag, like `git describe --tags`
- # if it is a commit after a tag, it will be -g
- options =
- LibGit2.DescribeOptions(; describe_strategy = LibGit2.Consts.DESCRIBE_TAGS)
- result = LibGit2.GitDescribeResult(repo; options)
- tag = LibGit2.format(result)
-
- url = "https://github.com/Deltares/Ribasim/tree"
- version_info = """
-
- ## Version
-
- This build uses the Ribasim version mentioned below.
-
- ```toml
- release = "$tag"
- commit = "$url/$short_commit"
- branch = "$url/$short_name"
- julia_version = "$julia_version"
- core_version = "$version"
- ```"""
- println(io, version_info)
- end
-end
diff --git a/build/src/create_app.jl b/build/src/create_app.jl
deleted file mode 100644
index 2f49c394f..000000000
--- a/build/src/create_app.jl
+++ /dev/null
@@ -1,59 +0,0 @@
-"""
-# Ribasim CLI
-
-This is a [Julia](https://julialang.org/) project that uses the
-[Ribasim](https://github.com/Deltares/Ribasim) Julia package, puts a simple command line
-interface (cli) on top, and packages this into a standalone application using
-[PackageCompiler.jl](https://github.com/JuliaLang/PackageCompiler.jl).
-
-This enables using Ribasim without having to install Julia, and thus makes it more
-convenient to use in certain settings where installation must be simple and no interactive
-Julia session is needed.
-
-If you have installed Julia and Ribasim, a simulation can also be started from the command
-line as follows:
-
-```
-julia --eval 'using Ribasim; Ribasim.main("path/to/model/ribasim.toml")'
-```
-
-With a Ribasim CLI build this becomes:
-
-```
-ribasim path/to/model/ribasim.toml
-```
-"""
-function build_app()
- project_dir = "../core"
- license_file = "../LICENSE"
- output_dir = "ribasim_cli"
- git_repo = ".."
-
- create_app(
- project_dir,
- output_dir;
- # map from binary name to julia function name
- executables = ["ribasim" => "main"],
- precompile_execution_file = "precompile.jl",
- include_lazy_artifacts = false,
- include_transitive_dependencies = false,
- include_preferences = true,
- force = true,
- )
-
- readme = @doc(build_app)
- add_metadata(project_dir, license_file, output_dir, git_repo, readme)
-
- # On Windows, write ribasim.cmd in the output_dir, that starts ribasim.exe.
- # Since the bin dir contains a julia.exe and many DLLs that you may not want in your path,
- # with this script you can put output_dir in your path instead.
- if Sys.iswindows()
- cmd = raw"""
- @echo off
- "%~dp0bin\ribasim.exe" %*
- """
- open(normpath(output_dir, "ribasim.cmd"); write = true) do io
- print(io, cmd)
- end
- end
-end
diff --git a/build/src/create_lib.jl b/build/src/create_lib.jl
deleted file mode 100644
index 87381dded..000000000
--- a/build/src/create_lib.jl
+++ /dev/null
@@ -1,54 +0,0 @@
-"""
-# Libribasim
-
-Libribasim is a shared library that exposes Ribasim functionality to external (non-Julian)
-programs. It can be compiled using [PackageCompiler's
-create_lib](https://julialang.github.io/PackageCompiler.jl/stable/libs.html), which is set
-up in this directory. The C API that is offered to control Ribasim is the C API of the
-[Basic Model Interface](https://bmi.readthedocs.io/en/latest/), also known as BMI.
-
-Not all BMI functions are implemented yet, this has been set up as a proof of concept to
-demonstrate that we can use other software such as
-[`imod_coupler`](https://github.com/Deltares/imod_coupler) to control Ribasim and couple it to
-other models.
-
-Here is an example of using libribasim from Python:
-
-```python
-In [1]: from ctypes import CDLL, c_int, c_char_p, create_string_buffer, byref
-
-In [2]: c_dll = CDLL("libribasim", winmode=0x08) # winmode for Windows
-
-In [3]: argument = create_string_buffer(0)
- ...: c_dll.init_julia(c_int(0), byref(argument))
-Out[3]: 1
-
-In [4]: config_path = "ribasim.toml"
-
-In [5]: c_dll.initialize(c_char_p(config_path.encode()))
-Out[5]: 0
-
-In [6]: c_dll.update()
-Out[6]: 0
-```
-"""
-function build_lib()
- project_dir = "../core"
- license_file = "../LICENSE"
- output_dir = "libribasim"
- git_repo = ".."
-
- create_library(
- project_dir,
- output_dir;
- lib_name = "libribasim",
- precompile_execution_file = "precompile.jl",
- include_lazy_artifacts = false,
- include_transitive_dependencies = false,
- include_preferences = true,
- force = true,
- )
-
- readme = @doc(build_app)
- add_metadata(project_dir, license_file, output_dir, git_repo, readme)
-end
diff --git a/build/tests/test_models.py b/build/tests/test_cli.py
similarity index 52%
rename from build/tests/test_models.py
rename to build/tests/test_cli.py
index f4d23bb41..06b1ce83f 100644
--- a/build/tests/test_models.py
+++ b/build/tests/test_cli.py
@@ -1,4 +1,3 @@
-import platform
import subprocess
from pathlib import Path
@@ -6,24 +5,38 @@
import ribasim
import ribasim_testmodels
+executable = Path(__file__).parents[1] / "ribasim" / "ribasim"
+
@pytest.mark.parametrize(
"model_constructor",
ribasim_testmodels.constructors.values(),
)
-def test_ribasim_cli(model_constructor, tmp_path):
+def test_models(model_constructor, tmp_path):
model = model_constructor()
assert isinstance(model, ribasim.Model)
model.write(tmp_path / "ribasim.toml")
- extension = ".exe" if platform.system() == "Windows" else ""
-
- executable = (
- Path(__file__).parents[1] / "ribasim_cli" / "bin" / f"ribasim{extension}"
- )
result = subprocess.run([executable, tmp_path / "ribasim.toml"])
if model_constructor.__name__.startswith("invalid_"):
assert result.returncode != 0
else:
assert result.returncode == 0
+
+
+def test_version():
+ result = subprocess.run(
+ [executable, "--version"], check=True, capture_output=True, text=True
+ )
+
+ assert ribasim.__version__ in result.stdout
+
+
+def test_help():
+ subprocess.run([executable, "--help"], check=True)
+
+
+def test_missing_toml():
+ result = subprocess.run([executable, "/there/is/no/toml"])
+ assert result.returncode != 0
diff --git a/core/Project.toml b/core/Project.toml
index b8c4ff255..4d7b647a2 100644
--- a/core/Project.toml
+++ b/core/Project.toml
@@ -2,7 +2,7 @@ name = "Ribasim"
uuid = "aac5e3d9-0b8f-4d4f-8241-b1a7a9632635"
authors = ["Deltares and contributors "]
manifest = "../Manifest.toml"
-version = "2024.4.0"
+version = "2024.7.0"
[deps]
Accessors = "7d9f7c33-5ae7-4f3b-8dc6-eff91059b697"
@@ -37,7 +37,6 @@ SparseArrays = "2f01184e-e22b-5df5-ae63-d93ebab69eaf"
StructArrays = "09ab397b-f2b6-538f-b94a-2f83cf4a842a"
Tables = "bd369af6-aec1-5ad0-b16a-f7cc5008161c"
TerminalLoggers = "5d786b92-1e48-4d6f-9151-6b4477ca9bed"
-TimeZones = "f269a46b-ccf7-5d73-abea-4c690281aa53"
TimerOutputs = "a759f4b9-e2f1-59dc-863e-4aeb61b1ea8f"
TranscodingStreams = "3bb67fe8-82b1-5028-8e26-92a6c54297fa"
@@ -56,7 +55,7 @@ DataInterpolations = "4.4"
DataStructures = "0.18"
Dates = "<0.0.1,1"
Dictionaries = "0.3.25, 0.4"
-DiffEqCallbacks = "2.29.1, 3"
+DiffEqCallbacks = "3.6"
Documenter = "0.27,1"
EnumX = "1.0"
FiniteDiff = "2.21"
@@ -82,7 +81,6 @@ TOML = "<0.0.1,1"
Tables = "1"
TerminalLoggers = "0.1.7"
Test = "<0.0.1,1"
-TimeZones = "=1.14.0, 1"
TimerOutputs = "0.5"
TranscodingStreams = "0.9,0.10"
julia = "1.10"
diff --git a/core/src/Ribasim.jl b/core/src/Ribasim.jl
index 6d6128bb8..f8d027f63 100644
--- a/core/src/Ribasim.jl
+++ b/core/src/Ribasim.jl
@@ -56,6 +56,7 @@ using SciMLBase:
solve!,
step!,
SciMLBase,
+ ReturnCode,
successful_retcode,
CallbackSet,
ODEFunction,
diff --git a/core/src/allocation_init.jl b/core/src/allocation_init.jl
index dd739c162..aadc2b51d 100644
--- a/core/src/allocation_init.jl
+++ b/core/src/allocation_init.jl
@@ -3,13 +3,17 @@ function find_subnetwork_connections!(p::Parameters)::Nothing
(; allocation, graph, allocation) = p
n_priorities = length(allocation.priorities)
(; subnetwork_demands, subnetwork_allocateds) = allocation
+ # Find edges where the source node has subnetwork id 1 and the
+ # destination node subnetwork id ≠1
for node_id in graph[].node_ids[1]
for outflow_id in outflow_ids(graph, node_id)
- if graph[outflow_id].allocation_network_id != 1
+ if (graph[outflow_id].subnetwork_id != 1)
main_network_source_edges =
- get_main_network_connections(p, graph[outflow_id].allocation_network_id)
+ get_main_network_connections(p, graph[outflow_id].subnetwork_id)
edge = (node_id, outflow_id)
push!(main_network_source_edges, edge)
+ # Allocate memory for the demands and priorities
+ # from the subnetwork via this edge
subnetwork_demands[edge] = zeros(n_priorities)
subnetwork_allocateds[edge] = zeros(n_priorities)
end
@@ -19,336 +23,107 @@ function find_subnetwork_connections!(p::Parameters)::Nothing
end
"""
-Find all nodes in the subnetwork which will be used in the allocation network.
-Some nodes are skipped to optimize allocation optimization.
+Get the fixed capacity of the edges in the subnetwork
"""
-function allocation_graph_used_nodes!(p::Parameters, allocation_network_id::Int32)::Nothing
- (; graph, basin, fractional_flow, allocation) = p
- (; main_network_connections) = allocation
-
- node_ids = graph[].node_ids[allocation_network_id]
- used_nodes = Set{NodeID}()
- for node_id in node_ids
- use_node = false
- has_fractional_flow_outneighbors =
- get_fractional_flow_connected_basins(node_id, basin, fractional_flow, graph)[3]
- if node_id.type in [NodeType.UserDemand, NodeType.Basin, NodeType.Terminal]
- use_node = true
- elseif has_fractional_flow_outneighbors
- use_node = true
- end
-
- if use_node
- push!(used_nodes, node_id)
- end
- end
-
- # Add nodes in the allocation network for nodes connected to the source edges
- # One of these nodes can be outside the subnetwork, as long as the edge
- # connects to the subnetwork
- edges_source = graph[].edges_source
- for edge_metadata in get(edges_source, allocation_network_id, Set{EdgeMetadata}())
- (; from_id, to_id) = edge_metadata
- push!(used_nodes, from_id)
- push!(used_nodes, to_id)
- end
-
- filter!(in(used_nodes), node_ids)
-
- # For the main network, include nodes that connect the main network to a subnetwork
- # (also includes nodes not in the main network in the input)
- if is_main_network(allocation_network_id)
- for connections_subnetwork in main_network_connections
- for connection in connections_subnetwork
- union!(node_ids, connection)
- end
- end
- end
- return nothing
-end
-
-"""
-Find out whether the given edge is a source for an allocation network.
-"""
-function is_allocation_source(graph::MetaGraph, id_src::NodeID, id_dst::NodeID)::Bool
- return haskey(graph, id_src, id_dst) &&
- graph[id_src, id_dst].allocation_network_id_source != 0
-end
-
-"""
-Add to the edge metadata that the given edge is used for allocation flow.
-If the edge does not exist, it is created.
-"""
-function indicate_allocation_flow!(
- graph::MetaGraph,
- node_ids::AbstractVector{NodeID},
-)::Nothing
- id_src = first(node_ids)
- id_dst = last(node_ids)
-
- if !haskey(graph, id_src, id_dst)
- edge_metadata = EdgeMetadata(0, EdgeType.none, 0, id_src, id_dst, true, node_ids)
- else
- edge_metadata = graph[id_src, id_dst]
- edge_metadata = @set edge_metadata.allocation_flow = true
- edge_metadata = @set edge_metadata.node_ids = node_ids
- end
- graph[id_src, id_dst] = edge_metadata
- return nothing
-end
-
-"""
-This loop finds allocation network edges in several ways:
-- Between allocation network nodes whose equivalent in the subnetwork are directly connected
-- Between allocation network nodes whose equivalent in the subnetwork are connected
- with one or more allocation network nodes in between
-"""
-function find_allocation_graph_edges!(
+function get_subnetwork_capacity(
p::Parameters,
- allocation_network_id::Int32,
-)::Tuple{Vector{Vector{NodeID}}, SparseMatrixCSC{Float64, Int}}
+ subnetwork_id::Int32,
+)::JuMP.Containers.SparseAxisArray{Float64, 2, Tuple{NodeID, NodeID}}
(; graph) = p
+ node_ids_subnetwork = graph[].node_ids[subnetwork_id]
- edges_composite = Vector{NodeID}[]
- capacity = spzeros(nv(graph), nv(graph))
-
- node_ids = graph[].node_ids[allocation_network_id]
- edge_ids = Set{Tuple{NodeID, NodeID}}()
- graph[].edge_ids[allocation_network_id] = edge_ids
-
- # Loop over all IDs in the model
- for node_id in labels(graph)
- inneighbor_ids = inflow_ids(graph, node_id)
- outneighbor_ids = outflow_ids(graph, node_id)
- neighbor_ids = inoutflow_ids(graph, node_id)
-
- # If the current node_id is in the current subnetwork
- if node_id in node_ids
- # Direct connections in the subnetwork between nodes that
- # are in the allocation network
- for inneighbor_id in inneighbor_ids
- if inneighbor_id in node_ids
- # The opposite of source edges must not be made
- if is_allocation_source(graph, node_id, inneighbor_id)
- continue
- end
- indicate_allocation_flow!(graph, [inneighbor_id, node_id])
- push!(edge_ids, (inneighbor_id, node_id))
- # These direct connections cannot have capacity constraints
- capacity[node_id, inneighbor_id] = Inf
- end
- end
- # Direct connections in the subnetwork between nodes that
- # are in the allocation network
- for outneighbor_id in outneighbor_ids
- if outneighbor_id in node_ids
- # The opposite of source edges must not be made
- if is_allocation_source(graph, outneighbor_id, node_id)
- continue
- end
- indicate_allocation_flow!(graph, [node_id, outneighbor_id])
- push!(edge_ids, (node_id, outneighbor_id))
- # if subnetwork_outneighbor_id in user_demand.node_id: Capacity depends on user demand at a given priority
- # else: These direct connections cannot have capacity constraints
- capacity[node_id, outneighbor_id] = Inf
- end
- end
-
- elseif graph[node_id].allocation_network_id == allocation_network_id
-
- # Try to find an existing allocation network composite edge to add the current subnetwork_node_id to
- found_edge = false
- for edge_composite in edges_composite
- if edge_composite[1] in neighbor_ids
- pushfirst!(edge_composite, node_id)
- found_edge = true
- break
- elseif edge_composite[end] in neighbor_ids
- push!(edge_composite, node_id)
- found_edge = true
- break
- end
- end
+ dict = Dict{Tuple{NodeID, NodeID}, Float64}()
+ capacity = JuMP.Containers.SparseAxisArray(dict)
- # Start a new allocation network composite edge if no existing edge to append to was found
- if !found_edge
- push!(edges_composite, [node_id])
- end
- end
- end
- return edges_composite, capacity
-end
-
-"""
-For the composite allocation network edges:
-- Find out whether they are connected to allocation network nodes on both ends
-- Compute their capacity
-- Find out their allowed flow direction(s)
-"""
-function process_allocation_graph_edges!(
- capacity::SparseMatrixCSC{Float64, Int},
- edges_composite::Vector{Vector{NodeID}},
- p::Parameters,
- allocation_network_id::Int32,
-)::SparseMatrixCSC{Float64, Int}
- (; graph) = p
- node_ids = graph[].node_ids[allocation_network_id]
- edge_ids = graph[].edge_ids[allocation_network_id]
-
- for edge_composite in edges_composite
- # Find allocation network node connected to this edge on the first end
- node_id_1 = nothing
- neighbors_side_1 = inoutflow_ids(graph, edge_composite[1])
- for neighbor_node_id in neighbors_side_1
- if neighbor_node_id in node_ids
- node_id_1 = neighbor_node_id
- pushfirst!(edge_composite, neighbor_node_id)
- break
- end
- end
-
- # No connection to an allocation node found on this side, so edge is discarded
- if isnothing(node_id_1)
+ for edge_metadata in values(graph.edge_data)
+ # Only flow edges are used for allocation
+ if edge_metadata.type != EdgeType.flow
continue
end
- # Find allocation network node connected to this edge on the second end
- node_id_2 = nothing
- neighbors_side_2 = inoutflow_ids(graph, edge_composite[end])
- for neighbor_node_id in neighbors_side_2
- if neighbor_node_id in node_ids
- node_id_2 = neighbor_node_id
- # Make sure this allocation network node is distinct from the other one
- if node_id_2 ≠node_id_1
- push!(edge_composite, neighbor_node_id)
- break
- end
- end
- end
-
- # No connection to allocation network node found on this side, so edge is discarded
- if isnothing(node_id_2)
- continue
- end
+ # If this edge is part of this subnetwork
+ # edges between the main network and a subnetwork are added in add_subnetwork_connections!
+ if edge_metadata.edge ⊆ node_ids_subnetwork
+ node_src = getfield(p, graph[edge_metadata.edge[1]].type)
+ node_dst = getfield(p, graph[edge_metadata.edge[2]].type)
- if node_id_1 == node_id_2
- continue
- end
+ capacity_edge = Inf
- # Find capacity of this composite allocation network edge
- positive_flow = true
- negative_flow = true
- edge_capacity = Inf
- # The start and end subnetwork nodes of the composite allocation network
- # edge are now nodes that have an equivalent in the allocation network,
- # these do not constrain the composite edge capacity
- for (node_id_1, node_id_2, node_id_3) in IterTools.partition(edge_composite, 3, 1)
- node = getfield(p, graph[node_id_2].type)
-
- # Find flow constraints
- if is_flow_constraining(node)
- problem_node_idx = Ribasim.findsorted(node.node_id, node_id_2)
- edge_capacity = min(edge_capacity, node.max_flow_rate[problem_node_idx])
+ # Find flow constraints for this edge
+ if is_flow_constraining(node_src)
+ node_src_idx = findsorted(node_src.node_id, edge_metadata.edge[1])
+ capacity_node_src = node_src.max_flow_rate[node_src_idx]
+ capacity_edge = min(capacity_edge, capacity_node_src)
end
-
- # Find flow direction constraints
- if is_flow_direction_constraining(node)
- inneighbor_node_id = inflow_id(graph, node_id_2)
-
- if inneighbor_node_id == node_id_1
- negative_flow = false
- elseif inneighbor_node_id == node_id_3
- positive_flow = false
- end
+ if is_flow_constraining(node_dst)
+ node_dst_idx = findsorted(node_dst.node_id, edge_metadata.edge[2])
+ capacity_node_dst = node_dst.max_flow_rate[node_dst_idx]
+ capacity_edge = min(capacity_edge, capacity_node_dst)
end
- end
- # Add composite allocation network edge(s)
- if positive_flow
- indicate_allocation_flow!(graph, edge_composite)
- capacity[node_id_1, node_id_2] = edge_capacity
- push!(edge_ids, (node_id_1, node_id_2))
- end
+ capacity[edge_metadata.edge] = capacity_edge
- if negative_flow
- indicate_allocation_flow!(graph, reverse(edge_composite))
- capacity[node_id_2, node_id_1] = edge_capacity
- push!(edge_ids, (node_id_2, node_id_1))
+ # If allowed by the nodes from this edge,
+ # allow allocation flow in opposite direction of the edge
+ if !(
+ is_flow_direction_constraining(node_src) ||
+ is_flow_direction_constraining(node_dst)
+ )
+ capacity[reverse(edge_metadata.edge)] = capacity_edge
+ end
end
end
+
return capacity
end
const allocation_source_nodetypes =
Set{NodeType.T}([NodeType.LevelBoundary, NodeType.FlowBoundary])
-"""
-Remove allocation UserDemand return flow edges that are upstream of the UserDemand itself.
-"""
-function avoid_using_own_returnflow!(p::Parameters, allocation_network_id::Int32)::Nothing
- (; graph) = p
- node_ids = graph[].node_ids[allocation_network_id]
- edge_ids = graph[].edge_ids[allocation_network_id]
- node_ids_user_demand =
- [node_id for node_id in node_ids if node_id.type == NodeType.UserDemand]
-
- for node_id_user_demand in node_ids_user_demand
- node_id_return_flow = only(outflow_ids_allocation(graph, node_id_user_demand))
- if allocation_path_exists_in_graph(graph, node_id_return_flow, node_id_user_demand)
- edge_metadata = graph[node_id_user_demand, node_id_return_flow]
- graph[node_id_user_demand, node_id_return_flow] =
- @set edge_metadata.allocation_flow = false
- empty!(edge_metadata.node_ids)
- delete!(edge_ids, (node_id_user_demand, node_id_return_flow))
- @debug "The outflow of $node_id_user_demand is upstream of the UserDemand itself and thus ignored in allocation solves."
- end
- end
- return nothing
-end
-
"""
Add the edges connecting the main network work to a subnetwork to both the main network
and subnetwork allocation network.
"""
-function add_subnetwork_connections!(p::Parameters, allocation_network_id::Int32)::Nothing
- (; graph, allocation) = p
+function add_subnetwork_connections!(
+ capacity::JuMP.Containers.SparseAxisArray{Float64, 2, Tuple{NodeID, NodeID}},
+ p::Parameters,
+ subnetwork_id::Int32,
+)::Nothing
+ (; allocation) = p
(; main_network_connections) = allocation
- edge_ids = graph[].edge_ids[allocation_network_id]
- if is_main_network(allocation_network_id)
+ # Add the connections to the main network
+ if is_main_network(subnetwork_id)
for connections in main_network_connections
- union!(edge_ids, connections)
+ for connection in connections
+ capacity[connection...] = Inf
+ end
end
else
- union!(edge_ids, get_main_network_connections(p, allocation_network_id))
+ # Add the connections to this subnetwork
+ for connection in get_main_network_connections(p, subnetwork_id)
+ capacity[connection...] = Inf
+ end
end
return nothing
end
"""
-Build the graph used for the allocation problem.
+Get the capacity of all edges in the subnetwork in a JuMP
+dictionary wrapper. The keys of this dictionary define
+the which edges are used in the allocation optimization problem.
"""
-function allocation_graph(
+function get_capacity(
p::Parameters,
- allocation_network_id::Int32,
-)::SparseMatrixCSC{Float64, Int}
- # Find out which nodes in the subnetwork are used in the allocation network
- allocation_graph_used_nodes!(p, allocation_network_id)
-
- # Find the edges in the allocation network
- edges_composite, capacity = find_allocation_graph_edges!(p, allocation_network_id)
-
- # Process the edges in the allocation network
- process_allocation_graph_edges!(capacity, edges_composite, p, allocation_network_id)
- add_subnetwork_connections!(p, allocation_network_id)
+ subnetwork_id::Int32,
+)::JuMP.Containers.SparseAxisArray{Float64, 2, Tuple{NodeID, NodeID}}
+ capacity = get_subnetwork_capacity(p, subnetwork_id)
+ add_subnetwork_connections!(capacity, p, subnetwork_id)
- if !valid_sources(p, allocation_network_id)
+ if !valid_sources(p, capacity, subnetwork_id)
error("Errors in sources in allocation network.")
end
- # Discard UserDemand return flow in allocation if this leads to a closed loop of flow
- avoid_using_own_returnflow!(p, allocation_network_id)
-
return capacity
end
@@ -359,28 +134,27 @@ Non-negativivity constraints are also immediately added to the flow variables.
"""
function add_variables_flow!(
problem::JuMP.Model,
- p::Parameters,
- allocation_network_id::Int32,
+ capacity::JuMP.Containers.SparseAxisArray{Float64, 2, Tuple{NodeID, NodeID}},
)::Nothing
- (; graph) = p
- edge_ids = graph[].edge_ids[allocation_network_id]
- problem[:F] = JuMP.@variable(problem, F[edge_id = edge_ids,] >= 0.0)
+ edges = keys(capacity.data)
+ problem[:F] = JuMP.@variable(problem, F[edge = edges] >= 0.0)
return nothing
end
"""
Add the variables for supply/demand of a basin to the problem.
-The variable indices are the node_ids of the basins in the subnetwork.
+The variable indices are the node IDs of the basins in the subnetwork.
"""
function add_variables_basin!(
problem::JuMP.Model,
p::Parameters,
- allocation_network_id::Int32,
+ subnetwork_id::Int32,
)::Nothing
(; graph) = p
node_ids_basin = [
- node_id for node_id in graph[].node_ids[allocation_network_id] if
- graph[node_id].type == :basin
+ node_id for
+ node_id in graph[].node_ids[subnetwork_id] if graph[node_id].type == :basin &&
+ has_external_demand(graph, node_id, :level_demand)[1]
]
problem[:F_basin_in] =
JuMP.@variable(problem, F_basin_in[node_id = node_ids_basin,] >= 0.0)
@@ -389,6 +163,35 @@ function add_variables_basin!(
return nothing
end
+"""
+Add the variables for supply/demand of the buffer of a node with a flow demand
+or fractional flow outneighbors to the problem.
+The variable indices are the node IDs of the nodes with a buffer in the subnetwork.
+"""
+function add_variables_flow_buffer!(
+ problem::JuMP.Model,
+ p::Parameters,
+ subnetwork_id::Int32,
+)::Nothing
+ (; graph) = p
+
+ # Collect the nodes in the subnetwork that have a flow demand
+ # or fractional flow outneighbors
+ node_ids_flow_demand = NodeID[]
+ for node_id in graph[].node_ids[subnetwork_id]
+ if has_external_demand(graph, node_id, :flow_demand)[1] ||
+ has_fractional_flow_outneighbors(graph, node_id)
+ push!(node_ids_flow_demand, node_id)
+ end
+ end
+
+ problem[:F_flow_buffer_in] =
+ JuMP.@variable(problem, F_flow_buffer_in[node_id = node_ids_flow_demand,] >= 0.0)
+ problem[:F_flow_buffer_out] =
+ JuMP.@variable(problem, F_flow_buffer_out[node_id = node_ids_flow_demand,] >= 0.0)
+ return nothing
+end
+
"""
Certain allocation distribution types use absolute values in the objective function.
Since most optimization packages do not support the absolute value function directly,
@@ -398,26 +201,29 @@ posing the appropriate constraints.
function add_variables_absolute_value!(
problem::JuMP.Model,
p::Parameters,
- allocation_network_id::Int32,
+ subnetwork_id::Int32,
)::Nothing
(; graph, allocation) = p
(; main_network_connections) = allocation
- node_ids = graph[].node_ids[allocation_network_id]
+ node_ids = graph[].node_ids[subnetwork_id]
node_ids_user_demand = NodeID[]
- node_ids_basin = NodeID[]
+ node_ids_level_demand = NodeID[]
+ node_ids_flow_demand = NodeID[]
for node_id in node_ids
type = node_id.type
if type == NodeType.UserDemand
push!(node_ids_user_demand, node_id)
- elseif type == NodeType.Basin
- push!(node_ids_basin, node_id)
+ elseif has_external_demand(graph, node_id, :level_demand)[1]
+ push!(node_ids_level_demand, node_id)
+ elseif has_external_demand(graph, node_id, :flow_demand)[1]
+ push!(node_ids_flow_demand, node_id)
end
end
# For the main network, connections to subnetworks are treated as UserDemands
- if is_main_network(allocation_network_id)
+ if is_main_network(subnetwork_id)
for connections_subnetwork in main_network_connections
for connection in connections_subnetwork
push!(node_ids_user_demand, connection[2])
@@ -427,7 +233,10 @@ function add_variables_absolute_value!(
problem[:F_abs_user_demand] =
JuMP.@variable(problem, F_abs_user_demand[node_id = node_ids_user_demand])
- problem[:F_abs_basin] = JuMP.@variable(problem, F_abs_basin[node_id = node_ids_basin])
+ problem[:F_abs_level_demand] =
+ JuMP.@variable(problem, F_abs_level_demand[node_id = node_ids_level_demand])
+ problem[:F_abs_flow_demand] =
+ JuMP.@variable(problem, F_abs_flow_demand[node_id = node_ids_flow_demand])
return nothing
end
@@ -442,20 +251,21 @@ flow over edge <= edge capacity
"""
function add_constraints_capacity!(
problem::JuMP.Model,
- capacity::SparseMatrixCSC{Float64, Int},
+ capacity::JuMP.Containers.SparseAxisArray{Float64, 2, Tuple{NodeID, NodeID}},
p::Parameters,
- allocation_network_id::Int32,
+ subnetwork_id::Int32,
)::Nothing
- (; graph) = p
- main_network_source_edges = get_main_network_connections(p, allocation_network_id)
+ main_network_source_edges = get_main_network_connections(p, subnetwork_id)
F = problem[:F]
- edge_ids = graph[].edge_ids[allocation_network_id]
+
+ # Find the edges within the subnetwork with finite capacity
edge_ids_finite_capacity = Tuple{NodeID, NodeID}[]
- for edge in edge_ids
- if !isinf(capacity[edge...]) && edge ∉ main_network_source_edges
+ for (edge, c) in capacity.data
+ if !isinf(c) && edge ∉ main_network_source_edges
push!(edge_ids_finite_capacity, edge)
end
end
+
problem[:capacity] = JuMP.@constraint(
problem,
[edge = edge_ids_finite_capacity],
@@ -466,157 +276,144 @@ function add_constraints_capacity!(
end
"""
-Add the source constraints to the allocation problem.
-The actual threshold values will be set before each allocation solve.
-The constraint indices are (edge_source_id, edge_dst_id).
+Add capacity constraints to the outflow edge of UserDemand nodes.
+The constraint indices are the UserDemand node IDs.
Constraint:
-flow over source edge <= source flow in subnetwork
+flow over UserDemand edge outflow edge <= cumulative return flow from previous priorities
"""
-function add_constraints_source!(
+function add_constraints_user_source!(
problem::JuMP.Model,
p::Parameters,
- allocation_network_id::Int32,
+ subnetwork_id::Int32,
)::Nothing
(; graph) = p
- edge_ids = graph[].edge_ids[allocation_network_id]
- edge_ids_source = [
- edge_id for edge_id in edge_ids if
- graph[edge_id...].allocation_network_id_source == allocation_network_id
- ]
F = problem[:F]
- problem[:source] = JuMP.@constraint(
+ node_ids = graph[].node_ids[subnetwork_id]
+
+ # Find the UserDemand nodes in the subnetwork
+ node_ids_user = [node_id for node_id in node_ids if node_id.type == NodeType.UserDemand]
+
+ problem[:source_user] = JuMP.@constraint(
problem,
- [edge_id = edge_ids_source],
- F[edge_id] <= 0.0,
- base_name = "source"
+ [node_id = node_ids_user],
+ F[(node_id, outflow_id(graph, node_id))] <= 0.0,
+ base_name = "source_user"
)
return nothing
end
"""
-Get the inneighbors of the given ID such that the connecting edge
-is an allocation flow edge.
-"""
-function inflow_ids_allocation(graph::MetaGraph, node_id::NodeID)
- inflow_ids = NodeID[]
- for inneighbor_id in inneighbor_labels(graph, node_id)
- if graph[inneighbor_id, node_id].allocation_flow
- push!(inflow_ids, inneighbor_id)
- end
- end
- return inflow_ids
-end
-
-"""
-Get the outneighbors of the given ID such that the connecting edge
-is an allocation flow edge.
-"""
-function outflow_ids_allocation(graph::MetaGraph, node_id::NodeID)
- outflow_ids = NodeID[]
- for outneighbor_id in outneighbor_labels(graph, node_id)
- if graph[node_id, outneighbor_id].allocation_flow
- push!(outflow_ids, outneighbor_id)
- end
- end
- return outflow_ids
-end
-
-function get_basin_inflow(
- problem::JuMP.Model,
- node_id::NodeID,
-)::Union{JuMP.VariableRef, Float64}
- F_basin_in = problem[:F_basin_in]
- return if node_id in only(F_basin_in.axes)
- F_basin_in[node_id]
- else
- 0.0
- end
-end
-
-function get_basin_outflow(
- problem::JuMP.Model,
- node_id::NodeID,
-)::Union{JuMP.VariableRef, Float64}
- F_basin_out = problem[:F_basin_out]
- return if node_id in only(F_basin_out.axes)
- F_basin_out[node_id]
- else
- 0.0
- end
-end
-
-"""
-Add the flow conservation constraints to the allocation problem.
-The constraint indices are UserDemand node IDs.
+Add the source constraints to the allocation problem.
+The actual threshold values will be set before each allocation solve.
+The constraint indices are (edge_source_id, edge_dst_id).
Constraint:
-sum(flows out of node node) == flows into node + flow from storage and vertical fluxes
+flow over source edge <= source flow in subnetwork
"""
-function add_constraints_flow_conservation!(
+function add_constraints_source!(
problem::JuMP.Model,
p::Parameters,
- allocation_network_id::Int32,
+ subnetwork_id::Int32,
)::Nothing
(; graph) = p
+ edges_source = Tuple{NodeID, NodeID}[]
F = problem[:F]
- node_ids = graph[].node_ids[allocation_network_id]
- node_ids_conservation =
- [node_id for node_id in node_ids if node_id.type == NodeType.Basin]
- main_network_source_edges = get_main_network_connections(p, allocation_network_id)
- for edge in main_network_source_edges
- push!(node_ids_conservation, edge[2])
+
+ # Find the edges in the whole model which are a source for
+ # this subnetwork
+ for edge_metadata in values(graph.edge_data)
+ (; edge) = edge_metadata
+ if graph[edge...].subnetwork_id_source == subnetwork_id
+ push!(edges_source, edge)
+ end
end
- unique!(node_ids_conservation)
- problem[:flow_conservation] = JuMP.@constraint(
+
+ problem[:source] = JuMP.@constraint(
problem,
- [node_id = node_ids_conservation],
- get_basin_inflow(problem, node_id) + sum([
- F[(node_id, outneighbor_id)] for
- outneighbor_id in outflow_ids_allocation(graph, node_id)
- ]) ==
- get_basin_outflow(problem, node_id) + sum([
- F[(inneighbor_id, node_id)] for
- inneighbor_id in inflow_ids_allocation(graph, node_id)
- ]),
- base_name = "flow_conservation",
+ [edge_id = edges_source],
+ F[edge_id] <= 0.0,
+ base_name = "source"
)
return nothing
end
"""
-Add the UserDemand returnflow constraints to the allocation problem.
-The constraint indices are UserDemand node IDs.
+Add the basin flow conservation constraints to the allocation problem.
+The constraint indices are Basin node IDs.
Constraint:
-outflow from user_demand <= return factor * inflow to user_demand
+sum(flows out of basin) == sum(flows into basin) + flow from storage and vertical fluxes
"""
-function add_constraints_user_demand_returnflow!(
+function add_constraints_conservation_node!(
problem::JuMP.Model,
p::Parameters,
- allocation_network_id::Int32,
+ subnetwork_id::Int32,
)::Nothing
- (; graph, user_demand) = p
+ (; graph) = p
F = problem[:F]
+ F_basin_in = problem[:F_basin_in]
+ F_basin_out = problem[:F_basin_out]
+ F_flow_buffer_in = problem[:F_flow_buffer_in]
+ F_flow_buffer_out = problem[:F_flow_buffer_out]
+ node_ids = graph[].node_ids[subnetwork_id]
- node_ids = graph[].node_ids[allocation_network_id]
- node_ids_user_demand_with_returnflow = [
- node_id for node_id in node_ids if node_id.type == NodeType.UserDemand &&
- !isempty(outflow_ids_allocation(graph, node_id))
- ]
- problem[:return_flow] = JuMP.@constraint(
+ inflows = Dict{NodeID, Set{JuMP.VariableRef}}()
+ outflows = Dict{NodeID, Set{JuMP.VariableRef}}()
+
+ edges_allocation = only(F.axes)
+
+ for node_id in node_ids
+
+ # No flow conservation constraint on sources/sinks
+ is_source_sink = node_id.type in
+ [NodeType.FlowBoundary, NodeType.LevelBoundary, NodeType.UserDemand]
+
+ if is_source_sink
+ continue
+ end
+
+ inflows_node = Set{JuMP.VariableRef}()
+ outflows_node = Set{JuMP.VariableRef}()
+ inflows[node_id] = inflows_node
+ outflows[node_id] = outflows_node
+
+ # Find in- and outflow allocation edges of this node
+ for neighbor_id in inoutflow_ids(graph, node_id)
+ edge_in = (neighbor_id, node_id)
+ if edge_in in edges_allocation
+ push!(inflows_node, F[edge_in])
+ end
+ edge_out = (node_id, neighbor_id)
+ if edge_out in edges_allocation
+ push!(outflows_node, F[edge_out])
+ end
+ end
+
+ # If the node is a Basin with a level demand, add basin in- and outflow
+ if has_external_demand(graph, node_id, :level_demand)[1]
+ push!(inflows_node, F_basin_out[node_id])
+ push!(outflows_node, F_basin_in[node_id])
+ end
+
+ # If the node has a buffer
+ if has_external_demand(graph, node_id, :flow_demand)[1] ||
+ has_fractional_flow_outneighbors(graph, node_id)
+ push!(inflows_node, F_flow_buffer_out[node_id])
+ push!(outflows_node, F_flow_buffer_in[node_id])
+ end
+ end
+
+ # Only the node IDs with conservation constraints on them
+ node_ids = keys(inflows)
+
+ problem[:flow_conservation] = JuMP.@constraint(
problem,
- [node_id_user_demand = node_ids_user_demand_with_returnflow],
- F[(
- node_id_user_demand,
- only(outflow_ids_allocation(graph, node_id_user_demand)),
- )] <=
- user_demand.return_factor[findsorted(user_demand.node_id, node_id_user_demand)] * F[(
- only(inflow_ids_allocation(graph, node_id_user_demand)),
- node_id_user_demand,
- )],
- base_name = "return_flow",
+ [node_id = node_ids],
+ sum(inflows[node_id]) == sum(outflows[node_id]);
+ base_name = "flow_conservation"
)
+
return nothing
end
@@ -670,8 +467,9 @@ function add_constraints_absolute_value_user_demand!(
F = problem[:F]
F_abs_user_demand = problem[:F_abs_user_demand]
+ # Get a dictionary UserDemand node ID => UserDemand inflow variable
flow_per_node = Dict(
- node_id => F[(only(inflow_ids_allocation(graph, node_id)), node_id)] for
+ node_id => F[(inflow_id(graph, node_id), node_id)] for
node_id in only(F_abs_user_demand.axes)
)
@@ -686,20 +484,44 @@ function add_constraints_absolute_value_user_demand!(
end
"""
-Add constraints so that variables F_abs_basin act as the
+Add constraints so that variables F_abs_level_demand act as the
absolute value of the expression comparing flow to a basin to its demand.
"""
-function add_constraints_absolute_value_basin!(problem::JuMP.Model)::Nothing
+function add_constraints_absolute_value_level_demand!(problem::JuMP.Model)::Nothing
F_basin_in = problem[:F_basin_in]
- F_abs_basin = problem[:F_abs_basin]
+ F_abs_level_demand = problem[:F_abs_level_demand]
+
+ # Get a dictionary Basin node ID => Basin inflow variable
flow_per_node =
- Dict(node_id => F_basin_in[node_id] for node_id in only(F_abs_basin.axes))
+ Dict(node_id => F_basin_in[node_id] for node_id in only(F_abs_level_demand.axes))
- add_constraints_absolute_value!(problem, flow_per_node, F_abs_basin, "basin")
+ add_constraints_absolute_value!(problem, flow_per_node, F_abs_level_demand, "basin")
return nothing
end
+"""
+Add constraints so that variables F_abs_flow_demand act as the
+absolute value of the expression comparing flow to a flow buffer to the flow demand.
+"""
+function add_constraints_absolute_value_flow_demand!(problem::JuMP.Model)::Nothing
+ F_flow_buffer_in = problem[:F_flow_buffer_in]
+ F_abs_flow_demand = problem[:F_abs_flow_demand]
+
+ # Get a dictionary Node ID => flow demand flow buffer variable
+ flow_per_node = Dict(
+ node_id => F_flow_buffer_in[node_id] for node_id in only(F_abs_flow_demand.axes)
+ )
+
+ add_constraints_absolute_value!(
+ problem,
+ flow_per_node,
+ F_abs_flow_demand,
+ "flow_demand",
+ )
+ return nothing
+end
+
"""
Add the fractional flow constraints to the allocation problem.
The constraint indices are allocation edges over a fractional flow node.
@@ -710,32 +532,28 @@ flow after fractional_flow node <= fraction * inflow
function add_constraints_fractional_flow!(
problem::JuMP.Model,
p::Parameters,
- allocation_network_id::Int32,
+ subnetwork_id::Int32,
)::Nothing
(; graph, fractional_flow) = p
F = problem[:F]
- node_ids = graph[].node_ids[allocation_network_id]
+ node_ids = graph[].node_ids[subnetwork_id]
+ # Find the nodes in this subnetwork with a FractionalFlow
+ # outneighbor, and collect the corresponding flow fractions
+ # and inflow variable
edges_to_fractional_flow = Tuple{NodeID, NodeID}[]
fractions = Dict{Tuple{NodeID, NodeID}, Float64}()
inflows = Dict{NodeID, JuMP.AffExpr}()
for node_id in node_ids
- for outflow_id_ in outflow_ids(graph, node_id)
- if outflow_id_.type == NodeType.FractionalFlow
- # The fractional flow nodes themselves are not represented in
- # the allocation network
- dst_id = outflow_id(graph, outflow_id_)
- # For now only consider fractional flow nodes which end in a basin
- if haskey(graph, node_id, dst_id) && dst_id.type == NodeType.Basin
- edge = (node_id, dst_id)
- push!(edges_to_fractional_flow, edge)
- node_idx = findsorted(fractional_flow.node_id, outflow_id_)
- fractions[edge] = fractional_flow.fraction[node_idx]
- inflows[node_id] = sum([
- F[(inflow_id_, node_id)] for
- inflow_id_ in inflow_ids(graph, node_id)
- ])
- end
+ for outflow_id in outflow_ids(graph, node_id)
+ if outflow_id.type == NodeType.FractionalFlow
+ edge = (node_id, outflow_id)
+ push!(edges_to_fractional_flow, edge)
+ node_idx = findsorted(fractional_flow.node_id, outflow_id)
+ fractions[edge] = fractional_flow.fraction[node_idx]
+ inflows[node_id] = sum([
+ F[(inflow_id, node_id)] for inflow_id in inflow_ids(graph, node_id)
+ ])
end
end
end
@@ -770,30 +588,85 @@ function add_constraints_basin_flow!(problem::JuMP.Model)::Nothing
end
"""
-Construct the allocation problem for the current subnetwork as a JuMP.jl model.
+Add the buffer outflow constraints to the allocation problem.
+The constraint indices are the node IDs of the nodes that have a flow demand.
+
+Constraint:
+flow out of buffer <= flow buffer capacity
+"""
+function add_constraints_buffer!(problem::JuMP.Model)::Nothing
+ F_flow_buffer_out = problem[:F_flow_buffer_out]
+ problem[:flow_buffer_outflow] = JuMP.@constraint(
+ problem,
+ [node_id = only(F_flow_buffer_out.axes)],
+ F_flow_buffer_out[node_id] <= 0.0,
+ base_name = "flow_buffer_outflow"
+ )
+ return nothing
+end
+
+"""
+Add the flow demand node outflow constraints to the allocation problem.
+The constraint indices are the node IDs of the nodes that have a flow demand.
+
+Constraint:
+flow out of node with flow demand <= ∞ if not at flow demand priority, 0.0 otherwise
+"""
+function add_constraints_flow_demand_outflow!(
+ problem::JuMP.Model,
+ p::Parameters,
+ subnetwork_id::Int32,
+)::Nothing
+ (; graph) = p
+ F = problem[:F]
+ node_ids = graph[].node_ids[subnetwork_id]
+
+ # Collect the node IDs in the subnetwork which have a flow demand
+ node_ids_flow_demand = [
+ node_id for
+ node_id in node_ids if has_external_demand(graph, node_id, :flow_demand)[1]
+ ]
+
+ problem[:flow_demand_outflow] = JuMP.@constraint(
+ problem,
+ [node_id = node_ids_flow_demand],
+ F[(node_id, outflow_id(graph, node_id))] <= 0.0,
+ base_name = "flow_demand_outflow"
+ )
+ return nothing
+end
+
+"""
+Construct the allocation problem for the current subnetwork as a JuMP model.
"""
function allocation_problem(
p::Parameters,
- capacity::SparseMatrixCSC{Float64, Int},
- allocation_network_id::Int32,
+ capacity::JuMP.Containers.SparseAxisArray{Float64, 2, Tuple{NodeID, NodeID}},
+ subnetwork_id::Int32,
)::JuMP.Model
optimizer = JuMP.optimizer_with_attributes(HiGHS.Optimizer, "log_to_console" => false)
problem = JuMP.direct_model(optimizer)
# Add variables to problem
- add_variables_flow!(problem, p, allocation_network_id)
- add_variables_basin!(problem, p, allocation_network_id)
- add_variables_absolute_value!(problem, p, allocation_network_id)
+ add_variables_flow!(problem, capacity)
+ add_variables_basin!(problem, p, subnetwork_id)
+ add_variables_absolute_value!(problem, p, subnetwork_id)
+ add_variables_flow_buffer!(problem, p, subnetwork_id)
# Add constraints to problem
- add_constraints_capacity!(problem, capacity, p, allocation_network_id)
- add_constraints_source!(problem, p, allocation_network_id)
- add_constraints_flow_conservation!(problem, p, allocation_network_id)
- add_constraints_user_demand_returnflow!(problem, p, allocation_network_id)
+ add_constraints_conservation_node!(problem, p, subnetwork_id)
+
add_constraints_absolute_value_user_demand!(problem, p)
- add_constraints_absolute_value_basin!(problem)
- add_constraints_fractional_flow!(problem, p, allocation_network_id)
+ add_constraints_absolute_value_flow_demand!(problem)
+ add_constraints_absolute_value_level_demand!(problem)
+
+ add_constraints_capacity!(problem, capacity, p, subnetwork_id)
+ add_constraints_source!(problem, p, subnetwork_id)
+ add_constraints_user_source!(problem, p, subnetwork_id)
+ add_constraints_fractional_flow!(problem, p, subnetwork_id)
add_constraints_basin_flow!(problem)
+ add_constraints_flow_demand_outflow!(problem, p, subnetwork_id)
+ add_constraints_buffer!(problem)
return problem
end
@@ -803,6 +676,7 @@ Construct the JuMP.jl problem for allocation.
Inputs
------
+subnetwork_id: the ID of this allocation network
p: Ribasim problem parameters
Δt_allocation: The timestep between successive allocation solves
@@ -811,15 +685,12 @@ Outputs
An AllocationModel object.
"""
function AllocationModel(
- allocation_network_id::Int32,
+ subnetwork_id::Int32,
p::Parameters,
Δt_allocation::Float64,
)::AllocationModel
- # Add allocation network data to the model MetaGraph
- capacity = allocation_graph(p, allocation_network_id)
-
- # The JuMP.jl allocation problem
- problem = allocation_problem(p, capacity, allocation_network_id)
+ capacity = get_capacity(p, subnetwork_id)
+ problem = allocation_problem(p, capacity, subnetwork_id)
- return AllocationModel(allocation_network_id, capacity, problem, Δt_allocation)
+ return AllocationModel(subnetwork_id, capacity, problem, Δt_allocation)
end
diff --git a/core/src/allocation_optim.jl b/core/src/allocation_optim.jl
index 00e7e3e7c..5c306c6ac 100644
--- a/core/src/allocation_optim.jl
+++ b/core/src/allocation_optim.jl
@@ -1,3 +1,5 @@
+@enumx OptimizationType internal_sources collect_demands allocate
+
"""
Add a term to the objective function given by the objective type,
depending in the provided flow variable and the associated demand.
@@ -30,13 +32,34 @@ function add_user_demand_term!(
add_objective_term!(demand, constraint_abs_positive, constraint_abs_negative)
end
+"""
+Add a term to the expression of the objective function corresponding to
+the demand of a node with a a flow demand.
+"""
+function add_flow_demand_term!(
+ edge::Tuple{NodeID, NodeID},
+ demand::Float64,
+ problem::JuMP.Model,
+)::Nothing
+ node_id_flow_demand = edge[2]
+
+ constraint_abs_positive = problem[:abs_positive_flow_demand][node_id_flow_demand]
+ constraint_abs_negative = problem[:abs_negative_flow_demand][node_id_flow_demand]
+
+ add_objective_term!(demand, constraint_abs_positive, constraint_abs_negative)
+end
+
"""
Add a term to the expression of the objective function corresponding to
the demand of a basin.
"""
function add_basin_term!(problem::JuMP.Model, demand::Float64, node_id::NodeID)::Nothing
- constraint_abs_positive = problem[:abs_positive_basin][node_id]
- constraint_abs_negative = problem[:abs_negative_basin][node_id]
+ constraint_abs_positive = get(problem[:abs_positive_basin], node_id)
+ constraint_abs_negative = get(problem[:abs_negative_basin], node_id)
+
+ if isnothing(constraint_abs_positive)
+ return
+ end
add_objective_term!(demand, constraint_abs_positive, constraint_abs_negative)
return nothing
@@ -53,51 +76,67 @@ function set_objective_priority!(
t::Float64,
priority_idx::Int,
)::Nothing
- (; problem, allocation_network_id) = allocation_model
- (; graph, user_demand, allocation, basin) = p
- (; demand_itp, demand_from_timeseries, node_id) = user_demand
+ (; problem, subnetwork_id, capacity) = allocation_model
+ (; graph, user_demand, flow_demand, allocation, basin) = p
+ (; node_id, demand_reduced) = user_demand
(; main_network_connections, subnetwork_demands) = allocation
- edge_ids = graph[].edge_ids[allocation_network_id]
ex = JuMP.AffExpr()
- ex += sum(problem[:F_abs_user_demand])
- ex += sum(problem[:F_abs_basin])
- demand_max = 0.0
+ F_abs_user_demand = problem[:F_abs_user_demand]
+ F_abs_level_demand = problem[:F_abs_level_demand]
+ F_abs_flow_demand = problem[:F_abs_flow_demand]
+
+ # Add the absolute value terms to the objective function
+ if !isempty(only(F_abs_user_demand.axes))
+ ex += sum(F_abs_user_demand)
+ end
+ if !isempty(only(F_abs_level_demand.axes))
+ ex += sum(F_abs_level_demand)
+ end
+ if !isempty(only(F_abs_flow_demand.axes))
+ ex += sum(F_abs_flow_demand)
+ end
# Terms for subnetworks as UserDemand
- if is_main_network(allocation_network_id)
+ if is_main_network(subnetwork_id)
for connections_subnetwork in main_network_connections
for connection in connections_subnetwork
d = subnetwork_demands[connection][priority_idx]
- demand_max = max(demand_max, d)
add_user_demand_term!(connection, d, problem)
end
end
end
- # Terms for UserDemand nodes
- for edge_id in edge_ids
- node_id_user_demand = edge_id[2]
- if node_id_user_demand.type != NodeType.UserDemand
- continue
- end
+ # Terms for UserDemand nodes and LevelDemand nodes
+ for edge in keys(capacity.data)
+ to_node_id = edge[2]
- user_demand_idx = findsorted(node_id, node_id_user_demand)
- if demand_from_timeseries[user_demand_idx]
- d = demand_itp[user_demand_idx][priority_idx](t)
- set_user_demand!(p, node_id_user_demand, priority_idx, d)
+ if to_node_id.type == NodeType.UserDemand
+ # UserDemand
+ user_demand_idx = findsorted(node_id, to_node_id)
+ d = demand_reduced[user_demand_idx, priority_idx]
+ add_user_demand_term!(edge, d, problem)
else
- d = get_user_demand(p, node_id_user_demand, priority_idx)
+ has_demand, demand_node_id =
+ has_external_demand(graph, to_node_id, :flow_demand)
+ # FlowDemand
+ if has_demand
+ flow_priority_idx = get_external_priority_idx(p, to_node_id)
+ d =
+ priority_idx == flow_priority_idx ?
+ flow_demand.demand[findsorted(flow_demand.node_id, demand_node_id)] :
+ 0.0
+
+ add_flow_demand_term!(edge, d, problem)
+ end
end
- demand_max = max(demand_max, d)
- add_user_demand_term!(edge_id, d, problem)
end
- # Terms for basins
+ # Terms for LevelDemand nodes
F_basin_in = problem[:F_basin_in]
for node_id in only(F_basin_in.axes)
- basin_priority_idx = get_basin_priority_idx(p, node_id)
+ basin_priority_idx = get_external_priority_idx(p, node_id)
d =
basin_priority_idx == priority_idx ?
get_basin_demand(allocation_model, u, p, t, node_id) : 0.0
@@ -117,45 +156,49 @@ Assign the allocations to the UserDemand as determined by the solution of the al
function assign_allocations!(
allocation_model::AllocationModel,
p::Parameters,
- priority_idx::Int;
- collect_demands::Bool = false,
+ priority_idx::Int,
+ optimization_type::OptimizationType.T,
)::Nothing
- (; problem, allocation_network_id) = allocation_model
+ (; problem, subnetwork_id, capacity) = allocation_model
(; graph, user_demand, allocation) = p
(;
subnetwork_demands,
subnetwork_allocateds,
- allocation_network_ids,
+ subnetwork_ids,
main_network_connections,
) = allocation
- edge_ids = graph[].edge_ids[allocation_network_id]
- main_network_source_edges = get_main_network_connections(p, allocation_network_id)
+ main_network_source_edges = get_main_network_connections(p, subnetwork_id)
F = problem[:F]
- for edge_id in edge_ids
+ for edge in keys(capacity.data)
+ # If this edge does not exist in the physical model then it comes from a
+ # bidirectional edge, and thus does not have directly allocating flow
+ if !haskey(graph, edge...)
+ continue
+ end
# If this edge is a source edge from the main network to a subnetwork,
# and demands are being collected, add its flow to the demand of this edge
- if collect_demands &&
- graph[edge_id...].allocation_network_id_source == allocation_network_id &&
- edge_id ∈ main_network_source_edges
- allocated = JuMP.value(F[edge_id])
- subnetwork_demands[edge_id][priority_idx] += allocated
- end
-
- user_demand_node_id = edge_id[2]
-
- if user_demand_node_id.type == NodeType.UserDemand
- allocated = JuMP.value(F[edge_id])
- user_demand_idx = findsorted(user_demand.node_id, user_demand_node_id)
- user_demand.allocated[user_demand_idx][priority_idx] = allocated
+ if optimization_type == OptimizationType.collect_demands
+ if graph[edge...].subnetwork_id_source == subnetwork_id &&
+ edge ∈ main_network_source_edges
+ allocated = JuMP.value(F[edge])
+ subnetwork_demands[edge][priority_idx] += allocated
+ end
+ elseif optimization_type == OptimizationType.allocate
+ user_demand_node_id = edge[2]
+ if user_demand_node_id.type == NodeType.UserDemand
+ allocated = JuMP.value(F[edge])
+ user_demand_idx = findsorted(user_demand.node_id, user_demand_node_id)
+ user_demand.allocated[user_demand_idx, priority_idx] = allocated
+ end
end
end
# Write the flows to the subnetworks as allocated flows
# in the allocation object
- if is_main_network(allocation_network_id)
- for (allocation_network_id, main_network_source_edges) in
- zip(allocation_network_ids, main_network_connections)
- if is_main_network(allocation_network_id)
+ if is_main_network(subnetwork_id)
+ for (subnetwork_id, main_network_source_edges) in
+ zip(subnetwork_ids, main_network_connections)
+ if is_main_network(subnetwork_id)
continue
end
for edge_id in main_network_source_edges
@@ -167,53 +210,68 @@ function assign_allocations!(
end
"""
-Adjust the source flows.
+Set the capacities of the main network to subnetwork inlets.
+Per optimization type:
+internal_sources: 0.0
+collect_demands: Inf
+allocate: the total flow allocated to this inlet from the main network
"""
-function adjust_source_capacities!(
+function set_initial_capacities_inlet!(
allocation_model::AllocationModel,
p::Parameters,
- priority_idx::Int;
- collect_demands::Bool = false,
+ optimization_type::OptimizationType.T,
)::Nothing
(; problem) = allocation_model
- (; graph, allocation) = p
- (; allocation_network_id) = allocation_model
+ (; allocation) = p
+ (; subnetwork_id) = allocation_model
(; subnetwork_allocateds) = allocation
- edge_ids = graph[].edge_ids[allocation_network_id]
source_constraints = problem[:source]
- F = problem[:F]
- main_network_source_edges = get_main_network_connections(p, allocation_network_id)
+ main_network_source_edges = get_main_network_connections(p, subnetwork_id)
+
+ for edge_id in main_network_source_edges
+ source_capacity = if optimization_type == OptimizationType.internal_sources
+ # Set the source capacity to 0 if optimization is being done for the internal subnetwork sources
+ 0.0
+ elseif optimization_type == OptimizationType.collect_demands
+ # Set the source capacity to effectively unlimited if subnetwork demands are being collected
+ Inf
+ elseif optimization_type == OptimizationType.allocate
+ # Set the source capacity to the sum over priorities of the values allocated to the subnetwork over this edge
+ sum(subnetwork_allocateds[edge_id])
+ end
+ JuMP.set_normalized_rhs(source_constraints[edge_id], source_capacity)
+ end
+ return nothing
+end
- for edge_id in edge_ids
- if graph[edge_id...].allocation_network_id_source == allocation_network_id
+"""
+Set the capacities of the sources in the subnetwork
+as the average flow over the last Δt_allocation of the source in the physical layer
+"""
+function set_initial_capacities_source!(
+ allocation_model::AllocationModel,
+ p::Parameters,
+)::Nothing
+ (; problem) = allocation_model
+ (; graph, allocation) = p
+ (; mean_flows) = allocation
+ (; subnetwork_id) = allocation_model
+ source_constraints = problem[:source]
+ main_network_source_edges = get_main_network_connections(p, subnetwork_id)
+
+ for edge_metadata in values(graph.edge_data)
+ (; edge) = edge_metadata
+ if graph[edge...].subnetwork_id_source == subnetwork_id
# If it is a source edge for this allocation problem
- if priority_idx == 1
- # If the optimization was just started, i.e. sources have to be reset
- if edge_id in main_network_source_edges
- if collect_demands
- # Set the source capacity to effectively unlimited if subnetwork demands are being collected
- source_capacity = Inf
- else
- # Set the source capacity to the value allocated to the subnetwork over this edge
- source_capacity = subnetwork_allocateds[edge_id][priority_idx]
- end
- else
- # Reset the source to the current flow from the physical layer.
- source_capacity = get_flow(graph, edge_id..., 0)
- end
+ if edge ∉ main_network_source_edges
+ # Reset the source to the averaged flow over the last allocation period
+ source_capacity = mean_flows[edge][]
JuMP.set_normalized_rhs(
- source_constraints[edge_id],
+ source_constraints[edge],
# It is assumed that the allocation procedure does not have to be differentiated.
source_capacity,
)
- else
- # Subtract the allocated flow from the source.
- JuMP.set_normalized_rhs(
- source_constraints[edge_id],
- JuMP.normalized_rhs(source_constraints[edge_id]) -
- JuMP.value(F[edge_id]),
- )
end
end
end
@@ -221,26 +279,36 @@ function adjust_source_capacities!(
end
"""
-Set the values of the edge capacities. 2 cases:
-- Before the first allocation solve, set the edge capacities to their full capacity;
-- Before an allocation solve, subtract the flow used by allocation for the previous priority
- from the edge capacities.
+Adjust the source capacities by the flow used from the sources.
"""
-function adjust_edge_capacities!(
+function adjust_capacities_source!(allocation_model::AllocationModel)::Nothing
+ (; problem) = allocation_model
+ source_constraints = problem[:source]
+ F = problem[:F]
+
+ for edge in only(source_constraints.axes)
+ # Subtract the allocated flow from the source
+ JuMP.set_normalized_rhs(
+ source_constraints[edge],
+ JuMP.normalized_rhs(source_constraints[edge]) - JuMP.value(F[edge]),
+ )
+ end
+ return nothing
+end
+
+"""
+Set the capacities of the allocation flow edges as determined by
+the smallest max_flow_rate of a node on this edge
+"""
+function set_initial_capacities_edge!(
allocation_model::AllocationModel,
p::Parameters,
- priority_idx::Int,
)::Nothing
- (; graph) = p
- (; problem, capacity, allocation_network_id) = allocation_model
- edge_ids = graph[].edge_ids[allocation_network_id]
+ (; problem, capacity, subnetwork_id) = allocation_model
constraints_capacity = problem[:capacity]
- F = problem[:F]
+ main_network_source_edges = get_main_network_connections(p, subnetwork_id)
- main_network_source_edges = get_main_network_connections(p, allocation_network_id)
-
- for edge_id in edge_ids
- c = capacity[edge_id...]
+ for (edge_id, c) in capacity.data
# These edges have no capacity constraints:
# - With infinite capacity
@@ -248,18 +316,30 @@ function adjust_edge_capacities!(
if isinf(c) || edge_id ∈ main_network_source_edges
continue
end
+ JuMP.set_normalized_rhs(constraints_capacity[edge_id], c)
+ end
- if priority_idx == 1
- # Before the first allocation solve, set the edge capacities to their full capacity
- JuMP.set_normalized_rhs(constraints_capacity[edge_id], c)
- else
- # Before an allocation solve, subtract the flow used by allocation for the previous priority
- # from the edge capacities
- JuMP.set_normalized_rhs(
- constraints_capacity[edge_id],
- JuMP.normalized_rhs(constraints_capacity[edge_id]) - JuMP.value(F[edge_id]),
- )
- end
+ return nothing
+end
+
+"""
+Set the values of the edge capacities. 2 cases:
+- Before the first allocation solve, set the edge capacities to their full capacity;
+- Before an allocation solve, subtract the flow used by allocation for the previous priority
+ from the edge capacities.
+"""
+function adjust_capacities_edge!(allocation_model::AllocationModel)::Nothing
+ (; problem) = allocation_model
+ constraints_capacity = problem[:capacity]
+ F = problem[:F]
+
+ for edge_id in only(constraints_capacity.axes)
+ # Before an allocation solve, subtract the flow used by allocation for the previous priority
+ # from the edge capacities
+ JuMP.set_normalized_rhs(
+ constraints_capacity[edge_id],
+ JuMP.normalized_rhs(constraints_capacity[edge_id]) - JuMP.value(F[edge_id]),
+ )
end
end
@@ -278,10 +358,14 @@ function get_basin_data(
u::ComponentVector,
node_id::NodeID,
)
- (; graph, basin, level_demand) = p
+ (; graph, basin, level_demand, allocation) = p
+ (; vertical_flux) = basin
(; Δt_allocation) = allocation_model
+ (; mean_flows) = allocation
@assert node_id.type == NodeType.Basin
- influx = get_flow(graph, node_id, 0.0)
+ vertical_flux = get_tmp(vertical_flux, 0)
+ _, basin_idx = id_index(basin.node_id, node_id)
+ influx = mean_flows[(node_id, node_id)][]
_, basin_idx = id_index(basin.node_id, node_id)
storage_basin = u.storage[basin_idx]
control_inneighbors = inneighbor_labels_type(graph, node_id, EdgeType.control)
@@ -347,41 +431,313 @@ function get_basin_demand(
end
end
+"""
+Set the initial capacity of each basin in the subnetwork as
+vertical fluxes + the disk of storage above the maximum level / Δt_allocation
+"""
+function set_initial_capacities_basin!(
+ allocation_model::AllocationModel,
+ p::Parameters,
+ u::ComponentVector,
+ t::Float64,
+)::Nothing
+ (; problem) = allocation_model
+ constraints_outflow = problem[:basin_outflow]
+
+ for node_id in only(constraints_outflow.axes)
+ constraint = constraints_outflow[node_id]
+ JuMP.set_normalized_rhs(
+ constraint,
+ get_basin_capacity(allocation_model, u, p, t, node_id),
+ )
+ end
+ return nothing
+end
+
"""
Set the values of the basin outflows. 2 cases:
- Before the first allocation solve, set the capacities to their full capacity if there is surplus storage;
- Before an allocation solve, subtract the flow used by allocation for the previous priority
from the capacities.
"""
-function adjust_basin_capacities!(
+function adjust_capacities_basin!(allocation_model::AllocationModel)::Nothing
+ (; problem) = allocation_model
+ constraints_outflow = problem[:basin_outflow]
+ F_basin_out = problem[:F_basin_out]
+
+ for node_id in only(constraints_outflow.axes)
+ constraint = constraints_outflow[node_id]
+ JuMP.set_normalized_rhs(
+ constraint,
+ JuMP.normalized_rhs(constraint) - JuMP.value(F_basin_out[node_id]),
+ )
+ end
+
+ return nothing
+end
+
+"""
+Set the demands of the user demand nodes as given
+by either a coupled model or a timeseries
+"""
+function set_initial_demands_user!(
+ allocation_model::AllocationModel,
+ p::Parameters,
+ t::Float64,
+)::Nothing
+ (; subnetwork_id) = allocation_model
+ (; graph, user_demand, allocation) = p
+ (; node_id, demand_from_timeseries, demand_itp, demand, demand_reduced) = user_demand
+
+ # Read the demand from the interpolated timeseries
+ # for users for which the demand comes from there
+ for (i, id) in enumerate(node_id)
+ if demand_from_timeseries[i] && graph[id].subnetwork_id == subnetwork_id
+ for priority_idx in eachindex(allocation.priorities)
+ demand[i, priority_idx] = demand_itp[i][priority_idx](t)
+ end
+ end
+ end
+ copy!(demand_reduced, demand)
+ return nothing
+end
+
+"""
+Set the initial demand of each basin in the subnetwork as
+- vertical fluxes + the disk of missing storage below the minimum level / Δt_allocation
+"""
+function set_initial_demands_level!(
allocation_model::AllocationModel,
u::ComponentVector,
p::Parameters,
t::Float64,
- priority_idx::Int,
)::Nothing
+ (; subnetwork_id, problem) = allocation_model
+ (; graph, basin) = p
+ (; node_id, demand) = basin
+
+ node_ids_level_demand = only(problem[:basin_outflow].axes)
+
+ for id in node_ids_level_demand
+ if graph[id].subnetwork_id == subnetwork_id
+ _, i = id_index(node_id, id)
+ demand[i] = get_basin_demand(allocation_model, u, p, t, id)
+ end
+ end
+
+ return nothing
+end
+
+"""
+Set the initial capacities of the UserDemand return flow sources to 0.
+"""
+function set_initial_capacities_returnflow!(allocation_model::AllocationModel)::Nothing
(; problem) = allocation_model
- constraints_outflow = problem[:basin_outflow]
- F_basin_out = problem[:F_basin_out]
+ constraints_outflow = problem[:source_user]
for node_id in only(constraints_outflow.axes)
constraint = constraints_outflow[node_id]
- if priority_idx == 1
- JuMP.set_normalized_rhs(
- constraint,
- get_basin_capacity(allocation_model, u, p, t, node_id),
- )
- else
- JuMP.set_normalized_rhs(
- constraint,
- JuMP.normalized_rhs(constraint) - JuMP.value(F_basin_out[node_id]),
+ capacity = 0.0
+ JuMP.set_normalized_rhs(constraint, capacity)
+ end
+ return nothing
+end
+
+"""
+Add the return flow fraction of the inflow to the UserDemand nodes
+to the capacity of the outflow source.
+"""
+function adjust_capacities_returnflow!(
+ allocation_model::AllocationModel,
+ p::Parameters,
+)::Nothing
+ (; graph, user_demand) = p
+ (; problem) = allocation_model
+ constraints_outflow = problem[:source_user]
+ F = problem[:F]
+
+ for node_id in only(constraints_outflow.axes)
+ constraint = constraints_outflow[node_id]
+ user_idx = findsorted(user_demand.node_id, node_id)
+ capacity =
+ JuMP.normalized_rhs(constraint) +
+ user_demand.return_factor[user_idx] *
+ JuMP.value(F[(inflow_id(graph, node_id), node_id)])
+
+ JuMP.set_normalized_rhs(constraint, capacity)
+ end
+
+ return nothing
+end
+
+"""
+Set the demand of the flow demand nodes. 2 cases:
+- Before the first allocation solve, set the demands to their full value;
+- Before an allocation solve, subtract the flow trough the node with a flow demand
+ from the total flow demand (which will be used at the priority of the flow demand only).
+"""
+function adjust_demands_user!(
+ allocation_model::AllocationModel,
+ p::Parameters,
+ priority_idx::Int,
+)::Nothing
+ (; problem, subnetwork_id) = allocation_model
+ (; graph, user_demand) = p
+ (; node_id, demand_reduced) = user_demand
+ F = problem[:F]
+
+ # Reduce the demand by what was allocated
+ for (i, id) in enumerate(node_id)
+ if graph[id].subnetwork_id == subnetwork_id
+ d = max(
+ 0.0,
+ demand_reduced[i, priority_idx] - JuMP.value(F[(inflow_id(graph, id), id)]),
)
+ demand_reduced[i, priority_idx] = d
+ end
+ end
+ return nothing
+end
+
+"""
+Subtract the allocated flow to the basin from its demand,
+to obtain the reduced demand used for goal programming
+"""
+function adjust_demands_level!(allocation_model::AllocationModel, p::Parameters)::Nothing
+ (; graph, basin) = p
+ (; node_id, demand) = basin
+ (; subnetwork_id, problem) = allocation_model
+ F_basin_in = problem[:F_basin_in]
+
+ # Reduce the demand by what was allocated
+ for id in only(F_basin_in.axes)
+ if graph[id].subnetwork_id == subnetwork_id
+ _, i = id_index(basin.node_id, id)
+ demand[i] -= JuMP.value(F_basin_in[id])
end
end
return nothing
end
+"""
+Set the initial demands of the nodes with a flow demand to the
+interpolated value from the given timeseries.
+"""
+function set_initial_demands_flow!(
+ allocation_model::AllocationModel,
+ p::Parameters,
+ t::Float64,
+)::Nothing
+ (; flow_demand, graph) = p
+ (; subnetwork_id) = allocation_model
+
+ for (i, node_id) in enumerate(flow_demand.node_id)
+ if graph[node_id].subnetwork_id != subnetwork_id
+ continue
+ end
+ flow_demand.demand[i] = flow_demand.demand_itp[i](t)
+ end
+ return nothing
+end
+
+"""
+Reduce the flow demand based on flow trough the node with the demand.
+Flow from any priority counts.
+"""
+function adjust_demands_flow!(allocation_model::AllocationModel, p::Parameters)::Nothing
+ (; flow_demand, graph) = p
+ (; problem, subnetwork_id) = allocation_model
+ F = problem[:F]
+
+ for (i, node_id) in enumerate(flow_demand.node_id)
+ if graph[node_id].subnetwork_id != subnetwork_id
+ continue
+ end
+
+ node_with_demand_id =
+ only(outneighbor_labels_type(graph, node_id, EdgeType.control))
+
+ flow_demand.demand[i] = max(
+ 0.0,
+ flow_demand.demand[i] -
+ JuMP.value(F[(inflow_id(graph, node_with_demand_id), node_with_demand_id)]),
+ )
+ end
+ return nothing
+end
+
+"""
+Set the flow buffer of nodes with a flow demand to 0.0
+"""
+function set_initial_capacities_buffer!(allocation_model::AllocationModel)::Nothing
+ (; problem) = allocation_model
+ constraints_flow_buffer = problem[:flow_buffer_outflow]
+
+ for node_id in only(constraints_flow_buffer.axes)
+ constraint = constraints_flow_buffer[node_id]
+ buffer_capacity = 0.0
+ JuMP.set_normalized_rhs(constraint, buffer_capacity)
+ end
+ return nothing
+end
+
+"""
+Increase the capacities of the flow buffers of nodes with a flow demand
+by the inflow to the respective buffers.
+"""
+function adjust_capacities_buffer!(allocation_model::AllocationModel)::Nothing
+ (; problem) = allocation_model
+
+ constraints_flow_buffer = problem[:flow_buffer_outflow]
+
+ F_flow_buffer_in = problem[:F_flow_buffer_in]
+ F_flow_buffer_out = problem[:F_flow_buffer_out]
+
+ for node_id in only(constraints_flow_buffer.axes)
+ constraint = constraints_flow_buffer[node_id]
+ buffer_capacity = max(
+ 0.0,
+ JuMP.normalized_rhs(constraint) + JuMP.value(F_flow_buffer_in[node_id]) -
+ JuMP.value(F_flow_buffer_out[node_id]),
+ )
+ JuMP.set_normalized_rhs(constraint, buffer_capacity)
+ end
+ return nothing
+end
+
+"""
+Set the capacity of the outflow edge from a node with a flow demand:
+- To Inf if the current priority is other than the priority of the flow demand
+- To 0.0 if the current priority is equal to the priority of the flow demand
+"""
+function set_capacities_flow_demand_outflow!(
+ allocation_model::AllocationModel,
+ p::Parameters,
+ priority_idx::Int,
+)::Nothing
+ (; graph, allocation, flow_demand) = p
+ (; priorities) = allocation
+ (; problem) = allocation_model
+ priority = priorities[priority_idx]
+ constraints = problem[:flow_demand_outflow]
+
+ for node_id in only(constraints.axes)
+ constraint = constraints[node_id]
+ node_id_flow_demand = only(inneighbor_labels_type(graph, node_id, EdgeType.control))
+ node_idx = findsorted(flow_demand.node_id, node_id_flow_demand)
+ priority_flow_demand = flow_demand.priority[node_idx]
+
+ capacity = if priority == priority_flow_demand
+ 0.0
+ else
+ Inf
+ end
+
+ JuMP.set_normalized_rhs(constraint, capacity)
+ end
+end
+
"""
Save the demands and allocated flows for UserDemand and Basin.
Note: Basin supply (negative demand) is only saved for the first priority.
@@ -392,11 +748,12 @@ function save_demands_and_allocations!(
t::Float64,
priority_idx::Int,
)::Nothing
- (; graph, allocation, user_demand, basin) = p
+ (; graph, allocation, user_demand, flow_demand, basin) = p
(; record_demand, priorities) = allocation
- (; allocation_network_id, problem) = allocation_model
- node_ids = graph[].node_ids[allocation_network_id]
+ (; subnetwork_id, problem) = allocation_model
+ node_ids = graph[].node_ids[subnetwork_id]
constraints_outflow = problem[:basin_outflow]
+ F = problem[:F]
F_basin_in = problem[:F_basin_in]
F_basin_out = problem[:F_basin_out]
@@ -406,12 +763,13 @@ function save_demands_and_allocations!(
if node_id.type == NodeType.UserDemand
has_demand = true
user_demand_idx = findsorted(user_demand.node_id, node_id)
- demand = user_demand.demand[user_demand_idx]
- allocated = user_demand.allocated[user_demand_idx][priority_idx]
+ demand = user_demand.demand[user_demand_idx, priority_idx]
+ allocated = user_demand.allocated[user_demand_idx, priority_idx]
+ #NOTE: instantaneous
realized = get_flow(graph, inflow_id(graph, node_id), node_id, 0)
- elseif node_id.type == NodeType.Basin
- basin_priority_idx = get_basin_priority_idx(p, node_id)
+ elseif has_external_demand(graph, node_id, :level_demand)[1]
+ basin_priority_idx = get_external_priority_idx(p, node_id)
if priority_idx == 1 || basin_priority_idx == priority_idx
has_demand = true
@@ -431,12 +789,29 @@ function save_demands_and_allocations!(
# over the last allocation interval?
realized = 0.0
end
+
+ else
+ has_demand, flow_demand_node_id =
+ has_external_demand(graph, node_id, :flow_demand)
+ if has_demand
+ # Full demand, not the possibly reduced demand
+ flow_priority_idx = get_external_priority_idx(p, node_id)
+ demand =
+ priority_idx == flow_priority_idx ?
+ flow_demand.demand[findsorted(
+ flow_demand.node_id,
+ flow_demand_node_id,
+ )] : 0.0
+ allocated = JuMP.value(F[(inflow_id(graph, node_id), node_id)])
+ #NOTE: Still instantaneous
+ realized = get_flow(graph, inflow_id(graph, node_id), node_id, 0)
+ end
end
if has_demand
# Save allocations and demands to record
push!(record_demand.time, t)
- push!(record_demand.subnetwork_id, allocation_network_id)
+ push!(record_demand.subnetwork_id, subnetwork_id)
push!(record_demand.node_type, string(node_id.type))
push!(record_demand.node_id, Int32(node_id))
push!(record_demand.priority, priorities[priority_idx])
@@ -459,38 +834,68 @@ function save_allocation_flows!(
t::Float64,
allocation_model::AllocationModel,
priority::Int32,
- collect_demands::Bool,
+ optimization_type::OptimizationType.T,
)::Nothing
- (; problem, allocation_network_id) = allocation_model
+ (; problem, subnetwork_id, capacity) = allocation_model
(; allocation, graph) = p
(; record_flow) = allocation
F = problem[:F]
F_basin_in = problem[:F_basin_in]
F_basin_out = problem[:F_basin_out]
- # Edge flows
- for allocation_edge in first(F.axes)
- flow_rate = JuMP.value(F[allocation_edge])
- edge_metadata = graph[allocation_edge...]
- (; node_ids) = edge_metadata
+ edges_allocation = keys(capacity.data)
- for i in eachindex(node_ids)[1:(end - 1)]
- push!(record_flow.time, t)
- push!(record_flow.edge_id, edge_metadata.id)
- push!(record_flow.from_node_type, string(node_ids[i].type))
- push!(record_flow.from_node_id, Int32(node_ids[i]))
- push!(record_flow.to_node_type, string(node_ids[i + 1].type))
- push!(record_flow.to_node_id, Int32(node_ids[i + 1]))
- push!(record_flow.subnetwork_id, allocation_network_id)
- push!(record_flow.priority, priority)
- push!(record_flow.flow_rate, flow_rate)
- push!(record_flow.collect_demands, collect_demands)
+ skip = false
+
+ # Loop over all tuples of 2 consecutive edges so that they can be processed
+ # simultaneously if they represent the same edge in both directions
+ for (edge_1, edge_2) in IterTools.partition(edges_allocation, 2, 1)
+ if skip
+ skip = false
+ continue
end
+
+ flow_rate = 0.0
+
+ if haskey(graph, edge_1...)
+ flow_rate += JuMP.value(F[edge_1])
+ sign_2 = -1.0
+ edge_metadata = graph[edge_1...]
+ else
+ edge_1_reverse = reverse(edge_1)
+ flow_rate -= JuMP.value(F[edge_1_reverse])
+ sign_2 = 1.0
+ edge_metadata = graph[edge_1_reverse...]
+ end
+
+ # Check whether the next edge is the current one reversed
+ # and the edge does not have a UserDemand end
+ if edge_2 == reverse(edge_1) &&
+ !(edge_1[1].type == NodeType.UserDemand || edge_1[2].type == NodeType.UserDemand)
+ # If so, these edges are both processed in this iteration
+ flow_rate += sign_2 * JuMP.value(F[edge_2])
+ skip = true
+ end
+
+ id_from = edge_metadata.edge[1]
+ id_to = edge_metadata.edge[2]
+
+ push!(record_flow.time, t)
+ push!(record_flow.edge_id, edge_metadata.id)
+ push!(record_flow.from_node_type, string(id_from.type))
+ push!(record_flow.from_node_id, Int32(id_from))
+ push!(record_flow.to_node_type, string(id_to.type))
+ push!(record_flow.to_node_id, Int32(id_to))
+ push!(record_flow.subnetwork_id, subnetwork_id)
+ push!(record_flow.priority, priority)
+ push!(record_flow.flow_rate, flow_rate)
+ push!(record_flow.optimization_type, string(optimization_type))
end
# Basin flows
- for node_id in graph[].node_ids[allocation_network_id]
- if node_id.type == NodeType.Basin
+ for node_id in graph[].node_ids[subnetwork_id]
+ if node_id.type == NodeType.Basin &&
+ has_external_demand(graph, node_id, :level_demand)[1]
flow_rate = JuMP.value(F_basin_out[node_id]) - JuMP.value(F_basin_in[node_id])
push!(record_flow.time, t)
push!(record_flow.edge_id, 0)
@@ -498,16 +903,119 @@ function save_allocation_flows!(
push!(record_flow.from_node_id, node_id)
push!(record_flow.to_node_type, string(NodeType.Basin))
push!(record_flow.to_node_id, node_id)
- push!(record_flow.subnetwork_id, allocation_network_id)
+ push!(record_flow.subnetwork_id, subnetwork_id)
push!(record_flow.priority, priority)
push!(record_flow.flow_rate, flow_rate)
- push!(record_flow.collect_demands, collect_demands)
+ push!(record_flow.optimization_type, string(optimization_type))
end
end
return nothing
end
+function allocate_priority!(
+ allocation_model::AllocationModel,
+ u::ComponentVector,
+ p::Parameters,
+ t::Float64,
+ priority_idx::Int,
+ optimization_type::OptimizationType.T,
+)::Nothing
+ (; problem) = allocation_model
+ (; allocation) = p
+ (; priorities) = allocation
+
+ set_capacities_flow_demand_outflow!(allocation_model, p, priority_idx)
+
+ # Set the objective depending on the demands
+ # A new objective function is set instead of modifying the coefficients
+ # of an existing objective function because this is not supported for
+ # quadratic terms:
+ # https://jump.dev/JuMP.jl/v1.16/manual/objective/#Modify-an-objective-coefficient
+ set_objective_priority!(allocation_model, p, u, t, priority_idx)
+
+ # Solve the allocation problem for this priority
+ JuMP.optimize!(problem)
+ @debug JuMP.solution_summary(problem)
+ if JuMP.termination_status(problem) !== JuMP.OPTIMAL
+ (; subnetwork_id) = allocation_model
+ priority = priorities[priority_idx]
+ error(
+ "Allocation of subnetwork $subnetwork_id, priority $priority coudn't find optimal solution.",
+ )
+ end
+
+ # Assign the allocations to the UserDemand for this priority
+ assign_allocations!(allocation_model, p, priority_idx, optimization_type)
+
+ # Save the demands and allocated flows for all nodes that have these
+ save_demands_and_allocations!(p, allocation_model, t, priority_idx)
+
+ # Save the flows over all edges in the subnetwork
+ save_allocation_flows!(
+ p,
+ t,
+ allocation_model,
+ priorities[priority_idx],
+ optimization_type,
+ )
+
+ # Adjust capacities for the optimization for the next priority
+ adjust_capacities_source!(allocation_model)
+ adjust_capacities_edge!(allocation_model)
+ adjust_capacities_basin!(allocation_model)
+ adjust_capacities_buffer!(allocation_model)
+ adjust_capacities_returnflow!(allocation_model, p)
+
+ # Adjust demands for next optimization (in case of internal_sources -> collect_demands)
+ adjust_demands_user!(allocation_model, p, priority_idx)
+ adjust_demands_level!(allocation_model, p)
+ adjust_demands_flow!(allocation_model, p)
+ return nothing
+end
+
+"""
+Set the initial capacities and demands which are recudes by usage in the
+adjust_capacities_*! and adjust_demands_*! functions respectively.
+"""
+function set_initial_values!(
+ allocation_model::AllocationModel,
+ p::Parameters,
+ u::ComponentVector,
+ t::Float64,
+)::Nothing
+ set_initial_capacities_source!(allocation_model, p)
+ set_initial_capacities_edge!(allocation_model, p)
+ set_initial_capacities_basin!(allocation_model, p, u, t)
+ set_initial_capacities_buffer!(allocation_model)
+ set_initial_capacities_returnflow!(allocation_model)
+
+ set_initial_demands_user!(allocation_model, p, t)
+ set_initial_demands_level!(allocation_model, u, p, t)
+ set_initial_demands_flow!(allocation_model, p, t)
+ return nothing
+end
+
+"""
+Set the capacities of all edges that denote a source to 0.0.
+"""
+function empty_sources!(allocation_model::AllocationModel, allocation::Allocation)::Nothing
+ (; problem) = allocation_model
+ (; subnetwork_demands) = allocation
+
+ for constraint_set_name in [:source, :source_user, :basin_outflow, :flow_buffer_outflow]
+ constraint_set = problem[constraint_set_name]
+ for key in only(constraint_set.axes)
+ # Do not set the capacity to 0.0 if the edge
+ # is a main to subnetwork connection edge
+ if key ∉ keys(subnetwork_demands)
+ JuMP.set_normalized_rhs(constraint_set[key], 0.0)
+ end
+ end
+ end
+ return nothing
+end
+
"""
Update the allocation optimization problem for the given subnetwork with the problem state
and flows, solve the allocation problem and assign the results to the UserDemand.
@@ -516,16 +1024,20 @@ function allocate!(
p::Parameters,
allocation_model::AllocationModel,
t::Float64,
- u::ComponentVector;
- collect_demands::Bool = false,
+ u::ComponentVector,
+ optimization_type::OptimizationType.T,
)::Nothing
(; allocation) = p
- (; problem, allocation_network_id) = allocation_model
+ (; subnetwork_id) = allocation_model
(; priorities, subnetwork_demands) = allocation
+ main_network_source_edges = get_main_network_connections(p, subnetwork_id)
- main_network_source_edges = get_main_network_connections(p, allocation_network_id)
+ if subnetwork_id == 1
+ @assert optimization_type == OptimizationType.allocate "For the main network no demands have to be collected"
+ end
- if collect_demands
+ # Reset the subnetwork demands to 0.0
+ if optimization_type == OptimizationType.collect_demands
for main_network_connection in keys(subnetwork_demands)
if main_network_connection in main_network_source_edges
subnetwork_demands[main_network_connection] .= 0.0
@@ -533,46 +1045,18 @@ function allocate!(
end
end
- for priority_idx in eachindex(priorities)
- adjust_source_capacities!(allocation_model, p, priority_idx; collect_demands)
-
- # Subtract the flows used by the allocation of the previous priority from the capacities of the edges
- # or set edge capacities if priority_idx = 1
- adjust_edge_capacities!(allocation_model, p, priority_idx)
-
- adjust_basin_capacities!(allocation_model, u, p, t, priority_idx)
-
- # Set the objective depending on the demands
- # A new objective function is set instead of modifying the coefficients
- # of an existing objective function because this is not supported for
- # quadratic terms:
- # https://jump.dev/JuMP.jl/v1.16/manual/objective/#Modify-an-objective-coefficient
- set_objective_priority!(allocation_model, p, u, t, priority_idx)
-
- # Solve the allocation problem for this priority
- JuMP.optimize!(problem)
- @debug JuMP.solution_summary(problem)
- if JuMP.termination_status(problem) !== JuMP.OPTIMAL
- (; allocation_network_id) = allocation_model
- priority = priorities[priority_idx]
- error(
- "Allocation of subnetwork $allocation_network_id, priority $priority coudn't find optimal solution.",
- )
- end
-
- # Assign the allocations to the UserDemand for this priority
- assign_allocations!(allocation_model, p, priority_idx; collect_demands)
+ set_initial_capacities_inlet!(allocation_model, p, optimization_type)
- # Save the demands and allocated flows for all nodes that have these
- save_demands_and_allocations!(p, allocation_model, t, priority_idx)
+ if optimization_type == OptimizationType.collect_demands
+ # When collecting demands, only flow should be available
+ # from the main to subnetwork connections
+ empty_sources!(allocation_model, allocation)
+ else
+ set_initial_values!(allocation_model, p, u, t)
+ end
- # Save the flows over all edges in the subnetwork
- save_allocation_flows!(
- p,
- t,
- allocation_model,
- priorities[priority_idx],
- collect_demands,
- )
+ # Loop over the priorities
+ for priority_idx in eachindex(priorities)
+ allocate_priority!(allocation_model, u, p, t, priority_idx, optimization_type)
end
end
diff --git a/core/src/bmi.jl b/core/src/bmi.jl
index 39a77afb7..d598722f8 100644
--- a/core/src/bmi.jl
+++ b/core/src/bmi.jl
@@ -17,33 +17,36 @@ function BMI.update(model::Model)::Model
return model
end
-function BMI.update_until(model::Model, time)::Model
- integrator = model.integrator
- t = integrator.t
+function BMI.update_until(model::Model, time::Float64)::Model
+ (; t) = model.integrator
dt = time - t
if dt < 0
error("The model has already passed the given timestamp.")
elseif dt == 0
return model
else
- step!(integrator, dt, true)
+ step!(model, dt)
end
return model
end
-function BMI.get_value_ptr(model::Model, name::AbstractString)
+function BMI.get_value_ptr(model::Model, name::AbstractString)::AbstractVector{Float64}
if name == "basin.storage"
model.integrator.u.storage
elseif name == "basin.level"
get_tmp(model.integrator.p.basin.current_level, 0)
elseif name == "basin.infiltration"
- model.integrator.p.basin.infiltration
+ model.integrator.p.basin.vertical_flux_from_input.infiltration
elseif name == "basin.drainage"
- model.integrator.p.basin.drainage
+ model.integrator.p.basin.vertical_flux_from_input.drainage
+ elseif name == "basin.infiltration_integrated"
+ model.integrator.p.basin.vertical_flux_bmi.infiltration
+ elseif name == "basin.drainage_integrated"
+ model.integrator.p.basin.vertical_flux_bmi.drainage
elseif name == "basin.subgrid_level"
model.integrator.p.subgrid.level
elseif name == "user_demand.demand"
- model.integrator.p.user_demand.demand
+ vec(model.integrator.p.user_demand.demand)
elseif name == "user_demand.realized"
model.integrator.p.user_demand.realized_bmi
else
diff --git a/core/src/callback.jl b/core/src/callback.jl
index 0a29e8208..74ae2b345 100644
--- a/core/src/callback.jl
+++ b/core/src/callback.jl
@@ -1,26 +1,3 @@
-"""
-Set parameters of nodes that are controlled by DiscreteControl to the
-values corresponding to the initial state of the model.
-"""
-function set_initial_discrete_controlled_parameters!(
- integrator,
- storage0::Vector{Float64},
-)::Nothing
- (; p) = integrator
- (; discrete_control) = p
-
- n_conditions = length(discrete_control.condition_value)
- condition_diffs = zeros(Float64, n_conditions)
- discrete_control_condition(condition_diffs, storage0, integrator.t, integrator)
- discrete_control.condition_value .= (condition_diffs .> 0.0)
-
- # For every discrete_control node find a condition_idx it listens to
- for discrete_control_node_id in unique(discrete_control.node_id)
- condition_idx =
- searchsortedfirst(discrete_control.node_id, discrete_control_node_id)
- discrete_control_affect!(integrator, condition_idx, missing)
- end
-end
"""
Create the different callbacks that are used to store results
@@ -36,36 +13,35 @@ function create_callbacks(
(; starttime, basin, tabulated_rating_curve, discrete_control) = parameters
callbacks = SciMLBase.DECallback[]
- tstops = get_tstops(basin.time.time, starttime)
- basin_cb = PresetTimeCallback(tstops, update_basin)
- push!(callbacks, basin_cb)
+ negative_storage_cb = FunctionCallingCallback(check_negative_storage)
+ push!(callbacks, negative_storage_cb)
integrating_flows_cb = FunctionCallingCallback(integrate_flows!; func_start = false)
push!(callbacks, integrating_flows_cb)
+ tstops = get_tstops(basin.time.time, starttime)
+ basin_cb = PresetTimeCallback(tstops, update_basin; save_positions = (false, false))
+ push!(callbacks, basin_cb)
+
tstops = get_tstops(tabulated_rating_curve.time.time, starttime)
- tabulated_rating_curve_cb = PresetTimeCallback(tstops, update_tabulated_rating_curve!)
+ tabulated_rating_curve_cb = PresetTimeCallback(
+ tstops,
+ update_tabulated_rating_curve!;
+ save_positions = (false, false),
+ )
push!(callbacks, tabulated_rating_curve_cb)
- if config.allocation.use_allocation
- allocation_cb = PeriodicCallback(
- update_allocation!,
- config.allocation.timestep;
- initial_affect = false,
- )
- push!(callbacks, allocation_cb)
- end
-
- # save the flows over time, as a Vector of the nonzeros(flow)
- saved_flow = SavedValues(Float64, Vector{Float64})
- save_flow_cb = SavingCallback(
- save_flow,
- saved_flow;
- # If saveat is a vector which contains 0.0 this callback will still be called
- # at t = 0.0 despite save_start = false
- saveat = saveat isa Vector ? filter(x -> x != 0.0, saveat) : saveat,
- save_start = false,
- )
+ # If saveat is a vector which contains 0.0 this callback will still be called
+ # at t = 0.0 despite save_start = false
+ saveat = saveat isa Vector ? filter(x -> x != 0.0, saveat) : saveat
+ saved_vertical_flux = SavedValues(Float64, typeof(basin.vertical_flux_integrated))
+ save_vertical_flux_cb =
+ SavingCallback(save_vertical_flux, saved_vertical_flux; saveat, save_start = false)
+ push!(callbacks, save_vertical_flux_cb)
+
+ # save the flows over time
+ saved_flow = SavedValues(Float64, SavedFlow)
+ save_flow_cb = SavingCallback(save_flow, saved_flow; saveat, save_start = false)
push!(callbacks, save_flow_cb)
# interpolate the levels
@@ -80,16 +56,11 @@ function create_callbacks(
push!(callbacks, export_cb)
end
- saved = SavedResults(saved_flow, saved_subgrid_level)
+ saved = SavedResults(saved_flow, saved_vertical_flux, saved_subgrid_level)
- n_conditions = length(discrete_control.node_id)
+ n_conditions = sum(length(vec) for vec in discrete_control.greater_than; init = 0)
if n_conditions > 0
- discrete_control_cb = VectorContinuousCallback(
- discrete_control_condition,
- discrete_control_affect_upcrossing!,
- discrete_control_affect_downcrossing!,
- n_conditions,
- )
+ discrete_control_cb = FunctionCallingCallback(apply_discrete_control!)
push!(callbacks, discrete_control_cb)
end
callback = CallbackSet(callbacks...)
@@ -97,62 +68,170 @@ function create_callbacks(
return callback, saved
end
+function check_negative_storage(u, t, integrator)::Nothing
+ (; basin) = integrator.p
+ (; node_id) = basin
+ errors = false
+ for (i, id) in enumerate(node_id)
+ if u.storage[i] < 0
+ @error "Negative storage detected in $id"
+ errors = true
+ end
+ end
+
+ if errors
+ t_datetime = datetime_since(integrator.t, integrator.p.starttime)
+ error("Negative storages found at $t_datetime.")
+ end
+ return nothing
+end
+
"""
Integrate flows over the last timestep
"""
function integrate_flows!(u, t, integrator)::Nothing
(; p, dt) = integrator
- (; graph, user_demand) = p
- (;
- flow,
- flow_dict,
- flow_vertical,
- flow_prev,
- flow_vertical_prev,
- flow_integrated,
- flow_vertical_integrated,
- ) = graph[]
+ (; graph, user_demand, basin, allocation) = p
+ (; flow, flow_dict, flow_prev, flow_integrated) = graph[]
+ (; vertical_flux, vertical_flux_prev, vertical_flux_integrated, vertical_flux_bmi) =
+ basin
flow = get_tmp(flow, 0)
- flow_vertical = get_tmp(flow_vertical, 0)
-
+ vertical_flux = get_tmp(vertical_flux, 0)
if !isempty(flow_prev) && isnan(flow_prev[1])
# If flow_prev is not populated yet
copyto!(flow_prev, flow)
- copyto!(flow_vertical_prev, flow_vertical)
end
@. flow_integrated += 0.5 * (flow + flow_prev) * dt
- @. flow_vertical_integrated += 0.5 * (flow_vertical + flow_vertical_prev) * dt
+ @. vertical_flux_integrated += 0.5 * (vertical_flux + vertical_flux_prev) * dt
+ @. vertical_flux_bmi += 0.5 * (vertical_flux + vertical_flux_prev) * dt
+ # UserDemand realized flows for BMI
for (i, id) in enumerate(user_demand.node_id)
src_id = inflow_id(graph, id)
flow_idx = flow_dict[src_id, id]
user_demand.realized_bmi[i] += 0.5 * (flow[flow_idx] + flow_prev[flow_idx]) * dt
end
+ # Allocation source flows
+ for (edge, value) in allocation.mean_flows
+ if edge[1] == edge[2]
+ # Vertical fluxes
+ _, basin_idx = id_index(basin.node_id, edge[1])
+ value[] +=
+ 0.5 *
+ (get_influx(basin, basin_idx) + get_influx(basin, basin_idx; prev = true)) *
+ dt
+ else
+ # Horizontal flows
+ value[] +=
+ 0.5 *
+ (get_flow(graph, edge..., 0) + get_flow(graph, edge..., 0; prev = true)) *
+ dt
+ end
+ end
+
copyto!(flow_prev, flow)
- copyto!(flow_vertical_prev, flow_vertical)
+ copyto!(vertical_flux_prev, vertical_flux)
return nothing
end
+"Compute the average flows over the last saveat interval and write
+them to SavedValues"
+function save_flow(u, t, integrator)
+ (; graph) = integrator.p
+ (; flow_integrated, flow_dict) = graph[]
+ (; node_id) = integrator.p.basin
+
+ Δt = get_Δt(integrator)
+ flow_mean = copy(flow_integrated)
+ flow_mean ./= Δt
+ fill!(flow_integrated, 0.0)
+
+ # Divide the flows over edges to Basin inflow and outflow, regardless of edge direction.
+ inflow_mean = zeros(length(node_id))
+ outflow_mean = zeros(length(node_id))
+
+ for (i, basin_id) in enumerate(node_id)
+ for inflow_id in inflow_ids(graph, basin_id)
+ q = flow_mean[flow_dict[inflow_id, basin_id]]
+ if q > 0
+ inflow_mean[i] += q
+ else
+ outflow_mean[i] -= q
+ end
+ end
+ for outflow_id in outflow_ids(graph, basin_id)
+ q = flow_mean[flow_dict[basin_id, outflow_id]]
+ if q > 0
+ outflow_mean[i] += q
+ else
+ inflow_mean[i] -= q
+ end
+ end
+ end
+
+ return SavedFlow(; flow = flow_mean, inflow = inflow_mean, outflow = outflow_mean)
+end
+
+"Compute the average vertical fluxes over the last saveat interval and write
+them to SavedValues"
+function save_vertical_flux(u, t, integrator)
+ (; basin) = integrator.p
+ (; vertical_flux_integrated) = basin
+
+ Δt = get_Δt(integrator)
+ vertical_flux_mean = copy(vertical_flux_integrated)
+ vertical_flux_mean ./= Δt
+ fill!(vertical_flux_integrated, 0.0)
+
+ return vertical_flux_mean
+end
+
+function apply_discrete_control!(u, t, integrator)::Nothing
+ (; p) = integrator
+ (; discrete_control) = p
+ condition_idx = 0
+
+ discrete_control_condition!(u, t, integrator)
+
+ # For every compound variable see whether it changes a control state
+ for compound_variable_idx in eachindex(discrete_control.node_id)
+ discrete_control_affect!(integrator, compound_variable_idx)
+ end
+end
+
"""
-Listens for changes in condition truths.
+Update discrete control condition truths.
"""
-function discrete_control_condition(out, u, t, integrator)
+function discrete_control_condition!(u, t, integrator)
(; p) = integrator
(; discrete_control) = p
- for (i, (listen_node_id, variable, greater_than, look_ahead)) in enumerate(
- zip(
- discrete_control.listen_node_id,
- discrete_control.variable,
- discrete_control.greater_than,
- discrete_control.look_ahead,
- ),
+ # Loop over compound variables
+ for (
+ listen_node_ids,
+ variables,
+ weights,
+ greater_thans,
+ look_aheads,
+ condition_values,
+ ) in zip(
+ discrete_control.listen_node_id,
+ discrete_control.variable,
+ discrete_control.weight,
+ discrete_control.greater_than,
+ discrete_control.look_ahead,
+ discrete_control.condition_value,
)
- value = get_value(p, listen_node_id, variable, look_ahead, u, t)
- diff = value - greater_than
- out[i] = diff
+ value = 0.0
+ for (listen_node_id, variable, weight, look_ahead) in
+ zip(listen_node_ids, variables, weights, look_aheads)
+ value += weight * get_value(p, listen_node_id, variable, look_ahead, u, t)
+ end
+
+ condition_values .= false
+ condition_values[1:searchsortedlast(greater_thans, value)] .= true
end
end
@@ -172,7 +251,10 @@ function get_value(
if variable == "level"
if node_id.type == NodeType.Basin
- _, basin_idx = id_index(basin.node_id, node_id)
+ has_index, basin_idx = id_index(basin.node_id, node_id)
+ if !has_index
+ error("Discrete control listen node $node_id does not exist.")
+ end
_, level = get_area_and_level(basin, basin_idx, u[basin_idx])
elseif node_id.type == NodeType.LevelBoundary
level_boundary_idx = findsorted(level_boundary.node_id, node_id)
@@ -199,140 +281,47 @@ function get_value(
return value
end
-"""
-An upcrossing means that a condition (always greater than) becomes true.
-"""
-function discrete_control_affect_upcrossing!(integrator, condition_idx)
- (; p, u, t) = integrator
- (; discrete_control, basin) = p
- (; variable, condition_value, listen_node_id) = discrete_control
-
- condition_value[condition_idx] = true
-
- control_state_change = discrete_control_affect!(integrator, condition_idx, true)
-
- # Check whether the control state change changed the direction of the crossing
- # NOTE: This works for level conditions, but not for flow conditions on an
- # arbitrary edge. That is because parameter changes do not change the instantaneous level,
- # only possibly the du. Parameter changes can change the flow on an edge discontinuously,
- # giving the possibility of logical paradoxes where certain parameter changes immediately
- # undo the truth state that caused that parameter change.
- is_basin = id_index(basin.node_id, discrete_control.listen_node_id[condition_idx])[1]
- # NOTE: The above no longer works when listen feature ids can be something other than node ids
- # I think the more durable option is to give all possible condition types a different variable string,
- # e.g. basin.level and level_boundary.level
- if variable[condition_idx] == "level" && control_state_change && is_basin
- # Calling water_balance is expensive, but it is a sure way of getting
- # du for the basin of this level condition
- du = zero(u)
- water_balance!(du, u, p, t)
- _, condition_basin_idx = id_index(basin.node_id, listen_node_id[condition_idx])
-
- if du[condition_basin_idx] < 0.0
- condition_value[condition_idx] = false
- discrete_control_affect!(integrator, condition_idx, false)
- end
- end
-end
-
-"""
-An downcrossing means that a condition (always greater than) becomes false.
-"""
-function discrete_control_affect_downcrossing!(integrator, condition_idx)
- (; p, u, t) = integrator
- (; discrete_control, basin) = p
- (; variable, condition_value, listen_node_id) = discrete_control
-
- condition_value[condition_idx] = false
-
- control_state_change = discrete_control_affect!(integrator, condition_idx, false)
-
- # Check whether the control state change changed the direction of the crossing
- # NOTE: This works for level conditions, but not for flow conditions on an
- # arbitrary edge. That is because parameter changes do not change the instantaneous level,
- # only possibly the du. Parameter changes can change the flow on an edge discontinuously,
- # giving the possibility of logical paradoxes where certain parameter changes immediately
- # undo the truth state that caused that parameter change.
- if variable[condition_idx] == "level" && control_state_change
- # Calling water_balance is expensive, but it is a sure way of getting
- # du for the basin of this level condition
- du = zero(u)
- water_balance!(du, u, p, t)
- has_index, condition_basin_idx =
- id_index(basin.node_id, listen_node_id[condition_idx])
-
- if has_index && du[condition_basin_idx] > 0.0
- condition_value[condition_idx] = true
- discrete_control_affect!(integrator, condition_idx, true)
- end
- end
-end
-
"""
Change parameters based on the control logic.
"""
-function discrete_control_affect!(
- integrator,
- condition_idx::Int,
- upcrossing::Union{Bool, Missing},
-)::Bool
+function discrete_control_affect!(integrator, compound_variable_idx)
p = integrator.p
(; discrete_control, graph) = p
- # Get the discrete_control node that listens to this condition
- discrete_control_node_id = discrete_control.node_id[condition_idx]
+ # Get the discrete_control node to which this compound variable belongs
+ discrete_control_node_id = discrete_control.node_id[compound_variable_idx]
# Get the indices of all conditions that this control node listens to
- condition_ids = discrete_control.node_id .== discrete_control_node_id
+ where_node_id = searchsorted(discrete_control.node_id, discrete_control_node_id)
# Get the truth state for this discrete_control node
- truth_values = [ifelse(b, "T", "F") for b in discrete_control.condition_value]
- truth_state = join(truth_values[condition_ids], "")
-
- # Get the truth specific about the latest crossing
- if !ismissing(upcrossing)
- truth_values[condition_idx] = upcrossing ? "U" : "D"
- end
- truth_state_crossing_specific = join(truth_values[condition_ids], "")
+ truth_values = cat(
+ [
+ [ifelse(b, "T", "F") for b in discrete_control.condition_value[i]] for
+ i in where_node_id
+ ]...;
+ dims = 1,
+ )
+ truth_state = join(truth_values, "")
# What the local control state should be
control_state_new =
- if haskey(
- discrete_control.logic_mapping,
- (discrete_control_node_id, truth_state_crossing_specific),
- )
- truth_state_used = truth_state_crossing_specific
- discrete_control.logic_mapping[(
- discrete_control_node_id,
- truth_state_crossing_specific,
- )]
- elseif haskey(
- discrete_control.logic_mapping,
- (discrete_control_node_id, truth_state),
- )
- truth_state_used = truth_state
+ if haskey(discrete_control.logic_mapping, (discrete_control_node_id, truth_state))
discrete_control.logic_mapping[(discrete_control_node_id, truth_state)]
else
error(
- "Control state specified for neither $truth_state_crossing_specific nor $truth_state for DiscreteControl node $discrete_control_node_id.",
+ "No control state specified for $discrete_control_node_id for truth state $truth_state.",
)
end
- # What the local control state is
- # TODO: Check time elapsed since control change
control_state_now, _ = discrete_control.control_state[discrete_control_node_id]
-
- control_state_change = false
-
if control_state_now != control_state_new
- control_state_change = true
-
# Store control action in record
record = discrete_control.record
push!(record.time, integrator.t)
push!(record.control_node_id, Int32(discrete_control_node_id))
- push!(record.truth_state, truth_state_used)
+ push!(record.truth_state, truth_state)
push!(record.control_state, control_state_new)
# Loop over nodes which are under control of this control node
@@ -344,15 +333,15 @@ function discrete_control_affect!(
discrete_control.control_state[discrete_control_node_id] =
(control_state_new, integrator.t)
end
- return control_state_change
+ return nothing
end
-function get_allocation_model(p::Parameters, allocation_network_id::Int32)::AllocationModel
+function get_allocation_model(p::Parameters, subnetwork_id::Int32)::AllocationModel
(; allocation) = p
- (; allocation_network_ids, allocation_models) = allocation
- idx = findsorted(allocation_network_ids, allocation_network_id)
+ (; subnetwork_ids, allocation_models) = allocation
+ idx = findsorted(subnetwork_ids, subnetwork_id)
if isnothing(idx)
- error("Invalid allocation network ID $allocation_network_id.")
+ error("Invalid allocation network ID $subnetwork_id.")
else
return allocation_models[idx]
end
@@ -360,13 +349,13 @@ end
function get_main_network_connections(
p::Parameters,
- allocation_network_id::Int32,
+ subnetwork_id::Int32,
)::Vector{Tuple{NodeID, NodeID}}
(; allocation) = p
- (; allocation_network_ids, main_network_connections) = allocation
- idx = findsorted(allocation_network_ids, allocation_network_id)
+ (; subnetwork_ids, main_network_connections) = allocation
+ idx = findsorted(subnetwork_ids, subnetwork_id)
if isnothing(idx)
- error("Invalid allocation network ID $allocation_network_id.")
+ error("Invalid allocation network ID $subnetwork_id.")
else
return main_network_connections[idx]
end
@@ -383,9 +372,9 @@ function set_fractional_flow_in_allocation!(
)::Nothing
(; graph) = p
- allocation_network_id = graph[node_id].allocation_network_id
+ subnetwork_id = graph[node_id].subnetwork_id
# Get the allocation model this fractional flow node is in
- allocation_model = get_allocation_model(p, allocation_network_id)
+ allocation_model = get_allocation_model(p, subnetwork_id)
if !isnothing(allocation_model)
problem = allocation_model.problem
# The allocation edge which jumps over the fractional flow node
@@ -424,36 +413,6 @@ function set_control_params!(p::Parameters, node_id::NodeID, control_state::Stri
end
end
-"Compute the average flows over the last saveat interval and write
-them to SavedValues"
-function save_flow(u, t, integrator)
- (; dt, p) = integrator
- (; graph) = p
- (; flow_integrated, flow_vertical_integrated, saveat) = graph[]
-
- Δt = if iszero(saveat)
- dt
- elseif isinf(saveat)
- t
- else
- t_end = integrator.sol.prob.tspan[2]
- if t_end - t > saveat
- saveat
- else
- # The last interval might be shorter than saveat
- rem = t % saveat
- iszero(rem) ? saveat : rem
- end
- end
-
- mean_flow_all = vcat(flow_vertical_integrated, flow_integrated)
- mean_flow_all ./= Δt
- fill!(flow_vertical_integrated, 0.0)
- fill!(flow_integrated, 0.0)
-
- return mean_flow_all
-end
-
function update_subgrid_level!(integrator)::Nothing
basin_level = get_tmp(integrator.p.basin.current_level, 0)
subgrid = integrator.p.subgrid
@@ -470,18 +429,21 @@ end
"Load updates from 'Basin / time' into the parameters"
function update_basin(integrator)::Nothing
- (; basin) = integrator.p
- (; node_id, time) = basin
+ (; p, u) = integrator
+ (; basin) = p
+ (; storage) = u
+ (; node_id, time, vertical_flux_from_input, vertical_flux, vertical_flux_prev) = basin
t = datetime_since(integrator.t, integrator.p.starttime)
+ vertical_flux = get_tmp(vertical_flux, integrator.u)
rows = searchsorted(time.time, t)
timeblock = view(time, rows)
table = (;
- basin.precipitation,
- basin.potential_evaporation,
- basin.drainage,
- basin.infiltration,
+ vertical_flux_from_input.precipitation,
+ vertical_flux_from_input.potential_evaporation,
+ vertical_flux_from_input.drainage,
+ vertical_flux_from_input.infiltration,
)
for row in timeblock
@@ -490,6 +452,10 @@ function update_basin(integrator)::Nothing
set_table_row!(table, row, i)
end
+ update_vertical_flux!(basin, storage)
+
+ # Forget about vertical fluxes to handle discontinuous forcing from basin_update
+ copyto!(vertical_flux_prev, vertical_flux)
return nothing
end
@@ -497,12 +463,27 @@ end
function update_allocation!(integrator)::Nothing
(; p, t, u) = integrator
(; allocation) = p
- (; allocation_models) = allocation
+ (; allocation_models, mean_flows) = allocation
+
+ # Don't run the allocation algorithm if allocation is not active
+ # (Specifically for running Ribasim via the BMI)
+ if !is_active(allocation)
+ return nothing
+ end
+
+ (; Δt_allocation) = allocation_models[1]
+
+ # Divide by the allocation Δt to obtain the mean flows
+ # from the integrated flows
+ for value in values(mean_flows)
+ value[] /= Δt_allocation
+ end
# If a main network is present, collect demands of subnetworks
if has_main_network(allocation)
for allocation_model in Iterators.drop(allocation_models, 1)
- allocate!(p, allocation_model, t, u; collect_demands = true)
+ allocate!(p, allocation_model, t, u, OptimizationType.internal_sources)
+ allocate!(p, allocation_model, t, u, OptimizationType.collect_demands)
end
end
@@ -510,7 +491,12 @@ function update_allocation!(integrator)::Nothing
# If a main network is present this is solved first,
# which provides allocation to the subnetworks
for allocation_model in allocation_models
- allocate!(p, allocation_model, t, u)
+ allocate!(p, allocation_model, t, u, OptimizationType.allocate)
+ end
+
+ # Reset the mean source flows
+ for value in values(mean_flows)
+ value[] = 0.0
end
end
diff --git a/core/src/config.jl b/core/src/config.jl
index 1c0020369..07c9aa78c 100644
--- a/core/src/config.jl
+++ b/core/src/config.jl
@@ -113,13 +113,14 @@ end
end
@option struct Allocation <: TableOption
- timestep::Union{Float64, Nothing} = nothing
+ timestep::Float64 = 86400
use_allocation::Bool = false
end
@option @addnodetypes struct Toml <: TableOption
starttime::DateTime
endtime::DateTime
+ crs::String
ribasim_version::String
input_dir::String
results_dir::String
diff --git a/core/src/graph.jl b/core/src/graph.jl
index 007e67fab..edcd8f3cd 100644
--- a/core/src/graph.jl
+++ b/core/src/graph.jl
@@ -16,18 +16,12 @@ function create_graph(db::DB, config::Config, chunk_sizes::Vector{Int})::MetaGra
)
# Node IDs per subnetwork
node_ids = Dict{Int32, Set{NodeID}}()
- # Allocation edges per subnetwork
- edge_ids = Dict{Int32, Set{Tuple{NodeID, NodeID}}}()
# Source edges per subnetwork
edges_source = Dict{Int32, Set{EdgeMetadata}}()
# The number of flow edges
flow_counter = 0
# Dictionary from flow edge to index in flow vector
flow_dict = Dict{Tuple{NodeID, NodeID}, Int}()
- # The number of nodes with vertical flow (interaction with outside of model)
- flow_vertical_counter = 0
- # Dictionary from node ID to index in vertical flow vector
- flow_vertical_dict = Dict{NodeID, Int}()
graph = MetaGraph(
DiGraph();
label_type = NodeID,
@@ -39,21 +33,18 @@ function create_graph(db::DB, config::Config, chunk_sizes::Vector{Int})::MetaGra
node_id = NodeID(row.node_type, row.node_id)
# Process allocation network ID
if ismissing(row.subnetwork_id)
- allocation_network_id = 0
+ subnetwork_id = 0
else
- allocation_network_id = row.subnetwork_id
- if !haskey(node_ids, allocation_network_id)
- node_ids[allocation_network_id] = Set{NodeID}()
+ subnetwork_id = row.subnetwork_id
+ if !haskey(node_ids, subnetwork_id)
+ node_ids[subnetwork_id] = Set{NodeID}()
end
- push!(node_ids[allocation_network_id], node_id)
- end
- graph[node_id] =
- NodeMetadata(Symbol(snake_case(row.node_type)), allocation_network_id)
- if row.node_type in nonconservative_nodetypes
- flow_vertical_counter += 1
- flow_vertical_dict[node_id] = flow_vertical_counter
+ push!(node_ids[subnetwork_id], node_id)
end
+ graph[node_id] = NodeMetadata(Symbol(snake_case(row.node_type)), subnetwork_id)
end
+
+ errors = false
for (;
fid,
from_node_type,
@@ -74,8 +65,11 @@ function create_graph(db::DB, config::Config, chunk_sizes::Vector{Int})::MetaGra
if ismissing(subnetwork_id)
subnetwork_id = 0
end
- edge_metadata =
- EdgeMetadata(fid, edge_type, subnetwork_id, id_src, id_dst, false, NodeID[])
+ edge_metadata = EdgeMetadata(fid, edge_type, subnetwork_id, (id_src, id_dst))
+ if haskey(graph, id_src, id_dst)
+ errors = true
+ @error "Duplicate edge" id_src id_dst
+ end
graph[id_src, id_dst] = edge_metadata
if edge_type == EdgeType.flow
flow_counter += 1
@@ -88,6 +82,9 @@ function create_graph(db::DB, config::Config, chunk_sizes::Vector{Int})::MetaGra
push!(edges_source[subnetwork_id], edge_metadata)
end
end
+ if errors
+ error("Invalid edges found")
+ end
if incomplete_subnetwork(graph, node_ids)
error("Incomplete connectivity in subnetwork")
@@ -96,25 +93,16 @@ function create_graph(db::DB, config::Config, chunk_sizes::Vector{Int})::MetaGra
flow = zeros(flow_counter)
flow_prev = fill(NaN, flow_counter)
flow_integrated = zeros(flow_counter)
- flow_vertical = zeros(flow_vertical_counter)
- flow_vertical_prev = fill(NaN, flow_vertical_counter)
- flow_vertical_integrated = zeros(flow_vertical_counter)
if config.solver.autodiff
flow = DiffCache(flow, chunk_sizes)
- flow_vertical = DiffCache(flow_vertical, chunk_sizes)
end
graph_data = (;
node_ids,
- edge_ids,
edges_source,
flow_dict,
flow,
flow_prev,
flow_integrated,
- flow_vertical_dict,
- flow_vertical,
- flow_vertical_prev,
- flow_vertical_integrated,
config.solver.saveat,
)
graph = @set graph.graph_data = graph_data
@@ -186,47 +174,19 @@ function set_flow!(graph::MetaGraph, id_src::NodeID, id_dst::NodeID, q::Number):
return nothing
end
-"""
-Set the given flow q on the horizontal (self-loop) edge from id to id.
-"""
-function set_flow!(graph::MetaGraph, id::NodeID, q::Number)::Nothing
- (; flow_vertical_dict, flow_vertical) = graph[]
- get_tmp(flow_vertical, q)[flow_vertical_dict[id]] = q
- return nothing
-end
-
-"""
-Add the given flow q to the existing flow over the edge between the given nodes.
-"""
-function add_flow!(graph::MetaGraph, id_src::NodeID, id_dst::NodeID, q::Number)::Nothing
- (; flow_dict, flow) = graph[]
- get_tmp(flow, q)[flow_dict[(id_src, id_dst)]] += q
- return nothing
-end
-
-"""
-Add the given flow q to the flow over the edge on the horizontal (self-loop) edge from id to id.
-"""
-function add_flow!(graph::MetaGraph, id::NodeID, q::Number)::Nothing
- (; flow_vertical_dict, flow_vertical) = graph[]
- get_tmp(flow_vertical, q)[flow_vertical_dict[id]] += q
- return nothing
-end
-
"""
Get the flow over the given edge (val is needed for get_tmp from ForwardDiff.jl).
"""
-function get_flow(graph::MetaGraph, id_src::NodeID, id_dst::NodeID, val)::Number
- (; flow_dict, flow) = graph[]
- return get_tmp(flow, val)[flow_dict[id_src, id_dst]]
-end
-
-"""
-Get the flow over the given horizontal (selfloop) edge (val is needed for get_tmp from ForwardDiff.jl).
-"""
-function get_flow(graph::MetaGraph, id::NodeID, val)::Number
- (; flow_vertical_dict, flow_vertical) = graph[]
- return get_tmp(flow_vertical, val)[flow_vertical_dict[id]]
+function get_flow(
+ graph::MetaGraph,
+ id_src::NodeID,
+ id_dst::NodeID,
+ val;
+ prev::Bool = false,
+)::Number
+ (; flow_dict, flow, flow_prev) = graph[]
+ flow_vector = prev ? flow_prev : flow
+ return get_tmp(flow_vector, val)[flow_dict[id_src, id_dst]]
end
"""
diff --git a/core/src/libribasim.jl b/core/src/libribasim.jl
index e8af88f50..73069973d 100644
--- a/core/src/libribasim.jl
+++ b/core/src/libribasim.jl
@@ -186,6 +186,10 @@ Base.@ccallable function get_last_bmi_error(error_message::Cstring)::Cint
end
end
+Base.@ccallable function execute(toml_path::Cstring)::Cint
+ Ribasim.main(unsafe_string(toml_path))
+end
+
Base.@ccallable function get_value_ptr_double(
name::Cstring,
value_ptr::Ptr{Ptr{Cvoid}},
diff --git a/core/src/main.jl b/core/src/main.jl
index 78d4823ad..1818d1394 100644
--- a/core/src/main.jl
+++ b/core/src/main.jl
@@ -14,15 +14,6 @@ function run(config::Config)::Model
return model
end
-function help(x::AbstractString)::Cint
- println(x)
- println("Usage: ribasim path/to/model/ribasim.toml")
- return 1
-end
-
-main(toml_path::AbstractString)::Cint = main([toml_path])
-main()::Cint = main(ARGS)
-
"""
main(toml_path::AbstractString)::Cint
main(ARGS::Vector{String})::Cint
@@ -32,30 +23,13 @@ This is the main entry point of the application.
Performs argument parsing and sets up logging for both terminal and file.
Calls Ribasim.run() and handles exceptions to convert to exit codes.
"""
-function main(ARGS::Vector{String})::Cint
- n = length(ARGS)
- if n != 1
- return help("Exactly 1 argument expected, got $n")
- end
- arg = only(ARGS)
-
- if arg == "--version"
- version = pkgversion(Ribasim)
- print(version)
- return 0
- end
-
- if !isfile(arg)
- return help("File not found: $arg")
- end
-
+function main(toml_path::AbstractString)::Cint
try
# show progress bar in terminal
- config = Config(arg)
+ config = Config(toml_path)
mkpath(results_path(config, "."))
open(results_path(config, "ribasim.log"), "w") do io
- logger =
- Ribasim.setup_logger(; verbosity = config.logging.verbosity, stream = io)
+ logger = setup_logger(; verbosity = config.logging.verbosity, stream = io)
with_logger(logger) do
cli = (; ribasim_version = string(pkgversion(Ribasim)))
(; starttime, endtime) = config
@@ -63,13 +37,13 @@ function main(ARGS::Vector{String})::Cint
@warn "The Ribasim version in the TOML config file does not match the used Ribasim CLI version." config.ribasim_version cli.ribasim_version
end
@info "Starting a Ribasim simulation." cli.ribasim_version starttime endtime
- model = Ribasim.run(config)
+ model = run(config)
if successful_retcode(model)
@info "The model finished successfully"
return 0
end
- t = Ribasim.datetime_since(model.integrator.t, starttime)
+ t = datetime_since(model.integrator.t, starttime)
retcode = model.integrator.sol.retcode
@error "The model exited at model time $t with return code $retcode.\nSee https://docs.sciml.ai/DiffEqDocs/stable/basics/solution/#retcodes"
return 1
diff --git a/core/src/model.jl b/core/src/model.jl
index 009cd80c2..602503dd6 100644
--- a/core/src/model.jl
+++ b/core/src/model.jl
@@ -1,5 +1,6 @@
-struct SavedResults
- flow::SavedValues{Float64, Vector{Float64}}
+struct SavedResults{V1 <: ComponentVector{Float64}}
+ flow::SavedValues{Float64, SavedFlow}
+ vertical_flux::SavedValues{Float64, V1}
subgrid_level::SavedValues{Float64, Vector{Float64}}
end
@@ -28,6 +29,9 @@ end
function Model(config_path::AbstractString)::Model
config = Config(config_path)
+ if !valid_config(config)
+ error("Invalid configuration in TOML.")
+ end
return Model(config)
end
@@ -74,17 +78,31 @@ function Model(config::Config)::Model
end
# tell the solver to stop when new data comes in
- # TODO add all time tables here
- time_flow_boundary = load_structvector(db, config, FlowBoundaryTimeV1)
tstops = Vector{Float64}[]
- push!(tstops, get_tstops(time_flow_boundary.time, config.starttime))
- time_user_demand = load_structvector(db, config, UserDemandTimeV1)
- push!(tstops, get_tstops(time_user_demand.time, config.starttime))
+ for schema_version in [
+ FlowBoundaryTimeV1,
+ LevelBoundaryTimeV1,
+ UserDemandTimeV1,
+ LevelDemandTimeV1,
+ FlowDemandTimeV1,
+ TabulatedRatingCurveTimeV1,
+ PidControlTimeV1,
+ ]
+ time_schema = load_structvector(db, config, schema_version)
+ push!(tstops, get_tstops(time_schema.time, config.starttime))
+ end
# use state
state = load_structvector(db, config, BasinStateV1)
n = length(get_ids(db, "Basin"))
+ sql = "SELECT node_id FROM Node ORDER BY node_id"
+ node_id = only(execute(columntable, db, sql))
+ if !allunique(node_id)
+ error(
+ "Node IDs need to be globally unique until https://github.com/Deltares/Ribasim/issues/1262 is fixed.",
+ )
+ end
finally
# always close the database, also in case of an error
close(db)
@@ -100,8 +118,8 @@ function Model(config::Config)::Model
# Integrals for PID control
integral = zeros(length(parameters.pid_control.node_id))
u0 = ComponentVector{Float64}(; storage, integral)
- t_end = seconds_since(config.endtime, config.starttime)
# for Float32 this method allows max ~1000 year simulations without accuracy issues
+ t_end = seconds_since(config.endtime, config.starttime)
@assert eps(t_end) < 3600 "Simulation time too long"
t0 = zero(t_end)
timespan = (t0, t_end)
@@ -151,8 +169,6 @@ function Model(config::Config)::Model
@show Ribasim.to
end
- set_initial_discrete_controlled_parameters!(integrator, storage)
-
return Model(integrator, config, saved)
end
@@ -176,10 +192,51 @@ function SciMLBase.successful_retcode(model::Model)::Bool
end
"""
- solve!(model::Model)::ODESolution
+ step!(model::Model, dt::Float64)::Model
+
+Take Model timesteps until `t + dt` is reached exactly.
+"""
+function SciMLBase.step!(model::Model, dt::Float64)::Model
+ (; config, integrator) = model
+ (; t) = integrator
+ # If we are at an allocation time, run allocation before the next physical
+ # layer timestep. This allows allocation over period (t, t + dt) to use variables
+ # set over BMI at time t before calling this function.
+ # Also, don't run allocation at t = 0 since there are no flows yet (#1389).
+ ntimes = t / config.allocation.timestep
+ if t > 0 && round(ntimes) ≈ ntimes
+ update_allocation!(integrator)
+ end
+ step!(integrator, dt, true)
+ return model
+end
+
+"""
+ solve!(model::Model)::Model
Solve a Model until the configured `endtime`.
"""
-function SciMLBase.solve!(model::Model)::ODESolution
- return solve!(model.integrator)
+function SciMLBase.solve!(model::Model)::Model
+ (; config, integrator) = model
+ if config.allocation.use_allocation
+ (; tspan) = integrator.sol.prob
+ (; timestep) = config.allocation
+ allocation_times = timestep:timestep:(tspan[end] - timestep)
+ n_allocation_times = length(allocation_times)
+ # Don't run allocation at t = 0 since there are no flows yet (#1389).
+ step!(integrator, timestep, true)
+ for _ in 1:n_allocation_times
+ update_allocation!(integrator)
+ step!(integrator, timestep, true)
+ end
+
+ if integrator.sol.retcode != ReturnCode.Default
+ return model
+ end
+ # TODO replace with `check_error!` https://github.com/SciML/SciMLBase.jl/issues/669
+ integrator.sol = SciMLBase.solution_new_retcode(integrator.sol, ReturnCode.Success)
+ else
+ solve!(integrator)
+ end
+ return model
end
diff --git a/core/src/parameter.jl b/core/src/parameter.jl
index b207c4ffd..e3742808e 100644
--- a/core/src/parameter.jl
+++ b/core/src/parameter.jl
@@ -43,37 +43,40 @@ const VectorInterpolation =
"""
Store information for a subnetwork used for allocation.
-allocation_network_id: The ID of this allocation network
+subnetwork_id: The ID of this allocation network
capacity: The capacity per edge of the allocation network, as constrained by nodes that have a max_flow_rate
problem: The JuMP.jl model for solving the allocation problem
Δt_allocation: The time interval between consecutive allocation solves
"""
struct AllocationModel
- allocation_network_id::Int32
- capacity::SparseMatrixCSC{Float64, Int}
+ subnetwork_id::Int32
+ capacity::JuMP.Containers.SparseAxisArray{Float64, 2, Tuple{NodeID, NodeID}}
problem::JuMP.Model
Δt_allocation::Float64
end
"""
Object for all information about allocation
-allocation_network_ids: The unique sorted allocation network IDs
+subnetwork_ids: The unique sorted allocation network IDs
allocation models: The allocation models for the main network and subnetworks corresponding to
- allocation_network_ids
+ subnetwork_ids
main_network_connections: (from_id, to_id) from the main network to the subnetwork per subnetwork
priorities: All used priority values.
subnetwork_demands: The demand of an edge from the main network to a subnetwork
-record_demand: A record of demands and allocated flows for nodes that have these.
+subnetwork_allocateds: The allocated flow of an edge from the main network to a subnetwork
+mean_flows: Flows averaged over Δt_allocation over edges that are allocation sources
+record_demand: A record of demands and allocated flows for nodes that have these
record_flow: A record of all flows computed by allocation optimization, eventually saved to
output file
"""
struct Allocation
- allocation_network_ids::Vector{Int32}
+ subnetwork_ids::Vector{Int32}
allocation_models::Vector{AllocationModel}
main_network_connections::Vector{Vector{Tuple{NodeID, NodeID}}}
priorities::Vector{Int32}
subnetwork_demands::Dict{Tuple{NodeID, NodeID}, Vector{Float64}}
subnetwork_allocateds::Dict{Tuple{NodeID, NodeID}, Vector{Float64}}
+ mean_flows::Dict{Tuple{NodeID, NodeID}, Base.RefValue{Float64}}
record_demand::@NamedTuple{
time::Vector{Float64},
subnetwork_id::Vector{Int32},
@@ -94,7 +97,7 @@ struct Allocation
subnetwork_id::Vector{Int32},
priority::Vector{Int32},
flow_rate::Vector{Float64},
- collect_demands::BitVector,
+ optimization_type::Vector{String},
}
end
@@ -103,37 +106,43 @@ is_active(allocation::Allocation) = !isempty(allocation.allocation_models)
"""
Type for storing metadata of nodes in the graph
type: type of the node
-allocation_network_id: Allocation network ID (0 if not in subnetwork)
+subnetwork_id: Allocation network ID (0 if not in subnetwork)
"""
struct NodeMetadata
type::Symbol
- allocation_network_id::Int32
+ subnetwork_id::Int32
end
"""
Type for storing metadata of edges in the graph:
id: ID of the edge (only used for labeling flow output)
type: type of the edge
-allocation_network_id_source: ID of allocation network where this edge is a source
+subnetwork_id_source: ID of subnetwork where this edge is a source
(0 if not a source)
-from_id: the node ID of the source node
-to_id: the node ID of the destination node
-allocation_flow: whether this edge has a flow in an allocation network
-node_ids: if this edge has allocation flow, these are all the
- nodes from the physical layer this edge consists of
+edge: (from node ID, to node ID)
"""
struct EdgeMetadata
id::Int32
type::EdgeType.T
- allocation_network_id_source::Int32
- from_id::NodeID
- to_id::NodeID
- allocation_flow::Bool
- node_ids::Vector{NodeID}
+ subnetwork_id_source::Int32
+ edge::Tuple{NodeID, NodeID}
end
abstract type AbstractParameterNode end
+"""
+In-memory storage of saved mean flows for writing to results.
+
+- `flow`: The mean flows on all edges
+- `inflow`: The sum of the mean flows coming into each basin
+- `outflow`: The sum of the mean flows going out of each basin
+"""
+@kwdef struct SavedFlow
+ flow::Vector{Float64}
+ inflow::Vector{Float64}
+ outflow::Vector{Float64}
+end
+
"""
Requirements:
@@ -151,12 +160,16 @@ else
T = Vector{Float64}
end
"""
-struct Basin{T, C} <: AbstractParameterNode
+struct Basin{T, C, V1, V2, V3} <: AbstractParameterNode
node_id::Indices{NodeID}
- precipitation::Vector{Float64}
- potential_evaporation::Vector{Float64}
- drainage::Vector{Float64}
- infiltration::Vector{Float64}
+ inflow_ids::Vector{Vector{NodeID}}
+ outflow_ids::Vector{Vector{NodeID}}
+ # Vertical fluxes
+ vertical_flux_from_input::V1
+ vertical_flux::V2
+ vertical_flux_prev::V3
+ vertical_flux_integrated::V3
+ vertical_flux_bmi::V3
# Cache this to avoid recomputation
current_level::T
current_area::T
@@ -164,17 +177,20 @@ struct Basin{T, C} <: AbstractParameterNode
area::Vector{Vector{Float64}}
level::Vector{Vector{Float64}}
storage::Vector{Vector{Float64}}
- # Demands and allocated flows for allocation if applicable
+ # Demands for allocation if applicable
demand::Vector{Float64}
# Data source for parameter updates
time::StructVector{BasinTimeV1, C, Int}
function Basin(
node_id,
- precipitation,
- potential_evaporation,
- drainage,
- infiltration,
+ inflow_ids,
+ outflow_ids,
+ vertical_flux_from_input::V1,
+ vertical_flux::V2,
+ vertical_flux_prev::V3,
+ vertical_flux_integrated::V3,
+ vertical_flux_bmi::V3,
current_level::T,
current_area::T,
area,
@@ -182,15 +198,18 @@ struct Basin{T, C} <: AbstractParameterNode
storage,
demand,
time::StructVector{BasinTimeV1, C, Int},
- ) where {T, C}
+ ) where {T, C, V1, V2, V3}
is_valid = valid_profiles(node_id, level, area)
is_valid || error("Invalid Basin / profile table.")
- return new{T, C}(
+ return new{T, C, V1, V2, V3}(
node_id,
- precipitation,
- potential_evaporation,
- drainage,
- infiltration,
+ inflow_ids,
+ outflow_ids,
+ vertical_flux_from_input,
+ vertical_flux,
+ vertical_flux_prev,
+ vertical_flux_integrated,
+ vertical_flux_bmi,
current_level,
current_area,
area,
@@ -228,12 +247,9 @@ struct TabulatedRatingCurve{C} <: AbstractParameterNode
end
"""
-Requirements:
-
-* from: must be (Basin,) node
-* to: must be (Basin,) node
-
node_id: node ID of the LinearResistance node
+inflow_id: node ID across the incoming flow edge
+outflow_id: node ID across the outgoing flow edge
active: whether this node is active and thus contributes flows
resistance: the resistance to flow; `Q_unlimited = Δh/resistance`
max_flow_rate: the maximum flow rate allowed through the node; `Q = clamp(Q_unlimited, -max_flow_rate, max_flow_rate)`
@@ -241,6 +257,8 @@ control_mapping: dictionary from (node_id, control_state) to resistance and/or a
"""
struct LinearResistance <: AbstractParameterNode
node_id::Vector{NodeID}
+ inflow_id::Vector{NodeID}
+ outflow_id::Vector{NodeID}
active::BitVector
resistance::Vector{Float64}
max_flow_rate::Vector{Float64}
@@ -250,8 +268,11 @@ end
"""
This is a simple Manning-Gauckler reach connection.
-* Length describes the reach length.
-* roughness describes Manning's n in (SI units).
+node_id: node ID of the ManningResistance node
+inflow_id: node ID across the incoming flow edge
+outflow_id: node ID across the outgoing flow edge
+length: reach length
+manning_n: roughness; Manning's n in (SI units).
The profile is described by a trapezoid:
@@ -275,13 +296,15 @@ Requirements:
* from: must be (Basin,) node
* to: must be (Basin,) node
* length > 0
-* roughess > 0
+* manning_n > 0
* profile_width >= 0
* profile_slope >= 0
* (profile_width == 0) xor (profile_slope == 0)
"""
struct ManningResistance <: AbstractParameterNode
node_id::Vector{NodeID}
+ inflow_id::Vector{NodeID}
+ outflow_id::Vector{NodeID}
active::BitVector
length::Vector{Float64}
manning_n::Vector{Float64}
@@ -426,23 +449,28 @@ struct Terminal <: AbstractParameterNode
end
"""
-node_id: node ID of the DiscreteControl node; these are not unique but repeated
- by the amount of conditions of this DiscreteControl node
-listen_node_id: the ID of the node being condition on
-variable: the name of the variable in the condition
-greater_than: The threshold value in the condition
-condition_value: The current value of each condition
+node_id: node ID of the DiscreteControl node per compound variable (can contain repeats)
+listen_node_id: the IDs of the nodes being condition on per compound variable
+variable: the names of the variables in the condition per compound variable
+weight: the weight of the variables in the condition per compound variable
+look_ahead: the look ahead of variables in the condition in seconds per compound_variable
+greater_than: The threshold values per compound variable
+condition_value: The current truth value of each condition per compound_variable per greater_than
control_state: Dictionary: node ID => (control state, control state start)
logic_mapping: Dictionary: (control node ID, truth state) => control state
record: Namedtuple with discrete control information for results
"""
struct DiscreteControl <: AbstractParameterNode
node_id::Vector{NodeID}
- listen_node_id::Vector{NodeID}
- variable::Vector{String}
- look_ahead::Vector{Float64}
- greater_than::Vector{Float64}
- condition_value::Vector{Bool}
+ # Definition of compound variables
+ listen_node_id::Vector{Vector{NodeID}}
+ variable::Vector{Vector{String}}
+ weight::Vector{Vector{Float64}}
+ look_ahead::Vector{Vector{Float64}}
+ # Definition of conditions (one or more greater_than per compound variable)
+ greater_than::Vector{Vector{Float64}}
+ condition_value::Vector{BitVector}
+ # Definition of logic
control_state::Dict{NodeID, Tuple{String, Float64}}
logic_mapping::Dict{Tuple{NodeID, String}, String}
record::@NamedTuple{
@@ -475,11 +503,15 @@ struct PidControl{T} <: AbstractParameterNode
end
"""
-demand: water flux demand of UserDemand per priority over time.
+active: whether this node is active and thus demands water
+realized_bmi: Cumulative inflow volume, for read or reset by BMI only
+demand: water flux demand of UserDemand per priority over time
Each UserDemand has a demand for all priorities,
which is 0.0 if it is not provided explicitly.
-realized_bmi: Cumulative inflow volume, for read or reset by BMI only.
-active: whether this node is active and thus demands water
+demand_reduced: the total demand reduced by allocated flows. This is used for goal programming,
+ and requires separate memory from `demand` since demands can come from the BMI
+demand_itp: Timeseries interpolation objects for demands
+demand_from_timeseries: If false the demand comes from the BMI or is fixed
allocated: water flux currently allocated to UserDemand per priority
return_factor: the factor in [0,1] of how much of the abstracted water is given back to the system
min_level: The level of the source basin below which the UserDemand does not abstract
@@ -488,10 +520,11 @@ struct UserDemand <: AbstractParameterNode
node_id::Vector{NodeID}
active::BitVector
realized_bmi::Vector{Float64}
- demand::Vector{Float64}
+ demand::Matrix{Float64}
+ demand_reduced::Matrix{Float64}
demand_itp::Vector{Vector{ScalarInterpolation}}
demand_from_timeseries::BitVector
- allocated::Vector{Vector{Float64}}
+ allocated::Matrix{Float64}
return_factor::Vector{Float64}
min_level::Vector{Float64}
@@ -500,6 +533,7 @@ struct UserDemand <: AbstractParameterNode
active,
realized_bmi,
demand,
+ demand_reduced,
demand_itp,
demand_from_timeseries,
allocated,
@@ -513,6 +547,7 @@ struct UserDemand <: AbstractParameterNode
active,
realized_bmi,
demand,
+ demand_reduced,
demand_itp,
demand_from_timeseries,
allocated,
@@ -531,13 +566,20 @@ min_level: The minimum target level of the connected basin(s)
max_level: The maximum target level of the connected basin(s)
priority: If in a shortage state, the priority of the demand of the connected basin(s)
"""
-struct LevelDemand
+struct LevelDemand <: AbstractParameterNode
node_id::Vector{NodeID}
min_level::Vector{LinearInterpolation}
max_level::Vector{LinearInterpolation}
priority::Vector{Int32}
end
+struct FlowDemand <: AbstractParameterNode
+ node_id::Vector{NodeID}
+ demand_itp::Vector{ScalarInterpolation}
+ demand::Vector{Float64}
+ priority::Vector{Int32}
+end
+
"Subgrid linearly interpolates basin levels."
struct Subgrid
basin_index::Vector{Int32}
@@ -546,7 +588,7 @@ struct Subgrid
end
# TODO Automatically add all nodetypes here
-struct Parameters{T, C1, C2}
+struct Parameters{T, C1, C2, V1, V2, V3}
starttime::DateTime
graph::MetaGraph{
Int64,
@@ -556,23 +598,18 @@ struct Parameters{T, C1, C2}
EdgeMetadata,
@NamedTuple{
node_ids::Dict{Int32, Set{NodeID}},
- edge_ids::Dict{Int32, Set{Tuple{NodeID, NodeID}}},
edges_source::Dict{Int32, Set{EdgeMetadata}},
flow_dict::Dict{Tuple{NodeID, NodeID}, Int},
flow::T,
flow_prev::Vector{Float64},
flow_integrated::Vector{Float64},
- flow_vertical_dict::Dict{NodeID, Int},
- flow_vertical::T,
- flow_vertical_prev::Vector{Float64},
- flow_vertical_integrated::Vector{Float64},
saveat::Float64,
},
MetaGraphsNext.var"#11#13",
Float64,
}
allocation::Allocation
- basin::Basin{T, C1}
+ basin::Basin{T, C1, V1, V2, V3}
linear_resistance::LinearResistance
manning_resistance::ManningResistance
tabulated_rating_curve::TabulatedRatingCurve{C2}
@@ -586,5 +623,6 @@ struct Parameters{T, C1, C2}
pid_control::PidControl{T}
user_demand::UserDemand
level_demand::LevelDemand
+ flow_demand::FlowDemand
subgrid::Subgrid
end
diff --git a/core/src/read.jl b/core/src/read.jl
index c78267711..00a17b895 100644
--- a/core/src/read.jl
+++ b/core/src/read.jl
@@ -93,7 +93,7 @@ function parse_static_and_time(
errors = false
t_end = seconds_since(config.endtime, config.starttime)
- trivial_timespan = [nextfloat(-Inf), prevfloat(Inf)]
+ trivial_timespan = [0.0, prevfloat(Inf)]
for (node_idx, node_id) in enumerate(node_ids)
if node_id in static_node_ids
@@ -200,37 +200,37 @@ const nonconservative_nodetypes =
function initialize_allocation!(p::Parameters, config::Config)::Nothing
(; graph, allocation) = p
- (; allocation_network_ids, allocation_models, main_network_connections) = allocation
- allocation_network_ids_ = sort(collect(keys(graph[].node_ids)))
+ (; subnetwork_ids, allocation_models, main_network_connections) = allocation
+ subnetwork_ids_ = sort(collect(keys(graph[].node_ids)))
- if isempty(allocation_network_ids_)
+ if isempty(subnetwork_ids_)
return nothing
end
- errors = non_positive_allocation_network_id(graph)
+ errors = non_positive_subnetwork_id(graph)
if errors
error("Allocation network initialization failed.")
end
- for allocation_network_id in allocation_network_ids_
- push!(allocation_network_ids, allocation_network_id)
+ for subnetwork_id in subnetwork_ids_
+ push!(subnetwork_ids, subnetwork_id)
push!(main_network_connections, Tuple{NodeID, NodeID}[])
end
- if first(allocation_network_ids_) == 1
+ if first(subnetwork_ids_) == 1
find_subnetwork_connections!(p)
end
- for allocation_network_id in allocation_network_ids_
+ for subnetwork_id in subnetwork_ids_
push!(
allocation_models,
- AllocationModel(allocation_network_id, p, config.allocation.timestep),
+ AllocationModel(subnetwork_id, p, config.allocation.timestep),
)
end
return nothing
end
-function LinearResistance(db::DB, config::Config)::LinearResistance
+function LinearResistance(db::DB, config::Config, graph::MetaGraph)::LinearResistance
static = load_structvector(db, config, LinearResistanceStaticV1)
defaults = (; max_flow_rate = Inf, active = true)
parsed_parameters, valid =
@@ -242,8 +242,12 @@ function LinearResistance(db::DB, config::Config)::LinearResistance
)
end
+ node_id = NodeID.(NodeType.LinearResistance, parsed_parameters.node_id)
+
return LinearResistance(
- NodeID.(NodeType.LinearResistance, parsed_parameters.node_id),
+ node_id,
+ inflow_id.(Ref(graph), node_id),
+ outflow_id.(Ref(graph), node_id),
BitVector(parsed_parameters.active),
parsed_parameters.resistance,
parsed_parameters.max_flow_rate,
@@ -321,7 +325,7 @@ function TabulatedRatingCurve(db::DB, config::Config)::TabulatedRatingCurve
return TabulatedRatingCurve(node_ids, active, interpolations, time, control_mapping)
end
-function ManningResistance(db::DB, config::Config)::ManningResistance
+function ManningResistance(db::DB, config::Config, graph::MetaGraph)::ManningResistance
static = load_structvector(db, config, ManningResistanceStaticV1)
parsed_parameters, valid =
parse_static_and_time(db, config, "ManningResistance"; static)
@@ -330,8 +334,12 @@ function ManningResistance(db::DB, config::Config)::ManningResistance
error("Errors occurred when parsing ManningResistance data.")
end
+ node_id = NodeID.(NodeType.ManningResistance, parsed_parameters.node_id)
+
return ManningResistance(
- NodeID.(NodeType.ManningResistance, parsed_parameters.node_id),
+ node_id,
+ inflow_id.(Ref(graph), node_id),
+ outflow_id.(Ref(graph), node_id),
BitVector(parsed_parameters.active),
parsed_parameters.length,
parsed_parameters.manning_n,
@@ -482,21 +490,17 @@ function Terminal(db::DB, config::Config)::Terminal
return Terminal(NodeID.(NodeType.Terminal, static.node_id))
end
-function Basin(db::DB, config::Config, chunk_sizes::Vector{Int})::Basin
+function Basin(db::DB, config::Config, graph::MetaGraph, chunk_sizes::Vector{Int})::Basin
node_id = get_ids(db, "Basin")
n = length(node_id)
current_level = zeros(n)
current_area = zeros(n)
- if config.solver.autodiff
- current_level = DiffCache(current_level, chunk_sizes)
- current_area = DiffCache(current_area, chunk_sizes)
- end
-
- precipitation = zeros(length(node_id))
- potential_evaporation = zeros(length(node_id))
- drainage = zeros(length(node_id))
- infiltration = zeros(length(node_id))
+ precipitation = zeros(n)
+ potential_evaporation = zeros(n)
+ evaporation = zeros(n)
+ drainage = zeros(n)
+ infiltration = zeros(n)
table = (; precipitation, potential_evaporation, drainage, infiltration)
area, level, storage = create_storage_tables(db, config)
@@ -509,14 +513,37 @@ function Basin(db::DB, config::Config, chunk_sizes::Vector{Int})::Basin
set_current_value!(table, node_id, time, config.starttime)
check_no_nans(table, "Basin")
+ vertical_flux_from_input =
+ ComponentVector(; precipitation, potential_evaporation, drainage, infiltration)
+ vertical_flux = ComponentVector(;
+ precipitation = copy(precipitation),
+ evaporation,
+ drainage = copy(drainage),
+ infiltration = copy(infiltration),
+ )
+ vertical_flux_prev = zero(vertical_flux)
+ vertical_flux_integrated = zero(vertical_flux)
+ vertical_flux_bmi = zero(vertical_flux)
+
+ if config.solver.autodiff
+ current_level = DiffCache(current_level, chunk_sizes)
+ current_area = DiffCache(current_area, chunk_sizes)
+ vertical_flux = DiffCache(vertical_flux, chunk_sizes)
+ end
+
demand = zeros(length(node_id))
+ node_id = NodeID.(NodeType.Basin, node_id)
+
return Basin(
- Indices(NodeID.(NodeType.Basin, node_id)),
- precipitation,
- potential_evaporation,
- drainage,
- infiltration,
+ Indices(node_id),
+ [collect(inflow_ids(graph, id)) for id in node_id],
+ [collect(outflow_ids(graph, id)) for id in node_id],
+ vertical_flux_from_input,
+ vertical_flux,
+ vertical_flux_prev,
+ vertical_flux_integrated,
+ vertical_flux_bmi,
current_level,
current_area,
area,
@@ -527,10 +554,81 @@ function Basin(db::DB, config::Config, chunk_sizes::Vector{Int})::Basin
)
end
+function parse_variables_and_conditions(compound_variable, condition)
+ node_id = NodeID[]
+ listen_node_id = Vector{NodeID}[]
+ variable = Vector{String}[]
+ weight = Vector{Float64}[]
+ look_ahead = Vector{Float64}[]
+ greater_than = Vector{Float64}[]
+ condition_value = BitVector[]
+ errors = false
+
+ # Loop over unique discrete_control node IDs (on which at least one condition is defined)
+ for id in unique(condition.node_id)
+ condition_group_id = filter(row -> row.node_id == id, condition)
+ variable_group_id = filter(row -> row.node_id == id, compound_variable)
+ # Loop over compound variables for this node ID
+ for compound_variable_id in unique(condition_group_id.compound_variable_id)
+ condition_group_variable = filter(
+ row -> row.compound_variable_id == compound_variable_id,
+ condition_group_id,
+ )
+ variable_group_variable = filter(
+ row -> row.compound_variable_id == compound_variable_id,
+ variable_group_id,
+ )
+ discrete_control_id = NodeID(NodeType.DiscreteControl, id)
+ if isempty(variable_group_variable)
+ errors = true
+ @error "compound_variable_id $compound_variable_id for $discrete_control_id in condition table but not in variable table"
+ else
+ push!(node_id, discrete_control_id)
+ push!(
+ listen_node_id,
+ NodeID.(
+ variable_group_variable.listen_node_type,
+ variable_group_variable.listen_node_id,
+ ),
+ )
+ push!(variable, variable_group_variable.variable)
+ push!(weight, coalesce.(variable_group_variable.weight, 1.0))
+ push!(look_ahead, coalesce.(variable_group_variable.look_ahead, 0.0))
+ push!(greater_than, condition_group_variable.greater_than)
+ push!(
+ condition_value,
+ BitVector(zeros(length(condition_group_variable.greater_than))),
+ )
+ end
+ end
+ end
+ return node_id,
+ listen_node_id,
+ variable,
+ weight,
+ look_ahead,
+ greater_than,
+ condition_value,
+ !errors
+end
+
function DiscreteControl(db::DB, config::Config)::DiscreteControl
condition = load_structvector(db, config, DiscreteControlConditionV1)
+ compound_variable = load_structvector(db, config, DiscreteControlVariableV1)
+
+ node_id,
+ listen_node_id,
+ variable,
+ weight,
+ look_ahead,
+ greater_than,
+ condition_value,
+ valid = parse_variables_and_conditions(compound_variable, condition)
+
+ if !valid
+ error("Problems encountered when parsing DiscreteControl variables and conditions.")
+ end
- condition_value = fill(false, length(condition.node_id))
control_state::Dict{NodeID, Tuple{String, Float64}} = Dict()
rows = execute(db, "SELECT from_node_id, edge_type FROM Edge ORDER BY fid")
@@ -542,7 +640,6 @@ function DiscreteControl(db::DB, config::Config)::DiscreteControl
end
logic = load_structvector(db, config, DiscreteControlLogicV1)
-
logic_mapping = Dict{Tuple{NodeID, String}, String}()
for (node_id, truth_state, control_state_) in
@@ -552,7 +649,6 @@ function DiscreteControl(db::DB, config::Config)::DiscreteControl
end
logic_mapping = expand_logic_mapping(logic_mapping)
- look_ahead = coalesce.(condition.look_ahead, 0.0)
record = (
time = Float64[],
@@ -562,11 +658,12 @@ function DiscreteControl(db::DB, config::Config)::DiscreteControl
)
return DiscreteControl(
- NodeID.(NodeType.DiscreteControl, condition.node_id), # Not unique
- NodeID.(condition.listen_node_type, condition.listen_node_id),
- condition.variable,
+ node_id, # Not unique
+ listen_node_id,
+ variable,
+ weight,
look_ahead,
- condition.greater_than,
+ greater_than,
condition_value,
control_state,
logic_mapping,
@@ -635,116 +732,143 @@ function PidControl(db::DB, config::Config, chunk_sizes::Vector{Int})::PidContro
)
end
+function user_demand_static!(
+ active::BitVector,
+ demand::Matrix{Float64},
+ demand_itp::Vector{Vector{ScalarInterpolation}},
+ return_factor::Vector{Float64},
+ min_level::Vector{Float64},
+ static::StructVector{UserDemandStaticV1},
+ node_ids::Vector{NodeID},
+ priorities::Vector{Int32},
+)::Nothing
+ for group in IterTools.groupby(row -> row.node_id, static)
+ first_row = first(group)
+ node_id = NodeID(NodeType.UserDemand, first_row.node_id)
+ user_demand_idx = findsorted(node_ids, node_id)
+
+ active[user_demand_idx] = coalesce(first_row.active, true)
+ return_factor[user_demand_idx] = first_row.return_factor
+ min_level[user_demand_idx] = first_row.min_level
+
+ for row in group
+ priority_idx = findsorted(priorities, row.priority)
+ demand_itp[user_demand_idx][priority_idx].u .= row.demand
+ demand[user_demand_idx, priority_idx] = row.demand
+ end
+ end
+ return nothing
+end
+
+function user_demand_time!(
+ active::BitVector,
+ demand::Matrix{Float64},
+ demand_itp::Vector{Vector{ScalarInterpolation}},
+ demand_from_timeseries::BitVector,
+ return_factor::Vector{Float64},
+ min_level::Vector{Float64},
+ time::StructVector{UserDemandTimeV1},
+ node_ids::Vector{NodeID},
+ priorities::Vector{Int32},
+ config::Config,
+)::Bool
+ errors = false
+ t_end = seconds_since(config.endtime, config.starttime)
+
+ for group in IterTools.groupby(row -> (row.node_id, row.priority), time)
+ first_row = first(group)
+ node_id = NodeID(NodeType.UserDemand, first_row.node_id)
+ user_demand_idx = findsorted(node_ids, node_id)
+
+ active[user_demand_idx] = true
+ demand_from_timeseries[user_demand_idx] = true
+ return_factor[user_demand_idx] = first_row.return_factor
+ min_level[user_demand_idx] = first_row.min_level
+
+ priority_idx = findsorted(priorities, first_row.priority)
+ demand_p_itp, is_valid = get_scalar_interpolation(
+ config.starttime,
+ t_end,
+ StructVector(group),
+ node_id,
+ :demand;
+ default_value = 0.0,
+ )
+ demand[user_demand_idx, priority_idx] = demand_p_itp(0.0)
+
+ if is_valid
+ demand_itp[user_demand_idx][priority_idx] = demand_p_itp
+ else
+ @error "The demand(t) relationship for UserDemand $node_id of priority $p from the time table has repeated timestamps, this can not be interpolated."
+ errors = true
+ end
+ end
+ return errors
+end
+
function UserDemand(db::DB, config::Config)::UserDemand
static = load_structvector(db, config, UserDemandStaticV1)
time = load_structvector(db, config, UserDemandTimeV1)
- static_node_ids, time_node_ids, node_ids, valid =
- static_and_time_node_ids(db, static, time, "UserDemand")
-
- time_node_id_vec = NodeID.(NodeType.UserDemand, time.node_id)
+ _, _, node_ids, valid = static_and_time_node_ids(db, static, time, "UserDemand")
if !valid
error("Problems encountered when parsing UserDemand static and time node IDs.")
end
- # All priorities used in the model
+ # Initialize vectors for UserDemand fields
priorities = get_all_priorities(db, config)
-
- active = BitVector()
- min_level = Float64[]
- return_factor = Float64[]
- demand_itp = Vector{ScalarInterpolation}[]
-
- errors = false
- trivial_timespan = [nextfloat(-Inf), prevfloat(Inf)]
- t_end = seconds_since(config.endtime, config.starttime)
-
- # Create a dictionary priority => time data for that priority
- time_priority_dict::Dict{Int32, StructVector{UserDemandTimeV1}} = Dict(
- first(group).priority => StructVector(group) for
- group in IterTools.groupby(row -> row.priority, time)
+ n_user = length(node_ids)
+ n_priority = length(priorities)
+ active = BitVector(ones(Bool, n_user))
+ realized_bmi = zeros(n_user)
+ demand = zeros(n_user, n_priority)
+ demand_reduced = zeros(n_user, n_priority)
+ trivial_timespan = [0.0, prevfloat(Inf)]
+ demand_itp = [
+ [LinearInterpolation(zeros(2), trivial_timespan) for i in eachindex(priorities)] for j in eachindex(node_ids)
+ ]
+ demand_from_timeseries = BitVector(zeros(Bool, n_user))
+ allocated = fill(Inf, n_user, n_priority)
+ return_factor = zeros(n_user)
+ min_level = zeros(n_user)
+
+ # Process static table
+ user_demand_static!(
+ active,
+ demand,
+ demand_itp,
+ return_factor,
+ min_level,
+ static,
+ node_ids,
+ priorities,
)
- demand = Float64[]
-
- # Whether the demand of a UserDemand node is given by a timeseries
- demand_from_timeseries = BitVector()
-
- for node_id in node_ids
- first_row = nothing
- demand_itp_node_id = Vector{ScalarInterpolation}()
-
- if node_id in static_node_ids
- push!(demand_from_timeseries, false)
- rows = searchsorted(NodeID.(NodeType.UserDemand, static.node_id), node_id)
- static_id = view(static, rows)
- for p in priorities
- idx = findsorted(static_id.priority, p)
- demand_p = !isnothing(idx) ? static_id[idx].demand : 0.0
- demand_p_itp = LinearInterpolation([demand_p, demand_p], trivial_timespan)
- push!(demand_itp_node_id, demand_p_itp)
- push!(demand, demand_p)
- end
- push!(demand_itp, demand_itp_node_id)
- first_row = first(static_id)
- is_active = coalesce(first_row.active, true)
-
- elseif node_id in time_node_ids
- push!(demand_from_timeseries, true)
- for p in priorities
- push!(demand, 0.0)
- if p in keys(time_priority_dict)
- demand_p_itp, is_valid = get_scalar_interpolation(
- config.starttime,
- t_end,
- time_priority_dict[p],
- node_id,
- :demand;
- default_value = 0.0,
- )
- if is_valid
- push!(demand_itp_node_id, demand_p_itp)
- else
- @error "The demand(t) relationship for UserDemand #$node_id of priority $p from the time table has repeated timestamps, this can not be interpolated."
- errors = true
- end
- else
- demand_p_itp = LinearInterpolation([0.0, 0.0], trivial_timespan)
- push!(demand_itp_node_id, demand_p_itp)
- end
- end
- push!(demand_itp, demand_itp_node_id)
-
- first_row_idx = searchsortedfirst(time_node_id_vec, node_id)
- first_row = time[first_row_idx]
- is_active = true
- else
- @error "UserDemand node #$node_id data not in any table."
- errors = true
- end
-
- if !isnothing(first_row)
- min_level_ = coalesce(first_row.min_level, 0.0)
- return_factor_ = first_row.return_factor
- push!(active, is_active)
- push!(min_level, min_level_)
- push!(return_factor, return_factor_)
- end
- end
+ # Process time table
+ errors = user_demand_time!(
+ active,
+ demand,
+ demand_itp,
+ demand_from_timeseries,
+ return_factor,
+ min_level,
+ time,
+ node_ids,
+ priorities,
+ config,
+ )
if errors
error("Errors occurred when parsing UserDemand data.")
end
- realized_bmi = zeros(length(node_ids))
- allocated = [fill(Inf, length(priorities)) for id in node_ids]
-
return UserDemand(
node_ids,
active,
realized_bmi,
demand,
+ demand_reduced,
demand_itp,
demand_from_timeseries,
allocated,
@@ -765,6 +889,7 @@ function LevelDemand(db::DB, config::Config)::LevelDemand
static,
time,
time_interpolatables = [:min_level, :max_level],
+ defaults = (; min_level = -Inf, max_level = Inf),
)
if !valid
@@ -779,6 +904,33 @@ function LevelDemand(db::DB, config::Config)::LevelDemand
)
end
+function FlowDemand(db::DB, config::Config)::FlowDemand
+ static = load_structvector(db, config, FlowDemandStaticV1)
+ time = load_structvector(db, config, FlowDemandTimeV1)
+
+ parsed_parameters, valid = parse_static_and_time(
+ db,
+ config,
+ "FlowDemand";
+ static,
+ time,
+ time_interpolatables = [:demand],
+ )
+
+ if !valid
+ error("Errors occurred when parsing FlowDemand data.")
+ end
+
+ demand = zeros(length(parsed_parameters.node_id))
+
+ return FlowDemand(
+ NodeID.(NodeType.FlowDemand, parsed_parameters.node_id),
+ parsed_parameters.demand,
+ demand,
+ parsed_parameters.priority,
+ )
+end
+
function Subgrid(db::DB, config::Config, basin::Basin)::Subgrid
node_to_basin = Dict(node_id => index for (index, node_id) in enumerate(basin.node_id))
tables = load_structvector(db, config, BasinSubgridV1)
@@ -812,7 +964,7 @@ function Subgrid(db::DB, config::Config, basin::Basin)::Subgrid
return Subgrid(basin_ids, interpolations, fill(NaN, length(basin_ids)))
end
-function Allocation(db::DB, config::Config)::Allocation
+function Allocation(db::DB, config::Config, graph::MetaGraph)::Allocation
record_demand = (
time = Float64[],
subnetwork_id = Int32[],
@@ -834,21 +986,37 @@ function Allocation(db::DB, config::Config)::Allocation
subnetwork_id = Int32[],
priority = Int32[],
flow_rate = Float64[],
- collect_demands = BitVector(),
+ optimization_type = String[],
)
- allocation = Allocation(
+ mean_flows = Dict{Tuple{NodeID, NodeID}, Base.RefValue{Float64}}()
+
+ # Find edges which serve as sources in allocation
+ for edge_metadata in values(graph.edge_data)
+ (; subnetwork_id_source, edge) = edge_metadata
+ if subnetwork_id_source != 0
+ mean_flows[edge] = Ref(0.0)
+ end
+ end
+
+ # Find basins with a level demand
+ for node_id in values(graph.vertex_labels)
+ if has_external_demand(graph, node_id, :level_demand)[1]
+ mean_flows[(node_id, node_id)] = Ref(0.0)
+ end
+ end
+
+ return Allocation(
Int32[],
AllocationModel[],
Vector{Tuple{NodeID, NodeID}}[],
get_all_priorities(db, config),
- Dict{Tuple{NodeID, NodeID}, Float64}(),
- Dict{Tuple{NodeID, NodeID}, Float64}(),
+ Dict{Tuple{NodeID, NodeID}, Vector{Float64}}(),
+ Dict{Tuple{NodeID, NodeID}, Vector{Float64}}(),
+ mean_flows,
record_demand,
record_flow,
)
-
- return allocation
end
"""
@@ -868,14 +1036,14 @@ function Parameters(db::DB, config::Config)::Parameters
n_states = length(get_ids(db, "Basin")) + length(get_ids(db, "PidControl"))
chunk_sizes = get_chunk_sizes(config, n_states)
graph = create_graph(db, config, chunk_sizes)
- allocation = Allocation(db, config)
+ allocation = Allocation(db, config, graph)
if !valid_edges(graph)
error("Invalid edge(s) found.")
end
- linear_resistance = LinearResistance(db, config)
- manning_resistance = ManningResistance(db, config)
+ linear_resistance = LinearResistance(db, config, graph)
+ manning_resistance = ManningResistance(db, config, graph)
tabulated_rating_curve = TabulatedRatingCurve(db, config)
fractional_flow = FractionalFlow(db, config)
level_boundary = LevelBoundary(db, config)
@@ -887,8 +1055,9 @@ function Parameters(db::DB, config::Config)::Parameters
pid_control = PidControl(db, config, chunk_sizes)
user_demand = UserDemand(db, config)
level_demand = LevelDemand(db, config)
+ flow_demand = FlowDemand(db, config)
- basin = Basin(db, config, chunk_sizes)
+ basin = Basin(db, config, graph, chunk_sizes)
subgrid_level = Subgrid(db, config, basin)
p = Parameters(
@@ -909,6 +1078,7 @@ function Parameters(db::DB, config::Config)::Parameters
pid_control,
user_demand,
level_demand,
+ flow_demand,
subgrid_level,
)
@@ -938,13 +1108,22 @@ function exists(db::DB, tablename::String)
return !isempty(query)
end
+"""
+ seconds(period::Millisecond)::Float64
+
+Convert a period of type Millisecond to a Float64 in seconds.
+You get Millisecond objects when subtracting two DateTime objects.
+Dates.value returns the number of milliseconds.
+"""
+seconds(period::Millisecond)::Float64 = 0.001 * Dates.value(period)
+
"""
seconds_since(t::DateTime, t0::DateTime)::Float64
Convert a DateTime to a float that is the number of seconds since the start of the
simulation. This is used to convert between the solver's inner float time, and the calendar.
"""
-seconds_since(t::DateTime, t0::DateTime)::Float64 = 0.001 * Dates.value(t - t0)
+seconds_since(t::DateTime, t0::DateTime)::Float64 = seconds(t - t0)
"""
datetime_since(t::Real, t0::DateTime)::DateTime
diff --git a/core/src/schema.jl b/core/src/schema.jl
index c7386b42f..ac0200777 100644
--- a/core/src/schema.jl
+++ b/core/src/schema.jl
@@ -1,5 +1,6 @@
# These schemas define the name of database tables and the configuration file structure
# The identifier is parsed as ribasim.nodetype.kind, no capitals or underscores are allowed.
+@schema "ribasim.discretecontrol.variable" DiscreteControlVariable
@schema "ribasim.discretecontrol.condition" DiscreteControlCondition
@schema "ribasim.discretecontrol.logic" DiscreteControlLogic
@schema "ribasim.basin.static" BasinStatic
@@ -29,6 +30,8 @@
@schema "ribasim.userdemand.time" UserDemandTime
@schema "ribasim.leveldemand.static" LevelDemandStatic
@schema "ribasim.leveldemand.time" LevelDemandTime
+@schema "ribasim.flowdemand.static" FlowDemandStatic
+@schema "ribasim.flowdemand.time" FlowDemandTime
const delimiter = " / "
tablename(sv::Type{SchemaVersion{T, N}}) where {T, N} = tablename(sv())
@@ -215,15 +218,22 @@ end
node_id::Int32
end
-@version DiscreteControlConditionV1 begin
+@version DiscreteControlVariableV1 begin
node_id::Int32
+ compound_variable_id::Int32
listen_node_type::String
listen_node_id::Int32
variable::String
- greater_than::Float64
+ weight::Union{Missing, Float64}
look_ahead::Union{Missing, Float64}
end
+@version DiscreteControlConditionV1 begin
+ node_id::Int32
+ compound_variable_id::Int32
+ greater_than::Float64
+end
+
@version DiscreteControlLogicV1 begin
node_id::Int32
truth_state::String
@@ -274,15 +284,28 @@ end
@version LevelDemandStaticV1 begin
node_id::Int32
- min_level::Float64
- max_level::Float64
+ min_level::Union{Missing, Float64}
+ max_level::Union{Missing, Float64}
priority::Int32
end
@version LevelDemandTimeV1 begin
node_id::Int32
time::DateTime
- min_level::Float64
- max_level::Float64
+ min_level::Union{Missing, Float64}
+ max_level::Union{Missing, Float64}
+ priority::Int32
+end
+
+@version FlowDemandStaticV1 begin
+ node_id::Int
+ demand::Float64
+ priority::Int32
+end
+
+@version FlowDemandTimeV1 begin
+ node_id::Int
+ time::DateTime
+ demand::Float64
priority::Int32
end
diff --git a/core/src/solve.jl b/core/src/solve.jl
index df9f09d4d..96ec3b6f5 100644
--- a/core/src/solve.jl
+++ b/core/src/solve.jl
@@ -14,13 +14,12 @@ function water_balance!(
du .= 0.0
get_tmp(graph[].flow, storage) .= 0.0
- get_tmp(graph[].flow_vertical, storage) .= 0.0
# Ensures current_* vectors are current
set_current_basin_properties!(basin, storage)
# Basin forcings
- formulate_basins!(du, basin, graph, storage)
+ formulate_basins!(du, basin, storage)
# First formulate intermediate flows
formulate_flows!(p, storage, t)
@@ -52,18 +51,13 @@ end
Smoothly let the evaporation flux go to 0 when at small water depths
Currently at less than 0.1 m.
"""
-function formulate_basins!(
- du::AbstractVector,
- basin::Basin,
- graph::MetaGraph,
- storage::AbstractVector,
-)::Nothing
- (; node_id, current_level, current_area) = basin
+function update_vertical_flux!(basin::Basin, storage::AbstractVector)::Nothing
+ (; current_level, current_area, vertical_flux_from_input, vertical_flux) = basin
current_level = get_tmp(current_level, storage)
current_area = get_tmp(current_area, storage)
+ vertical_flux = get_tmp(vertical_flux, storage)
- for (i, id) in enumerate(node_id)
- # add all precipitation that falls within the profile
+ for (i, id) in enumerate(basin.node_id)
level = current_level[i]
area = current_area[i]
@@ -72,14 +66,29 @@ function formulate_basins!(
depth = max(level - bottom, 0.0)
factor = reduction_factor(depth, 0.1)
- precipitation = fixed_area * basin.precipitation[i]
- evaporation = area * factor * basin.potential_evaporation[i]
- drainage = basin.drainage[i]
- infiltration = factor * basin.infiltration[i]
+ precipitation = fixed_area * vertical_flux_from_input.precipitation[i]
+ evaporation = area * factor * vertical_flux_from_input.potential_evaporation[i]
+ drainage = vertical_flux_from_input.drainage[i]
+ infiltration = factor * vertical_flux_from_input.infiltration[i]
+
+ vertical_flux.precipitation[i] = precipitation
+ vertical_flux.evaporation[i] = evaporation
+ vertical_flux.drainage[i] = drainage
+ vertical_flux.infiltration[i] = infiltration
+ end
+
+ return nothing
+end
- influx = precipitation - evaporation + drainage - infiltration
- du.storage[i] += influx
- set_flow!(graph, id, influx)
+function formulate_basins!(
+ du::AbstractVector,
+ basin::Basin,
+ storage::AbstractVector,
+)::Nothing
+ update_vertical_flux!(basin, storage)
+ for (i, id) in enumerate(basin.node_id)
+ # add all vertical fluxes that enter the Basin
+ du.storage[i] += get_influx(basin, i)
end
return nothing
end
@@ -116,8 +125,6 @@ function continuous_control!(
current_area = get_tmp(current_area, u)
storage = u.storage
- outlet_flow_rate = get_tmp(outlet.flow_rate, u)
- pump_flow_rate = get_tmp(pump.flow_rate, u)
error = get_tmp(error, u)
set_error!(pid_control, p, u, t)
@@ -136,8 +143,10 @@ function continuous_control!(
controlled_node_id = only(outneighbor_labels_type(graph, id, EdgeType.control))
controls_pump = (controlled_node_id in pump.node_id)
+ controlled_node_idx =
+ controls_pump ? findsorted(pump.node_id, controlled_node_id) :
+ findsorted(outlet.node_id, controlled_node_id)
- # No flow of outlet if source level is lower than target level
if !controls_pump
src_id = inflow_id(graph, controlled_node_id)
dst_id = outflow_id(graph, controlled_node_id)
@@ -145,28 +154,29 @@ function continuous_control!(
src_level = get_level(p, src_id, t; storage)
dst_level = get_level(p, dst_id, t; storage)
- if src_level === nothing || dst_level === nothing
- factor_outlet = 1.0
- else
+ factor_outlet = 1.0
+
+ # No flow out of outlet if source level is lower than reference level
+ if !(src_level === nothing || dst_level === nothing)
Δlevel = src_level - dst_level
- factor_outlet = reduction_factor(Δlevel, 0.1)
+ factor_outlet *= reduction_factor(Δlevel, 0.1)
+ end
+
+ # No flow out of outlet if source level is lower than minimum crest level
+ if src_level !== nothing
+ controlled_node_idx = findsorted(outlet.node_id, controlled_node_id)
+
+ factor_outlet *= reduction_factor(
+ src_level - outlet.min_crest_level[controlled_node_idx],
+ 0.1,
+ )
end
else
factor_outlet = 1.0
end
- if controls_pump
- controlled_node_idx = findsorted(pump.node_id, controlled_node_id)
- factor_basin =
- low_storage_factor(storage, basin.node_id, listened_node_id, 10.0)
- else
- controlled_node_idx = findsorted(outlet.node_id, controlled_node_id)
-
- # Upstream node of outlet does not have to be a basin
- upstream_node_id = inflow_id(graph, controlled_node_id)
- factor_basin =
- low_storage_factor(storage, basin.node_id, upstream_node_id, 10.0)
- end
+ id_inflow = inflow_id(graph, controlled_node_id)
+ factor_basin = low_storage_factor(storage, basin.node_id, id_inflow, 10.0)
factor = factor_basin * factor_outlet
flow_rate = 0.0
@@ -213,17 +223,6 @@ function continuous_control!(
max_flow_rate[controlled_node_idx],
)
- # Below du.storage is updated. This is normally only done
- # in formulate!(du, connectivity, basin), but in this function
- # flows are set so du has to be updated too.
- if controls_pump
- pump_flow_rate[controlled_node_idx] = flow_rate
- du.storage[listened_node_idx] -= flow_rate
- else
- outlet_flow_rate[controlled_node_idx] = flow_rate
- du.storage[listened_node_idx] += flow_rate
- end
-
# Set flow for connected edges
src_id = inflow_id(graph, controlled_node_id)
dst_id = outflow_id(graph, controlled_node_id)
@@ -231,11 +230,19 @@ function continuous_control!(
set_flow!(graph, src_id, controlled_node_id, flow_rate)
set_flow!(graph, controlled_node_id, dst_id, flow_rate)
+ # Below du.storage is updated. This is normally only done
+ # in formulate!(du, connectivity, basin), but in this function
+ # flows are set so du has to be updated too.
has_index, dst_idx = id_index(basin.node_id, dst_id)
if has_index
du.storage[dst_idx] += flow_rate
end
+ has_index, src_idx = id_index(basin.node_id, src_id)
+ if has_index
+ du.storage[src_idx] -= flow_rate
+ end
+
# When the controlled pump flows out into fractional flow nodes
if controls_pump
for id in outflow_ids(graph, controlled_node_id)
@@ -263,9 +270,17 @@ function formulate_flow!(
storage::AbstractVector,
t::Number,
)::Nothing
- (; graph, basin) = p
- (; node_id, allocated, active, demand, demand_itp, return_factor, min_level) =
- user_demand
+ (; graph, basin, allocation) = p
+ (;
+ node_id,
+ allocated,
+ active,
+ demand_itp,
+ demand,
+ return_factor,
+ min_level,
+ demand_from_timeseries,
+ ) = user_demand
for (i, id) in enumerate(node_id)
src_id = inflow_id(graph, id)
@@ -281,9 +296,13 @@ function formulate_flow!(
# and the current demand.
# If allocation is not optimized then allocated = Inf, so the result is always
# effectively allocated = demand.
- for priority_idx in eachindex(allocated[i])
- alloc_prio = allocated[i][priority_idx]
- demand_prio = demand_itp[i][priority_idx](t)
+ for priority_idx in eachindex(allocation.priorities)
+ alloc_prio = allocated[i, priority_idx]
+ demand_prio = if demand_from_timeseries[i]
+ demand_itp[i][priority_idx](t)
+ else
+ demand[i, priority_idx]
+ end
alloc = min(alloc_prio, demand_prio)
q += alloc
end
@@ -303,7 +322,6 @@ function formulate_flow!(
# Return flow is immediate
set_flow!(graph, id, dst_id, q * return_factor[i])
- set_flow!(graph, id, -q * (1 - return_factor[i]))
end
return nothing
end
@@ -320,24 +338,24 @@ function formulate_flow!(
(; graph) = p
(; node_id, active, resistance, max_flow_rate) = linear_resistance
for (i, id) in enumerate(node_id)
- basin_a_id = inflow_id(graph, id)
- basin_b_id = outflow_id(graph, id)
+ inflow_id = linear_resistance.inflow_id[i]
+ outflow_id = linear_resistance.outflow_id[i]
if active[i]
- h_a = get_level(p, basin_a_id, t; storage)
- h_b = get_level(p, basin_b_id, t; storage)
+ h_a = get_level(p, inflow_id, t; storage)
+ h_b = get_level(p, outflow_id, t; storage)
q_unlimited = (h_a - h_b) / resistance[i]
q = clamp(q_unlimited, -max_flow_rate[i], max_flow_rate[i])
# add reduction_factor on highest level
if q > 0
- q *= low_storage_factor(storage, p.basin.node_id, basin_a_id, 10.0)
+ q *= low_storage_factor(storage, p.basin.node_id, inflow_id, 10.0)
else
- q *= low_storage_factor(storage, p.basin.node_id, basin_b_id, 10.0)
+ q *= low_storage_factor(storage, p.basin.node_id, outflow_id, 10.0)
end
- set_flow!(graph, basin_a_id, id, q)
- set_flow!(graph, id, basin_b_id, q)
+ set_flow!(graph, inflow_id, id, q)
+ set_flow!(graph, id, outflow_id, q)
end
end
return nothing
@@ -422,16 +440,17 @@ function formulate_flow!(
(; node_id, active, length, manning_n, profile_width, profile_slope) =
manning_resistance
for (i, id) in enumerate(node_id)
- basin_a_id = inflow_id(graph, id)
- basin_b_id = outflow_id(graph, id)
+ inflow_id = manning_resistance.inflow_id[i]
+ outflow_id = manning_resistance.outflow_id[i]
if !active[i]
continue
end
- h_a = get_level(p, basin_a_id, t; storage)
- h_b = get_level(p, basin_b_id, t; storage)
- bottom_a, bottom_b = basin_bottoms(basin, basin_a_id, basin_b_id, id)
+ h_a = get_level(p, inflow_id, t; storage)
+ h_b = get_level(p, outflow_id, t; storage)
+ bottom_a = basin_bottom(basin, inflow_id)
+ bottom_b = basin_bottom(basin, outflow_id)
slope = profile_slope[i]
width = profile_width[i]
n = manning_n[i]
@@ -461,8 +480,8 @@ function formulate_flow!(
q = q_sign * A / n * R_h^(2 / 3) * sqrt(Δh / L * 2 / π * atan(k * Δh) + eps)
- set_flow!(graph, basin_a_id, id, q)
- set_flow!(graph, id, basin_b_id, q)
+ set_flow!(graph, inflow_id, id, q)
+ set_flow!(graph, id, outflow_id, q)
end
return nothing
end
@@ -487,46 +506,6 @@ function formulate_flow!(
return nothing
end
-function formulate_flow!(
- terminal::Terminal,
- p::Parameters,
- storage::AbstractVector,
- t::Number,
-)::Nothing
- (; graph) = p
- (; node_id) = terminal
-
- for id in node_id
- for upstream_id in inflow_ids(graph, id)
- q = get_flow(graph, upstream_id, id, storage)
- add_flow!(graph, id, -q)
- end
- end
- return nothing
-end
-
-function formulate_flow!(
- level_boundary::LevelBoundary,
- p::Parameters,
- storage::AbstractVector,
- t::Number,
-)::Nothing
- (; graph) = p
- (; node_id) = level_boundary
-
- for id in node_id
- for in_id in inflow_ids(graph, id)
- q = get_flow(graph, in_id, id, storage)
- add_flow!(graph, id, -q)
- end
- for out_id in outflow_ids(graph, id)
- q = get_flow(graph, id, out_id, storage)
- add_flow!(graph, id, q)
- end
- end
- return nothing
-end
-
function formulate_flow!(
flow_boundary::FlowBoundary,
p::Parameters,
@@ -538,7 +517,7 @@ function formulate_flow!(
for (i, id) in enumerate(node_id)
# Requirement: edge points away from the flow boundary
- for dst_id in outflow_ids(graph, id)
+ for outflow_id in outflow_ids(graph, id)
if !active[i]
continue
end
@@ -546,8 +525,7 @@ function formulate_flow!(
rate = flow_rate[i](t)
# Adding water is always possible
- set_flow!(graph, id, dst_id, rate)
- set_flow!(graph, id, rate)
+ set_flow!(graph, id, outflow_id, rate)
end
end
end
@@ -629,11 +607,11 @@ function formulate_du!(
# subtract all outgoing flows
# add all ingoing flows
for (i, basin_id) in enumerate(basin.node_id)
- for in_id in inflow_ids(graph, basin_id)
- du[i] += get_flow(graph, in_id, basin_id, storage)
+ for inflow_id in basin.inflow_ids[i]
+ du[i] += get_flow(graph, inflow_id, basin_id, storage)
end
- for out_id in outflow_ids(graph, basin_id)
- du[i] -= get_flow(graph, basin_id, out_id, storage)
+ for outflow_id in basin.outflow_ids[i]
+ du[i] -= get_flow(graph, basin_id, outflow_id, storage)
end
end
return nothing
@@ -645,12 +623,10 @@ function formulate_flows!(p::Parameters, storage::AbstractVector, t::Number)::No
manning_resistance,
tabulated_rating_curve,
flow_boundary,
- level_boundary,
pump,
outlet,
user_demand,
fractional_flow,
- terminal,
) = p
formulate_flow!(linear_resistance, p, storage, t)
@@ -661,8 +637,6 @@ function formulate_flows!(p::Parameters, storage::AbstractVector, t::Number)::No
formulate_flow!(outlet, p, storage, t)
formulate_flow!(user_demand, p, storage, t)
- # do these last since they rely on formulated input flows
+ # do this last since they rely on formulated input flows
formulate_flow!(fractional_flow, p, storage, t)
- formulate_flow!(level_boundary, p, storage, t)
- formulate_flow!(terminal, p, storage, t)
end
diff --git a/core/src/sparsity.jl b/core/src/sparsity.jl
index a1be7b2e6..6493bee60 100644
--- a/core/src/sparsity.jl
+++ b/core/src/sparsity.jl
@@ -1,5 +1,5 @@
"""
-Get a sparse matrix whose sparsity matches the sparsity of the Jacobian
+Get a sparse matrix whose sparsity matches (with some false positives) the sparsity of the Jacobian
of the ODE problem. All nodes are taken into consideration, also the ones
that are inactive.
@@ -11,124 +11,35 @@ from the naming convention of this sparsity structure in the
differentialequations.jl docs.
"""
function get_jac_prototype(p::Parameters)::SparseMatrixCSC{Float64, Int64}
- (; basin, pid_control) = p
+ (; basin, pid_control, graph) = p
n_basins = length(basin.node_id)
n_states = n_basins + length(pid_control.node_id)
jac_prototype = spzeros(n_states, n_states)
- for nodefield in nodefields(p)
- update_jac_prototype!(jac_prototype, p, getfield(p, nodefield))
- end
-
+ update_jac_prototype!(jac_prototype, basin, graph)
+ update_jac_prototype!(jac_prototype, pid_control, basin, graph)
return jac_prototype
end
"""
-If both the unique node upstream and the unique node downstream of these
-nodes are basins, then these directly depend on eachother and affect the Jacobian 2x
-Basins always depend on themselves.
-"""
-function update_jac_prototype!(
- jac_prototype::SparseMatrixCSC{Float64, Int64},
- p::Parameters,
- node::Union{LinearResistance, ManningResistance},
-)::Nothing
- (; basin, graph) = p
-
- for id in node.node_id
- id_in = inflow_id(graph, id)
- id_out = outflow_id(graph, id)
-
- has_index_in, idx_in = id_index(basin.node_id, id_in)
- has_index_out, idx_out = id_index(basin.node_id, id_out)
-
- if has_index_in
- jac_prototype[idx_in, idx_in] = 1.0
- end
-
- if has_index_out
- jac_prototype[idx_out, idx_out] = 1.0
- end
-
- if has_index_in && has_index_out
- jac_prototype[idx_in, idx_out] = 1.0
- jac_prototype[idx_out, idx_in] = 1.0
- end
- end
- return nothing
-end
-
-"""
-Method for nodes that do not contribute to the Jacobian
-"""
-function update_jac_prototype!(
- jac_prototype::SparseMatrixCSC{Float64, Int64},
- p::Parameters,
- node::AbstractParameterNode,
-)::Nothing
- node_type = nameof(typeof(node))
-
- if !isa(
- node,
- Union{
- Basin,
- DiscreteControl,
- FlowBoundary,
- FractionalFlow,
- LevelBoundary,
- Terminal,
- },
- )
- error(
- "It is not specified how nodes of type $node_type contribute to the Jacobian prototype.",
- )
- end
- return nothing
-end
-
-"""
-If both the unique node upstream and the nodes down stream (or one node further
-if a fractional flow is in between) are basins, then the downstream basin depends
-on the upstream basin(s) and affect the Jacobian as many times as there are downstream basins
-Upstream basins always depend on themselves.
+Add nonzeros for basins connected to eachother via 1 node and possibly a fractional flow node
+Basins are also assumed to depend on themselves (main diagonal terms)
"""
function update_jac_prototype!(
jac_prototype::SparseMatrixCSC{Float64, Int64},
- p::Parameters,
- node::Union{Pump, Outlet, TabulatedRatingCurve, UserDemand},
+ basin::Basin,
+ graph::MetaGraph,
)::Nothing
- (; basin, fractional_flow, graph) = p
-
- for (i, id) in enumerate(node.node_id)
- id_in = inflow_id(graph, id)
-
- if hasfield(typeof(node), :is_pid_controlled) && node.is_pid_controlled[i]
- continue
- end
-
- # For inneighbors only directly connected basins give a contribution
- has_index_in, idx_in = id_index(basin.node_id, id_in)
-
- # For outneighbors there can be directly connected basins
- # or basins connected via a fractional flow
- # (but not both at the same time!)
- if has_index_in
- jac_prototype[idx_in, idx_in] = 1.0
-
- _, basin_idxs_out, has_fractional_flow_outneighbors =
- get_fractional_flow_connected_basins(id, basin, fractional_flow, graph)
-
- if !has_fractional_flow_outneighbors
- id_out = outflow_id(graph, id)
- has_index_out, idx_out = id_index(basin.node_id, id_out)
-
- if has_index_out
- jac_prototype[idx_in, idx_out] = 1.0
+ for (idx_1, id) in enumerate(basin.node_id)
+ for id_neighbor in inoutflow_ids(graph, id)
+ for id_neighbor_neighbor in inoutflow_ids(graph, id_neighbor)
+ if id_neighbor_neighbor.type == NodeType.FractionalFlow
+ id_neighbor_neighbor = outflow_id(graph, id_neighbor_neighbor)
end
- else
- for idx_out in basin_idxs_out
- jac_prototype[idx_in, idx_out] = 1.0
+ if id_neighbor_neighbor.type == NodeType.Basin
+ _, idx_2 = id_index(basin.node_id, id_neighbor_neighbor)
+ jac_prototype[idx_1, idx_2] = 1.0
end
end
end
@@ -137,62 +48,22 @@ function update_jac_prototype!(
end
"""
-The controlled basin affects itself and the basins upstream and downstream of the controlled pump
-affect eachother if there is a basin upstream of the pump. The state for the integral term
-and the controlled basin affect eachother, and the same for the integral state and the basin
-upstream of the pump if it is indeed a basin.
+Add nonzeros for the integral term and the basins on either side of the controlled node
"""
function update_jac_prototype!(
jac_prototype::SparseMatrixCSC{Float64, Int64},
- p::Parameters,
- node::PidControl,
+ pid_control::PidControl,
+ basin::Basin,
+ graph::MetaGraph,
)::Nothing
- (; basin, graph, pump) = p
-
- n_basins = length(basin.node_id)
-
- for i in eachindex(node.node_id)
- listen_node_id = node.listen_node_id[i]
- id = node.node_id[i]
-
- # ID of controlled pump/outlet
+ for (i, id) in enumerate(pid_control.node_id)
+ idx_integral = length(basin.node_id) + i
id_controlled = only(outneighbor_labels_type(graph, id, EdgeType.control))
-
- _, listen_idx = id_index(basin.node_id, listen_node_id)
-
- # Controlled basin affects itself
- jac_prototype[listen_idx, listen_idx] = 1.0
-
- # PID control integral state
- pid_state_idx = n_basins + i
- jac_prototype[listen_idx, pid_state_idx] = 1.0
- jac_prototype[pid_state_idx, listen_idx] = 1.0
-
- if id_controlled in pump.node_id
- id_pump_out = inflow_id(graph, id_controlled)
-
- # The basin downstream of the pump
- has_index, idx_out_out = id_index(basin.node_id, id_pump_out)
-
- if has_index
- # The basin downstream of the pump depends on PID control integral state
- jac_prototype[pid_state_idx, idx_out_out] = 1.0
-
- # The basin downstream of the pump also depends on the controlled basin
- jac_prototype[listen_idx, idx_out_out] = 1.0
- end
- else
- id_outlet_in = outflow_id(graph, id_controlled)
-
- # The basin upstream of the outlet
- has_index, idx_out_in = id_index(basin.node_id, id_outlet_in)
-
- if has_index
- # The basin upstream of the outlet depends on the PID control integral state
- jac_prototype[pid_state_idx, idx_out_in] = 1.0
-
- # The basin upstream of the outlet also depends on the controlled basin
- jac_prototype[listen_idx, idx_out_in] = 1.0
+ for id_basin in inoutflow_ids(graph, id_controlled)
+ if id_basin.type == NodeType.Basin
+ _, idx_basin = id_index(basin.node_id, id_basin)
+ jac_prototype[idx_basin, idx_integral] = 1.0
+ jac_prototype[idx_integral, idx_basin] = 1.0
end
end
end
diff --git a/core/src/util.jl b/core/src/util.jl
index 7ea165b6e..c0c84a89f 100644
--- a/core/src/util.jl
+++ b/core/src/util.jl
@@ -31,17 +31,10 @@ function get_storage_from_level(basin::Basin, state_idx::Int, level::Float64)::F
storage_discrete = basin.storage[state_idx]
area_discrete = basin.area[state_idx]
level_discrete = basin.level[state_idx]
- bottom = first(level_discrete)
-
- if level < bottom
- node_id = basin.node_id.values[state_idx]
- @error "The level $level of $node_id is lower than the bottom of this basin; $bottom."
- return NaN
- end
level_lower_index = searchsortedlast(level_discrete, level)
- # If the level is equal to the bottom then the storage is 0
+ # If the level is at or below the bottom then the storage is 0
if level_lower_index == 0
return 0.0
end
@@ -77,7 +70,10 @@ function get_storages_from_levels(basin::Basin, levels::Vector)::Vector{Float64}
for (i, level) in enumerate(levels)
storage = get_storage_from_level(basin, i, level)
- if isnan(storage)
+ bottom = first(basin.level[i])
+ node_id = basin.node_id.values[i]
+ if level < bottom
+ @error "The initial level ($level) of $node_id is below the bottom ($bottom)."
errors = true
end
storages[i] = storage
@@ -411,23 +407,6 @@ function basin_bottom(basin::Basin, node_id::NodeID)::Union{Float64, Nothing}
end
end
-"Get the bottom on both ends of a node. If only one has a bottom, use that for both."
-function basin_bottoms(
- basin::Basin,
- basin_a_id::NodeID,
- basin_b_id::NodeID,
- id::NodeID,
-)::Tuple{Float64, Float64}
- bottom_a = basin_bottom(basin, basin_a_id)
- bottom_b = basin_bottom(basin, basin_b_id)
- if bottom_a === bottom_b === nothing
- error(lazy"No bottom defined on either side of $id")
- end
- bottom_a = something(bottom_a, bottom_b)
- bottom_b = something(bottom_b, bottom_a)
- return bottom_a, bottom_b
-end
-
"""
Replace the truth states in the logic mapping which contain wildcards with
all possible explicit truth states.
@@ -438,7 +417,7 @@ function expand_logic_mapping(
logic_mapping_expanded = Dict{Tuple{NodeID, String}, String}()
for (node_id, truth_state) in keys(logic_mapping)
- pattern = r"^[TFUD\*]+$"
+ pattern = r"^[TF\*]+$"
if !occursin(pattern, truth_state)
error("Truth state \'$truth_state\' contains illegal characters or is empty.")
end
@@ -503,15 +482,15 @@ function get_fractional_flow_connected_basins(
has_fractional_flow_outneighbors = false
- for first_outneighbor_id in outflow_ids(graph, node_id)
- if first_outneighbor_id in fractional_flow.node_id
+ for first_outflow_id in outflow_ids(graph, node_id)
+ if first_outflow_id in fractional_flow.node_id
has_fractional_flow_outneighbors = true
- second_outneighbor_id = outflow_id(graph, first_outneighbor_id)
- has_index, basin_idx = id_index(basin.node_id, second_outneighbor_id)
+ second_outflow_id = outflow_id(graph, first_outflow_id)
+ has_index, basin_idx = id_index(basin.node_id, second_outflow_id)
if has_index
push!(
fractional_flow_idxs,
- searchsortedfirst(fractional_flow.node_id, first_outneighbor_id),
+ searchsortedfirst(fractional_flow.node_id, first_outflow_id),
)
push!(basin_idxs, basin_idx)
end
@@ -551,6 +530,9 @@ function Base.getindex(fv::FlatVector, i::Int)
return v[r + 1]
end
+"Construct a FlatVector from one of the fields of SavedFlow."
+FlatVector(saveval::Vector{SavedFlow}, sym::Symbol) = FlatVector(getfield.(saveval, sym))
+
"""
Function that goes smoothly from 0 to 1 in the interval [0,threshold],
and is constant outside this interval.
@@ -585,89 +567,66 @@ end
is_flow_constraining(node::AbstractParameterNode) = hasfield(typeof(node), :max_flow_rate)
"""Whether the given node is flow direction constraining (only in direction of edges)."""
-is_flow_direction_constraining(node::AbstractParameterNode) =
- (nameof(typeof(node)) ∈ [:Pump, :Outlet, :TabulatedRatingCurve, :FractionalFlow])
-
-"""Find out whether a path exists between a start node and end node in the given allocation network."""
-function allocation_path_exists_in_graph(
- graph::MetaGraph,
- start_node_id::NodeID,
- end_node_id::NodeID,
-)::Bool
- node_ids_visited = Set{NodeID}()
- stack = [start_node_id]
-
- while !isempty(stack)
- current_node_id = pop!(stack)
- if current_node_id == end_node_id
- return true
- end
- if !(current_node_id in node_ids_visited)
- push!(node_ids_visited, current_node_id)
- for outneighbor_node_id in outflow_ids_allocation(graph, current_node_id)
- push!(stack, outneighbor_node_id)
- end
- end
- end
- return false
-end
+is_flow_direction_constraining(node::AbstractParameterNode) = (
+ node isa Union{
+ Pump,
+ Outlet,
+ TabulatedRatingCurve,
+ FractionalFlow,
+ Terminal,
+ UserDemand,
+ FlowBoundary,
+ }
+)
function has_main_network(allocation::Allocation)::Bool
if !is_active(allocation)
false
else
- first(allocation.allocation_network_ids) == 1
+ first(allocation.subnetwork_ids) == 1
end
end
-function is_main_network(allocation_network_id::Int32)::Bool
- return allocation_network_id == 1
-end
-
-function get_user_demand(p::Parameters, node_id::NodeID, priority_idx::Int)::Float64
- (; user_demand, allocation) = p
- (; demand) = user_demand
- user_demand_idx = findsorted(user_demand.node_id, node_id)
- n_priorities = length(allocation.priorities)
- return demand[(user_demand_idx - 1) * n_priorities + priority_idx]
-end
-
-function set_user_demand!(
- p::Parameters,
- node_id::NodeID,
- priority_idx::Int,
- value::Float64,
-)::Nothing
- (; user_demand, allocation) = p
- (; demand) = user_demand
- user_demand_idx = findsorted(user_demand.node_id, node_id)
- n_priorities = length(allocation.priorities)
- demand[(user_demand_idx - 1) * n_priorities + priority_idx] = value
- return nothing
+function is_main_network(subnetwork_id::Int32)::Bool
+ return subnetwork_id == 1
end
function get_all_priorities(db::DB, config::Config)::Vector{Int32}
priorities = Set{Int32}()
# TODO: Is there a way to automatically grab all tables with a priority column?
- for type in
- [UserDemandStaticV1, UserDemandTimeV1, LevelDemandStaticV1, LevelDemandTimeV1]
+ for type in [
+ UserDemandStaticV1,
+ UserDemandTimeV1,
+ LevelDemandStaticV1,
+ LevelDemandTimeV1,
+ FlowDemandStaticV1,
+ FlowDemandTimeV1,
+ ]
union!(priorities, load_structvector(db, config, type).priority)
end
- return sort(unique(priorities))
+ return sort(collect(priorities))
end
-function get_basin_priority_idx(p::Parameters, node_id::NodeID)::Int
- (; graph, level_demand, allocation) = p
- @assert node_id.type == NodeType.Basin
- inneighbors_control = inneighbor_labels_type(graph, node_id, EdgeType.control)
- if isempty(inneighbors_control)
+function get_external_priority_idx(p::Parameters, node_id::NodeID)::Int
+ (; graph, level_demand, flow_demand, allocation) = p
+ inneighbor_control_ids = inneighbor_labels_type(graph, node_id, EdgeType.control)
+ if isempty(inneighbor_control_ids)
return 0
- else
- idx = findsorted(level_demand.node_id, only(inneighbors_control))
+ end
+ inneighbor_control_id = only(inneighbor_control_ids)
+ type = inneighbor_control_id.type
+ if type == NodeType.LevelDemand
+ idx = findsorted(level_demand.node_id, inneighbor_control_id)
priority = level_demand.priority[idx]
- return findsorted(allocation.priorities, priority)
+ elseif type == NodeType.FlowDemand
+ idx = findsorted(flow_demand.node_id, inneighbor_control_id)
+ priority = flow_demand.priority[idx]
+ else
+ error("Nodes of type $type have no priority.")
end
+
+ return findsorted(allocation.priorities, priority)
end
"""
@@ -692,3 +651,88 @@ function set_is_pid_controlled!(p::Parameters)::Nothing
end
return nothing
end
+
+function has_external_demand(
+ graph::MetaGraph,
+ node_id::NodeID,
+ node_type::Symbol,
+)::Tuple{Bool, Union{NodeID, Nothing}}
+ control_inneighbors = inneighbor_labels_type(graph, node_id, EdgeType.control)
+ for id in control_inneighbors
+ if graph[id].type == node_type
+ return true, id
+ end
+ end
+ return false, nothing
+end
+
+function Base.get(
+ constraints::JuMP.Containers.DenseAxisArray,
+ node_id::NodeID,
+)::Union{JuMP.ConstraintRef, Nothing}
+ if node_id in only(constraints.axes)
+ constraints[node_id]
+ else
+ nothing
+ end
+end
+
+"""
+Get the time interval between (flow) saves
+"""
+function get_Δt(integrator)::Float64
+ (; p, t, dt) = integrator
+ (; saveat) = p.graph[]
+ if iszero(saveat)
+ dt
+ elseif isinf(saveat)
+ t
+ else
+ t_end = integrator.sol.prob.tspan[end]
+ if t_end - t > saveat
+ saveat
+ else
+ # The last interval might be shorter than saveat
+ rem = t % saveat
+ iszero(rem) ? saveat : rem
+ end
+ end
+end
+
+function get_influx(basin::Basin, node_id::NodeID)::Float64
+ has_index, basin_idx = id_index(basin.node_id, node_id)
+ if !has_index
+ error("Sum of vertical fluxes requested for non-basin $id.")
+ end
+ return get_influx(basin, basin_idx)
+end
+
+function get_influx(basin::Basin, basin_idx::Int; prev::Bool = false)::Float64
+ (; vertical_flux, vertical_flux_prev) = basin
+ vertical_flux = get_tmp(vertical_flux, 0)
+ flux_vector = prev ? vertical_flux_prev : vertical_flux
+ (; precipitation, evaporation, drainage, infiltration) = flux_vector
+ return precipitation[basin_idx] - evaporation[basin_idx] + drainage[basin_idx] -
+ infiltration[basin_idx]
+end
+
+function get_discrete_control_indices(discrete_control::DiscreteControl, condition_idx::Int)
+ (; greater_than) = discrete_control
+ condition_idx_now = 1
+
+ for (compound_variable_idx, vec) in enumerate(greater_than)
+ l = length(vec)
+
+ if condition_idx_now + l > condition_idx
+ greater_than_idx = condition_idx - condition_idx_now + 1
+ return compound_variable_idx, greater_than_idx
+ end
+
+ condition_idx_now += l
+ end
+end
+
+has_fractional_flow_outneighbors(graph::MetaGraph, node_id::NodeID)::Bool = any(
+ outneighbor_id.type == NodeType.FractionalFlow for
+ outneighbor_id in outflow_ids(graph, node_id)
+)
diff --git a/core/src/validation.jl b/core/src/validation.jl
index 9817f9acc..a00471892 100644
--- a/core/src/validation.jl
+++ b/core/src/validation.jl
@@ -18,9 +18,9 @@ neighbortypes(::Val{:fractional_flow}) = Set((:basin, :terminal, :level_boundary
neighbortypes(::Val{:flow_boundary}) =
Set((:basin, :fractional_flow, :terminal, :level_boundary))
neighbortypes(::Val{:level_boundary}) =
- Set((:linear_resistance, :manning_resistance, :pump, :outlet))
+ Set((:linear_resistance, :pump, :outlet, :tabulated_rating_curve))
neighbortypes(::Val{:linear_resistance}) = Set((:basin, :level_boundary))
-neighbortypes(::Val{:manning_resistance}) = Set((:basin, :level_boundary))
+neighbortypes(::Val{:manning_resistance}) = Set((:basin,))
neighbortypes(::Val{:discrete_control}) = Set((
:pump,
:outlet,
@@ -33,6 +33,8 @@ neighbortypes(::Val{:discrete_control}) = Set((
neighbortypes(::Val{:pid_control}) = Set((:pump, :outlet))
neighbortypes(::Val{:tabulated_rating_curve}) =
Set((:basin, :fractional_flow, :terminal, :level_boundary))
+neighbortypes(::Val{:flow_demand}) =
+ Set((:linear_resistance, :manning_resistance, :tabulated_rating_curve, :pump, :outlet))
neighbortypes(::Any) = Set{Symbol}()
# Allowed number of inneighbors and outneighbors per node type
@@ -45,8 +47,8 @@ end
n_neighbor_bounds_flow(nodetype::Symbol) = n_neighbor_bounds_flow(Val(nodetype))
n_neighbor_bounds_flow(::Val{:Basin}) = n_neighbor_bounds(0, typemax(Int), 0, typemax(Int))
-n_neighbor_bounds_flow(::Val{:LinearResistance}) = n_neighbor_bounds(1, 1, 1, typemax(Int))
-n_neighbor_bounds_flow(::Val{:ManningResistance}) = n_neighbor_bounds(1, 1, 1, typemax(Int))
+n_neighbor_bounds_flow(::Val{:LinearResistance}) = n_neighbor_bounds(1, 1, 1, 1)
+n_neighbor_bounds_flow(::Val{:ManningResistance}) = n_neighbor_bounds(1, 1, 1, 1)
n_neighbor_bounds_flow(::Val{:TabulatedRatingCurve}) =
n_neighbor_bounds(1, 1, 1, typemax(Int))
n_neighbor_bounds_flow(::Val{:FractionalFlow}) = n_neighbor_bounds(1, 1, 1, 1)
@@ -60,11 +62,12 @@ n_neighbor_bounds_flow(::Val{:PidControl}) = n_neighbor_bounds(0, 0, 0, 0)
n_neighbor_bounds_flow(::Val{:DiscreteControl}) = n_neighbor_bounds(0, 0, 0, 0)
n_neighbor_bounds_flow(::Val{:UserDemand}) = n_neighbor_bounds(1, 1, 1, 1)
n_neighbor_bounds_flow(::Val{:LevelDemand}) = n_neighbor_bounds(0, 0, 0, 0)
+n_neighbor_bounds_flow(::Val{:FlowDemand}) = n_neighbor_bounds(0, 0, 0, 0)
n_neighbor_bounds_flow(nodetype) =
error("'n_neighbor_bounds_flow' not defined for $nodetype.")
n_neighbor_bounds_control(nodetype::Symbol) = n_neighbor_bounds_control(Val(nodetype))
-n_neighbor_bounds_control(::Val{:Basin}) = n_neighbor_bounds(0, 1, 0, typemax(Int))
+n_neighbor_bounds_control(::Val{:Basin}) = n_neighbor_bounds(0, 1, 0, 0)
n_neighbor_bounds_control(::Val{:LinearResistance}) = n_neighbor_bounds(0, 1, 0, 0)
n_neighbor_bounds_control(::Val{:ManningResistance}) = n_neighbor_bounds(0, 1, 0, 0)
n_neighbor_bounds_control(::Val{:TabulatedRatingCurve}) = n_neighbor_bounds(0, 1, 0, 0)
@@ -79,6 +82,7 @@ n_neighbor_bounds_control(::Val{:DiscreteControl}) =
n_neighbor_bounds(0, 0, 1, typemax(Int))
n_neighbor_bounds_control(::Val{:UserDemand}) = n_neighbor_bounds(0, 0, 0, 0)
n_neighbor_bounds_control(::Val{:LevelDemand}) = n_neighbor_bounds(0, 0, 1, typemax(Int))
+n_neighbor_bounds_control(::Val{:FlowDemand}) = n_neighbor_bounds(0, 0, 1, 1)
n_neighbor_bounds_control(nodetype) =
error("'n_neighbor_bounds_control' not defined for $nodetype.")
@@ -98,6 +102,9 @@ sort_by_id_state_level(row) = (row.node_id, row.control_state, row.level)
sort_by_priority(row) = (row.node_id, row.priority)
sort_by_priority_time(row) = (row.node_id, row.priority, row.time)
sort_by_subgrid_level(row) = (row.subgrid_id, row.basin_level)
+sort_by_variable(row) =
+ (row.node_id, row.listen_node_type, row.listen_node_id, row.variable)
+sort_by_condition(row) = (row.node_id, row.compound_variable_id, row.greater_than)
# get the right sort by function given the Schema, with sort_by_id as the default
sort_by_function(table::StructVector{<:Legolas.AbstractRecord}) = sort_by_id
@@ -106,10 +113,13 @@ sort_by_function(table::StructVector{BasinProfileV1}) = sort_by_id_level
sort_by_function(table::StructVector{UserDemandStaticV1}) = sort_by_priority
sort_by_function(table::StructVector{UserDemandTimeV1}) = sort_by_priority_time
sort_by_function(table::StructVector{BasinSubgridV1}) = sort_by_subgrid_level
+sort_by_function(table::StructVector{DiscreteControlVariableV1}) = sort_by_variable
+sort_by_function(table::StructVector{DiscreteControlConditionV1}) = sort_by_condition
const TimeSchemas = Union{
BasinTimeV1,
FlowBoundaryTimeV1,
+ FlowDemandTimeV1,
LevelBoundaryTimeV1,
PidControlTimeV1,
TabulatedRatingCurveTimeV1,
@@ -141,6 +151,17 @@ function sorted_table!(
return table
end
+function valid_config(config::Config)::Bool
+ errors = false
+
+ if config.starttime >= config.endtime
+ errors = true
+ @error "The model starttime must be before the endtime."
+ end
+
+ return !errors
+end
+
"""
Test for each node given its node type whether the nodes that
# are downstream ('down-edge') of this node are of an allowed type
@@ -155,8 +176,7 @@ function valid_edges(graph::MetaGraph)::Bool
if !(type_dst in neighbortypes(type_src))
errors = true
- edge_id = graph[id_src, id_dst].id
- @error "Cannot connect a $type_src to a $type_dst." edge_id id_src id_dst
+ @error "Cannot connect a $type_src to a $type_dst." id_src id_dst
end
end
return !errors
@@ -287,19 +307,17 @@ function valid_fractional_flow(
control_states = Set{String}([key[2] for key in keys(control_mapping)])
for src_id in src_ids
- src_outneighbor_ids = Set(outflow_ids(graph, src_id))
- if src_outneighbor_ids ⊈ node_id_set
+ src_outflow_ids = Set(outflow_ids(graph, src_id))
+ if src_outflow_ids ⊈ node_id_set
errors = true
- @error(
- "$src_id combines fractional flow outneighbors with other outneigbor types."
- )
+ @error("$src_id has outflow to FractionalFlow and other node types.")
end
# Each control state (including missing) must sum to 1
for control_state in control_states
fraction_sum = 0.0
- for ff_id in intersect(src_outneighbor_ids, node_id_set)
+ for ff_id in intersect(src_outflow_ids, node_id_set)
parameter_values = get(control_mapping, (ff_id, control_state), nothing)
if parameter_values === nothing
continue
@@ -386,21 +404,21 @@ end
function incomplete_subnetwork(graph::MetaGraph, node_ids::Dict{Int32, Set{NodeID}})::Bool
errors = false
- for (allocation_network_id, subnetwork_node_ids) in node_ids
+ for (subnetwork_id, subnetwork_node_ids) in node_ids
subnetwork, _ = induced_subgraph(graph, code_for.(Ref(graph), subnetwork_node_ids))
if !is_connected(subnetwork)
- @error "All nodes in subnetwork $allocation_network_id should be connected"
+ @error "All nodes in subnetwork $subnetwork_id should be connected"
errors = true
end
end
return errors
end
-function non_positive_allocation_network_id(graph::MetaGraph)::Bool
+function non_positive_subnetwork_id(graph::MetaGraph)::Bool
errors = false
- for allocation_network_id in keys(graph[].node_ids)
- if (allocation_network_id <= 0)
- @error "Allocation network id $allocation_network_id needs to be a positive integer."
+ for subnetwork_id in keys(graph[].node_ids)
+ if (subnetwork_id <= 0)
+ @error "Allocation network id $subnetwork_id needs to be a positive integer."
errors = true
end
end
@@ -487,7 +505,8 @@ Check:
"""
function valid_discrete_control(p::Parameters, config::Config)::Bool
(; discrete_control, graph) = p
- (; node_id, logic_mapping, look_ahead, variable, listen_node_id) = discrete_control
+ (; node_id, logic_mapping, look_ahead, variable, listen_node_id, greater_than) =
+ discrete_control
t_end = seconds_since(config.endtime, config.starttime)
errors = false
@@ -500,7 +519,7 @@ function valid_discrete_control(p::Parameters, config::Config)::Bool
truth_states_wrong_length = String[]
# The number of conditions of this DiscreteControl node
- n_conditions = length(searchsorted(node_id, id))
+ n_conditions = sum(length(greater_than[i]) for i in searchsorted(node_id, id))
for (key, control_state) in logic_mapping
id_, truth_state = key
@@ -542,35 +561,35 @@ function valid_discrete_control(p::Parameters, config::Config)::Bool
if !isempty(undefined_control_states)
undefined_list = collect(undefined_control_states)
- node_type = typeof(node).name.name
@error "These control states from $id are not defined for controlled $id_outneighbor: $undefined_list."
errors = true
end
end
end
- for (Δt, var, node_id) in zip(look_ahead, variable, listen_node_id)
- if !iszero(Δt)
- node_type = node_id.type
- # TODO: If more transient listen variables must be supported, this validation must be more specific
- # (e.g. for some node some variables are transient, some not).
- if node_type ∉ [NodeType.FlowBoundary, NodeType.LevelBoundary]
- errors = true
- @error "Look ahead supplied for non-timeseries listen variable '$var' from listen node $node_id."
- else
- if Δt < 0
+ for (look_aheads, variables, listen_node_ids) in
+ zip(look_ahead, variable, listen_node_id)
+ for (Δt, var, node_id) in zip(look_aheads, variables, listen_node_ids)
+ if !iszero(Δt)
+ node_type = node_id.type
+ if node_type ∉ [NodeType.FlowBoundary, NodeType.LevelBoundary]
errors = true
- @error "Negative look ahead supplied for listen variable '$var' from listen node $node_id."
+ @error "Look ahead supplied for non-timeseries listen variable '$var' from listen node $node_id."
else
- node = getfield(p, graph[node_id].type)
- idx = if node_type == NodeType.Basin
- id_index(node.node_id, node_id)
- else
- searchsortedfirst(node.node_id, node_id)
- end
- interpolation = getfield(node, Symbol(var))[idx]
- if t_end + Δt > interpolation.t[end]
+ if Δt < 0
errors = true
- @error "Look ahead for listen variable '$var' from listen node $node_id goes past timeseries end during simulation."
+ @error "Negative look ahead supplied for listen variable '$var' from listen node $node_id."
+ else
+ node = getfield(p, graph[node_id].type)
+ idx = if node_type == NodeType.Basin
+ id_index(node.node_id, node_id)
+ else
+ searchsortedfirst(node.node_id, node_id)
+ end
+ interpolation = getfield(node, Symbol(var))[idx]
+ if t_end + Δt > interpolation.t[end]
+ errors = true
+ @error "Look ahead for listen variable '$var' from listen node $node_id goes past timeseries end during simulation."
+ end
end
end
end
@@ -582,29 +601,35 @@ end
"""
The source nodes must only have one allocation outneighbor and no allocation inneighbors.
"""
-function valid_sources(p::Parameters, allocation_network_id::Int32)::Bool
+function valid_sources(
+ p::Parameters,
+ capacity::JuMP.Containers.SparseAxisArray{Float64, 2, Tuple{NodeID, NodeID}},
+ subnetwork_id::Int32,
+)::Bool
(; graph) = p
- edge_ids = graph[].edge_ids[allocation_network_id]
-
errors = false
- for edge in edge_ids
+ for edge in keys(capacity.data)
+ if !haskey(graph, edge...)
+ edge = reverse(edge)
+ end
+
(id_source, id_dst) = edge
- if graph[id_source, id_dst].allocation_network_id_source == allocation_network_id
+ if graph[edge...].subnetwork_id_source == subnetwork_id
from_source_node = id_source.type in allocation_source_nodetypes
- if is_main_network(allocation_network_id)
+ if is_main_network(subnetwork_id)
if !from_source_node
errors = true
@error "The source node of source edge $edge in the main network must be one of $allocation_source_nodetypes."
end
else
- from_main_network = is_main_network(graph[id_source].allocation_network_id)
+ from_main_network = is_main_network(graph[id_source].subnetwork_id)
if !from_source_node && !from_main_network
errors = true
- @error "The source node of source edge $edge for subnetwork $allocation_network_id is neither a source node nor is it coming from the main network."
+ @error "The source node of source edge $edge for subnetwork $subnetwork_id is neither a source node nor is it coming from the main network."
end
end
end
diff --git a/core/src/write.jl b/core/src/write.jl
index 9f855e324..1f2ed07d4 100644
--- a/core/src/write.jl
+++ b/core/src/write.jl
@@ -84,15 +84,83 @@ function basin_table(
node_id::Vector{Int32},
storage::Vector{Float64},
level::Vector{Float64},
+ inflow_rate::Vector{Float64},
+ outflow_rate::Vector{Float64},
+ storage_rate::Vector{Float64},
+ precipitation::Vector{Float64},
+ evaporation::Vector{Float64},
+ drainage::Vector{Float64},
+ infiltration::Vector{Float64},
+ balance_error::Vector{Float64},
+ relative_error::Vector{Float64},
}
+ (; saved) = model
+ # The last timestep is not included; there is no period over which to compute flows.
data = get_storages_and_levels(model)
+ storage = vec(data.storage[:, begin:(end - 1)])
+ level = vec(data.level[:, begin:(end - 1)])
+ Δstorage = vec(diff(data.storage; dims = 2))
+
nbasin = length(data.node_id)
- ntsteps = length(data.time)
+ ntsteps = length(data.time) - 1
+ nrows = nbasin * ntsteps
+
+ inflow_rate = FlatVector(saved.flow.saveval, :inflow)
+ outflow_rate = FlatVector(saved.flow.saveval, :outflow)
+ precipitation = zeros(nrows)
+ evaporation = zeros(nrows)
+ drainage = zeros(nrows)
+ infiltration = zeros(nrows)
+ balance_error = zeros(nrows)
+ relative_error = zeros(nrows)
+
+ idx_row = 0
+ for cvec in saved.vertical_flux.saveval
+ for (precipitation_, evaporation_, drainage_, infiltration_) in
+ zip(cvec.precipitation, cvec.evaporation, cvec.drainage, cvec.infiltration)
+ idx_row += 1
+ precipitation[idx_row] = precipitation_
+ evaporation[idx_row] = evaporation_
+ drainage[idx_row] = drainage_
+ infiltration[idx_row] = infiltration_
+ end
+ end
- time = repeat(data.time; inner = nbasin)
+ time = repeat(data.time[begin:(end - 1)]; inner = nbasin)
+ Δtime_seconds = seconds.(diff(data.time))
+ Δtime = repeat(Δtime_seconds; inner = nbasin)
node_id = repeat(Int32.(data.node_id); outer = ntsteps)
+ storage_rate = Δstorage ./ Δtime
+
+ for i in 1:nrows
+ storage_flow = storage_rate[i]
+ storage_increase = max(storage_flow, 0.0)
+ storage_decrease = max(-storage_flow, 0.0)
+
+ total_in = inflow_rate[i] + precipitation[i] + drainage[i] - storage_increase
+ total_out = outflow_rate[i] + evaporation[i] + infiltration[i] - storage_decrease
+ balance_error[i] = total_in - total_out
+ mean_flow_rate = 0.5 * (total_in + total_out)
+ if mean_flow_rate != 0
+ relative_error[i] = balance_error[i] / mean_flow_rate
+ end
+ end
- return (; time, node_id, storage = vec(data.storage), level = vec(data.level))
+ return (;
+ time,
+ node_id,
+ storage,
+ level,
+ inflow_rate,
+ outflow_rate,
+ storage_rate,
+ precipitation,
+ evaporation,
+ drainage,
+ infiltration,
+ balance_error,
+ relative_error,
+ )
end
"Create a flow result table from the saved data"
@@ -110,28 +178,14 @@ function flow_table(
(; config, saved, integrator) = model
(; t, saveval) = saved.flow
(; graph) = integrator.p
- (; flow_dict, flow_vertical_dict) = graph[]
+ (; flow_dict) = graph[]
- # self-loops have no edge ID
from_node_type = String[]
from_node_id = Int32[]
to_node_type = String[]
to_node_id = Int32[]
unique_edge_ids_flow = Union{Int32, Missing}[]
- vertical_flow_node_ids = Vector{NodeID}(undef, length(flow_vertical_dict))
- for (node_id, index) in flow_vertical_dict
- vertical_flow_node_ids[index] = node_id
- end
-
- for id in vertical_flow_node_ids
- push!(from_node_type, string(id.type))
- push!(from_node_id, id.value)
- push!(to_node_type, string(id.type))
- push!(to_node_id, id.value)
- push!(unique_edge_ids_flow, missing)
- end
-
flow_edge_ids = Vector{Tuple{NodeID, NodeID}}(undef, length(flow_dict))
for (edge_id, index) in flow_dict
flow_edge_ids[index] = edge_id
@@ -159,7 +213,7 @@ function flow_table(
from_node_id = repeat(from_node_id; outer = ntsteps)
to_node_type = repeat(to_node_type; outer = ntsteps)
to_node_id = repeat(to_node_id; outer = ntsteps)
- flow_rate = FlatVector(saveval)
+ flow_rate = FlatVector(saveval, :flow)
return (;
time,
@@ -229,7 +283,7 @@ function allocation_flow_table(
subnetwork_id::Vector{Int32},
priority::Vector{Int32},
flow_rate::Vector{Float64},
- collect_demands::BitVector,
+ optimization_type::Vector{String},
}
(; config) = model
(; record_flow) = model.integrator.p.allocation
@@ -246,7 +300,7 @@ function allocation_flow_table(
record_flow.subnetwork_id,
record_flow.priority,
record_flow.flow_rate,
- record_flow.collect_demands,
+ record_flow.optimization_type,
)
end
diff --git a/core/test/allocation_test.jl b/core/test/allocation_test.jl
index 91b9f286b..1171743b7 100644
--- a/core/test/allocation_test.jl
+++ b/core/test/allocation_test.jl
@@ -1,5 +1,5 @@
@testitem "Allocation solve" begin
- using Ribasim: NodeID
+ using Ribasim: NodeID, OptimizationType
using ComponentArrays: ComponentVector
import SQLite
import JuMP
@@ -11,42 +11,27 @@
db = SQLite.DB(db_path)
p = Ribasim.Parameters(db, cfg)
- graph = p.graph
+ (; graph, allocation) = p
close(db)
- # Test compound allocation edge data
- for edge_metadata in values(graph.edge_data)
- if edge_metadata.allocation_flow
- @test first(edge_metadata.node_ids) == edge_metadata.from_id
- @test last(edge_metadata.node_ids) == edge_metadata.to_id
- else
- @test isempty(edge_metadata.node_ids)
- end
- end
-
- Ribasim.set_flow!(graph, NodeID(:FlowBoundary, 1), NodeID(:Basin, 2), 4.5) # Source flow
+ allocation.mean_flows[(NodeID(:FlowBoundary, 1), NodeID(:Basin, 2))][] = 4.5
allocation_model = p.allocation.allocation_models[1]
u = ComponentVector(; storage = zeros(length(p.basin.node_id)))
- Ribasim.allocate!(p, allocation_model, 0.0, u)
+ Ribasim.allocate!(p, allocation_model, 0.0, u, OptimizationType.allocate)
+ # Last priority (= 2) flows
F = allocation_model.problem[:F]
- @test JuMP.value(F[(NodeID(:Basin, 2), NodeID(:Basin, 6))]) ≈ 0.0
+ @test JuMP.value(F[(NodeID(:Basin, 2), NodeID(:Pump, 5))]) ≈ 0.0
@test JuMP.value(F[(NodeID(:Basin, 2), NodeID(:UserDemand, 10))]) ≈ 0.5
- @test JuMP.value(F[(NodeID(:Basin, 8), NodeID(:UserDemand, 12))]) ≈ 0.0
- @test JuMP.value(F[(NodeID(:Basin, 6), NodeID(:Basin, 8))]) ≈ 0.0
+ @test JuMP.value(F[(NodeID(:Basin, 8), NodeID(:UserDemand, 12))]) ≈ 2.0
+ @test JuMP.value(F[(NodeID(:Basin, 6), NodeID(:Outlet, 7))]) ≈ 2.0
@test JuMP.value(F[(NodeID(:FlowBoundary, 1), NodeID(:Basin, 2))]) ≈ 0.5
@test JuMP.value(F[(NodeID(:Basin, 6), NodeID(:UserDemand, 11))]) ≈ 0.0
- allocated = p.user_demand.allocated
- @test allocated[1] ≈ [0.0, 0.5]
- @test allocated[2] ≈ [4.0, 0.0]
- @test allocated[3] ≈ [0.0, 0.0]
-
- # Test getting and setting UserDemand demands
- (; user_demand) = p
- Ribasim.set_user_demand!(p, NodeID(:UserDemand, 11), 2, Float64(Ï€))
- @test user_demand.demand[4] ≈ π
- @test Ribasim.get_user_demand(p, NodeID(:UserDemand, 11), 2) ≈ π
+ (; allocated) = p.user_demand
+ @test allocated[1, :] ≈ [0.0, 0.5]
+ @test allocated[2, :] ≈ [4.0, 0.0]
+ @test allocated[3, :] ≈ [0.0, 2.0]
end
@testitem "Allocation objective: linear absolute" begin
@@ -74,7 +59,7 @@ end
end
@testitem "Allocation with controlled fractional flow" begin
- using DataFrames
+ using DataFrames: DataFrame, groupby
using Ribasim: NodeID
using OrdinaryDiffEq: solve!
using JuMP
@@ -83,15 +68,22 @@ end
@__DIR__,
"../../generated_testmodels/fractional_flow_subnetwork/ribasim.toml",
)
- model = Ribasim.BMI.initialize(Ribasim.Model, toml_path)
+ model = Ribasim.Model(toml_path)
problem = model.integrator.p.allocation.allocation_models[1].problem
F = problem[:F]
+ constraints_fractional_flow = problem[:fractional_flow]
@test JuMP.normalized_coefficient(
- problem[:fractional_flow][(NodeID(:TabulatedRatingCurve, 3), NodeID(:Basin, 5))],
+ constraints_fractional_flow[(
+ NodeID(:TabulatedRatingCurve, 3),
+ NodeID(:FractionalFlow, 4),
+ )],
F[(NodeID(:Basin, 2), NodeID(:TabulatedRatingCurve, 3))],
) ≈ -0.75
@test JuMP.normalized_coefficient(
- problem[:fractional_flow][(NodeID(:TabulatedRatingCurve, 3), NodeID(:Basin, 8))],
+ constraints_fractional_flow[(
+ NodeID(:TabulatedRatingCurve, 3),
+ NodeID(:FractionalFlow, 7),
+ )],
F[(NodeID(:Basin, 2), NodeID(:TabulatedRatingCurve, 3))],
) ≈ -0.25
@@ -133,14 +125,18 @@ end
@test record_control.truth_state == ["F", "T"]
@test record_control.control_state == ["A", "B"]
- fractional_flow_constraints =
- model.integrator.p.allocation.allocation_models[1].problem[:fractional_flow]
@test JuMP.normalized_coefficient(
- problem[:fractional_flow][(NodeID(:TabulatedRatingCurve, 3), NodeID(:Basin, 5))],
+ constraints_fractional_flow[(
+ NodeID(:TabulatedRatingCurve, 3),
+ NodeID(:FractionalFlow, 4),
+ )],
F[(NodeID(:Basin, 2), NodeID(:TabulatedRatingCurve, 3))],
) ≈ -0.75
@test JuMP.normalized_coefficient(
- problem[:fractional_flow][(NodeID(:TabulatedRatingCurve, 3), NodeID(:Basin, 8))],
+ constraints_fractional_flow[(
+ NodeID(:TabulatedRatingCurve, 3),
+ NodeID(:FractionalFlow, 7),
+ )],
F[(NodeID(:Basin, 2), NodeID(:TabulatedRatingCurve, 3))],
) ≈ -0.25
end
@@ -160,9 +156,9 @@ end
p = Ribasim.Parameters(db, cfg)
close(db)
(; allocation, graph) = p
- (; main_network_connections, allocation_network_ids) = allocation
+ (; main_network_connections, subnetwork_ids, allocation_models) = allocation
@test Ribasim.has_main_network(allocation)
- @test Ribasim.is_main_network(first(allocation_network_ids))
+ @test Ribasim.is_main_network(first(subnetwork_ids))
# Connections from main network to subnetworks
@test isempty(main_network_connections[1])
@@ -171,16 +167,15 @@ end
@test only(main_network_connections[4]) == (NodeID(:Basin, 10), NodeID(:Pump, 38))
# main-sub connections are part of main network allocation network
- allocation_edges_main_network = graph[].edge_ids[1]
+ allocation_model_main_network = Ribasim.get_allocation_model(p, Int32(1))
@test [
(NodeID(:Basin, 2), NodeID(:Pump, 11)),
(NodeID(:Basin, 6), NodeID(:Pump, 24)),
(NodeID(:Basin, 10), NodeID(:Pump, 38)),
- ] ⊆ allocation_edges_main_network
+ ] ⊆ keys(allocation_model_main_network.capacity.data)
# Subnetworks interpreted as user_demands require variables and constraints to
# support absolute value expressions in the objective function
- allocation_model_main_network = Ribasim.get_allocation_model(p, Int32(1))
problem = allocation_model_main_network.problem
@test problem[:F_abs_user_demand].axes[1] == NodeID.(:Pump, [11, 24, 38])
@test problem[:abs_positive_user_demand].axes[1] == NodeID.(:Pump, [11, 24, 38])
@@ -196,11 +191,12 @@ end
[(NodeID(:Basin, 10), NodeID(:Pump, 38))]
end
-@testitem "allocation with main network optimization problem" begin
+@testitem "Allocation with main network optimization problem" begin
using SQLite
- using Ribasim: NodeID
+ using Ribasim: NodeID, OptimizationType
using ComponentArrays: ComponentVector
using JuMP
+ using DataFrames: DataFrame, ByRow, transform!
toml_path = normpath(
@__DIR__,
@@ -214,24 +210,32 @@ end
close(db)
(; allocation, user_demand, graph, basin) = p
- (; allocation_models, subnetwork_demands, subnetwork_allocateds) = allocation
+ (;
+ allocation_models,
+ subnetwork_demands,
+ subnetwork_allocateds,
+ record_flow,
+ mean_flows,
+ ) = allocation
t = 0.0
# Collecting demands
u = ComponentVector(; storage = zeros(length(basin.node_id)))
for allocation_model in allocation_models[2:end]
- Ribasim.allocate!(p, allocation_model, t, u; collect_demands = true)
+ Ribasim.allocate!(p, allocation_model, t, u, OptimizationType.internal_sources)
+ Ribasim.allocate!(p, allocation_model, t, u, OptimizationType.collect_demands)
end
+ # See the difference between these values here and in
+ # "subnetworks_with_sources"
@test subnetwork_demands[(NodeID(:Basin, 2), NodeID(:Pump, 11))] ≈ [4.0, 4.0, 0.0]
@test subnetwork_demands[(NodeID(:Basin, 6), NodeID(:Pump, 24))] ≈ [0.004, 0.0, 0.0]
- @test subnetwork_demands[(NodeID(:Basin, 10), NodeID(:Pump, 38))] ≈
- [0.001, 0.002, 0.002]
+ @test subnetwork_demands[(NodeID(:Basin, 10), NodeID(:Pump, 38))][1:2] ≈ [0.001, 0.002]
# Solving for the main network, containing subnetworks as UserDemands
allocation_model = allocation_models[1]
(; problem) = allocation_model
- Ribasim.allocate!(p, allocation_model, t, u)
+ Ribasim.allocate!(p, allocation_model, t, u, OptimizationType.allocate)
# Main network objective function
objective = JuMP.objective_function(problem)
@@ -242,7 +246,8 @@ end
@test F_abs_user_demand[NodeID(:Pump, 38)] ∈ objective_variables
# Running full allocation algorithm
- Ribasim.set_flow!(graph, NodeID(:FlowBoundary, 1), NodeID(:Basin, 2), 4.5)
+ (; Δt_allocation) = allocation_models[1]
+ mean_flows[(NodeID(:FlowBoundary, 1), NodeID(:Basin, 2))][] = 4.5 * Δt_allocation
u = ComponentVector(; storage = zeros(length(p.basin.node_id)))
Ribasim.update_allocation!((; p, t, u))
@@ -252,11 +257,64 @@ end
[0.00399999999, 0.0, 0.0]
@test subnetwork_allocateds[NodeID(:Basin, 10), NodeID(:Pump, 38)] ≈ [0.001, 0.0, 0.0]
- @test user_demand.allocated[2] ≈ [4.0, 0.0, 0.0]
- @test user_demand.allocated[7] ≈ [0.001, 0.0, 0.0]
+ # Test for existence of edges in allocation flow record
+ allocation_flow = DataFrame(record_flow)
+ transform!(
+ allocation_flow,
+ [:from_node_type, :from_node_id, :to_node_type, :to_node_id] =>
+ ByRow((a, b, c, d) -> haskey(graph, NodeID(a, b), NodeID(c, d))) =>
+ :edge_exists,
+ )
+ @test all(allocation_flow.edge_exists)
+
+ @test user_demand.allocated[2, :] ≈ [4.0, 0.0, 0.0]
+ @test user_demand.allocated[7, :] ≈ [0.001, 0.0, 0.0]
+end
+
+@testitem "Subnetworks with sources" begin
+ using SQLite
+ using Ribasim: NodeID, OptimizationType
+ using ComponentArrays: ComponentVector
+ using JuMP
+
+ toml_path = normpath(
+ @__DIR__,
+ "../../generated_testmodels/subnetworks_with_sources/ribasim.toml",
+ )
+ @test ispath(toml_path)
+ cfg = Ribasim.Config(toml_path)
+ db_path = Ribasim.input_path(cfg, cfg.database)
+ db = SQLite.DB(db_path)
+ p = Ribasim.Parameters(db, cfg)
+ close(db)
+
+ (; allocation, user_demand, graph, basin) = p
+ (; allocation_models, subnetwork_demands, subnetwork_allocateds, mean_flows) =
+ allocation
+ t = 0.0
+
+ # Set flows of sources in
+ mean_flows[(NodeID(:FlowBoundary, 58), NodeID(:Basin, 16))][] = 1.0
+ mean_flows[(NodeID(:FlowBoundary, 59), NodeID(:Basin, 44))][] = 1e-3
+
+ # Collecting demands
+ u = ComponentVector(; storage = zeros(length(basin.node_id)))
+ for allocation_model in allocation_models[2:end]
+ Ribasim.allocate!(p, allocation_model, t, u, OptimizationType.internal_sources)
+ Ribasim.allocate!(p, allocation_model, t, u, OptimizationType.collect_demands)
+ end
+
+ # See the difference between these values here and in
+ # "allocation with main network optimization problem", internal sources
+ # lower the subnetwork demands
+ @test subnetwork_demands[(NodeID(:Basin, 2), NodeID(:Pump, 11))] ≈ [4.0, 4.0, 0.0]
+ @test subnetwork_demands[(NodeID(:Basin, 6), NodeID(:Pump, 24))] ≈ [0.004, 0.0, 0.0]
+ @test subnetwork_demands[(NodeID(:Basin, 10), NodeID(:Pump, 38))][1:2] ≈ [0.001, 0.001]
end
@testitem "Allocation level control" begin
+ import JuMP
+
toml_path = normpath(@__DIR__, "../../generated_testmodels/level_demand/ribasim.toml")
@test ispath(toml_path)
model = Ribasim.run(toml_path)
@@ -271,8 +329,8 @@ end
Ï• = 1e-3 # precipitation
q = Ribasim.get_flow(
graph,
- Ribasim.NodeID(Ribasim.NodeType.FlowBoundary, 1),
- Ribasim.NodeID(Ribasim.NodeType.Basin, 2),
+ Ribasim.NodeID(:FlowBoundary, 1),
+ Ribasim.NodeID(:Basin, 2),
0,
)
A = basin.area[1][1]
@@ -321,4 +379,150 @@ end
stage_6_start_idx = findfirst(stage_6)
u_stage_6(Ï„) = storage[stage_6_start_idx]
@test storage[stage_6] ≈ u_stage_6.(t[stage_6]) rtol = 1e-4
+
+ # Isolated LevelDemand + Basin pair to test optional min_level
+ problem = allocation.allocation_models[2].problem
+ @test JuMP.value(only(problem[:F_basin_in])) == 0.0
+ @test JuMP.value(only(problem[:F_basin_out])) == 0.0
+ q = JuMP.normalized_rhs(only(problem[:basin_outflow]))
+ storage_surplus = 1000.0 # Basin #7 is 1000 m2 and 1 m above LevelDemand max_level
+ @test q ≈ storage_surplus / Δt_allocation
+end
+
+@testitem "Flow demand" begin
+ using JuMP
+ using Ribasim: NodeID, OptimizationType
+
+ toml_path = normpath(@__DIR__, "../../generated_testmodels/flow_demand/ribasim.toml")
+ @test ispath(toml_path)
+ model = Ribasim.Model(toml_path)
+ (; p) = model.integrator
+ (; graph, allocation, flow_demand, user_demand, level_boundary) = p
+
+ # Test has_external_demand
+ @test !any(
+ Ribasim.has_external_demand(graph, node_id, :flow_demand)[1] for
+ node_id in graph[].node_ids[2] if node_id.value != 2
+ )
+ @test Ribasim.has_external_demand(
+ graph,
+ NodeID(:TabulatedRatingCurve, 2),
+ :flow_demand,
+ )[1]
+
+ allocation_model = allocation.allocation_models[1]
+ (; problem) = allocation_model
+
+ F = problem[:F]
+ F_flow_buffer_in = problem[:F_flow_buffer_in]
+ F_flow_buffer_out = problem[:F_flow_buffer_out]
+ F_abs_flow_demand = problem[:F_abs_flow_demand]
+
+ node_id_with_flow_demand = NodeID(:TabulatedRatingCurve, 2)
+ constraint_flow_out = problem[:flow_demand_outflow][node_id_with_flow_demand]
+
+ # Test flow conservation constraint containing flow buffer
+ constraint_with_flow_buffer =
+ JuMP.constraint_object(problem[:flow_conservation][node_id_with_flow_demand])
+ @test constraint_with_flow_buffer.func ==
+ F[(NodeID(:LevelBoundary, 1), node_id_with_flow_demand)] -
+ F[(node_id_with_flow_demand, NodeID(:Basin, 3))] -
+ F_flow_buffer_in[node_id_with_flow_demand] +
+ F_flow_buffer_out[node_id_with_flow_demand]
+
+ constraint_flow_demand_outflow =
+ JuMP.constraint_object(problem[:flow_demand_outflow][node_id_with_flow_demand])
+ @test constraint_flow_demand_outflow.func ==
+ F[(node_id_with_flow_demand, NodeID(:Basin, 3))] + 0.0
+ @test constraint_flow_demand_outflow.set.upper == 0.0
+
+ t = 0.0
+ (; u) = model.integrator
+ optimization_type = OptimizationType.internal_sources
+ for (edge, value) in allocation.mean_flows
+ value[] = Ribasim.get_flow(graph, edge..., 0)
+ end
+ Ribasim.set_initial_values!(allocation_model, p, u, t)
+
+ # Priority 1
+ Ribasim.allocate_priority!(
+ allocation_model,
+ model.integrator.u,
+ p,
+ t,
+ 1,
+ optimization_type,
+ )
+ objective = JuMP.objective_function(problem)
+ @test F_abs_flow_demand[node_id_with_flow_demand] in keys(objective.terms)
+ # Reduced demand
+ @test flow_demand.demand[1] == flow_demand.demand_itp[1](t) - 0.001
+ @test JuMP.normalized_rhs(constraint_flow_out) == Inf
+
+ ## Priority 2
+ Ribasim.allocate_priority!(
+ allocation_model,
+ model.integrator.u,
+ p,
+ t,
+ 2,
+ optimization_type,
+ )
+ # No demand left
+ @test flow_demand.demand[1] ≈ 0.0
+ # Allocated
+ @test JuMP.value(only(F_flow_buffer_in)) == 0.001
+ @test JuMP.normalized_rhs(constraint_flow_out) == 0.0
+
+ ## Priority 3
+ Ribasim.allocate_priority!(
+ allocation_model,
+ model.integrator.u,
+ p,
+ t,
+ 3,
+ optimization_type,
+ )
+ @test JuMP.normalized_rhs(constraint_flow_out) == Inf
+ # The flow from the source is used up in previous priorities
+ @test JuMP.value(F[(NodeID(:LevelBoundary, 1), node_id_with_flow_demand)]) == 0
+ # So flow from the flow buffer is used for UserDemand #4
+ @test JuMP.value(F_flow_buffer_out[node_id_with_flow_demand]) == 0.001
+ # Flow taken from buffer
+ @test JuMP.value(only(F_flow_buffer_out)) == user_demand.demand_itp[1][3](t)
+ # No flow coming from level boundary
+ @test JuMP.value(F[(only(level_boundary.node_id), node_id_with_flow_demand)]) == 0
+
+ ## Priority 4
+ Ribasim.allocate_priority!(
+ allocation_model,
+ model.integrator.u,
+ p,
+ t,
+ 4,
+ optimization_type,
+ )
+ # Get demand from buffers
+ d = user_demand.demand_itp[3][4](t)
+ @test JuMP.value(F[(NodeID(:UserDemand, 4), NodeID(:Basin, 7))]) +
+ JuMP.value(F[(NodeID(:UserDemand, 6), NodeID(:Basin, 7))]) == d
+end
+
+@testitem "flow_demand_with_max_flow_rate" begin
+ using Ribasim: NodeID
+ using JuMP
+
+ toml_path = normpath(
+ @__DIR__,
+ "../../generated_testmodels/linear_resistance_demand/ribasim.toml",
+ )
+ @test ispath(toml_path)
+ model = Ribasim.Model(toml_path)
+
+ # Test for pump max flow capacity constraint
+ (; problem) = model.integrator.p.allocation.allocation_models[1]
+ constraint = JuMP.constraint_object(
+ problem[:capacity][(NodeID(:Basin, 1), NodeID(:LinearResistance, 2))],
+ )
+ @test constraint.set.upper == 2.0
end
diff --git a/core/test/bmi_test.jl b/core/test/bmi_test.jl
index fd33ed312..3e4847c27 100644
--- a/core/test/bmi_test.jl
+++ b/core/test/bmi_test.jl
@@ -63,6 +63,8 @@ end
"basin.level",
"basin.infiltration",
"basin.drainage",
+ "basin.infiltration_integrated",
+ "basin.drainage_integrated",
"basin.subgrid_level",
"user_demand.demand",
"user_demand.realized",
@@ -71,7 +73,7 @@ end
BMI.update_until(model, 86400.0)
value_second = BMI.get_value_ptr(model, name)
# get_value_ptr does not copy
- @test value_first === value_second
+ @test value_first === value_second || pointer(value_first) == pointer(value_second)
end
end
@@ -91,3 +93,20 @@ end
BMI.update_until(model, 0.6day)
@test all(isapprox.(realized, demand * 0.6day; rtol = 1e-3))
end
+
+@testitem "vertical basin flux" begin
+ import BasicModelInterface as BMI
+
+ toml_path = normpath(@__DIR__, "../../generated_testmodels/basic/ribasim.toml")
+ @test ispath(toml_path)
+ model = BMI.initialize(Ribasim.Model, toml_path)
+ drainage = BMI.get_value_ptr(model, "basin.drainage")
+ drainage_flux = [1.0, 2.0, 3.0, 4.0]
+ drainage .= drainage_flux
+
+ Δt = 5 * 86400.0
+ BMI.update_until(model, Δt)
+
+ drainage_integrated = BMI.get_value_ptr(model, "basin.drainage_integrated")
+ @test drainage_integrated ≈ Δt * drainage_flux
+end
diff --git a/core/test/control_test.jl b/core/test/control_test.jl
index ae572e45e..1bee012a9 100644
--- a/core/test/control_test.jl
+++ b/core/test/control_test.jl
@@ -36,12 +36,12 @@
# Control times
t_1 = discrete_control.record.time[3]
- t_1_index = findfirst(t .≈ t_1)
- @test level[1, t_1_index] ≈ discrete_control.greater_than[1]
+ t_1_index = findfirst(>=(t_1), t)
+ @test level[1, t_1_index] <= discrete_control.greater_than[1][1]
t_2 = discrete_control.record.time[4]
- t_2_index = findfirst(t .≈ t_2)
- @test level[2, t_2_index] ≈ discrete_control.greater_than[2]
+ t_2_index = findfirst(>=(t_2), t)
+ @test level[2, t_2_index] >= discrete_control.greater_than[2][1]
flow = get_tmp(graph[].flow, 0)
@test all(iszero, flow)
@@ -54,13 +54,13 @@ end
p = model.integrator.p
(; discrete_control, flow_boundary) = p
- Δt = discrete_control.look_ahead[1]
+ Δt = discrete_control.look_ahead[1][1]
t = Ribasim.tsaves(model)
t_control = discrete_control.record.time[2]
t_control_index = searchsortedfirst(t, t_control)
- greater_than = discrete_control.greater_than[1]
+ greater_than = discrete_control.greater_than[1][1]
flow_t_control = flow_boundary.flow_rate[1](t_control)
flow_t_control_ahead = flow_boundary.flow_rate[1](t_control + Δt)
@@ -78,13 +78,13 @@ end
p = model.integrator.p
(; discrete_control, level_boundary) = p
- Δt = discrete_control.look_ahead[1]
+ Δt = discrete_control.look_ahead[1][1]
t = Ribasim.tsaves(model)
t_control = discrete_control.record.time[2]
t_control_index = searchsortedfirst(t, t_control)
- greater_than = discrete_control.greater_than[1]
+ greater_than = discrete_control.greater_than[1][1]
level_t_control = level_boundary.level[1](t_control)
level_t_control_ahead = level_boundary.level[1](t_control + Δt)
@@ -145,41 +145,11 @@ end
@test discrete_control.record.control_state == ["high", "low"]
@test discrete_control.record.time[1] == 0.0
t = Ribasim.datetime_since(discrete_control.record.time[2], model.config.starttime)
- @test Date(t) == Date("2020-03-15")
+ @test Date(t) == Date("2020-03-16")
# then the rating curve is updated to the "low" control_state
@test only(p.tabulated_rating_curve.tables).t[2] == 1.2
end
-@testitem "Setpoint with bounds control" begin
- toml_path = normpath(
- @__DIR__,
- "../../generated_testmodels/level_setpoint_with_minmax/ribasim.toml",
- )
- @test ispath(toml_path)
- model = Ribasim.run(toml_path)
- p = model.integrator.p
- (; discrete_control) = p
- (; record, greater_than) = discrete_control
- level = Ribasim.get_storages_and_levels(model).level[1, :]
- t = Ribasim.tsaves(model)
-
- t_none_1 = discrete_control.record.time[2]
- t_in = discrete_control.record.time[3]
- t_none_2 = discrete_control.record.time[4]
-
- level_min = greater_than[1]
- setpoint = greater_than[2]
-
- t_1_none_index = findfirst(t .≈ t_none_1)
- t_in_index = findfirst(t .≈ t_in)
- t_2_none_index = findfirst(t .≈ t_none_2)
-
- @test record.control_state == ["out", "none", "in", "none"]
- @test level[t_1_none_index] ≈ setpoint
- @test level[t_in_index] ≈ level_min
- @test level[t_2_none_index] ≈ setpoint
-end
-
@testitem "Set PID target with DiscreteControl" begin
using Ribasim: NodeID
@@ -206,3 +176,23 @@ end
@test isapprox(level[t_idx_target_jump], target_high, atol = 1e-1)
@test isapprox(level[end], target_low, atol = 1e-1)
end
+
+@testitem "Compound condition" begin
+ using Ribasim: NodeID
+
+ toml_path = normpath(
+ @__DIR__,
+ "../../generated_testmodels/compound_variable_condition/ribasim.toml",
+ )
+ @test ispath(toml_path)
+ model = Ribasim.run(toml_path)
+ (; discrete_control) = model.integrator.p
+ (; listen_node_id, variable, weight, record) = discrete_control
+
+ @test listen_node_id == [[NodeID(:FlowBoundary, 2), NodeID(:FlowBoundary, 3)]]
+ @test variable == [["flow_rate", "flow_rate"]]
+ @test weight == [[0.5, 0.5]]
+ @test record.time ≈ [0.0, model.integrator.sol.t[end] / 2]
+ @test record.truth_state == ["F", "T"]
+ @test record.control_state == ["Off", "On"]
+end
diff --git a/core/test/create_test.jl b/core/test/create_test.jl
index dc74c3b0d..480886084 100644
--- a/core/test/create_test.jl
+++ b/core/test/create_test.jl
@@ -1,4 +1,4 @@
-@testitem "Non-positive allocation network ID" begin
+@testitem "Non-positive subnetwork ID" begin
using MetaGraphsNext
using Graphs
using Logging
@@ -29,7 +29,7 @@
logger = TestLogger()
with_logger(logger) do
- Ribasim.non_positive_allocation_network_id(graph)
+ Ribasim.non_positive_subnetwork_id(graph)
end
@test length(logger.logs) == 2
diff --git a/core/test/data/config_test.toml b/core/test/data/config_test.toml
index 9c7390dd3..a3ecfbe44 100644
--- a/core/test/data/config_test.toml
+++ b/core/test/data/config_test.toml
@@ -1,8 +1,9 @@
starttime = 2019-01-01
endtime = 2019-12-31
+crs = "EPSG:28992"
input_dir = "../../generated_testmodels/lhm"
results_dir = "../../generated_testmodels/lhm"
-ribasim_version = "2024.4.0"
+ribasim_version = "2024.7.0"
[basin]
time = "basin/time.arrow"
diff --git a/core/test/data/logging_test_loglevel_debug.toml b/core/test/data/logging_test_loglevel_debug.toml
index a8c077906..9c3041d27 100644
--- a/core/test/data/logging_test_loglevel_debug.toml
+++ b/core/test/data/logging_test_loglevel_debug.toml
@@ -1,8 +1,9 @@
starttime = 2019-01-01
endtime = 2019-12-31
+crs = "EPSG:28992"
input_dir = "."
results_dir = "results"
-ribasim_version = "2024.4.0"
+ribasim_version = "2024.7.0"
[logging]
verbosity = "debug"
diff --git a/core/test/data/logging_test_no_loglevel.toml b/core/test/data/logging_test_no_loglevel.toml
index 7e0c9514b..8e44fc276 100644
--- a/core/test/data/logging_test_no_loglevel.toml
+++ b/core/test/data/logging_test_no_loglevel.toml
@@ -1,5 +1,6 @@
starttime = 2019-01-01
endtime = 2019-12-31
+crs = "EPSG:28992"
input_dir = "."
results_dir = "results"
-ribasim_version = "2024.4.0"
+ribasim_version = "2024.7.0"
diff --git a/core/test/docs.toml b/core/test/docs.toml
index a7f35121a..341eb6111 100644
--- a/core/test/docs.toml
+++ b/core/test/docs.toml
@@ -3,11 +3,16 @@
starttime = 2019-01-01 # required
endtime = 2021-01-01 # required
+# Coordinate Reference System
+# The accepted strings are documented here:
+# https://proj.org/en/9.4/development/reference/functions.html#c.proj_create
+crs = "EPSG:4326" # required
+
# input files
input_dir = "." # required
results_dir = "results" # required
-ribasim_version = "2024.4.0" # required
+ribasim_version = "2024.7.0" # required
# Specific tables can also go into Arrow files rather than the database.
# For large tables this can benefit from better compressed file sizes.
diff --git a/core/test/io_test.jl b/core/test/io_test.jl
index e113b5ccc..1de92e5db 100644
--- a/core/test/io_test.jl
+++ b/core/test/io_test.jl
@@ -8,6 +8,7 @@
database = "path/to/file",
input_dir = ".",
results_dir = "results",
+ crs = "EPSG:28992",
ribasim_version = string(Ribasim.pkgversion(Ribasim)),
)
config = Ribasim.Config(toml, "model")
@@ -21,6 +22,7 @@
database = "path/to/file",
input_dir = "input",
results_dir = "results",
+ crs = "EPSG:28992",
ribasim_version = string(Ribasim.pkgversion(Ribasim)),
)
config = Ribasim.Config(toml, "model")
@@ -34,6 +36,7 @@
database = "/path/to/file",
input_dir = ".",
results_dir = "results",
+ crs = "EPSG:28992",
ribasim_version = string(Ribasim.pkgversion(Ribasim)),
)
config = Ribasim.Config(toml)
diff --git a/core/test/main_test.jl b/core/test/main_test.jl
index 042751719..b94336808 100644
--- a/core/test/main_test.jl
+++ b/core/test/main_test.jl
@@ -1,12 +1,3 @@
-@testitem "version" begin
- using IOCapture: capture
-
- (; value, output) = capture() do
- Ribasim.main(["--version"])
- end
- @test value == 0
- @test output == string(pkgversion(Ribasim))
-end
@testitem "toml_path" begin
using IOCapture: capture
@@ -24,7 +15,7 @@ end
@test ispath(toml_path)
(; value, output, error, backtrace) = capture() do
- Ribasim.main([toml_path])
+ Ribasim.main(toml_path)
end
@test value == 0
if value != 0
@@ -34,23 +25,3 @@ end
end
@test occursin("version in the TOML config file does not match", output)
end
-
-@testitem "too many arguments for main" begin
- using IOCapture: capture
-
- (; value, output) = capture() do
- Ribasim.main(["too", "many"])
- end
- @test value == 1
- @test occursin("Exactly 1 argument expected, got 2", output)
-end
-
-@testitem "non-existing file for main" begin
- using IOCapture: capture
-
- (; value, output) = capture() do
- Ribasim.main(["non-existing-file.toml"])
- end
- @test value == 1
- @test occursin("File not found: non-existing-file.toml", output)
-end
diff --git a/core/test/run_models_test.jl b/core/test/run_models_test.jl
index faeb6fff6..5c9037cd2 100644
--- a/core/test/run_models_test.jl
+++ b/core/test/run_models_test.jl
@@ -8,7 +8,8 @@
toml_path = normpath(@__DIR__, "../../generated_testmodels/trivial/ribasim.toml")
@test ispath(toml_path)
- model = Ribasim.run(toml_path)
+ config = Ribasim.Config(toml_path)
+ model = Ribasim.run(config)
@test model isa Ribasim.Model
@test successful_retcode(model)
(; p) = model.integrator
@@ -44,8 +45,36 @@
(DateTime, Union{Int32, Missing}, String, Int32, String, Int32, Float64),
)
@test Tables.schema(basin) == Tables.Schema(
- (:time, :node_id, :storage, :level),
- (DateTime, Int32, Float64, Float64),
+ (
+ :time,
+ :node_id,
+ :storage,
+ :level,
+ :inflow_rate,
+ :outflow_rate,
+ :storage_rate,
+ :precipitation,
+ :evaporation,
+ :drainage,
+ :infiltration,
+ :balance_error,
+ :relative_error,
+ ),
+ (
+ DateTime,
+ Int32,
+ Float64,
+ Float64,
+ Float64,
+ Float64,
+ Float64,
+ Float64,
+ Float64,
+ Float64,
+ Float64,
+ Float64,
+ Float64,
+ ),
)
@test Tables.schema(control) == Tables.Schema(
(:time, :control_node_id, :truth_state, :control_state),
@@ -75,9 +104,9 @@
:subnetwork_id,
:priority,
:flow_rate,
- :collect_demands,
+ :optimization_type,
),
- (DateTime, Int32, String, Int32, String, Int32, Int32, Int32, Float64, Bool),
+ (DateTime, Int32, String, Int32, String, Int32, Int32, Int32, Float64, String),
)
@test Tables.schema(subgrid) == Tables.Schema(
(:time, :subgrid_id, :subgrid_level),
@@ -88,9 +117,9 @@
@testset "Results size" begin
nsaved = length(tsaves(model))
@test nsaved > 10
- # t0 has no flow, 2 flow edges and 2 boundary condition flows
- @test nrow(flow) == (nsaved - 1) * 4
- @test nrow(basin) == nsaved
+ # t0 has no flow, 2 flow edges
+ @test nrow(flow) == (nsaved - 1) * 2
+ @test nrow(basin) == nsaved - 1
@test nrow(control) == 0
@test nrow(allocation) == 0
@test nrow(subgrid) == nsaved * length(p.subgrid.level)
@@ -98,12 +127,21 @@
@testset "Results values" begin
@test flow.time[1] == DateTime(2020)
- @test coalesce.(flow.edge_id[1:4], -1) == [-1, -1, 1, 2]
- @test flow.from_node_id[1:4] == [6, 922, 6, 0]
- @test flow.to_node_id[1:4] == [6, 922, 0, 922]
+ @test coalesce.(flow.edge_id[1:2], -1) == [0, 1]
+ @test flow.from_node_id[1:2] == [6, 0]
+ @test flow.to_node_id[1:2] == [0, 922]
@test basin.storage[1] ≈ 1.0
@test basin.level[1] ≈ 0.044711584
+ @test basin.storage_rate[1] ≈
+ (basin.storage[2] - basin.storage[1]) / config.solver.saveat
+ @test all(==(0), basin.inflow_rate)
+ @test all(>(0), basin.outflow_rate)
+ @test flow.flow_rate[1] == basin.outflow_rate[1]
+ @test all(==(0), basin.drainage)
+ @test all(==(0), basin.infiltration)
+ @test all(q -> abs(q) < 1e-7, basin.balance_error)
+ @test all(q -> abs(q) < 0.01, basin.relative_error)
# The exporter interpolates 1:1 for three subgrid elements, but shifted by 1.0 meter.
basin_level = basin.level[1]
@@ -125,10 +163,11 @@ end
model = Ribasim.run(toml_path)
@test model isa Ribasim.Model
@test model.integrator.u.storage ≈ [1000]
- @test model.integrator.p.basin.precipitation == [0.0]
- @test model.integrator.p.basin.potential_evaporation == [0.0]
- @test model.integrator.p.basin.drainage == [0.0]
- @test model.integrator.p.basin.infiltration == [0.0]
+ vertical_flux = Ribasim.get_tmp(model.integrator.p.basin.vertical_flux, 0)
+ @test vertical_flux.precipitation == [0.0]
+ @test vertical_flux.evaporation == [0.0]
+ @test vertical_flux.drainage == [0.0]
+ @test vertical_flux.infiltration == [0.0]
@test successful_retcode(model)
end
@@ -142,10 +181,11 @@ end
@test model isa Ribasim.Model
stor = model.integrator.u.storage
- prec = model.integrator.p.basin.precipitation
- evap = model.integrator.p.basin.potential_evaporation
- drng = model.integrator.p.basin.drainage
- infl = model.integrator.p.basin.infiltration
+ vertical_flux = Ribasim.get_tmp(model.integrator.p.basin.vertical_flux, 0)
+ prec = vertical_flux.precipitation
+ evap = vertical_flux.evaporation
+ drng = vertical_flux.drainage
+ infl = vertical_flux.infiltration
# The dynamic data has missings, but these are not set.
@test prec == [0.0]
@test evap == [0.0]
@@ -234,7 +274,9 @@ end
model = Ribasim.run(toml_path)
@test model isa Ribasim.Model
@test successful_retcode(model)
- @test length(model.integrator.p.basin.precipitation) == 4
+ @test allunique(Ribasim.tsaves(model))
+ precipitation = Ribasim.get_tmp(model.integrator.p.basin.vertical_flux, 0).precipitation
+ @test length(precipitation) == 4
@test model.integrator.sol.u[end] ≈ Float32[472.02444, 472.02252, 367.6387, 1427.981] skip =
Sys.isapple()
end
@@ -458,7 +500,7 @@ end
u = model.integrator.sol.u[end]
p = model.integrator.p
- h_actual = get_tmp(p.basin.current_level, u)
+ h_actual = get_tmp(p.basin.current_level, u)[1:50]
x = collect(10.0:20.0:990.0)
h_expected = standard_step_method(x, 5.0, 1.0, 0.04, h_actual[end], 1.0e-6)
@@ -474,7 +516,7 @@ end
@test Ribasim.get_flow(
p.graph,
NodeID(:ManningResistance, 101),
- NodeID(:LevelBoundary, 102),
+ NodeID(:Basin, 102),
0,
) ≈ 5.0 atol = 0.001 skip = Sys.isapple()
end
diff --git a/core/test/time_test.jl b/core/test/time_test.jl
index 2410f1933..c45a315fe 100644
--- a/core/test/time_test.jl
+++ b/core/test/time_test.jl
@@ -12,22 +12,69 @@
flow = DataFrame(Ribasim.flow_table(model))
# only from March to September the FlowBoundary varies
is_summer(t::DateTime) = 3 <= month(t) < 10
-
- flow_added_1 =
- filter(
- [:time, :from_node_id, :to_node_id] =>
- (t, from, to) -> is_summer(t) && from == 1 && to == 1,
- flow,
- ).flow_rate
flow_1_to_2 = filter(
[:time, :from_node_id, :to_node_id] =>
(t, from, to) -> is_summer(t) && from == 1 && to == 2,
flow,
)
- @test flow_added_1 == flow_1_to_2.flow_rate
-
t = Ribasim.seconds_since.(flow_1_to_2.time, model.config.starttime)
flow_expected = @. 1 + sin(0.5 * π * (t - t[1]) / (t[end] - t[1]))^2
# some difference is expected since the modeled flow is for the period up to t
- @test isapprox(flow_added_1, flow_expected, rtol = 0.005)
+ @test isapprox(flow_1_to_2.flow_rate, flow_expected, rtol = 0.005)
+end
+
+@testitem "vertical_flux_means" begin
+ using DataFrames: DataFrame, transform!, ByRow
+
+ toml_path =
+ normpath(@__DIR__, "../../generated_testmodels/basic_transient/ribasim.toml")
+ @test ispath(toml_path)
+ model = Ribasim.run(toml_path)
+ basin = model.integrator.p.basin
+ n_basin = length(basin.node_id)
+ basin_table = DataFrame(Ribasim.basin_table(model))
+
+ time_table = DataFrame(basin.time)
+ t_end = time_table.time[end]
+ filter!(:time => t -> t !== t_end, time_table)
+
+ time_table[!, "basin_idx"] = [
+ Ribasim.id_index(basin.node_id, node_id)[2] for
+ node_id in Ribasim.NodeID.(:Basin, time_table.node_id)
+ ]
+ time_table[!, "area"] = [
+ Ribasim.get_area_and_level(basin, idx, storage)[1] for
+ (idx, storage) in zip(time_table.basin_idx, basin_table.storage)
+ ]
+ # Mean areas are sufficient to compute the mean flows
+ # (assuming the saveats coincide with the solver timepoints),
+ # as the potential evaporation is constant over the saveat intervals
+ time_table[!, "mean_area"] .= 0.0
+ n_basins = length(basin.node_id)
+ n_times = length(unique(time_table.time)) - 1
+ for basin_idx in 1:n_basins
+ for time_idx in 1:n_times
+ idx_1 = n_basins * (time_idx - 1) + basin_idx
+ idx_2 = n_basins * time_idx + basin_idx
+ mean_area = (time_table.area[idx_1] + time_table.area[idx_2]) / 2
+ time_table.mean_area[idx_1] = mean_area
+ end
+ end
+
+ @test all(
+ isapprox(
+ basin_table.evaporation,
+ time_table.mean_area .* time_table.potential_evaporation;
+ rtol = 1e-4,
+ ),
+ )
+
+ fixed_area = Dict(
+ id.value => basin.area[Ribasim.id_index(basin.node_id, id)[2]][end] for
+ id in basin.node_id
+ )
+ transform!(time_table, :node_id => ByRow(id -> fixed_area[id]) => :fixed_area)
+ @test all(
+ basin_table.precipitation .≈ time_table.fixed_area .* time_table.precipitation,
+ )
end
diff --git a/core/test/utils_test.jl b/core/test/utils_test.jl
index b5a9ee0e3..fab1b3ab1 100644
--- a/core/test/utils_test.jl
+++ b/core/test/utils_test.jl
@@ -38,6 +38,9 @@ end
demand = zeros(2)
basin = Ribasim.Basin(
Indices(NodeID.(:Basin, [5, 7])),
+ [NodeID[]],
+ [NodeID[]],
+ [2.0, 3.0],
[2.0, 3.0],
[2.0, 3.0],
[2.0, 3.0],
@@ -55,30 +58,6 @@ end
@test Ribasim.basin_bottom(basin, NodeID(:Basin, 5)) === 0.0
@test Ribasim.basin_bottom(basin, NodeID(:Basin, 7)) === 4.0
@test Ribasim.basin_bottom(basin, NodeID(:Basin, 6)) === nothing
- @test Ribasim.basin_bottoms(
- basin,
- NodeID(:Basin, 5),
- NodeID(:Basin, 7),
- NodeID(:Pump, 6),
- ) === (0.0, 4.0)
- @test Ribasim.basin_bottoms(
- basin,
- NodeID(:Basin, 5),
- NodeID(:Basin, 0),
- NodeID(:Pump, 6),
- ) === (0.0, 0.0)
- @test Ribasim.basin_bottoms(
- basin,
- NodeID(:Basin, 0),
- NodeID(:Basin, 7),
- NodeID(:Pump, 6),
- ) === (4.0, 4.0)
- @test_throws "No bottom defined on either side of Pump #6" Ribasim.basin_bottoms(
- basin,
- NodeID(:Basin, 0),
- NodeID(:Basin, 1),
- NodeID(:Pump, 6),
- )
end
@testitem "Convert levels to storages" begin
@@ -115,6 +94,9 @@ end
demand = zeros(1)
basin = Ribasim.Basin(
Indices(NodeID.(:Basin, [1])),
+ [NodeID[]],
+ [NodeID[]],
+ zeros(1),
zeros(1),
zeros(1),
zeros(1),
@@ -136,14 +118,17 @@ end
@test length(logger.logs) == 1
@test logger.logs[1].level == Error
@test logger.logs[1].message ==
- "The level -1.0 of Basin #1 is lower than the bottom of this basin; 0.0."
+ "The initial level (-1.0) of Basin #1 is below the bottom (0.0)."
# Converting from storages to levels and back should return the same storages
storages = range(0.0, 2 * storage[end], 50)
levels = [Ribasim.get_area_and_level(basin, 1, s)[2] for s in storages]
storages_ = [Ribasim.get_storage_from_level(basin, 1, l) for l in levels]
-
@test storages ≈ storages_
+
+ # At or below bottom the storage is 0
+ @test Ribasim.get_storage_from_level(basin, 1, 0.0) == 0.0
+ @test Ribasim.get_storage_from_level(basin, 1, -1.0) == 0.0
end
@testitem "Expand logic_mapping" begin
@@ -207,9 +192,9 @@ end
@test jac_prototype.m == 4
@test jac_prototype.n == 4
- @test jac_prototype.colptr == [1, 3, 5, 7, 10]
- @test jac_prototype.rowval == [1, 2, 1, 2, 2, 3, 2, 3, 4]
- @test jac_prototype.nzval == ones(9)
+ @test jac_prototype.colptr == [1, 3, 5, 8, 11]
+ @test jac_prototype.rowval == [1, 2, 1, 2, 2, 3, 4, 2, 3, 4]
+ @test jac_prototype.nzval == ones(10)
toml_path = normpath(@__DIR__, "../../generated_testmodels/pid_control/ribasim.toml")
diff --git a/core/test/validation_test.jl b/core/test/validation_test.jl
index dc4958de4..4055d50a4 100644
--- a/core/test/validation_test.jl
+++ b/core/test/validation_test.jl
@@ -82,7 +82,7 @@ end
graph[NodeID(:Pump, 6)] = NodeMetadata(:pump, 9)
function set_edge_metadata!(id_1, id_2, edge_type)
- graph[id_1, id_2] = EdgeMetadata(0, edge_type, 0, id_1, id_2, false, NodeID[])
+ graph[id_1, id_2] = EdgeMetadata(0, edge_type, 0, (id_1, id_2))
return nothing
end
@@ -175,7 +175,7 @@ end
graph[NodeID(:Basin, 7)] = NodeMetadata(:basin, 0)
function set_edge_metadata!(id_1, id_2, edge_type)
- graph[id_1, id_2] = EdgeMetadata(0, edge_type, 0, id_1, id_2, false, NodeID[])
+ graph[id_1, id_2] = EdgeMetadata(0, edge_type, 0, (id_1, id_2))
return nothing
end
@@ -239,7 +239,7 @@ end
@test length(logger.logs) == 4
@test logger.logs[1].level == Error
@test logger.logs[1].message ==
- "TabulatedRatingCurve #7 combines fractional flow outneighbors with other outneigbor types."
+ "TabulatedRatingCurve #7 has outflow to FractionalFlow and other node types."
@test logger.logs[2].level == Error
@test logger.logs[2].message ==
"Fractional flow nodes must have non-negative fractions."
@@ -254,7 +254,6 @@ end
@test logger.logs[3].kwargs[:control_state] == ""
@test logger.logs[4].level == Error
@test logger.logs[4].message == "Cannot connect a basin to a fractional_flow."
- @test logger.logs[4].kwargs[:edge_id] == 7
@test logger.logs[4].kwargs[:id_src] == NodeID(:Basin, 2)
@test logger.logs[4].kwargs[:id_dst] == NodeID(:FractionalFlow, 8)
end
@@ -362,10 +361,10 @@ end
@test length(logger.logs) == 2
@test logger.logs[1].level == Error
@test logger.logs[1].message ==
- "Invalid edge type 'foo' for edge #1 from node #1 to node #2."
+ "Invalid edge type 'foo' for edge #0 from node #1 to node #2."
@test logger.logs[2].level == Error
@test logger.logs[2].message ==
- "Invalid edge type 'bar' for edge #2 from node #2 to node #3."
+ "Invalid edge type 'bar' for edge #1 from node #2 to node #3."
end
@testitem "Subgrid validation" begin
@@ -424,6 +423,7 @@ end
[true],
[0.0],
[0.0],
+ [0.0],
[[LinearInterpolation([-5.0, -5.0], [-1.8, 1.8])]],
[true],
[0.0, -0.0],
@@ -438,3 +438,23 @@ end
@test logger.logs[1].message ==
"Demand of UserDemand #1 with priority 1 should be non-negative"
end
+
+@testitem "negative storage" begin
+ import BasicModelInterface as BMI
+ toml_path =
+ normpath(@__DIR__, "../../generated_testmodels/linear_resistance/ribasim.toml")
+ @test ispath(toml_path)
+ dt = 1e10
+
+ config = Ribasim.Config(
+ toml_path;
+ solver_algorithm = "Euler",
+ solver_dt = dt,
+ solver_saveat = Inf,
+ )
+ model = Ribasim.Model(config)
+ @test_throws "Negative storages found at 2021-01-01T00:00:00." BMI.update_until(
+ model,
+ dt,
+ )
+end
diff --git a/docs/_quarto.yml b/docs/_quarto.yml
index d698bbaf1..e3cd0e3e5 100644
--- a/docs/_quarto.yml
+++ b/docs/_quarto.yml
@@ -46,6 +46,7 @@ website:
- contribute/python.qmd
- contribute/qgis.qmd
- contribute/addnode.qmd
+ - contribute/ci.qmd
- contribute/release.qmd
format:
@@ -87,3 +88,5 @@ quartodoc:
- nodes.terminal
- nodes.discrete_control
- nodes.pid_control
+ - nodes.flow_demand
+ - nodes.level_demand
diff --git a/docs/contribute/addnode.qmd b/docs/contribute/addnode.qmd
index e5509e9ef..1bd65f434 100644
--- a/docs/contribute/addnode.qmd
+++ b/docs/contribute/addnode.qmd
@@ -8,10 +8,10 @@ Several parts of the code have to be made aware of the new node type. In the res
## Parameters
-The parameters object (defined in `solve.jl`) passed to the ODE solver must be made aware of the new node type. Therefore define a struct in `solve.jl` which holds the data for each node of the new node type:
+The parameters object (defined in `parameter.jl`) passed to the ODE solver must be made aware of the new node type. Therefore define a struct in `parameter.jl` which holds the data for each node of the new node type:
```julia
-struct NewNodeType
+struct NewNodeType <: AbstractParameterNode
node_id::Vector{NodeID}
# Other fields
end
@@ -20,11 +20,11 @@ end
These fields do not have to correspond 1:1 with the input tables (see below). The vector with all node IDs that are of the new type in a given model is a mandatory field. Now you can:
- Add `new_node_type::NewNodeType` to the Parameters object;
-- Add `new_node_type = NewNodeType(db,config)` to the function `Parameters` in `create.jl` and add new_node_type at the proper location in the `Parameters` constructor call.
+- Add `new_node_type = NewNodeType(db,config)` to the function `Parameters` in `read.jl` and add new_node_type at the proper location in the `Parameters` constructor call.
## Reading from configuration
-There can be several schemas associated with a single node type. To define a schema for the new node type, add the following to `validation.jl`:
+There can be several schemas associated with a single node type. To define a schema for the new node type, add the following to `schema.jl`:
```julia
@schema "ribasim.newnodetype.static" NewNodeTypeStatic
@@ -38,18 +38,18 @@ node_id: node ID of the NewNodeType node
end
```
-Here `Static` refers to data that does not change over time. For naming conventions of these schemas see [Node usage](../core/usage.qmd#sec-node).
+Here `static` refers to data that does not change over time. For naming conventions of these schemas see [Node usage](../core/usage.qmd#sec-node). If a new schema contains a `priority` column for allocation, it must also be added to the list of all such schemas in the function `get_all_priorities` in `util.jl`.
-`validation.jl` also deals with checking and applying a specific sorting order for the tabular data (default is sorting by node ID only), see `sort_by_function` and `sorted_table!`.
+`validation.jl` deals with checking and applying a specific sorting order for the tabular data (default is sorting by node ID only), see `sort_by_function` and `sorted_table!`.
-Now we define the function that is called in the second bullet above, in `create.jl`:
+Now we define the function that is called in the second bullet above, in `read.jl`:
```julia
function NewNodeType(db::DB, config::Config)::NewNodeType
static = load_structvector(db, config, NewNodeTypeStaticV1)
defaults = (; foo = 1, bar = false)
# Process potential control states in the static data
- parsed_parameters, valid = parse_static_and_time(db, config, "Outlet"; static, defaults)
+ parsed_parameters, valid = parse_static_and_time(db, config, "NewNodeType"; static, defaults)
if !valid
error("Errors occurred when parsing NewNodeType data.")
@@ -90,7 +90,7 @@ Non-conservative node types need to be added to the `nonconservative_nodetypes`
See [Equations](../core/equations.qmd#the-jacobian) for a mathematical description of the Jacobian.
-Before the Julia core runs its simulation, the sparsity structure `jac_prototype` of $J$ is determined with `get_jac_prototype` in `utils.jl`. This function runs trough all node types and looks for nodes that create dependencies between states. It creates a sparse matrix of zeros and ones, where the ones denote locations of possible non-zeros in $J$.
+Before the Julia core runs its simulation, the sparsity structure `jac_prototype` of $J$ is determined with `get_jac_prototype` in `sparsity.jl`. This function runs trough all node types and looks for nodes that create dependencies between states. It creates a sparse matrix of zeros and ones, where the ones denote locations of possible non-zeros in $J$. Note that only nodes that set flows in the physical layer (or have their own state like `PidControl`) affect the sparsity structure.
We divide the various node types in groups based on what type of state dependencies they yield, and these groups are discussed below. Each group has its own method `update_jac_prototype!` in `utils.jl` for the sparsity structure induced by nodes of that group. `NewNodeType` should be added to the signature of one these methods, or to the list of node types that do not contribute to the Jacobian in the method of `update_jac_prototype!` whose signature contains `node::AbstractParameterNode`. Of course it is also possible that a new method of `update_jac_prototype!` has to be introduced.
@@ -106,61 +106,27 @@ Using `jac_prototype` the Jacobian of `water_balance!` is computed automatically
## Python class
-Create a new file `python/ribasim/ribasim/node_types/new_node_type.py` which is structured as follows:
-
-```python
-from typing import Optional
-
-import pandera as pa
-from pandera.engines.pandas_engine import PydanticModel
-from pandera.typing import DataFrame
-from pydantic import ConfigDict
-
-from ribasim import models
-from ribasim.input_base import TableModel
-
-__all__ = ("NewNodeType",)
-
-class StaticSchema(pa.SchemaModel):
- class Config:
- """Config with dataframe-level data type."""
-
- dtype = PydanticModel(models.NewNodeTypeStatic)
-
-# Possible other schemas
+In `python/ribasim/ribasim/config.py` add
+- the above defined schemas to the imports from `ribasim.schemas`. This requires code generation to work, see [Finishing up](#finishing-up);
+- a class of the following form with all schemas associated with the node type:
-class NewNodeType(TableModel):
- """
- Description of this node type.
-
- Parameters
- ----------
- static: pandas.DataFrame
- table with data for this node type.
-
- possible other schemas
- """
-
- static: DataFrame[StaticSchema] | None
- # possible other schemas
-
- model_config = ConfigDict(validate_assignment=True)
-
- def sort(self):
- self.static.sort_values("node_id", ignore_index=True, inplace=True)
-
+```python
+class NewNodeType(NodeModel):
+ static: TableModel[NewNodeTypeStaticSchema] = Field(
+ default_factory=TableModel[NewNodeTypeStaticSchema],
+ json_schema_extra={"sort_keys": ["node_id"]},
+ )
```
-The `sort` method should implement the same sorting as in `validation.jl`.
-Now in both `python/ribasim/ribasim/__init__.py` and `python/ribasim/ribasim/node_types/__init__.py` add
+In `python/ribasim/ribasim/__init__.py` add
-- `from ribasim.node_types.new_node_type import NewNodeType`;
+- `NewNodeType` to the imports from `ribasim.config`;
- `"NewNodeType"` to `__all__`.
In `python/ribasim/ribasim/model.py`, add
-- `from ribasim.new_node_type import NewNodeType`;
+- `NewNodeType` to the imports from `ribasim.config`;
- new_node_type as a parameter and in the docstring of the `Model` class.
In `python/ribasim/ribasim/geometry/node.py` add a color and shape description in the `MARKERS` and `COLORS` dictionaries.
@@ -235,7 +201,8 @@ If the new node type introduces new (somewhat) complex behaviour, a good test is
There are several parts of the documentation which should be updated with the new node type:
-- `docs/core/equations` should contain a short explanation and if possible an analytical expression for the behaviour of the new node;
+- If the node has a rol in the physical layer, `docs/core/equations` should contain a short explanation and if possible an analytical expression for the behaviour of the new node;
+- If the node has a role in allocation, `docs/core/allocation` should make this role clear;
- `docs/core/usage.qmd` should contain a short explanation of the node and the possible schemas associated with it;
- The example models constructed in `docs/python/examples.ipynb` should be extended with the new node type or a new example model with the new node type should be made.
- In `_quarto.yml` add `NewNodeType` to the "Node types" contents for the Python API reference.
diff --git a/docs/contribute/ci.qmd b/docs/contribute/ci.qmd
new file mode 100644
index 000000000..1217f8d3d
--- /dev/null
+++ b/docs/contribute/ci.qmd
@@ -0,0 +1,72 @@
+---
+title: "Continuous integration"
+---
+
+Continuous integration (CI) is about commits being merged frequently, resulting in new features being released frequently.
+When proposing new changes to the code base a [pull request](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests) is opened.
+When a new commit in that pull request, a series of tests will be done to make sure that this commit is error-free and robust in different environments.
+This process drive each new development through building, testing, quality checking.
+
+```{mermaid}
+graph LR
+ A[New development]-->B[Continuous integration]
+ B-->C[Merge]
+```
+
+
+This page contains an extensive explanation on how the Ribasim continuous integration works.
+
+# GitHub Actions
+
+With [GitHub Actions](https://docs.github.com/en/actions), GitHub provides their own continuous integration service.
+They include the following checks:
+
+* Julia Run Testmodels: This is to make sure all the test models can be run successfully
+* Julia Tests: Runs Julia unit tests on multiple platforms
+* Docs: Builds the documentation and executes the examples
+* Pre-commit: Checks Python code quality with linters and enforces formatting
+* Python codegen: Makes sure code generation is still up to date by checking that code generation wouldn't change any files
+* Mypy: Runs mypy on our Python codebase to check types
+* Ribasim Python tests: Runs Ribasim Python tests on multiple platforms and multiple Python versions
+* QGIS Tests: Runs QGIS unit tests
+
+
+# TeamCity
+Ribasim has another cloud-based CI service based on [TeamCity](https://www.jetbrains.com/teamcity/).
+TeamCity interacts with GitHub and manages the release process.
+
+```{mermaid}
+graph LR
+ A[TeamCity]-->|Monitoring|B[GitHub]
+ A-->C(Release)
+```
+
+## Conditions of using TeamCity
+TeamCity only runs workflows with the following conditions:
+
+* When the workflow would take too long to run on GitHub Action
+* When the release depends on the artifacts of the workflow.
+* When other TeamCity projects depend on artifacts of Ribasim (e.g. iMOD coupler)
+
+## Release process
+In the release, we include the generated testmodels, Ribasim CLI on Windows and Linux, Ribasim QGIS, and the source code.
+
+We have the following pipeline to generate artifects for releasing:
+
+* Generate Testmodels: produces generated_testmodels artifact which is part of the release.
+* Make GitHub Release: uses artifacts and makes the release. TeamCity constantly monitors the GitHub repository. When a tag starts with `v20` is added, it triggers the release process.
+* Build Ribasim: builds library and executable of Ribasim on Linux and Windows. The artifacts are tested in `Test Ribasim Binaries` and used by iMOD Coupler.
+* Test Ribasim Binaries: tests libribasim artifact and ribasim_cli artifact on Linux and Windows
+
+::: {.callout-note}
+Make GitHub Release does not publish artifacts of "Test Ribasim Binaries". It only publishes artifacts of "Build Ribasim" if the beforementioned tests pass.
+:::
+
+```{mermaid}
+graph LR
+ A[Make GitHub Release]-->B(Release)
+ F[Generate Testmodels]-->A
+ G[Make QGIS plugin]-->A
+ H[Build Ribasim]---D[Test Ribasim Binaries]
+ D-->A
+```
diff --git a/docs/contribute/core.qmd b/docs/contribute/core.qmd
index cb83dd50f..ef4e52fc3 100644
--- a/docs/contribute/core.qmd
+++ b/docs/contribute/core.qmd
@@ -21,10 +21,10 @@ A more detailed sequence diagram of the simulation loop is available at the [cor
Start the Julia [REPL](https://en.wikipedia.org/wiki/Read%E2%80%93eval%E2%80%93print_loop) by executing `pixi run julia` in your terminal.
Within the REPL type `]` to enter the Pkg REPL.
For more information on how to use `Pkg`, see the [Getting Started](https://pkgdocs.julialang.org/v1/getting-started/) page in its documentation.
-There you can add `Revise` and `TestEnv` to your global environment.
+There you can add `Revise` to your global environment.
```julia
-pkg> add Revise TestEnv
+pkg> add Revise
```
## Setup Revise.jl
@@ -37,7 +37,7 @@ You can let it start automatically by following these [instructions](https://tim
There is a section on editors and IDEs for Julia on , scroll down to see it.
We use and recommend Microsoft's free editor [Visual Studio Code](https://code.visualstudio.com/).
When combined with the [Julia extension](https://www.julia-vscode.org/) it provides a powerful and interactive development experience.
-Make sure to have the correct environment when opening your IDE by running `pixi run code .`, or opening a `pixi shell` and then calling the command to open the editor of your choice.
+Make sure to have the correct environment when opening your IDE by running `open-vscode.bat`, or opening a `pixi --environment=dev shell` and then calling the command to open the editor of your choice.
# Developing on Ribasim
@@ -48,7 +48,7 @@ It is also a good way to find out if your development environment is set up corr
Before the tests can run, you need to [prepare model input](python.qmd#prepare-model-input).
-With the root of the repository as your working directory you can start the REPL with activated `Ribasim` environment by running the following:
+With the root of the repository as your working directory you can start the REPL with activated `root` environment by running the following:
```bash
julia --project
@@ -66,16 +66,11 @@ Then open the Pkg REPL by typing `]` and execute:
pkg> test Ribasim
```
-In order to debug tests, it is very useful to run them in a REPL.
-However, here, you don't have the dependencies available in the `[extras]` section of your `Project.toml`.
-[`TestEnv.jl`](https://github.com/JuliaTesting/TestEnv.jl) that we installed earlier solves that problem.
+In order to debug tests, you can run individual test items from Visual Studio Code.
+Click the green play icon in front of a test item, as show in the image below.
+The first run will be slow.
-When you then debug your tests inside the REPL, you can include the `[extras]` dependencies as follows:
-
-```julia
-using TestEnv,
-TestEnv.activate("Ribasim")
-```
+![](https://github.com/Deltares/Ribasim/assets/4471859/58077f71-11d0-4c45-8d95-4eba8c0a0139)
## Render documentation
@@ -123,3 +118,23 @@ julia> Ribasim.run("path/to/model/ribasim.toml")
The Julia VS Code extension allows you to [execute code cells in REPL](https://www.julia-vscode.org/docs/stable/userguide/runningcode/#Running-code-in-the-Julia-REPL).
This is a very convenient way of executing only parts of your source file.
:::
+
+## Build Ribasim
+
+The Ribasim core can be built into an executable with a command line interface (CLI) and a shared library, libribasim.
+These products will run without a Julia installation.
+To create both these products at once, run:
+
+```
+pixi run build
+```
+
+To verify that the build was successful, you can run both these commands.
+
+```
+pixi run test-ribasim-api
+pixi run test-ribasim-cli
+```
+
+During development these steps are normally done [on TeamCity](ci.qmd#TeamCity),
+though in some cases it can be more convenient to build locally.
diff --git a/docs/contribute/index.qmd b/docs/contribute/index.qmd
index 2f787dee9..c35736711 100644
--- a/docs/contribute/index.qmd
+++ b/docs/contribute/index.qmd
@@ -35,7 +35,7 @@ First, set up pixi as described on their getting started [page](https://prefix.d
Then set up the environment by running the following commands:
```sh
-pixi run install
+pixi run --environment=dev install
```
This will automatically install all required packages for development.
diff --git a/docs/contribute/qgis.qmd b/docs/contribute/qgis.qmd
index 062214d42..afaae6eef 100644
--- a/docs/contribute/qgis.qmd
+++ b/docs/contribute/qgis.qmd
@@ -5,7 +5,7 @@ title: "QGIS plugin development"
# Set up the developer environment
After you have installed the environment as described [here](index.qmd) you must still activate the QGIS plugins.
-The simplest way to do this is by running `pixi run install-qgis-plugins`.
+The simplest way to do this is by running `pixi run --environment=dev install-qgis-plugins`.
It grabs the latest version of the iMOD QGIS plugin and it makes a symlink to the ribasim_qgis folder so that QGIS can find it.
It also installs plugins that make it possible to reload and debug your plugin while QGIS is open.
@@ -36,7 +36,7 @@ Then simply call `pixi run test-ribasim-qgis`.
# Debugging
-After installing the plugins via `pixi run install-qgis-plugins`.
+After installing the plugins via `pixi run --environment=dev install-qgis-plugins`.
Extra debugging tools are also installed in QGIS that is installed within your pixi environment.
After you have started `pixi run qgis`, you can make alterations to the Python code and use the [Plugin Reloader](https://github.com/borysiasty/plugin_reloader) to reload the plugin without restarting QGIS.
diff --git a/docs/contribute/release.qmd b/docs/contribute/release.qmd
index 576f45789..eb1181879 100644
--- a/docs/contribute/release.qmd
+++ b/docs/contribute/release.qmd
@@ -57,7 +57,7 @@ The possibly long list of generated release notes can put below an "All changes"
All changes
-# Put Github flavored markdown here
+# Put GitHub flavored markdown here
diff --git a/docs/core/allocation.qmd b/docs/core/allocation.qmd
index 681295e66..573251fdd 100644
--- a/docs/core/allocation.qmd
+++ b/docs/core/allocation.qmd
@@ -3,18 +3,28 @@ title: "Allocation"
---
# Introduction
-Allocation is the process of assigning an allocated abstraction flow rate to demand nodes in the physical layer of the model based on information about sources, the different demand nodes over various priorities, constraints introduced by nodes, local water availability and graph topology. The allocation procedure implemented in Ribasim is heavily inspired by the [maximum flow problem](https://en.wikipedia.org/wiki/Maximum_flow_problem).
+Allocation is the process of assigning an allocated flow rate to demand nodes in the physical layer of the model based on information about sources, the different demand nodes over various priorities, constraints introduced by nodes, local water availability and graph topology. The allocation procedure implemented in Ribasim is heavily inspired by the [maximum flow problem](https://en.wikipedia.org/wiki/Maximum_flow_problem).
-The allocation problem is solved per subnetwork of the Ribasim model. The subnetwork is used to formulate an optimization problem with the [JuMP](https://jump.dev/JuMP.jl/stable/) package, which is solved using the [HiGHS solver](https://highs.dev/). For more in-depth information see also the example of solving the maximum flow problem with `JuMP.jl` [here](https://jump.dev/JuMP.jl/stable/tutorials/linear/network_flows/#The-max-flow-problem).
+The allocation problem is solved per subnetwork (and main network) of the Ribasim model. Each subnetwork is used to formulate an optimization problem with the [JuMP](https://jump.dev/JuMP.jl/stable/) package, which is solved using the [HiGHS solver](https://highs.dev/). For more in-depth information see also the example of solving the maximum flow problem with `JuMP.jl` [here](https://jump.dev/JuMP.jl/stable/tutorials/linear/network_flows/#The-max-flow-problem).
+
+:::{.callout-note}
+within this *Allocation* section the main network is also considered to be a subnetwork.
+:::
# The high level algorithm
-The allocation algorithm consists of 3 types of optimization problems:
+The allocation algorithm contains 3 types of optimization:
+
+- `internal_sources`, where flows are allocated within a subnetwork by only using sources inside the subnetwork;
+- `collect_demands`, where flows are allocated within a subnetwork by only using the main network inlet(s) as a source, with demands reduced by allocations in `internal_sources`. The allocated flows in this optimization type are not used. The goal is to see the flow through the main network inlet(s), which is interpreted as the subnetwork demand;
+- `allocate`, where all available sources are used and the final allocated flows for the users are determined.
-1. **Subnetwork demand collection**: Collect the demands of a subnetwork from the main network by optimizing with unlimited capacity from the main network;
-2. **Main network allocation**: Allocate to subnetworks with the above collected demand, and demands in the main network;
-3. **Subnetwork allocation**: Allocate to demands in the subnetworks with the flows allocated to the subnetwork in the main network allocation.
+The full algorithm goes through the following steps:
-The total allocation algorithm consists of performing 1 for all subnetworks, then performing 2, then performing 3 for all subnetworks. Not having a main network is also supported, then 1 and 2 are skipped.
+1. Perform `internal_sources` followed by `collect_demands` for all subnetworks apart from the main network;
+2. Perform `allocate` for the main network;
+3. Perform `allocate` for the other subnetworks.
+
+If no main network is present, then 1 and 2 are skipped.
# Elements of allocation
@@ -30,31 +40,47 @@ The allocation problem is solved per subnetwork, which is given by a subset $S \
Sources are indicated by a set of edges in the subnetwork
$$
-E_S^\text{source} \subset \left(S \times S\right) \cap E.
+E_S^\text{source} \subset E.
+$$
+That is, if $(i,j) \in E_S^\text{source}$, then the average over the last allocation interval $\Delta t_{\text{alloc}}$ of the of the flow over this edge
+$$
+ \frac{1}{\Delta t_{\text{alloc}}}\int_{t - \Delta t_{\text{alloc}}}^tQ_{ij}(t') dt'
$$
-That is, if $(i,j) \in E_S^\text{source}$, then $Q_{ij}$ (see the [formal model description](equations.qmd#formal-model-description)) is treated as a source flow in the allocation problem. These edges are either coming from a boundary/source node (e.g. a level or flow boundary) or connect the main network to a subnetwork.
+ is treated as a source flow in the allocation problem. These edges are either coming from a boundary/source node (e.g. a level or flow boundary) or connect the main network to a subnetwork. For the definition of $Q_{ij}$ see [the formal model description](equations.qmd#formal-model-description).
### User demands
-The subnetwork contains a subset of UserDemand nodes $U_S \subset S$, who all have time varying demands over various priorities $p$:
+The subnetwork contains a subset of UserDemand nodes $U_S \subset S$, who all have static or time varying demands over various priorities $p$:
$$
d^p_i(t), \quad i \in U_S, p = 1,2,\ldots, p_{\max}.
$$
:::{.callout-note}
-On this page we assume that the priorities are given by all integers from $1$ to some $p_{\max} \in \mathbb{N}$. However, in the Ribasim input this is not a requirement; some of these in between priority values can be missing, only the ordering of the given priorities is taken into account.
+On this page we assume that the priorities are given by all integers from $1$ to some $p_{\max} \in \mathbb{N}$. For the Ribasim input this is not a requirement; some of these in between priority values can be missing, only the ordering of the given priorities is taken into account.
:::
+### Flow demands
+
+The subnetwork contains a subset of nodes $FD_S \subset S$ which have a demand of a single priority $p_{\text{fd}}$. With this we define
+$$
+ d^p_i(t) =
+ \begin{cases}
+ 0 \text{ if } p \ne p_{\text{fd}} \\
+ d^{p_{\text{df}}} \text{ if } p = p_{\text{fd}}
+ \end{cases}
+$$
+for all $i \in FD_S$. Here $d^{p_{\text{df}}}$ is given by the original flow demand minus the flows trough node $i$ at all priorities $p < p_{\text{fd}}$.
+
## Simulation (physical layer) input
### Vertical fluxes and local storage
-Apart from the source flows denoted by edges, there are other sources of water in the subnetwork, associated with the basins in the subnetwork $B_S = B \cap S$. Firstly there is the sum of the vertical fluxes (precipitation, evaporation, infiltration and drainage) for each basin
+Apart from the source flows denoted by edges, there are other sources of water in the subnetwork, associated with the basins in the subnetwork $B_S = B \cap S$. Firstly there is the average over the last allocation interval $\Delta t_{\text{alloc}}$ of the vertical fluxes (precipitation, evaporation, infiltration and drainage) for each basin:
$$
- \phi_i(t), \quad \forall i \in B_S.
+ \phi_i(t) = \frac{1}{\Delta t_{\text{alloc}}}\int_{t - \Delta t_{\text{alloc}}}^t \left[Q_{P,i}(t') - Q_{E,i}(t') + Q_{\text{drn},i}(t') - Q_{\text{inf},i}(t') \right] dt', \quad \forall i \in B_S.
$$
-We consider fluxes into the basin to be positive and out of the basin to be negative.
+We consider fluxes into the basin to be positive and out of the basin to be negative. For more information see [the natural water balance terms](equations.qmd#natural-water-balance-terms).
Secondly, there is either a supply or demand from the storage in the basin. Given a minimum level $\ell_{\min, i}$ and a maximum level $\ell_{\max, i}$ which correspond to a minimum storage $s_{\min, i}$ and maximum storage $s_{\max, i}$ respectively, we get a flow supply of
$$
@@ -66,48 +92,42 @@ $$
d^p_i = \max\left(0.0, \frac{s_{\min,i} - u_i(t)}{\Delta t_{\text{alloc}}} - \phi_i(t)\right),
$$
-for all $i \in B_S$. Here $\Delta t_{\text{alloc}}$ is the simulated time between two consecutive allocation solves. Note that the basin demand has only a single priority, so for other priorities this demand is $0$.
+for all $i \in B_S$. Note that the basin demand has only a single priority, so for other priorities this demand is $0$.
### Constraining factors
#### Flow magnitude and direction constraints
-Nodes in the Ribasim model that have a `max_flow_rate`, i.e. pumps and outlets, put a constraint on the flow through that node. Some nodes only allow flow in one direction, like pumps, outlets and tabulated rating curves.
+Nodes in the Ribasim model that have a `max_flow_rate`, i.e. Pump, Outlet and LinearResistance, put a constraint on the flow through that node. Some nodes only allow flow in one direction, like Pump, Outlet and TabulatedRatingCurve.
#### FractionalFlow and UserDemand return flows
-Both FractionalFlow and UserDemand nodes dictate proportional relationships between flows over edges in the subnetwork. UserDemands have a return factor $0 \le r_i \le 1, i \in U_S$.
-
-## The allocation network
-
-A new graph is created from the subnetwork, which we call an allocation network. The allocation network is almost a subgraph of the main (flow) model, apart from the fact that an allocation network can contain edges which are a combination of multiple edges in the main model.
-
-### Nodes and edges
+Both FractionalFlow and UserDemand nodes dictate proportional relationships between flows over edges in the subnetwork. UserDemands have a return factor $0 \le r_i \le 1, i \in U_S$, and FractionalFlow nodes have an associated fraction $f_j$ which can be updated by DiscreteControl.
-The allocation network consists of:
+## The subnetwork
+The subnetwork consists of a set of nodes $S \subset V$ and edges
-- Nodes $V'_S \subset V_S$, where each Basin, source and demand in the subnetwork get a node in the allocation network.
-Also nodes that have FractionalFlow outneighbors get a node in the allocation network.
-- Edges $E_S$, which are either edges that also appear between nodes in the subnetwork or represent a sequence of those, creating a shortcut.
-
-For notational convenience, we use the notation
-
-\begin{align}
- V^{\text{out}}_S(i) = \left\{j \in V'_S : (i,j) \in E_S\right\} \\
- V^{\text{in}}_S(j) = \left\{i \in V'_S : (i,j) \in E_S\right\}
-\end{align}
+$$
+ E_S = (S \times S) \cup E_S^\text{source},
+$$
-for the set of in-neighbors and out-neighbors of a node in the allocation network respectively.
+i.e. the edges that lie within the subnetwork together with the source edges (which can be partially outside the subnetwork).
+The nodes in $S$ together with the connected nodes outside the subnetwork are called the extended subnetwork.
### Capacities
-Each edge in the allocation network has an associated capacity. These capacities are collected in the sparse capacity matrix $C_S \in \overline{\mathbb{R}}_{\ge 0}^{n'\times n'}$ where $n' = \#V'_S$ is the number of nodes in the allocation network. The capacities can be infinite, if there is nothing in the model constraining the capacity of the edge.
+Each edge in the subnetwork has an associated capacity. These capacities are collected in the sparse capacity matrix $C_S \in \overline{\mathbb{R}}_{\ge 0}^{n\times n}$ where $n$ is the number of nodes in the extended subnetwork. An edge capacity is infinite if there is nothing in the model constraining the capacity.
The capacities are determined in different ways:
- If an edge does not exist in the allocation network, i.e. $(i,j) \notin E_S$ for certain $1 \le i,j\le n'$, then $(C_S)_{i,j} = 0$;
- The capacity of the edge $e \in E_S$ is given by the smallest `max_flow_rate` of the nodes along the equivalent edges in the subnetwork. If there are no nodes with a `max_flow_rate`, the edge capacity is infinite;
-- If the edge is a source, the capacity of the edge is given by the flow rate of that source.
+- If the edge is a source, the capacity of the edge is given by the flow rate of that source;
+- If an edge comes from a node with a flow demand, it has infinite capacity at priorities other than this of this flow demand, and zero capacity otherwise.
+
+There are also capacities for special edges:
-There are also capacities $C^B_S \in \mathbb{R}^b$ where $b = \# B_S$ is the number of basins, for the flow supplied by basins.
+- $C^{LD}_S \in \mathbb{R}^b_{\ge 0}$ where $b = \# B_S$ is the number of basins, for the flow supplied by basins based on level demand (this capacity is 0 for basins that have no level demand).
+- $C^{FD}_S \in \mathbb{R}^c_{\ge 0}$ where $c = \# FD_S$ is the number of nodes with a flow demand, for the flow supplied by flow buffers at these nodes with a flow demand.
+- $C^{UD}_S \in \mathbb{R}^f_{\ge 0}$ where $f = \# U_S$, for the flow supplied by the user demand outflow source whose capacity is given by return flows.
# The optimization problem
@@ -117,15 +137,16 @@ The optimization problem for a subnetwork is a linear optimization problem consi
There are several types of variable whose value has to be determined to solve the allocation problem:
-- The flows $F \in \mathbb{R}_{\ge 0}^{n'\times n'}$ over the edges in the allocation network;
-- The flows $F^\text{basin out}_{i}, F^\text{basin in}_{i} \geq 0$ for all $i \in B_S$ supplied and consumed by the basins respectively.
+- The flows $F \in \mathbb{R}_{\ge 0}^{n\times n}$ over the edges in the allocation network;
+- The flows $F^\text{basin out}_{i}, F^\text{basin in}_{i} \geq 0$ for all $i \in B_S$ supplied and consumed by the basins with a level demand respectively;
+- The flows $F^\text{buffer out}_{i}, F^\text{buffer in}_{i} \ge 0$ for all $i \in FD_S \cup FF_S$ supplied and consumed by the flow buffers of nodes with a flow demand or fractional flow outneighbors.
## The optimization objective
The goal of allocation is to get the flow to nodes with demands as close as possible to these demands. To achieve this, a sum error of terms is minimized.
$$
- \min E_{\text{user demand}} + E_{\text{basin}}
+ \min E_{\text{user demand}} + E_{\text{level demand}} + E_{\text{flow demand}}
$$
The error between the flows and user demands is denoted by $E_{\text{user demand}}$, where
@@ -134,30 +155,49 @@ $$
$$
:::{.callout-note}
-When performing main network allocation, the connections to subnetworks are also interpreted as UserDemand with demands determined by subnetwork demand collection.
+When performing main network allocation, the connections to subnetworks are also interpreted as UserDemand nodes with demands determined by subnetwork demand collection.
:::
This type of objective cares about the absolute amount of water allocated to a demand. It treats all deviations equally which means it doesn't give larger punishment per flow unit if deviations increase.
The absolute value applied here is not supported in a linear programming context directly; this requires introduction of new variables and constraints. For more details see [here](https://optimization.cbe.cornell.edu/index.php?title=Optimization_with_absolute_values).
-Likewise, the error of basin demands is the absolute difference between flows consumed by basins and basin demands.
+Likewise, the error of level demands from basins is the absolute difference between flows consumed by basins and basin demands.
$$
- E_{\text{basin}} = \sum_{i \in B_S} \left| F_i^\text{basin in} - d_i^p(t)\right|
+ E_{\text{level demand}} = \sum_{i \in B_S} \left| F_i^\text{basin in} - d_i^p(t)\right|
+$$
+
+Lastly, the error of the flow demands is given as below.
+$$
+ E_{\text{flow demand}} = \sum_{i \in FD_S} \left| F_i^\text{buffer in} - d_i^p(t)\right|
$$
## The optimization constraints
-- Flow conservation: For the basins in the allocation network we have that
+
+For convenience, we use the notation
+
+\begin{align}
+ V^{\text{out}}_S(i) = \left\{j \in V : (i,j) \in E_S\right\} \\
+ V^{\text{in}}_S(j) = \left\{i \in V : (i,j) \in E_S\right\}
+\end{align}
+
+for the set of in-neighbors and out-neighbors of a node in the network respectively.
+
+- Flow conservation: For all nodes $k$ that are not a source or a sink (i.e. `FlowBoundary`, `LevelBoundary`, `UserDemand`) we have a flow conservation constraint:
$$
- F^\text{basin in}_k + \sum_{j=1}^{n'} F_{kj} = F^\text{basin out}_k + \sum_{i=1}^{n'} F_{ik}, \quad \forall k \in B_S .
-$$ {#eq-flowconservationconstraint}
-Note that we do not require equality here; in the allocation we do not mind that excess flow is 'forgotten' if it cannot contribute to the allocation to the demands.
+ \sum F_{\text{out special}} + \sum_{j \in V^{\text{out}}_S(k)} F_{kj} = \sum F_{\text{in special}} + \sum_{i \in V^{\text{in}}_S(k)} F_{ik}, \quad \forall k \in B_S.
+$$ {#eq-flowconservationconstraintbasin}
+
+In here, we have the following special flows:
+
+- If $k$ is a basin with a flow demand, there is a special outflow $F^{\text{basin in}}_k$ and a special inflow $F^{\text{basin out}}_k$;
+- If the node has a buffer (see [here](#the-optimization-variables)) there is a special outflow $F^{\text{buffer in}}_k$ and a special inflow $F^{\text{buffer out}}_k$.
:::{.callout-note}
-In @eq-flowconservationconstraint, the placement of the basin flows might seem counter-intuitive. Think of the basin storage as a separate node connected to the basin node.
+In the above, the placement of the basin and buffer flows might seem counter-intuitive. Think of the storage or buffer as a separate node connected to the node with the demand.
:::
-- Capacity: the flows over the edges are positive and bounded by the edge capacity:
+- Capacity: the flows over the edges are bounded by the edge capacity:
$$
F_{ij} \le \left(C_S\right)_{ij}, \quad \forall(i,j) \in E_S.
$$ {#eq-capacityconstraint}
@@ -168,19 +208,26 @@ $$
$$
:::{.callout-note}
-When performing subnetwork demand collection, these capacities are set to $\infty$ for edges which connect the main network to a subnetwork.
+When performing subnetwork demand collection, these capacities are set to $\infty$ for edges which connect the main network to a subnetwork. For all other sources the capacity is set to $0$, so that demand collection only uses flow from the main network inlet.
:::
+Similar constraints hold for the flow out of basins, flow demand buffers and user demand outflow sources:
+$$
+F^\text{basin out}_{i} \le (C^{FD}_S)_i, \quad \forall i \in B_S,
+$$
+
+$$
+F^\text{buffer out}_{i} \le (C^{FD}_S)_i, \quad \forall i \in FD_S,
+$$
-- UserDemand outflow: The outflow of the UserDemand is dictated by the inflow and the return factor:
$$
- F_{ik} = r_k \cdot F_{kj} \quad
- \quad \forall k \in U_S, \quad
- V^{\text{in}}_S(k) = \{i\},\;
- V^{\text{out}}_S(k) = \{j\}.
-$$ {#eq-returnflowconstraint}
-Here we use that each UserDemand node in the allocation network has a unique in-edge and out-edge.
-- User demand: UserDemand demand constraints are discussed in [the next section](allocation.qmd#sec-solving-allocation).
+F_{ij} \le (C^{UD}_S)_i, \quad \forall i \in U_S, \quad V_S^{\text{out}}(i) = \{j\}.
+$$
+Here we use that each UserDemand node in the allocation network has a unique outflow edge. The user outflow source capacities are increased after each optimization solve by the return fraction:
+$$
+ r_i \cdot F_{ki}, \quad V_S^{\text{in}}(i) = \{k\}.
+$$
+
- Fractional flow: Let $L_S \subset V_S$ be the set of nodes in the max flow graph with fractional flow outneighbors, and $f_j$ the flow fraction associated with fractional flow node $j \in V_S$. Then
$$
F_{ij} \le f_j \sum_{k\in V^\text{in}_S(i)} F_{ki} \qquad
@@ -190,41 +237,10 @@ $$ {#eq-fractionalflowconstraint}
- Flow sign: Furthermore there are the non-negativity constraints for the flows and allocations, see [The optimization variables](allocation.qmd#the-optimization-variables).
-## Final notes on the allocation problem
-
-### UserDemands using their own return flow
-
-If not explicitly avoided, UserDemands can use their own return flow in this allocation problem formulation.
-Therefore, return flow of UserDemand is only taken into account by allocation if that return flow is downstream of the UserDemand where it comes from. That is, if there is no path in the directed allocation network from the UserDemand outflow node back to the UserDemand.
-
-# Solving the allocation problem {#sec-solving-allocation}
-
-The allocation problem for an allocation network at time $t$ is solved per priority, as follows:
-
-1. Define a capacity matrix with capacities as described above, that will be updated for each priority:
-$$
- C_S^p \leftarrow C_S;
-$$
-2. Set the capacities of the edges that end in a UserDemand to their priority 1 demands:
-$$
- (C_S^p)_{i,j} \leftarrow d_j^1(t) \quad\text{ for all } (i,j) \in U_S;
-$$
-3. Maximize the objective function given the constraints;
-4. Subtract the used flows from the edge capacities:
-$$
- C_S^p \leftarrow C_S^p - F;
-$$
-5. Repeat steps 2-4 for the remaining priorities up to $p_{\max}$.
-
-:::{.callout-note}
-In the future there will be 2 more optimization solves:
-- One before optimizing for demands, taking the demand/supply from basins into account;
-- One after optimizing for demands, taking preferences over sources into account.
-:::
## Example
-The following is an example of an optimization problem for the example shown [here](../python/examples.ipynb#model-with-allocation):
+The following is an example of an optimization problem for the example shown [here](../python/examples.ipynb#model-with-allocation-user-demand):
```{julia}
@@ -243,10 +259,8 @@ t = 0.0
priority_idx = 1
Ribasim.set_flow!(p.graph, NodeID(:FlowBoundary, 1), NodeID(:Basin, 2), 1.0)
-
-Ribasim.adjust_source_capacities!(allocation_model, p, priority_idx)
-Ribasim.adjust_edge_capacities!(allocation_model, p, priority_idx)
Ribasim.set_objective_priority!(allocation_model, p, u, t, priority_idx)
+Ribasim.set_initial_values!(allocation_model, p, u, t)
println(p.allocation.allocation_models[1].problem)
```
diff --git a/docs/core/equations.qmd b/docs/core/equations.qmd
index 1f395cd58..a2719a638 100644
--- a/docs/core/equations.qmd
+++ b/docs/core/equations.qmd
@@ -137,7 +137,7 @@ ax.hlines([0,1],x_min,x_max, color = "k", ls = ":", zorder=-1)
ax.vlines([0,p], *y_lim, color = "k", ls = ":")
ax.set_xlim(x_min,x_max)
ax.set_xlabel("$x$", fontsize=fontsize)
-ax.set_ylabel("$\phi(x;p)$", fontsize=fontsize)
+ax.set_ylabel(r"$\phi(x;p)$", fontsize=fontsize)
ax.set_ylim(y_lim)
fig.tight_layout()
diff --git a/docs/core/usage.qmd b/docs/core/usage.qmd
index b6b051061..a54d48a6d 100644
--- a/docs/core/usage.qmd
+++ b/docs/core/usage.qmd
@@ -198,10 +198,14 @@ name it must have in the database if it is stored there.
- LevelDemand: Indicates minimum and maximum target level of connected basins for allocation
- `LevelDemand / static`: static target levels
- `LevelDemand / time`: dynamic target levels
+- FlowDemand: sets non-consuming flow demand
+ - `FlowDemand / static`: flow demands
+ - `FlowDemand / time`: dynamic flow demands
- Terminal: Water sink without state or properties
- `Terminal / static`: - (only node IDs)
- DiscreteControl: Set parameters of other nodes based on model state conditions (e.g. basin level)
- - `DisceteControl / condition`: Conditions of the form 'the level in the basin with node id `n` is bigger than 2.0 m'
+ - `DiscreteControl / variable` : Linear combinations of variables, e.g. averages or differences of levels
+ - `DisceteControl / condition`: Conditions of the form 'the compound variable with ID `n` is bigger than 2.0'
- `DisceteControl / logic`: Translates the truth value of a set of conditions to parameter values for a controlled node
- PidControl: Controls the level in a basin by continuously controlling the flow rate of a connected pump or outlet. See also [Wikipedia](https://en.wikipedia.org/wiki/PID_controller) and [PID controller in equations](equations.qmd#sec-PID).
- `PidControl / static`: The proportional, integral, and derivative parameters, the target value and which basin should be controlled
@@ -447,7 +451,7 @@ column | type | unit | restriction
------------- | ------- | ------------ | -----------
node_id | Int32 | - | sorted
active | Bool | - | (optional, default true)
-demand | Float64 | $m^3 s^{-1}$ | -
+demand | Float64 | $m^3 s^{-1}$ | non-negative
return_factor | Float64 | - | between [0 - 1]
min_level | Float64 | $m$ | -
priority | Int32 | - | positive, sorted per node id
@@ -467,22 +471,25 @@ column | type | unit | restriction
node_id | Int32 | - | sorted
priority | Int32 | - | positive, sorted per node id
time | DateTime | - | sorted per priority per node id
-demand | Float64 | $m^3 s^{-1}$ | -
+demand | Float64 | $m^3 s^{-1}$ | non-negative
return_factor | Float64 | - | between [0 - 1]
min_level | Float64 | $m$ | -
# LevelDemand {#sec-level_demand}
-An `LevelDemand` node associates a minimum and a maximum level with connected basins to be used by the allocation algorithm.
+A `LevelDemand` node associates a minimum and a maximum level with connected basins to be used by the allocation algorithm.
Below the minimum level the basin has a demand of the supplied priority,
-above the maximum level the basin acts as a source, used by all nodes with demands in order of priority.
-The same `LevelDemand` node can be used for basins in different subnetworks.
+above the maximum level the basin has a surplus and acts as a source, used by all nodes with demands in order of priority.
+The same `LevelDemand` node can be used for Basins in different subnetworks.
+
+Both `min_level` and `max_level` are optional, to be able to handle only the demand or surplus side.
+If both are missing, `LevelDemand` won't have any effects on allocation.
column | type | unit | restriction
------------- | ------- | ------------ | -----------
node_id | Int32 | - | sorted
-min_level | Float64 | $m$ | -
-max_level | Float64 | $m$ | -
+min_level | Float64 | $m$ | (optional, default -Inf)
+max_level | Float64 | $m$ | (optional, default Inf)
priority | Int32 | - | positive
## LevelDemand / time
@@ -498,6 +505,29 @@ min_level | Float64 | $m$ | -
max_level | Float64 | $m$ | -
priority | Int32 | - | positive
+# FlowDemand {#sec-flow_demand}
+
+A `FlowDemand` node associates a non-consuming flow demand to a connector node (e.g. `Pump`, `TabulatedRatingCurve`) for one single priority.
+FlowDemand nodes can set a flow demand only for a single connector node.
+
+column | type | unit | restriction
+------------- | -------- | ------------ | -----------
+node_id | Int32 | - | sorted
+priority | Int32 | - | positive
+demand | Float64 | $m^3 s^{-1}$ | non-negative
+
+## FlowDemand / time
+
+This table is the transient form of the `FlowDemand` table, in which a time-dependent demand can be supplied.
+Similar to the static version, only a single priority per `FlowDemand` node can be provided.
+
+column | type | unit | restriction
+------------- | -------- | ------------ | -----------
+node_id | Int32 | - | sorted
+time | DateTime | - | sorted per node id
+priority | Int32 | - | positive
+demand | Float64 | $m^3 s^{-1}$ | non-negative
+
# LevelBoundary {#sec-level-boundary}
Acts like an infinitely large basin where the level does not change by flow.
@@ -597,20 +627,35 @@ node_id | Int32 | - | sorted
# DisceteControl {#sec-discrete-control}
-DiscreteControl is implemented based on [VectorContinuousCallback](https://docs.sciml.ai/DiffEqDocs/stable/features/callback_functions/#VectorContinuousCallback).
+## DiscreteControl / variable
+
+The compound variable schema defines linear combinations of variables which can be used in conditions. This means that
+this schema defines new variables with the given `compound_variable_id` that look like
+$$
+\text{weight}_1 * \text{variable}_1 + \text{weight}_2 * \text{variable}_2 + \ldots,
+$$
+
+which can be for instance an average or a difference of variables. If a variable comes from a time-series, a look ahead $\Delta t$ can be supplied.
+
+column | type | unit | restriction
+-------------------- | -------- | ------- | -----------
+node_id | Int32 | - | sorted
+compound_variable_id | Int32 | - | sorted per node_id
+listen_node_type | String | - | known node type
+listen_node_id | Int32 | - | sorted per node_id
+variable | String | - | must be "level" or "flow_rate", sorted per listen_node_id
+weight | Float64 | - | (optional, default 1.0)
+look_ahead | Float64 | $s$ | Only on transient boundary conditions, non-negative (optional, default 0.0).
## DiscreteControl / condition
-The condition schema defines conditions of the form 'the discrete_control node with this node id listens to whether the given variable of the node with the given listen feature id is grater than the given value'. If the condition variable comes from a time-series, a look ahead $\Delta t$ can be supplied.
+The condition schema defines conditions of the form 'the `discrete_control` node with this `node_id`listens to whether the variable given by the `node_id` and `compound_variable_id` is greater than `greater_than`'. Multiple conditions with different `greater_than` values can be defined on the same compound_variable.
-column | type | unit | restriction
------------------ | -------- | ------- | -----------
-node_id | Int32 | - | sorted
-listen_node_type | String | - | known node type
-listen_node_id | Int32 | - | sorted per node_id
-variable | String | - | must be "level" or "flow_rate", sorted per listen_node_id
-greater_than | Float64 | various | sorted per variable
-look_ahead | Float64 | $s$ | Only on transient boundary conditions, non-negative (optional, default 0)
+column | type | unit | restriction
+-------------------- | -------- | ------- | -----------
+node_id | Int32 | - | sorted
+compound_variable_id | Int32 | - | -
+greater_than | Float64 | various | sorted per variable
## DiscreteControl / logic
@@ -647,7 +692,7 @@ column | type | unit | restriction
node_id | Int32 | - | sorted
control_state | String | - | (optional) sorted per node_id
active | Bool | - | (optional, default true)
-listen_node_type | Int32 | - | known node type
+listen_node_type | String | - | known node type
listen_node_id | Int32 | - | -
target | Float64 | $m$ | -
proportional | Float64 | $s^{-1}$ | -
@@ -679,27 +724,47 @@ derivative | Float64 | - | -
## Basin - `basin.arrow`
-The basin table contains results of the storage and level of each basin at every solver
-timestep. The initial condition is also written to the file.
-
-column | type | unit
--------- | -------- | ----
-time | DateTime | -
-node_id | Int32 | -
-storage | Float64 | $m^3$
-level | Float64 | $m$
+The Basin table contains:
+
+- Results of the storage and level of each Basin, which are instantaneous values;
+- Results of the fluxes on each Basin, which are mean values over the `saveat` intervals.
+ In the time column the start of the period is indicated.
+- The initial condition is written to the file, but the final state is not.
+ It will be placed in a separate output state file in the future.
+- The `inflow_rate` and `outflow_rate` are the sum of the flows from other nodes into and out of the Basin respectively.
+ The actual flows determine in which term they are counted, not the edge direction.
+- The `storage_rate` is flow that adds to the storage in the Basin, increasing the water level. In the equations below this number is split out into two non-negative numbers, `storage_increase` and `storage_decrease`.
+- The `balance_error` is the difference of all Basin inflows (`total_inflow`) and outflows (`total_outflow`), that is (`inflow_rate` + `precipitation` + `drainage` - `storage_increase`) - (`outflow_rate` + `evaporation` + `infiltration` - `storage_decrease`).
+ It can be used to check if the numerical error when solving the water balance is sufficiently small.
+- The `relative_error` is the fraction of the `balance_error` over the mean of the `total_inflow` and `total_outflow`.
+
+column | type | unit
+-------------- | ---------| ----
+time | DateTime | -
+node_id | Int32 | -
+storage | Float64 | $m^3$
+level | Float64 | $m$
+inflow_rate | Float64 | $m^3 s^{-1}$
+outflow_rate | Float64 | $m^3 s^{-1}$
+storage_rate | Float64 | $m^3 s^{-1}$
+precipitation | Float64 | $m^3 s^{-1}$
+evaporation | Float64 | $m^3 s^{-1}$
+drainage | Float64 | $m^3 s^{-1}$
+infiltration | Float64 | $m^3 s^{-1}$
+balance_error | Float64 | $m^3 s^{-1}$
+relative_error | Float64 | -
The table is sorted by time, and per time it is sorted by `node_id`.
## Flow - `flow.arrow`
-The flow table contains calculated mean flows for every flow edge in the model.
+The flow table contains calculated mean flows over the `saveat` intervals for every flow edge in the model.
In the time column the start of the period is indicated.
column | type | unit
-------------- | --------------------- | ----
time | DateTime | -
-edge_id | Union{Int32, Missing} | -
+edge_id | Int32 | -
from_node_type | String | -
from_node_id | Int32 | -
to_node_type | String | -
@@ -708,8 +773,7 @@ flow_rate | Float64 | $m^3 s^{-1}$
The table is sorted by time, and per time the same `edge_id` order is used, though not sorted.
The `edge_id` value is the same as the `fid` written to the Edge table, and can be used to directly look up the Edge geometry.
-Flows that are added to the model at a node, have a missing `edge_id`, and identical `from_node_id` and `to_node_id`.
-Flows out of the model always have a negative sign, and additions a positive sign.
+Flows from the "from" to the "to" node have a positive sign, and if the flow is reversed it will be negative.
## DiscreteControl - `control.arrow`
diff --git a/docs/python/examples.ipynb b/docs/python/examples.ipynb
index 2c221bdb7..d3a708b79 100644
--- a/docs/python/examples.ipynb
+++ b/docs/python/examples.ipynb
@@ -41,8 +41,7 @@
"import matplotlib.pyplot as plt\n",
"import numpy as np\n",
"import pandas as pd\n",
- "import ribasim\n",
- "from ribasim import Model, Node\n",
+ "from ribasim import Allocation, Model, Node\n",
"from ribasim.nodes import (\n",
" basin,\n",
" discrete_control,\n",
@@ -77,7 +76,7 @@
"metadata": {},
"outputs": [],
"source": [
- "model = Model(starttime=\"2020-01-01\", endtime=\"2021-01-01\")"
+ "model = Model(starttime=\"2020-01-01\", endtime=\"2021-01-01\", crs=\"EPSG:4326\")"
]
},
{
@@ -312,23 +311,23 @@
"metadata": {},
"outputs": [],
"source": [
- "model.edge.add(model.basin[1], model.manning_resistance[2], \"flow\")\n",
- "model.edge.add(model.manning_resistance[2], model.basin[3], \"flow\")\n",
- "model.edge.add(model.basin[3], model.tabulated_rating_curve[4], \"flow\")\n",
- "model.edge.add(model.tabulated_rating_curve[4], model.fractional_flow[5], \"flow\")\n",
- "model.edge.add(model.tabulated_rating_curve[4], model.fractional_flow[8], \"flow\")\n",
- "model.edge.add(model.fractional_flow[5], model.basin[6], \"flow\")\n",
- "model.edge.add(model.basin[6], model.pump[7], \"flow\")\n",
- "model.edge.add(model.fractional_flow[8], model.basin[9], \"flow\")\n",
- "model.edge.add(model.pump[7], model.basin[9], \"flow\")\n",
- "model.edge.add(model.basin[9], model.linear_resistance[10], \"flow\")\n",
- "model.edge.add(model.level_boundary[11], model.linear_resistance[12], \"flow\")\n",
- "model.edge.add(model.linear_resistance[12], model.basin[3], \"flow\")\n",
- "model.edge.add(model.tabulated_rating_curve[4], model.fractional_flow[13], \"flow\")\n",
- "model.edge.add(model.fractional_flow[13], model.terminal[14], \"flow\")\n",
- "model.edge.add(model.flow_boundary[15], model.basin[6], \"flow\")\n",
- "model.edge.add(model.flow_boundary[16], model.basin[1], \"flow\")\n",
- "model.edge.add(model.linear_resistance[10], model.level_boundary[17], \"flow\")"
+ "model.edge.add(model.basin[1], model.manning_resistance[2])\n",
+ "model.edge.add(model.manning_resistance[2], model.basin[3])\n",
+ "model.edge.add(model.basin[3], model.tabulated_rating_curve[4])\n",
+ "model.edge.add(model.tabulated_rating_curve[4], model.fractional_flow[5])\n",
+ "model.edge.add(model.tabulated_rating_curve[4], model.fractional_flow[8])\n",
+ "model.edge.add(model.fractional_flow[5], model.basin[6])\n",
+ "model.edge.add(model.basin[6], model.pump[7])\n",
+ "model.edge.add(model.fractional_flow[8], model.basin[9])\n",
+ "model.edge.add(model.pump[7], model.basin[9])\n",
+ "model.edge.add(model.basin[9], model.linear_resistance[10])\n",
+ "model.edge.add(model.level_boundary[11], model.linear_resistance[12])\n",
+ "model.edge.add(model.linear_resistance[12], model.basin[3])\n",
+ "model.edge.add(model.tabulated_rating_curve[4], model.fractional_flow[13])\n",
+ "model.edge.add(model.fractional_flow[13], model.terminal[14])\n",
+ "model.edge.add(model.flow_boundary[15], model.basin[6])\n",
+ "model.edge.add(model.flow_boundary[16], model.basin[1])\n",
+ "model.edge.add(model.linear_resistance[10], model.level_boundary[17])"
]
},
{
@@ -362,7 +361,8 @@
"metadata": {},
"outputs": [],
"source": [
- "model.write(datadir / \"basic/ribasim.toml\")"
+ "toml_path = datadir / \"basic/ribasim.toml\"\n",
+ "model.write(toml_path)"
]
},
{
@@ -379,7 +379,7 @@
" \"julia\",\n",
" \"--project=../../core\",\n",
" \"--eval\",\n",
- " f'using Ribasim; Ribasim.main(\"{datadir.as_posix()}/basic/ribasim.toml\")',\n",
+ " f'using Ribasim; Ribasim.main(\"{toml_path.as_posix()}\")',\n",
" ],\n",
" check=True,\n",
")"
@@ -390,8 +390,19 @@
"cell_type": "markdown",
"metadata": {},
"source": [
- "Now run the model with `ribasim basic/ribasim.toml`.\n",
- "After running the model, read back the results:\n"
+ "Now run the model. From Python you can run it with:\n",
+ "\n",
+ "```python\n",
+ "import subprocess\n",
+ "subprocess.run([cli_path, toml_path], check=True)\n",
+ "```\n",
+ "\n",
+ "Or similarly you can from the terminal with:\n",
+ "```bash\n",
+ "ribasim basic/ribasim.toml\n",
+ "```\n",
+ "\n",
+ "After running the model, read back the results:"
]
},
{
@@ -427,7 +438,7 @@
"source": [
"# Model with discrete control\n",
"\n",
- "The model constructed below consists of a single basin which slowly drains trough a `TabulatedRatingCurve`, but is held within a range around a target level (setpoint) by two connected pumps. These two pumps behave like a reversible pump. When pumping can be done in only one direction, and the other direction is only possible under gravity, use an Outlet for that direction.\n"
+ "The model constructed below consists of a single basin which slowly drains trough a `TabulatedRatingCurve`, but is held within a range by two connected pumps. These two pumps together behave like a reversible pump. When pumping can be done in only one direction, and the other direction is only possible under gravity, use an Outlet for that direction.\n"
]
},
{
@@ -444,7 +455,7 @@
"metadata": {},
"outputs": [],
"source": [
- "model = Model(starttime=\"2020-01-01\", endtime=\"2021-01-01\")"
+ "model = Model(starttime=\"2020-01-01\", endtime=\"2021-01-01\", crs=\"EPSG:4326\")"
]
},
{
@@ -458,6 +469,7 @@
" [\n",
" basin.Profile(area=[1000.0, 1000.0], level=[0.0, 1.0]),\n",
" basin.State(level=[20.0]),\n",
+ " basin.Time(time=[\"2020-01-01\", \"2020-07-01\"], precipitation=[0.0, 3e-6]),\n",
" ],\n",
")"
]
@@ -479,15 +491,20 @@
"model.discrete_control.add(\n",
" Node(7, Point(1.0, 0.0)),\n",
" [\n",
+ " discrete_control.Variable(\n",
+ " compound_variable_id=1,\n",
+ " listen_node_id=1,\n",
+ " listen_node_type=[\"Basin\"],\n",
+ " variable=[\"level\"],\n",
+ " ),\n",
" discrete_control.Condition(\n",
- " listen_node_id=[1, 1, 1],\n",
- " listen_node_type=[\"Basin\", \"Basin\", \"Basin\"],\n",
- " variable=[\"level\", \"level\", \"level\"],\n",
- " greater_than=[5.0, 10.0, 15.0],\n",
+ " compound_variable_id=1,\n",
+ " # min, max\n",
+ " greater_than=[5.0, 15.0],\n",
" ),\n",
" discrete_control.Logic(\n",
- " truth_state=[\"FFF\", \"U**\", \"T*F\", \"**D\", \"TTT\"],\n",
- " control_state=[\"in\", \"in\", \"none\", \"out\", \"out\"],\n",
+ " truth_state=[\"FF\", \"TF\", \"TT\"],\n",
+ " control_state=[\"in\", \"none\", \"out\"],\n",
" ),\n",
" ],\n",
")"
@@ -499,8 +516,8 @@
"source": [
"The above control logic can be summarized as follows:\n",
"\n",
- "- If the level gets above the maximum, activate the control state \"out\" until the setpoint is reached;\n",
- "- If the level gets below the minimum, active the control state \"in\" until the setpoint is reached;\n",
+ "- If the level is above the maximum, activate the control state \"out\";\n",
+ "- If the level is below the minimum, active the control state \"in\";\n",
"- Otherwise activate the control state \"none\".\n"
]
},
@@ -574,7 +591,7 @@
"source": [
"model.tabulated_rating_curve.add(\n",
" Node(5, Point(-1.0, 0.0)),\n",
- " [tabulated_rating_curve.Static(level=[2.0, 15.0], flow_rate=[0.0, 1e-3])],\n",
+ " [tabulated_rating_curve.Static(level=[2.0, 15.0], flow_rate=[0.0, 2e-3])],\n",
")"
]
},
@@ -609,14 +626,14 @@
"metadata": {},
"outputs": [],
"source": [
- "model.edge.add(model.basin[1], model.pump[3], \"flow\")\n",
- "model.edge.add(model.pump[3], model.level_boundary[4], \"flow\")\n",
- "model.edge.add(model.level_boundary[4], model.pump[2], \"flow\")\n",
- "model.edge.add(model.pump[2], model.basin[1], \"flow\")\n",
- "model.edge.add(model.basin[1], model.tabulated_rating_curve[5], \"flow\")\n",
- "model.edge.add(model.tabulated_rating_curve[5], model.terminal[6], \"flow\")\n",
- "model.edge.add(model.discrete_control[7], model.pump[2], \"control\")\n",
- "model.edge.add(model.discrete_control[7], model.pump[3], \"control\")"
+ "model.edge.add(model.basin[1], model.pump[3])\n",
+ "model.edge.add(model.pump[3], model.level_boundary[4])\n",
+ "model.edge.add(model.level_boundary[4], model.pump[2])\n",
+ "model.edge.add(model.pump[2], model.basin[1])\n",
+ "model.edge.add(model.basin[1], model.tabulated_rating_curve[5])\n",
+ "model.edge.add(model.tabulated_rating_curve[5], model.terminal[6])\n",
+ "model.edge.add(model.discrete_control[7], model.pump[2])\n",
+ "model.edge.add(model.discrete_control[7], model.pump[3])"
]
},
{
@@ -651,7 +668,7 @@
"outputs": [],
"source": [
"datadir = Path(\"data\")\n",
- "model.write(datadir / \"level_setpoint_with_minmax/ribasim.toml\")"
+ "model.write(datadir / \"level_range/ribasim.toml\")"
]
},
{
@@ -668,7 +685,7 @@
" \"julia\",\n",
" \"--project=../../core\",\n",
" \"--eval\",\n",
- " f'using Ribasim; Ribasim.main(\"{datadir.as_posix()}/level_setpoint_with_minmax/ribasim.toml\")',\n",
+ " f'using Ribasim; Ribasim.main(\"{datadir.as_posix()}/level_range/ribasim.toml\")',\n",
" ],\n",
" check=True,\n",
")"
@@ -678,7 +695,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
- "Now run the model with `level_setpoint_with_minmax/ribasim.toml`.\n",
+ "Now run the model with `ribasim level_range/ribasim.toml`.\n",
"After running the model, read back the results:\n"
]
},
@@ -688,9 +705,7 @@
"metadata": {},
"outputs": [],
"source": [
- "from matplotlib.dates import date2num\n",
- "\n",
- "df_basin = pd.read_feather(datadir / \"level_setpoint_with_minmax/results/basin.arrow\")\n",
+ "df_basin = pd.read_feather(datadir / \"level_range/results/basin.arrow\")\n",
"df_basin_wide = df_basin.pivot_table(\n",
" index=\"time\", columns=\"node_id\", values=[\"storage\", \"level\"]\n",
")\n",
@@ -708,21 +723,7 @@
" color=\"k\",\n",
")\n",
"\n",
- "df_control = pd.read_feather(\n",
- " datadir / \"level_setpoint_with_minmax/results/control.arrow\"\n",
- ")\n",
- "\n",
- "y_min, y_max = ax.get_ybound()\n",
- "ax.fill_between(df_control.time[:2], 2 * [y_min], 2 * [y_max], alpha=0.2, color=\"C0\")\n",
- "ax.fill_between(df_control.time[2:4], 2 * [y_min], 2 * [y_max], alpha=0.2, color=\"C0\")\n",
- "\n",
- "ax.set_xticks(\n",
- " date2num(df_control.time).tolist(),\n",
- " df_control.control_state.tolist(),\n",
- " rotation=50,\n",
- ")\n",
- "\n",
- "ax.set_yticks(greater_than, [\"min\", \"setpoint\", \"max\"])\n",
+ "ax.set_yticks(greater_than, [\"min\", \"max\"])\n",
"ax.set_ylabel(\"level\")\n",
"plt.show()"
]
@@ -731,7 +732,8 @@
"cell_type": "markdown",
"metadata": {},
"source": [
- "The highlighted regions show where a pump is active.\n"
+ "We see that in January the level of the basin is too high and thus water is pumped out until the maximum level of the desired range is reached. Then until May water flows out of the basin freely through the tabulated rating curve until the minimum level is reached. From \n",
+ "this point until the start of July water is pumped into the basin in short bursts to stay within the desired range. At the start of July rain starts falling on the basin, which causes the basin level to rise until the maximum level. From this point onward water is pumped out of the basin in short bursts to stay within the desired range."
]
},
{
@@ -754,10 +756,7 @@
"metadata": {},
"outputs": [],
"source": [
- "model = Model(\n",
- " starttime=\"2020-01-01\",\n",
- " endtime=\"2020-12-01\",\n",
- ")"
+ "model = Model(starttime=\"2020-01-01\", endtime=\"2020-12-01\", crs=\"EPSG:4326\")"
]
},
{
@@ -840,7 +839,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
- "Setup flow boundary:\n"
+ "Setup level boundary:\n"
]
},
{
@@ -851,7 +850,7 @@
"source": [
"model.level_boundary.add(\n",
" Node(4, Point(3.0, 0.0)),\n",
- " [level_boundary.Static(level=[1])],\n",
+ " [level_boundary.Static(level=[5.0])],\n",
")"
]
},
@@ -868,28 +867,11 @@
"metadata": {},
"outputs": [],
"source": [
- "model.pid_control.add(\n",
- " Node(5, Point(1.5, 1.0)),\n",
- " [\n",
- " pid_control.Time(\n",
- " time=[\n",
- " \"2020-01-01\",\n",
- " \"2020-05-01\",\n",
- " \"2020-07-01\",\n",
- " \"2020-12-01\",\n",
- " ],\n",
- " listen_node_id=[2, 2, 2, 2],\n",
- " listen_node_type=[\"Basin\", \"Basin\", \"Basin\", \"Basin\"],\n",
- " target=[5.0, 5.0, 7.5, 7.5],\n",
- " proportional=[-1e-3, 1e-3, 1e-3, 1e-3],\n",
- " integral=[-1e-7, 1e-7, -1e-7, 1e-7],\n",
- " derivative=[0.0, 0.0, 0.0, 0.0],\n",
- " )\n",
- " ],\n",
- ")\n",
- "model.pid_control.add(\n",
- " Node(7, Point(1.5, -1.0)),\n",
- " [\n",
+ "for node, proportional, integral in [\n",
+ " (Node(5, Point(1.5, 1.0)), -1e-3, -1e-7),\n",
+ " (Node(7, Point(1.5, -1.0)), 1e-3, 1e-7),\n",
+ "]:\n",
+ " pid_control_data = [\n",
" pid_control.Time(\n",
" time=[\n",
" \"2020-01-01\",\n",
@@ -897,15 +879,15 @@
" \"2020-07-01\",\n",
" \"2020-12-01\",\n",
" ],\n",
- " listen_node_id=[2, 2, 2, 2],\n",
- " listen_node_type=[\"Basin\", \"Basin\", \"Basin\", \"Basin\"],\n",
+ " listen_node_id=2,\n",
+ " listen_node_type=\"Basin\",\n",
" target=[5.0, 5.0, 7.5, 7.5],\n",
- " proportional=[-1e-3, 1e-3, 1e-3, 1e-3],\n",
- " integral=[-1e-7, 1e-7, -1e-7, 1e-7],\n",
- " derivative=[0.0, 0.0, 0.0, 0.0],\n",
+ " proportional=proportional,\n",
+ " integral=integral,\n",
+ " derivative=0.0,\n",
" )\n",
- " ],\n",
- ")"
+ " ]\n",
+ " model.pid_control.add(node, pid_control_data)"
]
},
{
@@ -928,13 +910,13 @@
"metadata": {},
"outputs": [],
"source": [
- "model.edge.add(model.flow_boundary[1], model.basin[2], \"flow\")\n",
- "model.edge.add(model.basin[2], model.pump[3], \"flow\")\n",
- "model.edge.add(model.pump[3], model.level_boundary[4], \"flow\")\n",
- "model.edge.add(model.level_boundary[4], model.outlet[6], \"flow\")\n",
- "model.edge.add(model.outlet[6], model.basin[2], \"flow\")\n",
- "model.edge.add(model.pid_control[5], model.pump[3], \"control\")\n",
- "model.edge.add(model.pid_control[7], model.outlet[6], \"control\")"
+ "model.edge.add(model.flow_boundary[1], model.basin[2])\n",
+ "model.edge.add(model.basin[2], model.pump[3])\n",
+ "model.edge.add(model.pump[3], model.level_boundary[4])\n",
+ "model.edge.add(model.level_boundary[4], model.outlet[6])\n",
+ "model.edge.add(model.outlet[6], model.basin[2])\n",
+ "model.edge.add(model.pid_control[5], model.pump[3])\n",
+ "model.edge.add(model.pid_control[7], model.outlet[6])"
]
},
{
@@ -1040,10 +1022,7 @@
"metadata": {},
"outputs": [],
"source": [
- "model = Model(\n",
- " starttime=\"2020-01-01\",\n",
- " endtime=\"2020-01-20\",\n",
- ")"
+ "model = Model(starttime=\"2020-01-01\", endtime=\"2020-01-20\", crs=\"EPSG:4326\")"
]
},
{
@@ -1189,10 +1168,14 @@
"model.discrete_control.add(\n",
" Node(11, Point(4.5, 0.25), subnetwork_id=1),\n",
" [\n",
- " discrete_control.Condition(\n",
+ " discrete_control.Variable(\n",
+ " compound_variable_id=1,\n",
" listen_node_id=[5],\n",
" listen_node_type=[\"Basin\"],\n",
" variable=[\"level\"],\n",
+ " ),\n",
+ " discrete_control.Condition(\n",
+ " compound_variable_id=1,\n",
" greater_than=[0.52],\n",
" ),\n",
" discrete_control.Logic(\n",
@@ -1258,7 +1241,7 @@
"metadata": {},
"outputs": [],
"source": [
- "model.allocation = ribasim.Allocation(use_allocation=True, timestep=86400)"
+ "model.allocation = Allocation(use_allocation=True, timestep=86400)"
]
},
{
@@ -1274,22 +1257,22 @@
"metadata": {},
"outputs": [],
"source": [
- "model.edge.add(model.flow_boundary[1], model.basin[2], \"flow\", subnetwork_id=1)\n",
- "model.edge.add(model.basin[2], model.user_demand[3], \"flow\")\n",
- "model.edge.add(model.basin[2], model.linear_resistance[4], \"flow\")\n",
- "model.edge.add(model.linear_resistance[4], model.basin[5], \"flow\")\n",
- "model.edge.add(model.basin[5], model.user_demand[6], \"flow\")\n",
- "model.edge.add(model.basin[5], model.tabulated_rating_curve[7], \"flow\")\n",
- "model.edge.add(model.tabulated_rating_curve[7], model.fractional_flow[8], \"flow\")\n",
- "model.edge.add(model.user_demand[3], model.basin[2], \"flow\")\n",
- "model.edge.add(model.user_demand[6], model.basin[5], \"flow\")\n",
- "model.edge.add(model.tabulated_rating_curve[7], model.fractional_flow[9], \"flow\")\n",
- "model.edge.add(model.fractional_flow[8], model.terminal[10], \"flow\")\n",
- "model.edge.add(model.fractional_flow[9], model.basin[12], \"flow\")\n",
- "model.edge.add(model.basin[12], model.user_demand[13], \"flow\")\n",
- "model.edge.add(model.user_demand[13], model.terminal[10], \"flow\")\n",
- "model.edge.add(model.discrete_control[11], model.fractional_flow[8], \"control\")\n",
- "model.edge.add(model.discrete_control[11], model.fractional_flow[9], \"control\")"
+ "model.edge.add(model.flow_boundary[1], model.basin[2], subnetwork_id=1)\n",
+ "model.edge.add(model.basin[2], model.user_demand[3])\n",
+ "model.edge.add(model.basin[2], model.linear_resistance[4])\n",
+ "model.edge.add(model.linear_resistance[4], model.basin[5])\n",
+ "model.edge.add(model.basin[5], model.user_demand[6])\n",
+ "model.edge.add(model.basin[5], model.tabulated_rating_curve[7])\n",
+ "model.edge.add(model.tabulated_rating_curve[7], model.fractional_flow[8])\n",
+ "model.edge.add(model.user_demand[3], model.basin[2])\n",
+ "model.edge.add(model.user_demand[6], model.basin[5])\n",
+ "model.edge.add(model.tabulated_rating_curve[7], model.fractional_flow[9])\n",
+ "model.edge.add(model.fractional_flow[8], model.terminal[10])\n",
+ "model.edge.add(model.fractional_flow[9], model.basin[12])\n",
+ "model.edge.add(model.basin[12], model.user_demand[13])\n",
+ "model.edge.add(model.user_demand[13], model.terminal[10])\n",
+ "model.edge.add(model.discrete_control[11], model.fractional_flow[8])\n",
+ "model.edge.add(model.discrete_control[11], model.fractional_flow[9])"
]
},
{
@@ -1433,10 +1416,7 @@
"metadata": {},
"outputs": [],
"source": [
- "model = ribasim.Model(\n",
- " starttime=\"2020-01-01\",\n",
- " endtime=\"2020-02-01\",\n",
- ")"
+ "model = Model(starttime=\"2020-01-01\", endtime=\"2020-02-01\", crs=\"EPSG:4326\")"
]
},
{
@@ -1457,7 +1437,7 @@
" basin.State(level=[0.5]),\n",
"]\n",
"model.basin.add(\n",
- " Node(2, Point(1.0, 0.0)),\n",
+ " Node(2, Point(1.0, 0.0), subnetwork_id=2),\n",
" [\n",
" *basin_data,\n",
" basin.Time(\n",
@@ -1471,7 +1451,7 @@
" ],\n",
")\n",
"model.basin.add(\n",
- " Node(5, Point(2.0, -1.0)),\n",
+ " Node(5, Point(2.0, -1.0), subnetwork_id=2),\n",
" [\n",
" *basin_data,\n",
" basin.Static(\n",
@@ -1482,9 +1462,6 @@
" urban_runoff=[0.0],\n",
" ),\n",
" ],\n",
- ")\n",
- "profile = pd.DataFrame(\n",
- " data={\"node_id\": [2, 2, 5, 5], \"area\": 1e3, \"level\": [0.0, 1.0, 0.0, 1.0]}\n",
")"
]
},
@@ -1502,7 +1479,7 @@
"outputs": [],
"source": [
"model.flow_boundary.add(\n",
- " Node(1, Point(0.0, 0.0)), [flow_boundary.Static(flow_rate=[1e-3])]\n",
+ " Node(1, Point(0.0, 0.0), subnetwork_id=2), [flow_boundary.Static(flow_rate=[1e-3])]\n",
")"
]
},
@@ -1510,7 +1487,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
- "Setup allocation level control:\n"
+ "Setup level demand:\n"
]
},
{
@@ -1520,7 +1497,7 @@
"outputs": [],
"source": [
"model.level_demand.add(\n",
- " Node(4, Point(1.0, -1.0)),\n",
+ " Node(4, Point(1.0, -1.0), subnetwork_id=2),\n",
" [level_demand.Static(priority=[1], min_level=[1.0], max_level=[1.5])],\n",
")"
]
@@ -1539,7 +1516,7 @@
"outputs": [],
"source": [
"model.user_demand.add(\n",
- " Node(3, Point(2.0, 0.0)),\n",
+ " Node(3, Point(2.0, 0.0), subnetwork_id=2),\n",
" [\n",
" user_demand.Static(\n",
" priority=[2], demand=[1.5e-3], return_factor=[0.2], min_level=[0.2]\n",
@@ -1561,7 +1538,7 @@
"metadata": {},
"outputs": [],
"source": [
- "model.allocation = ribasim.Allocation(use_allocation=True, timestep=1e5)"
+ "model.allocation = Allocation(use_allocation=True, timestep=1e5)"
]
},
{
@@ -1577,11 +1554,11 @@
"metadata": {},
"outputs": [],
"source": [
- "model.edge.add(model.flow_boundary[1], model.basin[2], \"flow\", subnetwork_id=2)\n",
- "model.edge.add(model.basin[2], model.user_demand[3], \"flow\")\n",
- "model.edge.add(model.level_demand[4], model.basin[2], \"control\")\n",
- "model.edge.add(model.user_demand[3], model.basin[5], \"flow\")\n",
- "model.edge.add(model.level_demand[4], model.basin[5], \"control\")"
+ "model.edge.add(model.flow_boundary[1], model.basin[2], subnetwork_id=2)\n",
+ "model.edge.add(model.basin[2], model.user_demand[3])\n",
+ "model.edge.add(model.level_demand[4], model.basin[2])\n",
+ "model.edge.add(model.user_demand[3], model.basin[5])\n",
+ "model.edge.add(model.level_demand[4], model.basin[5])"
]
},
{
@@ -1655,23 +1632,14 @@
"df_basin_wide = df_basin.pivot_table(\n",
" index=\"time\", columns=\"node_id\", values=[\"storage\", \"level\"]\n",
")\n",
- "ax = df_basin_wide[\"level\"].plot()\n",
- "where_allocation = (\n",
- " df_basin_wide.index - df_basin_wide.index[0]\n",
- ").total_seconds() % model.allocation.timestep == 0\n",
- "where_allocation[0] = False\n",
- "df_basin_wide[where_allocation][\"level\"].plot(\n",
- " style=\"o\",\n",
- " ax=ax,\n",
- ")\n",
- "ax.set_ylabel(\"level [m]\")"
+ "ax = df_basin_wide[\"level\"].plot(ylabel=\"level [m]\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
- "In the plot above, the line denotes the level of Basin #2 over time and the dots denote the times at which allocation optimization was run, with intervals of $\\Delta t_{\\text{alloc}}$.\n",
+ "In the plot above, the line denotes the level of Basin #2 over time.\n",
"The Basin level is a piecewise linear function of time, with several stages explained below.\n",
"\n",
"Constants:\n",
@@ -1698,7 +1666,436 @@
{
"cell_type": "markdown",
"metadata": {},
- "source": []
+ "source": [
+ "# Guidance of modelling a cascade of polder basins"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "**Situation description**: This example shows how to make a model for a given practical water system, which consists of a cascade of level control polder basins with inlet and outlet to the main systems. Note that alternative model layouts are feasible for the same water system, each having its positive items and drawbacks."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "![](https://github.com/Deltares/Ribasim/assets/4471859/6dba5af2-14fb-47a5-bdfe-69c2c41f761d)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "The polder system is composed of a sequence of level controlled polder basins with weirs inbetween each basin and an inlet and outlet to main system"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "model = Model(starttime=\"2020-01-01\", endtime=\"2021-01-01\", crs=\"EPSG:28992\")"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "All the polder basins are exposed to time varying forcings (precipitation, evaporation, drainage, infiltration) to mimic situations of water excess and water shortage.\n",
+ "\n",
+ "In case of water excess, a pump in the most downstream polder will need to pump the surplus water to the main water system. In case of water shortage, an inlet at the most upstream polder will need to bring water into the cascase of polders. The main water system acts as a water source.\n",
+ "\n",
+ "**Model approach**: All polder basins as well as the main water system are modelled with basin nodes. To let the system experience all 4 excess/shortage situation, forcing time series are made in a way that is adapting to them. Overall, assume that in one year, the system will experience precipitation (situation 1) in winter and early spring, precipitation shortage (situation 2) from late spring until early autumn. During situation 2, polder basin 4 will experience additional seepage (compoensating its shortage), and later polder basin 3 will also receive more seepage."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Setting up the basins:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "time = pd.date_range(model.starttime, model.endtime)\n",
+ "day_of_year = time.day_of_year.to_numpy()\n",
+ "\n",
+ "precipitation = np.zeros(day_of_year.size)\n",
+ "precipitation[0:90] = 1.72e-8\n",
+ "precipitation[330:366] = 1.72e-8\n",
+ "\n",
+ "evaporation = np.zeros(day_of_year.size)\n",
+ "evaporation[130:270] = 2.87e-8\n",
+ "\n",
+ "drainage = np.zeros(day_of_year.size)\n",
+ "drainage[120:270] = 0.4 * 2.87e-8\n",
+ "drainage_3 = drainage.copy()\n",
+ "drainage_3[210:240] = 17 * 2.87e-8\n",
+ "drainage_4 = drainage.copy()\n",
+ "drainage_4[160:240] = 13 * 2.87e-8\n",
+ "\n",
+ "infiltration = np.zeros(day_of_year.size)\n",
+ "infiltration[0:90] = 5e-8\n",
+ "\n",
+ "polder_profile = basin.Profile(area=[100, 100], level=[0.0, 3.0])\n",
+ "\n",
+ "basin_time = [\n",
+ " basin.Time(\n",
+ " time=pd.date_range(model.starttime, model.endtime),\n",
+ " drainage=drainage,\n",
+ " potential_evaporation=evaporation,\n",
+ " infiltration=0.0,\n",
+ " precipitation=precipitation,\n",
+ " urban_runoff=0.0,\n",
+ " ),\n",
+ "]\n",
+ "\n",
+ "basin_time4 = [\n",
+ " basin.Time(\n",
+ " time=pd.date_range(model.starttime, model.endtime),\n",
+ " drainage=drainage_4,\n",
+ " potential_evaporation=evaporation,\n",
+ " infiltration=0.0,\n",
+ " precipitation=precipitation,\n",
+ " urban_runoff=0.0,\n",
+ " ),\n",
+ "]\n",
+ "basin_time3 = [\n",
+ " basin.Time(\n",
+ " time=pd.date_range(model.starttime, model.endtime),\n",
+ " drainage=drainage_3,\n",
+ " potential_evaporation=evaporation,\n",
+ " infiltration=0.0,\n",
+ " precipitation=precipitation,\n",
+ " urban_runoff=0.0,\n",
+ " ),\n",
+ "]\n",
+ "\n",
+ "model.basin.add(\n",
+ " Node(1, Point(2.0, 0.0)),\n",
+ " [\n",
+ " basin.State(level=[2.5]),\n",
+ " basin.Profile(area=[1000, 1000], level=[0.0, 3.0]),\n",
+ " basin.Time(\n",
+ " time=pd.date_range(model.starttime, model.endtime),\n",
+ " drainage=0.0,\n",
+ " potential_evaporation=0.0,\n",
+ " infiltration=0.0,\n",
+ " precipitation=0.0,\n",
+ " urban_runoff=0.0,\n",
+ " ),\n",
+ " ],\n",
+ ")\n",
+ "model.basin.add(\n",
+ " Node(4, Point(0.0, -2.0)),\n",
+ " [basin.State(level=[1.5]), polder_profile, *basin_time],\n",
+ ")\n",
+ "model.basin.add(\n",
+ " Node(6, Point(0.0, -4.0)),\n",
+ " [basin.State(level=[1.0]), polder_profile, *basin_time],\n",
+ ")\n",
+ "model.basin.add(\n",
+ " Node(8, Point(2.0, -4.0)),\n",
+ " [basin.State(level=[1.5]), polder_profile, *basin_time3],\n",
+ ")\n",
+ "model.basin.add(\n",
+ " Node(10, Point(4.0, -4.0)),\n",
+ " [basin.State(level=[1.3]), polder_profile, *basin_time4],\n",
+ ")\n",
+ "model.basin.add(\n",
+ " Node(12, Point(4.0, -2.0)),\n",
+ " [basin.State(level=[0.1]), polder_profile, *basin_time],\n",
+ ")"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "After all the basins are defined the connecting component inbetween the basins needs to be determined. For polder basin 5 (node 12), the water level needs to be maintain at 0.0 meter. This means that either there should be no water in this basin, or the basin bottom is lower than the reference level, and the water level should be maintained at the reference level.\n",
+ "\n",
+ "Since the water level of the main system is at 2.5 meter above the reference level a pump is needed to remove the water from polder basin 5."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Setup the pumps:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "model.pump.add(\n",
+ " Node(13, Point(4.0, -1.0)),\n",
+ " [pump.Static(flow_rate=[0.5 / 3600])],\n",
+ ")"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "According to the description of situation 1 and 2, the water in one polder basin needs to be able to flow to the downstream basin if the current basin has too much water (i.e. the water level is above the setpoint) or if the downstream basin is below setpoint and needs more water. This could be modelled with an uncontrolled TabulatedRatingCurve node with Q=0 at the setpoint level (and Q rising when the level rises above setpoint) , or with an Outlet node where the minimum crest is specified at or just below the setpoint. In this example, we've chosen for the Outlet where we specify the minimum crest level 5 cm below the setpoint. For example: the Outlet of polder basin 1 (node 4) is specified with a minimum crest level of 1.95 meter."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Setup the outlets:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# Set up outlet\n",
+ "model.outlet.add(\n",
+ " Node(2, Point(0.0, -1.0)),\n",
+ " [outlet.Static(flow_rate=[2 * 0.5 / 3600], min_crest_level=[0.0])],\n",
+ ")\n",
+ "model.outlet.add(\n",
+ " Node(5, Point(0.0, -3.0)),\n",
+ " [outlet.Static(flow_rate=[0.5 / 3600], min_crest_level=[1.95])],\n",
+ ")\n",
+ "model.outlet.add(\n",
+ " Node(7, Point(1.0, -4.0)),\n",
+ " [outlet.Static(flow_rate=[0.5 / 3600], min_crest_level=[1.45])],\n",
+ ")\n",
+ "model.outlet.add(\n",
+ " Node(9, Point(3.0, -4.0)),\n",
+ " [outlet.Static(flow_rate=[0.5 / 3600], min_crest_level=[0.95])],\n",
+ ")\n",
+ "model.outlet.add(\n",
+ " Node(11, Point(4.0, -3.0)),\n",
+ " [outlet.Static(flow_rate=[0.5 / 3600], min_crest_level=[0.45])],\n",
+ ")"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "When using Outlets as connecting nodes, the flow over the Outlet needs to be controlled to maintain the water level at the setpoint. For this purpose we introduce local PidControllers, where the targets of the PidControllers are set to the setpoints. Disadvantage of this local control approach is the delay that is introduced to transport the 'basin X has a shortage' message upstream through the cascade to the inlet. Current functionality does not offer the capability for PidControl to take multiple observations into account when controlling the inlet. Combining multiple observations in one control is feasible with DiscreteControl. This could be an alternative approach to controlling the inlet for the cascading water system."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Setup the PID control:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "pid_control_data = {\n",
+ " \"listen_node_type\": \"Basin\",\n",
+ " \"proportional\": [0.05],\n",
+ " \"integral\": [0.00],\n",
+ " \"derivative\": [0.0],\n",
+ "}\n",
+ "model.pid_control.add(\n",
+ " Node(3, Point(-1.0, -1.0)),\n",
+ " [pid_control.Static(listen_node_id=[4], target=[2.0], **pid_control_data)],\n",
+ ")\n",
+ "model.pid_control.add(\n",
+ " Node(14, Point(-1.0, -3.0)),\n",
+ " [pid_control.Static(listen_node_id=[6], target=[1.5], **pid_control_data)],\n",
+ ")\n",
+ "model.pid_control.add(\n",
+ " Node(15, Point(1.0, -3.0)),\n",
+ " [pid_control.Static(listen_node_id=[8], target=[1.0], **pid_control_data)],\n",
+ ")\n",
+ "model.pid_control.add(\n",
+ " Node(16, Point(3.0, -3.0)),\n",
+ " [pid_control.Static(listen_node_id=[10], target=[0.5], **pid_control_data)],\n",
+ ")"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Setup the edges:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "model.edge.add(model.basin[1], model.outlet[2])\n",
+ "model.edge.add(model.pid_control[3], model.outlet[2])\n",
+ "model.edge.add(model.outlet[2], model.basin[4])\n",
+ "model.edge.add(model.basin[4], model.outlet[5])\n",
+ "model.edge.add(model.outlet[5], model.basin[6])\n",
+ "model.edge.add(model.basin[6], model.outlet[7])\n",
+ "model.edge.add(model.outlet[7], model.basin[8])\n",
+ "model.edge.add(model.basin[8], model.outlet[9])\n",
+ "model.edge.add(model.outlet[9], model.basin[10])\n",
+ "model.edge.add(model.basin[10], model.outlet[11])\n",
+ "model.edge.add(model.outlet[11], model.basin[12])\n",
+ "model.edge.add(model.basin[12], model.pump[13])\n",
+ "model.edge.add(model.pump[13], model.basin[1])\n",
+ "model.edge.add(model.pid_control[14], model.outlet[5])\n",
+ "model.edge.add(model.pid_control[15], model.outlet[7])\n",
+ "model.edge.add(model.pid_control[16], model.outlet[9])"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "To plot the model"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "model.plot()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Write the model to a TOML file and run it in the Julia."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "datadir = Path(\"data\")\n",
+ "model.write(datadir / \"local_pidcontrolled_cascade/ribasim.toml\")"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# | include: false\n",
+ "from subprocess import run\n",
+ "\n",
+ "run(\n",
+ " [\n",
+ " \"julia\",\n",
+ " \"--project=../../core\",\n",
+ " \"--eval\",\n",
+ " f'using Ribasim; Ribasim.main(\"{datadir.as_posix()}/local_pidcontrolled_cascade/ribasim.toml\")',\n",
+ " ],\n",
+ " check=True,\n",
+ ")"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "After running the model, read back the result to plot the flow of each polder basin."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "datadir_flow = datadir / \"local_pidcontrolled_cascade/results/flow.arrow\"\n",
+ "df_flow = pd.read_feather(datadir_flow)\n",
+ "df_flow[\"edge\"] = list(zip(df_flow.from_node_id, df_flow.to_node_id))\n",
+ "df_flow[\"flow_m3d\"] = df_flow.flow_rate * 86400\n",
+ "\n",
+ "df_pivot = df_flow.pivot_table(index=\"time\", columns=\"edge\", values=\"flow_m3d\")"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Below graphs show the flow exchanged with the mainsystem (i.e. the inlet and the pump), and the flow of weirs inbetween the polder basins."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "df_input = df_pivot.loc[:, [(1, 2), (13, 1)]]\n",
+ "df_input.plot(ylim=[-1.0, 20.0])\n",
+ "df_weirs = df_pivot.loc[:, [(4, 5), (6, 7), (8, 9), (10, 11)]]\n",
+ "df_weirs.plot(ylim=[-1.0, 15.0])"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ " Below graph shows the vertical flux on each basin."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "datadir_basin = datadir / \"local_pidcontrolled_cascade/results/basin.arrow\"\n",
+ "df_basin = pd.read_feather(datadir_basin)\n",
+ "df_basin[\"vertical_flux\"] = (\n",
+ " df_basin[\"precipitation\"]\n",
+ " - df_basin[\"evaporation\"]\n",
+ " + df_basin[\"drainage\"]\n",
+ " + df_basin[\"infiltration\"]\n",
+ ")\n",
+ "df_basin_wide = df_basin.pivot_table(\n",
+ " index=\"time\", columns=\"node_id\", values=[\"storage\", \"level\", \"vertical_flux\"]\n",
+ ")\n",
+ "df_basin_wide[\"vertical_flux\"].plot()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "In the following graph, the water level of basins are shown. The five polder basins are given starting levels that are different from their setpoints. It can be observed that in the beginning, the water level are changing and approaching to the set points. Later when the water levels are stable, they will not be affected by the forcing."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "df_basin_wide[\"level\"].plot()"
+ ]
}
],
"metadata": {
@@ -1717,7 +2114,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
- "version": "3.11.8"
+ "version": "3.12.2"
}
},
"nbformat": 4,
diff --git a/open-vscode.bat b/open-vscode.bat
index 078d226d0..ae86837bf 100644
--- a/open-vscode.bat
+++ b/open-vscode.bat
@@ -1 +1 @@
-pixi run code . | exit
+pixi run --environment=dev code . | exit
diff --git a/pixi.lock b/pixi.lock
index acba08193..d9c3f600d 100644
--- a/pixi.lock
+++ b/pixi.lock
@@ -9,463 +9,301 @@ environments:
- conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/linux-64/alsa-lib-1.2.11-hd590300_1.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/anyio-4.3.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/argon2-cffi-23.1.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/argon2-cffi-bindings-21.2.0-py311h459d7ec_4.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/arrow-1.3.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/asttokens-2.4.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/async-lru-2.0.4-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/attr-2.5.1-h166bdaf_1.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/noarch/attrs-23.2.0-pyh71513ae_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-auth-0.7.16-h79b3bcb_6.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-cal-0.6.10-hb29e0c7_1.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-common-0.9.13-hd590300_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-compression-0.2.18-hecc5fa9_1.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-event-stream-0.4.2-hf9b2f7b_4.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-http-0.8.1-h5d7533a_5.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-io-0.14.5-h50678d4_1.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-mqtt-0.10.2-hf479d2b_4.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-s3-0.5.2-h4ad9680_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-sdkutils-0.1.15-hecc5fa9_1.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-checksums-0.1.18-hecc5fa9_1.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-crt-cpp-0.26.2-h19f5d62_7.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-sdk-cpp-1.11.267-h5606698_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-auth-0.7.18-he0b1f16_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-cal-0.6.11-heb1d5e4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-common-0.9.15-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-compression-0.2.18-hce8ee76_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-event-stream-0.4.2-h01f5eca_8.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-http-0.8.1-hdb68c23_10.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-io-0.14.7-hbfbeace_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-mqtt-0.10.4-h50844eb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-s3-0.5.7-h6be9164_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-sdkutils-0.1.15-hce8ee76_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-checksums-0.1.18-hce8ee76_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-crt-cpp-0.26.8-h2150271_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-sdk-cpp-1.11.267-hddb5a97_7.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/azure-core-cpp-1.11.1-h91d86a7_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-identity-cpp-1.6.0-hf1915f5_1.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/azure-storage-blobs-cpp-12.10.0-h00ab1b0_1.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/azure-storage-common-cpp-12.5.0-h94269e2_4.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.14.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/beartype-0.17.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/beautifulsoup4-4.12.3-pyha770c72_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/black-24.2.0-py311h38be061_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/bleach-6.1.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/blosc-1.21.5-h0f2a231_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/black-24.4.2-py312h7900ff3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/blosc-1.21.5-hc2324a3_1.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.3.4-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.2-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-1.1.0-hd590300_1.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-bin-1.1.0-hd590300_1.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.1.0-py311hb755f60_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/build-0.7.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.1.0-py312h30efb56_1.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hd590300_5.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.27.0-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.28.1-hd590300_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2024.2.2-hbcca054_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/cached-property-1.5.2-hd8ed1ab_1.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/cached_property-1.5.2-pyha770c72_1.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/linux-64/cairo-1.18.0-h3faef2a_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/ceres-solver-2.2.0-h30ec75d_2.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/cffi-1.16.0-py311hb3a22ac_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/linux-64/cfitsio-4.3.1-hbdc6101_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/cftime-1.6.3-py311h1f0f07a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/cfitsio-4.4.0-hbdc6101_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/cftime-1.6.3-py312hc7c0aa3_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-unix_pyh707e725_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/cmarkgfm-0.8.0-py311h459d7ec_3.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/comm-0.2.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/contourpy-1.2.0-py311h9547e67_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/coverage-7.4.3-py311h459d7ec_1.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/cryptography-42.0.5-py311h63ff55d_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/curl-8.5.0-hca28451_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/contourpy-1.2.1-py312h8572e83_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/coverage-7.5.0-py312h9a8786e_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/cytoolz-0.12.3-py311h459d7ec_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/dart-sass-1.58.3-ha770c72_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.2.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/cytoolz-0.12.3-py312h98912ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.14-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/dbus-1.13.6-h5008d03_3.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/linux-64/debugpy-1.8.1-py311hb755f60_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/decorator-5.1.1-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/defusedxml-0.7.1-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/linux-64/deno-1.37.2-h335b0a9_1.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/deno-dom-0.1.35-hd9586b0_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/distlib-0.3.8-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.2.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/docutils-0.20.1-py311h38be061_3.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/draco-1.5.7-h00ab1b0_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.2-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/eigen-3.4.0-h00ab1b0_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/entrypoints-0.4-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/linux-64/esbuild-0.19.2-ha770c72_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.0.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/executing-2.0.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/exiv2-0.28.2-h3cdc00d_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/expat-2.5.0-hcb278e6_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.13.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/fiona-1.9.5-py311hf8e0aa6_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.1.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/expat-2.6.2-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/fiona-1.9.6-py312h66d9856_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/fmt-10.2.1-h00ab1b0_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-inconsolata-3.000-h77eed37_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-source-code-pro-2.038-h77eed37_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_2.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/fontconfig-2.14.2-h14ed4e7_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.49.0-py311h459d7ec_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/fqdn-1.5.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.51.0-py312h98912ed_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/freetype-2.12.1-h267a509_2.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/freexl-2.0.0-h743c826_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.2.0-pyhca7485f_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/future-1.0.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/gdal-3.8.4-py311h8be719e_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/gdal-3.8.5-py312hca78659_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.4-pyha770c72_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/geos-3.12.1-h59595ed_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/geotiff-1.7.1-h6b2125f_15.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/gettext-0.21.1-h27087fc_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/geotiff-1.7.1-h6cf1f90_16.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/gettext-0.22.5-h59595ed_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/gettext-tools-0.22.5-h59595ed_2.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/gflags-2.2.2-he1b5a44_1004.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/linux-64/gh-2.43.1-ha8f183a_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/giflib-5.2.1-h0b41bf4_3.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-2.78.4-hfc55251_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-tools-2.78.4-hfc55251_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/giflib-5.2.2-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-2.80.0-hf2295e7_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-tools-2.80.0-hde27a5a_6.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/glog-0.7.0-hed5481d_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/gmp-6.3.0-h59595ed_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/graphite2-1.3.13-h58526e2_1001.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/griffe-0.41.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/gsl-2.7-he838d99_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/linux-64/gst-plugins-base-1.22.9-h8e1006c_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/gstreamer-1.22.9-h98fc4e7_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/h11-0.14.0-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.1.0-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/linux-64/harfbuzz-8.3.0-h3d44ed6_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.21.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/graphite2-1.3.13-h59595ed_1003.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/gst-plugins-base-1.24.1-hfa15dee_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/gstreamer-1.24.1-h98fc4e7_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/harfbuzz-8.4.0-h3d44ed6_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.24.2-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/hdf4-4.2.15-h2a13503_7.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/hdf5-1.14.3-nompi_h4f84152_100.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.0.0-pyh9f0ad1d_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/httpcore-1.0.4-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/httplib2-0.22.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/httpx-0.27.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.0.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/hdf5-1.14.3-nompi_h4f84152_101.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/icu-73.2-h59595ed_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.5.35-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.1-pyha770c72_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-resources-6.1.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.1-hd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.1.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.7-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/ipykernel-6.29.3-pyhd33586a_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/ipython-8.22.1-pyh707e725_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/isoduration-20.11.0-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.classes-3.3.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jedi-0.19.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jeepney-0.8.0-pyhd8ed1ab_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.4.2-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/json-c-0.17-h7ab15ed_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/json5-0.9.18-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/jsonpointer-2.4-py311h38be061_3.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.21.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2023.12.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-with-format-nongpl-4.21.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/juliaup-1.13.0-he8a937b_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter-lsp-2.2.3-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_client-8.6.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/jupyter_core-5.7.1-py311h38be061_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_events-0.9.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server-2.12.5-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server_terminals-0.5.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab-4.1.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_pygments-0.3.0-pyhd8ed1ab_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_server-2.25.3-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/kealib-1.5.3-h2f55d51_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/keyring-24.3.1-py311h38be061_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.1-h166bdaf_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/linux-64/kiwisolver-1.4.5-py311h9547e67_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/kiwisolver-1.4.5-py312h8572e83_1.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.21.2-h659d440_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/lame-3.100-h166bdaf_1003.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/linux-64/laz-perf-3.4.0-h00ab1b0_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/lcms2-2.16-hb7c19ff_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.40-h41732ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.40-h55db66e_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/lerc-4.0.0-h27087fc_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libabseil-20240116.1-cxx17_h59595ed_2.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libaec-1.1.2-h59595ed_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libabseil-20240116.2-cxx17_h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libaec-1.1.3-h59595ed_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libarchive-3.7.2-h2aa1ff5_1.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-15.0.0-h5001e6d_7_cpu.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-acero-15.0.0-h59595ed_7_cpu.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-dataset-15.0.0-h59595ed_7_cpu.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-15.0.0-hf334d8d_7_cpu.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-sql-15.0.0-h469e5c9_7_cpu.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-gandiva-15.0.0-h3f306ff_7_cpu.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-substrait-15.0.0-h469e5c9_7_cpu.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libblas-3.9.0-21_linux64_openblas.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libboost-headers-1.84.0-ha770c72_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-15.0.2-hefa796f_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-acero-15.0.2-hbabe93e_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-dataset-15.0.2-hbabe93e_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-15.0.2-hc4f8a93_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-sql-15.0.2-he4f5ca8_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-gandiva-15.0.2-hc1954e9_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-substrait-15.0.2-he4f5ca8_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libasprintf-0.22.5-h661eb56_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libasprintf-devel-0.22.5-h661eb56_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libblas-3.9.0-22_linux64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libboost-headers-1.84.0-ha770c72_2.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlicommon-1.1.0-hd590300_1.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlidec-1.1.0-hd590300_1.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlienc-1.1.0-hd590300_1.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libcap-2.69-h0f662aa_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.9.0-21_linux64_openblas.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang-15.0.7-default_hb11cfb5_4.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang13-15.0.7-default_ha2b6cf4_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.9.0-22_linux64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp15-15.0.7-default_h127d8a8_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang13-18.1.4-default_h5d6823c_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libcrc32c-1.1.2-h9c3ff4c_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/linux-64/libcups-2.3.3-h4637d8d_4.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.5.0-hca28451_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.19-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.7.1-hca28451_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.20-hd590300_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20191231-he28a2e2_2.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-hd590300_2.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libevent-2.1.12-hf998b51_1.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.5.0-hcb278e6_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.6.2-h59595ed_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.4.2-h7f98852_5.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/linux-64/libflac-1.4.3-h59595ed_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-13.2.0-h807b86a_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-13.2.0-h77fa898_6.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libgcrypt-1.10.3-hd590300_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libgdal-3.8.4-h9323651_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libgdal-arrow-parquet-3.8.4-h0f68c7b_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-13.2.0-h69a702a_5.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-13.2.0-ha4646dd_5.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libglib-2.78.4-h783c2da_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-13.2.0-h807b86a_5.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-2.21.0-h72bcb37_2.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-storage-2.21.0-hc7a4891_2.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libgpg-error-1.48-h71f35ed_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libgrpc-1.61.1-h42401df_1.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libhwloc-2.9.3-default_h554bfaf_1009.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgdal-3.8.5-hf9625ee_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgettextpo-0.22.5-h59595ed_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgettextpo-devel-0.22.5-h59595ed_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-13.2.0-h69a702a_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-13.2.0-h43f5ff8_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libglib-2.80.0-hf2295e7_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-13.2.0-h77fa898_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-2.23.0-h9be4e54_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-storage-2.23.0-hc7a4891_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgpg-error-1.49-h4f305b6_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgrpc-1.62.2-h15f2491_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.17-hd590300_2.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libjpeg-turbo-3.0.0-hd590300_1.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libkml-1.3.0-h01aab08_1018.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.9.0-21_linux64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.9.0-22_linux64_openblas.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm14-14.0.6-hcd5def8_4.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm15-15.0.7-hb3ce162_4.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm16-16.0.6-hb3ce162_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm18-18.1.4-h2448989_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libnetcdf-4.9.2-nompi_h9612171_113.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.58.0-h47da74e_1.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libnl-3.9.0-hd590300_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libnsl-2.0.1-hd590300_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libnuma-2.0.16-h0b41bf4_1.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libogg-1.3.4-h7f98852_1.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.26-pthreads_h413a1c8_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.27-pthreads_h413a1c8_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libopus-1.3.1-h7f98852_1.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libparquet-15.0.0-h352af49_7_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libparquet-15.0.2-hacf5a1f_6_cpu.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libpng-1.6.43-h2797004_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libpq-16.2-h33b98f1_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libprotobuf-4.25.2-h08a7969_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libpq-16.2-h33b98f1_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libprotobuf-4.25.3-h08a7969_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libre2-11-2023.09.01-h5a48ba9_2.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/librttopo-1.1.0-h8917695_15.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libsecret-0.18.8-h329b89f_2.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/linux-64/libsndfile-1.2.2-hc60ed4a_1.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libsodium-1.0.18-h36c2ea0_1.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/linux-64/libspatialindex-1.9.3-h9c3ff4c_4.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libspatialite-5.1.0-h7bd4643_4.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.45.1-h2797004_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libspatialite-5.1.0-h6f065fc_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.45.3-h2797004_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libssh2-1.11.0-h0841786_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-13.2.0-h7e041cc_5.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libsystemd0-255-h3516f8a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-13.2.0-hc0a3c3a_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libsystemd0-255-h3516f8a_1.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libthrift-0.19.0-hb90f79a_1.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.6.0-ha9c0a0a_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.6.0-h1dd3fc0_3.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libutf8proc-2.8.0-h166bdaf_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.38.1-h0b41bf4_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libvorbis-1.3.7-h9c3ff4c_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libwebp-1.3.2-h658648e_1.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libwebp-base-1.3.2-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libwebp-base-1.4.0-hd590300_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libxcb-1.15-h0b41bf4_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libxcrypt-4.4.36-hd590300_1.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libxkbcommon-1.6.0-hd429924_1.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.12.5-h232c23b_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libxslt-1.1.39-h76b75d6_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libxkbcommon-1.7.0-h662e7e4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.12.6-h232c23b_2.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libzip-1.10.1-h2629f0a_3.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.2.13-hd590300_5.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/llvmlite-0.42.0-py311ha6695c7_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/llvmlite-0.42.0-py312hb06c811_1.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/linux-64/lxml-5.1.0-py311h9691dec_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/lz4-4.3.3-py311h38e4bf4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/lz4-4.3.3-py312h03f37cb_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/lz4-c-1.9.4-hcb278e6_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/lzo-2.10-h516909a_1000.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/lzo-2.10-hd590300_1001.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/markdown-it-py-3.0.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/markupsafe-2.1.5-py311h459d7ec_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-3.8.3-py311h38be061_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-base-3.8.3-py311h54ef318_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/matplotlib-inline-0.1.6-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/mdurl-0.1.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/metis-5.1.0-h59595ed_1007.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/minizip-4.0.4-h0ab5242_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/mistune-3.0.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/mock-5.1.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/more-itertools-10.2.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/mpfr-4.2.1-h9458935_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/mpg123-1.32.4-h59595ed_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/msgpack-python-1.0.7-py311h9547e67_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.11-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/markupsafe-2.1.5-py312h98912ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-3.8.4-py312h7900ff3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-base-3.8.4-py312he5832f3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/minizip-4.0.5-h0ab5242_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/mpg123-1.32.6-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/msgpack-python-1.0.7-py312h8572e83_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/linux-64/mypy-1.8.0-py311h459d7ec_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-common-8.0.33-hf1915f5_6.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-libs-8.0.33-hca2cd23_6.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/nbclient-0.8.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/nbconvert-core-7.16.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/nbformat-5.9.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.4-h59595ed_2.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/nest-asyncio-1.6.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/netcdf4-1.6.5-nompi_py311he8ad708_100.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/nh3-0.2.15-py311h46250e7_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/nitro-2.7.dev8-h59595ed_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.8.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/nose2-0.9.2-py_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/notebook-shim-0.2.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-common-8.3.0-hf1915f5_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-libs-8.3.0-hca2cd23_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.4.20240210-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/netcdf4-1.6.5-nompi_py312h26027e0_100.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.3-pyhd8ed1ab_1.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/nspr-4.35-h27087fc_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/nss-3.98-h1d7d5a4_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/numba-0.59.0-py311h96b013e_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/numba-0.59.1-py312hacefee8_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/numpy-1.26.4-py311h64a7726_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/ocl-icd-2.3.2-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/numpy-1.26.4-py312heda63a1_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/openjpeg-2.5.2-h488ebb8_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.2.1-hd590300_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/orc-1.9.2-h00e871a_2.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/overrides-7.7.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/owslib-0.29.3-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-23.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/pandas-2.1.4-py311h320fe9a_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.0-hd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/pandoc-3.1.11.1-ha770c72_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pandocfilters-1.5.0-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/parso-0.8.3-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.3.0-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/orc-2.0.0-h17fec99_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pandas-2.2.2-py312hfb8ada1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/pcre2-10.42-hcad00b1_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/pdal-2.6.3-h312035a_2.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pep517-0.13.0-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/pexpect-4.9.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pickleshare-0.7.5-py_1003.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/linux-64/pillow-10.2.0-py311ha6c5da5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pcre2-10.43-hcad00b1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pillow-10.3.0-py312hdcec9eb_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/pixman-0.43.2-h59595ed_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pkginfo-1.9.6-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pkgutil-resolve-name-1.3.10-pyhd8ed1ab_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/plotly-5.19.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.4.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/plum-dispatch-2.3.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/ply-3.11-py_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.5.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/ply-3.11-pyhd8ed1ab_2.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/poppler-24.02.0-h590f24d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/poppler-24.04.0-hb6cd0d7_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/postgresql-16.2-h7387d8b_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-3.6.2-pyha770c72_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/proj-9.3.1-h1d62c97_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/prometheus_client-0.20.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/prompt-toolkit-3.0.42-pyha770c72_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/psutil-5.9.8-py311h459d7ec_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/psycopg2-2.9.9-py311h03dec38_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/postgresql-16.2-h82ecc9d_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/proj-9.4.0-h1d62c97_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/psutil-5.9.8-py312h98912ed_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/pthread-stubs-0.4-h36c2ea0_1001.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/linux-64/ptvsd-4.3.2-py311hd4cff14_5.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/ptyprocess-0.7.0-pyhd3deb0d_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/linux-64/pulseaudio-client-16.1-hb77b528_5.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pure_eval-0.2.2-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/linux-64/pyarrow-15.0.0-py311h39c9aba_7_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pulseaudio-client-17.0-hb77b528_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pyarrow-15.0.2-py312h3f82784_6_cpu.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.21-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.3-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/pydantic-core-2.16.3-py311h46250e7_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.17.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/pyogrio-0.7.2-py311hf8e0aa6_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/pyproj-3.6.1-py311hca0b8b9_5.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqt-5.15.9-py311hf0fb5b6_5.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pyqt-stubs-5.15.6.0-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqt5-sip-12.12.2-py311hb755f60_5.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqtwebkit-5.15.9-py311h4c6dc46_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.7.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pydantic-core-2.18.2-py312h4413252_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pyogrio-0.7.2-py312h66d9856_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pyproj-3.6.1-py312hb591178_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqt-5.15.9-py312h949fe66_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqt5-sip-12.12.2-py312h30efb56_5.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.0.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.2.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.11.8-hab00c5b_0_cpython.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.12.3-hab00c5b_0_cpython.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/python-fastjsonschema-2.19.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/python-json-logger-2.0.7-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/python_abi-3.11-4_cp311.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/python_abi-3.12-4_cp312.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.1-py311h459d7ec_1.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/pyzmq-25.1.2-py311h34ded2d_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/qca-2.3.8-h4a6f7a0_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/qgis-3.36.0-py311hbb00b0c_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/qgis-plugin-manager-1.6.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/qhull-2020.2-h4bd325d_2.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/linux-64/qjson-0.9.0-h0c700ba_1009.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/qscintilla2-2.14.1-py311h4c6dc46_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/qt-main-5.15.8-h5810be5_19.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/qtkeychain-0.14.2-hbc31b07_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/qtwebkit-5.212-h60108c6_16.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/quarto-1.4.550-ha770c72_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/quartodoc-0.7.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/qwt-6.2.0-h1a478b3_6.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/rdma-core-50.0-hd3aeb46_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.1-py312h98912ed_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/qt-main-5.15.8-hc9dc06e_21.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/rdma-core-51.0-hd3aeb46_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/re2-2023.09.01-h7f4b329_2.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8228510_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/readme_renderer-42.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/referencing-0.33.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/requests-toolbelt-1.0.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3339-validator-0.1.4-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-2.0.0-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-validator-0.1.1-pyh9f0ad1d_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/rich-13.7.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/rpds-py-0.18.0-py311h46250e7_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/rtree-1.2.0-py311h3bb2b0f_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/ruff-0.3.0-py311h7145743_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/s2n-1.4.5-h06160fa_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/scikit-learn-1.4.1.post1-py311hc009520_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/scipy-1.12.0-py311h64a7726_2.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/secretstorage-3.3.3-py311h38be061_2.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/send2trash-1.8.2-pyh41d4057_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.1.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/shapely-2.0.3-py311h2032efe_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/sip-6.7.12-py311hb755f60_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/rtree-1.2.0-py312hb0aae1a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/s2n-1.4.12-h06160fa_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/scikit-learn-1.4.2-py312h394d371_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/scipy-1.13.0-py312heda63a1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.5.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/shapely-2.0.4-py312h9e6bd2c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/sip-6.7.12-py312h30efb56_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/linux-64/snappy-1.1.10-h9fff704_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/sniffio-1.3.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/snappy-1.2.0-hdb0a2a9_1.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/sortedcontainers-2.4.0-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/soupsieve-2.5-pyhd8ed1ab_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/sphobjinv-2.3.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/sqlite-3.45.1-h2c6b66d_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/stack_data-0.6.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/suitesparse-5.10.1-h5a4f163_3.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/tabulate-0.9.0-pyhd8ed1ab_1.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/linux-64/tbb-2021.11.0-h00ab1b0_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/spdlog-1.13.0-hd2e6256_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/sqlite-3.45.3-h2c6b66d_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/tenacity-8.2.3-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/terminado-0.18.0-pyh0d859eb_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/tiledb-2.20.1-h6997b71_2.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/tinycss2-1.2.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.5.0-pyhc1e730c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/tiledb-2.22.0-h27f064a_3.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h4845f30_101.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/tornado-6.4-py311h459d7ec_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/traitlets-5.14.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.2.23-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/twine-5.0.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/types-python-dateutil-2.8.19.20240106-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.10.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/tornado-6.4-py312h98912ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.4.10-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240417-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.11.0-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.11.0-pyha770c72_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/typing_utils-0.1.0-pyhd8ed1ab_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/linux-64/tzcode-2024a-h3f72095_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/ucx-1.15.0-h75e419f_3.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/ukkonen-1.0.1-py311h9547e67_4.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/uri-template-1.3.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/ucx-1.15.0-ha691c75_8.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/uriparser-0.9.7-h59595ed_1.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.25.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/watchdog-4.0.0-py311h38be061_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/wcwidth-0.2.13-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/webcolors-1.13-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/webencodings-0.5.1-pyhd8ed1ab_2.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/websocket-client-1.7.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/wrapt-1.16.0-py311h459d7ec_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/wrapt-1.16.0-py312h98912ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-0.4.0-hd590300_1.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-image-0.4.0-h8ee46fc_1.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-keysyms-0.4.0-h8ee46fc_1.conda
@@ -477,7 +315,7 @@ environments:
- conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-kbproto-1.0.7-h7f98852_1002.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libice-1.1.1-hd590300_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libsm-1.2.4-h7391055_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libx11-1.8.7-h8ee46fc_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libx11-1.8.9-h8ee46fc_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxau-1.0.11-hd590300_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxdmcp-1.1.3-h7f98852_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxext-1.3.4-h0b41bf4_2.conda
@@ -486,1387 +324,6123 @@ environments:
- conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-xextproto-7.3.0-h0b41bf4_1003.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-xf86vidmodeproto-2.3.1-h7f98852_1002.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-xproto-7.0.31-h7f98852_1007.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/xugrid-0.9.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2023.10.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xugrid-0.10.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2024.4.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/xz-5.2.6-h166bdaf_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/linux-64/yaml-0.2.5-h7f98852_2.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/linux-64/zeromq-4.3.5-h59595ed_1.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/zict-3.0.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/zlib-1.2.13-hd590300_5.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.5-hfc55251_0.conda
osx-64:
- conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/anyio-4.3.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/appnope-0.1.4-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/argon2-cffi-23.1.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/argon2-cffi-bindings-21.2.0-py311h2725bcf_4.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/arrow-1.3.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/asttokens-2.4.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/async-lru-2.0.4-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/attrs-23.2.0-pyh71513ae_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-auth-0.7.16-h79cb451_6.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-cal-0.6.10-h7beb4c2_1.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-common-0.9.13-h10d778d_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-compression-0.2.18-hf5538d0_1.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-event-stream-0.4.2-hb970d5a_4.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-http-0.8.1-h45f72bc_5.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-io-0.14.5-h59ded20_1.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-mqtt-0.10.2-ha7d5480_4.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-s3-0.5.2-hb71b441_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-sdkutils-0.1.15-hf5538d0_1.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-checksums-0.1.18-hf5538d0_1.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-crt-cpp-0.26.2-h56a5195_7.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-sdk-cpp-1.11.267-h4da54b2_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-auth-0.7.18-hb47d15a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-cal-0.6.11-hbce485b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-common-0.9.15-h10d778d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-compression-0.2.18-h53e3db5_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-event-stream-0.4.2-he461af8_8.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-http-0.8.1-h0afc28a_10.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-io-0.14.7-h6254544_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-mqtt-0.10.4-hd66502f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-s3-0.5.7-h5d4520e_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-sdkutils-0.1.15-h53e3db5_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-checksums-0.1.18-h53e3db5_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-crt-cpp-0.26.8-ha933895_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-sdk-cpp-1.11.267-h8dd24e3_7.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/azure-core-cpp-1.11.1-hbb1e571_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-identity-cpp-1.6.0-h9a80fee_1.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/azure-storage-blobs-cpp-12.10.0-h7728843_1.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/azure-storage-common-cpp-12.5.0-h0e82ce4_4.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.14.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/beartype-0.17.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/beautifulsoup4-4.12.3-pyha770c72_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/black-24.2.0-py311h6eed73b_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/bleach-6.1.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/blosc-1.21.5-heccf04b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/black-24.4.2-py312hb401068_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/blosc-1.21.5-hafa3907_1.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.3.4-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.2-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-1.1.0-h0dc2134_1.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-bin-1.1.0-h0dc2134_1.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-python-1.1.0-py311hdf8f085_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/build-0.7.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-python-1.1.0-py312heafc425_1.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/bzip2-1.0.8-h10d778d_5.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.27.0-h10d778d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.28.1-h10d778d_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/ca-certificates-2024.2.2-h8857fd0_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/cached-property-1.5.2-hd8ed1ab_1.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/cached_property-1.5.2-pyha770c72_1.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/osx-64/cairo-1.18.0-h99e66fa_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/ceres-solver-2.2.0-haa0d064_2.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/cffi-1.16.0-py311hc0b63fd_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-64/cfitsio-4.3.1-h60fb419_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/cftime-1.6.3-py311hc9a392d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/cfitsio-4.4.0-h60fb419_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/cftime-1.6.3-py312h3f2338b_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-unix_pyh707e725_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/cmarkgfm-0.8.0-py311h2725bcf_3.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/comm-0.2.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/contourpy-1.2.0-py311h7bea37d_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/coverage-7.4.3-py311he705e18_1.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/curl-8.5.0-h726d00d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/contourpy-1.2.1-py312h9230928_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/coverage-7.5.0-py312h5fa3f64_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/cytoolz-0.12.3-py311he705e18_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/dart-sass-1.58.3-h694c41f_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.2.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.2.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/debugpy-1.8.1-py311hdd0406b_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/decorator-5.1.1-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/defusedxml-0.7.1-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-64/deno-1.37.2-h51b076b_1.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/deno-dom-0.1.35-h08cba0f_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/distlib-0.3.8-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.2.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/docutils-0.20.1-py311h6eed73b_3.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/draco-1.5.7-h7728843_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/cytoolz-0.12.3-py312h41838bb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.14-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.2-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/eigen-3.4.0-h1c7c39f_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/entrypoints-0.4-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-64/esbuild-0.19.2-h694c41f_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.0.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/executing-2.0.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/exiv2-0.28.2-h239cba9_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/expat-2.5.0-hf0c8a7f_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.13.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/fiona-1.9.5-py311hd2ff552_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.1.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/expat-2.6.2-h73e2aa4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/fiona-1.9.6-py312hc18349f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/fmt-10.2.1-h7728843_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-inconsolata-3.000-h77eed37_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-source-code-pro-2.038-h77eed37_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_2.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/fontconfig-2.14.2-h5bb23bf_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-64/fonttools-4.49.0-py311he705e18_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/fqdn-1.5.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/fonttools-4.51.0-py312h41838bb_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/freetype-2.12.1-h60636b9_2.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/freexl-2.0.0-h3ec172f_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.2.0-pyhca7485f_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/future-1.0.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/gdal-3.8.4-py311haaa0e4f_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/gdal-3.8.5-py312ha261e76_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.4-pyha770c72_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/geos-3.12.1-h93d8f39_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/geotiff-1.7.1-h509af15_15.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/gettext-0.21.1-h8a4c099_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/geotiff-1.7.1-h7c2ff5c_16.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/gflags-2.2.2-hb1e8313_1004.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-64/gh-2.43.1-h990441c_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/giflib-5.2.1-hb7f2c08_3.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/glib-2.78.4-h2d185b6_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/glib-tools-2.78.4-h2d185b6_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/giflib-5.2.2-h10d778d_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/glog-0.7.0-h31b1b29_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/gmp-6.3.0-h93d8f39_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/griffe-0.41.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/gsl-2.7-h93259b0_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-64/gst-plugins-base-1.22.9-h3fb38fc_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/gstreamer-1.22.9-hf63bbb8_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/h11-0.14.0-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.1.0-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.21.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.24.2-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/hdf4-4.2.15-h8138101_7.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/hdf5-1.14.3-nompi_h691f4bf_100.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.0.0-pyh9f0ad1d_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/httpcore-1.0.4-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/httplib2-0.22.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/httpx-0.27.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.0.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/hdf5-1.14.3-nompi_hb512a33_101.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/icu-73.2-hf5e326d_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.5.35-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.1-pyha770c72_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-resources-6.1.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.1-hd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.1.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.7-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/ipykernel-6.29.3-pyh3cd1d5f_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/ipython-8.22.1-pyh707e725_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/isoduration-20.11.0-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.classes-3.3.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jedi-0.19.1-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.4.2-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/json-c-0.17-h8e11ae5_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/json5-0.9.18-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/jsonpointer-2.4-py311h6eed73b_3.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.21.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2023.12.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-with-format-nongpl-4.21.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/juliaup-1.13.0-hf4330d5_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter-lsp-2.2.3-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_client-8.6.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/jupyter_core-5.7.1-py311h6eed73b_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_events-0.9.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server-2.12.5-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server_terminals-0.5.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab-4.1.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_pygments-0.3.0-pyhd8ed1ab_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_server-2.25.3-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/kealib-1.5.3-h5f07ac3_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/keyring-24.3.1-py311h6eed73b_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/khronos-opencl-icd-loader-2023.04.17-hb7f2c08_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/kiwisolver-1.4.5-py311h5fe6e05_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/kiwisolver-1.4.5-py312h49ebfd2_1.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/krb5-1.21.2-hb884880_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/laz-perf-3.4.0-h1c7c39f_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/lcms2-2.16-ha2f27b4_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/lerc-4.0.0-hb486fe8_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libabseil-20240116.1-cxx17_hc1bcbd7_2.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libaec-1.1.2-he965462_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libabseil-20240116.2-cxx17_hc1bcbd7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libaec-1.1.3-h73e2aa4_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/libarchive-3.7.2-hd35d340_1.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-15.0.0-h331b9b1_7_cpu.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-acero-15.0.0-hd427752_7_cpu.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-dataset-15.0.0-hd427752_7_cpu.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-15.0.0-hbe5bddb_7_cpu.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-sql-15.0.0-hb30bb1e_7_cpu.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-gandiva-15.0.0-h258d777_7_cpu.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-substrait-15.0.0-hb30bb1e_7_cpu.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libblas-3.9.0-21_osx64_openblas.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libboost-headers-1.84.0-h694c41f_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-15.0.2-hfba3c4c_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-acero-15.0.2-ha0df490_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-dataset-15.0.2-ha0df490_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-15.0.2-h41520de_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-sql-15.0.2-hb2e0ddf_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-gandiva-15.0.2-h81ca85a_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-substrait-15.0.2-hb2e0ddf_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libblas-3.9.0-22_osx64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libboost-headers-1.84.0-h694c41f_2.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlicommon-1.1.0-h0dc2134_1.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlidec-1.1.0-h0dc2134_1.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlienc-1.1.0-h0dc2134_1.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libcblas-3.9.0-21_osx64_openblas.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libclang-15.0.7-default_h6b1ee41_4.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libclang13-15.0.7-default_h89cd682_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libcblas-3.9.0-22_osx64_openblas.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/libcrc32c-1.1.2-he49afe7_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.5.0-h726d00d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.7.1-h726d00d_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-16.0.6-hd57cbcb_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libdeflate-1.19-ha4e1b8e_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libdeflate-1.20-h49d49c5_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/libedit-3.1.20191231-h0678c8f_2.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/osx-64/libev-4.33-h10d778d_2.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/libevent-2.1.12-ha90c15b_1.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libexpat-2.5.0-hf0c8a7f_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libexpat-2.6.2-h73e2aa4_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/libffi-3.4.2-h0d85af4_5.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libgdal-3.8.4-h46636ed_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libgdal-arrow-parquet-3.8.4-hfe2b1a0_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libgdal-3.8.5-h7db9259_2.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/libgfortran-5.0.0-13_2_0_h97931a8_3.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/libgfortran5-13.2.0-h2873a65_3.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libglib-2.78.4-hab64008_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libgoogle-cloud-2.21.0-h21dabe9_2.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libgoogle-cloud-storage-2.21.0-ha67e85c_2.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libgrpc-1.61.1-h32bdf18_1.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libhwloc-2.9.3-default_h24e0189_1009.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libglib-2.80.0-h81c1438_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libgoogle-cloud-2.23.0-h651e89d_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libgoogle-cloud-storage-2.23.0-ha67e85c_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libgrpc-1.62.2-h384b2fc_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/libiconv-1.17-hd75f5a5_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libintl-0.22.5-h5ff76d1_2.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/libjpeg-turbo-3.0.0-h0dc2134_1.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/libkml-1.3.0-hab3ca0e_1018.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/liblapack-3.9.0-21_osx64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/liblapack-3.9.0-22_osx64_openblas.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm14-14.0.6-hc8e404f_4.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm15-15.0.7-hbedff68_4.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm16-16.0.6-hbedff68_3.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/libnetcdf-4.9.2-nompi_h7760872_113.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/libnghttp2-1.58.0-h64cf6d3_1.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libogg-1.3.4-h35c211d_1.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libopenblas-0.3.26-openmp_hfef2a42_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libopus-1.3.1-hc929b4f_1.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libparquet-15.0.0-h089a9f7_7_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libopenblas-0.3.27-openmp_hfef2a42_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libparquet-15.0.2-h7cd3cfe_6_cpu.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/libpng-1.6.43-h92b6c6a_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libpq-16.2-ha925e61_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libprotobuf-4.25.2-h4e4d658_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libpq-16.2-ha925e61_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libprotobuf-4.25.3-h4e4d658_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/libre2-11-2023.09.01-h81f5012_2.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/librttopo-1.1.0-hf05f67e_15.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libsodium-1.0.18-hbcb3906_1.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/osx-64/libspatialindex-1.9.3-he49afe7_4.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libspatialite-5.1.0-hebe6af1_4.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libsqlite-3.45.1-h92b6c6a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libspatialite-5.1.0-h487bbac_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libsqlite-3.45.3-h92b6c6a_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/libssh2-1.11.0-hd019ec5_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libtasn1-4.19.0-hb7f2c08_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/osx-64/libthrift-0.19.0-h064b379_1.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libtiff-4.6.0-h684deea_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libtiff-4.6.0-h129831d_3.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/libutf8proc-2.8.0-hb7f2c08_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libvorbis-1.3.7-h046ec9c_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libwebp-1.3.2-h44782d1_1.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libwebp-base-1.3.2-h0dc2134_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libwebp-base-1.4.0-h10d778d_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/libxcb-1.15-hb7f2c08_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libxml2-2.12.5-hc0ae0f7_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/libxslt-1.1.39-h03b04e6_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libxml2-2.12.6-hc0ae0f7_2.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/libzip-1.10.1-hc158999_3.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/libzlib-1.2.13-h8a1eda9_5.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-openmp-17.0.6-hb6ac08f_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/llvmlite-0.42.0-py311hb5c2e0a_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-openmp-18.1.4-h2c61cee_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/llvmlite-0.42.0-py312h534208b_1.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-64/lxml-5.1.0-py311h033124e_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/lz4-4.3.3-py311hdfabcfc_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/lz4-4.3.3-py312h904eaf1_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/lz4-c-1.9.4-hf0c8a7f_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/lzo-2.10-haf1e3a3_1000.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/lzo-2.10-h10d778d_1001.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/markdown-it-py-3.0.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/markupsafe-2.1.5-py311he705e18_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/matplotlib-3.8.3-py311h6eed73b_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/matplotlib-base-3.8.3-py311h6ff1f5f_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/matplotlib-inline-0.1.6-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/mdurl-0.1.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/metis-5.1.0-he965462_1007.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/minizip-4.0.4-h37d7099_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/mistune-3.0.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/mock-5.1.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/more-itertools-10.2.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/mpfr-4.2.1-h0c69b56_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/msgpack-python-1.0.7-py311h7bea37d_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.11-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/markupsafe-2.1.5-py312h41838bb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/matplotlib-3.8.4-py312hb401068_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/matplotlib-base-3.8.4-py312h1fe5000_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/minizip-4.0.5-h37d7099_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/msgpack-python-1.0.7-py312hbf0bb39_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-64/mypy-1.8.0-py311he705e18_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/mysql-common-8.0.33-h1d20c9b_6.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/mysql-libs-8.0.33-hed35180_6.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/nbclient-0.8.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/nbconvert-core-7.16.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/nbformat-5.9.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.4-h93d8f39_2.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/nest-asyncio-1.6.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/netcdf4-1.6.5-nompi_py311hd2be13f_100.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/nh3-0.2.15-py311h5e0f0e4_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/nitro-2.7.dev8-he965462_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.8.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/nose2-0.9.2-py_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/notebook-shim-0.2.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.4.20240210-h73e2aa4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/netcdf4-1.6.5-nompi_py312hd4beaa4_100.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.3-pyhd8ed1ab_1.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/nspr-4.35-hea0b92c_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/nss-3.98-ha05da47_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/numba-0.59.0-py311h97119f7_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/numba-0.59.1-py312h04e34b5_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/numpy-1.26.4-py311hc43a94b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/numpy-1.26.4-py312he3a82b2_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/openjpeg-2.5.2-h7310d3a_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.2.1-hd75f5a5_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/orc-1.9.2-h3758fe2_2.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/overrides-7.7.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/owslib-0.29.3-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-23.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/pandas-2.1.4-py311h1eadf79_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.0-hd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/pandoc-3.1.11.1-h694c41f_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pandocfilters-1.5.0-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/parso-0.8.3-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.3.0-hd75f5a5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/orc-2.0.0-hf146577_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pandas-2.2.2-py312h83c8a23_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/pcre2-10.42-h0ad2156_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/pdal-2.6.3-hd2646b2_2.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pep517-0.13.0-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/pexpect-4.9.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pickleshare-0.7.5-py_1003.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-64/pillow-10.2.0-py311hea5c87a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pcre2-10.43-h0ad2156_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pillow-10.3.0-py312h0c923fa_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/pixman-0.43.4-h73e2aa4_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pkginfo-1.9.6-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pkgutil-resolve-name-1.3.10-pyhd8ed1ab_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/plotly-5.19.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.4.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/plum-dispatch-2.3.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/ply-3.11-py_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.5.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/poppler-24.02.0-h0c752f9_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/poppler-24.04.0-h0face88_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/postgresql-16.2-hbd19fd8_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-3.6.2-pyha770c72_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/proj-9.3.1-h81faed2_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/prometheus_client-0.20.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/prompt-toolkit-3.0.42-pyha770c72_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/psutil-5.9.8-py311he705e18_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/psycopg2-2.9.9-py311h187f0af_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/postgresql-16.2-h06f2bd8_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/proj-9.4.0-h23b96cc_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/psutil-5.9.8-py312h41838bb_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/pthread-stubs-0.4-hc929b4f_1001.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-64/ptvsd-4.3.2-py311h5547dcb_5.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/ptyprocess-0.7.0-pyhd3deb0d_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/pure_eval-0.2.2-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-64/pyarrow-15.0.0-py311h9425ff2_7_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pyarrow-15.0.2-py312h3db2695_6_cpu.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.21-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.3-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/pydantic-core-2.16.3-py311hd64b9fd_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.17.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/pyobjc-core-10.1-py311h9b70068_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/pyobjc-framework-cocoa-10.1-py311h9b70068_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/pyogrio-0.7.2-py311h809632c_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/pyproj-3.6.1-py311hb91e5a3_5.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/pyqt-5.15.9-py311h5b1a2bc_5.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pyqt-stubs-5.15.6.0-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-64/pyqt5-sip-12.12.2-py311h46b81f0_5.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/pyqtwebkit-5.15.9-py311hdffe31b_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.7.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pydantic-core-2.18.2-py312h5b0d100_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pyogrio-0.7.2-py312h3aaa50d_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pyproj-3.6.1-py312h91094b2_6.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.0.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.2.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/python-3.11.8-h9f0c242_0_cpython.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/python-3.12.3-h1411813_0_cpython.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/python-fastjsonschema-2.19.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/python-json-logger-2.0.7-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/python_abi-3.11-4_cp311.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/python_abi-3.12-4_cp312.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/pyyaml-6.0.1-py311h2725bcf_1.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/pyzmq-25.1.2-py311h889d6d6_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/qca-2.3.8-h3036dd7_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/qgis-3.36.0-py311h50b348b_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/qgis-plugin-manager-1.6.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/qhull-2020.2-h940c156_2.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-64/qjson-0.9.0-hed3eaa1_1009.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/qscintilla2-2.14.1-py311hf9676c4_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/qt-main-5.15.8-h4385fff_19.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/qtkeychain-0.14.2-had6348c_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/qtwebkit-5.212-h3b777d0_16.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/quarto-1.4.550-h694c41f_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/quartodoc-0.7.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/qwt-6.2.0-hed3eaa1_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pyyaml-6.0.1-py312h104f124_1.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/re2-2023.09.01-hb168e87_2.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/readline-8.2-h9e318b2_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/readme_renderer-42.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/referencing-0.33.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/requests-toolbelt-1.0.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3339-validator-0.1.4-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-2.0.0-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-validator-0.1.1-pyh9f0ad1d_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/rich-13.7.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/rpds-py-0.18.0-py311hd64b9fd_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/rtree-1.2.0-py311hbc1f44b_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/ruff-0.3.0-py311hfff7943_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/scikit-learn-1.4.1.post1-py311he2b4599_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/scipy-1.12.0-py311h86d0cd9_2.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/send2trash-1.8.2-pyhd1c38e8_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.1.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/shapely-2.0.3-py311h4c12f3d_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/sip-6.7.12-py311hd39e593_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/rtree-1.2.0-py312h8974cf7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/scikit-learn-1.4.2-py312h7167a34_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/scipy-1.13.0-py312h8adb940_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.5.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/shapely-2.0.4-py312h8fb43f9_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-64/snappy-1.1.10-h225ccf5_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/sniffio-1.3.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/snappy-1.2.0-h6dc393e_1.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/sortedcontainers-2.4.0-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/soupsieve-2.5-pyhd8ed1ab_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/sphobjinv-2.3.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/sqlite-3.45.1-h7461747_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/stack_data-0.6.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/suitesparse-5.10.1-h4bf45ed_3.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/tabulate-0.9.0-pyhd8ed1ab_1.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-64/tbb-2021.11.0-h7728843_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/spdlog-1.13.0-h1a4aec9_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/sqlite-3.45.3-h7461747_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/tenacity-8.2.3-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/terminado-0.18.0-pyh31c8845_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/tiledb-2.20.1-h6295ede_2.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/tinycss2-1.2.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.5.0-pyhc1e730c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/tiledb-2.22.0-hf5f2543_3.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-h1abcd95_1.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/tornado-6.4-py311he705e18_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/traitlets-5.14.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.2.23-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/twine-5.0.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/types-python-dateutil-2.8.19.20240106-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.10.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/tornado-6.4-py312h41838bb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.4.10-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240417-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.11.0-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.11.0-pyha770c72_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/typing_utils-0.1.0-pyhd8ed1ab_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/osx-64/tzcode-2024a-h10d778d_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/ukkonen-1.0.1-py311h5fe6e05_4.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/uri-template-1.3.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/uriparser-0.9.7-he965462_1.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.25.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/watchdog-4.0.0-py311he4e59c2_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/wcwidth-0.2.13-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/webcolors-1.13-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/webencodings-0.5.1-pyhd8ed1ab_2.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/websocket-client-1.7.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-64/wrapt-1.16.0-py311he705e18_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/wrapt-1.16.0-py312h41838bb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/xerces-c-3.2.5-hbbe9ea5_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/xorg-libxau-1.0.11-h0dc2134_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/xorg-libxdmcp-1.1.3-h35c211d_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/xugrid-0.9.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2023.10.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xugrid-0.10.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2024.4.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/xz-5.2.6-h775f41a_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/osx-64/yaml-0.2.5-h0d85af4_2.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-64/zeromq-4.3.5-h93d8f39_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/zict-3.0.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/zlib-1.2.13-h8a1eda9_5.conda
- conda: https://conda.anaconda.org/conda-forge/osx-64/zstd-1.5.5-h829000d_0.conda
osx-arm64:
- conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/anyio-4.3.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/appnope-0.1.4-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/argon2-cffi-23.1.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/argon2-cffi-bindings-21.2.0-py312h02f2b3b_4.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/arrow-1.3.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/asttokens-2.4.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/async-lru-2.0.4-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/attrs-23.2.0-pyh71513ae_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-auth-0.7.16-h51b92d1_6.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-cal-0.6.10-hf888d4c_1.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-common-0.9.13-h93a5062_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-compression-0.2.18-hf888d4c_1.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-event-stream-0.4.2-h1b95c93_4.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-http-0.8.1-heb97226_5.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-io-0.14.5-hb51f26e_1.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-mqtt-0.10.2-hd37591b_4.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-s3-0.5.2-h09f5dbc_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-sdkutils-0.1.15-hf888d4c_1.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-checksums-0.1.18-hf888d4c_1.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-crt-cpp-0.26.2-h06549c9_7.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-sdk-cpp-1.11.267-h73c0887_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-auth-0.7.18-h382b9c6_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-cal-0.6.11-hd34e5fa_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-common-0.9.15-h93a5062_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-compression-0.2.18-hd34e5fa_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-event-stream-0.4.2-h247c08a_8.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-http-0.8.1-hf9e830b_10.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-io-0.14.7-h33d81b3_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-mqtt-0.10.4-h5f4abda_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-s3-0.5.7-h7644b7e_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-sdkutils-0.1.15-hd34e5fa_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-checksums-0.1.18-hd34e5fa_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-crt-cpp-0.26.8-h7541583_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-sdk-cpp-1.11.267-h18943f6_7.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-core-cpp-1.11.1-he231e37_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-identity-cpp-1.6.0-hd1853d3_1.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-storage-blobs-cpp-12.10.0-h2ffa867_1.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-storage-common-cpp-12.5.0-h09a5875_4.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.14.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/beartype-0.17.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/beautifulsoup4-4.12.3-pyha770c72_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/black-24.2.0-py312h81bd7bf_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/bleach-6.1.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/blosc-1.21.5-hc338f07_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/black-24.4.2-py312h81bd7bf_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/blosc-1.21.5-h9c252e8_1.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.3.4-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.2-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-1.1.0-hb547adb_1.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-bin-1.1.0-hb547adb_1.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-python-1.1.0-py312h9f69965_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/build-0.7.0-pyhd8ed1ab_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-h93a5062_5.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.27.0-h93a5062_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.28.1-h93a5062_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/ca-certificates-2024.2.2-hf0a4a13_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/cached-property-1.5.2-hd8ed1ab_1.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/cached_property-1.5.2-pyha770c72_1.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/cairo-1.18.0-hd1e100b_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ceres-solver-2.2.0-h036b7f2_2.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cffi-1.16.0-py312h8e38eb3_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cfitsio-4.3.1-h808cd33_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cfitsio-4.4.0-h808cd33_1.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/cftime-1.6.3-py312hf635c46_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-unix_pyh707e725_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cmarkgfm-0.8.0-py312h02f2b3b_3.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/comm-0.2.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/contourpy-1.2.0-py312h76e736e_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/coverage-7.4.3-py312he37b823_1.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/curl-8.5.0-h2d989ff_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/contourpy-1.2.1-py312h0fef576_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/coverage-7.5.0-py312h4a164c9_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/cytoolz-0.12.3-py312he37b823_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/dart-sass-1.58.3-hce30654_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.2.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.2.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/debugpy-1.8.1-py312h20a0b95_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/decorator-5.1.1-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/defusedxml-0.7.1-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/deno-1.37.2-hce30654_1.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/deno-dom-0.1.35-hb9e0d3b_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/distlib-0.3.8-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.2.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/docutils-0.20.1-py312h81bd7bf_3.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/draco-1.5.7-h2ffa867_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.14-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.2-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/eigen-3.4.0-h1995070_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/entrypoints-0.4-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/esbuild-0.19.2-hce30654_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.0.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/executing-2.0.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/exiv2-0.28.2-h193c0af_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/expat-2.5.0-hb7217d7_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.13.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fiona-1.9.5-py312hd158ed5_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.1.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/expat-2.6.2-hebf3989_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fiona-1.9.6-py312hd158ed5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fmt-10.2.1-h2ffa867_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-inconsolata-3.000-h77eed37_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-source-code-pro-2.038-h77eed37_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_2.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/fontconfig-2.14.2-h82840c6_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fonttools-4.49.0-py312he37b823_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/fqdn-1.5.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fonttools-4.51.0-py312he37b823_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/freetype-2.12.1-hadb7bae_2.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/freexl-2.0.0-hfbad9fb_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.2.0-pyhca7485f_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/future-1.0.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gdal-3.8.4-py312h56161e1_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gdal-3.8.5-py312hb48d578_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.4-pyha770c72_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/geos-3.12.1-h965bd2d_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/geotiff-1.7.1-h7bcba05_15.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gettext-0.21.1-h0186832_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/geotiff-1.7.1-h6e650f3_16.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/gflags-2.2.2-hc88da5d_1004.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gh-2.43.1-h75b854d_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/giflib-5.2.1-h1a8c8d9_3.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/glib-2.78.4-h1059232_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/glib-tools-2.78.4-h1059232_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/giflib-5.2.2-h93a5062_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/glog-0.7.0-hc6770e3_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gmp-6.3.0-h965bd2d_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/griffe-0.41.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gsl-2.7-h6e638da_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gst-plugins-base-1.22.9-h09b4b5e_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gstreamer-1.22.9-h551c6ff_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/h11-0.14.0-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.1.0-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.21.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.24.2-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/hdf4-4.2.15-h2ee6834_7.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/hdf5-1.14.3-nompi_h5bb55e9_100.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.0.0-pyh9f0ad1d_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/httpcore-1.0.4-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/httplib2-0.22.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/httpx-0.27.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.0.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/hdf5-1.14.3-nompi_h751145d_101.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-73.2-hc8870d7_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.5.35-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.1-pyha770c72_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-resources-6.1.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.1-hd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.1.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.7-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/ipykernel-6.29.3-pyh3cd1d5f_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/ipython-8.22.1-pyh707e725_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/isoduration-20.11.0-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.classes-3.3.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jedi-0.19.1-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.4.2-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/json-c-0.17-h40ed0f5_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/json5-0.9.18-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/jsonpointer-2.4-py312h81bd7bf_3.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.21.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2023.12.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-with-format-nongpl-4.21.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/juliaup-1.13.0-h67a62a2_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter-lsp-2.2.3-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_client-8.6.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/jupyter_core-5.7.1-py312h81bd7bf_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_events-0.9.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server-2.12.5-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server_terminals-0.5.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab-4.1.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_pygments-0.3.0-pyhd8ed1ab_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_server-2.25.3-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/kealib-1.5.3-h210d843_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/keyring-24.3.1-py312h81bd7bf_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/khronos-opencl-icd-loader-2023.04.17-h1a8c8d9_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/kiwisolver-1.4.5-py312h389731b_1.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.21.2-h92f50d5_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/laz-perf-3.4.0-h1995070_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/lcms2-2.16-ha0e7c42_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/lerc-4.0.0-h9a09cb3_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libabseil-20240116.1-cxx17_hebf3989_2.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libaec-1.1.2-h13dd4ca_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libabseil-20240116.2-cxx17_hebf3989_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libaec-1.1.3-hebf3989_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarchive-3.7.2-hcacb583_1.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-15.0.0-hd462d9b_7_cpu.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-acero-15.0.0-hebf3989_7_cpu.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-dataset-15.0.0-hebf3989_7_cpu.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-15.0.0-hcdfa465_7_cpu.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-sql-15.0.0-h346e8b1_7_cpu.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-gandiva-15.0.0-h843df16_7_cpu.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-substrait-15.0.0-he2b277e_7_cpu.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libblas-3.9.0-21_osxarm64_openblas.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libboost-headers-1.84.0-hce30654_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-15.0.2-hea125af_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-acero-15.0.2-h3f3aa29_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-dataset-15.0.2-h3f3aa29_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-15.0.2-h224147a_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-sql-15.0.2-hb630850_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-gandiva-15.0.2-h3b9069c_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-substrait-15.0.2-hd92e347_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libblas-3.9.0-22_osxarm64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libboost-headers-1.84.0-hce30654_2.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlicommon-1.1.0-hb547adb_1.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlidec-1.1.0-hb547adb_1.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlienc-1.1.0-hb547adb_1.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcblas-3.9.0-21_osxarm64_openblas.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang-15.0.7-default_hd209bcb_4.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang13-15.0.7-default_ha49e599_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcblas-3.9.0-22_osxarm64_openblas.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcrc32c-1.1.2-hbdafb3b_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.5.0-h2d989ff_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.7.1-h2d989ff_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-16.0.6-h4653b0c_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libdeflate-1.19-hb547adb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libdeflate-1.20-h93a5062_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libedit-3.1.20191231-hc8eb9b7_2.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libev-4.33-h93a5062_2.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libevent-2.1.12-h2757513_1.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.5.0-hb7217d7_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.6.2-hebf3989_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libffi-3.4.2-h3422bc3_5.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgdal-3.8.4-ha86f356_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgdal-arrow-parquet-3.8.4-h88be5e4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgdal-3.8.5-h2f7ae65_2.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgfortran-5.0.0-13_2_0_hd922786_3.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgfortran5-13.2.0-hf226fd6_3.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libglib-2.78.4-h1635a5e_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgoogle-cloud-2.21.0-h23ec1f3_2.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgoogle-cloud-storage-2.21.0-h8a76758_2.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgrpc-1.61.1-h9c2137f_1.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libhwloc-2.9.3-default_h4394839_1009.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libglib-2.80.0-hfc324ee_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgoogle-cloud-2.23.0-hbebe991_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgoogle-cloud-storage-2.23.0-h8a76758_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgrpc-1.62.2-h9c18a4f_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libiconv-1.17-h0d3ecfb_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libintl-0.22.5-h8fbad5d_2.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libjpeg-turbo-3.0.0-hb547adb_1.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libkml-1.3.0-h1eb4d9f_1018.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblapack-3.9.0-21_osxarm64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblapack-3.9.0-22_osxarm64_openblas.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm14-14.0.6-hd1a9a77_4.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm15-15.0.7-h2621b3d_4.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm16-16.0.6-haab561b_3.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnetcdf-4.9.2-nompi_h291a7c2_113.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnghttp2-1.58.0-ha4dd798_1.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libogg-1.3.4-h27ca646_1.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libopenblas-0.3.26-openmp_h6c19121_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libopus-1.3.1-h27ca646_1.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libparquet-15.0.0-h278d484_7_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libopenblas-0.3.27-openmp_h6c19121_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libparquet-15.0.2-h5304c63_6_cpu.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libpng-1.6.43-h091b4b1_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libpq-16.2-h0f8b458_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libprotobuf-4.25.2-hbfab5d5_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libpq-16.2-h0f8b458_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libprotobuf-4.25.3-hbfab5d5_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libre2-11-2023.09.01-h7b2c953_2.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/librttopo-1.1.0-hc8f776e_15.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsodium-1.0.18-h27ca646_1.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libspatialindex-1.9.3-hbdafb3b_4.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libspatialite-5.1.0-h69abc6b_4.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.45.1-h091b4b1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libspatialite-5.1.0-h77c30ab_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.45.3-h091b4b1_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libssh2-1.11.0-h7a5bd25_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libtasn1-4.19.0-h1a8c8d9_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libthrift-0.19.0-h026a170_1.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libtiff-4.6.0-ha8a6c65_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libtiff-4.6.0-h07db509_3.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libutf8proc-2.8.0-h1a8c8d9_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libvorbis-1.3.7-h9f76cd9_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libwebp-1.3.2-hf30222e_1.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libwebp-base-1.3.2-hb547adb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libwebp-base-1.4.0-h93a5062_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxcb-1.15-hf346824_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-2.12.5-h0d0cfa8_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxslt-1.1.39-h223e5b9_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-2.12.6-h0d0cfa8_2.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzip-1.10.1-ha0bc3c6_3.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzlib-1.2.13-h53f4e23_5.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-openmp-17.0.6-hcd81f8e_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-openmp-18.1.4-hbf6887a_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvmlite-0.42.0-py312h17030e7_1.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lxml-5.1.0-py312h9bf3b9e_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/lz4-4.3.3-py312haed5471_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/lz4-c-1.9.4-hb7217d7_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lzo-2.10-h642e427_1000.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lzo-2.10-h93a5062_1001.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/markdown-it-py-3.0.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/markupsafe-2.1.5-py312he37b823_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/matplotlib-3.8.3-py312h1f38498_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/matplotlib-base-3.8.3-py312ha6faf65_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/matplotlib-inline-0.1.6-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/mdurl-0.1.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/metis-5.1.0-h13dd4ca_1007.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/minizip-4.0.4-hc35e051_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/mistune-3.0.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/mock-5.1.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/more-itertools-10.2.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/mpfr-4.2.1-h9546428_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/matplotlib-3.8.4-py312h1f38498_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/matplotlib-base-3.8.4-py312ha6faf65_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/minizip-4.0.5-hc35e051_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/msgpack-python-1.0.7-py312h76e736e_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.11-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/mypy-1.8.0-py312he37b823_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/mysql-common-8.0.33-hf9e6398_6.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/mysql-libs-8.0.33-he3dca8b_6.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/nbclient-0.8.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/nbconvert-core-7.16.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/nbformat-5.9.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.4-h463b476_2.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/nest-asyncio-1.6.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.4.20240210-h078ce10_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/netcdf4-1.6.5-nompi_py312h9035142_100.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nh3-0.2.15-py312h5280bc4_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nitro-2.7.dev8-h13dd4ca_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.8.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/nose2-0.9.2-py_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/notebook-shim-0.2.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.3-pyhd8ed1ab_1.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/nspr-4.35-hb7217d7_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/nss-3.98-h5ce2875_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numba-0.59.0-py312hbaff935_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numba-0.59.1-py312hbaff935_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/numpy-1.26.4-py312h8442bc7_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/openjpeg-2.5.2-h9f1df11_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.2.1-h0d3ecfb_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/orc-1.9.2-h798d188_2.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/overrides-7.7.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/owslib-0.29.3-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-23.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pandas-2.1.4-py312h9e53831_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.0-hd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pandoc-3.1.11.1-hce30654_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pandocfilters-1.5.0-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/parso-0.8.3-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.3.0-h0d3ecfb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/orc-2.0.0-h4aad248_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pandas-2.2.2-py312h88edd18_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pcre2-10.42-h26f9a81_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pdal-2.6.3-h3c564ca_2.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pep517-0.13.0-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/pexpect-4.9.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pickleshare-0.7.5-py_1003.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pillow-10.2.0-py312hac22aec_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pcre2-10.43-h26f9a81_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pillow-10.3.0-py312h8a801b1_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/pixman-0.43.4-hebf3989_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pkginfo-1.9.6-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pkgutil-resolve-name-1.3.10-pyhd8ed1ab_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/plotly-5.19.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.4.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/plum-dispatch-2.3.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/ply-3.11-py_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.5.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/poppler-24.02.0-h896e6cb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/poppler-24.04.0-h42742f0_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/postgresql-16.2-h1d0603d_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-3.6.2-pyha770c72_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/proj-9.3.1-h93d94ba_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/prometheus_client-0.20.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/prompt-toolkit-3.0.42-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/postgresql-16.2-hf829917_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/proj-9.4.0-h52fb9d0_1.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/psutil-5.9.8-py312he37b823_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/psycopg2-2.9.9-py312h84485f8_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/pthread-stubs-0.4-h27ca646_1001.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/ptyprocess-0.7.0-pyhd3deb0d_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/pure_eval-0.2.2-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyarrow-15.0.0-py312h1251918_7_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyarrow-15.0.2-py312hbf1f86f_6_cpu.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.21-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.3-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pydantic-core-2.16.3-py312h5280bc4_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.17.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyobjc-core-10.1-py312h9d22092_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyobjc-framework-cocoa-10.1-py312h9d22092_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.7.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pydantic-core-2.18.2-py312hbdaf6d9_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyogrio-0.7.2-py312hfe67d44_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyproj-3.6.1-py312h4d912e0_5.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyqt-5.15.9-py312h550cae4_5.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pyqt-stubs-5.15.6.0-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyqt5-sip-12.12.2-py312h9f69965_5.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyqtwebkit-5.15.9-py312h14105d7_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyproj-3.6.1-py312h71aa0db_6.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.0.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.2.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.12.2-hdf0ec26_0_cpython.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.12.3-h4a7b5fc_0_cpython.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/python-fastjsonschema-2.19.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/python-json-logger-2.0.7-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/python_abi-3.12-4_cp312.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyyaml-6.0.1-py312h02f2b3b_1.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyzmq-25.1.2-py312h1edf716_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qca-2.3.8-hbd3fef1_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qgis-3.36.0-py312hb7619b1_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/qgis-plugin-manager-1.6.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qhull-2020.2-hc021e02_2.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qjson-0.9.0-haa19703_1009.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qscintilla2-2.14.1-py312h14105d7_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qt-main-5.15.8-h6bf1bb6_19.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qtkeychain-0.14.2-h50bd4b1_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qtwebkit-5.212-ha51050e_16.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/quarto-1.4.550-hce30654_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/quartodoc-0.7.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qwt-6.2.0-haa19703_6.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/re2-2023.09.01-h4cba328_2.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/readline-8.2-h92ec313_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/readme_renderer-42.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/referencing-0.33.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/requests-toolbelt-1.0.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3339-validator-0.1.4-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-2.0.0-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-validator-0.1.1-pyh9f0ad1d_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/rich-13.7.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/rpds-py-0.18.0-py312h77200ec_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/rtree-1.2.0-py312h22f7183_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ruff-0.3.0-py312h1ae9fbf_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/scikit-learn-1.4.1.post1-py312hd4306f4_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/scipy-1.12.0-py312h9d7df2b_2.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/send2trash-1.8.2-pyhd1c38e8_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.1.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/shapely-2.0.3-py312h04e4829_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sip-6.7.12-py312h650e478_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/scikit-learn-1.4.2-py312hd4306f4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/scipy-1.13.0-py312h9d7df2b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.5.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/shapely-2.0.4-py312h04e4829_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/snappy-1.1.10-h17c5cce_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/sniffio-1.3.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/snappy-1.2.0-hd04f947_1.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/sortedcontainers-2.4.0-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/soupsieve-2.5-pyhd8ed1ab_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/sphobjinv-2.3.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sqlite-3.45.1-hf2abe2d_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/stack_data-0.6.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/suitesparse-5.10.1-h79486c6_3.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/tabulate-0.9.0-pyhd8ed1ab_1.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tbb-2021.11.0-h2ffa867_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/spdlog-1.13.0-h5fcca99_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sqlite-3.45.3-hf2abe2d_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/tenacity-8.2.3-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/terminado-0.18.0-pyh31c8845_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tiledb-2.20.1-hef06dad_2.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/tinycss2-1.2.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.5.0-pyhc1e730c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tiledb-2.22.0-hf0716ca_3.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h5083fa2_1.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/tornado-6.4-py312he37b823_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/traitlets-5.14.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.2.23-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/twine-5.0.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/types-python-dateutil-2.8.19.20240106-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.10.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.4.10-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240417-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.11.0-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.11.0-pyha770c72_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/typing_utils-0.1.0-pyhd8ed1ab_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/tzcode-2024a-h93a5062_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ukkonen-1.0.1-py312h389731b_4.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/uri-template-1.3.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/uriparser-0.9.7-h13dd4ca_1.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.25.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/watchdog-4.0.0-py312he37b823_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/wcwidth-0.2.13-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/webcolors-1.13-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/webencodings-0.5.1-pyhd8ed1ab_2.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/websocket-client-1.7.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/wrapt-1.16.0-py312he37b823_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/xerces-c-3.2.5-hf393695_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/xorg-libxau-1.0.11-hb547adb_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/xorg-libxdmcp-1.1.3-h27ca646_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/xugrid-0.9.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2023.10.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xugrid-0.10.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2024.4.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/xz-5.2.6-h57fd34a_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/yaml-0.2.5-h3422bc3_2.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zeromq-4.3.5-hebf3989_1.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/zict-3.0.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/zlib-1.2.13-h53f4e23_5.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.5-h4f39d0f_0.conda
win-64:
- conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/anyio-4.3.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/argon2-cffi-23.1.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/argon2-cffi-bindings-21.2.0-py311ha68e1ae_4.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/arrow-1.3.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/asttokens-2.4.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/async-lru-2.0.4-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/attrs-23.2.0-pyh71513ae_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-auth-0.7.16-hec1de76_6.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-cal-0.6.10-hd481e46_1.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-common-0.9.13-hcfcfb64_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-compression-0.2.18-hd481e46_1.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-event-stream-0.4.2-h0f06f08_4.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-http-0.8.1-hdb5aac5_5.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-io-0.14.5-h08270f9_1.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-mqtt-0.10.2-hfea8755_4.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-s3-0.5.2-h4b2095a_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-sdkutils-0.1.15-hd481e46_1.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/aws-checksums-0.1.18-hd481e46_1.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/aws-crt-cpp-0.26.2-h8492d2a_7.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/aws-sdk-cpp-1.11.267-h93f5800_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-auth-0.7.18-hba7c1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-cal-0.6.11-ha21e00f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-common-0.9.15-hcfcfb64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-compression-0.2.18-ha21e00f_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-event-stream-0.4.2-hf668b60_8.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-http-0.8.1-hd704247_10.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-io-0.14.7-h14865c8_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-mqtt-0.10.4-h748201e_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-s3-0.5.7-h0ac6cc1_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-sdkutils-0.1.15-ha21e00f_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-checksums-0.1.18-ha21e00f_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-crt-cpp-0.26.8-h2199128_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-sdk-cpp-1.11.267-h3f4ca61_7.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/azure-core-cpp-1.11.1-h249a519_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/azure-identity-cpp-1.6.0-h91493d7_1.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/azure-storage-blobs-cpp-12.10.0-h91493d7_1.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/azure-storage-common-cpp-12.5.0-h91493d7_4.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.14.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/beartype-0.17.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/beautifulsoup4-4.12.3-pyha770c72_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/black-24.2.0-py311h1ea47a8_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/blas-2.121-openblas.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/blas-devel-3.9.0-21_win64_openblas.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/bleach-6.1.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/blosc-1.21.5-hdccc3a2_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/black-24.4.2-py312h2e8e312_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/blosc-1.21.5-hbd69f2e_1.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.3.4-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.2-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/brotli-1.1.0-hcfcfb64_1.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/brotli-bin-1.1.0-hcfcfb64_1.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-python-1.1.0-py311h12c1d0e_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/build-0.7.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-python-1.1.0-py312h53d5487_1.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/bzip2-1.0.8-hcfcfb64_5.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/c-ares-1.27.0-hcfcfb64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/c-ares-1.28.1-hcfcfb64_0.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/ca-certificates-2024.2.2-h56e8100_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/cached-property-1.5.2-hd8ed1ab_1.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/cached_property-1.5.2-pyha770c72_1.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/win-64/cairo-1.18.0-h1fef639_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/ceres-solver-2.2.0-h459d6aa_2.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/cffi-1.16.0-py311ha68e1ae_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/win-64/cfitsio-4.3.1-h9b0cee5_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/cftime-1.6.3-py311h59ca53f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/cfitsio-4.4.0-h9b0cee5_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/cftime-1.6.3-py312ha90f08f_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-win_pyh7428d3b_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/cmarkgfm-0.8.0-py311ha68e1ae_3.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/comm-0.2.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/contourpy-1.2.0-py311h005e61a_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/coverage-7.4.3-py311ha68e1ae_1.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/curl-8.5.0-hd5e4a3a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/contourpy-1.2.1-py312h0d7def4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/coverage-7.5.0-py312h4389bb4_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/cytoolz-0.12.3-py311ha68e1ae_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/dart-sass-1.58.3-h57928b3_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.2.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.2.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/debugpy-1.8.1-py311h12c1d0e_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/decorator-5.1.1-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/defusedxml-0.7.1-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/win-64/deno-1.37.2-hc8b987e_1.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/deno-dom-0.1.35-h8b8d39b_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/distlib-0.3.8-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.2.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/docutils-0.20.1-py311h1ea47a8_3.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/draco-1.5.7-h181d51b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/cytoolz-0.12.3-py312he70551f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.14-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.2-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/eigen-3.4.0-h91493d7_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/entrypoints-0.4-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/win-64/esbuild-0.19.2-h57928b3_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.0.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/executing-2.0.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/exiv2-0.28.2-hadc2d18_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/expat-2.5.0-h63175ca_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.13.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/fiona-1.9.5-py311hbcf8545_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.1.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/expat-2.6.2-h63175ca_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/fiona-1.9.6-py312h95cbb4d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/fmt-10.2.1-h181d51b_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-inconsolata-3.000-h77eed37_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-source-code-pro-2.038-h77eed37_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_2.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/fontconfig-2.14.2-hbde0cde_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/win-64/fonttools-4.49.0-py311ha68e1ae_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/fqdn-1.5.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/fonttools-4.51.0-py312he70551f_0.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/freetype-2.12.1-hdaf720e_2.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/freexl-2.0.0-h8276f4a_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.2.0-pyhca7485f_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/future-1.0.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/gdal-3.8.4-py311h21a6730_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/gdal-3.8.5-py312hea5013e_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.4-pyha770c72_0.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/geos-3.12.1-h1537add_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/geotiff-1.7.1-hbf5ca3a_15.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/gettext-0.21.1-h5728263_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/win-64/gflags-2.2.2-ha925a31_1004.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/win-64/gh-2.43.1-hd02998f_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/glib-2.78.4-h12be248_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/glib-tools-2.78.4-h12be248_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/glog-0.7.0-h9cd36e5_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/griffe-0.41.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/gsl-2.7-hdfb1a43_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/win-64/gst-plugins-base-1.22.9-h001b923_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/gstreamer-1.22.9-hb4038d2_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/h11-0.14.0-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.1.0-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.21.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/geotiff-1.7.1-hed9d743_16.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/glib-2.80.0-h39d0aa6_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/glib-tools-2.80.0-h0a98069_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/gst-plugins-base-1.24.1-h001b923_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/gstreamer-1.24.1-hb4038d2_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.24.2-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/hdf4-4.2.15-h5557f11_7.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/hdf5-1.14.3-nompi_h73e8ff5_100.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.0.0-pyh9f0ad1d_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/httpcore-1.0.4-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/httplib2-0.22.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/httpx-0.27.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.0.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/hdf5-1.14.3-nompi_h73e8ff5_101.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/icu-73.2-h63175ca_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.5.35-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.1-pyha770c72_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-resources-6.1.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.1-hd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.1.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.7-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/intel-openmp-2024.0.0-h57928b3_49841.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/ipykernel-6.29.3-pyha63f2e9_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/ipython-8.22.1-pyh7428d3b_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/isoduration-20.11.0-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.classes-3.3.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jedi-0.19.1-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/json5-0.9.18-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/jsonpointer-2.4-py311h1ea47a8_3.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.21.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2023.12.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-with-format-nongpl-4.21.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/juliaup-1.13.0-h975169c_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter-lsp-2.2.3-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_client-8.6.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/jupyter_core-5.7.1-py311h1ea47a8_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_events-0.9.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server-2.12.5-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server_terminals-0.5.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab-4.1.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_pygments-0.3.0-pyhd8ed1ab_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_server-2.25.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.4.2-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/kealib-1.5.3-hd248416_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/keyring-24.3.1-py311h1ea47a8_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/khronos-opencl-icd-loader-2023.04.17-h64bf75a_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/kiwisolver-1.4.5-py311h005e61a_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/kiwisolver-1.4.5-py312h0d7def4_1.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.21.2-heb0366b_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/laz-perf-3.4.0-h91493d7_0.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/lcms2-2.16-h67d730c_0.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/lerc-4.0.0-h63175ca_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/win-64/libabseil-20240116.1-cxx17_h63175ca_2.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/libaec-1.1.2-h63175ca_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libabseil-20240116.2-cxx17_h63175ca_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libaec-1.1.3-h63175ca_0.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/libarchive-3.7.2-h313118b_1.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-15.0.0-hd01637b_7_cpu.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-acero-15.0.0-h63175ca_7_cpu.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-dataset-15.0.0-h63175ca_7_cpu.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-15.0.0-hca4e5ea_7_cpu.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-sql-15.0.0-h1ef3bed_7_cpu.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-gandiva-15.0.0-hc896d4e_7_cpu.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-substrait-15.0.0-hf368baa_7_cpu.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/libblas-3.9.0-21_win64_openblas.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/libboost-headers-1.84.0-h57928b3_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-15.0.2-he3d97d8_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-acero-15.0.2-he0c23c2_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-dataset-15.0.2-he0c23c2_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-15.0.2-ha7f4a34_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-sql-15.0.2-hdeef14f_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-gandiva-15.0.2-hd4515a1_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-substrait-15.0.2-h1f0e801_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libblas-3.9.0-22_win64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libboost-headers-1.84.0-h57928b3_2.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlicommon-1.1.0-hcfcfb64_1.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlidec-1.1.0-hcfcfb64_1.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlienc-1.1.0-hcfcfb64_1.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/libcblas-3.9.0-21_win64_openblas.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/libclang-15.0.7-default_hde6756a_4.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/libclang13-15.0.7-default_h85b4d89_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libcblas-3.9.0-22_win64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libclang13-18.1.4-default_hf64faad_0.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/libcrc32c-1.1.2-h0e60522_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.5.0-hd5e4a3a_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/libdeflate-1.19-hcfcfb64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.7.1-hd5e4a3a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libdeflate-1.20-hcfcfb64_0.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/libevent-2.1.12-h3671451_1.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.5.0-h63175ca_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.6.2-h63175ca_0.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.4.2-h8ffe710_5.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/win-64/libflang-5.0.0-h6538335_20180525.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/win-64/libgdal-3.8.4-h7c2897a_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/libgdal-arrow-parquet-3.8.4-h49126f6_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/libglib-2.78.4-h16e383f_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/libgoogle-cloud-2.21.0-h2b62511_2.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/libgoogle-cloud-storage-2.21.0-hb581fae_2.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/libgrpc-1.61.1-h864d0f4_1.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/libhwloc-2.9.3-default_haede6df_1009.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libgdal-3.8.5-hfb9f81c_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libglib-2.80.0-h39d0aa6_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libgoogle-cloud-2.23.0-h68df31e_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libgoogle-cloud-storage-2.23.0-hb581fae_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libgrpc-1.62.2-h5273850_0.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/libiconv-1.17-hcfcfb64_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libintl-0.22.5-h5728263_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libintl-devel-0.22.5-h5728263_2.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/libjpeg-turbo-3.0.0-hcfcfb64_1.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/libkml-1.3.0-haf3e7a6_1018.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/liblapack-3.9.0-21_win64_openblas.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/liblapacke-3.9.0-21_win64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/liblapack-3.9.0-22_win64_openblas.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/libnetcdf-4.9.2-nompi_h07c049d_113.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/libogg-1.3.4-h8ffe710_1.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/win-64/libopenblas-0.3.26-pthreads_hc140b1d_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/libparquet-15.0.0-h7ec3a38_7_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libopenblas-0.3.27-pthreads_hc140b1d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libparquet-15.0.2-h178134c_6_cpu.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/libpng-1.6.43-h19919ed_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/libpq-16.2-hdb24f17_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/libprotobuf-4.25.2-h503648d_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libpq-16.2-hdb24f17_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libprotobuf-4.25.3-h503648d_0.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/libre2-11-2023.09.01-hf8d8778_2.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/librttopo-1.1.0-h94c4f80_15.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/libsodium-1.0.18-h8d14728_1.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/win-64/libspatialindex-1.9.3-h39d44d4_4.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/win-64/libspatialite-5.1.0-hf2f0abc_4.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.45.1-hcfcfb64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libspatialite-5.1.0-hf13de1f_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.45.3-hcfcfb64_0.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/libssh2-1.11.0-h7dfc565_0.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/libthrift-0.19.0-ha2b3283_1.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/libtiff-4.6.0-h6e2ebb7_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libtiff-4.6.0-hddb2be6_3.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/libutf8proc-2.8.0-h82a8f57_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/win-64/libvorbis-1.3.7-h0e60522_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/win-64/libwebp-1.3.2-hcfcfb64_1.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/libwebp-base-1.3.2-hcfcfb64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libwebp-base-1.4.0-hcfcfb64_0.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/libxcb-1.15-hcd874cb_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/libxml2-2.12.5-hc3477c8_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/libxslt-1.1.39-h3df6e99_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libxml2-2.12.6-hc3477c8_2.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/libzip-1.10.1-h1d365fa_3.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/libzlib-1.2.13-hcfcfb64_5.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/llvm-meta-5.0.0-0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/win-64/llvmlite-0.42.0-py311h5bc0dda_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/llvmlite-0.42.0-py312h7894644_1.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/win-64/lxml-5.1.0-py311h064e5ff_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/lz4-4.3.3-py311haddf500_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/lz4-4.3.3-py312h594ca44_0.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/lz4-c-1.9.4-hcfcfb64_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/lzo-2.10-he774522_1000.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/lzo-2.10-hcfcfb64_1001.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-gcc-libgfortran-5.3.0-6.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-gcc-libs-5.3.0-7.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-gcc-libs-core-5.3.0-7.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-gmp-6.1.0-2.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-libwinpthread-git-5.0.0.4634.697f757-2.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/markdown-it-py-3.0.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/markupsafe-2.1.5-py311ha68e1ae_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/matplotlib-3.8.3-py311h1ea47a8_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/matplotlib-base-3.8.3-py311h6e989c2_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/matplotlib-inline-0.1.6-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/mdurl-0.1.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/minizip-4.0.4-h5bed578_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/mistune-3.0.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/mkl-2024.0.0-h66d3029_49658.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/mock-5.1.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/more-itertools-10.2.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/msgpack-python-1.0.7-py311h005e61a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/markupsafe-2.1.5-py312he70551f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/matplotlib-3.8.4-py312h2e8e312_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/matplotlib-base-3.8.4-py312h26ecaf7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/minizip-4.0.5-h5bed578_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/msgpack-python-1.0.7-py312h0d7def4_0.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/msys2-conda-epoch-20160418-1.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.11-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/win-64/mypy-1.8.0-py311ha68e1ae_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/nbclient-0.8.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/nbconvert-core-7.16.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/nbformat-5.9.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/nest-asyncio-1.6.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/netcdf4-1.6.5-nompi_py311he019f65_100.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/nh3-0.2.15-py311h633b200_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/nitro-2.7.dev8-h1537add_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.8.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/nose2-0.9.2-py_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/notebook-shim-0.2.4-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/numba-0.59.0-py311h2c0921f_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/netcdf4-1.6.5-nompi_py312he4da9c3_100.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.3-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/numba-0.59.1-py312h115d327_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/numpy-1.26.4-py311h0b4df5a_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/openblas-0.3.26-pthreads_h3721920_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/numpy-1.26.4-py312h8753938_0.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/openjpeg-2.5.2-h3d672ee_0.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/openmp-5.0.0-vc14_1.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.2.1-hcfcfb64_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/orc-1.9.2-h2702c50_2.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/overrides-7.7.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/owslib-0.29.3-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-23.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/pandas-2.1.4-py311hf63dbb6_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.0-hd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/pandoc-3.1.11.1-h57928b3_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pandocfilters-1.5.0-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/parso-0.8.3-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.3.0-hcfcfb64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/orc-2.0.0-h7e885a9_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pandas-2.2.2-py312h2ab9e98_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/pcre2-10.42-h17e33f8_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/pdal-2.6.3-h572f625_2.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pep517-0.13.0-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/pickleshare-0.7.5-py_1003.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/win-64/pillow-10.2.0-py311h4dd8a23_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pcre2-10.43-h17e33f8_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pillow-10.3.0-py312h6f6a607_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/pixman-0.43.4-h63175ca_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pkginfo-1.9.6-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pkgutil-resolve-name-1.3.10-pyhd8ed1ab_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/plotly-5.19.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.4.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/plum-dispatch-2.3.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/ply-3.11-py_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.5.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/ply-3.11-pyhd8ed1ab_2.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/poppler-24.02.0-hc2f3c52_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/poppler-24.04.0-h747fd5a_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/postgresql-16.2-h1beaf6b_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-3.6.2-pyha770c72_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/proj-9.3.1-he13c7e8_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/prometheus_client-0.20.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/prompt-toolkit-3.0.42-pyha770c72_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/psutil-5.9.8-py311ha68e1ae_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/psycopg2-2.9.9-py311h2abc067_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/postgresql-16.2-h94c9ec1_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/proj-9.4.0-he13c7e8_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/psutil-5.9.8-py312he70551f_0.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/pthread-stubs-0.4-hcd874cb_1001.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/win-64/pthreads-win32-2.9.1-hfa6e2cd_3.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/win-64/ptvsd-4.3.2-py311ha68e1ae_5.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/pure_eval-0.2.2-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/win-64/pyarrow-15.0.0-py311h6a6099b_7_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pyarrow-15.0.2-py312h4af9903_6_cpu.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.21-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.3-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/pydantic-core-2.16.3-py311hc37eb10_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.17.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/pyogrio-0.7.2-py311h759bd4f_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/pyproj-3.6.1-py311h82130bc_5.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/pyqt-5.15.9-py311h125bc19_5.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pyqt-stubs-5.15.6.0-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/win-64/pyqt5-sip-12.12.2-py311h12c1d0e_5.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/pyqtwebkit-5.15.9-py311h5a77453_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.7.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pydantic-core-2.18.2-py312h2615798_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pyogrio-0.7.2-py312he3b4e22_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pyproj-3.6.1-py312h616b599_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pyqt-5.15.9-py312he09f080_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pyqt5-sip-12.12.2-py312h53d5487_5.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyh0701188_6.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.0.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.2.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.11.8-h2628c8c_0_cpython.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.12.3-h2628c8c_0_cpython.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/python-fastjsonschema-2.19.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/python-json-logger-2.0.7-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/python_abi-3.11-4_cp311.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/python_abi-3.12-4_cp312.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/pywin32-306-py311h12c1d0e_2.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/pywin32-ctypes-0.2.2-py311h1ea47a8_1.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/pywinpty-2.0.13-py311h12c1d0e_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/pyyaml-6.0.1-py311ha68e1ae_1.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/pyzmq-25.1.2-py311h9250fbb_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/qca-2.3.8-h2624d1c_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/qgis-3.36.0-py311h514a5ff_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/qgis-plugin-manager-1.6.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/qhull-2020.2-h70d2c02_2.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/win-64/qjson-0.9.0-h04a78d6_1009.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/qscintilla2-2.14.1-py311h5a77453_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/qt-main-5.15.8-h9e85ed6_19.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/qtkeychain-0.14.2-h04a78d6_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/qtwebkit-5.212-h4d8ddc9_16.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/quarto-1.4.550-h57928b3_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/quartodoc-0.7.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/qwt-6.2.0-h07be427_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pyyaml-6.0.1-py312he70551f_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/qt-main-5.15.8-hcef0176_21.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/re2-2023.09.01-hd3b24a8_2.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/readme_renderer-42.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/referencing-0.33.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/requests-toolbelt-1.0.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3339-validator-0.1.4-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-2.0.0-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-validator-0.1.1-pyh9f0ad1d_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/rich-13.7.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/rpds-py-0.18.0-py311hc37eb10_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/rtree-1.2.0-py311hcacb13a_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/ruff-0.3.0-py311hc14472d_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/scikit-learn-1.4.1.post1-py311h142b183_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/scipy-1.12.0-py311h0b4df5a_2.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/send2trash-1.8.2-pyh08f2357_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.1.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/shapely-2.0.3-py311h16bee0b_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/sip-6.7.12-py311h12c1d0e_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/rtree-1.2.0-py312h72b5f30_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/scikit-learn-1.4.2-py312hcacafb1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/scipy-1.13.0-py312h8753938_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.5.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/shapely-2.0.4-py312h7d70906_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/sip-6.7.12-py312h53d5487_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/win-64/snappy-1.1.10-hfb803bf_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/sniffio-1.3.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/snappy-1.2.0-hfb803bf_1.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/sortedcontainers-2.4.0-pyhd8ed1ab_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/soupsieve-2.5-pyhd8ed1ab_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/sphobjinv-2.3.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/sqlite-3.45.1-hcfcfb64_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/stack_data-0.6.2-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/suitesparse-5.4.0-h5d0cbe0_1.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/tabulate-0.9.0-pyhd8ed1ab_1.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/win-64/tbb-2021.11.0-h91493d7_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/spdlog-1.13.0-h64d2f7d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/sqlite-3.45.3-hcfcfb64_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/tenacity-8.2.3-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/terminado-0.18.0-pyh5737063_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/tiledb-2.20.1-h14acc3a_2.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/tinycss2-1.2.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.5.0-pyhc1e730c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/tiledb-2.22.0-h5657395_3.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h5226925_1.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/tornado-6.4-py311ha68e1ae_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/traitlets-5.14.1-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.2.23-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/twine-5.0.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/types-python-dateutil-2.8.19.20240106-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.10.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/tornado-6.4-py312he70551f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.4.10-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240417-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.11.0-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.11.0-pyha770c72_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/typing_utils-0.1.0-pyhd8ed1ab_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/ucrt-10.0.22621.0-h57928b3_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/win-64/ukkonen-1.0.1-py311h005e61a_4.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/uri-template-1.3.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/uriparser-0.9.7-h1537add_1.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-hcf57466_18.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.38.33130-h82b7239_18.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.25.1-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/vs2015_runtime-14.38.33130-hcb4865c_18.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/watchdog-4.0.0-py311h1ea47a8_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/wcwidth-0.2.13-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/webcolors-1.13-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/webencodings-0.5.1-pyhd8ed1ab_2.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/websocket-client-1.7.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/win_inet_pton-1.1.0-pyhd8ed1ab_6.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/win-64/winpty-0.4.3-4.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/win-64/wrapt-1.16.0-py311ha68e1ae_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/wrapt-1.16.0-py312he70551f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/xerces-c-3.2.5-h63175ca_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/xorg-libxau-1.0.11-hcd874cb_0.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/xorg-libxdmcp-1.1.3-hcd874cb_0.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/noarch/xugrid-0.9.0-pyhd8ed1ab_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2023.10.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xugrid-0.10.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2024.4.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/xz-5.2.6-h8d14728_0.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/win-64/yaml-0.2.5-h8ffe710_2.tar.bz2
- - conda: https://conda.anaconda.org/conda-forge/win-64/zeromq-4.3.5-h63175ca_1.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/zict-3.0.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/zlib-1.2.13-hcfcfb64_5.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/zstd-1.5.5-h12be248_0.conda
-packages:
-- kind: conda
- name: _libgcc_mutex
- version: '0.1'
- build: conda_forge
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2
- sha256: fe51de6107f9edc7aa4f786a70f4a883943bc9d39b3bb7307c04c41410990726
- md5: d7c89558ba9fa0495403155b64376d81
- license: None
- size: 2562
- timestamp: 1578324546067
-- kind: conda
- name: _openmp_mutex
- version: '4.5'
- build: 2_gnu
- build_number: 16
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2
- sha256: fbe2c5e56a653bebb982eda4876a9178aedfc2b545f25d0ce9c4c0b508253d22
- md5: 73aaf86a425cc6e73fcf236a5a46396d
- depends:
- - _libgcc_mutex 0.1 conda_forge
- - libgomp >=7.5.0
- constrains:
- - openmp_impl 9999
- license: BSD-3-Clause
- license_family: BSD
- size: 23621
- timestamp: 1650670423406
-- kind: conda
- name: alsa-lib
- version: 1.2.11
- build: hd590300_1
- build_number: 1
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/alsa-lib-1.2.11-hd590300_1.conda
- sha256: 0e2b75b9834a6e520b13db516f7cf5c9cea8f0bbc9157c978444173dacb98fec
- md5: 0bb492cca54017ea314b809b1ee3a176
+ dev:
+ channels:
+ - url: https://conda.anaconda.org/conda-forge/
+ packages:
+ linux-64:
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/alsa-lib-1.2.11-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/anyio-4.3.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/argon2-cffi-23.1.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/argon2-cffi-bindings-21.2.0-py312h98912ed_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/arrow-1.3.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/asttokens-2.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/astunparse-1.6.3-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/async-lru-2.0.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/attr-2.5.1-h166bdaf_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-23.2.0-pyh71513ae_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-auth-0.7.18-he0b1f16_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-cal-0.6.11-heb1d5e4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-common-0.9.15-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-compression-0.2.18-hce8ee76_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-event-stream-0.4.2-h01f5eca_8.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-http-0.8.1-hdb68c23_10.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-io-0.14.7-hbfbeace_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-mqtt-0.10.4-h50844eb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-s3-0.5.7-h6be9164_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-sdkutils-0.1.15-hce8ee76_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-checksums-0.1.18-hce8ee76_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-crt-cpp-0.26.8-h2150271_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-sdk-cpp-1.11.267-hddb5a97_7.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-core-cpp-1.11.1-h91d86a7_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-identity-cpp-1.6.0-hf1915f5_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-storage-blobs-cpp-12.10.0-h00ab1b0_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-storage-common-cpp-12.5.0-h94269e2_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.14.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/backports-1.0-pyhd8ed1ab_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/backports.tarfile-1.0.0-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/beartype-0.18.5-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/beautifulsoup4-4.12.3-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/binutils_impl_linux-64-2.40-ha885e6a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/black-24.4.2-py312h7900ff3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bleach-6.1.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/blosc-1.21.5-hc2324a3_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-1.1.0-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-bin-1.1.0-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.1.0-py312h30efb56_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/build-0.7.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hd590300_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.28.1-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2024.2.2-hbcca054_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cached-property-1.5.2-hd8ed1ab_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cached_property-1.5.2-pyha770c72_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/cairo-1.18.0-h3faef2a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/ceres-solver-2.2.0-h30ec75d_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/cffi-1.16.0-py312hf06ca03_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/cfitsio-4.4.0-hbdc6101_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/cftime-1.6.3-py312hc7c0aa3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-unix_pyh707e725_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/cmarkgfm-0.8.0-py312h98912ed_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/comm-0.2.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/contourpy-1.2.1-py312h8572e83_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/coverage-7.5.0-py312h9a8786e_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/cryptography-42.0.5-py312h241aef2_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/curl-8.7.1-hca28451_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/cytoolz-0.12.3-py312h98912ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/dart-sass-1.58.3-ha770c72_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.14-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dataclasses-0.8-pyhc8e2a94_3.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/dbus-1.13.6-h5008d03_3.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/debugpy-1.8.1-py312h30efb56_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/decorator-5.1.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/defusedxml-0.7.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/deno-1.37.2-h335b0a9_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/deno-dom-0.1.35-hd9586b0_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/distlib-0.3.8-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/docutils-0.21.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/draco-1.5.7-h00ab1b0_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/eigen-3.4.0-h00ab1b0_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/entrypoints-0.4-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/esbuild-0.19.2-ha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.1.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/executing-2.0.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/exiv2-0.28.2-h3cdc00d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/expat-2.6.2-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.14.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/fiona-1.9.6-py312h66d9856_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/fmt-10.2.1-h00ab1b0_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-inconsolata-3.000-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-source-code-pro-2.038-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/fontconfig-2.14.2-h14ed4e7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.51.0-py312h98912ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fqdn-1.5.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/freetype-2.12.1-h267a509_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/freexl-2.0.0-h743c826_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/future-1.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/gcc_impl_linux-64-13.2.0-h9eb54c0_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/gdal-3.8.5-py312hca78659_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.4-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/geos-3.12.1-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/geotiff-1.7.1-h6cf1f90_16.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/gettext-0.22.5-h59595ed_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/gettext-tools-0.22.5-h59595ed_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/gflags-2.2.2-he1b5a44_1004.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/gh-2.49.0-ha8f183a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/giflib-5.2.2-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-2.80.0-hf2295e7_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-tools-2.80.0-hde27a5a_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/glog-0.7.0-hed5481d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/gmp-6.3.0-h59595ed_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/graphite2-1.3.13-h59595ed_1003.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/griffe-0.44.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/gsl-2.7-he838d99_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/gst-plugins-base-1.24.1-hfa15dee_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/gstreamer-1.24.1-h98fc4e7_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/h11-0.14.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.1.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/harfbuzz-8.4.0-h3d44ed6_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.24.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/hdf4-4.2.15-h2a13503_7.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/hdf5-1.14.3-nompi_h4f84152_101.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.0.0-pyh9f0ad1d_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/httpcore-1.0.5-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/httplib2-0.22.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/httpx-0.27.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.0.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/icu-73.2-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.5.36-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.7-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-resources-6.4.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.4.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/ipykernel-6.29.3-pyhd33586a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/ipython-8.22.2-pyh707e725_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/isoduration-20.11.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.classes-3.4.0-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.context-5.3.0-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.functools-4.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jedi-0.19.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jeepney-0.8.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/json-c-0.17-h7ab15ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/json5-0.9.25-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/jsonpointer-2.4-py312h7900ff3_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.22.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2023.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-with-format-nongpl-4.22.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/juliaup-1.14.7-he8a937b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter-lsp-2.2.5-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_client-8.6.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/jupyter_core-5.7.2-py312h7900ff3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_events-0.10.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server-2.14.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server_terminals-0.5.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab-4.1.8-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_pygments-0.3.0-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_server-2.27.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/kealib-1.5.3-h2f55d51_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/kernel-headers_linux-64-2.6.32-he073ed8_17.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/keyring-25.2.0-pyha804496_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.1-h166bdaf_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/kiwisolver-1.4.5-py312h8572e83_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.21.2-h659d440_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/lame-3.100-h166bdaf_1003.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/laz-perf-3.4.0-h00ab1b0_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/lcms2-2.16-hb7c19ff_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.40-h55db66e_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/lerc-4.0.0-h27087fc_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libabseil-20240116.2-cxx17_h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libaec-1.1.3-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libarchive-3.7.2-h2aa1ff5_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-15.0.2-hefa796f_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-acero-15.0.2-hbabe93e_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-dataset-15.0.2-hbabe93e_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-15.0.2-hc4f8a93_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-sql-15.0.2-he4f5ca8_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-gandiva-15.0.2-hc1954e9_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-substrait-15.0.2-he4f5ca8_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libasprintf-0.22.5-h661eb56_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libasprintf-devel-0.22.5-h661eb56_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libblas-3.9.0-22_linux64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libboost-headers-1.84.0-ha770c72_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlicommon-1.1.0-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlidec-1.1.0-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlienc-1.1.0-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libcap-2.69-h0f662aa_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.9.0-22_linux64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp15-15.0.7-default_h127d8a8_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang13-18.1.4-default_h5d6823c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libcrc32c-1.1.2-h9c3ff4c_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libcups-2.3.3-h4637d8d_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.7.1-hca28451_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.20-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20191231-he28a2e2_2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-hd590300_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libevent-2.1.12-hf998b51_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.6.2-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.4.2-h7f98852_5.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libflac-1.4.3-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/libgcc-devel_linux-64-13.2.0-hceb6213_106.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-13.2.0-h77fa898_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcrypt-1.10.3-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgdal-3.8.5-hf9625ee_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgdal-arrow-parquet-3.8.5-h3dc1c5c_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgettextpo-0.22.5-h59595ed_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgettextpo-devel-0.22.5-h59595ed_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-13.2.0-h69a702a_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-13.2.0-h43f5ff8_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libglib-2.80.0-hf2295e7_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-13.2.0-h77fa898_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-2.23.0-h9be4e54_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-storage-2.23.0-hc7a4891_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgpg-error-1.49-h4f305b6_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgrpc-1.62.2-h15f2491_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libhwloc-2.10.0-default_h2fb2949_1000.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.17-hd590300_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libjpeg-turbo-3.0.0-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libkml-1.3.0-h01aab08_1018.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.9.0-22_linux64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm14-14.0.6-hcd5def8_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm15-15.0.7-hb3ce162_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm16-16.0.6-hb3ce162_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm18-18.1.4-h2448989_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libnetcdf-4.9.2-nompi_h9612171_113.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.58.0-h47da74e_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libnl-3.9.0-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libnsl-2.0.1-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libogg-1.3.4-h7f98852_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.27-pthreads_h413a1c8_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libopus-1.3.1-h7f98852_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libparquet-15.0.2-hacf5a1f_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libpng-1.6.43-h2797004_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libpq-16.2-h33b98f1_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libprotobuf-4.25.3-h08a7969_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libre2-11-2023.09.01-h5a48ba9_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/librttopo-1.1.0-h8917695_15.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libsanitizer-13.2.0-h6ddb7a1_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libsecret-0.18.8-h329b89f_2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libsndfile-1.2.2-hc60ed4a_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libsodium-1.0.18-h36c2ea0_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libspatialindex-1.9.3-h9c3ff4c_4.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libspatialite-5.1.0-h6f065fc_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.45.3-h2797004_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libssh2-1.11.0-h0841786_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-13.2.0-hc0a3c3a_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libsystemd0-255-h3516f8a_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libthrift-0.19.0-hb90f79a_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.6.0-h1dd3fc0_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libutf8proc-2.8.0-h166bdaf_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.38.1-h0b41bf4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libvorbis-1.3.7-h9c3ff4c_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libwebp-1.4.0-h2c329e2_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libwebp-base-1.4.0-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libxcb-1.15-h0b41bf4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libxcrypt-4.4.36-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libxkbcommon-1.7.0-h662e7e4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.12.6-h232c23b_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libxslt-1.1.39-h76b75d6_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libzip-1.10.1-h2629f0a_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.2.13-hd590300_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/llvmlite-0.42.0-py312hb06c811_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/lxml-5.2.1-py312hb90d8a5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/lz4-4.3.3-py312h03f37cb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/lz4-c-1.9.4-hcb278e6_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/lzo-2.10-hd590300_1001.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/markdown-it-py-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/markupsafe-2.1.5-py312h98912ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-3.8.4-py312h7900ff3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-base-3.8.4-py312he5832f3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/matplotlib-inline-0.1.7-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mdurl-0.1.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/metis-5.1.0-h59595ed_1007.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/minizip-4.0.5-h0ab5242_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mistune-3.0.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mock-5.1.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/more-itertools-10.2.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/mpfr-4.2.1-h9458935_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/mpg123-1.32.6-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/msgpack-python-1.0.7-py312h8572e83_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/mypy-1.10.0-py312h9a8786e_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-common-8.3.0-hf1915f5_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-libs-8.3.0-hca2cd23_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/nbclient-0.10.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/nbconvert-core-7.16.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/nbformat-5.10.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.4.20240210-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/nest-asyncio-1.6.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/netcdf4-1.6.5-nompi_py312h26027e0_100.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.3-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/nh3-0.2.17-py312h4b3b743_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/nitro-2.7.dev8-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.8.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/nose2-0.9.2-py_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/notebook-shim-0.2.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/nspr-4.35-h27087fc_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/nss-3.98-h1d7d5a4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/numba-0.59.1-py312hacefee8_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/numpy-1.26.4-py312heda63a1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/ocl-icd-2.3.2-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/openjpeg-2.5.2-h488ebb8_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.3.0-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/orc-2.0.0-h17fec99_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/overrides-7.7.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/owslib-0.30.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pandas-2.2.2-py312hfb8ada1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pandoc-3.1.11.1-ha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandocfilters-1.5.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/parso-0.8.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pcre2-10.43-hcad00b1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pdal-2.7.1-h86e06d4_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pep517-0.13.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pexpect-4.9.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pickleshare-0.7.5-py_1003.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pillow-10.3.0-py312hdcec9eb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pixman-0.43.2-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pkginfo-1.10.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pkgutil-resolve-name-1.3.10-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/plotly-5.21.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.5.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/plum-dispatch-2.3.5-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/ply-3.11-pyhd8ed1ab_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/poppler-24.04.0-hb6cd0d7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/postgresql-16.2-h82ecc9d_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-3.7.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/proj-9.4.0-h1d62c97_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/prometheus_client-0.20.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/prompt-toolkit-3.0.42-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/psutil-5.9.8-py312h98912ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/psycopg2-2.9.9-py312h08590aa_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pthread-stubs-0.4-h36c2ea0_1001.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/ptyprocess-0.7.0-pyhd3deb0d_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pulseaudio-client-17.0-hb77b528_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pure_eval-0.2.2-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pyarrow-15.0.2-py312h3f82784_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.22-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.7.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pydantic-core-2.18.2-py312h4413252_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.17.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pyogrio-0.7.2-py312h66d9856_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pyproj-3.6.1-py312hb591178_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqt-5.15.9-py312h949fe66_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyqt-stubs-5.15.6.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqt5-sip-12.12.2-py312h30efb56_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqtwebkit-5.15.9-py312hc23280e_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.2.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.12.3-hab00c5b_0_cpython.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-fastjsonschema-2.19.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-json-logger-2.0.7-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/python_abi-3.12-4_cp312.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.1-py312h98912ed_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pyzmq-26.0.2-py312h8fd38d8_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/qca-2.3.8-h4a6f7a0_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/qgis-3.34.5-py312hb580988_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/qgis-plugin-manager-1.6.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/qhull-2020.2-h4bd325d_2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/qjson-0.9.0-h0c700ba_1009.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/qscintilla2-2.14.1-py312hc23280e_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/qt-main-5.15.8-hc9dc06e_21.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/qtkeychain-0.14.2-hbc31b07_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/qtwebkit-5.212-h60108c6_16.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/quarto-1.4.550-ha770c72_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/quartodoc-0.7.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/qwt-6.2.0-h1a478b3_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/rdma-core-51.0-hd3aeb46_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/re2-2023.09.01-h7f4b329_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8228510_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/readme_renderer-42.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/referencing-0.35.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/requests-toolbelt-1.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3339-validator-0.1.4-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-2.0.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-validator-0.1.1-pyh9f0ad1d_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/rich-13.7.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/rpds-py-0.18.0-py312h4b3b743_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/rtree-1.2.0-py312hb0aae1a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/ruff-0.4.2-py312h5715c7c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/rust-1.77.2-h70c747d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/rust-std-x86_64-unknown-linux-gnu-1.77.2-h2c6d0dc_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/s2n-1.4.12-h06160fa_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/scikit-learn-1.4.2-py312h394d371_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/scipy-1.13.0-py312heda63a1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/secretstorage-3.3.3-py312h7900ff3_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/send2trash-1.8.3-pyh0d859eb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.5.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/shapely-2.0.4-py312h9e6bd2c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/sip-6.7.12-py312h30efb56_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/snappy-1.2.0-hdb0a2a9_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/sniffio-1.3.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/sortedcontainers-2.4.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/soupsieve-2.5-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/spdlog-1.13.0-hd2e6256_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/sphobjinv-2.3.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/sqlite-3.45.3-h2c6b66d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/stack_data-0.6.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/suitesparse-5.10.1-h5a4f163_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/sysroot_linux-64-2.12-he073ed8_17.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tabulate-0.9.0-pyhd8ed1ab_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/tbb-2021.12.0-h00ab1b0_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tenacity-8.2.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/terminado-0.18.1-pyh0d859eb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.5.0-pyhc1e730c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/tiledb-2.22.0-h27f064a_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tinycss2-1.3.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h4845f30_101.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/tornado-6.4-py312h98912ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/traitlets-5.14.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.4.10-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/twine-5.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/types-python-dateutil-2.9.0.20240316-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240417-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.11.0-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.11.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_utils-0.1.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/tzcode-2024a-h3f72095_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/ucx-1.15.0-ha691c75_8.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/ukkonen-1.0.1-py312h8572e83_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/uri-template-1.3.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/uriparser-0.9.7-h59595ed_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.26.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/watchdog-4.0.0-py312h7900ff3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/wcwidth-0.2.13-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/webcolors-1.13-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/webencodings-0.5.1-pyhd8ed1ab_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/websocket-client-1.8.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/wrapt-1.16.0-py312h98912ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-0.4.0-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-image-0.4.0-h8ee46fc_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-keysyms-0.4.0-h8ee46fc_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-renderutil-0.3.9-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-wm-0.4.1-h8ee46fc_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xerces-c-3.2.5-hac6953d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xkeyboard-config-2.41-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-kbproto-1.0.7-h7f98852_1002.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libice-1.1.1-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libsm-1.2.4-h7391055_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libx11-1.8.9-h8ee46fc_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxau-1.0.11-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxdmcp-1.1.3-h7f98852_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxext-1.3.4-h0b41bf4_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxrender-0.9.11-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-renderproto-0.11.1-h7f98852_1002.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-xextproto-7.3.0-h0b41bf4_1003.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-xf86vidmodeproto-2.3.1-h7f98852_1002.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-xproto-7.0.31-h7f98852_1007.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xugrid-0.10.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2024.4.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xz-5.2.6-h166bdaf_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/yaml-0.2.5-h7f98852_2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/zeromq-4.3.5-h75354e8_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/zict-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/zlib-1.2.13-hd590300_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.5-hfc55251_0.conda
+ osx-64:
+ - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/anyio-4.3.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/appnope-0.1.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/argon2-cffi-23.1.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/argon2-cffi-bindings-21.2.0-py312h104f124_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/arrow-1.3.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/asttokens-2.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/astunparse-1.6.3-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/async-lru-2.0.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-23.2.0-pyh71513ae_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-auth-0.7.18-hb47d15a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-cal-0.6.11-hbce485b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-common-0.9.15-h10d778d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-compression-0.2.18-h53e3db5_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-event-stream-0.4.2-he461af8_8.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-http-0.8.1-h0afc28a_10.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-io-0.14.7-h6254544_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-mqtt-0.10.4-hd66502f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-s3-0.5.7-h5d4520e_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-sdkutils-0.1.15-h53e3db5_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-checksums-0.1.18-h53e3db5_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-crt-cpp-0.26.8-ha933895_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-sdk-cpp-1.11.267-h8dd24e3_7.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-core-cpp-1.11.1-hbb1e571_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-identity-cpp-1.6.0-h9a80fee_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-storage-blobs-cpp-12.10.0-h7728843_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-storage-common-cpp-12.5.0-h0e82ce4_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.14.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/backports-1.0-pyhd8ed1ab_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/backports.tarfile-1.0.0-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/beartype-0.18.5-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/beautifulsoup4-4.12.3-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/black-24.4.2-py312hb401068_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bleach-6.1.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/blosc-1.21.5-hafa3907_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-1.1.0-h0dc2134_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-bin-1.1.0-h0dc2134_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-python-1.1.0-py312heafc425_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/build-0.7.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/bzip2-1.0.8-h10d778d_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.28.1-h10d778d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/ca-certificates-2024.2.2-h8857fd0_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cached-property-1.5.2-hd8ed1ab_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cached_property-1.5.2-pyha770c72_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/cairo-1.18.0-h99e66fa_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/ceres-solver-2.2.0-haa0d064_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/cffi-1.16.0-py312h38bf5a0_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/cfitsio-4.4.0-h60fb419_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/cftime-1.6.3-py312h3f2338b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-unix_pyh707e725_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/cmarkgfm-0.8.0-py312h104f124_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/comm-0.2.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/contourpy-1.2.1-py312h9230928_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/coverage-7.5.0-py312h5fa3f64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/curl-8.7.1-h726d00d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/cytoolz-0.12.3-py312h41838bb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/dart-sass-1.58.3-h694c41f_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.14-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dataclasses-0.8-pyhc8e2a94_3.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/debugpy-1.8.1-py312hede676d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/decorator-5.1.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/defusedxml-0.7.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/deno-1.37.2-h51b076b_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/deno-dom-0.1.35-h08cba0f_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/distlib-0.3.8-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/docutils-0.21.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/draco-1.5.7-h7728843_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/eigen-3.4.0-h1c7c39f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/entrypoints-0.4-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/esbuild-0.19.2-h694c41f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.1.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/executing-2.0.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/exiv2-0.28.2-h239cba9_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/expat-2.6.2-h73e2aa4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.14.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/fiona-1.9.6-py312hc18349f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/fmt-10.2.1-h7728843_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-inconsolata-3.000-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-source-code-pro-2.038-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/fontconfig-2.14.2-h5bb23bf_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/fonttools-4.51.0-py312h41838bb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fqdn-1.5.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/freetype-2.12.1-h60636b9_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/freexl-2.0.0-h3ec172f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/future-1.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/gdal-3.8.5-py312ha261e76_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.4-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/geos-3.12.1-h93d8f39_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/geotiff-1.7.1-h7c2ff5c_16.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/gettext-0.22.5-h5ff76d1_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/gettext-tools-0.22.5-h5ff76d1_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/gflags-2.2.2-hb1e8313_1004.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/gh-2.49.0-h990441c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/giflib-5.2.2-h10d778d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/glib-2.80.0-h81c1438_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/glib-tools-2.80.0-h49a7eea_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/glog-0.7.0-h31b1b29_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/gmp-6.3.0-h73e2aa4_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/griffe-0.44.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/gsl-2.7-h93259b0_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/gst-plugins-base-1.24.1-h12dd0d4_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/gstreamer-1.24.1-h7c243d7_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/h11-0.14.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.1.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.24.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/hdf4-4.2.15-h8138101_7.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/hdf5-1.14.3-nompi_hb512a33_101.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.0.0-pyh9f0ad1d_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/httpcore-1.0.5-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/httplib2-0.22.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/httpx-0.27.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.0.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/icu-73.2-hf5e326d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.5.36-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.7-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-resources-6.4.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.4.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/ipykernel-6.29.3-pyh3cd1d5f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/ipython-8.22.2-pyh707e725_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/isoduration-20.11.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.classes-3.4.0-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.context-5.3.0-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.functools-4.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jedi-0.19.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/json-c-0.17-h8e11ae5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/json5-0.9.25-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/jsonpointer-2.4-py312hb401068_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.22.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2023.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-with-format-nongpl-4.22.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/juliaup-1.14.7-hf4330d5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter-lsp-2.2.5-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_client-8.6.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/jupyter_core-5.7.2-py312hb401068_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_events-0.10.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server-2.14.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server_terminals-0.5.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab-4.1.8-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_pygments-0.3.0-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_server-2.27.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/kealib-1.5.3-h5f07ac3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/keyring-25.2.0-pyh534df25_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/khronos-opencl-icd-loader-2023.04.17-hb7f2c08_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/kiwisolver-1.4.5-py312h49ebfd2_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/krb5-1.21.2-hb884880_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/laz-perf-3.4.0-h1c7c39f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/lcms2-2.16-ha2f27b4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/lerc-4.0.0-hb486fe8_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libabseil-20240116.2-cxx17_hc1bcbd7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libaec-1.1.3-h73e2aa4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libarchive-3.7.2-hd35d340_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-15.0.2-hfba3c4c_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-acero-15.0.2-ha0df490_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-dataset-15.0.2-ha0df490_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-15.0.2-h41520de_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-sql-15.0.2-hb2e0ddf_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-gandiva-15.0.2-h81ca85a_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-substrait-15.0.2-hb2e0ddf_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libasprintf-0.22.5-h5ff76d1_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libasprintf-devel-0.22.5-h5ff76d1_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libblas-3.9.0-22_osx64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libboost-headers-1.84.0-h694c41f_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlicommon-1.1.0-h0dc2134_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlidec-1.1.0-h0dc2134_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlienc-1.1.0-h0dc2134_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libcblas-3.9.0-22_osx64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libclang-cpp15-15.0.7-default_h7151d67_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libclang13-18.1.4-default_h0edc4dd_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libcrc32c-1.1.2-he49afe7_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.7.1-h726d00d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-16.0.6-hd57cbcb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libdeflate-1.20-h49d49c5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libedit-3.1.20191231-h0678c8f_2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libev-4.33-h10d778d_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libevent-2.1.12-ha90c15b_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libexpat-2.6.2-h73e2aa4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libffi-3.4.2-h0d85af4_5.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libgdal-3.8.5-h7db9259_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libgdal-arrow-parquet-3.8.5-h643b0ac_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libgettextpo-0.22.5-h5ff76d1_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libgettextpo-devel-0.22.5-h5ff76d1_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libgfortran-5.0.0-13_2_0_h97931a8_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libgfortran5-13.2.0-h2873a65_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libglib-2.80.0-h81c1438_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libgoogle-cloud-2.23.0-h651e89d_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libgoogle-cloud-storage-2.23.0-ha67e85c_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libgrpc-1.62.2-h384b2fc_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libhwloc-2.10.0-default_h1321489_1000.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libiconv-1.17-hd75f5a5_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libintl-0.22.5-h5ff76d1_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libintl-devel-0.22.5-h5ff76d1_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libjpeg-turbo-3.0.0-h0dc2134_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libkml-1.3.0-hab3ca0e_1018.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/liblapack-3.9.0-22_osx64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm14-14.0.6-hc8e404f_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm15-15.0.7-hbedff68_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm16-16.0.6-hbedff68_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm18-18.1.4-hbcf5fad_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libnetcdf-4.9.2-nompi_h7760872_113.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libnghttp2-1.58.0-h64cf6d3_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libogg-1.3.4-h35c211d_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libopenblas-0.3.27-openmp_hfef2a42_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libopus-1.3.1-hc929b4f_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libparquet-15.0.2-h7cd3cfe_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libpng-1.6.43-h92b6c6a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libpq-16.2-ha925e61_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libprotobuf-4.25.3-h4e4d658_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libre2-11-2023.09.01-h81f5012_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/librttopo-1.1.0-hf05f67e_15.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libsodium-1.0.18-hbcb3906_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libspatialindex-1.9.3-he49afe7_4.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libspatialite-5.1.0-h487bbac_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libsqlite-3.45.3-h92b6c6a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libssh2-1.11.0-hd019ec5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libtasn1-4.19.0-hb7f2c08_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libthrift-0.19.0-h064b379_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libtiff-4.6.0-h129831d_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libutf8proc-2.8.0-hb7f2c08_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libvorbis-1.3.7-h046ec9c_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libwebp-1.4.0-hc207709_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libwebp-base-1.4.0-h10d778d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libxcb-1.15-hb7f2c08_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libxml2-2.12.6-hc0ae0f7_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libxslt-1.1.39-h03b04e6_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libzip-1.10.1-hc158999_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libzlib-1.2.13-h8a1eda9_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-openmp-18.1.4-h2c61cee_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/llvmlite-0.42.0-py312h534208b_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/lxml-5.2.1-py312ha7aaddb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/lz4-4.3.3-py312h904eaf1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/lz4-c-1.9.4-hf0c8a7f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/lzo-2.10-h10d778d_1001.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/markdown-it-py-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/markupsafe-2.1.5-py312h41838bb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/matplotlib-3.8.4-py312hb401068_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/matplotlib-base-3.8.4-py312h1fe5000_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/matplotlib-inline-0.1.7-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mdurl-0.1.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/metis-5.1.0-he965462_1007.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/minizip-4.0.5-h37d7099_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mistune-3.0.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mock-5.1.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/more-itertools-10.2.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/mpfr-4.2.1-h4f6b447_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/msgpack-python-1.0.7-py312hbf0bb39_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/mypy-1.10.0-py312h5fa3f64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/mysql-common-8.3.0-hfd7a639_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/mysql-libs-8.3.0-ha9146f8_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/nbclient-0.10.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/nbconvert-core-7.16.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/nbformat-5.10.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.4.20240210-h73e2aa4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/nest-asyncio-1.6.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/netcdf4-1.6.5-nompi_py312hd4beaa4_100.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.3-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/nh3-0.2.17-py312h1b0e595_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/nitro-2.7.dev8-he965462_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.8.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/nose2-0.9.2-py_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/notebook-shim-0.2.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/nspr-4.35-hea0b92c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/nss-3.98-ha05da47_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/numba-0.59.1-py312h04e34b5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/numpy-1.26.4-py312he3a82b2_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/openjpeg-2.5.2-h7310d3a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.3.0-hd75f5a5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/orc-2.0.0-hf146577_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/overrides-7.7.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/owslib-0.30.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pandas-2.2.2-py312h83c8a23_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pandoc-3.1.11.1-h694c41f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandocfilters-1.5.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/parso-0.8.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pcre2-10.43-h0ad2156_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pdal-2.7.1-hacf74ca_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pep517-0.13.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pexpect-4.9.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pickleshare-0.7.5-py_1003.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pillow-10.3.0-py312h0c923fa_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pixman-0.43.4-h73e2aa4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pkginfo-1.10.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pkgutil-resolve-name-1.3.10-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/plotly-5.21.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.5.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/plum-dispatch-2.3.5-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/ply-3.11-pyhd8ed1ab_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/poppler-24.04.0-h0face88_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/postgresql-16.2-h06f2bd8_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-3.7.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/proj-9.4.0-h23b96cc_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/prometheus_client-0.20.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/prompt-toolkit-3.0.42-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/psutil-5.9.8-py312h41838bb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/psycopg2-2.9.9-py312hca9e88b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pthread-stubs-0.4-hc929b4f_1001.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/ptyprocess-0.7.0-pyhd3deb0d_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pure_eval-0.2.2-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pyarrow-15.0.2-py312h3db2695_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.22-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.7.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pydantic-core-2.18.2-py312h5b0d100_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.17.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pyobjc-core-10.2-py312h74abf1d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pyobjc-framework-cocoa-10.2-py312h74abf1d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pyogrio-0.7.2-py312h3aaa50d_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pyproj-3.6.1-py312h91094b2_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pyqt-5.15.9-py312hd74d816_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyqt-stubs-5.15.6.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pyqt5-sip-12.12.2-py312he36337a_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pyqtwebkit-5.15.9-py312h5ae8335_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.2.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/python-3.12.3-h1411813_0_cpython.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-fastjsonschema-2.19.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-json-logger-2.0.7-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/python_abi-3.12-4_cp312.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pyyaml-6.0.1-py312h104f124_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pyzmq-26.0.2-py312h18237bf_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/qca-2.3.8-h3036dd7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/qgis-3.34.5-py312ha2382e3_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/qgis-plugin-manager-1.6.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/qhull-2020.2-h940c156_2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/qjson-0.9.0-hed3eaa1_1009.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/qscintilla2-2.14.1-py312h12cbc42_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/qt-main-5.15.8-hecaf5c3_21.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/qtkeychain-0.14.2-had6348c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/qtwebkit-5.212-h3b777d0_16.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/quarto-1.4.550-h694c41f_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/quartodoc-0.7.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/qwt-6.2.0-hed3eaa1_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/re2-2023.09.01-hb168e87_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/readline-8.2-h9e318b2_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/readme_renderer-42.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/referencing-0.35.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/requests-toolbelt-1.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3339-validator-0.1.4-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-2.0.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-validator-0.1.1-pyh9f0ad1d_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/rich-13.7.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/rpds-py-0.18.0-py312h1b0e595_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/rtree-1.2.0-py312h8974cf7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/ruff-0.4.2-py312h5f1bdda_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/rust-1.77.2-h7e1429e_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/rust-std-x86_64-apple-darwin-1.77.2-h38e4360_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/scikit-learn-1.4.2-py312h7167a34_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/scipy-1.13.0-py312h8adb940_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/send2trash-1.8.3-pyh31c8845_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.5.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/shapely-2.0.4-py312h8fb43f9_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/sip-6.7.12-py312h444b7ae_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/snappy-1.2.0-h6dc393e_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/sniffio-1.3.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/sortedcontainers-2.4.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/soupsieve-2.5-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/spdlog-1.13.0-h1a4aec9_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/sphobjinv-2.3.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/sqlite-3.45.3-h7461747_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/stack_data-0.6.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/suitesparse-5.10.1-h4bf45ed_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tabulate-0.9.0-pyhd8ed1ab_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/tbb-2021.12.0-h7728843_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tenacity-8.2.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/terminado-0.18.1-pyh31c8845_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.5.0-pyhc1e730c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/tiledb-2.22.0-hf5f2543_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tinycss2-1.3.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-h1abcd95_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/tornado-6.4-py312h41838bb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/traitlets-5.14.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.4.10-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/twine-5.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/types-python-dateutil-2.9.0.20240316-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240417-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.11.0-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.11.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_utils-0.1.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/tzcode-2024a-h10d778d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/ukkonen-1.0.1-py312h49ebfd2_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/uri-template-1.3.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/uriparser-0.9.7-he965462_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.26.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/watchdog-4.0.0-py312hc2c2f20_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/wcwidth-0.2.13-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/webcolors-1.13-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/webencodings-0.5.1-pyhd8ed1ab_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/websocket-client-1.8.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/wrapt-1.16.0-py312h41838bb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/xerces-c-3.2.5-hbbe9ea5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/xorg-libxau-1.0.11-h0dc2134_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/xorg-libxdmcp-1.1.3-h35c211d_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xugrid-0.10.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2024.4.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/xz-5.2.6-h775f41a_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/yaml-0.2.5-h0d85af4_2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/zeromq-4.3.5-h8d87b8b_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/zict-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/zlib-1.2.13-h8a1eda9_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/zstd-1.5.5-h829000d_0.conda
+ osx-arm64:
+ - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/anyio-4.3.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/appnope-0.1.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/argon2-cffi-23.1.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/argon2-cffi-bindings-21.2.0-py312h02f2b3b_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/arrow-1.3.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/asttokens-2.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/astunparse-1.6.3-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/async-lru-2.0.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-23.2.0-pyh71513ae_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-auth-0.7.18-h382b9c6_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-cal-0.6.11-hd34e5fa_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-common-0.9.15-h93a5062_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-compression-0.2.18-hd34e5fa_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-event-stream-0.4.2-h247c08a_8.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-http-0.8.1-hf9e830b_10.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-io-0.14.7-h33d81b3_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-mqtt-0.10.4-h5f4abda_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-s3-0.5.7-h7644b7e_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-sdkutils-0.1.15-hd34e5fa_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-checksums-0.1.18-hd34e5fa_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-crt-cpp-0.26.8-h7541583_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-sdk-cpp-1.11.267-h18943f6_7.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-core-cpp-1.11.1-he231e37_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-identity-cpp-1.6.0-hd1853d3_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-storage-blobs-cpp-12.10.0-h2ffa867_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-storage-common-cpp-12.5.0-h09a5875_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.14.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/backports-1.0-pyhd8ed1ab_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/backports.tarfile-1.0.0-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/beartype-0.18.5-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/beautifulsoup4-4.12.3-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/black-24.4.2-py312h81bd7bf_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bleach-6.1.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/blosc-1.21.5-h9c252e8_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-1.1.0-hb547adb_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-bin-1.1.0-hb547adb_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-python-1.1.0-py312h9f69965_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/build-0.7.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-h93a5062_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.28.1-h93a5062_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ca-certificates-2024.2.2-hf0a4a13_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cached-property-1.5.2-hd8ed1ab_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cached_property-1.5.2-pyha770c72_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cairo-1.18.0-hd1e100b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ceres-solver-2.2.0-h036b7f2_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cffi-1.16.0-py312h8e38eb3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cfitsio-4.4.0-h808cd33_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cftime-1.6.3-py312hf635c46_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-unix_pyh707e725_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cmarkgfm-0.8.0-py312h02f2b3b_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/comm-0.2.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/contourpy-1.2.1-py312h0fef576_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/coverage-7.5.0-py312h4a164c9_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/curl-8.7.1-h2d989ff_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cytoolz-0.12.3-py312he37b823_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/dart-sass-1.58.3-hce30654_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.14-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dataclasses-0.8-pyhc8e2a94_3.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/debugpy-1.8.1-py312h20a0b95_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/decorator-5.1.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/defusedxml-0.7.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/deno-1.37.2-hce30654_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/deno-dom-0.1.35-hb9e0d3b_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/distlib-0.3.8-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/docutils-0.21.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/draco-1.5.7-h2ffa867_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/eigen-3.4.0-h1995070_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/entrypoints-0.4-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/esbuild-0.19.2-hce30654_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.1.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/executing-2.0.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/exiv2-0.28.2-h193c0af_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/expat-2.6.2-hebf3989_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.14.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fiona-1.9.6-py312hd158ed5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fmt-10.2.1-h2ffa867_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-inconsolata-3.000-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-source-code-pro-2.038-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fontconfig-2.14.2-h82840c6_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fonttools-4.51.0-py312he37b823_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fqdn-1.5.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/freetype-2.12.1-hadb7bae_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/freexl-2.0.0-hfbad9fb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/future-1.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gdal-3.8.5-py312hb48d578_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.4-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/geos-3.12.1-h965bd2d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/geotiff-1.7.1-h6e650f3_16.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gettext-0.22.5-h8fbad5d_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gettext-tools-0.22.5-h8fbad5d_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gflags-2.2.2-hc88da5d_1004.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gh-2.49.0-h75b854d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/giflib-5.2.2-h93a5062_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/glib-2.80.0-hfc324ee_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/glib-tools-2.80.0-hb9a4d99_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/glog-0.7.0-hc6770e3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gmp-6.3.0-hebf3989_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/griffe-0.44.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gsl-2.7-h6e638da_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gst-plugins-base-1.24.1-h09b4b5e_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gstreamer-1.24.1-h551c6ff_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/h11-0.14.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.1.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.24.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/hdf4-4.2.15-h2ee6834_7.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/hdf5-1.14.3-nompi_h751145d_101.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.0.0-pyh9f0ad1d_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/httpcore-1.0.5-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/httplib2-0.22.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/httpx-0.27.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.0.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-73.2-hc8870d7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.5.36-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.7-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-resources-6.4.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.4.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/ipykernel-6.29.3-pyh3cd1d5f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/ipython-8.22.2-pyh707e725_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/isoduration-20.11.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.classes-3.4.0-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.context-5.3.0-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.functools-4.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jedi-0.19.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/json-c-0.17-h40ed0f5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/json5-0.9.25-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/jsonpointer-2.4-py312h81bd7bf_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.22.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2023.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-with-format-nongpl-4.22.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/juliaup-1.14.7-h67a62a2_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter-lsp-2.2.5-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_client-8.6.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/jupyter_core-5.7.2-py312h81bd7bf_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_events-0.10.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server-2.14.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server_terminals-0.5.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab-4.1.8-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_pygments-0.3.0-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_server-2.27.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/kealib-1.5.3-h210d843_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/keyring-25.2.0-pyh534df25_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/khronos-opencl-icd-loader-2023.04.17-h1a8c8d9_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/kiwisolver-1.4.5-py312h389731b_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.21.2-h92f50d5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/laz-perf-3.4.0-h1995070_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lcms2-2.16-ha0e7c42_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lerc-4.0.0-h9a09cb3_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libabseil-20240116.2-cxx17_hebf3989_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libaec-1.1.3-hebf3989_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarchive-3.7.2-hcacb583_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-15.0.2-hea125af_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-acero-15.0.2-h3f3aa29_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-dataset-15.0.2-h3f3aa29_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-15.0.2-h224147a_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-sql-15.0.2-hb630850_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-gandiva-15.0.2-h3b9069c_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-substrait-15.0.2-hd92e347_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libasprintf-0.22.5-h8fbad5d_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libasprintf-devel-0.22.5-h8fbad5d_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libblas-3.9.0-22_osxarm64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libboost-headers-1.84.0-hce30654_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlicommon-1.1.0-hb547adb_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlidec-1.1.0-hb547adb_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlienc-1.1.0-hb547adb_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcblas-3.9.0-22_osxarm64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang-cpp15-15.0.7-default_he012953_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang13-18.1.4-default_h83d0a53_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcrc32c-1.1.2-hbdafb3b_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.7.1-h2d989ff_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-16.0.6-h4653b0c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libdeflate-1.20-h93a5062_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libedit-3.1.20191231-hc8eb9b7_2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libev-4.33-h93a5062_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libevent-2.1.12-h2757513_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.6.2-hebf3989_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libffi-3.4.2-h3422bc3_5.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgdal-3.8.5-h2f7ae65_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgdal-arrow-parquet-3.8.5-h391a133_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgettextpo-0.22.5-h8fbad5d_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgettextpo-devel-0.22.5-h8fbad5d_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgfortran-5.0.0-13_2_0_hd922786_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgfortran5-13.2.0-hf226fd6_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libglib-2.80.0-hfc324ee_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgoogle-cloud-2.23.0-hbebe991_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgoogle-cloud-storage-2.23.0-h8a76758_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgrpc-1.62.2-h9c18a4f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libhwloc-2.10.0-default_h52d8fe8_1000.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libiconv-1.17-h0d3ecfb_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libintl-0.22.5-h8fbad5d_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libintl-devel-0.22.5-h8fbad5d_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libjpeg-turbo-3.0.0-hb547adb_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libkml-1.3.0-h1eb4d9f_1018.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblapack-3.9.0-22_osxarm64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm14-14.0.6-hd1a9a77_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm15-15.0.7-h2621b3d_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm16-16.0.6-haab561b_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm18-18.1.4-h30cc82d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnetcdf-4.9.2-nompi_h291a7c2_113.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnghttp2-1.58.0-ha4dd798_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libogg-1.3.4-h27ca646_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libopenblas-0.3.27-openmp_h6c19121_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libopus-1.3.1-h27ca646_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libparquet-15.0.2-h5304c63_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libpng-1.6.43-h091b4b1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libpq-16.2-h0f8b458_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libprotobuf-4.25.3-hbfab5d5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libre2-11-2023.09.01-h7b2c953_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/librttopo-1.1.0-hc8f776e_15.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsodium-1.0.18-h27ca646_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libspatialindex-1.9.3-hbdafb3b_4.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libspatialite-5.1.0-h77c30ab_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.45.3-h091b4b1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libssh2-1.11.0-h7a5bd25_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libtasn1-4.19.0-h1a8c8d9_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libthrift-0.19.0-h026a170_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libtiff-4.6.0-h07db509_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libutf8proc-2.8.0-h1a8c8d9_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libvorbis-1.3.7-h9f76cd9_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libwebp-1.4.0-h54798ee_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libwebp-base-1.4.0-h93a5062_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxcb-1.15-hf346824_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-2.12.6-h0d0cfa8_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxslt-1.1.39-h223e5b9_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzip-1.10.1-ha0bc3c6_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzlib-1.2.13-h53f4e23_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-openmp-18.1.4-hbf6887a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvmlite-0.42.0-py312h17030e7_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lxml-5.2.1-py312h8f698c5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lz4-4.3.3-py312haed5471_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lz4-c-1.9.4-hb7217d7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lzo-2.10-h93a5062_1001.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/markdown-it-py-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/markupsafe-2.1.5-py312he37b823_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/matplotlib-3.8.4-py312h1f38498_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/matplotlib-base-3.8.4-py312ha6faf65_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/matplotlib-inline-0.1.7-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mdurl-0.1.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/metis-5.1.0-h13dd4ca_1007.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/minizip-4.0.5-hc35e051_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mistune-3.0.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mock-5.1.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/more-itertools-10.2.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/mpfr-4.2.1-h41d338b_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/msgpack-python-1.0.7-py312h76e736e_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/mypy-1.10.0-py312h4a164c9_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/mysql-common-8.3.0-hd1853d3_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/mysql-libs-8.3.0-hf036fc4_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/nbclient-0.10.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/nbconvert-core-7.16.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/nbformat-5.10.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.4.20240210-h078ce10_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/nest-asyncio-1.6.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/netcdf4-1.6.5-nompi_py312h9035142_100.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.3-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nh3-0.2.17-py312h5280bc4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nitro-2.7.dev8-h13dd4ca_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.8.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/nose2-0.9.2-py_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/notebook-shim-0.2.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nspr-4.35-hb7217d7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nss-3.98-h5ce2875_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numba-0.59.1-py312hbaff935_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numpy-1.26.4-py312h8442bc7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openjpeg-2.5.2-h9f1df11_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.3.0-h0d3ecfb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/orc-2.0.0-h4aad248_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/overrides-7.7.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/owslib-0.30.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pandas-2.2.2-py312h88edd18_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pandoc-3.1.11.1-hce30654_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandocfilters-1.5.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/parso-0.8.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pcre2-10.43-h26f9a81_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pdal-2.7.1-hfa75dc8_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pep517-0.13.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pexpect-4.9.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pickleshare-0.7.5-py_1003.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pillow-10.3.0-py312h8a801b1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pixman-0.43.4-hebf3989_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pkginfo-1.10.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pkgutil-resolve-name-1.3.10-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/plotly-5.21.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.5.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/plum-dispatch-2.3.5-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/ply-3.11-pyhd8ed1ab_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/poppler-24.04.0-h42742f0_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/postgresql-16.2-hf829917_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-3.7.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/proj-9.4.0-h52fb9d0_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/prometheus_client-0.20.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/prompt-toolkit-3.0.42-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/psutil-5.9.8-py312he37b823_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/psycopg2-2.9.9-py312h84485f8_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pthread-stubs-0.4-h27ca646_1001.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/ptyprocess-0.7.0-pyhd3deb0d_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pure_eval-0.2.2-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyarrow-15.0.2-py312hbf1f86f_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.22-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.7.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pydantic-core-2.18.2-py312hbdaf6d9_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.17.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyobjc-core-10.2-py312h9d22092_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyobjc-framework-cocoa-10.2-py312h9d22092_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyogrio-0.7.2-py312hfe67d44_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyproj-3.6.1-py312h71aa0db_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyqt-5.15.9-py312h550cae4_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyqt-stubs-5.15.6.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyqt5-sip-12.12.2-py312h9f69965_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyqtwebkit-5.15.9-py312h14105d7_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.2.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.12.3-h4a7b5fc_0_cpython.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-fastjsonschema-2.19.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-json-logger-2.0.7-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python_abi-3.12-4_cp312.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyyaml-6.0.1-py312h02f2b3b_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyzmq-26.0.2-py312h99b2490_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qca-2.3.8-hbd3fef1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qgis-3.34.5-py312h845c666_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/qgis-plugin-manager-1.6.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qhull-2020.2-hc021e02_2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qjson-0.9.0-haa19703_1009.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qscintilla2-2.14.1-py312h14105d7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qt-main-5.15.8-hf679f28_21.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qtkeychain-0.14.2-h50bd4b1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qtwebkit-5.212-ha51050e_16.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/quarto-1.4.550-hce30654_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/quartodoc-0.7.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qwt-6.2.0-haa19703_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/re2-2023.09.01-h4cba328_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/readline-8.2-h92ec313_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/readme_renderer-42.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/referencing-0.35.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/requests-toolbelt-1.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3339-validator-0.1.4-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-2.0.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-validator-0.1.1-pyh9f0ad1d_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/rich-13.7.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/rpds-py-0.18.0-py312h77200ec_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/rtree-1.2.0-py312h22f7183_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ruff-0.4.2-py312h0ce8374_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/rust-1.77.2-h4ff7c5d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/rust-std-aarch64-apple-darwin-1.77.2-hf6ec828_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/scikit-learn-1.4.2-py312hd4306f4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/scipy-1.13.0-py312h9d7df2b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/send2trash-1.8.3-pyh31c8845_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.5.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/shapely-2.0.4-py312h04e4829_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sip-6.7.12-py312h650e478_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/snappy-1.2.0-hd04f947_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/sniffio-1.3.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/sortedcontainers-2.4.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/soupsieve-2.5-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/spdlog-1.13.0-h5fcca99_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/sphobjinv-2.3.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sqlite-3.45.3-hf2abe2d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/stack_data-0.6.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/suitesparse-5.10.1-h79486c6_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tabulate-0.9.0-pyhd8ed1ab_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tbb-2021.12.0-h2ffa867_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tenacity-8.2.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/terminado-0.18.1-pyh31c8845_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.5.0-pyhc1e730c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tiledb-2.22.0-hf0716ca_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tinycss2-1.3.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h5083fa2_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tornado-6.4-py312he37b823_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/traitlets-5.14.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.4.10-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/twine-5.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/types-python-dateutil-2.9.0.20240316-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240417-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.11.0-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.11.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_utils-0.1.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tzcode-2024a-h93a5062_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ukkonen-1.0.1-py312h389731b_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/uri-template-1.3.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/uriparser-0.9.7-h13dd4ca_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.26.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/watchdog-4.0.0-py312he37b823_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/wcwidth-0.2.13-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/webcolors-1.13-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/webencodings-0.5.1-pyhd8ed1ab_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/websocket-client-1.8.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/wrapt-1.16.0-py312he37b823_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xerces-c-3.2.5-hf393695_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xorg-libxau-1.0.11-hb547adb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xorg-libxdmcp-1.1.3-h27ca646_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xugrid-0.10.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2024.4.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xz-5.2.6-h57fd34a_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/yaml-0.2.5-h3422bc3_2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zeromq-4.3.5-h5119023_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/zict-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zlib-1.2.13-h53f4e23_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.5-h4f39d0f_0.conda
+ win-64:
+ - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/anyio-4.3.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/argon2-cffi-23.1.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/argon2-cffi-bindings-21.2.0-py312he70551f_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/arrow-1.3.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/asttokens-2.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/astunparse-1.6.3-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/async-lru-2.0.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-23.2.0-pyh71513ae_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-auth-0.7.18-hba7c1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-cal-0.6.11-ha21e00f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-common-0.9.15-hcfcfb64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-compression-0.2.18-ha21e00f_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-event-stream-0.4.2-hf668b60_8.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-http-0.8.1-hd704247_10.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-io-0.14.7-h14865c8_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-mqtt-0.10.4-h748201e_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-s3-0.5.7-h0ac6cc1_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-sdkutils-0.1.15-ha21e00f_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-checksums-0.1.18-ha21e00f_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-crt-cpp-0.26.8-h2199128_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-sdk-cpp-1.11.267-h3f4ca61_7.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/azure-core-cpp-1.11.1-h249a519_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/azure-identity-cpp-1.6.0-h91493d7_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/azure-storage-blobs-cpp-12.10.0-h91493d7_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/azure-storage-common-cpp-12.5.0-h91493d7_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.14.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/backports-1.0-pyhd8ed1ab_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/backports.tarfile-1.0.0-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/beartype-0.18.5-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/beautifulsoup4-4.12.3-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/black-24.4.2-py312h2e8e312_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/blas-2.122-openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/blas-devel-3.9.0-22_win64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bleach-6.1.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/blosc-1.21.5-hbd69f2e_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-1.1.0-hcfcfb64_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-bin-1.1.0-hcfcfb64_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-python-1.1.0-py312h53d5487_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/build-0.7.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/bzip2-1.0.8-hcfcfb64_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/c-ares-1.28.1-hcfcfb64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/ca-certificates-2024.2.2-h56e8100_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cached-property-1.5.2-hd8ed1ab_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cached_property-1.5.2-pyha770c72_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/cairo-1.18.0-h1fef639_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/ceres-solver-2.2.0-h459d6aa_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/cffi-1.16.0-py312he70551f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/cfitsio-4.4.0-h9b0cee5_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/cftime-1.6.3-py312ha90f08f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-win_pyh7428d3b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/cmarkgfm-0.8.0-py312he70551f_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/comm-0.2.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/contourpy-1.2.1-py312h0d7def4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/coverage-7.5.0-py312h4389bb4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/curl-8.7.1-hd5e4a3a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/cytoolz-0.12.3-py312he70551f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/dart-sass-1.58.3-h57928b3_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.14-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dataclasses-0.8-pyhc8e2a94_3.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/debugpy-1.8.1-py312h53d5487_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/decorator-5.1.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/defusedxml-0.7.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/deno-1.37.2-hc8b987e_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/deno-dom-0.1.35-h8b8d39b_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/distlib-0.3.8-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/docutils-0.21.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/draco-1.5.7-h181d51b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/eigen-3.4.0-h91493d7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/entrypoints-0.4-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/esbuild-0.19.2-h57928b3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.1.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/executing-2.0.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/exiv2-0.28.2-hadc2d18_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/expat-2.6.2-h63175ca_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.14.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/fiona-1.9.6-py312h95cbb4d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/fmt-10.2.1-h181d51b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-inconsolata-3.000-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-source-code-pro-2.038-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/fontconfig-2.14.2-hbde0cde_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/fonttools-4.51.0-py312he70551f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fqdn-1.5.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/freetype-2.12.1-hdaf720e_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/freexl-2.0.0-h8276f4a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/future-1.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/gdal-3.8.5-py312hea5013e_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.4-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/geos-3.12.1-h1537add_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/geotiff-1.7.1-hed9d743_16.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/gflags-2.2.2-ha925a31_1004.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/gh-2.49.0-hd02998f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/glib-2.80.0-h39d0aa6_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/glib-tools-2.80.0-h0a98069_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/glog-0.7.0-h9cd36e5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/griffe-0.44.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/gsl-2.7-hdfb1a43_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/gst-plugins-base-1.24.1-h001b923_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/gstreamer-1.24.1-hb4038d2_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/h11-0.14.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.1.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.24.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/hdf4-4.2.15-h5557f11_7.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/hdf5-1.14.3-nompi_h73e8ff5_101.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.0.0-pyh9f0ad1d_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/httpcore-1.0.5-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/httplib2-0.22.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/httpx-0.27.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.0.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/icu-73.2-h63175ca_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.5.36-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.7-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-resources-6.4.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.4.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/intel-openmp-2024.1.0-h57928b3_965.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/ipykernel-6.29.3-pyha63f2e9_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/ipython-8.22.2-pyh7428d3b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/isoduration-20.11.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.classes-3.4.0-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.context-5.3.0-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.functools-4.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jedi-0.19.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/json5-0.9.25-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/jsonpointer-2.4-py312h2e8e312_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.22.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2023.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-with-format-nongpl-4.22.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/juliaup-1.14.7-h975169c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter-lsp-2.2.5-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_client-8.6.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/jupyter_core-5.7.2-py312h2e8e312_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_events-0.10.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server-2.14.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server_terminals-0.5.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab-4.1.8-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_pygments-0.3.0-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_server-2.27.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/kealib-1.5.3-hd248416_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/keyring-25.2.0-pyh7428d3b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/khronos-opencl-icd-loader-2023.04.17-h64bf75a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/kiwisolver-1.4.5-py312h0d7def4_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.21.2-heb0366b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/laz-perf-3.4.0-h91493d7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/lcms2-2.16-h67d730c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/lerc-4.0.0-h63175ca_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libabseil-20240116.2-cxx17_h63175ca_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libaec-1.1.3-h63175ca_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libarchive-3.7.2-h313118b_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-15.0.2-he3d97d8_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-acero-15.0.2-he0c23c2_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-dataset-15.0.2-he0c23c2_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-15.0.2-ha7f4a34_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-sql-15.0.2-hdeef14f_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-gandiva-15.0.2-hd4515a1_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-substrait-15.0.2-h1f0e801_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libblas-3.9.0-22_win64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libboost-headers-1.84.0-h57928b3_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlicommon-1.1.0-hcfcfb64_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlidec-1.1.0-hcfcfb64_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlienc-1.1.0-hcfcfb64_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libcblas-3.9.0-22_win64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libclang13-18.1.4-default_hf64faad_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libcrc32c-1.1.2-h0e60522_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.7.1-hd5e4a3a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libdeflate-1.20-hcfcfb64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libevent-2.1.12-h3671451_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.6.2-h63175ca_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.4.2-h8ffe710_5.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libflang-5.0.0-h6538335_20180525.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libgdal-3.8.5-hfb9f81c_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libgdal-arrow-parquet-3.8.5-h8dcb0d4_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libglib-2.80.0-h39d0aa6_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libgoogle-cloud-2.23.0-h68df31e_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libgoogle-cloud-storage-2.23.0-hb581fae_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libgrpc-1.62.2-h5273850_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libhwloc-2.10.0-default_h2fffb23_1000.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libiconv-1.17-hcfcfb64_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libintl-0.22.5-h5728263_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libintl-devel-0.22.5-h5728263_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libjpeg-turbo-3.0.0-hcfcfb64_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libkml-1.3.0-haf3e7a6_1018.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/liblapack-3.9.0-22_win64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/liblapacke-3.9.0-22_win64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libnetcdf-4.9.2-nompi_h07c049d_113.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libogg-1.3.4-h8ffe710_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libopenblas-0.3.27-pthreads_hc140b1d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libparquet-15.0.2-h178134c_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libpng-1.6.43-h19919ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libpq-16.2-hdb24f17_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libprotobuf-4.25.3-h503648d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libre2-11-2023.09.01-hf8d8778_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/librttopo-1.1.0-h94c4f80_15.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libsodium-1.0.18-h8d14728_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libspatialindex-1.9.3-h39d44d4_4.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libspatialite-5.1.0-hf13de1f_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.45.3-hcfcfb64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libssh2-1.11.0-h7dfc565_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libthrift-0.19.0-ha2b3283_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libtiff-4.6.0-hddb2be6_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libutf8proc-2.8.0-h82a8f57_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libvorbis-1.3.7-h0e60522_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libwebp-1.4.0-h2466b09_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libwebp-base-1.4.0-hcfcfb64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libxcb-1.15-hcd874cb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libxml2-2.12.6-hc3477c8_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libxslt-1.1.39-h3df6e99_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libzip-1.10.1-h1d365fa_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libzlib-1.2.13-hcfcfb64_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/llvm-meta-5.0.0-0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/llvmlite-0.42.0-py312h7894644_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/lxml-5.2.1-py312h56c7e3b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/lz4-4.3.3-py312h594ca44_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/lz4-c-1.9.4-hcfcfb64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/lzo-2.10-hcfcfb64_1001.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-gcc-libgfortran-5.3.0-6.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-gcc-libs-5.3.0-7.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-gcc-libs-core-5.3.0-7.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-gmp-6.1.0-2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-libwinpthread-git-5.0.0.4634.697f757-2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/markdown-it-py-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/markupsafe-2.1.5-py312he70551f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/matplotlib-3.8.4-py312h2e8e312_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/matplotlib-base-3.8.4-py312h26ecaf7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/matplotlib-inline-0.1.7-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mdurl-0.1.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/minizip-4.0.5-h5bed578_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mistune-3.0.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/mkl-2024.1.0-h66d3029_693.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mock-5.1.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/more-itertools-10.2.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/msgpack-python-1.0.7-py312h0d7def4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/msys2-conda-epoch-20160418-1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/mypy-1.10.0-py312h4389bb4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/nbclient-0.10.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/nbconvert-core-7.16.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/nbformat-5.10.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/nest-asyncio-1.6.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/netcdf4-1.6.5-nompi_py312he4da9c3_100.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.3-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/nh3-0.2.17-py312h426fad5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/nitro-2.7.dev8-h1537add_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.8.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/nose2-0.9.2-py_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/notebook-shim-0.2.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/numba-0.59.1-py312h115d327_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/numpy-1.26.4-py312h8753938_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/openblas-0.3.27-pthreads_h3721920_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/openjpeg-2.5.2-h3d672ee_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/openmp-5.0.0-vc14_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.3.0-hcfcfb64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/orc-2.0.0-h7e885a9_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/overrides-7.7.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/owslib-0.30.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pandas-2.2.2-py312h2ab9e98_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pandoc-3.1.11.1-h57928b3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandocfilters-1.5.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/parso-0.8.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pcre2-10.43-h17e33f8_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pdal-2.7.1-h78909d1_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pep517-0.13.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pickleshare-0.7.5-py_1003.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pillow-10.3.0-py312h6f6a607_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pixman-0.43.4-h63175ca_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pkginfo-1.10.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pkgutil-resolve-name-1.3.10-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/plotly-5.21.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.5.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/plum-dispatch-2.3.5-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/ply-3.11-pyhd8ed1ab_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/poppler-24.04.0-h747fd5a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/postgresql-16.2-h94c9ec1_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-3.7.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/proj-9.4.0-he13c7e8_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/prometheus_client-0.20.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/prompt-toolkit-3.0.42-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/psutil-5.9.8-py312he70551f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/psycopg2-2.9.9-py312hf50bb3c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pthread-stubs-0.4-hcd874cb_1001.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pthreads-win32-2.9.1-hfa6e2cd_3.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pure_eval-0.2.2-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pyarrow-15.0.2-py312h4af9903_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.22-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.7.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pydantic-core-2.18.2-py312h2615798_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.17.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pyogrio-0.7.2-py312he3b4e22_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pyproj-3.6.1-py312h616b599_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pyqt-5.15.9-py312he09f080_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyqt-stubs-5.15.6.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pyqt5-sip-12.12.2-py312h53d5487_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pyqtwebkit-5.15.9-py312hca0710b_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyh0701188_6.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.2.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.12.3-h2628c8c_0_cpython.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-fastjsonschema-2.19.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-json-logger-2.0.7-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/python_abi-3.12-4_cp312.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pywin32-306-py312h53d5487_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pywin32-ctypes-0.2.2-py312h2e8e312_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pywinpty-2.0.13-py312h53d5487_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pyyaml-6.0.1-py312he70551f_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pyzmq-26.0.2-py312hd7027bb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/qca-2.3.8-h2624d1c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/qgis-3.34.5-py312hdab107f_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/qgis-plugin-manager-1.6.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/qhull-2020.2-h70d2c02_2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/qjson-0.9.0-h04a78d6_1009.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/qscintilla2-2.14.1-py312hca0710b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/qt-main-5.15.8-hcef0176_21.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/qtkeychain-0.14.2-h04a78d6_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/qtwebkit-5.212-h4d8ddc9_16.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/quarto-1.4.550-h57928b3_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/quartodoc-0.7.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/qwt-6.2.0-h07be427_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/re2-2023.09.01-hd3b24a8_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/readme_renderer-42.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/referencing-0.35.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/requests-toolbelt-1.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3339-validator-0.1.4-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-2.0.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-validator-0.1.1-pyh9f0ad1d_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/rich-13.7.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/rpds-py-0.18.0-py312hfccd98a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/rtree-1.2.0-py312h72b5f30_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/ruff-0.4.2-py312h7a6832a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/rust-1.77.2-hf8d6059_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/rust-std-x86_64-pc-windows-msvc-1.77.2-h17fc481_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/scikit-learn-1.4.2-py312hcacafb1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/scipy-1.13.0-py312h8753938_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/send2trash-1.8.3-pyh5737063_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.5.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/shapely-2.0.4-py312h7d70906_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/sip-6.7.12-py312h53d5487_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/snappy-1.2.0-hfb803bf_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/sniffio-1.3.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/sortedcontainers-2.4.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/soupsieve-2.5-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/spdlog-1.13.0-h64d2f7d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/sphobjinv-2.3.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/sqlite-3.45.3-hcfcfb64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/stack_data-0.6.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/suitesparse-5.4.0-h5d0cbe0_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tabulate-0.9.0-pyhd8ed1ab_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/tbb-2021.12.0-h91493d7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tenacity-8.2.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/terminado-0.18.1-pyh5737063_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.5.0-pyhc1e730c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/tiledb-2.22.0-h5657395_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tinycss2-1.3.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h5226925_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/tornado-6.4-py312he70551f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/traitlets-5.14.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.4.10-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/twine-5.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/types-python-dateutil-2.9.0.20240316-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240417-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.11.0-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.11.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_utils-0.1.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/ucrt-10.0.22621.0-h57928b3_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/ukkonen-1.0.1-py312h0d7def4_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/uri-template-1.3.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/uriparser-0.9.7-h1537add_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-hcf57466_18.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.38.33130-h82b7239_18.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.26.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/vs2015_runtime-14.38.33130-hcb4865c_18.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/watchdog-4.0.0-py312h2e8e312_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/wcwidth-0.2.13-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/webcolors-1.13-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/webencodings-0.5.1-pyhd8ed1ab_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/websocket-client-1.8.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/win_inet_pton-1.1.0-pyhd8ed1ab_6.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/winpty-0.4.3-4.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/wrapt-1.16.0-py312he70551f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/xerces-c-3.2.5-h63175ca_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/xorg-libxau-1.0.11-hcd874cb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/xorg-libxdmcp-1.1.3-hcd874cb_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xugrid-0.10.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2024.4.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/xz-5.2.6-h8d14728_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/yaml-0.2.5-h8ffe710_2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/zeromq-4.3.5-he0c23c2_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/zict-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/zlib-1.2.13-hcfcfb64_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/zstd-1.5.5-h12be248_0.conda
+ py310:
+ channels:
+ - url: https://conda.anaconda.org/conda-forge/
+ packages:
+ linux-64:
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/alsa-lib-1.2.11-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/attr-2.5.1-h166bdaf_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-23.2.0-pyh71513ae_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-auth-0.7.18-he0b1f16_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-cal-0.6.11-heb1d5e4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-common-0.9.15-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-compression-0.2.18-hce8ee76_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-event-stream-0.4.2-h01f5eca_8.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-http-0.8.1-hdb68c23_10.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-io-0.14.7-hbfbeace_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-mqtt-0.10.4-h50844eb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-s3-0.5.7-h6be9164_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-sdkutils-0.1.15-hce8ee76_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-checksums-0.1.18-hce8ee76_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-crt-cpp-0.26.8-h2150271_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-sdk-cpp-1.11.267-hddb5a97_7.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-core-cpp-1.11.1-h91d86a7_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-identity-cpp-1.6.0-hf1915f5_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-storage-blobs-cpp-12.10.0-h00ab1b0_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-storage-common-cpp-12.5.0-h94269e2_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/black-24.4.2-py310hff52083_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/blosc-1.21.5-hc2324a3_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-1.1.0-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-bin-1.1.0-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.1.0-py310hc6cd4ac_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hd590300_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.28.1-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2024.2.2-hbcca054_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/cairo-1.18.0-h3faef2a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/cfitsio-4.4.0-hbdc6101_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/cftime-1.6.3-py310h1f7b6fc_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-unix_pyh707e725_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/contourpy-1.2.1-py310hd41b1e2_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/coverage-7.5.0-py310hc51659f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/cytoolz-0.12.3-py310h2372a71_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.14-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/dbus-1.13.6-h5008d03_3.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.1.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/expat-2.6.2-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/fiona-1.9.6-py310h0a1e91f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/fmt-10.2.1-h00ab1b0_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-inconsolata-3.000-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-source-code-pro-2.038-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/fontconfig-2.14.2-h14ed4e7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.51.0-py310h2372a71_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/freetype-2.12.1-h267a509_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/freexl-2.0.0-h743c826_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/gdal-3.8.5-py310h3b926b6_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.4-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/geos-3.12.1-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/geotiff-1.7.1-h6cf1f90_16.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/gettext-0.22.5-h59595ed_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/gettext-tools-0.22.5-h59595ed_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/gflags-2.2.2-he1b5a44_1004.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/giflib-5.2.2-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-2.80.0-hf2295e7_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-tools-2.80.0-hde27a5a_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/glog-0.7.0-hed5481d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/graphite2-1.3.13-h59595ed_1003.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/gst-plugins-base-1.24.1-hfa15dee_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/gstreamer-1.24.1-h98fc4e7_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/harfbuzz-8.4.0-h3d44ed6_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.24.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/hdf4-4.2.15-h2a13503_7.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/hdf5-1.14.3-nompi_h4f84152_101.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/icu-73.2-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.7-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/json-c-0.17-h7ab15ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/kealib-1.5.3-h2f55d51_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.1-h166bdaf_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/kiwisolver-1.4.5-py310hd41b1e2_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.21.2-h659d440_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/lame-3.100-h166bdaf_1003.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/lcms2-2.16-hb7c19ff_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.40-h55db66e_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/lerc-4.0.0-h27087fc_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libabseil-20240116.2-cxx17_h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libaec-1.1.3-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libarchive-3.7.2-h2aa1ff5_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-15.0.2-hefa796f_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-acero-15.0.2-hbabe93e_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-dataset-15.0.2-hbabe93e_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-15.0.2-hc4f8a93_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-sql-15.0.2-he4f5ca8_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-gandiva-15.0.2-hc1954e9_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-substrait-15.0.2-he4f5ca8_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libasprintf-0.22.5-h661eb56_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libasprintf-devel-0.22.5-h661eb56_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libblas-3.9.0-22_linux64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libboost-headers-1.84.0-ha770c72_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlicommon-1.1.0-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlidec-1.1.0-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlienc-1.1.0-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libcap-2.69-h0f662aa_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.9.0-22_linux64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp15-15.0.7-default_h127d8a8_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang13-18.1.4-default_h5d6823c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libcrc32c-1.1.2-h9c3ff4c_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libcups-2.3.3-h4637d8d_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.7.1-hca28451_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.20-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20191231-he28a2e2_2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-hd590300_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libevent-2.1.12-hf998b51_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.6.2-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.4.2-h7f98852_5.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libflac-1.4.3-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-13.2.0-h77fa898_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcrypt-1.10.3-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgdal-3.8.5-hf9625ee_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgettextpo-0.22.5-h59595ed_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgettextpo-devel-0.22.5-h59595ed_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-13.2.0-h69a702a_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-13.2.0-h43f5ff8_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libglib-2.80.0-hf2295e7_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-13.2.0-h77fa898_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-2.23.0-h9be4e54_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-storage-2.23.0-hc7a4891_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgpg-error-1.49-h4f305b6_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgrpc-1.62.2-h15f2491_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.17-hd590300_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libjpeg-turbo-3.0.0-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libkml-1.3.0-h01aab08_1018.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.9.0-22_linux64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm14-14.0.6-hcd5def8_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm15-15.0.7-hb3ce162_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm16-16.0.6-hb3ce162_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm18-18.1.4-h2448989_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libnetcdf-4.9.2-nompi_h9612171_113.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.58.0-h47da74e_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libnl-3.9.0-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libnsl-2.0.1-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libogg-1.3.4-h7f98852_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.27-pthreads_h413a1c8_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libopus-1.3.1-h7f98852_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libparquet-15.0.2-hacf5a1f_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libpng-1.6.43-h2797004_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libpq-16.2-h33b98f1_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libprotobuf-4.25.3-h08a7969_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libre2-11-2023.09.01-h5a48ba9_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/librttopo-1.1.0-h8917695_15.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libsndfile-1.2.2-hc60ed4a_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libspatialindex-1.9.3-h9c3ff4c_4.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libspatialite-5.1.0-h6f065fc_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.45.3-h2797004_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libssh2-1.11.0-h0841786_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-13.2.0-hc0a3c3a_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libsystemd0-255-h3516f8a_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libthrift-0.19.0-hb90f79a_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.6.0-h1dd3fc0_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libutf8proc-2.8.0-h166bdaf_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.38.1-h0b41bf4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libvorbis-1.3.7-h9c3ff4c_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libwebp-base-1.4.0-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libxcb-1.15-h0b41bf4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libxcrypt-4.4.36-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libxkbcommon-1.7.0-h662e7e4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.12.6-h232c23b_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libzip-1.10.1-h2629f0a_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.2.13-hd590300_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/llvmlite-0.42.0-py310h1b8f574_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/lz4-4.3.3-py310h350c4a5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/lz4-c-1.9.4-hcb278e6_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/lzo-2.10-hd590300_1001.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/markupsafe-2.1.5-py310h2372a71_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-3.8.4-py310hff52083_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-base-3.8.4-py310h62c0568_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/minizip-4.0.5-h0ab5242_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/mpg123-1.32.6-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/msgpack-python-1.0.7-py310hd41b1e2_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-common-8.3.0-hf1915f5_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-libs-8.3.0-hca2cd23_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.4.20240210-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/netcdf4-1.6.5-nompi_py310hba70d50_100.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.3-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/nspr-4.35-h27087fc_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/nss-3.98-h1d7d5a4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/numba-0.59.1-py310h7dc5dd1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/numpy-1.26.4-py310hb13e2d6_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/openjpeg-2.5.2-h488ebb8_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.3.0-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/orc-2.0.0-h17fec99_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pandas-2.2.2-py310hcc13569_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pcre2-10.43-hcad00b1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pillow-10.3.0-py310hf73ecf8_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pixman-0.43.2-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.5.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/ply-3.11-pyhd8ed1ab_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/poppler-24.04.0-hb6cd0d7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/postgresql-16.2-h82ecc9d_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/proj-9.4.0-h1d62c97_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/psutil-5.9.8-py310h2372a71_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pthread-stubs-0.4-h36c2ea0_1001.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pulseaudio-client-17.0-hb77b528_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pyarrow-15.0.2-py310hd207890_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.7.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pydantic-core-2.18.2-py310he421c4c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pyogrio-0.7.2-py310h0a1e91f_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pyproj-3.6.1-py310h7677b6e_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqt-5.15.9-py310h04931ad_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqt5-sip-12.12.2-py310hc6cd4ac_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.2.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.10.14-hd12c33a_0_cpython.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/python_abi-3.10-4_cp310.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.1-py310h2372a71_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/qt-main-5.15.8-hc9dc06e_21.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/rdma-core-51.0-hd3aeb46_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/re2-2023.09.01-h7f4b329_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8228510_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/rtree-1.2.0-py310hbdcdc62_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/s2n-1.4.12-h06160fa_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/scikit-learn-1.4.2-py310h1fdf081_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/scipy-1.13.0-py310hb13e2d6_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.5.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/shapely-2.0.4-py310hc3e127f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/sip-6.7.12-py310hc6cd4ac_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/snappy-1.2.0-hdb0a2a9_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/sortedcontainers-2.4.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/spdlog-1.13.0-hd2e6256_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/sqlite-3.45.3-h2c6b66d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.5.0-pyhc1e730c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/tiledb-2.22.0-h27f064a_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h4845f30_101.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/tornado-6.4-py310h2372a71_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.4.10-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240417-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.11.0-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.11.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/tzcode-2024a-h3f72095_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/ucx-1.15.0-ha691c75_8.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/unicodedata2-15.1.0-py310h2372a71_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/uriparser-0.9.7-h59595ed_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/wrapt-1.16.0-py310h2372a71_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-0.4.0-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-image-0.4.0-h8ee46fc_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-keysyms-0.4.0-h8ee46fc_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-renderutil-0.3.9-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-wm-0.4.1-h8ee46fc_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xerces-c-3.2.5-hac6953d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xkeyboard-config-2.41-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-kbproto-1.0.7-h7f98852_1002.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libice-1.1.1-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libsm-1.2.4-h7391055_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libx11-1.8.9-h8ee46fc_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxau-1.0.11-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxdmcp-1.1.3-h7f98852_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxext-1.3.4-h0b41bf4_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxrender-0.9.11-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-renderproto-0.11.1-h7f98852_1002.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-xextproto-7.3.0-h0b41bf4_1003.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-xf86vidmodeproto-2.3.1-h7f98852_1002.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-xproto-7.0.31-h7f98852_1007.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xugrid-0.10.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2024.4.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xz-5.2.6-h166bdaf_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/yaml-0.2.5-h7f98852_2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/zict-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/zlib-1.2.13-hd590300_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.5-hfc55251_0.conda
+ osx-64:
+ - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-23.2.0-pyh71513ae_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-auth-0.7.18-hb47d15a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-cal-0.6.11-hbce485b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-common-0.9.15-h10d778d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-compression-0.2.18-h53e3db5_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-event-stream-0.4.2-he461af8_8.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-http-0.8.1-h0afc28a_10.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-io-0.14.7-h6254544_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-mqtt-0.10.4-hd66502f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-s3-0.5.7-h5d4520e_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-sdkutils-0.1.15-h53e3db5_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-checksums-0.1.18-h53e3db5_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-crt-cpp-0.26.8-ha933895_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-sdk-cpp-1.11.267-h8dd24e3_7.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-core-cpp-1.11.1-hbb1e571_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-identity-cpp-1.6.0-h9a80fee_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-storage-blobs-cpp-12.10.0-h7728843_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-storage-common-cpp-12.5.0-h0e82ce4_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/black-24.4.2-py310h2ec42d9_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/blosc-1.21.5-hafa3907_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-1.1.0-h0dc2134_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-bin-1.1.0-h0dc2134_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-python-1.1.0-py310h9e9d8ca_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/bzip2-1.0.8-h10d778d_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.28.1-h10d778d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/ca-certificates-2024.2.2-h8857fd0_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/cairo-1.18.0-h99e66fa_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/cfitsio-4.4.0-h60fb419_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/cftime-1.6.3-py310h91862f5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-unix_pyh707e725_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/contourpy-1.2.1-py310hb3b189b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/coverage-7.5.0-py310h74a5a53_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/cytoolz-0.12.3-py310hb372a2b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.14-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.1.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/expat-2.6.2-h73e2aa4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/fiona-1.9.6-py310haadd054_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/fmt-10.2.1-h7728843_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-inconsolata-3.000-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-source-code-pro-2.038-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/fontconfig-2.14.2-h5bb23bf_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/fonttools-4.51.0-py310hb372a2b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/freetype-2.12.1-h60636b9_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/freexl-2.0.0-h3ec172f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/gdal-3.8.5-py310hf007c50_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.4-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/geos-3.12.1-h93d8f39_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/geotiff-1.7.1-h7c2ff5c_16.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/gflags-2.2.2-hb1e8313_1004.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/giflib-5.2.2-h10d778d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/glog-0.7.0-h31b1b29_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.24.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/hdf4-4.2.15-h8138101_7.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/hdf5-1.14.3-nompi_hb512a33_101.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/icu-73.2-hf5e326d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.7-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/json-c-0.17-h8e11ae5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/kealib-1.5.3-h5f07ac3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/kiwisolver-1.4.5-py310h88cfcbd_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/krb5-1.21.2-hb884880_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/lcms2-2.16-ha2f27b4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/lerc-4.0.0-hb486fe8_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libabseil-20240116.2-cxx17_hc1bcbd7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libaec-1.1.3-h73e2aa4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libarchive-3.7.2-hd35d340_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-15.0.2-hfba3c4c_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-acero-15.0.2-ha0df490_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-dataset-15.0.2-ha0df490_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-15.0.2-h41520de_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-sql-15.0.2-hb2e0ddf_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-gandiva-15.0.2-h81ca85a_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-substrait-15.0.2-hb2e0ddf_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libblas-3.9.0-22_osx64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libboost-headers-1.84.0-h694c41f_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlicommon-1.1.0-h0dc2134_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlidec-1.1.0-h0dc2134_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlienc-1.1.0-h0dc2134_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libcblas-3.9.0-22_osx64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libcrc32c-1.1.2-he49afe7_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.7.1-h726d00d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-16.0.6-hd57cbcb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libdeflate-1.20-h49d49c5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libedit-3.1.20191231-h0678c8f_2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libev-4.33-h10d778d_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libevent-2.1.12-ha90c15b_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libexpat-2.6.2-h73e2aa4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libffi-3.4.2-h0d85af4_5.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libgdal-3.8.5-h7db9259_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libgfortran-5.0.0-13_2_0_h97931a8_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libgfortran5-13.2.0-h2873a65_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libglib-2.80.0-h81c1438_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libgoogle-cloud-2.23.0-h651e89d_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libgoogle-cloud-storage-2.23.0-ha67e85c_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libgrpc-1.62.2-h384b2fc_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libiconv-1.17-hd75f5a5_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libintl-0.22.5-h5ff76d1_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libjpeg-turbo-3.0.0-h0dc2134_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libkml-1.3.0-hab3ca0e_1018.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/liblapack-3.9.0-22_osx64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm14-14.0.6-hc8e404f_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm16-16.0.6-hbedff68_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libnetcdf-4.9.2-nompi_h7760872_113.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libnghttp2-1.58.0-h64cf6d3_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libopenblas-0.3.27-openmp_hfef2a42_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libparquet-15.0.2-h7cd3cfe_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libpng-1.6.43-h92b6c6a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libpq-16.2-ha925e61_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libprotobuf-4.25.3-h4e4d658_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libre2-11-2023.09.01-h81f5012_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/librttopo-1.1.0-hf05f67e_15.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libspatialindex-1.9.3-he49afe7_4.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libspatialite-5.1.0-h487bbac_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libsqlite-3.45.3-h92b6c6a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libssh2-1.11.0-hd019ec5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libthrift-0.19.0-h064b379_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libtiff-4.6.0-h129831d_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libutf8proc-2.8.0-hb7f2c08_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libwebp-base-1.4.0-h10d778d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libxcb-1.15-hb7f2c08_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libxml2-2.12.6-hc0ae0f7_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libzip-1.10.1-hc158999_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libzlib-1.2.13-h8a1eda9_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-openmp-18.1.4-h2c61cee_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/llvmlite-0.42.0-py310h7d48a1f_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/lz4-4.3.3-py310hf99a7a4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/lz4-c-1.9.4-hf0c8a7f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/lzo-2.10-h10d778d_1001.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/markupsafe-2.1.5-py310hb372a2b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/matplotlib-3.8.4-py310h2ec42d9_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/matplotlib-base-3.8.4-py310hec49e92_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/minizip-4.0.5-h37d7099_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/msgpack-python-1.0.7-py310ha697434_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.4.20240210-h73e2aa4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/netcdf4-1.6.5-nompi_py310h30a4ba5_100.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.3-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/nspr-4.35-hea0b92c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/nss-3.98-ha05da47_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/numba-0.59.1-py310h1d5af72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/numpy-1.26.4-py310h4bfa8fc_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/openjpeg-2.5.2-h7310d3a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.3.0-hd75f5a5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/orc-2.0.0-hf146577_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pandas-2.2.2-py310h276d7da_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pcre2-10.43-h0ad2156_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pillow-10.3.0-py310h99295b8_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pixman-0.43.4-h73e2aa4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.5.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/poppler-24.04.0-h0face88_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/postgresql-16.2-h06f2bd8_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/proj-9.4.0-h23b96cc_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/psutil-5.9.8-py310hb372a2b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pthread-stubs-0.4-hc929b4f_1001.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pyarrow-15.0.2-py310hfcac963_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.7.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pydantic-core-2.18.2-py310h4f5e652_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pyogrio-0.7.2-py310h28a5548_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pyproj-3.6.1-py310h5c96a55_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.2.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/python-3.10.14-h00d2728_0_cpython.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/python_abi-3.10-4_cp310.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pyyaml-6.0.1-py310h6729b98_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/re2-2023.09.01-hb168e87_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/readline-8.2-h9e318b2_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/rtree-1.2.0-py310had9ce37_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/scikit-learn-1.4.2-py310h38ce860_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/scipy-1.13.0-py310hdfaad59_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.5.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/shapely-2.0.4-py310h82bc67a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/snappy-1.2.0-h6dc393e_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/sortedcontainers-2.4.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/spdlog-1.13.0-h1a4aec9_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/sqlite-3.45.3-h7461747_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.5.0-pyhc1e730c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/tiledb-2.22.0-hf5f2543_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-h1abcd95_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/tornado-6.4-py310hb372a2b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.4.10-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240417-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.11.0-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.11.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/tzcode-2024a-h10d778d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/unicodedata2-15.1.0-py310h6729b98_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/uriparser-0.9.7-he965462_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/wrapt-1.16.0-py310hb372a2b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/xerces-c-3.2.5-hbbe9ea5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/xorg-libxau-1.0.11-h0dc2134_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/xorg-libxdmcp-1.1.3-h35c211d_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xugrid-0.10.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2024.4.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/xz-5.2.6-h775f41a_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/yaml-0.2.5-h0d85af4_2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/zict-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/zlib-1.2.13-h8a1eda9_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/zstd-1.5.5-h829000d_0.conda
+ osx-arm64:
+ - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-23.2.0-pyh71513ae_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-auth-0.7.18-h382b9c6_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-cal-0.6.11-hd34e5fa_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-common-0.9.15-h93a5062_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-compression-0.2.18-hd34e5fa_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-event-stream-0.4.2-h247c08a_8.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-http-0.8.1-hf9e830b_10.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-io-0.14.7-h33d81b3_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-mqtt-0.10.4-h5f4abda_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-s3-0.5.7-h7644b7e_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-sdkutils-0.1.15-hd34e5fa_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-checksums-0.1.18-hd34e5fa_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-crt-cpp-0.26.8-h7541583_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-sdk-cpp-1.11.267-h18943f6_7.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-core-cpp-1.11.1-he231e37_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-identity-cpp-1.6.0-hd1853d3_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-storage-blobs-cpp-12.10.0-h2ffa867_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-storage-common-cpp-12.5.0-h09a5875_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/black-24.4.2-py310hbe9552e_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/blosc-1.21.5-h9c252e8_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-1.1.0-hb547adb_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-bin-1.1.0-hb547adb_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-python-1.1.0-py310h1253130_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-h93a5062_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.28.1-h93a5062_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ca-certificates-2024.2.2-hf0a4a13_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cairo-1.18.0-hd1e100b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cfitsio-4.4.0-h808cd33_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cftime-1.6.3-py310h50ce23c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-unix_pyh707e725_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/contourpy-1.2.1-py310h21239e6_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/coverage-7.5.0-py310h8431ef1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cytoolz-0.12.3-py310hd125d64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.14-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.1.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/expat-2.6.2-hebf3989_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fiona-1.9.6-py310ha8a040d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fmt-10.2.1-h2ffa867_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-inconsolata-3.000-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-source-code-pro-2.038-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fontconfig-2.14.2-h82840c6_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fonttools-4.51.0-py310hd125d64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/freetype-2.12.1-hadb7bae_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/freexl-2.0.0-hfbad9fb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gdal-3.8.5-py310h7e77ef1_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.4-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/geos-3.12.1-h965bd2d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/geotiff-1.7.1-h6e650f3_16.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gflags-2.2.2-hc88da5d_1004.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/giflib-5.2.2-h93a5062_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/glog-0.7.0-hc6770e3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.24.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/hdf4-4.2.15-h2ee6834_7.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/hdf5-1.14.3-nompi_h751145d_101.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-73.2-hc8870d7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.7-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/json-c-0.17-h40ed0f5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/kealib-1.5.3-h210d843_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/kiwisolver-1.4.5-py310h38f39d4_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.21.2-h92f50d5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lcms2-2.16-ha0e7c42_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lerc-4.0.0-h9a09cb3_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libabseil-20240116.2-cxx17_hebf3989_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libaec-1.1.3-hebf3989_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarchive-3.7.2-hcacb583_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-15.0.2-hea125af_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-acero-15.0.2-h3f3aa29_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-dataset-15.0.2-h3f3aa29_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-15.0.2-h224147a_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-sql-15.0.2-hb630850_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-gandiva-15.0.2-h3b9069c_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-substrait-15.0.2-hd92e347_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libblas-3.9.0-22_osxarm64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libboost-headers-1.84.0-hce30654_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlicommon-1.1.0-hb547adb_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlidec-1.1.0-hb547adb_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlienc-1.1.0-hb547adb_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcblas-3.9.0-22_osxarm64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcrc32c-1.1.2-hbdafb3b_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.7.1-h2d989ff_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-16.0.6-h4653b0c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libdeflate-1.20-h93a5062_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libedit-3.1.20191231-hc8eb9b7_2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libev-4.33-h93a5062_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libevent-2.1.12-h2757513_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.6.2-hebf3989_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libffi-3.4.2-h3422bc3_5.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgdal-3.8.5-h2f7ae65_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgfortran-5.0.0-13_2_0_hd922786_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgfortran5-13.2.0-hf226fd6_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libglib-2.80.0-hfc324ee_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgoogle-cloud-2.23.0-hbebe991_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgoogle-cloud-storage-2.23.0-h8a76758_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgrpc-1.62.2-h9c18a4f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libiconv-1.17-h0d3ecfb_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libintl-0.22.5-h8fbad5d_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libjpeg-turbo-3.0.0-hb547adb_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libkml-1.3.0-h1eb4d9f_1018.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblapack-3.9.0-22_osxarm64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm14-14.0.6-hd1a9a77_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm16-16.0.6-haab561b_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnetcdf-4.9.2-nompi_h291a7c2_113.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnghttp2-1.58.0-ha4dd798_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libopenblas-0.3.27-openmp_h6c19121_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libparquet-15.0.2-h5304c63_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libpng-1.6.43-h091b4b1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libpq-16.2-h0f8b458_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libprotobuf-4.25.3-hbfab5d5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libre2-11-2023.09.01-h7b2c953_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/librttopo-1.1.0-hc8f776e_15.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libspatialindex-1.9.3-hbdafb3b_4.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libspatialite-5.1.0-h77c30ab_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.45.3-h091b4b1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libssh2-1.11.0-h7a5bd25_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libthrift-0.19.0-h026a170_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libtiff-4.6.0-h07db509_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libutf8proc-2.8.0-h1a8c8d9_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libwebp-base-1.4.0-h93a5062_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxcb-1.15-hf346824_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-2.12.6-h0d0cfa8_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzip-1.10.1-ha0bc3c6_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzlib-1.2.13-h53f4e23_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-openmp-18.1.4-hbf6887a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvmlite-0.42.0-py310hf7687f1_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lz4-4.3.3-py310haecba8d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lz4-c-1.9.4-hb7217d7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lzo-2.10-h93a5062_1001.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/markupsafe-2.1.5-py310hd125d64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/matplotlib-3.8.4-py310hb6292c7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/matplotlib-base-3.8.4-py310h2439c42_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/minizip-4.0.5-hc35e051_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/msgpack-python-1.0.7-py310hd137fd4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.4.20240210-h078ce10_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/netcdf4-1.6.5-nompi_py310h3aafd6c_100.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.3-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nspr-4.35-hb7217d7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nss-3.98-h5ce2875_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numba-0.59.1-py310hdf1f89a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numpy-1.26.4-py310hd45542a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openjpeg-2.5.2-h9f1df11_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.3.0-h0d3ecfb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/orc-2.0.0-h4aad248_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pandas-2.2.2-py310h401b61c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pcre2-10.43-h26f9a81_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pillow-10.3.0-py310h81a8c2e_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pixman-0.43.4-hebf3989_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.5.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/poppler-24.04.0-h42742f0_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/postgresql-16.2-hf829917_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/proj-9.4.0-h52fb9d0_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/psutil-5.9.8-py310hd125d64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pthread-stubs-0.4-h27ca646_1001.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyarrow-15.0.2-py310h01a46da_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.7.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pydantic-core-2.18.2-py310h8ffd6aa_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyogrio-0.7.2-py310h2be8462_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyproj-3.6.1-py310h42c19a3_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.2.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.10.14-h2469fbe_0_cpython.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python_abi-3.10-4_cp310.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyyaml-6.0.1-py310h2aa6e3c_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/re2-2023.09.01-h4cba328_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/readline-8.2-h92ec313_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/rtree-1.2.0-py310ha3239f5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/scikit-learn-1.4.2-py310h7ef31dd_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/scipy-1.13.0-py310hf4b343e_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.5.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/shapely-2.0.4-py310hee2b506_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/snappy-1.2.0-hd04f947_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/sortedcontainers-2.4.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/spdlog-1.13.0-h5fcca99_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sqlite-3.45.3-hf2abe2d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.5.0-pyhc1e730c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tiledb-2.22.0-hf0716ca_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h5083fa2_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tornado-6.4-py310hd125d64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.4.10-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240417-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.11.0-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.11.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tzcode-2024a-h93a5062_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/unicodedata2-15.1.0-py310h2aa6e3c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/uriparser-0.9.7-h13dd4ca_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/wrapt-1.16.0-py310hd125d64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xerces-c-3.2.5-hf393695_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xorg-libxau-1.0.11-hb547adb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xorg-libxdmcp-1.1.3-h27ca646_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xugrid-0.10.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2024.4.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xz-5.2.6-h57fd34a_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/yaml-0.2.5-h3422bc3_2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/zict-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zlib-1.2.13-h53f4e23_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.5-h4f39d0f_0.conda
+ win-64:
+ - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-23.2.0-pyh71513ae_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-auth-0.7.18-hba7c1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-cal-0.6.11-ha21e00f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-common-0.9.15-hcfcfb64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-compression-0.2.18-ha21e00f_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-event-stream-0.4.2-hf668b60_8.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-http-0.8.1-hd704247_10.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-io-0.14.7-h14865c8_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-mqtt-0.10.4-h748201e_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-s3-0.5.7-h0ac6cc1_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-sdkutils-0.1.15-ha21e00f_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-checksums-0.1.18-ha21e00f_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-crt-cpp-0.26.8-h2199128_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-sdk-cpp-1.11.267-h3f4ca61_7.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/azure-core-cpp-1.11.1-h249a519_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/azure-identity-cpp-1.6.0-h91493d7_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/azure-storage-blobs-cpp-12.10.0-h91493d7_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/azure-storage-common-cpp-12.5.0-h91493d7_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/black-24.4.2-py310h5588dad_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/blosc-1.21.5-hbd69f2e_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-1.1.0-hcfcfb64_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-bin-1.1.0-hcfcfb64_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-python-1.1.0-py310h00ffb61_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/bzip2-1.0.8-hcfcfb64_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/c-ares-1.28.1-hcfcfb64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/ca-certificates-2024.2.2-h56e8100_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/cairo-1.18.0-h1fef639_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/cfitsio-4.4.0-h9b0cee5_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/cftime-1.6.3-py310h3e78b6c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-win_pyh7428d3b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/contourpy-1.2.1-py310h232114e_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/coverage-7.5.0-py310ha8f682b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/cytoolz-0.12.3-py310h8d17308_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.14-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.1.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/expat-2.6.2-h63175ca_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/fiona-1.9.6-py310h618e506_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/fmt-10.2.1-h181d51b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-inconsolata-3.000-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-source-code-pro-2.038-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/fontconfig-2.14.2-hbde0cde_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/fonttools-4.51.0-py310h8d17308_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/freetype-2.12.1-hdaf720e_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/freexl-2.0.0-h8276f4a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/gdal-3.8.5-py310h9def23e_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.4-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/geos-3.12.1-h1537add_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/geotiff-1.7.1-hed9d743_16.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/glib-2.80.0-h39d0aa6_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/glib-tools-2.80.0-h0a98069_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/gst-plugins-base-1.24.1-h001b923_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/gstreamer-1.24.1-hb4038d2_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.24.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/hdf4-4.2.15-h5557f11_7.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/hdf5-1.14.3-nompi_h73e8ff5_101.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/icu-73.2-h63175ca_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.7-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/intel-openmp-2024.1.0-h57928b3_965.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/kealib-1.5.3-hd248416_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/kiwisolver-1.4.5-py310h232114e_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.21.2-heb0366b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/lcms2-2.16-h67d730c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/lerc-4.0.0-h63175ca_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libabseil-20240116.2-cxx17_h63175ca_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libaec-1.1.3-h63175ca_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libarchive-3.7.2-h313118b_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-15.0.2-he3d97d8_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-acero-15.0.2-he0c23c2_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-dataset-15.0.2-he0c23c2_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-15.0.2-ha7f4a34_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-sql-15.0.2-hdeef14f_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-gandiva-15.0.2-hd4515a1_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-substrait-15.0.2-h1f0e801_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libblas-3.9.0-22_win64_mkl.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libboost-headers-1.84.0-h57928b3_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlicommon-1.1.0-hcfcfb64_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlidec-1.1.0-hcfcfb64_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlienc-1.1.0-hcfcfb64_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libcblas-3.9.0-22_win64_mkl.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libclang13-18.1.4-default_hf64faad_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libcrc32c-1.1.2-h0e60522_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.7.1-hd5e4a3a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libdeflate-1.20-hcfcfb64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libevent-2.1.12-h3671451_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.6.2-h63175ca_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.4.2-h8ffe710_5.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libgdal-3.8.5-hfb9f81c_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libglib-2.80.0-h39d0aa6_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libgoogle-cloud-2.23.0-h68df31e_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libgoogle-cloud-storage-2.23.0-hb581fae_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libgrpc-1.62.2-h5273850_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libhwloc-2.10.0-default_h2fffb23_1000.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libiconv-1.17-hcfcfb64_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libintl-0.22.5-h5728263_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libintl-devel-0.22.5-h5728263_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libjpeg-turbo-3.0.0-hcfcfb64_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libkml-1.3.0-haf3e7a6_1018.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/liblapack-3.9.0-22_win64_mkl.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libnetcdf-4.9.2-nompi_h07c049d_113.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libogg-1.3.4-h8ffe710_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libparquet-15.0.2-h178134c_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libpng-1.6.43-h19919ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libpq-16.2-hdb24f17_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libprotobuf-4.25.3-h503648d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libre2-11-2023.09.01-hf8d8778_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/librttopo-1.1.0-h94c4f80_15.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libspatialindex-1.9.3-h39d44d4_4.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libspatialite-5.1.0-hf13de1f_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.45.3-hcfcfb64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libssh2-1.11.0-h7dfc565_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libthrift-0.19.0-ha2b3283_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libtiff-4.6.0-hddb2be6_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libutf8proc-2.8.0-h82a8f57_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libvorbis-1.3.7-h0e60522_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libwebp-base-1.4.0-hcfcfb64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libxcb-1.15-hcd874cb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libxml2-2.12.6-hc3477c8_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libzip-1.10.1-h1d365fa_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libzlib-1.2.13-hcfcfb64_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/llvmlite-0.42.0-py310hb84602e_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/lz4-4.3.3-py310hbbb2075_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/lz4-c-1.9.4-hcfcfb64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/lzo-2.10-hcfcfb64_1001.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-gcc-libgfortran-5.3.0-6.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-gcc-libs-5.3.0-7.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-gcc-libs-core-5.3.0-7.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-gmp-6.1.0-2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-libwinpthread-git-5.0.0.4634.697f757-2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/markupsafe-2.1.5-py310h8d17308_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/matplotlib-3.8.4-py310h5588dad_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/matplotlib-base-3.8.4-py310hc9baf74_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/minizip-4.0.5-h5bed578_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/mkl-2024.1.0-h66d3029_692.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/msgpack-python-1.0.7-py310h232114e_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/msys2-conda-epoch-20160418-1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/netcdf4-1.6.5-nompi_py310h6477780_100.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.3-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/numba-0.59.1-py310h9ccaf4f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/numpy-1.26.4-py310hf667824_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/openjpeg-2.5.2-h3d672ee_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.3.0-hcfcfb64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/orc-2.0.0-h7e885a9_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pandas-2.2.2-py310hecd3228_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pcre2-10.43-h17e33f8_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pillow-10.3.0-py310hf5d6e66_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pixman-0.43.4-h63175ca_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.5.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/ply-3.11-pyhd8ed1ab_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/poppler-24.04.0-h747fd5a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/postgresql-16.2-h94c9ec1_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/proj-9.4.0-he13c7e8_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/psutil-5.9.8-py310h8d17308_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pthread-stubs-0.4-hcd874cb_1001.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pthreads-win32-2.9.1-hfa6e2cd_3.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pyarrow-15.0.2-py310h6bd4de8_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.7.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pydantic-core-2.18.2-py310hc226416_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pyogrio-0.7.2-py310h122fb02_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pyproj-3.6.1-py310h98c8b67_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pyqt-5.15.9-py310h1fd54f2_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pyqt5-sip-12.12.2-py310h00ffb61_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyh0701188_6.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.2.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.10.14-h4de0772_0_cpython.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/python_abi-3.10-4_cp310.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pyyaml-6.0.1-py310h8d17308_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/qt-main-5.15.8-hcef0176_21.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/re2-2023.09.01-hd3b24a8_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/rtree-1.2.0-py310h1cbd46b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/scikit-learn-1.4.2-py310hfd2573f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/scipy-1.13.0-py310hf667824_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.5.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/shapely-2.0.4-py310hacc03b5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/sip-6.7.12-py310h00ffb61_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/snappy-1.2.0-hfb803bf_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/sortedcontainers-2.4.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/spdlog-1.13.0-h64d2f7d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/sqlite-3.45.3-hcfcfb64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/tbb-2021.12.0-h91493d7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.5.0-pyhc1e730c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/tiledb-2.22.0-h5657395_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h5226925_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/tornado-6.4-py310h8d17308_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.4.10-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240417-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.11.0-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.11.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/ucrt-10.0.22621.0-h57928b3_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/unicodedata2-15.1.0-py310h8d17308_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/uriparser-0.9.7-h1537add_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-hcf57466_18.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.38.33130-h82b7239_18.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/vs2015_runtime-14.38.33130-hcb4865c_18.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/win_inet_pton-1.1.0-pyhd8ed1ab_6.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/wrapt-1.16.0-py310h8d17308_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/xerces-c-3.2.5-h63175ca_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/xorg-libxau-1.0.11-hcd874cb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/xorg-libxdmcp-1.1.3-hcd874cb_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xugrid-0.10.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2024.4.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/xz-5.2.6-h8d14728_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/yaml-0.2.5-h8ffe710_2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/zict-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/zlib-1.2.13-hcfcfb64_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/zstd-1.5.5-h12be248_0.conda
+ py311:
+ channels:
+ - url: https://conda.anaconda.org/conda-forge/
+ packages:
+ linux-64:
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/alsa-lib-1.2.11-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/attr-2.5.1-h166bdaf_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-23.2.0-pyh71513ae_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-auth-0.7.18-he0b1f16_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-cal-0.6.11-heb1d5e4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-common-0.9.15-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-compression-0.2.18-hce8ee76_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-event-stream-0.4.2-h01f5eca_8.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-http-0.8.1-hdb68c23_10.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-io-0.14.7-hbfbeace_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-mqtt-0.10.4-h50844eb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-s3-0.5.7-h6be9164_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-sdkutils-0.1.15-hce8ee76_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-checksums-0.1.18-hce8ee76_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-crt-cpp-0.26.8-h2150271_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-sdk-cpp-1.11.267-hddb5a97_7.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-core-cpp-1.11.1-h91d86a7_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-identity-cpp-1.6.0-hf1915f5_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-storage-blobs-cpp-12.10.0-h00ab1b0_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-storage-common-cpp-12.5.0-h94269e2_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/black-24.4.2-py311h38be061_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/blosc-1.21.5-hc2324a3_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-1.1.0-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-bin-1.1.0-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.1.0-py311hb755f60_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hd590300_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.28.1-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2024.2.2-hbcca054_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/cairo-1.18.0-h3faef2a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/cfitsio-4.4.0-hbdc6101_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/cftime-1.6.3-py311h1f0f07a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-unix_pyh707e725_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/contourpy-1.2.1-py311h9547e67_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/coverage-7.5.0-py311h331c9d8_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/cytoolz-0.12.3-py311h459d7ec_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.14-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/dbus-1.13.6-h5008d03_3.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.1.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/expat-2.6.2-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/fiona-1.9.6-py311hf8e0aa6_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/fmt-10.2.1-h00ab1b0_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-inconsolata-3.000-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-source-code-pro-2.038-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/fontconfig-2.14.2-h14ed4e7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.51.0-py311h459d7ec_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/freetype-2.12.1-h267a509_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/freexl-2.0.0-h743c826_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/gdal-3.8.5-py311hd032c08_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.4-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/geos-3.12.1-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/geotiff-1.7.1-h6cf1f90_16.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/gettext-0.22.5-h59595ed_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/gettext-tools-0.22.5-h59595ed_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/gflags-2.2.2-he1b5a44_1004.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/giflib-5.2.2-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-2.80.0-hf2295e7_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-tools-2.80.0-hde27a5a_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/glog-0.7.0-hed5481d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/graphite2-1.3.13-h59595ed_1003.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/gst-plugins-base-1.24.1-hfa15dee_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/gstreamer-1.24.1-h98fc4e7_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/harfbuzz-8.4.0-h3d44ed6_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.24.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/hdf4-4.2.15-h2a13503_7.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/hdf5-1.14.3-nompi_h4f84152_101.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/icu-73.2-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.7-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/json-c-0.17-h7ab15ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/kealib-1.5.3-h2f55d51_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.1-h166bdaf_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/kiwisolver-1.4.5-py311h9547e67_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.21.2-h659d440_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/lame-3.100-h166bdaf_1003.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/lcms2-2.16-hb7c19ff_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.40-h55db66e_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/lerc-4.0.0-h27087fc_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libabseil-20240116.2-cxx17_h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libaec-1.1.3-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libarchive-3.7.2-h2aa1ff5_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-15.0.2-hefa796f_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-acero-15.0.2-hbabe93e_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-dataset-15.0.2-hbabe93e_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-15.0.2-hc4f8a93_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-sql-15.0.2-he4f5ca8_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-gandiva-15.0.2-hc1954e9_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-substrait-15.0.2-he4f5ca8_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libasprintf-0.22.5-h661eb56_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libasprintf-devel-0.22.5-h661eb56_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libblas-3.9.0-22_linux64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libboost-headers-1.84.0-ha770c72_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlicommon-1.1.0-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlidec-1.1.0-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlienc-1.1.0-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libcap-2.69-h0f662aa_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.9.0-22_linux64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp15-15.0.7-default_h127d8a8_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang13-18.1.4-default_h5d6823c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libcrc32c-1.1.2-h9c3ff4c_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libcups-2.3.3-h4637d8d_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.7.1-hca28451_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.20-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20191231-he28a2e2_2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-hd590300_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libevent-2.1.12-hf998b51_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.6.2-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.4.2-h7f98852_5.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libflac-1.4.3-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-13.2.0-h77fa898_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcrypt-1.10.3-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgdal-3.8.5-hf9625ee_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgettextpo-0.22.5-h59595ed_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgettextpo-devel-0.22.5-h59595ed_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-13.2.0-h69a702a_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-13.2.0-h43f5ff8_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libglib-2.80.0-hf2295e7_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-13.2.0-h77fa898_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-2.23.0-h9be4e54_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-storage-2.23.0-hc7a4891_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgpg-error-1.49-h4f305b6_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgrpc-1.62.2-h15f2491_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.17-hd590300_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libjpeg-turbo-3.0.0-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libkml-1.3.0-h01aab08_1018.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.9.0-22_linux64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm14-14.0.6-hcd5def8_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm15-15.0.7-hb3ce162_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm16-16.0.6-hb3ce162_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm18-18.1.4-h2448989_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libnetcdf-4.9.2-nompi_h9612171_113.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.58.0-h47da74e_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libnl-3.9.0-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libnsl-2.0.1-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libogg-1.3.4-h7f98852_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.27-pthreads_h413a1c8_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libopus-1.3.1-h7f98852_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libparquet-15.0.2-hacf5a1f_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libpng-1.6.43-h2797004_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libpq-16.2-h33b98f1_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libprotobuf-4.25.3-h08a7969_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libre2-11-2023.09.01-h5a48ba9_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/librttopo-1.1.0-h8917695_15.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libsndfile-1.2.2-hc60ed4a_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libspatialindex-1.9.3-h9c3ff4c_4.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libspatialite-5.1.0-h6f065fc_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.45.3-h2797004_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libssh2-1.11.0-h0841786_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-13.2.0-hc0a3c3a_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libsystemd0-255-h3516f8a_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libthrift-0.19.0-hb90f79a_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.6.0-h1dd3fc0_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libutf8proc-2.8.0-h166bdaf_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.38.1-h0b41bf4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libvorbis-1.3.7-h9c3ff4c_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libwebp-base-1.4.0-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libxcb-1.15-h0b41bf4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libxcrypt-4.4.36-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libxkbcommon-1.7.0-h662e7e4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.12.6-h232c23b_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libzip-1.10.1-h2629f0a_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.2.13-hd590300_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/llvmlite-0.42.0-py311ha6695c7_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/lz4-4.3.3-py311h38e4bf4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/lz4-c-1.9.4-hcb278e6_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/lzo-2.10-hd590300_1001.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/markupsafe-2.1.5-py311h459d7ec_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-3.8.4-py311h38be061_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-base-3.8.4-py311h54ef318_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/minizip-4.0.5-h0ab5242_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/mpg123-1.32.6-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/msgpack-python-1.0.7-py311h9547e67_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-common-8.3.0-hf1915f5_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-libs-8.3.0-hca2cd23_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.4.20240210-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/netcdf4-1.6.5-nompi_py311he8ad708_100.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.3-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/nspr-4.35-h27087fc_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/nss-3.98-h1d7d5a4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/numba-0.59.1-py311h96b013e_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/numpy-1.26.4-py311h64a7726_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/openjpeg-2.5.2-h488ebb8_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.3.0-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/orc-2.0.0-h17fec99_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pandas-2.2.2-py311h320fe9a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pcre2-10.43-hcad00b1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pillow-10.3.0-py311h18e6fac_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pixman-0.43.2-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.5.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/ply-3.11-pyhd8ed1ab_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/poppler-24.04.0-hb6cd0d7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/postgresql-16.2-h82ecc9d_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/proj-9.4.0-h1d62c97_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/psutil-5.9.8-py311h459d7ec_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pthread-stubs-0.4-h36c2ea0_1001.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pulseaudio-client-17.0-hb77b528_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pyarrow-15.0.2-py311hd5e4297_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.7.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pydantic-core-2.18.2-py311h5ecf98a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pyogrio-0.7.2-py311hf8e0aa6_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pyproj-3.6.1-py311hb3a3e68_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqt-5.15.9-py311hf0fb5b6_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqt5-sip-12.12.2-py311hb755f60_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.2.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.11.9-hb806964_0_cpython.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/python_abi-3.11-4_cp311.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.1-py311h459d7ec_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/qt-main-5.15.8-hc9dc06e_21.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/rdma-core-51.0-hd3aeb46_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/re2-2023.09.01-h7f4b329_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8228510_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/rtree-1.2.0-py311h3bb2b0f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/s2n-1.4.12-h06160fa_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/scikit-learn-1.4.2-py311hc009520_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/scipy-1.13.0-py311h64a7726_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.5.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/shapely-2.0.4-py311h2032efe_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/sip-6.7.12-py311hb755f60_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/snappy-1.2.0-hdb0a2a9_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/sortedcontainers-2.4.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/spdlog-1.13.0-hd2e6256_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/sqlite-3.45.3-h2c6b66d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.5.0-pyhc1e730c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/tiledb-2.22.0-h27f064a_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h4845f30_101.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/tornado-6.4-py311h459d7ec_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.4.10-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240417-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.11.0-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.11.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/tzcode-2024a-h3f72095_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/ucx-1.15.0-ha691c75_8.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/uriparser-0.9.7-h59595ed_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/wrapt-1.16.0-py311h459d7ec_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-0.4.0-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-image-0.4.0-h8ee46fc_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-keysyms-0.4.0-h8ee46fc_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-renderutil-0.3.9-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-wm-0.4.1-h8ee46fc_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xerces-c-3.2.5-hac6953d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xkeyboard-config-2.41-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-kbproto-1.0.7-h7f98852_1002.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libice-1.1.1-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libsm-1.2.4-h7391055_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libx11-1.8.9-h8ee46fc_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxau-1.0.11-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxdmcp-1.1.3-h7f98852_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxext-1.3.4-h0b41bf4_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxrender-0.9.11-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-renderproto-0.11.1-h7f98852_1002.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-xextproto-7.3.0-h0b41bf4_1003.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-xf86vidmodeproto-2.3.1-h7f98852_1002.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-xproto-7.0.31-h7f98852_1007.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xugrid-0.10.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2024.4.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xz-5.2.6-h166bdaf_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/yaml-0.2.5-h7f98852_2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/zict-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/zlib-1.2.13-hd590300_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.5-hfc55251_0.conda
+ osx-64:
+ - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-23.2.0-pyh71513ae_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-auth-0.7.18-hb47d15a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-cal-0.6.11-hbce485b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-common-0.9.15-h10d778d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-compression-0.2.18-h53e3db5_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-event-stream-0.4.2-he461af8_8.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-http-0.8.1-h0afc28a_10.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-io-0.14.7-h6254544_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-mqtt-0.10.4-hd66502f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-s3-0.5.7-h5d4520e_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-sdkutils-0.1.15-h53e3db5_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-checksums-0.1.18-h53e3db5_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-crt-cpp-0.26.8-ha933895_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-sdk-cpp-1.11.267-h8dd24e3_7.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-core-cpp-1.11.1-hbb1e571_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-identity-cpp-1.6.0-h9a80fee_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-storage-blobs-cpp-12.10.0-h7728843_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-storage-common-cpp-12.5.0-h0e82ce4_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/black-24.4.2-py311h6eed73b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/blosc-1.21.5-hafa3907_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-1.1.0-h0dc2134_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-bin-1.1.0-h0dc2134_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-python-1.1.0-py311hdf8f085_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/bzip2-1.0.8-h10d778d_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.28.1-h10d778d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/ca-certificates-2024.2.2-h8857fd0_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/cairo-1.18.0-h99e66fa_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/cfitsio-4.4.0-h60fb419_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/cftime-1.6.3-py311hc9a392d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-unix_pyh707e725_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/contourpy-1.2.1-py311h1d816ee_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/coverage-7.5.0-py311h39126ff_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/cytoolz-0.12.3-py311he705e18_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.14-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.1.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/expat-2.6.2-h73e2aa4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/fiona-1.9.6-py311hd2ff552_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/fmt-10.2.1-h7728843_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-inconsolata-3.000-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-source-code-pro-2.038-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/fontconfig-2.14.2-h5bb23bf_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/fonttools-4.51.0-py311he705e18_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/freetype-2.12.1-h60636b9_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/freexl-2.0.0-h3ec172f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/gdal-3.8.5-py311hf8bdfd9_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.4-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/geos-3.12.1-h93d8f39_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/geotiff-1.7.1-h7c2ff5c_16.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/gflags-2.2.2-hb1e8313_1004.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/giflib-5.2.2-h10d778d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/glog-0.7.0-h31b1b29_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.24.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/hdf4-4.2.15-h8138101_7.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/hdf5-1.14.3-nompi_hb512a33_101.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/icu-73.2-hf5e326d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.7-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/json-c-0.17-h8e11ae5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/kealib-1.5.3-h5f07ac3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/kiwisolver-1.4.5-py311h5fe6e05_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/krb5-1.21.2-hb884880_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/lcms2-2.16-ha2f27b4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/lerc-4.0.0-hb486fe8_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libabseil-20240116.2-cxx17_hc1bcbd7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libaec-1.1.3-h73e2aa4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libarchive-3.7.2-hd35d340_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-15.0.2-hfba3c4c_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-acero-15.0.2-ha0df490_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-dataset-15.0.2-ha0df490_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-15.0.2-h41520de_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-sql-15.0.2-hb2e0ddf_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-gandiva-15.0.2-h81ca85a_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-substrait-15.0.2-hb2e0ddf_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libblas-3.9.0-22_osx64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libboost-headers-1.84.0-h694c41f_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlicommon-1.1.0-h0dc2134_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlidec-1.1.0-h0dc2134_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlienc-1.1.0-h0dc2134_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libcblas-3.9.0-22_osx64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libcrc32c-1.1.2-he49afe7_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.7.1-h726d00d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-16.0.6-hd57cbcb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libdeflate-1.20-h49d49c5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libedit-3.1.20191231-h0678c8f_2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libev-4.33-h10d778d_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libevent-2.1.12-ha90c15b_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libexpat-2.6.2-h73e2aa4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libffi-3.4.2-h0d85af4_5.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libgdal-3.8.5-h7db9259_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libgfortran-5.0.0-13_2_0_h97931a8_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libgfortran5-13.2.0-h2873a65_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libglib-2.80.0-h81c1438_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libgoogle-cloud-2.23.0-h651e89d_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libgoogle-cloud-storage-2.23.0-ha67e85c_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libgrpc-1.62.2-h384b2fc_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libiconv-1.17-hd75f5a5_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libintl-0.22.5-h5ff76d1_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libjpeg-turbo-3.0.0-h0dc2134_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libkml-1.3.0-hab3ca0e_1018.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/liblapack-3.9.0-22_osx64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm14-14.0.6-hc8e404f_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm16-16.0.6-hbedff68_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libnetcdf-4.9.2-nompi_h7760872_113.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libnghttp2-1.58.0-h64cf6d3_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libopenblas-0.3.27-openmp_hfef2a42_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libparquet-15.0.2-h7cd3cfe_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libpng-1.6.43-h92b6c6a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libpq-16.2-ha925e61_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libprotobuf-4.25.3-h4e4d658_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libre2-11-2023.09.01-h81f5012_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/librttopo-1.1.0-hf05f67e_15.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libspatialindex-1.9.3-he49afe7_4.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libspatialite-5.1.0-h487bbac_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libsqlite-3.45.3-h92b6c6a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libssh2-1.11.0-hd019ec5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libthrift-0.19.0-h064b379_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libtiff-4.6.0-h129831d_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libutf8proc-2.8.0-hb7f2c08_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libwebp-base-1.4.0-h10d778d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libxcb-1.15-hb7f2c08_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libxml2-2.12.6-hc0ae0f7_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libzip-1.10.1-hc158999_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libzlib-1.2.13-h8a1eda9_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-openmp-18.1.4-h2c61cee_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/llvmlite-0.42.0-py311hb5c2e0a_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/lz4-4.3.3-py311hdfabcfc_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/lz4-c-1.9.4-hf0c8a7f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/lzo-2.10-h10d778d_1001.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/markupsafe-2.1.5-py311he705e18_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/matplotlib-3.8.4-py311h6eed73b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/matplotlib-base-3.8.4-py311h6ff1f5f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/minizip-4.0.5-h37d7099_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/msgpack-python-1.0.7-py311h7bea37d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.4.20240210-h73e2aa4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/netcdf4-1.6.5-nompi_py311hd2be13f_100.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.3-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/nspr-4.35-hea0b92c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/nss-3.98-ha05da47_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/numba-0.59.1-py311h97119f7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/numpy-1.26.4-py311hc43a94b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/openjpeg-2.5.2-h7310d3a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.3.0-hd75f5a5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/orc-2.0.0-hf146577_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pandas-2.2.2-py311h8f6166a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pcre2-10.43-h0ad2156_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pillow-10.3.0-py311h1b85569_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pixman-0.43.4-h73e2aa4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.5.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/poppler-24.04.0-h0face88_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/postgresql-16.2-h06f2bd8_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/proj-9.4.0-h23b96cc_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/psutil-5.9.8-py311he705e18_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pthread-stubs-0.4-hc929b4f_1001.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pyarrow-15.0.2-py311hcc74be5_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.7.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pydantic-core-2.18.2-py311h2786eb7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pyogrio-0.7.2-py311h809632c_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pyproj-3.6.1-py311h80d4116_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.2.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/python-3.11.9-h657bba9_0_cpython.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/python_abi-3.11-4_cp311.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pyyaml-6.0.1-py311h2725bcf_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/re2-2023.09.01-hb168e87_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/readline-8.2-h9e318b2_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/rtree-1.2.0-py311hbc1f44b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/scikit-learn-1.4.2-py311he2b4599_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/scipy-1.13.0-py311h86d0cd9_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.5.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/shapely-2.0.4-py311h4c12f3d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/snappy-1.2.0-h6dc393e_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/sortedcontainers-2.4.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/spdlog-1.13.0-h1a4aec9_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/sqlite-3.45.3-h7461747_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.5.0-pyhc1e730c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/tiledb-2.22.0-hf5f2543_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-h1abcd95_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/tornado-6.4-py311he705e18_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.4.10-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240417-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.11.0-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.11.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/tzcode-2024a-h10d778d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/uriparser-0.9.7-he965462_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/wrapt-1.16.0-py311he705e18_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/xerces-c-3.2.5-hbbe9ea5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/xorg-libxau-1.0.11-h0dc2134_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/xorg-libxdmcp-1.1.3-h35c211d_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xugrid-0.10.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2024.4.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/xz-5.2.6-h775f41a_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/yaml-0.2.5-h0d85af4_2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/zict-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/zlib-1.2.13-h8a1eda9_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/zstd-1.5.5-h829000d_0.conda
+ osx-arm64:
+ - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-23.2.0-pyh71513ae_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-auth-0.7.18-h382b9c6_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-cal-0.6.11-hd34e5fa_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-common-0.9.15-h93a5062_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-compression-0.2.18-hd34e5fa_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-event-stream-0.4.2-h247c08a_8.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-http-0.8.1-hf9e830b_10.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-io-0.14.7-h33d81b3_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-mqtt-0.10.4-h5f4abda_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-s3-0.5.7-h7644b7e_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-sdkutils-0.1.15-hd34e5fa_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-checksums-0.1.18-hd34e5fa_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-crt-cpp-0.26.8-h7541583_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-sdk-cpp-1.11.267-h18943f6_7.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-core-cpp-1.11.1-he231e37_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-identity-cpp-1.6.0-hd1853d3_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-storage-blobs-cpp-12.10.0-h2ffa867_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-storage-common-cpp-12.5.0-h09a5875_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/black-24.4.2-py311h267d04e_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/blosc-1.21.5-h9c252e8_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-1.1.0-hb547adb_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-bin-1.1.0-hb547adb_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-python-1.1.0-py311ha891d26_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-h93a5062_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.28.1-h93a5062_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ca-certificates-2024.2.2-hf0a4a13_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cairo-1.18.0-hd1e100b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cfitsio-4.4.0-h808cd33_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cftime-1.6.3-py311h9ea6feb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-unix_pyh707e725_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/contourpy-1.2.1-py311hcc98501_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/coverage-7.5.0-py311hd23d018_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cytoolz-0.12.3-py311h05b510d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.14-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.1.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/expat-2.6.2-hebf3989_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fiona-1.9.6-py311h1c26527_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fmt-10.2.1-h2ffa867_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-inconsolata-3.000-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-source-code-pro-2.038-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fontconfig-2.14.2-h82840c6_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fonttools-4.51.0-py311h05b510d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/freetype-2.12.1-hadb7bae_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/freexl-2.0.0-hfbad9fb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gdal-3.8.5-py311h7f90d8e_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.4-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/geos-3.12.1-h965bd2d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/geotiff-1.7.1-h6e650f3_16.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gflags-2.2.2-hc88da5d_1004.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/giflib-5.2.2-h93a5062_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/glog-0.7.0-hc6770e3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.24.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/hdf4-4.2.15-h2ee6834_7.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/hdf5-1.14.3-nompi_h751145d_101.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-73.2-hc8870d7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.7-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/json-c-0.17-h40ed0f5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/kealib-1.5.3-h210d843_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/kiwisolver-1.4.5-py311he4fd1f5_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.21.2-h92f50d5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lcms2-2.16-ha0e7c42_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lerc-4.0.0-h9a09cb3_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libabseil-20240116.2-cxx17_hebf3989_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libaec-1.1.3-hebf3989_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarchive-3.7.2-hcacb583_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-15.0.2-hea125af_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-acero-15.0.2-h3f3aa29_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-dataset-15.0.2-h3f3aa29_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-15.0.2-h224147a_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-sql-15.0.2-hb630850_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-gandiva-15.0.2-h3b9069c_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-substrait-15.0.2-hd92e347_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libblas-3.9.0-22_osxarm64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libboost-headers-1.84.0-hce30654_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlicommon-1.1.0-hb547adb_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlidec-1.1.0-hb547adb_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlienc-1.1.0-hb547adb_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcblas-3.9.0-22_osxarm64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcrc32c-1.1.2-hbdafb3b_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.7.1-h2d989ff_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-16.0.6-h4653b0c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libdeflate-1.20-h93a5062_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libedit-3.1.20191231-hc8eb9b7_2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libev-4.33-h93a5062_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libevent-2.1.12-h2757513_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.6.2-hebf3989_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libffi-3.4.2-h3422bc3_5.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgdal-3.8.5-h2f7ae65_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgfortran-5.0.0-13_2_0_hd922786_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgfortran5-13.2.0-hf226fd6_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libglib-2.80.0-hfc324ee_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgoogle-cloud-2.23.0-hbebe991_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgoogle-cloud-storage-2.23.0-h8a76758_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgrpc-1.62.2-h9c18a4f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libiconv-1.17-h0d3ecfb_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libintl-0.22.5-h8fbad5d_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libjpeg-turbo-3.0.0-hb547adb_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libkml-1.3.0-h1eb4d9f_1018.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblapack-3.9.0-22_osxarm64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm14-14.0.6-hd1a9a77_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm16-16.0.6-haab561b_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnetcdf-4.9.2-nompi_h291a7c2_113.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnghttp2-1.58.0-ha4dd798_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libopenblas-0.3.27-openmp_h6c19121_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libparquet-15.0.2-h5304c63_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libpng-1.6.43-h091b4b1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libpq-16.2-h0f8b458_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libprotobuf-4.25.3-hbfab5d5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libre2-11-2023.09.01-h7b2c953_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/librttopo-1.1.0-hc8f776e_15.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libspatialindex-1.9.3-hbdafb3b_4.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libspatialite-5.1.0-h77c30ab_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.45.3-h091b4b1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libssh2-1.11.0-h7a5bd25_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libthrift-0.19.0-h026a170_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libtiff-4.6.0-h07db509_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libutf8proc-2.8.0-h1a8c8d9_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libwebp-base-1.4.0-h93a5062_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxcb-1.15-hf346824_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-2.12.6-h0d0cfa8_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzip-1.10.1-ha0bc3c6_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzlib-1.2.13-h53f4e23_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-openmp-18.1.4-hbf6887a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvmlite-0.42.0-py311hf5d242d_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lz4-4.3.3-py311hd44b8e9_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lz4-c-1.9.4-hb7217d7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lzo-2.10-h93a5062_1001.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/markupsafe-2.1.5-py311h05b510d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/matplotlib-3.8.4-py311ha1ab1f8_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/matplotlib-base-3.8.4-py311hb58f1d1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/minizip-4.0.5-hc35e051_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/msgpack-python-1.0.7-py311hd03642b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.4.20240210-h078ce10_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/netcdf4-1.6.5-nompi_py311ha6bebe6_100.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.3-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nspr-4.35-hb7217d7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nss-3.98-h5ce2875_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numba-0.59.1-py311h00351ea_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numpy-1.26.4-py311h7125741_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openjpeg-2.5.2-h9f1df11_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.3.0-h0d3ecfb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/orc-2.0.0-h4aad248_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pandas-2.2.2-py311hfbe21a1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pcre2-10.43-h26f9a81_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pillow-10.3.0-py311h0b5d0a1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pixman-0.43.4-hebf3989_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.5.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/poppler-24.04.0-h42742f0_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/postgresql-16.2-hf829917_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/proj-9.4.0-h52fb9d0_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/psutil-5.9.8-py311h05b510d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pthread-stubs-0.4-h27ca646_1001.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyarrow-15.0.2-py311h5ff715f_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.7.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pydantic-core-2.18.2-py311h5d190b6_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyogrio-0.7.2-py311h4760b73_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyproj-3.6.1-py311ha70c146_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.2.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.11.9-h932a869_0_cpython.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python_abi-3.11-4_cp311.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyyaml-6.0.1-py311heffc1b2_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/re2-2023.09.01-h4cba328_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/readline-8.2-h92ec313_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/rtree-1.2.0-py311hd698ff7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/scikit-learn-1.4.2-py311h696fe38_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/scipy-1.13.0-py311h4f9446f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.5.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/shapely-2.0.4-py311h0815064_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/snappy-1.2.0-hd04f947_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/sortedcontainers-2.4.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/spdlog-1.13.0-h5fcca99_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sqlite-3.45.3-hf2abe2d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.5.0-pyhc1e730c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tiledb-2.22.0-hf0716ca_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h5083fa2_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tornado-6.4-py311h05b510d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.4.10-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240417-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.11.0-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.11.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tzcode-2024a-h93a5062_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/uriparser-0.9.7-h13dd4ca_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/wrapt-1.16.0-py311h05b510d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xerces-c-3.2.5-hf393695_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xorg-libxau-1.0.11-hb547adb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xorg-libxdmcp-1.1.3-h27ca646_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xugrid-0.10.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2024.4.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xz-5.2.6-h57fd34a_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/yaml-0.2.5-h3422bc3_2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/zict-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zlib-1.2.13-h53f4e23_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.5-h4f39d0f_0.conda
+ win-64:
+ - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-23.2.0-pyh71513ae_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-auth-0.7.18-hba7c1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-cal-0.6.11-ha21e00f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-common-0.9.15-hcfcfb64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-compression-0.2.18-ha21e00f_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-event-stream-0.4.2-hf668b60_8.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-http-0.8.1-hd704247_10.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-io-0.14.7-h14865c8_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-mqtt-0.10.4-h748201e_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-s3-0.5.7-h0ac6cc1_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-sdkutils-0.1.15-ha21e00f_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-checksums-0.1.18-ha21e00f_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-crt-cpp-0.26.8-h2199128_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-sdk-cpp-1.11.267-h3f4ca61_7.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/azure-core-cpp-1.11.1-h249a519_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/azure-identity-cpp-1.6.0-h91493d7_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/azure-storage-blobs-cpp-12.10.0-h91493d7_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/azure-storage-common-cpp-12.5.0-h91493d7_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/black-24.4.2-py311h1ea47a8_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/blosc-1.21.5-hbd69f2e_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-1.1.0-hcfcfb64_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-bin-1.1.0-hcfcfb64_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-python-1.1.0-py311h12c1d0e_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/bzip2-1.0.8-hcfcfb64_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/c-ares-1.28.1-hcfcfb64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/ca-certificates-2024.2.2-h56e8100_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/cairo-1.18.0-h1fef639_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/cfitsio-4.4.0-h9b0cee5_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/cftime-1.6.3-py311h59ca53f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-win_pyh7428d3b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/contourpy-1.2.1-py311h005e61a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/coverage-7.5.0-py311he736701_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/cytoolz-0.12.3-py311ha68e1ae_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.14-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.1.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/expat-2.6.2-h63175ca_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/fiona-1.9.6-py311hbcf8545_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/fmt-10.2.1-h181d51b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-inconsolata-3.000-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-source-code-pro-2.038-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/fontconfig-2.14.2-hbde0cde_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/fonttools-4.51.0-py311ha68e1ae_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/freetype-2.12.1-hdaf720e_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/freexl-2.0.0-h8276f4a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/gdal-3.8.5-py311h04e801d_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.4-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/geos-3.12.1-h1537add_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/geotiff-1.7.1-hed9d743_16.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/glib-2.80.0-h39d0aa6_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/glib-tools-2.80.0-h0a98069_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/gst-plugins-base-1.24.1-h001b923_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/gstreamer-1.24.1-hb4038d2_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.24.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/hdf4-4.2.15-h5557f11_7.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/hdf5-1.14.3-nompi_h73e8ff5_101.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/icu-73.2-h63175ca_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.7-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/intel-openmp-2024.1.0-h57928b3_965.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/kealib-1.5.3-hd248416_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/kiwisolver-1.4.5-py311h005e61a_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.21.2-heb0366b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/lcms2-2.16-h67d730c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/lerc-4.0.0-h63175ca_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libabseil-20240116.2-cxx17_h63175ca_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libaec-1.1.3-h63175ca_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libarchive-3.7.2-h313118b_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-15.0.2-he3d97d8_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-acero-15.0.2-he0c23c2_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-dataset-15.0.2-he0c23c2_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-15.0.2-ha7f4a34_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-sql-15.0.2-hdeef14f_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-gandiva-15.0.2-hd4515a1_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-substrait-15.0.2-h1f0e801_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libblas-3.9.0-22_win64_mkl.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libboost-headers-1.84.0-h57928b3_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlicommon-1.1.0-hcfcfb64_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlidec-1.1.0-hcfcfb64_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlienc-1.1.0-hcfcfb64_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libcblas-3.9.0-22_win64_mkl.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libclang13-18.1.4-default_hf64faad_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libcrc32c-1.1.2-h0e60522_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.7.1-hd5e4a3a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libdeflate-1.20-hcfcfb64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libevent-2.1.12-h3671451_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.6.2-h63175ca_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.4.2-h8ffe710_5.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libgdal-3.8.5-hfb9f81c_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libglib-2.80.0-h39d0aa6_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libgoogle-cloud-2.23.0-h68df31e_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libgoogle-cloud-storage-2.23.0-hb581fae_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libgrpc-1.62.2-h5273850_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libhwloc-2.10.0-default_h2fffb23_1000.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libiconv-1.17-hcfcfb64_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libintl-0.22.5-h5728263_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libintl-devel-0.22.5-h5728263_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libjpeg-turbo-3.0.0-hcfcfb64_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libkml-1.3.0-haf3e7a6_1018.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/liblapack-3.9.0-22_win64_mkl.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libnetcdf-4.9.2-nompi_h07c049d_113.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libogg-1.3.4-h8ffe710_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libparquet-15.0.2-h178134c_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libpng-1.6.43-h19919ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libpq-16.2-hdb24f17_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libprotobuf-4.25.3-h503648d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libre2-11-2023.09.01-hf8d8778_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/librttopo-1.1.0-h94c4f80_15.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libspatialindex-1.9.3-h39d44d4_4.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libspatialite-5.1.0-hf13de1f_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.45.3-hcfcfb64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libssh2-1.11.0-h7dfc565_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libthrift-0.19.0-ha2b3283_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libtiff-4.6.0-hddb2be6_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libutf8proc-2.8.0-h82a8f57_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libvorbis-1.3.7-h0e60522_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libwebp-base-1.4.0-hcfcfb64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libxcb-1.15-hcd874cb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libxml2-2.12.6-hc3477c8_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libzip-1.10.1-h1d365fa_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libzlib-1.2.13-hcfcfb64_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/llvmlite-0.42.0-py311h5bc0dda_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/lz4-4.3.3-py311haddf500_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/lz4-c-1.9.4-hcfcfb64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/lzo-2.10-hcfcfb64_1001.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-gcc-libgfortran-5.3.0-6.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-gcc-libs-5.3.0-7.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-gcc-libs-core-5.3.0-7.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-gmp-6.1.0-2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-libwinpthread-git-5.0.0.4634.697f757-2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/markupsafe-2.1.5-py311ha68e1ae_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/matplotlib-3.8.4-py311h1ea47a8_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/matplotlib-base-3.8.4-py311h6e989c2_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/minizip-4.0.5-h5bed578_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/mkl-2024.1.0-h66d3029_692.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/msgpack-python-1.0.7-py311h005e61a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/msys2-conda-epoch-20160418-1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/netcdf4-1.6.5-nompi_py311he019f65_100.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.3-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/numba-0.59.1-py311h2c0921f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/numpy-1.26.4-py311h0b4df5a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/openjpeg-2.5.2-h3d672ee_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.3.0-hcfcfb64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/orc-2.0.0-h7e885a9_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pandas-2.2.2-py311hf63dbb6_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pcre2-10.43-h17e33f8_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pillow-10.3.0-py311h6819b35_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pixman-0.43.4-h63175ca_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.5.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/ply-3.11-pyhd8ed1ab_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/poppler-24.04.0-h747fd5a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/postgresql-16.2-h94c9ec1_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/proj-9.4.0-he13c7e8_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/psutil-5.9.8-py311ha68e1ae_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pthread-stubs-0.4-hcd874cb_1001.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pthreads-win32-2.9.1-hfa6e2cd_3.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pyarrow-15.0.2-py311h6d3785f_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.7.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pydantic-core-2.18.2-py311h533ab2d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pyogrio-0.7.2-py311h759bd4f_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pyproj-3.6.1-py311hc1951a7_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pyqt-5.15.9-py311h125bc19_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pyqt5-sip-12.12.2-py311h12c1d0e_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyh0701188_6.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.2.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.11.9-h631f459_0_cpython.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/python_abi-3.11-4_cp311.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pyyaml-6.0.1-py311ha68e1ae_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/qt-main-5.15.8-hcef0176_21.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/re2-2023.09.01-hd3b24a8_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/rtree-1.2.0-py311hcacb13a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/scikit-learn-1.4.2-py311h142b183_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/scipy-1.13.0-py311h0b4df5a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.5.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/shapely-2.0.4-py311h16bee0b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/sip-6.7.12-py311h12c1d0e_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/snappy-1.2.0-hfb803bf_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/sortedcontainers-2.4.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/spdlog-1.13.0-h64d2f7d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/sqlite-3.45.3-hcfcfb64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/tbb-2021.12.0-h91493d7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.5.0-pyhc1e730c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/tiledb-2.22.0-h5657395_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h5226925_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/tornado-6.4-py311ha68e1ae_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.4.10-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240417-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.11.0-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.11.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/ucrt-10.0.22621.0-h57928b3_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/uriparser-0.9.7-h1537add_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-hcf57466_18.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.38.33130-h82b7239_18.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/vs2015_runtime-14.38.33130-hcb4865c_18.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/win_inet_pton-1.1.0-pyhd8ed1ab_6.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/wrapt-1.16.0-py311ha68e1ae_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/xerces-c-3.2.5-h63175ca_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/xorg-libxau-1.0.11-hcd874cb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/xorg-libxdmcp-1.1.3-hcd874cb_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xugrid-0.10.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2024.4.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/xz-5.2.6-h8d14728_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/yaml-0.2.5-h8ffe710_2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/zict-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/zlib-1.2.13-hcfcfb64_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/zstd-1.5.5-h12be248_0.conda
+ py312:
+ channels:
+ - url: https://conda.anaconda.org/conda-forge/
+ packages:
+ linux-64:
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/alsa-lib-1.2.11-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/attr-2.5.1-h166bdaf_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-23.2.0-pyh71513ae_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-auth-0.7.18-he0b1f16_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-cal-0.6.11-heb1d5e4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-common-0.9.15-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-compression-0.2.18-hce8ee76_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-event-stream-0.4.2-h01f5eca_8.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-http-0.8.1-hdb68c23_10.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-io-0.14.7-hbfbeace_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-mqtt-0.10.4-h50844eb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-s3-0.5.7-h6be9164_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-sdkutils-0.1.15-hce8ee76_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-checksums-0.1.18-hce8ee76_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-crt-cpp-0.26.8-h2150271_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-sdk-cpp-1.11.267-hddb5a97_7.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-core-cpp-1.11.1-h91d86a7_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-identity-cpp-1.6.0-hf1915f5_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-storage-blobs-cpp-12.10.0-h00ab1b0_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-storage-common-cpp-12.5.0-h94269e2_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/black-24.4.2-py312h7900ff3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/blosc-1.21.5-hc2324a3_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-1.1.0-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-bin-1.1.0-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.1.0-py312h30efb56_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hd590300_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.28.1-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2024.2.2-hbcca054_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/cairo-1.18.0-h3faef2a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/cfitsio-4.4.0-hbdc6101_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/cftime-1.6.3-py312hc7c0aa3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-unix_pyh707e725_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/contourpy-1.2.1-py312h8572e83_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/coverage-7.5.0-py312h9a8786e_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/cytoolz-0.12.3-py312h98912ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.14-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/dbus-1.13.6-h5008d03_3.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.1.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/expat-2.6.2-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/fiona-1.9.6-py312h66d9856_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/fmt-10.2.1-h00ab1b0_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-inconsolata-3.000-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-source-code-pro-2.038-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/fontconfig-2.14.2-h14ed4e7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.51.0-py312h98912ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/freetype-2.12.1-h267a509_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/freexl-2.0.0-h743c826_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/gdal-3.8.5-py312hca78659_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.4-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/geos-3.12.1-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/geotiff-1.7.1-h6cf1f90_16.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/gettext-0.22.5-h59595ed_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/gettext-tools-0.22.5-h59595ed_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/gflags-2.2.2-he1b5a44_1004.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/giflib-5.2.2-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-2.80.0-hf2295e7_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-tools-2.80.0-hde27a5a_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/glog-0.7.0-hed5481d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/graphite2-1.3.13-h59595ed_1003.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/gst-plugins-base-1.24.1-hfa15dee_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/gstreamer-1.24.1-h98fc4e7_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/harfbuzz-8.4.0-h3d44ed6_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.24.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/hdf4-4.2.15-h2a13503_7.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/hdf5-1.14.3-nompi_h4f84152_101.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/icu-73.2-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.7-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/json-c-0.17-h7ab15ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/kealib-1.5.3-h2f55d51_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.1-h166bdaf_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/kiwisolver-1.4.5-py312h8572e83_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.21.2-h659d440_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/lame-3.100-h166bdaf_1003.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/lcms2-2.16-hb7c19ff_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.40-h55db66e_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/lerc-4.0.0-h27087fc_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libabseil-20240116.2-cxx17_h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libaec-1.1.3-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libarchive-3.7.2-h2aa1ff5_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-15.0.2-hefa796f_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-acero-15.0.2-hbabe93e_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-dataset-15.0.2-hbabe93e_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-15.0.2-hc4f8a93_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-sql-15.0.2-he4f5ca8_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-gandiva-15.0.2-hc1954e9_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-substrait-15.0.2-he4f5ca8_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libasprintf-0.22.5-h661eb56_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libasprintf-devel-0.22.5-h661eb56_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libblas-3.9.0-22_linux64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libboost-headers-1.84.0-ha770c72_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlicommon-1.1.0-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlidec-1.1.0-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlienc-1.1.0-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libcap-2.69-h0f662aa_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.9.0-22_linux64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp15-15.0.7-default_h127d8a8_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang13-18.1.4-default_h5d6823c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libcrc32c-1.1.2-h9c3ff4c_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libcups-2.3.3-h4637d8d_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.7.1-hca28451_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.20-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20191231-he28a2e2_2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-hd590300_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libevent-2.1.12-hf998b51_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.6.2-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.4.2-h7f98852_5.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libflac-1.4.3-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-13.2.0-h77fa898_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcrypt-1.10.3-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgdal-3.8.5-hf9625ee_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgettextpo-0.22.5-h59595ed_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgettextpo-devel-0.22.5-h59595ed_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-13.2.0-h69a702a_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-13.2.0-h43f5ff8_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libglib-2.80.0-hf2295e7_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-13.2.0-h77fa898_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-2.23.0-h9be4e54_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-storage-2.23.0-hc7a4891_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgpg-error-1.49-h4f305b6_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgrpc-1.62.2-h15f2491_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.17-hd590300_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libjpeg-turbo-3.0.0-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libkml-1.3.0-h01aab08_1018.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.9.0-22_linux64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm14-14.0.6-hcd5def8_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm15-15.0.7-hb3ce162_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm16-16.0.6-hb3ce162_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm18-18.1.4-h2448989_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libnetcdf-4.9.2-nompi_h9612171_113.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.58.0-h47da74e_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libnl-3.9.0-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libnsl-2.0.1-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libogg-1.3.4-h7f98852_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.27-pthreads_h413a1c8_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libopus-1.3.1-h7f98852_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libparquet-15.0.2-hacf5a1f_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libpng-1.6.43-h2797004_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libpq-16.2-h33b98f1_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libprotobuf-4.25.3-h08a7969_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libre2-11-2023.09.01-h5a48ba9_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/librttopo-1.1.0-h8917695_15.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libsndfile-1.2.2-hc60ed4a_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libspatialindex-1.9.3-h9c3ff4c_4.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libspatialite-5.1.0-h6f065fc_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.45.3-h2797004_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libssh2-1.11.0-h0841786_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-13.2.0-hc0a3c3a_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libsystemd0-255-h3516f8a_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libthrift-0.19.0-hb90f79a_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.6.0-h1dd3fc0_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libutf8proc-2.8.0-h166bdaf_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.38.1-h0b41bf4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libvorbis-1.3.7-h9c3ff4c_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libwebp-base-1.4.0-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libxcb-1.15-h0b41bf4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libxcrypt-4.4.36-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libxkbcommon-1.7.0-h662e7e4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.12.6-h232c23b_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libzip-1.10.1-h2629f0a_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.2.13-hd590300_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/llvmlite-0.42.0-py312hb06c811_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/lz4-4.3.3-py312h03f37cb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/lz4-c-1.9.4-hcb278e6_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/lzo-2.10-hd590300_1001.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/markupsafe-2.1.5-py312h98912ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-3.8.4-py312h7900ff3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-base-3.8.4-py312he5832f3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/minizip-4.0.5-h0ab5242_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/mpg123-1.32.6-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/msgpack-python-1.0.7-py312h8572e83_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-common-8.3.0-hf1915f5_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-libs-8.3.0-hca2cd23_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.4.20240210-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/netcdf4-1.6.5-nompi_py312h26027e0_100.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.3-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/nspr-4.35-h27087fc_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/nss-3.98-h1d7d5a4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/numba-0.59.1-py312hacefee8_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/numpy-1.26.4-py312heda63a1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/openjpeg-2.5.2-h488ebb8_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.3.0-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/orc-2.0.0-h17fec99_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pandas-2.2.2-py312hfb8ada1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pcre2-10.43-hcad00b1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pillow-10.3.0-py312hdcec9eb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pixman-0.43.2-h59595ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.5.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/ply-3.11-pyhd8ed1ab_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/poppler-24.04.0-hb6cd0d7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/postgresql-16.2-h82ecc9d_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/proj-9.4.0-h1d62c97_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/psutil-5.9.8-py312h98912ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pthread-stubs-0.4-h36c2ea0_1001.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pulseaudio-client-17.0-hb77b528_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pyarrow-15.0.2-py312h3f82784_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.7.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pydantic-core-2.18.2-py312h4413252_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pyogrio-0.7.2-py312h66d9856_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pyproj-3.6.1-py312hb591178_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqt-5.15.9-py312h949fe66_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqt5-sip-12.12.2-py312h30efb56_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.2.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.12.3-hab00c5b_0_cpython.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/python_abi-3.12-4_cp312.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.1-py312h98912ed_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/qt-main-5.15.8-hc9dc06e_21.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/rdma-core-51.0-hd3aeb46_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/re2-2023.09.01-h7f4b329_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8228510_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/rtree-1.2.0-py312hb0aae1a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/s2n-1.4.12-h06160fa_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/scikit-learn-1.4.2-py312h394d371_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/scipy-1.13.0-py312heda63a1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.5.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/shapely-2.0.4-py312h9e6bd2c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/sip-6.7.12-py312h30efb56_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/snappy-1.2.0-hdb0a2a9_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/sortedcontainers-2.4.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/spdlog-1.13.0-hd2e6256_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/sqlite-3.45.3-h2c6b66d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.5.0-pyhc1e730c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/tiledb-2.22.0-h27f064a_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h4845f30_101.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/tornado-6.4-py312h98912ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.4.10-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240417-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.11.0-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.11.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/tzcode-2024a-h3f72095_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/ucx-1.15.0-ha691c75_8.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/uriparser-0.9.7-h59595ed_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/wrapt-1.16.0-py312h98912ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-0.4.0-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-image-0.4.0-h8ee46fc_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-keysyms-0.4.0-h8ee46fc_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-renderutil-0.3.9-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-wm-0.4.1-h8ee46fc_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xerces-c-3.2.5-hac6953d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xkeyboard-config-2.41-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-kbproto-1.0.7-h7f98852_1002.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libice-1.1.1-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libsm-1.2.4-h7391055_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libx11-1.8.9-h8ee46fc_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxau-1.0.11-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxdmcp-1.1.3-h7f98852_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxext-1.3.4-h0b41bf4_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxrender-0.9.11-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-renderproto-0.11.1-h7f98852_1002.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-xextproto-7.3.0-h0b41bf4_1003.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-xf86vidmodeproto-2.3.1-h7f98852_1002.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-xproto-7.0.31-h7f98852_1007.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xugrid-0.10.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2024.4.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xz-5.2.6-h166bdaf_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/yaml-0.2.5-h7f98852_2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/zict-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/zlib-1.2.13-hd590300_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.5-hfc55251_0.conda
+ osx-64:
+ - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-23.2.0-pyh71513ae_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-auth-0.7.18-hb47d15a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-cal-0.6.11-hbce485b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-common-0.9.15-h10d778d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-compression-0.2.18-h53e3db5_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-event-stream-0.4.2-he461af8_8.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-http-0.8.1-h0afc28a_10.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-io-0.14.7-h6254544_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-mqtt-0.10.4-hd66502f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-s3-0.5.7-h5d4520e_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-sdkutils-0.1.15-h53e3db5_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-checksums-0.1.18-h53e3db5_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-crt-cpp-0.26.8-ha933895_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-sdk-cpp-1.11.267-h8dd24e3_7.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-core-cpp-1.11.1-hbb1e571_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-identity-cpp-1.6.0-h9a80fee_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-storage-blobs-cpp-12.10.0-h7728843_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-storage-common-cpp-12.5.0-h0e82ce4_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/black-24.4.2-py312hb401068_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/blosc-1.21.5-hafa3907_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-1.1.0-h0dc2134_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-bin-1.1.0-h0dc2134_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-python-1.1.0-py312heafc425_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/bzip2-1.0.8-h10d778d_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.28.1-h10d778d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/ca-certificates-2024.2.2-h8857fd0_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/cairo-1.18.0-h99e66fa_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/cfitsio-4.4.0-h60fb419_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/cftime-1.6.3-py312h3f2338b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-unix_pyh707e725_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/contourpy-1.2.1-py312h9230928_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/coverage-7.5.0-py312h5fa3f64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/cytoolz-0.12.3-py312h41838bb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.14-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.1.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/expat-2.6.2-h73e2aa4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/fiona-1.9.6-py312hc18349f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/fmt-10.2.1-h7728843_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-inconsolata-3.000-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-source-code-pro-2.038-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/fontconfig-2.14.2-h5bb23bf_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/fonttools-4.51.0-py312h41838bb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/freetype-2.12.1-h60636b9_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/freexl-2.0.0-h3ec172f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/gdal-3.8.5-py312ha261e76_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.4-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/geos-3.12.1-h93d8f39_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/geotiff-1.7.1-h7c2ff5c_16.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/gflags-2.2.2-hb1e8313_1004.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/giflib-5.2.2-h10d778d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/glog-0.7.0-h31b1b29_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.24.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/hdf4-4.2.15-h8138101_7.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/hdf5-1.14.3-nompi_hb512a33_101.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/icu-73.2-hf5e326d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.7-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/json-c-0.17-h8e11ae5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/kealib-1.5.3-h5f07ac3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/kiwisolver-1.4.5-py312h49ebfd2_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/krb5-1.21.2-hb884880_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/lcms2-2.16-ha2f27b4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/lerc-4.0.0-hb486fe8_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libabseil-20240116.2-cxx17_hc1bcbd7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libaec-1.1.3-h73e2aa4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libarchive-3.7.2-hd35d340_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-15.0.2-hfba3c4c_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-acero-15.0.2-ha0df490_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-dataset-15.0.2-ha0df490_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-15.0.2-h41520de_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-sql-15.0.2-hb2e0ddf_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-gandiva-15.0.2-h81ca85a_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-substrait-15.0.2-hb2e0ddf_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libblas-3.9.0-22_osx64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libboost-headers-1.84.0-h694c41f_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlicommon-1.1.0-h0dc2134_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlidec-1.1.0-h0dc2134_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlienc-1.1.0-h0dc2134_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libcblas-3.9.0-22_osx64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libcrc32c-1.1.2-he49afe7_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.7.1-h726d00d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-16.0.6-hd57cbcb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libdeflate-1.20-h49d49c5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libedit-3.1.20191231-h0678c8f_2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libev-4.33-h10d778d_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libevent-2.1.12-ha90c15b_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libexpat-2.6.2-h73e2aa4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libffi-3.4.2-h0d85af4_5.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libgdal-3.8.5-h7db9259_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libgfortran-5.0.0-13_2_0_h97931a8_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libgfortran5-13.2.0-h2873a65_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libglib-2.80.0-h81c1438_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libgoogle-cloud-2.23.0-h651e89d_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libgoogle-cloud-storage-2.23.0-ha67e85c_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libgrpc-1.62.2-h384b2fc_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libiconv-1.17-hd75f5a5_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libintl-0.22.5-h5ff76d1_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libjpeg-turbo-3.0.0-h0dc2134_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libkml-1.3.0-hab3ca0e_1018.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/liblapack-3.9.0-22_osx64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm14-14.0.6-hc8e404f_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm16-16.0.6-hbedff68_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libnetcdf-4.9.2-nompi_h7760872_113.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libnghttp2-1.58.0-h64cf6d3_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libopenblas-0.3.27-openmp_hfef2a42_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libparquet-15.0.2-h7cd3cfe_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libpng-1.6.43-h92b6c6a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libpq-16.2-ha925e61_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libprotobuf-4.25.3-h4e4d658_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libre2-11-2023.09.01-h81f5012_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/librttopo-1.1.0-hf05f67e_15.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libspatialindex-1.9.3-he49afe7_4.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libspatialite-5.1.0-h487bbac_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libsqlite-3.45.3-h92b6c6a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libssh2-1.11.0-hd019ec5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libthrift-0.19.0-h064b379_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libtiff-4.6.0-h129831d_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libutf8proc-2.8.0-hb7f2c08_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libwebp-base-1.4.0-h10d778d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libxcb-1.15-hb7f2c08_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libxml2-2.12.6-hc0ae0f7_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libzip-1.10.1-hc158999_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/libzlib-1.2.13-h8a1eda9_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-openmp-18.1.4-h2c61cee_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/llvmlite-0.42.0-py312h534208b_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/lz4-4.3.3-py312h904eaf1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/lz4-c-1.9.4-hf0c8a7f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/lzo-2.10-h10d778d_1001.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/markupsafe-2.1.5-py312h41838bb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/matplotlib-3.8.4-py312hb401068_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/matplotlib-base-3.8.4-py312h1fe5000_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/minizip-4.0.5-h37d7099_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/msgpack-python-1.0.7-py312hbf0bb39_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.4.20240210-h73e2aa4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/netcdf4-1.6.5-nompi_py312hd4beaa4_100.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.3-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/nspr-4.35-hea0b92c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/nss-3.98-ha05da47_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/numba-0.59.1-py312h04e34b5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/numpy-1.26.4-py312he3a82b2_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/openjpeg-2.5.2-h7310d3a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.3.0-hd75f5a5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/orc-2.0.0-hf146577_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pandas-2.2.2-py312h83c8a23_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pcre2-10.43-h0ad2156_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pillow-10.3.0-py312h0c923fa_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pixman-0.43.4-h73e2aa4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.5.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/poppler-24.04.0-h0face88_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/postgresql-16.2-h06f2bd8_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/proj-9.4.0-h23b96cc_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/psutil-5.9.8-py312h41838bb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pthread-stubs-0.4-hc929b4f_1001.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pyarrow-15.0.2-py312h3db2695_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.7.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pydantic-core-2.18.2-py312h5b0d100_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pyogrio-0.7.2-py312h3aaa50d_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pyproj-3.6.1-py312h91094b2_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.2.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/python-3.12.3-h1411813_0_cpython.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/python_abi-3.12-4_cp312.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/pyyaml-6.0.1-py312h104f124_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/re2-2023.09.01-hb168e87_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/readline-8.2-h9e318b2_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/rtree-1.2.0-py312h8974cf7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/scikit-learn-1.4.2-py312h7167a34_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/scipy-1.13.0-py312h8adb940_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.5.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/shapely-2.0.4-py312h8fb43f9_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/snappy-1.2.0-h6dc393e_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/sortedcontainers-2.4.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/spdlog-1.13.0-h1a4aec9_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/sqlite-3.45.3-h7461747_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.5.0-pyhc1e730c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/tiledb-2.22.0-hf5f2543_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-h1abcd95_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/tornado-6.4-py312h41838bb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.4.10-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240417-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.11.0-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.11.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/tzcode-2024a-h10d778d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/uriparser-0.9.7-he965462_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/wrapt-1.16.0-py312h41838bb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/xerces-c-3.2.5-hbbe9ea5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/xorg-libxau-1.0.11-h0dc2134_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/xorg-libxdmcp-1.1.3-h35c211d_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xugrid-0.10.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2024.4.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/xz-5.2.6-h775f41a_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/yaml-0.2.5-h0d85af4_2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/zict-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/zlib-1.2.13-h8a1eda9_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-64/zstd-1.5.5-h829000d_0.conda
+ osx-arm64:
+ - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-23.2.0-pyh71513ae_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-auth-0.7.18-h382b9c6_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-cal-0.6.11-hd34e5fa_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-common-0.9.15-h93a5062_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-compression-0.2.18-hd34e5fa_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-event-stream-0.4.2-h247c08a_8.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-http-0.8.1-hf9e830b_10.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-io-0.14.7-h33d81b3_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-mqtt-0.10.4-h5f4abda_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-s3-0.5.7-h7644b7e_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-sdkutils-0.1.15-hd34e5fa_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-checksums-0.1.18-hd34e5fa_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-crt-cpp-0.26.8-h7541583_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-sdk-cpp-1.11.267-h18943f6_7.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-core-cpp-1.11.1-he231e37_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-identity-cpp-1.6.0-hd1853d3_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-storage-blobs-cpp-12.10.0-h2ffa867_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-storage-common-cpp-12.5.0-h09a5875_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/black-24.4.2-py312h81bd7bf_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/blosc-1.21.5-h9c252e8_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-1.1.0-hb547adb_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-bin-1.1.0-hb547adb_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-python-1.1.0-py312h9f69965_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-h93a5062_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.28.1-h93a5062_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ca-certificates-2024.2.2-hf0a4a13_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cairo-1.18.0-hd1e100b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cfitsio-4.4.0-h808cd33_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cftime-1.6.3-py312hf635c46_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-unix_pyh707e725_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/contourpy-1.2.1-py312h0fef576_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/coverage-7.5.0-py312h4a164c9_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cytoolz-0.12.3-py312he37b823_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.14-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.1.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/expat-2.6.2-hebf3989_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fiona-1.9.6-py312hd158ed5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fmt-10.2.1-h2ffa867_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-inconsolata-3.000-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-source-code-pro-2.038-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fontconfig-2.14.2-h82840c6_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fonttools-4.51.0-py312he37b823_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/freetype-2.12.1-hadb7bae_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/freexl-2.0.0-hfbad9fb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gdal-3.8.5-py312hb48d578_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.4-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/geos-3.12.1-h965bd2d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/geotiff-1.7.1-h6e650f3_16.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gflags-2.2.2-hc88da5d_1004.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/giflib-5.2.2-h93a5062_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/glog-0.7.0-hc6770e3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.24.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/hdf4-4.2.15-h2ee6834_7.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/hdf5-1.14.3-nompi_h751145d_101.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-73.2-hc8870d7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.7-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/json-c-0.17-h40ed0f5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/kealib-1.5.3-h210d843_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/kiwisolver-1.4.5-py312h389731b_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.21.2-h92f50d5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lcms2-2.16-ha0e7c42_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lerc-4.0.0-h9a09cb3_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libabseil-20240116.2-cxx17_hebf3989_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libaec-1.1.3-hebf3989_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarchive-3.7.2-hcacb583_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-15.0.2-hea125af_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-acero-15.0.2-h3f3aa29_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-dataset-15.0.2-h3f3aa29_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-15.0.2-h224147a_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-sql-15.0.2-hb630850_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-gandiva-15.0.2-h3b9069c_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-substrait-15.0.2-hd92e347_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libblas-3.9.0-22_osxarm64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libboost-headers-1.84.0-hce30654_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlicommon-1.1.0-hb547adb_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlidec-1.1.0-hb547adb_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlienc-1.1.0-hb547adb_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcblas-3.9.0-22_osxarm64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcrc32c-1.1.2-hbdafb3b_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.7.1-h2d989ff_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-16.0.6-h4653b0c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libdeflate-1.20-h93a5062_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libedit-3.1.20191231-hc8eb9b7_2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libev-4.33-h93a5062_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libevent-2.1.12-h2757513_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.6.2-hebf3989_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libffi-3.4.2-h3422bc3_5.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgdal-3.8.5-h2f7ae65_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgfortran-5.0.0-13_2_0_hd922786_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgfortran5-13.2.0-hf226fd6_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libglib-2.80.0-hfc324ee_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgoogle-cloud-2.23.0-hbebe991_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgoogle-cloud-storage-2.23.0-h8a76758_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgrpc-1.62.2-h9c18a4f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libiconv-1.17-h0d3ecfb_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libintl-0.22.5-h8fbad5d_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libjpeg-turbo-3.0.0-hb547adb_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libkml-1.3.0-h1eb4d9f_1018.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblapack-3.9.0-22_osxarm64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm14-14.0.6-hd1a9a77_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm16-16.0.6-haab561b_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnetcdf-4.9.2-nompi_h291a7c2_113.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnghttp2-1.58.0-ha4dd798_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libopenblas-0.3.27-openmp_h6c19121_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libparquet-15.0.2-h5304c63_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libpng-1.6.43-h091b4b1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libpq-16.2-h0f8b458_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libprotobuf-4.25.3-hbfab5d5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libre2-11-2023.09.01-h7b2c953_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/librttopo-1.1.0-hc8f776e_15.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libspatialindex-1.9.3-hbdafb3b_4.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libspatialite-5.1.0-h77c30ab_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.45.3-h091b4b1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libssh2-1.11.0-h7a5bd25_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libthrift-0.19.0-h026a170_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libtiff-4.6.0-h07db509_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libutf8proc-2.8.0-h1a8c8d9_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libwebp-base-1.4.0-h93a5062_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxcb-1.15-hf346824_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-2.12.6-h0d0cfa8_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzip-1.10.1-ha0bc3c6_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzlib-1.2.13-h53f4e23_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-openmp-18.1.4-hbf6887a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvmlite-0.42.0-py312h17030e7_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lz4-4.3.3-py312haed5471_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lz4-c-1.9.4-hb7217d7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lzo-2.10-h93a5062_1001.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/markupsafe-2.1.5-py312he37b823_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/matplotlib-3.8.4-py312h1f38498_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/matplotlib-base-3.8.4-py312ha6faf65_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/minizip-4.0.5-hc35e051_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/msgpack-python-1.0.7-py312h76e736e_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.4.20240210-h078ce10_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/netcdf4-1.6.5-nompi_py312h9035142_100.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.3-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nspr-4.35-hb7217d7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nss-3.98-h5ce2875_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numba-0.59.1-py312hbaff935_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numpy-1.26.4-py312h8442bc7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openjpeg-2.5.2-h9f1df11_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.3.0-h0d3ecfb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/orc-2.0.0-h4aad248_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pandas-2.2.2-py312h88edd18_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pcre2-10.43-h26f9a81_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pillow-10.3.0-py312h8a801b1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pixman-0.43.4-hebf3989_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.5.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/poppler-24.04.0-h42742f0_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/postgresql-16.2-hf829917_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/proj-9.4.0-h52fb9d0_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/psutil-5.9.8-py312he37b823_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pthread-stubs-0.4-h27ca646_1001.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyarrow-15.0.2-py312hbf1f86f_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.7.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pydantic-core-2.18.2-py312hbdaf6d9_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyogrio-0.7.2-py312hfe67d44_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyproj-3.6.1-py312h71aa0db_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.2.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.12.3-h4a7b5fc_0_cpython.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python_abi-3.12-4_cp312.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyyaml-6.0.1-py312h02f2b3b_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/re2-2023.09.01-h4cba328_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/readline-8.2-h92ec313_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/rtree-1.2.0-py312h22f7183_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/scikit-learn-1.4.2-py312hd4306f4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/scipy-1.13.0-py312h9d7df2b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.5.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/shapely-2.0.4-py312h04e4829_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/snappy-1.2.0-hd04f947_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/sortedcontainers-2.4.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/spdlog-1.13.0-h5fcca99_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sqlite-3.45.3-hf2abe2d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.5.0-pyhc1e730c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tiledb-2.22.0-hf0716ca_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h5083fa2_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tornado-6.4-py312he37b823_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.4.10-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240417-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.11.0-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.11.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tzcode-2024a-h93a5062_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/uriparser-0.9.7-h13dd4ca_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/wrapt-1.16.0-py312he37b823_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xerces-c-3.2.5-hf393695_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xorg-libxau-1.0.11-hb547adb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xorg-libxdmcp-1.1.3-h27ca646_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xugrid-0.10.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2024.4.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xz-5.2.6-h57fd34a_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/yaml-0.2.5-h3422bc3_2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/zict-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zlib-1.2.13-h53f4e23_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.5-h4f39d0f_0.conda
+ win-64:
+ - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-23.2.0-pyh71513ae_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-auth-0.7.18-hba7c1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-cal-0.6.11-ha21e00f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-common-0.9.15-hcfcfb64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-compression-0.2.18-ha21e00f_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-event-stream-0.4.2-hf668b60_8.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-http-0.8.1-hd704247_10.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-io-0.14.7-h14865c8_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-mqtt-0.10.4-h748201e_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-s3-0.5.7-h0ac6cc1_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-sdkutils-0.1.15-ha21e00f_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-checksums-0.1.18-ha21e00f_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-crt-cpp-0.26.8-h2199128_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/aws-sdk-cpp-1.11.267-h3f4ca61_7.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/azure-core-cpp-1.11.1-h249a519_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/azure-identity-cpp-1.6.0-h91493d7_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/azure-storage-blobs-cpp-12.10.0-h91493d7_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/azure-storage-common-cpp-12.5.0-h91493d7_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/black-24.4.2-py312h2e8e312_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/blosc-1.21.5-hbd69f2e_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-1.1.0-hcfcfb64_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-bin-1.1.0-hcfcfb64_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-python-1.1.0-py312h53d5487_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/bzip2-1.0.8-hcfcfb64_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/c-ares-1.28.1-hcfcfb64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/ca-certificates-2024.2.2-h56e8100_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/cairo-1.18.0-h1fef639_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/cfitsio-4.4.0-h9b0cee5_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/cftime-1.6.3-py312ha90f08f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-win_pyh7428d3b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/contourpy-1.2.1-py312h0d7def4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/coverage-7.5.0-py312h4389bb4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/cytoolz-0.12.3-py312he70551f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.14-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.1.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/expat-2.6.2-h63175ca_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/fiona-1.9.6-py312h95cbb4d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/fmt-10.2.1-h181d51b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-inconsolata-3.000-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-source-code-pro-2.038-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/fontconfig-2.14.2-hbde0cde_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/fonttools-4.51.0-py312he70551f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/freetype-2.12.1-hdaf720e_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/freexl-2.0.0-h8276f4a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/gdal-3.8.5-py312hea5013e_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.4-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.4-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/geos-3.12.1-h1537add_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/geotiff-1.7.1-hed9d743_16.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/glib-2.80.0-h39d0aa6_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/glib-tools-2.80.0-h0a98069_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/gst-plugins-base-1.24.1-h001b923_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/gstreamer-1.24.1-hb4038d2_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.24.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/hdf4-4.2.15-h5557f11_7.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/hdf5-1.14.3-nompi_h73e8ff5_101.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/icu-73.2-h63175ca_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.7-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.4.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/kealib-1.5.3-hd248416_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/kiwisolver-1.4.5-py312h0d7def4_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.21.2-heb0366b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/lcms2-2.16-h67d730c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/lerc-4.0.0-h63175ca_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libabseil-20240116.2-cxx17_h63175ca_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libaec-1.1.3-h63175ca_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libarchive-3.7.2-h313118b_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-15.0.2-he3d97d8_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-acero-15.0.2-he0c23c2_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-dataset-15.0.2-he0c23c2_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-15.0.2-ha7f4a34_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-sql-15.0.2-hdeef14f_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-gandiva-15.0.2-hd4515a1_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-substrait-15.0.2-h1f0e801_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libblas-3.9.0-22_win64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libboost-headers-1.84.0-h57928b3_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlicommon-1.1.0-hcfcfb64_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlidec-1.1.0-hcfcfb64_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlienc-1.1.0-hcfcfb64_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libcblas-3.9.0-22_win64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libclang13-18.1.4-default_hf64faad_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libcrc32c-1.1.2-h0e60522_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.7.1-hd5e4a3a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libdeflate-1.20-hcfcfb64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libevent-2.1.12-h3671451_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.6.2-h63175ca_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.4.2-h8ffe710_5.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libflang-5.0.0-h6538335_20180525.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libgdal-3.8.5-hfb9f81c_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libglib-2.80.0-h39d0aa6_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libgoogle-cloud-2.23.0-h68df31e_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libgoogle-cloud-storage-2.23.0-hb581fae_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libgrpc-1.62.2-h5273850_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libiconv-1.17-hcfcfb64_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libintl-0.22.5-h5728263_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libintl-devel-0.22.5-h5728263_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libjpeg-turbo-3.0.0-hcfcfb64_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libkml-1.3.0-haf3e7a6_1018.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/liblapack-3.9.0-22_win64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libnetcdf-4.9.2-nompi_h07c049d_113.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libogg-1.3.4-h8ffe710_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libopenblas-0.3.27-pthreads_hc140b1d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libparquet-15.0.2-h178134c_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libpng-1.6.43-h19919ed_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libpq-16.2-hdb24f17_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libprotobuf-4.25.3-h503648d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libre2-11-2023.09.01-hf8d8778_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/librttopo-1.1.0-h94c4f80_15.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libspatialindex-1.9.3-h39d44d4_4.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libspatialite-5.1.0-hf13de1f_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.45.3-hcfcfb64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libssh2-1.11.0-h7dfc565_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libthrift-0.19.0-ha2b3283_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libtiff-4.6.0-hddb2be6_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libutf8proc-2.8.0-h82a8f57_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libvorbis-1.3.7-h0e60522_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libwebp-base-1.4.0-hcfcfb64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libxcb-1.15-hcd874cb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libxml2-2.12.6-hc3477c8_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libzip-1.10.1-h1d365fa_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libzlib-1.2.13-hcfcfb64_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/llvm-meta-5.0.0-0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/llvmlite-0.42.0-py312h7894644_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/lz4-4.3.3-py312h594ca44_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/lz4-c-1.9.4-hcfcfb64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/lzo-2.10-hcfcfb64_1001.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-gcc-libgfortran-5.3.0-6.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-gcc-libs-5.3.0-7.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-gcc-libs-core-5.3.0-7.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-gmp-6.1.0-2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-libwinpthread-git-5.0.0.4634.697f757-2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/markupsafe-2.1.5-py312he70551f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/matplotlib-3.8.4-py312h2e8e312_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/matplotlib-base-3.8.4-py312h26ecaf7_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/minizip-4.0.5-h5bed578_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/msgpack-python-1.0.7-py312h0d7def4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/msys2-conda-epoch-20160418-1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/netcdf4-1.6.5-nompi_py312he4da9c3_100.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.3-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/numba-0.59.1-py312h115d327_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/numpy-1.26.4-py312h8753938_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/openjpeg-2.5.2-h3d672ee_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/openmp-5.0.0-vc14_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.3.0-hcfcfb64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/orc-2.0.0-h7e885a9_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pandas-2.2.2-py312h2ab9e98_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pcre2-10.43-h17e33f8_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pillow-10.3.0-py312h6f6a607_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pixman-0.43.4-h63175ca_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.5.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/ply-3.11-pyhd8ed1ab_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/poppler-24.04.0-h747fd5a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/postgresql-16.2-h94c9ec1_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/proj-9.4.0-he13c7e8_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/psutil-5.9.8-py312he70551f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pthread-stubs-0.4-hcd874cb_1001.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pyarrow-15.0.2-py312h4af9903_6_cpu.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.7.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pydantic-core-2.18.2-py312h2615798_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pyogrio-0.7.2-py312he3b4e22_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pyproj-3.6.1-py312h616b599_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pyqt-5.15.9-py312he09f080_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pyqt5-sip-12.12.2-py312h53d5487_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyh0701188_6.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.2.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.12.3-h2628c8c_0_cpython.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/python_abi-3.12-4_cp312.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pyyaml-6.0.1-py312he70551f_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/qt-main-5.15.8-hcef0176_21.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/re2-2023.09.01-hd3b24a8_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/rtree-1.2.0-py312h72b5f30_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/scikit-learn-1.4.2-py312hcacafb1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/scipy-1.13.0-py312h8753938_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.5.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/shapely-2.0.4-py312h7d70906_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/sip-6.7.12-py312h53d5487_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/snappy-1.2.0-hfb803bf_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/sortedcontainers-2.4.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/spdlog-1.13.0-h64d2f7d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/sqlite-3.45.3-hcfcfb64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.5.0-pyhc1e730c_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/tiledb-2.22.0-h5657395_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h5226925_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/tornado-6.4-py312he70551f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.4.10-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240417-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.11.0-hd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.11.0-pyha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/ucrt-10.0.22621.0-h57928b3_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/uriparser-0.9.7-h1537add_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-hcf57466_18.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.38.33130-h82b7239_18.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/vs2015_runtime-14.38.33130-hcb4865c_18.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/win_inet_pton-1.1.0-pyhd8ed1ab_6.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/wrapt-1.16.0-py312he70551f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/xerces-c-3.2.5-h63175ca_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/xorg-libxau-1.0.11-hcd874cb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/xorg-libxdmcp-1.1.3-hcd874cb_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xugrid-0.10.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2024.4.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/xz-5.2.6-h8d14728_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/yaml-0.2.5-h8ffe710_2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/zict-3.0.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/zlib-1.2.13-hcfcfb64_5.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/zstd-1.5.5-h12be248_0.conda
+packages:
+- kind: conda
+ name: _libgcc_mutex
+ version: '0.1'
+ build: conda_forge
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2
+ sha256: fe51de6107f9edc7aa4f786a70f4a883943bc9d39b3bb7307c04c41410990726
+ md5: d7c89558ba9fa0495403155b64376d81
+ license: None
+ size: 2562
+ timestamp: 1578324546067
+- kind: conda
+ name: _openmp_mutex
+ version: '4.5'
+ build: 2_gnu
+ build_number: 16
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2
+ sha256: fbe2c5e56a653bebb982eda4876a9178aedfc2b545f25d0ce9c4c0b508253d22
+ md5: 73aaf86a425cc6e73fcf236a5a46396d
+ depends:
+ - _libgcc_mutex 0.1 conda_forge
+ - libgomp >=7.5.0
+ constrains:
+ - openmp_impl 9999
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 23621
+ timestamp: 1650670423406
+- kind: conda
+ name: alsa-lib
+ version: 1.2.11
+ build: hd590300_1
+ build_number: 1
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/alsa-lib-1.2.11-hd590300_1.conda
+ sha256: 0e2b75b9834a6e520b13db516f7cf5c9cea8f0bbc9157c978444173dacb98fec
+ md5: 0bb492cca54017ea314b809b1ee3a176
depends:
- libgcc-ng >=12
license: LGPL-2.1-or-later
@@ -1948,76 +6522,76 @@ packages:
- kind: conda
name: argon2-cffi-bindings
version: 21.2.0
- build: py311h2725bcf_4
+ build: py312h02f2b3b_4
build_number: 4
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/argon2-cffi-bindings-21.2.0-py311h2725bcf_4.conda
- sha256: be27659496bcb660fc9c3f5f74128a7bb090336897e9c7cfbcc55ae66f13b8d8
- md5: e2aba0ad0f533ee73f9d4330d2e32549
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/argon2-cffi-bindings-21.2.0-py312h02f2b3b_4.conda
+ sha256: 1cfcf4b2d36a3b183a5cb1c69f85768166e50af6ced5ae381c440666a6da12c6
+ md5: 015edbb6fae68ab35881f55f149d4725
depends:
- cffi >=1.0.1
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12.0rc3,<3.13.0a0
+ - python >=3.12.0rc3,<3.13.0a0 *_cpython
+ - python_abi 3.12.* *_cp312
license: MIT
license_family: MIT
- size: 32542
- timestamp: 1695386887016
+ size: 33607
+ timestamp: 1695387216062
- kind: conda
name: argon2-cffi-bindings
version: 21.2.0
- build: py311h459d7ec_4
+ build: py312h104f124_4
build_number: 4
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/argon2-cffi-bindings-21.2.0-py311h459d7ec_4.conda
- sha256: 104194af519b4e667aa5341068b94b521a791aaaa05ec0091f8f0bdba43a60ac
- md5: de5b16869a430949b02161b04b844a30
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/argon2-cffi-bindings-21.2.0-py312h104f124_4.conda
+ sha256: aa321e91f0ff365b5261fa1dcffa2d32aa957561bdbb38988e52e28e25a762a8
+ md5: dddfb6125aed1fb84eb13319007c08fd
depends:
- cffi >=1.0.1
- - libgcc-ng >=12
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12.0rc3,<3.13.0a0
+ - python_abi 3.12.* *_cp312
license: MIT
license_family: MIT
- size: 34955
- timestamp: 1695386703660
+ size: 32556
+ timestamp: 1695387174872
- kind: conda
name: argon2-cffi-bindings
version: 21.2.0
- build: py311ha68e1ae_4
+ build: py312h98912ed_4
build_number: 4
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/argon2-cffi-bindings-21.2.0-py311ha68e1ae_4.conda
- sha256: 0b8eb99e7ac6b409abbb5f3b9733f883865ff4314e85146380f072f6f6234929
- md5: e95c947541bf1cb821ea4a6bf7d5794c
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/argon2-cffi-bindings-21.2.0-py312h98912ed_4.conda
+ sha256: 8ddb4a586bc128f1b9484f82c5cb0226340527fbfe093adf3b76b7e755e11477
+ md5: 00536e0a1734dcde9815fe227f32fc5a
depends:
- cffi >=1.0.1
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
+ - libgcc-ng >=12
+ - python >=3.12.0rc3,<3.13.0a0
+ - python_abi 3.12.* *_cp312
license: MIT
license_family: MIT
- size: 34687
- timestamp: 1695387285415
+ size: 35142
+ timestamp: 1695386704886
- kind: conda
name: argon2-cffi-bindings
version: 21.2.0
- build: py312h02f2b3b_4
+ build: py312he70551f_4
build_number: 4
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/argon2-cffi-bindings-21.2.0-py312h02f2b3b_4.conda
- sha256: 1cfcf4b2d36a3b183a5cb1c69f85768166e50af6ced5ae381c440666a6da12c6
- md5: 015edbb6fae68ab35881f55f149d4725
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/argon2-cffi-bindings-21.2.0-py312he70551f_4.conda
+ sha256: 4c3c428b994400ca753d9d0adbb11ce2d2a87f4dacd86c91d6cf985c5d89a3e1
+ md5: 69b7a1d899d46b91f8eecab9abf9728c
depends:
- cffi >=1.0.1
- python >=3.12.0rc3,<3.13.0a0
- - python >=3.12.0rc3,<3.13.0a0 *_cpython
- python_abi 3.12.* *_cp312
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
license: MIT
license_family: MIT
- size: 33607
- timestamp: 1695387216062
+ size: 34750
+ timestamp: 1695387347676
- kind: conda
name: arrow
version: 1.3.0
@@ -2051,6 +6625,21 @@ packages:
license_family: Apache
size: 28922
timestamp: 1698341257884
+- kind: conda
+ name: astunparse
+ version: 1.6.3
+ build: pyhd8ed1ab_0
+ subdir: noarch
+ noarch: python
+ url: https://conda.anaconda.org/conda-forge/noarch/astunparse-1.6.3-pyhd8ed1ab_0.tar.bz2
+ sha256: e5173d1ed038038e24c0623f0219dc587ee8663cf7efa737e7075128edbc6c60
+ md5: 000b6f68a0bfaba800ced7500c11780f
+ depends:
+ - python >=3.6
+ - six >=1.6.1,<2.0
+ license: BSD-3-Clause AND PSF-2.0
+ size: 15539
+ timestamp: 1610696401707
- kind: conda
name: async-lru
version: 2.0.4
@@ -2099,956 +6688,964 @@ packages:
timestamp: 1704011393776
- kind: conda
name: aws-c-auth
- version: 0.7.16
- build: h51b92d1_6
- build_number: 6
+ version: 0.7.18
+ build: h382b9c6_0
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-auth-0.7.16-h51b92d1_6.conda
- sha256: 31aef20c1b0aac960929b573f6a89cef73af962e724b3dfd60984f3ef68fba4f
- md5: 31c872ee19dcbe3ad68a6e8739f6d5a0
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-auth-0.7.18-h382b9c6_0.conda
+ sha256: 42eb06f1052c12a699559b96647beb42d20888dc1e3fde3abe68dcecefd55394
+ md5: 43f47fb044fb56f69bcdfdfc9b3f0c7c
depends:
- - aws-c-cal >=0.6.10,<0.6.11.0a0
- - aws-c-common >=0.9.13,<0.9.14.0a0
+ - __osx >=11.0
+ - aws-c-cal >=0.6.11,<0.6.12.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
- aws-c-http >=0.8.1,<0.8.2.0a0
- - aws-c-io >=0.14.5,<0.14.6.0a0
+ - aws-c-io >=0.14.7,<0.14.8.0a0
- aws-c-sdkutils >=0.1.15,<0.1.16.0a0
license: Apache-2.0
license_family: Apache
- size: 89495
- timestamp: 1708633374785
+ size: 90288
+ timestamp: 1713478423671
- kind: conda
name: aws-c-auth
- version: 0.7.16
- build: h79b3bcb_6
- build_number: 6
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/aws-c-auth-0.7.16-h79b3bcb_6.conda
- sha256: b349c6d45191016cea97315aeff53550a796594dead8a9b1c0ad19e326c25e16
- md5: dfc34e202187d7859cb82e2795db1573
+ version: 0.7.18
+ build: hb47d15a_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/aws-c-auth-0.7.18-hb47d15a_0.conda
+ sha256: e79f35890ddca99475d7ab98b90c7c824868af6fdabc28e2faff4ce843af80a5
+ md5: 1da3db7ec9644f96f7996e2a0a7ec66b
depends:
- - aws-c-cal >=0.6.10,<0.6.11.0a0
- - aws-c-common >=0.9.13,<0.9.14.0a0
+ - __osx >=10.9
+ - aws-c-cal >=0.6.11,<0.6.12.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
- aws-c-http >=0.8.1,<0.8.2.0a0
- - aws-c-io >=0.14.5,<0.14.6.0a0
+ - aws-c-io >=0.14.7,<0.14.8.0a0
- aws-c-sdkutils >=0.1.15,<0.1.16.0a0
- - libgcc-ng >=12
license: Apache-2.0
license_family: Apache
- size: 103398
- timestamp: 1708633170554
+ size: 91488
+ timestamp: 1713478506093
- kind: conda
name: aws-c-auth
- version: 0.7.16
- build: h79cb451_6
- build_number: 6
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/aws-c-auth-0.7.16-h79cb451_6.conda
- sha256: 83d7d77a07e8de3c239f43be887cb3366d1c8df2fdbfa56c2c20fea1c8983cdf
- md5: 19c13428196fba3d188ac40c862b2f91
+ version: 0.7.18
+ build: hba7c1ab_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/aws-c-auth-0.7.18-hba7c1ab_0.conda
+ sha256: 32072f5c7930f59994e994812be4fa4e0fa09555274bfc5b6c1bc750508a06d0
+ md5: 685792017efe10b4aa9ba32158acf934
depends:
- - aws-c-cal >=0.6.10,<0.6.11.0a0
- - aws-c-common >=0.9.13,<0.9.14.0a0
+ - aws-c-cal >=0.6.11,<0.6.12.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
- aws-c-http >=0.8.1,<0.8.2.0a0
- - aws-c-io >=0.14.5,<0.14.6.0a0
+ - aws-c-io >=0.14.7,<0.14.8.0a0
- aws-c-sdkutils >=0.1.15,<0.1.16.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
license: Apache-2.0
license_family: Apache
- size: 90856
- timestamp: 1708633418805
+ size: 100400
+ timestamp: 1713479037529
- kind: conda
name: aws-c-auth
- version: 0.7.16
- build: hec1de76_6
- build_number: 6
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/aws-c-auth-0.7.16-hec1de76_6.conda
- sha256: 0859b727a9552276cd802d36d8bafd7fc88d871e26588a869d808af3bfaa1c5c
- md5: f881129dbe167a4371b9b8a49d19da00
+ version: 0.7.18
+ build: he0b1f16_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/aws-c-auth-0.7.18-he0b1f16_0.conda
+ sha256: 03dbdc7a3bb8a92d5404fcfc2ff2a68037860bb8a54dae345384b54f206c638f
+ md5: 5f4ec63692861f4a812898a4fbd5cc20
depends:
- - aws-c-cal >=0.6.10,<0.6.11.0a0
- - aws-c-common >=0.9.13,<0.9.14.0a0
+ - aws-c-cal >=0.6.11,<0.6.12.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
- aws-c-http >=0.8.1,<0.8.2.0a0
- - aws-c-io >=0.14.5,<0.14.6.0a0
+ - aws-c-io >=0.14.7,<0.14.8.0a0
- aws-c-sdkutils >=0.1.15,<0.1.16.0a0
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
+ - libgcc-ng >=12
license: Apache-2.0
license_family: Apache
- size: 99251
- timestamp: 1708633468680
+ size: 104635
+ timestamp: 1713478222324
- kind: conda
name: aws-c-cal
- version: 0.6.10
- build: h7beb4c2_1
- build_number: 1
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/aws-c-cal-0.6.10-h7beb4c2_1.conda
- sha256: 4f4993c960bf03ca0dbeae1ec180989d14ab657483c478f555814b0780c0fd77
- md5: 97102f4628da7052e523d4aad967edbe
+ version: 0.6.11
+ build: ha21e00f_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/aws-c-cal-0.6.11-ha21e00f_0.conda
+ sha256: 3925aa37d9cbceb4cceb10ac1f602ca9e86bbea53ebbc2f560b97f51989c56bc
+ md5: 683d416db152019f181c34e74a3fd0a2
depends:
- - aws-c-common >=0.9.13,<0.9.14.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
license: Apache-2.0
license_family: Apache
- size: 45497
- timestamp: 1708003974070
+ size: 45832
+ timestamp: 1712495134572
- kind: conda
name: aws-c-cal
- version: 0.6.10
- build: hb29e0c7_1
- build_number: 1
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/aws-c-cal-0.6.10-hb29e0c7_1.conda
- sha256: 919c34a3ddda2b02875780b0d2dbcf33b296f1d730ed258d9cabce2e4be61c57
- md5: 2400ab35ff4eec4fab57e06e7acd3c2a
+ version: 0.6.11
+ build: hbce485b_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/aws-c-cal-0.6.11-hbce485b_0.conda
+ sha256: a390f2c964408e9215046220351498bc80ca551be9dfac95702ce1be1dcfa436
+ md5: a7b19e98d30d51fdf0546e048cc0a262
depends:
- - aws-c-common >=0.9.13,<0.9.14.0a0
- - libgcc-ng >=12
- - openssl >=3.2.1,<4.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
license: Apache-2.0
license_family: Apache
- size: 55127
- timestamp: 1708003609547
+ size: 38803
+ timestamp: 1712495186044
- kind: conda
name: aws-c-cal
- version: 0.6.10
- build: hd481e46_1
- build_number: 1
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/aws-c-cal-0.6.10-hd481e46_1.conda
- sha256: 4156261cd494cd9be616dbd600891dcf07231e77c7ff7ecb7981b51d56d5bc7d
- md5: da259744152d8aab0609b1d470f12454
+ version: 0.6.11
+ build: hd34e5fa_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-cal-0.6.11-hd34e5fa_0.conda
+ sha256: 8296f9ad5415f6e640862116c4c3f4c1bc555ea05eab2ec32e112073cd697d79
+ md5: 92d0e6abc836c1c00facbd08d3b01ce9
depends:
- - aws-c-common >=0.9.13,<0.9.14.0a0
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
+ - aws-c-common >=0.9.15,<0.9.16.0a0
license: Apache-2.0
license_family: Apache
- size: 55726
- timestamp: 1708004211846
+ size: 39697
+ timestamp: 1712495118765
- kind: conda
name: aws-c-cal
- version: 0.6.10
- build: hf888d4c_1
- build_number: 1
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-cal-0.6.10-hf888d4c_1.conda
- sha256: 5409405d1c8ca1201abcbb8794c4595aba68972adb5619fd515c7215ef7b79e9
- md5: 01e7545d25af1db4894ec354e3f2a598
+ version: 0.6.11
+ build: heb1d5e4_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/aws-c-cal-0.6.11-heb1d5e4_0.conda
+ sha256: f1b40106a70cc294aab350daa97c760a9875073f58a5b7a25370c31fed8a2c15
+ md5: 98784bb35b316e2ba8698f4a75326e9a
depends:
- - aws-c-common >=0.9.13,<0.9.14.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
+ - libgcc-ng >=12
+ - openssl >=3.2.1,<4.0a0
license: Apache-2.0
license_family: Apache
- size: 39206
- timestamp: 1708003965707
+ size: 46257
+ timestamp: 1712494861919
- kind: conda
name: aws-c-common
- version: 0.9.13
+ version: 0.9.15
build: h10d778d_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/aws-c-common-0.9.13-h10d778d_0.conda
- sha256: 24fef8ce7551f11fda5e391e47b88009151d4d8382c28eacd0aa0acce4eaf11a
- md5: b27e0603b92ab365592d815a5bb8725f
+ url: https://conda.anaconda.org/conda-forge/osx-64/aws-c-common-0.9.15-h10d778d_0.conda
+ sha256: fed4405a55bce4dc7e947d8604d853ac46b17cf09712f1253932e9cc0fe70f92
+ md5: be6037c84d354c0303fdb077967f6048
license: Apache-2.0
license_family: Apache
- size: 208489
- timestamp: 1707964779175
+ size: 209383
+ timestamp: 1712101871696
- kind: conda
name: aws-c-common
- version: 0.9.13
+ version: 0.9.15
build: h93a5062_0
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-common-0.9.13-h93a5062_0.conda
- sha256: 2a9520cef3aa8a66c4613fef530b14e68baeaa5cc290a861adc6fdf8662afc71
- md5: 4eb10b4437da875a00f63205e92d8bc2
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-common-0.9.15-h93a5062_0.conda
+ sha256: ae4a47f032886a7175fe6e7ccbf1233cbe06bdfc747fc707afd83d2bdff43dff
+ md5: 4ca05bd64cc4decc54089fcd0cc69082
license: Apache-2.0
license_family: Apache
- size: 203343
- timestamp: 1707964927370
+ size: 204504
+ timestamp: 1712101989588
- kind: conda
name: aws-c-common
- version: 0.9.13
+ version: 0.9.15
build: hcfcfb64_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/aws-c-common-0.9.13-hcfcfb64_0.conda
- sha256: d088b109d4ec598709bf82cc3f6cdc224bd2f99eb6e54b11874c6ade214ff3be
- md5: fea595182b39ca757437194de49925d4
+ url: https://conda.anaconda.org/conda-forge/win-64/aws-c-common-0.9.15-hcfcfb64_0.conda
+ sha256: 038e4c01a81ac7807e9942009e2db88dea977754f4d2f35f822367132d9a8abf
+ md5: 6e02bac6dfcf279e2b0b2a3602d7b49b
depends:
- ucrt >=10.0.20348.0
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
license: Apache-2.0
license_family: Apache
- size: 222007
- timestamp: 1707965119268
+ size: 223866
+ timestamp: 1712102088444
- kind: conda
name: aws-c-common
- version: 0.9.13
+ version: 0.9.15
build: hd590300_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/aws-c-common-0.9.13-hd590300_0.conda
- sha256: b113ee0822ff47ae7db10f75802aa0cde60cdada82d5d07e57c36daba146035f
- md5: 0ba89522712d993987e6d0fae108c721
+ url: https://conda.anaconda.org/conda-forge/linux-64/aws-c-common-0.9.15-hd590300_0.conda
+ sha256: e4251e5fa2656140628f40b74e61cf5048dfd4346f6d81517d346b371113496e
+ md5: ad8955a300fd09e97e76c38638ac7157
depends:
- libgcc-ng >=12
license: Apache-2.0
license_family: Apache
- size: 225560
- timestamp: 1707964559211
+ size: 226559
+ timestamp: 1712101677803
- kind: conda
name: aws-c-compression
version: 0.2.18
- build: hd481e46_1
- build_number: 1
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/aws-c-compression-0.2.18-hd481e46_1.conda
- sha256: c2d9e922be4e14fca8dd3c7f4ca12cac6ab767928ff041d8c6f78d8744aad7cf
- md5: dab2b7b3e645d3962d4021d881533fae
+ build: h53e3db5_3
+ build_number: 3
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/aws-c-compression-0.2.18-h53e3db5_3.conda
+ sha256: b35df886c7a8751fb5d1204510335241ddc9115fb4970c65ac12bbb307f6f8ad
+ md5: b4341460c51c457c6e5ac58d76f44d17
depends:
- - aws-c-common >=0.9.13,<0.9.14.0a0
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
+ - aws-c-common >=0.9.15,<0.9.16.0a0
license: Apache-2.0
license_family: Apache
- size: 22347
- timestamp: 1708004038019
+ size: 17976
+ timestamp: 1712138779036
- kind: conda
name: aws-c-compression
version: 0.2.18
- build: hecc5fa9_1
- build_number: 1
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/aws-c-compression-0.2.18-hecc5fa9_1.conda
- sha256: da94a5c6e42c02bb742184bf89f4c8c7d8377a3d6f3b64ea16297a03be63fd7b
- md5: 1d838050e7d65d2f38dc3b84b928aa2b
+ build: ha21e00f_3
+ build_number: 3
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/aws-c-compression-0.2.18-ha21e00f_3.conda
+ sha256: c0e05c48a2420bf1e192ba61d9f41fad075186fa12f9018fef4a52f31883f0ee
+ md5: 15ff0ff5c09bd7c0c6dea51e5ef427b4
depends:
- - aws-c-common >=0.9.13,<0.9.14.0a0
- - libgcc-ng >=12
+ - aws-c-common >=0.9.15,<0.9.16.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
license: Apache-2.0
license_family: Apache
- size: 19183
- timestamp: 1708003532559
+ size: 22479
+ timestamp: 1712139181716
- kind: conda
name: aws-c-compression
version: 0.2.18
- build: hf5538d0_1
- build_number: 1
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/aws-c-compression-0.2.18-hf5538d0_1.conda
- sha256: d85e8c051a9f6617c728e307c277f01a94d8e78e14b2e7b321ab256b24cb22df
- md5: afbdadd0835075ee6a1c82c5369aa48c
+ build: hce8ee76_3
+ build_number: 3
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/aws-c-compression-0.2.18-hce8ee76_3.conda
+ sha256: ab0617f2d66d5d88fc6c7edb6ecd4589e0a744ccaeff95765371c9cabdb29722
+ md5: b19224a5179ecb512c4aac9f8a6d57a7
depends:
- - aws-c-common >=0.9.13,<0.9.14.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
+ - libgcc-ng >=12
license: Apache-2.0
license_family: Apache
- size: 18067
- timestamp: 1708003629797
+ size: 19134
+ timestamp: 1712138634166
- kind: conda
name: aws-c-compression
version: 0.2.18
- build: hf888d4c_1
- build_number: 1
+ build: hd34e5fa_3
+ build_number: 3
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-compression-0.2.18-hf888d4c_1.conda
- sha256: e6df6f2ebbaddf1e654681cd6ec4cbb4e55d9a92811bcaa095fc2da34b360dcc
- md5: 58af345fcc464f3998818c2011d01f5f
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-compression-0.2.18-hd34e5fa_3.conda
+ sha256: c501b4f00d1518956aa3fb45378e0dacdec941cca5d78e8d8ba07b46674fa877
+ md5: 194b36e2ac364c12c7fa89e84391722d
depends:
- - aws-c-common >=0.9.13,<0.9.14.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
license: Apache-2.0
license_family: Apache
- size: 18337
- timestamp: 1708003803517
+ size: 18089
+ timestamp: 1712138821785
- kind: conda
name: aws-c-event-stream
version: 0.4.2
- build: h0f06f08_4
- build_number: 4
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/aws-c-event-stream-0.4.2-h0f06f08_4.conda
- sha256: f79350d905cae421f3ceb663f72041d5e028748c5d8504c16b68743400ad884f
- md5: 90d3f1d2f590693a008a197f81bc72a9
+ build: h01f5eca_8
+ build_number: 8
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/aws-c-event-stream-0.4.2-h01f5eca_8.conda
+ sha256: 688b81ed93151868df2717556d3b93dcfaf6bf129a1474f14e0c993095816d3f
+ md5: afb85fc0f01032d115c57c961950e7d8
depends:
- - aws-c-common >=0.9.13,<0.9.14.0a0
- - aws-c-io >=0.14.5,<0.14.6.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
+ - aws-c-io >=0.14.7,<0.14.8.0a0
- aws-checksums >=0.1.18,<0.1.19.0a0
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
license: Apache-2.0
license_family: Apache
- size: 54585
- timestamp: 1708602875487
+ size: 53700
+ timestamp: 1712507243610
- kind: conda
name: aws-c-event-stream
version: 0.4.2
- build: h1b95c93_4
- build_number: 4
+ build: h247c08a_8
+ build_number: 8
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-event-stream-0.4.2-h1b95c93_4.conda
- sha256: 78855447767962368b93d8c2b8fc0ee3022802f7d073e532fa89b6841477e74d
- md5: a2588fd3506776167fab4e508c3580a9
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-event-stream-0.4.2-h247c08a_8.conda
+ sha256: f4a8ee85ed51793bdfaa5ff863db5fa02eb1935e25857109b8650af2c66f46c5
+ md5: 47912c9d76ebf3146dc5c5358fe94a97
depends:
- - aws-c-common >=0.9.13,<0.9.14.0a0
- - aws-c-io >=0.14.5,<0.14.6.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
+ - aws-c-io >=0.14.7,<0.14.8.0a0
- aws-checksums >=0.1.18,<0.1.19.0a0
- libcxx >=16
license: Apache-2.0
license_family: Apache
- size: 46870
- timestamp: 1708602815747
+ size: 46788
+ timestamp: 1712507379999
- kind: conda
name: aws-c-event-stream
version: 0.4.2
- build: hb970d5a_4
- build_number: 4
+ build: he461af8_8
+ build_number: 8
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/aws-c-event-stream-0.4.2-hb970d5a_4.conda
- sha256: 715724622739c1fef6d797c7c53c069de7cf48c19d4a1f93a0cb1a919ea4e177
- md5: 54596996ca749b66c8d3d1144c8381b2
+ url: https://conda.anaconda.org/conda-forge/osx-64/aws-c-event-stream-0.4.2-he461af8_8.conda
+ sha256: 6a795f72cf2cbf50900cd167942db0361b33e19af4735a36de848b16efa01108
+ md5: e06f07aca12555762e986004e013c0e6
depends:
- - aws-c-common >=0.9.13,<0.9.14.0a0
- - aws-c-io >=0.14.5,<0.14.6.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
+ - aws-c-io >=0.14.7,<0.14.8.0a0
- aws-checksums >=0.1.18,<0.1.19.0a0
- libcxx >=16
license: Apache-2.0
license_family: Apache
- size: 46676
- timestamp: 1708602620909
+ size: 46574
+ timestamp: 1712507348124
- kind: conda
name: aws-c-event-stream
version: 0.4.2
- build: hf9b2f7b_4
- build_number: 4
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/aws-c-event-stream-0.4.2-hf9b2f7b_4.conda
- sha256: fb07316c574c3214574fa2ce7409ac331a50d711d20b5766376c8b068a5e298b
- md5: 772e5b7c3c3c9dd07a2648cfa95e1c34
+ build: hf668b60_8
+ build_number: 8
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/aws-c-event-stream-0.4.2-hf668b60_8.conda
+ sha256: cc2b8b8338b51b1c05827532e22902005fb68cbb7c85b3e8c6917531721923cd
+ md5: 61ff0e83fdad92ccf13812b54c447507
depends:
- - aws-c-common >=0.9.13,<0.9.14.0a0
- - aws-c-io >=0.14.5,<0.14.6.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
+ - aws-c-io >=0.14.7,<0.14.8.0a0
- aws-checksums >=0.1.18,<0.1.19.0a0
- - libgcc-ng >=12
- - libstdcxx-ng >=12
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
license: Apache-2.0
license_family: Apache
- size: 53986
- timestamp: 1708602417024
+ size: 54179
+ timestamp: 1712507805607
- kind: conda
name: aws-c-http
version: 0.8.1
- build: h45f72bc_5
- build_number: 5
+ build: h0afc28a_10
+ build_number: 10
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/aws-c-http-0.8.1-h45f72bc_5.conda
- sha256: 45f6d307621742cfdb066d2a88e99cae7e01e5bf2248f782314380966d4d3eec
- md5: 7a68d62055217dc917078c1ce251cfbd
+ url: https://conda.anaconda.org/conda-forge/osx-64/aws-c-http-0.8.1-h0afc28a_10.conda
+ sha256: 1418ec0dc04e9f00fbd2931f079c6e758b5b7fa7bff65d55eb5d585a60d162b4
+ md5: 012d9d06c0b4a37f711a8f905a0f4fd8
depends:
- - aws-c-cal >=0.6.10,<0.6.11.0a0
- - aws-c-common >=0.9.13,<0.9.14.0a0
+ - __osx >=10.9
+ - aws-c-cal >=0.6.11,<0.6.12.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
- aws-c-compression >=0.2.18,<0.2.19.0a0
- - aws-c-io >=0.14.5,<0.14.6.0a0
+ - aws-c-io >=0.14.7,<0.14.8.0a0
license: Apache-2.0
license_family: Apache
- size: 163076
- timestamp: 1708602693889
+ size: 162863
+ timestamp: 1712654842013
- kind: conda
name: aws-c-http
version: 0.8.1
- build: h5d7533a_5
- build_number: 5
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/aws-c-http-0.8.1-h5d7533a_5.conda
- sha256: 8cd74ae03dbbea04cce53a0f01cca8f6c87bbf56df35ec11cfa8dc0e93124d5e
- md5: 3315582ff86ff2c9e870eb5a9ad2a13c
+ build: hd704247_10
+ build_number: 10
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/aws-c-http-0.8.1-hd704247_10.conda
+ sha256: 8a869b0f15bd85eb46b4faa14cadb691d756f8a74279edede1d769fea62d0acc
+ md5: 6abc1e3bdf18f682c7f42a08669b5662
depends:
- - aws-c-cal >=0.6.10,<0.6.11.0a0
- - aws-c-common >=0.9.13,<0.9.14.0a0
+ - aws-c-cal >=0.6.11,<0.6.12.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
- aws-c-compression >=0.2.18,<0.2.19.0a0
- - aws-c-io >=0.14.5,<0.14.6.0a0
- - libgcc-ng >=12
+ - aws-c-io >=0.14.7,<0.14.8.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc >=14.3,<15
+ - vc14_runtime >=14.29.30139
+ - vc14_runtime >=14.38.33130
license: Apache-2.0
license_family: Apache
- size: 195024
- timestamp: 1708602547845
+ size: 180594
+ timestamp: 1712655088873
- kind: conda
name: aws-c-http
version: 0.8.1
- build: hdb5aac5_5
- build_number: 5
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/aws-c-http-0.8.1-hdb5aac5_5.conda
- sha256: 8fd76d7dc829b32000f358287f9f36b1fa20440f339f12008e7d14adede8cf17
- md5: 2457a83f161dc852eaf6faf2d4584859
+ build: hdb68c23_10
+ build_number: 10
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/aws-c-http-0.8.1-hdb68c23_10.conda
+ sha256: a13e77f6b40de79b33711f70b8180943053cc162efdb357bc9cd577f0ac69818
+ md5: cb6065938167da2d2f078c2f08473b84
depends:
- - aws-c-cal >=0.6.10,<0.6.11.0a0
- - aws-c-common >=0.9.13,<0.9.14.0a0
+ - aws-c-cal >=0.6.11,<0.6.12.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
- aws-c-compression >=0.2.18,<0.2.19.0a0
- - aws-c-io >=0.14.5,<0.14.6.0a0
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
+ - aws-c-io >=0.14.7,<0.14.8.0a0
+ - libgcc-ng >=12
license: Apache-2.0
license_family: Apache
- size: 180105
- timestamp: 1708603146126
+ size: 195362
+ timestamp: 1712654535499
- kind: conda
name: aws-c-http
version: 0.8.1
- build: heb97226_5
- build_number: 5
+ build: hf9e830b_10
+ build_number: 10
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-http-0.8.1-heb97226_5.conda
- sha256: 1cd592469265c9e3092824bb41682637cc537ed8da272e4ebe2c90b07e3768a2
- md5: 27cd4e9746fd7e02012750d9c1fece50
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-http-0.8.1-hf9e830b_10.conda
+ sha256: 6c06720a8700f65e68ad740b5dd0e559242f62a179067c029792d226b3b065fc
+ md5: 532e961f28b3c8fcdcb0ecb1e017961d
depends:
- - aws-c-cal >=0.6.10,<0.6.11.0a0
- - aws-c-common >=0.9.13,<0.9.14.0a0
+ - __osx >=11.0
+ - aws-c-cal >=0.6.11,<0.6.12.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
- aws-c-compression >=0.2.18,<0.2.19.0a0
- - aws-c-io >=0.14.5,<0.14.6.0a0
+ - aws-c-io >=0.14.7,<0.14.8.0a0
license: Apache-2.0
license_family: Apache
- size: 151481
- timestamp: 1708602772972
+ size: 151666
+ timestamp: 1712654734379
- kind: conda
name: aws-c-io
- version: 0.14.5
- build: h08270f9_1
- build_number: 1
+ version: 0.14.7
+ build: h14865c8_6
+ build_number: 6
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/aws-c-io-0.14.5-h08270f9_1.conda
- sha256: 92af4ce74729af012f69559bb35dae6a22524d9d0289cf8644b283f9ce0adf41
- md5: 57f923d835b19c1bcdc1c91edc5008eb
+ url: https://conda.anaconda.org/conda-forge/win-64/aws-c-io-0.14.7-h14865c8_6.conda
+ sha256: 63046d2b42b5d7fb94fa90a261c1dbef729b458e5a2465ea8dbb74959baca0f0
+ md5: e26a1f9f7170b5e683b22a6a7e95d945
depends:
- - aws-c-cal >=0.6.10,<0.6.11.0a0
- - aws-c-common >=0.9.13,<0.9.14.0a0
+ - aws-c-cal >=0.6.11,<0.6.12.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
- ucrt >=10.0.20348.0
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
license: Apache-2.0
license_family: Apache
- size: 159778
- timestamp: 1708688290150
+ size: 159681
+ timestamp: 1713347479651
- kind: conda
name: aws-c-io
- version: 0.14.5
- build: h50678d4_1
- build_number: 1
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/aws-c-io-0.14.5-h50678d4_1.conda
- sha256: ee9d8193927641249186e593ef9d1324d662feda4a4a9abaacbb897adb31bcfa
- md5: 3d527c16470bfbf50234c9ce9c3290ee
+ version: 0.14.7
+ build: h33d81b3_6
+ build_number: 6
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-io-0.14.7-h33d81b3_6.conda
+ sha256: a93a3e23c0407cbfaa9807784a32c96a00fea32b2d015f0be59c0cb79cc4aaa5
+ md5: def574dc950fa350d49db8438ca5d1af
depends:
- - aws-c-cal >=0.6.10,<0.6.11.0a0
- - aws-c-common >=0.9.13,<0.9.14.0a0
- - libgcc-ng >=12
- - s2n >=1.4.5,<1.4.6.0a0
+ - __osx >=11.0
+ - aws-c-cal >=0.6.11,<0.6.12.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
license: Apache-2.0
license_family: Apache
- size: 157210
- timestamp: 1708687740565
+ size: 137603
+ timestamp: 1713347142779
- kind: conda
name: aws-c-io
- version: 0.14.5
- build: h59ded20_1
- build_number: 1
+ version: 0.14.7
+ build: h6254544_6
+ build_number: 6
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/aws-c-io-0.14.5-h59ded20_1.conda
- sha256: ab2d98ca00c85bf540b5114c683422bff60ad26c213872bd6a1083c636733704
- md5: daf9197eb37facb06d60b64efdaf24fa
+ url: https://conda.anaconda.org/conda-forge/osx-64/aws-c-io-0.14.7-h6254544_6.conda
+ sha256: 5d2327f3742cfabd53bf8c935eb2cffd50e3ea8c03c9fee12940b2ffb94ad1cb
+ md5: 9c997fbd219f8db5714dbdc240e355a0
depends:
- - aws-c-cal >=0.6.10,<0.6.11.0a0
- - aws-c-common >=0.9.13,<0.9.14.0a0
+ - __osx >=10.9
+ - aws-c-cal >=0.6.11,<0.6.12.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
license: Apache-2.0
license_family: Apache
- size: 138092
- timestamp: 1708688155068
+ size: 137495
+ timestamp: 1713347345969
- kind: conda
name: aws-c-io
- version: 0.14.5
- build: hb51f26e_1
- build_number: 1
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-io-0.14.5-hb51f26e_1.conda
- sha256: f671aaa8b3f86e72cba92c3c114d8ceaeb97ebb118b4c1f2530bdf6fd74fb34b
- md5: 5766d0ec1ee58a2e12752eb0dc577d73
+ version: 0.14.7
+ build: hbfbeace_6
+ build_number: 6
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/aws-c-io-0.14.7-hbfbeace_6.conda
+ sha256: 10c8df9b71be8aba9b1aad48b123fc81896eb7b73c686042bed4a9e77d92e812
+ md5: d6382461de9a91a2665e964f92d8da0a
depends:
- - aws-c-cal >=0.6.10,<0.6.11.0a0
- - aws-c-common >=0.9.13,<0.9.14.0a0
+ - aws-c-cal >=0.6.11,<0.6.12.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
+ - libgcc-ng >=12
+ - s2n >=1.4.12,<1.4.13.0a0
license: Apache-2.0
license_family: Apache
- size: 136989
- timestamp: 1708687976415
+ size: 158124
+ timestamp: 1713346977725
- kind: conda
name: aws-c-mqtt
- version: 0.10.2
- build: ha7d5480_4
- build_number: 4
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/aws-c-mqtt-0.10.2-ha7d5480_4.conda
- sha256: 572e5857bfcb9064192d5ff68308bb640158a50ddb48a350ae7e485783372949
- md5: 2c8df4154874114bdb9492f144bfbfe8
+ version: 0.10.4
+ build: h50844eb_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/aws-c-mqtt-0.10.4-h50844eb_0.conda
+ sha256: a6588943583636337ab4fb6233df7b8fc5e42199dafc415d5b8a968a7ff11a8f
+ md5: 3d3a35463e550d2e098cede57b3977b1
depends:
- - aws-c-common >=0.9.13,<0.9.14.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
- aws-c-http >=0.8.1,<0.8.2.0a0
- - aws-c-io >=0.14.5,<0.14.6.0a0
+ - aws-c-io >=0.14.7,<0.14.8.0a0
+ - libgcc-ng >=12
license: Apache-2.0
license_family: Apache
- size: 138778
- timestamp: 1708942098964
+ size: 163389
+ timestamp: 1714086029743
- kind: conda
name: aws-c-mqtt
- version: 0.10.2
- build: hd37591b_4
- build_number: 4
+ version: 0.10.4
+ build: h5f4abda_0
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-mqtt-0.10.2-hd37591b_4.conda
- sha256: 40a6ede9ef474bff4d81eb8680daea28812013bd8c65fa8dc7571598ffad0678
- md5: fab45f2b834e92bd9987d0fa3b784e64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-mqtt-0.10.4-h5f4abda_0.conda
+ sha256: f4e440118e5d7cf62cae9ca62ca94e6b07f0fd8479a65209162aa35a07dbefb2
+ md5: bb102021f2ad13fc2c30ed79a387d5be
depends:
- - aws-c-common >=0.9.13,<0.9.14.0a0
+ - __osx >=11.0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
- aws-c-http >=0.8.1,<0.8.2.0a0
- - aws-c-io >=0.14.5,<0.14.6.0a0
+ - aws-c-io >=0.14.7,<0.14.8.0a0
license: Apache-2.0
license_family: Apache
- size: 117399
- timestamp: 1708620779372
+ size: 117687
+ timestamp: 1714085990234
- kind: conda
name: aws-c-mqtt
- version: 0.10.2
- build: hf479d2b_4
- build_number: 4
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/aws-c-mqtt-0.10.2-hf479d2b_4.conda
- sha256: 9e878e9280d80d83e679f8b41c2a0bf7bf7069f95ae5b457a484168671e77780
- md5: dc6a683c823f2b6445ed0e328160b3de
+ version: 0.10.4
+ build: h748201e_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/aws-c-mqtt-0.10.4-h748201e_0.conda
+ sha256: fa510f83f8d041011675aefd5c1a708e45afdce3317fd1a8faa3e9e2fa8b771e
+ md5: a35e9daa36cf16d096e268998d86f0dd
depends:
- - aws-c-common >=0.9.13,<0.9.14.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
- aws-c-http >=0.8.1,<0.8.2.0a0
- - aws-c-io >=0.14.5,<0.14.6.0a0
- - libgcc-ng >=12
+ - aws-c-io >=0.14.7,<0.14.8.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
license: Apache-2.0
license_family: Apache
- size: 164421
- timestamp: 1708620822368
+ size: 158006
+ timestamp: 1714086582709
- kind: conda
name: aws-c-mqtt
- version: 0.10.2
- build: hfea8755_4
- build_number: 4
+ version: 0.10.4
+ build: hd66502f_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/aws-c-mqtt-0.10.4-hd66502f_0.conda
+ sha256: 9398f022235d327d5a7d08491069bd1ee197f1fa7fae84033ccee6cbc0e1d34a
+ md5: 5f2830a389a3bfd38389edfd0831d664
+ depends:
+ - __osx >=10.9
+ - aws-c-common >=0.9.15,<0.9.16.0a0
+ - aws-c-http >=0.8.1,<0.8.2.0a0
+ - aws-c-io >=0.14.7,<0.14.8.0a0
+ license: Apache-2.0
+ license_family: Apache
+ size: 138975
+ timestamp: 1714086424872
+- kind: conda
+ name: aws-c-s3
+ version: 0.5.7
+ build: h0ac6cc1_2
+ build_number: 2
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/aws-c-mqtt-0.10.2-hfea8755_4.conda
- sha256: 035263e32109e521dd81b2eb5e9468d2063acafd6e33820b3c0051415051b922
- md5: d12372f5cc219f1c103a5be6533d5736
+ url: https://conda.anaconda.org/conda-forge/win-64/aws-c-s3-0.5.7-h0ac6cc1_2.conda
+ sha256: 1c6918dbeed349e48f9cd733df9dee32f6e5d479bc604c4ba773f4662117df99
+ md5: 3182ec5a55bd3e5e15a90dc280caabeb
depends:
- - aws-c-common >=0.9.13,<0.9.14.0a0
+ - aws-c-auth >=0.7.18,<0.7.19.0a0
+ - aws-c-cal >=0.6.11,<0.6.12.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
- aws-c-http >=0.8.1,<0.8.2.0a0
- - aws-c-io >=0.14.5,<0.14.6.0a0
+ - aws-c-io >=0.14.7,<0.14.8.0a0
+ - aws-checksums >=0.1.18,<0.1.19.0a0
- ucrt >=10.0.20348.0
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
license: Apache-2.0
license_family: Apache
- size: 157819
- timestamp: 1708621381498
+ size: 104069
+ timestamp: 1713521200698
- kind: conda
name: aws-c-s3
- version: 0.5.2
- build: h09f5dbc_0
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-s3-0.5.2-h09f5dbc_0.conda
- sha256: 276732297f92887d0eb2adc9d8949162b02e90ed9ad5f8c348701b4d1aad2d0c
- md5: 5e8666f955e8fab31bc7550cd80cd70f
+ version: 0.5.7
+ build: h5d4520e_2
+ build_number: 2
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/aws-c-s3-0.5.7-h5d4520e_2.conda
+ sha256: c4585ac05c70c581f46b8f99b600099b88f0e96db9027c63fb248145c857642d
+ md5: 3b1a0cb5d4bf4adc1d238a4bc3100e67
depends:
- - aws-c-auth >=0.7.16,<0.7.17.0a0
- - aws-c-cal >=0.6.10,<0.6.11.0a0
- - aws-c-common >=0.9.13,<0.9.14.0a0
+ - __osx >=10.9
+ - aws-c-auth >=0.7.18,<0.7.19.0a0
+ - aws-c-cal >=0.6.11,<0.6.12.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
- aws-c-http >=0.8.1,<0.8.2.0a0
- - aws-c-io >=0.14.5,<0.14.6.0a0
+ - aws-c-io >=0.14.7,<0.14.8.0a0
- aws-checksums >=0.1.18,<0.1.19.0a0
license: Apache-2.0
license_family: Apache
- size: 90732
- timestamp: 1709172899774
+ size: 94099
+ timestamp: 1713521248722
- kind: conda
name: aws-c-s3
- version: 0.5.2
- build: h4ad9680_0
+ version: 0.5.7
+ build: h6be9164_2
+ build_number: 2
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/aws-c-s3-0.5.2-h4ad9680_0.conda
- sha256: 187b02e487df8181f85785eff2e60a6715a651a0fa2775199ac57592ea7e7974
- md5: d50162d0e3a1c74885d8281455d8e7c2
+ url: https://conda.anaconda.org/conda-forge/linux-64/aws-c-s3-0.5.7-h6be9164_2.conda
+ sha256: 5a7c84e3be0dc041fc537a6c5dc9a63a4d7ed535d05bba8a5d49666bc022df89
+ md5: 88b24a3a618acd279502f5960442c8a2
depends:
- - aws-c-auth >=0.7.16,<0.7.17.0a0
- - aws-c-cal >=0.6.10,<0.6.11.0a0
- - aws-c-common >=0.9.13,<0.9.14.0a0
+ - aws-c-auth >=0.7.18,<0.7.19.0a0
+ - aws-c-cal >=0.6.11,<0.6.12.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
- aws-c-http >=0.8.1,<0.8.2.0a0
- - aws-c-io >=0.14.5,<0.14.6.0a0
+ - aws-c-io >=0.14.7,<0.14.8.0a0
- aws-checksums >=0.1.18,<0.1.19.0a0
- libgcc-ng >=12
- openssl >=3.2.1,<4.0a0
license: Apache-2.0
license_family: Apache
- size: 105233
- timestamp: 1709172578792
+ size: 107839
+ timestamp: 1713520889154
- kind: conda
name: aws-c-s3
- version: 0.5.2
- build: h4b2095a_0
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/aws-c-s3-0.5.2-h4b2095a_0.conda
- sha256: 89b26b44d5f3c268ad8369e7ad80465a707eeac1a3dd15e5db4d1ce439b7d8e7
- md5: 07f4e9ba6285324885befe9a5e2d23ea
+ version: 0.5.7
+ build: h7644b7e_2
+ build_number: 2
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-s3-0.5.7-h7644b7e_2.conda
+ sha256: a8b0b5b476e903b7cb06f1b23781a2496619f9ed7494ad35bd2a7acc1cb27b61
+ md5: c8aeeb548a11494d564d74e0fce45fee
depends:
- - aws-c-auth >=0.7.16,<0.7.17.0a0
- - aws-c-cal >=0.6.10,<0.6.11.0a0
- - aws-c-common >=0.9.13,<0.9.14.0a0
+ - __osx >=11.0
+ - aws-c-auth >=0.7.18,<0.7.19.0a0
+ - aws-c-cal >=0.6.11,<0.6.12.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
- aws-c-http >=0.8.1,<0.8.2.0a0
- - aws-c-io >=0.14.5,<0.14.6.0a0
+ - aws-c-io >=0.14.7,<0.14.8.0a0
- aws-checksums >=0.1.18,<0.1.19.0a0
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
license: Apache-2.0
license_family: Apache
- size: 101468
- timestamp: 1709173131467
+ size: 92617
+ timestamp: 1713521220761
- kind: conda
- name: aws-c-s3
- version: 0.5.2
- build: hb71b441_0
+ name: aws-c-sdkutils
+ version: 0.1.15
+ build: h53e3db5_3
+ build_number: 3
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/aws-c-s3-0.5.2-hb71b441_0.conda
- sha256: 766126780bf32052a2ab2eb0a39b336cf381731939fcee82bbc2f04742185cf6
- md5: 4eebcc7eef91eeb528e383c37c0cdc0c
+ url: https://conda.anaconda.org/conda-forge/osx-64/aws-c-sdkutils-0.1.15-h53e3db5_3.conda
+ sha256: 6b6b1652ede11c5ba4b6458b1fb88760658bb024ac5f06d2adf7130aa5550376
+ md5: 569179357460c6f2acd2c3507c77c4c2
depends:
- - aws-c-auth >=0.7.16,<0.7.17.0a0
- - aws-c-cal >=0.6.10,<0.6.11.0a0
- - aws-c-common >=0.9.13,<0.9.14.0a0
- - aws-c-http >=0.8.1,<0.8.2.0a0
- - aws-c-io >=0.14.5,<0.14.6.0a0
- - aws-checksums >=0.1.18,<0.1.19.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
license: Apache-2.0
license_family: Apache
- size: 90798
- timestamp: 1709172968839
+ size: 49610
+ timestamp: 1712146120263
- kind: conda
name: aws-c-sdkutils
version: 0.1.15
- build: hd481e46_1
- build_number: 1
+ build: ha21e00f_3
+ build_number: 3
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/aws-c-sdkutils-0.1.15-hd481e46_1.conda
- sha256: 0835624c0839ddb25e0ef30c5d593a15637ea5cd6fb8a76ad385e69688c250b0
- md5: 1ebafa133f5b2f550c8bfc0a141eff41
+ url: https://conda.anaconda.org/conda-forge/win-64/aws-c-sdkutils-0.1.15-ha21e00f_3.conda
+ sha256: 1c72977356cbac9e805c0325692628edf4d30c3bb09fbe5ddd91d709f410bcc5
+ md5: 7b10fea2a5418a3ad31507a8e3019019
depends:
- - aws-c-common >=0.9.13,<0.9.14.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
- ucrt >=10.0.20348.0
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
license: Apache-2.0
license_family: Apache
- size: 54410
- timestamp: 1708014886501
+ size: 53883
+ timestamp: 1712146320267
- kind: conda
name: aws-c-sdkutils
version: 0.1.15
- build: hecc5fa9_1
- build_number: 1
+ build: hce8ee76_3
+ build_number: 3
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/aws-c-sdkutils-0.1.15-hecc5fa9_1.conda
- sha256: 67d4ef6d2bf13e24ceadd7a7db9ced687c2cda65a51e1e5e3b947389b45ac07d
- md5: 1f3169bc679a1ead5b44a6c79408add7
+ url: https://conda.anaconda.org/conda-forge/linux-64/aws-c-sdkutils-0.1.15-hce8ee76_3.conda
+ sha256: 72fd73a5de0730997a36bf20ac1cb8cf7c67e40225c280b3dc5e46bc61c7d157
+ md5: 0c4f0205a1ae4ca6c89af922ec54271c
depends:
- - aws-c-common >=0.9.13,<0.9.14.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
- libgcc-ng >=12
license: Apache-2.0
license_family: Apache
- size: 55439
- timestamp: 1708014305310
+ size: 55146
+ timestamp: 1712145768196
- kind: conda
name: aws-c-sdkutils
version: 0.1.15
- build: hf5538d0_1
- build_number: 1
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/aws-c-sdkutils-0.1.15-hf5538d0_1.conda
- sha256: 3979bbda1503f9d7ca755abf0ab240bf4898e3dfa812bd1214a215230569f927
- md5: 88df592ace524a9f6ec7aa75eace52f6
+ build: hd34e5fa_3
+ build_number: 3
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-sdkutils-0.1.15-hd34e5fa_3.conda
+ sha256: e128818c57f6273df6dc64d7c3868eb179011766d790a8a93ad152fa26be4b9d
+ md5: d4afb2c3ed05bf792183ffdbc723aaeb
depends:
- - aws-c-common >=0.9.13,<0.9.14.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
license: Apache-2.0
license_family: Apache
- size: 50255
- timestamp: 1708014587926
+ size: 49627
+ timestamp: 1712146003862
- kind: conda
- name: aws-c-sdkutils
- version: 0.1.15
- build: hf888d4c_1
- build_number: 1
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-sdkutils-0.1.15-hf888d4c_1.conda
- sha256: d3cce524e6b852c532c4e7987e50c6fc397b0531752d7e128e635701b4b68370
- md5: f719241f3055f5c0f9d2cb3a599db8d3
+ name: aws-checksums
+ version: 0.1.18
+ build: h53e3db5_3
+ build_number: 3
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/aws-checksums-0.1.18-h53e3db5_3.conda
+ sha256: b62bcee0d6accf5b9e790cdb6171678ac6c865acc9df46249f36e554654f218b
+ md5: 2e78e8a3675a597ff8deaf118c7b714b
depends:
- - aws-c-common >=0.9.13,<0.9.14.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
license: Apache-2.0
license_family: Apache
- size: 49302
- timestamp: 1708014644029
+ size: 48730
+ timestamp: 1712146097053
- kind: conda
name: aws-checksums
version: 0.1.18
- build: hd481e46_1
- build_number: 1
+ build: ha21e00f_3
+ build_number: 3
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/aws-checksums-0.1.18-hd481e46_1.conda
- sha256: f15717fbf3f700f81d0dc0c47d8188abcebad8d1857385dddb85a1f72865847a
- md5: 5c348b77af1703a25c1244cbeb9e9885
+ url: https://conda.anaconda.org/conda-forge/win-64/aws-checksums-0.1.18-ha21e00f_3.conda
+ sha256: c7759b8b3c163916ab47ae0f65549ce7c4e78d54bf9daadd5fa035b4b04500bb
+ md5: a593ee36f55e9af14d7a7f9f8f854fcc
depends:
- - aws-c-common >=0.9.13,<0.9.14.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
- ucrt >=10.0.20348.0
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
license: Apache-2.0
license_family: Apache
- size: 52242
- timestamp: 1708018159164
+ size: 52267
+ timestamp: 1712145968515
- kind: conda
name: aws-checksums
version: 0.1.18
- build: hecc5fa9_1
- build_number: 1
+ build: hce8ee76_3
+ build_number: 3
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/aws-checksums-0.1.18-hecc5fa9_1.conda
- sha256: 6d5034e05682e952d670d16ab61665789fb9fd77c022aa9584b21bce72521499
- md5: d49175b3e097182a65ba9e3fb2c38603
+ url: https://conda.anaconda.org/conda-forge/linux-64/aws-checksums-0.1.18-hce8ee76_3.conda
+ sha256: de0ba47fc8feaaa087d9128e4b5402af72bd46af52b885dee87adfb9e285a816
+ md5: 9aa734a17b9b0b793c7696435fe7789a
depends:
- - aws-c-common >=0.9.13,<0.9.14.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
- libgcc-ng >=12
license: Apache-2.0
license_family: Apache
- size: 50137
- timestamp: 1708017767893
-- kind: conda
- name: aws-checksums
- version: 0.1.18
- build: hf5538d0_1
- build_number: 1
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/aws-checksums-0.1.18-hf5538d0_1.conda
- sha256: 4dbd77a99cc9727e43982a04d172669357d0ceaea71a7aa66e7fafdb6b1dc380
- md5: 61f5c52580106ed5f2a1fd3707263bcf
- depends:
- - aws-c-common >=0.9.13,<0.9.14.0a0
- license: Apache-2.0
- license_family: Apache
- size: 48808
- timestamp: 1708017957232
+ size: 50068
+ timestamp: 1712145648515
- kind: conda
name: aws-checksums
version: 0.1.18
- build: hf888d4c_1
- build_number: 1
+ build: hd34e5fa_3
+ build_number: 3
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/aws-checksums-0.1.18-hf888d4c_1.conda
- sha256: d63676e8a7089f03c9181e24b1809c1a2b4480f84ffef700b65b5ef931f9891a
- md5: 3984d690e3eb6fc26ae75912363e0819
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/aws-checksums-0.1.18-hd34e5fa_3.conda
+ sha256: d91ba44e14b31c5fe13fd78a567fc6cf76c62ad8bfaba250e317b354a75c64dd
+ md5: 69f9b2281805ff1e0c87962d74de1360
depends:
- - aws-c-common >=0.9.13,<0.9.14.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
license: Apache-2.0
license_family: Apache
- size: 49202
- timestamp: 1708017993329
+ size: 48999
+ timestamp: 1712145929885
- kind: conda
name: aws-crt-cpp
- version: 0.26.2
- build: h06549c9_7
- build_number: 7
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/aws-crt-cpp-0.26.2-h06549c9_7.conda
- sha256: 884ebf3df42c122b928f6c7cf30bd632ac8c67a1e189f66b87d9e79c82eb960e
- md5: 3a0c06e903ef56dd244b0912ef71d189
+ version: 0.26.8
+ build: h2150271_2
+ build_number: 2
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/aws-crt-cpp-0.26.8-h2150271_2.conda
+ sha256: 61feed2a595c6ceedbebea5150c3b4298fb13a742793e0f2506ef995288a5f27
+ md5: 9ee890489734098ce5b3d435b7ec4b80
depends:
- - aws-c-auth >=0.7.16,<0.7.17.0a0
- - aws-c-cal >=0.6.10,<0.6.11.0a0
- - aws-c-common >=0.9.13,<0.9.14.0a0
+ - aws-c-auth >=0.7.18,<0.7.19.0a0
+ - aws-c-cal >=0.6.11,<0.6.12.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
- aws-c-event-stream >=0.4.2,<0.4.3.0a0
- aws-c-http >=0.8.1,<0.8.2.0a0
- - aws-c-io >=0.14.5,<0.14.6.0a0
- - aws-c-mqtt >=0.10.2,<0.10.3.0a0
- - aws-c-s3 >=0.5.2,<0.5.3.0a0
+ - aws-c-io >=0.14.7,<0.14.8.0a0
+ - aws-c-mqtt >=0.10.4,<0.10.5.0a0
+ - aws-c-s3 >=0.5.7,<0.5.8.0a0
- aws-c-sdkutils >=0.1.15,<0.1.16.0a0
- - libcxx >=16
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
license: Apache-2.0
license_family: Apache
- size: 216464
- timestamp: 1709208473555
+ size: 340265
+ timestamp: 1714132568550
- kind: conda
name: aws-crt-cpp
- version: 0.26.2
- build: h19f5d62_7
- build_number: 7
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/aws-crt-cpp-0.26.2-h19f5d62_7.conda
- sha256: 7d03db0ff86fd128bc77a00c13e843f67023efafd947e69e82584a6acd9c8f8c
- md5: e49b978ccc14c1a34374fac693b3a998
+ version: 0.26.8
+ build: h2199128_2
+ build_number: 2
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/aws-crt-cpp-0.26.8-h2199128_2.conda
+ sha256: 2847b9fd61be9eed680a928909929cc691c2c5060ee8d6e83f34218e858290d8
+ md5: 9dd3a348a443fad77b1252cc38059938
depends:
- - aws-c-auth >=0.7.16,<0.7.17.0a0
- - aws-c-cal >=0.6.10,<0.6.11.0a0
- - aws-c-common >=0.9.13,<0.9.14.0a0
+ - aws-c-auth >=0.7.18,<0.7.19.0a0
+ - aws-c-cal >=0.6.11,<0.6.12.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
- aws-c-event-stream >=0.4.2,<0.4.3.0a0
- aws-c-http >=0.8.1,<0.8.2.0a0
- - aws-c-io >=0.14.5,<0.14.6.0a0
- - aws-c-mqtt >=0.10.2,<0.10.3.0a0
- - aws-c-s3 >=0.5.2,<0.5.3.0a0
+ - aws-c-io >=0.14.7,<0.14.8.0a0
+ - aws-c-mqtt >=0.10.4,<0.10.5.0a0
+ - aws-c-s3 >=0.5.7,<0.5.8.0a0
- aws-c-sdkutils >=0.1.15,<0.1.16.0a0
- - libgcc-ng >=12
- - libstdcxx-ng >=12
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
license: Apache-2.0
license_family: Apache
- size: 333814
- timestamp: 1709208341782
+ size: 249112
+ timestamp: 1714132864023
- kind: conda
name: aws-crt-cpp
- version: 0.26.2
- build: h56a5195_7
- build_number: 7
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/aws-crt-cpp-0.26.2-h56a5195_7.conda
- sha256: 3899ccca939b94adde813be207181cfae00d1211efa68613d4ba1828c9a39f0a
- md5: 62ae597a0641cbcbf68a06beec4ac313
+ version: 0.26.8
+ build: h7541583_2
+ build_number: 2
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/aws-crt-cpp-0.26.8-h7541583_2.conda
+ sha256: da6357bc0afa2423d9e30d4572262c755254dd209da202ca92be53e376f61aac
+ md5: 6c22f9363787a6ccde1fcd440bf8690c
depends:
- - aws-c-auth >=0.7.16,<0.7.17.0a0
- - aws-c-cal >=0.6.10,<0.6.11.0a0
- - aws-c-common >=0.9.13,<0.9.14.0a0
+ - __osx >=11.0
+ - aws-c-auth >=0.7.18,<0.7.19.0a0
+ - aws-c-cal >=0.6.11,<0.6.12.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
- aws-c-event-stream >=0.4.2,<0.4.3.0a0
- aws-c-http >=0.8.1,<0.8.2.0a0
- - aws-c-io >=0.14.5,<0.14.6.0a0
- - aws-c-mqtt >=0.10.2,<0.10.3.0a0
- - aws-c-s3 >=0.5.2,<0.5.3.0a0
+ - aws-c-io >=0.14.7,<0.14.8.0a0
+ - aws-c-mqtt >=0.10.4,<0.10.5.0a0
+ - aws-c-s3 >=0.5.7,<0.5.8.0a0
- aws-c-sdkutils >=0.1.15,<0.1.16.0a0
- libcxx >=16
license: Apache-2.0
license_family: Apache
- size: 280702
- timestamp: 1709208918309
+ size: 224410
+ timestamp: 1714133074366
- kind: conda
name: aws-crt-cpp
- version: 0.26.2
- build: h8492d2a_7
- build_number: 7
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/aws-crt-cpp-0.26.2-h8492d2a_7.conda
- sha256: 99bd606407c723da49ce9e831d2764849d44b48d9d7bfd8b36db20edda301ded
- md5: 444af8c6a4c76298b6322807c25df166
+ version: 0.26.8
+ build: ha933895_2
+ build_number: 2
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/aws-crt-cpp-0.26.8-ha933895_2.conda
+ sha256: 02ea5d39a892abe52b2ab849b5824072a195c0bd07822d3c9218de0c995200f7
+ md5: c8ec7389e6c084e9a4b19b17f93e9d05
depends:
- - aws-c-auth >=0.7.16,<0.7.17.0a0
- - aws-c-cal >=0.6.10,<0.6.11.0a0
- - aws-c-common >=0.9.13,<0.9.14.0a0
+ - __osx >=10.9
+ - aws-c-auth >=0.7.18,<0.7.19.0a0
+ - aws-c-cal >=0.6.11,<0.6.12.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
- aws-c-event-stream >=0.4.2,<0.4.3.0a0
- aws-c-http >=0.8.1,<0.8.2.0a0
- - aws-c-io >=0.14.5,<0.14.6.0a0
- - aws-c-mqtt >=0.10.2,<0.10.3.0a0
- - aws-c-s3 >=0.5.2,<0.5.3.0a0
+ - aws-c-io >=0.14.7,<0.14.8.0a0
+ - aws-c-mqtt >=0.10.4,<0.10.5.0a0
+ - aws-c-s3 >=0.5.7,<0.5.8.0a0
- aws-c-sdkutils >=0.1.15,<0.1.16.0a0
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
+ - libcxx >=16
license: Apache-2.0
license_family: Apache
- size: 242812
- timestamp: 1709208518468
+ size: 287927
+ timestamp: 1714132886693
- kind: conda
name: aws-sdk-cpp
version: 1.11.267
- build: h4da54b2_1
- build_number: 1
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/aws-sdk-cpp-1.11.267-h4da54b2_1.conda
- sha256: 6df3b95a676cffd1b7bb4388a3a46007c6eb710a2e74e61f725f6190ac8ecdd9
- md5: 9d1faf73c8df8d7e30dea29847f1d5d1
+ build: h18943f6_7
+ build_number: 7
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/aws-sdk-cpp-1.11.267-h18943f6_7.conda
+ sha256: f6fd5578ea744245fbb9c8652d14fafadfec169a7258852fc9c8bc4da5765e39
+ md5: 7ca925c6bd785e95bbcf0603f9b71161
depends:
- - aws-c-common >=0.9.13,<0.9.14.0a0
+ - __osx >=11.0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
- aws-c-event-stream >=0.4.2,<0.4.3.0a0
- aws-checksums >=0.1.18,<0.1.19.0a0
- - aws-crt-cpp >=0.26.2,<0.26.3.0a0
- - libcurl >=8.5.0,<9.0a0
+ - aws-crt-cpp >=0.26.8,<0.26.9.0a0
+ - libcurl >=8.7.1,<9.0a0
- libcxx >=16
- libzlib >=1.2.13,<1.3.0a0
- openssl >=3.2.1,<4.0a0
license: Apache-2.0
license_family: Apache
- size: 3375381
- timestamp: 1708527712169
+ size: 3427662
+ timestamp: 1713969255075
- kind: conda
name: aws-sdk-cpp
version: 1.11.267
- build: h5606698_1
- build_number: 1
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/aws-sdk-cpp-1.11.267-h5606698_1.conda
- sha256: 36590788d9f9488bb63a5c885b595390af6bab4cb7743eca17ae8412ee31ce7d
- md5: 2f2f24cc595d2de8365e257050845c30
+ build: h3f4ca61_7
+ build_number: 7
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/aws-sdk-cpp-1.11.267-h3f4ca61_7.conda
+ sha256: 9f193462c95f744dcf7fc1e1b4fc2e0161915529cf96bfb7f5fd5ead9dfd9038
+ md5: 870a50d2060b333be88babcbea3ce878
depends:
- - aws-c-common >=0.9.13,<0.9.14.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
- aws-c-event-stream >=0.4.2,<0.4.3.0a0
- aws-checksums >=0.1.18,<0.1.19.0a0
- - aws-crt-cpp >=0.26.2,<0.26.3.0a0
- - libcurl >=8.5.0,<9.0a0
- - libgcc-ng >=12
- - libstdcxx-ng >=12
+ - aws-crt-cpp >=0.26.8,<0.26.9.0a0
- libzlib >=1.2.13,<1.3.0a0
- - openssl >=3.2.1,<4.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
license: Apache-2.0
license_family: Apache
- size: 3614539
- timestamp: 1708527061409
+ size: 3396694
+ timestamp: 1713968836448
- kind: conda
name: aws-sdk-cpp
version: 1.11.267
- build: h73c0887_1
- build_number: 1
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/aws-sdk-cpp-1.11.267-h73c0887_1.conda
- sha256: 97dee4113e4070e6da4d191392f56050d964999ae8b43ee65e711f8dff1ec59f
- md5: 68c3736b04baf3f16fa7efb3e7d9a1d8
+ build: h8dd24e3_7
+ build_number: 7
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/aws-sdk-cpp-1.11.267-h8dd24e3_7.conda
+ sha256: 33a58552f69faaeb3ab7d3d49e560ff862298cbee0758ed4135c977964ff728c
+ md5: 7403d800b43addcb7ec0ffed731da5e8
depends:
- - aws-c-common >=0.9.13,<0.9.14.0a0
+ - __osx >=10.9
+ - aws-c-common >=0.9.15,<0.9.16.0a0
- aws-c-event-stream >=0.4.2,<0.4.3.0a0
- aws-checksums >=0.1.18,<0.1.19.0a0
- - aws-crt-cpp >=0.26.2,<0.26.3.0a0
- - libcurl >=8.5.0,<9.0a0
+ - aws-crt-cpp >=0.26.8,<0.26.9.0a0
+ - libcurl >=8.7.1,<9.0a0
- libcxx >=16
- libzlib >=1.2.13,<1.3.0a0
- openssl >=3.2.1,<4.0a0
license: Apache-2.0
license_family: Apache
- size: 3408284
- timestamp: 1708527929681
+ size: 3387238
+ timestamp: 1713968859299
- kind: conda
name: aws-sdk-cpp
version: 1.11.267
- build: h93f5800_1
- build_number: 1
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/aws-sdk-cpp-1.11.267-h93f5800_1.conda
- sha256: a1b3bfd0efd4dd1f8a1a575cc8a0e0ede3b66b6fe58b0e722b45d9d4855ac298
- md5: 453479ec7b1e077b16a2202cadf4791b
+ build: hddb5a97_7
+ build_number: 7
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/aws-sdk-cpp-1.11.267-hddb5a97_7.conda
+ sha256: 1940f4e1e01ae8232092c07d3919496832b36be8ca9f50279b0086b0b5028639
+ md5: c6a0616fb788d14efb45ecca46f2f358
depends:
- - aws-c-common >=0.9.13,<0.9.14.0a0
+ - aws-c-common >=0.9.15,<0.9.16.0a0
- aws-c-event-stream >=0.4.2,<0.4.3.0a0
- aws-checksums >=0.1.18,<0.1.19.0a0
- - aws-crt-cpp >=0.26.2,<0.26.3.0a0
+ - aws-crt-cpp >=0.26.8,<0.26.9.0a0
+ - libcurl >=8.7.1,<9.0a0
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
- libzlib >=1.2.13,<1.3.0a0
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
+ - openssl >=3.2.1,<4.0a0
license: Apache-2.0
license_family: Apache
- size: 3413748
- timestamp: 1708528552370
+ size: 3638454
+ timestamp: 1713967770190
- kind: conda
name: azure-core-cpp
version: 1.11.1
@@ -3119,6 +7716,76 @@ packages:
license_family: MIT
size: 290742
timestamp: 1707404216558
+- kind: conda
+ name: azure-identity-cpp
+ version: 1.6.0
+ build: h91493d7_1
+ build_number: 1
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/azure-identity-cpp-1.6.0-h91493d7_1.conda
+ sha256: c289831ba8ba5d98861e9a487efa2d93ca6caa17a5298ac5b6e9b2d31e674387
+ md5: ce03e886a0ff55820b5a3b927afaa72b
+ depends:
+ - azure-core-cpp >=1.11.1,<1.11.2.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: MIT
+ license_family: MIT
+ size: 361422
+ timestamp: 1707413054439
+- kind: conda
+ name: azure-identity-cpp
+ version: 1.6.0
+ build: h9a80fee_1
+ build_number: 1
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/azure-identity-cpp-1.6.0-h9a80fee_1.conda
+ sha256: 4f31e0e4178fa9a3f46a5bab9984468df0ac0408b85e215d0defce812fbbec8c
+ md5: d0a78b9448eb8ca283ac980aad9073f5
+ depends:
+ - azure-core-cpp >=1.11.1,<1.11.2.0a0
+ - libcxx >=16
+ - openssl >=3.2.1,<4.0a0
+ license: MIT
+ license_family: MIT
+ size: 143729
+ timestamp: 1707412698977
+- kind: conda
+ name: azure-identity-cpp
+ version: 1.6.0
+ build: hd1853d3_1
+ build_number: 1
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/azure-identity-cpp-1.6.0-hd1853d3_1.conda
+ sha256: d4fdbd53b67bd5ac17893cea877ea795f64acf1eb7c1e17dcb8f0120dea3f148
+ md5: 38325823e16ad6789e3d7397761d18bd
+ depends:
+ - azure-core-cpp >=1.11.1,<1.11.2.0a0
+ - libcxx >=16
+ - openssl >=3.2.1,<4.0a0
+ license: MIT
+ license_family: MIT
+ size: 137946
+ timestamp: 1707412752684
+- kind: conda
+ name: azure-identity-cpp
+ version: 1.6.0
+ build: hf1915f5_1
+ build_number: 1
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/azure-identity-cpp-1.6.0-hf1915f5_1.conda
+ sha256: 42a9589abb90133047a6d041f1058c3c334bd1c155b1cc168d60c9d26f6360f1
+ md5: fd11ea65ceb397f9587b1d88a4329d73
+ depends:
+ - azure-core-cpp >=1.11.1,<1.11.2.0a0
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
+ - openssl >=3.2.1,<4.0a0
+ license: MIT
+ license_family: MIT
+ size: 191482
+ timestamp: 1707412447642
- kind: conda
name: azure-storage-blobs-cpp
version: 12.10.0
@@ -3280,21 +7947,54 @@ packages:
license_family: BSD
size: 7609750
timestamp: 1702422720584
+- kind: conda
+ name: backports
+ version: '1.0'
+ build: pyhd8ed1ab_3
+ build_number: 3
+ subdir: noarch
+ noarch: python
+ url: https://conda.anaconda.org/conda-forge/noarch/backports-1.0-pyhd8ed1ab_3.conda
+ sha256: 711602276ae39276cb0faaca6fd0ac851fff0ca17151917569174841ef830bbd
+ md5: 54ca2e08b3220c148a1d8329c2678e02
+ depends:
+ - python >=2.7
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 5950
+ timestamp: 1669158729416
+- kind: conda
+ name: backports.tarfile
+ version: 1.0.0
+ build: pyhd8ed1ab_1
+ build_number: 1
+ subdir: noarch
+ noarch: python
+ url: https://conda.anaconda.org/conda-forge/noarch/backports.tarfile-1.0.0-pyhd8ed1ab_1.conda
+ sha256: 7ba30f32daad2e7ca251508525185ba170eedc14123572611c2acf261c7956b3
+ md5: c747b1d79f136013c3b7ebcba876afa6
+ depends:
+ - backports
+ - python >=3.8
+ license: MIT
+ license_family: MIT
+ size: 31951
+ timestamp: 1712700751335
- kind: conda
name: beartype
- version: 0.17.2
+ version: 0.18.5
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/beartype-0.17.2-pyhd8ed1ab_0.conda
- sha256: 5bed309b86113cce855042214147f86c216f7522753fd6b1c57c9fb0069ef7bb
- md5: d1efc7c68a704da942163b96cd33b929
+ url: https://conda.anaconda.org/conda-forge/noarch/beartype-0.18.5-pyhd8ed1ab_0.conda
+ sha256: b68b7db7b849d999c5cc97b831e06a490c3dcb64aad84367c0969139a7a8f844
+ md5: 28786996506a2f2dd7819b5f3705f4e4
depends:
- python >=3.8
license: MIT
license_family: MIT
- size: 727785
- timestamp: 1707900331125
+ size: 766954
+ timestamp: 1713735111213
- kind: conda
name: beautifulsoup4
version: 4.12.3
@@ -3311,14 +8011,138 @@ packages:
license_family: MIT
size: 118200
timestamp: 1705564819537
+- kind: conda
+ name: binutils_impl_linux-64
+ version: '2.40'
+ build: ha885e6a_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/binutils_impl_linux-64-2.40-ha885e6a_0.conda
+ sha256: 180b268f207d1481beb9de5c173751d14c429a7226fa9a85941e4a54cf6be1b4
+ md5: 800a4c872b5bc06fa83888d112fe6c4f
+ depends:
+ - ld_impl_linux-64 2.40 h55db66e_0
+ - sysroot_linux-64
+ license: GPL-3.0-only
+ license_family: GPL
+ size: 5797310
+ timestamp: 1713651250214
+- kind: conda
+ name: black
+ version: 24.4.2
+ build: py310h2ec42d9_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/black-24.4.2-py310h2ec42d9_0.conda
+ sha256: a668399c6a935c3ab4d08d9a5d57d78cd186d9422e2ae3d5c2de47d5ecd1c0fd
+ md5: 7fafa01b8738a4eb0cd87abb692021f0
+ depends:
+ - click >=8.0.0
+ - mypy_extensions >=0.4.3
+ - packaging >=22.0
+ - pathspec >=0.9
+ - platformdirs >=2
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - tomli >=1.1.0
+ - typing_extensions >=4.0.1
+ license: MIT
+ license_family: MIT
+ size: 304013
+ timestamp: 1714119868724
+- kind: conda
+ name: black
+ version: 24.4.2
+ build: py310h5588dad_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/black-24.4.2-py310h5588dad_0.conda
+ sha256: a70f22707c5f17c3227230ea4c51ca7ba11fddd0d09a22f0272bf46f82215cf5
+ md5: 971b013d585f24095b228363cccab490
+ depends:
+ - click >=8.0.0
+ - mypy_extensions >=0.4.3
+ - packaging >=22.0
+ - pathspec >=0.9
+ - platformdirs >=2
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - tomli >=1.1.0
+ - typing_extensions >=4.0.1
+ license: MIT
+ license_family: MIT
+ size: 319065
+ timestamp: 1714120180710
+- kind: conda
+ name: black
+ version: 24.4.2
+ build: py310hbe9552e_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/black-24.4.2-py310hbe9552e_0.conda
+ sha256: b83acf3f52eb7fdac37c0bdfe155c93b8f6ee61da39d38eb422a3aff69203b97
+ md5: 0f1f6d0cb22f88fca9a0218580091a53
+ depends:
+ - click >=8.0.0
+ - mypy_extensions >=0.4.3
+ - packaging >=22.0
+ - pathspec >=0.9
+ - platformdirs >=2
+ - python >=3.10,<3.11.0a0
+ - python >=3.10,<3.11.0a0 *_cpython
+ - python_abi 3.10.* *_cp310
+ - tomli >=1.1.0
+ - typing_extensions >=4.0.1
+ license: MIT
+ license_family: MIT
+ size: 303952
+ timestamp: 1714119950914
+- kind: conda
+ name: black
+ version: 24.4.2
+ build: py310hff52083_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/black-24.4.2-py310hff52083_0.conda
+ sha256: 22b31a7272c7ec7d1c9713a0884ea838b9100363d9d8bf525f896bb1c227aee9
+ md5: 5c621f729a9e1a3aea616fe355b8d447
+ depends:
+ - click >=8.0.0
+ - mypy_extensions >=0.4.3
+ - packaging >=22.0
+ - pathspec >=0.9
+ - platformdirs >=2
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - tomli >=1.1.0
+ - typing_extensions >=4.0.1
+ license: MIT
+ license_family: MIT
+ size: 302679
+ timestamp: 1714119719392
- kind: conda
name: black
- version: 24.2.0
+ version: 24.4.2
build: py311h1ea47a8_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/black-24.2.0-py311h1ea47a8_0.conda
- sha256: b87464ade65b64177d73c63f16f2ec8f04b46ee4851db366b36e6c23383fd6d1
- md5: bace117309e02f00843794f9d7eebca2
+ url: https://conda.anaconda.org/conda-forge/win-64/black-24.4.2-py311h1ea47a8_0.conda
+ sha256: 82db623c127446bbe2e5f537532ca16da1131d268ab2afe1e50228b6f955214d
+ md5: 98f26a940a2055ba319faf00d04a6102
+ depends:
+ - click >=8.0.0
+ - mypy_extensions >=0.4.3
+ - packaging >=22.0
+ - pathspec >=0.9
+ - platformdirs >=2
+ - python >=3.11,<3.12.0a0
+ - python_abi 3.11.* *_cp311
+ license: MIT
+ license_family: MIT
+ size: 413897
+ timestamp: 1714120235176
+- kind: conda
+ name: black
+ version: 24.4.2
+ build: py311h267d04e_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/black-24.4.2-py311h267d04e_0.conda
+ sha256: 44455977d999d80d760d69069b6fbff6c66eec8f19461f68b6882c61be1be0cf
+ md5: d898886b3eb420e021805ee4c37e5fc1
depends:
- click >=8.0.0
- mypy_extensions >=0.4.3
@@ -3326,19 +8150,20 @@ packages:
- pathspec >=0.9
- platformdirs >=2
- python >=3.11,<3.12.0a0
+ - python >=3.11,<3.12.0a0 *_cpython
- python_abi 3.11.* *_cp311
license: MIT
license_family: MIT
- size: 402645
- timestamp: 1708248678003
+ size: 397720
+ timestamp: 1714119904447
- kind: conda
name: black
- version: 24.2.0
+ version: 24.4.2
build: py311h38be061_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/black-24.2.0-py311h38be061_0.conda
- sha256: a8f4dca5689162914c76d6c798d43c346ea6d0c567ee3b83278d7c602fcc334e
- md5: da18066416bcacf1ff2f644f4c4ec90d
+ url: https://conda.anaconda.org/conda-forge/linux-64/black-24.4.2-py311h38be061_0.conda
+ sha256: b8b6c719a0544e5d79110082260630ec9318b74e29a84833e2f104cb61b5c346
+ md5: 046337f3e5c047e7685bd7570980b579
depends:
- click >=8.0.0
- mypy_extensions >=0.4.3
@@ -3349,16 +8174,16 @@ packages:
- python_abi 3.11.* *_cp311
license: MIT
license_family: MIT
- size: 385178
- timestamp: 1708248412394
+ size: 397402
+ timestamp: 1714119753522
- kind: conda
name: black
- version: 24.2.0
+ version: 24.4.2
build: py311h6eed73b_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/black-24.2.0-py311h6eed73b_0.conda
- sha256: 2fd6b25d8d3f0bc3e91715bafcd0c38121974b61248b7b812fd850abfa41c7ed
- md5: 816ffba077c301e7b2710a1dd76e6e63
+ url: https://conda.anaconda.org/conda-forge/osx-64/black-24.4.2-py311h6eed73b_0.conda
+ sha256: 6b553bb18ecbb71f3e84b6f5e9b599a3f8915e6927f837150b785b18d9a3763d
+ md5: abe675ce1312f5f2e42f688aa3c2a2a9
depends:
- click >=8.0.0
- mypy_extensions >=0.4.3
@@ -3369,16 +8194,56 @@ packages:
- python_abi 3.11.* *_cp311
license: MIT
license_family: MIT
- size: 386618
- timestamp: 1708248490085
+ size: 398964
+ timestamp: 1714119810562
+- kind: conda
+ name: black
+ version: 24.4.2
+ build: py312h2e8e312_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/black-24.4.2-py312h2e8e312_0.conda
+ sha256: e96b5277eee85982ab2a0d2811829d544a8df8a903578ce410f8105049d8daee
+ md5: 1c22d45c6d43af563cd39c597226922d
+ depends:
+ - click >=8.0.0
+ - mypy_extensions >=0.4.3
+ - packaging >=22.0
+ - pathspec >=0.9
+ - platformdirs >=2
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ license: MIT
+ license_family: MIT
+ size: 407116
+ timestamp: 1714120180643
+- kind: conda
+ name: black
+ version: 24.4.2
+ build: py312h7900ff3_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/black-24.4.2-py312h7900ff3_0.conda
+ sha256: 02e36917e82adf0b2929b6fc35e60d7df224621c2d0b0c5ef819a4fb016e0742
+ md5: 777e84c9bef7349c8cee65cffb11f7c4
+ depends:
+ - click >=8.0.0
+ - mypy_extensions >=0.4.3
+ - packaging >=22.0
+ - pathspec >=0.9
+ - platformdirs >=2
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ license: MIT
+ license_family: MIT
+ size: 387770
+ timestamp: 1714119755759
- kind: conda
name: black
- version: 24.2.0
+ version: 24.4.2
build: py312h81bd7bf_0
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/black-24.2.0-py312h81bd7bf_0.conda
- sha256: ec82613d981e5cc4bc56b8d3bee32fd5feb509ac74c2e13861ca551969966034
- md5: 088e764f17394df4dc77b4ab37149234
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/black-24.4.2-py312h81bd7bf_0.conda
+ sha256: c78b125ad8e3492836524add8dd757489bf109363bb89ad9b6f86b64e5f6513b
+ md5: 696163f7d375e2bef948694129470337
depends:
- click >=8.0.0
- mypy_extensions >=0.4.3
@@ -3390,48 +8255,68 @@ packages:
- python_abi 3.12.* *_cp312
license: MIT
license_family: MIT
- size: 380374
- timestamp: 1708248587887
+ size: 391658
+ timestamp: 1714119953743
+- kind: conda
+ name: black
+ version: 24.4.2
+ build: py312hb401068_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/black-24.4.2-py312hb401068_0.conda
+ sha256: ed5cd347f987e1f581e5ccee4cba0a03451bbe6e72d800c636c617a427c48e7a
+ md5: 22de584e109e98d9ee0ca3820fcff185
+ depends:
+ - click >=8.0.0
+ - mypy_extensions >=0.4.3
+ - packaging >=22.0
+ - pathspec >=0.9
+ - platformdirs >=2
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ license: MIT
+ license_family: MIT
+ size: 391969
+ timestamp: 1714119854151
- kind: conda
name: blas
- version: '2.121'
+ version: '2.122'
build: openblas
- build_number: 21
+ build_number: 22
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/blas-2.121-openblas.conda
- sha256: 157f32227335579017e96798bf7f74a69bcf134d33e893a9a87f33b73be3c3cc
- md5: d5e9a2e2e56fce4e49844e13210b9d10
- depends:
- - blas-devel 3.9.0 21_win64_openblas
- - libblas 3.9.0 21_win64_openblas
- - libcblas 3.9.0 21_win64_openblas
- - liblapack 3.9.0 21_win64_openblas
- - liblapacke 3.9.0 21_win64_openblas
+ url: https://conda.anaconda.org/conda-forge/win-64/blas-2.122-openblas.conda
+ sha256: b195808f2d30cd63361033350531714f01cdb7f106a7c23aba6de9cfc7bef7e5
+ md5: 8f99dceaf517820297f993350d24bb5c
+ depends:
+ - blas-devel 3.9.0 22_win64_openblas
+ - libblas 3.9.0 22_win64_openblas
+ - libcblas 3.9.0 22_win64_openblas
+ - liblapack 3.9.0 22_win64_openblas
+ - liblapacke 3.9.0 22_win64_openblas
- m2w64-gcc-libs
- m2w64-gcc-libs-core
license: BSD-3-Clause
license_family: BSD
- size: 15958
- timestamp: 1705980301701
+ size: 15990
+ timestamp: 1712543021549
- kind: conda
name: blas-devel
version: 3.9.0
- build: 21_win64_openblas
- build_number: 21
+ build: 22_win64_openblas
+ build_number: 22
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/blas-devel-3.9.0-21_win64_openblas.conda
- sha256: cbf824738b716667bbb39a7b7806166f35b0cb38f3cfb3f310f79f477d1ee11c
- md5: dda86746ca0dd83e8fd7ef866d0621b7
+ url: https://conda.anaconda.org/conda-forge/win-64/blas-devel-3.9.0-22_win64_openblas.conda
+ sha256: cf9d5d409e5c324634277a999340cb043767e9be3264f8e04ca8c0c5ac46bf1b
+ md5: e2eac94fc2a449fe80701b9125c04ea2
depends:
- - libblas 3.9.0 21_win64_openblas
- - libcblas 3.9.0 21_win64_openblas
- - liblapack 3.9.0 21_win64_openblas
- - liblapacke 3.9.0 21_win64_openblas
- - openblas 0.3.26.*
+ - libblas 3.9.0 22_win64_openblas
+ - libcblas 3.9.0 22_win64_openblas
+ - liblapack 3.9.0 22_win64_openblas
+ - liblapacke 3.9.0 22_win64_openblas
+ - openblas 0.3.27.*
license: BSD-3-Clause
license_family: BSD
- size: 15354
- timestamp: 1705980122238
+ size: 15322
+ timestamp: 1712542844430
- kind: conda
name: bleach
version: 6.1.0
@@ -3454,78 +8339,86 @@ packages:
- kind: conda
name: blosc
version: 1.21.5
- build: h0f2a231_0
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/blosc-1.21.5-h0f2a231_0.conda
- sha256: e2b15b017775d1bda8edbb1bc48e545e45364edefa4d926732fc5488cc600731
- md5: 009521b7ed97cca25f8f997f9e745976
+ build: h9c252e8_1
+ build_number: 1
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/blosc-1.21.5-h9c252e8_1.conda
+ sha256: 3b38493b95cc3d9f6369bbcbab55a2cdbbe6bbe32c74b923f8d638e874033139
+ md5: e1be80625e4f6bdc2154ee099c641683
depends:
- - libgcc-ng >=12
- - libstdcxx-ng >=12
+ - __osx >=11.0
+ - libcxx >=16
- libzlib >=1.2.13,<1.3.0a0
- lz4-c >=1.9.3,<1.10.0a0
- - snappy >=1.1.10,<2.0a0
+ - snappy >=1.2.0,<1.3.0a0
- zstd >=1.5.5,<1.6.0a0
license: BSD-3-Clause
license_family: BSD
- size: 48692
- timestamp: 1693657088079
+ size: 32983
+ timestamp: 1712682317564
- kind: conda
name: blosc
version: 1.21.5
- build: hc338f07_0
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/blosc-1.21.5-hc338f07_0.conda
- sha256: 81f206dd843fe0da894d0480ea9d689fe948fa4b3cad060f97b016af4ac7b3a1
- md5: 93fccb1150aa377576107ecd0ad375b3
+ build: hafa3907_1
+ build_number: 1
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/blosc-1.21.5-hafa3907_1.conda
+ sha256: a2e867d61ce398187d59f59e034e8651c825cb33224d2c6f315876b6df5e2161
+ md5: 937b9f86de960cd40c8ef5c7421b7028
depends:
- - libcxx >=15.0.7
+ - __osx >=10.9
+ - libcxx >=16
- libzlib >=1.2.13,<1.3.0a0
- lz4-c >=1.9.3,<1.10.0a0
- - snappy >=1.1.10,<2.0a0
+ - snappy >=1.2.0,<1.3.0a0
- zstd >=1.5.5,<1.6.0a0
license: BSD-3-Clause
license_family: BSD
- size: 33450
- timestamp: 1693657320331
+ size: 46932
+ timestamp: 1712682252461
- kind: conda
name: blosc
version: 1.21.5
- build: hdccc3a2_0
+ build: hbd69f2e_1
+ build_number: 1
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/blosc-1.21.5-hdccc3a2_0.conda
- sha256: 73cee35e5366ce998ef36ccccb4c11ef9ead297886cc08269379f91539131288
- md5: 77a5cea2ce92907b7d1e7954457a526a
+ url: https://conda.anaconda.org/conda-forge/win-64/blosc-1.21.5-hbd69f2e_1.conda
+ sha256: a74c8a91bee3947f9865abd057ce33a1ebb728f04041bfd47bc478fdc133ca22
+ md5: 06c7d9a1cdecef43921be8b577a61ee7
depends:
- libzlib >=1.2.13,<1.3.0a0
- lz4-c >=1.9.3,<1.10.0a0
- - snappy >=1.1.10,<2.0a0
+ - snappy >=1.2.0,<1.3.0a0
- ucrt >=10.0.20348.0
- vc >=14.2,<15
+ - vc >=14.3,<15
- vc14_runtime >=14.29.30139
+ - vc14_runtime >=14.38.33130
- zstd >=1.5.5,<1.6.0a0
license: BSD-3-Clause
license_family: BSD
- size: 50069
- timestamp: 1693657396550
+ size: 50488
+ timestamp: 1712682670189
- kind: conda
name: blosc
version: 1.21.5
- build: heccf04b_0
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/blosc-1.21.5-heccf04b_0.conda
- sha256: db629047f1721d5a6e3bd41b07c1a3bacd0dee70f4063b61db2aa46f19a0b8b4
- md5: 3003fa6dd18769db1a616982dcee5b40
+ build: hc2324a3_1
+ build_number: 1
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/blosc-1.21.5-hc2324a3_1.conda
+ sha256: fde5e8ad75d2a5f154e29da7763a5dd9ee5b5b5c3fc22a1f5170296c8f6f3f62
+ md5: 11d76bee958b1989bd1ac6ee7372ea6d
depends:
- - libcxx >=15.0.7
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
- libzlib >=1.2.13,<1.3.0a0
- lz4-c >=1.9.3,<1.10.0a0
- - snappy >=1.1.10,<2.0a0
+ - snappy >=1.2.0,<1.3.0a0
- zstd >=1.5.5,<1.6.0a0
license: BSD-3-Clause
license_family: BSD
- size: 49891
- timestamp: 1693657206065
+ size: 48693
+ timestamp: 1712681892833
- kind: conda
name: bmipy
version: 2.0.1
@@ -3547,15 +8440,15 @@ packages:
timestamp: 1698243713437
- kind: conda
name: bokeh
- version: 3.3.4
+ version: 3.4.1
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.3.4-pyhd8ed1ab_0.conda
- sha256: b9cf3b2d136ecdd32dfb97776c97ea92915caab759179ee94c6c1abbab806a62
- md5: 6cc92bba68b7bb5a3b180e96508f9480
+ url: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.1-pyhd8ed1ab_0.conda
+ sha256: 0289e61d7a30a693cf79d36484abd13f72ad785bd23cadc227c29dca89d95046
+ md5: 0f8e0831bbf38d83973438ce9af9af9a
depends:
- - contourpy >=1
+ - contourpy >=1.2
- jinja2 >=2.9
- numpy >=1.16
- packaging >=16.8
@@ -3563,28 +8456,28 @@ packages:
- pillow >=7.1.0
- python >=3.9
- pyyaml >=3.10
- - tornado >=5.1
+ - tornado >=6.2
- xyzservices >=2021.09.1
license: BSD-3-Clause
license_family: BSD
- size: 4553167
- timestamp: 1706215976186
+ size: 4689064
+ timestamp: 1712901219432
- kind: conda
name: branca
- version: 0.7.1
+ version: 0.7.2
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.1-pyhd8ed1ab_0.conda
- sha256: 4053ce4389a524e226eea020e2e507335e908a45d324b4f48d4b4407b17c88e3
- md5: 35fa1bfd27c4d4c3cd46501a9ca7bd78
+ url: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.2-pyhd8ed1ab_0.conda
+ sha256: 9f7df349cb5a8852804d5bb1f5f49e3076a55ac7229b9c114bb5f7461f497ba7
+ md5: 5f1c719f1cac0aee5e6bd6ca7d54a7fa
depends:
- jinja2 >=3
- python >=3.7
license: MIT
license_family: MIT
- size: 29211
- timestamp: 1706711216173
+ size: 28923
+ timestamp: 1714071906758
- kind: conda
name: brotli
version: 1.1.0
@@ -3725,6 +8618,86 @@ packages:
license_family: MIT
size: 18980
timestamp: 1695990054140
+- kind: conda
+ name: brotli-python
+ version: 1.1.0
+ build: py310h00ffb61_1
+ build_number: 1
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/brotli-python-1.1.0-py310h00ffb61_1.conda
+ sha256: 8de77cf62a653dd6ffe19927b92c421f5fa73c078d7799181f5211a1bac2883b
+ md5: 42bfbc1d41cbe2696a3c9d8b0342324f
+ depends:
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ constrains:
+ - libbrotlicommon 1.1.0 hcfcfb64_1
+ license: MIT
+ license_family: MIT
+ size: 321672
+ timestamp: 1695990897641
+- kind: conda
+ name: brotli-python
+ version: 1.1.0
+ build: py310h1253130_1
+ build_number: 1
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-python-1.1.0-py310h1253130_1.conda
+ sha256: dab21e18c0275bfd93a09b751096998485677ed17c2e2d08298bc5b43c10bee1
+ md5: 26fab7f65a80fff9f402ec3b7860b88a
+ depends:
+ - libcxx >=15.0.7
+ - python >=3.10,<3.11.0a0
+ - python >=3.10,<3.11.0a0 *_cpython
+ - python_abi 3.10.* *_cp310
+ constrains:
+ - libbrotlicommon 1.1.0 hb547adb_1
+ license: MIT
+ license_family: MIT
+ size: 344275
+ timestamp: 1695990848681
+- kind: conda
+ name: brotli-python
+ version: 1.1.0
+ build: py310h9e9d8ca_1
+ build_number: 1
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/brotli-python-1.1.0-py310h9e9d8ca_1.conda
+ sha256: 57d66ca3e072b889c94cfaf56eb7e1794d3b1b3179bd475a4edef50a03359354
+ md5: 2362e323293e7699cf1e621d502f86d6
+ depends:
+ - libcxx >=15.0.7
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ constrains:
+ - libbrotlicommon 1.1.0 h0dc2134_1
+ license: MIT
+ license_family: MIT
+ size: 367037
+ timestamp: 1695990378635
+- kind: conda
+ name: brotli-python
+ version: 1.1.0
+ build: py310hc6cd4ac_1
+ build_number: 1
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.1.0-py310hc6cd4ac_1.conda
+ sha256: e22268d81905338570786921b3def88e55f9ed6d0ccdd17d9fbae31a02fbef69
+ md5: 1f95722c94f00b69af69a066c7433714
+ depends:
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ constrains:
+ - libbrotlicommon 1.1.0 hd590300_1
+ license: MIT
+ license_family: MIT
+ size: 349397
+ timestamp: 1695990295884
- kind: conda
name: brotli-python
version: 1.1.0
@@ -3746,6 +8719,26 @@ packages:
license_family: MIT
size: 322086
timestamp: 1695990976742
+- kind: conda
+ name: brotli-python
+ version: 1.1.0
+ build: py311ha891d26_1
+ build_number: 1
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-python-1.1.0-py311ha891d26_1.conda
+ sha256: 2d78c79ccf2c17236c52ef217a4c34b762eb7908a6903d94439f787aac1c8f4b
+ md5: 5e802b015e33447d1283d599d21f052b
+ depends:
+ - libcxx >=15.0.7
+ - python >=3.11,<3.12.0a0
+ - python >=3.11,<3.12.0a0 *_cpython
+ - python_abi 3.11.* *_cp311
+ constrains:
+ - libbrotlicommon 1.1.0 hb547adb_1
+ license: MIT
+ license_family: MIT
+ size: 343332
+ timestamp: 1695991223439
- kind: conda
name: brotli-python
version: 1.1.0
@@ -3785,6 +8778,47 @@ packages:
license_family: MIT
size: 366864
timestamp: 1695990449997
+- kind: conda
+ name: brotli-python
+ version: 1.1.0
+ build: py312h30efb56_1
+ build_number: 1
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.1.0-py312h30efb56_1.conda
+ sha256: b68706698b6ac0d31196a8bcb061f0d1f35264bcd967ea45e03e108149a74c6f
+ md5: 45801a89533d3336a365284d93298e36
+ depends:
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
+ - python >=3.12.0rc3,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ constrains:
+ - libbrotlicommon 1.1.0 hd590300_1
+ license: MIT
+ license_family: MIT
+ size: 350604
+ timestamp: 1695990206327
+- kind: conda
+ name: brotli-python
+ version: 1.1.0
+ build: py312h53d5487_1
+ build_number: 1
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/brotli-python-1.1.0-py312h53d5487_1.conda
+ sha256: 769e276ecdebf86f097786cbde1ebd11e018cd6cd838800995954fe6360e0797
+ md5: d01a6667b99f0e8ad4097af66c938e62
+ depends:
+ - python >=3.12.0rc3,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ constrains:
+ - libbrotlicommon 1.1.0 hcfcfb64_1
+ license: MIT
+ license_family: MIT
+ size: 322514
+ timestamp: 1695991054894
- kind: conda
name: brotli-python
version: 1.1.0
@@ -3805,6 +8839,25 @@ packages:
license_family: MIT
size: 343435
timestamp: 1695990731924
+- kind: conda
+ name: brotli-python
+ version: 1.1.0
+ build: py312heafc425_1
+ build_number: 1
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/brotli-python-1.1.0-py312heafc425_1.conda
+ sha256: fc55988f9bc05a938ea4b8c20d6545bed6e9c6c10aa5147695f981136ca894c1
+ md5: a288b88f06b8bfe0dedaf5c4b6ac6b7a
+ depends:
+ - libcxx >=15.0.7
+ - python >=3.12.0rc3,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ constrains:
+ - libbrotlicommon 1.1.0 h0dc2134_1
+ license: MIT
+ license_family: MIT
+ size: 366883
+ timestamp: 1695990710194
- kind: conda
name: build
version: 0.7.0
@@ -3884,58 +8937,58 @@ packages:
timestamp: 1699279927352
- kind: conda
name: c-ares
- version: 1.27.0
+ version: 1.28.1
build: h10d778d_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.27.0-h10d778d_0.conda
- sha256: a53e14c071dcce756ce80673f2a90a1c6dff695a26bc9f5e54d56b55e76ee3dc
- md5: 713dd57081dfe8535eb961b45ed26a0c
+ url: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.28.1-h10d778d_0.conda
+ sha256: fccd7ad7e3dfa6b19352705b33eb738c4c55f79f398e106e6cf03bab9415595a
+ md5: d5eb7992227254c0e9a0ce71151f0079
license: MIT
license_family: MIT
- size: 148568
- timestamp: 1708685147963
+ size: 152607
+ timestamp: 1711819681694
- kind: conda
name: c-ares
- version: 1.27.0
+ version: 1.28.1
build: h93a5062_0
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.27.0-h93a5062_0.conda
- sha256: a168e53ee462980cd78b324e055afdd00080ded378ca974969a0917eb4ae1ccb
- md5: d3579ba506791b1f8f8a16cfc2885326
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.28.1-h93a5062_0.conda
+ sha256: 2fc553d7a75e912efbdd6b82cd7916cc9cb2773e6cd873b77e02d631dd7be698
+ md5: 04f776a6139f7eafc2f38668570eb7db
license: MIT
license_family: MIT
- size: 145697
- timestamp: 1708685057216
+ size: 150488
+ timestamp: 1711819630164
- kind: conda
name: c-ares
- version: 1.27.0
+ version: 1.28.1
build: hcfcfb64_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/c-ares-1.27.0-hcfcfb64_0.conda
- sha256: 1ab77396e0aaffc6e02508994983c7c6e3bc57019f4a13ac4fda6ee274e30bda
- md5: 387d3a2f8fc0ec02f48cee4cd79ec7e0
+ url: https://conda.anaconda.org/conda-forge/win-64/c-ares-1.28.1-hcfcfb64_0.conda
+ sha256: 44ded34fdac46d4a37942c1cae3fc871dc6ecb13e0408442c6f8797671b332e6
+ md5: 3b2a518680f790a79a7e77bad1861c3a
depends:
- ucrt >=10.0.20348.0
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
license: MIT
license_family: MIT
- size: 153934
- timestamp: 1708685329364
+ size: 159060
+ timestamp: 1711820066438
- kind: conda
name: c-ares
- version: 1.27.0
+ version: 1.28.1
build: hd590300_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.27.0-hd590300_0.conda
- sha256: 2a5866b19d28cb963fab291a62ff1c884291b9d6f59de14643e52f103e255749
- md5: f6afff0e9ee08d2f1b897881a4f38cdb
+ url: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.28.1-hd590300_0.conda
+ sha256: cb25063f3342149c7924b21544109696197a9d774f1407567477d4f3026bf38a
+ md5: dcde58ff9a1f30b0037a2315d1846d1f
depends:
- libgcc-ng >=12
license: MIT
license_family: MIT
- size: 163578
- timestamp: 1708684786032
+ size: 168875
+ timestamp: 1711819445938
- kind: conda
name: ca-certificates
version: 2024.2.2
@@ -4223,75 +9276,75 @@ packages:
- kind: conda
name: cffi
version: 1.16.0
- build: py311ha68e1ae_0
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/cffi-1.16.0-py311ha68e1ae_0.conda
- sha256: eb7463fe3785dd9ac0b3b1e5fea3b721d20eb082e194cab0af8d9ff28c28934f
- md5: d109d6e767c4890ea32880b8bfa4a3b6
+ build: py312h38bf5a0_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/cffi-1.16.0-py312h38bf5a0_0.conda
+ sha256: 8b856583b56fc30f064a7cb286f85e4b5725f2bd4fda8ba0c4e94bffe258741e
+ md5: a45759c013ab20b9017ef9539d234dd7
depends:
+ - libffi >=3.4,<4.0a0
- pycparser
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
+ - python >=3.12.0rc3,<3.13.0a0
+ - python_abi 3.12.* *_cp312
license: MIT
license_family: MIT
- size: 297043
- timestamp: 1696002186279
+ size: 282370
+ timestamp: 1696002004433
- kind: conda
name: cffi
version: 1.16.0
- build: py311hb3a22ac_0
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/cffi-1.16.0-py311hb3a22ac_0.conda
- sha256: b71c94528ca0c35133da4b7ef69b51a0b55eeee570376057f3d2ad60c3ab1444
- md5: b3469563ac5e808b0cd92810d0697043
+ build: py312h8e38eb3_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/cffi-1.16.0-py312h8e38eb3_0.conda
+ sha256: 1544403cb1a5ca2aeabf0dac86d9ce6066d6fb4363493643b33ffd1b78038d18
+ md5: 960ecbd65860d3b1de5e30373e1bffb1
depends:
- libffi >=3.4,<4.0a0
- - libgcc-ng >=12
- pycparser
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12.0rc3,<3.13.0a0
+ - python >=3.12.0rc3,<3.13.0a0 *_cpython
+ - python_abi 3.12.* *_cp312
license: MIT
license_family: MIT
- size: 300207
- timestamp: 1696001873452
+ size: 284245
+ timestamp: 1696002181644
- kind: conda
name: cffi
version: 1.16.0
- build: py311hc0b63fd_0
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/cffi-1.16.0-py311hc0b63fd_0.conda
- sha256: 1f13a5fa7f310fdbd27f5eddceb9e62cfb10012c58a58c923dd6f51fa979748a
- md5: 15d07b82223cac96af629e5e747ba27a
+ build: py312he70551f_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/cffi-1.16.0-py312he70551f_0.conda
+ sha256: dd39e594f5c6bca52dfed343de2af9326a99700ce2ba3404bd89706926fc0137
+ md5: 5a51096925d52332c62bfd8904899055
depends:
- - libffi >=3.4,<4.0a0
- pycparser
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12.0rc3,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
license: MIT
license_family: MIT
- size: 289932
- timestamp: 1696002096156
+ size: 287805
+ timestamp: 1696002408940
- kind: conda
name: cffi
version: 1.16.0
- build: py312h8e38eb3_0
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/cffi-1.16.0-py312h8e38eb3_0.conda
- sha256: 1544403cb1a5ca2aeabf0dac86d9ce6066d6fb4363493643b33ffd1b78038d18
- md5: 960ecbd65860d3b1de5e30373e1bffb1
+ build: py312hf06ca03_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/cffi-1.16.0-py312hf06ca03_0.conda
+ sha256: 5a36e2c254603c367d26378fa3a205bd92263e30acf195f488749562b4c44251
+ md5: 56b0ca764ce23cc54f3f7e2a7b970f6d
depends:
- libffi >=3.4,<4.0a0
+ - libgcc-ng >=12
- pycparser
- python >=3.12.0rc3,<3.13.0a0
- - python >=3.12.0rc3,<3.13.0a0 *_cpython
- python_abi 3.12.* *_cp312
license: MIT
license_family: MIT
- size: 284245
- timestamp: 1696002181644
+ size: 294523
+ timestamp: 1696001868949
- kind: conda
name: cfgv
version: 3.3.1
@@ -4309,75 +9362,148 @@ packages:
timestamp: 1629909423398
- kind: conda
name: cfitsio
- version: 4.3.1
- build: h60fb419_0
+ version: 4.4.0
+ build: h60fb419_1
+ build_number: 1
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/cfitsio-4.3.1-h60fb419_0.conda
- sha256: 5bd157478529ff4d05b8e8654de0580609177252eb11ecf5201b831effeeb2ec
- md5: 03ab895afe3804b527c12193a9612cac
+ url: https://conda.anaconda.org/conda-forge/osx-64/cfitsio-4.4.0-h60fb419_1.conda
+ sha256: 6b0a971c871e1f09b514ac4aa779b167cabc69041f24ee4e868f8268bce48f28
+ md5: 20d46f51b8e357817ec419fe12caeb00
depends:
- bzip2 >=1.0.8,<2.0a0
- - libcurl >=8.4.0,<9.0a0
+ - libcurl >=8.7.1,<9.0a0
- libgfortran 5.*
- libgfortran5 >=12.3.0
- libgfortran5 >=13.2.0
- libzlib >=1.2.13,<1.3.0a0
- license: LicenseRef-fitsio
- size: 804415
- timestamp: 1700704377677
+ license: NASA-1.3
+ size: 842838
+ timestamp: 1713454502134
- kind: conda
name: cfitsio
- version: 4.3.1
- build: h808cd33_0
+ version: 4.4.0
+ build: h808cd33_1
+ build_number: 1
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/cfitsio-4.3.1-h808cd33_0.conda
- sha256: 9395bd24ef552ac6063e2d6a6fc57e5c7067a74b8d8ee3f06d8389baffacf016
- md5: 22b61b2ad129db82da2eee76710f7551
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/cfitsio-4.4.0-h808cd33_1.conda
+ sha256: e45dd58d752e30718422e596b5f98f679c19335c10bd426adb917ca4c5a5b697
+ md5: 9413cd7e8cad79ef5bca73e1ca5a994f
depends:
- bzip2 >=1.0.8,<2.0a0
- - libcurl >=8.4.0,<9.0a0
+ - libcurl >=8.7.1,<9.0a0
- libgfortran 5.*
- libgfortran5 >=12.3.0
- libgfortran5 >=13.2.0
- libzlib >=1.2.13,<1.3.0a0
- license: LicenseRef-fitsio
- size: 761043
- timestamp: 1700704372096
+ license: NASA-1.3
+ size: 801718
+ timestamp: 1713454359210
- kind: conda
name: cfitsio
- version: 4.3.1
- build: h9b0cee5_0
+ version: 4.4.0
+ build: h9b0cee5_1
+ build_number: 1
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/cfitsio-4.3.1-h9b0cee5_0.conda
- sha256: 9fb11c689bb4c88e031c931cae23b09880e7a8c17713261844c16f5e88f349f2
- md5: eb7f15f7b2160dec9e803a86dcbe1d03
+ url: https://conda.anaconda.org/conda-forge/win-64/cfitsio-4.4.0-h9b0cee5_1.conda
+ sha256: fa2e681a696beec5db97e228453c5b1b18a44032110fd81f386a5861c1131042
+ md5: c1e9056348e8df1bc6b85fd7ae1f6766
depends:
- - libcurl >=8.4.0,<9.0a0
+ - libcurl >=8.7.1,<9.0a0
- libzlib >=1.2.13,<1.3.0a0
- ucrt >=10.0.20348.0
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
- license: LicenseRef-fitsio
- size: 563597
- timestamp: 1700704657931
+ license: NASA-1.3
+ size: 604815
+ timestamp: 1713454571329
- kind: conda
name: cfitsio
- version: 4.3.1
- build: hbdc6101_0
+ version: 4.4.0
+ build: hbdc6101_1
+ build_number: 1
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/cfitsio-4.3.1-hbdc6101_0.conda
- sha256: b91003bff71351a0132c84d69fbb5afcfa90e57d83f76a180c6a5a0289099fb1
- md5: dcea02841b33a9c49f74ca9328de919a
+ url: https://conda.anaconda.org/conda-forge/linux-64/cfitsio-4.4.0-hbdc6101_1.conda
+ sha256: 7113a60bc4d7cdb6881d01c91e0f1f88f5f625bb7d4c809677d08679c66dda7f
+ md5: 0ba5a427a51923dcdfe1121115ac8293
depends:
- bzip2 >=1.0.8,<2.0a0
- - libcurl >=8.4.0,<9.0a0
+ - libcurl >=8.7.1,<9.0a0
- libgcc-ng >=12
- libgfortran-ng
- libgfortran5 >=12.3.0
- libzlib >=1.2.13,<1.3.0a0
- license: LicenseRef-fitsio
- size: 875191
- timestamp: 1700704197213
+ license: NASA-1.3
+ size: 914335
+ timestamp: 1713454048942
+- kind: conda
+ name: cftime
+ version: 1.6.3
+ build: py310h1f7b6fc_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/cftime-1.6.3-py310h1f7b6fc_0.conda
+ sha256: 0983d88068e4bd589031582769ef7d05617edda3a7daa1f4847492f4c3538aad
+ md5: 31beda75384647959d5792a1a7dc571a
+ depends:
+ - libgcc-ng >=12
+ - numpy >=1.22.4,<2.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ license: MIT
+ license_family: MIT
+ size: 246545
+ timestamp: 1698610101048
+- kind: conda
+ name: cftime
+ version: 1.6.3
+ build: py310h3e78b6c_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/cftime-1.6.3-py310h3e78b6c_0.conda
+ sha256: 73f41269bd2052e0ee71d6a1a985dca1664222ddd50d35d18d0ac4f117de1db6
+ md5: 00d6eac027a0d5c3676a362fb48fbb73
+ depends:
+ - numpy >=1.22.4,<2.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: MIT
+ license_family: MIT
+ size: 184772
+ timestamp: 1698610687537
+- kind: conda
+ name: cftime
+ version: 1.6.3
+ build: py310h50ce23c_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/cftime-1.6.3-py310h50ce23c_0.conda
+ sha256: 3de571628e5dc47a5f4ff9e3b8386934e8dab580495119fedba230af41d94387
+ md5: fc9369c9009008aa0180523d2750ac0a
+ depends:
+ - numpy >=1.22.4,<2.0a0
+ - python >=3.10,<3.11.0a0
+ - python >=3.10,<3.11.0a0 *_cpython
+ - python_abi 3.10.* *_cp310
+ license: MIT
+ license_family: MIT
+ size: 203444
+ timestamp: 1698610345834
+- kind: conda
+ name: cftime
+ version: 1.6.3
+ build: py310h91862f5_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/cftime-1.6.3-py310h91862f5_0.conda
+ sha256: 0228455782d71f754f1f26fd1e5b0e4d62e376c7a56b3dde32f052bd56fd688b
+ md5: 19f7244847b734340cf12f5d7a5057d6
+ depends:
+ - numpy >=1.22.4,<2.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ license: MIT
+ license_family: MIT
+ size: 208830
+ timestamp: 1698610245564
- kind: conda
name: cftime
version: 1.6.3
@@ -4393,43 +9519,112 @@ packages:
- python_abi 3.11.* *_cp311
license: MIT
license_family: MIT
- size: 248470
- timestamp: 1698610153918
+ size: 248470
+ timestamp: 1698610153918
+- kind: conda
+ name: cftime
+ version: 1.6.3
+ build: py311h59ca53f_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/cftime-1.6.3-py311h59ca53f_0.conda
+ sha256: 845a5bbafacf1a47fd4682cd558e36d98ee7fa4de9ebfa0ff605c9e9db3c441f
+ md5: a1eeb8f4a2bf8b01c4b7ef15dad96e4b
+ depends:
+ - numpy >=1.23.5,<2.0a0
+ - python >=3.11,<3.12.0a0
+ - python_abi 3.11.* *_cp311
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: MIT
+ license_family: MIT
+ size: 186745
+ timestamp: 1698610652141
+- kind: conda
+ name: cftime
+ version: 1.6.3
+ build: py311h9ea6feb_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/cftime-1.6.3-py311h9ea6feb_0.conda
+ sha256: 662d97c84192831aa0322d46432dab89e549a89383fdccf90caed33edcffc009
+ md5: a6953d69d4f0fbd72436b3b8cb51f04a
+ depends:
+ - numpy >=1.23.5,<2.0a0
+ - python >=3.11,<3.12.0a0
+ - python >=3.11,<3.12.0a0 *_cpython
+ - python_abi 3.11.* *_cp311
+ license: MIT
+ license_family: MIT
+ size: 206114
+ timestamp: 1698610333282
+- kind: conda
+ name: cftime
+ version: 1.6.3
+ build: py311hc9a392d_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/cftime-1.6.3-py311hc9a392d_0.conda
+ sha256: d3f434996bed1f94b193eaa6d74faf84860fa485ce1ae5e3dabb99053e9c7a98
+ md5: 1ff674a61d45e398cc4bf75a116d6a32
+ depends:
+ - numpy >=1.23.5,<2.0a0
+ - python >=3.11,<3.12.0a0
+ - python_abi 3.11.* *_cp311
+ license: MIT
+ license_family: MIT
+ size: 211864
+ timestamp: 1698610262887
+- kind: conda
+ name: cftime
+ version: 1.6.3
+ build: py312h3f2338b_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/cftime-1.6.3-py312h3f2338b_0.conda
+ sha256: 7e987e1b5407a067e387ce96c472da0d08ec8ef767ef7fea2f20a00af157c71e
+ md5: ffeaf39a0ffdfa32df12b93650bbb6c5
+ depends:
+ - numpy >=1.26.0,<2.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ license: MIT
+ license_family: MIT
+ size: 208004
+ timestamp: 1698610244334
- kind: conda
name: cftime
version: 1.6.3
- build: py311h59ca53f_0
+ build: py312ha90f08f_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/cftime-1.6.3-py311h59ca53f_0.conda
- sha256: 845a5bbafacf1a47fd4682cd558e36d98ee7fa4de9ebfa0ff605c9e9db3c441f
- md5: a1eeb8f4a2bf8b01c4b7ef15dad96e4b
+ url: https://conda.anaconda.org/conda-forge/win-64/cftime-1.6.3-py312ha90f08f_0.conda
+ sha256: fc61758294904492c97909bbcb8f571f172570e6084b9c6094376488e5a6e2d9
+ md5: 4b80b34d8e02cd5a559d98bf0cf00d9a
depends:
- - numpy >=1.23.5,<2.0a0
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - numpy >=1.26.0,<2.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
- ucrt >=10.0.20348.0
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
license: MIT
license_family: MIT
- size: 186745
- timestamp: 1698610652141
+ size: 178748
+ timestamp: 1698610716084
- kind: conda
name: cftime
version: 1.6.3
- build: py311hc9a392d_0
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/cftime-1.6.3-py311hc9a392d_0.conda
- sha256: d3f434996bed1f94b193eaa6d74faf84860fa485ce1ae5e3dabb99053e9c7a98
- md5: 1ff674a61d45e398cc4bf75a116d6a32
+ build: py312hc7c0aa3_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/cftime-1.6.3-py312hc7c0aa3_0.conda
+ sha256: e82c7643135e3e118fa5cf10f1054abbc019ee06b69eaabcaa9adc7f1d9fd60d
+ md5: bd11505f0fe9bd8bcec01ce1220f63c7
depends:
- - numpy >=1.23.5,<2.0a0
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - libgcc-ng >=12
+ - numpy >=1.26.0,<2.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
license: MIT
license_family: MIT
- size: 211864
- timestamp: 1698610262887
+ size: 246891
+ timestamp: 1698610103456
- kind: conda
name: cftime
version: 1.6.3
@@ -4546,76 +9741,76 @@ packages:
- kind: conda
name: cmarkgfm
version: 0.8.0
- build: py311h2725bcf_3
+ build: py312h02f2b3b_3
build_number: 3
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/cmarkgfm-0.8.0-py311h2725bcf_3.conda
- sha256: a8036546261cc57f5383f9fcacaedd3c8aed76ca03c05fa5955fcd0a0707ff45
- md5: 3a4ef0858a3fae7e61ae9cdf72adefd1
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/cmarkgfm-0.8.0-py312h02f2b3b_3.conda
+ sha256: 2e95c3797cd2796f32de8408626d63cb1283f2b7b0826021d2e26cc58d9231a0
+ md5: ffedee35be7a5015d09e2660a66b89c9
depends:
- cffi >=1.0.0
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12.0rc3,<3.13.0a0
+ - python >=3.12.0rc3,<3.13.0a0 *_cpython
+ - python_abi 3.12.* *_cp312
license: MIT
license_family: MIT
- size: 113116
- timestamp: 1695670250339
+ size: 113474
+ timestamp: 1695670347968
- kind: conda
name: cmarkgfm
version: 0.8.0
- build: py311h459d7ec_3
+ build: py312h104f124_3
build_number: 3
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/cmarkgfm-0.8.0-py311h459d7ec_3.conda
- sha256: 01316757b817f21ec8c901ecdd1cf60141a80ea5bfddf352846ba85f4c7a3e9d
- md5: 5090d5a3ab2580cabb17a3ae965e257f
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/cmarkgfm-0.8.0-py312h104f124_3.conda
+ sha256: d478a91584a96c5fcb372cde110cb37605b0821b2b8ec6e519d419b4851e9e4e
+ md5: 75b0ed827a414319d0c6fa63b92341b6
depends:
- cffi >=1.0.0
- - libgcc-ng >=12
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12.0rc3,<3.13.0a0
+ - python_abi 3.12.* *_cp312
license: MIT
license_family: MIT
- size: 136524
- timestamp: 1695669889658
+ size: 112756
+ timestamp: 1695670021195
- kind: conda
name: cmarkgfm
version: 0.8.0
- build: py311ha68e1ae_3
+ build: py312h98912ed_3
build_number: 3
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/cmarkgfm-0.8.0-py311ha68e1ae_3.conda
- sha256: 8fe56f677ec4b47043170d2437ce020c204c88a56895c58490e89277af93a2ca
- md5: 489e7c645da48b8c19f8232d70b45ec8
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/cmarkgfm-0.8.0-py312h98912ed_3.conda
+ sha256: 1a9e60b18664c22f872435a1d2b1d727e37ea4159736b116afff364b9577dc02
+ md5: 0c9c09134b2fb151c2bd8181b2c56080
depends:
- cffi >=1.0.0
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
+ - libgcc-ng >=12
+ - python >=3.12.0rc3,<3.13.0a0
+ - python_abi 3.12.* *_cp312
license: MIT
license_family: MIT
- size: 120405
- timestamp: 1695670523318
+ size: 135963
+ timestamp: 1695669875921
- kind: conda
name: cmarkgfm
version: 0.8.0
- build: py312h02f2b3b_3
+ build: py312he70551f_3
build_number: 3
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/cmarkgfm-0.8.0-py312h02f2b3b_3.conda
- sha256: 2e95c3797cd2796f32de8408626d63cb1283f2b7b0826021d2e26cc58d9231a0
- md5: ffedee35be7a5015d09e2660a66b89c9
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/cmarkgfm-0.8.0-py312he70551f_3.conda
+ sha256: 9f5bdfbd843e58bfc727ae5a8b07079c2700d5579f0eef1e8c85aa4fa0ac5fa3
+ md5: c02f42cc7c74c6dcac910f3aec3d3e6b
depends:
- cffi >=1.0.0
- python >=3.12.0rc3,<3.13.0a0
- - python >=3.12.0rc3,<3.13.0a0 *_cpython
- python_abi 3.12.* *_cp312
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
license: MIT
license_family: MIT
- size: 113474
- timestamp: 1695670347968
+ size: 119774
+ timestamp: 1695670282391
- kind: conda
name: colorama
version: 0.4.6
@@ -4633,30 +9828,102 @@ packages:
timestamp: 1666700778190
- kind: conda
name: comm
- version: 0.2.1
+ version: 0.2.2
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/comm-0.2.1-pyhd8ed1ab_0.conda
- sha256: bd90a200e6f7092a89f02c4800729a4a6d2b2de49d70a9706aeb083a635308c1
- md5: f4385072f4909bc974f6675a36e76796
+ url: https://conda.anaconda.org/conda-forge/noarch/comm-0.2.2-pyhd8ed1ab_0.conda
+ sha256: e923acf02708a8a0b591f3bce4bdc11c8e63b73198b99b35fe6cd96bfb6a0dbe
+ md5: 948d84721b578d426294e17a02e24cbb
depends:
- python >=3.6
- traitlets >=5.3
license: BSD-3-Clause
license_family: BSD
- size: 12198
- timestamp: 1704278590206
+ size: 12134
+ timestamp: 1710320435158
- kind: conda
name: contourpy
- version: 1.2.0
+ version: 1.2.1
+ build: py310h21239e6_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/contourpy-1.2.1-py310h21239e6_0.conda
+ sha256: 3b97cb954719a53ea66e0c024eb9a5ed28da61036a2c74b9104eaac425ee95fd
+ md5: db10923835b6b8c082b126c7cbbe50ff
+ depends:
+ - libcxx >=16
+ - numpy >=1.20
+ - python >=3.10,<3.11.0a0
+ - python >=3.10,<3.11.0a0 *_cpython
+ - python_abi 3.10.* *_cp310
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 226024
+ timestamp: 1712430306572
+- kind: conda
+ name: contourpy
+ version: 1.2.1
+ build: py310h232114e_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/contourpy-1.2.1-py310h232114e_0.conda
+ sha256: 9a53e5c28fc4348743beee9e2700a64e2378cdc8a383653da0501f05df677600
+ md5: 69968a52474279f0c44c08c87752096f
+ depends:
+ - numpy >=1.20
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 189962
+ timestamp: 1712430301862
+- kind: conda
+ name: contourpy
+ version: 1.2.1
+ build: py310hb3b189b_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/contourpy-1.2.1-py310hb3b189b_0.conda
+ sha256: 193fbd7c7b95e4692d12140e8c82d1be0c0bfd450edae9a95fd43f607fbb0c80
+ md5: 6601d125e2f6c32c8e853da2651e04fd
+ depends:
+ - libcxx >=16
+ - numpy >=1.20
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 233310
+ timestamp: 1712430195722
+- kind: conda
+ name: contourpy
+ version: 1.2.1
+ build: py310hd41b1e2_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/contourpy-1.2.1-py310hd41b1e2_0.conda
+ sha256: b9283a52ec79bf71325cde80b8845e86bdf9ac80d8b38f95ad47cbaab32447fe
+ md5: 60ee50b1968f802f2a487ba36d4cce0d
+ depends:
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
+ - numpy >=1.20
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 241947
+ timestamp: 1712430089559
+- kind: conda
+ name: contourpy
+ version: 1.2.1
build: py311h005e61a_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/contourpy-1.2.0-py311h005e61a_0.conda
- sha256: d043a1cc9157ee25319fa85271cba38fc4c51caf4d38354176659d95629d04ab
- md5: 6e36537c6d0c16d2ee8ba8c3dd847662
+ url: https://conda.anaconda.org/conda-forge/win-64/contourpy-1.2.1-py311h005e61a_0.conda
+ sha256: f9c392ae4c746ac32c55b20d8c487cbc06a91d5dd650261089d90fb55cfcb8c2
+ md5: 050075a7a22e39222595b9191bc082e3
depends:
- - numpy >=1.20,<2
+ - numpy >=1.20
- python >=3.11,<3.12.0a0
- python_abi 3.11.* *_cp311
- ucrt >=10.0.20348.0
@@ -4664,72 +9931,212 @@ packages:
- vc14_runtime >=14.29.30139
license: BSD-3-Clause
license_family: BSD
- size: 206078
- timestamp: 1699042419820
+ size: 206670
+ timestamp: 1712430308615
- kind: conda
name: contourpy
- version: 1.2.0
- build: py311h7bea37d_0
+ version: 1.2.1
+ build: py311h1d816ee_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/contourpy-1.2.0-py311h7bea37d_0.conda
- sha256: 40bca4a644e0c0b0e6d58cef849ba02d4f218af715f7a5787d41845797f3b8a9
- md5: 6711c052d956af4973a16749236a0387
+ url: https://conda.anaconda.org/conda-forge/osx-64/contourpy-1.2.1-py311h1d816ee_0.conda
+ sha256: b33d5801564943bbbbe939a9ec4d460b2e0ced624089bdfe0bfa2a5e5d8fa1f3
+ md5: 4f7502f4d2cddbea5feba4e82d99c6c4
depends:
- - __osx >=10.9
- - libcxx >=16.0.6
- - numpy >=1.20,<2
+ - libcxx >=16
+ - numpy >=1.20
- python >=3.11,<3.12.0a0
- python_abi 3.11.* *_cp311
license: BSD-3-Clause
license_family: BSD
- size: 248078
- timestamp: 1699042040747
+ size: 249875
+ timestamp: 1712430222440
- kind: conda
name: contourpy
- version: 1.2.0
+ version: 1.2.1
build: py311h9547e67_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/contourpy-1.2.0-py311h9547e67_0.conda
- sha256: 2c76e2a970b74eef92ef9460aa705dbdc506dd59b7382bfbedce39d9c189d7f4
- md5: 40828c5b36ef52433e21f89943e09f33
+ url: https://conda.anaconda.org/conda-forge/linux-64/contourpy-1.2.1-py311h9547e67_0.conda
+ sha256: 82cec326aa81b9b6b40d9f4dab5045f0553092405efd0de9d2daf71179f20607
+ md5: 74ad0ae64f1ef565e27eda87fa749e84
depends:
- libgcc-ng >=12
- libstdcxx-ng >=12
- - numpy >=1.20,<2
+ - numpy >=1.20
- python >=3.11,<3.12.0a0
- python_abi 3.11.* *_cp311
license: BSD-3-Clause
license_family: BSD
- size: 255843
- timestamp: 1699041590533
+ size: 258932
+ timestamp: 1712430087609
- kind: conda
name: contourpy
- version: 1.2.0
- build: py312h76e736e_0
+ version: 1.2.1
+ build: py311hcc98501_0
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/contourpy-1.2.0-py312h76e736e_0.conda
- sha256: 9651380de808917b67ca6d93d1ffa9db5ef0889c6e0ed87379ef0696517b47e3
- md5: 1dadb551925202b61d137da997f99e08
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/contourpy-1.2.1-py311hcc98501_0.conda
+ sha256: 9045fa8a05a102d4cd484fec327511386db759b4241bbacd2c5ac34a238f9379
+ md5: 3f5b59b9e9b329527f1af3ee98b3d750
depends:
- - __osx >=10.9
- - libcxx >=16.0.6
- - numpy >=1.20,<2
+ - libcxx >=16
+ - numpy >=1.20
+ - python >=3.11,<3.12.0a0
+ - python >=3.11,<3.12.0a0 *_cpython
+ - python_abi 3.11.* *_cp311
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 242204
+ timestamp: 1712430316704
+- kind: conda
+ name: contourpy
+ version: 1.2.1
+ build: py312h0d7def4_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/contourpy-1.2.1-py312h0d7def4_0.conda
+ sha256: 3af3de9a099d9ab88d24d0956c3acb838a774b64e52afa25abeed7b31c1174ef
+ md5: bc0160f16ae02e18de578eaddadd4f61
+ depends:
+ - numpy >=1.20
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 206433
+ timestamp: 1712430299728
+- kind: conda
+ name: contourpy
+ version: 1.2.1
+ build: py312h0fef576_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/contourpy-1.2.1-py312h0fef576_0.conda
+ sha256: 89bb5c2f1f5daed13240d5fccfc51cd63b92293cee690c8b0a8f633971e588bb
+ md5: f825cced50aa6ae9f6ae158a49ecb68c
+ depends:
+ - libcxx >=16
+ - numpy >=1.20
- python >=3.12,<3.13.0a0
- python >=3.12,<3.13.0a0 *_cpython
- python_abi 3.12.* *_cp312
license: BSD-3-Clause
license_family: BSD
- size: 237646
- timestamp: 1699041880921
+ size: 239915
+ timestamp: 1712430307181
+- kind: conda
+ name: contourpy
+ version: 1.2.1
+ build: py312h8572e83_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/contourpy-1.2.1-py312h8572e83_0.conda
+ sha256: b0731336b9788c247b11a592352f700a647119340b549aba9e933835c7c77df0
+ md5: 12c6a831ef734f0b2dd4caff514cbb7f
+ depends:
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
+ - numpy >=1.20
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 256764
+ timestamp: 1712430146809
+- kind: conda
+ name: contourpy
+ version: 1.2.1
+ build: py312h9230928_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/contourpy-1.2.1-py312h9230928_0.conda
+ sha256: 3879ed298cc9ec5486d13b7d65da960c813925837fe67fc385c9b31f7eefddc0
+ md5: 079df34ce7c71259cfdd394645370891
+ depends:
+ - libcxx >=16
+ - numpy >=1.20
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 248928
+ timestamp: 1712430234380
- kind: conda
name: coverage
- version: 7.4.3
- build: py311h459d7ec_1
- build_number: 1
+ version: 7.5.0
+ build: py310h74a5a53_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/coverage-7.5.0-py310h74a5a53_0.conda
+ sha256: 21809604ee17e6f4987e4692d461905a645aca1606f0db3d6806d907d842f77e
+ md5: 95f7866059c6f718effd7939d583d6d0
+ depends:
+ - __osx >=10.9
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - tomli
+ license: Apache-2.0
+ license_family: APACHE
+ size: 293861
+ timestamp: 1713908291942
+- kind: conda
+ name: coverage
+ version: 7.5.0
+ build: py310h8431ef1_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/coverage-7.5.0-py310h8431ef1_0.conda
+ sha256: d6a28f94a02e25d608cf78f8af154767eb55612b6bfce5d3494003ca8503ec1c
+ md5: 786d0b18a15c116c01f3c530d6c7e0d2
+ depends:
+ - __osx >=11.0
+ - python >=3.10,<3.11.0a0
+ - python >=3.10,<3.11.0a0 *_cpython
+ - python_abi 3.10.* *_cp310
+ - tomli
+ license: Apache-2.0
+ license_family: APACHE
+ size: 293836
+ timestamp: 1713908497071
+- kind: conda
+ name: coverage
+ version: 7.5.0
+ build: py310ha8f682b_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/coverage-7.5.0-py310ha8f682b_0.conda
+ sha256: 67ca0a658cb4714c197dd8acff394eb49d307d368b8a0339ca359197141f1fe5
+ md5: 02ca9058b92ec2c17bf9f392d2548c35
+ depends:
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - tomli
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: Apache-2.0
+ license_family: APACHE
+ size: 311424
+ timestamp: 1713908762259
+- kind: conda
+ name: coverage
+ version: 7.5.0
+ build: py310hc51659f_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/coverage-7.5.0-py310hc51659f_0.conda
+ sha256: b7f29f2cef34873a7f345a989c8203507b4f177fe54a864c5f8c82d29bf10373
+ md5: 3609fdb03842f67e2ec68a9c137221b8
+ depends:
+ - libgcc-ng >=12
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - tomli
+ license: Apache-2.0
+ license_family: APACHE
+ size: 293491
+ timestamp: 1713908143438
+- kind: conda
+ name: coverage
+ version: 7.5.0
+ build: py311h331c9d8_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/coverage-7.4.3-py311h459d7ec_1.conda
- sha256: a33ed5433592aa7a1837fa06d6918063787fa6a38f855807cc015bd0421109ec
- md5: 4fb7f674bf6839da62317a7c6e725c55
+ url: https://conda.anaconda.org/conda-forge/linux-64/coverage-7.5.0-py311h331c9d8_0.conda
+ sha256: 02ba7e37bcc6e16c4fdf8034699cd75213de0c739b60c7bf0db5065333de8da5
+ md5: 5420e3594638adf670fca1a601d7efb9
depends:
- libgcc-ng >=12
- python >=3.11,<3.12.0a0
@@ -4737,17 +10144,51 @@ packages:
- tomli
license: Apache-2.0
license_family: APACHE
- size: 366468
- timestamp: 1708800548405
+ size: 372796
+ timestamp: 1713908205733
- kind: conda
name: coverage
- version: 7.4.3
- build: py311ha68e1ae_1
- build_number: 1
+ version: 7.5.0
+ build: py311h39126ff_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/coverage-7.5.0-py311h39126ff_0.conda
+ sha256: e32838707faf3ccd5ef1f93daa9d17430c023297736dc2ed3bd21192ea22c0d0
+ md5: 018feb041b8bd5b66e593f7a7707f125
+ depends:
+ - __osx >=10.9
+ - python >=3.11,<3.12.0a0
+ - python_abi 3.11.* *_cp311
+ - tomli
+ license: Apache-2.0
+ license_family: APACHE
+ size: 371033
+ timestamp: 1713908302539
+- kind: conda
+ name: coverage
+ version: 7.5.0
+ build: py311hd23d018_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/coverage-7.5.0-py311hd23d018_0.conda
+ sha256: 0a03898a56d0d2fcf6b8f675bdc35abf321d7a3547d97b58d77ad0a3323021db
+ md5: 3700ae39a99a9c931baad25664a31cc6
+ depends:
+ - __osx >=11.0
+ - python >=3.11,<3.12.0a0
+ - python >=3.11,<3.12.0a0 *_cpython
+ - python_abi 3.11.* *_cp311
+ - tomli
+ license: Apache-2.0
+ license_family: APACHE
+ size: 373580
+ timestamp: 1713908428433
+- kind: conda
+ name: coverage
+ version: 7.5.0
+ build: py311he736701_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/coverage-7.4.3-py311ha68e1ae_1.conda
- sha256: 88c957c7e0b50d69e3748cfdf63723dba44a780ef8e9dc6aa4422a64e2abdd71
- md5: 042a25d85721c4cb9ca5ef378007f39e
+ url: https://conda.anaconda.org/conda-forge/win-64/coverage-7.5.0-py311he736701_0.conda
+ sha256: 9f04600fad4b9897f6b790578750ebf65994efa1ae4848a0d50fda4e0696303b
+ md5: 5c8aaa9a242865809ea48e9dea0c2e8f
depends:
- python >=3.11,<3.12.0a0
- python_abi 3.11.* *_cp311
@@ -4757,130 +10198,166 @@ packages:
- vc14_runtime >=14.29.30139
license: Apache-2.0
license_family: APACHE
- size: 383261
- timestamp: 1708801001048
+ size: 389461
+ timestamp: 1713908691830
- kind: conda
name: coverage
- version: 7.4.3
- build: py311he705e18_1
- build_number: 1
+ version: 7.5.0
+ build: py312h4389bb4_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/coverage-7.5.0-py312h4389bb4_0.conda
+ sha256: 3cce9d3ecbfed8af08dd055fb766d567a02b1c184f8a1dac8ff16f32bd387ad2
+ md5: 2a54fb0df8668f9dfe0bef3e5e1da5c2
+ depends:
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - tomli
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: Apache-2.0
+ license_family: APACHE
+ size: 380966
+ timestamp: 1713908870798
+- kind: conda
+ name: coverage
+ version: 7.5.0
+ build: py312h4a164c9_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/coverage-7.5.0-py312h4a164c9_0.conda
+ sha256: 63b79f7cd3ec0c4a07275311cd055c5f2919b97d5fe1556f47f5b493af9fb391
+ md5: f2c3d8ee99ae610188154fde66ce8aa4
+ depends:
+ - __osx >=11.0
+ - python >=3.12,<3.13.0a0
+ - python >=3.12,<3.13.0a0 *_cpython
+ - python_abi 3.12.* *_cp312
+ - tomli
+ license: Apache-2.0
+ license_family: APACHE
+ size: 362399
+ timestamp: 1713908355106
+- kind: conda
+ name: coverage
+ version: 7.5.0
+ build: py312h5fa3f64_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/coverage-7.4.3-py311he705e18_1.conda
- sha256: ded663203aee744f086cbc6b29dd5e4d431cb21cc6e801a170ca4f710daafdfe
- md5: 138e7d79676851df5f56200eb1b78e20
+ url: https://conda.anaconda.org/conda-forge/osx-64/coverage-7.5.0-py312h5fa3f64_0.conda
+ sha256: 7b663f3cf38fa82b2c3b9f4653b4425ace74de6e8986de1b30cbbd9a40aa0684
+ md5: 0ec479f31895645cfaabaa7ea318e6a5
depends:
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - __osx >=10.9
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
- tomli
license: Apache-2.0
license_family: APACHE
- size: 365070
- timestamp: 1708800760810
+ size: 362224
+ timestamp: 1713908313894
- kind: conda
name: coverage
- version: 7.4.3
- build: py312he37b823_1
- build_number: 1
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/coverage-7.4.3-py312he37b823_1.conda
- sha256: 9d3e5d0bbfdbbe551068b7deba8597c510f7f5795f7a98f27f1d1eae5b02059e
- md5: f49eae26b43e002443bf1e2520d64064
+ version: 7.5.0
+ build: py312h9a8786e_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/coverage-7.5.0-py312h9a8786e_0.conda
+ sha256: 95391da7d654536563f9851a89a75e760c9bb844fbd162c8dda243721e842bfd
+ md5: 25044745b530207291239ad6f914c1d8
depends:
+ - libgcc-ng >=12
- python >=3.12,<3.13.0a0
- - python >=3.12,<3.13.0a0 *_cpython
- python_abi 3.12.* *_cp312
- tomli
license: Apache-2.0
license_family: APACHE
- size: 357060
- timestamp: 1708800802801
+ size: 362502
+ timestamp: 1713908152975
- kind: conda
name: cryptography
version: 42.0.5
- build: py311h63ff55d_0
+ build: py312h241aef2_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/cryptography-42.0.5-py311h63ff55d_0.conda
- sha256: d3531a63f2bf9e234a8ebbbcef3dffc0721c8320166e3b86c05e05aef8c02480
- md5: 76909c8c7b915f0af4f35e80da5f9a87
+ url: https://conda.anaconda.org/conda-forge/linux-64/cryptography-42.0.5-py312h241aef2_0.conda
+ sha256: 5dc135fc6ea57bf94cf32313f91c93f8a4af15133879dd86e6c8c16e4e07c55e
+ md5: 0d8c0e4e8c1b2796eaf6770a76a9d1e4
depends:
- cffi >=1.12
- libgcc-ng >=12
- openssl >=3.2.1,<4.0a0
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
license: Apache-2.0 AND BSD-3-Clause AND PSF-2.0 AND MIT
license_family: BSD
- size: 1992171
- timestamp: 1708780569743
+ size: 1976047
+ timestamp: 1708780611460
- kind: conda
name: curl
- version: 8.5.0
+ version: 8.7.1
build: h2d989ff_0
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/curl-8.5.0-h2d989ff_0.conda
- sha256: b74a05b0e0f606e8fe6def4bec62cdcc9ae4c08152e0b298252ae033019432d5
- md5: e69501791fc0552a668adf28344bb2b1
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/curl-8.7.1-h2d989ff_0.conda
+ sha256: 7b780958e4c42811f926e6182484ea20b5ecb37e7722dad1a229d2e102607e8c
+ md5: 480f81b812f8ba1f3ce1a47ec08c0072
depends:
- krb5 >=1.21.2,<1.22.0a0
- - libcurl 8.5.0 h2d989ff_0
+ - libcurl 8.7.1 h2d989ff_0
- libssh2 >=1.11.0,<2.0a0
- libzlib >=1.2.13,<1.3.0a0
- - openssl >=3.2.0,<4.0a0
+ - openssl >=3.2.1,<4.0a0
- zstd >=1.5.5,<1.6.0a0
license: curl
license_family: MIT
- size: 151752
- timestamp: 1701860569859
+ size: 150581
+ timestamp: 1711548609202
- kind: conda
name: curl
- version: 8.5.0
+ version: 8.7.1
build: h726d00d_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/curl-8.5.0-h726d00d_0.conda
- sha256: f9e59c964945f5526cec0beb98e9983cee40da2a1e189f174af3da25a7c38c09
- md5: a4440b9488f87d4da98c1a4cb121931a
+ url: https://conda.anaconda.org/conda-forge/osx-64/curl-8.7.1-h726d00d_0.conda
+ sha256: 986b88c3ad56a0a3c077b15592cad3cbaa6172a5d15b46bb1d98332b9a2ff8cd
+ md5: 9f9e314ade5b7faa580208e1331074d8
depends:
- krb5 >=1.21.2,<1.22.0a0
- - libcurl 8.5.0 h726d00d_0
+ - libcurl 8.7.1 h726d00d_0
- libssh2 >=1.11.0,<2.0a0
- libzlib >=1.2.13,<1.3.0a0
- - openssl >=3.2.0,<4.0a0
+ - openssl >=3.2.1,<4.0a0
- zstd >=1.5.5,<1.6.0a0
license: curl
license_family: MIT
- size: 153998
- timestamp: 1701860657583
+ size: 153094
+ timestamp: 1711548452364
- kind: conda
name: curl
- version: 8.5.0
+ version: 8.7.1
build: hca28451_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/curl-8.5.0-hca28451_0.conda
- sha256: febf098d6ca901b589d02c58eedcf5cb77d8fa4bfe35a52109f5909980b426db
- md5: e5e83fb15e752dbc8f54c4ac7da7d0f1
+ url: https://conda.anaconda.org/conda-forge/linux-64/curl-8.7.1-hca28451_0.conda
+ sha256: 30935854620a6d48a3b5f1b940aefb19aeb37cef02bf58cd38288bbf620fc74d
+ md5: d2dd5466be2ce818f8097847341da63d
depends:
- krb5 >=1.21.2,<1.22.0a0
- - libcurl 8.5.0 hca28451_0
+ - libcurl 8.7.1 hca28451_0
- libgcc-ng >=12
- libssh2 >=1.11.0,<2.0a0
- libzlib >=1.2.13,<1.3.0a0
- - openssl >=3.2.0,<4.0a0
+ - openssl >=3.2.1,<4.0a0
- zstd >=1.5.5,<1.6.0a0
license: curl
license_family: MIT
- size: 94895
- timestamp: 1701860161671
+ size: 164864
+ timestamp: 1711548139831
- kind: conda
name: curl
- version: 8.5.0
+ version: 8.7.1
build: hd5e4a3a_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/curl-8.5.0-hd5e4a3a_0.conda
- sha256: d5fcd8fa6819862eea0204fa219a20f5a6001126661ebe5505829ae30cd198cb
- md5: 2d199c87ccbb43925d0948c40148a200
+ url: https://conda.anaconda.org/conda-forge/win-64/curl-8.7.1-hd5e4a3a_0.conda
+ sha256: 9cee216c02039eae1aa7c7e3f6c236b8f5817722e7a440d4b8722663383b8763
+ md5: edb3bd8b6b14b0d7f383ee88fbbeb0ec
depends:
- krb5 >=1.21.2,<1.22.0a0
- - libcurl 8.5.0 hd5e4a3a_0
+ - libcurl 8.7.1 hd5e4a3a_0
- libssh2 >=1.11.0,<2.0a0
- libzlib >=1.2.13,<1.3.0a0
- ucrt >=10.0.20348.0
@@ -4888,8 +10365,8 @@ packages:
- vc14_runtime >=14.29.30139
license: curl
license_family: MIT
- size: 149447
- timestamp: 1701860692360
+ size: 153952
+ timestamp: 1711548640632
- kind: conda
name: cycler
version: 0.12.1
@@ -4905,6 +10382,92 @@ packages:
license_family: BSD
size: 13458
timestamp: 1696677888423
+- kind: conda
+ name: cytoolz
+ version: 0.12.3
+ build: py310h2372a71_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/cytoolz-0.12.3-py310h2372a71_0.conda
+ sha256: a75c195a71b8a1676f057a785515d1f78515d4f59389d5ac6d3cd9a08880566a
+ md5: 21362970a6fea90ca507c253c20465f2
+ depends:
+ - libgcc-ng >=12
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - toolz >=0.10.0
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 368467
+ timestamp: 1706897294269
+- kind: conda
+ name: cytoolz
+ version: 0.12.3
+ build: py310h8d17308_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/cytoolz-0.12.3-py310h8d17308_0.conda
+ sha256: 0e994dcb9da1c419fe9a974234e60b507a375e06bc39b03895e8eac46c0128ee
+ md5: 6051dfb72d955bc0355c2a38a5d85493
+ depends:
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - toolz >=0.10.0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 295577
+ timestamp: 1706897660502
+- kind: conda
+ name: cytoolz
+ version: 0.12.3
+ build: py310hb372a2b_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/cytoolz-0.12.3-py310hb372a2b_0.conda
+ sha256: 332b79f09e56754b95accb02fca694bc18e14bb3d44eafc89dab7c132bdd6007
+ md5: f257633897bf6f962e49f07820656421
+ depends:
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - toolz >=0.10.0
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 316676
+ timestamp: 1706897332355
+- kind: conda
+ name: cytoolz
+ version: 0.12.3
+ build: py310hd125d64_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/cytoolz-0.12.3-py310hd125d64_0.conda
+ sha256: 82841782ce65086bbc90e5736c0b494f6aaa7d4424490517ff7ba483fcd40aab
+ md5: a2d459b5f4df33378ff8089e31a9460a
+ depends:
+ - python >=3.10,<3.11.0a0
+ - python >=3.10,<3.11.0a0 *_cpython
+ - python_abi 3.10.* *_cp310
+ - toolz >=0.10.0
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 315555
+ timestamp: 1706897593187
+- kind: conda
+ name: cytoolz
+ version: 0.12.3
+ build: py311h05b510d_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/cytoolz-0.12.3-py311h05b510d_0.conda
+ sha256: 260980644b0ed686518437f9e86346b0798d7cab6a368a7ab61f085526ae5920
+ md5: d880c8585f9f1dc7057efd5bf7a212e2
+ depends:
+ - python >=3.11,<3.12.0a0
+ - python >=3.11,<3.12.0a0 *_cpython
+ - python_abi 3.11.* *_cp311
+ - toolz >=0.10.0
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 342071
+ timestamp: 1706897488336
- kind: conda
name: cytoolz
version: 0.12.3
@@ -4957,6 +10520,39 @@ packages:
license_family: BSD
size: 343617
timestamp: 1706897348938
+- kind: conda
+ name: cytoolz
+ version: 0.12.3
+ build: py312h41838bb_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/cytoolz-0.12.3-py312h41838bb_0.conda
+ sha256: 79df086b364cb7b80c367d6b19fc2fad7879e89d811bb7e9c25ddf02e94d7959
+ md5: b8e837f24cd0f2a2478ecf2299ce55a8
+ depends:
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - toolz >=0.10.0
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 342008
+ timestamp: 1706897335369
+- kind: conda
+ name: cytoolz
+ version: 0.12.3
+ build: py312h98912ed_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/cytoolz-0.12.3-py312h98912ed_0.conda
+ sha256: 8fae95ac24fb9dc05ee0284c929869cb97467319460bafac52956c79b1fee3f0
+ md5: a4fbffb84a54767266c69e3699078a00
+ depends:
+ - libgcc-ng >=12
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - toolz >=0.10.0
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 393874
+ timestamp: 1706897203319
- kind: conda
name: cytoolz
version: 0.12.3
@@ -4974,6 +10570,25 @@ packages:
license_family: BSD
size: 337770
timestamp: 1706897589738
+- kind: conda
+ name: cytoolz
+ version: 0.12.3
+ build: py312he70551f_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/cytoolz-0.12.3-py312he70551f_0.conda
+ sha256: 9b3a63be81910d653e2ef7ceba12f22c92e22ca2fd5cb37e72aa1bef8e6d8fc3
+ md5: bf01d5b4e152592d0483cc10df040ad8
+ depends:
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - toolz >=0.10.0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 315464
+ timestamp: 1706897770551
- kind: conda
name: dart-sass
version: 1.58.3
@@ -5028,18 +10643,19 @@ packages:
timestamp: 1683598631146
- kind: conda
name: dask
- version: 2024.2.1
+ version: 2024.4.2
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/dask-2024.2.1-pyhd8ed1ab_0.conda
- sha256: 845da835849b6c3ddacebce3d02607dbb9fbc01520ab49bb127247e56e023ea4
- md5: 598ebedff52b1a548bb5f0de0e50802c
+ url: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.2-pyhd8ed1ab_0.conda
+ sha256: 7c12de297cef16920dd96ec0796578b071086dfbe6d7befb1a9c6ceaaf4c572a
+ md5: a0e5045f4fae04acbe70f4c821d65302
depends:
- bokeh >=2.4.2,!=3.0.*
- cytoolz >=0.11.0
- - dask-core >=2024.2.1,<2024.2.2.0a0
- - distributed >=2024.2.1,<2024.2.2.0a0
+ - dask-core >=2024.4.2,<2024.4.3.0a0
+ - dask-expr >=1.0,<1.1
+ - distributed >=2024.4.2,<2024.4.3.0a0
- jinja2 >=2.10.3
- lz4 >=4.3.2
- numpy >=1.21
@@ -5051,17 +10667,17 @@ packages:
- openssl !=1.1.1e
license: BSD-3-Clause
license_family: BSD
- size: 7374
- timestamp: 1708970259191
+ size: 7540
+ timestamp: 1713583754159
- kind: conda
name: dask-core
- version: 2024.2.1
+ version: 2024.4.2
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.2.1-pyhd8ed1ab_0.conda
- sha256: d394f19d6c7a04848861922416067c1c95c97739d802fb8d92e75f4baacdcb76
- md5: 72ac49d50b7af2159a8f4128bc1f856d
+ url: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.2-pyhd8ed1ab_0.conda
+ sha256: 5911f7de216d57941d1eeb77d6bfa224bd3d7370957807381be1c5c437ac07f0
+ md5: bb4e6c52855aa64a5443ca4eedaa6cfe
depends:
- click >=8.1
- cloudpickle >=1.5.0
@@ -5074,8 +10690,42 @@ packages:
- toolz >=0.10.0
license: BSD-3-Clause
license_family: BSD
- size: 880027
- timestamp: 1708965278889
+ size: 881318
+ timestamp: 1713561560483
+- kind: conda
+ name: dask-expr
+ version: 1.0.14
+ build: pyhd8ed1ab_0
+ subdir: noarch
+ noarch: python
+ url: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.14-pyhd8ed1ab_0.conda
+ sha256: 0b7abbbe74a50aad22ec56aca0c2ceac2b4f2efe3d134067f6a5680c3d8c29e9
+ md5: ffb3f91ee46d83150cfff265635a668b
+ depends:
+ - dask-core 2024.4.2
+ - pandas >=2
+ - pyarrow
+ - python >=3.9
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 151427
+ timestamp: 1714488284207
+- kind: conda
+ name: dataclasses
+ version: '0.8'
+ build: pyhc8e2a94_3
+ build_number: 3
+ subdir: noarch
+ noarch: python
+ url: https://conda.anaconda.org/conda-forge/noarch/dataclasses-0.8-pyhc8e2a94_3.tar.bz2
+ sha256: 63a83e62e0939bc1ab32de4ec736f6403084198c4639638b354a352113809c92
+ md5: a362b2124b06aad102e2ee4581acee7d
+ depends:
+ - python >=3.7
+ license: Apache-2.0
+ license_family: APACHE
+ size: 9870
+ timestamp: 1628958582931
- kind: conda
name: dbus
version: 1.13.6
@@ -5096,71 +10746,71 @@ packages:
- kind: conda
name: debugpy
version: 1.8.1
- build: py311h12c1d0e_0
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/debugpy-1.8.1-py311h12c1d0e_0.conda
- sha256: 22f390668ab9edc90132dba7a20e58949c12eb5d6f9cc6c0d3766bebdc0ec009
- md5: 61fae6d8dae07c4384ea7672913be528
+ build: py312h20a0b95_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/debugpy-1.8.1-py312h20a0b95_0.conda
+ sha256: d8ae528ddf391511387bb4c67d7dd4ad3cb808ee9b093429379803cf58a13807
+ md5: d850abbd9eeedbe2e734e397038f3f76
depends:
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
+ - libcxx >=16
+ - python >=3.12,<3.13.0a0
+ - python >=3.12,<3.13.0a0 *_cpython
+ - python_abi 3.12.* *_cp312
license: MIT
license_family: MIT
- size: 3243396
- timestamp: 1707445208626
+ size: 2077038
+ timestamp: 1707445014387
- kind: conda
name: debugpy
version: 1.8.1
- build: py311hb755f60_0
+ build: py312h30efb56_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/debugpy-1.8.1-py311hb755f60_0.conda
- sha256: e69fe7d453389d54fa68fb6fb75ac85f882b2ab4bc745b02c7ff8cd83aee2a5b
- md5: 17b98238cbbfbebacd46b79b7fc629a9
+ url: https://conda.anaconda.org/conda-forge/linux-64/debugpy-1.8.1-py312h30efb56_0.conda
+ sha256: 8a8bd15c7a8435991649ab334816d4d64970c5b0d016f59806bc45f54f31a924
+ md5: bdd639417094ace2fb1ce10b20d68d5d
depends:
- libgcc-ng >=12
- libstdcxx-ng >=12
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
license: MIT
license_family: MIT
- size: 2302395
- timestamp: 1707444677899
+ size: 2079306
+ timestamp: 1707444570818
- kind: conda
name: debugpy
version: 1.8.1
- build: py311hdd0406b_0
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/debugpy-1.8.1-py311hdd0406b_0.conda
- sha256: 0df1ca336d468accadb2a1d617aac7c5a5c4c7d63d0d847ab237772f8ff1e93b
- md5: 19779dab342c45f8acb28caa00b07637
+ build: py312h53d5487_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/debugpy-1.8.1-py312h53d5487_0.conda
+ sha256: 5e8beecf42088481c88aa97118c52b2142f0e0d48ffed877e973c309c7fc83af
+ md5: 4094ccb019f079de8b0f61a5f366d294
depends:
- - libcxx >=16
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
license: MIT
license_family: MIT
- size: 2241280
- timestamp: 1707444917914
+ size: 3105043
+ timestamp: 1707445249662
- kind: conda
name: debugpy
version: 1.8.1
- build: py312h20a0b95_0
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/debugpy-1.8.1-py312h20a0b95_0.conda
- sha256: d8ae528ddf391511387bb4c67d7dd4ad3cb808ee9b093429379803cf58a13807
- md5: d850abbd9eeedbe2e734e397038f3f76
+ build: py312hede676d_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/debugpy-1.8.1-py312hede676d_0.conda
+ sha256: f957393cb09e3df00176079253e0f845ab8c87dbca3c38e1a14df21ffe9d7083
+ md5: e0de4e018d6013b6c2e2ae42640fb65c
depends:
- libcxx >=16
- python >=3.12,<3.13.0a0
- - python >=3.12,<3.13.0a0 *_cpython
- python_abi 3.12.* *_cp312
license: MIT
license_family: MIT
- size: 2077038
- timestamp: 1707445014387
+ size: 2065572
+ timestamp: 1707444822563
- kind: conda
name: decorator
version: 5.1.1
@@ -5328,18 +10978,18 @@ packages:
timestamp: 1702383349284
- kind: conda
name: distributed
- version: 2024.2.1
+ version: 2024.4.2
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.2.1-pyhd8ed1ab_0.conda
- sha256: ca553ff835fabcafe3a2d5edda373a2aaab3f3a70011868a46220290501e5f69
- md5: 2d4fb4e7199019512298f728b9f6a8b0
+ url: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.2-pyhd8ed1ab_0.conda
+ sha256: 418df5d885310bb111637054baafe013b75e52cdc5116f844fc0d2aed4784bf5
+ md5: e4e11467ccf467cbe34cbe84dedbca77
depends:
- click >=8.0
- cloudpickle >=1.5.0
- cytoolz >=0.10.1
- - dask-core >=2024.2.1,<2024.2.2.0a0
+ - dask-core >=2024.4.2,<2024.4.3.0a0
- jinja2 >=2.10.3
- locket >=1.0.0
- msgpack-python >=1.0.0
@@ -5357,69 +11007,22 @@ packages:
- openssl !=1.1.1e
license: BSD-3-Clause
license_family: BSD
- size: 794373
- timestamp: 1708967207767
-- kind: conda
- name: docutils
- version: 0.20.1
- build: py311h1ea47a8_3
- build_number: 3
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/docutils-0.20.1-py311h1ea47a8_3.conda
- sha256: fcce275ca03558a4feab18964ee1368f529fe095304a3a99b22e34459a4c0090
- md5: 53e577542ed0df5a3af146e4a746dbd9
- depends:
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
- license: CC-PDDC AND BSD-3-Clause AND BSD-2-Clause AND ZPL-2.1
- size: 973107
- timestamp: 1701883312560
-- kind: conda
- name: docutils
- version: 0.20.1
- build: py311h38be061_3
- build_number: 3
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/docutils-0.20.1-py311h38be061_3.conda
- sha256: 0011a2193a5995a6706936156ea5d1021153ec11eb8869b6abfe15a8f6f22ea8
- md5: 1c33f55e5cdcc2a2b973c432b5225bfe
- depends:
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
- license: CC-PDDC AND BSD-3-Clause AND BSD-2-Clause AND ZPL-2.1
- size: 918352
- timestamp: 1701882791483
-- kind: conda
- name: docutils
- version: 0.20.1
- build: py311h6eed73b_3
- build_number: 3
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/docutils-0.20.1-py311h6eed73b_3.conda
- sha256: 0fae62e203900a8a013ba2ede852645b87b1568980ddd8e11390c11dc24c3e3c
- md5: 2919376c4957faadc7b96f8894759bfb
- depends:
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
- license: CC-PDDC AND BSD-3-Clause AND BSD-2-Clause AND ZPL-2.1
- size: 919457
- timestamp: 1701883162608
+ size: 795222
+ timestamp: 1713569203054
- kind: conda
name: docutils
- version: 0.20.1
- build: py312h81bd7bf_3
- build_number: 3
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/docutils-0.20.1-py312h81bd7bf_3.conda
- sha256: e1ad41c6401ab2ada143d6e1dbbe6ae8afbe3e651211bb414b9ae1f0f8c13249
- md5: 50ea9a1ab48349f343ca2ae82833bda4
+ version: 0.21.2
+ build: pyhd8ed1ab_0
+ subdir: noarch
+ noarch: python
+ url: https://conda.anaconda.org/conda-forge/noarch/docutils-0.21.2-pyhd8ed1ab_0.conda
+ sha256: 362bfe3afaac18298c48c0c6a935641544077ce5105a42a2d8ebe750ad07c574
+ md5: e8cd5d629f65bdf0f3bb312cde14659e
depends:
- - python >=3.12,<3.13.0a0
- - python >=3.12,<3.13.0a0 *_cpython
- - python_abi 3.12.* *_cp312
+ - python >=3.9
license: CC-PDDC AND BSD-3-Clause AND BSD-2-Clause AND ZPL-2.1
- size: 901757
- timestamp: 1701883118423
+ size: 403226
+ timestamp: 1713930478970
- kind: conda
name: draco
version: 1.5.7
@@ -5635,19 +11238,19 @@ packages:
timestamp: 1704921321122
- kind: conda
name: execnet
- version: 2.0.2
+ version: 2.1.1
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/execnet-2.0.2-pyhd8ed1ab_0.conda
- sha256: 88ea68a360198af39368beecf057af6b31f0ae38071b2bdb2aa961b6ae5427c0
- md5: 67de0d8241e1060a479e3c37793e26f9
+ url: https://conda.anaconda.org/conda-forge/noarch/execnet-2.1.1-pyhd8ed1ab_0.conda
+ sha256: 564bc012d73ca29964e7acca18d60b2fa8d20eea6d258d98cfc24df5167beaf0
+ md5: 15dda3cdbf330abfe9f555d22f66db46
depends:
- - python >=3.7
+ - python >=3.8
license: MIT
license_family: MIT
- size: 36534
- timestamp: 1688933537234
+ size: 38883
+ timestamp: 1712591929944
- kind: conda
name: executing
version: 2.0.1
@@ -5751,99 +11354,229 @@ packages:
timestamp: 1708087194735
- kind: conda
name: expat
- version: 2.5.0
- build: h63175ca_1
- build_number: 1
+ version: 2.6.2
+ build: h59595ed_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/expat-2.6.2-h59595ed_0.conda
+ sha256: 89916c536ae5b85bb8bf0cfa27d751e274ea0911f04e4a928744735c14ef5155
+ md5: 53fb86322bdb89496d7579fe3f02fd61
+ depends:
+ - libexpat 2.6.2 h59595ed_0
+ - libgcc-ng >=12
+ license: MIT
+ license_family: MIT
+ size: 137627
+ timestamp: 1710362144873
+- kind: conda
+ name: expat
+ version: 2.6.2
+ build: h63175ca_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/expat-2.5.0-h63175ca_1.conda
- sha256: 3bcd88290cd462d5573c2923c796599d0dece2ff9d9c9d6c914d31e9c5881aaf
- md5: 87c77fe1b445aedb5c6d207dd236fa3e
+ url: https://conda.anaconda.org/conda-forge/win-64/expat-2.6.2-h63175ca_0.conda
+ sha256: f5a13d4bc591a4dc210954f492dd59a0ecf9b9d2ab28bf2ece755ca8f69ec1b4
+ md5: 52f9dec6758ceb8ce0ea8af9fa13eb1a
depends:
- - libexpat 2.5.0 h63175ca_1
+ - libexpat 2.6.2 h63175ca_0
license: MIT
license_family: MIT
- size: 226571
- timestamp: 1680190888036
+ size: 229627
+ timestamp: 1710362661692
- kind: conda
name: expat
- version: 2.5.0
- build: hb7217d7_1
- build_number: 1
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/expat-2.5.0-hb7217d7_1.conda
- sha256: 9f06afbe4604decf6a2e8e7e87f5ca218a3e9049d57d5b3fcd538ca6240d21a0
- md5: 624fa0dd6fdeaa650b71a62296fdfedf
+ version: 2.6.2
+ build: h73e2aa4_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/expat-2.6.2-h73e2aa4_0.conda
+ sha256: 0fd1befb18d9d937358a90d5b8f97ac2402761e9d4295779cbad9d7adfb47976
+ md5: dc0882915da2ec74696ad87aa2350f27
depends:
- - libexpat 2.5.0 hb7217d7_1
+ - libexpat 2.6.2 h73e2aa4_0
license: MIT
license_family: MIT
- size: 117851
- timestamp: 1680190940654
+ size: 126612
+ timestamp: 1710362607162
- kind: conda
name: expat
- version: 2.5.0
- build: hcb278e6_1
- build_number: 1
+ version: 2.6.2
+ build: hebf3989_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/expat-2.6.2-hebf3989_0.conda
+ sha256: 9ac22553a4d595d7e4c9ca9aa09a0b38da65314529a7a7008edc73d3f9e7904a
+ md5: de0cff0ec74f273c4b6aa281479906c3
+ depends:
+ - libexpat 2.6.2 hebf3989_0
+ license: MIT
+ license_family: MIT
+ size: 124594
+ timestamp: 1710362455984
+- kind: conda
+ name: filelock
+ version: 3.14.0
+ build: pyhd8ed1ab_0
+ subdir: noarch
+ noarch: python
+ url: https://conda.anaconda.org/conda-forge/noarch/filelock-3.14.0-pyhd8ed1ab_0.conda
+ sha256: 6031be667e1b0cc0dee713f1cbca887cdee4daafa8bac478da33096f3147d38b
+ md5: 831d85ae0acfba31b8efd0f0d07da736
+ depends:
+ - python >=3.7
+ license: Unlicense
+ size: 15902
+ timestamp: 1714422911808
+- kind: conda
+ name: fiona
+ version: 1.9.6
+ build: py310h0a1e91f_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/expat-2.5.0-hcb278e6_1.conda
- sha256: 36dfeb4375059b3bba75ce9b38c29c69fd257342a79e6cf20e9f25c1523f785f
- md5: 8b9b5aca60558d02ddaa09d599e55920
+ url: https://conda.anaconda.org/conda-forge/linux-64/fiona-1.9.6-py310h0a1e91f_0.conda
+ sha256: e9bd24134bd4b0cd1822517006da11f51a889e32d683b975fcba8dde6973a51d
+ md5: 2c6c0c252c2363034d9d1019429c21c0
+ depends:
+ - attrs >=19.2.0
+ - certifi
+ - click >=8.0,<9.dev0
+ - click-plugins >=1.0
+ - cligj >=0.5
+ - gdal
+ - libgcc-ng >=12
+ - libgdal >=3.8.4,<3.9.0a0
+ - libstdcxx-ng >=12
+ - numpy >=1.22.4,<2.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - shapely
+ - six
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 962439
+ timestamp: 1709930916999
+- kind: conda
+ name: fiona
+ version: 1.9.6
+ build: py310h618e506_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/fiona-1.9.6-py310h618e506_0.conda
+ sha256: da59def999e6806bf4d9bb3a690ad8dfd5e511a3e18ba039281188d7e077711e
+ md5: 8b4db93b0ce7861114858f42f06b2347
+ depends:
+ - attrs >=19.2.0
+ - certifi
+ - click >=8.0,<9.dev0
+ - click-plugins >=1.0
+ - cligj >=0.5
+ - gdal
+ - libgdal >=3.8.4,<3.9.0a0
+ - numpy >=1.22.4,<2.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - shapely
+ - six
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 808585
+ timestamp: 1709931828634
+- kind: conda
+ name: fiona
+ version: 1.9.6
+ build: py310ha8a040d_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/fiona-1.9.6-py310ha8a040d_0.conda
+ sha256: 230d1288e84620c3f7ed0a249710ed4cabd6d1fec580cad24fbf2e8510c2fb28
+ md5: 6a2836a56c02f2ba17e905b9f8f85055
depends:
- - libexpat 2.5.0 hcb278e6_1
- - libgcc-ng >=12
- license: MIT
- license_family: MIT
- size: 136778
- timestamp: 1680190541750
+ - attrs >=19.2.0
+ - certifi
+ - click >=8.0,<9.dev0
+ - click-plugins >=1.0
+ - cligj >=0.5
+ - gdal
+ - libcxx >=16
+ - libgdal >=3.8.4,<3.9.0a0
+ - numpy >=1.22.4,<2.0a0
+ - python >=3.10,<3.11.0a0
+ - python >=3.10,<3.11.0a0 *_cpython
+ - python_abi 3.10.* *_cp310
+ - shapely
+ - six
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 837457
+ timestamp: 1709931504635
- kind: conda
- name: expat
- version: 2.5.0
- build: hf0c8a7f_1
- build_number: 1
+ name: fiona
+ version: 1.9.6
+ build: py310haadd054_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/expat-2.5.0-hf0c8a7f_1.conda
- sha256: 15c04a5a690b337b50fb7550cce057d843cf94dd0109d576ec9bc3448a8571d0
- md5: e12630038077877cbb6c7851e139c17c
+ url: https://conda.anaconda.org/conda-forge/osx-64/fiona-1.9.6-py310haadd054_0.conda
+ sha256: 33279903acd376b8c5a2d09eefbc031ea907465a314e5399e75d89bad04826c9
+ md5: 26c8717f831090ba8d5fc8b244374f18
depends:
- - libexpat 2.5.0 hf0c8a7f_1
- license: MIT
- license_family: MIT
- size: 120323
- timestamp: 1680191057827
+ - attrs >=19.2.0
+ - certifi
+ - click >=8.0,<9.dev0
+ - click-plugins >=1.0
+ - cligj >=0.5
+ - gdal
+ - libcxx >=16
+ - libgdal >=3.8.4,<3.9.0a0
+ - numpy >=1.22.4,<2.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - shapely
+ - six
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 841053
+ timestamp: 1709931215400
- kind: conda
- name: filelock
- version: 3.13.1
- build: pyhd8ed1ab_0
- subdir: noarch
- noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/filelock-3.13.1-pyhd8ed1ab_0.conda
- sha256: 4d742d91412d1f163e5399d2b50c5d479694ebcd309127abb549ca3977f89d2b
- md5: 0c1729b74a8152fde6a38ba0a2ab9f45
+ name: fiona
+ version: 1.9.6
+ build: py311h1c26527_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/fiona-1.9.6-py311h1c26527_0.conda
+ sha256: 785ca539228f24dff8d2b2357e47abd3a391553cf2f2c131c2fa788972ba8b01
+ md5: 693d70874790a7e3785e35da49c744a0
depends:
- - python >=3.7
- license: Unlicense
- size: 15605
- timestamp: 1698715139726
+ - attrs >=19.2.0
+ - certifi
+ - click >=8.0,<9.dev0
+ - click-plugins >=1.0
+ - cligj >=0.5
+ - gdal
+ - libcxx >=16
+ - libgdal >=3.8.4,<3.9.0a0
+ - numpy >=1.23.5,<2.0a0
+ - python >=3.11,<3.12.0a0
+ - python >=3.11,<3.12.0a0 *_cpython
+ - python_abi 3.11.* *_cp311
+ - shapely
+ - six
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 872138
+ timestamp: 1709931271818
- kind: conda
name: fiona
- version: 1.9.5
- build: py311hbcf8545_3
- build_number: 3
+ version: 1.9.6
+ build: py311hbcf8545_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/fiona-1.9.5-py311hbcf8545_3.conda
- sha256: 83782b6a6c0c3217d8fef584aebaf73d3ca4aca05c49e9672867834f8b38864d
- md5: 7f9ed9c2e7fc1bb47568954df4209fdb
+ url: https://conda.anaconda.org/conda-forge/win-64/fiona-1.9.6-py311hbcf8545_0.conda
+ sha256: 8fc7bd8c0e7f22d2dc3abe0552e398d897844fb2f0fb91b5c439e2b704362bb6
+ md5: 0637b5b99d408ef834e8c2df63a049f5
depends:
- attrs >=19.2.0
+ - certifi
- click >=8.0,<9.dev0
- click-plugins >=1.0
- cligj >=0.5
- gdal
- - libgdal >=3.8.2,<3.9.0a0
+ - libgdal >=3.8.4,<3.9.0a0
- numpy >=1.23.5,<2.0a0
- python >=3.11,<3.12.0a0
- python_abi 3.11.* *_cp311
- - setuptools
- shapely
- six
- ucrt >=10.0.20348.0
@@ -5851,91 +11584,228 @@ packages:
- vc14_runtime >=14.29.30139
license: BSD-3-Clause
license_family: BSD
- size: 841008
- timestamp: 1704132501738
+ size: 843321
+ timestamp: 1709931706930
- kind: conda
name: fiona
- version: 1.9.5
- build: py311hd2ff552_3
- build_number: 3
+ version: 1.9.6
+ build: py311hd2ff552_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/fiona-1.9.5-py311hd2ff552_3.conda
- sha256: bdae4a129ac89fc2ccca801dd557cd36665db6682c166fde4a2d9555d016b77b
- md5: c2d0463951b4501e6e4a8a5062183558
+ url: https://conda.anaconda.org/conda-forge/osx-64/fiona-1.9.6-py311hd2ff552_0.conda
+ sha256: 9fad6e74d12086b9c324f18a04ba9af9fac526524f802328e606cb891a2c28f6
+ md5: f4a6a11e4442d808c2d2193393c046e3
depends:
- attrs >=19.2.0
+ - certifi
- click >=8.0,<9.dev0
- click-plugins >=1.0
- cligj >=0.5
- gdal
- - libcxx >=15
- - libgdal >=3.8.2,<3.9.0a0
+ - libcxx >=16
+ - libgdal >=3.8.4,<3.9.0a0
- numpy >=1.23.5,<2.0a0
- python >=3.11,<3.12.0a0
- python_abi 3.11.* *_cp311
- - setuptools
- shapely
- six
license: BSD-3-Clause
license_family: BSD
- size: 871836
- timestamp: 1704131848389
+ size: 869942
+ timestamp: 1709931332458
- kind: conda
name: fiona
- version: 1.9.5
- build: py311hf8e0aa6_3
- build_number: 3
+ version: 1.9.6
+ build: py311hf8e0aa6_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/fiona-1.9.5-py311hf8e0aa6_3.conda
- sha256: e0059445263a8a959066f2760beb9a5bfd49a89f64bf82716be79e456894fbf9
- md5: a5277325e005e9d014eca37187b3f4a2
+ url: https://conda.anaconda.org/conda-forge/linux-64/fiona-1.9.6-py311hf8e0aa6_0.conda
+ sha256: f37e722c050f5667253a4aeedd0b622b86276fb11e2da4d9711f45125c1c550a
+ md5: 80e9901639787044e91155e9a99d706d
depends:
- attrs >=19.2.0
+ - certifi
- click >=8.0,<9.dev0
- click-plugins >=1.0
- cligj >=0.5
- gdal
- libgcc-ng >=12
- - libgdal >=3.8.2,<3.9.0a0
+ - libgdal >=3.8.4,<3.9.0a0
- libstdcxx-ng >=12
- numpy >=1.23.5,<2.0a0
- python >=3.11,<3.12.0a0
- python_abi 3.11.* *_cp311
- - setuptools
- shapely
- six
license: BSD-3-Clause
license_family: BSD
- size: 991823
- timestamp: 1704131485394
+ size: 993246
+ timestamp: 1709930913431
- kind: conda
name: fiona
- version: 1.9.5
- build: py312hd158ed5_3
- build_number: 3
+ version: 1.9.6
+ build: py312h66d9856_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/fiona-1.9.6-py312h66d9856_0.conda
+ sha256: 8b9f2377852498c97397125847a012a9efe9bca35931ca97f178c0ff190a07a9
+ md5: a7e2048665753cff7f947af55f2dddb0
+ depends:
+ - attrs >=19.2.0
+ - certifi
+ - click >=8.0,<9.dev0
+ - click-plugins >=1.0
+ - cligj >=0.5
+ - gdal
+ - libgcc-ng >=12
+ - libgdal >=3.8.4,<3.9.0a0
+ - libstdcxx-ng >=12
+ - numpy >=1.26.4,<2.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - shapely
+ - six
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 980142
+ timestamp: 1709930966672
+- kind: conda
+ name: fiona
+ version: 1.9.6
+ build: py312h95cbb4d_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/fiona-1.9.6-py312h95cbb4d_0.conda
+ sha256: 56018dea5019718f994314ff2f9688bac416d79b4e6aebe984f7dc50f44bf4fd
+ md5: c8572c3ebc648b53a07a2f49a03039f6
+ depends:
+ - attrs >=19.2.0
+ - certifi
+ - click >=8.0,<9.dev0
+ - click-plugins >=1.0
+ - cligj >=0.5
+ - gdal
+ - libgdal >=3.8.4,<3.9.0a0
+ - numpy >=1.26.4,<2.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - shapely
+ - six
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 815828
+ timestamp: 1709931822140
+- kind: conda
+ name: fiona
+ version: 1.9.6
+ build: py312hc18349f_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/fiona-1.9.6-py312hc18349f_0.conda
+ sha256: d4b9b7d3077fea8fe688da939837a768fbe91101fe6edd6fecbaacb365d05096
+ md5: 7677246f7ad31813a4e361482abeb0ab
+ depends:
+ - attrs >=19.2.0
+ - certifi
+ - click >=8.0,<9.dev0
+ - click-plugins >=1.0
+ - cligj >=0.5
+ - gdal
+ - libcxx >=16
+ - libgdal >=3.8.4,<3.9.0a0
+ - numpy >=1.26.4,<2.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - shapely
+ - six
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 859073
+ timestamp: 1709931456769
+- kind: conda
+ name: fiona
+ version: 1.9.6
+ build: py312hd158ed5_0
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/fiona-1.9.5-py312hd158ed5_3.conda
- sha256: 716c8da1cbb8e717ee657256429bafd0f26d12e12dc0d5b2410526d33525e660
- md5: c0df0974bca13cacce11836265eb1292
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/fiona-1.9.6-py312hd158ed5_0.conda
+ sha256: d6d972e7ce9208c55ae296016d92d596c7b6e5a10025c82d1631af3f331b4913
+ md5: 3e593b499bfe99a1d6460fc8c7ea0d23
depends:
- attrs >=19.2.0
+ - certifi
- click >=8.0,<9.dev0
- click-plugins >=1.0
- cligj >=0.5
- gdal
- - libcxx >=15
- - libgdal >=3.8.2,<3.9.0a0
- - numpy >=1.26.2,<2.0a0
+ - libcxx >=16
+ - libgdal >=3.8.4,<3.9.0a0
+ - numpy >=1.26.4,<2.0a0
- python >=3.12,<3.13.0a0
- python >=3.12,<3.13.0a0 *_cpython
- python_abi 3.12.* *_cp312
- - setuptools
- shapely
- six
license: BSD-3-Clause
license_family: BSD
- size: 852682
- timestamp: 1704131999871
+ size: 849729
+ timestamp: 1709931476596
+- kind: conda
+ name: fmt
+ version: 10.2.1
+ build: h00ab1b0_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/fmt-10.2.1-h00ab1b0_0.conda
+ sha256: 7b9ba098a3661e023c3555e01554354ac4891af8f8998e85f0fcbfdac79fc0d4
+ md5: 35ef8bc24bd34074ebae3c943d551728
+ depends:
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
+ license: MIT
+ license_family: MIT
+ size: 193853
+ timestamp: 1704454679950
+- kind: conda
+ name: fmt
+ version: 10.2.1
+ build: h181d51b_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/fmt-10.2.1-h181d51b_0.conda
+ sha256: 4593d75b6a1e0b5b43fdcba6b968537638a6e469521fb4c3073929f973891828
+ md5: 4253b572559cc775cae49def5c97b3c0
+ depends:
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: MIT
+ license_family: MIT
+ size: 185170
+ timestamp: 1704455079451
+- kind: conda
+ name: fmt
+ version: 10.2.1
+ build: h2ffa867_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/fmt-10.2.1-h2ffa867_0.conda
+ sha256: 8570ae6fb7cd1179c646e2c48105e91b3ed8ba15855f12965cc5c9719753c06f
+ md5: 8cccde6755bdd787f9840f38a34b4e7d
+ depends:
+ - libcxx >=15
+ license: MIT
+ license_family: MIT
+ size: 174209
+ timestamp: 1704454873305
+- kind: conda
+ name: fmt
+ version: 10.2.1
+ build: h7728843_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/fmt-10.2.1-h7728843_0.conda
+ sha256: 2faeccfe2b9f7c028cf271f66757365fe43b15a1234084c16f159646a646ccbc
+ md5: ab205d53bda43d03f5c5b993ccb406b3
+ depends:
+ - libcxx >=15
+ license: MIT
+ license_family: MIT
+ size: 181468
+ timestamp: 1704454938658
- kind: conda
name: folium
version: 0.16.0
@@ -5998,17 +11868,17 @@ packages:
- kind: conda
name: font-ttf-ubuntu
version: '0.83'
- build: h77eed37_1
- build_number: 1
+ build: h77eed37_2
+ build_number: 2
subdir: noarch
noarch: generic
- url: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_1.conda
- sha256: 056c85b482d58faab5fd4670b6c1f5df0986314cca3bc831d458b22e4ef2c792
- md5: 6185f640c43843e5ad6fd1c5372c3f80
+ url: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_2.conda
+ sha256: c940f6e969143e13a3a9660abb3c7e7e23b8319efb29dbdd5dee0b9939236e13
+ md5: cbbe59391138ea5ad3658c76912e147f
license: LicenseRef-Ubuntu-Font-Licence-Version-1.0
license_family: Other
- size: 1619820
- timestamp: 1700944216729
+ size: 1622566
+ timestamp: 1714483134319
- kind: conda
name: fontconfig
version: 2.14.2
@@ -6114,12 +11984,107 @@ packages:
timestamp: 1566932280397
- kind: conda
name: fonttools
- version: 4.49.0
+ version: 4.51.0
+ build: py310h2372a71_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.51.0-py310h2372a71_0.conda
+ sha256: 75158022bf0d6f1a57c784aa91a3c560211f37063f4f4639b5296ada50a262e8
+ md5: 1a4773624145c15b92820fe6c87c5fcd
+ depends:
+ - brotli
+ - libgcc-ng >=12
+ - munkres
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - unicodedata2 >=14.0.0
+ license: MIT
+ license_family: MIT
+ size: 2330998
+ timestamp: 1712344709940
+- kind: conda
+ name: fonttools
+ version: 4.51.0
+ build: py310h8d17308_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/fonttools-4.51.0-py310h8d17308_0.conda
+ sha256: 1b51ec54f8be7baaa14d28ea68937f63e8bd73ce4f405109252a850ea32dbcd7
+ md5: bffd6b44942b144fc8d52ecc50d39fb8
+ depends:
+ - brotli
+ - munkres
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - ucrt >=10.0.20348.0
+ - unicodedata2 >=14.0.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: MIT
+ license_family: MIT
+ size: 1904099
+ timestamp: 1712345185021
+- kind: conda
+ name: fonttools
+ version: 4.51.0
+ build: py310hb372a2b_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/fonttools-4.51.0-py310hb372a2b_0.conda
+ sha256: ad7bd99d1c23c0755a40566d99f6f533d1eeac635739643a90f8a6ce4a7532e9
+ md5: cc4ea60c91e8b87edec4ff92385d2004
+ depends:
+ - brotli
+ - munkres
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - unicodedata2 >=14.0.0
+ license: MIT
+ license_family: MIT
+ size: 2260458
+ timestamp: 1712344974536
+- kind: conda
+ name: fonttools
+ version: 4.51.0
+ build: py310hd125d64_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/fonttools-4.51.0-py310hd125d64_0.conda
+ sha256: 143c4297d05b9a6ab449d11606b96e114e3fac4cd9d19eb7c6494516f85763bb
+ md5: 5d8c5baf693f53ddd0c4324fe6d14268
+ depends:
+ - brotli
+ - munkres
+ - python >=3.10,<3.11.0a0
+ - python >=3.10,<3.11.0a0 *_cpython
+ - python_abi 3.10.* *_cp310
+ - unicodedata2 >=14.0.0
+ license: MIT
+ license_family: MIT
+ size: 2208748
+ timestamp: 1712344970456
+- kind: conda
+ name: fonttools
+ version: 4.51.0
+ build: py311h05b510d_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/fonttools-4.51.0-py311h05b510d_0.conda
+ sha256: eb302bff243557c00376f6132c70b613de58c89fb056f48dd356c418c24817a2
+ md5: 24f53a9bde6f321549791406abbe7171
+ depends:
+ - brotli
+ - munkres
+ - python >=3.11,<3.12.0a0
+ - python >=3.11,<3.12.0a0 *_cpython
+ - python_abi 3.11.* *_cp311
+ license: MIT
+ license_family: MIT
+ size: 2779777
+ timestamp: 1712345091169
+- kind: conda
+ name: fonttools
+ version: 4.51.0
build: py311h459d7ec_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.49.0-py311h459d7ec_0.conda
- sha256: bbf00a8da6c109cb139dd1e691052081e7e1e28ff2a849e7297c9e71588a6d6f
- md5: d66c9e36ab104f94e35b015c86c2fcb4
+ url: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.51.0-py311h459d7ec_0.conda
+ sha256: 117bc8eb7bb390911faa0b816d404d776669b088c41a9caba7b7561cd2f67970
+ md5: 17e1997cc17c571d5ad27bd0159f616c
depends:
- brotli
- libgcc-ng >=12
@@ -6128,16 +12093,16 @@ packages:
- python_abi 3.11.* *_cp311
license: MIT
license_family: MIT
- size: 2817685
- timestamp: 1708049363863
+ size: 2827021
+ timestamp: 1712344736242
- kind: conda
name: fonttools
- version: 4.49.0
+ version: 4.51.0
build: py311ha68e1ae_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/fonttools-4.49.0-py311ha68e1ae_0.conda
- sha256: cae528ef4bf25ae3ab22941fa45eed8c2c3105e503d993698ab0d963a9f743d1
- md5: d13525346bdf13be1ea57172754e2daf
+ url: https://conda.anaconda.org/conda-forge/win-64/fonttools-4.51.0-py311ha68e1ae_0.conda
+ sha256: 7f130b53d957624bfea553cab96cf85a9d51bcf0ddcfc4e68f655bc8321cc744
+ md5: 5d497f05b17751c8e4c60103aa20d2d6
depends:
- brotli
- munkres
@@ -6148,43 +12113,98 @@ packages:
- vc14_runtime >=14.29.30139
license: MIT
license_family: MIT
- size: 2404601
- timestamp: 1708049696942
+ size: 2417702
+ timestamp: 1712345179311
+- kind: conda
+ name: fonttools
+ version: 4.51.0
+ build: py311he705e18_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/fonttools-4.51.0-py311he705e18_0.conda
+ sha256: b3c868d3f98675b0e69530e75ee943349c98fc8e3c7c121fe123067c1a70e3bc
+ md5: edf0af3a7002844b5b59605c9725625b
+ depends:
+ - brotli
+ - munkres
+ - python >=3.11,<3.12.0a0
+ - python_abi 3.11.* *_cp311
+ license: MIT
+ license_family: MIT
+ size: 2753573
+ timestamp: 1712344918883
+- kind: conda
+ name: fonttools
+ version: 4.51.0
+ build: py312h41838bb_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/fonttools-4.51.0-py312h41838bb_0.conda
+ sha256: 38d7a31e6dc0150e70b7658f0fa5aa747ae951cd961fb4c0d8ce9f717c2a2a61
+ md5: ebe40134b860cf704ddaf81f684f95a5
+ depends:
+ - brotli
+ - munkres
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ license: MIT
+ license_family: MIT
+ size: 2688978
+ timestamp: 1712345024723
+- kind: conda
+ name: fonttools
+ version: 4.51.0
+ build: py312h98912ed_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.51.0-py312h98912ed_0.conda
+ sha256: 2589622654b59454a2b6f1e37b864d429a46849db575415803fbe571e6f564c7
+ md5: f0cd0e54adf65aaa976f5731b7a3f383
+ depends:
+ - brotli
+ - libgcc-ng >=12
+ - munkres
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ license: MIT
+ license_family: MIT
+ size: 2787769
+ timestamp: 1712344705346
- kind: conda
name: fonttools
- version: 4.49.0
- build: py311he705e18_0
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/fonttools-4.49.0-py311he705e18_0.conda
- sha256: 8ac8c8836616dcf366fd539951367d1e0f3a0f3e519287b3218665cb37366bfc
- md5: fc14300cb29ba11efaaa294b3efb14e0
+ version: 4.51.0
+ build: py312he37b823_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/fonttools-4.51.0-py312he37b823_0.conda
+ sha256: 2c6681ed2c3c31cc132d4ed8e5ba7d44cb330d4c61bd35970f9f5a410535d076
+ md5: 30bd6e9be6d9f932bc54e7b88130bca3
depends:
- brotli
- munkres
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12,<3.13.0a0
+ - python >=3.12,<3.13.0a0 *_cpython
+ - python_abi 3.12.* *_cp312
license: MIT
license_family: MIT
- size: 2745147
- timestamp: 1708049594531
+ size: 2688172
+ timestamp: 1712345007991
- kind: conda
name: fonttools
- version: 4.49.0
- build: py312he37b823_0
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/fonttools-4.49.0-py312he37b823_0.conda
- sha256: 416813e38515bfe5d41a4df1cb68ad0595edbaadd122646ace755b4c7d16da69
- md5: b512c69c2d3fc0b5c04e2b120c6a22d2
+ version: 4.51.0
+ build: py312he70551f_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/fonttools-4.51.0-py312he70551f_0.conda
+ sha256: c86a5a3483587fac156afe5e1ec9f44aeb91d885b1bf1b753c9f2c1fa2d07229
+ md5: 6820105f0928bb46b99358d45d4f3994
depends:
- brotli
- munkres
- python >=3.12,<3.13.0a0
- - python >=3.12,<3.13.0a0 *_cpython
- python_abi 3.12.* *_cp312
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
license: MIT
license_family: MIT
- size: 2670923
- timestamp: 1708049779053
+ size: 2363814
+ timestamp: 1712345188022
- kind: conda
name: fqdn
version: 1.5.1
@@ -6335,19 +12355,19 @@ packages:
timestamp: 1694952828719
- kind: conda
name: fsspec
- version: 2024.2.0
+ version: 2024.3.1
build: pyhca7485f_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.2.0-pyhca7485f_0.conda
- sha256: 3f7e123dd82fe99450d1e0ffa389e8218ef8c9ee257c836e21b489548c039ae6
- md5: fad86b90138cf5d82c6f5a2ed6e683d9
+ url: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda
+ sha256: b8621151939bb5ea4ea4aa84f010e6130a47b1453cd9178283f335816b72a895
+ md5: b7f0662ef2c9d4404f0af9eef5ed2fde
depends:
- python >=3.8
license: BSD-3-Clause
license_family: BSD
- size: 128662
- timestamp: 1707102616711
+ size: 129227
+ timestamp: 1710808383964
- kind: conda
name: future
version: 1.0.0
@@ -6363,18 +12383,134 @@ packages:
license_family: MIT
size: 364081
timestamp: 1708610254418
+- kind: conda
+ name: gcc_impl_linux-64
+ version: 13.2.0
+ build: h9eb54c0_6
+ build_number: 6
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/gcc_impl_linux-64-13.2.0-h9eb54c0_6.conda
+ sha256: 67d16151d316f04ea2779ff3a4f5fcf4a5454e89bc21dabc1a4f7c08cf5ea821
+ md5: 36ca2a36806ab26c2daf20d5b62280d7
+ depends:
+ - binutils_impl_linux-64 >=2.40
+ - libgcc-devel_linux-64 13.2.0 hceb6213_106
+ - libgcc-ng >=13.2.0
+ - libgomp >=13.2.0
+ - libsanitizer 13.2.0 h6ddb7a1_6
+ - libstdcxx-ng >=13.2.0
+ - sysroot_linux-64
+ license: GPL-3.0-only WITH GCC-exception-3.1
+ size: 53360656
+ timestamp: 1714581875812
- kind: conda
name: gdal
- version: 3.8.4
- build: py311h21a6730_0
+ version: 3.8.5
+ build: py310h3b926b6_2
+ build_number: 2
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/gdal-3.8.5-py310h3b926b6_2.conda
+ sha256: 5fee489983b6f4f674ada9f9229e07abf3e334d6523f40ec1cd21279531a0b8e
+ md5: c445beead2dbd857d1fce0cb03187d9a
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - hdf5 >=1.14.3,<1.14.4.0a0
+ - libgcc-ng >=12
+ - libgdal 3.8.5 hf9625ee_2
+ - libstdcxx-ng >=12
+ - libxml2 >=2.12.6,<3.0a0
+ - numpy >=1.22.4,<2.0a0
+ - openssl >=3.2.1,<4.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ license: MIT
+ license_family: MIT
+ size: 1496490
+ timestamp: 1713570802301
+- kind: conda
+ name: gdal
+ version: 3.8.5
+ build: py310h7e77ef1_2
+ build_number: 2
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/gdal-3.8.5-py310h7e77ef1_2.conda
+ sha256: 71c31fd90a53cc405b4eda53f9938f262858faaeb44151e50566f5935a2b68c1
+ md5: 1e99a26f990274a5d057d082ebe4f4fb
+ depends:
+ - __osx >=11.0
+ - hdf5 >=1.14.3,<1.14.4.0a0
+ - libcxx >=16
+ - libgdal 3.8.5 h2f7ae65_2
+ - libxml2 >=2.12.6,<3.0a0
+ - numpy >=1.22.4,<2.0a0
+ - openssl >=3.2.1,<4.0a0
+ - python >=3.10,<3.11.0a0
+ - python >=3.10,<3.11.0a0 *_cpython
+ - python_abi 3.10.* *_cp310
+ license: MIT
+ license_family: MIT
+ size: 1460282
+ timestamp: 1713573098849
+- kind: conda
+ name: gdal
+ version: 3.8.5
+ build: py310h9def23e_2
+ build_number: 2
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/gdal-3.8.4-py311h21a6730_0.conda
- sha256: bc24bc2b1450b7204482f83d0bb0a45d610b0114cb8fab4f8f7a3ae424c83d8b
- md5: f506f77d5573f902fed9653973e65d8a
+ url: https://conda.anaconda.org/conda-forge/win-64/gdal-3.8.5-py310h9def23e_2.conda
+ sha256: 19c847cd3596899c5a4a8da62c1aa9ac5215cab3341182e087ee778c8249c345
+ md5: 57692627afd2e7e983afb8b48cbd84a1
depends:
- hdf5 >=1.14.3,<1.14.4.0a0
- - libgdal 3.8.4 h7c2897a_0
- - libxml2 >=2.12.5,<3.0a0
+ - libgdal 3.8.5 hfb9f81c_2
+ - libxml2 >=2.12.6,<3.0a0
+ - numpy >=1.22.4,<2.0a0
+ - openssl >=3.2.1,<4.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: MIT
+ license_family: MIT
+ size: 1452369
+ timestamp: 1713573513361
+- kind: conda
+ name: gdal
+ version: 3.8.5
+ build: py310hf007c50_2
+ build_number: 2
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/gdal-3.8.5-py310hf007c50_2.conda
+ sha256: 990f1cd0a3378096e450039cd87375c59b48c4ae362256c776e77b743624f2b2
+ md5: e5e309fec0e4f5ef9829e7616523826e
+ depends:
+ - __osx >=10.9
+ - hdf5 >=1.14.3,<1.14.4.0a0
+ - libcxx >=16
+ - libgdal 3.8.5 h7db9259_2
+ - libxml2 >=2.12.6,<3.0a0
+ - numpy >=1.22.4,<2.0a0
+ - openssl >=3.2.1,<4.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ license: MIT
+ license_family: MIT
+ size: 1477622
+ timestamp: 1713573001105
+- kind: conda
+ name: gdal
+ version: 3.8.5
+ build: py311h04e801d_2
+ build_number: 2
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/gdal-3.8.5-py311h04e801d_2.conda
+ sha256: 28297e62fcf869197616de9c1959e8ca3ed4b31c9450859d240445896934e343
+ md5: 55a75cfe57b7d95366c22cddc9a0c457
+ depends:
+ - hdf5 >=1.14.3,<1.14.4.0a0
+ - libgdal 3.8.5 hfb9f81c_2
+ - libxml2 >=2.12.6,<3.0a0
- numpy >=1.23.5,<2.0a0
- openssl >=3.2.1,<4.0a0
- python >=3.11,<3.12.0a0
@@ -6384,64 +12520,117 @@ packages:
- vc14_runtime >=14.29.30139
license: MIT
license_family: MIT
- size: 1632885
- timestamp: 1708281647106
+ size: 1636561
+ timestamp: 1713572582720
- kind: conda
name: gdal
- version: 3.8.4
- build: py311h8be719e_0
+ version: 3.8.5
+ build: py311h7f90d8e_2
+ build_number: 2
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/gdal-3.8.5-py311h7f90d8e_2.conda
+ sha256: 137c587d516cf9b4313e8111fd5ce394896aafa30104d15f78d4dad94b01c435
+ md5: c09478f603bc3a814d8fee539afe49e2
+ depends:
+ - __osx >=11.0
+ - hdf5 >=1.14.3,<1.14.4.0a0
+ - libcxx >=16
+ - libgdal 3.8.5 h2f7ae65_2
+ - libxml2 >=2.12.6,<3.0a0
+ - numpy >=1.23.5,<2.0a0
+ - openssl >=3.2.1,<4.0a0
+ - python >=3.11,<3.12.0a0
+ - python >=3.11,<3.12.0a0 *_cpython
+ - python_abi 3.11.* *_cp311
+ license: MIT
+ license_family: MIT
+ size: 1643125
+ timestamp: 1713573340592
+- kind: conda
+ name: gdal
+ version: 3.8.5
+ build: py311hd032c08_2
+ build_number: 2
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/gdal-3.8.4-py311h8be719e_0.conda
- sha256: 8c54dabcc6152c22da82e69bdf7923ea58370986056aa0a0757bc24a4824be0d
- md5: de4d128805c8e1cbe408a93be1f715f3
+ url: https://conda.anaconda.org/conda-forge/linux-64/gdal-3.8.5-py311hd032c08_2.conda
+ sha256: 4d465377ea104f48f7f501c3fc698e65b62d1eaf18ef8887d07b677923f3a3a2
+ md5: 27cec24f4d84b46f04b59c41c1b9c071
depends:
+ - __glibc >=2.17,<3.0.a0
- hdf5 >=1.14.3,<1.14.4.0a0
- libgcc-ng >=12
- - libgdal 3.8.4 h9323651_0
+ - libgdal 3.8.5 hf9625ee_2
- libstdcxx-ng >=12
- - libxml2 >=2.12.5,<3.0a0
+ - libxml2 >=2.12.6,<3.0a0
- numpy >=1.23.5,<2.0a0
- openssl >=3.2.1,<4.0a0
- python >=3.11,<3.12.0a0
- python_abi 3.11.* *_cp311
license: MIT
license_family: MIT
- size: 1683746
- timestamp: 1708279785540
+ size: 1682955
+ timestamp: 1713570724566
- kind: conda
name: gdal
- version: 3.8.4
- build: py311haaa0e4f_0
+ version: 3.8.5
+ build: py311hf8bdfd9_2
+ build_number: 2
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/gdal-3.8.4-py311haaa0e4f_0.conda
- sha256: 99851b21754b61706c813ff3c2d01b4e1a5c336f86670be88a4e5224074ce619
- md5: 0c9856c2b72926928e10fcfc0a6120f9
+ url: https://conda.anaconda.org/conda-forge/osx-64/gdal-3.8.5-py311hf8bdfd9_2.conda
+ sha256: 0f0d602da0dfab7a98feb49aa052cfbb912ed5c376fb41cfbc35db670c584476
+ md5: 13967709d800a04b6a9a3d49b4e488a3
depends:
+ - __osx >=10.9
- hdf5 >=1.14.3,<1.14.4.0a0
- libcxx >=16
- - libgdal 3.8.4 h46636ed_0
- - libxml2 >=2.12.5,<3.0a0
+ - libgdal 3.8.5 h7db9259_2
+ - libxml2 >=2.12.6,<3.0a0
- numpy >=1.23.5,<2.0a0
- openssl >=3.2.1,<4.0a0
- python >=3.11,<3.12.0a0
- python_abi 3.11.* *_cp311
license: MIT
license_family: MIT
- size: 1662486
- timestamp: 1708281835593
+ size: 1660005
+ timestamp: 1713572812922
- kind: conda
name: gdal
- version: 3.8.4
- build: py312h56161e1_0
+ version: 3.8.5
+ build: py312ha261e76_2
+ build_number: 2
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/gdal-3.8.5-py312ha261e76_2.conda
+ sha256: bb503d9dea1429fac70ed738a10e113aef1ff5937565eabc0559754bef23968e
+ md5: bd9de63bc30ef02bced1e329273233c5
+ depends:
+ - __osx >=10.9
+ - hdf5 >=1.14.3,<1.14.4.0a0
+ - libcxx >=16
+ - libgdal 3.8.5 h7db9259_2
+ - libxml2 >=2.12.6,<3.0a0
+ - numpy >=1.26.4,<2.0a0
+ - openssl >=3.2.1,<4.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ license: MIT
+ license_family: MIT
+ size: 1644027
+ timestamp: 1713572613016
+- kind: conda
+ name: gdal
+ version: 3.8.5
+ build: py312hb48d578_2
+ build_number: 2
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/gdal-3.8.4-py312h56161e1_0.conda
- sha256: 5641d066dedd7f2233db7f70d8db79919e384c4c583378bca6caab5508eca0a4
- md5: e8b94ff1aab7346607784775cd24eed7
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/gdal-3.8.5-py312hb48d578_2.conda
+ sha256: f4090618956356bfcea9c2ceaa6403b0f6f58759e1c5dea86812ce3e5e6bffc8
+ md5: 1e949feb513f34314ee3a6977b4a7fa5
depends:
+ - __osx >=11.0
- hdf5 >=1.14.3,<1.14.4.0a0
- libcxx >=16
- - libgdal 3.8.4 ha86f356_0
- - libxml2 >=2.12.5,<3.0a0
+ - libgdal 3.8.5 h2f7ae65_2
+ - libxml2 >=2.12.6,<3.0a0
- numpy >=1.26.4,<2.0a0
- openssl >=3.2.1,<4.0a0
- python >=3.12,<3.13.0a0
@@ -6449,21 +12638,69 @@ packages:
- python_abi 3.12.* *_cp312
license: MIT
license_family: MIT
- size: 1628804
- timestamp: 1708281857779
+ size: 1630027
+ timestamp: 1713573592457
+- kind: conda
+ name: gdal
+ version: 3.8.5
+ build: py312hca78659_2
+ build_number: 2
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/gdal-3.8.5-py312hca78659_2.conda
+ sha256: 67da7641600727f79a57f97a9c35c4925fa2e47d640fbe1c5aaf983f6eb55749
+ md5: 38f55ac6ef474fda30efa6f5081790d4
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - hdf5 >=1.14.3,<1.14.4.0a0
+ - libgcc-ng >=12
+ - libgdal 3.8.5 hf9625ee_2
+ - libstdcxx-ng >=12
+ - libxml2 >=2.12.6,<3.0a0
+ - numpy >=1.26.4,<2.0a0
+ - openssl >=3.2.1,<4.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ license: MIT
+ license_family: MIT
+ size: 1659691
+ timestamp: 1713570567837
+- kind: conda
+ name: gdal
+ version: 3.8.5
+ build: py312hea5013e_2
+ build_number: 2
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/gdal-3.8.5-py312hea5013e_2.conda
+ sha256: 806150ad07c386ae3d97b142deced7ade2bfadc58c392422e7b58391e381dcca
+ md5: 4b5ad659aaf686ee982ce3863a284161
+ depends:
+ - hdf5 >=1.14.3,<1.14.4.0a0
+ - libgdal 3.8.5 hfb9f81c_2
+ - libxml2 >=2.12.6,<3.0a0
+ - numpy >=1.26.4,<2.0a0
+ - openssl >=3.2.1,<4.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: MIT
+ license_family: MIT
+ size: 1618958
+ timestamp: 1713572254808
- kind: conda
name: geopandas
- version: 0.14.3
+ version: 0.14.4
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda
- sha256: 15bdc3d85ffa9c6601f57dd5e2780dbcbe52ca5da70164fb5bb1bb4c72b92010
- md5: d8e208e375441bf1404e9693f13f3c25
+ url: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.4-pyhd8ed1ab_0.conda
+ sha256: a08d4c641dbf7b27b1195c270816cea801edae74dd609012d03ae5ad35c9dccc
+ md5: acc01facf6f915b6289a064957a58cc1
depends:
- fiona >=1.8.21
- folium
- - geopandas-base 0.14.3 pyha770c72_0
+ - geopandas-base 0.14.4 pyha770c72_0
- mapclassify >=2.4.0
- matplotlib-base
- python >=3.9
@@ -6471,17 +12708,17 @@ packages:
- xyzservices
license: BSD-3-Clause
license_family: BSD
- size: 7619
- timestamp: 1706734846170
+ size: 7691
+ timestamp: 1714335630563
- kind: conda
name: geopandas-base
- version: 0.14.3
+ version: 0.14.4
build: pyha770c72_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda
- sha256: 0a8fb5a368d19fd08f7f65dfcff563322cb34e47947cabab8fc7f187d9bc9269
- md5: fbac4b2194c962b97324a3f5dd7d2696
+ url: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.4-pyha770c72_0.conda
+ sha256: 9dc4b7ee08b60be28a7284104e7147ecf23fcbe3718eeb271712deb92ff3ff06
+ md5: b7a9e8e5865cc474fb0856577898316a
depends:
- packaging
- pandas >=1.4.0
@@ -6490,8 +12727,8 @@ packages:
- shapely >=1.8.0
license: BSD-3-Clause
license_family: BSD
- size: 1020461
- timestamp: 1706734838573
+ size: 1021307
+ timestamp: 1714335625468
- kind: conda
name: geos
version: 3.12.1
@@ -6552,140 +12789,197 @@ packages:
- kind: conda
name: geotiff
version: 1.7.1
- build: h509af15_15
- build_number: 15
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/geotiff-1.7.1-h509af15_15.conda
- sha256: e6047c9008746788d265ec6b30551387efd204a5a9a599f0f0359956e8513e76
- md5: 96cb876ae9551821ad4cd6ce860d75f1
+ build: h6cf1f90_16
+ build_number: 16
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/geotiff-1.7.1-h6cf1f90_16.conda
+ sha256: 882cf1ef5bb0f176e9bc3da5a9783e11fce467d87ebbe76c0d0aa88bfa06de46
+ md5: aadc00cd5e330b5f7fb289446c23ab23
depends:
- - __osx >=10.9
- - libcxx >=16.0.6
+ - libgcc-ng >=12
- libjpeg-turbo >=3.0.0,<4.0a0
+ - libstdcxx-ng >=12
- libtiff >=4.6.0,<4.7.0a0
- libzlib >=1.2.13,<1.3.0a0
- - proj >=9.3.1,<9.3.2.0a0
+ - proj >=9.4.0,<9.4.1.0a0
- zlib
license: MIT
license_family: MIT
- size: 118949
- timestamp: 1702091820418
+ size: 133669
+ timestamp: 1711103757403
- kind: conda
name: geotiff
version: 1.7.1
- build: h6b2125f_15
- build_number: 15
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/geotiff-1.7.1-h6b2125f_15.conda
- sha256: f7dcc865f5522713048397702490ba917abf9d2fbfe89d6b703e0ea333a27b01
- md5: 218a726155bd9ae1787b26054eed8566
+ build: h6e650f3_16
+ build_number: 16
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/geotiff-1.7.1-h6e650f3_16.conda
+ sha256: 25ccec6f1666dc94513f6f0932869930929f86c623974d223b5444fc136feae9
+ md5: 35c3027edcd4013d1c902b5167150fe4
depends:
- - libgcc-ng >=12
+ - libcxx >=16
- libjpeg-turbo >=3.0.0,<4.0a0
- - libstdcxx-ng >=12
- libtiff >=4.6.0,<4.7.0a0
- libzlib >=1.2.13,<1.3.0a0
- - proj >=9.3.1,<9.3.2.0a0
+ - proj >=9.4.0,<9.4.1.0a0
- zlib
license: MIT
license_family: MIT
- size: 133164
- timestamp: 1702091590935
+ size: 115807
+ timestamp: 1711104223057
- kind: conda
name: geotiff
version: 1.7.1
- build: h7bcba05_15
- build_number: 15
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/geotiff-1.7.1-h7bcba05_15.conda
- sha256: 27384be625449600b940f32f9f54addc1d186ea1c6e2d1dd70d4b8f118c6e8bc
- md5: b3f8b9192d9d8053d64e94c62a798d7e
+ build: h7c2ff5c_16
+ build_number: 16
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/geotiff-1.7.1-h7c2ff5c_16.conda
+ sha256: e9277328123fa387561c53ee08c7758f8801eef1ee4caa982bca86480b002c9d
+ md5: c505170a140041f1ef9758df72b00b26
depends:
- - __osx >=10.9
- - libcxx >=16.0.6
+ - libcxx >=16
- libjpeg-turbo >=3.0.0,<4.0a0
- libtiff >=4.6.0,<4.7.0a0
- libzlib >=1.2.13,<1.3.0a0
- - proj >=9.3.1,<9.3.2.0a0
+ - proj >=9.4.0,<9.4.1.0a0
- zlib
license: MIT
license_family: MIT
- size: 116230
- timestamp: 1702092165137
+ size: 117849
+ timestamp: 1711103931647
- kind: conda
name: geotiff
version: 1.7.1
- build: hbf5ca3a_15
- build_number: 15
+ build: hed9d743_16
+ build_number: 16
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/geotiff-1.7.1-hbf5ca3a_15.conda
- sha256: 7e50e631cf86ebf19e1a25e13b4d778d6166f17a28583c18c3794576b370fbcf
- md5: b57ca6d86e2f217bf5277e15361e88a8
+ url: https://conda.anaconda.org/conda-forge/win-64/geotiff-1.7.1-hed9d743_16.conda
+ sha256: eae7167dd34530c6a7a5ea589f628c23d997a3439978492eb84c49329e6e6ef6
+ md5: 7b08e27491d958b1a45a6ab6070eb0e4
depends:
- libjpeg-turbo >=3.0.0,<4.0a0
- libtiff >=4.6.0,<4.7.0a0
- libzlib >=1.2.13,<1.3.0a0
- - proj >=9.3.1,<9.3.2.0a0
+ - proj >=9.4.0,<9.4.1.0a0
- ucrt >=10.0.20348.0
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
- zlib
license: MIT
license_family: MIT
- size: 125707
- timestamp: 1702092204962
+ size: 125869
+ timestamp: 1711103999489
- kind: conda
name: gettext
- version: 0.21.1
- build: h0186832_0
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/gettext-0.21.1-h0186832_0.tar.bz2
- sha256: 093b2f96dc4b48e4952ab8946facec98b34b708a056251fc19c23c3aad30039e
- md5: 63d2ff6fddfa74e5458488fd311bf635
+ version: 0.22.5
+ build: h59595ed_2
+ build_number: 2
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/gettext-0.22.5-h59595ed_2.conda
+ sha256: 386181254ddd2aed1fccdfc217da5b6545f6df4e9979ad8e08f5e91e22eaf7dc
+ md5: 219ba82e95d7614cf7140d2a4afc0926
depends:
- - libiconv >=1.17,<2.0a0
+ - gettext-tools 0.22.5 h59595ed_2
+ - libasprintf 0.22.5 h661eb56_2
+ - libasprintf-devel 0.22.5 h661eb56_2
+ - libgcc-ng >=12
+ - libgettextpo 0.22.5 h59595ed_2
+ - libgettextpo-devel 0.22.5 h59595ed_2
+ - libstdcxx-ng >=12
license: LGPL-2.1-or-later AND GPL-3.0-or-later
- size: 4021036
- timestamp: 1665674192347
+ size: 475058
+ timestamp: 1712512357949
- kind: conda
name: gettext
- version: 0.21.1
- build: h27087fc_0
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/gettext-0.21.1-h27087fc_0.tar.bz2
- sha256: 4fcfedc44e4c9a053f0416f9fc6ab6ed50644fca3a761126dbd00d09db1f546a
- md5: 14947d8770185e5153fdd04d4673ed37
+ version: 0.22.5
+ build: h5ff76d1_2
+ build_number: 2
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/gettext-0.22.5-h5ff76d1_2.conda
+ sha256: ba9a4680b018a4ca517ec20beb25b09c97e293ecd16b931075e689db10291712
+ md5: c09b3dcf2adc5a2a32d11ab90289b8fa
depends:
- - libgcc-ng >=12
+ - gettext-tools 0.22.5 h5ff76d1_2
+ - libasprintf 0.22.5 h5ff76d1_2
+ - libasprintf-devel 0.22.5 h5ff76d1_2
+ - libcxx >=16
+ - libgettextpo 0.22.5 h5ff76d1_2
+ - libgettextpo-devel 0.22.5 h5ff76d1_2
+ - libiconv >=1.17,<2.0a0
+ - libintl 0.22.5 h5ff76d1_2
+ - libintl-devel 0.22.5 h5ff76d1_2
license: LGPL-2.1-or-later AND GPL-3.0-or-later
- size: 4320628
- timestamp: 1665673494324
+ size: 481687
+ timestamp: 1712513003915
- kind: conda
name: gettext
- version: 0.21.1
- build: h5728263_0
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/gettext-0.21.1-h5728263_0.tar.bz2
- sha256: 71c75b0a4dc2cf95d2860ea0076edf9f5558baeb4dacaeecb32643b199074616
- md5: 299d4fd6798a45337042ff5a48219e5f
+ version: 0.22.5
+ build: h8fbad5d_2
+ build_number: 2
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/gettext-0.22.5-h8fbad5d_2.conda
+ sha256: 7188b466071698759b125aaed9b4d78940e72e6299b0c6dbad6f35c85cf3d27b
+ md5: 404e2894e9cb2835246cef47317ff763
depends:
+ - gettext-tools 0.22.5 h8fbad5d_2
+ - libasprintf 0.22.5 h8fbad5d_2
+ - libasprintf-devel 0.22.5 h8fbad5d_2
+ - libcxx >=16
+ - libgettextpo 0.22.5 h8fbad5d_2
+ - libgettextpo-devel 0.22.5 h8fbad5d_2
- libiconv >=1.17,<2.0a0
+ - libintl 0.22.5 h8fbad5d_2
+ - libintl-devel 0.22.5 h8fbad5d_2
license: LGPL-2.1-or-later AND GPL-3.0-or-later
- size: 5579416
- timestamp: 1665676022441
+ size: 482649
+ timestamp: 1712512963023
- kind: conda
- name: gettext
- version: 0.21.1
- build: h8a4c099_0
+ name: gettext-tools
+ version: 0.22.5
+ build: h59595ed_2
+ build_number: 2
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/gettext-tools-0.22.5-h59595ed_2.conda
+ sha256: 67d7b1d6fe4f1c516df2000640ec7dcfebf3ff6ea0785f0276870e730c403d33
+ md5: 985f2f453fb72408d6b6f1be0f324033
+ depends:
+ - libgcc-ng >=12
+ license: GPL-3.0-or-later
+ license_family: GPL
+ size: 2728420
+ timestamp: 1712512328692
+- kind: conda
+ name: gettext-tools
+ version: 0.22.5
+ build: h5ff76d1_2
+ build_number: 2
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/gettext-0.21.1-h8a4c099_0.tar.bz2
- sha256: 915d3cd2d777b9b3fc2e87a25901b8e4a6aa1b2b33cf2ba54e9e9ed4f6b67d94
- md5: 1e3aff29ce703d421c43f371ad676cc5
+ url: https://conda.anaconda.org/conda-forge/osx-64/gettext-tools-0.22.5-h5ff76d1_2.conda
+ sha256: 4db71a66340d068c57e16c574c356db6df54ac0147b5b26d3313093f7854ee6d
+ md5: 37e1cb0efeff4d4623a6357e37e0105d
depends:
- libiconv >=1.17,<2.0a0
- license: LGPL-2.1-or-later AND GPL-3.0-or-later
- size: 4153781
- timestamp: 1665674106245
+ - libintl 0.22.5 h5ff76d1_2
+ license: GPL-3.0-or-later
+ license_family: GPL
+ size: 2501207
+ timestamp: 1712512940076
+- kind: conda
+ name: gettext-tools
+ version: 0.22.5
+ build: h8fbad5d_2
+ build_number: 2
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/gettext-tools-0.22.5-h8fbad5d_2.conda
+ sha256: f60d1671e30ac60598396c11fcec4426f7ddb281bf9e37af2262016b4d812cce
+ md5: 31117a80d73f4fac856ab09fd9f3c6b5
+ depends:
+ - libiconv >=1.17,<2.0a0
+ - libintl 0.22.5 h8fbad5d_2
+ license: GPL-3.0-or-later
+ license_family: GPL
+ size: 2482262
+ timestamp: 1712512901194
- kind: conda
name: gflags
version: 2.2.2
@@ -6750,233 +13044,233 @@ packages:
timestamp: 1594303828933
- kind: conda
name: gh
- version: 2.43.1
+ version: 2.49.0
build: h75b854d_0
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/gh-2.43.1-h75b854d_0.conda
- sha256: 34783d293ab1db89469faa156e0c8e28fd213fa1d2414fdaaa008f7e4e31b45e
- md5: 2fafc8df33219ebcc5a3eb69afef5f12
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/gh-2.49.0-h75b854d_0.conda
+ sha256: f634cb2d6f5cc94285412d42b2d04cde2d390f5e540c707e9e358f9803b16da9
+ md5: 785ed398d83bd0727f6669651ce56a7c
license: Apache-2.0
license_family: APACHE
- size: 16033884
- timestamp: 1706752975233
+ size: 19950575
+ timestamp: 1714499011950
- kind: conda
name: gh
- version: 2.43.1
+ version: 2.49.0
build: h990441c_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/gh-2.43.1-h990441c_0.conda
- sha256: 8087704d81711ea3e9254d84cab3cf560ac2e79a668e2e2f9d875f1053707e70
- md5: 620d1c108bc7f37c22102d181816eb19
+ url: https://conda.anaconda.org/conda-forge/osx-64/gh-2.49.0-h990441c_0.conda
+ sha256: d1411bab8990a557addd045a361e31df16f8a4948b24d731895705d68f7da71c
+ md5: 3add2535ff4344f0e99ea542169e60b2
constrains:
- __osx>=10.12
license: Apache-2.0
license_family: APACHE
- size: 16650708
- timestamp: 1706752915101
+ size: 20949413
+ timestamp: 1714498726545
- kind: conda
name: gh
- version: 2.43.1
+ version: 2.49.0
build: ha8f183a_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/gh-2.43.1-ha8f183a_0.conda
- sha256: f7a7918096362a9f197c1b043a6e1d524fc8e077be6797972be910b4482c7693
- md5: adaa9131473d962cc1521d2169d59c60
+ url: https://conda.anaconda.org/conda-forge/linux-64/gh-2.49.0-ha8f183a_0.conda
+ sha256: 12d32eb3ba24a3af16fa77fe013b9103d78723389b59303a96cb29c9dd4f849d
+ md5: 3db037ee8caaa9ed8d2d66273c7dfaac
license: Apache-2.0
license_family: APACHE
- size: 16858494
- timestamp: 1706752640334
+ size: 21214133
+ timestamp: 1714498514839
- kind: conda
name: gh
- version: 2.43.1
+ version: 2.49.0
build: hd02998f_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/gh-2.43.1-hd02998f_0.conda
- sha256: 210b5dc8dcf91a9d528922b0ed9697a75a332f6c501dc95b806ee0f1ee6eda10
- md5: 229cbf4b096a468d30085cb9eead7a20
+ url: https://conda.anaconda.org/conda-forge/win-64/gh-2.49.0-hd02998f_0.conda
+ sha256: fe7dfe52856b35725dcbddf299e50b227eb530007f3a9646d554cbe388396a7f
+ md5: 36896156ec4bfc85ab09257c6f81f4cb
license: Apache-2.0
license_family: APACHE
- size: 16789533
- timestamp: 1706753295429
+ size: 21160680
+ timestamp: 1714499125172
- kind: conda
name: giflib
- version: 5.2.1
- build: h0b41bf4_3
- build_number: 3
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/giflib-5.2.1-h0b41bf4_3.conda
- sha256: 41ec165704ccce2faa0437f4f53c03c06261a2cc9ff7614828e51427d9261f4b
- md5: 96f3b11872ef6fad973eac856cd2624f
- depends:
- - libgcc-ng >=12
+ version: 5.2.2
+ build: h10d778d_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/giflib-5.2.2-h10d778d_0.conda
+ sha256: 2c825df829097536314a195ae5cacaa8695209da6b4400135a65d8e23c008ff8
+ md5: 03e8c9b4d3da5f3d6eabdd020c2d63ac
license: MIT
license_family: MIT
- size: 77385
- timestamp: 1678717794467
+ size: 74516
+ timestamp: 1712692686914
- kind: conda
name: giflib
- version: 5.2.1
- build: h1a8c8d9_3
- build_number: 3
+ version: 5.2.2
+ build: h93a5062_0
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/giflib-5.2.1-h1a8c8d9_3.conda
- sha256: dbf1e431d3e5e03f8eeb77ec08a4c5d6d5d9af84dbef13d4365e397dd389beb8
- md5: f39a05d3dbb0e5024b7deabb2c0993f1
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/giflib-5.2.2-h93a5062_0.conda
+ sha256: 843b3f364ff844137e37d5c0a181f11f6d51adcedd216f019d074e5aa5d7e09c
+ md5: 95fa1486c77505330c20f7202492b913
license: MIT
license_family: MIT
- size: 71963
- timestamp: 1678718059849
+ size: 71613
+ timestamp: 1712692611426
- kind: conda
name: giflib
- version: 5.2.1
- build: hb7f2c08_3
- build_number: 3
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/giflib-5.2.1-hb7f2c08_3.conda
- sha256: 47515e0874bcf67e438e1d5d093b074c1781f055067195f0d00a7790a56d446d
- md5: aca150b0186836f893ebac79019e5498
+ version: 5.2.2
+ build: hd590300_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/giflib-5.2.2-hd590300_0.conda
+ sha256: aac402a8298f0c0cc528664249170372ef6b37ac39fdc92b40601a6aed1e32ff
+ md5: 3bf7b9fd5a7136126e0234db4b87c8b6
+ depends:
+ - libgcc-ng >=12
license: MIT
license_family: MIT
- size: 76514
- timestamp: 1678717973971
-- kind: conda
- name: glib
- version: 2.78.4
- build: h1059232_0
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/glib-2.78.4-h1059232_0.conda
- sha256: 4e80bcda21dc40f34eeb62cefc67d0b518c93b17b66218523271db542743c2de
- md5: 2f6ccb35c7f116c8c42ba24090878191
- depends:
- - gettext >=0.21.1,<1.0a0
- - glib-tools 2.78.4 h1059232_0
- - libcxx >=16
- - libglib 2.78.4 h1635a5e_0
- - libzlib >=1.2.13,<1.3.0a0
- - python *
- license: LGPL-2.1-or-later
- size: 487372
- timestamp: 1708286196601
+ size: 77248
+ timestamp: 1712692454246
- kind: conda
name: glib
- version: 2.78.4
- build: h12be248_0
+ version: 2.80.0
+ build: h39d0aa6_6
+ build_number: 6
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/glib-2.78.4-h12be248_0.conda
- sha256: 941aaf433be2b147738b4f2729008faa6639ed55b59381605f1cfb8d0dabac27
- md5: 0080f150ed83685497f841f4b70fca1f
+ url: https://conda.anaconda.org/conda-forge/win-64/glib-2.80.0-h39d0aa6_6.conda
+ sha256: 25b3e8930540cfbb87c03feda23cd412eb1b01fd903f46d1bd067f7d39d5941d
+ md5: a4036d0bc6f499ebe9fef7b887f3ca0f
depends:
- - gettext >=0.21.1,<1.0a0
- - glib-tools 2.78.4 h12be248_0
- - libglib 2.78.4 h16e383f_0
- - libzlib >=1.2.13,<1.3.0a0
+ - glib-tools 2.80.0 h0a98069_6
+ - libffi >=3.4,<4.0a0
+ - libglib 2.80.0 h39d0aa6_6
+ - libintl >=0.22.5,<1.0a0
+ - libintl-devel
- python *
- ucrt >=10.0.20348.0
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
license: LGPL-2.1-or-later
- size: 506268
- timestamp: 1708285308336
+ size: 572781
+ timestamp: 1713639879324
- kind: conda
name: glib
- version: 2.78.4
- build: h2d185b6_0
+ version: 2.80.0
+ build: h81c1438_6
+ build_number: 6
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/glib-2.78.4-h2d185b6_0.conda
- sha256: 546775c50a28dcbe22b784d6cc4e8ba3774aac59517858529742657b0563c326
- md5: 0383ef91e41caea857176363c2bf7387
+ url: https://conda.anaconda.org/conda-forge/osx-64/glib-2.80.0-h81c1438_6.conda
+ sha256: f366899fa0b89aff943859e6d025b9f33249db81dc584c824f206edf0f0c59f9
+ md5: 1ed2b7d4c342b05c36cf98b3c32483ad
depends:
- - gettext >=0.21.1,<1.0a0
- - glib-tools 2.78.4 h2d185b6_0
- - libcxx >=16
- - libglib 2.78.4 hab64008_0
- - libzlib >=1.2.13,<1.3.0a0
+ - glib-tools 2.80.0 h49a7eea_6
+ - libffi >=3.4,<4.0a0
+ - libglib 2.80.0 h81c1438_6
+ - libintl >=0.22.5,<1.0a0
+ - libintl-devel
- python *
license: LGPL-2.1-or-later
- size: 488242
- timestamp: 1708285214506
+ size: 588240
+ timestamp: 1713641923171
- kind: conda
name: glib
- version: 2.78.4
- build: hfc55251_0
+ version: 2.80.0
+ build: hf2295e7_6
+ build_number: 6
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/glib-2.78.4-hfc55251_0.conda
- sha256: 316c95dcbde46b7418d2b667a7e0c1d05101b673cd8c691d78d8699600a07a5b
- md5: f36a7b2420c3fc3c48a3d609841d8fee
+ url: https://conda.anaconda.org/conda-forge/linux-64/glib-2.80.0-hf2295e7_6.conda
+ sha256: 186e366c3a48c07830aa94dfc84616155bdfd08e9b73cb8e482c6ca84a550d3e
+ md5: a1e026a82a562b443845db5614ca568a
depends:
- - gettext >=0.21.1,<1.0a0
- - glib-tools 2.78.4 hfc55251_0
+ - glib-tools 2.80.0 hde27a5a_6
+ - libffi >=3.4,<4.0a0
- libgcc-ng >=12
- - libglib 2.78.4 h783c2da_0
- - libstdcxx-ng >=12
- - libzlib >=1.2.13,<1.3.0a0
+ - libglib 2.80.0 hf2295e7_6
- python *
license: LGPL-2.1-or-later
- size: 489127
- timestamp: 1708284952839
+ size: 597788
+ timestamp: 1713639483074
- kind: conda
- name: glib-tools
- version: 2.78.4
- build: h1059232_0
+ name: glib
+ version: 2.80.0
+ build: hfc324ee_6
+ build_number: 6
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/glib-tools-2.78.4-h1059232_0.conda
- sha256: f1632c489417ba8c15098efd9f74344069ca16979a3fb86fac6d5c4eb4525c3f
- md5: 101e7bcfcd49a513190a06f893053209
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/glib-2.80.0-hfc324ee_6.conda
+ sha256: 3d5a7b4c3818fbb0cca38854ed1287370bf1c1016a55d74ee400411d3af665df
+ md5: a857210c4d5cebb8172840d4669228b1
depends:
- - libcxx >=16
- - libglib 2.78.4 h1635a5e_0
- - libzlib >=1.2.13,<1.3.0a0
+ - glib-tools 2.80.0 hb9a4d99_6
+ - libffi >=3.4,<4.0a0
+ - libglib 2.80.0 hfc324ee_6
+ - libintl >=0.22.5,<1.0a0
+ - libintl-devel
+ - python *
license: LGPL-2.1-or-later
- size: 96889
- timestamp: 1708286050218
+ size: 583482
+ timestamp: 1713640051151
- kind: conda
name: glib-tools
- version: 2.78.4
- build: h12be248_0
+ version: 2.80.0
+ build: h0a98069_6
+ build_number: 6
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/glib-tools-2.78.4-h12be248_0.conda
- sha256: 936c16a45216916d3fecce9353953bac0dcf3e24cf4999d5cab7b7e601dd274c
- md5: 9e2a4c1cace3fbdeb11f20578484ddaf
+ url: https://conda.anaconda.org/conda-forge/win-64/glib-tools-2.80.0-h0a98069_6.conda
+ sha256: a7533a2e10fe95c8503e990da15933711843061e962450a1c7e753dc050f221b
+ md5: 40d452e4012c00f644b1dd6319fcdbcf
depends:
- - libglib 2.78.4 h16e383f_0
- - libzlib >=1.2.13,<1.3.0a0
+ - libglib 2.80.0 h39d0aa6_6
+ - libintl >=0.22.5,<1.0a0
- ucrt >=10.0.20348.0
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
license: LGPL-2.1-or-later
- size: 145970
- timestamp: 1708285241564
+ size: 94763
+ timestamp: 1713639812512
- kind: conda
name: glib-tools
- version: 2.78.4
- build: h2d185b6_0
+ version: 2.80.0
+ build: h49a7eea_6
+ build_number: 6
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/glib-tools-2.78.4-h2d185b6_0.conda
- sha256: bf3d98bd8a1e0b105d124468c3ca276194c1a06ddc4a9dc44a77df65c44f8eb8
- md5: f91cde30ad552c39b485bb5ad0ce454c
+ url: https://conda.anaconda.org/conda-forge/osx-64/glib-tools-2.80.0-h49a7eea_6.conda
+ sha256: 328245e045d91f8eb414028700fc274e9a80dafa454043ed235e0037d9ef25d5
+ md5: ee962dcc540a86ba912656c6dd737527
depends:
- - libcxx >=16
- - libglib 2.78.4 hab64008_0
- - libzlib >=1.2.13,<1.3.0a0
+ - libglib 2.80.0 h81c1438_6
+ - libintl >=0.22.5,<1.0a0
license: LGPL-2.1-or-later
- size: 97529
- timestamp: 1708285134585
+ size: 99226
+ timestamp: 1713641663154
- kind: conda
name: glib-tools
- version: 2.78.4
- build: hfc55251_0
+ version: 2.80.0
+ build: hb9a4d99_6
+ build_number: 6
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/glib-tools-2.80.0-hb9a4d99_6.conda
+ sha256: 8e52672af16603035242fe829a3b9fd00deb41f8c5e732c7ef4dd0b4344ceaed
+ md5: a53b4fffcdb673cce39404cc3556f8a3
+ depends:
+ - libglib 2.80.0 hfc324ee_6
+ - libintl >=0.22.5,<1.0a0
+ license: LGPL-2.1-or-later
+ size: 98590
+ timestamp: 1713639998716
+- kind: conda
+ name: glib-tools
+ version: 2.80.0
+ build: hde27a5a_6
+ build_number: 6
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/glib-tools-2.78.4-hfc55251_0.conda
- sha256: e94494b895f77ba54922ffb1dcfb7f1a987591b823eb5ce608afb2e2391d7d82
- md5: d184ba1bf15a2bbb3be6118c90fd487d
+ url: https://conda.anaconda.org/conda-forge/linux-64/glib-tools-2.80.0-hde27a5a_6.conda
+ sha256: fb63c92ba2b08aad574404c6229d45f12dc78309ff7a540f1e8d941a8a075074
+ md5: a9d23c02485c5cf055f9ac90eb9c9c63
depends:
- libgcc-ng >=12
- - libglib 2.78.4 h783c2da_0
- - libstdcxx-ng >=12
- - libzlib >=1.2.13,<1.3.0a0
+ - libglib 2.80.0 hf2295e7_6
license: LGPL-2.1-or-later
- size: 111383
- timestamp: 1708284914557
+ size: 113049
+ timestamp: 1713639447140
- kind: conda
name: glog
version: 0.7.0
@@ -7044,76 +13338,79 @@ packages:
- kind: conda
name: gmp
version: 6.3.0
- build: h59595ed_0
+ build: h59595ed_1
+ build_number: 1
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/gmp-6.3.0-h59595ed_0.conda
- sha256: 2a50495b6bbbacb03107ea0b752d8358d4a40b572d124a8cade068c147f344f5
- md5: 0e33ef437202db431aa5a928248cf2e8
+ url: https://conda.anaconda.org/conda-forge/linux-64/gmp-6.3.0-h59595ed_1.conda
+ sha256: cfc4202c23d6895d9c84042d08d5cda47d597772df870d4d2a10fc86dded5576
+ md5: e358c7c5f6824c272b5034b3816438a7
depends:
- libgcc-ng >=12
- libstdcxx-ng >=12
- license: GPL-2.0-or-later AND LGPL-3.0-or-later
- size: 563123
- timestamp: 1699629991732
+ license: GPL-2.0-or-later OR LGPL-3.0-or-later
+ size: 569852
+ timestamp: 1710169507479
- kind: conda
name: gmp
version: 6.3.0
- build: h93d8f39_0
+ build: h73e2aa4_1
+ build_number: 1
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/gmp-6.3.0-h93d8f39_0.conda
- sha256: 49443e6c41070e3967936c7f09b7686d3dd715f3351918c4edfd8072e1776013
- md5: a4ffd4bfd88659cbecbd36b61594bf0d
+ url: https://conda.anaconda.org/conda-forge/osx-64/gmp-6.3.0-h73e2aa4_1.conda
+ sha256: 1a5b117908deb5a12288aba84dd0cb913f779c31c75f5a57d1a00e659e8fa3d3
+ md5: 92f8d748d95d97f92fc26cfac9bb5b6e
depends:
- - __osx >=10.9
- - libcxx >=16.0.6
- license: GPL-2.0-or-later AND LGPL-3.0-or-later
- size: 520933
- timestamp: 1699630591994
+ - libcxx >=16
+ license: GPL-2.0-or-later OR LGPL-3.0-or-later
+ size: 519804
+ timestamp: 1710170159201
- kind: conda
name: gmp
version: 6.3.0
- build: h965bd2d_0
+ build: hebf3989_1
+ build_number: 1
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/gmp-6.3.0-h965bd2d_0.conda
- sha256: d13f09ba46dc4732a3513da76da2352b9a6b71376dc3ba8210bbf1ca0c2e51e3
- md5: bb8f17b25ebdb9d8819c2c5bf3ccb180
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/gmp-6.3.0-hebf3989_1.conda
+ sha256: 0ed5aff70675dc0ed5c2f39bb02b908b864e8eee4ceb56e1c798ba8d7509551f
+ md5: 64f45819921ba710398706e1a6404eb5
depends:
- - __osx >=10.9
- - libcxx >=16.0.6
- license: GPL-2.0-or-later AND LGPL-3.0-or-later
- size: 446486
- timestamp: 1699630529917
+ - libcxx >=16
+ license: GPL-2.0-or-later OR LGPL-3.0-or-later
+ size: 448714
+ timestamp: 1710169869298
- kind: conda
name: graphite2
version: 1.3.13
- build: h58526e2_1001
- build_number: 1001
+ build: h59595ed_1003
+ build_number: 1003
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/graphite2-1.3.13-h58526e2_1001.tar.bz2
- sha256: 65da967f3101b737b08222de6a6a14e20e480e7d523a5d1e19ace7b960b5d6b1
- md5: 8c54672728e8ec6aa6db90cf2806d220
+ url: https://conda.anaconda.org/conda-forge/linux-64/graphite2-1.3.13-h59595ed_1003.conda
+ sha256: 0595b009f20f8f60f13a6398e7cdcbd2acea5f986633adcf85f5a2283c992add
+ md5: f87c7b7c2cb45f323ffbce941c78ab7c
depends:
- - libgcc-ng >=7.5.0
- - libstdcxx-ng >=7.5.0
- license: LGPLv2
- size: 104701
- timestamp: 1604365484436
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
+ license: LGPL-2.0-or-later
+ license_family: LGPL
+ size: 96855
+ timestamp: 1711634169756
- kind: conda
name: griffe
- version: 0.41.0
+ version: 0.44.0
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/griffe-0.41.0-pyhd8ed1ab_0.conda
- sha256: 5e42932a18ccfeea89004c05ccfc6594ed3dfa86366babe4909e5914cdfa296f
- md5: b5ad72948e1e3ed0e4faef805c7223cc
+ url: https://conda.anaconda.org/conda-forge/noarch/griffe-0.44.0-pyhd8ed1ab_0.conda
+ sha256: 619c2a9c32f67747c9c4c5749526e78f494e621ca6f0d52be7775e18e6c4ecb4
+ md5: 53666db937372365c64dd3e619928335
depends:
+ - astunparse >=1.6
- colorama >=0.4
- python >=3.8
license: MIT
license_family: MIT
- size: 88556
- timestamp: 1708966811754
+ size: 91568
+ timestamp: 1713526334015
- kind: conda
name: gsl
version: '2.7'
@@ -7179,16 +13476,17 @@ packages:
timestamp: 1626369596591
- kind: conda
name: gst-plugins-base
- version: 1.22.9
- build: h001b923_0
+ version: 1.24.1
+ build: h001b923_2
+ build_number: 2
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/gst-plugins-base-1.22.9-h001b923_0.conda
- sha256: 509a67ce9ad9c6a992694a2ecfaff99a6aa9681a8ceab5dfa448b76cc686e887
- md5: 304b9124de13767ea8c933f72f50b348
+ url: https://conda.anaconda.org/conda-forge/win-64/gst-plugins-base-1.24.1-h001b923_2.conda
+ sha256: e5710147fe1c1b0daf20e0decfbbb1504877600fdc602c12a62713b5dc0e817c
+ md5: 03bbe386d95cdce0d6069b09ce1698af
depends:
- - gettext >=0.21.1,<1.0a0
- - gstreamer 1.22.9 hb4038d2_0
- - libglib >=2.78.3,<3.0a0
+ - gstreamer 1.24.1 hb4038d2_2
+ - libglib >=2.80.0,<3.0a0
+ - libintl >=0.22.5,<1.0a0
- libogg >=1.3.4,<1.4.0a0
- libvorbis >=1.3.7,<1.4.0a0
- libzlib >=1.2.13,<1.3.0a0
@@ -7196,160 +13494,158 @@ packages:
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
license: LGPL-2.0-or-later
- license_family: LGPL
- size: 2034401
- timestamp: 1706155374324
+ size: 2066034
+ timestamp: 1714679123942
- kind: conda
name: gst-plugins-base
- version: 1.22.9
- build: h09b4b5e_0
+ version: 1.24.1
+ build: h09b4b5e_2
+ build_number: 2
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/gst-plugins-base-1.22.9-h09b4b5e_0.conda
- sha256: 8856911ccef5b9829601b08f19c7353cd5b86c8e58e87d7eb30d0511a2e23689
- md5: de6c7944b3378db095218f0c76f0a054
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/gst-plugins-base-1.24.1-h09b4b5e_2.conda
+ sha256: 02fdb034f67f4324fd5d9e0f861b1f9fe389fd5ccd7831c339c241f749867d81
+ md5: 036af84cc3552dcebe470082bae7c264
depends:
- - gettext >=0.21.1,<1.0a0
- - gstreamer 1.22.9 h551c6ff_0
- - libcxx >=15
- - libglib >=2.78.3,<3.0a0
+ - gstreamer 1.24.1 h551c6ff_2
+ - libcxx >=16
+ - libglib >=2.80.0,<3.0a0
+ - libintl >=0.22.5,<1.0a0
- libogg >=1.3.4,<1.4.0a0
- libopus >=1.3.1,<2.0a0
- - libpng >=1.6.39,<1.7.0a0
+ - libpng >=1.6.43,<1.7.0a0
- libvorbis >=1.3.7,<1.4.0a0
- libzlib >=1.2.13,<1.3.0a0
license: LGPL-2.0-or-later
- license_family: LGPL
- size: 1917386
- timestamp: 1706155193009
+ size: 1963026
+ timestamp: 1714679040497
- kind: conda
name: gst-plugins-base
- version: 1.22.9
- build: h3fb38fc_0
+ version: 1.24.1
+ build: h12dd0d4_2
+ build_number: 2
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/gst-plugins-base-1.22.9-h3fb38fc_0.conda
- sha256: c633c837b6e24da03129144ac1ab5940f43035a639b39bb2a1b086ea2f025e8f
- md5: a0a4e1596c79cb67ba243e5e4dfd559f
+ url: https://conda.anaconda.org/conda-forge/osx-64/gst-plugins-base-1.24.1-h12dd0d4_2.conda
+ sha256: d92706e18ef6248d6732050538a149b5a82c7e61ee141dd5b8dcc9e85f4d1d9f
+ md5: d7c7f076bf91d67d65d634f422003f74
depends:
- - gettext >=0.21.1,<1.0a0
- - gstreamer 1.22.9 hf63bbb8_0
- - libcxx >=15
- - libglib >=2.78.3,<3.0a0
+ - gstreamer 1.24.1 h7c243d7_2
+ - libcxx >=16
+ - libglib >=2.80.0,<3.0a0
+ - libintl >=0.22.5,<1.0a0
- libogg >=1.3.4,<1.4.0a0
- libopus >=1.3.1,<2.0a0
- - libpng >=1.6.39,<1.7.0a0
+ - libpng >=1.6.43,<1.7.0a0
- libvorbis >=1.3.7,<1.4.0a0
- libzlib >=1.2.13,<1.3.0a0
license: LGPL-2.0-or-later
- license_family: LGPL
- size: 2344738
- timestamp: 1706155251056
+ size: 2407777
+ timestamp: 1714678839593
- kind: conda
name: gst-plugins-base
- version: 1.22.9
- build: h8e1006c_0
+ version: 1.24.1
+ build: hfa15dee_2
+ build_number: 2
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/gst-plugins-base-1.22.9-h8e1006c_0.conda
- sha256: a4312c96a670fdbf9ff0c3efd935e42fa4b655ff33dcc52c309b76a2afaf03f0
- md5: 614b81f8ed66c56b640faee7076ad14a
+ url: https://conda.anaconda.org/conda-forge/linux-64/gst-plugins-base-1.24.1-hfa15dee_2.conda
+ sha256: 619755008b457efd8c58dcdf05f4a4c216de4c99e641652a750c2035b8292951
+ md5: 5ff6ce5ae6e2591b13dd772ba84d8e86
depends:
- __glibc >=2.17,<3.0.a0
- - alsa-lib >=1.2.10,<1.3.0.0a0
- - gettext >=0.21.1,<1.0a0
- - gstreamer 1.22.9 h98fc4e7_0
- - libexpat >=2.5.0,<3.0a0
+ - alsa-lib >=1.2.11,<1.3.0a0
+ - gstreamer 1.24.1 h98fc4e7_2
+ - libexpat >=2.6.2,<3.0a0
- libgcc-ng >=12
- - libglib >=2.78.3,<3.0a0
+ - libglib >=2.80.0,<3.0a0
- libogg >=1.3.4,<1.4.0a0
- libopus >=1.3.1,<2.0a0
- - libpng >=1.6.39,<1.7.0a0
+ - libpng >=1.6.43,<1.7.0a0
- libstdcxx-ng >=12
- libvorbis >=1.3.7,<1.4.0a0
- libxcb >=1.15,<1.16.0a0
- libzlib >=1.2.13,<1.3.0a0
- - xorg-libx11 >=1.8.7,<2.0a0
+ - xorg-libx11 >=1.8.9,<2.0a0
- xorg-libxau >=1.0.11,<2.0a0
- xorg-libxext >=1.3.4,<2.0a0
- xorg-libxrender >=0.9.11,<0.10.0a0
license: LGPL-2.0-or-later
- license_family: LGPL
- size: 2709696
- timestamp: 1706154948546
+ size: 2787559
+ timestamp: 1714678437793
- kind: conda
name: gstreamer
- version: 1.22.9
- build: h551c6ff_0
+ version: 1.24.1
+ build: h551c6ff_2
+ build_number: 2
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/gstreamer-1.22.9-h551c6ff_0.conda
- sha256: 9c4944fe57ceddaf007abe4cec9a28486186bf25535ef176f089bc6cb24efe45
- md5: f5025efbcae14c20393d6e55eef2e1b4
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/gstreamer-1.24.1-h551c6ff_2.conda
+ sha256: 23ecb89d1014fa0de0def2b5bfb06bced23e5e7558a99b22d97e8d0ec15a3750
+ md5: b87e97a112745a7cf1eec0aea62f2173
depends:
- - gettext >=0.21.1,<1.0a0
- - glib >=2.78.3,<3.0a0
- - libcxx >=15
- - libglib >=2.78.3,<3.0a0
+ - glib >=2.80.0,<3.0a0
+ - libcxx >=16
+ - libglib >=2.80.0,<3.0a0
- libiconv >=1.17,<2.0a0
+ - libintl >=0.22.5,<1.0a0
license: LGPL-2.0-or-later
- license_family: LGPL
- size: 1344295
- timestamp: 1706154905073
+ size: 1349965
+ timestamp: 1714678666143
+- kind: conda
+ name: gstreamer
+ version: 1.24.1
+ build: h7c243d7_2
+ build_number: 2
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/gstreamer-1.24.1-h7c243d7_2.conda
+ sha256: 88bfd29eb568ac1cbfe14409ba1573bad99a58fb3bcac388803196e240630266
+ md5: 471aa7a42551f3e6182bee63afa636e6
+ depends:
+ - __osx >=10.9
+ - glib >=2.80.0,<3.0a0
+ - libcxx >=16
+ - libglib >=2.80.0,<3.0a0
+ - libiconv >=1.17,<2.0a0
+ - libintl >=0.22.5,<1.0a0
+ license: LGPL-2.0-or-later
+ size: 1810817
+ timestamp: 1714678477396
- kind: conda
name: gstreamer
- version: 1.22.9
- build: h98fc4e7_0
+ version: 1.24.1
+ build: h98fc4e7_2
+ build_number: 2
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/gstreamer-1.22.9-h98fc4e7_0.conda
- sha256: aa2395bf1790f72d2706bac77430f765ec1318ca22e60e791c13ae452c045263
- md5: bcc7157b06fce7f5e055402a8135dfd8
+ url: https://conda.anaconda.org/conda-forge/linux-64/gstreamer-1.24.1-h98fc4e7_2.conda
+ sha256: 90c9fd1f44a3a000f822d42122fcb6bf78be5ec1cdf5821f9dd38db1403a9cb0
+ md5: 3dc9f89a302e171e4361b75a7bef916f
depends:
- __glibc >=2.17,<3.0.a0
- - gettext >=0.21.1,<1.0a0
- - glib >=2.78.3,<3.0a0
+ - glib >=2.80.0,<3.0a0
- libgcc-ng >=12
- - libglib >=2.78.3,<3.0a0
+ - libglib >=2.80.0,<3.0a0
- libiconv >=1.17,<2.0a0
- libstdcxx-ng >=12
license: LGPL-2.0-or-later
- license_family: LGPL
- size: 1981554
- timestamp: 1706154826325
+ size: 2020162
+ timestamp: 1714678301278
- kind: conda
name: gstreamer
- version: 1.22.9
- build: hb4038d2_0
+ version: 1.24.1
+ build: hb4038d2_2
+ build_number: 2
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/gstreamer-1.22.9-hb4038d2_0.conda
- sha256: d2ba5248e1874608e6eb4e9d8f9a6af99c8395aec88696c4bfcc077e701d88f5
- md5: 0480eecdb44a71929d5e78bf1a8644fb
+ url: https://conda.anaconda.org/conda-forge/win-64/gstreamer-1.24.1-hb4038d2_2.conda
+ sha256: cbc822831fcf84b994e6e4f6fcb0492508405324e829b4b718b9fa78b41b080c
+ md5: 881e39a9b90dc6e6a31ba5ce44fca0ac
depends:
- - gettext >=0.21.1,<1.0a0
- - glib >=2.78.3,<3.0a0
- - libglib >=2.78.3,<3.0a0
+ - glib >=2.80.0,<3.0a0
+ - libglib >=2.80.0,<3.0a0
- libiconv >=1.17,<2.0a0
+ - libintl >=0.22.5,<1.0a0
- ucrt >=10.0.20348.0
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
license: LGPL-2.0-or-later
- license_family: LGPL
- size: 1930741
- timestamp: 1706155201555
-- kind: conda
- name: gstreamer
- version: 1.22.9
- build: hf63bbb8_0
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/gstreamer-1.22.9-hf63bbb8_0.conda
- sha256: be9d64972f997e1f865673cbb059a8c653f1fb38ff5e6c6a049699823bad0d9f
- md5: 1581bb03c4655191284a3eab9ee8690d
- depends:
- - gettext >=0.21.1,<1.0a0
- - glib >=2.78.3,<3.0a0
- - libcxx >=15
- - libglib >=2.78.3,<3.0a0
- - libiconv >=1.17,<2.0a0
- license: LGPL-2.0-or-later
- license_family: LGPL
- size: 1781693
- timestamp: 1706154946526
+ size: 2031181
+ timestamp: 1714678922367
- kind: conda
name: h11
version: 0.14.0
@@ -7385,33 +13681,33 @@ packages:
timestamp: 1634280590080
- kind: conda
name: harfbuzz
- version: 8.3.0
+ version: 8.4.0
build: h3d44ed6_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/harfbuzz-8.3.0-h3d44ed6_0.conda
- sha256: 4b55aea03b18a4084b750eee531ad978d4a3690f63019132c26c6ad26bbe3aed
- md5: 5a6f6c00ef982a9bc83558d9ac8f64a0
+ url: https://conda.anaconda.org/conda-forge/linux-64/harfbuzz-8.4.0-h3d44ed6_0.conda
+ sha256: d27441d53498f28a36a1612d8f767bae0418076e9c08dcd2cd511c8439d2fb4d
+ md5: 27f46291a6aaa3c2a4f798ebd35a7ddb
depends:
- cairo >=1.18.0,<2.0a0
- freetype >=2.12.1,<3.0a0
- graphite2
- icu >=73.2,<74.0a0
- libgcc-ng >=12
- - libglib >=2.78.1,<3.0a0
+ - libglib >=2.80.0,<3.0a0
- libstdcxx-ng >=12
license: MIT
license_family: MIT
- size: 1547473
- timestamp: 1699925311766
+ size: 1587652
+ timestamp: 1713957638950
- kind: conda
name: hatchling
- version: 1.21.1
+ version: 1.24.2
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.21.1-pyhd8ed1ab_0.conda
- sha256: ca648490ba47939ff43b880935a4968ea2b18d2c25281129185bb6b4aa7f1c9b
- md5: 06f93e43be153b8de3955bdf636cb0ef
+ url: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.24.2-pyhd8ed1ab_0.conda
+ sha256: 1161601871d8aa6c5ff7719a277462cdf0160351a88f2a84a22d6ead3b90150f
+ md5: 28cef29029f6da70e7a987a76a3599a4
depends:
- editables >=0.3
- importlib-metadata
@@ -7423,8 +13719,8 @@ packages:
- trove-classifiers
license: MIT
license_family: MIT
- size: 58374
- timestamp: 1706161223269
+ size: 63793
+ timestamp: 1713757830609
- kind: conda
name: hdf4
version: 4.2.15
@@ -7499,92 +13795,90 @@ packages:
- kind: conda
name: hdf5
version: 1.14.3
- build: nompi_h4f84152_100
- build_number: 100
+ build: nompi_h4f84152_101
+ build_number: 101
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/hdf5-1.14.3-nompi_h4f84152_100.conda
- sha256: b814f8f9598cc6e50127533ec256725183ba69db5fd8cf5443223627f19e3e59
- md5: d471a5c3abc984b662d9bae3bb7fd8a5
+ url: https://conda.anaconda.org/conda-forge/linux-64/hdf5-1.14.3-nompi_h4f84152_101.conda
+ sha256: e7d2591bc77d47e9f3fc57d94a817dc9385f4079d930a93475fe45aa2ba81d47
+ md5: 7e98860d08eea82c8057abd78864fcb4
depends:
- - libaec >=1.1.2,<2.0a0
- - libcurl >=8.4.0,<9.0a0
+ - libaec >=1.1.3,<2.0a0
+ - libcurl >=8.7.1,<9.0a0
- libgcc-ng >=12
- libgfortran-ng
- libgfortran5 >=12.3.0
- libstdcxx-ng >=12
- libzlib >=1.2.13,<1.3.0a0
- - openssl >=3.2.0,<4.0a0
- license: LicenseRef-HDF5
+ - openssl >=3.3.0,<4.0a0
+ license: BSD-3-Clause
license_family: BSD
- size: 3892189
- timestamp: 1701791599022
+ size: 3884115
+ timestamp: 1714575562551
- kind: conda
name: hdf5
version: 1.14.3
- build: nompi_h5bb55e9_100
- build_number: 100
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/hdf5-1.14.3-nompi_h5bb55e9_100.conda
- sha256: 22331a0ac71a4dd1868f05f8197c36815a41a9f2dcfd01b73ff0d87d9e0ea087
- md5: 120fefd1da806c4d708ecdfe31263f0c
+ build: nompi_h73e8ff5_101
+ build_number: 101
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/hdf5-1.14.3-nompi_h73e8ff5_101.conda
+ sha256: b4d50137e1f2f2b62e4da626ee64f9233457fef3de62c3a8dbd01f41cf2cebe4
+ md5: b746fce22796d2e2d8b37bdd45d12d78
depends:
- - __osx >=10.9
- - libaec >=1.1.2,<2.0a0
- - libcurl >=8.4.0,<9.0a0
- - libcxx >=16.0.6
- - libgfortran 5.*
- - libgfortran5 >=12.3.0
- - libgfortran5 >=13.2.0
+ - libaec >=1.1.3,<2.0a0
+ - libcurl >=8.7.1,<9.0a0
- libzlib >=1.2.13,<1.3.0a0
- - openssl >=3.2.0,<4.0a0
- license: LicenseRef-HDF5
+ - openssl >=3.3.0,<4.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: BSD-3-Clause
license_family: BSD
- size: 3454453
- timestamp: 1701791479858
+ size: 2041847
+ timestamp: 1714575202830
- kind: conda
name: hdf5
version: 1.14.3
- build: nompi_h691f4bf_100
- build_number: 100
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/hdf5-1.14.3-nompi_h691f4bf_100.conda
- sha256: 158dd2ab901659b47e8f7ee0ec1d9e45a1fedc4871391a44a1c8b9e8ba4c9c6b
- md5: 8e2ac4ae815a8c9743fe37d70f48f075
+ build: nompi_h751145d_101
+ build_number: 101
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/hdf5-1.14.3-nompi_h751145d_101.conda
+ sha256: a3dddabbcf7be15cf363b5583c0dcaaeedf688e864894cd0531b716627c7707f
+ md5: f5b2b516eb1eabe3897e9fc5f958f4af
depends:
- - __osx >=10.9
- - libaec >=1.1.2,<2.0a0
- - libcurl >=8.4.0,<9.0a0
- - libcxx >=16.0.6
+ - libaec >=1.1.3,<2.0a0
+ - libcurl >=8.7.1,<9.0a0
+ - libcxx >=16
- libgfortran 5.*
- libgfortran5 >=12.3.0
- libgfortran5 >=13.2.0
- libzlib >=1.2.13,<1.3.0a0
- - openssl >=3.2.0,<4.0a0
- license: LicenseRef-HDF5
+ - openssl >=3.3.0,<4.0a0
+ license: BSD-3-Clause
license_family: BSD
- size: 3720132
- timestamp: 1701792909005
+ size: 3460229
+ timestamp: 1714575369873
- kind: conda
name: hdf5
version: 1.14.3
- build: nompi_h73e8ff5_100
- build_number: 100
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/hdf5-1.14.3-nompi_h73e8ff5_100.conda
- sha256: 89bbb2c878e1b6c6073ef5f1f25eac97ed48393541a4a44a7d182da5ede3dc98
- md5: 1e91ce0f3a914b0dab762539c0df4ff1
+ build: nompi_hb512a33_101
+ build_number: 101
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/hdf5-1.14.3-nompi_hb512a33_101.conda
+ sha256: f3b120d80d47ae9d081d950ac4f568f806d62b40385e23fb743cf351596cbeb3
+ md5: d0138c4f90c0d206e0d8a7a8f7d2882e
depends:
- - libaec >=1.1.2,<2.0a0
- - libcurl >=8.4.0,<9.0a0
+ - libaec >=1.1.3,<2.0a0
+ - libcurl >=8.7.1,<9.0a0
+ - libcxx >=16
+ - libgfortran 5.*
+ - libgfortran5 >=12.3.0
+ - libgfortran5 >=13.2.0
- libzlib >=1.2.13,<1.3.0a0
- - openssl >=3.2.0,<4.0a0
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
- license: LicenseRef-HDF5
+ - openssl >=3.3.0,<4.0a0
+ license: BSD-3-Clause
license_family: BSD
- size: 2045774
- timestamp: 1701791365837
+ size: 3738247
+ timestamp: 1714576725695
- kind: conda
name: hpack
version: 4.0.0
@@ -7602,13 +13896,13 @@ packages:
timestamp: 1598856368685
- kind: conda
name: httpcore
- version: 1.0.4
+ version: 1.0.5
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/httpcore-1.0.4-pyhd8ed1ab_0.conda
- sha256: dec07ca00223d52433e7c20c71d5e645a7828b3e50206d855ad7a540869341f2
- md5: 20f047662cf4fa8b97836111df87dbb4
+ url: https://conda.anaconda.org/conda-forge/noarch/httpcore-1.0.5-pyhd8ed1ab_0.conda
+ sha256: 4025644200eefa0598e4600a66fd4804a57d9fd7054a5c8c45e508fd875e0b84
+ md5: a6b9a0158301e697e4d0a36a3d60e133
depends:
- anyio >=3.0,<5.0
- certifi
@@ -7618,8 +13912,8 @@ packages:
- sniffio 1.*
license: BSD-3-Clause
license_family: BSD
- size: 45727
- timestamp: 1708529429006
+ size: 45816
+ timestamp: 1711597091407
- kind: conda
name: httplib2
version: 0.22.0
@@ -7728,100 +14022,100 @@ packages:
timestamp: 1692901622519
- kind: conda
name: identify
- version: 2.5.35
+ version: 2.5.36
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/identify-2.5.35-pyhd8ed1ab_0.conda
- sha256: 971683b13d1b820157bef9993c63dd8b0611d2d60fc4b522da163aee2e70e518
- md5: 9472bfd206a2b7bb8143835e37667054
+ url: https://conda.anaconda.org/conda-forge/noarch/identify-2.5.36-pyhd8ed1ab_0.conda
+ sha256: dc98ab2233d3ed3692499e2a06b027489ee317658cef9277ec23cab00236f31c
+ md5: ba68cb5105760379432cebc82b45af40
depends:
- python >=3.6
- ukkonen
license: MIT
license_family: MIT
- size: 78364
- timestamp: 1708283690891
+ size: 78375
+ timestamp: 1713673091737
- kind: conda
name: idna
- version: '3.6'
+ version: '3.7'
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda
- sha256: 6ee4c986d69ce61e60a20b2459b6f2027baeba153f0a64995fd3cb47c2cc7e07
- md5: 1a76f09108576397c41c0b0c5bd84134
+ url: https://conda.anaconda.org/conda-forge/noarch/idna-3.7-pyhd8ed1ab_0.conda
+ sha256: 9687ee909ed46169395d4f99a0ee94b80a52f87bed69cd454bb6d37ffeb0ec7b
+ md5: c0cc1420498b17414d8617d0b9f506ca
depends:
- python >=3.6
license: BSD-3-Clause
license_family: BSD
- size: 50124
- timestamp: 1701027126206
+ size: 52718
+ timestamp: 1713279497047
- kind: conda
name: importlib-metadata
- version: 7.0.1
+ version: 7.1.0
build: pyha770c72_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.1-pyha770c72_0.conda
- sha256: e72d05f171f4567004c9360a838e9d5df21e23dcfeb945066b53a6e5f754b861
- md5: 746623a787e06191d80a2133e5daff17
+ url: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda
+ sha256: cc2e7d1f7f01cede30feafc1118b7aefa244d0a12224513734e24165ae12ba49
+ md5: 0896606848b2dc5cebdf111b6543aa04
depends:
- python >=3.8
- zipp >=0.5
license: Apache-2.0
license_family: APACHE
- size: 26450
- timestamp: 1703269427097
+ size: 27043
+ timestamp: 1710971498183
- kind: conda
name: importlib-resources
- version: 6.1.2
+ version: 6.4.0
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/importlib-resources-6.1.2-pyhd8ed1ab_0.conda
- sha256: d5673162e62c485b144e37576292b784afe2f5a07f80d740800553eff95804ab
- md5: c69b222e1a89945b80feb249d57d8949
+ url: https://conda.anaconda.org/conda-forge/noarch/importlib-resources-6.4.0-pyhd8ed1ab_0.conda
+ sha256: 38db827f445ae437a15d50a94816ae67a48285d0700f736af3eb90800a71f079
+ md5: dcbadab7a68738a028e195ab68ab2d2e
depends:
- - importlib_resources >=6.1.2,<6.1.3.0a0
+ - importlib_resources >=6.4.0,<6.4.1.0a0
- python >=3.8
license: Apache-2.0
license_family: APACHE
- size: 9779
- timestamp: 1708948635614
+ size: 9657
+ timestamp: 1711041029062
- kind: conda
name: importlib_metadata
- version: 7.0.1
+ version: 7.1.0
build: hd8ed1ab_0
subdir: noarch
noarch: generic
- url: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.1-hd8ed1ab_0.conda
- sha256: bc362df1d4f5a04c38dff29cd9c2d0ac584f9c4b45d3e4683ee090944a38fba4
- md5: 4a2f43a20fa404b998859c6a470ba316
+ url: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda
+ sha256: 01dc057a45dedcc742a71599f67c7383ae2bf873be6018ebcbd06ac8d994dedb
+ md5: 6ef2b72d291b39e479d7694efa2b2b98
depends:
- - importlib-metadata >=7.0.1,<7.0.2.0a0
+ - importlib-metadata >=7.1.0,<7.1.1.0a0
license: Apache-2.0
license_family: APACHE
- size: 9575
- timestamp: 1703269436329
+ size: 9444
+ timestamp: 1710971502542
- kind: conda
name: importlib_resources
- version: 6.1.2
+ version: 6.4.0
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.1.2-pyhd8ed1ab_0.conda
- sha256: 3c99dc57b761517d142ce3aff36b7c3a1b413bb62431e535cfb8b04e11911230
- md5: 6f4399795892835bd192ea210ca69447
+ url: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.4.0-pyhd8ed1ab_0.conda
+ sha256: c6ae80c0beaeabb342c5b041f19669992ae6e937dbec56ced766cb035900f9de
+ md5: c5d3907ad8bd7bf557521a1833cf7e6d
depends:
- python >=3.8
- zipp >=3.1.0
constrains:
- - importlib-resources >=6.1.2,<6.1.3.0a0
+ - importlib-resources >=6.4.0,<6.4.1.0a0
license: Apache-2.0
license_family: APACHE
- size: 30448
- timestamp: 1708948623752
+ size: 33056
+ timestamp: 1711041009039
- kind: conda
name: iniconfig
version: 2.0.0
@@ -7839,17 +14133,17 @@ packages:
timestamp: 1673103208955
- kind: conda
name: intel-openmp
- version: 2024.0.0
- build: h57928b3_49841
- build_number: 49841
+ version: 2024.1.0
+ build: h57928b3_965
+ build_number: 965
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/intel-openmp-2024.0.0-h57928b3_49841.conda
- sha256: 6ee8eb9080bb3268654e015dd17ad79d0c1ea98b2eee6b928ecd27f01d6b38e8
- md5: e3255c8cdaf1d52f15816d1970f9c77a
+ url: https://conda.anaconda.org/conda-forge/win-64/intel-openmp-2024.1.0-h57928b3_965.conda
+ sha256: 7b029e476ad6d401d645636ee3e4b40130bfcc9534f7415209dd5b666c6dd292
+ md5: c66eb2fd33b999ccc258aef85689758e
license: LicenseRef-ProprietaryIntel
license_family: Proprietary
- size: 2325424
- timestamp: 1706182537883
+ size: 1617555
+ timestamp: 1712943333029
- kind: conda
name: ipykernel
version: 6.29.3
@@ -7937,13 +14231,13 @@ packages:
timestamp: 1708996727913
- kind: conda
name: ipython
- version: 8.22.1
+ version: 8.22.2
build: pyh707e725_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/ipython-8.22.1-pyh707e725_0.conda
- sha256: a18d481fb2d395a7dc70ef698ea6585341baa0003a230331afd05cb75c0912b2
- md5: ae1a7c921e48dd420c6249fd6dab3799
+ url: https://conda.anaconda.org/conda-forge/noarch/ipython-8.22.2-pyh707e725_0.conda
+ sha256: 7740505317669f094c881537a643ed26977e209510965164d84942799c997d42
+ md5: f0abe827c8a7c6d91bccdf90cb1fbee3
depends:
- __unix
- decorator
@@ -7960,17 +14254,17 @@ packages:
- typing_extensions
license: BSD-3-Clause
license_family: BSD
- size: 593022
- timestamp: 1708707516445
+ size: 593746
+ timestamp: 1709559868257
- kind: conda
name: ipython
- version: 8.22.1
+ version: 8.22.2
build: pyh7428d3b_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/ipython-8.22.1-pyh7428d3b_0.conda
- sha256: 2ae42aa12a716d2a3423db66e446a49e8f0b573189e64c5944f54a57c54dbedf
- md5: d4537a97af56cf6e5d31a56e8d87345c
+ url: https://conda.anaconda.org/conda-forge/noarch/ipython-8.22.2-pyh7428d3b_0.conda
+ sha256: f7196ab6d5251505fd5b9c6ff63694eff09be7959a0a3421b8c2336638de9aaf
+ md5: f803d121b60dff8f4d8f9264b7c6e8bf
depends:
- __win
- colorama
@@ -7987,8 +14281,8 @@ packages:
- typing_extensions
license: BSD-3-Clause
license_family: BSD
- size: 593728
- timestamp: 1708708060777
+ size: 593699
+ timestamp: 1709560407504
- kind: conda
name: isoduration
version: 20.11.0
@@ -8007,20 +14301,54 @@ packages:
timestamp: 1638811664194
- kind: conda
name: jaraco.classes
- version: 3.3.1
+ version: 3.4.0
+ build: pyhd8ed1ab_1
+ build_number: 1
+ subdir: noarch
+ noarch: python
+ url: https://conda.anaconda.org/conda-forge/noarch/jaraco.classes-3.4.0-pyhd8ed1ab_1.conda
+ sha256: 538b1c6df537a36c63fd0ed83cb1c1c25b07d8d3b5e401991fdaff261a4b5b4d
+ md5: 7b756504d362cbad9b73a50a5455cafd
+ depends:
+ - more-itertools
+ - python >=3.8
+ license: MIT
+ license_family: MIT
+ size: 12223
+ timestamp: 1713939433204
+- kind: conda
+ name: jaraco.context
+ version: 5.3.0
+ build: pyhd8ed1ab_1
+ build_number: 1
+ subdir: noarch
+ noarch: python
+ url: https://conda.anaconda.org/conda-forge/noarch/jaraco.context-5.3.0-pyhd8ed1ab_1.conda
+ sha256: 9e2aeacb1aed3ab4fc5883a357e8a874e12f687af300f8708ec12de2995e17d2
+ md5: 72d7ad2dcd0f37eccb2ee35a1c8f6aaa
+ depends:
+ - backports.tarfile
+ - python >=3.8
+ license: MIT
+ license_family: MIT
+ size: 12456
+ timestamp: 1714372284922
+- kind: conda
+ name: jaraco.functools
+ version: 4.0.0
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/jaraco.classes-3.3.1-pyhd8ed1ab_0.conda
- sha256: 232b40de8176fa7fb66a893653f8ae03c29616e04a83dae5a47df94b74e256ca
- md5: c541ae264c9f1f21d83fc30dffb908ee
+ url: https://conda.anaconda.org/conda-forge/noarch/jaraco.functools-4.0.0-pyhd8ed1ab_0.conda
+ sha256: d2e866fd22a48eaa2f795b6a3b0bf16f066293322ce04dd65cca36267160ead6
+ md5: 547670a612fd335eaa5ffbf0fa75cb64
depends:
- more-itertools
- - python >=3.7
+ - python >=3.8
license: MIT
license_family: MIT
- size: 12069
- timestamp: 1707378260988
+ size: 15192
+ timestamp: 1701695329516
- kind: conda
name: jedi
version: 0.19.1
@@ -8070,20 +14398,19 @@ packages:
timestamp: 1704967140287
- kind: conda
name: joblib
- version: 1.3.2
+ version: 1.4.2
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda
- sha256: 31e05d47970d956206188480b038829d24ac11fe8216409d8584d93d40233878
- md5: 4da50d410f553db77e62ab62ffaa1abc
+ url: https://conda.anaconda.org/conda-forge/noarch/joblib-1.4.2-pyhd8ed1ab_0.conda
+ sha256: 8ad719524b1039510fcbd75eb776123189d75e2c09228189257ddbcab86f5b64
+ md5: 25df261d4523d9f9783bcdb7208d872f
depends:
- - python >=3.7
+ - python >=3.8
- setuptools
license: BSD-3-Clause
- license_family: BSD
- size: 221200
- timestamp: 1691577306309
+ size: 219731
+ timestamp: 1714665585214
- kind: conda
name: json-c
version: '0.17'
@@ -8124,67 +14451,51 @@ packages:
timestamp: 1691934144512
- kind: conda
name: json5
- version: 0.9.18
+ version: 0.9.25
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/json5-0.9.18-pyhd8ed1ab_0.conda
- sha256: 9ede308bacbf3cffb64fdaf0c1079b544b90bbd655ffbc199dbbc8b047237bc4
- md5: a6a37daa8c81ac787488b461cbef31e8
+ url: https://conda.anaconda.org/conda-forge/noarch/json5-0.9.25-pyhd8ed1ab_0.conda
+ sha256: 0c75e428970e8bb72ba1dd3a6dc32b8d68f6534b4fe16b38e53364963fdc8e38
+ md5: 5d8c241a9261e720a34a07a3e1ac4109
depends:
- python >=3.7,<4.0
license: Apache-2.0
license_family: APACHE
- size: 26332
- timestamp: 1709336167949
+ size: 27995
+ timestamp: 1712986338874
- kind: conda
name: jsonpointer
version: '2.4'
- build: py311h1ea47a8_3
+ build: py312h2e8e312_3
build_number: 3
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/jsonpointer-2.4-py311h1ea47a8_3.conda
- sha256: 13042586b08e8caa60615e7c42d05601f9421e8bda5df932e3ef9d2401bf2435
- md5: db8fc59f9215e668e602f769d0bf67bb
+ url: https://conda.anaconda.org/conda-forge/win-64/jsonpointer-2.4-py312h2e8e312_3.conda
+ sha256: 98d86d5ccb3a95da2cd96b394c157aa6fef0d4908b8878c3e2b5931f6bc5fd57
+ md5: 9d9572e257bf4559f20629efb0d3511d
depends:
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12.0rc3,<3.13.0a0
+ - python_abi 3.12.* *_cp312
license: BSD-3-Clause
license_family: BSD
- size: 34654
- timestamp: 1695397742357
+ size: 34602
+ timestamp: 1695397923441
- kind: conda
name: jsonpointer
version: '2.4'
- build: py311h38be061_3
+ build: py312h7900ff3_3
build_number: 3
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/jsonpointer-2.4-py311h38be061_3.conda
- sha256: 976f7bf3c3a49c3066f36b67c12ae06b31542e53b843bb4362f31c9e449c6c46
- md5: 41d52d822edf991bf0e6b08c1921a8ec
- depends:
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
- license: BSD-3-Clause
- license_family: BSD
- size: 18389
- timestamp: 1695397377176
-- kind: conda
- name: jsonpointer
- version: '2.4'
- build: py311h6eed73b_3
- build_number: 3
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/jsonpointer-2.4-py311h6eed73b_3.conda
- sha256: b0ba738e1dbf3b69558557cd1e63310364e045b8c8e7f73fdce7e71928b5f22a
- md5: ed1c23d0e55abd27d8b9e31c58105140
+ url: https://conda.anaconda.org/conda-forge/linux-64/jsonpointer-2.4-py312h7900ff3_3.conda
+ sha256: c211a79cff8aa001a6e14e923c37278231dca7f0970d8db155c4b9e48ac87a5a
+ md5: 50f62bdb9b60b13c2f6ae69957342e4d
depends:
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12.0rc3,<3.13.0a0
+ - python_abi 3.12.* *_cp312
license: BSD-3-Clause
license_family: BSD
- size: 18557
- timestamp: 1695397765266
+ size: 18033
+ timestamp: 1695397448370
- kind: conda
name: jsonpointer
version: '2.4'
@@ -8202,15 +14513,31 @@ packages:
license_family: BSD
size: 18542
timestamp: 1695397720755
+- kind: conda
+ name: jsonpointer
+ version: '2.4'
+ build: py312hb401068_3
+ build_number: 3
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/jsonpointer-2.4-py312hb401068_3.conda
+ sha256: 883f6d635e58f49359f393e853e4e0043731fb0ce671283a2024db02a1ebc8f6
+ md5: 637aa8f6c1c61f659f1496e9b2dc7552
+ depends:
+ - python >=3.12.0rc3,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 18184
+ timestamp: 1695397820416
- kind: conda
name: jsonschema
- version: 4.21.1
+ version: 4.22.0
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.21.1-pyhd8ed1ab_0.conda
- sha256: c5c1b4e08e91fdd697289015be1a176409b4e63942899a43b276f1f250be8129
- md5: 8a3a3d01629da20befa340919e3dd2c4
+ url: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.22.0-pyhd8ed1ab_0.conda
+ sha256: 57a466e8c42635d8e930fa065dc6e461f4215aa259ab03873eacb03ddaeefc8a
+ md5: b9661a4b1200d6bc7d8a4cdafdc91468
depends:
- attrs >=22.2.0
- importlib_resources >=1.4.0
@@ -8220,9 +14547,8 @@ packages:
- referencing >=0.28.4
- rpds-py >=0.7.1
license: MIT
- license_family: MIT
- size: 72817
- timestamp: 1705707712082
+ size: 74149
+ timestamp: 1714573245148
- kind: conda
name: jsonschema-specifications
version: 2023.12.1
@@ -8242,116 +14568,115 @@ packages:
timestamp: 1703778502971
- kind: conda
name: jsonschema-with-format-nongpl
- version: 4.21.1
+ version: 4.22.0
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/jsonschema-with-format-nongpl-4.21.1-pyhd8ed1ab_0.conda
- sha256: 6e458c325c097956ac4605ef386f0d67bad5223041cedd66819892988b72f83a
- md5: 26bce4b5405738c09304d4f4796b2c2a
+ url: https://conda.anaconda.org/conda-forge/noarch/jsonschema-with-format-nongpl-4.22.0-pyhd8ed1ab_0.conda
+ sha256: 3c98d791bebd477597fe083b3cec35132ac974c61ba1e481dc6c29fac78b419d
+ md5: 32ab666927ee17b9468c2c72bbd7ba1b
depends:
- fqdn
- idna
- isoduration
- jsonpointer >1.13
- - jsonschema >=4.21.1,<4.21.2.0a0
+ - jsonschema >=4.22.0,<4.22.1.0a0
- python
- rfc3339-validator
- rfc3986-validator >0.1.0
- uri-template
- webcolors >=1.11
license: MIT
- license_family: MIT
- size: 7452
- timestamp: 1705707742938
+ size: 7441
+ timestamp: 1714573279350
- kind: conda
name: juliaup
- version: 1.13.0
+ version: 1.14.7
build: h67a62a2_0
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/juliaup-1.13.0-h67a62a2_0.conda
- sha256: d38262639d9c40fd3078cd263ac4b592451f27405a31d67df058f4d6e34d0b19
- md5: 7625255395624b0c93f77266d1dbd18e
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/juliaup-1.14.7-h67a62a2_0.conda
+ sha256: ab533c4b87f2e9c0d4cc085828fd40e5edba27bc732a8e672485c309adde8c90
+ md5: 591cd935e82adfa28f8fa51fade68cd7
depends:
- __osx >=11.0
constrains:
- __osx >=11.0
license: MIT
license_family: MIT
- size: 2127788
- timestamp: 1706564824739
+ size: 2181928
+ timestamp: 1711139346144
- kind: conda
name: juliaup
- version: 1.13.0
+ version: 1.14.7
build: h975169c_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/juliaup-1.13.0-h975169c_0.conda
- sha256: a14b9856b9c2f6ffd40d1b538dc1539b5e3058710df7c3c8fd8d837d2d43b1eb
- md5: 78c45d1f9c8f0f4e563802d46db11ec0
+ url: https://conda.anaconda.org/conda-forge/win-64/juliaup-1.14.7-h975169c_0.conda
+ sha256: 94f128dafe112ee7212cb257ceeaa04796c920dda60c5557de2493e8d724fc7a
+ md5: 2f1a5eb8bc97890c891bf94342d1c7ba
depends:
- ucrt >=10.0.20348.0
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
license: MIT
license_family: MIT
- size: 1391312
- timestamp: 1706565757417
+ size: 1480648
+ timestamp: 1711139515938
- kind: conda
name: juliaup
- version: 1.13.0
+ version: 1.14.7
build: he8a937b_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/juliaup-1.13.0-he8a937b_0.conda
- sha256: 7eec8c76b948ff51cfdb03e4d0d5303dba913b929de8173dc2df1ad5f8900cee
- md5: 36f632298719dd4b37d57cca4ebd2ead
+ url: https://conda.anaconda.org/conda-forge/linux-64/juliaup-1.14.7-he8a937b_0.conda
+ sha256: aeceaef96c9bff58cec324f4266d0a81137df2dbe0884ab6c2aa71847d8b0fe8
+ md5: 3994d5329948d26cc994e9501aba9d31
depends:
- libgcc-ng >=12
license: MIT
license_family: MIT
- size: 3859930
- timestamp: 1706564340550
+ size: 3972578
+ timestamp: 1711138639418
- kind: conda
name: juliaup
- version: 1.13.0
+ version: 1.14.7
build: hf4330d5_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/juliaup-1.13.0-hf4330d5_0.conda
- sha256: 81b1271be7f7c22b47d8b3dbfc959434087be1ff357cd4c9bf4a0bbf90fa60e1
- md5: 1bc86f6ebb96981962e52b6d42a09616
+ url: https://conda.anaconda.org/conda-forge/osx-64/juliaup-1.14.7-hf4330d5_0.conda
+ sha256: 9d9c5655af4b028baa425402d29d5ff5c553317d671bfaf01fee7ffaa3affde3
+ md5: f5cc6d64ade1fa88cbe2eaa553b4798c
depends:
- __osx >=10.15
constrains:
- __osx >=10.12
license: MIT
license_family: MIT
- size: 2183774
- timestamp: 1706564964770
+ size: 2249558
+ timestamp: 1711139417930
- kind: conda
name: jupyter-lsp
- version: 2.2.3
+ version: 2.2.5
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/jupyter-lsp-2.2.3-pyhd8ed1ab_0.conda
- sha256: addac479dff3431131e1f4be352779bd4a6802b6f01f762db3dd276af02e3d7b
- md5: 109a271f538a41ff46e9033fdd71c335
+ url: https://conda.anaconda.org/conda-forge/noarch/jupyter-lsp-2.2.5-pyhd8ed1ab_0.conda
+ sha256: 2151c2c63e0442a4c69ee0ad8a634195eedab10b7b74c0ec8266471842239a93
+ md5: 885867f6adab3d7ecdf8ab6ca0785f51
depends:
- importlib-metadata >=4.8.3
- jupyter_server >=1.1.2
- python >=3.8
license: BSD-3-Clause
license_family: BSD
- size: 55376
- timestamp: 1708990564893
+ size: 55539
+ timestamp: 1712707521811
- kind: conda
name: jupyter_client
- version: 8.6.0
+ version: 8.6.1
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/jupyter_client-8.6.0-pyhd8ed1ab_0.conda
- sha256: 86cbb9070862cf23a245451efce539ca214e610849d0950bb8ac90c545bd158d
- md5: 6bd3f1069cdebb44c7ae9efb900e312d
+ url: https://conda.anaconda.org/conda-forge/noarch/jupyter_client-8.6.1-pyhd8ed1ab_0.conda
+ sha256: c7d10d7941fd2e61480e49d3b2b21a530af4ae4b0d449a1746a72a38bacb63e2
+ md5: c03972cfce69ad913d520c652e5ed908
depends:
- importlib_metadata >=4.8.3
- jupyter_core >=4.12,!=5.0.*
@@ -8362,87 +14687,87 @@ packages:
- traitlets >=5.3
license: BSD-3-Clause
license_family: BSD
- size: 105838
- timestamp: 1699284056169
+ size: 106042
+ timestamp: 1710255955150
- kind: conda
name: jupyter_core
- version: 5.7.1
- build: py311h1ea47a8_0
+ version: 5.7.2
+ build: py312h2e8e312_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/jupyter_core-5.7.1-py311h1ea47a8_0.conda
- sha256: b46d51e3a79772ea038bd1902540472c75255be3bc32ef0299c25b2202759330
- md5: 35203ed9825f536e070fa6cbf8ffe2f1
+ url: https://conda.anaconda.org/conda-forge/win-64/jupyter_core-5.7.2-py312h2e8e312_0.conda
+ sha256: bf2a315febec297e05fa77e39bd371d53553bd1c347e495ac34198fec18afb11
+ md5: 3ed5c1981d05f125696f392407d36ce2
depends:
- platformdirs >=2.5
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
- pywin32 >=300
- traitlets >=5.3
license: BSD-3-Clause
license_family: BSD
- size: 112220
- timestamp: 1704727783199
+ size: 109880
+ timestamp: 1710257719549
- kind: conda
name: jupyter_core
- version: 5.7.1
- build: py311h38be061_0
+ version: 5.7.2
+ build: py312h7900ff3_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/jupyter_core-5.7.1-py311h38be061_0.conda
- sha256: fcfaa3875882ff564e1ea40d8a0d9b615d1f7782bf197c94983da9538e2e30fe
- md5: 175a430872841f7c351879f4c4c85b9e
+ url: https://conda.anaconda.org/conda-forge/linux-64/jupyter_core-5.7.2-py312h7900ff3_0.conda
+ sha256: 22a6259c2b139191c76ed7633d1865757b3c15007989f6c74304a80f28e5a262
+ md5: eee5a2e3465220ed87196bbb5665f420
depends:
- platformdirs >=2.5
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
- traitlets >=5.3
license: BSD-3-Clause
license_family: BSD
- size: 94700
- timestamp: 1704727234663
+ size: 92843
+ timestamp: 1710257533875
- kind: conda
name: jupyter_core
- version: 5.7.1
- build: py311h6eed73b_0
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/jupyter_core-5.7.1-py311h6eed73b_0.conda
- sha256: f86209d1e2bc1a0e8133c3ca7e5f8296a0ca2bf25c2c16689805c487363bd304
- md5: dba0081b62395e6a79a63d26d75da2b3
+ version: 5.7.2
+ build: py312h81bd7bf_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/jupyter_core-5.7.2-py312h81bd7bf_0.conda
+ sha256: 5ab0e75a30915d34ae27b4a76f1241c2f4cc4419b6b1c838cc1160b9ec8bfaf5
+ md5: 209b9cb7159212afce5e16d7a3ee3b47
depends:
- platformdirs >=2.5
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12,<3.13.0a0
+ - python >=3.12,<3.13.0a0 *_cpython
+ - python_abi 3.12.* *_cp312
- traitlets >=5.3
license: BSD-3-Clause
license_family: BSD
- size: 95766
- timestamp: 1704727391161
+ size: 93829
+ timestamp: 1710257916303
- kind: conda
name: jupyter_core
- version: 5.7.1
- build: py312h81bd7bf_0
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/jupyter_core-5.7.1-py312h81bd7bf_0.conda
- sha256: 56e3b3527364b8065a178112c146f07a59106eefe0a73f6cfaac38ea0f93eec8
- md5: 64dc06b5c9b1ff20ad9afcf00f588cfc
+ version: 5.7.2
+ build: py312hb401068_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/jupyter_core-5.7.2-py312hb401068_0.conda
+ sha256: 3e57d1eaf22c793711367335f9f8b647c011b64a95bfc796b50967a4b2ae27c2
+ md5: a205e28ce7ab71773dcaaf94f6418612
depends:
- platformdirs >=2.5
- python >=3.12,<3.13.0a0
- - python >=3.12,<3.13.0a0 *_cpython
- python_abi 3.12.* *_cp312
- traitlets >=5.3
license: BSD-3-Clause
license_family: BSD
- size: 92987
- timestamp: 1704727587406
+ size: 92679
+ timestamp: 1710257658978
- kind: conda
name: jupyter_events
- version: 0.9.0
+ version: 0.10.0
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/jupyter_events-0.9.0-pyhd8ed1ab_0.conda
- sha256: 713f0cc927a862862a6d35bfb29c4114f987e4f59e2a8a14f71f23fcd7edfec3
- md5: 00ba25993f0dba38cf72a7224e33289f
+ url: https://conda.anaconda.org/conda-forge/noarch/jupyter_events-0.10.0-pyhd8ed1ab_0.conda
+ sha256: cd3f41dc093162a41d4bae171e40a1b9b115c4d488e9bb837a8fa9d084931fb9
+ md5: ed45423c41b3da15ea1df39b1f80c2ca
depends:
- jsonschema-with-format-nongpl >=4.18.0
- python >=3.8
@@ -8454,17 +14779,17 @@ packages:
- traitlets >=5.3
license: BSD-3-Clause
license_family: BSD
- size: 21354
- timestamp: 1699286038042
+ size: 21475
+ timestamp: 1710805759187
- kind: conda
name: jupyter_server
- version: 2.12.5
+ version: 2.14.0
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/jupyter_server-2.12.5-pyhd8ed1ab_0.conda
- sha256: 43dcd238c656c7ecf3228be8735def530cad5181f990c042ba202b9e383d2b1f
- md5: 755177a956fa6dd90d5cfcbbb5084de2
+ url: https://conda.anaconda.org/conda-forge/noarch/jupyter_server-2.14.0-pyhd8ed1ab_0.conda
+ sha256: 719be928812cd582713f96d0681a91890cf9d0e5fcb9d2e4ef4b09fc3ab4df4c
+ md5: b82b9798563dea0cd8e4e3074227f04c
depends:
- anyio >=3.1.0
- argon2-cffi
@@ -8487,54 +14812,54 @@ packages:
- websocket-client
license: BSD-3-Clause
license_family: BSD
- size: 320177
- timestamp: 1705418316315
+ size: 324713
+ timestamp: 1712884350803
- kind: conda
name: jupyter_server_terminals
- version: 0.5.2
+ version: 0.5.3
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/jupyter_server_terminals-0.5.2-pyhd8ed1ab_0.conda
- sha256: a625150744fdffb646fb4451edc68b3eff56eeace4e86b83dc4a860479c9857c
- md5: a0152d13c9deb13639fc84df884d50b6
+ url: https://conda.anaconda.org/conda-forge/noarch/jupyter_server_terminals-0.5.3-pyhd8ed1ab_0.conda
+ sha256: 038efbc7e4b2e72d49ed193cfb2bbbe9fbab2459786ce9350301f466a32567db
+ md5: 219b3833aa8ed91d47d1be6ca03f30be
depends:
- python >=3.8
- terminado >=0.8.3
license: BSD-3-Clause
license_family: BSD
- size: 19876
- timestamp: 1706006876397
+ size: 19818
+ timestamp: 1710262791393
- kind: conda
name: jupyterlab
- version: 4.1.2
+ version: 4.1.8
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/jupyterlab-4.1.2-pyhd8ed1ab_0.conda
- sha256: d4be2239d93c7db7db911b0e992bde6110f50cd705c23ac7e43483ded90a57ed
- md5: ffcabe653273b2b81a30c82d625bd5e8
+ url: https://conda.anaconda.org/conda-forge/noarch/jupyterlab-4.1.8-pyhd8ed1ab_0.conda
+ sha256: 0f5f9abaa30560af1523d70e1a236b18f18a88627b91376cbdd3c27cc1ac5d9f
+ md5: 1116781efc9fd1654a9da329d5d3ba26
depends:
- async-lru >=1.0.0
- httpx >=0.25.0
- importlib_metadata >=4.8.3
- importlib_resources >=1.4
- - ipykernel
+ - ipykernel >=6.5.0
- jinja2 >=3.0.3
- jupyter-lsp >=2.0.0
- jupyter_core
- jupyter_server >=2.4.0,<3
- - jupyterlab_server >=2.19.0,<3
+ - jupyterlab_server >=2.27.1,<3
- notebook-shim >=0.2
- packaging
- python >=3.8
- - tomli
+ - tomli >=1.2.2
- tornado >=6.2.0
- traitlets
license: BSD-3-Clause
license_family: BSD
- size: 7275619
- timestamp: 1708384799079
+ size: 7623856
+ timestamp: 1714169414542
- kind: conda
name: jupyterlab_pygments
version: 0.3.0
@@ -8556,13 +14881,13 @@ packages:
timestamp: 1707149279640
- kind: conda
name: jupyterlab_server
- version: 2.25.3
+ version: 2.27.1
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_server-2.25.3-pyhd8ed1ab_0.conda
- sha256: 30269e4ab0e67935b15b012e5e97f5c5c72111d0f02e03b3c644e556fe1a5275
- md5: 78f28bcd22aadca6ec8eaff4319e6610
+ url: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_server-2.27.1-pyhd8ed1ab_0.conda
+ sha256: 64d7713782482a28fedd590537ff8edd737a2c736c8384366fb20a83273d233c
+ md5: d97923b777ce837cf67e7858ac600834
depends:
- babel >=2.10
- importlib-metadata >=4.8.3
@@ -8577,8 +14902,8 @@ packages:
- openapi-core >=0.18.0,<0.19.0
license: BSD-3-Clause
license_family: BSD
- size: 48789
- timestamp: 1707957935382
+ size: 49223
+ timestamp: 1713899139823
- kind: conda
name: kealib
version: 1.5.3
@@ -8643,76 +14968,87 @@ packages:
size: 133421
timestamp: 1703116732437
- kind: conda
- name: keyring
- version: 24.3.1
- build: py311h1ea47a8_0
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/keyring-24.3.1-py311h1ea47a8_0.conda
- sha256: 485ceda4355ce1a46a447cf5204b1abd7e0e658960d22d9e0be73813bbbb8195
- md5: db08d7c7dcc18062bf25c65d72db14ee
- depends:
- - importlib_metadata >=4.11.4
- - jaraco.classes
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
- - pywin32-ctypes >=0.2.0
- license: MIT
- license_family: MIT
- size: 94766
- timestamp: 1709130246198
+ name: kernel-headers_linux-64
+ version: 2.6.32
+ build: he073ed8_17
+ build_number: 17
+ subdir: noarch
+ noarch: generic
+ url: https://conda.anaconda.org/conda-forge/noarch/kernel-headers_linux-64-2.6.32-he073ed8_17.conda
+ sha256: fb39d64b48f3d9d1acc3df208911a41f25b6a00bd54935d5973b4739a9edd5b6
+ md5: d731b543793afc0433c4fd593e693fce
+ constrains:
+ - sysroot_linux-64 ==2.12
+ license: LGPL-2.0-or-later AND LGPL-2.0-or-later WITH exceptions AND GPL-2.0-or-later AND MPL-2.0
+ license_family: GPL
+ size: 710627
+ timestamp: 1708000830116
- kind: conda
name: keyring
- version: 24.3.1
- build: py311h38be061_0
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/keyring-24.3.1-py311h38be061_0.conda
- sha256: 9a818c8e26df6e5a6efce101c1836baa4141cd6e09c8913157727cc8e5c073a9
- md5: 0cd643c771fd81eec082cca79e52e08f
+ version: 25.2.0
+ build: pyh534df25_0
+ subdir: noarch
+ noarch: python
+ url: https://conda.anaconda.org/conda-forge/noarch/keyring-25.2.0-pyh534df25_0.conda
+ sha256: 29ffedc5e90f850a66007174f3785eb6a322a93cc6df9e8c9a7646f7761c694a
+ md5: acaf59f096327bc5757c91303cae99ca
depends:
+ - __osx
- importlib_metadata >=4.11.4
+ - importlib_resources
- jaraco.classes
- - jeepney >=0.4.2
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
- - secretstorage >=3.2
+ - jaraco.context
+ - jaraco.functools
+ - python >=3.8
license: MIT
license_family: MIT
- size: 77788
- timestamp: 1709129798386
+ size: 36710
+ timestamp: 1714167932993
- kind: conda
name: keyring
- version: 24.3.1
- build: py311h6eed73b_0
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/keyring-24.3.1-py311h6eed73b_0.conda
- sha256: e5c23981021f38b4673a24d8ff7867467d2001f4829f39c48eb7d0c12adac282
- md5: 3fde81a6b98eecf036431a6976037c5d
+ version: 25.2.0
+ build: pyh7428d3b_0
+ subdir: noarch
+ noarch: python
+ url: https://conda.anaconda.org/conda-forge/noarch/keyring-25.2.0-pyh7428d3b_0.conda
+ sha256: 2655d685a0ebcb664a136eb1a967ad0fe010f9f3370e39fff054ad742300ec75
+ md5: 33f009280144917e907939141af7cf7c
depends:
+ - __win
- importlib_metadata >=4.11.4
+ - importlib_resources
- jaraco.classes
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - jaraco.context
+ - jaraco.functools
+ - python >=3.8
+ - pywin32-ctypes >=0.2.0
license: MIT
license_family: MIT
- size: 78199
- timestamp: 1709130181735
+ size: 36851
+ timestamp: 1714168221572
- kind: conda
name: keyring
- version: 24.3.1
- build: py312h81bd7bf_0
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/keyring-24.3.1-py312h81bd7bf_0.conda
- sha256: 1df0e080d771a7c6fc5be24907dd1e46ce64ba423127d4945730a8ccc5b04e6c
- md5: 90a5d7caf1fdb91bb763ccb7c6a54966
+ version: 25.2.0
+ build: pyha804496_0
+ subdir: noarch
+ noarch: python
+ url: https://conda.anaconda.org/conda-forge/noarch/keyring-25.2.0-pyha804496_0.conda
+ sha256: 3a6dc8525071aa1016b81d24ee3845a2c26280b863392d7551b40a6c8d0f60c0
+ md5: 7a14341f0ed09e83e28b28140f058ae0
depends:
+ - __linux
+ - importlib_metadata >=4.11.4
+ - importlib_resources
- jaraco.classes
- - python >=3.12,<3.13.0a0
- - python >=3.12,<3.13.0a0 *_cpython
- - python_abi 3.12.* *_cp312
+ - jaraco.context
+ - jaraco.functools
+ - jeepney >=0.4.2
+ - python >=3.8
+ - secretstorage >=3.2
license: MIT
license_family: MIT
- size: 76775
- timestamp: 1709130164881
+ size: 36608
+ timestamp: 1714167807674
- kind: conda
name: keyutils
version: 1.6.1
@@ -8766,6 +15102,78 @@ packages:
license_family: APACHE
size: 73697
timestamp: 1681919957439
+- kind: conda
+ name: kiwisolver
+ version: 1.4.5
+ build: py310h232114e_1
+ build_number: 1
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/kiwisolver-1.4.5-py310h232114e_1.conda
+ sha256: 8969469887a0b72f732ec9250fd25982499270bda473a5db4c04ee252db96d89
+ md5: a340ed8a9c513e2782cb7feb3cfe665d
+ depends:
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 55587
+ timestamp: 1695380469062
+- kind: conda
+ name: kiwisolver
+ version: 1.4.5
+ build: py310h38f39d4_1
+ build_number: 1
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/kiwisolver-1.4.5-py310h38f39d4_1.conda
+ sha256: e84793b3bef7e5d92f96c511a06dc9cbcc49424995777595365c654effe67d6f
+ md5: 84392f391faad11ea910f38226590a88
+ depends:
+ - libcxx >=15.0.7
+ - python >=3.10,<3.11.0a0
+ - python >=3.10,<3.11.0a0 *_cpython
+ - python_abi 3.10.* *_cp310
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 62043
+ timestamp: 1695380329047
+- kind: conda
+ name: kiwisolver
+ version: 1.4.5
+ build: py310h88cfcbd_1
+ build_number: 1
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/kiwisolver-1.4.5-py310h88cfcbd_1.conda
+ sha256: ccd88bcb67f0cc8b68ed320039d58701da125de0579680d7d2ffe7857b872613
+ md5: cb1db728c5e65918e30b65f9652a3458
+ depends:
+ - libcxx >=15.0.7
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 60432
+ timestamp: 1695380318538
+- kind: conda
+ name: kiwisolver
+ version: 1.4.5
+ build: py310hd41b1e2_1
+ build_number: 1
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/kiwisolver-1.4.5-py310hd41b1e2_1.conda
+ sha256: bb51906639bced3de1d4d7740ac284cdaa89e2f22e0b1ec796378b090b0648ba
+ md5: b8d67603d43b23ce7e988a5d81a7ab79
+ depends:
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 73123
+ timestamp: 1695380074542
- kind: conda
name: kiwisolver
version: 1.4.5
@@ -8820,6 +15228,43 @@ packages:
license_family: BSD
size: 73273
timestamp: 1695380140676
+- kind: conda
+ name: kiwisolver
+ version: 1.4.5
+ build: py311he4fd1f5_1
+ build_number: 1
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/kiwisolver-1.4.5-py311he4fd1f5_1.conda
+ sha256: 907af50734789d47b3e8b2148dde763699dc746c64e5849baf6bd720c8cd0235
+ md5: 4c871d65040b8c7bbb914df7f8f11492
+ depends:
+ - libcxx >=15.0.7
+ - python >=3.11,<3.12.0a0
+ - python >=3.11,<3.12.0a0 *_cpython
+ - python_abi 3.11.* *_cp311
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 61946
+ timestamp: 1695380538042
+- kind: conda
+ name: kiwisolver
+ version: 1.4.5
+ build: py312h0d7def4_1
+ build_number: 1
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/kiwisolver-1.4.5-py312h0d7def4_1.conda
+ sha256: 07021ffc3bbf42922694c23634e028950547d088717b448b46296b3ca5a26068
+ md5: 77c9d46fc8680bb08f4e1ebb6669e44e
+ depends:
+ - python >=3.12.0rc3,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 55576
+ timestamp: 1695380565733
- kind: conda
name: kiwisolver
version: 1.4.5
@@ -8838,6 +15283,41 @@ packages:
license_family: BSD
size: 61747
timestamp: 1695380538266
+- kind: conda
+ name: kiwisolver
+ version: 1.4.5
+ build: py312h49ebfd2_1
+ build_number: 1
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/kiwisolver-1.4.5-py312h49ebfd2_1.conda
+ sha256: 11d9daa79051a7ae52881d11f48816366fd3d46018281431abe507da7b45f69c
+ md5: 21f174a5cfb5964069c374171a979157
+ depends:
+ - libcxx >=15.0.7
+ - python >=3.12.0rc3,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 60227
+ timestamp: 1695380392812
+- kind: conda
+ name: kiwisolver
+ version: 1.4.5
+ build: py312h8572e83_1
+ build_number: 1
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/kiwisolver-1.4.5-py312h8572e83_1.conda
+ sha256: 2ffd3f6726392591c6794ab130f6701f5ffba0ec8658ef40db5a95ec8d583143
+ md5: c1e71f2bc05d8e8e033aefac2c490d05
+ depends:
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
+ - python >=3.12.0rc3,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 72099
+ timestamp: 1695380122482
- kind: conda
name: krb5
version: 1.21.2
@@ -9049,17 +15529,17 @@ packages:
- kind: conda
name: ld_impl_linux-64
version: '2.40'
- build: h41732ed_0
+ build: h55db66e_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.40-h41732ed_0.conda
- sha256: f6cc89d887555912d6c61b295d398cff9ec982a3417d38025c45d5dd9b9e79cd
- md5: 7aca3059a1729aa76c597603f10b0dd3
+ url: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.40-h55db66e_0.conda
+ sha256: ef969eee228cfb71e55146eaecc6af065f468cb0bc0a5239bc053b39db0b5f09
+ md5: 10569984e7db886e4f1abc2b47ad79a1
constrains:
- binutils_impl_linux-64 2.40
license: GPL-3.0-only
license_family: GPL
- size: 704696
- timestamp: 1674833944779
+ size: 713322
+ timestamp: 1713651222435
- kind: conda
name: lerc
version: 4.0.0
@@ -9120,143 +15600,135 @@ packages:
timestamp: 1657977526749
- kind: conda
name: libabseil
- version: '20240116.1'
- build: cxx17_h59595ed_2
- build_number: 2
+ version: '20240116.2'
+ build: cxx17_h59595ed_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libabseil-20240116.1-cxx17_h59595ed_2.conda
- sha256: 9951421311285dd4335ad3aceffb223a4d3bc90fb804245508cd27aceb184a29
- md5: 75648bc5dd3b8eab22406876c24d81ec
+ url: https://conda.anaconda.org/conda-forge/linux-64/libabseil-20240116.2-cxx17_h59595ed_0.conda
+ sha256: 19b789dc38dff64eee2002675991e63f381eedf5efd5c85f2dac512ed97376d7
+ md5: 682bdbe046a68f749769b492f3625c5c
depends:
- libgcc-ng >=12
- libstdcxx-ng >=12
constrains:
- - libabseil-static =20240116.1=cxx17*
- - abseil-cpp =20240116.1
+ - libabseil-static =20240116.2=cxx17*
+ - abseil-cpp =20240116.2
license: Apache-2.0
license_family: Apache
- size: 1266503
- timestamp: 1709159756788
+ size: 1266634
+ timestamp: 1714403128134
- kind: conda
name: libabseil
- version: '20240116.1'
- build: cxx17_h63175ca_2
- build_number: 2
+ version: '20240116.2'
+ build: cxx17_h63175ca_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/libabseil-20240116.1-cxx17_h63175ca_2.conda
- sha256: 565071112e6339051b037bb9c5dae3f4bbc3b45c6f7b8ee598d0ec9056346c93
- md5: bda6bc65300c4188933d8c68abc97923
+ url: https://conda.anaconda.org/conda-forge/win-64/libabseil-20240116.2-cxx17_h63175ca_0.conda
+ sha256: 37539d02a9d1064a18838303a9829fa14d5bffa5e02349b3a15d9bd8a2815e79
+ md5: 31b8c712b478ba94896707c159c60499
depends:
- ucrt >=10.0.20348.0
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
constrains:
- - libabseil-static =20240116.1=cxx17*
- - abseil-cpp =20240116.1
+ - abseil-cpp =20240116.2
+ - libabseil-static =20240116.2=cxx17*
license: Apache-2.0
license_family: Apache
- size: 1737645
- timestamp: 1709160246325
+ size: 1781843
+ timestamp: 1714404063887
- kind: conda
name: libabseil
- version: '20240116.1'
- build: cxx17_hc1bcbd7_2
- build_number: 2
+ version: '20240116.2'
+ build: cxx17_hc1bcbd7_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/libabseil-20240116.1-cxx17_hc1bcbd7_2.conda
- sha256: 30c0f569949a2fa0c5fd9aae3416e3f6623b9dd6fccdaa8d3437f143b67cca2a
- md5: 819934a15bc13a0d30778bf18446ada6
+ url: https://conda.anaconda.org/conda-forge/osx-64/libabseil-20240116.2-cxx17_hc1bcbd7_0.conda
+ sha256: 91c7818fd4d4e1d7e7fb6ace5f72e699112a9207f00f1ee82e62b7a87d239837
+ md5: f2ac89dbd4914f487706282ebf787636
depends:
- libcxx >=16
constrains:
- - libabseil-static =20240116.1=cxx17*
- __osx >=10.13
- - abseil-cpp =20240116.1
+ - libabseil-static =20240116.2=cxx17*
+ - abseil-cpp =20240116.2
license: Apache-2.0
license_family: Apache
- size: 1133225
- timestamp: 1709160179404
+ size: 1131191
+ timestamp: 1714403767205
- kind: conda
name: libabseil
- version: '20240116.1'
- build: cxx17_hebf3989_2
- build_number: 2
+ version: '20240116.2'
+ build: cxx17_hebf3989_0
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/libabseil-20240116.1-cxx17_hebf3989_2.conda
- sha256: 3e87e8da8e40c71f6107386f6e87aeadc8c7b42e2736f6ac894abe50c763d642
- md5: 0b85aac2fab429166f76940791de071a
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libabseil-20240116.2-cxx17_hebf3989_0.conda
+ sha256: d96bd35e162637be3767637352195e6cdfd85d98068564f73f3450b0cb265776
+ md5: edc3edb68fd9cbb014ac675dc73006c2
depends:
- libcxx >=16
constrains:
- - abseil-cpp =20240116.1
- - libabseil-static =20240116.1=cxx17*
+ - abseil-cpp =20240116.2
+ - libabseil-static =20240116.2=cxx17*
license: Apache-2.0
license_family: Apache
- size: 1144666
- timestamp: 1709160261245
+ size: 1143678
+ timestamp: 1714403860076
- kind: conda
name: libaec
- version: 1.1.2
- build: h13dd4ca_1
- build_number: 1
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/libaec-1.1.2-h13dd4ca_1.conda
- sha256: c9d6f01d511bd3686ce590addf829f34031b95e3feb34418496cbb45924c5d17
- md5: b7962cdc2cedcc9f8d12928824c11fbd
- depends:
- - libcxx >=15.0.7
- license: BSD-2-Clause
- license_family: BSD
- size: 29002
- timestamp: 1696474168895
-- kind: conda
- name: libaec
- version: 1.1.2
- build: h59595ed_1
- build_number: 1
+ version: 1.1.3
+ build: h59595ed_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libaec-1.1.2-h59595ed_1.conda
- sha256: fdde15e74dc099ab1083823ec0f615958e53d9a8fae10405af977de251668bea
- md5: 127b0be54c1c90760d7fe02ea7a56426
+ url: https://conda.anaconda.org/conda-forge/linux-64/libaec-1.1.3-h59595ed_0.conda
+ sha256: 2ef420a655528bca9d269086cf33b7e90d2f54ad941b437fb1ed5eca87cee017
+ md5: 5e97e271911b8b2001a8b71860c32faa
depends:
- libgcc-ng >=12
- libstdcxx-ng >=12
license: BSD-2-Clause
license_family: BSD
- size: 35228
- timestamp: 1696474021700
+ size: 35446
+ timestamp: 1711021212685
- kind: conda
name: libaec
- version: 1.1.2
- build: h63175ca_1
- build_number: 1
+ version: 1.1.3
+ build: h63175ca_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/libaec-1.1.2-h63175ca_1.conda
- sha256: 731dc77bce7d6425e2113b902023fba146e827cfe301bac565f92cc4e749588a
- md5: 0b252d2bf460364bccb1523bcdbe4af6
+ url: https://conda.anaconda.org/conda-forge/win-64/libaec-1.1.3-h63175ca_0.conda
+ sha256: f5c293d3cfc00f71dfdb64bd65ab53625565f8778fc2d5790575bef238976ebf
+ md5: 8723000f6ffdbdaef16025f0a01b64c5
depends:
- ucrt >=10.0.20348.0
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
license: BSD-2-Clause
license_family: BSD
- size: 33554
- timestamp: 1696474526588
+ size: 32567
+ timestamp: 1711021603471
- kind: conda
name: libaec
- version: 1.1.2
- build: he965462_1
- build_number: 1
+ version: 1.1.3
+ build: h73e2aa4_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/libaec-1.1.2-he965462_1.conda
- sha256: 1b0a0b9b67e8f155ebdc7205a7421c7aff4850a740fc9f88b3fa23282c98ed72
- md5: faa179050abc6af1385e0fe9dd074f91
+ url: https://conda.anaconda.org/conda-forge/osx-64/libaec-1.1.3-h73e2aa4_0.conda
+ sha256: dae5921339c5d89f4bf58a95fd4e9c76270dbf7f6a94f3c5081b574905fcccf8
+ md5: 66d3c1f6dd4636216b4fca7a748d50eb
depends:
- - libcxx >=15.0.7
+ - libcxx >=16
+ license: BSD-2-Clause
+ license_family: BSD
+ size: 28602
+ timestamp: 1711021419744
+- kind: conda
+ name: libaec
+ version: 1.1.3
+ build: hebf3989_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libaec-1.1.3-hebf3989_0.conda
+ sha256: 896189b7b48a194c46a3556ea04943ef81cbe0498521231f8eb25816a68bc8ed
+ md5: 6f0b8e56d2e7bae12a18fc5b2cd9f310
+ depends:
+ - libcxx >=16
license: BSD-2-Clause
license_family: BSD
- size: 29027
- timestamp: 1696474151758
+ size: 28451
+ timestamp: 1711021498493
- kind: conda
name: libarchive
version: 3.7.2
@@ -9353,112 +15825,113 @@ packages:
timestamp: 1701994485309
- kind: conda
name: libarrow
- version: 15.0.0
- build: h331b9b1_7_cpu
- build_number: 7
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/libarrow-15.0.0-h331b9b1_7_cpu.conda
- sha256: ca850482c2cb45b80383fa00d927fc1d11b2d3dd22ffe1219a2f2a640e2b49df
- md5: 09692b9f7a9b009c47847c0ad1e77494
+ version: 15.0.2
+ build: he3d97d8_6_cpu
+ build_number: 6
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/libarrow-15.0.2-he3d97d8_6_cpu.conda
+ sha256: 78f7abb7adc5b06f4ff1893e63e36fb9077ae933d6d470b8257bb039ecaa3ebe
+ md5: 1b9de69dcc12960ea572bd78c340596b
depends:
- - __osx >=10.13
- - aws-crt-cpp >=0.26.2,<0.26.3.0a0
+ - aws-crt-cpp >=0.26.8,<0.26.9.0a0
- aws-sdk-cpp >=1.11.267,<1.11.268.0a0
- bzip2 >=1.0.8,<2.0a0
- - glog >=0.7.0,<0.8.0a0
- libabseil * cxx17*
- - libabseil >=20240116.1,<20240117.0a0
+ - libabseil >=20240116.2,<20240117.0a0
- libbrotlidec >=1.1.0,<1.2.0a0
- libbrotlienc >=1.1.0,<1.2.0a0
- - libcxx >=16
- - libgoogle-cloud >=2.21.0,<2.22.0a0
- - libgoogle-cloud-storage >=2.21.0,<2.22.0a0
- - libre2-11 >=2023.6.2,<2024.0a0
+ - libcrc32c >=1.1.2,<1.2.0a0
+ - libcurl >=8.7.1,<9.0a0
+ - libgoogle-cloud >=2.23.0,<2.24.0a0
+ - libgoogle-cloud-storage >=2.23.0,<2.24.0a0
+ - libre2-11 >=2023.9.1,<2024.0a0
- libutf8proc >=2.8.0,<3.0a0
- libzlib >=1.2.13,<1.3.0a0
- lz4-c >=1.9.3,<1.10.0a0
- - orc >=1.9.2,<1.9.3.0a0
+ - openssl >=3.2.1,<4.0a0
+ - orc >=2.0.0,<2.0.1.0a0
- re2
- - snappy >=1.1.10,<2.0a0
+ - snappy >=1.2.0,<1.3.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
- zstd >=1.5.5,<1.6.0a0
constrains:
- - apache-arrow-proc =*=cpu
- arrow-cpp <0.0a0
- parquet-cpp <0.0a0
+ - apache-arrow-proc =*=cpu
license: Apache-2.0
license_family: APACHE
- size: 5686845
- timestamp: 1708690176305
+ size: 5012481
+ timestamp: 1714448857537
- kind: conda
name: libarrow
- version: 15.0.0
- build: h5001e6d_7_cpu
- build_number: 7
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libarrow-15.0.0-h5001e6d_7_cpu.conda
- sha256: 36204fa0a5448ea36c0d4f6363f6f73c50d19feffe9ce7e82ad4b2306aa9bd08
- md5: 3249fb87b4f2c207e1ff5fbcd44ec0df
+ version: 15.0.2
+ build: hea125af_6_cpu
+ build_number: 6
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-15.0.2-hea125af_6_cpu.conda
+ sha256: 864c9efc3cc64291fcb0217ae7acfb01766e7604015e2954d07040f4e9f56c05
+ md5: 7ea5898e73fd3d850f20d2d7374ef784
depends:
- - aws-crt-cpp >=0.26.2,<0.26.3.0a0
+ - __osx >=11.0
+ - aws-crt-cpp >=0.26.8,<0.26.9.0a0
- aws-sdk-cpp >=1.11.267,<1.11.268.0a0
- bzip2 >=1.0.8,<2.0a0
- glog >=0.7.0,<0.8.0a0
- libabseil * cxx17*
- - libabseil >=20240116.1,<20240117.0a0
+ - libabseil >=20240116.2,<20240117.0a0
- libbrotlidec >=1.1.0,<1.2.0a0
- libbrotlienc >=1.1.0,<1.2.0a0
- - libgcc-ng >=12
- - libgoogle-cloud >=2.21.0,<2.22.0a0
- - libgoogle-cloud-storage >=2.21.0,<2.22.0a0
- - libre2-11 >=2023.6.2,<2024.0a0
- - libstdcxx-ng >=12
+ - libcxx >=16
+ - libgoogle-cloud >=2.23.0,<2.24.0a0
+ - libgoogle-cloud-storage >=2.23.0,<2.24.0a0
+ - libre2-11 >=2023.9.1,<2024.0a0
- libutf8proc >=2.8.0,<3.0a0
- libzlib >=1.2.13,<1.3.0a0
- lz4-c >=1.9.3,<1.10.0a0
- - orc >=1.9.2,<1.9.3.0a0
+ - orc >=2.0.0,<2.0.1.0a0
- re2
- - snappy >=1.1.10,<2.0a0
+ - snappy >=1.2.0,<1.3.0a0
- zstd >=1.5.5,<1.6.0a0
constrains:
- parquet-cpp <0.0a0
- - arrow-cpp <0.0a0
- apache-arrow-proc =*=cpu
+ - arrow-cpp <0.0a0
license: Apache-2.0
license_family: APACHE
- size: 8164585
- timestamp: 1708689243380
+ size: 5104388
+ timestamp: 1714449309383
- kind: conda
name: libarrow
- version: 15.0.0
- build: hd01637b_7_cpu
- build_number: 7
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/libarrow-15.0.0-hd01637b_7_cpu.conda
- sha256: d2be3d394c67bb50466f5ceacce95c60630d82cb7eaa47bffc2f49ec5e1cb01f
- md5: f199c78cb97fdb0df3c3ebe50094f83a
+ version: 15.0.2
+ build: hefa796f_6_cpu
+ build_number: 6
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libarrow-15.0.2-hefa796f_6_cpu.conda
+ sha256: d97be4671bc6a76c177a8611677f46fbd9f30227c73b2d26bd8276df4385bf21
+ md5: 2aa703494b2c0a1356ec581a24653177
depends:
- - aws-crt-cpp >=0.26.2,<0.26.3.0a0
+ - aws-crt-cpp >=0.26.8,<0.26.9.0a0
- aws-sdk-cpp >=1.11.267,<1.11.268.0a0
- bzip2 >=1.0.8,<2.0a0
+ - gflags >=2.2.2,<2.3.0a0
+ - glog >=0.7.0,<0.8.0a0
- libabseil * cxx17*
- - libabseil >=20240116.1,<20240117.0a0
+ - libabseil >=20240116.2,<20240117.0a0
- libbrotlidec >=1.1.0,<1.2.0a0
- libbrotlienc >=1.1.0,<1.2.0a0
- - libcrc32c >=1.1.2,<1.2.0a0
- - libcurl >=8.5.0,<9.0a0
- - libgoogle-cloud >=2.21.0,<2.22.0a0
- - libgoogle-cloud-storage >=2.21.0,<2.22.0a0
- - libre2-11 >=2023.6.2,<2024.0a0
+ - libgcc-ng >=12
+ - libgoogle-cloud >=2.23.0,<2.24.0a0
+ - libgoogle-cloud-storage >=2.23.0,<2.24.0a0
+ - libre2-11 >=2023.9.1,<2024.0a0
+ - libstdcxx-ng >=12
- libutf8proc >=2.8.0,<3.0a0
- libzlib >=1.2.13,<1.3.0a0
- lz4-c >=1.9.3,<1.10.0a0
- - openssl >=3.2.1,<4.0a0
- - orc >=1.9.2,<1.9.3.0a0
+ - orc >=2.0.0,<2.0.1.0a0
- re2
- - snappy >=1.1.10,<2.0a0
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
+ - snappy >=1.2.0,<1.3.0a0
- zstd >=1.5.5,<1.6.0a0
constrains:
- arrow-cpp <0.0a0
@@ -9466,433 +15939,438 @@ packages:
- parquet-cpp <0.0a0
license: Apache-2.0
license_family: APACHE
- size: 5026553
- timestamp: 1708689812503
+ size: 8174304
+ timestamp: 1714448169194
- kind: conda
name: libarrow
- version: 15.0.0
- build: hd462d9b_7_cpu
- build_number: 7
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-15.0.0-hd462d9b_7_cpu.conda
- sha256: 5cb92c9049c23bcbc50d2e2ecbc8d2ad1f482cf14cccb546aaa3952106cddd4e
- md5: e4eefa2cb126dd6bd685d431b97395ff
+ version: 15.0.2
+ build: hfba3c4c_6_cpu
+ build_number: 6
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/libarrow-15.0.2-hfba3c4c_6_cpu.conda
+ sha256: d1de86ad5134206ef66b347b8a1e787deb24257a9e128780ccaf16ebfd0636bc
+ md5: 3de4808cfc5eda4a7e13ebaa9e6c7767
depends:
- - aws-crt-cpp >=0.26.2,<0.26.3.0a0
+ - __osx >=10.13
+ - aws-crt-cpp >=0.26.8,<0.26.9.0a0
- aws-sdk-cpp >=1.11.267,<1.11.268.0a0
- bzip2 >=1.0.8,<2.0a0
- glog >=0.7.0,<0.8.0a0
- libabseil * cxx17*
- - libabseil >=20240116.1,<20240117.0a0
+ - libabseil >=20240116.2,<20240117.0a0
- libbrotlidec >=1.1.0,<1.2.0a0
- libbrotlienc >=1.1.0,<1.2.0a0
- libcxx >=16
- - libgoogle-cloud >=2.21.0,<2.22.0a0
- - libgoogle-cloud-storage >=2.21.0,<2.22.0a0
- - libre2-11 >=2023.6.2,<2024.0a0
+ - libgoogle-cloud >=2.23.0,<2.24.0a0
+ - libgoogle-cloud-storage >=2.23.0,<2.24.0a0
+ - libre2-11 >=2023.9.1,<2024.0a0
- libutf8proc >=2.8.0,<3.0a0
- libzlib >=1.2.13,<1.3.0a0
- lz4-c >=1.9.3,<1.10.0a0
- - orc >=1.9.2,<1.9.3.0a0
+ - orc >=2.0.0,<2.0.1.0a0
- re2
- - snappy >=1.1.10,<2.0a0
+ - snappy >=1.2.0,<1.3.0a0
- zstd >=1.5.5,<1.6.0a0
constrains:
- apache-arrow-proc =*=cpu
- - parquet-cpp <0.0a0
- arrow-cpp <0.0a0
+ - parquet-cpp <0.0a0
license: Apache-2.0
license_family: APACHE
- size: 5104812
- timestamp: 1708690577259
+ size: 5707087
+ timestamp: 1714449153068
- kind: conda
name: libarrow-acero
- version: 15.0.0
- build: h59595ed_7_cpu
- build_number: 7
+ version: 15.0.2
+ build: h3f3aa29_6_cpu
+ build_number: 6
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-acero-15.0.2-h3f3aa29_6_cpu.conda
+ sha256: aaecfa5f08aad0c2129cadd3993ed50324c499c105f99934a5b03794453219ef
+ md5: ba819d8245409241ae79b830c9d91fd7
+ depends:
+ - __osx >=11.0
+ - libarrow 15.0.2 hea125af_6_cpu
+ - libcxx >=16
+ license: Apache-2.0
+ license_family: APACHE
+ size: 485978
+ timestamp: 1714449439833
+- kind: conda
+ name: libarrow-acero
+ version: 15.0.2
+ build: ha0df490_6_cpu
+ build_number: 6
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/libarrow-acero-15.0.2-ha0df490_6_cpu.conda
+ sha256: ab78b9030526efa4289a70669f4c227301596d35216ad91380af71a414d1598a
+ md5: 069f20324c6c222dea186cc586f9f931
+ depends:
+ - __osx >=10.13
+ - libarrow 15.0.2 hfba3c4c_6_cpu
+ - libcxx >=16
+ license: Apache-2.0
+ license_family: APACHE
+ size: 524929
+ timestamp: 1714449304277
+- kind: conda
+ name: libarrow-acero
+ version: 15.0.2
+ build: hbabe93e_6_cpu
+ build_number: 6
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libarrow-acero-15.0.0-h59595ed_7_cpu.conda
- sha256: 7d67258547d8350469cdcb0f092f094e33672e064b59acb2e1e6684614e0fd96
- md5: ee028786f388781b75937af244af17c1
+ url: https://conda.anaconda.org/conda-forge/linux-64/libarrow-acero-15.0.2-hbabe93e_6_cpu.conda
+ sha256: 75e88940751abc5b48fc44721e36fcddd7dd5c5bc1d8622ed36fc1c93b26beb1
+ md5: 061797e461211bbdc174fdabeb45ac5c
depends:
- - libarrow 15.0.0 h5001e6d_7_cpu
+ - gflags >=2.2.2,<2.3.0a0
+ - libarrow 15.0.2 hefa796f_6_cpu
- libgcc-ng >=12
- libstdcxx-ng >=12
license: Apache-2.0
license_family: APACHE
- size: 597955
- timestamp: 1708689282117
+ size: 600779
+ timestamp: 1714448211788
- kind: conda
name: libarrow-acero
- version: 15.0.0
- build: h63175ca_7_cpu
- build_number: 7
+ version: 15.0.2
+ build: he0c23c2_6_cpu
+ build_number: 6
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/libarrow-acero-15.0.0-h63175ca_7_cpu.conda
- sha256: d4f9d744482d9c47429fbbca87f5aed90fcc8d1a19d9bc187c20fc3edaf05c11
- md5: 60c6f176fd0c412204e18fb4bb6410c1
+ url: https://conda.anaconda.org/conda-forge/win-64/libarrow-acero-15.0.2-he0c23c2_6_cpu.conda
+ sha256: 4299f67b66766161a0cf533f10e7239cd84346e3040467aee5ea67fe18b33a5f
+ md5: 7a48ab6d8b347388043207344081ec1c
depends:
- - libarrow 15.0.0 hd01637b_7_cpu
+ - libarrow 15.0.2 he3d97d8_6_cpu
- ucrt >=10.0.20348.0
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
license: Apache-2.0
license_family: APACHE
- size: 446225
- timestamp: 1708689883249
+ size: 448675
+ timestamp: 1714448933826
- kind: conda
- name: libarrow-acero
- version: 15.0.0
- build: hd427752_7_cpu
- build_number: 7
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/libarrow-acero-15.0.0-hd427752_7_cpu.conda
- sha256: b1955c243ddfbd7f8642f921d713bdc85fa788ce5e66da472968db56616c4f14
- md5: 22984b03bf585043b8de9eb3e80e2eb2
+ name: libarrow-dataset
+ version: 15.0.2
+ build: h3f3aa29_6_cpu
+ build_number: 6
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-dataset-15.0.2-h3f3aa29_6_cpu.conda
+ sha256: ea954197b7a62d2adf76e0cfae81804c2ec25b29318239de66896682ba1750e4
+ md5: 8227e6c8743a6bce91b94a798fa9f8d1
depends:
- - libarrow 15.0.0 h331b9b1_7_cpu
+ - __osx >=11.0
+ - libarrow 15.0.2 hea125af_6_cpu
+ - libarrow-acero 15.0.2 h3f3aa29_6_cpu
- libcxx >=16
+ - libparquet 15.0.2 h5304c63_6_cpu
license: Apache-2.0
license_family: APACHE
- size: 522040
- timestamp: 1708690248142
+ size: 491118
+ timestamp: 1714450743681
- kind: conda
- name: libarrow-acero
- version: 15.0.0
- build: hebf3989_7_cpu
- build_number: 7
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-acero-15.0.0-hebf3989_7_cpu.conda
- sha256: 1eca17ede372b004e205b97ddc06255e47a5c3f5402374779176529535ad9fa2
- md5: cd4d3232cc9d56a21ff96738f29908ee
+ name: libarrow-dataset
+ version: 15.0.2
+ build: ha0df490_6_cpu
+ build_number: 6
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/libarrow-dataset-15.0.2-ha0df490_6_cpu.conda
+ sha256: 8cf6f360da5e44fd58af60257609c0f5030a6a26ee181ec0c62989e90d987135
+ md5: 563f8abb253f47d5f084b3f8a2e98dbc
depends:
- - libarrow 15.0.0 hd462d9b_7_cpu
+ - __osx >=10.13
+ - libarrow 15.0.2 hfba3c4c_6_cpu
+ - libarrow-acero 15.0.2 ha0df490_6_cpu
- libcxx >=16
+ - libparquet 15.0.2 h7cd3cfe_6_cpu
license: Apache-2.0
license_family: APACHE
- size: 483352
- timestamp: 1708690667234
+ size: 514495
+ timestamp: 1714450162154
- kind: conda
name: libarrow-dataset
- version: 15.0.0
- build: h59595ed_7_cpu
- build_number: 7
+ version: 15.0.2
+ build: hbabe93e_6_cpu
+ build_number: 6
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libarrow-dataset-15.0.0-h59595ed_7_cpu.conda
- sha256: c3480cdaac907a42d675fae0ddd3b772e923709f02b33b2cd785f2c223dcd6cd
- md5: 161b5f7569be51035242bcfbfaa1b504
+ url: https://conda.anaconda.org/conda-forge/linux-64/libarrow-dataset-15.0.2-hbabe93e_6_cpu.conda
+ sha256: 9611a2a415523d5b5533036a73af72deb621f68e1a6cd3bcd0572aceed2a9b4e
+ md5: f30638c82fb4ce663122a3714ef0aa7d
depends:
- - libarrow 15.0.0 h5001e6d_7_cpu
- - libarrow-acero 15.0.0 h59595ed_7_cpu
+ - gflags >=2.2.2,<2.3.0a0
+ - libarrow 15.0.2 hefa796f_6_cpu
+ - libarrow-acero 15.0.2 hbabe93e_6_cpu
- libgcc-ng >=12
- - libparquet 15.0.0 h352af49_7_cpu
+ - libparquet 15.0.2 hacf5a1f_6_cpu
- libstdcxx-ng >=12
license: Apache-2.0
license_family: APACHE
- size: 584885
- timestamp: 1708689370957
+ size: 587827
+ timestamp: 1714448297550
- kind: conda
name: libarrow-dataset
- version: 15.0.0
- build: h63175ca_7_cpu
- build_number: 7
+ version: 15.0.2
+ build: he0c23c2_6_cpu
+ build_number: 6
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/libarrow-dataset-15.0.0-h63175ca_7_cpu.conda
- sha256: 0869f988350869bbc854ed520a88ac027d17eee92cd44023bcc74633a43fb5e7
- md5: e600251c564fc545fa9fd851b2bbe115
+ url: https://conda.anaconda.org/conda-forge/win-64/libarrow-dataset-15.0.2-he0c23c2_6_cpu.conda
+ sha256: 17b06373368da73a1425c2da31352d2f493124b628ed129ff6f87f8a1d5e3cd8
+ md5: ce3a1f323a927c3b491e6c68afc94815
depends:
- - libarrow 15.0.0 hd01637b_7_cpu
- - libarrow-acero 15.0.0 h63175ca_7_cpu
- - libparquet 15.0.0 h7ec3a38_7_cpu
+ - libarrow 15.0.2 he3d97d8_6_cpu
+ - libarrow-acero 15.0.2 he0c23c2_6_cpu
+ - libparquet 15.0.2 h178134c_6_cpu
- ucrt >=10.0.20348.0
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
license: Apache-2.0
license_family: APACHE
- size: 431525
- timestamp: 1708690152244
-- kind: conda
- name: libarrow-dataset
- version: 15.0.0
- build: hd427752_7_cpu
- build_number: 7
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/libarrow-dataset-15.0.0-hd427752_7_cpu.conda
- sha256: 9653daaf22819fb98ad1524a3959c176ddfcb63f492393601789190b3cbf1774
- md5: 4e1e3153eb2b0914284fef559e956af7
- depends:
- - libarrow 15.0.0 h331b9b1_7_cpu
- - libarrow-acero 15.0.0 hd427752_7_cpu
- - libcxx >=16
- - libparquet 15.0.0 h089a9f7_7_cpu
- license: Apache-2.0
- license_family: APACHE
- size: 512033
- timestamp: 1708690474889
+ size: 434597
+ timestamp: 1714449220491
- kind: conda
- name: libarrow-dataset
- version: 15.0.0
- build: hebf3989_7_cpu
- build_number: 7
+ name: libarrow-flight
+ version: 15.0.2
+ build: h224147a_6_cpu
+ build_number: 6
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-dataset-15.0.0-hebf3989_7_cpu.conda
- sha256: a12e1bdd84eee2cf7f32fdba18dcfc1f77bfe11979d54b4c4feee99fe966d6ce
- md5: 8a2d5c8d6564d9347451d337abf93f3e
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-15.0.2-h224147a_6_cpu.conda
+ sha256: be858229dec8fea4cd624e3b7026d3a77d4cef4354a4123c1689a53c15852ac1
+ md5: dc3511d299ef51ebb5e4aead964c28fb
depends:
- - libarrow 15.0.0 hd462d9b_7_cpu
- - libarrow-acero 15.0.0 hebf3989_7_cpu
+ - __osx >=11.0
+ - libabseil * cxx17*
+ - libabseil >=20240116.2,<20240117.0a0
+ - libarrow 15.0.2 hea125af_6_cpu
- libcxx >=16
- - libparquet 15.0.0 h278d484_7_cpu
+ - libgrpc >=1.62.2,<1.63.0a0
+ - libprotobuf >=4.25.3,<4.25.4.0a0
license: Apache-2.0
license_family: APACHE
- size: 487927
- timestamp: 1708690927274
+ size: 314395
+ timestamp: 1714449729915
- kind: conda
name: libarrow-flight
- version: 15.0.0
- build: hbe5bddb_7_cpu
- build_number: 7
+ version: 15.0.2
+ build: h41520de_6_cpu
+ build_number: 6
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-15.0.0-hbe5bddb_7_cpu.conda
- sha256: 8f139d6ff9effa4c0c7b51c3b00ea45da2179a43251c1ad56513bcaa086af2cb
- md5: 848631fc899f46e8708b9ebbec010f4f
+ url: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-15.0.2-h41520de_6_cpu.conda
+ sha256: 3ec242165e16de33906567328ff3b955d0cffe0452502c5e1bd202790ee0ceda
+ md5: 103b450f736992e43674076efc0ec91a
depends:
- __osx >=10.13
- libabseil * cxx17*
- - libabseil >=20240116.1,<20240117.0a0
- - libarrow 15.0.0 h331b9b1_7_cpu
+ - libabseil >=20240116.2,<20240117.0a0
+ - libarrow 15.0.2 hfba3c4c_6_cpu
- libcxx >=16
- - libgrpc >=1.61.1,<1.62.0a0
- - libprotobuf >=4.25.2,<4.25.3.0a0
+ - libgrpc >=1.62.2,<1.63.0a0
+ - libprotobuf >=4.25.3,<4.25.4.0a0
license: Apache-2.0
license_family: APACHE
- size: 322500
- timestamp: 1708690303326
+ size: 325234
+ timestamp: 1714449485800
- kind: conda
name: libarrow-flight
- version: 15.0.0
- build: hca4e5ea_7_cpu
- build_number: 7
+ version: 15.0.2
+ build: ha7f4a34_6_cpu
+ build_number: 6
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-15.0.0-hca4e5ea_7_cpu.conda
- sha256: 812f843750da06407ab8a11f7b6b2d131ee3eeb2d0dae1b6447d504cf054fb57
- md5: 560edf7f79f432a9d804d074250466cd
+ url: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-15.0.2-ha7f4a34_6_cpu.conda
+ sha256: 3665e5e3aecbe9d26ad56d3b5b125aa3a487fdfb31c317455056423d50fc5975
+ md5: 10bb3c63977bcf76f78577432b2fe543
depends:
- libabseil * cxx17*
- - libabseil >=20240116.1,<20240117.0a0
- - libarrow 15.0.0 hd01637b_7_cpu
- - libgrpc >=1.61.1,<1.62.0a0
- - libprotobuf >=4.25.2,<4.25.3.0a0
+ - libabseil >=20240116.2,<20240117.0a0
+ - libarrow 15.0.2 he3d97d8_6_cpu
+ - libgrpc >=1.62.2,<1.63.0a0
+ - libprotobuf >=4.25.3,<4.25.4.0a0
- ucrt >=10.0.20348.0
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
license: Apache-2.0
license_family: APACHE
- size: 288483
- timestamp: 1708689952764
-- kind: conda
- name: libarrow-flight
- version: 15.0.0
- build: hcdfa465_7_cpu
- build_number: 7
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-15.0.0-hcdfa465_7_cpu.conda
- sha256: 0b97b27d9f946df2dc955a4e7a9f0f8cd364856cc1c65cf36a301ee3dae0abcd
- md5: ea3cd8a0e39a1074b742b74a0fcba37a
- depends:
- - libabseil * cxx17*
- - libabseil >=20240116.1,<20240117.0a0
- - libarrow 15.0.0 hd462d9b_7_cpu
- - libcxx >=16
- - libgrpc >=1.61.1,<1.62.0a0
- - libprotobuf >=4.25.2,<4.25.3.0a0
- license: Apache-2.0
- license_family: APACHE
- size: 311083
- timestamp: 1708690728802
+ size: 291703
+ timestamp: 1714449011925
- kind: conda
name: libarrow-flight
- version: 15.0.0
- build: hf334d8d_7_cpu
- build_number: 7
+ version: 15.0.2
+ build: hc4f8a93_6_cpu
+ build_number: 6
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-15.0.0-hf334d8d_7_cpu.conda
- sha256: 59c683337dae31308f173b30b86219e22c358135bca3254105ef3cb72d26b21c
- md5: baa6de62c8c19f48dca73fe246690f8b
+ url: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-15.0.2-hc4f8a93_6_cpu.conda
+ sha256: b75bfae411b8de65f3ccddf8acec2811d79b21b8da00788b4c8d279616d488e9
+ md5: 5fb64b8a0a7b68e48a08cc138d3650b6
depends:
+ - gflags >=2.2.2,<2.3.0a0
- libabseil * cxx17*
- - libabseil >=20240116.1,<20240117.0a0
- - libarrow 15.0.0 h5001e6d_7_cpu
+ - libabseil >=20240116.2,<20240117.0a0
+ - libarrow 15.0.2 hefa796f_6_cpu
- libgcc-ng >=12
- - libgrpc >=1.61.1,<1.62.0a0
- - libprotobuf >=4.25.2,<4.25.3.0a0
+ - libgrpc >=1.62.2,<1.63.0a0
+ - libprotobuf >=4.25.3,<4.25.4.0a0
- libstdcxx-ng >=12
- ucx >=1.15.0,<1.16.0a0
license: Apache-2.0
license_family: APACHE
- size: 505174
- timestamp: 1708689305158
+ size: 508666
+ timestamp: 1714448232421
- kind: conda
name: libarrow-flight-sql
- version: 15.0.0
- build: h1ef3bed_7_cpu
- build_number: 7
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-sql-15.0.0-h1ef3bed_7_cpu.conda
- sha256: 3ffc75ce74d0dceef8ae11389037c9ffd87ec3516dcdb6748fa01aaf623bd1a1
- md5: 9a0ba95a6abab18ee48daf6faad0c51d
+ version: 15.0.2
+ build: hb2e0ddf_6_cpu
+ build_number: 6
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-sql-15.0.2-hb2e0ddf_6_cpu.conda
+ sha256: 9761b1a0787551e89abf327dcedad4be11d8c4eea1e85aa0a458ce55e71ed6ba
+ md5: 03d6da02ac2cff9ade459d9a73175b44
depends:
- - libarrow 15.0.0 hd01637b_7_cpu
- - libarrow-flight 15.0.0 hca4e5ea_7_cpu
- - libprotobuf >=4.25.2,<4.25.3.0a0
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
+ - __osx >=10.13
+ - libarrow 15.0.2 hfba3c4c_6_cpu
+ - libarrow-flight 15.0.2 h41520de_6_cpu
+ - libcxx >=16
+ - libprotobuf >=4.25.3,<4.25.4.0a0
license: Apache-2.0
license_family: APACHE
- size: 235017
- timestamp: 1708690208778
+ size: 156430
+ timestamp: 1714450245121
- kind: conda
name: libarrow-flight-sql
- version: 15.0.0
- build: h346e8b1_7_cpu
- build_number: 7
+ version: 15.0.2
+ build: hb630850_6_cpu
+ build_number: 6
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-sql-15.0.0-h346e8b1_7_cpu.conda
- sha256: 3e607d9fbc37da7ef791fadf2cfff1a6ef193fb5aa506ff106352731c1cd5dda
- md5: 60b8f9416cec1ac8473e8be997c7b073
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-sql-15.0.2-hb630850_6_cpu.conda
+ sha256: 211442cdf792e43f654afa6bdc316316da31067143661f5f65499c7b0b65ecb0
+ md5: bdd6f0908c8337e042c2f9dc7bf0a2d2
depends:
- - libarrow 15.0.0 hd462d9b_7_cpu
- - libarrow-flight 15.0.0 hcdfa465_7_cpu
+ - __osx >=11.0
+ - libarrow 15.0.2 hea125af_6_cpu
+ - libarrow-flight 15.0.2 h224147a_6_cpu
- libcxx >=16
- - libprotobuf >=4.25.2,<4.25.3.0a0
+ - libprotobuf >=4.25.3,<4.25.4.0a0
license: Apache-2.0
license_family: APACHE
- size: 154121
- timestamp: 1708690989923
+ size: 155703
+ timestamp: 1714450848935
- kind: conda
name: libarrow-flight-sql
- version: 15.0.0
- build: h469e5c9_7_cpu
- build_number: 7
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-sql-15.0.0-h469e5c9_7_cpu.conda
- sha256: 453592bf67437d12b9ba8b24a5d730fd47297054fe6b6e98084348f65578fc9b
- md5: 9947074ba2851e03dea90df356b903e3
+ version: 15.0.2
+ build: hdeef14f_6_cpu
+ build_number: 6
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-sql-15.0.2-hdeef14f_6_cpu.conda
+ sha256: ce60f94e24150bf836a57cfa40ad49874ca61935b245e2e5e4f198b260d8765c
+ md5: 709a9a3deb9066807302bbb28d3b383a
depends:
- - libarrow 15.0.0 h5001e6d_7_cpu
- - libarrow-flight 15.0.0 hf334d8d_7_cpu
- - libgcc-ng >=12
- - libprotobuf >=4.25.2,<4.25.3.0a0
- - libstdcxx-ng >=12
+ - libarrow 15.0.2 he3d97d8_6_cpu
+ - libarrow-flight 15.0.2 ha7f4a34_6_cpu
+ - libprotobuf >=4.25.3,<4.25.4.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
license: Apache-2.0
license_family: APACHE
- size: 194852
- timestamp: 1708689393331
+ size: 238345
+ timestamp: 1714449284712
- kind: conda
name: libarrow-flight-sql
- version: 15.0.0
- build: hb30bb1e_7_cpu
- build_number: 7
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-sql-15.0.0-hb30bb1e_7_cpu.conda
- sha256: b01e2606e46f90598b7128d9d35dc004b54509094922f332475fd0d93d851818
- md5: 5a3211b4d91fce45bbf1b3ba5970a7d4
+ version: 15.0.2
+ build: he4f5ca8_6_cpu
+ build_number: 6
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-sql-15.0.2-he4f5ca8_6_cpu.conda
+ sha256: 761fceb170e0efee8f8c365f17ec706fab12a8e9378d3e80b36ed06b9390cb9b
+ md5: 2cd07c4ead6fb6bd1a2741c2a1cb5666
depends:
- - __osx >=10.13
- - libarrow 15.0.0 h331b9b1_7_cpu
- - libarrow-flight 15.0.0 hbe5bddb_7_cpu
- - libcxx >=16
- - libprotobuf >=4.25.2,<4.25.3.0a0
+ - gflags >=2.2.2,<2.3.0a0
+ - libarrow 15.0.2 hefa796f_6_cpu
+ - libarrow-flight 15.0.2 hc4f8a93_6_cpu
+ - libgcc-ng >=12
+ - libprotobuf >=4.25.3,<4.25.4.0a0
+ - libstdcxx-ng >=12
license: Apache-2.0
license_family: APACHE
- size: 154557
- timestamp: 1708690527375
+ size: 197489
+ timestamp: 1714448319450
- kind: conda
name: libarrow-gandiva
- version: 15.0.0
- build: h258d777_7_cpu
- build_number: 7
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/libarrow-gandiva-15.0.0-h258d777_7_cpu.conda
- sha256: 2441272d80e63790e9c5a4aa2b20e261e4d38d54bf1d06e1d73799a1d7d2a363
- md5: 20b3a93c5364a9e57628481a10efa111
+ version: 15.0.2
+ build: h3b9069c_6_cpu
+ build_number: 6
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-gandiva-15.0.2-h3b9069c_6_cpu.conda
+ sha256: 1917f530ef017c3f499168f035d1b34ba17738984f1e91d045e008a1027a7faa
+ md5: 6d834618044dee594c9f1a9bce12521b
depends:
- - __osx >=10.13
- - libabseil * cxx17*
- - libabseil >=20240116.1,<20240117.0a0
- - libarrow 15.0.0 h331b9b1_7_cpu
+ - __osx >=11.0
+ - libarrow 15.0.2 hea125af_6_cpu
- libcxx >=16
- libllvm16 >=16.0.6,<16.1.0a0
- - libre2-11 >=2023.6.2,<2024.0a0
+ - libre2-11 >=2023.9.1,<2024.0a0
- libutf8proc >=2.8.0,<3.0a0
- openssl >=3.2.1,<4.0a0
- re2
license: Apache-2.0
license_family: APACHE
- size: 700006
- timestamp: 1708690361166
+ size: 689460
+ timestamp: 1714450510303
- kind: conda
name: libarrow-gandiva
- version: 15.0.0
- build: h3f306ff_7_cpu
- build_number: 7
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libarrow-gandiva-15.0.0-h3f306ff_7_cpu.conda
- sha256: 13aa7ee8afd7c38b9f5343f0a713c9994666a056a5be0481f480b7a517896b9a
- md5: 25d20f9bfb833f5f658f230c8ba1a161
+ version: 15.0.2
+ build: h81ca85a_6_cpu
+ build_number: 6
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/libarrow-gandiva-15.0.2-h81ca85a_6_cpu.conda
+ sha256: c048c182613a53158d4e61ce17e7d5b16e12871851013a0bf6a9f195c50197c8
+ md5: ca533b5a3d353bdc898f6505ee73014c
depends:
- - libabseil * cxx17*
- - libabseil >=20240116.1,<20240117.0a0
- - libarrow 15.0.0 h5001e6d_7_cpu
- - libgcc-ng >=12
+ - __osx >=10.13
+ - libarrow 15.0.2 hfba3c4c_6_cpu
+ - libcxx >=16
- libllvm16 >=16.0.6,<16.1.0a0
- - libre2-11 >=2023.6.2,<2024.0a0
- - libstdcxx-ng >=12
+ - libre2-11 >=2023.9.1,<2024.0a0
- libutf8proc >=2.8.0,<3.0a0
- openssl >=3.2.1,<4.0a0
- re2
license: Apache-2.0
license_family: APACHE
- size: 896040
- timestamp: 1708689327874
+ size: 702621
+ timestamp: 1714449943573
- kind: conda
name: libarrow-gandiva
- version: 15.0.0
- build: h843df16_7_cpu
- build_number: 7
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-gandiva-15.0.0-h843df16_7_cpu.conda
- sha256: 5aa87301fc3ab0840f2c06e61f5ae2f950043aa21d399411ada8336f172a5e70
- md5: 3d734efe89d8f5ca9366a38d0baae080
+ version: 15.0.2
+ build: hc1954e9_6_cpu
+ build_number: 6
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libarrow-gandiva-15.0.2-hc1954e9_6_cpu.conda
+ sha256: eb9ac1a92a60ddc23e34d007d6d73c095f0edd82f83fd63f7a29436e6c8c74f7
+ md5: 80201ecc7f27bd6a2b50b8a7ee3f315f
depends:
- - libabseil * cxx17*
- - libabseil >=20240116.1,<20240117.0a0
- - libarrow 15.0.0 hd462d9b_7_cpu
- - libcxx >=16
+ - gflags >=2.2.2,<2.3.0a0
+ - libarrow 15.0.2 hefa796f_6_cpu
+ - libgcc-ng >=12
- libllvm16 >=16.0.6,<16.1.0a0
- - libre2-11 >=2023.6.2,<2024.0a0
+ - libre2-11 >=2023.9.1,<2024.0a0
+ - libstdcxx-ng >=12
- libutf8proc >=2.8.0,<3.0a0
- openssl >=3.2.1,<4.0a0
- re2
license: Apache-2.0
license_family: APACHE
- size: 684729
- timestamp: 1708690797572
+ size: 897964
+ timestamp: 1714448255
- kind: conda
name: libarrow-gandiva
- version: 15.0.0
- build: hc896d4e_7_cpu
- build_number: 7
+ version: 15.0.2
+ build: hd4515a1_6_cpu
+ build_number: 6
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/libarrow-gandiva-15.0.0-hc896d4e_7_cpu.conda
- sha256: efecf047d378957dabf75d7c88f44d6f0cfa7eec52aec7fc83b9447d9725977a
- md5: 6deef774be2aa8f594ed0389e9cba172
+ url: https://conda.anaconda.org/conda-forge/win-64/libarrow-gandiva-15.0.2-hd4515a1_6_cpu.conda
+ sha256: 9811420f3f4b5ce55990cb4b54bfcfe5c7b54b3223f107c58cf9fca3886de67f
+ md5: 7d94b6539cdcff0ed3987d8d92d498a6
depends:
- - libabseil * cxx17*
- - libabseil >=20240116.1,<20240117.0a0
- - libarrow 15.0.0 hd01637b_7_cpu
- - libre2-11 >=2023.6.2,<2024.0a0
+ - libarrow 15.0.2 he3d97d8_6_cpu
+ - libre2-11 >=2023.9.1,<2024.0a0
- libutf8proc >=2.8.0,<3.0a0
- libzlib >=1.2.13,<1.3.0a0
- openssl >=3.2.1,<4.0a0
@@ -9903,231 +16381,335 @@ packages:
- zstd >=1.5.5,<1.6.0a0
license: Apache-2.0
license_family: APACHE
- size: 10718067
- timestamp: 1708690016533
+ size: 10716207
+ timestamp: 1714449077139
- kind: conda
name: libarrow-substrait
- version: 15.0.0
- build: h469e5c9_7_cpu
- build_number: 7
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libarrow-substrait-15.0.0-h469e5c9_7_cpu.conda
- sha256: 96b24376eba751953af955db4485bb17bed81d9260082bd7f0b1850b2314f281
- md5: 9b49ca045cc212b4139a16c14e11491b
+ version: 15.0.2
+ build: h1f0e801_6_cpu
+ build_number: 6
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/libarrow-substrait-15.0.2-h1f0e801_6_cpu.conda
+ sha256: 503dd6b93704ea8f759e56469a5e46eb93a0f0617e94768d63aa57326331a6df
+ md5: 3ef4e5b3484e3b71dc489e45029e716f
depends:
- - libarrow 15.0.0 h5001e6d_7_cpu
- - libarrow-acero 15.0.0 h59595ed_7_cpu
- - libarrow-dataset 15.0.0 h59595ed_7_cpu
- - libgcc-ng >=12
- - libprotobuf >=4.25.2,<4.25.3.0a0
- - libstdcxx-ng >=12
+ - libabseil * cxx17*
+ - libabseil >=20240116.2,<20240117.0a0
+ - libarrow 15.0.2 he3d97d8_6_cpu
+ - libarrow-acero 15.0.2 he0c23c2_6_cpu
+ - libarrow-dataset 15.0.2 he0c23c2_6_cpu
+ - libprotobuf >=4.25.3,<4.25.4.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
license: Apache-2.0
license_family: APACHE
- size: 519310
- timestamp: 1708689413310
+ size: 364229
+ timestamp: 1714449346372
- kind: conda
name: libarrow-substrait
- version: 15.0.0
- build: hb30bb1e_7_cpu
- build_number: 7
+ version: 15.0.2
+ build: hb2e0ddf_6_cpu
+ build_number: 6
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/libarrow-substrait-15.0.0-hb30bb1e_7_cpu.conda
- sha256: 949d046a4b910c2a19105090e35d1e70a230aca6e26bbbb2679735cf17afcc26
- md5: d6e5cea5c78a9fe6423a8a975383a495
+ url: https://conda.anaconda.org/conda-forge/osx-64/libarrow-substrait-15.0.2-hb2e0ddf_6_cpu.conda
+ sha256: 4247904d3e71835c53f8ddba4f981e6f5847d97976f1942ec5c6de045b78b821
+ md5: 461e5818ad4b8b16eb395085d5699d9f
depends:
- __osx >=10.13
- - libarrow 15.0.0 h331b9b1_7_cpu
- - libarrow-acero 15.0.0 hd427752_7_cpu
- - libarrow-dataset 15.0.0 hd427752_7_cpu
+ - libarrow 15.0.2 hfba3c4c_6_cpu
+ - libarrow-acero 15.0.2 ha0df490_6_cpu
+ - libarrow-dataset 15.0.2 ha0df490_6_cpu
- libcxx >=16
- - libprotobuf >=4.25.2,<4.25.3.0a0
+ - libprotobuf >=4.25.3,<4.25.4.0a0
license: Apache-2.0
license_family: APACHE
- size: 450102
- timestamp: 1708690580087
+ size: 453104
+ timestamp: 1714450370633
- kind: conda
name: libarrow-substrait
- version: 15.0.0
- build: he2b277e_7_cpu
- build_number: 7
+ version: 15.0.2
+ build: hd92e347_6_cpu
+ build_number: 6
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-substrait-15.0.0-he2b277e_7_cpu.conda
- sha256: 7e72d1ca94910ac415a30add88257e5fbfc1993d592d66ef91adcdac0a804d68
- md5: 53e65b46c9751da4821dc45493e99f5e
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-substrait-15.0.2-hd92e347_6_cpu.conda
+ sha256: aee7a1dd5cfe52f8a2ac3479757294b7daf8dbf07483b59a02c99ea14f39e706
+ md5: d05f8237432665ceeca8a8037446f004
depends:
- - libarrow 15.0.0 hd462d9b_7_cpu
- - libarrow-acero 15.0.0 hebf3989_7_cpu
- - libarrow-dataset 15.0.0 hebf3989_7_cpu
+ - __osx >=11.0
+ - libarrow 15.0.2 hea125af_6_cpu
+ - libarrow-acero 15.0.2 h3f3aa29_6_cpu
+ - libarrow-dataset 15.0.2 h3f3aa29_6_cpu
- libcxx >=16
- - libprotobuf >=4.25.2,<4.25.3.0a0
+ - libprotobuf >=4.25.3,<4.25.4.0a0
license: Apache-2.0
license_family: APACHE
- size: 439520
- timestamp: 1708691055213
+ size: 442486
+ timestamp: 1714450997883
- kind: conda
name: libarrow-substrait
- version: 15.0.0
- build: hf368baa_7_cpu
- build_number: 7
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/libarrow-substrait-15.0.0-hf368baa_7_cpu.conda
- sha256: 0cb693e6dfb3419dab764f922d09819b6be8e48ce9fe2d8c988da278449a6ede
- md5: ac84b8ab3e26ea7124597920928d113b
+ version: 15.0.2
+ build: he4f5ca8_6_cpu
+ build_number: 6
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libarrow-substrait-15.0.2-he4f5ca8_6_cpu.conda
+ sha256: 7ec84b1a2ed461184bf3c53304e61468765a2b2151d9522f3f9fac0612808249
+ md5: cf594f6982de20afedf7aeb6602ceb89
depends:
- - libabseil * cxx17*
- - libabseil >=20240116.1,<20240117.0a0
- - libarrow 15.0.0 hd01637b_7_cpu
- - libarrow-acero 15.0.0 h63175ca_7_cpu
- - libarrow-dataset 15.0.0 h63175ca_7_cpu
- - libprotobuf >=4.25.2,<4.25.3.0a0
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
+ - gflags >=2.2.2,<2.3.0a0
+ - libarrow 15.0.2 hefa796f_6_cpu
+ - libarrow-acero 15.0.2 hbabe93e_6_cpu
+ - libarrow-dataset 15.0.2 hbabe93e_6_cpu
+ - libgcc-ng >=12
+ - libprotobuf >=4.25.3,<4.25.4.0a0
+ - libstdcxx-ng >=12
license: Apache-2.0
license_family: APACHE
- size: 361426
- timestamp: 1708690266235
+ size: 521452
+ timestamp: 1714448338650
+- kind: conda
+ name: libasprintf
+ version: 0.22.5
+ build: h5ff76d1_2
+ build_number: 2
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/libasprintf-0.22.5-h5ff76d1_2.conda
+ sha256: 4babb29b8d39ae8b341c094c134a1917c595846e5f974c9d0cb64d3f734b46b1
+ md5: ad803793d7168331f1395685cbdae212
+ license: LGPL-2.1-or-later
+ size: 40438
+ timestamp: 1712512749697
+- kind: conda
+ name: libasprintf
+ version: 0.22.5
+ build: h661eb56_2
+ build_number: 2
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libasprintf-0.22.5-h661eb56_2.conda
+ sha256: 31d58af7eb54e2938123200239277f14893c5fa4b5d0280c8cf55ae10000638b
+ md5: dd197c968bf9760bba0031888d431ede
+ depends:
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
+ license: LGPL-2.1-or-later
+ size: 43226
+ timestamp: 1712512265295
+- kind: conda
+ name: libasprintf
+ version: 0.22.5
+ build: h8fbad5d_2
+ build_number: 2
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libasprintf-0.22.5-h8fbad5d_2.conda
+ sha256: 04bbe4374719906cd08b639a3f34828030f405c33b47c757b47fd55aa7310179
+ md5: 1b27402397a76115679c4855ab2ece41
+ license: LGPL-2.1-or-later
+ size: 40630
+ timestamp: 1712512727388
+- kind: conda
+ name: libasprintf-devel
+ version: 0.22.5
+ build: h5ff76d1_2
+ build_number: 2
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/libasprintf-devel-0.22.5-h5ff76d1_2.conda
+ sha256: 39fa757378b49993142013c1f69dd56248cc3703c2f04c5bcf4cc4acdc644ae3
+ md5: c7182eda3bc727384e2f98f4d680fa7d
+ depends:
+ - libasprintf 0.22.5 h5ff76d1_2
+ license: LGPL-2.1-or-later
+ size: 34702
+ timestamp: 1712512806211
+- kind: conda
+ name: libasprintf-devel
+ version: 0.22.5
+ build: h661eb56_2
+ build_number: 2
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libasprintf-devel-0.22.5-h661eb56_2.conda
+ sha256: 99d26d272a8203d30b3efbe734a99c823499884d7759b4291674438137c4b5ca
+ md5: 02e41ab5834dcdcc8590cf29d9526f50
+ depends:
+ - libasprintf 0.22.5 h661eb56_2
+ - libgcc-ng >=12
+ license: LGPL-2.1-or-later
+ size: 34225
+ timestamp: 1712512295117
+- kind: conda
+ name: libasprintf-devel
+ version: 0.22.5
+ build: h8fbad5d_2
+ build_number: 2
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libasprintf-devel-0.22.5-h8fbad5d_2.conda
+ sha256: f5331486854a5fe80bb837891efb28a28623f762327372cb4cbc264c9c4bf9e2
+ md5: 480c106e87d4c4791e6b55a6d1678866
+ depends:
+ - libasprintf 0.22.5 h8fbad5d_2
+ license: LGPL-2.1-or-later
+ size: 34625
+ timestamp: 1712512769736
- kind: conda
name: libblas
version: 3.9.0
- build: 21_linux64_openblas
- build_number: 21
+ build: 22_linux64_openblas
+ build_number: 22
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libblas-3.9.0-21_linux64_openblas.conda
- sha256: ebd5c91f029f779fb88a1fcbd1e499559a9c258e3674ff58a2fbb4e375ae56d9
- md5: 0ac9f44fc096772b0aa092119b00c3ca
+ url: https://conda.anaconda.org/conda-forge/linux-64/libblas-3.9.0-22_linux64_openblas.conda
+ sha256: 082b8ac20d43a7bbcdc28b3b1cd40e4df3a8b5daf0a2d23d68953a44d2d12c1b
+ md5: 1a2a0cd3153464fee6646f3dd6dad9b8
depends:
- - libopenblas >=0.3.26,<0.3.27.0a0
- - libopenblas >=0.3.26,<1.0a0
+ - libopenblas >=0.3.27,<0.3.28.0a0
+ - libopenblas >=0.3.27,<1.0a0
constrains:
- - liblapacke 3.9.0 21_linux64_openblas
+ - libcblas 3.9.0 22_linux64_openblas
- blas * openblas
- - libcblas 3.9.0 21_linux64_openblas
- - liblapack 3.9.0 21_linux64_openblas
+ - liblapacke 3.9.0 22_linux64_openblas
+ - liblapack 3.9.0 22_linux64_openblas
license: BSD-3-Clause
license_family: BSD
- size: 14691
- timestamp: 1705979549006
+ size: 14537
+ timestamp: 1712542250081
- kind: conda
name: libblas
version: 3.9.0
- build: 21_osx64_openblas
- build_number: 21
+ build: 22_osx64_openblas
+ build_number: 22
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/libblas-3.9.0-21_osx64_openblas.conda
- sha256: 5381eab20f4793996cf22e58461ea8a3a4dff1442bb45663b5920f2d26288688
- md5: 23286066c595986aa0df6452a8416c08
+ url: https://conda.anaconda.org/conda-forge/osx-64/libblas-3.9.0-22_osx64_openblas.conda
+ sha256: d72060239f904b3a81d2329efcf84dc62c2dfd66dbc4efc8dcae1afdf8f02b59
+ md5: b80966a8c8dd0b531f8e65f709d732e8
depends:
- - libopenblas >=0.3.26,<0.3.27.0a0
- - libopenblas >=0.3.26,<1.0a0
+ - libopenblas >=0.3.27,<0.3.28.0a0
+ - libopenblas >=0.3.27,<1.0a0
constrains:
- - libcblas 3.9.0 21_osx64_openblas
- - liblapacke 3.9.0 21_osx64_openblas
+ - liblapacke 3.9.0 22_osx64_openblas
- blas * openblas
- - liblapack 3.9.0 21_osx64_openblas
+ - libcblas 3.9.0 22_osx64_openblas
+ - liblapack 3.9.0 22_osx64_openblas
license: BSD-3-Clause
license_family: BSD
- size: 14822
- timestamp: 1705979699547
+ size: 14749
+ timestamp: 1712542279018
- kind: conda
name: libblas
version: 3.9.0
- build: 21_osxarm64_openblas
- build_number: 21
+ build: 22_osxarm64_openblas
+ build_number: 22
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/libblas-3.9.0-21_osxarm64_openblas.conda
- sha256: 9a553af92af9f241457f4d14eabb872bc341cd0ddea1da6e7939e9c6a7ee1a25
- md5: b3804f4af39eca9d77360b12811e6d1d
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libblas-3.9.0-22_osxarm64_openblas.conda
+ sha256: 8620e13366076011cfcc6b2565c7a2d362c5d3f0423f54b9ef9bfc17b1a012a4
+ md5: aeaf35355ef0f37c7c1ba35b7b7db55f
depends:
- - libopenblas >=0.3.26,<0.3.27.0a0
- - libopenblas >=0.3.26,<1.0a0
+ - libopenblas >=0.3.27,<0.3.28.0a0
+ - libopenblas >=0.3.27,<1.0a0
constrains:
- - libcblas 3.9.0 21_osxarm64_openblas
- - liblapack 3.9.0 21_osxarm64_openblas
- blas * openblas
- - liblapacke 3.9.0 21_osxarm64_openblas
+ - liblapack 3.9.0 22_osxarm64_openblas
+ - liblapacke 3.9.0 22_osxarm64_openblas
+ - libcblas 3.9.0 22_osxarm64_openblas
license: BSD-3-Clause
license_family: BSD
- size: 14915
- timestamp: 1705980172730
+ size: 14824
+ timestamp: 1712542396471
- kind: conda
name: libblas
version: 3.9.0
- build: 21_win64_openblas
- build_number: 21
+ build: 22_win64_mkl
+ build_number: 22
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/libblas-3.9.0-22_win64_mkl.conda
+ sha256: 4faab445cbd9a13736a206b98fde962d0a9fa80dcbd38300951a8b2863e7c35c
+ md5: 65c56ecdeceffd6c32d3d54db7e02c6e
+ depends:
+ - mkl 2024.1.0 h66d3029_692
+ constrains:
+ - liblapacke 3.9.0 22_win64_mkl
+ - blas * mkl
+ - libcblas 3.9.0 22_win64_mkl
+ - liblapack 3.9.0 22_win64_mkl
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 5182602
+ timestamp: 1712542984136
+- kind: conda
+ name: libblas
+ version: 3.9.0
+ build: 22_win64_openblas
+ build_number: 22
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/libblas-3.9.0-21_win64_openblas.conda
- sha256: f3efad3b893086c8883c6e00f58d9687eace24e1e780ed39967680f434bad2da
- md5: 62ce74acc92bdb5824c6a86a096709de
+ url: https://conda.anaconda.org/conda-forge/win-64/libblas-3.9.0-22_win64_openblas.conda
+ sha256: 0b1d7f17c124b847ad4318490ee182322d543ce3a406f058e4ed17e24fecf7a6
+ md5: 2ab0756ac16e79ae9d1acdb66824f981
depends:
- - libopenblas 0.3.26 pthreads_hc140b1d_0
+ - libopenblas 0.3.27 pthreads_hc140b1d_0
constrains:
- - liblapack 3.9.0 21_win64_openblas
+ - liblapack 3.9.0 22_win64_openblas
+ - libcblas 3.9.0 22_win64_openblas
+ - liblapacke 3.9.0 22_win64_openblas
- blas * openblas
- - libcblas 3.9.0 21_win64_openblas
- - liblapacke 3.9.0 21_win64_openblas
track_features:
- blas_openblas
license: BSD-3-Clause
license_family: BSD
- size: 3973197
- timestamp: 1705979993813
+ size: 3975024
+ timestamp: 1712542707123
- kind: conda
name: libboost-headers
version: 1.84.0
- build: h57928b3_1
- build_number: 1
+ build: h57928b3_2
+ build_number: 2
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/libboost-headers-1.84.0-h57928b3_1.conda
- sha256: 790ad368444ab7f64eee4060e42a13323b11fe435629d06cb6a84d4a471ac8eb
- md5: 28b61d8b072ee3b7a7596a02a0b2c9df
+ url: https://conda.anaconda.org/conda-forge/win-64/libboost-headers-1.84.0-h57928b3_2.conda
+ sha256: 9acabbc9bf68f89ff60aa06e622b1bdf20edc7b3f53bfc782135f0ea9882291f
+ md5: 01d545c5fbafd05719fa31148cbd1989
constrains:
- boost-cpp =1.84.0
license: BSL-1.0
- size: 13838168
- timestamp: 1707841627792
+ size: 13853504
+ timestamp: 1711405828125
- kind: conda
name: libboost-headers
version: 1.84.0
- build: h694c41f_1
- build_number: 1
+ build: h694c41f_2
+ build_number: 2
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/libboost-headers-1.84.0-h694c41f_1.conda
- sha256: cbe9834e3ea802ae6ab98ecde36d9840afd1bca768aabcb766a237124abcdfa2
- md5: 530c932ca58015980579dbd0dbc7001e
+ url: https://conda.anaconda.org/conda-forge/osx-64/libboost-headers-1.84.0-h694c41f_2.conda
+ sha256: e51f3b877ab4a7a68bf1e1f95e9b007d716e85547078bfd5f6f7f114545dc26e
+ md5: 37678c6938655e8862e121b48101365a
constrains:
- boost-cpp =1.84.0
license: BSL-1.0
- size: 13822391
- timestamp: 1707841532116
+ size: 13810365
+ timestamp: 1711406234038
- kind: conda
name: libboost-headers
version: 1.84.0
- build: ha770c72_1
- build_number: 1
+ build: ha770c72_2
+ build_number: 2
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libboost-headers-1.84.0-ha770c72_1.conda
- sha256: f5ac6b12768e5c735d2c8e4e1e05093b105d649a68f02f6a5349f5cb61719b9c
- md5: 63a2690ffde5448bd8bbf19b5d1d366c
+ url: https://conda.anaconda.org/conda-forge/linux-64/libboost-headers-1.84.0-ha770c72_2.conda
+ sha256: 5a7843db33422d043256af27f288836f51530b058653bdb074704eb72282f601
+ md5: 85d30a3fcc0f1cfc252776208af546a1
constrains:
- boost-cpp =1.84.0
license: BSL-1.0
- size: 13734106
- timestamp: 1707840416473
+ size: 13730884
+ timestamp: 1711404167604
- kind: conda
name: libboost-headers
version: 1.84.0
- build: hce30654_1
- build_number: 1
+ build: hce30654_2
+ build_number: 2
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/libboost-headers-1.84.0-hce30654_1.conda
- sha256: 006d0e4e266b806eb2280c6e3250e79a011428c21a706ee7d3e4251f66d1f278
- md5: 6e665d044322dfffd437d7c6090e64f2
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libboost-headers-1.84.0-hce30654_2.conda
+ sha256: 2850952cc521318b6a5b18d8f55c86149b779a9103cca9875ff128ce9b6d6400
+ md5: bf16112d5337a9a80d7126ac3a2cee7c
constrains:
- boost-cpp =1.84.0
license: BSL-1.0
- size: 13787581
- timestamp: 1707841353524
+ size: 13849830
+ timestamp: 1711406246757
- kind: conda
name: libbrotlicommon
version: 1.1.0
@@ -10332,222 +16914,213 @@ packages:
- kind: conda
name: libcblas
version: 3.9.0
- build: 21_linux64_openblas
- build_number: 21
+ build: 22_linux64_openblas
+ build_number: 22
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.9.0-21_linux64_openblas.conda
- sha256: 467bbfbfe1a1aeb8b1f9f6485eedd8ed1b6318941bf3702da72336ccf4dc25a6
- md5: 4a3816d06451c4946e2db26b86472cb6
+ url: https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.9.0-22_linux64_openblas.conda
+ sha256: da1b2faa017663c8f5555c1c5518e96ac4cd8e0be2a673c1c9e2cb8507c8fe46
+ md5: 4b31699e0ec5de64d5896e580389c9a1
depends:
- - libblas 3.9.0 21_linux64_openblas
+ - libblas 3.9.0 22_linux64_openblas
constrains:
- - liblapacke 3.9.0 21_linux64_openblas
+ - liblapack 3.9.0 22_linux64_openblas
- blas * openblas
- - liblapack 3.9.0 21_linux64_openblas
+ - liblapacke 3.9.0 22_linux64_openblas
license: BSD-3-Clause
license_family: BSD
- size: 14614
- timestamp: 1705979564122
+ size: 14438
+ timestamp: 1712542270166
- kind: conda
name: libcblas
version: 3.9.0
- build: 21_osx64_openblas
- build_number: 21
+ build: 22_osx64_openblas
+ build_number: 22
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/libcblas-3.9.0-21_osx64_openblas.conda
- sha256: e2b1455612d4cfb3ac3170f0c538516ebd0b113780ac6603338245354e1b2f02
- md5: 7a1b54774bad723e8ba01ca48eb301b5
+ url: https://conda.anaconda.org/conda-forge/osx-64/libcblas-3.9.0-22_osx64_openblas.conda
+ sha256: 6a2ba9198e2320c3e22fe3d121310cf8a8ac663e94100c5693b34523fcb3cc04
+ md5: b9fef82772330f61b2b0201c72d2c29b
depends:
- - libblas 3.9.0 21_osx64_openblas
+ - libblas 3.9.0 22_osx64_openblas
constrains:
- - liblapacke 3.9.0 21_osx64_openblas
+ - liblapacke 3.9.0 22_osx64_openblas
- blas * openblas
- - liblapack 3.9.0 21_osx64_openblas
+ - liblapack 3.9.0 22_osx64_openblas
license: BSD-3-Clause
license_family: BSD
- size: 14715
- timestamp: 1705979715508
+ size: 14636
+ timestamp: 1712542311437
- kind: conda
name: libcblas
version: 3.9.0
- build: 21_osxarm64_openblas
- build_number: 21
+ build: 22_osxarm64_openblas
+ build_number: 22
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/libcblas-3.9.0-21_osxarm64_openblas.conda
- sha256: 4510e3e4824693c3f80fc54e72d81dd89acaa6e6d68cd948af0870a640ea7eeb
- md5: 48e9d42c65ce664d8fccef2ac6af853c
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libcblas-3.9.0-22_osxarm64_openblas.conda
+ sha256: 2c7902985dc77db1d7252b4e838d92a34b1729799ae402988d62d077868f6cca
+ md5: 37b3682240a69874a22658dedbca37d9
depends:
- - libblas 3.9.0 21_osxarm64_openblas
+ - libblas 3.9.0 22_osxarm64_openblas
constrains:
- - liblapack 3.9.0 21_osxarm64_openblas
- blas * openblas
- - liblapacke 3.9.0 21_osxarm64_openblas
+ - liblapack 3.9.0 22_osxarm64_openblas
+ - liblapacke 3.9.0 22_osxarm64_openblas
license: BSD-3-Clause
license_family: BSD
- size: 14800
- timestamp: 1705980195551
+ size: 14741
+ timestamp: 1712542420590
- kind: conda
name: libcblas
version: 3.9.0
- build: 21_win64_openblas
- build_number: 21
+ build: 22_win64_mkl
+ build_number: 22
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/libcblas-3.9.0-22_win64_mkl.conda
+ sha256: 5503273924650330dc03edd1eb01ec4020b9967b5a4cafc377ba20b976d15590
+ md5: 336c93ab102846c6131cf68e722a68f1
+ depends:
+ - libblas 3.9.0 22_win64_mkl
+ constrains:
+ - liblapacke 3.9.0 22_win64_mkl
+ - blas * mkl
+ - liblapack 3.9.0 22_win64_mkl
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 5191513
+ timestamp: 1712543043641
+- kind: conda
+ name: libcblas
+ version: 3.9.0
+ build: 22_win64_openblas
+ build_number: 22
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/libcblas-3.9.0-21_win64_openblas.conda
- sha256: e44786130a4feea9557c180c42235ddc87b68616215b1e17145d98db7b6a5aa9
- md5: bd3b35e4825f64dbf9f2c14b7e5f3624
+ url: https://conda.anaconda.org/conda-forge/win-64/libcblas-3.9.0-22_win64_openblas.conda
+ sha256: b4b6f8e582ced20499d7ef8fb367cfb799ff530d1318231285fc13e25963e777
+ md5: 4d923369db654f12b8fd66b0cc1de9e2
depends:
- - libblas 3.9.0 21_win64_openblas
+ - libblas 3.9.0 22_win64_openblas
constrains:
+ - liblapack 3.9.0 22_win64_openblas
+ - liblapacke 3.9.0 22_win64_openblas
- blas * openblas
- - liblapack 3.9.0 21_win64_openblas
- - liblapacke 3.9.0 21_win64_openblas
track_features:
- blas_openblas
license: BSD-3-Clause
license_family: BSD
- size: 3973158
- timestamp: 1705980029383
-- kind: conda
- name: libclang
- version: 15.0.7
- build: default_h6b1ee41_4
- build_number: 4
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/libclang-15.0.7-default_h6b1ee41_4.conda
- sha256: 7ff11065d4706777ff18041e200715e512ea7313d424b1e04204e9291f836326
- md5: 054a23b7162cadf8c7d7d54f90948c82
- depends:
- - libclang13 15.0.7 default_h89cd682_4
- - libcxx >=16.0.6
- - libllvm15 >=15.0.7,<15.1.0a0
- license: Apache-2.0 WITH LLVM-exception
- license_family: Apache
- size: 133689
- timestamp: 1701415540597
+ size: 3974318
+ timestamp: 1712542759723
- kind: conda
- name: libclang
+ name: libclang-cpp15
version: 15.0.7
- build: default_hb11cfb5_4
- build_number: 4
+ build: default_h127d8a8_5
+ build_number: 5
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libclang-15.0.7-default_hb11cfb5_4.conda
- sha256: 0b80441f222a91074d0e5edb0fbc3b1ce16ca2cdf6ab899721afdcc3a3ff6302
- md5: c90f4cbb57839c98fef8f830e4b9972f
+ url: https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp15-15.0.7-default_h127d8a8_5.conda
+ sha256: 9b0238e705a33da74ca82efd03974f499550f7dada1340cc9cb7c35a92411ed8
+ md5: d0a9633b53cdc319b8a1a532ae7822b8
depends:
- - libclang13 15.0.7 default_ha2b6cf4_4
- libgcc-ng >=12
- libllvm15 >=15.0.7,<15.1.0a0
- libstdcxx-ng >=12
license: Apache-2.0 WITH LLVM-exception
license_family: Apache
- size: 133384
- timestamp: 1701412265788
+ size: 17206402
+ timestamp: 1711063711931
- kind: conda
- name: libclang
+ name: libclang-cpp15
version: 15.0.7
- build: default_hd209bcb_4
- build_number: 4
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/libclang-15.0.7-default_hd209bcb_4.conda
- sha256: 1c8d91209aedbdb36d3ec11e840f76b5c8119a627d78f2352b81bc034894320b
- md5: 82102386cef9ba727456b16d37882b12
+ build: default_h7151d67_5
+ build_number: 5
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/libclang-cpp15-15.0.7-default_h7151d67_5.conda
+ sha256: 0389c856f8524615e29980ed15ad39cdca6bbd01de35ddf5f6550392db943838
+ md5: ec9151310badcf29fa53ae554273e269
depends:
- - libclang13 15.0.7 default_ha49e599_4
- libcxx >=16.0.6
- libllvm15 >=15.0.7,<15.1.0a0
license: Apache-2.0 WITH LLVM-exception
license_family: Apache
- size: 133641
- timestamp: 1701414923949
-- kind: conda
- name: libclang
- version: 15.0.7
- build: default_hde6756a_4
- build_number: 4
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/libclang-15.0.7-default_hde6756a_4.conda
- sha256: 1083e53f51b35c7a6769fafa2e7ab5bb85f953eb288eb4a62cddd8200db7c46d
- md5: a621ea4ac3f826d02441369e73e53800
- depends:
- - libclang13 15.0.7 default_h85b4d89_4
- - libxml2 >=2.12.1,<3.0.0a0
- - libzlib >=1.2.13,<1.3.0a0
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
- - zstd >=1.5.5,<1.6.0a0
- license: Apache-2.0 WITH LLVM-exception
- license_family: Apache
- size: 148080
- timestamp: 1701415503085
+ size: 12345888
+ timestamp: 1711067079759
- kind: conda
- name: libclang13
+ name: libclang-cpp15
version: 15.0.7
- build: default_h85b4d89_4
- build_number: 4
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/libclang13-15.0.7-default_h85b4d89_4.conda
- sha256: 37917f88ea5beb660a86b2325b727a03db125e25182d8186921a7cc53966df9d
- md5: c6b0181860717a08469a324c4180ff2d
+ build: default_he012953_5
+ build_number: 5
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libclang-cpp15-15.0.7-default_he012953_5.conda
+ sha256: 2e56e0acc3afad2708bc410e499d23db517cd66dcfaba150d7d28cf5a35911a8
+ md5: a3035345155ca0a31eb1588bbbb2cff0
depends:
- - libzlib >=1.2.13,<1.3.0a0
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
- - zstd >=1.5.5,<1.6.0a0
+ - libcxx >=16.0.6
+ - libllvm15 >=15.0.7,<15.1.0a0
license: Apache-2.0 WITH LLVM-exception
license_family: Apache
- size: 21902269
- timestamp: 1701415323912
+ size: 11404805
+ timestamp: 1711086898132
- kind: conda
name: libclang13
- version: 15.0.7
- build: default_h89cd682_4
- build_number: 4
+ version: 18.1.4
+ build: default_h0edc4dd_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/libclang13-15.0.7-default_h89cd682_4.conda
- sha256: bb710896ffcda1f3233e94a62c84f0c31ac062e17a723b7fa034449010c5d085
- md5: 974a771460156182b1871585cf534532
+ url: https://conda.anaconda.org/conda-forge/osx-64/libclang13-18.1.4-default_h0edc4dd_0.conda
+ sha256: ecc01dea1dcb5512c88f2130ad3bd5833212cf5f1a1acc3f023e02453d4254d1
+ md5: 7ce282ba5e3e2ad551473e1b3e8b901c
depends:
- libcxx >=16.0.6
- - libllvm15 >=15.0.7,<15.1.0a0
+ - libllvm18 >=18.1.4,<18.2.0a0
license: Apache-2.0 WITH LLVM-exception
license_family: Apache
- size: 6952807
- timestamp: 1701415435112
+ size: 8056376
+ timestamp: 1714514376976
- kind: conda
name: libclang13
- version: 15.0.7
- build: default_ha2b6cf4_4
- build_number: 4
+ version: 18.1.4
+ build: default_h5d6823c_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libclang13-15.0.7-default_ha2b6cf4_4.conda
- sha256: e1d34d415160b69a401dc0662bf1b5378655193ed1364bf7dd14f055e76e4b60
- md5: 898e0dd993afbed0d871b60c2eb33b83
+ url: https://conda.anaconda.org/conda-forge/linux-64/libclang13-18.1.4-default_h5d6823c_0.conda
+ sha256: 3ec4de4613285b971350c9588125164ed2753bdabfd3a0f6378b7bc832a5a859
+ md5: 2c3b47879fc036ef57f3056834737ecb
depends:
- libgcc-ng >=12
- - libllvm15 >=15.0.7,<15.1.0a0
+ - libllvm18 >=18.1.4,<18.2.0a0
- libstdcxx-ng >=12
license: Apache-2.0 WITH LLVM-exception
license_family: Apache
- size: 9581845
- timestamp: 1701412208888
+ size: 11043670
+ timestamp: 1714511189746
- kind: conda
name: libclang13
- version: 15.0.7
- build: default_ha49e599_4
- build_number: 4
+ version: 18.1.4
+ build: default_h83d0a53_0
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/libclang13-15.0.7-default_ha49e599_4.conda
- sha256: 900b46ae1f8341d292bffff01e2d24a859b1ed4cfbece33c391a8e4fc9b0bb9c
- md5: 16014dc4b0f3b7f6530b8f82417f0b9e
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libclang13-18.1.4-default_h83d0a53_0.conda
+ sha256: 470b78cab98ee2789423093f91a2061854ecfe03844a49324da725d0c3ab59fb
+ md5: e15a98f98526a64bf3b6ecd644ea8319
depends:
- libcxx >=16.0.6
- - libllvm15 >=15.0.7,<15.1.0a0
+ - libllvm18 >=18.1.4,<18.2.0a0
+ license: Apache-2.0 WITH LLVM-exception
+ license_family: Apache
+ size: 7512983
+ timestamp: 1714514524493
+- kind: conda
+ name: libclang13
+ version: 18.1.4
+ build: default_hf64faad_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/libclang13-18.1.4-default_hf64faad_0.conda
+ sha256: 126ad517d9d85371566f6668e5207f69bc43e22dea4663674ebd90e23c36f38f
+ md5: eb322d98026526776d1464c2b04ddbe3
+ depends:
+ - libzlib >=1.2.13,<1.3.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ - zstd >=1.5.5,<1.6.0a0
license: Apache-2.0 WITH LLVM-exception
license_family: Apache
- size: 6461212
- timestamp: 1701414820365
+ size: 25328763
+ timestamp: 1714517601407
- kind: conda
name: libcrc32c
version: 1.1.2
@@ -10626,70 +17199,70 @@ packages:
timestamp: 1689195353551
- kind: conda
name: libcurl
- version: 8.5.0
+ version: 8.7.1
build: h2d989ff_0
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.5.0-h2d989ff_0.conda
- sha256: f1c04be217aaf161ce3c99a8d618871295b5dc1eae2f7ff7b32078af50303f5b
- md5: f1211ed00947a84e15a964a8f459f620
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.7.1-h2d989ff_0.conda
+ sha256: 973ac9368efca712a8fd19fe68524d7d9a3087fd88ad6b7fcdf60c3d2e19a498
+ md5: 34b9171710f0d9bf093d55bdc36ff355
depends:
- krb5 >=1.21.2,<1.22.0a0
- libnghttp2 >=1.58.0,<2.0a0
- libssh2 >=1.11.0,<2.0a0
- libzlib >=1.2.13,<1.3.0a0
- - openssl >=3.2.0,<4.0a0
+ - openssl >=3.2.1,<4.0a0
- zstd >=1.5.5,<1.6.0a0
license: curl
license_family: MIT
- size: 350298
- timestamp: 1701860532373
+ size: 358080
+ timestamp: 1711548548174
- kind: conda
name: libcurl
- version: 8.5.0
+ version: 8.7.1
build: h726d00d_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.5.0-h726d00d_0.conda
- sha256: 7ec7e026be90da0965dfa6b92bbc905c852c13b27f3f83c47156db66ed0668f0
- md5: 86d749e27fe00fa6b7d790a6feaa22a2
+ url: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.7.1-h726d00d_0.conda
+ sha256: 06cb1bd3bbaf905213777d6ade190ac4c7fb7a20dfe0cf901c977dbbc6cec265
+ md5: fa58e5eaa12006bc3289a71357bef167
depends:
- krb5 >=1.21.2,<1.22.0a0
- libnghttp2 >=1.58.0,<2.0a0
- libssh2 >=1.11.0,<2.0a0
- libzlib >=1.2.13,<1.3.0a0
- - openssl >=3.2.0,<4.0a0
+ - openssl >=3.2.1,<4.0a0
- zstd >=1.5.5,<1.6.0a0
license: curl
license_family: MIT
- size: 367821
- timestamp: 1701860630644
+ size: 378176
+ timestamp: 1711548390530
- kind: conda
name: libcurl
- version: 8.5.0
+ version: 8.7.1
build: hca28451_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.5.0-hca28451_0.conda
- sha256: 00a6bea5ff90ca58eeb15ebc98e08ffb88bddaff27396bb62640064f59d29cf0
- md5: 7144d5a828e2cae218e0e3c98d8a0aeb
+ url: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.7.1-hca28451_0.conda
+ sha256: 82a75e9a5d9ee5b2f487d850ec5d4edc18a56eb9527608a95a916c40baae3843
+ md5: 755c7f876815003337d2c61ff5d047e5
depends:
- krb5 >=1.21.2,<1.22.0a0
- libgcc-ng >=12
- libnghttp2 >=1.58.0,<2.0a0
- libssh2 >=1.11.0,<2.0a0
- libzlib >=1.2.13,<1.3.0a0
- - openssl >=3.2.0,<4.0a0
+ - openssl >=3.2.1,<4.0a0
- zstd >=1.5.5,<1.6.0a0
license: curl
license_family: MIT
- size: 389164
- timestamp: 1701860147844
+ size: 398293
+ timestamp: 1711548114077
- kind: conda
name: libcurl
- version: 8.5.0
+ version: 8.7.1
build: hd5e4a3a_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.5.0-hd5e4a3a_0.conda
- sha256: 8c933416c61445ab51515a5ca8c32ddc4f83180d5dc43684e4a80915022ffe1f
- md5: c95eb3d60266dd47b8eb864e10d6bcf3
+ url: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.7.1-hd5e4a3a_0.conda
+ sha256: 8dd272362e2aeb1d4f49333ff57e07eb4da2bbabce20110a2416df9152ba03e0
+ md5: 3396aff340d0903e8814c2852d631e4e
depends:
- krb5 >=1.21.2,<1.22.0a0
- libssh2 >=1.11.0,<2.0a0
@@ -10699,8 +17272,8 @@ packages:
- vc14_runtime >=14.29.30139
license: curl
license_family: MIT
- size: 323619
- timestamp: 1701860670113
+ size: 331262
+ timestamp: 1711548608132
- kind: conda
name: libcxx
version: 16.0.6
@@ -10727,58 +17300,58 @@ packages:
timestamp: 1686896907750
- kind: conda
name: libdeflate
- version: '1.19'
- build: ha4e1b8e_0
+ version: '1.20'
+ build: h49d49c5_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/libdeflate-1.19-ha4e1b8e_0.conda
- sha256: d0f789120fedd0881b129aba9993ec5dcf0ecca67a71ea20c74394e41adcb503
- md5: 6a45f543c2beb40023df5ee7e3cedfbd
+ url: https://conda.anaconda.org/conda-forge/osx-64/libdeflate-1.20-h49d49c5_0.conda
+ sha256: 8c2087952db55c4118dd2e29381176a54606da47033fd61ebb1b0f4391fcd28d
+ md5: d46104f6a896a0bc6a1d37b88b2edf5c
license: MIT
license_family: MIT
- size: 68962
- timestamp: 1694922440450
+ size: 70364
+ timestamp: 1711196727346
- kind: conda
name: libdeflate
- version: '1.19'
- build: hb547adb_0
+ version: '1.20'
+ build: h93a5062_0
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/libdeflate-1.19-hb547adb_0.conda
- sha256: 6a3d188a6ae845a742dc85c5fb3f7eb1e252726cd74f0b8a7fa25ec09db6b87a
- md5: f8c1eb0e99e90b55965c6558578537cc
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libdeflate-1.20-h93a5062_0.conda
+ sha256: 6d16cccb141b6bb05c38107b335089046664ea1d6611601d3f6e7e4227a99925
+ md5: 97efeaeba2a9a82bdf46fc6d025e3a57
license: MIT
license_family: MIT
- size: 52841
- timestamp: 1694924330786
+ size: 54481
+ timestamp: 1711196723486
- kind: conda
name: libdeflate
- version: '1.19'
+ version: '1.20'
build: hcfcfb64_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/libdeflate-1.19-hcfcfb64_0.conda
- sha256: e2886a84eaa0fbeca1d1d810270f234431d190402b4a79acf756ca2d16000354
- md5: 002b1b723b44dbd286b9e3708762433c
+ url: https://conda.anaconda.org/conda-forge/win-64/libdeflate-1.20-hcfcfb64_0.conda
+ sha256: 6628a5b76ad70c1a0909563c637ddc446ee824739ba7c348d4da2f0aa6ac9527
+ md5: b12b5bde5eb201a1df75e49320cc938a
depends:
- ucrt >=10.0.20348.0
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
license: MIT
license_family: MIT
- size: 153203
- timestamp: 1694922596415
+ size: 155358
+ timestamp: 1711197066985
- kind: conda
name: libdeflate
- version: '1.19'
+ version: '1.20'
build: hd590300_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.19-hd590300_0.conda
- sha256: 985ad27aa0ba7aad82afa88a8ede6a1aacb0aaca950d710f15d85360451e72fd
- md5: 1635570038840ee3f9c71d22aa5b8b6d
+ url: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.20-hd590300_0.conda
+ sha256: f8e0f25c382b1d0b87a9b03887a34dbd91485453f1ea991fef726dba57373612
+ md5: 8e88f9389f1165d7c0936fe40d9a9a79
depends:
- libgcc-ng >=12
license: MIT
license_family: MIT
- size: 67080
- timestamp: 1694922285678
+ size: 71500
+ timestamp: 1711196523408
- kind: conda
name: libedit
version: 3.1.20191231
@@ -10932,66 +17505,62 @@ packages:
timestamp: 1685725977222
- kind: conda
name: libexpat
- version: 2.5.0
- build: h63175ca_1
- build_number: 1
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.5.0-h63175ca_1.conda
- sha256: 794b2a9be72f176a2767c299574d330ffb76b2ed75d7fd20bee3bbadce5886cf
- md5: 636cc3cbbd2e28bcfd2f73b2044aac2c
+ version: 2.6.2
+ build: h59595ed_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.6.2-h59595ed_0.conda
+ sha256: 331bb7c7c05025343ebd79f86ae612b9e1e74d2687b8f3179faec234f986ce19
+ md5: e7ba12deb7020dd080c6c70e7b6f6a3d
+ depends:
+ - libgcc-ng >=12
constrains:
- - expat 2.5.0.*
+ - expat 2.6.2.*
license: MIT
license_family: MIT
- size: 138689
- timestamp: 1680190844101
+ size: 73730
+ timestamp: 1710362120304
- kind: conda
name: libexpat
- version: 2.5.0
- build: hb7217d7_1
- build_number: 1
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.5.0-hb7217d7_1.conda
- sha256: 7d143a9c991579ad4207f84c632650a571c66329090daa32b3c87cf7311c3381
- md5: 5a097ad3d17e42c148c9566280481317
+ version: 2.6.2
+ build: h63175ca_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.6.2-h63175ca_0.conda
+ sha256: 79f612f75108f3e16bbdc127d4885bb74729cf66a8702fca0373dad89d40c4b7
+ md5: bc592d03f62779511d392c175dcece64
constrains:
- - expat 2.5.0.*
+ - expat 2.6.2.*
license: MIT
license_family: MIT
- size: 63442
- timestamp: 1680190916539
+ size: 139224
+ timestamp: 1710362609641
- kind: conda
name: libexpat
- version: 2.5.0
- build: hcb278e6_1
- build_number: 1
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.5.0-hcb278e6_1.conda
- sha256: 74c98a563777ae2ad71f1f74d458a8ab043cee4a513467c159ccf159d0e461f3
- md5: 6305a3dd2752c76335295da4e581f2fd
- depends:
- - libgcc-ng >=12
+ version: 2.6.2
+ build: h73e2aa4_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/libexpat-2.6.2-h73e2aa4_0.conda
+ sha256: a188a77b275d61159a32ab547f7d17892226e7dac4518d2c6ac3ac8fc8dfde92
+ md5: 3d1d51c8f716d97c864d12f7af329526
constrains:
- - expat 2.5.0.*
+ - expat 2.6.2.*
license: MIT
license_family: MIT
- size: 77980
- timestamp: 1680190528313
+ size: 69246
+ timestamp: 1710362566073
- kind: conda
name: libexpat
- version: 2.5.0
- build: hf0c8a7f_1
- build_number: 1
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/libexpat-2.5.0-hf0c8a7f_1.conda
- sha256: 80024bd9f44d096c4cc07fb2bac76b5f1f7553390112dab3ad6acb16a05f0b96
- md5: 6c81cb022780ee33435cca0127dd43c9
+ version: 2.6.2
+ build: hebf3989_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.6.2-hebf3989_0.conda
+ sha256: ba7173ac30064ea901a4c9fb5a51846dcc25512ceb565759be7d18cbf3e5415e
+ md5: e3cde7cfa87f82f7cb13d482d5e0ad09
constrains:
- - expat 2.5.0.*
+ - expat 2.6.2.*
license: MIT
license_family: MIT
- size: 69602
- timestamp: 1680191040160
+ size: 63655
+ timestamp: 1710362424980
- kind: conda
name: libffi
version: 3.4.2
@@ -11086,24 +17655,36 @@ packages:
license: Apache 2.0
size: 531143
timestamp: 1527899216421
+- kind: conda
+ name: libgcc-devel_linux-64
+ version: 13.2.0
+ build: hceb6213_106
+ build_number: 106
+ subdir: noarch
+ noarch: generic
+ url: https://conda.anaconda.org/conda-forge/noarch/libgcc-devel_linux-64-13.2.0-hceb6213_106.conda
+ sha256: f5af7a346ba0a2c322028a7fa8ba99f5094911439d5aab2c6bc42a4e9022bc68
+ md5: b85d6b583f498b4ddc9150aefb492f7f
+ license: GPL-3.0-only WITH GCC-exception-3.1
+ size: 2575829
+ timestamp: 1714581666472
- kind: conda
name: libgcc-ng
version: 13.2.0
- build: h807b86a_5
- build_number: 5
+ build: h77fa898_6
+ build_number: 6
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-13.2.0-h807b86a_5.conda
- sha256: d32f78bfaac282cfe5205f46d558704ad737b8dbf71f9227788a5ca80facaba4
- md5: d4ff227c46917d3b4565302a2bbb276b
+ url: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-13.2.0-h77fa898_6.conda
+ sha256: 8bd6311a05f02459eb3efafe948f21e58170ccfcce4350a86de35d7573256bb2
+ md5: 4398809ac84d0b8c28beebaaa83277f5
depends:
- _libgcc_mutex 0.1 conda_forge
- _openmp_mutex >=4.5
constrains:
- - libgomp 13.2.0 h807b86a_5
+ - libgomp 13.2.0 h77fa898_6
license: GPL-3.0-only WITH GCC-exception-3.1
- license_family: GPL
- size: 770506
- timestamp: 1706819192021
+ size: 777610
+ timestamp: 1714581763008
- kind: conda
name: libgcrypt
version: 1.10.3
@@ -11121,430 +17702,539 @@ packages:
timestamp: 1701383493365
- kind: conda
name: libgdal
- version: 3.8.4
- build: h46636ed_0
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/libgdal-3.8.4-h46636ed_0.conda
- sha256: 12a0151e5e0d05590bcf5c6abf2fe36977df8b1198564198c167ed05492d5b1b
- md5: 5cf7d0f51e6e9dd8d175d8660b843024
+ version: 3.8.5
+ build: h2f7ae65_2
+ build_number: 2
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libgdal-3.8.5-h2f7ae65_2.conda
+ sha256: a4dd336fe93f1daabab7371878db45041d6ca543eb821057c9f2475c0848a0b3
+ md5: 438370283e674e908577ecd711980cef
depends:
+ - __osx >=11.0
- blosc >=1.21.5,<2.0a0
- - cfitsio >=4.3.1,<4.3.2.0a0
+ - cfitsio >=4.4.0,<4.4.1.0a0
- freexl >=2.0.0,<3.0a0
- geos >=3.12.1,<3.12.2.0a0
- geotiff >=1.7.1,<1.8.0a0
- - giflib >=5.2.1,<5.3.0a0
+ - giflib >=5.2.2,<5.3.0a0
- hdf4 >=4.2.15,<4.2.16.0a0
- hdf5 >=1.14.3,<1.14.4.0a0
- json-c >=0.17,<0.18.0a0
- kealib >=1.5.3,<1.6.0a0
- lerc >=4.0.0,<5.0a0
- - libaec >=1.1.2,<2.0a0
+ - libaec >=1.1.3,<2.0a0
- libarchive >=3.7.2,<3.8.0a0
- - libcurl >=8.5.0,<9.0a0
+ - libcurl >=8.7.1,<9.0a0
- libcxx >=16
- - libdeflate >=1.19,<1.20.0a0
- - libexpat >=2.5.0,<3.0a0
+ - libdeflate >=1.20,<1.21.0a0
+ - libexpat >=2.6.2,<3.0a0
- libiconv >=1.17,<2.0a0
- libjpeg-turbo >=3.0.0,<4.0a0
- libkml >=1.3.0,<1.4.0a0
- libnetcdf >=4.9.2,<4.9.3.0a0
- - libpng >=1.6.42,<1.7.0a0
+ - libpng >=1.6.43,<1.7.0a0
- libpq >=16.2,<17.0a0
- libspatialite >=5.1.0,<5.2.0a0
- - libsqlite >=3.45.1,<4.0a0
+ - libsqlite >=3.45.3,<4.0a0
- libtiff >=4.6.0,<4.7.0a0
- - libwebp-base >=1.3.2,<2.0a0
- - libxml2 >=2.12.5,<3.0a0
+ - libwebp-base >=1.4.0,<2.0a0
+ - libxml2 >=2.12.6,<3.0a0
- libzlib >=1.2.13,<1.3.0a0
- lz4-c >=1.9.3,<1.10.0a0
- - openjpeg >=2.5.0,<3.0a0
+ - openjpeg >=2.5.2,<3.0a0
- openssl >=3.2.1,<4.0a0
- - pcre2 >=10.42,<10.43.0a0
- - poppler >=24.2.0,<24.3.0a0
+ - pcre2 >=10.43,<10.44.0a0
+ - poppler >=24.4.0,<24.5.0a0
- postgresql
- - proj >=9.3.1,<9.3.2.0a0
- - tiledb >=2.20.0,<2.21.0a0
+ - proj >=9.4.0,<9.4.1.0a0
+ - tiledb >=2.22.0,<2.23.0a0
- xerces-c >=3.2.5,<3.3.0a0
- xz >=5.2.6,<6.0a0
- zstd >=1.5.5,<1.6.0a0
license: MIT
license_family: MIT
- size: 9370296
- timestamp: 1708280830989
+ size: 8527379
+ timestamp: 1713572329241
- kind: conda
name: libgdal
- version: 3.8.4
- build: h7c2897a_0
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/libgdal-3.8.4-h7c2897a_0.conda
- sha256: bb861002a1ac8dda09b8b55fe616ba5f086d68c5ff05c5246bdac28d747bcbff
- md5: a9cf2825eb54cb14bad6bcf6020634e0
+ version: 3.8.5
+ build: h7db9259_2
+ build_number: 2
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/libgdal-3.8.5-h7db9259_2.conda
+ sha256: e6c265406fb506edd655c42a963aa2faa4a65eb500d38fecdb8c7229f33a4dcb
+ md5: 317ae84a3ac78a1a3c77a1f019a0c982
depends:
+ - __osx >=10.9
- blosc >=1.21.5,<2.0a0
- - cfitsio >=4.3.1,<4.3.2.0a0
+ - cfitsio >=4.4.0,<4.4.1.0a0
- freexl >=2.0.0,<3.0a0
- geos >=3.12.1,<3.12.2.0a0
- geotiff >=1.7.1,<1.8.0a0
+ - giflib >=5.2.2,<5.3.0a0
- hdf4 >=4.2.15,<4.2.16.0a0
- hdf5 >=1.14.3,<1.14.4.0a0
+ - json-c >=0.17,<0.18.0a0
- kealib >=1.5.3,<1.6.0a0
- lerc >=4.0.0,<5.0a0
- - libaec >=1.1.2,<2.0a0
+ - libaec >=1.1.3,<2.0a0
- libarchive >=3.7.2,<3.8.0a0
- - libcurl >=8.5.0,<9.0a0
- - libdeflate >=1.19,<1.20.0a0
- - libexpat >=2.5.0,<3.0a0
+ - libcurl >=8.7.1,<9.0a0
+ - libcxx >=16
+ - libdeflate >=1.20,<1.21.0a0
+ - libexpat >=2.6.2,<3.0a0
- libiconv >=1.17,<2.0a0
- libjpeg-turbo >=3.0.0,<4.0a0
- libkml >=1.3.0,<1.4.0a0
- libnetcdf >=4.9.2,<4.9.3.0a0
- - libpng >=1.6.42,<1.7.0a0
+ - libpng >=1.6.43,<1.7.0a0
- libpq >=16.2,<17.0a0
- libspatialite >=5.1.0,<5.2.0a0
- - libsqlite >=3.45.1,<4.0a0
+ - libsqlite >=3.45.3,<4.0a0
- libtiff >=4.6.0,<4.7.0a0
- - libwebp-base >=1.3.2,<2.0a0
- - libxml2 >=2.12.5,<3.0a0
+ - libwebp-base >=1.4.0,<2.0a0
+ - libxml2 >=2.12.6,<3.0a0
- libzlib >=1.2.13,<1.3.0a0
- lz4-c >=1.9.3,<1.10.0a0
- - openjpeg >=2.5.0,<3.0a0
+ - openjpeg >=2.5.2,<3.0a0
- openssl >=3.2.1,<4.0a0
- - pcre2 >=10.42,<10.43.0a0
- - poppler >=24.2.0,<24.3.0a0
+ - pcre2 >=10.43,<10.44.0a0
+ - poppler >=24.4.0,<24.5.0a0
- postgresql
- - proj >=9.3.1,<9.3.2.0a0
- - tiledb >=2.20.0,<2.21.0a0
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
+ - proj >=9.4.0,<9.4.1.0a0
+ - tiledb >=2.22.0,<2.23.0a0
- xerces-c >=3.2.5,<3.3.0a0
- xz >=5.2.6,<6.0a0
- zstd >=1.5.5,<1.6.0a0
license: MIT
license_family: MIT
- size: 8653044
- timestamp: 1708280801946
+ size: 9371145
+ timestamp: 1713572023252
- kind: conda
name: libgdal
- version: 3.8.4
- build: h9323651_0
+ version: 3.8.5
+ build: hf9625ee_2
+ build_number: 2
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libgdal-3.8.4-h9323651_0.conda
- sha256: af88738b2eda7d388daad5bd7dd8fe66efbaba300921ecb6fb03d9c5823a950d
- md5: f0444ecc68c3f7d0855c9dd6bc3424a7
+ url: https://conda.anaconda.org/conda-forge/linux-64/libgdal-3.8.5-hf9625ee_2.conda
+ sha256: 06bab7e8c49e9c94ba5ac6dc8de9bc13468dccedc3d88e3153d576a30b36ee22
+ md5: cf8b9f9fbac7e8da7a5d9974dfd37023
depends:
- __glibc >=2.17,<3.0.a0
- blosc >=1.21.5,<2.0a0
- - cfitsio >=4.3.1,<4.3.2.0a0
+ - cfitsio >=4.4.0,<4.4.1.0a0
- freexl >=2.0.0,<3.0a0
- geos >=3.12.1,<3.12.2.0a0
- geotiff >=1.7.1,<1.8.0a0
- - giflib >=5.2.1,<5.3.0a0
+ - giflib >=5.2.2,<5.3.0a0
- hdf4 >=4.2.15,<4.2.16.0a0
- hdf5 >=1.14.3,<1.14.4.0a0
- json-c >=0.17,<0.18.0a0
- kealib >=1.5.3,<1.6.0a0
- lerc >=4.0.0,<5.0a0
- - libaec >=1.1.2,<2.0a0
+ - libaec >=1.1.3,<2.0a0
- libarchive >=3.7.2,<3.8.0a0
- - libcurl >=8.5.0,<9.0a0
- - libdeflate >=1.19,<1.20.0a0
- - libexpat >=2.5.0,<3.0a0
+ - libcurl >=8.7.1,<9.0a0
+ - libdeflate >=1.20,<1.21.0a0
+ - libexpat >=2.6.2,<3.0a0
- libgcc-ng >=12
- libiconv >=1.17,<2.0a0
- libjpeg-turbo >=3.0.0,<4.0a0
- libkml >=1.3.0,<1.4.0a0
- libnetcdf >=4.9.2,<4.9.3.0a0
- - libpng >=1.6.42,<1.7.0a0
+ - libpng >=1.6.43,<1.7.0a0
- libpq >=16.2,<17.0a0
- libspatialite >=5.1.0,<5.2.0a0
- - libsqlite >=3.45.1,<4.0a0
+ - libsqlite >=3.45.3,<4.0a0
- libstdcxx-ng >=12
- libtiff >=4.6.0,<4.7.0a0
- libuuid >=2.38.1,<3.0a0
- - libwebp-base >=1.3.2,<2.0a0
- - libxml2 >=2.12.5,<3.0a0
+ - libwebp-base >=1.4.0,<2.0a0
+ - libxml2 >=2.12.6,<3.0a0
- libzlib >=1.2.13,<1.3.0a0
- lz4-c >=1.9.3,<1.10.0a0
- - openjpeg >=2.5.0,<3.0a0
+ - openjpeg >=2.5.2,<3.0a0
- openssl >=3.2.1,<4.0a0
- - pcre2 >=10.42,<10.43.0a0
- - poppler >=24.2.0,<24.3.0a0
+ - pcre2 >=10.43,<10.44.0a0
+ - poppler >=24.4.0,<24.5.0a0
- postgresql
- - proj >=9.3.1,<9.3.2.0a0
- - tiledb >=2.20.0,<2.21.0a0
+ - proj >=9.4.0,<9.4.1.0a0
+ - tiledb >=2.22.0,<2.23.0a0
- xerces-c >=3.2.5,<3.3.0a0
- xz >=5.2.6,<6.0a0
- zstd >=1.5.5,<1.6.0a0
license: MIT
license_family: MIT
- size: 11090543
- timestamp: 1708279552744
+ size: 11117939
+ timestamp: 1713570451423
- kind: conda
name: libgdal
- version: 3.8.4
- build: ha86f356_0
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/libgdal-3.8.4-ha86f356_0.conda
- sha256: bff62d710f8a3ae6a0c4671c0584a7680e9e3a468003367ddf5bee8c90ff0079
- md5: a5d5f05fd2c03b0f1ba4863c8a1a0632
+ version: 3.8.5
+ build: hfb9f81c_2
+ build_number: 2
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/libgdal-3.8.5-hfb9f81c_2.conda
+ sha256: 9de3c0f28ea5b08ad974847c11e507ee648084bc1484480b327b6dfee0ff971a
+ md5: 737c9d0d5537ad985ab7a4f9a7915e11
depends:
- blosc >=1.21.5,<2.0a0
- - cfitsio >=4.3.1,<4.3.2.0a0
+ - cfitsio >=4.4.0,<4.4.1.0a0
- freexl >=2.0.0,<3.0a0
- geos >=3.12.1,<3.12.2.0a0
- geotiff >=1.7.1,<1.8.0a0
- - giflib >=5.2.1,<5.3.0a0
- hdf4 >=4.2.15,<4.2.16.0a0
- hdf5 >=1.14.3,<1.14.4.0a0
- - json-c >=0.17,<0.18.0a0
- kealib >=1.5.3,<1.6.0a0
- lerc >=4.0.0,<5.0a0
- - libaec >=1.1.2,<2.0a0
+ - libaec >=1.1.3,<2.0a0
- libarchive >=3.7.2,<3.8.0a0
- - libcurl >=8.5.0,<9.0a0
- - libcxx >=16
- - libdeflate >=1.19,<1.20.0a0
- - libexpat >=2.5.0,<3.0a0
+ - libcurl >=8.7.1,<9.0a0
+ - libdeflate >=1.20,<1.21.0a0
+ - libexpat >=2.6.2,<3.0a0
- libiconv >=1.17,<2.0a0
- libjpeg-turbo >=3.0.0,<4.0a0
- libkml >=1.3.0,<1.4.0a0
- libnetcdf >=4.9.2,<4.9.3.0a0
- - libpng >=1.6.42,<1.7.0a0
+ - libpng >=1.6.43,<1.7.0a0
- libpq >=16.2,<17.0a0
- libspatialite >=5.1.0,<5.2.0a0
- - libsqlite >=3.45.1,<4.0a0
+ - libsqlite >=3.45.3,<4.0a0
- libtiff >=4.6.0,<4.7.0a0
- - libwebp-base >=1.3.2,<2.0a0
- - libxml2 >=2.12.5,<3.0a0
+ - libwebp-base >=1.4.0,<2.0a0
+ - libxml2 >=2.12.6,<3.0a0
- libzlib >=1.2.13,<1.3.0a0
- lz4-c >=1.9.3,<1.10.0a0
- - openjpeg >=2.5.0,<3.0a0
+ - openjpeg >=2.5.2,<3.0a0
- openssl >=3.2.1,<4.0a0
- - pcre2 >=10.42,<10.43.0a0
- - poppler >=24.2.0,<24.3.0a0
+ - pcre2 >=10.43,<10.44.0a0
+ - poppler >=24.4.0,<24.5.0a0
- postgresql
- - proj >=9.3.1,<9.3.2.0a0
- - tiledb >=2.20.0,<2.21.0a0
+ - proj >=9.4.0,<9.4.1.0a0
+ - tiledb >=2.22.0,<2.23.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
- xerces-c >=3.2.5,<3.3.0a0
- xz >=5.2.6,<6.0a0
- zstd >=1.5.5,<1.6.0a0
license: MIT
license_family: MIT
- size: 8525451
- timestamp: 1708280934006
+ size: 8604906
+ timestamp: 1713571842421
- kind: conda
name: libgdal-arrow-parquet
- version: 3.8.4
- build: h0f68c7b_0
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libgdal-arrow-parquet-3.8.4-h0f68c7b_0.conda
- sha256: ca7f6e80629af63e16d3d82d9263ac1e0daa543ada50c43ea83699d09af80a3a
- md5: dd797894165b6805ac716c08e09dae8d
+ version: 3.8.5
+ build: h391a133_2
+ build_number: 2
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libgdal-arrow-parquet-3.8.5-h391a133_2.conda
+ sha256: f72352b8a4abf954427a36bdd4c31326ea23c2fc0169b21f0b499b783397384a
+ md5: 76a1d6e0e37b4d90defb7e95af8283ec
depends:
- - __glibc >=2.17,<3.0.a0
+ - __osx >=11.0
- blosc >=1.21.5,<2.0a0
- - cfitsio >=4.3.1,<4.3.2.0a0
+ - cfitsio >=4.4.0,<4.4.1.0a0
- freexl >=2.0.0,<3.0a0
- geos >=3.12.1,<3.12.2.0a0
- geotiff >=1.7.1,<1.8.0a0
- - giflib >=5.2.1,<5.3.0a0
+ - giflib >=5.2.2,<5.3.0a0
- hdf4 >=4.2.15,<4.2.16.0a0
- hdf5 >=1.14.3,<1.14.4.0a0
- json-c >=0.17,<0.18.0a0
- kealib >=1.5.3,<1.6.0a0
- libarchive >=3.7.2,<3.8.0a0
- - libarrow >=15.0.0,<16.0a0
- - libarrow-dataset >=15.0.0,<16.0a0
- - libexpat >=2.5.0,<3.0a0
- - libgcc-ng >=12
- - libgdal 3.8.4 h9323651_0
+ - libarrow >=15.0.2,<16.0a0
+ - libarrow-dataset >=15.0.2,<16.0a0
+ - libcxx >=16
+ - libexpat >=2.6.2,<3.0a0
+ - libgdal 3.8.5 h2f7ae65_2
- libjpeg-turbo >=3.0.0,<4.0a0
- libkml >=1.3.0,<1.4.0a0
- libnetcdf >=4.9.2,<4.9.3.0a0
- - libparquet >=15.0.0,<16.0a0
- - libpng >=1.6.42,<1.7.0a0
+ - libparquet >=15.0.2,<16.0a0
+ - libpng >=1.6.43,<1.7.0a0
- libpq >=16.2,<17.0a0
- libspatialite >=5.1.0,<5.2.0a0
- - libsqlite >=3.45.1,<4.0a0
- - libstdcxx-ng >=12
+ - libsqlite >=3.45.3,<4.0a0
- libtiff >=4.6.0,<4.7.0a0
- - libuuid >=2.38.1,<3.0a0
- - libwebp-base >=1.3.2,<2.0a0
- - libxml2 >=2.12.5,<3.0a0
+ - libwebp-base >=1.4.0,<2.0a0
+ - libxml2 >=2.12.6,<3.0a0
- libzlib >=1.2.13,<1.3.0a0
- - openjpeg >=2.5.0,<3.0a0
+ - openjpeg >=2.5.2,<3.0a0
- openssl >=3.2.1,<4.0a0
- - pcre2 >=10.42,<10.43.0a0
- - poppler >=24.2.0,<24.3.0a0
+ - pcre2 >=10.43,<10.44.0a0
+ - poppler >=24.4.0,<24.5.0a0
- postgresql
- - proj >=9.3.1,<9.3.2.0a0
+ - proj >=9.4.0,<9.4.1.0a0
- qhull >=2020.2,<2020.3.0a0
- - tiledb >=2.20.0,<2.21.0a0
+ - tiledb >=2.22.0,<2.23.0a0
- xerces-c >=3.2.5,<3.3.0a0
- xz >=5.2.6,<6.0a0
- zstd >=1.5.5,<1.6.0a0
license: MIT
license_family: MIT
- size: 719929
- timestamp: 1708280057675
+ size: 652323
+ timestamp: 1713574419737
- kind: conda
name: libgdal-arrow-parquet
- version: 3.8.4
- build: h49126f6_0
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/libgdal-arrow-parquet-3.8.4-h49126f6_0.conda
- sha256: 87661d958f97a642f5dc98fbfe3fd6f85bfa987b04a1beaf26e9761b17315682
- md5: 2381af52948537e03cdf7b4f7b34762f
+ version: 3.8.5
+ build: h3dc1c5c_2
+ build_number: 2
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libgdal-arrow-parquet-3.8.5-h3dc1c5c_2.conda
+ sha256: 507d4fc273286944b6b88b9f584c9ab74f53a0ee6bc743f050eacb4376a9bddd
+ md5: 9c52944f5e18095a29056644a9ed0605
depends:
+ - __glibc >=2.17,<3.0.a0
- blosc >=1.21.5,<2.0a0
- - cfitsio >=4.3.1,<4.3.2.0a0
+ - cfitsio >=4.4.0,<4.4.1.0a0
- freexl >=2.0.0,<3.0a0
- geos >=3.12.1,<3.12.2.0a0
- geotiff >=1.7.1,<1.8.0a0
+ - giflib >=5.2.2,<5.3.0a0
- hdf4 >=4.2.15,<4.2.16.0a0
- hdf5 >=1.14.3,<1.14.4.0a0
+ - json-c >=0.17,<0.18.0a0
- kealib >=1.5.3,<1.6.0a0
- libarchive >=3.7.2,<3.8.0a0
- - libarrow >=15.0.0,<16.0a0
- - libarrow-dataset >=15.0.0,<16.0a0
- - libexpat >=2.5.0,<3.0a0
- - libgdal 3.8.4 h7c2897a_0
+ - libarrow >=15.0.2,<16.0a0
+ - libarrow-dataset >=15.0.2,<16.0a0
+ - libexpat >=2.6.2,<3.0a0
+ - libgcc-ng >=12
+ - libgdal 3.8.5 hf9625ee_2
- libjpeg-turbo >=3.0.0,<4.0a0
- libkml >=1.3.0,<1.4.0a0
- libnetcdf >=4.9.2,<4.9.3.0a0
- - libparquet >=15.0.0,<16.0a0
- - libpng >=1.6.42,<1.7.0a0
+ - libparquet >=15.0.2,<16.0a0
+ - libpng >=1.6.43,<1.7.0a0
- libpq >=16.2,<17.0a0
- libspatialite >=5.1.0,<5.2.0a0
- - libsqlite >=3.45.1,<4.0a0
+ - libsqlite >=3.45.3,<4.0a0
+ - libstdcxx-ng >=12
- libtiff >=4.6.0,<4.7.0a0
- - libwebp-base >=1.3.2,<2.0a0
- - libxml2 >=2.12.5,<3.0a0
+ - libuuid >=2.38.1,<3.0a0
+ - libwebp-base >=1.4.0,<2.0a0
+ - libxml2 >=2.12.6,<3.0a0
- libzlib >=1.2.13,<1.3.0a0
- - openjpeg >=2.5.0,<3.0a0
+ - openjpeg >=2.5.2,<3.0a0
- openssl >=3.2.1,<4.0a0
- - pcre2 >=10.42,<10.43.0a0
- - poppler >=24.2.0,<24.3.0a0
+ - pcre2 >=10.43,<10.44.0a0
+ - poppler >=24.4.0,<24.5.0a0
- postgresql
- - proj >=9.3.1,<9.3.2.0a0
+ - proj >=9.4.0,<9.4.1.0a0
- qhull >=2020.2,<2020.3.0a0
- - tiledb >=2.20.0,<2.21.0a0
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
+ - tiledb >=2.22.0,<2.23.0a0
- xerces-c >=3.2.5,<3.3.0a0
- xz >=5.2.6,<6.0a0
- zstd >=1.5.5,<1.6.0a0
license: MIT
license_family: MIT
- size: 658029
- timestamp: 1708282633917
+ size: 719235
+ timestamp: 1713571295136
- kind: conda
name: libgdal-arrow-parquet
- version: 3.8.4
- build: h88be5e4_0
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/libgdal-arrow-parquet-3.8.4-h88be5e4_0.conda
- sha256: 0bf6f135646ed68074d8d8b1f9265d87aa774b993493bd9d631f492d9bfeafd6
- md5: e68c8dcc90e6f3f74cf390ef042e216e
+ version: 3.8.5
+ build: h643b0ac_2
+ build_number: 2
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/libgdal-arrow-parquet-3.8.5-h643b0ac_2.conda
+ sha256: 81da007df82aa9ada23537ce60e6695919a8d312d6471368f96854d850531624
+ md5: aadcb6c388e638535f231494347dc047
depends:
+ - __osx >=10.9
- blosc >=1.21.5,<2.0a0
- - cfitsio >=4.3.1,<4.3.2.0a0
+ - cfitsio >=4.4.0,<4.4.1.0a0
- freexl >=2.0.0,<3.0a0
- geos >=3.12.1,<3.12.2.0a0
- geotiff >=1.7.1,<1.8.0a0
- - giflib >=5.2.1,<5.3.0a0
+ - giflib >=5.2.2,<5.3.0a0
- hdf4 >=4.2.15,<4.2.16.0a0
- hdf5 >=1.14.3,<1.14.4.0a0
- json-c >=0.17,<0.18.0a0
- kealib >=1.5.3,<1.6.0a0
- libarchive >=3.7.2,<3.8.0a0
- - libarrow >=15.0.0,<16.0a0
- - libarrow-dataset >=15.0.0,<16.0a0
+ - libarrow >=15.0.2,<16.0a0
+ - libarrow-dataset >=15.0.2,<16.0a0
- libcxx >=16
- - libexpat >=2.5.0,<3.0a0
- - libgdal 3.8.4 ha86f356_0
+ - libexpat >=2.6.2,<3.0a0
+ - libgdal 3.8.5 h7db9259_2
- libjpeg-turbo >=3.0.0,<4.0a0
- libkml >=1.3.0,<1.4.0a0
- libnetcdf >=4.9.2,<4.9.3.0a0
- - libparquet >=15.0.0,<16.0a0
- - libpng >=1.6.42,<1.7.0a0
+ - libparquet >=15.0.2,<16.0a0
+ - libpng >=1.6.43,<1.7.0a0
- libpq >=16.2,<17.0a0
- libspatialite >=5.1.0,<5.2.0a0
- - libsqlite >=3.45.1,<4.0a0
+ - libsqlite >=3.45.3,<4.0a0
- libtiff >=4.6.0,<4.7.0a0
- - libwebp-base >=1.3.2,<2.0a0
- - libxml2 >=2.12.5,<3.0a0
+ - libwebp-base >=1.4.0,<2.0a0
+ - libxml2 >=2.12.6,<3.0a0
- libzlib >=1.2.13,<1.3.0a0
- - openjpeg >=2.5.0,<3.0a0
+ - openjpeg >=2.5.2,<3.0a0
- openssl >=3.2.1,<4.0a0
- - pcre2 >=10.42,<10.43.0a0
- - poppler >=24.2.0,<24.3.0a0
+ - pcre2 >=10.43,<10.44.0a0
+ - poppler >=24.4.0,<24.5.0a0
- postgresql
- - proj >=9.3.1,<9.3.2.0a0
+ - proj >=9.4.0,<9.4.1.0a0
- qhull >=2020.2,<2020.3.0a0
- - tiledb >=2.20.0,<2.21.0a0
+ - tiledb >=2.22.0,<2.23.0a0
- xerces-c >=3.2.5,<3.3.0a0
- xz >=5.2.6,<6.0a0
- zstd >=1.5.5,<1.6.0a0
license: MIT
license_family: MIT
- size: 652834
- timestamp: 1708283034970
+ size: 664265
+ timestamp: 1713574341739
- kind: conda
name: libgdal-arrow-parquet
- version: 3.8.4
- build: hfe2b1a0_0
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/libgdal-arrow-parquet-3.8.4-hfe2b1a0_0.conda
- sha256: c60a7bc41f694d216eea66cfe9cf8527a621c9934b2b09b890f3102e8e219c11
- md5: 0725b37050e304f323dda690d73417fd
+ version: 3.8.5
+ build: h8dcb0d4_2
+ build_number: 2
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/libgdal-arrow-parquet-3.8.5-h8dcb0d4_2.conda
+ sha256: c2985505d9822f1566e8b70c4df0205f254912a483e5709c2a180afd29606695
+ md5: 1a932b3fd1806462f4198f7881b01bb7
depends:
- blosc >=1.21.5,<2.0a0
- - cfitsio >=4.3.1,<4.3.2.0a0
+ - cfitsio >=4.4.0,<4.4.1.0a0
- freexl >=2.0.0,<3.0a0
- geos >=3.12.1,<3.12.2.0a0
- geotiff >=1.7.1,<1.8.0a0
- - giflib >=5.2.1,<5.3.0a0
- hdf4 >=4.2.15,<4.2.16.0a0
- hdf5 >=1.14.3,<1.14.4.0a0
- - json-c >=0.17,<0.18.0a0
- kealib >=1.5.3,<1.6.0a0
- libarchive >=3.7.2,<3.8.0a0
- - libarrow >=15.0.0,<16.0a0
- - libarrow-dataset >=15.0.0,<16.0a0
- - libcxx >=16
- - libexpat >=2.5.0,<3.0a0
- - libgdal 3.8.4 h46636ed_0
+ - libarrow >=15.0.2,<16.0a0
+ - libarrow-dataset >=15.0.2,<16.0a0
+ - libexpat >=2.6.2,<3.0a0
+ - libgdal 3.8.5 hfb9f81c_2
- libjpeg-turbo >=3.0.0,<4.0a0
- libkml >=1.3.0,<1.4.0a0
- libnetcdf >=4.9.2,<4.9.3.0a0
- - libparquet >=15.0.0,<16.0a0
- - libpng >=1.6.42,<1.7.0a0
+ - libparquet >=15.0.2,<16.0a0
+ - libpng >=1.6.43,<1.7.0a0
- libpq >=16.2,<17.0a0
- libspatialite >=5.1.0,<5.2.0a0
- - libsqlite >=3.45.1,<4.0a0
+ - libsqlite >=3.45.3,<4.0a0
- libtiff >=4.6.0,<4.7.0a0
- - libwebp-base >=1.3.2,<2.0a0
- - libxml2 >=2.12.5,<3.0a0
+ - libwebp-base >=1.4.0,<2.0a0
+ - libxml2 >=2.12.6,<3.0a0
- libzlib >=1.2.13,<1.3.0a0
- - openjpeg >=2.5.0,<3.0a0
+ - openjpeg >=2.5.2,<3.0a0
- openssl >=3.2.1,<4.0a0
- - pcre2 >=10.42,<10.43.0a0
- - poppler >=24.2.0,<24.3.0a0
+ - pcre2 >=10.43,<10.44.0a0
+ - poppler >=24.4.0,<24.5.0a0
- postgresql
- - proj >=9.3.1,<9.3.2.0a0
+ - proj >=9.4.0,<9.4.1.0a0
- qhull >=2020.2,<2020.3.0a0
- - tiledb >=2.20.0,<2.21.0a0
+ - tiledb >=2.22.0,<2.23.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
- xerces-c >=3.2.5,<3.3.0a0
- xz >=5.2.6,<6.0a0
- zstd >=1.5.5,<1.6.0a0
license: MIT
license_family: MIT
- size: 664224
- timestamp: 1708283189020
+ size: 658563
+ timestamp: 1713573768601
+- kind: conda
+ name: libgettextpo
+ version: 0.22.5
+ build: h59595ed_2
+ build_number: 2
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libgettextpo-0.22.5-h59595ed_2.conda
+ sha256: e2f784564a2bdc6f753f00f63cc77c97601eb03bc89dccc4413336ec6d95490b
+ md5: 172bcc51059416e7ce99e7b528cede83
+ depends:
+ - libgcc-ng >=12
+ license: GPL-3.0-or-later
+ license_family: GPL
+ size: 170582
+ timestamp: 1712512286907
+- kind: conda
+ name: libgettextpo
+ version: 0.22.5
+ build: h5ff76d1_2
+ build_number: 2
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/libgettextpo-0.22.5-h5ff76d1_2.conda
+ sha256: 139d1861e21c41b950ebf9e395db2492839337a3b481ad2901a4a6800c555e37
+ md5: 54cc9d12c29c2f0516f2ef4987de53ae
+ depends:
+ - libiconv >=1.17,<2.0a0
+ - libintl 0.22.5 h5ff76d1_2
+ license: GPL-3.0-or-later
+ license_family: GPL
+ size: 172506
+ timestamp: 1712512827340
+- kind: conda
+ name: libgettextpo
+ version: 0.22.5
+ build: h8fbad5d_2
+ build_number: 2
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libgettextpo-0.22.5-h8fbad5d_2.conda
+ sha256: c3f5580e172c3fc03d33e8994024f08b709a239bd599792e51435fa7a06beb64
+ md5: a66fad933e22d22599a6dd149d359d25
+ depends:
+ - libiconv >=1.17,<2.0a0
+ - libintl 0.22.5 h8fbad5d_2
+ license: GPL-3.0-or-later
+ license_family: GPL
+ size: 159856
+ timestamp: 1712512788407
+- kind: conda
+ name: libgettextpo-devel
+ version: 0.22.5
+ build: h59595ed_2
+ build_number: 2
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libgettextpo-devel-0.22.5-h59595ed_2.conda
+ sha256: 695eb2439ad4a89e4205dd675cc52fba5cef6b5d41b83f07cdbf4770a336cc15
+ md5: b63d9b6da3653179a278077f0de20014
+ depends:
+ - libgcc-ng >=12
+ - libgettextpo 0.22.5 h59595ed_2
+ license: GPL-3.0-or-later
+ license_family: GPL
+ size: 36758
+ timestamp: 1712512303244
+- kind: conda
+ name: libgettextpo-devel
+ version: 0.22.5
+ build: h5ff76d1_2
+ build_number: 2
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/libgettextpo-devel-0.22.5-h5ff76d1_2.conda
+ sha256: 57940f6a872ffcf5a3406e96bdbd9d25854943e4dd84acee56178ffb728a9671
+ md5: 1e0384c52cd8b54812912e7234e66056
+ depends:
+ - libgettextpo 0.22.5 h5ff76d1_2
+ - libiconv >=1.17,<2.0a0
+ - libintl 0.22.5 h5ff76d1_2
+ license: GPL-3.0-or-later
+ license_family: GPL
+ size: 37189
+ timestamp: 1712512859854
+- kind: conda
+ name: libgettextpo-devel
+ version: 0.22.5
+ build: h8fbad5d_2
+ build_number: 2
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libgettextpo-devel-0.22.5-h8fbad5d_2.conda
+ sha256: b1be0bb8a726e2c47a025ff348e6ba8b51ef668f6ace06694657025d84ae66e2
+ md5: 1113aa220b042b7ce8d077ea8f696f98
+ depends:
+ - libgettextpo 0.22.5 h8fbad5d_2
+ - libiconv >=1.17,<2.0a0
+ - libintl 0.22.5 h8fbad5d_2
+ license: GPL-3.0-or-later
+ license_family: GPL
+ size: 37221
+ timestamp: 1712512820461
- kind: conda
name: libgfortran
version: 5.0.0
@@ -11578,18 +18268,18 @@ packages:
- kind: conda
name: libgfortran-ng
version: 13.2.0
- build: h69a702a_5
- build_number: 5
+ build: h69a702a_6
+ build_number: 6
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-13.2.0-h69a702a_5.conda
- sha256: 238c16c84124d58307376715839aa152bd4a1bf5a043052938ad6c3137d30245
- md5: e73e9cfd1191783392131e6238bdb3e9
+ url: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-13.2.0-h69a702a_6.conda
+ sha256: 5e436753c55d81005e9383d7a8ec14298ebd35029d148db7e03c4834ffca54ee
+ md5: 3666a850342f8f3be88f9a93d948d027
depends:
- - libgfortran5 13.2.0 ha4646dd_5
+ - libgfortran5 13.2.0 h43f5ff8_6
license: GPL-3.0-only WITH GCC-exception-3.1
license_family: GPL
- size: 23829
- timestamp: 1706819413770
+ size: 24183
+ timestamp: 1713755271389
- kind: conda
name: libgfortran5
version: 13.2.0
@@ -11610,20 +18300,20 @@ packages:
- kind: conda
name: libgfortran5
version: 13.2.0
- build: ha4646dd_5
- build_number: 5
+ build: h43f5ff8_6
+ build_number: 6
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-13.2.0-ha4646dd_5.conda
- sha256: ba8d94e8493222ce155bb264d9de4200e41498a458e866fedf444de809bde8b6
- md5: 7a6bd7a12a4bd359e2afe6c0fa1acace
+ url: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-13.2.0-h43f5ff8_6.conda
+ sha256: 5da2abd9e2c09ec8566fbacb237926b532f6629871ff2733c90a0be77b77679e
+ md5: e54a5ddc67e673f9105cf2a2e9c070b0
depends:
- libgcc-ng >=13.2.0
constrains:
- libgfortran-ng 13.2.0
license: GPL-3.0-only WITH GCC-exception-3.1
license_family: GPL
- size: 1442769
- timestamp: 1706819209473
+ size: 1442624
+ timestamp: 1713755021286
- kind: conda
name: libgfortran5
version: 13.2.0
@@ -11643,367 +18333,363 @@ packages:
timestamp: 1707330687590
- kind: conda
name: libglib
- version: 2.78.4
- build: h1635a5e_0
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/libglib-2.78.4-h1635a5e_0.conda
- sha256: 8229251ab78074d16c372b5995f19f967321328fdf8723feab7efec66fe6cc03
- md5: 537ff7a85b63d478e563530dfe66a71e
+ version: 2.80.0
+ build: h39d0aa6_6
+ build_number: 6
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/libglib-2.80.0-h39d0aa6_6.conda
+ sha256: 87772cdcfb292a64ddd9e737c5deaaf671c7cd82b22ad70c8a8a9f1f34074fb5
+ md5: cd5c6efbe213c089f78575c98ab9a0ed
depends:
- - gettext >=0.21.1,<1.0a0
- - libcxx >=16
- libffi >=3.4,<4.0a0
- libiconv >=1.17,<2.0a0
+ - libintl >=0.22.5,<1.0a0
- libzlib >=1.2.13,<1.3.0a0
- - pcre2 >=10.42,<10.43.0a0
+ - pcre2 >=10.43,<10.44.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
constrains:
- - glib 2.78.4 *_0
+ - glib 2.80.0 *_6
license: LGPL-2.1-or-later
- size: 2437234
- timestamp: 1708285905755
+ size: 3740691
+ timestamp: 1713639713931
- kind: conda
name: libglib
- version: 2.78.4
- build: h16e383f_0
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/libglib-2.78.4-h16e383f_0.conda
- sha256: d4350c4c8d7947b4f1b13918e04f07a35d2eb88cc1b6bccefe12eb92bd1aa660
- md5: 72dc4e1cdde0894015567c90f9c4e261
+ version: 2.80.0
+ build: h81c1438_6
+ build_number: 6
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/libglib-2.80.0-h81c1438_6.conda
+ sha256: 1cbca3cfdc470c528a36c93d9d478103d2a7a6036814ab23fa0486cde29e9607
+ md5: 54dd1ed37dd65c5d13600bcc5ebbd0a1
depends:
- - gettext >=0.21.1,<1.0a0
- libffi >=3.4,<4.0a0
- libiconv >=1.17,<2.0a0
+ - libintl >=0.22.5,<1.0a0
- libzlib >=1.2.13,<1.3.0a0
- - pcre2 >=10.42,<10.43.0a0
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
+ - pcre2 >=10.43,<10.44.0a0
constrains:
- - glib 2.78.4 *_0
+ - glib 2.80.0 *_6
license: LGPL-2.1-or-later
- size: 2627113
- timestamp: 1708285165773
+ size: 3687274
+ timestamp: 1713641327993
- kind: conda
name: libglib
- version: 2.78.4
- build: h783c2da_0
+ version: 2.80.0
+ build: hf2295e7_6
+ build_number: 6
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libglib-2.78.4-h783c2da_0.conda
- sha256: 3a03a5254d2fd29c1e0ffda7250e22991dfbf2c854301fd56c408d97a647cfbd
- md5: d86baf8740d1a906b9716f2a0bac2f2d
+ url: https://conda.anaconda.org/conda-forge/linux-64/libglib-2.80.0-hf2295e7_6.conda
+ sha256: d2867a1515676f3b64265420598badb2e4ad2369d85237fb276173a99959eb37
+ md5: 9342e7c44c38bea649490f72d92c382d
depends:
- - gettext >=0.21.1,<1.0a0
- libffi >=3.4,<4.0a0
- libgcc-ng >=12
- libiconv >=1.17,<2.0a0
- - libstdcxx-ng >=12
- libzlib >=1.2.13,<1.3.0a0
- - pcre2 >=10.42,<10.43.0a0
+ - pcre2 >=10.43,<10.44.0a0
constrains:
- - glib 2.78.4 *_0
+ - glib 2.80.0 *_6
license: LGPL-2.1-or-later
- size: 2692079
- timestamp: 1708284870228
+ size: 3942450
+ timestamp: 1713639388280
- kind: conda
name: libglib
- version: 2.78.4
- build: hab64008_0
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/libglib-2.78.4-hab64008_0.conda
- sha256: 122060ba63fd27e53672dbac7dc0b4f55a6432993446f4ed3c30a69a9457c615
- md5: ff7e302784375cfc3157b8120a18124d
+ version: 2.80.0
+ build: hfc324ee_6
+ build_number: 6
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libglib-2.80.0-hfc324ee_6.conda
+ sha256: 912913b1d6f3ec1e7dcb3a59426f2d9f70a996891cca718f32195687eb271e06
+ md5: 762a78b7637203d7ada1403e547470ec
depends:
- - gettext >=0.21.1,<1.0a0
- - libcxx >=16
- libffi >=3.4,<4.0a0
- libiconv >=1.17,<2.0a0
+ - libintl >=0.22.5,<1.0a0
- libzlib >=1.2.13,<1.3.0a0
- - pcre2 >=10.42,<10.43.0a0
+ - pcre2 >=10.43,<10.44.0a0
constrains:
- - glib 2.78.4 *_0
+ - glib 2.80.0 *_6
license: LGPL-2.1-or-later
- size: 2474668
- timestamp: 1708285048757
+ size: 3615908
+ timestamp: 1713639914767
- kind: conda
name: libgomp
version: 13.2.0
- build: h807b86a_5
- build_number: 5
+ build: h77fa898_6
+ build_number: 6
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libgomp-13.2.0-h807b86a_5.conda
- sha256: 0d3d4b1b0134283ea02d58e8eb5accf3655464cf7159abf098cc694002f8d34e
- md5: d211c42b9ce49aee3734fdc828731689
+ url: https://conda.anaconda.org/conda-forge/linux-64/libgomp-13.2.0-h77fa898_6.conda
+ sha256: b059ec2403a421c71c33633ece6be2ccd303e376aae6079f8cfda96d42616527
+ md5: e733e0573651a1f0639fa8ce066a286e
depends:
- _libgcc_mutex 0.1 conda_forge
license: GPL-3.0-only WITH GCC-exception-3.1
- license_family: GPL
- size: 419751
- timestamp: 1706819107383
+ size: 420177
+ timestamp: 1714581699319
- kind: conda
name: libgoogle-cloud
- version: 2.21.0
- build: h21dabe9_2
- build_number: 2
+ version: 2.23.0
+ build: h651e89d_1
+ build_number: 1
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/libgoogle-cloud-2.21.0-h21dabe9_2.conda
- sha256: 1e3a794db1f0feeea9db3a20d9d9a68f29fe20d9bfb84797f2a998081c6b0912
- md5: b8559c5d3c0ba52dc57c271eb389a567
+ url: https://conda.anaconda.org/conda-forge/osx-64/libgoogle-cloud-2.23.0-h651e89d_1.conda
+ sha256: 669cab160b07f1083fa641564549f38d143380ad36b05e16aeb59625e6fbd08a
+ md5: e39d78408ff66de247fb5fbf60e9255c
depends:
- __osx >=10.13
- libabseil * cxx17*
- libabseil >=20240116.1,<20240117.0a0
- - libcurl >=8.5.0,<9.0a0
+ - libcurl >=8.7.1,<9.0a0
- libcxx >=16
- - libgrpc >=1.61.1,<1.62.0a0
- - libprotobuf >=4.25.2,<4.25.3.0a0
+ - libgrpc >=1.62.2,<1.63.0a0
+ - libprotobuf >=4.25.3,<4.25.4.0a0
- openssl >=3.2.1,<4.0a0
constrains:
- - libgoogle-cloud 2.21.0 *_2
+ - libgoogle-cloud 2.23.0 *_1
license: Apache-2.0
license_family: Apache
- size: 851641
- timestamp: 1708639027901
+ size: 852907
+ timestamp: 1713800994635
- kind: conda
name: libgoogle-cloud
- version: 2.21.0
- build: h23ec1f3_2
- build_number: 2
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/libgoogle-cloud-2.21.0-h23ec1f3_2.conda
- sha256: 8a991729c200f931537f3085dc3755a1bf26e5b4735816f55f0189bb4b6bf584
- md5: 7e987dc8d614e32cc62aad371db94ae5
+ version: 2.23.0
+ build: h68df31e_1
+ build_number: 1
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/libgoogle-cloud-2.23.0-h68df31e_1.conda
+ sha256: fba9e1d32302eec582bea67958d1c4fac446b231c579ae8fead45ee54f66490d
+ md5: a0ef5adaf00591f68185bc59c7ebcb48
depends:
- libabseil * cxx17*
- libabseil >=20240116.1,<20240117.0a0
- - libcurl >=8.5.0,<9.0a0
- - libcxx >=16
- - libgrpc >=1.61.1,<1.62.0a0
- - libprotobuf >=4.25.2,<4.25.3.0a0
- - openssl >=3.2.1,<4.0a0
+ - libcurl >=8.7.1,<9.0a0
+ - libgrpc >=1.62.2,<1.63.0a0
+ - libprotobuf >=4.25.3,<4.25.4.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
constrains:
- - libgoogle-cloud 2.21.0 *_2
+ - libgoogle-cloud 2.23.0 *_1
license: Apache-2.0
license_family: Apache
- size: 839546
- timestamp: 1708639487970
+ size: 14424
+ timestamp: 1713800484262
- kind: conda
name: libgoogle-cloud
- version: 2.21.0
- build: h2b62511_2
- build_number: 2
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/libgoogle-cloud-2.21.0-h2b62511_2.conda
- sha256: d7ad7f35aa5abdbcd9a3c576a23ed2fc1906b83aaf24acfafb768496a0330f41
- md5: 73c00d021383065be34ed4d7efc2c94c
+ version: 2.23.0
+ build: h9be4e54_1
+ build_number: 1
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-2.23.0-h9be4e54_1.conda
+ sha256: 680f5a9bc45aa905d9da086b16551438553649e05dd6b94b02b379b050602d5e
+ md5: 1042d8401bb268553f98e60120cdeb40
depends:
- libabseil * cxx17*
- libabseil >=20240116.1,<20240117.0a0
- - libcurl >=8.5.0,<9.0a0
- - libgrpc >=1.61.1,<1.62.0a0
- - libprotobuf >=4.25.2,<4.25.3.0a0
+ - libcurl >=8.7.1,<9.0a0
+ - libgcc-ng >=12
+ - libgrpc >=1.62.2,<1.63.0a0
+ - libprotobuf >=4.25.3,<4.25.4.0a0
+ - libstdcxx-ng >=12
- openssl >=3.2.1,<4.0a0
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
constrains:
- - libgoogle-cloud 2.21.0 *_2
+ - libgoogle-cloud 2.23.0 *_1
license: Apache-2.0
license_family: Apache
- size: 14562
- timestamp: 1708637250255
+ size: 1214608
+ timestamp: 1713798219648
- kind: conda
name: libgoogle-cloud
- version: 2.21.0
- build: h72bcb37_2
- build_number: 2
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-2.21.0-h72bcb37_2.conda
- sha256: 055f17ab4621fbcbe68c0656b4811c1a18d8e564fb10287024c67c8d244e7771
- md5: 14b15b923b9e45038f4193d06ecf5ae1
+ version: 2.23.0
+ build: hbebe991_1
+ build_number: 1
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libgoogle-cloud-2.23.0-hbebe991_1.conda
+ sha256: db7c0dcebafc001ff9fe0ba618ed611721217b4ceefeef189ab79ef111056c02
+ md5: fdbdbd1dc8e8ba458057be0a00db8ab1
depends:
- libabseil * cxx17*
- libabseil >=20240116.1,<20240117.0a0
- - libcurl >=8.5.0,<9.0a0
- - libgcc-ng >=12
- - libgrpc >=1.61.1,<1.62.0a0
- - libprotobuf >=4.25.2,<4.25.3.0a0
- - libstdcxx-ng >=12
+ - libcurl >=8.7.1,<9.0a0
+ - libcxx >=16
+ - libgrpc >=1.62.2,<1.63.0a0
+ - libprotobuf >=4.25.3,<4.25.4.0a0
- openssl >=3.2.1,<4.0a0
constrains:
- - libgoogle-cloud 2.21.0 *_2
+ - libgoogle-cloud 2.23.0 *_1
license: Apache-2.0
license_family: Apache
- size: 1209079
- timestamp: 1708638321316
+ size: 840819
+ timestamp: 1713799797441
- kind: conda
name: libgoogle-cloud-storage
- version: 2.21.0
- build: h8a76758_2
- build_number: 2
+ version: 2.23.0
+ build: h8a76758_1
+ build_number: 1
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/libgoogle-cloud-storage-2.21.0-h8a76758_2.conda
- sha256: 8d908a8f1c1200f839a1c1ab7fc66f972243bf96bb246885fcccda7b0858dcd6
- md5: fdf438098da87070c87dde741c5c113e
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libgoogle-cloud-storage-2.23.0-h8a76758_1.conda
+ sha256: 3173b65b7e36e9fa0e6ddec69f39e4dd0e7ada38dbf2c1be006fddc2e7257b0c
+ md5: 356c74978867e07e12a939a092dcf30d
depends:
- libabseil
- libcrc32c >=1.1.2,<1.2.0a0
- libcurl
- libcxx >=16
- - libgoogle-cloud 2.21.0 h23ec1f3_2
+ - libgoogle-cloud 2.23.0 hbebe991_1
- libzlib >=1.2.13,<1.3.0a0
- openssl
license: Apache-2.0
license_family: Apache
- size: 507708
- timestamp: 1708640099360
+ size: 509643
+ timestamp: 1713801031940
- kind: conda
name: libgoogle-cloud-storage
- version: 2.21.0
- build: ha67e85c_2
- build_number: 2
+ version: 2.23.0
+ build: ha67e85c_1
+ build_number: 1
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/libgoogle-cloud-storage-2.21.0-ha67e85c_2.conda
- sha256: 762f7973458d0eae148dd2ccccea336ab84808381847364a55d3b6846011f2b2
- md5: 9887eacc6a2ec0910a448ba69cc04af5
+ url: https://conda.anaconda.org/conda-forge/osx-64/libgoogle-cloud-storage-2.23.0-ha67e85c_1.conda
+ sha256: 35a6e7824ab06fd21042260fb4b11788c088b570ba32bd3f873f91ae12810326
+ md5: 62798f6e7af787f3cc550ccf70ddb1e3
depends:
- libabseil
- libcrc32c >=1.1.2,<1.2.0a0
- libcurl
- libcxx >=16
- - libgoogle-cloud 2.21.0 h21dabe9_2
+ - libgoogle-cloud 2.23.0 h651e89d_1
- libzlib >=1.2.13,<1.3.0a0
- openssl
license: Apache-2.0
license_family: Apache
- size: 523049
- timestamp: 1708639574366
+ size: 524880
+ timestamp: 1713802437812
- kind: conda
name: libgoogle-cloud-storage
- version: 2.21.0
- build: hb581fae_2
- build_number: 2
+ version: 2.23.0
+ build: hb581fae_1
+ build_number: 1
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/libgoogle-cloud-storage-2.21.0-hb581fae_2.conda
- sha256: 435812587b246f2a95727402e72e8d4f4d153a699550ca25a64d1caa92645881
- md5: 170e28e513d6385f08bb298f16f85578
+ url: https://conda.anaconda.org/conda-forge/win-64/libgoogle-cloud-storage-2.23.0-hb581fae_1.conda
+ sha256: b7be440cb21b2c8c41064f1a334b9117ed5e4f0b98c5315650194161f7702283
+ md5: af19093e2d4171ddef39e9d6457c4e2e
depends:
- libabseil
- libcrc32c >=1.1.2,<1.2.0a0
- libcurl
- - libgoogle-cloud 2.21.0 h2b62511_2
+ - libgoogle-cloud 2.23.0 h68df31e_1
- libzlib >=1.2.13,<1.3.0a0
- - openssl
- ucrt >=10.0.20348.0
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
license: Apache-2.0
license_family: Apache
- size: 14440
- timestamp: 1708637621024
+ size: 14323
+ timestamp: 1713800995993
- kind: conda
name: libgoogle-cloud-storage
- version: 2.21.0
- build: hc7a4891_2
- build_number: 2
+ version: 2.23.0
+ build: hc7a4891_1
+ build_number: 1
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-storage-2.21.0-hc7a4891_2.conda
- sha256: c2237a8fffd58553d31e0a135746de979e2b6a7eaf001748bdb98cf618db3d52
- md5: cc54c794dac0d76eb1adaf6172e9c59e
+ url: https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-storage-2.23.0-hc7a4891_1.conda
+ sha256: b85ce8b78e9262670a145a1639e253708e2a9eb9100d60ccec16f8e41d87a4bb
+ md5: ee99fb9107ffb579b58ee92a5fb14b06
depends:
- libabseil
- libcrc32c >=1.1.2,<1.2.0a0
- libcurl
- libgcc-ng >=12
- - libgoogle-cloud 2.21.0 h72bcb37_2
+ - libgoogle-cloud 2.23.0 h9be4e54_1
- libstdcxx-ng >=12
- libzlib >=1.2.13,<1.3.0a0
- openssl
license: Apache-2.0
license_family: Apache
- size: 749865
- timestamp: 1708638542903
+ size: 752661
+ timestamp: 1713798390317
- kind: conda
name: libgpg-error
- version: '1.48'
- build: h71f35ed_0
+ version: '1.49'
+ build: h4f305b6_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libgpg-error-1.48-h71f35ed_0.conda
- sha256: c448c6d86d27e10b9e844172000540e9cbfe9c28f968db87f949ba05add9bd50
- md5: 4d18d86916705d352d5f4adfb7f0edd3
+ url: https://conda.anaconda.org/conda-forge/linux-64/libgpg-error-1.49-h4f305b6_0.conda
+ sha256: b2664c2c11211a63856f23278efb49d3e65d902297989a0c12dcd228b5d97110
+ md5: dfcfd72c7a430d3616763ecfbefe4ca9
depends:
- - gettext >=0.21.1,<1.0a0
+ - gettext
+ - libasprintf >=0.22.5,<1.0a0
- libgcc-ng >=12
+ - libgettextpo >=0.22.5,<1.0a0
- libstdcxx-ng >=12
license: GPL-2.0-only
license_family: GPL
- size: 266447
- timestamp: 1708702470365
+ size: 263319
+ timestamp: 1714121531915
- kind: conda
name: libgrpc
- version: 1.61.1
- build: h32bdf18_1
- build_number: 1
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/libgrpc-1.61.1-h32bdf18_1.conda
- sha256: 49b762df61b4552bfdc366f7535471350d3d6a3055883713232b4647e5233a3b
- md5: 1a78597f0168ad16c082c7f0f49b3e74
+ version: 1.62.2
+ build: h15f2491_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libgrpc-1.62.2-h15f2491_0.conda
+ sha256: 28241ed89335871db33cb6010e9ccb2d9e9b6bb444ddf6884f02f0857363c06a
+ md5: 8dabe607748cb3d7002ad73cd06f1325
depends:
- - __osx >=10.13
- - c-ares >=1.27.0,<2.0a0
+ - c-ares >=1.28.1,<2.0a0
- libabseil * cxx17*
- libabseil >=20240116.1,<20240117.0a0
- - libcxx >=16
- - libprotobuf >=4.25.2,<4.25.3.0a0
+ - libgcc-ng >=12
+ - libprotobuf >=4.25.3,<4.25.4.0a0
- libre2-11 >=2023.9.1,<2024.0a0
+ - libstdcxx-ng >=12
- libzlib >=1.2.13,<1.3.0a0
- openssl >=3.2.1,<4.0a0
- re2
constrains:
- - grpc-cpp =1.61.1
+ - grpc-cpp =1.62.2
license: Apache-2.0
license_family: APACHE
- size: 5041649
- timestamp: 1709169627844
+ size: 7316832
+ timestamp: 1713390645548
- kind: conda
name: libgrpc
- version: 1.61.1
- build: h42401df_1
- build_number: 1
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libgrpc-1.61.1-h42401df_1.conda
- sha256: df9406860a3799623dd8b790f4e46dd573254abb670f96c6cb0359d607a8f9b7
- md5: 224692c7a317ca23f9e1d5d4b3c8fa93
+ version: 1.62.2
+ build: h384b2fc_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/libgrpc-1.62.2-h384b2fc_0.conda
+ sha256: 7c228040e7dac4e5e7e6935a4decf6bc2155cc05fcfb0811d25ccb242d0036ba
+ md5: 9421f67cf8b4bc976fe5d0c3ab42de18
depends:
- - c-ares >=1.27.0,<2.0a0
+ - __osx >=10.13
+ - c-ares >=1.28.1,<2.0a0
- libabseil * cxx17*
- libabseil >=20240116.1,<20240117.0a0
- - libgcc-ng >=12
- - libprotobuf >=4.25.2,<4.25.3.0a0
+ - libcxx >=16
+ - libprotobuf >=4.25.3,<4.25.4.0a0
- libre2-11 >=2023.9.1,<2024.0a0
- - libstdcxx-ng >=12
- libzlib >=1.2.13,<1.3.0a0
- openssl >=3.2.1,<4.0a0
- re2
constrains:
- - grpc-cpp =1.61.1
+ - grpc-cpp =1.62.2
license: Apache-2.0
license_family: APACHE
- size: 7048006
- timestamp: 1709168494055
+ size: 5189573
+ timestamp: 1713392887258
- kind: conda
name: libgrpc
- version: 1.61.1
- build: h864d0f4_1
- build_number: 1
+ version: 1.62.2
+ build: h5273850_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/libgrpc-1.61.1-h864d0f4_1.conda
- sha256: 6416c70daba4768f28e1d09d791d91b9a734bd904faf9042c301160b139864c6
- md5: 2b0cc1150fd394e05b63029412546980
+ url: https://conda.anaconda.org/conda-forge/win-64/libgrpc-1.62.2-h5273850_0.conda
+ sha256: 08794bf5ea0e19ac23ed47d0f8699b5c05c46f14334b41f075e53bac9bbf97d8
+ md5: 2939e4b5baecfeac1e8dee5c4f579f1a
depends:
- - c-ares >=1.27.0,<2.0a0
+ - c-ares >=1.28.1,<2.0a0
- libabseil * cxx17*
- libabseil >=20240116.1,<20240117.0a0
- - libprotobuf >=4.25.2,<4.25.3.0a0
+ - libprotobuf >=4.25.3,<4.25.4.0a0
- libre2-11 >=2023.9.1,<2024.0a0
- libzlib >=1.2.13,<1.3.0a0
- openssl >=3.2.1,<4.0a0
@@ -12012,106 +18698,103 @@ packages:
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
constrains:
- - grpc-cpp =1.61.1
+ - grpc-cpp =1.62.2
license: Apache-2.0
license_family: APACHE
- size: 15569596
- timestamp: 1709169945450
+ size: 16097674
+ timestamp: 1713392821679
- kind: conda
name: libgrpc
- version: 1.61.1
- build: h9c2137f_1
- build_number: 1
+ version: 1.62.2
+ build: h9c18a4f_0
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/libgrpc-1.61.1-h9c2137f_1.conda
- sha256: f0d9d54730a577b89372270f0ced6d05c09b612ae1cb841fae921873be9973c6
- md5: 83b9d935a990da09fcc035c409d368f3
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libgrpc-1.62.2-h9c18a4f_0.conda
+ sha256: d2c5b5a828f6f1242c11e8c91968f48f64446f7dd5cbfa1197545e465eb7d47a
+ md5: e624fc11026dbb84c549435eccd08623
depends:
- - c-ares >=1.27.0,<2.0a0
+ - c-ares >=1.28.1,<2.0a0
- libabseil * cxx17*
- libabseil >=20240116.1,<20240117.0a0
- libcxx >=16
- - libprotobuf >=4.25.2,<4.25.3.0a0
+ - libprotobuf >=4.25.3,<4.25.4.0a0
- libre2-11 >=2023.9.1,<2024.0a0
- libzlib >=1.2.13,<1.3.0a0
- openssl >=3.2.1,<4.0a0
- re2
constrains:
- - grpc-cpp =1.61.1
+ - grpc-cpp =1.62.2
license: Apache-2.0
license_family: APACHE
- size: 4284656
- timestamp: 1709170281417
+ size: 5016525
+ timestamp: 1713392846329
- kind: conda
name: libhwloc
- version: 2.9.3
- build: default_h24e0189_1009
- build_number: 1009
+ version: 2.10.0
+ build: default_h1321489_1000
+ build_number: 1000
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/libhwloc-2.9.3-default_h24e0189_1009.conda
- sha256: a9fc54b481d0477cdf5700d702d44fc04fe00ffe63fc253aa0c6d2944abe8f3f
- md5: 22fcbfd2a4cdf941b074a00b773b43dd
- depends:
- - __osx >=10.9
- - libcxx >=16.0.6
- - libxml2 >=2.11.5,<3.0.0a0
- license: BSD-3-Clause
- license_family: BSD
- size: 2555838
- timestamp: 1699473547291
-- kind: conda
- name: libhwloc
- version: 2.9.3
- build: default_h4394839_1009
- build_number: 1009
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/libhwloc-2.9.3-default_h4394839_1009.conda
- sha256: b9a0574f8919f3943a4f5c81d2d40da94913afcbe02098685abce001a526141c
- md5: 8c30d3b6ed7c46fce04cc623d83b6c22
+ url: https://conda.anaconda.org/conda-forge/osx-64/libhwloc-2.10.0-default_h1321489_1000.conda
+ sha256: 86f0867081792d52f5c4e51e673478ba0a31e38fc7be59e1ba1890decc46e8da
+ md5: 6f5fe4374d1003e116e2573022178da6
depends:
- - __osx >=10.9
- - libcxx >=16.0.6
- - libxml2 >=2.11.5,<3.0.0a0
+ - libcxx >=16
+ - libxml2 >=2.12.6,<3.0a0
license: BSD-3-Clause
license_family: BSD
- size: 2530597
- timestamp: 1699473469798
+ size: 2346864
+ timestamp: 1711490587770
- kind: conda
name: libhwloc
- version: 2.9.3
- build: default_h554bfaf_1009
- build_number: 1009
+ version: 2.10.0
+ build: default_h2fb2949_1000
+ build_number: 1000
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libhwloc-2.9.3-default_h554bfaf_1009.conda
- sha256: 6950fee24766d03406e0f6f965262a5d98829c71eed8d1004f313892423b559b
- md5: f36ddc11ca46958197a45effdd286e45
+ url: https://conda.anaconda.org/conda-forge/linux-64/libhwloc-2.10.0-default_h2fb2949_1000.conda
+ sha256: dab61dff22f40367e57b1fe024e789f451b7511e65c32b97ada97ca549dd8dbc
+ md5: 7e3726e647a619c6ce5939014dfde86d
depends:
- libgcc-ng >=12
- libstdcxx-ng >=12
- - libxml2 >=2.11.5,<3.0.0a0
+ - libxml2 >=2.12.6,<3.0a0
license: BSD-3-Clause
license_family: BSD
- size: 2615665
- timestamp: 1694532603730
+ size: 2412713
+ timestamp: 1711490522117
- kind: conda
name: libhwloc
- version: 2.9.3
- build: default_haede6df_1009
- build_number: 1009
+ version: 2.10.0
+ build: default_h2fffb23_1000
+ build_number: 1000
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/libhwloc-2.9.3-default_haede6df_1009.conda
- sha256: 2e8c4bb7173f281a8e13f333a23c9fb7a1c86d342d7dccdd74f2eb583ddde450
- md5: 87da045f6d26ce9fe20ad76a18f6a18a
+ url: https://conda.anaconda.org/conda-forge/win-64/libhwloc-2.10.0-default_h2fffb23_1000.conda
+ sha256: e0d75da50e67a81e3cb37e2ee3b0d6ddc6543ec0f7b3828f884558552a1c4d93
+ md5: ee944f0d41d9e2048f9d7492c1623ca3
depends:
- - libxml2 >=2.11.5,<3.0.0a0
+ - libxml2 >=2.12.6,<3.0a0
- pthreads-win32
- ucrt >=10.0.20348.0
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
license: BSD-3-Clause
license_family: BSD
- size: 2578462
- timestamp: 1694533393675
+ size: 2376728
+ timestamp: 1711491473761
+- kind: conda
+ name: libhwloc
+ version: 2.10.0
+ build: default_h52d8fe8_1000
+ build_number: 1000
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libhwloc-2.10.0-default_h52d8fe8_1000.conda
+ sha256: 4e8a88e1ed996c42b464b1432aa3a70962f27881c0ada9b9f50d0ffd717d059a
+ md5: 530b33b17e97f7da76e2c432909daa5b
+ depends:
+ - libcxx >=16
+ - libxml2 >=2.12.6,<3.0a0
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 2321075
+ timestamp: 1711490652210
- kind: conda
name: libiconv
version: '1.17'
@@ -12166,6 +18849,93 @@ packages:
license: LGPL-2.1-only
size: 666538
timestamp: 1702682713201
+- kind: conda
+ name: libintl
+ version: 0.22.5
+ build: h5728263_2
+ build_number: 2
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/libintl-0.22.5-h5728263_2.conda
+ sha256: 1b95335af0a3e278b31e16667fa4e51d1c3f5e22d394d982539dfd5d34c5ae19
+ md5: aa622c938af057adc119f8b8eecada01
+ depends:
+ - libiconv >=1.17,<2.0a0
+ license: LGPL-2.1-or-later
+ size: 95745
+ timestamp: 1712516102666
+- kind: conda
+ name: libintl
+ version: 0.22.5
+ build: h5ff76d1_2
+ build_number: 2
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/libintl-0.22.5-h5ff76d1_2.conda
+ sha256: 280aaef0ed84637ee869012ad9ad9ed208e068dd9b8cf010dafeea717dad7203
+ md5: 3fb6774cb8cdbb93a6013b67bcf9716d
+ depends:
+ - libiconv >=1.17,<2.0a0
+ license: LGPL-2.1-or-later
+ size: 74307
+ timestamp: 1712512790983
+- kind: conda
+ name: libintl
+ version: 0.22.5
+ build: h8fbad5d_2
+ build_number: 2
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libintl-0.22.5-h8fbad5d_2.conda
+ sha256: 21bc79bdf34ffd20cb84d2a8bd82d7d0e2a1b94b9e72773f0fb207e5b4f1ff63
+ md5: 3d216d0add050129007de3342be7b8c5
+ depends:
+ - libiconv >=1.17,<2.0a0
+ license: LGPL-2.1-or-later
+ size: 81206
+ timestamp: 1712512755390
+- kind: conda
+ name: libintl-devel
+ version: 0.22.5
+ build: h5728263_2
+ build_number: 2
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/libintl-devel-0.22.5-h5728263_2.conda
+ sha256: 6164fd51abfc7294477c58da77ee1ff9ebc63b9a33404b646407f7fbc3cc7d0d
+ md5: a2ad82fae23975e4ccbfab2847d31d48
+ depends:
+ - libiconv >=1.17,<2.0a0
+ - libintl 0.22.5 h5728263_2
+ license: LGPL-2.1-or-later
+ size: 40772
+ timestamp: 1712516363413
+- kind: conda
+ name: libintl-devel
+ version: 0.22.5
+ build: h5ff76d1_2
+ build_number: 2
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/libintl-devel-0.22.5-h5ff76d1_2.conda
+ sha256: e3f15a85c6e63633a5ff503d56366bab31cd2e07ea21559889bc7eb19564106d
+ md5: ea0a07e556d6b238db685cae6e3585d0
+ depends:
+ - libiconv >=1.17,<2.0a0
+ - libintl 0.22.5 h5ff76d1_2
+ license: LGPL-2.1-or-later
+ size: 38422
+ timestamp: 1712512843420
+- kind: conda
+ name: libintl-devel
+ version: 0.22.5
+ build: h8fbad5d_2
+ build_number: 2
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libintl-devel-0.22.5-h8fbad5d_2.conda
+ sha256: e52b2d0c5711f64b523756ccd9b800ee6f10a6317432b20a417dc3792e0a794a
+ md5: 962b3348c68efd25da253e94590ea9a2
+ depends:
+ - libiconv >=1.17,<2.0a0
+ - libintl 0.22.5 h8fbad5d_2
+ license: LGPL-2.1-or-later
+ size: 38616
+ timestamp: 1712512805567
- kind: conda
name: libjpeg-turbo
version: 3.0.0
@@ -12310,102 +19080,121 @@ packages:
- kind: conda
name: liblapack
version: 3.9.0
- build: 21_linux64_openblas
- build_number: 21
+ build: 22_linux64_openblas
+ build_number: 22
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.9.0-21_linux64_openblas.conda
- sha256: 64b5c35dce00dd6f9f53178b2fe87116282e00967970bd6551a5a42923806ded
- md5: 1a42f305615c3867684e049e85927531
+ url: https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.9.0-22_linux64_openblas.conda
+ sha256: db246341d42f9100d45adeb1a7ba8b1ef5b51ceb9056fd643e98046a3259fde6
+ md5: b083767b6c877e24ee597d93b87ab838
depends:
- - libblas 3.9.0 21_linux64_openblas
+ - libblas 3.9.0 22_linux64_openblas
constrains:
- - liblapacke 3.9.0 21_linux64_openblas
- - libcblas 3.9.0 21_linux64_openblas
+ - libcblas 3.9.0 22_linux64_openblas
- blas * openblas
+ - liblapacke 3.9.0 22_linux64_openblas
license: BSD-3-Clause
license_family: BSD
- size: 14599
- timestamp: 1705979579648
+ size: 14471
+ timestamp: 1712542277696
- kind: conda
name: liblapack
version: 3.9.0
- build: 21_osx64_openblas
- build_number: 21
+ build: 22_osx64_openblas
+ build_number: 22
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/liblapack-3.9.0-21_osx64_openblas.conda
- sha256: 5d0ef4743e8684ad436e31bd3c378d48642815a20c260d358668ba29cd80987a
- md5: cf0e4d82cfca6cd9d6c9ed3df45907c9
+ url: https://conda.anaconda.org/conda-forge/osx-64/liblapack-3.9.0-22_osx64_openblas.conda
+ sha256: e36744f3e780564d6748b5dd05e15ad6a1af9184cf32ab9d1304c13a6bc3e16b
+ md5: f21b282ff7ba14df6134a0fe6ab42b1b
depends:
- - libblas 3.9.0 21_osx64_openblas
+ - libblas 3.9.0 22_osx64_openblas
constrains:
- - libcblas 3.9.0 21_osx64_openblas
- - liblapacke 3.9.0 21_osx64_openblas
+ - liblapacke 3.9.0 22_osx64_openblas
- blas * openblas
+ - libcblas 3.9.0 22_osx64_openblas
license: BSD-3-Clause
license_family: BSD
- size: 14738
- timestamp: 1705979734819
+ size: 14657
+ timestamp: 1712542322711
- kind: conda
name: liblapack
version: 3.9.0
- build: 21_osxarm64_openblas
- build_number: 21
+ build: 22_osxarm64_openblas
+ build_number: 22
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/liblapack-3.9.0-21_osxarm64_openblas.conda
- sha256: a917e99f26d205df1ec22d7a9fff0d2f2f3c7ba06ea2be886dc220a8340d5917
- md5: a4510e3913ef552d69ab2080a0048523
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/liblapack-3.9.0-22_osxarm64_openblas.conda
+ sha256: 2b1b24c98d15a6a3ad54cf7c8fef1ddccf84b7c557cde08235aaeffd1ff50ee8
+ md5: f2794950bc005e123b2c21f7fa3d7a6e
depends:
- - libblas 3.9.0 21_osxarm64_openblas
+ - libblas 3.9.0 22_osxarm64_openblas
constrains:
- - libcblas 3.9.0 21_osxarm64_openblas
- blas * openblas
- - liblapacke 3.9.0 21_osxarm64_openblas
+ - liblapacke 3.9.0 22_osxarm64_openblas
+ - libcblas 3.9.0 22_osxarm64_openblas
license: BSD-3-Clause
license_family: BSD
- size: 14829
- timestamp: 1705980215575
+ size: 14730
+ timestamp: 1712542435551
- kind: conda
name: liblapack
version: 3.9.0
- build: 21_win64_openblas
- build_number: 21
+ build: 22_win64_mkl
+ build_number: 22
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/liblapack-3.9.0-22_win64_mkl.conda
+ sha256: 8b28b361a13819ed83a67d3bfdde750a13bc8b50b9af26d94fd61616d0f2d703
+ md5: c752cc2af9f3d8d7b2fdebb915a33ef7
+ depends:
+ - libblas 3.9.0 22_win64_mkl
+ constrains:
+ - liblapacke 3.9.0 22_win64_mkl
+ - blas * mkl
+ - libcblas 3.9.0 22_win64_mkl
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 5182500
+ timestamp: 1712543085027
+- kind: conda
+ name: liblapack
+ version: 3.9.0
+ build: 22_win64_openblas
+ build_number: 22
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/liblapack-3.9.0-21_win64_openblas.conda
- sha256: 9a00ab203a34ebf46e5963a653e5fc8baf14b13a0fd2090140032395df852ffe
- md5: 505d2b51f16f4c309a110bc665c157a6
+ url: https://conda.anaconda.org/conda-forge/win-64/liblapack-3.9.0-22_win64_openblas.conda
+ sha256: 245c757dbe420e6b620444feb1c1af8f2afd2210342a0463a8fa80c0bed05977
+ md5: 7f69d8f99e92832f1df1d99c8199f3c3
depends:
- - libblas 3.9.0 21_win64_openblas
+ - libblas 3.9.0 22_win64_openblas
constrains:
+ - libcblas 3.9.0 22_win64_openblas
+ - liblapacke 3.9.0 22_win64_openblas
- blas * openblas
- - libcblas 3.9.0 21_win64_openblas
- - liblapacke 3.9.0 21_win64_openblas
track_features:
- blas_openblas
license: BSD-3-Clause
license_family: BSD
- size: 3973581
- timestamp: 1705980063912
+ size: 3974148
+ timestamp: 1712542790634
- kind: conda
name: liblapacke
version: 3.9.0
- build: 21_win64_openblas
- build_number: 21
+ build: 22_win64_openblas
+ build_number: 22
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/liblapacke-3.9.0-21_win64_openblas.conda
- sha256: 4adc77776eb0519d86adb61917289f68497e2db9acf5f17576d4b38be037cf1b
- md5: 4db28310990fd98f139224780f5c64ae
+ url: https://conda.anaconda.org/conda-forge/win-64/liblapacke-3.9.0-22_win64_openblas.conda
+ sha256: c3f8ce8cd9765e9c14a986d218b368189a843daf98ae466668b1aed2b455ca52
+ md5: 7c6d911d2d2b4e4e65197911947f65e1
depends:
- - libblas 3.9.0 21_win64_openblas
- - libcblas 3.9.0 21_win64_openblas
- - liblapack 3.9.0 21_win64_openblas
+ - libblas 3.9.0 22_win64_openblas
+ - libcblas 3.9.0 22_win64_openblas
+ - liblapack 3.9.0 22_win64_openblas
constrains:
- blas * openblas
track_features:
- blas_openblas
license: BSD-3-Clause
license_family: BSD
- size: 3973187
- timestamp: 1705980098952
+ size: 3975832
+ timestamp: 1712542821933
- kind: conda
name: libllvm14
version: 14.0.6
@@ -12564,6 +19353,58 @@ packages:
license_family: Apache
size: 25196932
timestamp: 1701379796962
+- kind: conda
+ name: libllvm18
+ version: 18.1.4
+ build: h2448989_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libllvm18-18.1.4-h2448989_0.conda
+ sha256: fce6d29c7e5771858a653653475366a9742b06ef725d85cf062e855fe3eba5c5
+ md5: fc46f35def3d50b071c138fe8b84bc72
+ depends:
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
+ - libxml2 >=2.12.6,<3.0a0
+ - libzlib >=1.2.13,<1.3.0a0
+ - zstd >=1.5.5,<1.6.0a0
+ license: Apache-2.0 WITH LLVM-exception
+ license_family: Apache
+ size: 38415463
+ timestamp: 1714412509082
+- kind: conda
+ name: libllvm18
+ version: 18.1.4
+ build: h30cc82d_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm18-18.1.4-h30cc82d_0.conda
+ sha256: eeb53ba0e54baad58a9e1c1637a7af92bd29f5864d8831b26aa9804a8d6379fe
+ md5: c89d7a7d1d52506cea97daa3f4dffeec
+ depends:
+ - libcxx >=16
+ - libxml2 >=2.12.6,<3.0a0
+ - libzlib >=1.2.13,<1.3.0a0
+ - zstd >=1.5.5,<1.6.0a0
+ license: Apache-2.0 WITH LLVM-exception
+ license_family: Apache
+ size: 25766312
+ timestamp: 1714416251056
+- kind: conda
+ name: libllvm18
+ version: 18.1.4
+ build: hbcf5fad_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/libllvm18-18.1.4-hbcf5fad_0.conda
+ sha256: 0cd02341bda61779ab26e0a106aada6e27bc913a9fc41bcc6189fdf5ffb32090
+ md5: 3f5a8408a1e1e0c64fd9c9c6a0341fed
+ depends:
+ - libcxx >=16
+ - libxml2 >=2.12.6,<3.0a0
+ - libzlib >=1.2.13,<1.3.0a0
+ - zstd >=1.5.5,<1.6.0a0
+ license: Apache-2.0 WITH LLVM-exception
+ license_family: Apache
+ size: 27594689
+ timestamp: 1714415545528
- kind: conda
name: libnetcdf
version: 4.9.2
@@ -12767,20 +19608,6 @@ packages:
license_family: GPL
size: 33408
timestamp: 1697359010159
-- kind: conda
- name: libnuma
- version: 2.0.16
- build: h0b41bf4_1
- build_number: 1
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libnuma-2.0.16-h0b41bf4_1.conda
- sha256: 814a50cba215548ec3ebfb53033ffb9b3b070b2966570ff44910b8d9ba1c359d
- md5: 28bfe2cb11357ccc5be21101a6b7ce86
- depends:
- - libgcc-ng >=12
- license: LGPL-2.1-only
- size: 41107
- timestamp: 1676004391774
- kind: conda
name: libogg
version: 1.3.4
@@ -12840,77 +19667,77 @@ packages:
timestamp: 1610382533961
- kind: conda
name: libopenblas
- version: 0.3.26
+ version: 0.3.27
build: openmp_h6c19121_0
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/libopenblas-0.3.26-openmp_h6c19121_0.conda
- sha256: 2a59b92c412fd0f59a8079dfa21c561ae17e72e72e47d4d7aee474bf6fd642e1
- md5: 000970261d954431ccca3cce68d873d8
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libopenblas-0.3.27-openmp_h6c19121_0.conda
+ sha256: feb2662444fc98a4842fe54cc70b1f109b2146108e7bac2b3bbad1f219cede90
+ md5: 82eba59f4eca26a9fc904d584f8761c0
depends:
- libgfortran 5.*
- libgfortran5 >=12.3.0
- llvm-openmp >=16.0.6
constrains:
- - openblas >=0.3.26,<0.3.27.0a0
+ - openblas >=0.3.27,<0.3.28.0a0
license: BSD-3-Clause
license_family: BSD
- size: 2917606
- timestamp: 1704950245195
+ size: 2925015
+ timestamp: 1712364212874
- kind: conda
name: libopenblas
- version: 0.3.26
+ version: 0.3.27
build: openmp_hfef2a42_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/libopenblas-0.3.26-openmp_hfef2a42_0.conda
- sha256: 4a5994cc608708eca19b90b642a144bb073e4a1cd27b824281dfcae67917204e
- md5: 9df60162aea811087267b515f359536c
+ url: https://conda.anaconda.org/conda-forge/osx-64/libopenblas-0.3.27-openmp_hfef2a42_0.conda
+ sha256: 45519189c0295296268cb7eabeeaa03ef54d780416c9a24be1d2a21db63a7848
+ md5: 00237c9c7f2cb6725fe2960680a6e225
depends:
- libgfortran 5.*
- libgfortran5 >=12.3.0
- llvm-openmp >=16.0.6
constrains:
- - openblas >=0.3.26,<0.3.27.0a0
+ - openblas >=0.3.27,<0.3.28.0a0
license: BSD-3-Clause
license_family: BSD
- size: 6044576
- timestamp: 1704951566923
+ size: 6047531
+ timestamp: 1712366254156
- kind: conda
name: libopenblas
- version: 0.3.26
+ version: 0.3.27
build: pthreads_h413a1c8_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.26-pthreads_h413a1c8_0.conda
- sha256: b626954b5a1113dafec8df89fa8bf18ce9b4701464d9f084ddd7fc9fac404bbd
- md5: 760ae35415f5ba8b15d09df5afe8b23a
+ url: https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.27-pthreads_h413a1c8_0.conda
+ sha256: 2ae7559aed0705deb3f716c7b247c74fd1b5e35b64e39834ce8b95f7564d4a3e
+ md5: a356024784da6dfd4683dc5ecf45b155
depends:
- libgcc-ng >=12
- libgfortran-ng
- libgfortran5 >=12.3.0
constrains:
- - openblas >=0.3.26,<0.3.27.0a0
+ - openblas >=0.3.27,<0.3.28.0a0
license: BSD-3-Clause
license_family: BSD
- size: 5578031
- timestamp: 1704950143521
+ size: 5598747
+ timestamp: 1712364444346
- kind: conda
name: libopenblas
- version: 0.3.26
+ version: 0.3.27
build: pthreads_hc140b1d_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/libopenblas-0.3.26-pthreads_hc140b1d_0.conda
- sha256: 40443fa1fa6015ca64f50ea75407ffe3c5d951b6879fc8a345d13603766ef845
- md5: 961a6872e97cdeba131645e987179443
+ url: https://conda.anaconda.org/conda-forge/win-64/libopenblas-0.3.27-pthreads_hc140b1d_0.conda
+ sha256: 55b39dd44b036675eb41f08dd76606692130c6468773237dc014ff0fa22072b5
+ md5: 84ff56055a31cbc0022898f21b35092b
depends:
- libflang >=5.0.0,<6.0.0.a0
- ucrt >=10.0.20348.0
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
constrains:
- - openblas >=0.3.26,<0.3.27.0a0
+ - openblas >=0.3.27,<0.3.28.0a0
license: BSD-3-Clause
license_family: BSD
- size: 3970611
- timestamp: 1704955151478
+ size: 3968906
+ timestamp: 1712369208698
- kind: conda
name: libopus
version: 1.3.1
@@ -12954,79 +19781,82 @@ packages:
timestamp: 1606823633642
- kind: conda
name: libparquet
- version: 15.0.0
- build: h089a9f7_7_cpu
- build_number: 7
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/libparquet-15.0.0-h089a9f7_7_cpu.conda
- sha256: 36ea4b863b3a7d9b8cec59217164ace2d83b09a66be3f3cdac1f0f9382aec444
- md5: e9824f632b866ff6edc3a85a461bf45b
+ version: 15.0.2
+ build: h178134c_6_cpu
+ build_number: 6
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/libparquet-15.0.2-h178134c_6_cpu.conda
+ sha256: ac26b0357304d5169b4d988b6bcde129d3b8376eb7cd294e1e021cdae047f7dc
+ md5: 34c1a3d75b868af2897a67cc0706c9b7
depends:
- - libarrow 15.0.0 h331b9b1_7_cpu
- - libcxx >=16
+ - libarrow 15.0.2 he3d97d8_6_cpu
- libthrift >=0.19.0,<0.19.1.0a0
- openssl >=3.2.1,<4.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
license: Apache-2.0
license_family: APACHE
- size: 920870
- timestamp: 1708690418706
+ size: 796613
+ timestamp: 1714449157592
- kind: conda
name: libparquet
- version: 15.0.0
- build: h278d484_7_cpu
- build_number: 7
+ version: 15.0.2
+ build: h5304c63_6_cpu
+ build_number: 6
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/libparquet-15.0.0-h278d484_7_cpu.conda
- sha256: 36f643d89a1d7f2be5430319169990bdca781306eb368ea3c724319d79b3f1de
- md5: 7c6bc1a4174009b1eae4a59911f3d6a7
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libparquet-15.0.2-h5304c63_6_cpu.conda
+ sha256: fb48e01940459c0cddf9bb50c5ee723483da20a30e8e0c82bb582f7d6ce07206
+ md5: fd7c4fea639f0be77a3bd593d021610e
depends:
- - libarrow 15.0.0 hd462d9b_7_cpu
+ - __osx >=11.0
+ - libarrow 15.0.2 hea125af_6_cpu
- libcxx >=16
- libthrift >=0.19.0,<0.19.1.0a0
- openssl >=3.2.1,<4.0a0
license: Apache-2.0
license_family: APACHE
- size: 863086
- timestamp: 1708690864631
+ size: 865353
+ timestamp: 1714450645373
- kind: conda
name: libparquet
- version: 15.0.0
- build: h352af49_7_cpu
- build_number: 7
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libparquet-15.0.0-h352af49_7_cpu.conda
- sha256: 09fa7243683ea8adf32cb62a7e2009059d8a94c1bdd5c24aed820ef228f17234
- md5: 5a5fd8d60cfb3fc35341e88fed6c0644
+ version: 15.0.2
+ build: h7cd3cfe_6_cpu
+ build_number: 6
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/libparquet-15.0.2-h7cd3cfe_6_cpu.conda
+ sha256: 6751fb38815f8abfd97cc7b0dfaecb5bab536099d8ea2754b32ad1b4ce65e6a9
+ md5: 3e045d0ca375f9bcd7e74546b48bac21
depends:
- - libarrow 15.0.0 h5001e6d_7_cpu
- - libgcc-ng >=12
- - libstdcxx-ng >=12
+ - __osx >=10.13
+ - libarrow 15.0.2 hfba3c4c_6_cpu
+ - libcxx >=16
- libthrift >=0.19.0,<0.19.1.0a0
- openssl >=3.2.1,<4.0a0
license: Apache-2.0
license_family: APACHE
- size: 1179148
- timestamp: 1708689349001
+ size: 924473
+ timestamp: 1714450053293
- kind: conda
name: libparquet
- version: 15.0.0
- build: h7ec3a38_7_cpu
- build_number: 7
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/libparquet-15.0.0-h7ec3a38_7_cpu.conda
- sha256: 4db0f981ef254653b92c938aed0a6629c4ea549961a914b91b6a6975d98ba4ed
- md5: 599c7eb2daef6343e8b7fb39537d2447
+ version: 15.0.2
+ build: hacf5a1f_6_cpu
+ build_number: 6
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libparquet-15.0.2-hacf5a1f_6_cpu.conda
+ sha256: ac842454e033b8ad638eec0e0672db8e82d7a53d6c5f61ec93badcee02373966
+ md5: 37d4b8f700247904e94d8fb0a90e488e
depends:
- - libarrow 15.0.0 hd01637b_7_cpu
+ - gflags >=2.2.2,<2.3.0a0
+ - libarrow 15.0.2 hefa796f_6_cpu
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
- libthrift >=0.19.0,<0.19.1.0a0
- openssl >=3.2.1,<4.0a0
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
license: Apache-2.0
license_family: APACHE
- size: 795099
- timestamp: 1708690093570
+ size: 1181574
+ timestamp: 1714448276294
- kind: conda
name: libpng
version: 1.6.43
@@ -13086,54 +19916,58 @@ packages:
- kind: conda
name: libpq
version: '16.2'
- build: h0f8b458_0
+ build: h0f8b458_1
+ build_number: 1
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/libpq-16.2-h0f8b458_0.conda
- sha256: 0ad2265131a6d79fcfe8c5b7a04884f7377f981d18af775ebb71bc61b0c938b6
- md5: fea5d30234a7158f4eaa915b5a6e0c9c
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libpq-16.2-h0f8b458_1.conda
+ sha256: 7a6a195d37f6fe2f2d608033755f6e9522c9a2b7b07e52529159105f635c6cae
+ md5: e236a8e95b82a454e333f22418b9c879
depends:
- krb5 >=1.21.2,<1.22.0a0
- openssl >=3.2.1,<4.0a0
license: PostgreSQL
- size: 2408453
- timestamp: 1707416268983
+ size: 2452312
+ timestamp: 1710864761131
- kind: conda
name: libpq
version: '16.2'
- build: h33b98f1_0
+ build: h33b98f1_1
+ build_number: 1
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libpq-16.2-h33b98f1_0.conda
- sha256: 352748b0499a22e2a8e103f071b8d9357e1fb710c0aec0f79895d3ba03dccb03
- md5: fe0e297faf462ee579c95071a5211665
+ url: https://conda.anaconda.org/conda-forge/linux-64/libpq-16.2-h33b98f1_1.conda
+ sha256: e03a8439b79e013840c44c957d37dbce10316888b2b5dc7dcfcfc0cfe3a3b128
+ md5: 9e49ec2a61d02623b379dc332eb6889d
depends:
- krb5 >=1.21.2,<1.22.0a0
- libgcc-ng >=12
- openssl >=3.2.1,<4.0a0
license: PostgreSQL
- size: 2474825
- timestamp: 1707415138154
+ size: 2601973
+ timestamp: 1710863646063
- kind: conda
name: libpq
version: '16.2'
- build: ha925e61_0
+ build: ha925e61_1
+ build_number: 1
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/libpq-16.2-ha925e61_0.conda
- sha256: 537b3816ac66f12c56fc62a67d896703b68f7588a5d83ab98009731de82eb742
- md5: 8b81f4feaa3744271fcf2822ad1489f1
+ url: https://conda.anaconda.org/conda-forge/osx-64/libpq-16.2-ha925e61_1.conda
+ sha256: bfb252cb14b88a75ba4af930c16dccae265dce0afdf5abde7de1718181aa2cea
+ md5: a10ef466bbc68a8e74112a8e26028d66
depends:
- krb5 >=1.21.2,<1.22.0a0
- openssl >=3.2.1,<4.0a0
license: PostgreSQL
- size: 2336821
- timestamp: 1707415890165
+ size: 2333894
+ timestamp: 1710864725862
- kind: conda
name: libpq
version: '16.2'
- build: hdb24f17_0
+ build: hdb24f17_1
+ build_number: 1
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/libpq-16.2-hdb24f17_0.conda
- sha256: ae4e89c6fb924fbf0ac82b3462fc003277466b186ad48bf7a422dced00f6efd2
- md5: c2e66b1a4350b02557b9f63626cda4e5
+ url: https://conda.anaconda.org/conda-forge/win-64/libpq-16.2-hdb24f17_1.conda
+ sha256: b217f10336ca02bcffd2adf474fecf4bc917d8fbd26ab027b96e0d05257e5537
+ md5: a347334764562545270c6acc4b852ccf
depends:
- krb5 >=1.21.2,<1.22.0a0
- openssl >=3.2.1,<4.0a0
@@ -13141,17 +19975,16 @@ packages:
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
license: PostgreSQL
- size: 3535847
- timestamp: 1707416127646
+ size: 3642690
+ timestamp: 1710864431449
- kind: conda
name: libprotobuf
- version: 4.25.2
- build: h08a7969_1
- build_number: 1
+ version: 4.25.3
+ build: h08a7969_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libprotobuf-4.25.2-h08a7969_1.conda
- sha256: 433a82d1fc0d0fe78d93c34e4665bd0c931eb2e528be076875226ddf87e0d80a
- md5: babbc506d2626698412c2e4ade78a20a
+ url: https://conda.anaconda.org/conda-forge/linux-64/libprotobuf-4.25.3-h08a7969_0.conda
+ sha256: 70e0eef046033af2e8d21251a785563ad738ed5281c74e21c31c457780845dcd
+ md5: 6945825cebd2aeb16af4c69d97c32c13
depends:
- libabseil * cxx17*
- libabseil >=20240116.1,<20240117.0a0
@@ -13160,17 +19993,16 @@ packages:
- libzlib >=1.2.13,<1.3.0a0
license: BSD-3-Clause
license_family: BSD
- size: 2827931
- timestamp: 1708436355394
+ size: 2811207
+ timestamp: 1709514552541
- kind: conda
name: libprotobuf
- version: 4.25.2
- build: h4e4d658_1
- build_number: 1
+ version: 4.25.3
+ build: h4e4d658_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/libprotobuf-4.25.2-h4e4d658_1.conda
- sha256: 00fefa2ff03f162d64c6fedd9d60c2dad7a9a58bd845f8fda3bb44c6f68599d0
- md5: 35c4839bee83717f5ed6c99fae327dd7
+ url: https://conda.anaconda.org/conda-forge/osx-64/libprotobuf-4.25.3-h4e4d658_0.conda
+ sha256: 3f126769fb5820387d436370ad48600e05d038a28689fdf9988b64e1059947a8
+ md5: 57b7ee4f1fd8573781cfdabaec4a7782
depends:
- __osx >=10.13
- libabseil * cxx17*
@@ -13179,17 +20011,16 @@ packages:
- libzlib >=1.2.13,<1.3.0a0
license: BSD-3-Clause
license_family: BSD
- size: 2235217
- timestamp: 1708437029197
+ size: 2216001
+ timestamp: 1709514908146
- kind: conda
name: libprotobuf
- version: 4.25.2
- build: h503648d_1
- build_number: 1
+ version: 4.25.3
+ build: h503648d_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/libprotobuf-4.25.2-h503648d_1.conda
- sha256: c3fe66726fb3e2cced330ab205b2158694cbe82b0a73ee5fedb58c8aab302286
- md5: 75c3b50013a060f039b5d31534d30246
+ url: https://conda.anaconda.org/conda-forge/win-64/libprotobuf-4.25.3-h503648d_0.conda
+ sha256: 5d4c5592be3994657ebf47e52f26b734cc50b0ea9db007d920e2e31762aac216
+ md5: 4da7de0ba35777742edf67bf7a1075df
depends:
- libabseil * cxx17*
- libabseil >=20240116.1,<20240117.0a0
@@ -13199,17 +20030,16 @@ packages:
- vc14_runtime >=14.29.30139
license: BSD-3-Clause
license_family: BSD
- size: 5617688
- timestamp: 1708436987200
+ size: 5650604
+ timestamp: 1709514804631
- kind: conda
name: libprotobuf
- version: 4.25.2
- build: hbfab5d5_1
- build_number: 1
+ version: 4.25.3
+ build: hbfab5d5_0
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/libprotobuf-4.25.2-hbfab5d5_1.conda
- sha256: 3b656c369266a590f308770d17245fb784b1edf2ee1d0e406c515834ac455606
- md5: ec389b718aef3805fc28457c11ea36e5
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libprotobuf-4.25.3-hbfab5d5_0.conda
+ sha256: d754519abc3ddbdedab2a38d0639170f5347c1573eef80c707f3a8dc5dff706a
+ md5: 5f70b2b945a9741cba7e6dfe735a02a7
depends:
- libabseil * cxx17*
- libabseil >=20240116.1,<20240117.0a0
@@ -13217,8 +20047,8 @@ packages:
- libzlib >=1.2.13,<1.3.0a0
license: BSD-3-Clause
license_family: BSD
- size: 2163244
- timestamp: 1708436969402
+ size: 2154402
+ timestamp: 1709514097574
- kind: conda
name: libre2-11
version: 2023.09.01
@@ -13368,6 +20198,20 @@ packages:
license_family: GPL
size: 213839
timestamp: 1700766697471
+- kind: conda
+ name: libsanitizer
+ version: 13.2.0
+ build: h6ddb7a1_6
+ build_number: 6
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libsanitizer-13.2.0-h6ddb7a1_6.conda
+ sha256: 06f3695963ee86badbfe006f13fa9fe600539acb77f19c5c972d498a14e9b53d
+ md5: 95b48df99634d9e706a0bf7e30ae91c8
+ depends:
+ - libgcc-ng >=13.2.0
+ license: GPL-3.0-only WITH GCC-exception-3.1
+ size: 4188343
+ timestamp: 1714581787957
- kind: conda
name: libsecret
version: 0.18.8
@@ -13525,101 +20369,99 @@ packages:
- kind: conda
name: libspatialite
version: 5.1.0
- build: h69abc6b_4
- build_number: 4
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/libspatialite-5.1.0-h69abc6b_4.conda
- sha256: c81faf3ac0c571f3e56c23e0eb9f70217516bf47c244fc9eed6544405f8fe786
- md5: 87ffacbac2645cf24734708c63dd2e18
+ build: h487bbac_5
+ build_number: 5
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/libspatialite-5.1.0-h487bbac_5.conda
+ sha256: 49de77260f5946f8a023309c11f9dabd9c070745afd5f1ba7343342ac6285306
+ md5: e295a6cf66039ca5ce3dfdbd850a4145
depends:
- - __osx >=10.9
- freexl >=2
- freexl >=2.0.0,<3.0a0
- geos >=3.12.1,<3.12.2.0a0
- - libcxx >=16.0.6
+ - libcxx >=16
- libiconv >=1.17,<2.0a0
- librttopo >=1.1.0,<1.2.0a0
- - libsqlite >=3.44.2,<4.0a0
- - libxml2 >=2.12.2,<3.0.0a0
+ - libsqlite >=3.45.2,<4.0a0
+ - libxml2 >=2.12.6,<3.0a0
- libzlib >=1.2.13,<1.3.0a0
- - proj >=9.3.1,<9.3.2.0a0
+ - proj >=9.4.0,<9.4.1.0a0
- sqlite
- zlib
license: MPL-1.1
license_family: MOZILLA
- size: 4104523
- timestamp: 1702008452166
+ size: 3145299
+ timestamp: 1711322398500
- kind: conda
name: libspatialite
version: 5.1.0
- build: h7bd4643_4
- build_number: 4
+ build: h6f065fc_5
+ build_number: 5
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libspatialite-5.1.0-h7bd4643_4.conda
- sha256: 2d07badb81296f42dd0c59b02dbf7d64ca2c78c086226327c1e11e11f71effbd
- md5: 127d36f9ee392fa81b45e81867ce30ab
+ url: https://conda.anaconda.org/conda-forge/linux-64/libspatialite-5.1.0-h6f065fc_5.conda
+ sha256: 4181564a6e7bc0fa854cf8f2ed55e25c166c52da501dd21b39cf5c7567e999cb
+ md5: f2e2bdd5fd10493a525503b2f40c59eb
depends:
- freexl >=2
- freexl >=2.0.0,<3.0a0
- geos >=3.12.1,<3.12.2.0a0
- libgcc-ng >=12
- librttopo >=1.1.0,<1.2.0a0
- - libsqlite >=3.44.2,<4.0a0
+ - libsqlite >=3.45.2,<4.0a0
- libstdcxx-ng >=12
- - libxml2 >=2.12.2,<3.0.0a0
+ - libxml2 >=2.12.6,<3.0a0
- libzlib >=1.2.13,<1.3.0a0
- - proj >=9.3.1,<9.3.2.0a0
+ - proj >=9.4.0,<9.4.1.0a0
- sqlite
- zlib
license: MPL-1.1
license_family: MOZILLA
- size: 4066136
- timestamp: 1702008260311
+ size: 4066186
+ timestamp: 1711322225232
- kind: conda
name: libspatialite
version: 5.1.0
- build: hebe6af1_4
- build_number: 4
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/libspatialite-5.1.0-hebe6af1_4.conda
- sha256: 48ff63495ed9ed86db1fb62ea51e1053747e76481200fb33aa164f7bdb1bec93
- md5: 9e8f3012e1b4460819395357cc7c4371
+ build: h77c30ab_5
+ build_number: 5
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libspatialite-5.1.0-h77c30ab_5.conda
+ sha256: c0ea0744629435bbbd20d782be44adedbd1b41a7515e488c3eb4db2ff8b4c934
+ md5: 1c5b04aaa5671563942915305749b5a1
depends:
- - __osx >=10.9
- freexl >=2
- freexl >=2.0.0,<3.0a0
- geos >=3.12.1,<3.12.2.0a0
- - libcxx >=16.0.6
+ - libcxx >=16
- libiconv >=1.17,<2.0a0
- librttopo >=1.1.0,<1.2.0a0
- - libsqlite >=3.44.2,<4.0a0
- - libxml2 >=2.12.2,<3.0.0a0
+ - libsqlite >=3.45.2,<4.0a0
+ - libxml2 >=2.12.6,<3.0a0
- libzlib >=1.2.13,<1.3.0a0
- - proj >=9.3.1,<9.3.2.0a0
+ - proj >=9.4.0,<9.4.1.0a0
- sqlite
- zlib
license: MPL-1.1
license_family: MOZILLA
- size: 3145354
- timestamp: 1702008546896
+ size: 3011262
+ timestamp: 1711322291079
- kind: conda
name: libspatialite
version: 5.1.0
- build: hf2f0abc_4
- build_number: 4
+ build: hf13de1f_5
+ build_number: 5
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/libspatialite-5.1.0-hf2f0abc_4.conda
- sha256: 30356fe967052feb909ae8b6011637ffe57aaaf6add65399400fca04a97189b7
- md5: 15d5d74335f53b34f05e6ee83c2e6119
+ url: https://conda.anaconda.org/conda-forge/win-64/libspatialite-5.1.0-hf13de1f_5.conda
+ sha256: 8672e38671303d7ddccb8d87ea415fe2a83fb27fef32b77c4d3fd9f795da8129
+ md5: 4690935787e373512cd5fa28495b708e
depends:
- freexl >=2
- freexl >=2.0.0,<3.0a0
- geos >=3.12.1,<3.12.2.0a0
- librttopo >=1.1.0,<1.2.0a0
- - libsqlite >=3.44.2,<4.0a0
- - libxml2 >=2.12.2,<3.0.0a0
+ - libsqlite >=3.45.2,<4.0a0
+ - libxml2 >=2.12.6,<3.0a0
- libzlib >=1.2.13,<1.3.0a0
- - proj >=9.3.1,<9.3.2.0a0
+ - proj >=9.4.0,<9.4.1.0a0
- sqlite
- ucrt >=10.0.20348.0
- vc >=14.2,<15
@@ -13627,63 +20469,63 @@ packages:
- zlib
license: MPL-1.1
license_family: MOZILLA
- size: 8606085
- timestamp: 1702008651881
+ size: 8382910
+ timestamp: 1711322191994
- kind: conda
name: libsqlite
- version: 3.45.1
+ version: 3.45.3
build: h091b4b1_0
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.45.1-h091b4b1_0.conda
- sha256: 64befc456a38907d1334fb58eb604a96625d3a23a2f34fbd203e0b307a4a141e
- md5: a153a40a253962373b5330eb9d182da9
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.45.3-h091b4b1_0.conda
+ sha256: 4337f466eb55bbdc74e168b52ec8c38f598e3664244ec7a2536009036e2066cc
+ md5: c8c1186c7f3351f6ffddb97b1f54fc58
depends:
- libzlib >=1.2.13,<1.3.0a0
license: Unlicense
- size: 824677
- timestamp: 1707495428497
+ size: 824794
+ timestamp: 1713367748819
- kind: conda
name: libsqlite
- version: 3.45.1
+ version: 3.45.3
build: h2797004_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.45.1-h2797004_0.conda
- sha256: 1b379d1c652b25d0540251d422ef767472e768fd36b77261045e97f9ba6d3faa
- md5: fc4ccadfbf6d4784de88c41704792562
+ url: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.45.3-h2797004_0.conda
+ sha256: e2273d6860eadcf714a759ffb6dc24a69cfd01f2a0ea9d6c20f86049b9334e0c
+ md5: b3316cbe90249da4f8e84cd66e1cc55b
depends:
- libgcc-ng >=12
- libzlib >=1.2.13,<1.3.0a0
license: Unlicense
- size: 859346
- timestamp: 1707495156652
+ size: 859858
+ timestamp: 1713367435849
- kind: conda
name: libsqlite
- version: 3.45.1
+ version: 3.45.3
build: h92b6c6a_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/libsqlite-3.45.1-h92b6c6a_0.conda
- sha256: d65ce7093ecf5884b241a5ca8d26f80d21eaebf14ca67923b50c249f47a84cf9
- md5: e451d14a5412cdc68be50493df251f55
+ url: https://conda.anaconda.org/conda-forge/osx-64/libsqlite-3.45.3-h92b6c6a_0.conda
+ sha256: 4d44b68fb29dcbc2216a8cae0b274b02ef9b4ae05d1d0f785362ed30b91c9b52
+ md5: 68e462226209f35182ef66eda0f794ff
depends:
- libzlib >=1.2.13,<1.3.0a0
license: Unlicense
- size: 902313
- timestamp: 1707495366004
+ size: 902546
+ timestamp: 1713367776445
- kind: conda
name: libsqlite
- version: 3.45.1
+ version: 3.45.3
build: hcfcfb64_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.45.1-hcfcfb64_0.conda
- sha256: e1010f4ac7b056d85d91e6cb6137ef118f920eba88059261689e543780b230df
- md5: c583c1d6999b7aa148eff3089e13c44b
+ url: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.45.3-hcfcfb64_0.conda
+ sha256: 06ec75faa51d7ec6d5db98889e869b579a9df19d7d3d9baff8359627da4a3b7e
+ md5: 73f5dc8e2d55d9a1e14b11f49c3b4a28
depends:
- ucrt >=10.0.20348.0
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
license: Unlicense
- size: 870045
- timestamp: 1707495642340
+ size: 870518
+ timestamp: 1713367888406
- kind: conda
name: libssh2
version: 1.11.0
@@ -13751,24 +20593,24 @@ packages:
- kind: conda
name: libstdcxx-ng
version: 13.2.0
- build: h7e041cc_5
- build_number: 5
+ build: hc0a3c3a_6
+ build_number: 6
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-13.2.0-h7e041cc_5.conda
- sha256: a56c5b11f1e73a86e120e6141a42d9e935a99a2098491ac9e15347a1476ce777
- md5: f6f6600d18a4047b54f803cf708b868a
+ url: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-13.2.0-hc0a3c3a_6.conda
+ sha256: 547903d5ffecf49543c6ca9f6e504f0a8a47920b0517395cf529b4a955f1c3d4
+ md5: 2f18345bbc433c8a1ed887d7161e86a6
license: GPL-3.0-only WITH GCC-exception-3.1
- license_family: GPL
- size: 3834139
- timestamp: 1706819252496
+ size: 3844194
+ timestamp: 1714581807420
- kind: conda
name: libsystemd0
version: '255'
- build: h3516f8a_0
+ build: h3516f8a_1
+ build_number: 1
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libsystemd0-255-h3516f8a_0.conda
- sha256: 9306eafe761a758e0c2efa92025bfc0684c66ef500efdea4fbe4687b59e8099e
- md5: 24e2649ebd432e652aa72cfd05f23a8e
+ url: https://conda.anaconda.org/conda-forge/linux-64/libsystemd0-255-h3516f8a_1.conda
+ sha256: af27b0d225435d03f378a119f8eab6b280c53557a3c84cdb3bb8fd3167615aed
+ md5: 3366af27f0b593544a6cd453c7932ac5
depends:
- __glibc >=2.17,<3.0.a0
- libcap >=2.69,<2.70.0a0
@@ -13778,8 +20620,8 @@ packages:
- xz >=5.2.6,<6.0a0
- zstd >=1.5.5,<1.6.0a0
license: LGPL-2.1-or-later
- size: 404326
- timestamp: 1701982703751
+ size: 402592
+ timestamp: 1709568499820
- kind: conda
name: libtasn1
version: 4.19.0
@@ -13882,89 +20724,89 @@ packages:
- kind: conda
name: libtiff
version: 4.6.0
- build: h684deea_2
- build_number: 2
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/libtiff-4.6.0-h684deea_2.conda
- sha256: 1ef5bd7295f4316b111f70ad21356fb9f0de50b85a341cac9e3a61ac6487fdf1
- md5: 2ca10a325063e000ad6d2a5900061e0d
+ build: h07db509_3
+ build_number: 3
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libtiff-4.6.0-h07db509_3.conda
+ sha256: 6df3e129682f6dc43826e5028e1807624b2a7634c4becbb50e56be9f77167f25
+ md5: 28c9f8c6dd75666dfb296aea06c49cb8
depends:
- lerc >=4.0.0,<5.0a0
- - libcxx >=15.0.7
- - libdeflate >=1.19,<1.20.0a0
+ - libcxx >=16
+ - libdeflate >=1.20,<1.21.0a0
- libjpeg-turbo >=3.0.0,<4.0a0
- libwebp-base >=1.3.2,<2.0a0
- libzlib >=1.2.13,<1.3.0a0
- xz >=5.2.6,<6.0a0
- zstd >=1.5.5,<1.6.0a0
license: HPND
- size: 266501
- timestamp: 1695661828714
+ size: 238349
+ timestamp: 1711218119201
- kind: conda
name: libtiff
version: 4.6.0
- build: h6e2ebb7_2
- build_number: 2
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/libtiff-4.6.0-h6e2ebb7_2.conda
- sha256: f7b50b71840a5d8edd74a8bccf0c173ca2599bd136e366c35722272b4afa0500
- md5: 08d653b74ee2dec0131ad4259ffbb126
+ build: h129831d_3
+ build_number: 3
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/libtiff-4.6.0-h129831d_3.conda
+ sha256: f9b35c5ec1aea9a2cc20e9275a0bb8f056482faa8c5a62feb243ed780755ea30
+ md5: 568593071d2e6cea7b5fc1f75bfa10ca
depends:
- lerc >=4.0.0,<5.0a0
- - libdeflate >=1.19,<1.20.0a0
+ - libcxx >=16
+ - libdeflate >=1.20,<1.21.0a0
- libjpeg-turbo >=3.0.0,<4.0a0
+ - libwebp-base >=1.3.2,<2.0a0
- libzlib >=1.2.13,<1.3.0a0
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
- xz >=5.2.6,<6.0a0
- zstd >=1.5.5,<1.6.0a0
license: HPND
- size: 787430
- timestamp: 1695662030293
+ size: 257489
+ timestamp: 1711218113053
- kind: conda
name: libtiff
version: 4.6.0
- build: ha8a6c65_2
- build_number: 2
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/libtiff-4.6.0-ha8a6c65_2.conda
- sha256: b18ef36eb90f190db22c56ae5a080bccc16669c8f5b795a6211d7b0c00c18ff7
- md5: 596d6d949bab9a75a492d451f521f457
+ build: h1dd3fc0_3
+ build_number: 3
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.6.0-h1dd3fc0_3.conda
+ sha256: fc3b210f9584a92793c07396cb93e72265ff3f1fa7ca629128bf0a50d5cb15e4
+ md5: 66f03896ffbe1a110ffda05c7a856504
depends:
- lerc >=4.0.0,<5.0a0
- - libcxx >=15.0.7
- - libdeflate >=1.19,<1.20.0a0
+ - libdeflate >=1.20,<1.21.0a0
+ - libgcc-ng >=12
- libjpeg-turbo >=3.0.0,<4.0a0
+ - libstdcxx-ng >=12
- libwebp-base >=1.3.2,<2.0a0
- libzlib >=1.2.13,<1.3.0a0
- xz >=5.2.6,<6.0a0
- zstd >=1.5.5,<1.6.0a0
license: HPND
- size: 246265
- timestamp: 1695661829324
+ size: 282688
+ timestamp: 1711217970425
- kind: conda
name: libtiff
version: 4.6.0
- build: ha9c0a0a_2
- build_number: 2
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.6.0-ha9c0a0a_2.conda
- sha256: 45158f5fbee7ee3e257e6b9f51b9f1c919ed5518a94a9973fe7fa4764330473e
- md5: 55ed21669b2015f77c180feb1dd41930
+ build: hddb2be6_3
+ build_number: 3
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/libtiff-4.6.0-hddb2be6_3.conda
+ sha256: 2e04844865cfe0286d70482c129f159542b325f4e45774aaff5fbe5027b30b0a
+ md5: 6d1828c9039929e2f185c5fa9d133018
depends:
- lerc >=4.0.0,<5.0a0
- - libdeflate >=1.19,<1.20.0a0
- - libgcc-ng >=12
+ - libdeflate >=1.20,<1.21.0a0
- libjpeg-turbo >=3.0.0,<4.0a0
- - libstdcxx-ng >=12
- - libwebp-base >=1.3.2,<2.0a0
- libzlib >=1.2.13,<1.3.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
- xz >=5.2.6,<6.0a0
- zstd >=1.5.5,<1.6.0a0
license: HPND
- size: 283198
- timestamp: 1695661593314
+ size: 787198
+ timestamp: 1711218639912
- kind: conda
name: libutf8proc
version: 2.8.0
@@ -14097,146 +20939,140 @@ packages:
timestamp: 1610609991029
- kind: conda
name: libwebp
- version: 1.3.2
- build: h44782d1_1
- build_number: 1
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/libwebp-1.3.2-h44782d1_1.conda
- sha256: 4d7e1efb76e398f578c5a3d0905c5eca1e4a93298aed6e2f7a10854f6671dfe8
- md5: 46d48ff2cd600a82db18d7b83471aa86
+ version: 1.4.0
+ build: h2466b09_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/libwebp-1.4.0-h2466b09_0.conda
+ sha256: ebabb57084e85cd09d529dbb4fe0f4db6cd0d369ad8095342c37b98855fd87fd
+ md5: 11334a8fb02041b453e2f89a4ae16f8d
depends:
- - giflib >=5.2.1,<5.3.0a0
- - libjpeg-turbo >=3.0.0,<4.0a0
- - libpng >=1.6.39,<1.7.0a0
- - libtiff >=4.6.0,<4.7.0a0
- - libwebp-base 1.3.2.*
- - libwebp-base >=1.3.2,<2.0a0
+ - libwebp-base 1.4.0.*
+ - libwebp-base >=1.4.0,<2.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
license: BSD-3-Clause
- license_family: BSD
- size: 79587
- timestamp: 1696116409146
+ size: 71106
+ timestamp: 1714600150795
- kind: conda
name: libwebp
- version: 1.3.2
- build: h658648e_1
- build_number: 1
+ version: 1.4.0
+ build: h2c329e2_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libwebp-1.3.2-h658648e_1.conda
- sha256: cc5e55531d8067ea379b145861aea8c749a545912bc016372f5e3c69cc925efd
- md5: 0ebb65e8d86843865796c7c95a941f34
+ url: https://conda.anaconda.org/conda-forge/linux-64/libwebp-1.4.0-h2c329e2_0.conda
+ sha256: bd45805b169e3e0ff166d360c3c4842d77107d28c8f9feba020a8e8b9c80f948
+ md5: 80030debaa84cfc31755d53742df3ca6
depends:
- - giflib >=5.2.1,<5.3.0a0
+ - giflib >=5.2.2,<5.3.0a0
- libgcc-ng >=12
- libjpeg-turbo >=3.0.0,<4.0a0
- - libpng >=1.6.39,<1.7.0a0
+ - libpng >=1.6.43,<1.7.0a0
- libtiff >=4.6.0,<4.7.0a0
- - libwebp-base 1.3.2.*
- - libwebp-base >=1.3.2,<2.0a0
+ - libwebp-base 1.4.0.*
+ - libwebp-base >=1.4.0,<2.0a0
license: BSD-3-Clause
- license_family: BSD
- size: 84938
- timestamp: 1696116247718
+ size: 91941
+ timestamp: 1714599671055
- kind: conda
name: libwebp
- version: 1.3.2
- build: hcfcfb64_1
- build_number: 1
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/libwebp-1.3.2-hcfcfb64_1.conda
- sha256: 7b4f95d1e9756fe81186309113188195fbac164687b96ad443a243a0ca59ec8f
- md5: 6202a1ba6be2713084cf0452d4e8c10c
+ version: 1.4.0
+ build: h54798ee_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libwebp-1.4.0-h54798ee_0.conda
+ sha256: e75e7a58793236fc8e92733c8bad168ce7bea40ca54c8c643e357511ba4a7b98
+ md5: 078abbcc54996b186b9144cf795bd30f
depends:
- - libwebp-base 1.3.2.*
- - libwebp-base >=1.3.2,<2.0a0
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
+ - __osx >=11.0
+ - giflib >=5.2.2,<5.3.0a0
+ - libjpeg-turbo >=3.0.0,<4.0a0
+ - libpng >=1.6.43,<1.7.0a0
+ - libtiff >=4.6.0,<4.7.0a0
+ - libwebp-base 1.4.0.*
+ - libwebp-base >=1.4.0,<2.0a0
license: BSD-3-Clause
- license_family: BSD
- size: 71143
- timestamp: 1696116489561
+ size: 87703
+ timestamp: 1714599993749
- kind: conda
name: libwebp
- version: 1.3.2
- build: hf30222e_1
- build_number: 1
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/libwebp-1.3.2-hf30222e_1.conda
- sha256: 5ee611009277c8aaef1a5355df6a05100e563735ec33ef019f6415db0b83d548
- md5: a07cf7f5425eb51b79880fb66837200f
+ version: 1.4.0
+ build: hc207709_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/libwebp-1.4.0-hc207709_0.conda
+ sha256: 5c7103d5462deedf0f80a081bc895c25b05404719c11b33a846dc5f5328d791c
+ md5: c5aa72a275c001665128245084c9ce14
depends:
- - giflib >=5.2.1,<5.3.0a0
+ - __osx >=10.9
+ - giflib >=5.2.2,<5.3.0a0
- libjpeg-turbo >=3.0.0,<4.0a0
- - libpng >=1.6.39,<1.7.0a0
+ - libpng >=1.6.43,<1.7.0a0
- libtiff >=4.6.0,<4.7.0a0
- - libwebp-base 1.3.2.*
- - libwebp-base >=1.3.2,<2.0a0
+ - libwebp-base 1.4.0.*
+ - libwebp-base >=1.4.0,<2.0a0
license: BSD-3-Clause
- license_family: BSD
- size: 81880
- timestamp: 1696116440536
+ size: 87124
+ timestamp: 1714599963620
- kind: conda
name: libwebp-base
- version: 1.3.2
- build: h0dc2134_0
+ version: 1.4.0
+ build: h10d778d_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/libwebp-base-1.3.2-h0dc2134_0.conda
- sha256: fa7580f26fec4c28321ec2ece1257f3293e0c646c635e9904679f4a8369be401
- md5: 4e7e9d244e87d66c18d36894fd6a8ae5
+ url: https://conda.anaconda.org/conda-forge/osx-64/libwebp-base-1.4.0-h10d778d_0.conda
+ sha256: 7bafd8f4c637778cd0aa390bf3a894feef0e1fcf6ea6000c7ffc25c4c5a65538
+ md5: b2c0047ea73819d992484faacbbe1c24
constrains:
- - libwebp 1.3.2
+ - libwebp 1.4.0
license: BSD-3-Clause
license_family: BSD
- size: 346599
- timestamp: 1694709233836
+ size: 355099
+ timestamp: 1713200298965
- kind: conda
name: libwebp-base
- version: 1.3.2
- build: hb547adb_0
+ version: 1.4.0
+ build: h93a5062_0
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/libwebp-base-1.3.2-hb547adb_0.conda
- sha256: a159b848193043fb58465ae6a449361615dadcf27babfe0b18db2bd3eb59e958
- md5: 85dbc11098cdbe4244cd73f29a3ab795
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libwebp-base-1.4.0-h93a5062_0.conda
+ sha256: 0d4bad713a512d79bfeb4d61821f447afab8b0792aca823f505ce6b195e9fde5
+ md5: c0af0edfebe780b19940e94871f1a765
constrains:
- - libwebp 1.3.2
+ - libwebp 1.4.0
license: BSD-3-Clause
license_family: BSD
- size: 273844
- timestamp: 1694709510635
+ size: 287750
+ timestamp: 1713200194013
- kind: conda
name: libwebp-base
- version: 1.3.2
+ version: 1.4.0
build: hcfcfb64_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/libwebp-base-1.3.2-hcfcfb64_0.conda
- sha256: af1453fab10d1fb8b379c61a78882614051a8bac37307d7ac4fb58eac667709e
- md5: dcde8820959e64378d4e06147ffecfdd
+ url: https://conda.anaconda.org/conda-forge/win-64/libwebp-base-1.4.0-hcfcfb64_0.conda
+ sha256: d0ca51cb1de9192be9a3238e71fbcca5a535619c499c4f4c9b2ed41c14d36770
+ md5: abd61d0ab127ec5cd68f62c2969e6f34
depends:
- ucrt >=10.0.20348.0
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
constrains:
- - libwebp 1.3.2
+ - libwebp 1.4.0
license: BSD-3-Clause
license_family: BSD
- size: 268870
- timestamp: 1694709461733
+ size: 274359
+ timestamp: 1713200524021
- kind: conda
name: libwebp-base
- version: 1.3.2
+ version: 1.4.0
build: hd590300_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libwebp-base-1.3.2-hd590300_0.conda
- sha256: 68764a760fa81ef35dacb067fe8ace452bbb41476536a4a147a1051df29525f0
- md5: 30de3fd9b3b602f7473f30e684eeea8c
+ url: https://conda.anaconda.org/conda-forge/linux-64/libwebp-base-1.4.0-hd590300_0.conda
+ sha256: 49bc5f6b1e11cb2babf2a2a731d1a680a5e08a858280876a779dbda06c78c35f
+ md5: b26e8aa824079e1be0294e7152ca4559
depends:
- libgcc-ng >=12
constrains:
- - libwebp 1.3.2
+ - libwebp 1.4.0
license: BSD-3-Clause
license_family: BSD
- size: 401830
- timestamp: 1694709121323
+ size: 438953
+ timestamp: 1713199854503
- kind: conda
name: libxcb
version: '1.15'
@@ -14320,32 +21156,32 @@ packages:
timestamp: 1702724383534
- kind: conda
name: libxkbcommon
- version: 1.6.0
- build: hd429924_1
- build_number: 1
+ version: 1.7.0
+ build: h662e7e4_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libxkbcommon-1.6.0-hd429924_1.conda
- sha256: 213a4c927618198fd5fb5e7b0a76b89310a9c04a3ea025d59771754ee8a89451
- md5: 1dbcc04604fdf1e526e6d1b0b6938396
+ url: https://conda.anaconda.org/conda-forge/linux-64/libxkbcommon-1.7.0-h662e7e4_0.conda
+ sha256: 3d97d7f964237f42452295d461afdbc51e93f72e2c80be516f56de80e3bb6621
+ md5: b32c0da42b1f24a98577bb3d7fc0b995
depends:
- libgcc-ng >=12
- libstdcxx-ng >=12
- libxcb >=1.15,<1.16.0a0
- - libxml2 >=2.12.1,<3.0.0a0
+ - libxml2 >=2.12.6,<3.0a0
- xkeyboard-config
- xorg-libxau >=1.0.11,<2.0a0
license: MIT/X11 Derivative
license_family: MIT
- size: 574868
- timestamp: 1701352639132
+ size: 593534
+ timestamp: 1711303445595
- kind: conda
name: libxml2
- version: 2.12.5
- build: h0d0cfa8_0
+ version: 2.12.6
+ build: h0d0cfa8_2
+ build_number: 2
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-2.12.5-h0d0cfa8_0.conda
- sha256: 34daea04dc08af703effe424527505789f8a50fa71b447c7cac6f0d36a02cce3
- md5: 6aef67f18bef799926bc05948a1239e3
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-2.12.6-h0d0cfa8_2.conda
+ sha256: a5c10af641d6accf3effb3c3a3c594d931bb374f9e3e796719f3ecf769cfb0fc
+ md5: 27577d561de7659487b062c363d8a527
depends:
- icu >=73.2,<74.0a0
- libiconv >=1.17,<2.0a0
@@ -14353,16 +21189,17 @@ packages:
- xz >=5.2.6,<6.0a0
license: MIT
license_family: MIT
- size: 587894
- timestamp: 1707084537489
+ size: 588638
+ timestamp: 1713314780561
- kind: conda
name: libxml2
- version: 2.12.5
- build: h232c23b_0
+ version: 2.12.6
+ build: h232c23b_2
+ build_number: 2
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.12.5-h232c23b_0.conda
- sha256: db9bf97e9e367985204331b58a059ebd5a4e0cb9e1c8754e9ecb23046b7b7bc1
- md5: c442ebfda7a475f5e78f1c8e45f1e919
+ url: https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.12.6-h232c23b_2.conda
+ sha256: 0fd41df7211aae04f492c8550ce10238e8cfa8b1abebc2215a983c5e66d284ea
+ md5: 9a3a42df8a95f65334dfc7b80da1195d
depends:
- icu >=73.2,<74.0a0
- libgcc-ng >=12
@@ -14371,16 +21208,17 @@ packages:
- xz >=5.2.6,<6.0a0
license: MIT
license_family: MIT
- size: 704829
- timestamp: 1707084502281
+ size: 704938
+ timestamp: 1713314718258
- kind: conda
name: libxml2
- version: 2.12.5
- build: hc0ae0f7_0
+ version: 2.12.6
+ build: hc0ae0f7_2
+ build_number: 2
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/libxml2-2.12.5-hc0ae0f7_0.conda
- sha256: a84f355dcf9039ae54e21bf8833c16200f848fd333a5e68c143e142cc55dc07d
- md5: abe27e7ab68b95e8d0e41cd5018ec8ae
+ url: https://conda.anaconda.org/conda-forge/osx-64/libxml2-2.12.6-hc0ae0f7_2.conda
+ sha256: 2598a525b1769338f96c3d4badad7d8b95c9ddcea86db3f9479a274803190e5c
+ md5: 50b997370584f2c83ca0c38e9028eab9
depends:
- icu >=73.2,<74.0a0
- libiconv >=1.17,<2.0a0
@@ -14388,16 +21226,17 @@ packages:
- xz >=5.2.6,<6.0a0
license: MIT
license_family: MIT
- size: 619351
- timestamp: 1707084558935
+ size: 619622
+ timestamp: 1713314870641
- kind: conda
name: libxml2
- version: 2.12.5
- build: hc3477c8_0
+ version: 2.12.6
+ build: hc3477c8_2
+ build_number: 2
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/libxml2-2.12.5-hc3477c8_0.conda
- sha256: 15696b049911b3ea5d37672408e500fb27e375d865f8cceac9cb02f9349e6804
- md5: d8c3c1c8242db352f38cd1dc0bf44f77
+ url: https://conda.anaconda.org/conda-forge/win-64/libxml2-2.12.6-hc3477c8_2.conda
+ sha256: 9a717cad6da52c84cfc490f7d52203c4cbc9e0e0389941fc6523273be5ccd17a
+ md5: ac7af7a949db01dae61ddc48f4a93d79
depends:
- libiconv >=1.17,<2.0a0
- libzlib >=1.2.13,<1.3.0a0
@@ -14406,8 +21245,8 @@ packages:
- vc14_runtime >=14.29.30139
license: MIT
license_family: MIT
- size: 1567894
- timestamp: 1707084720091
+ size: 1589904
+ timestamp: 1713315104803
- kind: conda
name: libxslt
version: 1.1.39
@@ -14620,32 +21459,114 @@ packages:
size: 2667
- kind: conda
name: llvm-openmp
- version: 17.0.6
- build: hb6ac08f_0
+ version: 18.1.4
+ build: h2c61cee_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/llvm-openmp-17.0.6-hb6ac08f_0.conda
- sha256: 9ea2f7018f335fdc55bc9b21a388eb94ea47a243d9cbf6ec3d8862d4df9fb49b
- md5: f260ab897df05f729fc3e65dbb0850ef
+ url: https://conda.anaconda.org/conda-forge/osx-64/llvm-openmp-18.1.4-h2c61cee_0.conda
+ sha256: 3b5952236c415a374f561ea1208a12fd0258069b813101d84cbc65e6bdaee146
+ md5: 0619a2dda8b7e25b78abc0b3d872744f
+ depends:
+ - __osx >=10.9
constrains:
- - openmp 17.0.6|17.0.6.*
+ - openmp 18.1.4|18.1.4.*
license: Apache-2.0 WITH LLVM-exception
- license_family: APACHE
- size: 299706
- timestamp: 1701222810938
+ size: 300738
+ timestamp: 1714635138453
- kind: conda
name: llvm-openmp
- version: 17.0.6
- build: hcd81f8e_0
+ version: 18.1.4
+ build: hbf6887a_0
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-openmp-17.0.6-hcd81f8e_0.conda
- sha256: 0c217326c5931c1416b82f98169b8a8a52139f6f5f299dbb2efa7b21f65f225a
- md5: 52019d2fa0eddbbc4e6dcd30fae0c0a4
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-openmp-18.1.4-hbf6887a_0.conda
+ sha256: 77c7cdebe513de20ed83e6570070b05b6e8135b4a0e7ab5b907fdc07df301cb9
+ md5: c5dbf4be297aa3c447d2f259040a6ce9
+ depends:
+ - __osx >=11.0
constrains:
- - openmp 17.0.6|17.0.6.*
+ - openmp 18.1.4|18.1.4.*
license: Apache-2.0 WITH LLVM-exception
- license_family: APACHE
- size: 274631
- timestamp: 1701222947083
+ size: 276713
+ timestamp: 1714635204645
+- kind: conda
+ name: llvmlite
+ version: 0.42.0
+ build: py310h1b8f574_1
+ build_number: 1
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/llvmlite-0.42.0-py310h1b8f574_1.conda
+ sha256: 2b25157b0724cbfc84b58e83a466d84afb8a5f09889a224c821d86adb4541ba1
+ md5: e2a5e9f92629c8e4c8611883a35745b4
+ depends:
+ - libgcc-ng >=12
+ - libllvm14 >=14.0.6,<14.1.0a0
+ - libstdcxx-ng >=12
+ - libzlib >=1.2.13,<1.3.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ license: BSD-2-Clause
+ license_family: BSD
+ size: 3328102
+ timestamp: 1706921747584
+- kind: conda
+ name: llvmlite
+ version: 0.42.0
+ build: py310h7d48a1f_1
+ build_number: 1
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/llvmlite-0.42.0-py310h7d48a1f_1.conda
+ sha256: 1df7c833b97ad3094cecd3f7e247e1ae61c8368dff011ec52b67b3796a83b32f
+ md5: 0c57dbd48571b4ea3847b7298082a0d0
+ depends:
+ - libcxx >=16
+ - libllvm14 >=14.0.6,<14.1.0a0
+ - libzlib >=1.2.13,<1.3.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ license: BSD-2-Clause
+ license_family: BSD
+ size: 307622
+ timestamp: 1706921895845
+- kind: conda
+ name: llvmlite
+ version: 0.42.0
+ build: py310hb84602e_1
+ build_number: 1
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/llvmlite-0.42.0-py310hb84602e_1.conda
+ sha256: 9bf1ff1cb94911c473cc9a307032a303b5ccbf27937e238e4dcb3fc32b880c2a
+ md5: 95715a60c993dd0a9e732be74c5e46f2
+ depends:
+ - libzlib >=1.2.13,<1.3.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ - vs2015_runtime
+ license: BSD-2-Clause
+ license_family: BSD
+ size: 17039935
+ timestamp: 1706922362200
+- kind: conda
+ name: llvmlite
+ version: 0.42.0
+ build: py310hf7687f1_1
+ build_number: 1
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/llvmlite-0.42.0-py310hf7687f1_1.conda
+ sha256: 491d27b8454b4945df993feb66b22527e43a493ef0a53b30019c8beb31ce0889
+ md5: 46b8c7ae6c4817568b0fb78aadf3be97
+ depends:
+ - libcxx >=16
+ - libllvm14 >=14.0.6,<14.1.0a0
+ - libzlib >=1.2.13,<1.3.0a0
+ - python >=3.10,<3.11.0a0
+ - python >=3.10,<3.11.0a0 *_cpython
+ - python_abi 3.10.* *_cp310
+ license: BSD-2-Clause
+ license_family: BSD
+ size: 306724
+ timestamp: 1706921994701
- kind: conda
name: llvmlite
version: 0.42.0
@@ -14706,6 +21627,26 @@ packages:
license_family: BSD
size: 382168
timestamp: 1706921944078
+- kind: conda
+ name: llvmlite
+ version: 0.42.0
+ build: py311hf5d242d_1
+ build_number: 1
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/llvmlite-0.42.0-py311hf5d242d_1.conda
+ sha256: ba30520627cd2d83ad9148a1b6fe47245eee6418a427ae7e3877b8f6a8e6190a
+ md5: 22911c08b0f895185d4c0292c0ac2893
+ depends:
+ - libcxx >=16
+ - libllvm14 >=14.0.6,<14.1.0a0
+ - libzlib >=1.2.13,<1.3.0a0
+ - python >=3.11,<3.12.0a0
+ - python >=3.11,<3.12.0a0 *_cpython
+ - python_abi 3.11.* *_cp311
+ license: BSD-2-Clause
+ license_family: BSD
+ size: 379911
+ timestamp: 1706921964220
- kind: conda
name: llvmlite
version: 0.42.0
@@ -14726,6 +21667,66 @@ packages:
license_family: BSD
size: 371123
timestamp: 1706921976569
+- kind: conda
+ name: llvmlite
+ version: 0.42.0
+ build: py312h534208b_1
+ build_number: 1
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/llvmlite-0.42.0-py312h534208b_1.conda
+ sha256: 507d3fb788a7a7fefcb9b4c5091331a961785503d7ecdd8ee83a57380f786d0c
+ md5: ac1d435c2f56e72746eb5d7ed4b2e1a1
+ depends:
+ - libcxx >=16
+ - libllvm14 >=14.0.6,<14.1.0a0
+ - libzlib >=1.2.13,<1.3.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ license: BSD-2-Clause
+ license_family: BSD
+ size: 373369
+ timestamp: 1706921870859
+- kind: conda
+ name: llvmlite
+ version: 0.42.0
+ build: py312h7894644_1
+ build_number: 1
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/llvmlite-0.42.0-py312h7894644_1.conda
+ sha256: ecc36569c8c657e478bfd8673bd376581bef46197625ff59a1dc603060f30aa1
+ md5: b0c8b1ebd145b7810cf30258115624ab
+ depends:
+ - libzlib >=1.2.13,<1.3.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ - vs2015_runtime
+ license: BSD-2-Clause
+ license_family: BSD
+ size: 17125461
+ timestamp: 1706922264652
+- kind: conda
+ name: llvmlite
+ version: 0.42.0
+ build: py312hb06c811_1
+ build_number: 1
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/llvmlite-0.42.0-py312hb06c811_1.conda
+ sha256: a2e0495effb5897c06a7407d4f318958643008dab270e54591086c2e8a3dc44b
+ md5: ae7c5ecce1fd0b7006149bd020421379
+ depends:
+ - libgcc-ng >=12
+ - libllvm14 >=14.0.6,<14.1.0a0
+ - libstdcxx-ng >=12
+ - libzlib >=1.2.13,<1.3.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ license: BSD-2-Clause
+ license_family: BSD
+ size: 3392211
+ timestamp: 1706921771933
- kind: conda
name: locket
version: 1.0.0
@@ -14743,77 +21744,148 @@ packages:
timestamp: 1650660473123
- kind: conda
name: lxml
- version: 5.1.0
- build: py311h033124e_0
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/lxml-5.1.0-py311h033124e_0.conda
- sha256: 58a9e27be1661e1ed882ef4674af46e1bf3850d4925a6541b23c4020f3f30e7a
- md5: a51536739fd59cc6d2b29be4441a2699
+ version: 5.2.1
+ build: py312h56c7e3b_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/lxml-5.2.1-py312h56c7e3b_0.conda
+ sha256: 1b717468db1aa9ca2207bbfc601f1a77746316467b4cfb56f36dd3799a5c8f9e
+ md5: 52dfef5f354652c9084fe38cc2ebf3c9
depends:
- - libxml2 >=2.12.3,<3.0.0a0
+ - libxml2 >=2.12.6,<3.0a0
- libxslt >=1.1.39,<2.0a0
- libzlib >=1.2.13,<1.3.0a0
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
license: BSD-3-Clause and MIT-CMU
- size: 1271974
- timestamp: 1704725131718
+ size: 1048794
+ timestamp: 1713573053367
- kind: conda
name: lxml
- version: 5.1.0
- build: py311h064e5ff_0
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/lxml-5.1.0-py311h064e5ff_0.conda
- sha256: 7b7ca15be89bd56708bb6504168dbb4b7e7c3a5f9b5d08288388ffbb815d3512
- md5: a467e9bc8399a76a705352ab7c6f24ae
+ version: 5.2.1
+ build: py312h8f698c5_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/lxml-5.2.1-py312h8f698c5_0.conda
+ sha256: f38d4af8de94a46335bcde3b1a5fc10d40992023e61c969142de0e9dd719ae0a
+ md5: 93e9a75ec1b7df64c653986c27b1b78f
depends:
- - libxml2 >=2.12.3,<3.0.0a0
+ - __osx >=11.0
+ - libxml2 >=2.12.6,<3.0a0
- libxslt >=1.1.39,<2.0a0
- libzlib >=1.2.13,<1.3.0a0
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
+ - python >=3.12,<3.13.0a0
+ - python >=3.12,<3.13.0a0 *_cpython
+ - python_abi 3.12.* *_cp312
license: BSD-3-Clause and MIT-CMU
- size: 1111835
- timestamp: 1704724965701
+ size: 1149527
+ timestamp: 1713573008455
- kind: conda
name: lxml
- version: 5.1.0
- build: py311h9691dec_0
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/lxml-5.1.0-py311h9691dec_0.conda
- sha256: 0a2564e7c742a47703dbee47b68a2a940aa24d45520bf112df7e9e261668b9fc
- md5: cee803b62c62e5f3326be31e57161ff5
+ version: 5.2.1
+ build: py312ha7aaddb_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/lxml-5.2.1-py312ha7aaddb_0.conda
+ sha256: fbaf4027c297b66f7a7bd03f20960fe318534c99ba7815a77affb55aea869f8b
+ md5: dce8b649a9dee3f7f4e4a13799dbb1ed
depends:
- - libgcc-ng >=12
- - libxml2 >=2.12.3,<3.0.0a0
+ - __osx >=10.9
+ - libxml2 >=2.12.6,<3.0a0
- libxslt >=1.1.39,<2.0a0
- libzlib >=1.2.13,<1.3.0a0
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
license: BSD-3-Clause and MIT-CMU
- size: 1481646
- timestamp: 1704724500444
+ size: 1195398
+ timestamp: 1713573064645
- kind: conda
name: lxml
- version: 5.1.0
- build: py312h9bf3b9e_0
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/lxml-5.1.0-py312h9bf3b9e_0.conda
- sha256: 89272ef9521c8a859ef6396585e313a1f085a9d85e1579d36660b5966f43e588
- md5: ff623d12bba9a6a4e892fa17c2a35d0b
+ version: 5.2.1
+ build: py312hb90d8a5_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/lxml-5.2.1-py312hb90d8a5_0.conda
+ sha256: 38395a99140602aec3b2e979deffca9485fad503d7ea7ec882704652e5829878
+ md5: d260ebc72791a941c239029ea631bd44
depends:
- - libxml2 >=2.12.3,<3.0.0a0
+ - libgcc-ng >=12
+ - libxml2 >=2.12.6,<3.0a0
- libxslt >=1.1.39,<2.0a0
- libzlib >=1.2.13,<1.3.0a0
- python >=3.12,<3.13.0a0
- - python >=3.12,<3.13.0a0 *_cpython
- python_abi 3.12.* *_cp312
license: BSD-3-Clause and MIT-CMU
- size: 1223959
- timestamp: 1704724844405
+ size: 1400706
+ timestamp: 1713572667229
+- kind: conda
+ name: lz4
+ version: 4.3.3
+ build: py310h350c4a5_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/lz4-4.3.3-py310h350c4a5_0.conda
+ sha256: 119189a08204d97b1866e97d127d85574980547bc3b4aedc59ac6bb0b521a5c7
+ md5: 943866d33b651ae9a3287e84383f6ddc
+ depends:
+ - libgcc-ng >=12
+ - lz4-c >=1.9.3,<1.10.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 37353
+ timestamp: 1704831243355
+- kind: conda
+ name: lz4
+ version: 4.3.3
+ build: py310haecba8d_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/lz4-4.3.3-py310haecba8d_0.conda
+ sha256: 7acb15a2fc8db187c93fba3a90ec026261e03b6a9f58eaff54d2f63700ecbfb8
+ md5: 388a85465bdbaed3bca49f9002634da5
+ depends:
+ - lz4-c >=1.9.3,<1.10.0a0
+ - python >=3.10,<3.11.0a0
+ - python >=3.10,<3.11.0a0 *_cpython
+ - python_abi 3.10.* *_cp310
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 108122
+ timestamp: 1704831595715
+- kind: conda
+ name: lz4
+ version: 4.3.3
+ build: py310hbbb2075_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/lz4-4.3.3-py310hbbb2075_0.conda
+ sha256: b7fb571426191d3f8b822c94d0ba1bb918b0f795425efa85b127b168bee61e31
+ md5: 3b5e186e356f42498dd4a9e42e8e265e
+ depends:
+ - lz4-c >=1.9.3,<1.10.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 74637
+ timestamp: 1704832007515
+- kind: conda
+ name: lz4
+ version: 4.3.3
+ build: py310hf99a7a4_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/lz4-4.3.3-py310hf99a7a4_0.conda
+ sha256: c7e6dddfd87de5c7e28103f288f97cbc9117a6e277232a0c77ec1433ddcf983e
+ md5: 8979af77cc002e908f982d8d435d535f
+ depends:
+ - lz4-c >=1.9.3,<1.10.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 34354
+ timestamp: 1704831577874
- kind: conda
name: lz4
version: 4.3.3
@@ -14850,6 +21922,23 @@ packages:
license_family: BSD
size: 77111
timestamp: 1704831874474
+- kind: conda
+ name: lz4
+ version: 4.3.3
+ build: py311hd44b8e9_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/lz4-4.3.3-py311hd44b8e9_0.conda
+ sha256: 94e21299626e9910d9a42de2d28e8ffc018af2dc0ecd247905d06b2a418f313a
+ md5: 55e5496cc171c496f2f1930de465b863
+ depends:
+ - lz4-c >=1.9.3,<1.10.0a0
+ - python >=3.11,<3.12.0a0
+ - python >=3.11,<3.12.0a0 *_cpython
+ - python_abi 3.11.* *_cp311
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 110848
+ timestamp: 1704831784856
- kind: conda
name: lz4
version: 4.3.3
@@ -14866,6 +21955,58 @@ packages:
license_family: BSD
size: 36864
timestamp: 1704831579795
+- kind: conda
+ name: lz4
+ version: 4.3.3
+ build: py312h03f37cb_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/lz4-4.3.3-py312h03f37cb_0.conda
+ sha256: 6180f0b0c56fa49064291f76b3e4b1b84f3de58aab1264a94cb200f5f46b0178
+ md5: 8465027beab0db69006f744be7fb3fb6
+ depends:
+ - libgcc-ng >=12
+ - lz4-c >=1.9.3,<1.10.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 39409
+ timestamp: 1704831318655
+- kind: conda
+ name: lz4
+ version: 4.3.3
+ build: py312h594ca44_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/lz4-4.3.3-py312h594ca44_0.conda
+ sha256: c1b699016e3334bf2c475a60c84b31770dd3e4b2cc5eb4b1a0ecf2689cb7d57e
+ md5: cc004e8b6d7a876f0d541d864d14064c
+ depends:
+ - lz4-c >=1.9.3,<1.10.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 77168
+ timestamp: 1704831874480
+- kind: conda
+ name: lz4
+ version: 4.3.3
+ build: py312h904eaf1_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/lz4-4.3.3-py312h904eaf1_0.conda
+ sha256: d6761866789708afc396897fe505c52056917d00bb5745f91aa22b4dd8af8d07
+ md5: 3d5b987b4090e9dc8ad65c0d536d34ce
+ depends:
+ - lz4-c >=1.9.3,<1.10.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 36016
+ timestamp: 1704831559047
- kind: conda
name: lz4
version: 4.3.3
@@ -14945,60 +22086,61 @@ packages:
- kind: conda
name: lzo
version: '2.10'
- build: h516909a_1000
- build_number: 1000
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/lzo-2.10-h516909a_1000.tar.bz2
- sha256: 25d16e6aaa3d0b450e61d0c4fadd7c9fd17f16e2fef09b34507209342d63c9f6
- md5: bb14fcb13341b81d5eb386423b9d2bac
- depends:
- - libgcc-ng >=7.5.0
- license: GPL v2+
+ build: h10d778d_1001
+ build_number: 1001
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/lzo-2.10-h10d778d_1001.conda
+ sha256: 4006c57f805ca6aec72ee0eb7166b2fd648dd1bf3721b9de4b909cd374196643
+ md5: bfecd73e4a2dc18ffd5288acf8a212ab
+ license: GPL-2.0-or-later
license_family: GPL2
- size: 321113
- timestamp: 1597681972321
+ size: 146405
+ timestamp: 1713516112292
- kind: conda
name: lzo
version: '2.10'
- build: h642e427_1000
- build_number: 1000
+ build: h93a5062_1001
+ build_number: 1001
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/lzo-2.10-h642e427_1000.tar.bz2
- sha256: ae029e5c16893071d29a11ddbfdbdb01b2ebf10d1785f54370934439d8b71817
- md5: ddab5f96f5573a9bd5e24f9994fd6ec9
- license: GPL v2+
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/lzo-2.10-h93a5062_1001.conda
+ sha256: b68160b0a8ec374cea12de7afb954ca47419cdc300358232e19cec666d60b929
+ md5: 915996063a7380c652f83609e970c2a7
+ license: GPL-2.0-or-later
license_family: GPL2
- size: 157236
- timestamp: 1597683217947
+ size: 131447
+ timestamp: 1713516009610
- kind: conda
name: lzo
version: '2.10'
- build: haf1e3a3_1000
- build_number: 1000
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/lzo-2.10-haf1e3a3_1000.tar.bz2
- sha256: c8a9401eff2efbbcc6da03d0066ee85d72402f7658c240e7968c64052a0d0493
- md5: 0b6bca372a95d6c602c7a922e928ce79
- license: GPL v2+
+ build: hcfcfb64_1001
+ build_number: 1001
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/lzo-2.10-hcfcfb64_1001.conda
+ sha256: 39e176b8cc8fe878d87594fae0504c649d1c2c6d5476dd7238237d19eb825751
+ md5: 629f4f4e874cf096eb93a23240910cee
+ depends:
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: GPL-2.0-or-later
license_family: GPL2
- size: 194278
- timestamp: 1597682686489
+ size: 142771
+ timestamp: 1713516312465
- kind: conda
name: lzo
version: '2.10'
- build: he774522_1000
- build_number: 1000
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/lzo-2.10-he774522_1000.tar.bz2
- sha256: ff064e34d3cad829f1e31f2d26125b61d20ba8d3771f8f5337069027b8e3fab4
- md5: d5cf4b7eaa52316f135eed9e8548ad57
+ build: hd590300_1001
+ build_number: 1001
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/lzo-2.10-hd590300_1001.conda
+ sha256: 88433b98a9dd9da315400e7fb9cd5f70804cb17dca8b1c85163a64f90f584126
+ md5: ec7398d21e2651e0dcb0044d03b9a339
depends:
- - vc >=14.1,<15.0a0
- - vs2015_runtime >=14.16.27012
- license: GPL v2+
+ - libgcc-ng >=12
+ license: GPL-2.0-or-later
license_family: GPL2
- size: 170192
- timestamp: 1597682500084
+ size: 171416
+ timestamp: 1713515738503
- kind: conda
name: m2w64-gcc-libgfortran
version: 5.3.0
@@ -15112,6 +22254,97 @@ packages:
license_family: MIT
size: 64356
timestamp: 1686175179621
+- kind: conda
+ name: markupsafe
+ version: 2.1.5
+ build: py310h2372a71_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/markupsafe-2.1.5-py310h2372a71_0.conda
+ sha256: 3c18347adf1d091ee9248612308a6bef79038f80b626ef67f58cd0e8d25c65b8
+ md5: f6703fa0214a00bf49d1bef6dc7672d0
+ depends:
+ - libgcc-ng >=12
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ constrains:
+ - jinja2 >=3.0.0
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 24493
+ timestamp: 1706900070478
+- kind: conda
+ name: markupsafe
+ version: 2.1.5
+ build: py310h8d17308_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/markupsafe-2.1.5-py310h8d17308_0.conda
+ sha256: 2fe1bc52085b4b4f63e073803f8cce3da95b6eaaa182abee11c0a34b484f99dc
+ md5: eceba0306d8619bd34a650e673d3e6c3
+ depends:
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ constrains:
+ - jinja2 >=3.0.0
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 26862
+ timestamp: 1706900665420
+- kind: conda
+ name: markupsafe
+ version: 2.1.5
+ build: py310hb372a2b_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/markupsafe-2.1.5-py310hb372a2b_0.conda
+ sha256: b4a3bdb4053bb990296cda261de6d1b095a2e006bf91c8b601019462dc43d7d8
+ md5: fc49c4222ce625c835a5e3ce1fbfc503
+ depends:
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ constrains:
+ - jinja2 >=3.0.0
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 23106
+ timestamp: 1706900206202
+- kind: conda
+ name: markupsafe
+ version: 2.1.5
+ build: py310hd125d64_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/markupsafe-2.1.5-py310hd125d64_0.conda
+ sha256: 75a43d7901fadee332b2175c71ba8df0e57ac0d0b2a7c52a10ad0d681cf1dc5a
+ md5: 29a6f644679ed1e2b94fc20c7e3dcc2d
+ depends:
+ - python >=3.10,<3.11.0a0
+ - python >=3.10,<3.11.0a0 *_cpython
+ - python_abi 3.10.* *_cp310
+ constrains:
+ - jinja2 >=3.0.0
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 23919
+ timestamp: 1706900392293
+- kind: conda
+ name: markupsafe
+ version: 2.1.5
+ build: py311h05b510d_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/markupsafe-2.1.5-py311h05b510d_0.conda
+ sha256: 3f2127bd8788dc4b7c3d6d65ae4b7d2f8c7d02a246fc17b819390edeca53fd93
+ md5: a27177455a9d29f4ac9d687a489e5d52
+ depends:
+ - python >=3.11,<3.12.0a0
+ - python >=3.11,<3.12.0a0 *_cpython
+ - python_abi 3.11.* *_cp311
+ constrains:
+ - jinja2 >=3.0.0
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 26578
+ timestamp: 1706900556332
- kind: conda
name: markupsafe
version: 2.1.5
@@ -15167,6 +22400,41 @@ packages:
license_family: BSD
size: 26155
timestamp: 1706900211496
+- kind: conda
+ name: markupsafe
+ version: 2.1.5
+ build: py312h41838bb_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/markupsafe-2.1.5-py312h41838bb_0.conda
+ sha256: 8dc8f31f78d00713300da000b6ebaa1943a17c112f267de310d5c3d82950079c
+ md5: c4a9c25c09cef3901789ca818d9beb10
+ depends:
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ constrains:
+ - jinja2 >=3.0.0
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 25742
+ timestamp: 1706900456837
+- kind: conda
+ name: markupsafe
+ version: 2.1.5
+ build: py312h98912ed_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/markupsafe-2.1.5-py312h98912ed_0.conda
+ sha256: 273d8efd6c089c534ccbede566394c0ac1e265bfe5d89fe76e80332f3d75a636
+ md5: 6ff0b9582da2d4a74a1f9ae1f9ce2af6
+ depends:
+ - libgcc-ng >=12
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ constrains:
+ - jinja2 >=3.0.0
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 26685
+ timestamp: 1706900070330
- kind: conda
name: markupsafe
version: 2.1.5
@@ -15185,84 +22453,362 @@ packages:
license_family: BSD
size: 26382
timestamp: 1706900495057
+- kind: conda
+ name: markupsafe
+ version: 2.1.5
+ build: py312he70551f_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/markupsafe-2.1.5-py312he70551f_0.conda
+ sha256: f8690a3c87e2e96cebd434a829bb95cac43afe6c439530b336dc3452fe4ce4af
+ md5: 4950a739b19edaac1ed29ca9474e49ac
+ depends:
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ constrains:
+ - jinja2 >=3.0.0
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 29060
+ timestamp: 1706900374745
+- kind: conda
+ name: matplotlib
+ version: 3.8.4
+ build: py310h2ec42d9_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/matplotlib-3.8.4-py310h2ec42d9_0.conda
+ sha256: 5ca8bb0d77c3c1b2f17c191e70c89ffb4285e49f7901ba262aec4563542e0b27
+ md5: 12fcdd50091fc0d9b17485a111a356f6
+ depends:
+ - matplotlib-base >=3.8.4,<3.8.5.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - tornado >=5
+ license: PSF-2.0
+ license_family: PSF
+ size: 8497
+ timestamp: 1712606482706
+- kind: conda
+ name: matplotlib
+ version: 3.8.4
+ build: py310h5588dad_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/matplotlib-3.8.4-py310h5588dad_0.conda
+ sha256: 2071115ab85cb5e4562083734ffab81b04d6a13aaa7e37752325e514790398d5
+ md5: 912c43e6aea1088653209a97ad9841e5
+ depends:
+ - matplotlib-base >=3.8.4,<3.8.5.0a0
+ - pyqt >=5.10
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - tornado >=5
+ license: PSF-2.0
+ license_family: PSF
+ size: 8797
+ timestamp: 1712606839025
+- kind: conda
+ name: matplotlib
+ version: 3.8.4
+ build: py310hb6292c7_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/matplotlib-3.8.4-py310hb6292c7_0.conda
+ sha256: 467ca287a421553d2885b238859084d579410fca8f5a9804ae8a2fb9fd2188df
+ md5: 21409508f096611c3a721c198032cc94
+ depends:
+ - matplotlib-base >=3.8.4,<3.8.5.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - tornado >=5
+ license: PSF-2.0
+ license_family: PSF
+ size: 8594
+ timestamp: 1712606667465
+- kind: conda
+ name: matplotlib
+ version: 3.8.4
+ build: py310hff52083_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-3.8.4-py310hff52083_0.conda
+ sha256: da20f1146b88d8d90b0414aefc4e7a31cc101045bb613df00ef38e9620074adf
+ md5: 7da5c8e916e2310137a8ab7691d9b0e7
+ depends:
+ - matplotlib-base >=3.8.4,<3.8.5.0a0
+ - pyqt >=5.10
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - tornado >=5
+ license: PSF-2.0
+ license_family: PSF
+ size: 8441
+ timestamp: 1712606192101
- kind: conda
name: matplotlib
- version: 3.8.3
+ version: 3.8.4
build: py311h1ea47a8_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/matplotlib-3.8.3-py311h1ea47a8_0.conda
- sha256: ba6c75f66f9463501fe49f3d0fe3ab2c80b2b5ea1233fa7c6ec1cbdcc0342a37
- md5: 76fa41f6762c45b213e63432a2672ca8
+ url: https://conda.anaconda.org/conda-forge/win-64/matplotlib-3.8.4-py311h1ea47a8_0.conda
+ sha256: 68702ebea1806035e4ff09df5db9c19c7bd4118c4773f395dfddfca6125a3968
+ md5: b6d55204863d508caf4a9a721eb6e47a
depends:
- - matplotlib-base >=3.8.3,<3.8.4.0a0
+ - matplotlib-base >=3.8.4,<3.8.5.0a0
- pyqt >=5.10
- python >=3.11,<3.12.0a0
- python_abi 3.11.* *_cp311
- tornado >=5
license: PSF-2.0
license_family: PSF
- size: 8824
- timestamp: 1708027411731
+ size: 8876
+ timestamp: 1712606736133
- kind: conda
name: matplotlib
- version: 3.8.3
+ version: 3.8.4
build: py311h38be061_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-3.8.3-py311h38be061_0.conda
- sha256: e3c4aed587c91fdd1ecc2a8ba50a774e1edc7ed4dd4451fcd59bf74f07b58b97
- md5: 0452c2cca94bdda38a16cf7b84edcd27
+ url: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-3.8.4-py311h38be061_0.conda
+ sha256: 1250bedb7ce0bfda38837717245e229d83784cf5ffc2f3ed79a35ad90460c1da
+ md5: fd6fc4385d0eb6b00c46c4c0d28f5c48
depends:
- - matplotlib-base >=3.8.3,<3.8.4.0a0
+ - matplotlib-base >=3.8.4,<3.8.5.0a0
- pyqt >=5.10
- python >=3.11,<3.12.0a0
- python_abi 3.11.* *_cp311
- tornado >=5
license: PSF-2.0
license_family: PSF
- size: 8535
- timestamp: 1708026784226
+ size: 8425
+ timestamp: 1712606144818
- kind: conda
name: matplotlib
- version: 3.8.3
+ version: 3.8.4
build: py311h6eed73b_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/matplotlib-3.8.3-py311h6eed73b_0.conda
- sha256: 029214f70506c5acd18377c74644b921a34d2b454bbd976787c46e668b11931c
- md5: 30bdee405877d3291c38ffa5819e3166
+ url: https://conda.anaconda.org/conda-forge/osx-64/matplotlib-3.8.4-py311h6eed73b_0.conda
+ sha256: 7e0d1960ce1bf7f113133c8fafb5cde5a515726c3b1c727e66a8815a1bb0c760
+ md5: 77cb0621c230f8c840754cf02f242bab
+ depends:
+ - matplotlib-base >=3.8.4,<3.8.5.0a0
+ - python >=3.11,<3.12.0a0
+ - python_abi 3.11.* *_cp311
+ - tornado >=5
+ license: PSF-2.0
+ license_family: PSF
+ size: 8553
+ timestamp: 1712606510
+- kind: conda
+ name: matplotlib
+ version: 3.8.4
+ build: py311ha1ab1f8_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/matplotlib-3.8.4-py311ha1ab1f8_0.conda
+ sha256: 97d0866329ecd31081b180d58b178710a0a810149643b9f2d9d05a0538757b00
+ md5: ae3dea8ad4f30c79c5e902efc28de484
depends:
- - matplotlib-base >=3.8.3,<3.8.4.0a0
+ - matplotlib-base >=3.8.4,<3.8.5.0a0
- python >=3.11,<3.12.0a0
- python_abi 3.11.* *_cp311
- tornado >=5
license: PSF-2.0
license_family: PSF
- size: 8613
- timestamp: 1708027016401
+ size: 8625
+ timestamp: 1712606526069
+- kind: conda
+ name: matplotlib
+ version: 3.8.4
+ build: py312h1f38498_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/matplotlib-3.8.4-py312h1f38498_0.conda
+ sha256: 4651d701b5c3d4598329e9d2aa2bbb8a3885db2608def1a70a69bd3dad165d62
+ md5: abe7b1e19a0b459c94da4b785664ca74
+ depends:
+ - matplotlib-base >=3.8.4,<3.8.5.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - tornado >=5
+ license: PSF-2.0
+ license_family: PSF
+ size: 8616
+ timestamp: 1712606663191
+- kind: conda
+ name: matplotlib
+ version: 3.8.4
+ build: py312h2e8e312_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/matplotlib-3.8.4-py312h2e8e312_0.conda
+ sha256: 6ed42f07d0a61b276f2eda67f2492ba1dce42dbfce432d9a840fb5236d7ec5bf
+ md5: 0340214c925ac0a0652f105ccd48549e
+ depends:
+ - matplotlib-base >=3.8.4,<3.8.5.0a0
+ - pyqt >=5.10
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - tornado >=5
+ license: PSF-2.0
+ license_family: PSF
+ size: 8828
+ timestamp: 1712607229773
+- kind: conda
+ name: matplotlib
+ version: 3.8.4
+ build: py312h7900ff3_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-3.8.4-py312h7900ff3_0.conda
+ sha256: 5d732555c5c806d163c45fe9c43cc24ef0eb58bd109a301afcec2b62866615f6
+ md5: 619a27df3b13edbc64b758e67be62267
+ depends:
+ - matplotlib-base >=3.8.4,<3.8.5.0a0
+ - pyqt >=5.10
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - tornado >=5
+ license: PSF-2.0
+ license_family: PSF
+ size: 8429
+ timestamp: 1712606103817
+- kind: conda
+ name: matplotlib
+ version: 3.8.4
+ build: py312hb401068_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/matplotlib-3.8.4-py312hb401068_0.conda
+ sha256: 074ba889dc6d565a95e1bad2a9deda97b6fbda26725232f57681f562cc8d4049
+ md5: 187ee42addd449b4899b55c304012436
+ depends:
+ - matplotlib-base >=3.8.4,<3.8.5.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - tornado >=5
+ license: PSF-2.0
+ license_family: PSF
+ size: 8528
+ timestamp: 1712606349796
+- kind: conda
+ name: matplotlib-base
+ version: 3.8.4
+ build: py310h2439c42_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/matplotlib-base-3.8.4-py310h2439c42_0.conda
+ sha256: 0e8599048873a81f7b4fd56f784403293f264a9980e22cf9b9e8d958949b310a
+ md5: 85dbcc76ac05cb6159762d703f344150
+ depends:
+ - certifi >=2020.06.20
+ - contourpy >=1.0.1
+ - cycler >=0.10
+ - fonttools >=4.22.0
+ - freetype >=2.12.1,<3.0a0
+ - kiwisolver >=1.3.1
+ - libcxx >=16
+ - numpy >=1.21,<2
+ - numpy >=1.22.4,<2.0a0
+ - packaging >=20.0
+ - pillow >=8
+ - pyparsing >=2.3.1
+ - python >=3.10,<3.11.0a0
+ - python >=3.10,<3.11.0a0 *_cpython
+ - python-dateutil >=2.7
+ - python_abi 3.10.* *_cp310
+ license: PSF-2.0
+ license_family: PSF
+ size: 6844627
+ timestamp: 1712606596400
+- kind: conda
+ name: matplotlib-base
+ version: 3.8.4
+ build: py310h62c0568_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-base-3.8.4-py310h62c0568_0.conda
+ sha256: 3d81bbbd2ca7b4d4ff4fcbe3a4543fba5978d2945cdc67c74465ccd74783df85
+ md5: bdfa3aee52579c6b3dde12f52e266ef2
+ depends:
+ - certifi >=2020.06.20
+ - contourpy >=1.0.1
+ - cycler >=0.10
+ - fonttools >=4.22.0
+ - freetype >=2.12.1,<3.0a0
+ - kiwisolver >=1.3.1
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
+ - numpy >=1.21,<2
+ - numpy >=1.22.4,<2.0a0
+ - packaging >=20.0
+ - pillow >=8
+ - pyparsing >=2.3.1
+ - python >=3.10,<3.11.0a0
+ - python-dateutil >=2.7
+ - python_abi 3.10.* *_cp310
+ - tk >=8.6.13,<8.7.0a0
+ license: PSF-2.0
+ license_family: PSF
+ size: 6976521
+ timestamp: 1712606161256
+- kind: conda
+ name: matplotlib-base
+ version: 3.8.4
+ build: py310hc9baf74_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/matplotlib-base-3.8.4-py310hc9baf74_0.conda
+ sha256: bb6505ad16c080162c6c6fdadb73c54893db56847d0f03067baaefbba5dd1be6
+ md5: f97f298f8962d7ad085d89582b4276d8
+ depends:
+ - certifi >=2020.06.20
+ - contourpy >=1.0.1
+ - cycler >=0.10
+ - fonttools >=4.22.0
+ - freetype >=2.12.1,<3.0a0
+ - kiwisolver >=1.3.1
+ - numpy >=1.21,<2
+ - numpy >=1.22.4,<2.0a0
+ - packaging >=20.0
+ - pillow >=8
+ - pyparsing >=2.3.1
+ - python >=3.10,<3.11.0a0
+ - python-dateutil >=2.7
+ - python_abi 3.10.* *_cp310
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: PSF-2.0
+ license_family: PSF
+ size: 6864245
+ timestamp: 1712606789289
- kind: conda
- name: matplotlib
- version: 3.8.3
- build: py312h1f38498_0
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/matplotlib-3.8.3-py312h1f38498_0.conda
- sha256: f40df69c30bd898d1a7fcace24a7cc626a2a0f670d451cf9a3ae412dabb5da20
- md5: f1933b81cf97d84671858b0bb649eef6
+ name: matplotlib-base
+ version: 3.8.4
+ build: py310hec49e92_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/matplotlib-base-3.8.4-py310hec49e92_0.conda
+ sha256: 98a3e2835df706f3780dfc494d5b674a83e369d5a4f95c1c6cd823e8af0c213f
+ md5: bad8eb67c1b467757e5b0ddec0f91935
depends:
- - matplotlib-base >=3.8.3,<3.8.4.0a0
- - python >=3.12,<3.13.0a0
- - python_abi 3.12.* *_cp312
- - tornado >=5
+ - __osx >=10.12
+ - certifi >=2020.06.20
+ - contourpy >=1.0.1
+ - cycler >=0.10
+ - fonttools >=4.22.0
+ - freetype >=2.12.1,<3.0a0
+ - kiwisolver >=1.3.1
+ - libcxx >=16
+ - numpy >=1.21,<2
+ - numpy >=1.22.4,<2.0a0
+ - packaging >=20.0
+ - pillow >=8
+ - pyparsing >=2.3.1
+ - python >=3.10,<3.11.0a0
+ - python-dateutil >=2.7
+ - python_abi 3.10.* *_cp310
license: PSF-2.0
license_family: PSF
- size: 8663
- timestamp: 1708027285922
+ size: 6908417
+ timestamp: 1712606424046
- kind: conda
name: matplotlib-base
- version: 3.8.3
+ version: 3.8.4
build: py311h54ef318_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-base-3.8.3-py311h54ef318_0.conda
- sha256: 3b1d85d61b2c88e72449c1fb2fb0893522512d0924a50aca608ba58663253907
- md5: 014c115be880802d2372ac6ed665f526
+ url: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-base-3.8.4-py311h54ef318_0.conda
+ sha256: f66c03de945c4b11b308655c4777466310798253054646502044f50d3346f7e3
+ md5: 150186110f111b458f86c04361351337
depends:
- certifi >=2020.06.20
- contourpy >=1.0.1
@@ -15283,16 +22829,16 @@ packages:
- tk >=8.6.13,<8.7.0a0
license: PSF-2.0
license_family: PSF
- size: 7927557
- timestamp: 1708026755428
+ size: 7806844
+ timestamp: 1712606110913
- kind: conda
name: matplotlib-base
- version: 3.8.3
+ version: 3.8.4
build: py311h6e989c2_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/matplotlib-base-3.8.3-py311h6e989c2_0.conda
- sha256: f94ddc2f6e2009563797e14621e010210bf5ce00f2ca03096912945eff19288f
- md5: 47fb1d03ff14dcf37bed939b9bf6b72b
+ url: https://conda.anaconda.org/conda-forge/win-64/matplotlib-base-3.8.4-py311h6e989c2_0.conda
+ sha256: 6d8381255a1d39067c3b77eb12b592909ea8614496127637e873df83a87641b1
+ md5: e4118e9daeb3e773c5c277065c43bedf
depends:
- certifi >=2020.06.20
- contourpy >=1.0.1
@@ -15313,16 +22859,16 @@ packages:
- vc14_runtime >=14.29.30139
license: PSF-2.0
license_family: PSF
- size: 7848740
- timestamp: 1708027375396
+ size: 7802824
+ timestamp: 1712606679884
- kind: conda
name: matplotlib-base
- version: 3.8.3
+ version: 3.8.4
build: py311h6ff1f5f_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/matplotlib-base-3.8.3-py311h6ff1f5f_0.conda
- sha256: 8b317ebb64621325aa56630989a500c67dedc7512eec892de85fe9c676eadf9a
- md5: 34a8ced9af5c6c771d5c18213151a639
+ url: https://conda.anaconda.org/conda-forge/osx-64/matplotlib-base-3.8.4-py311h6ff1f5f_0.conda
+ sha256: 325c03a60d0600c90a4e30903bf8d8025a8cb2e8981545a7e06a4dc47d65ddf4
+ md5: ab04d4f0971d07633462494bcfe6eabb
depends:
- __osx >=10.12
- certifi >=2020.06.20
@@ -15342,16 +22888,104 @@ packages:
- python_abi 3.11.* *_cp311
license: PSF-2.0
license_family: PSF
- size: 7806156
- timestamp: 1708026973946
+ size: 7830834
+ timestamp: 1712606441189
+- kind: conda
+ name: matplotlib-base
+ version: 3.8.4
+ build: py311hb58f1d1_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/matplotlib-base-3.8.4-py311hb58f1d1_0.conda
+ sha256: 5ad9b1723c4092d268f6a0f97cd22f2fc00c128397704b8fcaf25f028023e359
+ md5: aa5ab238c1e123d1ed9ede0cb0e7f58a
+ depends:
+ - certifi >=2020.06.20
+ - contourpy >=1.0.1
+ - cycler >=0.10
+ - fonttools >=4.22.0
+ - freetype >=2.12.1,<3.0a0
+ - kiwisolver >=1.3.1
+ - libcxx >=16
+ - numpy >=1.21,<2
+ - numpy >=1.23.5,<2.0a0
+ - packaging >=20.0
+ - pillow >=8
+ - pyparsing >=2.3.1
+ - python >=3.11,<3.12.0a0
+ - python >=3.11,<3.12.0a0 *_cpython
+ - python-dateutil >=2.7
+ - python_abi 3.11.* *_cp311
+ license: PSF-2.0
+ license_family: PSF
+ size: 7756525
+ timestamp: 1712606464642
+- kind: conda
+ name: matplotlib-base
+ version: 3.8.4
+ build: py312h1fe5000_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/matplotlib-base-3.8.4-py312h1fe5000_0.conda
+ sha256: e3b090e5a236d28ba5aa5883a0f8cb3437815dbc6d4265114f491022e81741be
+ md5: 3e3097734a5042cb6d2675e69bf1fc5a
+ depends:
+ - __osx >=10.12
+ - certifi >=2020.06.20
+ - contourpy >=1.0.1
+ - cycler >=0.10
+ - fonttools >=4.22.0
+ - freetype >=2.12.1,<3.0a0
+ - kiwisolver >=1.3.1
+ - libcxx >=16
+ - numpy >=1.21,<2
+ - numpy >=1.26.4,<2.0a0
+ - packaging >=20.0
+ - pillow >=8
+ - pyparsing >=2.3.1
+ - python >=3.12,<3.13.0a0
+ - python-dateutil >=2.7
+ - python_abi 3.12.* *_cp312
+ license: PSF-2.0
+ license_family: PSF
+ size: 7675757
+ timestamp: 1712606295471
+- kind: conda
+ name: matplotlib-base
+ version: 3.8.4
+ build: py312h26ecaf7_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/matplotlib-base-3.8.4-py312h26ecaf7_0.conda
+ sha256: 53098eff7c23641348e9a88acc5dcc8151a65421b721468771ff7740c5abedf8
+ md5: e83910bd39860772aaefee3e0eb1c29f
+ depends:
+ - certifi >=2020.06.20
+ - contourpy >=1.0.1
+ - cycler >=0.10
+ - fonttools >=4.22.0
+ - freetype >=2.12.1,<3.0a0
+ - kiwisolver >=1.3.1
+ - numpy >=1.21,<2
+ - numpy >=1.26.4,<2.0a0
+ - packaging >=20.0
+ - pillow >=8
+ - pyparsing >=2.3.1
+ - python >=3.12,<3.13.0a0
+ - python-dateutil >=2.7
+ - python_abi 3.12.* *_cp312
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: PSF-2.0
+ license_family: PSF
+ size: 7646613
+ timestamp: 1712607178713
- kind: conda
name: matplotlib-base
- version: 3.8.3
+ version: 3.8.4
build: py312ha6faf65_0
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/matplotlib-base-3.8.3-py312ha6faf65_0.conda
- sha256: 0a30852a2076b17359348510b3f827da986e4d3e89c41f48ce6f6f0c8b5acbc3
- md5: b5438a4d66b4bb7914027f3e1c34fd9e
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/matplotlib-base-3.8.4-py312ha6faf65_0.conda
+ sha256: ecf374bf25cbb0e9739ef1869189956fee40e176239c5383472823f89f7d407d
+ md5: db0735debe4ba42187aa5d46338fe697
depends:
- certifi >=2020.06.20
- contourpy >=1.0.1
@@ -15371,24 +23005,54 @@ packages:
- python_abi 3.12.* *_cp312
license: PSF-2.0
license_family: PSF
- size: 7655442
- timestamp: 1708027238493
+ size: 7737709
+ timestamp: 1712606601800
+- kind: conda
+ name: matplotlib-base
+ version: 3.8.4
+ build: py312he5832f3_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-base-3.8.4-py312he5832f3_0.conda
+ sha256: e49f00d191b71c4925e4cacfc4b4975d156c29501f6fdce8f934ff4d3743dfd3
+ md5: 5377a9a29f607eebe4ad63eb82bcb575
+ depends:
+ - certifi >=2020.06.20
+ - contourpy >=1.0.1
+ - cycler >=0.10
+ - fonttools >=4.22.0
+ - freetype >=2.12.1,<3.0a0
+ - kiwisolver >=1.3.1
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
+ - numpy >=1.21,<2
+ - numpy >=1.26.4,<2.0a0
+ - packaging >=20.0
+ - pillow >=8
+ - pyparsing >=2.3.1
+ - python >=3.12,<3.13.0a0
+ - python-dateutil >=2.7
+ - python_abi 3.12.* *_cp312
+ - tk >=8.6.13,<8.7.0a0
+ license: PSF-2.0
+ license_family: PSF
+ size: 7744308
+ timestamp: 1712606072243
- kind: conda
name: matplotlib-inline
- version: 0.1.6
+ version: 0.1.7
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/matplotlib-inline-0.1.6-pyhd8ed1ab_0.tar.bz2
- sha256: aa091b88aec55bfa2d9207028d8cdc689b9efb090ae27b99557e93c675be2f3c
- md5: b21613793fcc81d944c76c9f2864a7de
+ url: https://conda.anaconda.org/conda-forge/noarch/matplotlib-inline-0.1.7-pyhd8ed1ab_0.conda
+ sha256: 7ea68676ea35fbb095420bbcc1c82c4767b8be7bb56abb6989b7f89d957a3bab
+ md5: 779345c95648be40d22aaa89de7d4254
depends:
- python >=3.6
- traitlets
license: BSD-3-Clause
license_family: BSD
- size: 12273
- timestamp: 1660814913405
+ size: 14599
+ timestamp: 1713250613726
- kind: conda
name: mdurl
version: 0.1.2
@@ -15447,53 +23111,53 @@ packages:
timestamp: 1693402943049
- kind: conda
name: minizip
- version: 4.0.4
+ version: 4.0.5
build: h0ab5242_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/minizip-4.0.4-h0ab5242_0.conda
- sha256: e25d24c4841aa85ed2153f826ae58e56ae4d12704fd9e52005a3d7edfeb3b95a
- md5: 813bc75d9c33ddd9c9d5b8d9c560e152
+ url: https://conda.anaconda.org/conda-forge/linux-64/minizip-4.0.5-h0ab5242_0.conda
+ sha256: 1a56549751f4c4a7998e0a8bcff367c3992cb832c0b211d775cfd644e1ef5e6b
+ md5: 557396140c71eba588e96d597e0c61aa
depends:
- bzip2 >=1.0.8,<2.0a0
- libgcc-ng >=12
- libiconv >=1.17,<2.0a0
- libstdcxx-ng >=12
- libzlib >=1.2.13,<1.3.0a0
- - openssl >=3.2.0,<4.0a0
+ - openssl >=3.2.1,<4.0a0
- xz >=5.2.6,<6.0a0
- zstd >=1.5.5,<1.6.0a0
license: Zlib
license_family: Other
- size: 91696
- timestamp: 1703874701383
+ size: 91279
+ timestamp: 1709725664431
- kind: conda
name: minizip
- version: 4.0.4
+ version: 4.0.5
build: h37d7099_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/minizip-4.0.4-h37d7099_0.conda
- sha256: c0be39fda07d913da8dbedc15306a1452780890822a8c04dcc8f46b533ca2908
- md5: 36eb00b2cad8e12ee18683dbd15aeba6
+ url: https://conda.anaconda.org/conda-forge/osx-64/minizip-4.0.5-h37d7099_0.conda
+ sha256: 426f4db1d56cdefa478a5ece35ed7624860548ace87d6ad927c4c9c6a7a20fec
+ md5: 2203b2e83c20305b3d669556c345c8e9
depends:
- bzip2 >=1.0.8,<2.0a0
- - libcxx >=15
+ - libcxx >=16
- libiconv >=1.17,<2.0a0
- libzlib >=1.2.13,<1.3.0a0
- - openssl >=3.2.0,<4.0a0
+ - openssl >=3.2.1,<4.0a0
- xz >=5.2.6,<6.0a0
- zstd >=1.5.5,<1.6.0a0
license: Zlib
license_family: Other
- size: 78578
- timestamp: 1703874953968
+ size: 78099
+ timestamp: 1709726140187
- kind: conda
name: minizip
- version: 4.0.4
+ version: 4.0.5
build: h5bed578_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/minizip-4.0.4-h5bed578_0.conda
- sha256: d9073fe4159263314b25f436b99ee0ebedad12fbf518937761089a5ff17259f5
- md5: 26363ae28ac1928dcf846b4d68d5f29f
+ url: https://conda.anaconda.org/conda-forge/win-64/minizip-4.0.5-h5bed578_0.conda
+ sha256: 3b77d2f3e71df522e88e1ec4e30742257523ff3e42a4ae0d6c9c7605b4aa6e54
+ md5: acd216ec6d40c7e05991dccc4f9165f2
depends:
- bzip2 >=1.0.8,<2.0a0
- libzlib >=1.2.13,<1.3.0a0
@@ -15504,28 +23168,28 @@ packages:
- zstd >=1.5.5,<1.6.0a0
license: Zlib
license_family: Other
- size: 85593
- timestamp: 1703875236297
+ size: 85264
+ timestamp: 1709726113246
- kind: conda
name: minizip
- version: 4.0.4
+ version: 4.0.5
build: hc35e051_0
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/minizip-4.0.4-hc35e051_0.conda
- sha256: 0fbf65095148cfe9dab8b32b533b3d2752a66bbf459816345773ed73844a448b
- md5: 293ad87f065d0e1dc011ccafeb1bb0be
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/minizip-4.0.5-hc35e051_0.conda
+ sha256: 7ad93499e224d49c4f342afb85e24681fa3ef8405e2b1e0a4cb549e90eb8486d
+ md5: 3698392e5f0823e563c306dde1d3a800
depends:
- bzip2 >=1.0.8,<2.0a0
- - libcxx >=15
+ - libcxx >=16
- libiconv >=1.17,<2.0a0
- libzlib >=1.2.13,<1.3.0a0
- - openssl >=3.2.0,<4.0a0
+ - openssl >=3.2.1,<4.0a0
- xz >=5.2.6,<6.0a0
- zstd >=1.5.5,<1.6.0a0
license: Zlib
license_family: Other
- size: 78452
- timestamp: 1703874960663
+ size: 77900
+ timestamp: 1709726000723
- kind: conda
name: mistune
version: 3.0.2
@@ -15543,20 +23207,36 @@ packages:
timestamp: 1698947249750
- kind: conda
name: mkl
- version: 2024.0.0
- build: h66d3029_49658
- build_number: 49658
+ version: 2024.1.0
+ build: h66d3029_692
+ build_number: 692
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/mkl-2024.1.0-h66d3029_692.conda
+ sha256: abfdb5eb3a17af59a827ea49fcb4d2bf18e70b62498bf3720351962e636cb5b7
+ md5: b43ec7ed045323edeff31e348eea8652
+ depends:
+ - intel-openmp 2024.*
+ - tbb 2021.*
+ license: LicenseRef-ProprietaryIntel
+ license_family: Proprietary
+ size: 109491063
+ timestamp: 1712153746272
+- kind: conda
+ name: mkl
+ version: 2024.1.0
+ build: h66d3029_693
+ build_number: 693
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/mkl-2024.0.0-h66d3029_49658.conda
- sha256: 7df43df56b68908c266232d025b4734d12de41f636b8158283c43e40611165e4
- md5: 9782703dbc6e14cbc32bc89ec76922c2
+ url: https://conda.anaconda.org/conda-forge/win-64/mkl-2024.1.0-h66d3029_693.conda
+ sha256: 403f978bf0b586c4f678391133e9940acb2e4e13af8e2dc6b26007c680813321
+ md5: 90d818055255418fb3223ff4c20dd51e
depends:
- intel-openmp 2024.*
- tbb 2021.*
license: LicenseRef-ProprietaryIntel
license_family: Proprietary
- size: 108374598
- timestamp: 1706183251746
+ size: 109445002
+ timestamp: 1712944001634
- kind: conda
name: mock
version: 5.1.0
@@ -15590,61 +23270,134 @@ packages:
- kind: conda
name: mpfr
version: 4.2.1
- build: h0c69b56_0
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/mpfr-4.2.1-h0c69b56_0.conda
- sha256: e7c93a5399661b0528981c6fd53e8614eee3f9ba97f92e8167c092c4a5d9368c
- md5: d545aecded064848432bc994075dfccf
+ build: h41d338b_1
+ build_number: 1
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/mpfr-4.2.1-h41d338b_1.conda
+ sha256: a0b183cdf8bd1f2462d965f7a065cbfc32669d95bb6c8f970f7c7f63d2938436
+ md5: 616d9bb6983991de582589b9a06e4cea
depends:
- - gmp >=6.2.1,<7.0a0
+ - gmp >=6.3.0,<7.0a0
license: LGPL-3.0-only
license_family: LGPL
- size: 376506
- timestamp: 1698004330751
+ size: 346880
+ timestamp: 1712339687453
- kind: conda
name: mpfr
version: 4.2.1
- build: h9458935_0
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/mpfr-4.2.1-h9458935_0.conda
- sha256: 008230a53ff15cf61966476b44f7ba2c779826825b9ca639a0a2b44d8f7aa6cb
- md5: 4c28f3210b30250037a4a627eeee9e0f
+ build: h4f6b447_1
+ build_number: 1
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/mpfr-4.2.1-h4f6b447_1.conda
+ sha256: 002209e7d1f21cdd04de17050ab2050de4347e5bf04210ce6a636cbabf43e1d0
+ md5: b90df08f0deb2f58631447c1462c92a7
depends:
- - gmp >=6.2.1,<7.0a0
- - libgcc-ng >=12
+ - gmp >=6.3.0,<7.0a0
license: LGPL-3.0-only
license_family: LGPL
- size: 641512
- timestamp: 1698004072487
+ size: 373442
+ timestamp: 1712339833358
- kind: conda
name: mpfr
version: 4.2.1
- build: h9546428_0
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/mpfr-4.2.1-h9546428_0.conda
- sha256: 811ca63177cf638ac01442fc8d1148d3a0cef18dc1f870fceed1feb24be6fd8f
- md5: a0d56e1ff4ac1babc2e95516aeba7d24
+ build: h9458935_1
+ build_number: 1
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/mpfr-4.2.1-h9458935_1.conda
+ sha256: 38c501f6b8dff124e57711c01da23e204703a3c14276f4cf6abd28850b2b9893
+ md5: 8083b20f566639c22f78bcd6ca35b276
depends:
- - gmp >=6.2.1,<7.0a0
+ - gmp >=6.3.0,<7.0a0
+ - libgcc-ng >=12
license: LGPL-3.0-only
license_family: LGPL
- size: 353557
- timestamp: 1698004132019
+ size: 643060
+ timestamp: 1712339500544
- kind: conda
name: mpg123
- version: 1.32.4
+ version: 1.32.6
build: h59595ed_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/mpg123-1.32.4-h59595ed_0.conda
- sha256: 512f4ad7eda3b2c9a1cc9f7931932aefa6e79567e35b76de03895e769cb3b43c
- md5: 3f1017b4141e943d9bc8739237f749e8
+ url: https://conda.anaconda.org/conda-forge/linux-64/mpg123-1.32.6-h59595ed_0.conda
+ sha256: 8895a5ce5122a3b8f59afcba4b032f198e8a690a0efc95ef61f2135357ef0d72
+ md5: 9160cdeb523a1b20cf8d2a0bf821f45d
depends:
- libgcc-ng >=12
- libstdcxx-ng >=12
license: LGPL-2.1-only
license_family: LGPL
- size: 491061
- timestamp: 1704980200966
+ size: 491811
+ timestamp: 1712327176955
+- kind: conda
+ name: msgpack-python
+ version: 1.0.7
+ build: py310h232114e_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/msgpack-python-1.0.7-py310h232114e_0.conda
+ sha256: 6d5331d2e95f8bc01d83ed9c90e2f426eef622d98f6ecef62273d968d3bdb25d
+ md5: 63f0d1ad79102c02edbcfbb81881edde
+ depends:
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: Apache-2.0
+ license_family: Apache
+ size: 183978
+ timestamp: 1700927325588
+- kind: conda
+ name: msgpack-python
+ version: 1.0.7
+ build: py310ha697434_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/msgpack-python-1.0.7-py310ha697434_0.conda
+ sha256: ba185e23a2d2d65f14b8a2da6d770f36b16a2d57f54d8711f7973df77bdebc95
+ md5: 93f2eca61d018d52726d84eee4311e63
+ depends:
+ - __osx >=10.9
+ - libcxx >=16.0.6
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ license: Apache-2.0
+ license_family: Apache
+ size: 186894
+ timestamp: 1700926844509
+- kind: conda
+ name: msgpack-python
+ version: 1.0.7
+ build: py310hd137fd4_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/msgpack-python-1.0.7-py310hd137fd4_0.conda
+ sha256: 8d5432cea3db8ad3f2c3bd31dbb037ff986e62a9664f763093d407786d8df269
+ md5: 41c4e1ac2202c508b2d9b8de7e5aebeb
+ depends:
+ - __osx >=10.9
+ - libcxx >=16.0.6
+ - python >=3.10,<3.11.0a0
+ - python >=3.10,<3.11.0a0 *_cpython
+ - python_abi 3.10.* *_cp310
+ license: Apache-2.0
+ license_family: Apache
+ size: 186753
+ timestamp: 1700926918
+- kind: conda
+ name: msgpack-python
+ version: 1.0.7
+ build: py310hd41b1e2_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/msgpack-python-1.0.7-py310hd41b1e2_0.conda
+ sha256: a5c7612029e3871b0af0bd69e8ee1545d3deb93b5bec29cf1bf72522375fda31
+ md5: dc5263dcaa1347e5a456ead3537be27d
+ depends:
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ license: Apache-2.0
+ license_family: Apache
+ size: 196895
+ timestamp: 1700926652044
- kind: conda
name: msgpack-python
version: 1.0.7
@@ -15697,6 +23450,42 @@ packages:
license_family: Apache
size: 204123
timestamp: 1700926662647
+- kind: conda
+ name: msgpack-python
+ version: 1.0.7
+ build: py311hd03642b_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/msgpack-python-1.0.7-py311hd03642b_0.conda
+ sha256: a94431a5d83393e7effcb901a1c05b75db32d2369117cc05b0d1c6091255faa9
+ md5: 088b13e442731c8273fd8b8f611fb527
+ depends:
+ - __osx >=10.9
+ - libcxx >=16.0.6
+ - python >=3.11,<3.12.0a0
+ - python >=3.11,<3.12.0a0 *_cpython
+ - python_abi 3.11.* *_cp311
+ license: Apache-2.0
+ license_family: Apache
+ size: 193803
+ timestamp: 1700926926523
+- kind: conda
+ name: msgpack-python
+ version: 1.0.7
+ build: py312h0d7def4_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/msgpack-python-1.0.7-py312h0d7def4_0.conda
+ sha256: 12e280e397ce9c67d94a9828368617e20ea5b920d94d9d5c6a50293fa32a806e
+ md5: d99e74b66f04a1413cff5161f65cd4c9
+ depends:
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: Apache-2.0
+ license_family: Apache
+ size: 189255
+ timestamp: 1700927162452
- kind: conda
name: msgpack-python
version: 1.0.7
@@ -15715,6 +23504,40 @@ packages:
license_family: Apache
size: 192992
timestamp: 1700926923482
+- kind: conda
+ name: msgpack-python
+ version: 1.0.7
+ build: py312h8572e83_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/msgpack-python-1.0.7-py312h8572e83_0.conda
+ sha256: 7657237f2a4d73f48e8c63be9a30f7daf1043398adba8d950122ee70d091e265
+ md5: 1ae83e30fae86320e888cb4b1f2d3b47
+ depends:
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ license: Apache-2.0
+ license_family: Apache
+ size: 203845
+ timestamp: 1700926660395
+- kind: conda
+ name: msgpack-python
+ version: 1.0.7
+ build: py312hbf0bb39_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/msgpack-python-1.0.7-py312hbf0bb39_0.conda
+ sha256: 3eba88b0bcf7aefa830366071f1e19f98468a4be2e9b6fc5d78b69ccc92e3d8b
+ md5: 2aa4afb76d89d1241e67385b17f6f6ba
+ depends:
+ - __osx >=10.9
+ - libcxx >=16.0.6
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ license: Apache-2.0
+ license_family: Apache
+ size: 192571
+ timestamp: 1700926859086
- kind: conda
name: msys2-conda-epoch
version: '20160418'
@@ -15728,20 +23551,19 @@ packages:
timestamp: 1608166968312
- kind: conda
name: multimethod
- version: '1.11'
- build: pyhd8ed1ab_1
- build_number: 1
+ version: 1.9.1
+ build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.11-pyhd8ed1ab_1.conda
- sha256: b49bf81f9b677bf26a61feada409810f21e872d999e79dff6f4c6b7031f3d386
- md5: 890110abc758851b79c809da1903bc9c
+ url: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda
+ sha256: 7fcfda7b4a1d74205fcfdefd93804226a6eaffc74a319414c7d8d88f9249db3b
+ md5: 48223af3f697ccd9b114adb6a66e0f11
depends:
- - python >=3.9
+ - python >=3.6
license: Apache-2.0
license_family: APACHE
- size: 15307
- timestamp: 1708027319485
+ size: 14782
+ timestamp: 1677278842704
- kind: conda
name: munkres
version: 1.1.4
@@ -15759,81 +23581,83 @@ packages:
timestamp: 1600387789153
- kind: conda
name: mypy
- version: 1.8.0
- build: py311h459d7ec_0
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/mypy-1.8.0-py311h459d7ec_0.conda
- sha256: 943c43f2d68a6d4e8fa8a3a4e62538e090f5f0afe551f50092ea024850f5cccb
- md5: 93b7b2391a045cea0d97772f550f1d77
- depends:
- - libgcc-ng >=12
- - mypy_extensions >=1.0.0
- - psutil >=4.0
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
- - typing_extensions >=4.1.0
- license: MIT
- license_family: MIT
- size: 17719191
- timestamp: 1703185056003
-- kind: conda
- name: mypy
- version: 1.8.0
- build: py311ha68e1ae_0
+ version: 1.10.0
+ build: py312h4389bb4_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/mypy-1.8.0-py311ha68e1ae_0.conda
- sha256: cebfab3f247a752be06e945a3a2a1281195d6917fa09906a9618dbc7b2cf734e
- md5: 9a949cc91276bf313755857a11ce1ec3
+ url: https://conda.anaconda.org/conda-forge/win-64/mypy-1.10.0-py312h4389bb4_0.conda
+ sha256: ebcbd3487698e9e4356dbf7a94eb3bb582c5421098862bc6d9fd8887a6949fb7
+ md5: 31efeca32ad254e43198a0ce37156ce6
depends:
- mypy_extensions >=1.0.0
- psutil >=4.0
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
- typing_extensions >=4.1.0
- ucrt >=10.0.20348.0
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
license: MIT
license_family: MIT
- size: 9963457
- timestamp: 1703184979309
+ size: 8388614
+ timestamp: 1714002079609
- kind: conda
name: mypy
- version: 1.8.0
- build: py311he705e18_0
+ version: 1.10.0
+ build: py312h4a164c9_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/mypy-1.10.0-py312h4a164c9_0.conda
+ sha256: 3d6f618f8c366ff766686a36467c81068f2583696a23f63366641a50f2133082
+ md5: 35bf371fb16eed1be04831c597f91870
+ depends:
+ - __osx >=11.0
+ - mypy_extensions >=1.0.0
+ - psutil >=4.0
+ - python >=3.12,<3.13.0a0
+ - python >=3.12,<3.13.0a0 *_cpython
+ - python_abi 3.12.* *_cp312
+ - typing_extensions >=4.1.0
+ license: MIT
+ license_family: MIT
+ size: 9636672
+ timestamp: 1714003119958
+- kind: conda
+ name: mypy
+ version: 1.10.0
+ build: py312h5fa3f64_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/mypy-1.8.0-py311he705e18_0.conda
- sha256: affdf64692efcf05888cc42fc2c4159fe5bade7d610847b5610e5b2cc621cd3a
- md5: c32cbc41e84a67f1b30b3f157b46996b
+ url: https://conda.anaconda.org/conda-forge/osx-64/mypy-1.10.0-py312h5fa3f64_0.conda
+ sha256: e8a0e4be2df67f3e784839baa9df1b6c5a30077305586d3584c847c21a5a4f03
+ md5: cfd2bcbfa59fc80f372fdb13b51dd3a2
depends:
+ - __osx >=10.9
- mypy_extensions >=1.0.0
- psutil >=4.0
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
- typing_extensions >=4.1.0
license: MIT
license_family: MIT
- size: 11969071
- timestamp: 1703184938293
+ size: 10339160
+ timestamp: 1714002937960
- kind: conda
name: mypy
- version: 1.8.0
- build: py312he37b823_0
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/mypy-1.8.0-py312he37b823_0.conda
- sha256: 11907d3543c1d14ebac907df3abb4c4506c80c7adcf71b9ed7dbae067b36bad9
- md5: eae2be4e02d634f5d2d07fb5f3c1c5e1
+ version: 1.10.0
+ build: py312h9a8786e_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/mypy-1.10.0-py312h9a8786e_0.conda
+ sha256: 202a1223ab7b6d78a553a8a6768a0088166f482e48b736afd2c6a6d65f466b99
+ md5: 644f1c538810d1f250ef0fc844f3822d
depends:
+ - libgcc-ng >=12
- mypy_extensions >=1.0.0
- psutil >=4.0
- python >=3.12,<3.13.0a0
- - python >=3.12,<3.13.0a0 *_cpython
- python_abi 3.12.* *_cp312
- typing_extensions >=4.1.0
license: MIT
license_family: MIT
- size: 9507136
- timestamp: 1703185473570
+ size: 16580238
+ timestamp: 1714002375040
- kind: conda
name: mypy_extensions
version: 1.0.0
@@ -15851,112 +23675,120 @@ packages:
timestamp: 1675543414256
- kind: conda
name: mysql-common
- version: 8.0.33
- build: h1d20c9b_6
- build_number: 6
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/mysql-common-8.0.33-h1d20c9b_6.conda
- sha256: b6b18aeed435d4075b4aac3559a070a6caa5a174a339e8de87785fca2f8f57a6
- md5: ad07fbd8dc7992e5e004f7bdfdee246d
+ version: 8.3.0
+ build: hd1853d3_4
+ build_number: 4
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/mysql-common-8.3.0-hd1853d3_4.conda
+ sha256: 4ed97297f0278c01ea21eb20335141d5bfb29f5820fabd03f8bc1cb74d3fe9a7
+ md5: f93a6079f12ef00195d7d0b96ff98191
depends:
- - __osx >=10.9
- - libcxx >=16.0.6
- - openssl >=3.1.4,<4.0a0
- size: 763190
- timestamp: 1698938422063
+ - libcxx >=16
+ - openssl >=3.2.1,<4.0a0
+ license: GPL-2.0-or-later
+ license_family: GPL
+ size: 800889
+ timestamp: 1709915847564
- kind: conda
name: mysql-common
- version: 8.0.33
- build: hf1915f5_6
- build_number: 6
+ version: 8.3.0
+ build: hf1915f5_4
+ build_number: 4
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/mysql-common-8.0.33-hf1915f5_6.conda
- sha256: c8b2c5c9d0d013a4f6ef96cb4b339bfdc53a74232d8c61ed08178e5b1ec4eb63
- md5: 80bf3b277c120dd294b51d404b931a75
+ url: https://conda.anaconda.org/conda-forge/linux-64/mysql-common-8.3.0-hf1915f5_4.conda
+ sha256: 4cf6d29e091398735348550cb74cfd5006e04892d54b6b1ba916935f1af1a151
+ md5: 784a4df6676c581ca624fbe460703a6d
depends:
- libgcc-ng >=12
- libstdcxx-ng >=12
- - openssl >=3.1.4,<4.0a0
- size: 753467
- timestamp: 1698937026421
+ - openssl >=3.2.1,<4.0a0
+ license: GPL-2.0-or-later
+ license_family: GPL
+ size: 784844
+ timestamp: 1709910607121
- kind: conda
name: mysql-common
- version: 8.0.33
- build: hf9e6398_6
- build_number: 6
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/mysql-common-8.0.33-hf9e6398_6.conda
- sha256: 9d60d7779c9c2e6c783521922ab715964fc966d827493877c3b6844dacf2b140
- md5: 5c969a77f976c028192f8120483e2f4d
+ version: 8.3.0
+ build: hfd7a639_4
+ build_number: 4
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/mysql-common-8.3.0-hfd7a639_4.conda
+ sha256: 1829b8a277bf7f078c9e3c78a4404b31d77b9e9c006b890435e68438c22c2caf
+ md5: 65af0764c5a5617539d07c9d243250e3
depends:
- - __osx >=10.9
- - libcxx >=16.0.6
- - openssl >=3.1.4,<4.0a0
- size: 751501
- timestamp: 1698939564933
+ - libcxx >=16
+ - openssl >=3.2.1,<4.0a0
+ license: GPL-2.0-or-later
+ license_family: GPL
+ size: 776212
+ timestamp: 1709914020238
- kind: conda
name: mysql-libs
- version: 8.0.33
- build: hca2cd23_6
- build_number: 6
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/mysql-libs-8.0.33-hca2cd23_6.conda
- sha256: 78c905637dac79b197395065c169d452b8ca2a39773b58e45e23114f1cb6dcdb
- md5: e87530d1b12dd7f4e0f856dc07358d60
+ version: 8.3.0
+ build: ha9146f8_4
+ build_number: 4
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/mysql-libs-8.3.0-ha9146f8_4.conda
+ sha256: eaabfabb3c39f569a062f1235ff97eb208716ed847ab98b0d2040b2d8acea73b
+ md5: 507610a153e96fad858e1735779b3781
depends:
- - libgcc-ng >=12
- - libstdcxx-ng >=12
+ - libcxx >=16
- libzlib >=1.2.13,<1.3.0a0
- - mysql-common 8.0.33 hf1915f5_6
- - openssl >=3.1.4,<4.0a0
+ - mysql-common 8.3.0 hfd7a639_4
+ - openssl >=3.2.1,<4.0a0
- zstd >=1.5.5,<1.6.0a0
- size: 1530126
- timestamp: 1698937116126
+ license: GPL-2.0-or-later
+ license_family: GPL
+ size: 1527176
+ timestamp: 1709914179461
- kind: conda
name: mysql-libs
- version: 8.0.33
- build: he3dca8b_6
- build_number: 6
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/mysql-libs-8.0.33-he3dca8b_6.conda
- sha256: 1544f64334c1d87a83df21b93d5b61429db4a9317ddb8b5e09ad3384adf88ad1
- md5: 98bbd77933bb5d947dce7ca552744871
+ version: 8.3.0
+ build: hca2cd23_4
+ build_number: 4
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/mysql-libs-8.3.0-hca2cd23_4.conda
+ sha256: c39cdd1a5829aeffc611f789bdfd4dbd4ce1aa829c73d728defec180b5265d91
+ md5: 1b50eebe2a738a3146c154d2eceaa8b6
depends:
- - __osx >=10.9
- - libcxx >=16.0.6
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
- libzlib >=1.2.13,<1.3.0a0
- - mysql-common 8.0.33 hf9e6398_6
- - openssl >=3.1.4,<4.0a0
+ - mysql-common 8.3.0 hf1915f5_4
+ - openssl >=3.2.1,<4.0a0
- zstd >=1.5.5,<1.6.0a0
- size: 1510603
- timestamp: 1698939692982
+ license: GPL-2.0-or-later
+ license_family: GPL
+ size: 1537884
+ timestamp: 1709910705541
- kind: conda
name: mysql-libs
- version: 8.0.33
- build: hed35180_6
- build_number: 6
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/mysql-libs-8.0.33-hed35180_6.conda
- sha256: 87d754167fddf342b894e377fdcaac096c93c941773267ad9c89bb7b64924a33
- md5: c27fddc4d3c2d471d1d706b243570f37
+ version: 8.3.0
+ build: hf036fc4_4
+ build_number: 4
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/mysql-libs-8.3.0-hf036fc4_4.conda
+ sha256: a48101c076f9a038bd3cfa822df2b20fdc0ccce88f9000c7bee8f6d53a1cc64e
+ md5: 9cb8011d749d99db2cba868053bcd8cb
depends:
- - __osx >=10.9
- - libcxx >=16.0.6
+ - libcxx >=16
- libzlib >=1.2.13,<1.3.0a0
- - mysql-common 8.0.33 h1d20c9b_6
- - openssl >=3.1.4,<4.0a0
+ - mysql-common 8.3.0 hd1853d3_4
+ - openssl >=3.2.1,<4.0a0
- zstd >=1.5.5,<1.6.0a0
- size: 1493906
- timestamp: 1698938538673
+ license: GPL-2.0-or-later
+ license_family: GPL
+ size: 1541174
+ timestamp: 1709915999617
- kind: conda
name: nbclient
- version: 0.8.0
+ version: 0.10.0
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/nbclient-0.8.0-pyhd8ed1ab_0.conda
- sha256: 4ebd237cdf4bfa5226f92d2ae78fab8dba27696909391884dc6594ca6f9df5ff
- md5: e78da91cf428faaf05701ce8cc8f2f9b
+ url: https://conda.anaconda.org/conda-forge/noarch/nbclient-0.10.0-pyhd8ed1ab_0.conda
+ sha256: 589d72d36d61a23b39d6fff2c488f93e29e20de4fc6f5d315b5f2c16e81028bf
+ md5: 15b51397e0fe8ea7d7da60d83eb76ebc
depends:
- jupyter_client >=6.1.12
- jupyter_core >=4.12,!=5.0.*
@@ -15965,17 +23797,17 @@ packages:
- traitlets >=5.4
license: BSD-3-Clause
license_family: BSD
- size: 64852
- timestamp: 1684791049212
+ size: 27851
+ timestamp: 1710317767117
- kind: conda
name: nbconvert-core
- version: 7.16.1
+ version: 7.16.4
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/nbconvert-core-7.16.1-pyhd8ed1ab_0.conda
- sha256: 684e0710abd6477ed9df743506edecb4b53d1c9deeaf8d6d7fdbb82e58f43090
- md5: 2537745e9bc0e9bfcf66a27f113ae0e5
+ url: https://conda.anaconda.org/conda-forge/noarch/nbconvert-core-7.16.4-pyhd8ed1ab_0.conda
+ sha256: aa5bf61e42c63cec2b2c33e66cd0bb064846d62dd60f6ac62ae0d2bf17583900
+ md5: 43d9cd74e3950ab09cbddf36f1706b9f
depends:
- beautifulsoup4
- bleach
@@ -15995,73 +23827,66 @@ packages:
- tinycss2
- traitlets >=5.0
constrains:
- - pandoc >=2.14.2,<4.0.0
- - nbconvert =7.16.1=*_0
+ - pandoc >=2.9.2,<4.0.0
+ - nbconvert =7.16.4=*_0
license: BSD-3-Clause
license_family: BSD
- size: 188897
- timestamp: 1708355811971
+ size: 189004
+ timestamp: 1714477286178
- kind: conda
name: nbformat
- version: 5.9.2
+ version: 5.10.4
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/nbformat-5.9.2-pyhd8ed1ab_0.conda
- sha256: fc82c5a9116820757b03ffb836b36f0f50e4cd390018024dbadb0ee0217f6992
- md5: 61ba076de6530d9301a0053b02f093d2
+ url: https://conda.anaconda.org/conda-forge/noarch/nbformat-5.10.4-pyhd8ed1ab_0.conda
+ sha256: 36fe73da4d37bc7ac2d1540526ecd294fbd09acda04e096181ab8f1ccd2b464c
+ md5: 0b57b5368ab7fc7cdc9e3511fa867214
depends:
- jsonschema >=2.6
- - jupyter_core
+ - jupyter_core >=4.12,!=5.0.*
- python >=3.8
- - python-fastjsonschema
+ - python-fastjsonschema >=2.15
- traitlets >=5.1
license: BSD-3-Clause
license_family: BSD
- size: 100446
- timestamp: 1690815009867
+ size: 101232
+ timestamp: 1712239122969
- kind: conda
name: ncurses
- version: '6.4'
- build: h463b476_2
- build_number: 2
+ version: 6.4.20240210
+ build: h078ce10_0
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.4-h463b476_2.conda
- sha256: f6890634f815e8408d08f36503353f8dfd7b055e4c3b9ea2ee52180255cf4b0a
- md5: 52b6f254a7b9663e854f44b6570ed982
- depends:
- - __osx >=10.9
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.4.20240210-h078ce10_0.conda
+ sha256: 06f0905791575e2cd3aa961493c56e490b3d82ad9eb49f1c332bd338b0216911
+ md5: 616ae8691e6608527d0071e6766dcb81
license: X11 AND BSD-3-Clause
- size: 794741
- timestamp: 1698751574074
+ size: 820249
+ timestamp: 1710866874348
- kind: conda
name: ncurses
- version: '6.4'
- build: h59595ed_2
- build_number: 2
+ version: 6.4.20240210
+ build: h59595ed_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.4-h59595ed_2.conda
- sha256: 91cc03f14caf96243cead96c76fe91ab5925a695d892e83285461fb927dece5e
- md5: 7dbaa197d7ba6032caf7ae7f32c1efa0
+ url: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.4.20240210-h59595ed_0.conda
+ sha256: aa0f005b6727aac6507317ed490f0904430584fa8ca722657e7f0fb94741de81
+ md5: 97da8860a0da5413c7c98a3b3838a645
depends:
- libgcc-ng >=12
license: X11 AND BSD-3-Clause
- size: 884434
- timestamp: 1698751260967
+ size: 895669
+ timestamp: 1710866638986
- kind: conda
name: ncurses
- version: '6.4'
- build: h93d8f39_2
- build_number: 2
+ version: 6.4.20240210
+ build: h73e2aa4_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.4-h93d8f39_2.conda
- sha256: ea0fca66bbb52a1ef0687d466518fe120b5f279684effd6fd336a7b0dddc423a
- md5: e58f366bd4d767e9ab97ab8b272e7670
- depends:
- - __osx >=10.9
+ url: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.4.20240210-h73e2aa4_0.conda
+ sha256: 50b72acf08acbc4e5332807653e2ca6b26d4326e8af16fad1fd3f2ce9ea55503
+ md5: 50f28c512e9ad78589e3eab34833f762
license: X11 AND BSD-3-Clause
- size: 822031
- timestamp: 1698751567986
+ size: 823010
+ timestamp: 1710866856626
- kind: conda
name: nest-asyncio
version: 1.6.0
@@ -16077,6 +23902,127 @@ packages:
license_family: BSD
size: 11638
timestamp: 1705850780510
+- kind: conda
+ name: netcdf4
+ version: 1.6.5
+ build: nompi_py310h30a4ba5_100
+ build_number: 100
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/netcdf4-1.6.5-nompi_py310h30a4ba5_100.conda
+ sha256: 6362b982a6d5f7fa1ddd09554bc6552aacd81e2fedbd0a83d15c204e4212c550
+ md5: 0062c0ed9fb5da4d358fb106379e0a5c
+ depends:
+ - certifi
+ - cftime
+ - hdf5 >=1.14.2,<1.14.4.0a0
+ - libnetcdf >=4.9.2,<4.9.3.0a0
+ - libzlib >=1.2.13,<1.3.0a0
+ - numpy >=1.22.4,<2.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - setuptools
+ license: MIT
+ license_family: MIT
+ size: 458161
+ timestamp: 1698267301054
+- kind: conda
+ name: netcdf4
+ version: 1.6.5
+ build: nompi_py310h3aafd6c_100
+ build_number: 100
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/netcdf4-1.6.5-nompi_py310h3aafd6c_100.conda
+ sha256: 60c146c0f8548dfa3dc82f92477fe8c029339ab85421598e62cb1690dc85321b
+ md5: 7f5c1cf29a253ba7a219ddf507607b3f
+ depends:
+ - certifi
+ - cftime
+ - hdf5 >=1.14.2,<1.14.4.0a0
+ - libnetcdf >=4.9.2,<4.9.3.0a0
+ - libzlib >=1.2.13,<1.3.0a0
+ - numpy >=1.22.4,<2.0a0
+ - python >=3.10,<3.11.0a0
+ - python >=3.10,<3.11.0a0 *_cpython
+ - python_abi 3.10.* *_cp310
+ - setuptools
+ license: MIT
+ license_family: MIT
+ size: 452198
+ timestamp: 1698267929039
+- kind: conda
+ name: netcdf4
+ version: 1.6.5
+ build: nompi_py310h6477780_100
+ build_number: 100
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/netcdf4-1.6.5-nompi_py310h6477780_100.conda
+ sha256: 404b33445e5e6787d9f12ffa673fcba18e36cecade7b565a6a2b71c00cccf623
+ md5: 61183feee146a6f0e1db2dc2503f5ad6
+ depends:
+ - certifi
+ - cftime
+ - hdf5 >=1.14.2,<1.14.4.0a0
+ - libnetcdf >=4.9.2,<4.9.3.0a0
+ - libzlib >=1.2.13,<1.3.0a0
+ - numpy >=1.22.4,<2.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - setuptools
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: MIT
+ license_family: MIT
+ size: 409577
+ timestamp: 1698267509096
+- kind: conda
+ name: netcdf4
+ version: 1.6.5
+ build: nompi_py310hba70d50_100
+ build_number: 100
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/netcdf4-1.6.5-nompi_py310hba70d50_100.conda
+ sha256: b86677ca301a24ca4ff97fd617851dd2b96aa8e36db8fd493d4dd55703e829f8
+ md5: e19392760c7e4da3b9cb0ee5bf61bc4b
+ depends:
+ - certifi
+ - cftime
+ - hdf5 >=1.14.2,<1.14.4.0a0
+ - libgcc-ng >=12
+ - libnetcdf >=4.9.2,<4.9.3.0a0
+ - libzlib >=1.2.13,<1.3.0a0
+ - numpy >=1.22.4,<2.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - setuptools
+ license: MIT
+ license_family: MIT
+ size: 549480
+ timestamp: 1698266906302
+- kind: conda
+ name: netcdf4
+ version: 1.6.5
+ build: nompi_py311ha6bebe6_100
+ build_number: 100
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/netcdf4-1.6.5-nompi_py311ha6bebe6_100.conda
+ sha256: 7e64e811fc616aed825c00d79ad961d5c5a8d50d82f94f9b4626cfe4367c3d0a
+ md5: aa937e2554d1b95317d0e5f660e135ec
+ depends:
+ - certifi
+ - cftime
+ - hdf5 >=1.14.2,<1.14.4.0a0
+ - libnetcdf >=4.9.2,<4.9.3.0a0
+ - libzlib >=1.2.13,<1.3.0a0
+ - numpy >=1.23.5,<2.0a0
+ - python >=3.11,<3.12.0a0
+ - python >=3.11,<3.12.0a0 *_cpython
+ - python_abi 3.11.* *_cp311
+ - setuptools
+ license: MIT
+ license_family: MIT
+ size: 459917
+ timestamp: 1698267902016
- kind: conda
name: netcdf4
version: 1.6.5
@@ -16098,67 +24044,138 @@ packages:
- setuptools
license: MIT
license_family: MIT
- size: 467502
- timestamp: 1698267075965
+ size: 467502
+ timestamp: 1698267075965
+- kind: conda
+ name: netcdf4
+ version: 1.6.5
+ build: nompi_py311he019f65_100
+ build_number: 100
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/netcdf4-1.6.5-nompi_py311he019f65_100.conda
+ sha256: a7251acf1fbb1f40b781866c94e76940553804a0d94215f511a71413e4b9e8f4
+ md5: d50a7fb6642d2af7e60f658634bf6a9d
+ depends:
+ - certifi
+ - cftime
+ - hdf5 >=1.14.2,<1.14.4.0a0
+ - libnetcdf >=4.9.2,<4.9.3.0a0
+ - libzlib >=1.2.13,<1.3.0a0
+ - numpy >=1.23.5,<2.0a0
+ - python >=3.11,<3.12.0a0
+ - python_abi 3.11.* *_cp311
+ - setuptools
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: MIT
+ license_family: MIT
+ size: 426859
+ timestamp: 1698268466501
+- kind: conda
+ name: netcdf4
+ version: 1.6.5
+ build: nompi_py311he8ad708_100
+ build_number: 100
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/netcdf4-1.6.5-nompi_py311he8ad708_100.conda
+ sha256: 7bac3ae08c052d73b8ba2cd2c4012627c67b6c4ceae76248e7bb41867d47bdb0
+ md5: 597b1ad6cb7011b7561c20ea30295cae
+ depends:
+ - certifi
+ - cftime
+ - hdf5 >=1.14.2,<1.14.4.0a0
+ - libgcc-ng >=12
+ - libnetcdf >=4.9.2,<4.9.3.0a0
+ - libzlib >=1.2.13,<1.3.0a0
+ - numpy >=1.23.5,<2.0a0
+ - python >=3.11,<3.12.0a0
+ - python_abi 3.11.* *_cp311
+ - setuptools
+ license: MIT
+ license_family: MIT
+ size: 555552
+ timestamp: 1698266994360
+- kind: conda
+ name: netcdf4
+ version: 1.6.5
+ build: nompi_py312h26027e0_100
+ build_number: 100
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/netcdf4-1.6.5-nompi_py312h26027e0_100.conda
+ sha256: 9f15fb8f019e56926504ae1176172f8c7cf39d72c80791669d201a0dc8c20b0d
+ md5: 2d7b4954dc5a090796e0ba89c325d09b
+ depends:
+ - certifi
+ - cftime
+ - hdf5 >=1.14.2,<1.14.4.0a0
+ - libgcc-ng >=12
+ - libnetcdf >=4.9.2,<4.9.3.0a0
+ - libzlib >=1.2.13,<1.3.0a0
+ - numpy >=1.26.0,<2.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - setuptools
+ license: MIT
+ license_family: MIT
+ size: 553180
+ timestamp: 1698267006756
- kind: conda
name: netcdf4
version: 1.6.5
- build: nompi_py311he019f65_100
+ build: nompi_py312h9035142_100
build_number: 100
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/netcdf4-1.6.5-nompi_py311he019f65_100.conda
- sha256: a7251acf1fbb1f40b781866c94e76940553804a0d94215f511a71413e4b9e8f4
- md5: d50a7fb6642d2af7e60f658634bf6a9d
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/netcdf4-1.6.5-nompi_py312h9035142_100.conda
+ sha256: 63b81cfeb6065bf1a235eeddd5ec74449e6b39b2a8ae4f8a840f64cb3805ba7a
+ md5: 079697c78703cadf61065c37b029469e
depends:
- certifi
- cftime
- hdf5 >=1.14.2,<1.14.4.0a0
- libnetcdf >=4.9.2,<4.9.3.0a0
- libzlib >=1.2.13,<1.3.0a0
- - numpy >=1.23.5,<2.0a0
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - numpy >=1.26.0,<2.0a0
+ - python >=3.12,<3.13.0a0
+ - python >=3.12,<3.13.0a0 *_cpython
+ - python_abi 3.12.* *_cp312
- setuptools
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
license: MIT
license_family: MIT
- size: 426859
- timestamp: 1698268466501
+ size: 448654
+ timestamp: 1698268056176
- kind: conda
name: netcdf4
version: 1.6.5
- build: nompi_py311he8ad708_100
+ build: nompi_py312hd4beaa4_100
build_number: 100
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/netcdf4-1.6.5-nompi_py311he8ad708_100.conda
- sha256: 7bac3ae08c052d73b8ba2cd2c4012627c67b6c4ceae76248e7bb41867d47bdb0
- md5: 597b1ad6cb7011b7561c20ea30295cae
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/netcdf4-1.6.5-nompi_py312hd4beaa4_100.conda
+ sha256: a1bd1a258d1cce8200c63898339e0dd162df4e97ff7df779e76d8d226fde219a
+ md5: eee4a0a669a2b538fdf6eec373b09886
depends:
- certifi
- cftime
- hdf5 >=1.14.2,<1.14.4.0a0
- - libgcc-ng >=12
- libnetcdf >=4.9.2,<4.9.3.0a0
- libzlib >=1.2.13,<1.3.0a0
- - numpy >=1.23.5,<2.0a0
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - numpy >=1.26.0,<2.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
- setuptools
license: MIT
license_family: MIT
- size: 555552
- timestamp: 1698266994360
+ size: 459392
+ timestamp: 1698267243780
- kind: conda
name: netcdf4
version: 1.6.5
- build: nompi_py312h9035142_100
+ build: nompi_py312he4da9c3_100
build_number: 100
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/netcdf4-1.6.5-nompi_py312h9035142_100.conda
- sha256: 63b81cfeb6065bf1a235eeddd5ec74449e6b39b2a8ae4f8a840f64cb3805ba7a
- md5: 079697c78703cadf61065c37b029469e
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/netcdf4-1.6.5-nompi_py312he4da9c3_100.conda
+ sha256: 97ee6744cc4f92b8bb3b290e619c7c457804e6da6b494b5853afd0b6af8865e2
+ md5: b9bc323e80d8ee7d2ab2003693fdeab2
depends:
- certifi
- cftime
@@ -16167,95 +24184,102 @@ packages:
- libzlib >=1.2.13,<1.3.0a0
- numpy >=1.26.0,<2.0a0
- python >=3.12,<3.13.0a0
- - python >=3.12,<3.13.0a0 *_cpython
- python_abi 3.12.* *_cp312
- setuptools
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
license: MIT
license_family: MIT
- size: 448654
- timestamp: 1698268056176
+ size: 408247
+ timestamp: 1698268640856
- kind: conda
name: networkx
- version: 3.2.1
- build: pyhd8ed1ab_0
+ version: '3.3'
+ build: pyhd8ed1ab_1
+ build_number: 1
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda
- sha256: 7629aa4f9f8cdff45ea7a4701fe58dccce5bf2faa01c26eb44cbb27b7e15ca9d
- md5: 425fce3b531bed6ec3c74fab3e5f0a1c
+ url: https://conda.anaconda.org/conda-forge/noarch/networkx-3.3-pyhd8ed1ab_1.conda
+ sha256: cbd8a6de87ad842e7665df38dcec719873fe74698bc761de5431047b8fada41a
+ md5: d335fd5704b46f4efb89a6774e81aef0
depends:
- - python >=3.9
+ - python >=3.10
constrains:
+ - pandas >=1.4
+ - numpy >=1.22
- matplotlib >=3.5
- scipy >=1.9,!=1.11.0,!=1.11.1
- - numpy >=1.22
- - pandas >=1.4
license: BSD-3-Clause
license_family: BSD
- size: 1149552
- timestamp: 1698504905258
+ size: 1185670
+ timestamp: 1712540499262
- kind: conda
name: nh3
- version: 0.2.15
- build: py311h46250e7_0
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/nh3-0.2.15-py311h46250e7_0.conda
- sha256: 925338483177e45796cce67b202fb04bfb475f69640e38adea84944ca9018c97
- md5: 03e43969efe3c71962fea046c00cc40f
+ version: 0.2.17
+ build: py312h1b0e595_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/nh3-0.2.17-py312h1b0e595_0.conda
+ sha256: 2757f1eb998b3a2475b1464d86d579e171b3c8291565663a932afaae046e8a2e
+ md5: 4f054ad0586a4cce37bfa5a734caab2d
depends:
- - libgcc-ng >=12
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ constrains:
+ - __osx >=10.12
license: MIT
license_family: MIT
- size: 621909
- timestamp: 1701974756466
+ size: 543776
+ timestamp: 1711546010408
- kind: conda
name: nh3
- version: 0.2.15
- build: py311h5e0f0e4_0
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/nh3-0.2.15-py311h5e0f0e4_0.conda
- sha256: 8d050fedd9cd3ed287ac7fd4c28976f0d8990260f25df12376942f9548181384
- md5: 1558bb8f97aa8d361bc59470ac4b26cf
+ version: 0.2.17
+ build: py312h426fad5_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/nh3-0.2.17-py312h426fad5_0.conda
+ sha256: fba43991ef788619219c6bb68bc1b0d517d3d1cbf0582387d03f963a4d6bd7db
+ md5: ac293016a363d8145cc7383227b66d7c
depends:
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
license: MIT
license_family: MIT
- size: 547589
- timestamp: 1701974970422
+ size: 495036
+ timestamp: 1711546525421
- kind: conda
name: nh3
- version: 0.2.15
- build: py311h633b200_0
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/nh3-0.2.15-py311h633b200_0.conda
- sha256: d0b5ed5621d01adc223971f83b00e2d3cdab870b5913322cec3d5ed4ada0aef2
- md5: c3f2f171c4a730eec6c0534f0227cafe
+ version: 0.2.17
+ build: py312h4b3b743_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/nh3-0.2.17-py312h4b3b743_0.conda
+ sha256: 60067873dda1f5433fee8e2b7c02a32785153d2be73c75cfffae47ca4566a9c2
+ md5: cfa305e03624c82d451a5ef250960bbd
depends:
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - libgcc-ng >=12
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
license: MIT
license_family: MIT
- size: 493281
- timestamp: 1701975459413
+ size: 607053
+ timestamp: 1711545731955
- kind: conda
name: nh3
- version: 0.2.15
+ version: 0.2.17
build: py312h5280bc4_0
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/nh3-0.2.15-py312h5280bc4_0.conda
- sha256: c33e7acd89ff0f34209e746bd5c1a4216938520282c334fde7e1a32db2bb86ab
- md5: dd5eecd5fe445fc0c0c05be841c9d012
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/nh3-0.2.17-py312h5280bc4_0.conda
+ sha256: b5ff8a687db7ef51fe5f854fe37975f08b70a2ad0ff585d9444e4e3bd77b3d95
+ md5: 7a6d211257e3d264516ae4d67ce181a4
depends:
- python >=3.12,<3.13.0a0
- python >=3.12,<3.13.0a0 *_cpython
- python_abi 3.12.* *_cp312
+ constrains:
+ - __osx >=11.0
license: MIT
license_family: MIT
- size: 602780
- timestamp: 1701975343669
+ size: 582437
+ timestamp: 1711545995406
- kind: conda
name: nitro
version: 2.7.dev8
@@ -16462,13 +24486,154 @@ packages:
timestamp: 1708065399315
- kind: conda
name: numba
- version: 0.59.0
- build: py311h2c0921f_1
- build_number: 1
+ version: 0.59.1
+ build: py310h1d5af72_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/numba-0.59.1-py310h1d5af72_0.conda
+ sha256: a209aa01362bc96eda9cfd013400518fbf348845cd8a76235e4919f63336ec88
+ md5: 48c2d28c10aa78b8db76f0eee9c08626
+ depends:
+ - libcxx >=16
+ - llvm-openmp >=16.0.6
+ - llvm-openmp >=18.1.2
+ - llvmlite >=0.42.0,<0.43.0a0
+ - numpy >=1.22.4,<2.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ constrains:
+ - tbb >=2021.6.0
+ - libopenblas !=0.3.6
+ - cudatoolkit >=11.2
+ - scipy >=1.0
+ - cuda-version >=11.2
+ - cuda-python >=11.6
+ - numpy >=1.22.3,<1.27
+ license: BSD-2-Clause
+ license_family: BSD
+ size: 4306388
+ timestamp: 1711475580226
+- kind: conda
+ name: numba
+ version: 0.59.1
+ build: py310h7dc5dd1_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/numba-0.59.1-py310h7dc5dd1_0.conda
+ sha256: d2c631345a40f0ffbe18d312ef665e1ae1a4942ecff46334df2de49b8277bf81
+ md5: b757b5ecfa1cad38328fa73e236b6563
+ depends:
+ - _openmp_mutex >=4.5
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
+ - llvmlite >=0.42.0,<0.43.0a0
+ - numpy >=1.22.4,<2.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ constrains:
+ - cudatoolkit >=11.2
+ - cuda-python >=11.6
+ - cuda-version >=11.2
+ - numpy >=1.22.3,<1.27
+ - libopenblas !=0.3.6
+ - scipy >=1.0
+ - tbb >=2021.6.0
+ license: BSD-2-Clause
+ license_family: BSD
+ size: 4313101
+ timestamp: 1711475336305
+- kind: conda
+ name: numba
+ version: 0.59.1
+ build: py310h9ccaf4f_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/numba-0.59.1-py310h9ccaf4f_0.conda
+ sha256: fa83e95a18ab1011fb628f536609c86304cc6578035592de7078f78491e7b334
+ md5: 62a19ec9b0e89bf270c6bf163cf21bb4
+ depends:
+ - llvmlite >=0.42.0,<0.43.0a0
+ - numpy >=1.22.4,<2.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ constrains:
+ - libopenblas !=0.3.6
+ - numpy >=1.22.3,<1.27
+ - cuda-version >=11.2
+ - tbb >=2021.6.0
+ - cudatoolkit >=11.2
+ - scipy >=1.0
+ - cuda-python >=11.6
+ license: BSD-2-Clause
+ license_family: BSD
+ size: 4293611
+ timestamp: 1711475788866
+- kind: conda
+ name: numba
+ version: 0.59.1
+ build: py310hdf1f89a_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/numba-0.59.1-py310hdf1f89a_0.conda
+ sha256: 40ebaa41d0aa057f6ffeb58742fde256e13e410d8a7a18941d951b2f90ba7ea8
+ md5: 8664b3ab76986782e3a8ad26f4af8fdd
+ depends:
+ - libcxx >=16
+ - llvm-openmp >=16.0.6
+ - llvm-openmp >=18.1.2
+ - llvmlite >=0.42.0,<0.43.0a0
+ - numpy >=1.22.4,<2.0a0
+ - python >=3.10,<3.11.0a0
+ - python >=3.10,<3.11.0a0 *_cpython
+ - python_abi 3.10.* *_cp310
+ constrains:
+ - tbb >=2021.6.0
+ - scipy >=1.0
+ - cuda-python >=11.6
+ - cuda-version >=11.2
+ - numpy >=1.22.3,<1.27
+ - libopenblas >=0.3.18, !=0.3.20
+ - cudatoolkit >=11.2
+ license: BSD-2-Clause
+ license_family: BSD
+ size: 4292616
+ timestamp: 1711475805806
+- kind: conda
+ name: numba
+ version: 0.59.1
+ build: py311h00351ea_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/numba-0.59.1-py311h00351ea_0.conda
+ sha256: 08fb0c631d4398db7ad6aca6028cf61ea1b7729b37fbfc39156bd8041e721ea6
+ md5: 19ab43dae40c315f94f73127edc1ecec
+ depends:
+ - libcxx >=16
+ - llvm-openmp >=16.0.6
+ - llvm-openmp >=18.1.2
+ - llvmlite >=0.42.0,<0.43.0a0
+ - numpy >=1.23.5,<2.0a0
+ - python >=3.11,<3.12.0a0
+ - python >=3.11,<3.12.0a0 *_cpython
+ - python_abi 3.11.* *_cp311
+ constrains:
+ - cudatoolkit >=11.2
+ - scipy >=1.0
+ - cuda-python >=11.6
+ - tbb >=2021.6.0
+ - cuda-version >=11.2
+ - libopenblas >=0.3.18, !=0.3.20
+ - numpy >=1.22.3,<1.27
+ license: BSD-2-Clause
+ license_family: BSD
+ size: 5714812
+ timestamp: 1711475878723
+- kind: conda
+ name: numba
+ version: 0.59.1
+ build: py311h2c0921f_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/numba-0.59.0-py311h2c0921f_1.conda
- sha256: de02c464eb662495dbe169e88bb57c1f24d2f3110d96b9cc942089a775461189
- md5: 212de778a02afab2131bd7ae5fa11a08
+ url: https://conda.anaconda.org/conda-forge/win-64/numba-0.59.1-py311h2c0921f_0.conda
+ sha256: 444faaee93e210d2a24853b8fdb646afa57ee72378f1156bf3d9f0e67be0087b
+ md5: 37f04eaa0e229a07b03f219f10be11ef
depends:
- llvmlite >=0.42.0,<0.43.0a0
- numpy >=1.23.5,<2.0a0
@@ -16478,105 +24643,186 @@ packages:
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
constrains:
+ - libopenblas !=0.3.6
+ - scipy >=1.0
+ - cuda-version >=11.2
+ - numpy >=1.22.3,<1.27
+ - tbb >=2021.6.0
+ - cudatoolkit >=11.2
+ - cuda-python >=11.6
+ license: BSD-2-Clause
+ license_family: BSD
+ size: 5740925
+ timestamp: 1711475788949
+- kind: conda
+ name: numba
+ version: 0.59.1
+ build: py311h96b013e_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/numba-0.59.1-py311h96b013e_0.conda
+ sha256: d04a4ae9207492a7e40135eef2a0c79da2d6ed53baf4b72a0ff533dd5fd838a9
+ md5: cd581f19ea0c298ec6ef612fdf7d041c
+ depends:
+ - _openmp_mutex >=4.5
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
+ - llvmlite >=0.42.0,<0.43.0a0
+ - numpy >=1.23.5,<2.0a0
+ - python >=3.11,<3.12.0a0
+ - python_abi 3.11.* *_cp311
+ constrains:
+ - tbb >=2021.6.0
+ - cudatoolkit >=11.2
+ - cuda-version >=11.2
- cuda-python >=11.6
- scipy >=1.0
+ - libopenblas !=0.3.6
+ - numpy >=1.22.3,<1.27
+ license: BSD-2-Clause
+ license_family: BSD
+ size: 5727056
+ timestamp: 1711475359733
+- kind: conda
+ name: numba
+ version: 0.59.1
+ build: py311h97119f7_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/numba-0.59.1-py311h97119f7_0.conda
+ sha256: 39c5d0402fe93521fd4593dddead61be6307590177aab6eb14a19c8aff8072e3
+ md5: a7d40eca79cb5ee19a95f041627da7cc
+ depends:
+ - libcxx >=16
+ - llvm-openmp >=16.0.6
+ - llvm-openmp >=18.1.2
+ - llvmlite >=0.42.0,<0.43.0a0
+ - numpy >=1.23.5,<2.0a0
+ - python >=3.11,<3.12.0a0
+ - python_abi 3.11.* *_cp311
+ constrains:
+ - cuda-version >=11.2
+ - scipy >=1.0
+ - numpy >=1.22.3,<1.27
+ - libopenblas !=0.3.6
+ - cudatoolkit >=11.2
+ - cuda-python >=11.6
+ - tbb >=2021.6.0
+ license: BSD-2-Clause
+ license_family: BSD
+ size: 5694560
+ timestamp: 1711475607780
+- kind: conda
+ name: numba
+ version: 0.59.1
+ build: py312h04e34b5_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/numba-0.59.1-py312h04e34b5_0.conda
+ sha256: e4bc3426d6b023c121328e6a9878ec35a71487bc1cb3424f96d9f2808ad0ee43
+ md5: 46499b9d015d01c22ceb1c37e1dc6ccc
+ depends:
+ - libcxx >=16
+ - llvm-openmp >=16.0.6
+ - llvm-openmp >=18.1.2
+ - llvmlite >=0.42.0,<0.43.0a0
+ - numpy >=1.26.4,<2.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ constrains:
- tbb >=2021.6.0
- cudatoolkit >=11.2
+ - numpy >=1.22.3,<1.27
+ - cuda-version >=11.2
+ - cuda-python >=11.6
+ - scipy >=1.0
- libopenblas !=0.3.6
+ license: BSD-2-Clause
+ license_family: BSD
+ size: 5586866
+ timestamp: 1711475677299
+- kind: conda
+ name: numba
+ version: 0.59.1
+ build: py312h115d327_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/numba-0.59.1-py312h115d327_0.conda
+ sha256: 9a04cfd0886170036bdbc3c2b3e4805e8629c126c0b55e498e3401d4aee9331c
+ md5: 514d477e6114b692d400ed23deb73348
+ depends:
+ - llvmlite >=0.42.0,<0.43.0a0
+ - numpy >=1.26.4,<2.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ constrains:
+ - tbb >=2021.6.0
- cuda-version >=11.2
+ - cudatoolkit >=11.2
+ - scipy >=1.0
- numpy >=1.22.3,<1.27
+ - libopenblas !=0.3.6
+ - cuda-python >=11.6
license: BSD-2-Clause
license_family: BSD
- size: 5736769
- timestamp: 1707025374646
+ size: 5591106
+ timestamp: 1711475839209
- kind: conda
name: numba
- version: 0.59.0
- build: py311h96b013e_1
- build_number: 1
+ version: 0.59.1
+ build: py312hacefee8_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/numba-0.59.0-py311h96b013e_1.conda
- sha256: 7733d1377bf9c39efaef8af6bd0988248d8719691b8de67cb2cc2dc4416f5724
- md5: 488276429185c4fa1266e6a4a24a61af
+ url: https://conda.anaconda.org/conda-forge/linux-64/numba-0.59.1-py312hacefee8_0.conda
+ sha256: 13445a4ea0677336aa882c519f31ce397cbb5ac848adc68b0c951ca038784562
+ md5: 84c93029c60916c59a914a3ba579c4a8
depends:
- _openmp_mutex >=4.5
- libgcc-ng >=12
- libstdcxx-ng >=12
- llvmlite >=0.42.0,<0.43.0a0
- - numpy >=1.23.5,<2.0a0
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - numpy >=1.26.4,<2.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
constrains:
- cuda-version >=11.2
- - tbb >=2021.6.0
- numpy >=1.22.3,<1.27
- - scipy >=1.0
- - cudatoolkit >=11.2
- - cuda-python >=11.6
- libopenblas !=0.3.6
- license: BSD-2-Clause
- license_family: BSD
- size: 5727292
- timestamp: 1707024985748
-- kind: conda
- name: numba
- version: 0.59.0
- build: py311h97119f7_1
- build_number: 1
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/numba-0.59.0-py311h97119f7_1.conda
- sha256: 8cf53e0723f7728cd94206594510800d509ee51e516aadd23d82ffd421c2b50f
- md5: 6ef612819668f7bcd6782f6105d57938
- depends:
- - libcxx >=16
- - llvm-openmp >=16.0.6
- - llvm-openmp >=17.0.6
- - llvmlite >=0.42.0,<0.43.0a0
- - numpy >=1.23.5,<2.0a0
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
- constrains:
- - cudatoolkit >=11.2
+ - tbb >=2021.6.0
- scipy >=1.0
- cuda-python >=11.6
- - numpy >=1.22.3,<1.27
- - tbb >=2021.6.0
- - cuda-version >=11.2
- - libopenblas !=0.3.6
+ - cudatoolkit >=11.2
license: BSD-2-Clause
license_family: BSD
- size: 5687339
- timestamp: 1707025156882
+ size: 5613943
+ timestamp: 1711475331686
- kind: conda
name: numba
- version: 0.59.0
- build: py312hbaff935_1
- build_number: 1
+ version: 0.59.1
+ build: py312hbaff935_0
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/numba-0.59.0-py312hbaff935_1.conda
- sha256: c80264493ad73a313cd81d5772315df5cbb61bc99c5ed70012e2ad6678c2a67a
- md5: 1a946f1b1308a4f6b321bd129ba32392
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/numba-0.59.1-py312hbaff935_0.conda
+ sha256: 300dde5a10d35eeba537b1d3e689841a7ea11fef7e8bd273a83af1535696c486
+ md5: e4b79ed152a0499e5ccfe660140aeca7
depends:
- libcxx >=16
- llvm-openmp >=16.0.6
- - llvm-openmp >=17.0.6
+ - llvm-openmp >=18.1.2
- llvmlite >=0.42.0,<0.43.0a0
- - numpy >=1.26.3,<2.0a0
+ - numpy >=1.26.4,<2.0a0
- python >=3.12,<3.13.0a0
- python >=3.12,<3.13.0a0 *_cpython
- python_abi 3.12.* *_cp312
constrains:
- cudatoolkit >=11.2
- - tbb >=2021.6.0
- scipy >=1.0
- - libopenblas >=0.3.18, !=0.3.20
- numpy >=1.22.3,<1.27
- - cuda-version >=11.2
+ - tbb >=2021.6.0
+ - libopenblas >=0.3.18, !=0.3.20
- cuda-python >=11.6
+ - cuda-version >=11.2
license: BSD-2-Clause
license_family: BSD
- size: 5583158
- timestamp: 1707025272079
+ size: 5590634
+ timestamp: 1711475851039
- kind: conda
name: numba_celltree
version: 0.1.6
@@ -16594,6 +24840,94 @@ packages:
license_family: MIT
size: 32808
timestamp: 1672825982456
+- kind: conda
+ name: numpy
+ version: 1.26.4
+ build: py310h4bfa8fc_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/numpy-1.26.4-py310h4bfa8fc_0.conda
+ sha256: 914476e2d3273fdf9c0419a7bdcb7b31a5ec25949e4afbc847297ff3a50c62c8
+ md5: cd6a2298387f558c9ea70ee73a189791
+ depends:
+ - libblas >=3.9.0,<4.0a0
+ - libcblas >=3.9.0,<4.0a0
+ - libcxx >=16
+ - liblapack >=3.9.0,<4.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ constrains:
+ - numpy-base <0a0
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 6491938
+ timestamp: 1707226191321
+- kind: conda
+ name: numpy
+ version: 1.26.4
+ build: py310hb13e2d6_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/numpy-1.26.4-py310hb13e2d6_0.conda
+ sha256: 028fe2ea8e915a0a032b75165f11747770326f3d767e642880540c60a3256425
+ md5: 6593de64c935768b6bad3e19b3e978be
+ depends:
+ - libblas >=3.9.0,<4.0a0
+ - libcblas >=3.9.0,<4.0a0
+ - libgcc-ng >=12
+ - liblapack >=3.9.0,<4.0a0
+ - libstdcxx-ng >=12
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ constrains:
+ - numpy-base <0a0
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 7009070
+ timestamp: 1707225917496
+- kind: conda
+ name: numpy
+ version: 1.26.4
+ build: py310hd45542a_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/numpy-1.26.4-py310hd45542a_0.conda
+ sha256: e3078108a4973e73c813b89228f4bd8095ec58f96ca29f55d2e45a6223a9a1db
+ md5: 267ee89a3a0b8c8fa838a2353f9ea0c0
+ depends:
+ - libblas >=3.9.0,<4.0a0
+ - libcblas >=3.9.0,<4.0a0
+ - libcxx >=16
+ - liblapack >=3.9.0,<4.0a0
+ - python >=3.10,<3.11.0a0
+ - python >=3.10,<3.11.0a0 *_cpython
+ - python_abi 3.10.* *_cp310
+ constrains:
+ - numpy-base <0a0
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 5475744
+ timestamp: 1707226187124
+- kind: conda
+ name: numpy
+ version: 1.26.4
+ build: py310hf667824_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/numpy-1.26.4-py310hf667824_0.conda
+ sha256: 20ca447a8f840c01961f2bdf0847fc7b7785a62968e867d7aa4ca8a66d70f9ad
+ md5: 93e881c391880df90e74e43a4b67c16d
+ depends:
+ - libblas >=3.9.0,<4.0a0
+ - libcblas >=3.9.0,<4.0a0
+ - liblapack >=3.9.0,<4.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ constrains:
+ - numpy-base <0a0
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 5977469
+ timestamp: 1707226445438
- kind: conda
name: numpy
version: 1.26.4
@@ -16639,6 +24973,28 @@ packages:
license_family: BSD
size: 8065890
timestamp: 1707225944355
+- kind: conda
+ name: numpy
+ version: 1.26.4
+ build: py311h7125741_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/numpy-1.26.4-py311h7125741_0.conda
+ sha256: 160a52a01fea44fe9753a2ed22cf13d7b55c8a89ea0b8738546fdbf4795d6514
+ md5: 3160b93669a0def35a7a8158ebb33816
+ depends:
+ - libblas >=3.9.0,<4.0a0
+ - libcblas >=3.9.0,<4.0a0
+ - libcxx >=16
+ - liblapack >=3.9.0,<4.0a0
+ - python >=3.11,<3.12.0a0
+ - python >=3.11,<3.12.0a0 *_cpython
+ - python_abi 3.11.* *_cp311
+ constrains:
+ - numpy-base <0a0
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 6652352
+ timestamp: 1707226297967
- kind: conda
name: numpy
version: 1.26.4
@@ -16682,38 +25038,105 @@ packages:
license_family: BSD
size: 6073136
timestamp: 1707226249608
+- kind: conda
+ name: numpy
+ version: 1.26.4
+ build: py312h8753938_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/numpy-1.26.4-py312h8753938_0.conda
+ sha256: 73570817a5109d396b4ebbe5124a89525959269fd33fa33fd413700289fbe0ef
+ md5: f9ac74c3b07c396014434aca1e58d362
+ depends:
+ - libblas >=3.9.0,<4.0a0
+ - libcblas >=3.9.0,<4.0a0
+ - liblapack >=3.9.0,<4.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ constrains:
+ - numpy-base <0a0
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 6495445
+ timestamp: 1707226412944
+- kind: conda
+ name: numpy
+ version: 1.26.4
+ build: py312he3a82b2_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/numpy-1.26.4-py312he3a82b2_0.conda
+ sha256: 6152b73fba3e227afa4952df8753128fc9669bbaf142ee8f9972bf9df3bf8856
+ md5: 96c61a21c4276613748dba069554846b
+ depends:
+ - libblas >=3.9.0,<4.0a0
+ - libcblas >=3.9.0,<4.0a0
+ - libcxx >=16
+ - liblapack >=3.9.0,<4.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ constrains:
+ - numpy-base <0a0
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 6990646
+ timestamp: 1707226178262
+- kind: conda
+ name: numpy
+ version: 1.26.4
+ build: py312heda63a1_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/numpy-1.26.4-py312heda63a1_0.conda
+ sha256: fe3459c75cf84dcef6ef14efcc4adb0ade66038ddd27cadb894f34f4797687d8
+ md5: d8285bea2a350f63fab23bf460221f3f
+ depends:
+ - libblas >=3.9.0,<4.0a0
+ - libcblas >=3.9.0,<4.0a0
+ - libgcc-ng >=12
+ - liblapack >=3.9.0,<4.0a0
+ - libstdcxx-ng >=12
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ constrains:
+ - numpy-base <0a0
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 7484186
+ timestamp: 1707225809722
- kind: conda
name: ocl-icd
version: 2.3.2
- build: hd590300_0
+ build: hd590300_1
+ build_number: 1
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/ocl-icd-2.3.2-hd590300_0.conda
- sha256: d413c0b42ba13532943118458caab795454f5a73d70f5d2ed2daa6118df15876
- md5: 92e93490ee7f98bfadb389e3129b955c
+ url: https://conda.anaconda.org/conda-forge/linux-64/ocl-icd-2.3.2-hd590300_1.conda
+ sha256: 0e01384423e48e5011eb6b224da8dc5e3567c87dbcefbe60cd9d5cead276cdcd
+ md5: c66f837ac65e4d1cdeb80e2a1d5fcc3d
depends:
- libgcc-ng >=12
license: BSD-2-Clause
license_family: BSD
- size: 136327
- timestamp: 1707866764671
+ size: 135681
+ timestamp: 1710946531879
- kind: conda
name: openblas
- version: 0.3.26
+ version: 0.3.27
build: pthreads_h3721920_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/openblas-0.3.26-pthreads_h3721920_0.conda
- sha256: 27e5b02f367eea261ce58c484e5effba3e9ceb2f3cf487e331167e8c8ae6cd19
- md5: c4803747929997cb8aac395d55059859
+ url: https://conda.anaconda.org/conda-forge/win-64/openblas-0.3.27-pthreads_h3721920_0.conda
+ sha256: 628b0fa41acf0e943271cf1ee6b70823e85f35b9e59fc28fda9e269e6516e133
+ md5: 388a107a99baeb66c74683807e51786b
depends:
- libflang >=5.0.0,<6.0.0.a0
- - libopenblas 0.3.26 pthreads_hc140b1d_0
+ - libopenblas 0.3.27 pthreads_hc140b1d_0
- ucrt >=10.0.20348.0
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
license: BSD-3-Clause
license_family: BSD
- size: 169776
- timestamp: 1704955176460
+ size: 167892
+ timestamp: 1712369231103
- kind: conda
name: openjpeg
version: 2.5.2
@@ -16803,28 +25226,28 @@ packages:
size: 590466
- kind: conda
name: openssl
- version: 3.2.1
+ version: 3.3.0
build: h0d3ecfb_0
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.2.1-h0d3ecfb_0.conda
- sha256: 13663fcd4abc8681b31ccbad39800fee2127cb6159b51a989ed48a816af36cf5
- md5: 421cc6e8715447b73c2c57dcf78cb9d2
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.3.0-h0d3ecfb_0.conda
+ sha256: 51f9be8fe929c2bb3243cd0707b6dfcec27541f8284b4bd9b063c288fc46f482
+ md5: 25b0e522c3131886a637e347b2ca0c0f
depends:
- ca-certificates
constrains:
- pyopenssl >=22.1
license: Apache-2.0
license_family: Apache
- size: 2862719
- timestamp: 1706635779319
+ size: 2888226
+ timestamp: 1714466346030
- kind: conda
name: openssl
- version: 3.2.1
+ version: 3.3.0
build: hcfcfb64_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/openssl-3.2.1-hcfcfb64_0.conda
- sha256: 1df1c43136f863d5e9ba20b703001caf9a4d0ea56bdc3eeb948c977e3d4f91d3
- md5: 158df8eead8092cf0e27167c8761a8dd
+ url: https://conda.anaconda.org/conda-forge/win-64/openssl-3.3.0-hcfcfb64_0.conda
+ sha256: ca7573b7503711b53b2464fa35e4efa6f89dcd3d436fb5f128722b853e356dfd
+ md5: a6c544c9f060740c625dbf6d92cf3495
depends:
- ca-certificates
- ucrt >=10.0.20348.0
@@ -16834,16 +25257,16 @@ packages:
- pyopenssl >=22.1
license: Apache-2.0
license_family: Apache
- size: 8229619
- timestamp: 1706638014697
+ size: 8358240
+ timestamp: 1714468180752
- kind: conda
name: openssl
- version: 3.2.1
+ version: 3.3.0
build: hd590300_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.2.1-hd590300_0.conda
- sha256: c02c12bdb898daacf7eb3d09859f93ea8f285fd1a6132ff6ff0493ab52c7fe57
- md5: 51a753e64a3027bd7e23a189b1f6e91e
+ url: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.3.0-hd590300_0.conda
+ sha256: fdbf05e4db88c592366c90bb82e446edbe33c6e49e5130d51c580b2629c0b5d5
+ md5: c0f3abb4a16477208bbd43a39bd56f18
depends:
- ca-certificates
- libgcc-ng >=12
@@ -16851,108 +25274,111 @@ packages:
- pyopenssl >=22.1
license: Apache-2.0
license_family: Apache
- size: 2863069
- timestamp: 1706635653339
+ size: 2895187
+ timestamp: 1714466138265
- kind: conda
name: openssl
- version: 3.2.1
+ version: 3.3.0
build: hd75f5a5_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.2.1-hd75f5a5_0.conda
- sha256: 20c1b1a34a1831c24d37ed1500ca07300171184af0c66598f3c5ca901634d713
- md5: 3033be9a59fd744172b03971b9ccd081
+ url: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.3.0-hd75f5a5_0.conda
+ sha256: d3889b0c89c2742e92e20f01e8f298b64c221df5d577c639b823a0bfe314e2e3
+ md5: eb8c33aa7929a7714eab8b90c1d88afe
depends:
- ca-certificates
constrains:
- pyopenssl >=22.1
license: Apache-2.0
license_family: Apache
- size: 2509168
- timestamp: 1706636810736
+ size: 2541802
+ timestamp: 1714467068742
- kind: conda
name: orc
- version: 1.9.2
- build: h00e871a_2
- build_number: 2
+ version: 2.0.0
+ build: h17fec99_1
+ build_number: 1
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/orc-1.9.2-h00e871a_2.conda
- sha256: 38cffbde132c5c483b2bc6085913a4a7bf857aee2037c822c98942aa5bccf1eb
- md5: d88b3e7facb31754777da52eb62a2152
+ url: https://conda.anaconda.org/conda-forge/linux-64/orc-2.0.0-h17fec99_1.conda
+ sha256: ccbfb6c2a01259c2c95b5b8139a0c3a8d4ec6240228ad1ac454b41f5fbcfd082
+ md5: d2e0ffa6c3452f0a723a0ef1b96fd1cb
depends:
- libgcc-ng >=12
- - libprotobuf >=4.25.2,<4.25.3.0a0
+ - libprotobuf >=4.25.3,<4.25.4.0a0
- libstdcxx-ng >=12
- libzlib >=1.2.13,<1.3.0a0
- lz4-c >=1.9.3,<1.10.0a0
- - snappy >=1.1.10,<2.0a0
+ - snappy >=1.2.0,<1.3.0a0
- zstd >=1.5.5,<1.6.0a0
license: Apache-2.0
license_family: Apache
- size: 1018520
- timestamp: 1708632574982
+ size: 1029252
+ timestamp: 1712616110941
- kind: conda
name: orc
- version: 1.9.2
- build: h2702c50_2
- build_number: 2
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/orc-1.9.2-h2702c50_2.conda
- sha256: 20f01f34f4b3b535cc6178ced95fb80e2529fd5fb1023fb2816b3625efecd66a
- md5: 836d28bcde876c3cdea970590fd4ad86
+ version: 2.0.0
+ build: h4aad248_1
+ build_number: 1
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/orc-2.0.0-h4aad248_1.conda
+ sha256: 1706ed2e71929f5a2bba0e1041c7ecb064031e7b4ab5862777682c8bdc970bd6
+ md5: b89ff040a46c45fba6687243e09b8509
depends:
- - libprotobuf >=4.25.2,<4.25.3.0a0
+ - __osx >=11.0
+ - libcxx >=16
+ - libprotobuf >=4.25.3,<4.25.4.0a0
- libzlib >=1.2.13,<1.3.0a0
- lz4-c >=1.9.3,<1.10.0a0
- - snappy >=1.1.10,<2.0a0
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
+ - snappy >=1.2.0,<1.3.0a0
- zstd >=1.5.5,<1.6.0a0
license: Apache-2.0
license_family: Apache
- size: 892589
- timestamp: 1708633045018
+ size: 414513
+ timestamp: 1712616646377
- kind: conda
name: orc
- version: 1.9.2
- build: h3758fe2_2
- build_number: 2
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/orc-1.9.2-h3758fe2_2.conda
- sha256: 282af10e88b2f53893addf4896f63b50506bf1d46ffdbc7b5b654a54b39c226e
- md5: 1b5dd250b4d31292ad7e1dbe60d6baae
+ version: 2.0.0
+ build: h7e885a9_1
+ build_number: 1
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/orc-2.0.0-h7e885a9_1.conda
+ sha256: eb8ba5b2c500b990dc75f468dffaf4ba5eca53a8c021b38900247df988d14e4b
+ md5: f61ae80fe162b09c627473932d5dc8c3
depends:
- - __osx >=10.13
- - libcxx >=16
- - libprotobuf >=4.25.2,<4.25.3.0a0
+ - libprotobuf >=4.25.3,<4.25.4.0a0
- libzlib >=1.2.13,<1.3.0a0
- lz4-c >=1.9.3,<1.10.0a0
- - snappy >=1.1.10,<2.0a0
+ - snappy >=1.2.0,<1.3.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc >=14.3,<15
+ - vc14_runtime >=14.29.30139
+ - vc14_runtime >=14.38.33130
- zstd >=1.5.5,<1.6.0a0
license: Apache-2.0
license_family: Apache
- size: 425951
- timestamp: 1708632901861
+ size: 925936
+ timestamp: 1712616706879
- kind: conda
name: orc
- version: 1.9.2
- build: h798d188_2
- build_number: 2
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/orc-1.9.2-h798d188_2.conda
- sha256: eb45795b9d965fe7c066d283a72a883697bc9940d6696b641073d53a332bfa94
- md5: f09fc67b7de2e85b573b929fab0af059
+ version: 2.0.0
+ build: hf146577_1
+ build_number: 1
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/orc-2.0.0-hf146577_1.conda
+ sha256: 801367a030bf6eaf10603c575dbaca439283e449e9cd5bb586b600fb591f5221
+ md5: 7979dbaf686485e12d48e7ca9fcb5a56
depends:
+ - __osx >=10.13
- libcxx >=16
- - libprotobuf >=4.25.2,<4.25.3.0a0
+ - libprotobuf >=4.25.3,<4.25.4.0a0
- libzlib >=1.2.13,<1.3.0a0
- lz4-c >=1.9.3,<1.10.0a0
- - snappy >=1.1.10,<2.0a0
+ - snappy >=1.2.0,<1.3.0a0
- zstd >=1.5.5,<1.6.0a0
license: Apache-2.0
license_family: Apache
- size: 407007
- timestamp: 1708632909550
+ size: 433233
+ timestamp: 1712616573866
- kind: conda
name: overrides
version: 7.7.0
@@ -16970,51 +25396,156 @@ packages:
size: 30232
timestamp: 1706394723472
- kind: conda
- name: owslib
- version: 0.29.3
- build: pyhd8ed1ab_0
- subdir: noarch
- noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/owslib-0.29.3-pyhd8ed1ab_0.conda
- sha256: a0c60ebb81a46886f26b4b27dd7b2a9d0c752261a99d4623257ab3decdeeff51
- md5: 0a27c6854ced0189a5fa350c4064eac9
+ name: owslib
+ version: 0.30.0
+ build: pyhd8ed1ab_0
+ subdir: noarch
+ noarch: python
+ url: https://conda.anaconda.org/conda-forge/noarch/owslib-0.30.0-pyhd8ed1ab_0.conda
+ sha256: 4b20ce4372cca014d7f858ddf7abdd2a8938a5a02a2a1d78532f0acd182c5e3e
+ md5: 003ee5a041a878daa8fbcfcf12b388a8
+ depends:
+ - dataclasses
+ - lxml
+ - python >=3.8
+ - python-dateutil >=1.5
+ - pytz
+ - pyyaml
+ - requests >=1.0
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 139478
+ timestamp: 1710176364941
+- kind: conda
+ name: packaging
+ version: '24.0'
+ build: pyhd8ed1ab_0
+ subdir: noarch
+ noarch: python
+ url: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda
+ sha256: a390182d74c31dfd713c16db888c92c277feeb6d1fe96ff9d9c105f9564be48a
+ md5: 248f521b64ce055e7feae3105e7abeb8
+ depends:
+ - python >=3.8
+ license: Apache-2.0
+ license_family: APACHE
+ size: 49832
+ timestamp: 1710076089469
+- kind: conda
+ name: pandas
+ version: 2.2.2
+ build: py310h276d7da_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/pandas-2.2.2-py310h276d7da_0.conda
+ sha256: ae11c7be838305f79834e4e6212d12b6d761b731995f8dfe304ad8592804ac70
+ md5: fdd9410c5d466ee1b75346365e331b6d
+ depends:
+ - libcxx >=16
+ - numpy >=1.22.4,<2.0a0
+ - python >=3.10,<3.11.0a0
+ - python-dateutil >=2.8.1
+ - python-tzdata >=2022a
+ - python_abi 3.10.* *_cp310
+ - pytz >=2020.1
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 12152782
+ timestamp: 1712783095703
+- kind: conda
+ name: pandas
+ version: 2.2.2
+ build: py310h401b61c_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/pandas-2.2.2-py310h401b61c_0.conda
+ sha256: 257f49be55b07bc8f6d8c00a5c6bfa23fa382195c9809ef56c5208eb9f6197a3
+ md5: f877f61cffe0418737b88a363942c6d1
+ depends:
+ - libcxx >=16
+ - numpy >=1.22.4,<2.0a0
+ - python >=3.10,<3.11.0a0
+ - python >=3.10,<3.11.0a0 *_cpython
+ - python-dateutil >=2.8.1
+ - python-tzdata >=2022a
+ - python_abi 3.10.* *_cp310
+ - pytz >=2020.1
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 12118921
+ timestamp: 1712783355910
+- kind: conda
+ name: pandas
+ version: 2.2.2
+ build: py310hcc13569_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/pandas-2.2.2-py310hcc13569_0.conda
+ sha256: e636b6affa03646a554f58c97171a872f23e796d7f78fe5ba1e7b7eaaa77809e
+ md5: 96910063174ce34fc15609081efc3e5d
+ depends:
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
+ - numpy >=1.22.4,<2.0a0
+ - python >=3.10,<3.11.0a0
+ - python-dateutil >=2.8.1
+ - python-tzdata >=2022a
+ - python_abi 3.10.* *_cp310
+ - pytz >=2020.1
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 12990295
+ timestamp: 1712782533767
+- kind: conda
+ name: pandas
+ version: 2.2.2
+ build: py310hecd3228_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/pandas-2.2.2-py310hecd3228_0.conda
+ sha256: 6eba2d972a523f248792203e4029716bf7e5d5e48590224ab30dba708645138e
+ md5: 79594f7c3379f37ef2c729c5fa991fdd
depends:
- - lxml
- - python >=3.8
- - python-dateutil >=1.5
- - pytz
- - pyyaml
- - requests >=1.0
+ - numpy >=1.22.4,<2.0a0
+ - python >=3.10,<3.11.0a0
+ - python-dateutil >=2.8.1
+ - python-tzdata >=2022a
+ - python_abi 3.10.* *_cp310
+ - pytz >=2020.1
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
license: BSD-3-Clause
license_family: BSD
- size: 138777
- timestamp: 1699364246060
+ size: 11913853
+ timestamp: 1712783385638
- kind: conda
- name: packaging
- version: '23.2'
- build: pyhd8ed1ab_0
- subdir: noarch
- noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/packaging-23.2-pyhd8ed1ab_0.conda
- sha256: 69b3ace6cca2dab9047b2c24926077d81d236bef45329d264b394001e3c3e52f
- md5: 79002079284aa895f883c6b7f3f88fd6
+ name: pandas
+ version: 2.2.2
+ build: py311h320fe9a_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/pandas-2.2.2-py311h320fe9a_0.conda
+ sha256: 3c04d27e56972321e2bc84bb923452414e6b037b95ffc8797cef5d896e663243
+ md5: c79e96ece4110fdaf2657c9f8e16f749
depends:
- - python >=3.7
- license: Apache-2.0
- license_family: APACHE
- size: 49452
- timestamp: 1696202521121
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
+ - numpy >=1.23.5,<2.0a0
+ - python >=3.11,<3.12.0a0
+ - python-dateutil >=2.8.1
+ - python-tzdata >=2022a
+ - python_abi 3.11.* *_cp311
+ - pytz >=2020.1
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 15667401
+ timestamp: 1712782715072
- kind: conda
name: pandas
- version: 2.1.4
- build: py311h1eadf79_0
+ version: 2.2.2
+ build: py311h8f6166a_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/pandas-2.1.4-py311h1eadf79_0.conda
- sha256: 994d226d29293c1b118c0902af50719c5fc25c63c2c6cf7be7808b44226e19eb
- md5: 905aff7f27a734e251526b9a7ecc20ac
+ url: https://conda.anaconda.org/conda-forge/osx-64/pandas-2.2.2-py311h8f6166a_0.conda
+ sha256: c095d4692d786f674d75a6a4a1f512304e7abc0dcd7487e70cd786d104659aa9
+ md5: a218d0ff002600e778badcffecd3db2f
depends:
- - __osx >=10.9
- - libcxx >=16.0.6
+ - libcxx >=16
- numpy >=1.23.5,<2.0a0
- python >=3.11,<3.12.0a0
- python-dateutil >=2.8.1
@@ -17023,63 +25554,104 @@ packages:
- pytz >=2020.1
license: BSD-3-Clause
license_family: BSD
- size: 14378188
- timestamp: 1702058207156
+ size: 14874185
+ timestamp: 1712783232430
- kind: conda
name: pandas
- version: 2.1.4
- build: py311h320fe9a_0
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/pandas-2.1.4-py311h320fe9a_0.conda
- sha256: 4f40035c77c381e0151c0fb0b39d0dfc343947f7d283c2bced2123273c5d4884
- md5: e44ccb61b6621bf3f8053ae66eba7397
+ version: 2.2.2
+ build: py311hf63dbb6_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/pandas-2.2.2-py311hf63dbb6_0.conda
+ sha256: d1c8d383e64bb91657619d6cdb17b7b9b389686af21b305e92838080d88091b2
+ md5: 50c55e9f8f1a316cf3291ee2c6c5f777
depends:
- - libgcc-ng >=12
- - libstdcxx-ng >=12
- numpy >=1.23.5,<2.0a0
- python >=3.11,<3.12.0a0
- python-dateutil >=2.8.1
- python-tzdata >=2022a
- python_abi 3.11.* *_cp311
- pytz >=2020.1
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
license: BSD-3-Clause
license_family: BSD
- size: 14990951
- timestamp: 1702057771639
+ size: 14579132
+ timestamp: 1712783235905
- kind: conda
name: pandas
- version: 2.1.4
- build: py311hf63dbb6_0
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/pandas-2.1.4-py311hf63dbb6_0.conda
- sha256: be6d27e9c7e83c4dbc40003f2d62b79a5af0a3febb3a69a496d867763d983958
- md5: 5179a87c529fa08864d899f05e16345b
+ version: 2.2.2
+ build: py311hfbe21a1_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/pandas-2.2.2-py311hfbe21a1_0.conda
+ sha256: 59a7755030d79cf1639cb3779016c679b8adca05d1e67e215ba0a4a1994fd9c0
+ md5: 28caba700adb764f4f3defe92d704ccc
depends:
+ - libcxx >=16
- numpy >=1.23.5,<2.0a0
- python >=3.11,<3.12.0a0
+ - python >=3.11,<3.12.0a0 *_cpython
- python-dateutil >=2.8.1
- python-tzdata >=2022a
- python_abi 3.11.* *_cp311
- pytz >=2020.1
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 14779200
+ timestamp: 1712783149487
+- kind: conda
+ name: pandas
+ version: 2.2.2
+ build: py312h2ab9e98_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/pandas-2.2.2-py312h2ab9e98_0.conda
+ sha256: 3c7eb42f7e57d2508257c1a9928790109bda2956eddc696183c23673ab0f30a2
+ md5: 32723785b7b4fca8784cc7cadb097009
+ depends:
+ - numpy >=1.26.4,<2.0a0
+ - python >=3.12,<3.13.0a0
+ - python-dateutil >=2.8.1
+ - python-tzdata >=2022a
+ - python_abi 3.12.* *_cp312
+ - pytz >=2020.1
- ucrt >=10.0.20348.0
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
license: BSD-3-Clause
license_family: BSD
- size: 13785578
- timestamp: 1702058272745
+ size: 14205197
+ timestamp: 1712786517429
+- kind: conda
+ name: pandas
+ version: 2.2.2
+ build: py312h83c8a23_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/pandas-2.2.2-py312h83c8a23_0.conda
+ sha256: 9f09241abc755de6d1cdc432e5ab270253e0c6c50c5b5ea6d8065865228d5cc4
+ md5: b422a5d39ff0cd72923aef807f280145
+ depends:
+ - libcxx >=16
+ - numpy >=1.26.4,<2.0a0
+ - python >=3.12,<3.13.0a0
+ - python-dateutil >=2.8.1
+ - python-tzdata >=2022a
+ - python_abi 3.12.* *_cp312
+ - pytz >=2020.1
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 14597189
+ timestamp: 1712783319617
- kind: conda
name: pandas
- version: 2.1.4
- build: py312h9e53831_0
+ version: 2.2.2
+ build: py312h88edd18_0
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/pandas-2.1.4-py312h9e53831_0.conda
- sha256: 0262d7d91d74b8f41c5b051b58b4159d8a9f2a226e4f90157368a85eeabb05be
- md5: e85369cef4da4eb9e9c44fcc3f43c62b
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/pandas-2.2.2-py312h88edd18_0.conda
+ sha256: c905f6479913e06d6c5ec9ba1f82415d6fad1a40f9d9876115c942bbfa39bc2f
+ md5: c51f44ebc5c37c2633875979e9669f61
depends:
- - __osx >=10.9
- - libcxx >=16.0.6
- - numpy >=1.26.2,<2.0a0
+ - libcxx >=16
+ - numpy >=1.26.4,<2.0a0
- python >=3.12,<3.13.0a0
- python >=3.12,<3.13.0a0 *_cpython
- python-dateutil >=2.8.1
@@ -17088,51 +25660,72 @@ packages:
- pytz >=2020.1
license: BSD-3-Clause
license_family: BSD
- size: 13892865
- timestamp: 1702058090296
+ size: 14553299
+ timestamp: 1712783235932
+- kind: conda
+ name: pandas
+ version: 2.2.2
+ build: py312hfb8ada1_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/pandas-2.2.2-py312hfb8ada1_0.conda
+ sha256: c8f3a8f7581b6a3e378576005d3f292b9f03992bfb30c25ebe9553ea58093cd1
+ md5: 3ccf705c4375feff4879ed4dd8c4cd90
+ depends:
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
+ - numpy >=1.26.4,<2.0a0
+ - python >=3.12,<3.13.0a0
+ - python-dateutil >=2.8.1
+ - python-tzdata >=2022a
+ - python_abi 3.12.* *_cp312
+ - pytz >=2020.1
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 15457103
+ timestamp: 1712782531520
- kind: conda
name: pandas-stubs
- version: 2.2.0.240218
+ version: 2.2.1.240316
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda
- sha256: 1c50e2c7de3f7908316cd3f98775b56862d08a1c39fa7d948716d272688bd8eb
- md5: 5756d2cc5343cc59c0667f4efe653a3f
+ url: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda
+ sha256: 34883e8d436a37858a88d7a756b35142d63d042c8b416b6ad83278cbce7abe3e
+ md5: 309fb20ff5d681cb3c783cc0c800d770
depends:
- numpy >=1.26.0
- python >=3.9
- types-pytz >=2022.1.1
license: BSD-3-Clause
license_family: BSD
- size: 97984
- timestamp: 1708439836841
+ size: 98146
+ timestamp: 1710768532899
- kind: conda
name: pandera
- version: 0.18.0
+ version: 0.18.3
build: hd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.0-hd8ed1ab_0.conda
- sha256: 86decd459a369fc475d0f102cac3e31cec566bfb87c2db89f770b397b0f812fd
- md5: e960b9d610b62715f72187545b77cb8b
+ url: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda
+ sha256: 80daf30527d62c5694a89ae551be4aff40d7a82c9d25b73ea6b6e24309a5a50d
+ md5: a8e2857c67ded4b6d0ab6fabbb9ec065
depends:
- - pandera-base >=0.18.0,<0.18.1.0a0
+ - pandera-base >=0.18.3,<0.18.4.0a0
license: MIT
license_family: MIT
- size: 6969
- timestamp: 1702110158705
+ size: 6858
+ timestamp: 1710200385758
- kind: conda
name: pandera-base
- version: 0.18.0
+ version: 0.18.3
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.0-pyhd8ed1ab_0.conda
- sha256: 4691edd69bda437d54962dbaa9aeb889da656e33d135d7620557d63398402821
- md5: f7214927ade78c56a6ffc765f9cdac40
+ url: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda
+ sha256: 00b0994260df53f85077e478ba6dbdbc227f62c4e077ec6a7906722e91df223f
+ md5: e96ee36cbebac49688a927b3b74c38ed
depends:
- - multimethod
+ - multimethod <=1.10.0
- numpy >=1.19.0
- packaging >=20.0
- pandas >=1.2.0
@@ -17143,8 +25736,8 @@ packages:
- wrapt
license: MIT
license_family: MIT
- size: 127533
- timestamp: 1702110150327
+ size: 128349
+ timestamp: 1710200381463
- kind: conda
name: pandoc
version: 3.1.11.1
@@ -17210,19 +25803,19 @@ packages:
timestamp: 1631603397334
- kind: conda
name: parso
- version: 0.8.3
+ version: 0.8.4
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/parso-0.8.3-pyhd8ed1ab_0.tar.bz2
- sha256: 4e26d5daf5de0e31aa5e74ac56386a361b202433b83f024fdadbf07d4a244da4
- md5: 17a565a0c3899244e938cdf417e7b094
+ url: https://conda.anaconda.org/conda-forge/noarch/parso-0.8.4-pyhd8ed1ab_0.conda
+ sha256: bfe404eebb930cc41782d34f8fc04c0388ea692eeebe2c5fc28df8ec8d4d61ae
+ md5: 81534b420deb77da8833f2289b8d47ac
depends:
- python >=3.6
license: MIT
license_family: MIT
- size: 71048
- timestamp: 1638335054552
+ size: 75191
+ timestamp: 1712320447201
- kind: conda
name: partd
version: 1.4.1
@@ -17257,27 +25850,27 @@ packages:
timestamp: 1702250135032
- kind: conda
name: pcre2
- version: '10.42'
+ version: '10.43'
build: h0ad2156_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/pcre2-10.42-h0ad2156_0.conda
- sha256: 689559d94b64914e503d2ced53b78afc19562ed1ccfb284040797a6d41bb564c
- md5: 41de8bab2d5e5cd6daaba1896e81d366
+ url: https://conda.anaconda.org/conda-forge/osx-64/pcre2-10.43-h0ad2156_0.conda
+ sha256: 226714bbf89d45bf7da4c7551e21b8a833f51d33379fe3dfbfe31b72832d4dba
+ md5: 9c8651803886ce9d5983e107a0df4ea8
depends:
- bzip2 >=1.0.8,<2.0a0
- libzlib >=1.2.13,<1.3.0a0
license: BSD-3-Clause
license_family: BSD
- size: 899794
- timestamp: 1698610978148
+ size: 836581
+ timestamp: 1708118455741
- kind: conda
name: pcre2
- version: '10.42'
+ version: '10.43'
build: h17e33f8_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/pcre2-10.42-h17e33f8_0.conda
- sha256: 25e33b148478de58842ccc018fbabb414665de59270476e92c951203d4485bb1
- md5: 59610c61da3af020289a806ec9c6a7fd
+ url: https://conda.anaconda.org/conda-forge/win-64/pcre2-10.43-h17e33f8_0.conda
+ sha256: 9a82c7d49c4771342b398661862975efb9c30e7af600b5d2e08a0bf416fda492
+ md5: d0485b8aa2cedb141a7bd27b4efa4c9c
depends:
- bzip2 >=1.0.8,<2.0a0
- libzlib >=1.2.13,<1.3.0a0
@@ -17286,144 +25879,153 @@ packages:
- vc14_runtime >=14.29.30139
license: BSD-3-Clause
license_family: BSD
- size: 880802
- timestamp: 1698611415241
+ size: 818317
+ timestamp: 1708118868321
- kind: conda
name: pcre2
- version: '10.42'
+ version: '10.43'
build: h26f9a81_0
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/pcre2-10.42-h26f9a81_0.conda
- sha256: 0335a08349ecd8dce0b81699fcd61b58415e658fe953feb27316fbb994df0685
- md5: 3e12888ecc8ee1ebee2eef9b7856357a
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/pcre2-10.43-h26f9a81_0.conda
+ sha256: 4bf7b5fa091f5e7ab0b78778458be1e81c1ffa182b63795734861934945a63a7
+ md5: 1ddc87f00014612830f3235b5ad6d821
depends:
- bzip2 >=1.0.8,<2.0a0
- libzlib >=1.2.13,<1.3.0a0
license: BSD-3-Clause
license_family: BSD
- size: 619848
- timestamp: 1698610997157
+ size: 615219
+ timestamp: 1708118184900
- kind: conda
name: pcre2
- version: '10.42'
+ version: '10.43'
build: hcad00b1_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/pcre2-10.42-hcad00b1_0.conda
- sha256: 3ca54ff0abcda964af7d4724d389ae20d931159ae1881cfe57ad4b0ab9e6a380
- md5: 679c8961826aa4b50653bce17ee52abe
+ url: https://conda.anaconda.org/conda-forge/linux-64/pcre2-10.43-hcad00b1_0.conda
+ sha256: 766dd986a7ed6197676c14699000bba2625fd26c8a890fcb7a810e5cf56155bc
+ md5: 8292dea9e022d9610a11fce5e0896ed8
depends:
- bzip2 >=1.0.8,<2.0a0
- libgcc-ng >=12
- libzlib >=1.2.13,<1.3.0a0
license: BSD-3-Clause
license_family: BSD
- size: 1017235
- timestamp: 1698610864983
+ size: 950847
+ timestamp: 1708118050286
- kind: conda
name: pdal
- version: 2.6.3
- build: h312035a_2
- build_number: 2
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/pdal-2.6.3-h312035a_2.conda
- sha256: a45a3b2d5dcd406bf71c82168d68ca1467f242d578b5695a50f216d84ea91d3b
- md5: 67282904d6a782df61f861c02d99fffc
+ version: 2.7.1
+ build: h78909d1_6
+ build_number: 6
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/pdal-2.7.1-h78909d1_6.conda
+ sha256: 82c566f98501949015fb17371c29472154f1d1ba619ffcb008214d750ace4086
+ md5: 1ca3569e9c54880406f81cc6844a8b8b
depends:
+ - blas
- ceres-solver >=2.2.0,<2.3.0a0
- curl
- draco
- eigen >=3.4.0,<3.4.1.0a0
- geotiff >=1.7.1,<1.8.0a0
- hdf5 >=1.14.3,<1.14.4.0a0
- - libgcc-ng >=12
- - libgdal >=3.8.4,<3.9.0a0
+ - libgdal >=3.8.5,<3.9.0a0
- libkml >=1.3.0,<1.4.0a0
- libpq >=16.2,<17.0a0
- - libstdcxx-ng >=12
- - libxml2 >=2.12.5,<3.0a0
+ - libxml2 >=2.12.6,<3.0a0
- libzlib >=1.2.13,<1.3.0a0
+ - mkl
- nitro
- - tiledb >=2.20.0,<2.21.0a0
+ - proj >=9.4.0,<9.4.1.0a0
+ - proj >=9.4.0,<9.5.0a0
+ - tiledb >=2.22.0,<2.23.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
- zlib
- zstd >=1.5.5,<1.6.0a0
license: BSD-3-Clause
license_family: BSD
- size: 4366262
- timestamp: 1708747168814
+ size: 2977694
+ timestamp: 1713341903135
- kind: conda
name: pdal
- version: 2.6.3
- build: h3c564ca_2
- build_number: 2
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/pdal-2.6.3-h3c564ca_2.conda
- sha256: dbc0a8ca9018f8ac9dfab67a27fed83b9664d8fcc00a977dc7ac8f84522495d3
- md5: 126b8ebe75cfd5cbb0113bcc716d0aa1
+ version: 2.7.1
+ build: h86e06d4_6
+ build_number: 6
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/pdal-2.7.1-h86e06d4_6.conda
+ sha256: e03a1a8c7b4ba7c71905f526bda3665750572278f71b26045c776881353a3c7f
+ md5: c41721c73ca819892e831ce75f4c31a4
depends:
+ - __glibc >=2.17,<3.0.a0
- ceres-solver >=2.2.0,<2.3.0a0
- curl
- draco
- eigen >=3.4.0,<3.4.1.0a0
- geotiff >=1.7.1,<1.8.0a0
- hdf5 >=1.14.3,<1.14.4.0a0
- - libcxx >=16
- - libgdal >=3.8.4,<3.9.0a0
+ - libgcc-ng >=12
+ - libgdal >=3.8.5,<3.9.0a0
- libkml >=1.3.0,<1.4.0a0
- libpq >=16.2,<17.0a0
- - libxml2 >=2.12.5,<3.0a0
+ - libstdcxx-ng >=12
+ - libxml2 >=2.12.6,<3.0a0
- libzlib >=1.2.13,<1.3.0a0
- nitro
- - tiledb >=2.20.0,<2.21.0a0
+ - proj >=9.4.0,<9.4.1.0a0
+ - proj >=9.4.0,<9.5.0a0
+ - tiledb >=2.22.0,<2.23.0a0
- zlib
- zstd >=1.5.5,<1.6.0a0
license: BSD-3-Clause
license_family: BSD
- size: 2755522
- timestamp: 1708748158901
+ size: 4412694
+ timestamp: 1713340464294
- kind: conda
name: pdal
- version: 2.6.3
- build: h572f625_2
- build_number: 2
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/pdal-2.6.3-h572f625_2.conda
- sha256: 307c2fb89a12ce5c88590b7d0519d42f5b945ef96fcf306854dd9b03c20ef706
- md5: 02aa67762f7514d208b5a79e2a13327e
+ version: 2.7.1
+ build: hacf74ca_6
+ build_number: 6
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/pdal-2.7.1-hacf74ca_6.conda
+ sha256: ef358a6bf49682163c6b5501a08c99900e94fa08dc11a7d60333202b3547e061
+ md5: c3b9c2f439e50308963d4c8bc94f71bd
depends:
- - blas
+ - __osx >=10.15
- ceres-solver >=2.2.0,<2.3.0a0
- curl
- draco
- eigen >=3.4.0,<3.4.1.0a0
- geotiff >=1.7.1,<1.8.0a0
- hdf5 >=1.14.3,<1.14.4.0a0
- - libgdal >=3.8.4,<3.9.0a0
+ - libcxx >=16
+ - libgdal >=3.8.5,<3.9.0a0
- libkml >=1.3.0,<1.4.0a0
- libpq >=16.2,<17.0a0
- - libxml2 >=2.12.5,<3.0a0
+ - libxml2 >=2.12.6,<3.0a0
- libzlib >=1.2.13,<1.3.0a0
- - mkl
- nitro
- - tiledb >=2.20.0,<2.21.0a0
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
+ - proj >=9.4.0,<9.4.1.0a0
+ - proj >=9.4.0,<9.5.0a0
+ - tiledb >=2.22.0,<2.23.0a0
- zlib
- zstd >=1.5.5,<1.6.0a0
license: BSD-3-Clause
license_family: BSD
- size: 2930021
- timestamp: 1708749061986
+ size: 3236656
+ timestamp: 1713341722264
- kind: conda
name: pdal
- version: 2.6.3
- build: hd2646b2_2
- build_number: 2
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/pdal-2.6.3-hd2646b2_2.conda
- sha256: c53f1f6ead60b44018d4ff8c219f8d347d288caf954fa90dff3c951f79c47ce5
- md5: fcfac6b09723f9a7b5f91814cc22365b
+ version: 2.7.1
+ build: hfa75dc8_6
+ build_number: 6
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/pdal-2.7.1-hfa75dc8_6.conda
+ sha256: 7c2d1d2bbae8886b2543dc6c871d5a20598e93b0a075ff8ef7fdf55baf717928
+ md5: 8c5cc6d1cdc0a1de0288e60d3a0c1929
depends:
+ - __osx >=11.0
- ceres-solver >=2.2.0,<2.3.0a0
- curl
- draco
@@ -17431,21 +26033,21 @@ packages:
- geotiff >=1.7.1,<1.8.0a0
- hdf5 >=1.14.3,<1.14.4.0a0
- libcxx >=16
- - libgdal >=3.8.4,<3.9.0a0
+ - libgdal >=3.8.5,<3.9.0a0
- libkml >=1.3.0,<1.4.0a0
- libpq >=16.2,<17.0a0
- - libxml2 >=2.12.5,<3.0a0
+ - libxml2 >=2.12.6,<3.0a0
- libzlib >=1.2.13,<1.3.0a0
- nitro
- - tiledb >=2.20.0,<2.21.0a0
+ - proj >=9.4.0,<9.4.1.0a0
+ - proj >=9.4.0,<9.5.0a0
+ - tiledb >=2.22.0,<2.23.0a0
- zlib
- zstd >=1.5.5,<1.6.0a0
- constrains:
- - __osx >=10.15
license: BSD-3-Clause
license_family: BSD
- size: 3068114
- timestamp: 1708748417977
+ size: 2842660
+ timestamp: 1713341970205
- kind: conda
name: pep517
version: 0.13.0
@@ -17478,29 +26080,197 @@ packages:
size: 53600
timestamp: 1706113273252
- kind: conda
- name: pickleshare
- version: 0.7.5
- build: py_1003
- build_number: 1003
- subdir: noarch
- noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/pickleshare-0.7.5-py_1003.tar.bz2
- sha256: a1ed1a094dd0d1b94a09ed85c283a0eb28943f2e6f22161fb45e128d35229738
- md5: 415f0ebb6198cc2801c73438a9fb5761
+ name: pickleshare
+ version: 0.7.5
+ build: py_1003
+ build_number: 1003
+ subdir: noarch
+ noarch: python
+ url: https://conda.anaconda.org/conda-forge/noarch/pickleshare-0.7.5-py_1003.tar.bz2
+ sha256: a1ed1a094dd0d1b94a09ed85c283a0eb28943f2e6f22161fb45e128d35229738
+ md5: 415f0ebb6198cc2801c73438a9fb5761
+ depends:
+ - python >=3
+ license: MIT
+ license_family: MIT
+ size: 9332
+ timestamp: 1602536313357
+- kind: conda
+ name: pillow
+ version: 10.3.0
+ build: py310h81a8c2e_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/pillow-10.3.0-py310h81a8c2e_0.conda
+ sha256: ee1f5c787edb3aaa68003be7d8329b1472141dcb4483398f84137b2205eeb934
+ md5: b43bee0bd86ae53a15ebc2858b737e5d
+ depends:
+ - freetype >=2.12.1,<3.0a0
+ - lcms2 >=2.16,<3.0a0
+ - libjpeg-turbo >=3.0.0,<4.0a0
+ - libtiff >=4.6.0,<4.7.0a0
+ - libwebp-base >=1.3.2,<2.0a0
+ - libxcb >=1.15,<1.16.0a0
+ - libzlib >=1.2.13,<1.3.0a0
+ - openjpeg >=2.5.2,<3.0a0
+ - python >=3.10,<3.11.0a0
+ - python >=3.10,<3.11.0a0 *_cpython
+ - python_abi 3.10.* *_cp310
+ - tk >=8.6.13,<8.7.0a0
+ license: HPND
+ size: 42031745
+ timestamp: 1712155173373
+- kind: conda
+ name: pillow
+ version: 10.3.0
+ build: py310h99295b8_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/pillow-10.3.0-py310h99295b8_0.conda
+ sha256: d642d985b3c84d753520994491e34aae31d05a6100683a51b7c9ae79915fe50d
+ md5: 7c5e25679e87f90b3068ec4e539bd4c3
+ depends:
+ - freetype >=2.12.1,<3.0a0
+ - lcms2 >=2.16,<3.0a0
+ - libjpeg-turbo >=3.0.0,<4.0a0
+ - libtiff >=4.6.0,<4.7.0a0
+ - libwebp-base >=1.3.2,<2.0a0
+ - libxcb >=1.15,<1.16.0a0
+ - libzlib >=1.2.13,<1.3.0a0
+ - openjpeg >=2.5.2,<3.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - tk >=8.6.13,<8.7.0a0
+ license: HPND
+ size: 41184672
+ timestamp: 1712154890126
+- kind: conda
+ name: pillow
+ version: 10.3.0
+ build: py310hf5d6e66_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/pillow-10.3.0-py310hf5d6e66_0.conda
+ sha256: d64813920c313c0e44040cd257c6e238a72ada45e8c2ce47c007deb7f049cba5
+ md5: 510e3e5f72df4cb88e99cdd5ba730330
+ depends:
+ - freetype >=2.12.1,<3.0a0
+ - lcms2 >=2.16,<3.0a0
+ - libjpeg-turbo >=3.0.0,<4.0a0
+ - libtiff >=4.6.0,<4.7.0a0
+ - libwebp-base >=1.3.2,<2.0a0
+ - libxcb >=1.15,<1.16.0a0
+ - libzlib >=1.2.13,<1.3.0a0
+ - openjpeg >=2.5.2,<3.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - tk >=8.6.13,<8.7.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: HPND
+ size: 41590880
+ timestamp: 1712155287394
+- kind: conda
+ name: pillow
+ version: 10.3.0
+ build: py310hf73ecf8_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/pillow-10.3.0-py310hf73ecf8_0.conda
+ sha256: 89caf2bb9b6d6d0c874590128b36676615750b5ef121fab514bc737dc48534da
+ md5: 1de56cf017dfd02aa84093206a0141a8
+ depends:
+ - freetype >=2.12.1,<3.0a0
+ - lcms2 >=2.16,<3.0a0
+ - libgcc-ng >=12
+ - libjpeg-turbo >=3.0.0,<4.0a0
+ - libtiff >=4.6.0,<4.7.0a0
+ - libwebp-base >=1.3.2,<2.0a0
+ - libxcb >=1.15,<1.16.0a0
+ - libzlib >=1.2.13,<1.3.0a0
+ - openjpeg >=2.5.2,<3.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - tk >=8.6.13,<8.7.0a0
+ license: HPND
+ size: 41783273
+ timestamp: 1712154626576
+- kind: conda
+ name: pillow
+ version: 10.3.0
+ build: py311h0b5d0a1_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/pillow-10.3.0-py311h0b5d0a1_0.conda
+ sha256: 756788e2fa2088131da13cfaf923e33b8e5411fa07cac01eba7dfc95ef769920
+ md5: 15ea30bca869d60e6de571232638a701
+ depends:
+ - freetype >=2.12.1,<3.0a0
+ - lcms2 >=2.16,<3.0a0
+ - libjpeg-turbo >=3.0.0,<4.0a0
+ - libtiff >=4.6.0,<4.7.0a0
+ - libwebp-base >=1.3.2,<2.0a0
+ - libxcb >=1.15,<1.16.0a0
+ - libzlib >=1.2.13,<1.3.0a0
+ - openjpeg >=2.5.2,<3.0a0
+ - python >=3.11,<3.12.0a0
+ - python >=3.11,<3.12.0a0 *_cpython
+ - python_abi 3.11.* *_cp311
+ - tk >=8.6.13,<8.7.0a0
+ license: HPND
+ size: 41877756
+ timestamp: 1712155234508
+- kind: conda
+ name: pillow
+ version: 10.3.0
+ build: py311h18e6fac_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/pillow-10.3.0-py311h18e6fac_0.conda
+ sha256: 6e54cc2acead8884e81e3e1b4f299b18d5daa0e3d11f4db5686db9e2ada2a353
+ md5: 6c520a9d36c9d7270988c7a6c360d6d4
+ depends:
+ - freetype >=2.12.1,<3.0a0
+ - lcms2 >=2.16,<3.0a0
+ - libgcc-ng >=12
+ - libjpeg-turbo >=3.0.0,<4.0a0
+ - libtiff >=4.6.0,<4.7.0a0
+ - libwebp-base >=1.3.2,<2.0a0
+ - libxcb >=1.15,<1.16.0a0
+ - libzlib >=1.2.13,<1.3.0a0
+ - openjpeg >=2.5.2,<3.0a0
+ - python >=3.11,<3.12.0a0
+ - python_abi 3.11.* *_cp311
+ - tk >=8.6.13,<8.7.0a0
+ license: HPND
+ size: 42600867
+ timestamp: 1712154582003
+- kind: conda
+ name: pillow
+ version: 10.3.0
+ build: py311h1b85569_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/pillow-10.3.0-py311h1b85569_0.conda
+ sha256: ae51c9a8b900396f819840b6be0d8e72180af4e5e913cfa54a673bdaec70cc35
+ md5: 881ad821b527c802f1538347cf167449
depends:
- - python >=3
- license: MIT
- license_family: MIT
- size: 9332
- timestamp: 1602536313357
+ - freetype >=2.12.1,<3.0a0
+ - lcms2 >=2.16,<3.0a0
+ - libjpeg-turbo >=3.0.0,<4.0a0
+ - libtiff >=4.6.0,<4.7.0a0
+ - libwebp-base >=1.3.2,<2.0a0
+ - libxcb >=1.15,<1.16.0a0
+ - libzlib >=1.2.13,<1.3.0a0
+ - openjpeg >=2.5.2,<3.0a0
+ - python >=3.11,<3.12.0a0
+ - python_abi 3.11.* *_cp311
+ - tk >=8.6.13,<8.7.0a0
+ license: HPND
+ size: 41308782
+ timestamp: 1712154783659
- kind: conda
name: pillow
- version: 10.2.0
- build: py311h4dd8a23_0
+ version: 10.3.0
+ build: py311h6819b35_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/pillow-10.2.0-py311h4dd8a23_0.conda
- sha256: 609d0106c35798345eb155605d21d8dfee0608d68bd51a97f7842d7c73ec10f8
- md5: 8e4d6eed54fea0725d77c0a333e9fa51
+ url: https://conda.anaconda.org/conda-forge/win-64/pillow-10.3.0-py311h6819b35_0.conda
+ sha256: aaf367926867e0cfe727b4f64b95d78b9db9166e634cd26ec6f847cdcb0e5adb
+ md5: 86b3e331bf65cca7b8b5aacf9fefa1be
depends:
- freetype >=2.12.1,<3.0a0
- lcms2 >=2.16,<3.0a0
@@ -17509,7 +26279,7 @@ packages:
- libwebp-base >=1.3.2,<2.0a0
- libxcb >=1.15,<1.16.0a0
- libzlib >=1.2.13,<1.3.0a0
- - openjpeg >=2.5.0,<3.0a0
+ - openjpeg >=2.5.2,<3.0a0
- python >=3.11,<3.12.0a0
- python_abi 3.11.* *_cp311
- tk >=8.6.13,<8.7.0a0
@@ -17517,40 +26287,39 @@ packages:
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
license: HPND
- size: 42099257
- timestamp: 1704252849476
+ size: 41717626
+ timestamp: 1712155076324
- kind: conda
name: pillow
- version: 10.2.0
- build: py311ha6c5da5_0
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/pillow-10.2.0-py311ha6c5da5_0.conda
- sha256: 3cd4827d822c9888b672bfac9017e905348ac5bd2237a98b30a734ed6573b248
- md5: a5ccd7f2271f28b7d2de0b02b64e3796
+ version: 10.3.0
+ build: py312h0c923fa_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/pillow-10.3.0-py312h0c923fa_0.conda
+ sha256: 3e33ce8ba364948eeeeb06da435059b1ed0e6cfb2b1195931b76e190ee671310
+ md5: 6f0591ae972e9b815739da3392fbb3c3
depends:
- freetype >=2.12.1,<3.0a0
- lcms2 >=2.16,<3.0a0
- - libgcc-ng >=12
- libjpeg-turbo >=3.0.0,<4.0a0
- libtiff >=4.6.0,<4.7.0a0
- libwebp-base >=1.3.2,<2.0a0
- libxcb >=1.15,<1.16.0a0
- libzlib >=1.2.13,<1.3.0a0
- - openjpeg >=2.5.0,<3.0a0
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - openjpeg >=2.5.2,<3.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
- tk >=8.6.13,<8.7.0a0
license: HPND
- size: 41629216
- timestamp: 1704252244851
+ size: 42531277
+ timestamp: 1712154782302
- kind: conda
name: pillow
- version: 10.2.0
- build: py311hea5c87a_0
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/pillow-10.2.0-py311hea5c87a_0.conda
- sha256: c3f3d2276943d5bf27d184df76dcef15ad120d23f9eea92e05340093acee98fc
- md5: 1709b31ce50343c7a7b3940ed30cc429
+ version: 10.3.0
+ build: py312h6f6a607_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/pillow-10.3.0-py312h6f6a607_0.conda
+ sha256: f1621c28346609886ccce14b6ae0069b5cb34925ace73e05a8c06770d2ad7a19
+ md5: 8d5f5f1fa36200f1ef987299a47de403
depends:
- freetype >=2.12.1,<3.0a0
- lcms2 >=2.16,<3.0a0
@@ -17559,21 +26328,24 @@ packages:
- libwebp-base >=1.3.2,<2.0a0
- libxcb >=1.15,<1.16.0a0
- libzlib >=1.2.13,<1.3.0a0
- - openjpeg >=2.5.0,<3.0a0
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - openjpeg >=2.5.2,<3.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
- tk >=8.6.13,<8.7.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
license: HPND
- size: 42176355
- timestamp: 1704252505386
+ size: 42439434
+ timestamp: 1712155248737
- kind: conda
name: pillow
- version: 10.2.0
- build: py312hac22aec_0
+ version: 10.3.0
+ build: py312h8a801b1_0
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/pillow-10.2.0-py312hac22aec_0.conda
- sha256: 83ebcca5ca6c63bd15a80806a0110d45431fed7c432234d3299202e00f28c0e4
- md5: 486a50718de90e091df0bef6e6af2c48
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/pillow-10.3.0-py312h8a801b1_0.conda
+ sha256: 26bc04e81ae5fce70e4b72478dadea29d32b693eed17640be7721108a3c9af0d
+ md5: 1d42544faaed27dce36268912b8dfedf
depends:
- freetype >=2.12.1,<3.0a0
- lcms2 >=2.16,<3.0a0
@@ -17582,14 +26354,38 @@ packages:
- libwebp-base >=1.3.2,<2.0a0
- libxcb >=1.15,<1.16.0a0
- libzlib >=1.2.13,<1.3.0a0
- - openjpeg >=2.5.0,<3.0a0
+ - openjpeg >=2.5.2,<3.0a0
- python >=3.12,<3.13.0a0
- python >=3.12,<3.13.0a0 *_cpython
- python_abi 3.12.* *_cp312
- tk >=8.6.13,<8.7.0a0
license: HPND
- size: 42299342
- timestamp: 1704252620409
+ size: 42729895
+ timestamp: 1712155044162
+- kind: conda
+ name: pillow
+ version: 10.3.0
+ build: py312hdcec9eb_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/pillow-10.3.0-py312hdcec9eb_0.conda
+ sha256: a7fdcc1e56b66d95622bad073cc8d347cc180988040419754abb2a4ed7b29471
+ md5: 425bb325f970e57a047ac57c4586489d
+ depends:
+ - freetype >=2.12.1,<3.0a0
+ - lcms2 >=2.16,<3.0a0
+ - libgcc-ng >=12
+ - libjpeg-turbo >=3.0.0,<4.0a0
+ - libtiff >=4.6.0,<4.7.0a0
+ - libwebp-base >=1.3.2,<2.0a0
+ - libxcb >=1.15,<1.16.0a0
+ - libzlib >=1.2.13,<1.3.0a0
+ - openjpeg >=2.5.2,<3.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - tk >=8.6.13,<8.7.0a0
+ license: HPND
+ size: 41991755
+ timestamp: 1712154634705
- kind: conda
name: pip
version: '24.0'
@@ -17668,19 +26464,19 @@ packages:
timestamp: 1709239846651
- kind: conda
name: pkginfo
- version: 1.9.6
+ version: 1.10.0
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/pkginfo-1.9.6-pyhd8ed1ab_0.conda
- sha256: 7ea5a5af62a15376d9f4f9f3c134874d0b0710f39be719e849b7fa9ca8870502
- md5: be1e9f1c65a1ed0f2ae9352fec99db64
+ url: https://conda.anaconda.org/conda-forge/noarch/pkginfo-1.10.0-pyhd8ed1ab_0.conda
+ sha256: 3e833f907039646e34d23203cd5c9cc487a451d955d8c8d6581e18a8ccef4cee
+ md5: 8c6a4a704308f5d91f3a974a72db1096
depends:
- - python >=3.6
+ - python >=3.7
license: MIT
license_family: MIT
- size: 27646
- timestamp: 1673281872032
+ size: 28142
+ timestamp: 1709561205511
- kind: conda
name: pkgutil-resolve-name
version: 1.3.10
@@ -17698,28 +26494,28 @@ packages:
timestamp: 1694617398467
- kind: conda
name: platformdirs
- version: 4.2.0
+ version: 4.2.1
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.0-pyhd8ed1ab_0.conda
- sha256: 2ebfb971236ab825dd79dd6086ea742a9901008ffb9c6222c1f2b5172a8039d3
- md5: a0bc3eec34b0fab84be6b2da94e98e20
+ url: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.1-pyhd8ed1ab_0.conda
+ sha256: 5718fef2954f016834058ae1d359e407ff8e2e847b35ab43d5d91bcf22d5578d
+ md5: d478a8a3044cdff1aa6e62f9269cefe0
depends:
- python >=3.8
license: MIT
license_family: MIT
- size: 20210
- timestamp: 1706713564353
+ size: 20248
+ timestamp: 1713912912262
- kind: conda
name: plotly
- version: 5.19.0
+ version: 5.21.0
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/plotly-5.19.0-pyhd8ed1ab_0.conda
- sha256: fa9ae81e1f304f1480378ea25d559748e061c5b8d55b3ade433c3bc483dbae9e
- md5: 669cd7065794633b9e64e6a9612ec700
+ url: https://conda.anaconda.org/conda-forge/noarch/plotly-5.21.0-pyhd8ed1ab_0.conda
+ sha256: 69d9b5b30b93c02cfd9cb93351cd1c377fa04dfbf82386a7231bb2525ef367f1
+ md5: c8f5835e6c3a850d9a000d23056d780b
depends:
- packaging
- python >=3.6
@@ -17728,56 +26524,56 @@ packages:
- ipywidgets >=7.6
license: MIT
license_family: MIT
- size: 6080837
- timestamp: 1708020712892
+ size: 5136366
+ timestamp: 1713381024979
- kind: conda
name: pluggy
- version: 1.4.0
+ version: 1.5.0
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.4.0-pyhd8ed1ab_0.conda
- sha256: 6edfd2c41938ea772096c674809bfcf2ebb9bef7e82de6c7ea0b966b86bfb4d0
- md5: 139e9feb65187e916162917bb2484976
+ url: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.5.0-pyhd8ed1ab_0.conda
+ sha256: 33eaa3359948a260ebccf9cdc2fd862cea5a6029783289e13602d8e634cd9a26
+ md5: d3483c8fc2dc2cc3f5cf43e26d60cabf
depends:
- python >=3.8
license: MIT
license_family: MIT
- size: 23384
- timestamp: 1706116931972
+ size: 23815
+ timestamp: 1713667175451
- kind: conda
name: plum-dispatch
- version: 2.3.2
+ version: 2.3.5
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/plum-dispatch-2.3.2-pyhd8ed1ab_0.conda
- sha256: 7baa22fc9af7e5740376434ad103cc38b384739e4180ffb14838d7c1eccfcca1
- md5: 29adbde22baf625ec8e4e1f9ed0142b2
+ url: https://conda.anaconda.org/conda-forge/noarch/plum-dispatch-2.3.5-pyhd8ed1ab_0.conda
+ sha256: 700bdabfdab264332720575135e352275cc5c64ce3ad411775028f62b7d5cba0
+ md5: 4b3c3d46500f4b244b2ff0db5ad20f5f
depends:
- beartype >=0.12
- python >=3.8
- rich >=10.0
license: MIT
license_family: MIT
- size: 36048
- timestamp: 1705836650950
+ size: 36562
+ timestamp: 1713720732999
- kind: conda
name: ply
version: '3.11'
- build: py_1
- build_number: 1
+ build: pyhd8ed1ab_2
+ build_number: 2
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/ply-3.11-py_1.tar.bz2
- sha256: 2cd6fae8f9cbc806b7f828f006ae4a83c23fac917cacfd73c37ce322d4324e53
- md5: 7205635cd71531943440fbfe3b6b5727
+ url: https://conda.anaconda.org/conda-forge/noarch/ply-3.11-pyhd8ed1ab_2.conda
+ sha256: d8faaf4dcc13caed560fa32956523b35928a70499a2d08c51320947d637e3a41
+ md5: 18c6deb6f9602e32446398203c8f0e91
depends:
- - python
- license: BSD 3-clause
+ - python >=2.6
+ license: BSD-3-Clause
license_family: BSD
- size: 44837
- timestamp: 1530963184592
+ size: 49196
+ timestamp: 1712243121626
- kind: conda
name: pooch
version: 1.8.1
@@ -17798,125 +26594,126 @@ packages:
timestamp: 1708448699261
- kind: conda
name: poppler
- version: 24.02.0
- build: h0c752f9_0
+ version: 24.04.0
+ build: h0face88_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/poppler-24.02.0-h0c752f9_0.conda
- sha256: 54400c2961eca96f14ecbb9ccdac457ef7f86ee6741e38aa71db47eee22b76b6
- md5: 064e1d83d148b0ff5fa9ddd21141d0b1
+ url: https://conda.anaconda.org/conda-forge/osx-64/poppler-24.04.0-h0face88_0.conda
+ sha256: 8f83bd2c60f2f961ff90aa10797d7962d229a94bc4ecbea9896e8a5c9fa0d5a8
+ md5: 2263d7ca58e513ef1172dd12ac67b43c
depends:
- cairo >=1.18.0,<2.0a0
- fontconfig >=2.14.2,<3.0a0
- fonts-conda-ecosystem
- freetype >=2.12.1,<3.0a0
- - gettext >=0.21.1,<1.0a0
- lcms2 >=2.16,<3.0a0
- - libcurl >=8.5.0,<9.0a0
+ - libcurl >=8.7.1,<9.0a0
- libcxx >=16
- - libglib >=2.78.3,<3.0a0
+ - libglib >=2.80.0,<3.0a0
- libiconv >=1.17,<2.0a0
+ - libintl >=0.22.5,<1.0a0
- libjpeg-turbo >=3.0.0,<4.0a0
- - libpng >=1.6.42,<1.7.0a0
+ - libpng >=1.6.43,<1.7.0a0
- libtiff >=4.6.0,<4.7.0a0
- libzlib >=1.2.13,<1.3.0a0
- nspr >=4.35,<5.0a0
- - nss >=3.97,<4.0a0
- - openjpeg >=2.5.0,<3.0a0
+ - nss >=3.98,<4.0a0
+ - openjpeg >=2.5.2,<3.0a0
- poppler-data
license: GPL-2.0-only
license_family: GPL
- size: 1569106
- timestamp: 1707085713504
+ size: 1584834
+ timestamp: 1713361448761
- kind: conda
name: poppler
- version: 24.02.0
- build: h590f24d_0
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/poppler-24.02.0-h590f24d_0.conda
- sha256: 55bb2deb67c76bd9f5592bf9765cc879cf11e555c4f8879292cbd5544e88887e
- md5: 7e715c1572de09d6106c5a31fa70ffca
+ version: 24.04.0
+ build: h42742f0_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/poppler-24.04.0-h42742f0_0.conda
+ sha256: d4a360a4ada9db8cc68aea773a834887db878be9f8d2125617138a7ac4ca63d8
+ md5: a808e3bc251b0444f6a9dd1a355fb37a
depends:
- cairo >=1.18.0,<2.0a0
- fontconfig >=2.14.2,<3.0a0
- fonts-conda-ecosystem
- freetype >=2.12.1,<3.0a0
- lcms2 >=2.16,<3.0a0
- - libcurl >=8.5.0,<9.0a0
- - libgcc-ng >=12
- - libglib >=2.78.3,<3.0a0
+ - libcurl >=8.7.1,<9.0a0
+ - libcxx >=16
+ - libglib >=2.80.0,<3.0a0
- libiconv >=1.17,<2.0a0
+ - libintl >=0.22.5,<1.0a0
- libjpeg-turbo >=3.0.0,<4.0a0
- - libpng >=1.6.42,<1.7.0a0
- - libstdcxx-ng >=12
+ - libpng >=1.6.43,<1.7.0a0
- libtiff >=4.6.0,<4.7.0a0
- libzlib >=1.2.13,<1.3.0a0
- nspr >=4.35,<5.0a0
- - nss >=3.97,<4.0a0
- - openjpeg >=2.5.0,<3.0a0
+ - nss >=3.98,<4.0a0
+ - openjpeg >=2.5.2,<3.0a0
- poppler-data
license: GPL-2.0-only
license_family: GPL
- size: 1846319
- timestamp: 1707085261766
+ size: 1498439
+ timestamp: 1713361424043
- kind: conda
name: poppler
- version: 24.02.0
- build: h896e6cb_0
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/poppler-24.02.0-h896e6cb_0.conda
- sha256: c4d579795f329f1fe1b590d7cc3fc31d6b68f08e27b1f84e36ea3e9e05de5d6e
- md5: 228b76f3de35d7bbe1374e52d1e0a5bb
+ version: 24.04.0
+ build: h747fd5a_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/poppler-24.04.0-h747fd5a_0.conda
+ sha256: 9e1da990de67bb0e3c0ea60d7ce051176aeed997e507aaa0addd3f4c46d3a635
+ md5: 64ab34f722f9db6d9956ed2dbccd1bf0
depends:
- cairo >=1.18.0,<2.0a0
- - fontconfig >=2.14.2,<3.0a0
- - fonts-conda-ecosystem
- freetype >=2.12.1,<3.0a0
- - gettext >=0.21.1,<1.0a0
- lcms2 >=2.16,<3.0a0
- - libcurl >=8.5.0,<9.0a0
- - libcxx >=16
- - libglib >=2.78.3,<3.0a0
+ - libcurl >=8.7.1,<9.0a0
+ - libglib >=2.80.0,<3.0a0
- libiconv >=1.17,<2.0a0
+ - libintl >=0.22.5,<1.0a0
- libjpeg-turbo >=3.0.0,<4.0a0
- - libpng >=1.6.42,<1.7.0a0
+ - libpng >=1.6.43,<1.7.0a0
- libtiff >=4.6.0,<4.7.0a0
- libzlib >=1.2.13,<1.3.0a0
- - nspr >=4.35,<5.0a0
- - nss >=3.97,<4.0a0
- - openjpeg >=2.5.0,<3.0a0
+ - openjpeg >=2.5.2,<3.0a0
- poppler-data
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
license: GPL-2.0-only
license_family: GPL
- size: 1484810
- timestamp: 1707086025982
+ size: 2295910
+ timestamp: 1713361386861
- kind: conda
name: poppler
- version: 24.02.0
- build: hc2f3c52_0
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/poppler-24.02.0-hc2f3c52_0.conda
- sha256: 21e97633c56c9c1330433cfb20d12609a5f419ebe33474480f1b4c32048b298f
- md5: e740f88adfd0b75e6233066f6cbd4d82
+ version: 24.04.0
+ build: hb6cd0d7_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/poppler-24.04.0-hb6cd0d7_0.conda
+ sha256: 47fe84305bf7816b7486baae50c104c8e3401711734e560257758045a1db48d8
+ md5: d19eed746748f1d44b575662f2bcfe95
depends:
- cairo >=1.18.0,<2.0a0
+ - fontconfig >=2.14.2,<3.0a0
+ - fonts-conda-ecosystem
- freetype >=2.12.1,<3.0a0
- lcms2 >=2.16,<3.0a0
- - libcurl >=8.5.0,<9.0a0
- - libglib >=2.78.3,<3.0a0
+ - libcurl >=8.7.1,<9.0a0
+ - libgcc-ng >=12
+ - libglib >=2.80.0,<3.0a0
- libiconv >=1.17,<2.0a0
- libjpeg-turbo >=3.0.0,<4.0a0
- - libpng >=1.6.42,<1.7.0a0
+ - libpng >=1.6.43,<1.7.0a0
+ - libstdcxx-ng >=12
- libtiff >=4.6.0,<4.7.0a0
- libzlib >=1.2.13,<1.3.0a0
- - openjpeg >=2.5.0,<3.0a0
+ - nspr >=4.35,<5.0a0
+ - nss >=3.98,<4.0a0
+ - openjpeg >=2.5.2,<3.0a0
- poppler-data
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
license: GPL-2.0-only
license_family: GPL
- size: 2214905
- timestamp: 1707086181845
+ size: 1893949
+ timestamp: 1713360189394
- kind: conda
name: poppler-data
version: 0.4.12
@@ -17933,93 +26730,97 @@ packages:
- kind: conda
name: postgresql
version: '16.2'
- build: h1beaf6b_0
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/postgresql-16.2-h1beaf6b_0.conda
- sha256: 5443f216bf46d4d72a7a5b229db24e824112a01baa4ba727ffe7f0dc2d2b78c0
- md5: 03519a736c44af579f0c364669329df1
+ build: h06f2bd8_1
+ build_number: 1
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/postgresql-16.2-h06f2bd8_1.conda
+ sha256: 2a96af8385c51e97950ed00d802186069bf4933b3be111956508ab6be158d463
+ md5: fe36c4a9254176dde4ca696016c50aa8
depends:
- krb5 >=1.21.2,<1.22.0a0
- - libpq 16.2 hdb24f17_0
- - libxml2 >=2.12.5,<3.0a0
+ - libpq 16.2 ha925e61_1
+ - libxml2 >=2.12.6,<3.0a0
- libzlib >=1.2.13,<1.3.0a0
- openssl >=3.2.1,<4.0a0
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
+ - readline >=8.2,<9.0a0
+ - tzcode
+ - tzdata
license: PostgreSQL
- size: 18565712
- timestamp: 1707416202899
+ size: 4627906
+ timestamp: 1710864850772
- kind: conda
name: postgresql
version: '16.2'
- build: h1d0603d_0
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/postgresql-16.2-h1d0603d_0.conda
- sha256: 01b5bb78c909778fefca380bb808044850adba2972cd92f8fe6ead122a34fc45
- md5: 29f3fd38f23da95692ab11af12fdb6da
+ build: h82ecc9d_1
+ build_number: 1
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/postgresql-16.2-h82ecc9d_1.conda
+ sha256: 7fc52e69478973f173f055ade6c4087564362be9172c294b493a79671fef9a7e
+ md5: 7a5806219d0f77ce8393375d040df065
depends:
- krb5 >=1.21.2,<1.22.0a0
- - libpq 16.2 h0f8b458_0
- - libxml2 >=2.12.5,<3.0a0
+ - libgcc-ng >=12
+ - libpq 16.2 h33b98f1_1
+ - libxml2 >=2.12.6,<3.0a0
- libzlib >=1.2.13,<1.3.0a0
- openssl >=3.2.1,<4.0a0
- readline >=8.2,<9.0a0
- tzcode
- tzdata
license: PostgreSQL
- size: 4329570
- timestamp: 1707416482651
+ size: 5308675
+ timestamp: 1710863687299
- kind: conda
name: postgresql
version: '16.2'
- build: h7387d8b_0
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/postgresql-16.2-h7387d8b_0.conda
- sha256: 5b4fcfbd51957bb51fb1d2d28c3e9d8f4a50be0ac1be9c40083b1e9a39df7f3d
- md5: 4e86738066b4966f0357f661b3691cae
+ build: h94c9ec1_1
+ build_number: 1
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/postgresql-16.2-h94c9ec1_1.conda
+ sha256: 35d632652bc965e5f7b6b4f9f8a36c6c399d1defc2e4f68841f42d5b9a51ee70
+ md5: c76ba206e82b0d0dbfc9d6d48b80053b
depends:
- krb5 >=1.21.2,<1.22.0a0
- - libgcc-ng >=12
- - libpq 16.2 h33b98f1_0
- - libxml2 >=2.12.5,<3.0a0
+ - libpq 16.2 hdb24f17_1
+ - libxml2 >=2.12.6,<3.0a0
- libzlib >=1.2.13,<1.3.0a0
- openssl >=3.2.1,<4.0a0
- - readline >=8.2,<9.0a0
- - tzcode
- - tzdata
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
license: PostgreSQL
- size: 5295904
- timestamp: 1707415161091
+ size: 18712345
+ timestamp: 1710864543420
- kind: conda
name: postgresql
version: '16.2'
- build: hbd19fd8_0
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/postgresql-16.2-hbd19fd8_0.conda
- sha256: 8a9d1277488ee4c7e7c260d9423280782497930253a56bc9d88c94b2ec59748f
- md5: 00ed2daaa212835979fedc2cb7e1eac7
+ build: hf829917_1
+ build_number: 1
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/postgresql-16.2-hf829917_1.conda
+ sha256: cfc337097f145a3e527c45b2ab40663421480acc225c3eb997459a80e5e1f9ae
+ md5: a80492a97dc9c6f05b4181b8ab4dfb14
depends:
- krb5 >=1.21.2,<1.22.0a0
- - libpq 16.2 ha925e61_0
- - libxml2 >=2.12.5,<3.0a0
+ - libpq 16.2 h0f8b458_1
+ - libxml2 >=2.12.6,<3.0a0
- libzlib >=1.2.13,<1.3.0a0
- openssl >=3.2.1,<4.0a0
- readline >=8.2,<9.0a0
- tzcode
- tzdata
license: PostgreSQL
- size: 4578492
- timestamp: 1707416355357
+ size: 4360036
+ timestamp: 1710864886003
- kind: conda
name: pre-commit
- version: 3.6.2
+ version: 3.7.0
build: pyha770c72_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/pre-commit-3.6.2-pyha770c72_0.conda
- sha256: 8eb9f5965c37d2bbee9302e16cc7c5517ee06491986356112be13431a043681e
- md5: 61534ee57ffdf26d7b1b514d33daccc4
+ url: https://conda.anaconda.org/conda-forge/noarch/pre-commit-3.7.0-pyha770c72_0.conda
+ sha256: b7a1d56fb1374df77019521bbcbe109ff17337181c4d392918e5ec1a10a9df87
+ md5: 846ba0877cda9c4f11e13720cacd1968
depends:
- cfgv >=2.0.0
- identify >=1.0.0
@@ -18029,20 +26830,21 @@ packages:
- virtualenv >=20.10.0
license: MIT
license_family: MIT
- size: 179884
- timestamp: 1708284490635
+ size: 180574
+ timestamp: 1711480432386
- kind: conda
name: proj
- version: 9.3.1
- build: h1d62c97_0
+ version: 9.4.0
+ build: h1d62c97_1
+ build_number: 1
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/proj-9.3.1-h1d62c97_0.conda
- sha256: 234f8f7b255dc9036812ec30d097c0725047f3fc7e8e0bc7944e4e17d242ab99
- md5: 44ec51d0857d9be26158bb85caa74fdb
+ url: https://conda.anaconda.org/conda-forge/linux-64/proj-9.4.0-h1d62c97_1.conda
+ sha256: 06926e821e808cf27cdede5807d2cfc152d4a6276d7d6c5bae80b1a4904265eb
+ md5: 113f894e5019db2e2705645ee3bcf91a
depends:
- - libcurl >=8.4.0,<9.0a0
+ - libcurl >=8.7.1,<9.0a0
- libgcc-ng >=12
- - libsqlite >=3.44.2,<4.0a0
+ - libsqlite >=3.45.3,<4.0a0
- libstdcxx-ng >=12
- libtiff >=4.6.0,<4.7.0a0
- sqlite
@@ -18050,61 +26852,62 @@ packages:
- proj4 ==999999999999
license: MIT
license_family: MIT
- size: 3004737
- timestamp: 1701484763294
+ size: 3061698
+ timestamp: 1714528765837
- kind: conda
name: proj
- version: 9.3.1
- build: h81faed2_0
+ version: 9.4.0
+ build: h23b96cc_1
+ build_number: 1
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/proj-9.3.1-h81faed2_0.conda
- sha256: 51bc021e25c88a12151d6ab4d3e956e72ea21d2684315f6ea99ee699aaefc1ea
- md5: 3940ef505861767d26659645f9ec0460
+ url: https://conda.anaconda.org/conda-forge/osx-64/proj-9.4.0-h23b96cc_1.conda
+ sha256: 2dde04dcf0620f4e95a8082c530971d9846b5e9e933baf86965c3c7dbece8226
+ md5: 6d6e17962fc0be5969c5e9d41d37c46f
depends:
- - __osx >=10.9
- - libcurl >=8.4.0,<9.0a0
- - libcxx >=16.0.6
- - libsqlite >=3.44.2,<4.0a0
+ - libcurl >=8.7.1,<9.0a0
+ - libcxx >=16
+ - libsqlite >=3.45.3,<4.0a0
- libtiff >=4.6.0,<4.7.0a0
- sqlite
constrains:
- proj4 ==999999999999
license: MIT
license_family: MIT
- size: 2713966
- timestamp: 1701485089266
+ size: 2771366
+ timestamp: 1714529899946
- kind: conda
name: proj
- version: 9.3.1
- build: h93d94ba_0
+ version: 9.4.0
+ build: h52fb9d0_1
+ build_number: 1
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/proj-9.3.1-h93d94ba_0.conda
- sha256: e25fdb0457f3b3aef811d13f563539a18d4f5cf8231fda1e69e6ae8597cac7b4
- md5: dee5405f12027dd1dbe7a97e239febb0
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/proj-9.4.0-h52fb9d0_1.conda
+ sha256: 7e985783fe8da33292b90658ce4cce1f01777c9588f57ce6ea1c2ac46866703e
+ md5: 9f6e04af24aa75390e5a140120da880f
depends:
- - __osx >=10.9
- - libcurl >=8.4.0,<9.0a0
- - libcxx >=16.0.6
- - libsqlite >=3.44.2,<4.0a0
+ - libcurl >=8.7.1,<9.0a0
+ - libcxx >=16
+ - libsqlite >=3.45.3,<4.0a0
- libtiff >=4.6.0,<4.7.0a0
- sqlite
constrains:
- proj4 ==999999999999
license: MIT
license_family: MIT
- size: 2618805
- timestamp: 1701485156644
+ size: 2640387
+ timestamp: 1714529581812
- kind: conda
name: proj
- version: 9.3.1
- build: he13c7e8_0
+ version: 9.4.0
+ build: he13c7e8_1
+ build_number: 1
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/proj-9.3.1-he13c7e8_0.conda
- sha256: bcf34f3610e2c34a74fccf76e47e0fd41d36afd8fc043920fef0ab34230bcd01
- md5: 57aa204e187d515bb2600bc74a7e7dfc
+ url: https://conda.anaconda.org/conda-forge/win-64/proj-9.4.0-he13c7e8_1.conda
+ sha256: 01a4d21df3718a2e330ce55e5390cde05998b9b74ddffcbf4ffaf36c35066a61
+ md5: 469900b292d63ed84a66d9a86b757ab8
depends:
- - libcurl >=8.4.0,<9.0a0
- - libsqlite >=3.44.2,<4.0a0
+ - libcurl >=8.7.1,<9.0a0
+ - libsqlite >=3.45.3,<4.0a0
- libtiff >=4.6.0,<4.7.0a0
- sqlite
- ucrt >=10.0.20348.0
@@ -18114,8 +26917,8 @@ packages:
- proj4 ==999999999999
license: MIT
license_family: MIT
- size: 2663958
- timestamp: 1701485332654
+ size: 2679028
+ timestamp: 1714529258301
- kind: conda
name: prometheus_client
version: 0.20.0
@@ -18149,6 +26952,87 @@ packages:
license_family: BSD
size: 270398
timestamp: 1702399557137
+- kind: conda
+ name: psutil
+ version: 5.9.8
+ build: py310h2372a71_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/psutil-5.9.8-py310h2372a71_0.conda
+ sha256: f1866425aa67f3fe1e3f6e07562a4bc986fd487e01146a91eb1bdbe5ec16a836
+ md5: bd19b3096442ea342c4a5208379660b1
+ depends:
+ - libgcc-ng >=12
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 368328
+ timestamp: 1705722544490
+- kind: conda
+ name: psutil
+ version: 5.9.8
+ build: py310h8d17308_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/psutil-5.9.8-py310h8d17308_0.conda
+ sha256: f1ec2d213b2a45831ede5d794eb5c4d5adf072f24d12eb6f07df207bcc9de0fb
+ md5: f85b83fad1e1c12c212f27039f823138
+ depends:
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 386373
+ timestamp: 1705722865736
+- kind: conda
+ name: psutil
+ version: 5.9.8
+ build: py310hb372a2b_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/psutil-5.9.8-py310hb372a2b_0.conda
+ sha256: 6c52cb3ea7e9e42a9fe2e2ddf9d91093fb13f067982878edc96035601ff477c0
+ md5: ec3a8263961880a89f9587670aad5c81
+ depends:
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 375259
+ timestamp: 1705722685866
+- kind: conda
+ name: psutil
+ version: 5.9.8
+ build: py310hd125d64_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/psutil-5.9.8-py310hd125d64_0.conda
+ sha256: 8d303673271d8a32a79956a5cf7b941a5fa4f9ef7f093a29efc871a6c8e69aa4
+ md5: 0fb7c0c32b4212cc783aa315ea4fc173
+ depends:
+ - python >=3.10,<3.11.0a0
+ - python >=3.10,<3.11.0a0 *_cpython
+ - python_abi 3.10.* *_cp310
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 376671
+ timestamp: 1705722806535
+- kind: conda
+ name: psutil
+ version: 5.9.8
+ build: py311h05b510d_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/psutil-5.9.8-py311h05b510d_0.conda
+ sha256: 2b6e485c761fa3e7271c44a070c0d08e79a6758ac4d7a660eaff0ed0a60c6f2b
+ md5: 970ef0edddc6c2cfeb16b7225a28a1f4
+ depends:
+ - python >=3.11,<3.12.0a0
+ - python >=3.11,<3.12.0a0 *_cpython
+ - python_abi 3.11.* *_cp311
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 513415
+ timestamp: 1705722847446
- kind: conda
name: psutil
version: 5.9.8
@@ -18198,6 +27082,37 @@ packages:
license_family: BSD
size: 513371
timestamp: 1705722716862
+- kind: conda
+ name: psutil
+ version: 5.9.8
+ build: py312h41838bb_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/psutil-5.9.8-py312h41838bb_0.conda
+ sha256: 12e5053d19bddaf7841e59cbe9ba98fa5d4d8502ceccddad80888515e1366107
+ md5: 03926e7089a5e61b77043b470ae7b553
+ depends:
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 495162
+ timestamp: 1705722685887
+- kind: conda
+ name: psutil
+ version: 5.9.8
+ build: py312h98912ed_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/psutil-5.9.8-py312h98912ed_0.conda
+ sha256: 27e7f8f5d30c74439f39d61e21ac14c0cd03b5d55f7bf9f946fb619016f73c61
+ md5: 3facaca6cc0f7988df3250efccd32da3
+ depends:
+ - libgcc-ng >=12
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 486243
+ timestamp: 1705722547420
- kind: conda
name: psutil
version: 5.9.8
@@ -18214,78 +27129,96 @@ packages:
license_family: BSD
size: 499490
timestamp: 1705722767772
+- kind: conda
+ name: psutil
+ version: 5.9.8
+ build: py312he70551f_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/psutil-5.9.8-py312he70551f_0.conda
+ sha256: 36f8addb327f80da4d6bd421170ff4cf8fb570d9ee8df39372427a4e33298dca
+ md5: 5f2998851564bea33a159bd00e6249e8
+ depends:
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 503677
+ timestamp: 1705722843679
- kind: conda
name: psycopg2
version: 2.9.9
- build: py311h03dec38_0
+ build: py312h08590aa_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/psycopg2-2.9.9-py311h03dec38_0.conda
- sha256: 4e78d9fe1799d028d9a2da3636a3a68a531aeca5d2c679d4fc78627a426b11cb
- md5: 3cc2decd316838bce14d73818e0bf7a4
+ url: https://conda.anaconda.org/conda-forge/linux-64/psycopg2-2.9.9-py312h08590aa_0.conda
+ sha256: f2c21db09e411331a9d741b46ecbc6f4ee3571f173c6014ceac0cbbc17eb5e5b
+ md5: 04c845846381625e95c88d013edfda21
depends:
- libgcc-ng >=12
- libpq >=16.1,<17.0a0
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
license: LGPL-3.0-or-later
license_family: LGPL
- size: 189730
- timestamp: 1701737752381
+ size: 188527
+ timestamp: 1701737750002
- kind: conda
name: psycopg2
version: 2.9.9
- build: py311h187f0af_0
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/psycopg2-2.9.9-py311h187f0af_0.conda
- sha256: 73c0cf543b0ddd41993956969f665999f5801e027e3d3524604892baedbd2626
- md5: 2177c8943bbf9bfc45421ecaebd5be11
+ build: py312h84485f8_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/psycopg2-2.9.9-py312h84485f8_0.conda
+ sha256: 10eaaf2567552e70535fcaad0c6bc21eb5117d1606cb5384f9546b5c934de964
+ md5: 33ddbd58e1fb3b825080454e464f99d5
depends:
- libpq >=16.1,<17.0a0
- openssl >=3.2.0,<4.0a0
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12,<3.13.0a0
+ - python >=3.12,<3.13.0a0 *_cpython
+ - python_abi 3.12.* *_cp312
license: LGPL-3.0-or-later
license_family: LGPL
- size: 165990
- timestamp: 1701738110364
+ size: 164537
+ timestamp: 1701737910469
- kind: conda
name: psycopg2
version: 2.9.9
- build: py311h2abc067_0
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/psycopg2-2.9.9-py311h2abc067_0.conda
- sha256: 9ed78256705d1673f591fc2914990008f7e7560b02acf2d9b7ed8c4d637d7180
- md5: c61c5dc3e20b994f52277c2b75496386
+ build: py312hca9e88b_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/psycopg2-2.9.9-py312hca9e88b_0.conda
+ sha256: fa8f76f1ea8fa9e488dc743fb9474f6cd804692aa82f708d1f82112fcd12bb4a
+ md5: 15afd0d9970b58b13536772fd9e856a7
depends:
- libpq >=16.1,<17.0a0
- - openssl >=3.2.0,<4.0a0
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
+ - openssl >=3.2.0,<4.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
license: LGPL-3.0-or-later
license_family: LGPL
- size: 171755
- timestamp: 1701738131212
+ size: 164542
+ timestamp: 1701738146431
- kind: conda
name: psycopg2
version: 2.9.9
- build: py312h84485f8_0
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/psycopg2-2.9.9-py312h84485f8_0.conda
- sha256: 10eaaf2567552e70535fcaad0c6bc21eb5117d1606cb5384f9546b5c934de964
- md5: 33ddbd58e1fb3b825080454e464f99d5
+ build: py312hf50bb3c_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/psycopg2-2.9.9-py312hf50bb3c_0.conda
+ sha256: 4d4e231d32accb8be46b64cd0d3efa20d50599cdf3557031ce357f475e8c01b0
+ md5: 0af80526a48a63e6fa3cfb628b6a28df
depends:
- libpq >=16.1,<17.0a0
- openssl >=3.2.0,<4.0a0
- python >=3.12,<3.13.0a0
- - python >=3.12,<3.13.0a0 *_cpython
- python_abi 3.12.* *_cp312
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
license: LGPL-3.0-or-later
license_family: LGPL
- size: 164537
- timestamp: 1701737910469
+ size: 170828
+ timestamp: 1701738274625
- kind: conda
name: pthread-stubs
version: '0.4'
@@ -18356,58 +27289,6 @@ packages:
license: LGPL 2
size: 144301
timestamp: 1537755684331
-- kind: conda
- name: ptvsd
- version: 4.3.2
- build: py311h5547dcb_5
- build_number: 5
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/ptvsd-4.3.2-py311h5547dcb_5.tar.bz2
- sha256: 6b43d0d9463a07af898f0aa0df8cddb8a71d2dd2677459c3aca87294dfd3dddd
- md5: 902a012ddc1793f76d9b73cddaf69be5
- depends:
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
- license: MIT
- license_family: MIT
- size: 5181703
- timestamp: 1667488317855
-- kind: conda
- name: ptvsd
- version: 4.3.2
- build: py311ha68e1ae_5
- build_number: 5
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/ptvsd-4.3.2-py311ha68e1ae_5.tar.bz2
- sha256: 10a2418894edc0e75f04886522dc5d0d64484150200000ae392c9b7fbd55e4a8
- md5: 8a6724a2063ef17923fe4972fb693b9a
- depends:
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vs2015_runtime >=14.29.30139
- license: MIT
- license_family: MIT
- size: 5156913
- timestamp: 1667488366633
-- kind: conda
- name: ptvsd
- version: 4.3.2
- build: py311hd4cff14_5
- build_number: 5
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/ptvsd-4.3.2-py311hd4cff14_5.tar.bz2
- sha256: a1d77adcb56354386a1d2c0a9ab334f3bce53e8806b30ccf087a2ab13da6995a
- md5: de6cfe6b1e9b99d66e3499da3f985e89
- depends:
- - libgcc-ng >=12
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
- license: MIT
- license_family: MIT
- size: 5188803
- timestamp: 1667488033769
- kind: conda
name: ptyprocess
version: 0.7.0
@@ -18424,25 +27305,24 @@ packages:
timestamp: 1609419417991
- kind: conda
name: pulseaudio-client
- version: '16.1'
- build: hb77b528_5
- build_number: 5
+ version: '17.0'
+ build: hb77b528_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/pulseaudio-client-16.1-hb77b528_5.conda
- sha256: 9981c70893d95c8cac02e7edd1a9af87f2c8745b772d529f08b7f9dafbe98606
- md5: ac902ff3c1c6d750dd0dfc93a974ab74
+ url: https://conda.anaconda.org/conda-forge/linux-64/pulseaudio-client-17.0-hb77b528_0.conda
+ sha256: b27c0c8671bd95c205a61aeeac807c095b60bc76eb5021863f919036d7a964fc
+ md5: 07f45f1be1c25345faddb8db0de8039b
depends:
- dbus >=1.13.6,<2.0a0
- libgcc-ng >=12
- - libglib >=2.76.4,<3.0a0
+ - libglib >=2.78.3,<3.0a0
- libsndfile >=1.2.2,<1.3.0a0
- - libsystemd0 >=254
+ - libsystemd0 >=255
constrains:
- - pulseaudio 16.1 *_5
+ - pulseaudio 17.0 *_0
license: LGPL-2.1-or-later
license_family: LGPL
- size: 754844
- timestamp: 1693928953742
+ size: 757633
+ timestamp: 1705690081905
- kind: conda
name: pure_eval
version: 0.2.2
@@ -18460,51 +27340,176 @@ packages:
timestamp: 1642876055775
- kind: conda
name: pyarrow
- version: 15.0.0
- build: py311h39c9aba_7_cpu
- build_number: 7
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/pyarrow-15.0.0-py311h39c9aba_7_cpu.conda
- sha256: acacef2a6e73cfdc5fdabd9ddda74229dea08b9d6bdb603e3e3caad2138583e5
- md5: c6de1644e9a61d076eff34308428666e
+ version: 15.0.2
+ build: py310h01a46da_6_cpu
+ build_number: 6
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/pyarrow-15.0.2-py310h01a46da_6_cpu.conda
+ sha256: 0884b8161a2eafbc4beaf025646d90920173de83d2ca05442f24501e819bf3b6
+ md5: 0c39721cd864906bd0879a92f071542e
depends:
- - libarrow 15.0.0 h5001e6d_7_cpu
- - libarrow-acero 15.0.0 h59595ed_7_cpu
- - libarrow-dataset 15.0.0 h59595ed_7_cpu
- - libarrow-flight 15.0.0 hf334d8d_7_cpu
- - libarrow-flight-sql 15.0.0 h469e5c9_7_cpu
- - libarrow-gandiva 15.0.0 h3f306ff_7_cpu
- - libarrow-substrait 15.0.0 h469e5c9_7_cpu
+ - __osx >=11.0
+ - libarrow 15.0.2 hea125af_6_cpu
+ - libarrow-acero 15.0.2 h3f3aa29_6_cpu
+ - libarrow-dataset 15.0.2 h3f3aa29_6_cpu
+ - libarrow-flight 15.0.2 h224147a_6_cpu
+ - libarrow-flight-sql 15.0.2 hb630850_6_cpu
+ - libarrow-gandiva 15.0.2 h3b9069c_6_cpu
+ - libarrow-substrait 15.0.2 hd92e347_6_cpu
+ - libcxx >=16
+ - libparquet 15.0.2 h5304c63_6_cpu
+ - libzlib >=1.2.13,<1.3.0a0
+ - numpy >=1.22.4,<2.0a0
+ - python >=3.10,<3.11.0a0
+ - python >=3.10,<3.11.0a0 *_cpython
+ - python_abi 3.10.* *_cp310
+ constrains:
+ - apache-arrow-proc =*=cpu
+ license: Apache-2.0
+ license_family: APACHE
+ size: 3908312
+ timestamp: 1714452346128
+- kind: conda
+ name: pyarrow
+ version: 15.0.2
+ build: py310h6bd4de8_6_cpu
+ build_number: 6
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/pyarrow-15.0.2-py310h6bd4de8_6_cpu.conda
+ sha256: 6394b2f6386d959f4fc924a6e52f8b34c4c6b7e6fe0f2cb9d15e39585536ff5c
+ md5: eceea8df032a5a10f608e1c0bbec9bda
+ depends:
+ - libarrow 15.0.2 he3d97d8_6_cpu
+ - libarrow-acero 15.0.2 he0c23c2_6_cpu
+ - libarrow-dataset 15.0.2 he0c23c2_6_cpu
+ - libarrow-flight 15.0.2 ha7f4a34_6_cpu
+ - libarrow-flight-sql 15.0.2 hdeef14f_6_cpu
+ - libarrow-gandiva 15.0.2 hd4515a1_6_cpu
+ - libarrow-substrait 15.0.2 h1f0e801_6_cpu
+ - libparquet 15.0.2 h178134c_6_cpu
+ - libzlib >=1.2.13,<1.3.0a0
+ - numpy >=1.22.4,<2.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ constrains:
+ - apache-arrow-proc =*=cpu
+ license: Apache-2.0
+ license_family: APACHE
+ size: 3469880
+ timestamp: 1714450026560
+- kind: conda
+ name: pyarrow
+ version: 15.0.2
+ build: py310hd207890_6_cpu
+ build_number: 6
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/pyarrow-15.0.2-py310hd207890_6_cpu.conda
+ sha256: 0fef761f539cbd3a8f145163921e53d3928ebe3953e548d679862c357b580c12
+ md5: b00e0408587fecc209714eff65406892
+ depends:
+ - libarrow 15.0.2 hefa796f_6_cpu
+ - libarrow-acero 15.0.2 hbabe93e_6_cpu
+ - libarrow-dataset 15.0.2 hbabe93e_6_cpu
+ - libarrow-flight 15.0.2 hc4f8a93_6_cpu
+ - libarrow-flight-sql 15.0.2 he4f5ca8_6_cpu
+ - libarrow-gandiva 15.0.2 hc1954e9_6_cpu
+ - libarrow-substrait 15.0.2 he4f5ca8_6_cpu
- libgcc-ng >=12
- - libparquet 15.0.0 h352af49_7_cpu
+ - libparquet 15.0.2 hacf5a1f_6_cpu
- libstdcxx-ng >=12
+ - libzlib >=1.2.13,<1.3.0a0
+ - numpy >=1.22.4,<2.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ constrains:
+ - apache-arrow-proc =*=cpu
+ license: Apache-2.0
+ license_family: APACHE
+ size: 4481274
+ timestamp: 1714448787064
+- kind: conda
+ name: pyarrow
+ version: 15.0.2
+ build: py310hfcac963_6_cpu
+ build_number: 6
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/pyarrow-15.0.2-py310hfcac963_6_cpu.conda
+ sha256: 76656257493ced0a419831956c4a1338faf16e097206ab574df2146c720ed23a
+ md5: 60f6b07670c76deea22f95a55e596d01
+ depends:
+ - __osx >=10.13
+ - libarrow 15.0.2 hfba3c4c_6_cpu
+ - libarrow-acero 15.0.2 ha0df490_6_cpu
+ - libarrow-dataset 15.0.2 ha0df490_6_cpu
+ - libarrow-flight 15.0.2 h41520de_6_cpu
+ - libarrow-flight-sql 15.0.2 hb2e0ddf_6_cpu
+ - libarrow-gandiva 15.0.2 h81ca85a_6_cpu
+ - libarrow-substrait 15.0.2 hb2e0ddf_6_cpu
+ - libcxx >=16
+ - libparquet 15.0.2 h7cd3cfe_6_cpu
+ - libzlib >=1.2.13,<1.3.0a0
+ - numpy >=1.22.4,<2.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ constrains:
+ - apache-arrow-proc =*=cpu
+ license: Apache-2.0
+ license_family: APACHE
+ size: 3974337
+ timestamp: 1714452593790
+- kind: conda
+ name: pyarrow
+ version: 15.0.2
+ build: py311h5ff715f_6_cpu
+ build_number: 6
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/pyarrow-15.0.2-py311h5ff715f_6_cpu.conda
+ sha256: 6e64764e7839fb29de52d9f6df6997bab1f3fb3a02ffd15591935ffa7527afc0
+ md5: a7527faa6805f46f00a2ebc3f8e2c95e
+ depends:
+ - __osx >=11.0
+ - libarrow 15.0.2 hea125af_6_cpu
+ - libarrow-acero 15.0.2 h3f3aa29_6_cpu
+ - libarrow-dataset 15.0.2 h3f3aa29_6_cpu
+ - libarrow-flight 15.0.2 h224147a_6_cpu
+ - libarrow-flight-sql 15.0.2 hb630850_6_cpu
+ - libarrow-gandiva 15.0.2 h3b9069c_6_cpu
+ - libarrow-substrait 15.0.2 hd92e347_6_cpu
+ - libcxx >=16
+ - libparquet 15.0.2 h5304c63_6_cpu
+ - libzlib >=1.2.13,<1.3.0a0
- numpy >=1.23.5,<2.0a0
- python >=3.11,<3.12.0a0
+ - python >=3.11,<3.12.0a0 *_cpython
- python_abi 3.11.* *_cp311
constrains:
- apache-arrow-proc =*=cpu
license: Apache-2.0
license_family: APACHE
- size: 4560131
- timestamp: 1708689845338
+ size: 3995187
+ timestamp: 1714454151842
- kind: conda
name: pyarrow
- version: 15.0.0
- build: py311h6a6099b_7_cpu
- build_number: 7
+ version: 15.0.2
+ build: py311h6d3785f_6_cpu
+ build_number: 6
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/pyarrow-15.0.0-py311h6a6099b_7_cpu.conda
- sha256: f26fba64a6c44d228cbc0e41b400ea9780f702d6ffb08bb95f750ec0aa93c87b
- md5: a7e9d208ed1acc699fbf097bc0f9e318
- depends:
- - libarrow 15.0.0 hd01637b_7_cpu
- - libarrow-acero 15.0.0 h63175ca_7_cpu
- - libarrow-dataset 15.0.0 h63175ca_7_cpu
- - libarrow-flight 15.0.0 hca4e5ea_7_cpu
- - libarrow-flight-sql 15.0.0 h1ef3bed_7_cpu
- - libarrow-gandiva 15.0.0 hc896d4e_7_cpu
- - libarrow-substrait 15.0.0 hf368baa_7_cpu
- - libparquet 15.0.0 h7ec3a38_7_cpu
+ url: https://conda.anaconda.org/conda-forge/win-64/pyarrow-15.0.2-py311h6d3785f_6_cpu.conda
+ sha256: ab23199bda435eb994fb2ef26006aff1e5f3c98c610a1e1af01e225cf470d4ef
+ md5: a288ea4e5e7b0049e171af6618eb0dce
+ depends:
+ - libarrow 15.0.2 he3d97d8_6_cpu
+ - libarrow-acero 15.0.2 he0c23c2_6_cpu
+ - libarrow-dataset 15.0.2 he0c23c2_6_cpu
+ - libarrow-flight 15.0.2 ha7f4a34_6_cpu
+ - libarrow-flight-sql 15.0.2 hdeef14f_6_cpu
+ - libarrow-gandiva 15.0.2 hd4515a1_6_cpu
+ - libarrow-substrait 15.0.2 h1f0e801_6_cpu
+ - libparquet 15.0.2 h178134c_6_cpu
+ - libzlib >=1.2.13,<1.3.0a0
- numpy >=1.23.5,<2.0a0
- python >=3.11,<3.12.0a0
- python_abi 3.11.* *_cp311
@@ -18515,27 +27520,29 @@ packages:
- apache-arrow-proc =*=cpu
license: Apache-2.0
license_family: APACHE
- size: 3491133
- timestamp: 1708692576545
+ size: 3498741
+ timestamp: 1714450611689
- kind: conda
name: pyarrow
- version: 15.0.0
- build: py311h9425ff2_7_cpu
- build_number: 7
+ version: 15.0.2
+ build: py311hcc74be5_6_cpu
+ build_number: 6
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/pyarrow-15.0.0-py311h9425ff2_7_cpu.conda
- sha256: 98dd68c998abd2ff269a9f0a65818fa6302981b9f12e31fa36c4f5867cbe8e27
- md5: 324fad9bf415e8a47e7cee26afde2c0b
- depends:
- - libarrow 15.0.0 h331b9b1_7_cpu
- - libarrow-acero 15.0.0 hd427752_7_cpu
- - libarrow-dataset 15.0.0 hd427752_7_cpu
- - libarrow-flight 15.0.0 hbe5bddb_7_cpu
- - libarrow-flight-sql 15.0.0 hb30bb1e_7_cpu
- - libarrow-gandiva 15.0.0 h258d777_7_cpu
- - libarrow-substrait 15.0.0 hb30bb1e_7_cpu
+ url: https://conda.anaconda.org/conda-forge/osx-64/pyarrow-15.0.2-py311hcc74be5_6_cpu.conda
+ sha256: 1fd2e624b7bfd924af1aafda003cec5fb73d078e9c46abb3a634ef8d66139ce8
+ md5: b3695fb6a146f06f293a07ad8140b428
+ depends:
+ - __osx >=10.13
+ - libarrow 15.0.2 hfba3c4c_6_cpu
+ - libarrow-acero 15.0.2 ha0df490_6_cpu
+ - libarrow-dataset 15.0.2 ha0df490_6_cpu
+ - libarrow-flight 15.0.2 h41520de_6_cpu
+ - libarrow-flight-sql 15.0.2 hb2e0ddf_6_cpu
+ - libarrow-gandiva 15.0.2 h81ca85a_6_cpu
+ - libarrow-substrait 15.0.2 hb2e0ddf_6_cpu
- libcxx >=16
- - libparquet 15.0.0 h089a9f7_7_cpu
+ - libparquet 15.0.2 h7cd3cfe_6_cpu
+ - libzlib >=1.2.13,<1.3.0a0
- numpy >=1.23.5,<2.0a0
- python >=3.11,<3.12.0a0
- python_abi 3.11.* *_cp311
@@ -18543,27 +27550,150 @@ packages:
- apache-arrow-proc =*=cpu
license: Apache-2.0
license_family: APACHE
- size: 4054838
- timestamp: 1708693350819
+ size: 4046594
+ timestamp: 1714453153031
- kind: conda
name: pyarrow
- version: 15.0.0
- build: py312h1251918_7_cpu
- build_number: 7
+ version: 15.0.2
+ build: py311hd5e4297_6_cpu
+ build_number: 6
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/pyarrow-15.0.2-py311hd5e4297_6_cpu.conda
+ sha256: 02303b93c2c9e703a7e2ca644fd273ff594a3e2a24863184d60b634c24066622
+ md5: 24a54db56d54e6420e5310ddf4f9f398
+ depends:
+ - libarrow 15.0.2 hefa796f_6_cpu
+ - libarrow-acero 15.0.2 hbabe93e_6_cpu
+ - libarrow-dataset 15.0.2 hbabe93e_6_cpu
+ - libarrow-flight 15.0.2 hc4f8a93_6_cpu
+ - libarrow-flight-sql 15.0.2 he4f5ca8_6_cpu
+ - libarrow-gandiva 15.0.2 hc1954e9_6_cpu
+ - libarrow-substrait 15.0.2 he4f5ca8_6_cpu
+ - libgcc-ng >=12
+ - libparquet 15.0.2 hacf5a1f_6_cpu
+ - libstdcxx-ng >=12
+ - libzlib >=1.2.13,<1.3.0a0
+ - numpy >=1.23.5,<2.0a0
+ - python >=3.11,<3.12.0a0
+ - python_abi 3.11.* *_cp311
+ constrains:
+ - apache-arrow-proc =*=cpu
+ license: Apache-2.0
+ license_family: APACHE
+ size: 4568306
+ timestamp: 1714450747304
+- kind: conda
+ name: pyarrow
+ version: 15.0.2
+ build: py312h3db2695_6_cpu
+ build_number: 6
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/pyarrow-15.0.2-py312h3db2695_6_cpu.conda
+ sha256: f8486a8763bbae069a916a4aa8c2f182ccc676636404de10016c5137ec069740
+ md5: ffc1bbf73e739686a6a7aabcbff197d8
+ depends:
+ - __osx >=10.13
+ - libarrow 15.0.2 hfba3c4c_6_cpu
+ - libarrow-acero 15.0.2 ha0df490_6_cpu
+ - libarrow-dataset 15.0.2 ha0df490_6_cpu
+ - libarrow-flight 15.0.2 h41520de_6_cpu
+ - libarrow-flight-sql 15.0.2 hb2e0ddf_6_cpu
+ - libarrow-gandiva 15.0.2 h81ca85a_6_cpu
+ - libarrow-substrait 15.0.2 hb2e0ddf_6_cpu
+ - libcxx >=16
+ - libparquet 15.0.2 h7cd3cfe_6_cpu
+ - libzlib >=1.2.13,<1.3.0a0
+ - numpy >=1.26.4,<2.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ constrains:
+ - apache-arrow-proc =*=cpu
+ license: Apache-2.0
+ license_family: APACHE
+ size: 3988380
+ timestamp: 1714451533004
+- kind: conda
+ name: pyarrow
+ version: 15.0.2
+ build: py312h3f82784_6_cpu
+ build_number: 6
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/pyarrow-15.0.2-py312h3f82784_6_cpu.conda
+ sha256: 100a8c192f69fd38d0e0d91ef7f551fb65f9c8b0ba9d969568d0587269a47c9e
+ md5: 40ec564012fa7a376e33b0cf4be9b4ac
+ depends:
+ - libarrow 15.0.2 hefa796f_6_cpu
+ - libarrow-acero 15.0.2 hbabe93e_6_cpu
+ - libarrow-dataset 15.0.2 hbabe93e_6_cpu
+ - libarrow-flight 15.0.2 hc4f8a93_6_cpu
+ - libarrow-flight-sql 15.0.2 he4f5ca8_6_cpu
+ - libarrow-gandiva 15.0.2 hc1954e9_6_cpu
+ - libarrow-substrait 15.0.2 he4f5ca8_6_cpu
+ - libgcc-ng >=12
+ - libparquet 15.0.2 hacf5a1f_6_cpu
+ - libstdcxx-ng >=12
+ - libzlib >=1.2.13,<1.3.0a0
+ - numpy >=1.26.4,<2.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ constrains:
+ - apache-arrow-proc =*=cpu
+ license: Apache-2.0
+ license_family: APACHE
+ size: 4563425
+ timestamp: 1714449322113
+- kind: conda
+ name: pyarrow
+ version: 15.0.2
+ build: py312h4af9903_6_cpu
+ build_number: 6
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/pyarrow-15.0.2-py312h4af9903_6_cpu.conda
+ sha256: 8f77d3e843cfdb88302644fd5f5a5249912cb34bf0c38d7a5729a4cdcea89f5a
+ md5: fe7db039b54dfb2f61606b53bd807342
+ depends:
+ - libarrow 15.0.2 he3d97d8_6_cpu
+ - libarrow-acero 15.0.2 he0c23c2_6_cpu
+ - libarrow-dataset 15.0.2 he0c23c2_6_cpu
+ - libarrow-flight 15.0.2 ha7f4a34_6_cpu
+ - libarrow-flight-sql 15.0.2 hdeef14f_6_cpu
+ - libarrow-gandiva 15.0.2 hd4515a1_6_cpu
+ - libarrow-substrait 15.0.2 h1f0e801_6_cpu
+ - libparquet 15.0.2 h178134c_6_cpu
+ - libzlib >=1.2.13,<1.3.0a0
+ - numpy >=1.26.4,<2.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ constrains:
+ - apache-arrow-proc =*=cpu
+ license: Apache-2.0
+ license_family: APACHE
+ size: 3454904
+ timestamp: 1714452447935
+- kind: conda
+ name: pyarrow
+ version: 15.0.2
+ build: py312hbf1f86f_6_cpu
+ build_number: 6
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/pyarrow-15.0.0-py312h1251918_7_cpu.conda
- sha256: a654531d2b9985eec3e04623cfede297564ffad88e0fe3b9a726a82f91020543
- md5: 7f75c13151227041f9c78550a72b2221
- depends:
- - libarrow 15.0.0 hd462d9b_7_cpu
- - libarrow-acero 15.0.0 hebf3989_7_cpu
- - libarrow-dataset 15.0.0 hebf3989_7_cpu
- - libarrow-flight 15.0.0 hcdfa465_7_cpu
- - libarrow-flight-sql 15.0.0 h346e8b1_7_cpu
- - libarrow-gandiva 15.0.0 h843df16_7_cpu
- - libarrow-substrait 15.0.0 he2b277e_7_cpu
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/pyarrow-15.0.2-py312hbf1f86f_6_cpu.conda
+ sha256: fdbd571bdcaa2aba6a65b67f23b0490123b5ed37f6d49d7b95418e9b7b393f8f
+ md5: ccc44f3190fbcd561dac82c9d7810db3
+ depends:
+ - __osx >=11.0
+ - libarrow 15.0.2 hea125af_6_cpu
+ - libarrow-acero 15.0.2 h3f3aa29_6_cpu
+ - libarrow-dataset 15.0.2 h3f3aa29_6_cpu
+ - libarrow-flight 15.0.2 h224147a_6_cpu
+ - libarrow-flight-sql 15.0.2 hb630850_6_cpu
+ - libarrow-gandiva 15.0.2 h3b9069c_6_cpu
+ - libarrow-substrait 15.0.2 hd92e347_6_cpu
- libcxx >=16
- - libparquet 15.0.0 h278d484_7_cpu
+ - libparquet 15.0.2 h5304c63_6_cpu
+ - libzlib >=1.2.13,<1.3.0a0
- numpy >=1.26.4,<2.0a0
- python >=3.12,<3.13.0a0
- python >=3.12,<3.13.0a0 *_cpython
@@ -18572,8 +27702,8 @@ packages:
- apache-arrow-proc =*=cpu
license: Apache-2.0
license_family: APACHE
- size: 3924382
- timestamp: 1708692401227
+ size: 3939611
+ timestamp: 1714452954882
- kind: conda
name: pyarrow-hotfix
version: '0.6'
@@ -18592,100 +27722,252 @@ packages:
timestamp: 1700596511761
- kind: conda
name: pycparser
- version: '2.21'
+ version: '2.22'
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.21-pyhd8ed1ab_0.tar.bz2
- sha256: 74c63fd03f1f1ea2b54e8bc529fd1a600aaafb24027b738d0db87909ee3a33dc
- md5: 076becd9e05608f8dc72757d5f3a91ff
+ url: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.22-pyhd8ed1ab_0.conda
+ sha256: 406001ebf017688b1a1554b49127ca3a4ac4626ec0fd51dc75ffa4415b720b64
+ md5: 844d9eb3b43095b031874477f7d70088
depends:
- - python ==2.7.*|>=3.4
+ - python >=3.8
license: BSD-3-Clause
license_family: BSD
- size: 102747
- timestamp: 1636257201998
+ size: 105098
+ timestamp: 1711811634025
- kind: conda
name: pydantic
- version: 2.6.3
+ version: 2.7.1
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.3-pyhd8ed1ab_0.conda
- sha256: 7367461b8f9e309f20f129605daa78635a1daa2538fe0b40d7f7238f8d430a29
- md5: 4f4e78b41c489b89d98719fcbde09361
+ url: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.7.1-pyhd8ed1ab_0.conda
+ sha256: 176862eeca911df9e21a239a19cee1608f899f969e7bc3b3df1da63aaf97c42b
+ md5: f5dac044e2aaccf73b85053f6db360b5
depends:
- annotated-types >=0.4.0
- - pydantic-core 2.16.3
+ - pydantic-core 2.18.2
- python >=3.7
- typing-extensions >=4.6.1
license: MIT
license_family: MIT
- size: 271902
- timestamp: 1709075341323
+ size: 282275
+ timestamp: 1713905769522
+- kind: conda
+ name: pydantic-core
+ version: 2.18.2
+ build: py310h4f5e652_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/pydantic-core-2.18.2-py310h4f5e652_0.conda
+ sha256: 65b3e93564080340b155d47e0d747e117e54fed65e8c1cf69f954b5dca8137bd
+ md5: 7f6a1e12c2c2e45915566edd05f9c855
+ depends:
+ - __osx >=10.12
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - typing-extensions >=4.6.0,!=4.7.0
+ constrains:
+ - __osx >=10.12
+ license: MIT
+ license_family: MIT
+ size: 1542128
+ timestamp: 1713862582416
+- kind: conda
+ name: pydantic-core
+ version: 2.18.2
+ build: py310h8ffd6aa_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/pydantic-core-2.18.2-py310h8ffd6aa_0.conda
+ sha256: c77ce217badabfac2d4f64561bdf8bae63befe497c84d68f4ed69a35c272395d
+ md5: 28c78083df29be14bf0b2a94d0fd13b1
+ depends:
+ - __osx >=11.0
+ - python >=3.10,<3.11.0a0
+ - python >=3.10,<3.11.0a0 *_cpython
+ - python_abi 3.10.* *_cp310
+ - typing-extensions >=4.6.0,!=4.7.0
+ constrains:
+ - __osx >=11.0
+ license: MIT
+ license_family: MIT
+ size: 1440610
+ timestamp: 1713862858413
+- kind: conda
+ name: pydantic-core
+ version: 2.18.2
+ build: py310hc226416_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/pydantic-core-2.18.2-py310hc226416_0.conda
+ sha256: ea94b60060dd139cd5ad83c0bbf3e7252a0ba708132821422b98718cdfaa9ace
+ md5: 1f29890832e1616cc70f83e80e8d2df3
+ depends:
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - typing-extensions >=4.6.0,!=4.7.0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: MIT
+ license_family: MIT
+ size: 1567093
+ timestamp: 1713862903386
- kind: conda
name: pydantic-core
- version: 2.16.3
- build: py311h46250e7_0
+ version: 2.18.2
+ build: py310he421c4c_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/pydantic-core-2.16.3-py311h46250e7_0.conda
- sha256: 9ea66b121c1f110f9c323d00f6e849df4941b2c0356dd8380a96f56adefebf57
- md5: b8241049c210406da1c9aa8eb4536470
+ url: https://conda.anaconda.org/conda-forge/linux-64/pydantic-core-2.18.2-py310he421c4c_0.conda
+ sha256: f76f44a29cb766bd2ffa42d6cb2ed428567afeb63a9d2c2698432e9441efc2dd
+ md5: 06cdbd8cec7ed1e31814302bc9a04408
depends:
- libgcc-ng >=12
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - typing-extensions >=4.6.0,!=4.7.0
+ license: MIT
+ license_family: MIT
+ size: 1612397
+ timestamp: 1713862091449
+- kind: conda
+ name: pydantic-core
+ version: 2.18.2
+ build: py311h2786eb7_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/pydantic-core-2.18.2-py311h2786eb7_0.conda
+ sha256: 4d248c3885923fd351c2e5550f24d5839939213980e6341de17fe34c5959fccb
+ md5: c8826b4af1d40b4f73879cacfbc38a21
+ depends:
+ - __osx >=10.12
- python >=3.11,<3.12.0a0
- python_abi 3.11.* *_cp311
- typing-extensions >=4.6.0,!=4.7.0
+ constrains:
+ - __osx >=10.12
license: MIT
license_family: MIT
- size: 1659194
- timestamp: 1708700970198
+ size: 1547397
+ timestamp: 1713862554543
- kind: conda
name: pydantic-core
- version: 2.16.3
- build: py311hc37eb10_0
+ version: 2.18.2
+ build: py311h533ab2d_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/pydantic-core-2.16.3-py311hc37eb10_0.conda
- sha256: 3ccbc5d14b643c1bf406b2da39f7cd318d2f5cd9f2f37796efad2a825a2dce53
- md5: 20243cfaf181fac16e4ce93418756ab5
+ url: https://conda.anaconda.org/conda-forge/win-64/pydantic-core-2.18.2-py311h533ab2d_0.conda
+ sha256: fe4f47005534f327b7ebc93c832d734096d582b7bb5ca45740e83d3f1704ebac
+ md5: 1234b7b8ac68b728d48df4a04cab7553
+ depends:
+ - python >=3.11,<3.12.0a0
+ - python_abi 3.11.* *_cp311
+ - typing-extensions >=4.6.0,!=4.7.0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: MIT
+ license_family: MIT
+ size: 1573013
+ timestamp: 1713862871656
+- kind: conda
+ name: pydantic-core
+ version: 2.18.2
+ build: py311h5d190b6_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/pydantic-core-2.18.2-py311h5d190b6_0.conda
+ sha256: df7966a775e5ac77025f804dee9f29b2cd61958963c71b90266f4e40c098781f
+ md5: a3634cb616e56058c5d887e092dfa18d
+ depends:
+ - __osx >=11.0
+ - python >=3.11,<3.12.0a0
+ - python >=3.11,<3.12.0a0 *_cpython
+ - python_abi 3.11.* *_cp311
+ - typing-extensions >=4.6.0,!=4.7.0
+ constrains:
+ - __osx >=11.0
+ license: MIT
+ license_family: MIT
+ size: 1446637
+ timestamp: 1713862610908
+- kind: conda
+ name: pydantic-core
+ version: 2.18.2
+ build: py311h5ecf98a_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/pydantic-core-2.18.2-py311h5ecf98a_0.conda
+ sha256: 111af1d677aaff1b386090872c3009b8989941684af63605fd7700d2b1c99da9
+ md5: 0935eb48085bd65556bb16488866bb47
depends:
+ - libgcc-ng >=12
- python >=3.11,<3.12.0a0
- python_abi 3.11.* *_cp311
- typing-extensions >=4.6.0,!=4.7.0
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
license: MIT
license_family: MIT
- size: 1613720
- timestamp: 1708701859366
+ size: 1617503
+ timestamp: 1713862117041
+- kind: conda
+ name: pydantic-core
+ version: 2.18.2
+ build: py312h2615798_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/pydantic-core-2.18.2-py312h2615798_0.conda
+ sha256: 82de91ebd3938dfc8b18f10dbfbe3342580a3051877ffc901023820f821bf4a2
+ md5: 5f6755dac07239841c84536a1964df7c
+ depends:
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - typing-extensions >=4.6.0,!=4.7.0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: MIT
+ license_family: MIT
+ size: 1587768
+ timestamp: 1713863026726
+- kind: conda
+ name: pydantic-core
+ version: 2.18.2
+ build: py312h4413252_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/pydantic-core-2.18.2-py312h4413252_0.conda
+ sha256: aa9cf2a559a79a0352ff07761cab2b1cd8253e237830d8cc081ce42ba1471a39
+ md5: e8d0dc046dc6282fa1d019eeea9b21e9
+ depends:
+ - libgcc-ng >=12
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - typing-extensions >=4.6.0,!=4.7.0
+ license: MIT
+ license_family: MIT
+ size: 1618614
+ timestamp: 1713862099113
- kind: conda
name: pydantic-core
- version: 2.16.3
- build: py311hd64b9fd_0
+ version: 2.18.2
+ build: py312h5b0d100_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/pydantic-core-2.16.3-py311hd64b9fd_0.conda
- sha256: 222280c774852b1fce3d0fa7a19da8ed77c288583ff90a2b4c19519160f93bd6
- md5: 501a363399b9f0e87d6ecaf7636342cc
+ url: https://conda.anaconda.org/conda-forge/osx-64/pydantic-core-2.18.2-py312h5b0d100_0.conda
+ sha256: b528067992104e671bdf46168ab61b5f7714be0b9cf1265e153c400f6fe6ca53
+ md5: 2ad8b2c7451e469bd126df7adf0bbf1e
depends:
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - __osx >=10.12
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
- typing-extensions >=4.6.0,!=4.7.0
constrains:
- __osx >=10.12
license: MIT
license_family: MIT
- size: 1595156
- timestamp: 1708701423771
+ size: 1543251
+ timestamp: 1713862719156
- kind: conda
name: pydantic-core
- version: 2.16.3
- build: py312h5280bc4_0
+ version: 2.18.2
+ build: py312hbdaf6d9_0
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/pydantic-core-2.16.3-py312h5280bc4_0.conda
- sha256: 6940bc4925e7f65addffafc5820a933737cb7a4003b5bc71dccb1646d20379bf
- md5: 7645b63e934b8494a46263d8dd41255c
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/pydantic-core-2.18.2-py312hbdaf6d9_0.conda
+ sha256: 2c28ef236dd6820368717c8dd7ccd1e246230590ef7fc33b82eda60799a38122
+ md5: aafcafd8f8fee790f9cfd5d5bcbe7bca
depends:
+ - __osx >=11.0
- python >=3.12,<3.13.0a0
- python >=3.12,<3.13.0a0 *_cpython
- python_abi 3.12.* *_cp312
@@ -18694,8 +27976,8 @@ packages:
- __osx >=11.0
license: MIT
license_family: MIT
- size: 1468564
- timestamp: 1708701579683
+ size: 1446204
+ timestamp: 1713862624871
- kind: conda
name: pygments
version: 2.17.2
@@ -18713,29 +27995,29 @@ packages:
timestamp: 1700608076927
- kind: conda
name: pyobjc-core
- version: '10.1'
- build: py311h9b70068_0
+ version: '10.2'
+ build: py312h74abf1d_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/pyobjc-core-10.1-py311h9b70068_0.conda
- sha256: b3c7c35b52460bf64cf7854ea5dc083370419f16f3b4d5b16081be623bc52118
- md5: e5a3b39d0ad3ec4cad4438ca51ce6a65
+ url: https://conda.anaconda.org/conda-forge/osx-64/pyobjc-core-10.2-py312h74abf1d_0.conda
+ sha256: adc9590ed50322275a7e835377157c93e93fd457133ecb62d0ccb60cf2906340
+ md5: fc53fe067431dee92471aac39ed58128
depends:
- libffi >=3.4,<4.0a0
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
- setuptools
license: MIT
license_family: MIT
- size: 469196
- timestamp: 1702120050778
+ size: 469732
+ timestamp: 1710591122760
- kind: conda
name: pyobjc-core
- version: '10.1'
+ version: '10.2'
build: py312h9d22092_0
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/pyobjc-core-10.1-py312h9d22092_0.conda
- sha256: 06a95d717dfb01a7179e2008d77ada2c58c5c900dc1d36f95068ccd170f49a89
- md5: dfdb0f8a37baf06a8dec8dd270c23753
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/pyobjc-core-10.2-py312h9d22092_0.conda
+ sha256: 15db5d1e8639691365a0485c5ee9791760480ffff9cc7d1bbb635a9a83efc35e
+ md5: e8e394bb93509a5f0dacd981dc06099d
depends:
- libffi >=3.4,<4.0a0
- python >=3.12,<3.13.0a0
@@ -18744,43 +28026,156 @@ packages:
- setuptools
license: MIT
license_family: MIT
- size: 456233
- timestamp: 1702120202721
+ size: 458802
+ timestamp: 1710591355614
- kind: conda
name: pyobjc-framework-cocoa
- version: '10.1'
- build: py311h9b70068_0
+ version: '10.2'
+ build: py312h74abf1d_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/pyobjc-framework-cocoa-10.1-py311h9b70068_0.conda
- sha256: 0062a6ec46b41845a97ca689e056e010fba98a0deaec0ff5d7dfe47eb14ccec4
- md5: 03de24825bd26bf77746aa3eacb6f980
+ url: https://conda.anaconda.org/conda-forge/osx-64/pyobjc-framework-cocoa-10.2-py312h74abf1d_0.conda
+ sha256: 6a8b5be723f5c9188bfe3219e0448450775e2e0e798e6986e46605df4c875437
+ md5: b5fca135abb5b6d34afceb96c91e60fd
depends:
- libffi >=3.4,<4.0a0
- - pyobjc-core 10.1.*
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - pyobjc-core 10.2.*
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
license: MIT
license_family: MIT
- size: 372901
- timestamp: 1702125767724
+ size: 369208
+ timestamp: 1710597488587
- kind: conda
name: pyobjc-framework-cocoa
- version: '10.1'
+ version: '10.2'
build: py312h9d22092_0
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/pyobjc-framework-cocoa-10.1-py312h9d22092_0.conda
- sha256: a6a4e8b5bd67d054c0c731cf86795d8040a9cc1c6a92d5116115e4cf4e59beec
- md5: 27dc04bb8bb427ee52facd69f7a6cabb
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/pyobjc-framework-cocoa-10.2-py312h9d22092_0.conda
+ sha256: 3a7130dd53f3b92bae250c8f5831cde031d102b884bc5b556ade3882d8a27151
+ md5: b21b7942dd1d055073b95fed9cac0bff
depends:
- libffi >=3.4,<4.0a0
- - pyobjc-core 10.1.*
+ - pyobjc-core 10.2.*
- python >=3.12,<3.13.0a0
- python >=3.12,<3.13.0a0 *_cpython
- python_abi 3.12.* *_cp312
license: MIT
license_family: MIT
- size: 371148
- timestamp: 1702125850698
+ size: 370036
+ timestamp: 1710597539579
+- kind: conda
+ name: pyogrio
+ version: 0.7.2
+ build: py310h0a1e91f_1
+ build_number: 1
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/pyogrio-0.7.2-py310h0a1e91f_1.conda
+ sha256: d8061d57304d5fdfac6c28bf495ed8f29b2fe2787d4cb6481446a11a573bcff2
+ md5: 0515458c33e8947e7d943f8ef46c9a1f
+ depends:
+ - gdal
+ - libgcc-ng >=12
+ - libgdal >=3.8.0,<3.9.0a0
+ - libstdcxx-ng >=12
+ - numpy >=1.22.4,<2.0a0
+ - packaging
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ license: MIT
+ license_family: MIT
+ size: 634989
+ timestamp: 1700083439189
+- kind: conda
+ name: pyogrio
+ version: 0.7.2
+ build: py310h122fb02_1
+ build_number: 1
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/pyogrio-0.7.2-py310h122fb02_1.conda
+ sha256: 9077ff43776ed64619de0544e087287598d0d101472965f0b7dd8f27b43d2bb0
+ md5: 5a81f5a0e8f42592b9068878f8f72b46
+ depends:
+ - gdal
+ - libgdal >=3.8.0,<3.9.0a0
+ - numpy >=1.22.4,<2.0a0
+ - packaging
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: MIT
+ license_family: MIT
+ size: 794708
+ timestamp: 1700084145904
+- kind: conda
+ name: pyogrio
+ version: 0.7.2
+ build: py310h28a5548_1
+ build_number: 1
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/pyogrio-0.7.2-py310h28a5548_1.conda
+ sha256: 617972ca2b15fffc502f8a609e86c959682cdd0cdb2ad9c2552aaa06352281b9
+ md5: 22334c51c799db0241085ed75db9ae1c
+ depends:
+ - __osx >=10.9
+ - gdal
+ - libcxx >=16.0.6
+ - libgdal >=3.8.0,<3.9.0a0
+ - numpy >=1.22.4,<2.0a0
+ - packaging
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ license: MIT
+ license_family: MIT
+ size: 577643
+ timestamp: 1700083695361
+- kind: conda
+ name: pyogrio
+ version: 0.7.2
+ build: py310h2be8462_1
+ build_number: 1
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/pyogrio-0.7.2-py310h2be8462_1.conda
+ sha256: 97e8fc3d42ad76ce3acc60917bbad3d29d90dc2c20d62000a18f99c986647051
+ md5: 10f4752e54ed46dbfc90a832c745a882
+ depends:
+ - __osx >=10.9
+ - gdal
+ - libcxx >=16.0.6
+ - libgdal >=3.8.0,<3.9.0a0
+ - numpy >=1.22.4,<2.0a0
+ - packaging
+ - python >=3.10,<3.11.0a0
+ - python >=3.10,<3.11.0a0 *_cpython
+ - python_abi 3.10.* *_cp310
+ license: MIT
+ license_family: MIT
+ size: 575522
+ timestamp: 1700083680510
+- kind: conda
+ name: pyogrio
+ version: 0.7.2
+ build: py311h4760b73_1
+ build_number: 1
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/pyogrio-0.7.2-py311h4760b73_1.conda
+ sha256: 271104fb164ad438fc67ad14431e0e0d4bce3a66b70db9981cd48b496b784887
+ md5: bbeaf2a4ef635b6f296085273335fba7
+ depends:
+ - __osx >=10.9
+ - gdal
+ - libcxx >=16.0.6
+ - libgdal >=3.8.0,<3.9.0a0
+ - numpy >=1.23.5,<2.0a0
+ - packaging
+ - python >=3.11,<3.12.0a0
+ - python >=3.11,<3.12.0a0 *_cpython
+ - python_abi 3.11.* *_cp311
+ license: MIT
+ license_family: MIT
+ size: 604617
+ timestamp: 1700083845504
- kind: conda
name: pyogrio
version: 0.7.2
@@ -18848,6 +28243,73 @@ packages:
license_family: MIT
size: 663262
timestamp: 1700083393539
+- kind: conda
+ name: pyogrio
+ version: 0.7.2
+ build: py312h3aaa50d_1
+ build_number: 1
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/pyogrio-0.7.2-py312h3aaa50d_1.conda
+ sha256: 89bc19507aa7dc6ed746862c2cd5d749c6e850d2c71f035f8fdadfee875bb82d
+ md5: 26912d0833a2004013a6baf59d83a218
+ depends:
+ - __osx >=10.9
+ - gdal
+ - libcxx >=16.0.6
+ - libgdal >=3.8.0,<3.9.0a0
+ - numpy >=1.26.0,<2.0a0
+ - packaging
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ license: MIT
+ license_family: MIT
+ size: 597677
+ timestamp: 1700083590982
+- kind: conda
+ name: pyogrio
+ version: 0.7.2
+ build: py312h66d9856_1
+ build_number: 1
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/pyogrio-0.7.2-py312h66d9856_1.conda
+ sha256: 6f956d6a6107169744ed3d1b1958cb3ec1f2b18659fcf69b44e45f3311ba8d64
+ md5: ca00256c57930bc4addd3e6649ce340c
+ depends:
+ - gdal
+ - libgcc-ng >=12
+ - libgdal >=3.8.0,<3.9.0a0
+ - libstdcxx-ng >=12
+ - numpy >=1.26.0,<2.0a0
+ - packaging
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ license: MIT
+ license_family: MIT
+ size: 656792
+ timestamp: 1700083444209
+- kind: conda
+ name: pyogrio
+ version: 0.7.2
+ build: py312he3b4e22_1
+ build_number: 1
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/pyogrio-0.7.2-py312he3b4e22_1.conda
+ sha256: 634295877fe52c9822a16eed69e21b164752b9d29905b6c0b3bbce4e73097bad
+ md5: 5ce109a1361640104e8853978a56634a
+ depends:
+ - gdal
+ - libgdal >=3.8.0,<3.9.0a0
+ - numpy >=1.26.0,<2.0a0
+ - packaging
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: MIT
+ license_family: MIT
+ size: 809000
+ timestamp: 1700084142163
- kind: conda
name: pyogrio
version: 0.7.2
@@ -18873,96 +28335,293 @@ packages:
timestamp: 1700083948937
- kind: conda
name: pyparsing
- version: 3.1.1
+ version: 3.1.2
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.1-pyhd8ed1ab_0.conda
- sha256: 4a1332d634b6c2501a973655d68f08c9c42c0bd509c349239127b10572b8354b
- md5: 176f7d56f0cfe9008bdf1bccd7de02fb
+ url: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda
+ sha256: 06c77cb03e5dde2d939b216c99dd2db52ea93a4c7c599f3882f136005c359c7b
+ md5: b9a4dacf97241704529131a0dfc0494f
depends:
- python >=3.6
license: MIT
license_family: MIT
- size: 89521
- timestamp: 1690737983548
+ size: 89455
+ timestamp: 1709721146886
- kind: conda
name: pyproj
version: 3.6.1
- build: py311h82130bc_5
- build_number: 5
+ build: py310h42c19a3_6
+ build_number: 6
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/pyproj-3.6.1-py310h42c19a3_6.conda
+ sha256: 3d0998cc616639c5f63bfc3201ebba55adc402a437663fdfe7d6dbd30d24b543
+ md5: 6624c4fa62e302e4f229226b39991188
+ depends:
+ - certifi
+ - proj >=9.4.0,<9.4.1.0a0
+ - python >=3.10,<3.11.0a0
+ - python >=3.10,<3.11.0a0 *_cpython
+ - python_abi 3.10.* *_cp310
+ license: MIT
+ license_family: MIT
+ size: 465938
+ timestamp: 1714527615370
+- kind: conda
+ name: pyproj
+ version: 3.6.1
+ build: py310h5c96a55_6
+ build_number: 6
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/pyproj-3.6.1-py310h5c96a55_6.conda
+ sha256: 908a1be6ebaae035421e59de84ae02e67b2c33a5d6a81b9ce8d5f84f2b7019bc
+ md5: b5b1bfae832e15d6393c4cc46b8e0071
+ depends:
+ - certifi
+ - proj >=9.4.0,<9.4.1.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ license: MIT
+ license_family: MIT
+ size: 461219
+ timestamp: 1714527601066
+- kind: conda
+ name: pyproj
+ version: 3.6.1
+ build: py310h7677b6e_6
+ build_number: 6
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/pyproj-3.6.1-py310h7677b6e_6.conda
+ sha256: 463702ac437b1fe29189727521d18eb6dc0d580442fb5fd385ff5b4b650146be
+ md5: e45659a778e2be5fc94a816fe7129f1d
+ depends:
+ - certifi
+ - libgcc-ng >=12
+ - proj >=9.4.0,<9.4.1.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ license: MIT
+ license_family: MIT
+ size: 526582
+ timestamp: 1714527399167
+- kind: conda
+ name: pyproj
+ version: 3.6.1
+ build: py310h98c8b67_6
+ build_number: 6
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/pyproj-3.6.1-py311h82130bc_5.conda
- sha256: a51281db4d150fbeea64a41ac3a052185f92b2d8fba1f39db38e623151989328
- md5: 80565c1816e897193c2ea4ef8e3fd4cc
+ url: https://conda.anaconda.org/conda-forge/win-64/pyproj-3.6.1-py310h98c8b67_6.conda
+ sha256: 9376c96f3de6237de8b6a2ef35a01cc69a524eaf3ae35bc10d6e3b11a1a15d07
+ md5: 70e7f657b302775a5f614a8342f0d92a
depends:
- certifi
- - proj >=9.3.1,<9.3.2.0a0
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - proj >=9.4.0,<9.4.1.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
- ucrt >=10.0.20348.0
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
license: MIT
license_family: MIT
- size: 736683
- timestamp: 1702028617496
+ size: 710562
+ timestamp: 1714527884809
- kind: conda
name: pyproj
version: 3.6.1
- build: py311hb91e5a3_5
- build_number: 5
+ build: py311h80d4116_6
+ build_number: 6
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/pyproj-3.6.1-py311hb91e5a3_5.conda
- sha256: 1a8a0634cd1ae9fe7935614cb6e9c8ade72821c5361365f83a4a8d368e7f373c
- md5: 08bdce93070973621ff5416d297196e4
+ url: https://conda.anaconda.org/conda-forge/osx-64/pyproj-3.6.1-py311h80d4116_6.conda
+ sha256: a72beb39abf8d81c403eae5f260dd545ae4cb66a9c0d6b4391fb1b8c831f30d2
+ md5: e809b0265ed1f678f419d92b7c759ce3
depends:
- certifi
- - proj >=9.3.1,<9.3.2.0a0
+ - proj >=9.4.0,<9.4.1.0a0
- python >=3.11,<3.12.0a0
- python_abi 3.11.* *_cp311
license: MIT
license_family: MIT
- size: 488851
- timestamp: 1702028474389
+ size: 490304
+ timestamp: 1714527598415
- kind: conda
name: pyproj
version: 3.6.1
- build: py311hca0b8b9_5
- build_number: 5
+ build: py311ha70c146_6
+ build_number: 6
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/pyproj-3.6.1-py311ha70c146_6.conda
+ sha256: bf658439d674730fd8b8293af43c1cc47e872b9c4962424eeba7ab15609b1d07
+ md5: a78eeca1fc821ed9fe9937cac3e2b519
+ depends:
+ - certifi
+ - proj >=9.4.0,<9.4.1.0a0
+ - python >=3.11,<3.12.0a0
+ - python >=3.11,<3.12.0a0 *_cpython
+ - python_abi 3.11.* *_cp311
+ license: MIT
+ license_family: MIT
+ size: 494059
+ timestamp: 1714527717716
+- kind: conda
+ name: pyproj
+ version: 3.6.1
+ build: py311hb3a3e68_6
+ build_number: 6
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/pyproj-3.6.1-py311hca0b8b9_5.conda
- sha256: 268f77203171d4711d1264fa5fa0e7b066362e7f7c72753deb8c4d40fd40e55b
- md5: cac429fcb9126d5e6f02c8ba61c2a811
+ url: https://conda.anaconda.org/conda-forge/linux-64/pyproj-3.6.1-py311hb3a3e68_6.conda
+ sha256: e6c48ee093af7f0735592ba41a937a779e8411a349829f2eefac8f217a947b5d
+ md5: bce79adf84cd7cd9b9b14e43d6d52daf
depends:
- certifi
- libgcc-ng >=12
- - proj >=9.3.1,<9.3.2.0a0
+ - proj >=9.4.0,<9.4.1.0a0
- python >=3.11,<3.12.0a0
- python_abi 3.11.* *_cp311
license: MIT
license_family: MIT
- size: 552320
- timestamp: 1702028242116
+ size: 552537
+ timestamp: 1714527437703
- kind: conda
name: pyproj
version: 3.6.1
- build: py312h4d912e0_5
- build_number: 5
+ build: py311hc1951a7_6
+ build_number: 6
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/pyproj-3.6.1-py311hc1951a7_6.conda
+ sha256: 4e4fefc65254bbd27920b46b42187e8eb283942996ef601f358bd52b1306f14b
+ md5: 3787d1635650e0c2caa166e49a2aa10c
+ depends:
+ - certifi
+ - proj >=9.4.0,<9.4.1.0a0
+ - python >=3.11,<3.12.0a0
+ - python_abi 3.11.* *_cp311
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: MIT
+ license_family: MIT
+ size: 735523
+ timestamp: 1714527989581
+- kind: conda
+ name: pyproj
+ version: 3.6.1
+ build: py312h616b599_6
+ build_number: 6
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/pyproj-3.6.1-py312h616b599_6.conda
+ sha256: e143d864e4b69e39ec92a8c890b9d17704200791baf237894a4ee2f9623a0f29
+ md5: cfcf2bc096234b70222898db24cabbaf
+ depends:
+ - certifi
+ - proj >=9.4.0,<9.4.1.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: MIT
+ license_family: MIT
+ size: 724762
+ timestamp: 1714527885135
+- kind: conda
+ name: pyproj
+ version: 3.6.1
+ build: py312h71aa0db_6
+ build_number: 6
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/pyproj-3.6.1-py312h4d912e0_5.conda
- sha256: 776f5610dc6cb6703c87bab44ecb8d83e04b40abf94200962aea13bda2d9fec7
- md5: 665a07a48339e9af060119dec25646a8
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/pyproj-3.6.1-py312h71aa0db_6.conda
+ sha256: 83a3dcf0ddafe43bdc15d146f7ccaeaed300ad49035ccd5e6a7a9887a0bc6998
+ md5: b3f679072b35d5fbd9eca585ee28f5c8
depends:
- certifi
- - proj >=9.3.1,<9.3.2.0a0
+ - proj >=9.4.0,<9.4.1.0a0
- python >=3.12,<3.13.0a0
- python >=3.12,<3.13.0a0 *_cpython
- python_abi 3.12.* *_cp312
license: MIT
license_family: MIT
- size: 485156
- timestamp: 1702028605807
+ size: 485419
+ timestamp: 1714527771880
+- kind: conda
+ name: pyproj
+ version: 3.6.1
+ build: py312h91094b2_6
+ build_number: 6
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/pyproj-3.6.1-py312h91094b2_6.conda
+ sha256: 516e4702606f0b02429af069354a674beb992477172a299bba8bd5136b507045
+ md5: aedb5e708ce97193a64f364636ce05b4
+ depends:
+ - certifi
+ - proj >=9.4.0,<9.4.1.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ license: MIT
+ license_family: MIT
+ size: 481177
+ timestamp: 1714527552565
+- kind: conda
+ name: pyproj
+ version: 3.6.1
+ build: py312hb591178_6
+ build_number: 6
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/pyproj-3.6.1-py312hb591178_6.conda
+ sha256: 19d49427fa8d685b4b16831a4915dcd4c6a4511c7cd6ed52d669e39abd0618e7
+ md5: e5a041de2ecaee7e02c40cf82afa132e
+ depends:
+ - certifi
+ - libgcc-ng >=12
+ - proj >=9.4.0,<9.4.1.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ license: MIT
+ license_family: MIT
+ size: 546698
+ timestamp: 1714527374939
+- kind: conda
+ name: pyqt
+ version: 5.15.9
+ build: py310h04931ad_5
+ build_number: 5
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/pyqt-5.15.9-py310h04931ad_5.conda
+ sha256: 92fe1c9eda6be7879ba798066016c1065047cc13d730105f5109835cbfeae8f1
+ md5: f4fe7a6e3d7c78c9de048ea9dda21690
+ depends:
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
+ - pyqt5-sip 12.12.2 py310hc6cd4ac_5
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - qt-main >=5.15.8,<5.16.0a0
+ - sip >=6.7.11,<6.8.0a0
+ license: GPL-3.0-only
+ license_family: GPL
+ size: 5282574
+ timestamp: 1695420653225
+- kind: conda
+ name: pyqt
+ version: 5.15.9
+ build: py310h1fd54f2_5
+ build_number: 5
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/pyqt-5.15.9-py310h1fd54f2_5.conda
+ sha256: 3aa9660d4b0c2db725bbad77840ac17180c5093617c34aa9467276dbac2d19e4
+ md5: 5df867d89a0482ea3591fe61f1558781
+ depends:
+ - pyqt5-sip 12.12.2 py310h00ffb61_5
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - qt-main >=5.15.8,<5.16.0a0
+ - sip >=6.7.11,<6.8.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: GPL-3.0-only
+ license_family: GPL
+ size: 3881331
+ timestamp: 1695421370903
- kind: conda
name: pyqt
version: 5.15.9
@@ -18985,28 +28644,6 @@ packages:
license_family: GPL
size: 3906427
timestamp: 1695422270104
-- kind: conda
- name: pyqt
- version: 5.15.9
- build: py311h5b1a2bc_5
- build_number: 5
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/pyqt-5.15.9-py311h5b1a2bc_5.conda
- sha256: 995ccdbe3784968e138e086799b3d4a94ba23df32662937475d53bf47676e8d6
- md5: 8cc18fe7d8016c47021c2629f8882785
- depends:
- - libcxx >=15.0.7
- - pyqt5-sip 12.12.2 py311h46b81f0_5
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
- - qt-main >=5.15.8,<5.16.0a0
- - sip >=6.7.11,<6.8.0a0
- constrains:
- - __osx >=10.13
- license: GPL-3.0-only
- license_family: GPL
- size: 4096527
- timestamp: 1695422132108
- kind: conda
name: pyqt
version: 5.15.9
@@ -19048,6 +28685,71 @@ packages:
license_family: GPL
size: 3937925
timestamp: 1695422000443
+- kind: conda
+ name: pyqt
+ version: 5.15.9
+ build: py312h949fe66_5
+ build_number: 5
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/pyqt-5.15.9-py312h949fe66_5.conda
+ sha256: 22ccc59c03872fc680be597a1783d2c77e6b2d16953e2ec67df91f073820bebe
+ md5: f6548a564e2d01b2a42020259503945b
+ depends:
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
+ - pyqt5-sip 12.12.2 py312h30efb56_5
+ - python >=3.12.0rc3,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - qt-main >=5.15.8,<5.16.0a0
+ - sip >=6.7.11,<6.8.0a0
+ license: GPL-3.0-only
+ license_family: GPL
+ size: 5263946
+ timestamp: 1695421350577
+- kind: conda
+ name: pyqt
+ version: 5.15.9
+ build: py312hd74d816_5
+ build_number: 5
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/pyqt-5.15.9-py312hd74d816_5.conda
+ sha256: 5418cc97b19ab30428da5daa0b81be1846176d76cf7fe45de5c3d88c8571f5bb
+ md5: d62c7597491cbfd388936263fc592670
+ depends:
+ - libcxx >=15.0.7
+ - pyqt5-sip 12.12.2 py312he36337a_5
+ - python >=3.12.0rc3,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - qt-main >=5.15.8,<5.16.0a0
+ - sip >=6.7.11,<6.8.0a0
+ constrains:
+ - __osx >=10.13
+ license: GPL-3.0-only
+ license_family: GPL
+ size: 4082832
+ timestamp: 1695422147264
+- kind: conda
+ name: pyqt
+ version: 5.15.9
+ build: py312he09f080_5
+ build_number: 5
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/pyqt-5.15.9-py312he09f080_5.conda
+ sha256: c524cafaf98661f3bd5819494b41563fe5a851f6e44a7d08631c99f1dfb961c7
+ md5: fb0861092c40e5d054e984abd88e5ea8
+ depends:
+ - pyqt5-sip 12.12.2 py312h53d5487_5
+ - python >=3.12.0rc3,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - qt-main >=5.15.8,<5.16.0a0
+ - sip >=6.7.11,<6.8.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: GPL-3.0-only
+ license_family: GPL
+ size: 3894083
+ timestamp: 1695421066159
- kind: conda
name: pyqt-stubs
version: 5.15.6.0
@@ -19067,16 +28769,16 @@ packages:
- kind: conda
name: pyqt5-sip
version: 12.12.2
- build: py311h12c1d0e_5
+ build: py310h00ffb61_5
build_number: 5
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/pyqt5-sip-12.12.2-py311h12c1d0e_5.conda
- sha256: 7130493794e4c65f4e78258619a6ef9d022ba9f9b0f61e70d2973d9bc5f10e11
- md5: 1b53a20f311bd99a1e55b31b7219106f
+ url: https://conda.anaconda.org/conda-forge/win-64/pyqt5-sip-12.12.2-py310h00ffb61_5.conda
+ sha256: 59cc61adf7563005c8d5d305539f3fbddf6fed0298d747cc0a93fba667191411
+ md5: bf433b3dde7783aed71126051d1a5878
depends:
- packaging
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
- sip
- toml
- ucrt >=10.0.20348.0
@@ -19084,28 +28786,51 @@ packages:
- vc14_runtime >=14.29.30139
license: GPL-3.0-only
license_family: GPL
- size: 79724
- timestamp: 1695418442619
+ size: 79787
+ timestamp: 1695418575552
- kind: conda
name: pyqt5-sip
version: 12.12.2
- build: py311h46b81f0_5
+ build: py310hc6cd4ac_5
build_number: 5
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/pyqt5-sip-12.12.2-py311h46b81f0_5.conda
- sha256: de388bc1c6dcbccc04250b1a085e306905df02b4112296e1e7bc33b01467b541
- md5: 922f2e1968737a9323507bc7eb21fe6c
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/pyqt5-sip-12.12.2-py310hc6cd4ac_5.conda
+ sha256: a6aec078683ed3cf1650b7c47e3f0fe185015d54ea37fe76b9f31f05e1fd087d
+ md5: ef5333594a958b25912002886b82b253
+ depends:
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
+ - packaging
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - sip
+ - toml
+ license: GPL-3.0-only
+ license_family: GPL
+ size: 84579
+ timestamp: 1695418069976
+- kind: conda
+ name: pyqt5-sip
+ version: 12.12.2
+ build: py311h12c1d0e_5
+ build_number: 5
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/pyqt5-sip-12.12.2-py311h12c1d0e_5.conda
+ sha256: 7130493794e4c65f4e78258619a6ef9d022ba9f9b0f61e70d2973d9bc5f10e11
+ md5: 1b53a20f311bd99a1e55b31b7219106f
depends:
- - libcxx >=15.0.7
- packaging
- python >=3.11,<3.12.0a0
- python_abi 3.11.* *_cp311
- sip
- toml
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
license: GPL-3.0-only
license_family: GPL
- size: 74911
- timestamp: 1695418163407
+ size: 79724
+ timestamp: 1695418442619
- kind: conda
name: pyqt5-sip
version: 12.12.2
@@ -19127,6 +28852,49 @@ packages:
license_family: GPL
size: 85162
timestamp: 1695418076285
+- kind: conda
+ name: pyqt5-sip
+ version: 12.12.2
+ build: py312h30efb56_5
+ build_number: 5
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/pyqt5-sip-12.12.2-py312h30efb56_5.conda
+ sha256: c7154e1933360881b99687d580c4b941fb0cc6ad9574762d409a28196ef5e240
+ md5: 8a2a122dc4fe14d8cff38f1cf426381f
+ depends:
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
+ - packaging
+ - python >=3.12.0rc3,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - sip
+ - toml
+ license: GPL-3.0-only
+ license_family: GPL
+ size: 85809
+ timestamp: 1695418132533
+- kind: conda
+ name: pyqt5-sip
+ version: 12.12.2
+ build: py312h53d5487_5
+ build_number: 5
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/pyqt5-sip-12.12.2-py312h53d5487_5.conda
+ sha256: 56242d5203e7231ee5bdd25df417dfc60a4f38e335f922f7e00f8c518ba87bd1
+ md5: dbaa69d84f7da6ac3ec20de2a9529a4b
+ depends:
+ - packaging
+ - python >=3.12.0rc3,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - sip
+ - toml
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: GPL-3.0-only
+ license_family: GPL
+ size: 79366
+ timestamp: 1695418564486
- kind: conda
name: pyqt5-sip
version: 12.12.2
@@ -19148,95 +28916,115 @@ packages:
license_family: GPL
size: 75839
timestamp: 1695418391490
+- kind: conda
+ name: pyqt5-sip
+ version: 12.12.2
+ build: py312he36337a_5
+ build_number: 5
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/pyqt5-sip-12.12.2-py312he36337a_5.conda
+ sha256: 0f6ff7121368393e9b33b180380484f6414eaec28a9780aeb2d9a26ad0d47631
+ md5: 933ecaa04344fbbe126f9cb731adeb84
+ depends:
+ - libcxx >=15.0.7
+ - packaging
+ - python >=3.12.0rc3,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - sip
+ - toml
+ license: GPL-3.0-only
+ license_family: GPL
+ size: 75901
+ timestamp: 1695418352795
- kind: conda
name: pyqtwebkit
version: 5.15.9
- build: py311h4c6dc46_2
+ build: py312h14105d7_2
build_number: 2
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/pyqtwebkit-5.15.9-py311h4c6dc46_2.conda
- sha256: 4f92cb54dd303eb4e940647b42eefc5ab00e0cb9d1873814b95fef78f1edd97d
- md5: c991f90dff9816159fefac95be32741e
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/pyqtwebkit-5.15.9-py312h14105d7_2.conda
+ sha256: d46a28f06e371369083b75ea7e2cf68ee215d20a63691391c19396c66d41e84d
+ md5: ae52c6875282c378600eef8bcb3ec91d
depends:
- - __glibc >=2.17,<3.0.a0
- - libgcc-ng >=12
- - libstdcxx-ng >=12
+ - libcxx >=15.0.7
- pyqt >=5.15.9,<5.16.0a0
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12.0rc3,<3.13.0a0
+ - python >=3.12.0rc3,<3.13.0a0 *_cpython
+ - python_abi 3.12.* *_cp312
- qt-main >=5.15.8,<5.16.0a0
- qtwebkit
- - sip >=6.7.11,<6.8.0a0
license: LicenseRef-Commercial or GPL-3.0-only
license_family: GPL
- size: 155701
- timestamp: 1695649097615
+ size: 128105
+ timestamp: 1695649919135
- kind: conda
name: pyqtwebkit
version: 5.15.9
- build: py311h5a77453_2
+ build: py312h5ae8335_2
build_number: 2
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/pyqtwebkit-5.15.9-py311h5a77453_2.conda
- sha256: 7e98e8cb281131da97af0c1f8081fa877bfbdc5917c54897928ed9bd4a651c68
- md5: 2d3591431ba7d9d1790b10093ff5dcf1
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/pyqtwebkit-5.15.9-py312h5ae8335_2.conda
+ sha256: 65c4fb20ae0b7958508d4a3681969e099c0f8b54e79085286c567c108b9ad2b5
+ md5: 9e30fdebfca36f00f39abe537d990cec
depends:
+ - __osx >=10.13
+ - libcxx >=15.0.7
- pyqt >=5.15.9,<5.16.0a0
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12.0rc3,<3.13.0a0
+ - python_abi 3.12.* *_cp312
- qt-main >=5.15.8,<5.16.0a0
- qtwebkit
- sip >=6.7.11,<6.8.0a0
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
license: LicenseRef-Commercial or GPL-3.0-only
license_family: GPL
- size: 124670
- timestamp: 1695652112782
+ size: 125955
+ timestamp: 1695649893086
- kind: conda
name: pyqtwebkit
version: 5.15.9
- build: py311hdffe31b_2
+ build: py312hc23280e_2
build_number: 2
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/pyqtwebkit-5.15.9-py311hdffe31b_2.conda
- sha256: 2026b9d0aedd9d3574a927f482d5601c72259e8d094c7a41a45f4552d9886b41
- md5: c88ba37692b34dc947b0c46cefe32bbd
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/pyqtwebkit-5.15.9-py312hc23280e_2.conda
+ sha256: 4070a7685df9355b2bee3cf56af679d744bc01a1bf7e2f3c7923d0d90cae83de
+ md5: 811adee477670ad385b4c9c8e9f71440
depends:
- - __osx >=10.13
- - libcxx >=15.0.7
+ - __glibc >=2.17,<3.0.a0
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
- pyqt >=5.15.9,<5.16.0a0
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12.0rc3,<3.13.0a0
+ - python_abi 3.12.* *_cp312
- qt-main >=5.15.8,<5.16.0a0
- qtwebkit
- sip >=6.7.11,<6.8.0a0
license: LicenseRef-Commercial or GPL-3.0-only
license_family: GPL
- size: 124908
- timestamp: 1695649622398
+ size: 155959
+ timestamp: 1695649151624
- kind: conda
name: pyqtwebkit
version: 5.15.9
- build: py312h14105d7_2
+ build: py312hca0710b_2
build_number: 2
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/pyqtwebkit-5.15.9-py312h14105d7_2.conda
- sha256: d46a28f06e371369083b75ea7e2cf68ee215d20a63691391c19396c66d41e84d
- md5: ae52c6875282c378600eef8bcb3ec91d
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/pyqtwebkit-5.15.9-py312hca0710b_2.conda
+ sha256: 0234202c25300bc3526c95a0dff625214a4705cd3f8c43cdb2dd73631918b312
+ md5: 478e037ac192b5a065dc42f0422482d2
depends:
- - libcxx >=15.0.7
- pyqt >=5.15.9,<5.16.0a0
- python >=3.12.0rc3,<3.13.0a0
- - python >=3.12.0rc3,<3.13.0a0 *_cpython
- python_abi 3.12.* *_cp312
- qt-main >=5.15.8,<5.16.0a0
- qtwebkit
+ - sip >=6.7.11,<6.8.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
license: LicenseRef-Commercial or GPL-3.0-only
license_family: GPL
- size: 128105
- timestamp: 1695649919135
+ size: 124366
+ timestamp: 1695651311454
- kind: conda
name: pysocks
version: 1.7.1
@@ -19274,45 +29062,45 @@ packages:
timestamp: 1661604969727
- kind: conda
name: pytest
- version: 8.0.2
+ version: 8.2.0
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/pytest-8.0.2-pyhd8ed1ab_0.conda
- sha256: ea81e7efe66cffab5c8316d3a7e125e29dff9cfb19fc3578b72f965e8a876539
- md5: 40bd3ef942b9642a3eb20b0bbf92469b
+ url: https://conda.anaconda.org/conda-forge/noarch/pytest-8.2.0-pyhd8ed1ab_0.conda
+ sha256: 02227fea7b50132a75fb223c2d796306ffebd4dc6324897455f17cb54d16683d
+ md5: 088ff7e08f4f10a06190468048c2a353
depends:
- colorama
- exceptiongroup >=1.0.0rc8
- iniconfig
- packaging
- - pluggy <2.0,>=1.3.0
+ - pluggy <2.0,>=1.5
- python >=3.8
- - tomli >=1.0.0
+ - tomli >=1
constrains:
- pytest-faulthandler >=2
license: MIT
license_family: MIT
- size: 251895
- timestamp: 1708821744729
+ size: 257122
+ timestamp: 1714308481448
- kind: conda
name: pytest-cov
- version: 4.1.0
+ version: 5.0.0
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda
- sha256: f07d3b44cabbed7843de654c4a6990a08475ce3b708bb735c7da9842614586f2
- md5: 06eb685a3a0b146347a58dda979485da
+ url: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda
+ sha256: 218306243faf3c36347131c2b36bb189daa948ac2e92c7ab52bb26cc8c157b3c
+ md5: c54c0107057d67ddf077751339ec2c63
depends:
- coverage >=5.2.1
- pytest >=4.6
- - python >=3.7
+ - python >=3.8
- toml
license: MIT
license_family: MIT
- size: 25436
- timestamp: 1684965001294
+ size: 25507
+ timestamp: 1711411153367
- kind: conda
name: pytest-xdist
version: 3.5.0
@@ -19334,17 +29122,118 @@ packages:
timestamp: 1700593072448
- kind: conda
name: python
- version: 3.11.8
- build: h2628c8c_0_cpython
+ version: 3.10.14
+ build: h00d2728_0_cpython
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/python-3.10.14-h00d2728_0_cpython.conda
+ sha256: 00c1de2d46ede26609ef4e84a44b83be7876ba6a0215b7c83bff41a0656bf694
+ md5: 0a1cddc4382c5c171e791c70740546dd
+ depends:
+ - bzip2 >=1.0.8,<2.0a0
+ - libffi >=3.4,<4.0a0
+ - libsqlite >=3.45.2,<4.0a0
+ - libzlib >=1.2.13,<1.3.0a0
+ - ncurses >=6.4.20240210,<7.0a0
+ - openssl >=3.2.1,<4.0a0
+ - readline >=8.2,<9.0a0
+ - tk >=8.6.13,<8.7.0a0
+ - tzdata
+ - xz >=5.2.6,<6.0a0
+ constrains:
+ - python_abi 3.10.* *_cp310
+ license: Python-2.0
+ size: 11890228
+ timestamp: 1710940046031
+- kind: conda
+ name: python
+ version: 3.10.14
+ build: h2469fbe_0_cpython
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.10.14-h2469fbe_0_cpython.conda
+ sha256: 454d609fe25daedce9e886efcbfcadad103ed0362e7cb6d2bcddec90b1ecd3ee
+ md5: 4ae999c8227c6d8c7623d32d51d25ea9
+ depends:
+ - bzip2 >=1.0.8,<2.0a0
+ - libffi >=3.4,<4.0a0
+ - libsqlite >=3.45.2,<4.0a0
+ - libzlib >=1.2.13,<1.3.0a0
+ - ncurses >=6.4.20240210,<7.0a0
+ - openssl >=3.2.1,<4.0a0
+ - readline >=8.2,<9.0a0
+ - tk >=8.6.13,<8.7.0a0
+ - tzdata
+ - xz >=5.2.6,<6.0a0
+ constrains:
+ - python_abi 3.10.* *_cp310
+ license: Python-2.0
+ size: 12336005
+ timestamp: 1710939659384
+- kind: conda
+ name: python
+ version: 3.10.14
+ build: h4de0772_0_cpython
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/python-3.10.14-h4de0772_0_cpython.conda
+ sha256: 332f97d9927b65857d6d2d4d50d66dce9b37da81edb67833ae6b88ad52acbd0c
+ md5: 4a00e84f29d1eb418d84970598c444e1
+ depends:
+ - bzip2 >=1.0.8,<2.0a0
+ - libffi >=3.4,<4.0a0
+ - libsqlite >=3.45.2,<4.0a0
+ - libzlib >=1.2.13,<1.3.0a0
+ - openssl >=3.2.1,<4.0a0
+ - tk >=8.6.13,<8.7.0a0
+ - tzdata
+ - vc >=14.1,<15
+ - vc14_runtime >=14.16.27033
+ - xz >=5.2.6,<6.0a0
+ constrains:
+ - python_abi 3.10.* *_cp310
+ license: Python-2.0
+ size: 15864027
+ timestamp: 1710938888352
+- kind: conda
+ name: python
+ version: 3.10.14
+ build: hd12c33a_0_cpython
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/python-3.10.14-hd12c33a_0_cpython.conda
+ sha256: 76a5d12e73542678b70a94570f7b0f7763f9a938f77f0e75d9ea615ef22aa84c
+ md5: 2b4ba962994e8bd4be9ff5b64b75aff2
+ depends:
+ - bzip2 >=1.0.8,<2.0a0
+ - ld_impl_linux-64 >=2.36.1
+ - libffi >=3.4,<4.0a0
+ - libgcc-ng >=12
+ - libnsl >=2.0.1,<2.1.0a0
+ - libsqlite >=3.45.2,<4.0a0
+ - libuuid >=2.38.1,<3.0a0
+ - libxcrypt >=4.4.36
+ - libzlib >=1.2.13,<1.3.0a0
+ - ncurses >=6.4.20240210,<7.0a0
+ - openssl >=3.2.1,<4.0a0
+ - readline >=8.2,<9.0a0
+ - tk >=8.6.13,<8.7.0a0
+ - tzdata
+ - xz >=5.2.6,<6.0a0
+ constrains:
+ - python_abi 3.10.* *_cp310
+ license: Python-2.0
+ size: 25517742
+ timestamp: 1710939725109
+- kind: conda
+ name: python
+ version: 3.11.9
+ build: h631f459_0_cpython
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/python-3.11.8-h2628c8c_0_cpython.conda
- sha256: 8b2db64acfd351f4281d75465b09109f4b51096d5e58128cb7a4c1d2ade47203
- md5: 5af649cf283ec4c1ffff5c4fe0cec12b
+ url: https://conda.anaconda.org/conda-forge/win-64/python-3.11.9-h631f459_0_cpython.conda
+ sha256: 23698d4eb24970f74911d120204318d48384fabbb25e1e57773ad74fcd38fb12
+ md5: d7ed1e7c4e2dcdfd4599bd42c0613e6c
depends:
- bzip2 >=1.0.8,<2.0a0
- - libexpat >=2.5.0,<3.0a0
+ - libexpat >=2.6.2,<3.0a0
- libffi >=3.4,<4.0a0
- - libsqlite >=3.45.1,<4.0a0
+ - libsqlite >=3.45.3,<4.0a0
- libzlib >=1.2.13,<1.3.0a0
- openssl >=3.2.1,<4.0a0
- tk >=8.6.13,<8.7.0a0
@@ -19356,23 +29245,24 @@ packages:
constrains:
- python_abi 3.11.* *_cp311
license: Python-2.0
- size: 18096526
- timestamp: 1708116524168
+ size: 18232422
+ timestamp: 1713551717924
- kind: conda
name: python
- version: 3.11.8
- build: h9f0c242_0_cpython
+ version: 3.11.9
+ build: h657bba9_0_cpython
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/python-3.11.8-h9f0c242_0_cpython.conda
- sha256: 645dad20b46041ecd6a85eccbb3291fa1ad7921eea065c0081efff78c3d7e27a
- md5: 22bda10a0f425564a538aed9a0e8a9df
+ url: https://conda.anaconda.org/conda-forge/osx-64/python-3.11.9-h657bba9_0_cpython.conda
+ sha256: 3b50a5abb3b812875beaa9ab792dbd1bf44f335c64e9f9fedcf92d953995651c
+ md5: 612763bc5ede9552e4233ec518b9c9fb
depends:
+ - __osx >=10.9
- bzip2 >=1.0.8,<2.0a0
- - libexpat >=2.5.0,<3.0a0
+ - libexpat >=2.6.2,<3.0a0
- libffi >=3.4,<4.0a0
- - libsqlite >=3.45.1,<4.0a0
+ - libsqlite >=3.45.3,<4.0a0
- libzlib >=1.2.13,<1.3.0a0
- - ncurses >=6.4,<7.0a0
+ - ncurses >=6.4.20240210,<7.0a0
- openssl >=3.2.1,<4.0a0
- readline >=8.2,<9.0a0
- tk >=8.6.13,<8.7.0a0
@@ -19381,28 +29271,54 @@ packages:
constrains:
- python_abi 3.11.* *_cp311
license: Python-2.0
- size: 14067894
- timestamp: 1708117836907
+ size: 15503226
+ timestamp: 1713553747073
- kind: conda
name: python
- version: 3.11.8
- build: hab00c5b_0_cpython
+ version: 3.11.9
+ build: h932a869_0_cpython
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.11.9-h932a869_0_cpython.conda
+ sha256: a436ceabde1f056a0ac3e347dadc780ee2a135a421ddb6e9a469370769829e3c
+ md5: 293e0713ae804b5527a673e7605c04fc
+ depends:
+ - __osx >=11.0
+ - bzip2 >=1.0.8,<2.0a0
+ - libexpat >=2.6.2,<3.0a0
+ - libffi >=3.4,<4.0a0
+ - libsqlite >=3.45.3,<4.0a0
+ - libzlib >=1.2.13,<1.3.0a0
+ - ncurses >=6.4.20240210,<7.0a0
+ - openssl >=3.2.1,<4.0a0
+ - readline >=8.2,<9.0a0
+ - tk >=8.6.13,<8.7.0a0
+ - tzdata
+ - xz >=5.2.6,<6.0a0
+ constrains:
+ - python_abi 3.11.* *_cp311
+ license: Python-2.0
+ size: 14644189
+ timestamp: 1713552154779
+- kind: conda
+ name: python
+ version: 3.11.9
+ build: hb806964_0_cpython
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/python-3.11.8-hab00c5b_0_cpython.conda
- sha256: f33559d7127b6a892854bc3b2b4be1406c3be9537d658cb13edae57c8c0b5a11
- md5: 2fdc314ee058eda0114738a9309d3683
+ url: https://conda.anaconda.org/conda-forge/linux-64/python-3.11.9-hb806964_0_cpython.conda
+ sha256: 177f33a1fb8d3476b38f73c37b42f01c0b014fa0e039a701fd9f83d83aae6d40
+ md5: ac68acfa8b558ed406c75e98d3428d7b
depends:
- bzip2 >=1.0.8,<2.0a0
- ld_impl_linux-64 >=2.36.1
- - libexpat >=2.5.0,<3.0a0
+ - libexpat >=2.6.2,<3.0a0
- libffi >=3.4,<4.0a0
- libgcc-ng >=12
- libnsl >=2.0.1,<2.1.0a0
- - libsqlite >=3.45.1,<4.0a0
+ - libsqlite >=3.45.3,<4.0a0
- libuuid >=2.38.1,<3.0a0
- libxcrypt >=4.4.36
- libzlib >=1.2.13,<1.3.0a0
- - ncurses >=6.4,<7.0a0
+ - ncurses >=6.4.20240210,<7.0a0
- openssl >=3.2.1,<4.0a0
- readline >=8.2,<9.0a0
- tk >=8.6.13,<8.7.0a0
@@ -19411,23 +29327,106 @@ packages:
constrains:
- python_abi 3.11.* *_cp311
license: Python-2.0
- size: 30754113
- timestamp: 1708118457486
+ size: 30884494
+ timestamp: 1713553104915
+- kind: conda
+ name: python
+ version: 3.12.3
+ build: h1411813_0_cpython
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/python-3.12.3-h1411813_0_cpython.conda
+ sha256: 3b327ffc152a245011011d1d730781577a8274fde1cf6243f073749ead8f1c2a
+ md5: df1448ec6cbf8eceb03d29003cf72ae6
+ depends:
+ - __osx >=10.9
+ - bzip2 >=1.0.8,<2.0a0
+ - libexpat >=2.6.2,<3.0a0
+ - libffi >=3.4,<4.0a0
+ - libsqlite >=3.45.2,<4.0a0
+ - libzlib >=1.2.13,<1.3.0a0
+ - ncurses >=6.4.20240210,<7.0a0
+ - openssl >=3.2.1,<4.0a0
+ - readline >=8.2,<9.0a0
+ - tk >=8.6.13,<8.7.0a0
+ - tzdata
+ - xz >=5.2.6,<6.0a0
+ constrains:
+ - python_abi 3.12.* *_cp312
+ license: Python-2.0
+ size: 14557341
+ timestamp: 1713208068012
+- kind: conda
+ name: python
+ version: 3.12.3
+ build: h2628c8c_0_cpython
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/python-3.12.3-h2628c8c_0_cpython.conda
+ sha256: 1a95494abe572a8819c933f978df89f00bde72ea9432d46a70632599e8029ea4
+ md5: f07c8c5dd98767f9a652de5d039b284e
+ depends:
+ - bzip2 >=1.0.8,<2.0a0
+ - libexpat >=2.6.2,<3.0a0
+ - libffi >=3.4,<4.0a0
+ - libsqlite >=3.45.2,<4.0a0
+ - libzlib >=1.2.13,<1.3.0a0
+ - openssl >=3.2.1,<4.0a0
+ - tk >=8.6.13,<8.7.0a0
+ - tzdata
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ - xz >=5.2.6,<6.0a0
+ constrains:
+ - python_abi 3.12.* *_cp312
+ license: Python-2.0
+ size: 16179248
+ timestamp: 1713205644673
- kind: conda
name: python
- version: 3.12.2
- build: hdf0ec26_0_cpython
+ version: 3.12.3
+ build: h4a7b5fc_0_cpython
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.12.2-hdf0ec26_0_cpython.conda
- sha256: ccd6c55a286d51d907c878ed2bfa7d1becce0fee71374a9386c5eb90d803ac72
- md5: 85e91138ae921a2771f57a50120272bd
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.12.3-h4a7b5fc_0_cpython.conda
+ sha256: c761fb3713ea66bce3889b33b6f400afb2dd192d1fc2686446e9d8166cfcec6b
+ md5: 8643ab37bece6ae8f112464068d9df9c
depends:
+ - __osx >=11.0
- bzip2 >=1.0.8,<2.0a0
- - libexpat >=2.5.0,<3.0a0
+ - libexpat >=2.6.2,<3.0a0
- libffi >=3.4,<4.0a0
- - libsqlite >=3.45.1,<4.0a0
+ - libsqlite >=3.45.2,<4.0a0
+ - libzlib >=1.2.13,<1.3.0a0
+ - ncurses >=6.4.20240210,<7.0a0
+ - openssl >=3.2.1,<4.0a0
+ - readline >=8.2,<9.0a0
+ - tk >=8.6.13,<8.7.0a0
+ - tzdata
+ - xz >=5.2.6,<6.0a0
+ constrains:
+ - python_abi 3.12.* *_cp312
+ license: Python-2.0
+ size: 13207557
+ timestamp: 1713206576646
+- kind: conda
+ name: python
+ version: 3.12.3
+ build: hab00c5b_0_cpython
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/python-3.12.3-hab00c5b_0_cpython.conda
+ sha256: f9865bcbff69f15fd89a33a2da12ad616e98d65ce7c83c644b92e66e5016b227
+ md5: 2540b74d304f71d3e89c81209db4db84
+ depends:
+ - bzip2 >=1.0.8,<2.0a0
+ - ld_impl_linux-64 >=2.36.1
+ - libexpat >=2.6.2,<3.0a0
+ - libffi >=3.4,<4.0a0
+ - libgcc-ng >=12
+ - libnsl >=2.0.1,<2.1.0a0
+ - libsqlite >=3.45.2,<4.0a0
+ - libuuid >=2.38.1,<3.0a0
+ - libxcrypt >=4.4.36
- libzlib >=1.2.13,<1.3.0a0
- - ncurses >=6.4,<7.0a0
+ - ncurses >=6.4.20240210,<7.0a0
- openssl >=3.2.1,<4.0a0
- readline >=8.2,<9.0a0
- tk >=8.6.13,<8.7.0a0
@@ -19436,8 +29435,8 @@ packages:
constrains:
- python_abi 3.12.* *_cp312
license: Python-2.0
- size: 13085901
- timestamp: 1708117361381
+ size: 31991381
+ timestamp: 1713208036041
- kind: conda
name: python-dateutil
version: 2.9.0
@@ -19499,6 +29498,66 @@ packages:
license_family: APACHE
size: 144024
timestamp: 1707747742930
+- kind: conda
+ name: python_abi
+ version: '3.10'
+ build: 4_cp310
+ build_number: 4
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/python_abi-3.10-4_cp310.conda
+ sha256: 456bec815bfc2b364763084d08b412fdc4c17eb9ccc66a36cb775fa7ac3cbaec
+ md5: 26322ec5d7712c3ded99dd656142b8ce
+ constrains:
+ - python 3.10.* *_cpython
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 6398
+ timestamp: 1695147363189
+- kind: conda
+ name: python_abi
+ version: '3.10'
+ build: 4_cp310
+ build_number: 4
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/python_abi-3.10-4_cp310.conda
+ sha256: abc26b3b5a62f9c8112a2303d24b0c590d5f7fc9470521f5a520472d59c2223e
+ md5: b15c816c5a86abcc4d1458dd63aa4c65
+ constrains:
+ - python 3.10.* *_cpython
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 6484
+ timestamp: 1695147705581
+- kind: conda
+ name: python_abi
+ version: '3.10'
+ build: 4_cp310
+ build_number: 4
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/python_abi-3.10-4_cp310.conda
+ sha256: f69bac2f28082a275ef67313968b2c366d8236c3a6869b9cdf5cdb97a5821812
+ md5: 1a3d9c6bb5f0b1b22d9e9296c127e8c7
+ constrains:
+ - python 3.10.* *_cpython
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 6490
+ timestamp: 1695147522999
+- kind: conda
+ name: python_abi
+ version: '3.10'
+ build: 4_cp310
+ build_number: 4
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/python_abi-3.10-4_cp310.conda
+ sha256: 19066c462fd0e32c64503c688f77cb603beb4019b812caf855d03f2a5447960b
+ md5: b41195997c14fb7473d26637ea4c3946
+ constrains:
+ - python 3.10.* *_cpython
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 6773
+ timestamp: 1695147715814
- kind: conda
name: python_abi
version: '3.11'
@@ -19529,6 +29588,21 @@ packages:
license_family: BSD
size: 6478
timestamp: 1695147518012
+- kind: conda
+ name: python_abi
+ version: '3.11'
+ build: 4_cp311
+ build_number: 4
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/python_abi-3.11-4_cp311.conda
+ sha256: 4837089c477b9b84fa38a17f453e6634e68237267211b27a8a2f5ccd847f4e55
+ md5: 8d3751bc73d3bbb66f216fa2331d5649
+ constrains:
+ - python 3.11.* *_cpython
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 6492
+ timestamp: 1695147509940
- kind: conda
name: python_abi
version: '3.11'
@@ -19544,6 +29618,36 @@ packages:
license_family: BSD
size: 6755
timestamp: 1695147711935
+- kind: conda
+ name: python_abi
+ version: '3.12'
+ build: 4_cp312
+ build_number: 4
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/python_abi-3.12-4_cp312.conda
+ sha256: 182a329de10a4165f6e8a3804caf751f918f6ea6176dd4e5abcdae1ed3095bf6
+ md5: dccc2d142812964fcc6abdc97b672dff
+ constrains:
+ - python 3.12.* *_cpython
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 6385
+ timestamp: 1695147396604
+- kind: conda
+ name: python_abi
+ version: '3.12'
+ build: 4_cp312
+ build_number: 4
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/python_abi-3.12-4_cp312.conda
+ sha256: 82c154d95c1637604671a02a89e72f1382e89a4269265a03506496bd928f6f14
+ md5: 87201ac4314b911b74197e588cca3639
+ constrains:
+ - python 3.12.* *_cpython
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 6496
+ timestamp: 1695147498447
- kind: conda
name: python_abi
version: '3.12'
@@ -19559,6 +29663,21 @@ packages:
license_family: BSD
size: 6508
timestamp: 1695147497048
+- kind: conda
+ name: python_abi
+ version: '3.12'
+ build: 4_cp312
+ build_number: 4
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/python_abi-3.12-4_cp312.conda
+ sha256: 488f8519d04b48f59bd6fde21ebe2d7a527718ff28aac86a8b53aa63658bdef6
+ md5: 17f4ccf6be9ded08bd0a376f489ac1a6
+ constrains:
+ - python 3.12.* *_cpython
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 6785
+ timestamp: 1695147430513
- kind: conda
name: pytz
version: '2024.1'
@@ -19577,57 +29696,130 @@ packages:
- kind: conda
name: pywin32
version: '306'
- build: py311h12c1d0e_2
+ build: py312h53d5487_2
build_number: 2
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/pywin32-306-py311h12c1d0e_2.conda
- sha256: 79d942817bdaf384602113e5fcb9158dc45cae4044bed308918a5db97f141fdb
- md5: 25df0fc55722ea1a94494f41302e2d1c
+ url: https://conda.anaconda.org/conda-forge/win-64/pywin32-306-py312h53d5487_2.conda
+ sha256: d0ff1cd887b626a125f8323760736d8fab496bf2a400e825cce55361e7631264
+ md5: f44c8f35c3f99eca30d6f5b68ddb0f42
depends:
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12.0rc3,<3.13.0a0
+ - python_abi 3.12.* *_cp312
- ucrt >=10.0.20348.0
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
license: PSF-2.0
license_family: PSF
- size: 6124285
- timestamp: 1695974706892
+ size: 6127499
+ timestamp: 1695974557413
- kind: conda
name: pywin32-ctypes
version: 0.2.2
- build: py311h1ea47a8_1
+ build: py312h2e8e312_1
build_number: 1
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/pywin32-ctypes-0.2.2-py311h1ea47a8_1.conda
- sha256: 75a80bda3a87ae9387e8860be7a5271a67846d8929fe8c99799ed40eb085130a
- md5: e1270294a55b716f9b76900340e8fc82
+ url: https://conda.anaconda.org/conda-forge/win-64/pywin32-ctypes-0.2.2-py312h2e8e312_1.conda
+ sha256: 238fffa911c4b78fd2153cfd1d0d376326379c98821da4b0cd12a3c6fbf3e9a6
+ md5: 93a37178188cd6521e5410763a18aaf4
depends:
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12.0rc3,<3.13.0a0
+ - python_abi 3.12.* *_cp312
license: BSD-3-Clause
license_family: BSD
- size: 57331
- timestamp: 1695395348158
+ size: 55871
+ timestamp: 1695395307212
- kind: conda
name: pywinpty
version: 2.0.13
- build: py311h12c1d0e_0
+ build: py312h53d5487_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/pywinpty-2.0.13-py311h12c1d0e_0.conda
- sha256: 07ee90dfcc15982f282ddf82cf4bbbcf0c9ecfabb51daad9341022a7405fb4c8
- md5: 8cec3af6f3eed98cc6edf8f7fb26a7d4
+ url: https://conda.anaconda.org/conda-forge/win-64/pywinpty-2.0.13-py312h53d5487_0.conda
+ sha256: 56d95d00a0fe6170e6e0e1da6b0e1201291b8054a6342c0792bc4dd791a39088
+ md5: 84bc43e330340c01ce93231c096d4ab1
depends:
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
- ucrt >=10.0.20348.0
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
- winpty
license: MIT
license_family: MIT
- size: 212234
- timestamp: 1708995766138
+ size: 212261
+ timestamp: 1708995486138
+- kind: conda
+ name: pyyaml
+ version: 6.0.1
+ build: py310h2372a71_1
+ build_number: 1
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.1-py310h2372a71_1.conda
+ sha256: aa78ccddb0a75fa722f0f0eb3537c73ee1219c9dd46cea99d6b9eebfdd780f3d
+ md5: bb010e368de4940771368bc3dc4c63e7
+ depends:
+ - libgcc-ng >=12
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - yaml >=0.2.5,<0.3.0a0
+ license: MIT
+ license_family: MIT
+ size: 170627
+ timestamp: 1695373587159
+- kind: conda
+ name: pyyaml
+ version: 6.0.1
+ build: py310h2aa6e3c_1
+ build_number: 1
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/pyyaml-6.0.1-py310h2aa6e3c_1.conda
+ sha256: 7b8668cd86d2421c62ec241f840d84a600b854afc91383a509bbb60ba907aeec
+ md5: 0e7ccdd121ce7b486f1de7917178387c
+ depends:
+ - python >=3.10,<3.11.0a0
+ - python >=3.10,<3.11.0a0 *_cpython
+ - python_abi 3.10.* *_cp310
+ - yaml >=0.2.5,<0.3.0a0
+ license: MIT
+ license_family: MIT
+ size: 158641
+ timestamp: 1695373859696
+- kind: conda
+ name: pyyaml
+ version: 6.0.1
+ build: py310h6729b98_1
+ build_number: 1
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/pyyaml-6.0.1-py310h6729b98_1.conda
+ sha256: 00567f2cb2d1c8fede8fe7727f7bbd1c38cbca886814d612e162d5c936d8db1b
+ md5: d964cec3e7972e44bc4a328134b9eaf1
+ depends:
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - yaml >=0.2.5,<0.3.0a0
+ license: MIT
+ license_family: MIT
+ size: 160097
+ timestamp: 1695373947773
+- kind: conda
+ name: pyyaml
+ version: 6.0.1
+ build: py310h8d17308_1
+ build_number: 1
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/pyyaml-6.0.1-py310h8d17308_1.conda
+ sha256: ea51291e477b44c5bb9d91cc095db0dfe07b9576831e9682100d68c820c43ae3
+ md5: ce279186f68d0f12812dc9955ea909a4
+ depends:
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ - yaml >=0.2.5,<0.3.0a0
+ license: MIT
+ license_family: MIT
+ size: 146195
+ timestamp: 1695374085323
- kind: conda
name: pyyaml
version: 6.0.1
@@ -19683,6 +29875,24 @@ packages:
license_family: MIT
size: 175469
timestamp: 1695374086205
+- kind: conda
+ name: pyyaml
+ version: 6.0.1
+ build: py311heffc1b2_1
+ build_number: 1
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/pyyaml-6.0.1-py311heffc1b2_1.conda
+ sha256: b155f5c27f0e2951256774628c4b91fdeee3267018eef29897a74e3d1316c8b0
+ md5: d310bfbb8230b9175c0cbc10189ad804
+ depends:
+ - python >=3.11,<3.12.0a0
+ - python >=3.11,<3.12.0a0 *_cpython
+ - python_abi 3.11.* *_cp311
+ - yaml >=0.2.5,<0.3.0a0
+ license: MIT
+ license_family: MIT
+ size: 187795
+ timestamp: 1695373829282
- kind: conda
name: pyyaml
version: 6.0.1
@@ -19694,87 +29904,146 @@ packages:
md5: a0c843e52a1c4422d8657dd76e9eb994
depends:
- python >=3.12.0rc3,<3.13.0a0
- - python >=3.12.0rc3,<3.13.0a0 *_cpython
+ - python >=3.12.0rc3,<3.13.0a0 *_cpython
+ - python_abi 3.12.* *_cp312
+ - yaml >=0.2.5,<0.3.0a0
+ license: MIT
+ license_family: MIT
+ size: 182705
+ timestamp: 1695373895409
+- kind: conda
+ name: pyyaml
+ version: 6.0.1
+ build: py312h104f124_1
+ build_number: 1
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/pyyaml-6.0.1-py312h104f124_1.conda
+ sha256: 04aa180782cb675b960c0bf4aad439b4a7a08553c6af74d0b8e5df9a0c7cc4f4
+ md5: 260ed90aaf06061edabd7209638cf03b
+ depends:
+ - python >=3.12.0rc3,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - yaml >=0.2.5,<0.3.0a0
+ license: MIT
+ license_family: MIT
+ size: 185636
+ timestamp: 1695373742454
+- kind: conda
+ name: pyyaml
+ version: 6.0.1
+ build: py312h98912ed_1
+ build_number: 1
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.1-py312h98912ed_1.conda
+ sha256: 7f347a10a7121b08d79d21cd4f438c07c23479ea0c74dfb89d6dc416f791bb7f
+ md5: e3fd78d8d490af1d84763b9fe3f2e552
+ depends:
+ - libgcc-ng >=12
+ - python >=3.12.0rc3,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - yaml >=0.2.5,<0.3.0a0
+ license: MIT
+ license_family: MIT
+ size: 196583
+ timestamp: 1695373632212
+- kind: conda
+ name: pyyaml
+ version: 6.0.1
+ build: py312he70551f_1
+ build_number: 1
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/pyyaml-6.0.1-py312he70551f_1.conda
+ sha256: a72fa8152791b4738432f270e70b3a9a4d583ef059a78aa1c62f4b4ab7b15494
+ md5: f91e0baa89ba21166916624ba7bfb422
+ depends:
+ - python >=3.12.0rc3,<3.13.0a0
- python_abi 3.12.* *_cp312
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
- yaml >=0.2.5,<0.3.0a0
license: MIT
license_family: MIT
- size: 182705
- timestamp: 1695373895409
+ size: 167932
+ timestamp: 1695374097139
+- kind: conda
+ name: pyzmq
+ version: 26.0.2
+ build: py312h18237bf_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/pyzmq-26.0.2-py312h18237bf_0.conda
+ sha256: f3d9da5b63cfbec4592ea63f7a66d4de725e1248d571ca3eb2d7b1fc4918b150
+ md5: ef0464a4c36e227cc941c549adbd5f87
+ depends:
+ - __osx >=10.9
+ - libcxx >=16
+ - libsodium >=1.0.18,<1.0.19.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - zeromq >=4.3.5,<4.4.0a0
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 448247
+ timestamp: 1713635860492
- kind: conda
name: pyzmq
- version: 25.1.2
- build: py311h34ded2d_0
+ version: 26.0.2
+ build: py312h8fd38d8_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/pyzmq-25.1.2-py311h34ded2d_0.conda
- sha256: 54ccdde1370d8a373e516b84bd7fe4af394f8c6f3778eb050de82f04ffb86160
- md5: 819aa640a0493d4b52faf938e94d129e
+ url: https://conda.anaconda.org/conda-forge/linux-64/pyzmq-26.0.2-py312h8fd38d8_0.conda
+ sha256: f14cac806390fd9597a0548fa94508eb165ac6b173394991f151626753f22e88
+ md5: 361b4d1d4dd409d1c7584aba8db5021a
depends:
- libgcc-ng >=12
- libsodium >=1.0.18,<1.0.19.0a0
- libstdcxx-ng >=12
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
- zeromq >=4.3.5,<4.4.0a0
- license: BSD-3-Clause AND LGPL-3.0-or-later
- size: 536511
- timestamp: 1701783341090
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 462944
+ timestamp: 1713635778070
- kind: conda
name: pyzmq
- version: 25.1.2
- build: py311h889d6d6_0
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/pyzmq-25.1.2-py311h889d6d6_0.conda
- sha256: a8cb598edd68b3d2ca88cd2cdbc60c9180a392c393dd58aaf25e9897697d28d3
- md5: 241fde77a74bd223562662af26f4828b
+ version: 26.0.2
+ build: py312h99b2490_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/pyzmq-26.0.2-py312h99b2490_0.conda
+ sha256: efb53f1673199fccac2257453c117fa56ca11293aa781ae45a858c11c777e717
+ md5: f6f72b69558dab80f05cbcccc06c751b
depends:
- - __osx >=10.9
- - libcxx >=16.0.6
+ - __osx >=11.0
+ - libcxx >=16
- libsodium >=1.0.18,<1.0.19.0a0
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12,<3.13.0a0
+ - python >=3.12,<3.13.0a0 *_cpython
+ - python_abi 3.12.* *_cp312
- zeromq >=4.3.5,<4.4.0a0
- license: BSD-3-Clause AND LGPL-3.0-or-later
- size: 495677
- timestamp: 1701783560340
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 445433
+ timestamp: 1713635905428
- kind: conda
name: pyzmq
- version: 25.1.2
- build: py311h9250fbb_0
+ version: 26.0.2
+ build: py312hd7027bb_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/pyzmq-25.1.2-py311h9250fbb_0.conda
- sha256: f33f21226e4b0146727419a4bcf5ddcc06ea8544ea3895fcfd036069bec5e610
- md5: 9a0376e721950ec687fc53f7e8a9582f
+ url: https://conda.anaconda.org/conda-forge/win-64/pyzmq-26.0.2-py312hd7027bb_0.conda
+ sha256: b7fd5ecea0e67c5ee407469efbb1648e881ad1d5a8c5a75ba5a644b57b3728c5
+ md5: edf821f4104e0f1cfc572711804014ad
depends:
- libsodium >=1.0.18,<1.0.19.0a0
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
- ucrt >=10.0.20348.0
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
- zeromq >=4.3.5,<4.3.6.0a0
- license: BSD-3-Clause AND LGPL-3.0-or-later
- size: 490973
- timestamp: 1701783719678
-- kind: conda
- name: pyzmq
- version: 25.1.2
- build: py312h1edf716_0
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/pyzmq-25.1.2-py312h1edf716_0.conda
- sha256: a89712c6b0cab1e3385e44e0130a57b9d03df99b6f540486c0f00e2dae079e77
- md5: 913db29987f836f5d80fa319e36b0a33
- depends:
- - __osx >=10.9
- - libcxx >=16.0.6
- - libsodium >=1.0.18,<1.0.19.0a0
- - python >=3.12,<3.13.0a0
- - python >=3.12,<3.13.0a0 *_cpython
- - python_abi 3.12.* *_cp312
- - zeromq >=4.3.5,<4.4.0a0
- license: BSD-3-Clause AND LGPL-3.0-or-later
- size: 495070
- timestamp: 1701783687130
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 444996
+ timestamp: 1713636183876
- kind: conda
name: qca
version: 2.3.8
@@ -19840,15 +30109,15 @@ packages:
timestamp: 1704858714486
- kind: conda
name: qgis
- version: 3.36.0
- build: py311h50b348b_1
+ version: 3.34.5
+ build: py312h845c666_1
build_number: 1
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/qgis-3.36.0-py311h50b348b_1.conda
- sha256: 60f0d6021766499a1617feb345d2c448613c208f143d1af8392cce7efca96bc5
- md5: 2347217b3eabb0e766ab1147e2239a15
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/qgis-3.34.5-py312h845c666_1.conda
+ sha256: 6e221fb29814bb3879f19abc26dbb9b18e286d802847eaf8bcec6a7ebb29d30d
+ md5: 4e882d521b25dc5b4213041d9f7e40f7
depends:
- - __osx >=10.13
+ - __osx >=11.0
- exiv2 >=0.28.2,<0.29.0a0
- future
- gdal
@@ -19860,32 +30129,33 @@ packages:
- khronos-opencl-icd-loader >=2023.4.17
- laz-perf
- libcxx >=16
- - libexpat >=2.5.0,<3.0a0
- - libgdal >=3.8.4,<3.9.0a0
+ - libexpat >=2.6.2,<3.0a0
+ - libgdal >=3.8.5,<3.9.0a0
- libpq >=16.2,<17.0a0
- - libprotobuf >=4.25.2,<4.25.3.0a0
+ - libprotobuf >=4.25.3,<4.25.4.0a0
- libspatialindex >=1.9.3,<1.9.4.0a0
- libspatialite >=5.1.0,<5.2.0a0
- - libsqlite >=3.45.1,<4.0a0
+ - libsqlite >=3.45.3,<4.0a0
- libtasn1 >=4.19.0,<5.0a0
- libzip >=1.10.1,<2.0a0
- markupsafe
- mock
- nose2
- owslib
- - pdal >=2.6.3,<2.6.4.0a0
+ - pdal >=2.7.1,<2.7.2.0a0
- plotly
- postgresql
- - proj >=9.3.1,<9.3.2.0a0
+ - proj >=9.4.0,<9.4.1.0a0
- psycopg2
- pygments
- pyproj
- pyqt >=5.15.9,<5.16.0a0
- pyqt5-sip
- pyqtwebkit
- - python >=3.11,<3.12.0a0
+ - python >=3.12,<3.13.0a0
+ - python >=3.12,<3.13.0a0 *_cpython
- python-dateutil
- - python_abi 3.11.* *_cp311
+ - python_abi 3.12.* *_cp312
- pytz
- pyyaml
- qca
@@ -19900,22 +30170,21 @@ packages:
- six
- sqlite
- yaml
- constrains:
- - __osx >=10.15
license: GPL-2.0-only
- license_family: GPL
- size: 76386016
- timestamp: 1709368378141
+ size: 72703001
+ timestamp: 1714653620963
- kind: conda
name: qgis
- version: 3.36.0
- build: py311h514a5ff_1
+ version: 3.34.5
+ build: py312ha2382e3_1
build_number: 1
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/qgis-3.36.0-py311h514a5ff_1.conda
- sha256: 45169ecbe0045612447d64f0ed91de1b5198a061ec75e17b85a92760806b9153
- md5: 2c567d6ed95c44e35fe639e92d70ccf8
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/qgis-3.34.5-py312ha2382e3_1.conda
+ sha256: 0c3181b68fbe8b63f7929eee8057b69bd2f08c398ec39c4fa30d72708ef36efc
+ md5: d83f8617405555d80989794d970745d6
depends:
+ - __osx >=10.13
+ - __osx >=10.15
- exiv2 >=0.28.2,<0.29.0a0
- future
- gdal
@@ -19926,31 +30195,33 @@ packages:
- jinja2
- khronos-opencl-icd-loader >=2023.4.17
- laz-perf
- - libexpat >=2.5.0,<3.0a0
- - libgdal >=3.8.4,<3.9.0a0
+ - libcxx >=16
+ - libexpat >=2.6.2,<3.0a0
+ - libgdal >=3.8.5,<3.9.0a0
- libpq >=16.2,<17.0a0
- - libprotobuf >=4.25.2,<4.25.3.0a0
+ - libprotobuf >=4.25.3,<4.25.4.0a0
- libspatialindex >=1.9.3,<1.9.4.0a0
- libspatialite >=5.1.0,<5.2.0a0
- - libsqlite >=3.45.1,<4.0a0
+ - libsqlite >=3.45.3,<4.0a0
+ - libtasn1 >=4.19.0,<5.0a0
- libzip >=1.10.1,<2.0a0
- markupsafe
- mock
- nose2
- owslib
- - pdal >=2.6.3,<2.6.4.0a0
+ - pdal >=2.7.1,<2.7.2.0a0
- plotly
- postgresql
- - proj >=9.3.1,<9.3.2.0a0
+ - proj >=9.4.0,<9.4.1.0a0
- psycopg2
- pygments
- pyproj
- pyqt >=5.15.9,<5.16.0a0
- pyqt5-sip
- pyqtwebkit
- - python >=3.11,<3.12.0a0
+ - python >=3.12,<3.13.0a0
- python-dateutil
- - python_abi 3.11.* *_cp311
+ - python_abi 3.12.* *_cp312
- pytz
- pyyaml
- qca
@@ -19964,24 +30235,21 @@ packages:
- sip >=6.7.12,<6.8.0a0
- six
- sqlite
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
- yaml
license: GPL-2.0-only
- license_family: GPL
- size: 71327622
- timestamp: 1709370226158
+ size: 74941486
+ timestamp: 1714654799159
- kind: conda
name: qgis
- version: 3.36.0
- build: py311hbb00b0c_1
+ version: 3.34.5
+ build: py312hb580988_1
build_number: 1
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/qgis-3.36.0-py311hbb00b0c_1.conda
- sha256: 6cbb05e1119e295f411dc4619da8d70986388eac725ec78fdcbe547b5a2e88d5
- md5: 67dacdb674bfc8d754b1d42faec92bf1
+ url: https://conda.anaconda.org/conda-forge/linux-64/qgis-3.34.5-py312hb580988_1.conda
+ sha256: 8887ebbe9d3fe069a1846353a87a750d70bf0c1f740427dcb61981d43e5633f7
+ md5: dae789b50d85ab26835ea9965f5a2656
depends:
+ - __glibc >=2.17,<3.0.a0
- exiv2 >=0.28.2,<0.29.0a0
- future
- gdal
@@ -19991,14 +30259,14 @@ packages:
- icu >=73.2,<74.0a0
- jinja2
- laz-perf
- - libexpat >=2.5.0,<3.0a0
+ - libexpat >=2.6.2,<3.0a0
- libgcc-ng >=12
- - libgdal >=3.8.4,<3.9.0a0
+ - libgdal >=3.8.5,<3.9.0a0
- libpq >=16.2,<17.0a0
- - libprotobuf >=4.25.2,<4.25.3.0a0
+ - libprotobuf >=4.25.3,<4.25.4.0a0
- libspatialindex >=1.9.3,<1.9.4.0a0
- libspatialite >=5.1.0,<5.2.0a0
- - libsqlite >=3.45.1,<4.0a0
+ - libsqlite >=3.45.3,<4.0a0
- libstdcxx-ng >=12
- libzip >=1.10.1,<2.0a0
- markupsafe
@@ -20006,19 +30274,19 @@ packages:
- nose2
- ocl-icd >=2.3.2,<3.0a0
- owslib
- - pdal >=2.6.3,<2.6.4.0a0
+ - pdal >=2.7.1,<2.7.2.0a0
- plotly
- postgresql
- - proj >=9.3.1,<9.3.2.0a0
+ - proj >=9.4.0,<9.4.1.0a0
- psycopg2
- pygments
- pyproj
- pyqt >=5.15.9,<5.16.0a0
- pyqt5-sip
- pyqtwebkit
- - python >=3.11,<3.12.0a0
+ - python >=3.12,<3.13.0a0
- python-dateutil
- - python_abi 3.11.* *_cp311
+ - python_abi 3.12.* *_cp312
- pytz
- pyyaml
- qca
@@ -20034,18 +30302,17 @@ packages:
- sqlite
- yaml
license: GPL-2.0-only
- license_family: GPL
- size: 93641830
- timestamp: 1709366135463
+ size: 92543137
+ timestamp: 1714647828864
- kind: conda
name: qgis
- version: 3.36.0
- build: py312hb7619b1_1
+ version: 3.34.5
+ build: py312hdab107f_1
build_number: 1
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/qgis-3.36.0-py312hb7619b1_1.conda
- sha256: 42d0c0881d2e74c5e34b6dcdf5c86671228394bd57308c55e03d85638662ceeb
- md5: b3c77c60bef68c07d8a8e6211620291b
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/qgis-3.34.5-py312hdab107f_1.conda
+ sha256: c2ae37a98bacad971d544db3e058629de2c1600877f8ebdb6b8539e55f78e45d
+ md5: 68f4c315107c765a6070f32c8cb046c3
depends:
- exiv2 >=0.28.2,<0.29.0a0
- future
@@ -20057,24 +30324,22 @@ packages:
- jinja2
- khronos-opencl-icd-loader >=2023.4.17
- laz-perf
- - libcxx >=16
- - libexpat >=2.5.0,<3.0a0
- - libgdal >=3.8.4,<3.9.0a0
+ - libexpat >=2.6.2,<3.0a0
+ - libgdal >=3.8.5,<3.9.0a0
- libpq >=16.2,<17.0a0
- - libprotobuf >=4.25.2,<4.25.3.0a0
+ - libprotobuf >=4.25.3,<4.25.4.0a0
- libspatialindex >=1.9.3,<1.9.4.0a0
- libspatialite >=5.1.0,<5.2.0a0
- - libsqlite >=3.45.1,<4.0a0
- - libtasn1 >=4.19.0,<5.0a0
+ - libsqlite >=3.45.3,<4.0a0
- libzip >=1.10.1,<2.0a0
- markupsafe
- mock
- nose2
- owslib
- - pdal >=2.6.3,<2.6.4.0a0
+ - pdal >=2.7.1,<2.7.2.0a0
- plotly
- postgresql
- - proj >=9.3.1,<9.3.2.0a0
+ - proj >=9.4.0,<9.4.1.0a0
- psycopg2
- pygments
- pyproj
@@ -20082,7 +30347,6 @@ packages:
- pyqt5-sip
- pyqtwebkit
- python >=3.12,<3.13.0a0
- - python >=3.12,<3.13.0a0 *_cpython
- python-dateutil
- python_abi 3.12.* *_cp312
- pytz
@@ -20098,13 +30362,13 @@ packages:
- sip >=6.7.12,<6.8.0a0
- six
- sqlite
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
- yaml
- constrains:
- - __osx >=11.0
license: GPL-2.0-only
- license_family: GPL
- size: 72310550
- timestamp: 1709367926936
+ size: 71037087
+ timestamp: 1714649933426
- kind: conda
name: qgis-plugin-manager
version: 1.6.1
@@ -20244,160 +30508,127 @@ packages:
- kind: conda
name: qscintilla2
version: 2.14.1
- build: py311h4c6dc46_0
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/qscintilla2-2.14.1-py311h4c6dc46_0.conda
- sha256: 0ed3a91fcd25a49a59c7b9dd9edcaf75a293028355e48cb9a8a796973d3b3117
- md5: b79f1ea8ba7db0f42714110e91856d70
+ build: py312h12cbc42_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/qscintilla2-2.14.1-py312h12cbc42_0.conda
+ sha256: 1a7ffbfeee82fedc08098ab15e7354e5102827d12f7de1d9e34b83340bd09e92
+ md5: 61a4d894fee693aed16ac6b04d808e5d
depends:
- - __glibc >=2.17,<3.0.a0
- - libgcc-ng >=12
- - libstdcxx-ng >=12
+ - libcxx >=15.0.7
- pyqt >=5.15.9,<5.16.0a0
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12.0rc3,<3.13.0a0
+ - python_abi 3.12.* *_cp312
- qt-main >=5.15.8,<5.16.0a0
- sip >=6.7.11,<6.8.0a0
license: GPL-3.0-or-later
license_family: GPL
- size: 1710660
- timestamp: 1695486377934
+ size: 1326816
+ timestamp: 1695486826527
- kind: conda
name: qscintilla2
version: 2.14.1
- build: py311h5a77453_0
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/qscintilla2-2.14.1-py311h5a77453_0.conda
- sha256: 8b823806bfe0cd1e60f19ccda0aa9d8f37fdd1faa23e7c12a89986a97518c464
- md5: e7ce3f0a344f3a4177e52f52e884d77b
+ build: py312h14105d7_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/qscintilla2-2.14.1-py312h14105d7_0.conda
+ sha256: aa3bd33df4c776ab96432c1f4bf12715742dc59d1ae2e013069d1f814e0da366
+ md5: 31d17bbc23db4377185684ed18e2bc19
depends:
+ - libcxx >=15.0.7
- pyqt >=5.15.9,<5.16.0a0
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12.0rc3,<3.13.0a0
+ - python >=3.12.0rc3,<3.13.0a0 *_cpython
+ - python_abi 3.12.* *_cp312
- qt-main >=5.15.8,<5.16.0a0
- sip >=6.7.11,<6.8.0a0
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
license: GPL-3.0-or-later
license_family: GPL
- size: 1282124
- timestamp: 1695486843852
+ size: 1258259
+ timestamp: 1695486794043
- kind: conda
name: qscintilla2
version: 2.14.1
- build: py311hf9676c4_0
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/qscintilla2-2.14.1-py311hf9676c4_0.conda
- sha256: ec4d27e36d8270fb3d73cf9c7bc796737aa425dcb305f5cc49435fbaee638a88
- md5: 79ac9e83cbbc84987a25d7d25a0b4ee2
+ build: py312hc23280e_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/qscintilla2-2.14.1-py312hc23280e_0.conda
+ sha256: fabd11ed7904a0356a1a7794be2160d639c119863b7555ba2c6e37cfd9e5243f
+ md5: 6bad10e9a62c22dce10fcc0837178738
depends:
- - libcxx >=15.0.7
+ - __glibc >=2.17,<3.0.a0
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
- pyqt >=5.15.9,<5.16.0a0
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12.0rc3,<3.13.0a0
+ - python_abi 3.12.* *_cp312
- qt-main >=5.15.8,<5.16.0a0
- sip >=6.7.11,<6.8.0a0
license: GPL-3.0-or-later
license_family: GPL
- size: 1322046
- timestamp: 1695486615881
+ size: 1710828
+ timestamp: 1695486254081
- kind: conda
name: qscintilla2
version: 2.14.1
- build: py312h14105d7_0
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/qscintilla2-2.14.1-py312h14105d7_0.conda
- sha256: aa3bd33df4c776ab96432c1f4bf12715742dc59d1ae2e013069d1f814e0da366
- md5: 31d17bbc23db4377185684ed18e2bc19
+ build: py312hca0710b_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/qscintilla2-2.14.1-py312hca0710b_0.conda
+ sha256: 0dcf01cfa6c0d9e38f8f289d9cd890f66d93d74e09b5ad3e31f5feecfd479734
+ md5: eb8f50e856c4e37de39bafdea637ae2e
depends:
- - libcxx >=15.0.7
- pyqt >=5.15.9,<5.16.0a0
- python >=3.12.0rc3,<3.13.0a0
- - python >=3.12.0rc3,<3.13.0a0 *_cpython
- python_abi 3.12.* *_cp312
- qt-main >=5.15.8,<5.16.0a0
- sip >=6.7.11,<6.8.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
license: GPL-3.0-or-later
license_family: GPL
- size: 1258259
- timestamp: 1695486794043
-- kind: conda
- name: qt-main
- version: 5.15.8
- build: h4385fff_19
- build_number: 19
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/qt-main-5.15.8-h4385fff_19.conda
- sha256: f1ab73268198fe66c0b438b58b34bc56b987d0c411c4d60882c9474186a7d7f0
- md5: e9e7fc8f8b31e436472e6c2697dfa9fa
- depends:
- - gst-plugins-base >=1.22.9,<1.23.0a0
- - gstreamer >=1.22.9,<1.23.0a0
- - icu >=73.2,<74.0a0
- - krb5 >=1.21.2,<1.22.0a0
- - libclang >=15.0.7,<16.0a0
- - libclang13 >=15.0.7
- - libcxx >=14
- - libglib >=2.78.3,<3.0a0
- - libjpeg-turbo >=3.0.0,<4.0a0
- - libpng >=1.6.42,<1.7.0a0
- - libpq >=16.2,<17.0a0
- - libsqlite >=3.45.1,<4.0a0
- - libzlib >=1.2.13,<1.3.0a0
- - mysql-libs >=8.0.33,<8.1.0a0
- - nspr >=4.35,<5.0a0
- - nss >=3.97,<4.0a0
- - zstd >=1.5.5,<1.6.0a0
- constrains:
- - qt 5.15.8
- - __osx >=10.13
- license: LGPL-3.0-only
- license_family: LGPL
- size: 46210935
- timestamp: 1707961847477
+ size: 1276533
+ timestamp: 1695486800155
- kind: conda
name: qt-main
version: 5.15.8
- build: h5810be5_19
- build_number: 19
+ build: hc9dc06e_21
+ build_number: 21
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/qt-main-5.15.8-h5810be5_19.conda
- sha256: 41228ec12346d640ef1f549885d8438e98b1be0fdeb68cd1dd3938f255cbd719
- md5: 54866f708d43002a514d0b9b0f84bc11
+ url: https://conda.anaconda.org/conda-forge/linux-64/qt-main-5.15.8-hc9dc06e_21.conda
+ sha256: 6b4594f6f2fad65a7ed52993f602e3ab183193755fe4a492aaa48e463b23105b
+ md5: b325046180590c868ce0dbf267b82eb8
depends:
- __glibc >=2.17,<3.0.a0
- - alsa-lib >=1.2.10,<1.3.0.0a0
+ - alsa-lib >=1.2.11,<1.3.0a0
- dbus >=1.13.6,<2.0a0
- fontconfig >=2.14.2,<3.0a0
- fonts-conda-ecosystem
- freetype >=2.12.1,<3.0a0
- - gst-plugins-base >=1.22.9,<1.23.0a0
- - gstreamer >=1.22.9,<1.23.0a0
+ - gst-plugins-base >=1.24.1,<1.25.0a0
+ - gstreamer >=1.24.1,<1.25.0a0
- harfbuzz >=8.3.0,<9.0a0
- icu >=73.2,<74.0a0
- krb5 >=1.21.2,<1.22.0a0
- - libclang >=15.0.7,<16.0a0
+ - libclang-cpp15 >=15.0.7,<15.1.0a0
- libclang13 >=15.0.7
- libcups >=2.3.3,<2.4.0a0
- libevent >=2.1.12,<2.1.13.0a0
- - libexpat >=2.5.0,<3.0a0
+ - libexpat >=2.6.2,<3.0a0
- libgcc-ng >=12
- - libglib >=2.78.3,<3.0a0
+ - libglib >=2.80.0,<3.0a0
- libjpeg-turbo >=3.0.0,<4.0a0
- - libpng >=1.6.42,<1.7.0a0
+ - libllvm15 >=15.0.7,<15.1.0a0
+ - libpng >=1.6.43,<1.7.0a0
- libpq >=16.2,<17.0a0
- - libsqlite >=3.45.1,<4.0a0
+ - libsqlite >=3.45.2,<4.0a0
- libstdcxx-ng >=12
- libxcb >=1.15,<1.16.0a0
- - libxkbcommon >=1.6.0,<2.0a0
- - libxml2 >=2.12.5,<3.0a0
+ - libxkbcommon >=1.7.0,<2.0a0
+ - libxml2 >=2.12.6,<3.0a0
- libzlib >=1.2.13,<1.3.0a0
- - mysql-libs >=8.0.33,<8.1.0a0
+ - mysql-libs >=8.3.0,<8.4.0a0
- nspr >=4.35,<5.0a0
- - nss >=3.97,<4.0a0
+ - nss >=3.98,<4.0a0
- openssl >=3.2.1,<4.0a0
- - pulseaudio-client >=16.1,<16.2.0a0
+ - pulseaudio-client >=17.0,<17.1.0a0
- xcb-util >=0.4.0,<0.5.0a0
- xcb-util-image >=0.4.0,<0.5.0a0
- xcb-util-keysyms >=0.4.0,<0.5.0a0
@@ -20405,7 +30636,7 @@ packages:
- xcb-util-wm >=0.4.1,<0.5.0a0
- xorg-libice >=1.1.1,<2.0a0
- xorg-libsm >=1.2.4,<2.0a0
- - xorg-libx11 >=1.8.7,<2.0a0
+ - xorg-libx11 >=1.8.9,<2.0a0
- xorg-libxext >=1.3.4,<2.0a0
- xorg-xf86vidmodeproto
- zstd >=1.5.5,<1.6.0a0
@@ -20413,73 +30644,108 @@ packages:
- qt 5.15.8
license: LGPL-3.0-only
license_family: LGPL
- size: 61337596
- timestamp: 1707958161584
+ size: 61305384
+ timestamp: 1712549380352
- kind: conda
name: qt-main
version: 5.15.8
- build: h6bf1bb6_19
- build_number: 19
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/qt-main-5.15.8-h6bf1bb6_19.conda
- sha256: 11774126630e5816bb0725231f0915f3b303bc2fe54844190f5b4d7f5a02a265
- md5: 9abd8726afab7f8e7709f45a444c4844
+ build: hcef0176_21
+ build_number: 21
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/qt-main-5.15.8-hcef0176_21.conda
+ sha256: 7eb717efea95fb0f8384f7c59b709dbe3c7a2c1fabca60c8792760211c430251
+ md5: 76544d3dfeff8fd52250df168cb0005b
+ depends:
+ - gst-plugins-base >=1.24.1,<1.25.0a0
+ - gstreamer >=1.24.1,<1.25.0a0
+ - icu >=73.2,<74.0a0
+ - krb5 >=1.21.2,<1.22.0a0
+ - libclang13 >=15.0.7
+ - libglib >=2.80.0,<3.0a0
+ - libjpeg-turbo >=3.0.0,<4.0a0
+ - libpng >=1.6.43,<1.7.0a0
+ - libsqlite >=3.45.2,<4.0a0
+ - libzlib >=1.2.13,<1.3.0a0
+ - openssl >=3.2.1,<4.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ - zstd >=1.5.5,<1.6.0a0
+ constrains:
+ - qt 5.15.8
+ license: LGPL-3.0-only
+ license_family: LGPL
+ size: 59806644
+ timestamp: 1712551057454
+- kind: conda
+ name: qt-main
+ version: 5.15.8
+ build: hecaf5c3_21
+ build_number: 21
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/qt-main-5.15.8-hecaf5c3_21.conda
+ sha256: d8c8a48524457fbc8f928ea5b2352ddeab3c5babcbf83ecd6f8df5148b737e7d
+ md5: 77c24f0109a8d177c66cc1a1ae8311c0
depends:
- - gst-plugins-base >=1.22.9,<1.23.0a0
- - gstreamer >=1.22.9,<1.23.0a0
+ - gst-plugins-base >=1.24.1,<1.25.0a0
+ - gstreamer >=1.24.1,<1.25.0a0
- icu >=73.2,<74.0a0
- krb5 >=1.21.2,<1.22.0a0
- - libclang >=15.0.7,<16.0a0
+ - libclang-cpp15 >=15.0.7,<15.1.0a0
- libclang13 >=15.0.7
- libcxx >=14
- - libglib >=2.78.3,<3.0a0
+ - libglib >=2.80.0,<3.0a0
- libjpeg-turbo >=3.0.0,<4.0a0
- - libpng >=1.6.42,<1.7.0a0
+ - libllvm15 >=15.0.7,<15.1.0a0
+ - libpng >=1.6.43,<1.7.0a0
- libpq >=16.2,<17.0a0
- - libsqlite >=3.45.1,<4.0a0
+ - libsqlite >=3.45.2,<4.0a0
- libzlib >=1.2.13,<1.3.0a0
- - mysql-libs >=8.0.33,<8.1.0a0
+ - mysql-libs >=8.3.0,<8.4.0a0
- nspr >=4.35,<5.0a0
- - nss >=3.97,<4.0a0
+ - nss >=3.98,<4.0a0
- zstd >=1.5.5,<1.6.0a0
constrains:
- qt 5.15.8
+ - __osx >=10.13
license: LGPL-3.0-only
license_family: LGPL
- size: 51329823
- timestamp: 1707961383220
+ size: 45711290
+ timestamp: 1712555771042
- kind: conda
name: qt-main
version: 5.15.8
- build: h9e85ed6_19
- build_number: 19
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/qt-main-5.15.8-h9e85ed6_19.conda
- sha256: a132554a24f0617f54668479a29d9af80a2235653b08a4ebd200dcd30da971a8
- md5: 1e5fa5b05768a8eed9d8bb0bf5585b1f
+ build: hf679f28_21
+ build_number: 21
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/qt-main-5.15.8-hf679f28_21.conda
+ sha256: 619f3a5a60bdaa1d0996464a49a2eda6d6006f2bc5aa9895aa1f93de7063c64c
+ md5: 715342108a6cc6336f489c36b85ba6f1
depends:
- - gst-plugins-base >=1.22.9,<1.23.0a0
- - gstreamer >=1.22.9,<1.23.0a0
+ - gst-plugins-base >=1.24.1,<1.25.0a0
+ - gstreamer >=1.24.1,<1.25.0a0
- icu >=73.2,<74.0a0
- krb5 >=1.21.2,<1.22.0a0
- - libclang >=15.0.7,<16.0a0
+ - libclang-cpp15 >=15.0.7,<15.1.0a0
- libclang13 >=15.0.7
- - libglib >=2.78.3,<3.0a0
+ - libcxx >=14
+ - libglib >=2.80.0,<3.0a0
- libjpeg-turbo >=3.0.0,<4.0a0
- - libpng >=1.6.42,<1.7.0a0
- - libsqlite >=3.45.1,<4.0a0
+ - libllvm15 >=15.0.7,<15.1.0a0
+ - libpng >=1.6.43,<1.7.0a0
+ - libpq >=16.2,<17.0a0
+ - libsqlite >=3.45.2,<4.0a0
- libzlib >=1.2.13,<1.3.0a0
- - openssl >=3.2.1,<4.0a0
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
+ - mysql-libs >=8.3.0,<8.4.0a0
+ - nspr >=4.35,<5.0a0
+ - nss >=3.98,<4.0a0
- zstd >=1.5.5,<1.6.0a0
constrains:
- qt 5.15.8
license: LGPL-3.0-only
license_family: LGPL
- size: 60081554
- timestamp: 1707957968211
+ size: 50291799
+ timestamp: 1712555438386
- kind: conda
name: qtkeychain
version: 0.14.2
@@ -20829,12 +31095,12 @@ packages:
timestamp: 1685705931698
- kind: conda
name: rdma-core
- version: '50.0'
+ version: '51.0'
build: hd3aeb46_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/rdma-core-50.0-hd3aeb46_0.conda
- sha256: 7cc75473895aa7d4fa1824ef94bd451768fa4a36a5046b3281ed2b1a6787853d
- md5: 4594b391274e38f07c668acb45285a1f
+ url: https://conda.anaconda.org/conda-forge/linux-64/rdma-core-51.0-hd3aeb46_0.conda
+ sha256: bcc774b60605b09701cfad41b2d6d9c3f052dd4adfc1f02bf1c929076f48fe30
+ md5: 493598e1f28c01e316fda127715593aa
depends:
- __glibc >=2.17,<3.0.a0
- libgcc-ng >=12
@@ -20842,8 +31108,8 @@ packages:
- libstdcxx-ng >=12
license: Linux-OpenIB
license_family: BSD
- size: 4724921
- timestamp: 1706524445013
+ size: 4734659
+ timestamp: 1711958296706
- kind: conda
name: re2
version: 2023.09.01
@@ -20971,21 +31237,20 @@ packages:
timestamp: 1694242843889
- kind: conda
name: referencing
- version: 0.33.0
+ version: 0.35.1
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/referencing-0.33.0-pyhd8ed1ab_0.conda
- sha256: 5707eb9ee2c7cfcc56a5223b24ab3133ff61aaa796931f3b22068e0a43ea6ecf
- md5: bc415a1c6cf049166215d6b596e0fcbe
+ url: https://conda.anaconda.org/conda-forge/noarch/referencing-0.35.1-pyhd8ed1ab_0.conda
+ sha256: be8d6d9e86b1a3fef5424127ff81782f8ca63d3058980859609f6f1ecdd34cb3
+ md5: 0fc8b52192a8898627c3efae1003e9f6
depends:
- attrs >=22.2.0
- python >=3.8
- rpds-py >=0.7.0
license: MIT
- license_family: MIT
- size: 39055
- timestamp: 1706711589688
+ size: 42210
+ timestamp: 1714619625532
- kind: conda
name: requests
version: 2.31.0
@@ -21090,54 +31355,36 @@ packages:
- kind: conda
name: rpds-py
version: 0.18.0
- build: py311h46250e7_0
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/rpds-py-0.18.0-py311h46250e7_0.conda
- sha256: 37d8f344b080ddceb5f1c6224049c2123e65c5d10eddd5b6e6284c8ac6044bb1
- md5: 688a1190531dc4e8c00e25d0d1de4135
- depends:
- - libgcc-ng >=12
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
- license: MIT
- license_family: MIT
- size: 915849
- timestamp: 1707923007711
-- kind: conda
- name: rpds-py
- version: 0.18.0
- build: py311hc37eb10_0
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/rpds-py-0.18.0-py311hc37eb10_0.conda
- sha256: 46766bb9b8df78ef7c8125f5a51f2cd77ddfbdc622a7db1a5c19c41b8d034965
- md5: 9851ab425910f099cc2d512996fc01ce
- depends:
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
- license: MIT
- license_family: MIT
- size: 203072
- timestamp: 1707923793999
-- kind: conda
- name: rpds-py
- version: 0.18.0
- build: py311hd64b9fd_0
+ build: py312h1b0e595_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/rpds-py-0.18.0-py311hd64b9fd_0.conda
- sha256: 4183fe5ebf84a707efe71abcb6e6f78646483dcb1a6958bf182eca771196a7d2
- md5: 18f9280b452bd1557e98147d53cd4276
+ url: https://conda.anaconda.org/conda-forge/osx-64/rpds-py-0.18.0-py312h1b0e595_0.conda
+ sha256: bdb47dd05828b8624f7aa0895a35f0edbbef04732a8911da5acc2fb8d6b533e9
+ md5: 75d882a5a5ff8e970eff0e30591d6ca6
depends:
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
constrains:
- __osx >=10.12
license: MIT
license_family: MIT
- size: 299213
- timestamp: 1707923391834
+ size: 302124
+ timestamp: 1707923275835
+- kind: conda
+ name: rpds-py
+ version: 0.18.0
+ build: py312h4b3b743_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/rpds-py-0.18.0-py312h4b3b743_0.conda
+ sha256: 7d8ca38e56db7f803dbc42240bd1918d6084f01cfd56e252a7121c5cdf850191
+ md5: cc8165b34bdb002ade83b068f44e5774
+ depends:
+ - libgcc-ng >=12
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ license: MIT
+ license_family: MIT
+ size: 919366
+ timestamp: 1707922953470
- kind: conda
name: rpds-py
version: 0.18.0
@@ -21156,6 +31403,89 @@ packages:
license_family: MIT
size: 294636
timestamp: 1707923464809
+- kind: conda
+ name: rpds-py
+ version: 0.18.0
+ build: py312hfccd98a_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/rpds-py-0.18.0-py312hfccd98a_0.conda
+ sha256: fa16681746a210e79783cde2069e8704cdb29b15d4e99e16859853f260da9867
+ md5: 4f201390adc379696fb0bd3f2b5cdcc7
+ depends:
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: MIT
+ license_family: MIT
+ size: 201960
+ timestamp: 1707923686383
+- kind: conda
+ name: rtree
+ version: 1.2.0
+ build: py310h1cbd46b_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/rtree-1.2.0-py310h1cbd46b_0.conda
+ sha256: 5209522e4e6dc28e8ee54bc05c47f1fbce5801c6f40158b258af8de4abd0d2e0
+ md5: 71bfb91d649e699f1256aec35670eb6b
+ depends:
+ - libspatialindex >=1.9.3,<1.9.4.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ license: MIT
+ license_family: MIT
+ size: 50232
+ timestamp: 1705698234051
+- kind: conda
+ name: rtree
+ version: 1.2.0
+ build: py310ha3239f5_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/rtree-1.2.0-py310ha3239f5_0.conda
+ sha256: a52c6ed1e51af39d48c17580b534c3bdaea348ee39394e038dd6d713de7421db
+ md5: 997048d4d9bb6297c438eb223abe6eee
+ depends:
+ - libspatialindex >=1.9.3,<1.9.4.0a0
+ - python >=3.10,<3.11.0a0
+ - python >=3.10,<3.11.0a0 *_cpython
+ - python_abi 3.10.* *_cp310
+ license: MIT
+ license_family: MIT
+ size: 50450
+ timestamp: 1705698458694
+- kind: conda
+ name: rtree
+ version: 1.2.0
+ build: py310had9ce37_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/rtree-1.2.0-py310had9ce37_0.conda
+ sha256: 9c60f024846d387a2c65d0785f607d2164840d839fa2e5690441baffd9822797
+ md5: 444bc6b5585dd6d8015ce9973b3d92c3
+ depends:
+ - libspatialindex >=1.9.3,<1.9.4.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ license: MIT
+ license_family: MIT
+ size: 50119
+ timestamp: 1705698277551
+- kind: conda
+ name: rtree
+ version: 1.2.0
+ build: py310hbdcdc62_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/rtree-1.2.0-py310hbdcdc62_0.conda
+ sha256: e90231d6ef275be2c912d5cc1e0e59edf22fb575d724d497fad399a325b56a26
+ md5: 9d74922cb84c2c63e96cda3407c6372f
+ depends:
+ - libspatialindex >=1.9.3,<1.9.4.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ license: MIT
+ license_family: MIT
+ size: 50211
+ timestamp: 1705698038766
- kind: conda
name: rtree
version: 1.2.0
@@ -21204,6 +31534,23 @@ packages:
license_family: MIT
size: 63643
timestamp: 1705698251888
+- kind: conda
+ name: rtree
+ version: 1.2.0
+ build: py311hd698ff7_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/rtree-1.2.0-py311hd698ff7_0.conda
+ sha256: 1003759185a553652fbb6d5e0e4fb426abb85c6b588c25960eadae27d747a23b
+ md5: bdb16e41bd3a67e70a01879f27196be7
+ depends:
+ - libspatialindex >=1.9.3,<1.9.4.0a0
+ - python >=3.11,<3.12.0a0
+ - python >=3.11,<3.12.0a0 *_cpython
+ - python_abi 3.11.* *_cp311
+ license: MIT
+ license_family: MIT
+ size: 63577
+ timestamp: 1705698221128
- kind: conda
name: rtree
version: 1.2.0
@@ -21221,123 +31568,412 @@ packages:
license_family: MIT
size: 63205
timestamp: 1705698210947
+- kind: conda
+ name: rtree
+ version: 1.2.0
+ build: py312h72b5f30_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/rtree-1.2.0-py312h72b5f30_0.conda
+ sha256: 6dafc5ab1ba907a6665f5df60b241f57e9b0953fd29bfe95e3bc46f75a36a236
+ md5: 9b80ceb8d83fe2e929db84278c551f68
+ depends:
+ - libspatialindex >=1.9.3,<1.9.4.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ license: MIT
+ license_family: MIT
+ size: 62968
+ timestamp: 1705698300779
+- kind: conda
+ name: rtree
+ version: 1.2.0
+ build: py312h8974cf7_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/rtree-1.2.0-py312h8974cf7_0.conda
+ sha256: ff6433e1fc3b95f85e2f7e5a549f8b17710acd5345ff37e687210fa5b2451948
+ md5: 63416e40d1e466da6309b893f4c4649b
+ depends:
+ - libspatialindex >=1.9.3,<1.9.4.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ license: MIT
+ license_family: MIT
+ size: 62828
+ timestamp: 1705698173963
+- kind: conda
+ name: rtree
+ version: 1.2.0
+ build: py312hb0aae1a_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/rtree-1.2.0-py312hb0aae1a_0.conda
+ sha256: 234d8d81c8c7ddd96b826a60ebecb762b530b1b12ed632c28e7704337e86e470
+ md5: ad9e0b706ffac22ae394d5357c14b7c7
+ depends:
+ - libspatialindex >=1.9.3,<1.9.4.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ license: MIT
+ license_family: MIT
+ size: 62265
+ timestamp: 1705698063894
- kind: conda
name: ruff
- version: 0.3.0
- build: py311h7145743_0
+ version: 0.4.2
+ build: py312h0ce8374_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/ruff-0.4.2-py312h0ce8374_0.conda
+ sha256: 338790903cf82c38cf619518db481b47782d7200386d3656f29bcd74f128f80c
+ md5: f4e345cc67fb8e2daffe3937ad8a3ba4
+ depends:
+ - __osx >=11.0
+ - libcxx >=16
+ - python >=3.12,<3.13.0a0
+ - python >=3.12,<3.13.0a0 *_cpython
+ - python_abi 3.12.* *_cp312
+ constrains:
+ - __osx >=11.0
+ license: MIT
+ license_family: MIT
+ size: 5839080
+ timestamp: 1714090259716
+- kind: conda
+ name: ruff
+ version: 0.4.2
+ build: py312h5715c7c_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/ruff-0.3.0-py311h7145743_0.conda
- sha256: 6dcb326a7c031d667c1dbeb8906c8125d2fce89e40201e1184c63e86ccf42e15
- md5: 33a306351198ac8da1f0d1541d3569f5
+ url: https://conda.anaconda.org/conda-forge/linux-64/ruff-0.4.2-py312h5715c7c_0.conda
+ sha256: 84d575a7f58ad49c7b02a882342d1ddc2fc052d5f27a51c8c05e04d1e6925d87
+ md5: 4660769748a8fdd3d1cbc09a8a326fff
depends:
- libgcc-ng >=12
- libstdcxx-ng >=12
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
license: MIT
license_family: MIT
- size: 5738078
- timestamp: 1709229162825
+ size: 6321033
+ timestamp: 1714088784988
- kind: conda
name: ruff
- version: 0.3.0
- build: py311hc14472d_0
+ version: 0.4.2
+ build: py312h5f1bdda_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/ruff-0.4.2-py312h5f1bdda_0.conda
+ sha256: 5ed5899ca8832f5c98cdba2e03f2ef42d6aefef1afc6a914758b8dbb2398f3ed
+ md5: 8ee80854eb288801e5caaa553439a34d
+ depends:
+ - __osx >=10.9
+ - libcxx >=16
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ constrains:
+ - __osx >=10.12
+ license: MIT
+ license_family: MIT
+ size: 6098816
+ timestamp: 1714089957176
+- kind: conda
+ name: ruff
+ version: 0.4.2
+ build: py312h7a6832a_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/ruff-0.3.0-py311hc14472d_0.conda
- sha256: 2e9d7e66708f7f1bcd4466f1c18be7d0b7f1e2711887950025989b25b10cf19b
- md5: ef5a62ac4c1e4470b10fa7aa7ddc5947
+ url: https://conda.anaconda.org/conda-forge/win-64/ruff-0.4.2-py312h7a6832a_0.conda
+ sha256: 661c1f7e762a2f3ace02a4fef161cf23c43732bdfea792115f64863394e88199
+ md5: 7da419c235c786d04478370fce0212b6
depends:
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
- ucrt >=10.0.20348.0
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
license: MIT
license_family: MIT
- size: 5669959
- timestamp: 1709230225444
+ size: 6231241
+ timestamp: 1714089928202
- kind: conda
- name: ruff
- version: 0.3.0
- build: py311hfff7943_0
+ name: rust
+ version: 1.77.2
+ build: h4ff7c5d_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/rust-1.77.2-h4ff7c5d_0.conda
+ sha256: 048ffabbbbd1b5109d59ec15610cf0e489c39b4f6f380953816bcb26dad8da17
+ md5: 4083c1a9d7f5c9591273f578530d6388
+ depends:
+ - rust-std-aarch64-apple-darwin 1.77.2 hf6ec828_0
+ license: MIT
+ license_family: MIT
+ size: 145759919
+ timestamp: 1712743398771
+- kind: conda
+ name: rust
+ version: 1.77.2
+ build: h70c747d_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/rust-1.77.2-h70c747d_0.conda
+ sha256: 3b8cf09335d23c52d6e7150e4cc6d999ed4e2b3dc2307652f20e1a4669ff0846
+ md5: ba764892e80fe0380bb7fa99751b186d
+ depends:
+ - gcc_impl_linux-64
+ - libgcc-ng >=12
+ - libzlib >=1.2.13,<1.3.0a0
+ - rust-std-x86_64-unknown-linux-gnu 1.77.2 h2c6d0dc_0
+ license: MIT
+ license_family: MIT
+ size: 186765686
+ timestamp: 1712741423714
+- kind: conda
+ name: rust
+ version: 1.77.2
+ build: h7e1429e_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/ruff-0.3.0-py311hfff7943_0.conda
- sha256: 364335686bfc4502e519e752f6fa3ad58818a1a48070447282365028b9f953a2
- md5: e5a74ac4b7efd3e51ba55323f4e7d878
+ url: https://conda.anaconda.org/conda-forge/osx-64/rust-1.77.2-h7e1429e_0.conda
+ sha256: d12cde3691eb50148b49460ac2bff0c0716204099a38d36132762ffb0c6c79fd
+ md5: 13c8a97dd157999cdd23adaac7919047
depends:
- - libcxx >=16
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - rust-std-x86_64-apple-darwin 1.77.2 h38e4360_0
+ license: MIT
+ license_family: MIT
+ size: 192493395
+ timestamp: 1712743664947
+- kind: conda
+ name: rust
+ version: 1.77.2
+ build: hf8d6059_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/rust-1.77.2-hf8d6059_0.conda
+ sha256: 978228c14a3d2af2d9d52230443f232d7a22cbbe98d359a306b1a761773d4589
+ md5: ba05fee8761e5bd25ae642a4b77d2ed7
+ depends:
+ - rust-std-x86_64-pc-windows-msvc 1.77.2 h17fc481_0
+ license: MIT
+ license_family: MIT
+ size: 187565499
+ timestamp: 1712743189902
+- kind: conda
+ name: rust-std-aarch64-apple-darwin
+ version: 1.77.2
+ build: hf6ec828_0
+ subdir: noarch
+ noarch: generic
+ url: https://conda.anaconda.org/conda-forge/noarch/rust-std-aarch64-apple-darwin-1.77.2-hf6ec828_0.conda
+ sha256: 19b17ddca3896f12a640858b45a7ba5e8495ca07286b622535ca5a4bf8217906
+ md5: 729f181cdeb249ff2da37f434b548633
+ depends:
+ - __unix
constrains:
- - __osx >=10.12
+ - rust >=1.77.2,<1.77.3.0a0
license: MIT
license_family: MIT
- size: 5549090
- timestamp: 1709230499589
+ size: 30933811
+ timestamp: 1712740743456
- kind: conda
- name: ruff
- version: 0.3.0
- build: py312h1ae9fbf_0
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/ruff-0.3.0-py312h1ae9fbf_0.conda
- sha256: d2dcad884e4a358c8f53ec4b92794654d66e5f341bcc13602073a514f5265fd5
- md5: d390b0f6d4322bb182d3b4c7e5eec3e1
+ name: rust-std-x86_64-apple-darwin
+ version: 1.77.2
+ build: h38e4360_0
+ subdir: noarch
+ noarch: generic
+ url: https://conda.anaconda.org/conda-forge/noarch/rust-std-x86_64-apple-darwin-1.77.2-h38e4360_0.conda
+ sha256: 1d0a99136ab0a2b05d9df4d5a7a8d665595c2e72ee1d19fcad0c6f1b402f37d1
+ md5: 67db6d59468a8145fb076d75d156b69c
depends:
- - libcxx >=16
- - python >=3.12,<3.13.0a0
- - python >=3.12,<3.13.0a0 *_cpython
- - python_abi 3.12.* *_cp312
+ - __unix
constrains:
- - __osx >=11.0
+ - rust >=1.77.2,<1.77.3.0a0
+ license: MIT
+ license_family: MIT
+ size: 31857486
+ timestamp: 1712740749097
+- kind: conda
+ name: rust-std-x86_64-pc-windows-msvc
+ version: 1.77.2
+ build: h17fc481_0
+ subdir: noarch
+ noarch: generic
+ url: https://conda.anaconda.org/conda-forge/noarch/rust-std-x86_64-pc-windows-msvc-1.77.2-h17fc481_0.conda
+ sha256: 0c290c52a3cf1ac43a316d6caf0e073614351ccae31c681d6953dec7a2ff21e3
+ md5: 2149767f1c882154246a9a569991e3c3
+ depends:
+ - __win
+ constrains:
+ - rust >=1.77.2,<1.77.3.0a0
+ license: MIT
+ license_family: MIT
+ size: 25276039
+ timestamp: 1712742986757
+- kind: conda
+ name: rust-std-x86_64-unknown-linux-gnu
+ version: 1.77.2
+ build: h2c6d0dc_0
+ subdir: noarch
+ noarch: generic
+ url: https://conda.anaconda.org/conda-forge/noarch/rust-std-x86_64-unknown-linux-gnu-1.77.2-h2c6d0dc_0.conda
+ sha256: 73f7537db6bc0471135a85a261798abe77e7e83794f945a0355c4068973f31f6
+ md5: db8b81b3806faafe2f6f7bd431f72e37
+ depends:
+ - __unix
+ constrains:
+ - rust >=1.77.2,<1.77.3.0a0
license: MIT
license_family: MIT
- size: 5284467
- timestamp: 1709230187274
+ size: 33827015
+ timestamp: 1712741238767
- kind: conda
name: s2n
- version: 1.4.5
+ version: 1.4.12
build: h06160fa_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/s2n-1.4.5-h06160fa_0.conda
- sha256: aecba3f3884e01a730d3c332ff6cf311793bd01374e14715d55f522147bac77a
- md5: 0d3d9c621239b674ac1b738df00a0793
+ url: https://conda.anaconda.org/conda-forge/linux-64/s2n-1.4.12-h06160fa_0.conda
+ sha256: fc5759c4d8136bb9048ed5cd2e8fd1a375104c3a7ec60fee1be0b06e7487d610
+ md5: bf1899cfd6dea061a220fa7e96a1f4bd
depends:
- libgcc-ng >=12
- openssl >=3.2.1,<4.0a0
license: Apache-2.0
license_family: Apache
- size: 337907
- timestamp: 1708664518615
+ size: 346689
+ timestamp: 1713325107791
+- kind: conda
+ name: scikit-learn
+ version: 1.4.2
+ build: py310h1fdf081_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/scikit-learn-1.4.2-py310h1fdf081_0.conda
+ sha256: 2a0236a275ddb8a8fbc7141b3d1d18b02eff33cf3ad2343cf201f43d884ae91d
+ md5: e6366971f5be0c52c003de2f5b49e633
+ depends:
+ - _openmp_mutex >=4.5
+ - joblib >=1.2.0
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
+ - numpy >=1.22.4,<2.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - scipy
+ - threadpoolctl >=2.0.0
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 9163298
+ timestamp: 1712825088172
+- kind: conda
+ name: scikit-learn
+ version: 1.4.2
+ build: py310h38ce860_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/scikit-learn-1.4.2-py310h38ce860_0.conda
+ sha256: 63d1fa8dff56bac6c8cb415157be1a20b020dee5c6aa2a3f972b045b87a42f20
+ md5: 02e9a6b35e66673887c7d6e40d9d98ab
+ depends:
+ - joblib >=1.2.0
+ - libcxx >=16
+ - llvm-openmp >=16.0.6
+ - llvm-openmp >=18.1.3
+ - numpy >=1.22.4,<2.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - scipy
+ - threadpoolctl >=2.0.0
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 8131675
+ timestamp: 1712825707610
+- kind: conda
+ name: scikit-learn
+ version: 1.4.2
+ build: py310h7ef31dd_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/scikit-learn-1.4.2-py310h7ef31dd_0.conda
+ sha256: 46c8a1d1bfd133d131b5f15cd28e6d81f8843085bc954dbf951d067cc1c0d5f5
+ md5: bacf2870cd80c408c9401385eb99d7a2
+ depends:
+ - joblib >=1.2.0
+ - libcxx >=16
+ - llvm-openmp >=16.0.6
+ - llvm-openmp >=18.1.3
+ - numpy >=1.22.4,<2.0a0
+ - python >=3.10,<3.11.0a0
+ - python >=3.10,<3.11.0a0 *_cpython
+ - python_abi 3.10.* *_cp310
+ - scipy
+ - threadpoolctl >=2.0.0
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 8180686
+ timestamp: 1712826140767
+- kind: conda
+ name: scikit-learn
+ version: 1.4.2
+ build: py310hfd2573f_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/scikit-learn-1.4.2-py310hfd2573f_0.conda
+ sha256: 68449c36cc430e0030da159ce724a6db69e27f3e6880032cfca69bc83b5b2997
+ md5: bff081283450192311a279e70b1feade
+ depends:
+ - joblib >=1.2.0
+ - numpy >=1.22.4,<2.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - scipy
+ - threadpoolctl >=2.0.0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 7689685
+ timestamp: 1712825620276
- kind: conda
name: scikit-learn
- version: 1.4.1.post1
+ version: 1.4.2
build: py311h142b183_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/scikit-learn-1.4.1.post1-py311h142b183_0.conda
- sha256: 24c4d991e9ed15e62a8701063b9a0a50098a74145d7e1d77efc041109332ef7e
- md5: 9a11c66567fa6893a570839d454d08fc
+ url: https://conda.anaconda.org/conda-forge/win-64/scikit-learn-1.4.2-py311h142b183_0.conda
+ sha256: a2c8ca8630f03a23cc90e00711f6d8c17b273b29259ae48645e1bd1e1c5074b0
+ md5: e1ed4efff9d6df2695ab996fa2a95896
+ depends:
+ - joblib >=1.2.0
+ - numpy >=1.23.5,<2.0a0
+ - python >=3.11,<3.12.0a0
+ - python_abi 3.11.* *_cp311
+ - scipy
+ - threadpoolctl >=2.0.0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 9069468
+ timestamp: 1712825700186
+- kind: conda
+ name: scikit-learn
+ version: 1.4.2
+ build: py311h696fe38_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/scikit-learn-1.4.2-py311h696fe38_0.conda
+ sha256: ba0bac4a40f25c7d0694728320b974f07d18ecc83eb254229ed0caa9eaf49eac
+ md5: e18d93bd3b91c8745b8d0c63054b5f88
depends:
- joblib >=1.2.0
+ - libcxx >=16
+ - llvm-openmp >=16.0.6
+ - llvm-openmp >=18.1.3
- numpy >=1.23.5,<2.0a0
- python >=3.11,<3.12.0a0
+ - python >=3.11,<3.12.0a0 *_cpython
- python_abi 3.11.* *_cp311
- scipy
- threadpoolctl >=2.0.0
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
license: BSD-3-Clause
license_family: BSD
- size: 9053059
- timestamp: 1708074904509
+ size: 9453326
+ timestamp: 1712825499145
- kind: conda
name: scikit-learn
- version: 1.4.1.post1
+ version: 1.4.2
build: py311hc009520_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/scikit-learn-1.4.1.post1-py311hc009520_0.conda
- sha256: 1a6a130509cb4271cd40ea6a9fa7f7db85d7c83f6d914bccd20e6afbae8536ae
- md5: 8c27600e1ee43ba6ceff93c6c0e09446
+ url: https://conda.anaconda.org/conda-forge/linux-64/scikit-learn-1.4.2-py311hc009520_0.conda
+ sha256: 9de3bf863e5acb32012bd0bbe1033f0df2cfec299ea7e589b6ab65c55316ffac
+ md5: 5ab3d4d008b052a16c66787e2ea000ba
depends:
- _openmp_mutex >=4.5
- joblib >=1.2.0
@@ -21350,21 +31986,21 @@ packages:
- threadpoolctl >=2.0.0
license: BSD-3-Clause
license_family: BSD
- size: 10410912
- timestamp: 1708074432746
+ size: 10416939
+ timestamp: 1712825062759
- kind: conda
name: scikit-learn
- version: 1.4.1.post1
+ version: 1.4.2
build: py311he2b4599_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/scikit-learn-1.4.1.post1-py311he2b4599_0.conda
- sha256: 5e722716c645a66c281740b1af5a71d14c6878b62eabb7c8d7bce31de4ea00c2
- md5: 8283796dfe99750d19d32e17cf08ced7
+ url: https://conda.anaconda.org/conda-forge/osx-64/scikit-learn-1.4.2-py311he2b4599_0.conda
+ sha256: f01747e017e7d8b44fd0c3da11617378768bffbe240efa2e2c5e046b3a89502f
+ md5: eae8d05494e0b8d1fcaa57be777cb5e3
depends:
- joblib >=1.2.0
- libcxx >=16
- llvm-openmp >=16.0.6
- - llvm-openmp >=17.0.6
+ - llvm-openmp >=18.1.3
- numpy >=1.23.5,<2.0a0
- python >=3.11,<3.12.0a0
- python_abi 3.11.* *_cp311
@@ -21372,21 +32008,87 @@ packages:
- threadpoolctl >=2.0.0
license: BSD-3-Clause
license_family: BSD
- size: 9337187
- timestamp: 1708074792275
+ size: 9378987
+ timestamp: 1712825705694
+- kind: conda
+ name: scikit-learn
+ version: 1.4.2
+ build: py312h394d371_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/scikit-learn-1.4.2-py312h394d371_0.conda
+ sha256: 37959e8e854ad3e78247f4be353b16ddb1fd1f047d0256a8ef83e73773908b69
+ md5: 8ba1ad15c3c42b64d42782c66a7a9ed1
+ depends:
+ - _openmp_mutex >=4.5
+ - joblib >=1.2.0
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
+ - numpy >=1.26.4,<2.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - scipy
+ - threadpoolctl >=2.0.0
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 10169037
+ timestamp: 1712825319303
+- kind: conda
+ name: scikit-learn
+ version: 1.4.2
+ build: py312h7167a34_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/scikit-learn-1.4.2-py312h7167a34_0.conda
+ sha256: 94bd6e4469de518d34d0f43bdcf0cf9a22b4527aad37fb47761c6f0c5aed52e6
+ md5: 3201f533cb017af16c3b0fa98ef7f4d0
+ depends:
+ - joblib >=1.2.0
+ - libcxx >=16
+ - llvm-openmp >=16.0.6
+ - llvm-openmp >=18.1.3
+ - numpy >=1.26.4,<2.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - scipy
+ - threadpoolctl >=2.0.0
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 9220566
+ timestamp: 1712825832119
+- kind: conda
+ name: scikit-learn
+ version: 1.4.2
+ build: py312hcacafb1_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/scikit-learn-1.4.2-py312hcacafb1_0.conda
+ sha256: 3de4945d5ee17655028576c225feda991d9ca27f71c438334a8937dbdcfde3d2
+ md5: 1a33881a2f7cc94f53ef44b39c853c44
+ depends:
+ - joblib >=1.2.0
+ - numpy >=1.26.4,<2.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - scipy
+ - threadpoolctl >=2.0.0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 8833096
+ timestamp: 1712825551532
- kind: conda
name: scikit-learn
- version: 1.4.1.post1
+ version: 1.4.2
build: py312hd4306f4_0
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/scikit-learn-1.4.1.post1-py312hd4306f4_0.conda
- sha256: 1eaf9801e244562a6c590eae3d6ccf471b1e7f63c5faa717be40e5ee74735f1b
- md5: a61cfeba84450a9e8fa88fce295eb248
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/scikit-learn-1.4.2-py312hd4306f4_0.conda
+ sha256: 3c47f22fa3200113fed3c50da054dda0c69bba3118fbdcce6fb8567fc5b23996
+ md5: 0c05d05db3c1d7d4092761b940cd4e1e
depends:
- joblib >=1.2.0
- libcxx >=16
- llvm-openmp >=16.0.6
- - llvm-openmp >=17.0.6
+ - llvm-openmp >=18.1.3
- numpy >=1.26.4,<2.0a0
- python >=3.12,<3.13.0a0
- python >=3.12,<3.13.0a0 *_cpython
@@ -21395,17 +32097,112 @@ packages:
- threadpoolctl >=2.0.0
license: BSD-3-Clause
license_family: BSD
- size: 9240246
- timestamp: 1708074761469
+ size: 9194883
+ timestamp: 1712825599759
- kind: conda
name: scipy
- version: 1.12.0
- build: py311h0b4df5a_2
- build_number: 2
+ version: 1.13.0
+ build: py310hb13e2d6_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/scipy-1.13.0-py310hb13e2d6_0.conda
+ sha256: e180782df1e4a34eaae2d4e3b6e94e5f2f5a4472cfd33884780d7ce96b84de0d
+ md5: 512cfc0369e247e3993a76030671cce0
+ depends:
+ - libblas >=3.9.0,<4.0a0
+ - libcblas >=3.9.0,<4.0a0
+ - libgcc-ng >=12
+ - libgfortran-ng
+ - libgfortran5 >=12.3.0
+ - liblapack >=3.9.0,<4.0a0
+ - libstdcxx-ng >=12
+ - numpy >=1.22.4,<1.28
+ - numpy >=1.22.4,<2.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 16327082
+ timestamp: 1712256494659
+- kind: conda
+ name: scipy
+ version: 1.13.0
+ build: py310hdfaad59_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/scipy-1.13.0-py310hdfaad59_0.conda
+ sha256: 6b55e3d6d4408f8e0ccff0fb6830269fc91ebb89c12fd48637ea60b06a446dd3
+ md5: bf14e42c0fe5851ba635709f46d57548
+ depends:
+ - libblas >=3.9.0,<4.0a0
+ - libcblas >=3.9.0,<4.0a0
+ - libcxx >=16
+ - libgfortran 5.*
+ - libgfortran5 >=12.3.0
+ - libgfortran5 >=13.2.0
+ - liblapack >=3.9.0,<4.0a0
+ - numpy >=1.22.4,<1.28
+ - numpy >=1.22.4,<2.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 15744737
+ timestamp: 1712257554126
+- kind: conda
+ name: scipy
+ version: 1.13.0
+ build: py310hf4b343e_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/scipy-1.13.0-py310hf4b343e_0.conda
+ sha256: 5c1081f021da306f621d3a3b2f9e0501c8894e68e6e487fdbcc64890afab9dbb
+ md5: 9c7f3fdecc0c9af9a573bbc369f681d9
+ depends:
+ - libblas >=3.9.0,<4.0a0
+ - libcblas >=3.9.0,<4.0a0
+ - libcxx >=16
+ - libgfortran 5.*
+ - libgfortran5 >=12.3.0
+ - libgfortran5 >=13.2.0
+ - liblapack >=3.9.0,<4.0a0
+ - numpy >=1.22.4,<1.28
+ - numpy >=1.22.4,<2.0a0
+ - python >=3.10,<3.11.0a0
+ - python >=3.10,<3.11.0a0 *_cpython
+ - python_abi 3.10.* *_cp310
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 14695788
+ timestamp: 1712253605046
+- kind: conda
+ name: scipy
+ version: 1.13.0
+ build: py310hf667824_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/scipy-1.13.0-py310hf667824_0.conda
+ sha256: a021146fc46405fe13e46aa081df5fc1d7d111f59c53c82ef76fcb313c749350
+ md5: f098f975f94387e4ed8c3c512b91ce48
+ depends:
+ - libblas >=3.9.0,<4.0a0
+ - libcblas >=3.9.0,<4.0a0
+ - liblapack >=3.9.0,<4.0a0
+ - numpy >=1.22.4,<1.28
+ - numpy >=1.22.4,<2.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 14839925
+ timestamp: 1712287332170
+- kind: conda
+ name: scipy
+ version: 1.13.0
+ build: py311h0b4df5a_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/scipy-1.12.0-py311h0b4df5a_2.conda
- sha256: 0519e3a4988d56e689a37d2a79b3d5cb15591d4e9428b3a66fdb607310295f1f
- md5: eeccea26a9e7819b4ab9e69e4d7b9b44
+ url: https://conda.anaconda.org/conda-forge/win-64/scipy-1.13.0-py311h0b4df5a_0.conda
+ sha256: 0094e9d9b49636182ee797f7db51272e6a9092c024ddf4226194404452cf7c20
+ md5: c6658cd2b5a4cb1cd7530ac182566ce5
depends:
- libblas >=3.9.0,<4.0a0
- libcblas >=3.9.0,<4.0a0
@@ -21419,17 +32216,41 @@ packages:
- vc14_runtime >=14.29.30139
license: BSD-3-Clause
license_family: BSD
- size: 15968999
- timestamp: 1706043936628
+ size: 15668033
+ timestamp: 1712257530957
- kind: conda
name: scipy
- version: 1.12.0
- build: py311h64a7726_2
- build_number: 2
+ version: 1.13.0
+ build: py311h4f9446f_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/scipy-1.13.0-py311h4f9446f_0.conda
+ sha256: 3b1c61d3ae96e7e6586af560ba4562e2dcbe3bc72a6e29ca175dc64ff150f786
+ md5: 8ee0bd3f02934adabade41ab82914ab9
+ depends:
+ - libblas >=3.9.0,<4.0a0
+ - libcblas >=3.9.0,<4.0a0
+ - libcxx >=16
+ - libgfortran 5.*
+ - libgfortran5 >=12.3.0
+ - libgfortran5 >=13.2.0
+ - liblapack >=3.9.0,<4.0a0
+ - numpy >=1.23.5,<1.28
+ - numpy >=1.23.5,<2.0a0
+ - python >=3.11,<3.12.0a0
+ - python >=3.11,<3.12.0a0 *_cpython
+ - python_abi 3.11.* *_cp311
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 15523738
+ timestamp: 1712257730471
+- kind: conda
+ name: scipy
+ version: 1.13.0
+ build: py311h64a7726_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/scipy-1.12.0-py311h64a7726_2.conda
- sha256: e5aca4c5e63314848600d6da7360e0701c512f70d1783610eed5c1f7ecf58a57
- md5: 24ca5107ab75c5521067b8ba505dfae5
+ url: https://conda.anaconda.org/conda-forge/linux-64/scipy-1.13.0-py311h64a7726_0.conda
+ sha256: d61d31d6f54e5d22f45bfce9d37d847313eab0afd6ff45e4c31f56f9ca2f8955
+ md5: d443c70b4a05f50236c70b9c79beff64
depends:
- libblas >=3.9.0,<4.0a0
- libcblas >=3.9.0,<4.0a0
@@ -21444,21 +32265,20 @@ packages:
- python_abi 3.11.* *_cp311
license: BSD-3-Clause
license_family: BSD
- size: 17270207
- timestamp: 1706042776987
+ size: 17410362
+ timestamp: 1712256764147
- kind: conda
name: scipy
- version: 1.12.0
- build: py311h86d0cd9_2
- build_number: 2
+ version: 1.13.0
+ build: py311h86d0cd9_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/scipy-1.12.0-py311h86d0cd9_2.conda
- sha256: 01035edbfed56239bff4b3845c0cef9b5e6a44c397c9ba131387df24ad7d36b8
- md5: 9a70728fa81071937bbd1ebc3b986f44
+ url: https://conda.anaconda.org/conda-forge/osx-64/scipy-1.13.0-py311h86d0cd9_0.conda
+ sha256: 25b39409d6837185f780ad5f4d5733d70f4ab372973429d150ad52ab3148e603
+ md5: 280cc0c8d29e2a60bb583db598719b06
depends:
- libblas >=3.9.0,<4.0a0
- libcblas >=3.9.0,<4.0a0
- - libcxx >=15
+ - libcxx >=16
- libgfortran 5.*
- libgfortran5 >=12.3.0
- libgfortran5 >=13.2.0
@@ -21469,126 +32289,287 @@ packages:
- python_abi 3.11.* *_cp311
license: BSD-3-Clause
license_family: BSD
- size: 16759101
- timestamp: 1706043392398
+ size: 16580478
+ timestamp: 1712257627918
- kind: conda
name: scipy
- version: 1.12.0
- build: py312h9d7df2b_2
- build_number: 2
+ version: 1.13.0
+ build: py312h8753938_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/scipy-1.13.0-py312h8753938_0.conda
+ sha256: 8441a6e6805e6a99e02c56a52ec1672b549f33739061c313a9c4c7655476a852
+ md5: 0acd540ee94e0f2148e8d351ed7c49e8
+ depends:
+ - libblas >=3.9.0,<4.0a0
+ - libcblas >=3.9.0,<4.0a0
+ - liblapack >=3.9.0,<4.0a0
+ - numpy >=1.26.4,<1.28
+ - numpy >=1.26.4,<2.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 15588141
+ timestamp: 1712257711887
+- kind: conda
+ name: scipy
+ version: 1.13.0
+ build: py312h8adb940_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/scipy-1.13.0-py312h8adb940_0.conda
+ sha256: 1b14bd37c0973417093baa6d68bd9fb6c66da313681a7f345c1f8ba58545ff23
+ md5: 818232a7807c76970172af9c7698ba4a
+ depends:
+ - libblas >=3.9.0,<4.0a0
+ - libcblas >=3.9.0,<4.0a0
+ - libcxx >=16
+ - libgfortran 5.*
+ - libgfortran5 >=12.3.0
+ - libgfortran5 >=13.2.0
+ - liblapack >=3.9.0,<4.0a0
+ - numpy >=1.26.4,<1.28
+ - numpy >=1.26.4,<2.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 16518412
+ timestamp: 1712257461114
+- kind: conda
+ name: scipy
+ version: 1.13.0
+ build: py312h9d7df2b_0
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/scipy-1.12.0-py312h9d7df2b_2.conda
- sha256: c03f8f87df62b0da27f282f71ffff00ffb15a726061f145fbbb04dc964da7f33
- md5: ecf0b30bef6d14ffdf83cfcc7f93fa23
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/scipy-1.13.0-py312h9d7df2b_0.conda
+ sha256: 52a5ffb343739872af219a9d8985abab2c07db7b026a03a2906f900cee0d1be9
+ md5: 28685c45da745561d79dc47323746278
depends:
- libblas >=3.9.0,<4.0a0
- libcblas >=3.9.0,<4.0a0
- - libcxx >=15
+ - libcxx >=16
- libgfortran 5.*
- libgfortran5 >=12.3.0
- libgfortran5 >=13.2.0
- liblapack >=3.9.0,<4.0a0
- - numpy >=1.26.3,<1.28
- - numpy >=1.26.3,<2.0a0
+ - numpy >=1.26.4,<1.28
+ - numpy >=1.26.4,<2.0a0
- python >=3.12,<3.13.0a0
- python >=3.12,<3.13.0a0 *_cpython
- python_abi 3.12.* *_cp312
license: BSD-3-Clause
license_family: BSD
- size: 15547334
- timestamp: 1706043853757
+ size: 15450401
+ timestamp: 1712257711243
+- kind: conda
+ name: scipy
+ version: 1.13.0
+ build: py312heda63a1_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/scipy-1.13.0-py312heda63a1_0.conda
+ sha256: 54571d3f3583f64a184b19b0cd50bea7f102052053e48017120026ee1ccacd6f
+ md5: c53b9f319cafc679476f5613599857e8
+ depends:
+ - libblas >=3.9.0,<4.0a0
+ - libcblas >=3.9.0,<4.0a0
+ - libgcc-ng >=12
+ - libgfortran-ng
+ - libgfortran5 >=12.3.0
+ - liblapack >=3.9.0,<4.0a0
+ - libstdcxx-ng >=12
+ - numpy >=1.26.4,<1.28
+ - numpy >=1.26.4,<2.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 17373483
+ timestamp: 1712256604150
- kind: conda
name: secretstorage
version: 3.3.3
- build: py311h38be061_2
+ build: py312h7900ff3_2
build_number: 2
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/secretstorage-3.3.3-py311h38be061_2.conda
- sha256: 45e7d85a3663993e8bffdb7c6040561923c848e3262228b163042663caa4485e
- md5: 30a57eaa8e72cb0c2c84d6d7db32010c
+ url: https://conda.anaconda.org/conda-forge/linux-64/secretstorage-3.3.3-py312h7900ff3_2.conda
+ sha256: 0479e3f8c8e90049a6d92d4c7e67916c6d6cdafd11a1a31c54c785cce44aeb20
+ md5: 39067833cbb620066d492f8bd6f11dbf
depends:
- cryptography
- dbus
- jeepney >=0.6
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12.0rc3,<3.13.0a0
+ - python_abi 3.12.* *_cp312
license: BSD-3-Clause
license_family: BSD
- size: 32421
- timestamp: 1695551942931
+ size: 31766
+ timestamp: 1695551875966
- kind: conda
name: send2trash
- version: 1.8.2
- build: pyh08f2357_0
+ version: 1.8.3
+ build: pyh0d859eb_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/send2trash-1.8.2-pyh08f2357_0.conda
- sha256: 55208c6b48d68dc9ad2e2cf81ab9dc6b8a1d607e67acf9115bdc7794accc84bc
- md5: c00d32dfa733d381b6a1908d0d67e0d7
+ url: https://conda.anaconda.org/conda-forge/noarch/send2trash-1.8.3-pyh0d859eb_0.conda
+ sha256: c4401b071e86ddfa0ea4f34b85308db2516b6aeca50053535996864cfdee7b3f
+ md5: 778594b20097b5a948c59e50ae42482a
depends:
- - __win
- - python >=3.6
- - pywin32
+ - __linux
+ - python >=3.7
license: BSD-3-Clause
license_family: BSD
- size: 23279
- timestamp: 1682601755260
+ size: 22868
+ timestamp: 1712585140895
- kind: conda
name: send2trash
- version: 1.8.2
- build: pyh41d4057_0
+ version: 1.8.3
+ build: pyh31c8845_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/send2trash-1.8.2-pyh41d4057_0.conda
- sha256: e74d3faf51a6cc429898da0209d95b209270160f3edbf2f6d8b61a99428301cd
- md5: ada5a17adcd10be4fc7e37e4166ba0e2
+ url: https://conda.anaconda.org/conda-forge/noarch/send2trash-1.8.3-pyh31c8845_0.conda
+ sha256: f911307db932c92510da6c3c15b461aef935720776643a1fbf3683f61001068b
+ md5: c3cb67fc72fb38020fe7923dbbcf69b0
depends:
- - __linux
- - python >=3.6
+ - __osx
+ - pyobjc-framework-cocoa
+ - python >=3.7
license: BSD-3-Clause
license_family: BSD
- size: 22821
- timestamp: 1682601391911
+ size: 23165
+ timestamp: 1712585504123
- kind: conda
name: send2trash
- version: 1.8.2
- build: pyhd1c38e8_0
+ version: 1.8.3
+ build: pyh5737063_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/send2trash-1.8.2-pyhd1c38e8_0.conda
- sha256: dca4022bae47618ed738ab7d45ead5202d174b741cfb98e4484acdc6e76da32a
- md5: 2657c3de5371c571aef6678afb4aaadd
+ url: https://conda.anaconda.org/conda-forge/noarch/send2trash-1.8.3-pyh5737063_0.conda
+ sha256: d8aa230501a33250af2deee03006a2579f0335e7240a9c7286834788dcdcfaa8
+ md5: 5a86a21050ca3831ec7f77fb302f1132
depends:
- - __osx
- - pyobjc-framework-cocoa
- - python >=3.6
+ - __win
+ - python >=3.7
+ - pywin32
license: BSD-3-Clause
license_family: BSD
- size: 23021
- timestamp: 1682601619389
+ size: 23319
+ timestamp: 1712585816346
- kind: conda
name: setuptools
- version: 69.1.1
+ version: 69.5.1
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.1.1-pyhd8ed1ab_0.conda
- sha256: 7a6dca60efcaa42d0ebb784950bc16230a968256cb5048a4441cb34653b5ec58
- md5: 576de899521b7d43674ba3ef6eae9142
+ url: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.5.1-pyhd8ed1ab_0.conda
+ sha256: 72d143408507043628b32bed089730b6d5f5445eccc44b59911ec9f262e365e7
+ md5: 7462280d81f639363e6e63c81276bd9e
depends:
- python >=3.8
license: MIT
license_family: MIT
- size: 469644
- timestamp: 1708702431036
+ size: 501790
+ timestamp: 1713094963112
+- kind: conda
+ name: shapely
+ version: 2.0.4
+ build: py310h82bc67a_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/shapely-2.0.4-py310h82bc67a_0.conda
+ sha256: a8797857a0feb11cd56c506aebe0dfac62b4a027c940a074b0e791171de32824
+ md5: 1725c1b17b86f1d13ca8f8c8576aadba
+ depends:
+ - geos >=3.12.1,<3.12.2.0a0
+ - numpy >=1.22.4,<2.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 453390
+ timestamp: 1713346602489
+- kind: conda
+ name: shapely
+ version: 2.0.4
+ build: py310hacc03b5_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/shapely-2.0.4-py310hacc03b5_0.conda
+ sha256: defc04d2c61ec3d400f22aad5a4c37d1083b1af17a9a7f61c545257707ee2a7c
+ md5: 7cd15c93fd3cbf61c2904e99c638b85d
+ depends:
+ - geos >=3.12.1,<3.12.2.0a0
+ - numpy >=1.22.4,<2.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 451281
+ timestamp: 1713346810610
+- kind: conda
+ name: shapely
+ version: 2.0.4
+ build: py310hc3e127f_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/shapely-2.0.4-py310hc3e127f_0.conda
+ sha256: c7df68900ae72b504adff48a7500a2f9168f3cad34729c4f496704ec41f4a723
+ md5: 5cc13dc3d6981b2187616b824e1c5fae
+ depends:
+ - geos >=3.12.1,<3.12.2.0a0
+ - libgcc-ng >=12
+ - numpy >=1.22.4,<2.0a0
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 481028
+ timestamp: 1713346300694
+- kind: conda
+ name: shapely
+ version: 2.0.4
+ build: py310hee2b506_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/shapely-2.0.4-py310hee2b506_0.conda
+ sha256: b924a151f8ee89512d07c8b5db485112e391e3971c001cf65f2204d15f7147fe
+ md5: fce034d47e597cddee746577037312e0
+ depends:
+ - geos >=3.12.1,<3.12.2.0a0
+ - numpy >=1.22.4,<2.0a0
+ - python >=3.10,<3.11.0a0
+ - python >=3.10,<3.11.0a0 *_cpython
+ - python_abi 3.10.* *_cp310
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 448238
+ timestamp: 1713346624427
+- kind: conda
+ name: shapely
+ version: 2.0.4
+ build: py311h0815064_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/shapely-2.0.4-py311h0815064_0.conda
+ sha256: 63b104d6ba42d43b4c8223c8cf95230aef9de539a07dee13d3a9309854145888
+ md5: 16d8c12283fdc6fdd46e2191063872e9
+ depends:
+ - geos >=3.12.1,<3.12.2.0a0
+ - numpy >=1.23.5,<2.0a0
+ - python >=3.11,<3.12.0a0
+ - python >=3.11,<3.12.0a0 *_cpython
+ - python_abi 3.11.* *_cp311
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 541660
+ timestamp: 1713346691625
- kind: conda
name: shapely
- version: 2.0.3
+ version: 2.0.4
build: py311h16bee0b_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/shapely-2.0.3-py311h16bee0b_0.conda
- sha256: aa4b7813988242077662572877f4f7e5ffa37a37c196e37f87100b956658271f
- md5: 6607a6a5212fe40b9026bfda4269edc2
+ url: https://conda.anaconda.org/conda-forge/win-64/shapely-2.0.4-py311h16bee0b_0.conda
+ sha256: f0f785454da942e741c9156a7ba7bab5d50d7b76f0f0b28a63b4949dd8df1918
+ md5: f8020716ec320b036c01ae216c263510
depends:
- geos >=3.12.1,<3.12.2.0a0
- numpy >=1.23.5,<2.0a0
@@ -21599,16 +32580,16 @@ packages:
- vc14_runtime >=14.29.30139
license: BSD-3-Clause
license_family: BSD
- size: 545971
- timestamp: 1708368682223
+ size: 545121
+ timestamp: 1713346718356
- kind: conda
name: shapely
- version: 2.0.3
+ version: 2.0.4
build: py311h2032efe_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/shapely-2.0.3-py311h2032efe_0.conda
- sha256: b2766384c3f79a1b71224e06608b2e7a6ba8a0da0fb4981cbc36bc929acfefc9
- md5: e982956906078eeac9feb3b8db10d011
+ url: https://conda.anaconda.org/conda-forge/linux-64/shapely-2.0.4-py311h2032efe_0.conda
+ sha256: fc943ac6a34ca0d95831aa13b666f0a5ed4ddac2389d43714873485400a43e9f
+ md5: c99302680ce37b15bcda8152976cb3ba
depends:
- geos >=3.12.1,<3.12.2.0a0
- libgcc-ng >=12
@@ -21617,16 +32598,16 @@ packages:
- python_abi 3.11.* *_cp311
license: BSD-3-Clause
license_family: BSD
- size: 575357
- timestamp: 1708368112125
+ size: 577044
+ timestamp: 1713346245345
- kind: conda
name: shapely
- version: 2.0.3
+ version: 2.0.4
build: py311h4c12f3d_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/shapely-2.0.3-py311h4c12f3d_0.conda
- sha256: 1bc3a40e9989c1a773b536223433c96c2ae975db4a2f058f4799577f0dcb4ba2
- md5: a58eb162e082a968b0ba8ec61f1c51d0
+ url: https://conda.anaconda.org/conda-forge/osx-64/shapely-2.0.4-py311h4c12f3d_0.conda
+ sha256: e7dd42e32a485f2763b25d357f85a36a2e7fef825275d46429c368b357a228a9
+ md5: 1daeeeb7031c6aa6423b4db05a3bd1b9
depends:
- geos >=3.12.1,<3.12.2.0a0
- numpy >=1.23.5,<2.0a0
@@ -21634,16 +32615,16 @@ packages:
- python_abi 3.11.* *_cp311
license: BSD-3-Clause
license_family: BSD
- size: 543769
- timestamp: 1708368311172
+ size: 543934
+ timestamp: 1713346645163
- kind: conda
name: shapely
- version: 2.0.3
+ version: 2.0.4
build: py312h04e4829_0
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/shapely-2.0.3-py312h04e4829_0.conda
- sha256: 42e93fc8e6f20e4eef99157512e1037f1bedff123aab8ecf76fbb373f9b0b452
- md5: fba7689345d909823cbaa5ec9056a5f9
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/shapely-2.0.4-py312h04e4829_0.conda
+ sha256: e3cb7a567efa32fb6380ee2dd444478d7886e4ca4e2b44c32c75aa8db45df7ae
+ md5: f66510757100dbefb33eeebf6be10d9f
depends:
- geos >=3.12.1,<3.12.2.0a0
- numpy >=1.26.4,<2.0a0
@@ -21652,8 +32633,104 @@ packages:
- python_abi 3.12.* *_cp312
license: BSD-3-Clause
license_family: BSD
- size: 529093
- timestamp: 1708368455835
+ size: 529871
+ timestamp: 1713346519411
+- kind: conda
+ name: shapely
+ version: 2.0.4
+ build: py312h7d70906_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/shapely-2.0.4-py312h7d70906_0.conda
+ sha256: 15b1c981863c89564cad62e812391f70157144034222e140027be32b0893b703
+ md5: 9f05acd1ca9004fd5fd5faf65388db7e
+ depends:
+ - geos >=3.12.1,<3.12.2.0a0
+ - numpy >=1.26.4,<2.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 535205
+ timestamp: 1713346623321
+- kind: conda
+ name: shapely
+ version: 2.0.4
+ build: py312h8fb43f9_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/shapely-2.0.4-py312h8fb43f9_0.conda
+ sha256: 4c9718cebdfde629d95943cf8240c8110c2237a27648f0cb3cf3ff822ea51ffa
+ md5: 751b40bb9b6116bb18d5ee82b90b8cdf
+ depends:
+ - geos >=3.12.1,<3.12.2.0a0
+ - numpy >=1.26.4,<2.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 535490
+ timestamp: 1713346579337
+- kind: conda
+ name: shapely
+ version: 2.0.4
+ build: py312h9e6bd2c_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/shapely-2.0.4-py312h9e6bd2c_0.conda
+ sha256: 119b9273c96053415be5606aa1fc65a3d765b32f549a18bcc300427042686906
+ md5: 770f506aa607cb6ff2a57e35e289ab20
+ depends:
+ - geos >=3.12.1,<3.12.2.0a0
+ - libgcc-ng >=12
+ - numpy >=1.26.4,<2.0a0
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 567583
+ timestamp: 1713346216151
+- kind: conda
+ name: sip
+ version: 6.7.12
+ build: py310h00ffb61_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/sip-6.7.12-py310h00ffb61_0.conda
+ sha256: 159f95e125ff48fa84cfbff8ef7ccfe14b6960df108b6c1d3472d0248bb07781
+ md5: 882ddccbb0d5c47da05eb35ec4813c16
+ depends:
+ - packaging
+ - ply
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - tomli
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: GPL-3.0-only
+ license_family: GPL
+ size: 504474
+ timestamp: 1697300911843
+- kind: conda
+ name: sip
+ version: 6.7.12
+ build: py310hc6cd4ac_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/sip-6.7.12-py310hc6cd4ac_0.conda
+ sha256: 4c350a7ed9f5fd98196a50bc74ce1dc3bb05b0c90d17ea120439755fe2075796
+ md5: 68d5bfccaba2d89a7812098dd3966d9b
+ depends:
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
+ - packaging
+ - ply
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - tomli
+ license: GPL-3.0-only
+ license_family: GPL
+ size: 494293
+ timestamp: 1697300616950
- kind: conda
name: sip
version: 6.7.12
@@ -21698,23 +32775,64 @@ packages:
- kind: conda
name: sip
version: 6.7.12
- build: py311hd39e593_0
+ build: py312h30efb56_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/sip-6.7.12-py312h30efb56_0.conda
+ sha256: baf6e63e213bb11e369a51e511b44217546a11f8470242bbaa8fac45cb4a39c3
+ md5: 32633871002ee9902f747d2236e0d122
+ depends:
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
+ - packaging
+ - ply
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - tomli
+ license: GPL-3.0-only
+ license_family: GPL
+ size: 576283
+ timestamp: 1697300599736
+- kind: conda
+ name: sip
+ version: 6.7.12
+ build: py312h444b7ae_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/sip-6.7.12-py311hd39e593_0.conda
- sha256: b08412ca84bb219a5cec2b12040a42e764a185f784c9e631aa64ff8adf19973f
- md5: 1ece78d403bd99aa434d899c287412ef
+ url: https://conda.anaconda.org/conda-forge/osx-64/sip-6.7.12-py312h444b7ae_0.conda
+ sha256: 5f3ec11519584451972c5c1f4997fee07851cea5150965439f61a986a90e22c6
+ md5: 9c576e4025eb39cadac5b418d6203d38
depends:
- __osx >=10.9
- libcxx >=16.0.6
- packaging
- ply
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - tomli
+ license: GPL-3.0-only
+ license_family: GPL
+ size: 570070
+ timestamp: 1697300788761
+- kind: conda
+ name: sip
+ version: 6.7.12
+ build: py312h53d5487_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/sip-6.7.12-py312h53d5487_0.conda
+ sha256: 2347c2e7d5e7282b991d5d4f7448d9e6fe8c26e5d6df0d09f0e60b11b7d19586
+ md5: a5d3d1363d6d0b4827d6b940414a5b76
+ depends:
+ - packaging
+ - ply
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
- tomli
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
license: GPL-3.0-only
license_family: GPL
- size: 573640
- timestamp: 1697300780749
+ size: 589657
+ timestamp: 1697301028797
- kind: conda
name: sip
version: 6.7.12
@@ -21753,63 +32871,67 @@ packages:
timestamp: 1620240338595
- kind: conda
name: snappy
- version: 1.1.10
- build: h17c5cce_0
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/snappy-1.1.10-h17c5cce_0.conda
- sha256: dfae03cd2339587871e53b42833657faa4c9e42e3e2c56ee9e32bc60797c7f62
- md5: ac82a611d1a67a598096ebaa857198e3
+ version: 1.2.0
+ build: h6dc393e_1
+ build_number: 1
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/snappy-1.2.0-h6dc393e_1.conda
+ sha256: dc2abe5f45859263c36d287d0d6212e83a3552ef19faf98194d32e70d755d648
+ md5: 9c322ec36340610fcf213b72999b049e
depends:
- - libcxx >=14.0.6
+ - libcxx >=16
license: BSD-3-Clause
license_family: BSD
- size: 33879
- timestamp: 1678534968831
+ size: 36881
+ timestamp: 1712591355487
- kind: conda
name: snappy
- version: 1.1.10
- build: h225ccf5_0
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/snappy-1.1.10-h225ccf5_0.conda
- sha256: 575915dc13152e446a84e2f88de70a14f8b6af1a870e708f9370bd4be105583b
- md5: 4320a8781f14cd959689b86e349f3b73
+ version: 1.2.0
+ build: hd04f947_1
+ build_number: 1
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/snappy-1.2.0-hd04f947_1.conda
+ sha256: 88afe00f550e1e2d66326516e5372aa1834c51fb6b53afa7a3636c65cd75ce42
+ md5: 32cf833d440ee18d3c4c04ec38cf2b01
depends:
- - libcxx >=14.0.6
+ - libcxx >=16
license: BSD-3-Clause
license_family: BSD
- size: 34657
- timestamp: 1678534768395
+ size: 35655
+ timestamp: 1712591484831
- kind: conda
name: snappy
- version: 1.1.10
- build: h9fff704_0
+ version: 1.2.0
+ build: hdb0a2a9_1
+ build_number: 1
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/snappy-1.1.10-h9fff704_0.conda
- sha256: 02219f2382b4fe39250627dade087a4412d811936a5a445636b7260477164eac
- md5: e6d228cd0bb74a51dd18f5bfce0b4115
+ url: https://conda.anaconda.org/conda-forge/linux-64/snappy-1.2.0-hdb0a2a9_1.conda
+ sha256: bb87116b8c6198f6979b3d212e9af12e08e12f2bf09970d0f9b4582607648b22
+ md5: 843bbb8ace1d64ac50d64639ff38b014
depends:
- libgcc-ng >=12
- libstdcxx-ng >=12
license: BSD-3-Clause
license_family: BSD
- size: 38865
- timestamp: 1678534590321
+ size: 42334
+ timestamp: 1712591084054
- kind: conda
name: snappy
- version: 1.1.10
- build: hfb803bf_0
+ version: 1.2.0
+ build: hfb803bf_1
+ build_number: 1
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/snappy-1.1.10-hfb803bf_0.conda
- sha256: 2a195b38cb63f03ad9f73a82db52434ebefe216fb70f7ea3defe4ddf263d408a
- md5: cff1df79c9cff719460eb2dd172568de
+ url: https://conda.anaconda.org/conda-forge/win-64/snappy-1.2.0-hfb803bf_1.conda
+ sha256: de02a222071d6a832ad3b790c8c977725161ad430ec694fd7b35769b6e1104b4
+ md5: a419bf04a7c76a46639e315ac1b8bf72
depends:
- ucrt >=10.0.20348.0
- vc >=14.2,<15
- - vs2015_runtime >=14.29.30139
+ - vc14_runtime >=14.29.30139
license: BSD-3-Clause
license_family: BSD
- size: 57065
- timestamp: 1678534804734
+ size: 59510
+ timestamp: 1712591680669
- kind: conda
name: sniffio
version: 1.3.1
@@ -21856,6 +32978,69 @@ packages:
license_family: MIT
size: 36754
timestamp: 1693929424267
+- kind: conda
+ name: spdlog
+ version: 1.13.0
+ build: h1a4aec9_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/spdlog-1.13.0-h1a4aec9_0.conda
+ sha256: 2f1a981d8d1e06511081ef10068c083965bf1ea0fe7546f8a5f1e37a2982110a
+ md5: 2288eabc17f9fec9b64dac2cfe07b8ac
+ depends:
+ - fmt >=10.2.1,<11.0a0
+ - libcxx >=16
+ license: MIT
+ license_family: MIT
+ size: 162075
+ timestamp: 1713902597770
+- kind: conda
+ name: spdlog
+ version: 1.13.0
+ build: h5fcca99_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/spdlog-1.13.0-h5fcca99_0.conda
+ sha256: 161ad4bb6de140ca00024dd5004b4ab99189767df7f83362d6c252c03213e29a
+ md5: 1907a70a6494b95f3961417e7a9564d2
+ depends:
+ - fmt >=10.2.1,<11.0a0
+ - libcxx >=16
+ license: MIT
+ license_family: MIT
+ size: 156731
+ timestamp: 1713902551224
+- kind: conda
+ name: spdlog
+ version: 1.13.0
+ build: h64d2f7d_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/spdlog-1.13.0-h64d2f7d_0.conda
+ sha256: 7c5c8d6e2df300f7887e5488a21b11d854ffbc51a1b149af4164d6cbd225fd7a
+ md5: e21d3d1aef3973f78ee161bb053c5922
+ depends:
+ - fmt >=10.2.1,<11.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: MIT
+ license_family: MIT
+ size: 161230
+ timestamp: 1713902489730
+- kind: conda
+ name: spdlog
+ version: 1.13.0
+ build: hd2e6256_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/spdlog-1.13.0-hd2e6256_0.conda
+ sha256: 2027b971e83a9c9d292c12880269fe08e782fe9b15b93b5a3ddc8697116e6750
+ md5: 18f9348f064632785d54dbd1db9344bb
+ depends:
+ - fmt >=10.2.1,<11.0a0
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
+ license: MIT
+ license_family: MIT
+ size: 188328
+ timestamp: 1713902039030
- kind: conda
name: sphobjinv
version: 2.3.1
@@ -21876,69 +33061,69 @@ packages:
timestamp: 1669810397386
- kind: conda
name: sqlite
- version: 3.45.1
+ version: 3.45.3
build: h2c6b66d_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/sqlite-3.45.1-h2c6b66d_0.conda
- sha256: a7cbde68eff5d2ec9bb1b5f2604a523949048a9b5335588eac2d893fd0dd5200
- md5: 93acf31b379acebada263b9bce3dc6ed
+ url: https://conda.anaconda.org/conda-forge/linux-64/sqlite-3.45.3-h2c6b66d_0.conda
+ sha256: 945ac702e2bd8cc59cc780dfc37c18255d5e538c8433dc290c0edbad2bcbaeb4
+ md5: be7d70f2db41b674733667bdd69bd000
depends:
- libgcc-ng >=12
- - libsqlite 3.45.1 h2797004_0
+ - libsqlite 3.45.3 h2797004_0
- libzlib >=1.2.13,<1.3.0a0
- - ncurses >=6.4,<7.0a0
+ - ncurses >=6.4.20240210,<7.0a0
- readline >=8.2,<9.0a0
license: Unlicense
- size: 848194
- timestamp: 1707495171927
+ size: 848611
+ timestamp: 1713367461306
- kind: conda
name: sqlite
- version: 3.45.1
+ version: 3.45.3
build: h7461747_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/sqlite-3.45.1-h7461747_0.conda
- sha256: ce0908a02a1965854dde0022f5ba9b986324077ba4835a3c990463ed762e6e8f
- md5: 239ff6ffc3ee45898db19e3cbbf40f88
+ url: https://conda.anaconda.org/conda-forge/osx-64/sqlite-3.45.3-h7461747_0.conda
+ sha256: 73ab284ff41dd6aeb69f7a8a014018fbf8b019fd261ff4190fd5813b62d07b16
+ md5: 4d9a56087e6150e84b94087a8c0fdf98
depends:
- - libsqlite 3.45.1 h92b6c6a_0
+ - libsqlite 3.45.3 h92b6c6a_0
- libzlib >=1.2.13,<1.3.0a0
- - ncurses >=6.4,<7.0a0
+ - ncurses >=6.4.20240210,<7.0a0
- readline >=8.2,<9.0a0
license: Unlicense
- size: 901237
- timestamp: 1707495392094
+ size: 901246
+ timestamp: 1713367827855
- kind: conda
name: sqlite
- version: 3.45.1
+ version: 3.45.3
build: hcfcfb64_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/sqlite-3.45.1-hcfcfb64_0.conda
- sha256: e77d529803d11743306b57d871c1f168da0eaa5a405591a4a53139a9a10cda0c
- md5: 3c6f2dc59bcde87ee1de006f22ecc40a
+ url: https://conda.anaconda.org/conda-forge/win-64/sqlite-3.45.3-hcfcfb64_0.conda
+ sha256: 9815ad33780f8679d21507ffd6e12184da47eab7b945b2e5df35e8af686aafe6
+ md5: ef090bf29a90a1371888385e405a3a6f
depends:
- - libsqlite 3.45.1 hcfcfb64_0
+ - libsqlite 3.45.3 hcfcfb64_0
- ucrt >=10.0.20348.0
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
license: Unlicense
- size: 872653
- timestamp: 1707495666981
+ size: 872907
+ timestamp: 1713367918283
- kind: conda
name: sqlite
- version: 3.45.1
+ version: 3.45.3
build: hf2abe2d_0
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/sqlite-3.45.1-hf2abe2d_0.conda
- sha256: 9dc20bca83b44cabedefab92b4484fd41bef36b6c73cd3b31506d209ba0d5c2f
- md5: 58918f7a593a143c2f305b832c8802f4
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/sqlite-3.45.3-hf2abe2d_0.conda
+ sha256: 1d618ce2622e2e976f8f28ede2f14ae20f19f64eda706d9eda6419393c48015a
+ md5: 95ba63aee059cdfc10b7e3ee1dd4c15d
depends:
- - libsqlite 3.45.1 h091b4b1_0
+ - libsqlite 3.45.3 h091b4b1_0
- libzlib >=1.2.13,<1.3.0a0
- - ncurses >=6.4,<7.0a0
+ - ncurses >=6.4.20240210,<7.0a0
- readline >=8.2,<9.0a0
license: Unlicense
- size: 811984
- timestamp: 1707495456736
+ size: 812413
+ timestamp: 1713367802027
- kind: conda
name: stack_data
version: 0.6.2
@@ -22037,6 +33222,22 @@ packages:
license: LGPL-2.1-or-later AND BSD-3-Clause AND GPL-2.0-or-later AND Apache-2.0
size: 1125223
timestamp: 1705677285644
+- kind: conda
+ name: sysroot_linux-64
+ version: '2.12'
+ build: he073ed8_17
+ build_number: 17
+ subdir: noarch
+ noarch: generic
+ url: https://conda.anaconda.org/conda-forge/noarch/sysroot_linux-64-2.12-he073ed8_17.conda
+ sha256: b4e4d685e41cb36cfb16f0cb15d2c61f8f94f56fab38987a44eff95d8a673fb5
+ md5: 595db67e32b276298ff3d94d07d47fbf
+ depends:
+ - kernel-headers_linux-64 2.6.32 he073ed8_17
+ license: LGPL-2.0-or-later AND LGPL-2.0-or-later WITH exceptions AND GPL-2.0-or-later AND MPL-2.0
+ license_family: GPL
+ size: 15127123
+ timestamp: 1708000843849
- kind: conda
name: tabulate
version: 0.9.0
@@ -22055,71 +33256,67 @@ packages:
timestamp: 1665138565317
- kind: conda
name: tbb
- version: 2021.11.0
- build: h00ab1b0_1
- build_number: 1
+ version: 2021.12.0
+ build: h00ab1b0_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/tbb-2021.11.0-h00ab1b0_1.conda
- sha256: ded4de0d5a3eb7b47ed829f0ed0e3c61ccd428308bde52d8d22ced228038223b
- md5: 4531d2927578e7e254ff3bcf6457518c
+ url: https://conda.anaconda.org/conda-forge/linux-64/tbb-2021.12.0-h00ab1b0_0.conda
+ sha256: 0b48f402e18f293e3c7a4c4e391ed2523f173bdec86aa42658db787196eb27ca
+ md5: f1b776cff1b426e7e7461a8502a3b731
depends:
- libgcc-ng >=12
- - libhwloc >=2.9.3,<2.9.4.0a0
+ - libhwloc >=2.10.0,<2.10.1.0a0
- libstdcxx-ng >=12
license: Apache-2.0
license_family: APACHE
- size: 195540
- timestamp: 1706163436794
+ size: 194192
+ timestamp: 1712959702573
- kind: conda
name: tbb
- version: 2021.11.0
- build: h2ffa867_1
- build_number: 1
+ version: 2021.12.0
+ build: h2ffa867_0
subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/tbb-2021.11.0-h2ffa867_1.conda
- sha256: 35aa1918c901fb784c74f3d322f21a87d5bf57fbf02e5586778152b5c4cd82da
- md5: e5584996979b373d50560a28321547e9
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/tbb-2021.12.0-h2ffa867_0.conda
+ sha256: c2905ed5cc567e1714e1a3276a1bdd5e119d335798ebdea1937cceee7718cf78
+ md5: cf605a0a1d025e72c56dcdbe6f23d9f0
depends:
- - libcxx >=15
- - libhwloc >=2.9.3,<2.9.4.0a0
+ - libcxx >=16
+ - libhwloc >=2.10.0,<2.10.1.0a0
license: Apache-2.0
license_family: APACHE
- size: 128174
- timestamp: 1706163796739
+ size: 128359
+ timestamp: 1712960100130
- kind: conda
name: tbb
- version: 2021.11.0
- build: h7728843_1
- build_number: 1
+ version: 2021.12.0
+ build: h7728843_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/tbb-2021.11.0-h7728843_1.conda
- sha256: 6d531daba5ccf150b58d434fa72b1da0da04e8f14ab71bdad289a90d355f47e8
- md5: 29e29beba9deb0ef66bee015c5bf3c14
+ url: https://conda.anaconda.org/conda-forge/osx-64/tbb-2021.12.0-h7728843_0.conda
+ sha256: 6068f814461eeb4ba68ded3d97bbe444d2909b469c51598c40734004b2c3b765
+ md5: e4fb6f4700d8890c36cbf317c2c6d0cb
depends:
- - libcxx >=15
- - libhwloc >=2.9.3,<2.9.4.0a0
+ - libcxx >=16
+ - libhwloc >=2.10.0,<2.10.1.0a0
license: Apache-2.0
license_family: APACHE
- size: 173117
- timestamp: 1706163682083
+ size: 172745
+ timestamp: 1712960020101
- kind: conda
name: tbb
- version: 2021.11.0
- build: h91493d7_1
- build_number: 1
+ version: 2021.12.0
+ build: h91493d7_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/tbb-2021.11.0-h91493d7_1.conda
- sha256: aa30c089fdd6f66c7808592362e29963586e094159964a5fb61fb8efa9e349bc
- md5: 21069f3ed16812f9f4f2700667b6ec86
+ url: https://conda.anaconda.org/conda-forge/win-64/tbb-2021.12.0-h91493d7_0.conda
+ sha256: 621926aae93513408bdca3dd21c97e2aa8ba7dcd2c400dab804fb0ce7da1387b
+ md5: 21745fdd12f01b41178596143cbecffd
depends:
- - libhwloc >=2.9.3,<2.9.4.0a0
+ - libhwloc >=2.10.0,<2.10.1.0a0
- ucrt >=10.0.20348.0
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
license: Apache-2.0
license_family: APACHE
- size: 161382
- timestamp: 1706164225098
+ size: 161618
+ timestamp: 1712960215111
- kind: conda
name: tblib
version: 3.0.0
@@ -22152,13 +33349,13 @@ packages:
timestamp: 1692026941198
- kind: conda
name: terminado
- version: 0.18.0
+ version: 0.18.1
build: pyh0d859eb_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/terminado-0.18.0-pyh0d859eb_0.conda
- sha256: e90139ef15ea9d75a69cd6b6302c29ed5b01c03ddfa717b71acb32b60af74269
- md5: e463f348b8b0eb62c9f7c6fbc780286c
+ url: https://conda.anaconda.org/conda-forge/noarch/terminado-0.18.1-pyh0d859eb_0.conda
+ sha256: b300557c0382478cf661ddb520263508e4b3b5871b471410450ef2846e8c352c
+ md5: efba281bbdae5f6b0a1d53c6d4a97c93
depends:
- __linux
- ptyprocess
@@ -22166,17 +33363,17 @@ packages:
- tornado >=6.1.0
license: BSD-2-Clause
license_family: BSD
- size: 22369
- timestamp: 1699810283724
+ size: 22452
+ timestamp: 1710262728753
- kind: conda
name: terminado
- version: 0.18.0
+ version: 0.18.1
build: pyh31c8845_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/terminado-0.18.0-pyh31c8845_0.conda
- sha256: 8e8741c688ade9be8f86c0b209780c7fbe4a97e4265311ca9d8dda5fcedc6a28
- md5: 14759b57f5b9d97033e633fff0a2d27e
+ url: https://conda.anaconda.org/conda-forge/noarch/terminado-0.18.1-pyh31c8845_0.conda
+ sha256: 4daae56fc8da17784578fbdd064f17e3b3076b394730a14119e571707568dc8a
+ md5: 00b54981b923f5aefcd5e8547de056d5
depends:
- __osx
- ptyprocess
@@ -22184,17 +33381,17 @@ packages:
- tornado >=6.1.0
license: BSD-2-Clause
license_family: BSD
- size: 22631
- timestamp: 1699810378589
+ size: 22717
+ timestamp: 1710265922593
- kind: conda
name: terminado
- version: 0.18.0
+ version: 0.18.1
build: pyh5737063_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/terminado-0.18.0-pyh5737063_0.conda
- sha256: 4353d8d2372ad050cbdab05890c057356ea8693ecfb959396ebb8ffdfc1948bf
- md5: f2fc93bc1e08e04612c4d19361bb0011
+ url: https://conda.anaconda.org/conda-forge/noarch/terminado-0.18.1-pyh5737063_0.conda
+ sha256: 8cb078291fd7882904e3de594d299c8de16dd3af7405787fce6919a385cfc238
+ md5: 4abd500577430a942a995fd0d09b76a2
depends:
- __win
- python >=3.8
@@ -22202,168 +33399,181 @@ packages:
- tornado >=6.1.0
license: BSD-2-Clause
license_family: BSD
- size: 22855
- timestamp: 1699810439015
+ size: 22883
+ timestamp: 1710262943966
- kind: conda
name: threadpoolctl
- version: 3.3.0
+ version: 3.5.0
build: pyhc1e730c_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda
- sha256: 5ba8bd3f2d49b3b860eb4481ca9505c57d4427212eb12cadd2b351309d5c28e6
- md5: 698d2d2b621640bddb9191f132967c9f
+ url: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.5.0-pyhc1e730c_0.conda
+ sha256: 45e402941f6bed094022c5726a2ca494e6224b85180d2367fb6ddd9aea68079d
+ md5: df68d78237980a159bd7149f33c0e8fd
depends:
- python >=3.8
license: BSD-3-Clause
license_family: BSD
- size: 22707
- timestamp: 1707930691866
+ size: 23548
+ timestamp: 1714400228771
- kind: conda
name: tiledb
- version: 2.20.1
- build: h14acc3a_2
- build_number: 2
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/tiledb-2.20.1-h14acc3a_2.conda
- sha256: 27f7eaa8e3d6f8ed54a15b3e76fdf7f904d706bfa1531fac020c5ce459a9ac08
- md5: cdc4ba347cc5bc5f2bc532c81e11f1bf
+ version: 2.22.0
+ build: h27f064a_3
+ build_number: 3
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/tiledb-2.22.0-h27f064a_3.conda
+ sha256: 8b0eec07eba13ed8ea956c33983f5037f56a1a8e25e0483a3beb2ffa097eb767
+ md5: e31163517a2ea6edcf3e51e0b489e3ac
depends:
- - aws-crt-cpp >=0.26.2,<0.26.3.0a0
+ - aws-crt-cpp >=0.26.8,<0.26.9.0a0
- aws-sdk-cpp >=1.11.267,<1.11.268.0a0
- azure-core-cpp >=1.11.1,<1.11.2.0a0
+ - azure-identity-cpp >=1.6.0,<1.6.1.0a0
- azure-storage-blobs-cpp >=12.10.0,<12.10.1.0a0
- azure-storage-common-cpp >=12.5.0,<12.5.1.0a0
- bzip2 >=1.0.8,<2.0a0
+ - fmt >=10.2.1,<11.0a0
- libabseil * cxx17*
- libabseil >=20240116.1,<20240117.0a0
- - libcrc32c >=1.1.2,<1.2.0a0
- - libcurl >=8.5.0,<9.0a0
- - libgoogle-cloud >=2.21.0,<2.22.0a0
- - libgoogle-cloud-storage >=2.21.0,<2.22.0a0
- - libxml2 >=2.12.5,<3.0a0
+ - libcurl >=8.7.1,<9.0a0
+ - libgcc-ng >=12
+ - libgoogle-cloud >=2.23.0,<2.24.0a0
+ - libgoogle-cloud-storage >=2.23.0,<2.24.0a0
+ - libstdcxx-ng >=12
+ - libwebp-base >=1.4.0,<2.0a0
- libzlib >=1.2.13,<1.3.0a0
- lz4-c >=1.9.3,<1.10.0a0
- openssl >=3.2.1,<4.0a0
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
+ - spdlog >=1.13.0,<1.14.0a0
- zstd >=1.5.5,<1.6.0a0
license: MIT
license_family: MIT
- size: 3327809
- timestamp: 1709326403066
+ size: 4356294
+ timestamp: 1714045444066
- kind: conda
name: tiledb
- version: 2.20.1
- build: h6295ede_2
- build_number: 2
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/tiledb-2.20.1-h6295ede_2.conda
- sha256: 9003b3e904968766cb37863db184859164ee504a57073da052e1207b6cec6374
- md5: 7b1fa87b513fe505f981439f4449e576
+ version: 2.22.0
+ build: h5657395_3
+ build_number: 3
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/tiledb-2.22.0-h5657395_3.conda
+ sha256: dff7ce2ad7403b2581d57be5fce58590f4d7af7e914114c64ff81ee8300c12c6
+ md5: 56ab04b840d9a63d1ea8cb8afd0958f0
depends:
- - __osx >=10.13
- - aws-crt-cpp >=0.26.2,<0.26.3.0a0
+ - aws-crt-cpp >=0.26.8,<0.26.9.0a0
- aws-sdk-cpp >=1.11.267,<1.11.268.0a0
- azure-core-cpp >=1.11.1,<1.11.2.0a0
+ - azure-identity-cpp >=1.6.0,<1.6.1.0a0
- azure-storage-blobs-cpp >=12.10.0,<12.10.1.0a0
- azure-storage-common-cpp >=12.5.0,<12.5.1.0a0
- bzip2 >=1.0.8,<2.0a0
+ - fmt >=10.2.1,<11.0a0
- libabseil * cxx17*
- libabseil >=20240116.1,<20240117.0a0
- - libcurl >=8.5.0,<9.0a0
- - libcxx >=16
- - libgoogle-cloud >=2.21.0,<2.22.0a0
- - libgoogle-cloud-storage >=2.21.0,<2.22.0a0
- - libxml2 >=2.12.5,<3.0a0
+ - libcrc32c >=1.1.2,<1.2.0a0
+ - libcurl >=8.7.1,<9.0a0
+ - libgoogle-cloud >=2.23.0,<2.24.0a0
+ - libgoogle-cloud-storage >=2.23.0,<2.24.0a0
+ - libwebp-base >=1.4.0,<2.0a0
- libzlib >=1.2.13,<1.3.0a0
- lz4-c >=1.9.3,<1.10.0a0
- openssl >=3.2.1,<4.0a0
+ - spdlog >=1.13.0,<1.14.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.3,<15
+ - vc14_runtime >=14.38.33130
- zstd >=1.5.5,<1.6.0a0
license: MIT
license_family: MIT
- size: 4100888
- timestamp: 1709324879511
+ size: 3143240
+ timestamp: 1714046981023
- kind: conda
name: tiledb
- version: 2.20.1
- build: h6997b71_2
- build_number: 2
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/tiledb-2.20.1-h6997b71_2.conda
- sha256: 1c6940e0c5b27d0d7bd32f8fcc055dc39fdff903ada8fb63b6bcd4abdc6fd0c4
- md5: 0699e6cbb8521c6cab63b6d1f8de7f74
+ version: 2.22.0
+ build: hf0716ca_3
+ build_number: 3
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/tiledb-2.22.0-hf0716ca_3.conda
+ sha256: 770fe4f59b428320159ddd5df9ea3b3a4005336bdffdb9e74a94b4fe22ffae22
+ md5: 1d2b8eda91ab05de7e180210cb05082e
depends:
- - aws-crt-cpp >=0.26.2,<0.26.3.0a0
+ - __osx >=11.0
+ - aws-crt-cpp >=0.26.8,<0.26.9.0a0
- aws-sdk-cpp >=1.11.267,<1.11.268.0a0
- azure-core-cpp >=1.11.1,<1.11.2.0a0
+ - azure-identity-cpp >=1.6.0,<1.6.1.0a0
- azure-storage-blobs-cpp >=12.10.0,<12.10.1.0a0
- azure-storage-common-cpp >=12.5.0,<12.5.1.0a0
- bzip2 >=1.0.8,<2.0a0
+ - fmt >=10.2.1,<11.0a0
- libabseil * cxx17*
- libabseil >=20240116.1,<20240117.0a0
- - libcurl >=8.5.0,<9.0a0
- - libgcc-ng >=12
- - libgoogle-cloud >=2.21.0,<2.22.0a0
- - libgoogle-cloud-storage >=2.21.0,<2.22.0a0
- - libstdcxx-ng >=12
- - libxml2 >=2.12.5,<3.0a0
+ - libcurl >=8.7.1,<9.0a0
+ - libcxx >=16
+ - libgoogle-cloud >=2.23.0,<2.24.0a0
+ - libgoogle-cloud-storage >=2.23.0,<2.24.0a0
+ - libwebp-base >=1.4.0,<2.0a0
- libzlib >=1.2.13,<1.3.0a0
- lz4-c >=1.9.3,<1.10.0a0
- openssl >=3.2.1,<4.0a0
+ - spdlog >=1.13.0,<1.14.0a0
- zstd >=1.5.5,<1.6.0a0
license: MIT
license_family: MIT
- size: 4670847
- timestamp: 1709323396929
+ size: 3511155
+ timestamp: 1714047805844
- kind: conda
name: tiledb
- version: 2.20.1
- build: hef06dad_2
- build_number: 2
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/tiledb-2.20.1-hef06dad_2.conda
- sha256: 5efe73876adfe5a02e992b457af7af973896acca91e51c3213af479f79a7dbf6
- md5: 501543c7e977eb569c86786db5ee71f0
+ version: 2.22.0
+ build: hf5f2543_3
+ build_number: 3
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/tiledb-2.22.0-hf5f2543_3.conda
+ sha256: 8022a3fab9f68485cd36aeb81f233ebb74f850ed53a5ff6252b06cd3ced86ad7
+ md5: cad00c1384c40715a438f3ac2cafcde9
depends:
- - aws-crt-cpp >=0.26.2,<0.26.3.0a0
+ - __osx >=10.13
+ - aws-crt-cpp >=0.26.8,<0.26.9.0a0
- aws-sdk-cpp >=1.11.267,<1.11.268.0a0
- azure-core-cpp >=1.11.1,<1.11.2.0a0
+ - azure-identity-cpp >=1.6.0,<1.6.1.0a0
- azure-storage-blobs-cpp >=12.10.0,<12.10.1.0a0
- azure-storage-common-cpp >=12.5.0,<12.5.1.0a0
- bzip2 >=1.0.8,<2.0a0
+ - fmt >=10.2.1,<11.0a0
- libabseil * cxx17*
- libabseil >=20240116.1,<20240117.0a0
- - libcurl >=8.5.0,<9.0a0
+ - libcurl >=8.7.1,<9.0a0
- libcxx >=16
- - libgoogle-cloud >=2.21.0,<2.22.0a0
- - libgoogle-cloud-storage >=2.21.0,<2.22.0a0
- - libxml2 >=2.12.5,<3.0a0
+ - libgoogle-cloud >=2.23.0,<2.24.0a0
+ - libgoogle-cloud-storage >=2.23.0,<2.24.0a0
+ - libwebp-base >=1.4.0,<2.0a0
- libzlib >=1.2.13,<1.3.0a0
- lz4-c >=1.9.3,<1.10.0a0
- openssl >=3.2.1,<4.0a0
+ - spdlog >=1.13.0,<1.14.0a0
- zstd >=1.5.5,<1.6.0a0
license: MIT
license_family: MIT
- size: 3626544
- timestamp: 1709324836094
+ size: 3911499
+ timestamp: 1714046671075
- kind: conda
name: tinycss2
- version: 1.2.1
+ version: 1.3.0
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/tinycss2-1.2.1-pyhd8ed1ab_0.tar.bz2
- sha256: f0db1a2298a5e10e30f4b947566c7229442834702f549dded40a73ecdea7502d
- md5: 7234c9eefff659501cd2fe0d2ede4d48
+ url: https://conda.anaconda.org/conda-forge/noarch/tinycss2-1.3.0-pyhd8ed1ab_0.conda
+ sha256: bc55e5899e66805589c02061e315bfc23ae6cc2f2811f5cc13fb189a5ed9d90f
+ md5: 8662629d9a05f9cff364e31ca106c1ac
depends:
- python >=3.5
- webencodings >=0.4
license: BSD-3-Clause
license_family: BSD
- size: 23235
- timestamp: 1666100385187
+ size: 25405
+ timestamp: 1713975078735
- kind: conda
name: tk
version: 8.6.13
@@ -22487,6 +33697,87 @@ packages:
license_family: BSD
size: 52358
timestamp: 1706112720607
+- kind: conda
+ name: tornado
+ version: '6.4'
+ build: py310h2372a71_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/tornado-6.4-py310h2372a71_0.conda
+ sha256: bf3f211554444e03ed4663c0704fada38e0440fa723f1e32e12243ab026e3817
+ md5: 48f39c24349d9ae5c8e8873c42fb6170
+ depends:
+ - libgcc-ng >=12
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ license: Apache-2.0
+ license_family: Apache
+ size: 650910
+ timestamp: 1708363310348
+- kind: conda
+ name: tornado
+ version: '6.4'
+ build: py310h8d17308_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/tornado-6.4-py310h8d17308_0.conda
+ sha256: ec383c3e3927634305d1e0b97d958c426f353156317f1c0210e6ce43c45eee80
+ md5: 0fcef3625a9081c94da6ca74af3fc293
+ depends:
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: Apache-2.0
+ license_family: Apache
+ size: 652769
+ timestamp: 1708363845639
+- kind: conda
+ name: tornado
+ version: '6.4'
+ build: py310hb372a2b_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/tornado-6.4-py310hb372a2b_0.conda
+ sha256: ae6792e3cb7ebddef4884554c1566ed23d3891bb46b5357884154e93eb0dcc60
+ md5: 9665892738f34481a7450d6c16d4038a
+ depends:
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ license: Apache-2.0
+ license_family: Apache
+ size: 651434
+ timestamp: 1708363551700
+- kind: conda
+ name: tornado
+ version: '6.4'
+ build: py310hd125d64_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/tornado-6.4-py310hd125d64_0.conda
+ sha256: 8ee446ec68401a54540e3d848ffe7e4eb5633b7462c2a990efe0fb2621ebb50a
+ md5: 918e4a0c909366d09cf9530bdf3dc398
+ depends:
+ - python >=3.10,<3.11.0a0
+ - python >=3.10,<3.11.0a0 *_cpython
+ - python_abi 3.10.* *_cp310
+ license: Apache-2.0
+ license_family: Apache
+ size: 652190
+ timestamp: 1708363567796
+- kind: conda
+ name: tornado
+ version: '6.4'
+ build: py311h05b510d_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/tornado-6.4-py311h05b510d_0.conda
+ sha256: 29c07a81b52310f9679ca05a6f1d3d3ee8c1830f183f91ad8d46f99cc2fb6720
+ md5: 241cd427ab1f38b72d6ddda3994c80a7
+ depends:
+ - python >=3.11,<3.12.0a0
+ - python >=3.11,<3.12.0a0 *_cpython
+ - python_abi 3.11.* *_cp311
+ license: Apache-2.0
+ license_family: Apache
+ size: 856729
+ timestamp: 1708363632330
- kind: conda
name: tornado
version: '6.4'
@@ -22536,6 +33827,37 @@ packages:
license_family: Apache
size: 857610
timestamp: 1708363541170
+- kind: conda
+ name: tornado
+ version: '6.4'
+ build: py312h41838bb_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/tornado-6.4-py312h41838bb_0.conda
+ sha256: 558f50290a25d8da6071a8e951b2b0c2ef77f457254438fa7c19cb9ee9f5d952
+ md5: 2d2d1fde5800d45cb56218583156d23d
+ depends:
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ license: Apache-2.0
+ license_family: Apache
+ size: 840576
+ timestamp: 1708363459702
+- kind: conda
+ name: tornado
+ version: '6.4'
+ build: py312h98912ed_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/tornado-6.4-py312h98912ed_0.conda
+ sha256: 5764795df60bd9fdbe54ec6df20ef2a94507b2a22b29be899b78745383bafab3
+ md5: e8332e534dca8c5c12c8352e0a23501c
+ depends:
+ - libgcc-ng >=12
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ license: Apache-2.0
+ license_family: Apache
+ size: 840527
+ timestamp: 1708363299520
- kind: conda
name: tornado
version: '6.4'
@@ -22552,36 +33874,54 @@ packages:
license_family: Apache
size: 840705
timestamp: 1708363705502
+- kind: conda
+ name: tornado
+ version: '6.4'
+ build: py312he70551f_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/tornado-6.4-py312he70551f_0.conda
+ sha256: 0ebb1cd17f63f47262c42114a2b0af2b8d0bc19b0ae52e90e312a77ff7c55270
+ md5: 98907504f8c3eb0452bb10362227ce16
+ depends:
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: Apache-2.0
+ license_family: Apache
+ size: 844146
+ timestamp: 1708363742639
- kind: conda
name: traitlets
- version: 5.14.1
+ version: 5.14.3
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/traitlets-5.14.1-pyhd8ed1ab_0.conda
- sha256: fa78d68f74ec8aae5c93f135140bfdbbf0ab60a79c6062b55d73c316068545ec
- md5: 1c6acfdc7ecbfe09954c4216da99c146
+ url: https://conda.anaconda.org/conda-forge/noarch/traitlets-5.14.3-pyhd8ed1ab_0.conda
+ sha256: 8a64fa0f19022828513667c2c7176cfd125001f3f4b9bc00d33732e627dd2592
+ md5: 3df84416a021220d8b5700c613af2dc5
depends:
- python >=3.8
license: BSD-3-Clause
license_family: BSD
- size: 110329
- timestamp: 1704213177224
+ size: 110187
+ timestamp: 1713535244513
- kind: conda
name: trove-classifiers
- version: 2024.2.23
+ version: 2024.4.10
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.2.23-pyhd8ed1ab_0.conda
- sha256: 396c9c0cb125ad04179d90d8bb51b19efd8ac2798e1d2eb1005f46cad1d63995
- md5: da7095027cb05a436b4bd15e5f804a26
+ url: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.4.10-pyhd8ed1ab_0.conda
+ sha256: cbc8e5c5f82b1eeff7aa21aaff77757336c1e6d64a4255b071c783acd60f4618
+ md5: 9622d541e2314c0207bebdc0359fa478
depends:
- python >=3.7
license: Apache-2.0
license_family: Apache
- size: 18423
- timestamp: 1708761937727
+ size: 18444
+ timestamp: 1712814840654
- kind: conda
name: twine
version: 5.0.0
@@ -22608,14 +33948,13 @@ packages:
timestamp: 1707690947551
- kind: conda
name: typeguard
- version: 4.1.5
- build: pyhd8ed1ab_1
- build_number: 1
+ version: 4.2.1
+ build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda
- sha256: df63f90625d2eaefcb6990437b941c1c90ec3c224bc65a2becac928542d0aa5f
- md5: 59d22e0ca481b057b94d54fc9ebacb13
+ url: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda
+ sha256: dd140e850215c729a50cbface4a1fc640dcc91f8da43ce467977a298c4dfe89a
+ md5: 47102c2390ebdc73a8a1843e77dab61e
depends:
- importlib_metadata >=3.6
- python >=3.8
@@ -22624,66 +33963,66 @@ packages:
- pytest >=7
license: MIT
license_family: MIT
- size: 33753
- timestamp: 1698176750792
+ size: 34007
+ timestamp: 1711272969310
- kind: conda
name: types-python-dateutil
- version: 2.8.19.20240106
+ version: 2.9.0.20240316
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/types-python-dateutil-2.8.19.20240106-pyhd8ed1ab_0.conda
- sha256: 09ef8cc587bdea80a83b6f820dbae24daadcf82be088fb0a9f6495781653e300
- md5: c9096a546660b9079dce531c0039e074
+ url: https://conda.anaconda.org/conda-forge/noarch/types-python-dateutil-2.9.0.20240316-pyhd8ed1ab_0.conda
+ sha256: 6630bbc43dfb72339fadafc521db56c9d17af72bfce459af195eecb01163de20
+ md5: 7831efa91d57475373ee52fb92e8d137
depends:
- python >=3.6
license: Apache-2.0 AND MIT
- size: 21896
- timestamp: 1704512704737
+ size: 21769
+ timestamp: 1710590028155
- kind: conda
name: types-pytz
- version: 2024.1.0.20240203
+ version: 2024.1.0.20240417
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda
- sha256: 60f9e4c3a7d4ca50f97c9297ed4ee41d6a8cde213f9618e8364fe456bfcb6efa
- md5: 14db65dcfc51e3efe97920dd99c5646e
+ url: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240417-pyhd8ed1ab_0.conda
+ sha256: cc3913a5504b867c748981ba302e82dbc2bda71837f4894d29db8f6cb490e25d
+ md5: 7b71ace1b99195041329427c435b8125
depends:
- python >=3.6
license: Apache-2.0 AND MIT
- size: 18672
- timestamp: 1706931876487
+ size: 18725
+ timestamp: 1713337633292
- kind: conda
name: typing-extensions
- version: 4.10.0
+ version: 4.11.0
build: hd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda
- sha256: 0698fe2c4e555fb44c27c60f7a21fa0eea7f5bf8186ad109543c5b056e27f96a
- md5: 091683b9150d2ebaa62fd7e2c86433da
+ url: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.11.0-hd8ed1ab_0.conda
+ sha256: aecbd9c601ba5a6c128da8975276fd817b968a9edc969b7ae97aee76e80a14a6
+ md5: 471e3988f8ca5e9eb3ce6be7eac3bcee
depends:
- - typing_extensions 4.10.0 pyha770c72_0
+ - typing_extensions 4.11.0 pyha770c72_0
license: PSF-2.0
license_family: PSF
- size: 10181
- timestamp: 1708904805365
+ size: 10093
+ timestamp: 1712330094282
- kind: conda
name: typing_extensions
- version: 4.10.0
+ version: 4.11.0
build: pyha770c72_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.10.0-pyha770c72_0.conda
- sha256: 4be24d557897b2f6609f5d5f7c437833c62f4d4a96581e39530067e96a2d0451
- md5: 16ae769069b380646c47142d719ef466
+ url: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.11.0-pyha770c72_0.conda
+ sha256: a7e8714d14f854058e971a6ed44f18cc37cc685f98ddefb2e6b7899a0cc4d1a2
+ md5: 6ef2fc37559256cf682d8b3375e89b80
depends:
- python >=3.8
license: PSF-2.0
license_family: PSF
- size: 37018
- timestamp: 1708904796013
+ size: 37583
+ timestamp: 1712330089194
- kind: conda
name: typing_inspect
version: 0.9.0
@@ -22784,99 +34123,163 @@ packages:
- kind: conda
name: ucx
version: 1.15.0
- build: h75e419f_3
- build_number: 3
+ build: ha691c75_8
+ build_number: 8
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/ucx-1.15.0-h75e419f_3.conda
- sha256: 7b5ccea54cac81bda2704e1c4cf06dba17dd683871e785fa11a1788ed289be9a
- md5: 5baf4efbca923cdf73490c62cc7de1e2
+ url: https://conda.anaconda.org/conda-forge/linux-64/ucx-1.15.0-ha691c75_8.conda
+ sha256: 85b40ac6607c9e4e32bcb13e95da41ff48a10f813df0c1e74ff32412e1f7da35
+ md5: 3f9bc6137b240642504a6c9b07a10c25
depends:
- libgcc-ng >=12
- - libnuma >=2.0.16,<3.0a0
- libstdcxx-ng >=12
- - rdma-core >=49
+ - rdma-core >=51.0
constrains:
- cuda-version >=11.2,<12
license: BSD-3-Clause
license_family: BSD
- size: 15172395
- timestamp: 1705978902381
+ size: 6842006
+ timestamp: 1712025621683
- kind: conda
name: ukkonen
version: 1.0.1
- build: py311h005e61a_4
+ build: py312h0d7def4_4
build_number: 4
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/ukkonen-1.0.1-py311h005e61a_4.conda
- sha256: ef774047df25201a6425fe1ec194505a3cac9ba02e96953360442f59364d12b3
- md5: d9988836cc20c90e05901ab05962f496
+ url: https://conda.anaconda.org/conda-forge/win-64/ukkonen-1.0.1-py312h0d7def4_4.conda
+ sha256: f5f7550991ca647f69b67b9188c7104a3456122611dd6a6e753cff555e45dfd9
+ md5: 57cfbb8ce3a1800bd343bf6afba6f878
depends:
- cffi
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12.0rc3,<3.13.0a0
+ - python_abi 3.12.* *_cp312
- ucrt >=10.0.20348.0
- vc >=14.2,<15
- vc14_runtime >=14.29.30139
license: MIT
license_family: MIT
- size: 17225
- timestamp: 1695549858085
+ size: 17235
+ timestamp: 1695549871621
- kind: conda
name: ukkonen
version: 1.0.1
- build: py311h5fe6e05_4
+ build: py312h389731b_4
build_number: 4
- subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/ukkonen-1.0.1-py311h5fe6e05_4.conda
- sha256: b273782a1277042a54e12411beebd378d2a2a69e503bcf147766e98628e91c91
- md5: 8f750b84128d48dc8376572c5eace61e
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/ukkonen-1.0.1-py312h389731b_4.conda
+ sha256: 7336cf66feba973207f4903c20b05c3c82e351246df4b6113f72d92b9ee55b81
+ md5: 6407429e0969b58b8717dbb4c6c15513
depends:
- cffi
- libcxx >=15.0.7
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12.0rc3,<3.13.0a0
+ - python >=3.12.0rc3,<3.13.0a0 *_cpython
+ - python_abi 3.12.* *_cp312
license: MIT
license_family: MIT
- size: 13193
- timestamp: 1695549883822
+ size: 13948
+ timestamp: 1695549890285
- kind: conda
name: ukkonen
version: 1.0.1
- build: py311h9547e67_4
+ build: py312h49ebfd2_4
build_number: 4
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/ukkonen-1.0.1-py311h9547e67_4.conda
- sha256: c2d33e998f637b594632eba3727529171a06eb09896e36aa42f1ebcb03779472
- md5: 586da7df03b68640de14dc3e8bcbf76f
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/ukkonen-1.0.1-py312h49ebfd2_4.conda
+ sha256: efca19a5e73e4aacfc5e90a5389272b2508e41dc4adab9eb5353c5200ba37041
+ md5: 4e6b5a8025cd8fd97b3cfe103ffce6b1
depends:
- cffi
- - libgcc-ng >=12
- - libstdcxx-ng >=12
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - libcxx >=15.0.7
+ - python >=3.12.0rc3,<3.13.0a0
+ - python_abi 3.12.* *_cp312
license: MIT
license_family: MIT
- size: 13961
- timestamp: 1695549513130
+ size: 13246
+ timestamp: 1695549689363
- kind: conda
name: ukkonen
version: 1.0.1
- build: py312h389731b_4
+ build: py312h8572e83_4
build_number: 4
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/ukkonen-1.0.1-py312h389731b_4.conda
- sha256: 7336cf66feba973207f4903c20b05c3c82e351246df4b6113f72d92b9ee55b81
- md5: 6407429e0969b58b8717dbb4c6c15513
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/ukkonen-1.0.1-py312h8572e83_4.conda
+ sha256: f9a4384d466f4d8b5b497d951329dd4407ebe02f8f93456434e9ab789d6e23ce
+ md5: 52c9e25ee0a32485a102eeecdb7eef52
depends:
- cffi
- - libcxx >=15.0.7
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
- python >=3.12.0rc3,<3.13.0a0
- - python >=3.12.0rc3,<3.13.0a0 *_cpython
- python_abi 3.12.* *_cp312
license: MIT
license_family: MIT
- size: 13948
- timestamp: 1695549890285
+ size: 14050
+ timestamp: 1695549556745
+- kind: conda
+ name: unicodedata2
+ version: 15.1.0
+ build: py310h2372a71_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/unicodedata2-15.1.0-py310h2372a71_0.conda
+ sha256: 5ab2f2d4542ba0cc27d222c08ae61706babe7173b0c6dfa748aa37ff2fa9d824
+ md5: 72637c58d36d9475fda24700c9796f19
+ depends:
+ - libgcc-ng >=12
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ license: Apache-2.0
+ license_family: Apache
+ size: 374055
+ timestamp: 1695848183607
+- kind: conda
+ name: unicodedata2
+ version: 15.1.0
+ build: py310h2aa6e3c_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/unicodedata2-15.1.0-py310h2aa6e3c_0.conda
+ sha256: fd33715a75bc7d4ad863ac47341e9fdf8b78e47aa55c90f89a844c660aacc352
+ md5: 9dbba0c13148e8efbb80eb60186b2d8c
+ depends:
+ - python >=3.10,<3.11.0a0
+ - python >=3.10,<3.11.0a0 *_cpython
+ - python_abi 3.10.* *_cp310
+ license: Apache-2.0
+ license_family: Apache
+ size: 377237
+ timestamp: 1695848435303
+- kind: conda
+ name: unicodedata2
+ version: 15.1.0
+ build: py310h6729b98_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/unicodedata2-15.1.0-py310h6729b98_0.conda
+ sha256: 72fcdbd9e7b5e853ee7d25f88a54b83b69b6d6ac541f6faae393cc6475aa88be
+ md5: 5c82d8c1c3ba3b16df93ac6e7cac60bd
+ depends:
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ license: Apache-2.0
+ license_family: Apache
+ size: 366573
+ timestamp: 1695848504604
+- kind: conda
+ name: unicodedata2
+ version: 15.1.0
+ build: py310h8d17308_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/unicodedata2-15.1.0-py310h8d17308_0.conda
+ sha256: 7beadca7de88d62b65124a98e0c442cef787dac2ac41768deb7200fd33d07603
+ md5: f9f25aeb0eed2dd8c770f137c45da3c2
+ depends:
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: Apache-2.0
+ license_family: Apache
+ size: 370116
+ timestamp: 1695848575933
- kind: conda
name: uri-template
version: 1.3.0
@@ -23008,13 +34411,13 @@ packages:
timestamp: 1702511239004
- kind: conda
name: virtualenv
- version: 20.25.1
+ version: 20.26.1
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.25.1-pyhd8ed1ab_0.conda
- sha256: 1ced4445cf72cd9dc344ad04bdaf703a08cc428c8c46e4bda928ad79786ee153
- md5: 8797a4e26be36880a603aba29c785352
+ url: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.26.1-pyhd8ed1ab_0.conda
+ sha256: d603f8608f353a7aaa794c00bd3df71aafd5b56bf53af3e9c3dfe135203a4f33
+ md5: 4e1cd2faf006a6e62c148f95cef0cac2
depends:
- distlib <1,>=0.3.7
- filelock <4,>=3.12.2
@@ -23022,8 +34425,8 @@ packages:
- python >=3.8
license: MIT
license_family: MIT
- size: 3148218
- timestamp: 1708602229963
+ size: 3459994
+ timestamp: 1714439521015
- kind: conda
name: vs2015_runtime
version: 14.38.33130
@@ -23042,51 +34445,51 @@ packages:
- kind: conda
name: watchdog
version: 4.0.0
- build: py311h1ea47a8_0
+ build: py312h2e8e312_0
subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/watchdog-4.0.0-py311h1ea47a8_0.conda
- sha256: 75cecf1aff137e617d158f792379f6279a6f2fbe43fab94db0ef65eaae849ff8
- md5: 1616721fd923a2b6b550efb6f06b6e62
+ url: https://conda.anaconda.org/conda-forge/win-64/watchdog-4.0.0-py312h2e8e312_0.conda
+ sha256: 4b1eeaecccadf55a5c322e25290d75c8bed7b0d5e25fa6dfa03fc16fc9919fc4
+ md5: 186ec4486a2c5d738c002067665b50be
depends:
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
- pyyaml >=3.10
license: Apache-2.0
license_family: APACHE
- size: 157138
- timestamp: 1707295836373
+ size: 152911
+ timestamp: 1707295573907
- kind: conda
name: watchdog
version: 4.0.0
- build: py311h38be061_0
+ build: py312h7900ff3_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/watchdog-4.0.0-py311h38be061_0.conda
- sha256: 790bd28b3c970a5887593e9fbb9c6a1895fd0147beb78dfd22d4703855d66f79
- md5: f95ea5c27188e3095b7f12e588151f48
+ url: https://conda.anaconda.org/conda-forge/linux-64/watchdog-4.0.0-py312h7900ff3_0.conda
+ sha256: db3ef9753934826c008216b198f04a6637150e1d91d72733148c0822e4a042a2
+ md5: 1b87b82dd803565550e6358c0790f3d2
depends:
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
- pyyaml >=3.10
license: Apache-2.0
license_family: APACHE
- size: 140182
- timestamp: 1707295343437
+ size: 136845
+ timestamp: 1707295261797
- kind: conda
name: watchdog
version: 4.0.0
- build: py311he4e59c2_0
+ build: py312hc2c2f20_0
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/watchdog-4.0.0-py311he4e59c2_0.conda
- sha256: 7899be4a743bdd919c4d1a0b9e8c269871de48635a52facf42d7b9eac08c9aa0
- md5: bb33f5397b8970c29da4d967959ddcb8
+ url: https://conda.anaconda.org/conda-forge/osx-64/watchdog-4.0.0-py312hc2c2f20_0.conda
+ sha256: f333e1f11d60e096d8b0f2b7dbe313fc9ee22d6c09f0a0cc7d3c9fed56ee48dd
+ md5: ebd7ea0d23052393f0a62efe8a508e99
depends:
- - python >=3.11,<3.12.0a0
- - python_abi 3.11.* *_cp311
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
- pyyaml >=3.10
license: Apache-2.0
license_family: APACHE
- size: 148769
- timestamp: 1707295444247
+ size: 144711
+ timestamp: 1707295580304
- kind: conda
name: watchdog
version: 4.0.0
@@ -23152,34 +34555,35 @@ packages:
timestamp: 1694681458271
- kind: conda
name: websocket-client
- version: 1.7.0
+ version: 1.8.0
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/websocket-client-1.7.0-pyhd8ed1ab_0.conda
- sha256: d9b537d5b7c5aa7a02a4ce4c6b755e458bd8083b67752a73c92d113ccec6c10f
- md5: 50ad31e07d706aae88b14a4ac9c73f23
+ url: https://conda.anaconda.org/conda-forge/noarch/websocket-client-1.8.0-pyhd8ed1ab_0.conda
+ sha256: 44a5e3b97feef24cd719f7851cca9af9799dc9c17d3e0298d5856baab2d682f5
+ md5: f372c576b8774922da83cda2b12f9d29
depends:
- python >=3.8
license: Apache-2.0
license_family: APACHE
- size: 46626
- timestamp: 1701630814576
+ size: 47066
+ timestamp: 1713923494501
- kind: conda
name: wheel
- version: 0.42.0
- build: pyhd8ed1ab_0
+ version: 0.43.0
+ build: pyhd8ed1ab_1
+ build_number: 1
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda
- sha256: 80be0ccc815ce22f80c141013302839b0ed938a2edb50b846cf48d8a8c1cfa01
- md5: 1cdea58981c5cbc17b51973bcaddcea7
+ url: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda
+ sha256: cb318f066afd6fd64619f14c030569faf3f53e6f50abf743b4c865e7d95b96bc
+ md5: 0b5293a157c2b5cd513dd1b03d8d3aae
depends:
- - python >=3.7
+ - python >=3.8
license: MIT
license_family: MIT
- size: 57553
- timestamp: 1701013309664
+ size: 57963
+ timestamp: 1711546009410
- kind: conda
name: win_inet_pton
version: 1.1.0
@@ -23210,6 +34614,87 @@ packages:
license: MIT
license_family: MIT
size: 1176306
+- kind: conda
+ name: wrapt
+ version: 1.16.0
+ build: py310h2372a71_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/wrapt-1.16.0-py310h2372a71_0.conda
+ sha256: 2adc15cd1e66845c1ab498735e2f828003e2d5fe20eed1febddb712f58793c31
+ md5: d9dc9c45bdc2b38403e6b388581e92f0
+ depends:
+ - libgcc-ng >=12
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ license: BSD-2-Clause
+ license_family: BSD
+ size: 55415
+ timestamp: 1699533000763
+- kind: conda
+ name: wrapt
+ version: 1.16.0
+ build: py310h8d17308_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/wrapt-1.16.0-py310h8d17308_0.conda
+ sha256: 2de005b8199cf5cc19a4547b9aa3ebd7b756c7e8c898dfea9d96283dc2b6745d
+ md5: 80326d84a304f866ddc5c49caf7ab3ae
+ depends:
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: BSD-2-Clause
+ license_family: BSD
+ size: 54038
+ timestamp: 1699533408150
+- kind: conda
+ name: wrapt
+ version: 1.16.0
+ build: py310hb372a2b_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/wrapt-1.16.0-py310hb372a2b_0.conda
+ sha256: 27c9c05285f7405b1084681822686c3ef9e3ae45dff544a83636c1b669efb228
+ md5: 7efc437e30061a48eeb60e4ce515ad77
+ depends:
+ - python >=3.10,<3.11.0a0
+ - python_abi 3.10.* *_cp310
+ license: BSD-2-Clause
+ license_family: BSD
+ size: 51650
+ timestamp: 1699533356448
+- kind: conda
+ name: wrapt
+ version: 1.16.0
+ build: py310hd125d64_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/wrapt-1.16.0-py310hd125d64_0.conda
+ sha256: 4509076b945781cd445b5418502e8c8e4befee3349364e613e0c60ab3d8c9e99
+ md5: d1cdb4037779fcef0c824bc790c5ee57
+ depends:
+ - python >=3.10,<3.11.0a0
+ - python >=3.10,<3.11.0a0 *_cpython
+ - python_abi 3.10.* *_cp310
+ license: BSD-2-Clause
+ license_family: BSD
+ size: 52698
+ timestamp: 1699533350125
+- kind: conda
+ name: wrapt
+ version: 1.16.0
+ build: py311h05b510d_0
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/wrapt-1.16.0-py311h05b510d_0.conda
+ sha256: c071b132b8415ccd1452e0b8002aa79ea59a4fd0b0ac0d3b2fd0ab6b19b3390c
+ md5: 35f87feb986222d2ada633b45df0bbc9
+ depends:
+ - python >=3.11,<3.12.0a0
+ - python >=3.11,<3.12.0a0 *_cpython
+ - python_abi 3.11.* *_cp311
+ license: BSD-2-Clause
+ license_family: BSD
+ size: 60998
+ timestamp: 1699533434768
- kind: conda
name: wrapt
version: 1.16.0
@@ -23259,6 +34744,37 @@ packages:
license_family: BSD
size: 59558
timestamp: 1699533106157
+- kind: conda
+ name: wrapt
+ version: 1.16.0
+ build: py312h41838bb_0
+ subdir: osx-64
+ url: https://conda.anaconda.org/conda-forge/osx-64/wrapt-1.16.0-py312h41838bb_0.conda
+ sha256: 9ed208c4c844c50f161764df7ed7a226c42822917c892ab7c8f67eec6ca96dff
+ md5: d87798aa7210da2c5eaf96c0346dca00
+ depends:
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ license: BSD-2-Clause
+ license_family: BSD
+ size: 59057
+ timestamp: 1699533259706
+- kind: conda
+ name: wrapt
+ version: 1.16.0
+ build: py312h98912ed_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/wrapt-1.16.0-py312h98912ed_0.conda
+ sha256: dc8431b343961347ad93b33d2d8270e8c15d8825382f4f2540835c94aba2de05
+ md5: fa957a1c7bee7e47ad44633caf7be8bc
+ depends:
+ - libgcc-ng >=12
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ license: BSD-2-Clause
+ license_family: BSD
+ size: 62482
+ timestamp: 1699532968076
- kind: conda
name: wrapt
version: 1.16.0
@@ -23275,15 +34791,33 @@ packages:
license_family: BSD
size: 59676
timestamp: 1699533197501
+- kind: conda
+ name: wrapt
+ version: 1.16.0
+ build: py312he70551f_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/wrapt-1.16.0-py312he70551f_0.conda
+ sha256: e4b5ac6c897e68a798dfe13a1499dc9b555c48b468aa477d456807f2a7366c30
+ md5: cea7b1aa961de6a8ac90584b5968a01d
+ depends:
+ - python >=3.12,<3.13.0a0
+ - python_abi 3.12.* *_cp312
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: BSD-2-Clause
+ license_family: BSD
+ size: 61358
+ timestamp: 1699533495284
- kind: conda
name: xarray
- version: 2024.2.0
+ version: 2024.3.0
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda
- sha256: 4b0a8143f5c501246214823fe543e9d0749c950fdbdd39de6d8cd6209da2259f
- md5: 8e25aab3323476d4fd0b5f6bad05d403
+ url: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda
+ sha256: 74e4cea340517ce7c51c36efc1d544d3a98fcdb62a429b6b1a59a1917b412c10
+ md5: 772d7ee42b65d0840130eabd5bd3fc17
depends:
- numpy >=1.23
- packaging >=22
@@ -23291,29 +34825,29 @@ packages:
- python >=3.9
constrains:
- bottleneck >=1.3
- - h5py >=3.6
+ - sparse >=0.13
+ - nc-time-axis >=1.4
+ - scipy >=1.8
- zarr >=2.12
+ - flox >=0.5
+ - netcdf4 >=1.6.0
+ - cartopy >=0.20
- h5netcdf >=1.0
+ - dask-core >=2022.7
- cftime >=1.6
- - distributed >=2022.7
- - matplotlib-base >=3.5
- - flox >=0.5
- numba >=0.55
- - scipy >=1.8
- - nc-time-axis >=1.4
- - pint >=0.19
- - toolz >=0.12
- - netcdf4 >=1.6.0
- - seaborn >=0.11
- hdf5 >=1.12
- - dask-core >=2022.7
- - sparse >=0.13
- - cartopy >=0.20
- iris >=3.2
+ - toolz >=0.12
+ - h5py >=3.6
+ - distributed >=2022.7
+ - matplotlib-base >=3.5
+ - seaborn >=0.11
+ - pint >=0.19
license: Apache-2.0
license_family: APACHE
- size: 741597
- timestamp: 1708349308763
+ size: 765419
+ timestamp: 1711742257463
- kind: conda
name: xcb-util
version: 0.4.0
@@ -23541,12 +35075,12 @@ packages:
timestamp: 1685453649160
- kind: conda
name: xorg-libx11
- version: 1.8.7
+ version: 1.8.9
build: h8ee46fc_0
subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/xorg-libx11-1.8.7-h8ee46fc_0.conda
- sha256: 7a02a7beac472ae2759498550b5fc5261bf5be7a9a2b4648a3f67818a7bfefcf
- md5: 49e482d882669206653b095f5206c05b
+ url: https://conda.anaconda.org/conda-forge/linux-64/xorg-libx11-1.8.9-h8ee46fc_0.conda
+ sha256: 3e53ba247f1ad68353f18aceba5bf8ce87e3dea930de85d36946844a7658c9fb
+ md5: 077b6e8ad6a3ddb741fce2496dd01bec
depends:
- libgcc-ng >=12
- libxcb >=1.15,<1.16.0a0
@@ -23555,8 +35089,8 @@ packages:
- xorg-xproto
license: MIT
license_family: MIT
- size: 828692
- timestamp: 1697056910935
+ size: 828060
+ timestamp: 1712415742569
- kind: conda
name: xorg-libxau
version: 1.0.11
@@ -23757,13 +35291,13 @@ packages:
timestamp: 1607291557628
- kind: conda
name: xugrid
- version: 0.9.0
+ version: 0.10.0
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/xugrid-0.9.0-pyhd8ed1ab_0.conda
- sha256: 0757cdbf0f92e68a3134588027511ea4c4f49002d397619c59bd73ab85ad4165
- md5: d6ef5b0239c439c99a37142f93b2c98b
+ url: https://conda.anaconda.org/conda-forge/noarch/xugrid-0.10.0-pyhd8ed1ab_0.conda
+ sha256: cf9b0c63b573405d5ac34a35819d98c10884abb0d49b19af0fc7414f8f44fa00
+ md5: 7ef2f388e3b2adcecfed74591bff2451
depends:
- dask
- geopandas
@@ -23778,23 +35312,23 @@ packages:
- xarray >=0.15
license: MIT
license_family: MIT
- size: 93360
- timestamp: 1707992771856
+ size: 94214
+ timestamp: 1714580639671
- kind: conda
name: xyzservices
- version: 2023.10.1
+ version: 2024.4.0
build: pyhd8ed1ab_0
subdir: noarch
noarch: python
- url: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2023.10.1-pyhd8ed1ab_0.conda
- sha256: da655e2e0a742fddefeeaf2dd828b62a1820a3755d13341e1a555a10fcb9cf81
- md5: 1e0d85c0e2fef9539218da185b285f54
+ url: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2024.4.0-pyhd8ed1ab_0.conda
+ sha256: 4e095631b52a78bbd9b53f28eb79b0c8f448d9509cf0451e99c2f3f85576f114
+ md5: 93dffc47dadbe36a1a644f3f50d4979d
depends:
- python >=3.8
license: BSD-3-Clause
license_family: BSD
- size: 36184
- timestamp: 1698325478381
+ size: 46179
+ timestamp: 1712210047952
- kind: conda
name: xz
version: 5.2.6
@@ -23904,70 +35438,75 @@ packages:
- kind: conda
name: zeromq
version: 4.3.5
- build: h59595ed_1
- build_number: 1
- subdir: linux-64
- url: https://conda.anaconda.org/conda-forge/linux-64/zeromq-4.3.5-h59595ed_1.conda
- sha256: 3bec658f5c23abf5e200d98418add7a20ff7b45c928ad4560525bef899496256
- md5: 7fc9d3288d2420bb3637647621018000
+ build: h5119023_3
+ build_number: 3
+ subdir: osx-arm64
+ url: https://conda.anaconda.org/conda-forge/osx-arm64/zeromq-4.3.5-h5119023_3.conda
+ sha256: 5eb581b4191767645b973c8fab29a167da366e3f0f218198a4cdb264e902b681
+ md5: bbd1b56c80c0b21506bbfa7bdd1c9169
depends:
- - libgcc-ng >=12
+ - __osx >=11.0
+ - krb5 >=1.21.2,<1.22.0a0
+ - libcxx >=16
- libsodium >=1.0.18,<1.0.19.0a0
- - libstdcxx-ng >=12
license: MPL-2.0
license_family: MOZILLA
- size: 343438
- timestamp: 1709135220800
+ size: 294273
+ timestamp: 1714545428846
- kind: conda
name: zeromq
version: 4.3.5
- build: h63175ca_1
- build_number: 1
- subdir: win-64
- url: https://conda.anaconda.org/conda-forge/win-64/zeromq-4.3.5-h63175ca_1.conda
- sha256: c9089e80a724a4d21f9df4bcc99ccbddb93c8cce3f6b0c9cb74b4f98b641dfc2
- md5: e8867cc4d023f41f54bd64a33436b0a1
+ build: h75354e8_3
+ build_number: 3
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/zeromq-4.3.5-h75354e8_3.conda
+ sha256: c2f2db5d19b603546db025b47fb71765f8dda0a0fe8feb42bd4e6a46194a5590
+ md5: 1b0ea5d6674e4e7dde0537c890813edb
depends:
+ - krb5 >=1.21.2,<1.22.0a0
+ - libgcc-ng >=12
- libsodium >=1.0.18,<1.0.19.0a0
- - ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
+ - libstdcxx-ng >=12
license: MPL-2.0
license_family: MOZILLA
- size: 4199151
- timestamp: 1709135717106
+ size: 351803
+ timestamp: 1714545110790
- kind: conda
name: zeromq
version: 4.3.5
- build: h93d8f39_0
+ build: h8d87b8b_3
+ build_number: 3
subdir: osx-64
- url: https://conda.anaconda.org/conda-forge/osx-64/zeromq-4.3.5-h93d8f39_0.conda
- sha256: 19be553b3cc8352b6e842134b8de66ae39fcae80bc575c203076370faab6009c
- md5: 4c055e46b394be36681fe476c1e2ee6e
+ url: https://conda.anaconda.org/conda-forge/osx-64/zeromq-4.3.5-h8d87b8b_3.conda
+ sha256: 2e367db3e568d285c217a8df6b42fe868d70dade9eccf30e5c9192931fc7752b
+ md5: 56ddf659a2f41a33a71c89813d871ff8
depends:
- __osx >=10.9
- - libcxx >=16.0.6
+ - krb5 >=1.21.2,<1.22.0a0
+ - libcxx >=16
- libsodium >=1.0.18,<1.0.19.0a0
license: MPL-2.0
license_family: MOZILLA
- size: 294253
- timestamp: 1697057208271
+ size: 301306
+ timestamp: 1714545592193
- kind: conda
name: zeromq
version: 4.3.5
- build: hebf3989_1
- build_number: 1
- subdir: osx-arm64
- url: https://conda.anaconda.org/conda-forge/osx-arm64/zeromq-4.3.5-hebf3989_1.conda
- sha256: caf6df12d793600faec21b7e6025e2e8fb8de26672cce499f9471b99b6776eb1
- md5: 19cff1c627ff58429701113bf35300c8
+ build: he0c23c2_3
+ build_number: 3
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/zeromq-4.3.5-he0c23c2_3.conda
+ sha256: 8aecdcafccb73417d6a8d5c99b2b89644cd1e739e9419b70db2b97ddd344a58a
+ md5: a15710475b7ec416900e60560f6839ee
depends:
- - libcxx >=16
- libsodium >=1.0.18,<1.0.19.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
license: MPL-2.0
license_family: MOZILLA
- size: 288572
- timestamp: 1709135728486
+ size: 4196272
+ timestamp: 1714545389805
- kind: conda
name: zict
version: 3.0.0
diff --git a/pixi.toml b/pixi.toml
index 8bd7aed1c..050435358 100644
--- a/pixi.toml
+++ b/pixi.toml
@@ -1,6 +1,6 @@
[project]
name = "Ribasim"
-version = "2024.4.0"
+version = "2024.7.0"
description = "Water resources modeling"
authors = ["Deltares and contributors "]
channels = ["conda-forge"]
@@ -14,24 +14,35 @@ repository = "https://github.com/Deltares/Ribasim"
[tasks]
# Installation
-install-julia = "juliaup add 1.10.0 && juliaup default 1.10.0"
-install-ribasim-python = "pip install --no-deps --editable python/ribasim"
-install-ribasim-api = "pip install --no-deps --editable python/ribasim_api"
-install-ribasim-testmodels = "pip install --no-deps --editable python/ribasim_testmodels"
+install-ribasim-python = "pip install --no-build-isolation --no-deps --disable-pip-version-check --editable python/ribasim"
+install-ribasim-api = "pip install --no-build-isolation --no-deps --disable-pip-version-check --editable python/ribasim_api"
+install-ribasim-testmodels = "pip install --no-build-isolation --no-deps --disable-pip-version-check --editable python/ribasim_testmodels"
+install-python = { depends_on = [
+ "install-ribasim-python",
+ "install-ribasim-api",
+ "install-ribasim-testmodels",
+] }
+# Tests
+test-ribasim-python = "pytest --numprocesses=4 python/ribasim/tests"
+test-ribasim-python-cov = "pytest --numprocesses=4 --cov=ribasim --cov-report=xml python/ribasim/tests"
+test-ribasim-api = "pytest --basetemp=python/ribasim_api/tests/temp --junitxml=report.xml python/ribasim_api/tests"
+
+[feature.dev.tasks]
+# Installation
+install-julia = "juliaup add 1.10.3 && juliaup default 1.10.3"
install-pre-commit = "pre-commit install"
install-ci = { depends_on = [
+ "install-python",
"install-julia",
"update-registry-julia",
- "install-ribasim-python",
- "install-ribasim-api",
- "install-ribasim-testmodels",
+
] }
install = { depends_on = [
"install-ci",
"install-qgis-plugins",
"install-pre-commit",
] }
-# Instantiate
+# Julia
update-registry-julia = "julia --eval='using Pkg; Registry.update()'"
update-manifest-julia = "julia --project --eval='using Pkg; Pkg.update()'"
instantiate-julia = "julia --project --eval='using Pkg; Pkg.instantiate()'"
@@ -42,8 +53,18 @@ initialize-julia = { depends_on = [
# Docs
build-julia-docs = { cmd = "julia --project docs/make.jl", depends_on = [
"initialize-julia",
+], inputs = [
+ "core",
+ "docs/make.jl",
+], outputs = [
+ "docs/build",
+] }
+quartodoc-build = { cmd = "quartodoc build && rm objects.json", cwd="docs", inputs = [
+ "docs/_quarto.yml",
+ "python/ribasim",
+], outputs = [
+ "docs/python/reference",
] }
-quartodoc-build = { cmd = "quartodoc build && rm objects.json", cwd = "docs" }
quarto-preview = { cmd = "quarto preview docs", depends_on = [
"quartodoc-build",
"generate-testmodels",
@@ -67,23 +88,12 @@ lint = { depends_on = [
"mypy-ribasim-qgis",
] }
# Build
-build-ribasim-cli = { cmd = "julia --project build.jl --app", cwd = "build", depends_on = [
- "generate-testmodels",
- "initialize-julia",
-] }
-build-libribasim = { cmd = "julia --project build.jl --lib", cwd = "build", depends_on = [
- "generate-testmodels",
- "initialize-julia",
-] }
-build = { "cmd" = "julia --project build.jl --app --lib", cwd = "build", depends_on = [
+build = { "cmd" = "julia --project build.jl", cwd = "build", depends_on = [
"generate-testmodels",
"initialize-julia",
] }
remove-artifacts = "julia --eval 'rm(joinpath(Base.DEPOT_PATH[1], \"artifacts\"), force=true, recursive=true)'"
-
-# Test
-test-ribasim-python = "pytest --numprocesses=4 python/ribasim/tests"
-test-ribasim-api = "pytest --basetemp=python/ribasim_api/tests/temp --junitxml=report.xml python/ribasim_api/tests"
+# Tests
test-ribasim-cli = "pytest --numprocesses=4 --basetemp=build/tests/temp --junitxml=report.xml build/tests"
test-ribasim-core = { cmd = "julia --project=core --eval 'using Pkg; Pkg.test()'", depends_on = [
"generate-testmodels",
@@ -91,11 +101,21 @@ test-ribasim-core = { cmd = "julia --project=core --eval 'using Pkg; Pkg.test()'
test-ribasim-core-cov = { cmd = "julia --project=core --eval 'using Pkg; Pkg.test(coverage=true, julia_args=[\"--check-bounds=yes\"])'", depends_on = [
"generate-testmodels",
] }
-generate-testmodels = "python utils/generate-testmodels.py"
+generate-testmodels = { cmd = "python utils/generate-testmodels.py", inputs = [
+ "python/ribasim",
+ "python/ribasim_testmodels",
+], outputs = [
+ "generated_testmodels",
+] }
tests = { depends_on = ["lint", "test-ribasim-python", "test-ribasim-core"] }
# Codegen
-generate-python = { cmd = "julia --project utils/gen_python.jl && ruff format python/ribasim/ribasim/schemas.py" }
-codegen = { depends_on = ["initialize-julia", "generate-python"] }
+codegen = { cmd = "julia --project utils/gen_python.jl && ruff format python/ribasim/ribasim/schemas.py", depends_on = [
+ "initialize-julia",
+], inputs = [
+ "core",
+], outputs = [
+ "python/ribasim/ribasim/schemas.py",
+] }
# Publish
build-ribasim-python-wheel = { cmd = "rm --recursive --force dist && python -m build && twine check dist/*", cwd = "python/ribasim" }
build-ribasim-api-wheel = { cmd = "rm --recursive --force dist && python -m build && twine check dist/*", cwd = "python/ribasim_api" }
@@ -114,10 +134,8 @@ qgis = "qgis --profiles-path .pixi/qgis_env"
install-ribasim-qgis = "python ribasim_qgis/scripts/install_ribasim_qgis.py"
install-imod-qgis = "python ribasim_qgis/scripts/install_qgis_plugin.py iMOD && python ribasim_qgis/scripts/enable_plugin.py imodqgis"
install-plugin-reloader-qgis = "python ribasim_qgis/scripts/install_qgis_plugin.py \"Plugin Reloader\" && python ribasim_qgis/scripts/enable_plugin.py plugin_reloader"
-install-debugvs-qgis = "python ribasim_qgis/scripts/install_qgis_plugin.py debugvs==0.7 && python ribasim_qgis/scripts/enable_plugin.py debug_vs"
install-qgis-plugins = { depends_on = [
"install-plugin-reloader-qgis",
- "install-debugvs-qgis",
"install-ribasim-qgis",
"install-imod-qgis",
] }
@@ -135,7 +153,7 @@ mypy-ribasim-qgis = "mypy ribasim_qgis"
ribasim-core = { cmd = "julia --project=core -e 'using Ribasim; Ribasim.main(ARGS)'", depends_on = [
"initialize-julia",
] }
-ribasim-core-testmodels = { cmd = "julia --project utils/testmodelrun.jl", depends_on = [
+ribasim-core-testmodels = { cmd = "julia --project --threads=4 utils/testmodelrun.jl", depends_on = [
"generate-testmodels",
"initialize-julia",
] }
@@ -143,52 +161,62 @@ ribasim-core-testmodels = { cmd = "julia --project utils/testmodelrun.jl", depen
github-release = "python utils/github-release.py"
[dependencies]
-build = "*"
geopandas = "*"
-gh = "*"
hatchling = "*"
-juliaup = "*"
-jupyterlab = "*"
-libgdal-arrow-parquet = "*"
matplotlib = "*"
-mypy = "*"
netCDF4 = "*"
-pandas = "==2.1.4" # Avoid excessive deprecation warnings from pandera (#984)
+numpy = "*"
+pandas = "*"
pandas-stubs = "*"
-pandera = "*"
+pandera = ">=0.18"
pip = "*"
-platformdirs = "*"
-pre-commit = "*"
pyarrow = "*"
pydantic = ">=2"
pyogrio = "*"
-pyqt-stubs = "*"
pytest = "*"
pytest-cov = "*"
pytest-xdist = "*"
python = ">=3.10"
+shapely = ">=2.0"
+tomli = "*"
+tomli-w = "*"
+xmipy = "*"
+xugrid = "*"
+xarray = "*"
+
+
+[feature.dev.dependencies]
+build = "*"
+gh = "*"
+juliaup = "*"
+jupyterlab = "*"
+libgdal-arrow-parquet = "*"
+mypy = "*"
+pre-commit = "*"
+pyqt-stubs = "*"
qgis = "*"
qgis-plugin-manager = "*"
quarto = "*"
quartodoc = "*"
ruff = "*"
-shapely = ">=2.0"
-tomli = "*"
-tomli-w = "*"
+rust = "*"
twine = "*"
-typing-extensions = ">=4.6"
-xarray = "*"
-xmipy = "*"
-xugrid = "*"
-[target.win-64.dependencies]
-ptvsd = "*"
+[feature.py312.dependencies]
+python = "3.12.*"
+
+[feature.py311.dependencies]
+python = "3.11.*"
-[target.linux-64.dependencies]
-ptvsd = "*"
+[feature.py310.dependencies]
+python = "3.10.*"
-[target.osx-64.dependencies]
-ptvsd = "*"
+[environments]
+default = { features = ["py312"], solve-group = "py312" }
+dev = { features = ["py312", "dev"], solve-group = "py312" }
+py312 = { features = ["py312"], solve-group = "py312" }
+py311 = ["py311"]
+py310 = ["py310"]
[activation]
scripts = ["utils/env_setup.sh"]
diff --git a/python/ribasim/pyproject.toml b/python/ribasim/pyproject.toml
index 8508bf7ab..60dcd1493 100644
--- a/python/ribasim/pyproject.toml
+++ b/python/ribasim/pyproject.toml
@@ -18,7 +18,7 @@ dependencies = [
"matplotlib",
"numpy",
"pandas",
- "pandera != 0.16.0",
+ "pandera >= 0.18",
"pyarrow",
"pydantic ~= 2.0",
"pyogrio",
diff --git a/python/ribasim/ribasim/__init__.py b/python/ribasim/ribasim/__init__.py
index 799569fe8..083d10b68 100644
--- a/python/ribasim/ribasim/__init__.py
+++ b/python/ribasim/ribasim/__init__.py
@@ -1,4 +1,4 @@
-__version__ = "2024.4.0"
+__version__ = "2024.7.0"
from ribasim.config import Allocation, Logging, Node, Solver
diff --git a/python/ribasim/ribasim/config.py b/python/ribasim/ribasim/config.py
index 141653831..c866d2a73 100644
--- a/python/ribasim/ribasim/config.py
+++ b/python/ribasim/ribasim/config.py
@@ -1,11 +1,13 @@
+import numbers
from collections.abc import Sequence
from enum import Enum
from typing import Any
+import numpy as np
import pandas as pd
import pydantic
from geopandas import GeoDataFrame
-from pydantic import ConfigDict, Field, model_validator
+from pydantic import ConfigDict, Field, NonNegativeInt, model_validator
from shapely.geometry import Point
from ribasim.geometry import BasinAreaSchema, NodeTable
@@ -23,9 +25,12 @@
BasinTimeSchema,
DiscreteControlConditionSchema,
DiscreteControlLogicSchema,
+ DiscreteControlVariableSchema,
FlowBoundaryConcentrationSchema,
FlowBoundaryStaticSchema,
FlowBoundaryTimeSchema,
+ FlowDemandStaticSchema,
+ FlowDemandTimeSchema,
FractionalFlowStaticSchema,
LevelBoundaryConcentrationSchema,
LevelBoundaryStaticSchema,
@@ -48,7 +53,7 @@
class Allocation(ChildModel):
- timestep: float | None = None
+ timestep: float = 86400.0
use_allocation: bool = False
@@ -86,7 +91,7 @@ class Logging(ChildModel):
class Node(pydantic.BaseModel):
- node_id: int
+ node_id: NonNegativeInt
geometry: Point
name: str = ""
subnetwork_id: int | None = None
@@ -99,10 +104,10 @@ def __init__(self, node_id: int, geometry: Point, **kwargs) -> None:
def into_geodataframe(self, node_type: str) -> GeoDataFrame:
return GeoDataFrame(
data={
- "node_id": pd.Series([self.node_id], dtype=int),
+ "node_id": pd.Series([self.node_id], dtype=np.int32),
"node_type": pd.Series([node_type], dtype=str),
"name": pd.Series([self.name], dtype=str),
- "subnetwork_id": pd.Series([self.subnetwork_id], dtype=pd.Int64Dtype()),
+ "subnetwork_id": pd.Series([self.subnetwork_id], dtype=pd.Int32Dtype()),
},
geometry=[self.geometry],
)
@@ -146,10 +151,18 @@ def add(self, node: Node, tables: Sequence[TableModel[Any]] | None = None) -> No
else pd.concat([self.node.df, node_table])
)
- def __getitem__(self, index):
- row = self.node.df[self.node.df["node_id"] == index].iloc[0]
+ def __getitem__(self, index: int) -> NodeData:
+ # Unlike TableModel, support only indexing single rows.
+ if not isinstance(index, numbers.Integral):
+ node_model_name = type(self).__name__
+ indextype = type(index).__name__
+ raise TypeError(
+ f"{node_model_name} index must be an integer, not {indextype}"
+ )
+
+ row = self.node[index].iloc[0]
return NodeData(
- node_id=index, node_type=row["node_type"], geometry=row["geometry"]
+ node_id=int(index), node_type=row["node_type"], geometry=row["geometry"]
)
@@ -218,7 +231,7 @@ class UserDemand(MultiNodeModel):
class LevelDemand(MultiNodeModel):
static: TableModel[LevelDemandStaticSchema] = Field(
default_factory=TableModel[LevelDemandStaticSchema],
- json_schema_extra={"sort_keys": ["node_id", "priority"]},
+ json_schema_extra={"sort_keys": ["node_id"]},
)
time: TableModel[LevelDemandTimeSchema] = Field(
default_factory=TableModel[LevelDemandTimeSchema],
@@ -241,6 +254,17 @@ class FlowBoundary(MultiNodeModel):
)
+class FlowDemand(MultiNodeModel):
+ static: TableModel[FlowDemandStaticSchema] = Field(
+ default_factory=TableModel[FlowDemandStaticSchema],
+ json_schema_extra={"sort_keys": ["node_id"]},
+ )
+ time: TableModel[FlowDemandTimeSchema] = Field(
+ default_factory=TableModel[FlowDemandTimeSchema],
+ json_schema_extra={"sort_keys": ["node_id", "time"]},
+ )
+
+
class Basin(MultiNodeModel):
profile: TableModel[BasinProfileSchema] = Field(
default_factory=TableModel[BasinProfileSchema],
@@ -284,10 +308,25 @@ class ManningResistance(MultiNodeModel):
class DiscreteControl(MultiNodeModel):
+ variable: TableModel[DiscreteControlVariableSchema] = Field(
+ default_factory=TableModel[DiscreteControlVariableSchema],
+ json_schema_extra={
+ "sort_keys": [
+ "node_id",
+ "listen_node_type",
+ "listen_node_id",
+ "variable",
+ ]
+ },
+ )
condition: TableModel[DiscreteControlConditionSchema] = Field(
default_factory=TableModel[DiscreteControlConditionSchema],
json_schema_extra={
- "sort_keys": ["node_id", "listen_node_id", "variable", "greater_than"]
+ "sort_keys": [
+ "node_id",
+ "compound_variable_id",
+ "greater_than",
+ ]
},
)
logic: TableModel[DiscreteControlLogicSchema] = Field(
diff --git a/python/ribasim/ribasim/geometry/area.py b/python/ribasim/ribasim/geometry/area.py
index 950165eed..d6aa448c1 100644
--- a/python/ribasim/ribasim/geometry/area.py
+++ b/python/ribasim/ribasim/geometry/area.py
@@ -1,6 +1,7 @@
from typing import Any
import pandera as pa
+from pandera.dtypes import Int32
from pandera.typing import Series
from pandera.typing.geopandas import GeoSeries
@@ -8,5 +9,5 @@
class BasinAreaSchema(_BaseSchema):
- node_id: Series[int] = pa.Field(nullable=False, default=0)
+ node_id: Series[Int32] = pa.Field(nullable=False, default=0)
geometry: GeoSeries[Any] = pa.Field(default=None, nullable=True)
diff --git a/python/ribasim/ribasim/geometry/edge.py b/python/ribasim/ribasim/geometry/edge.py
index cdfbb3e54..2106821f4 100644
--- a/python/ribasim/ribasim/geometry/edge.py
+++ b/python/ribasim/ribasim/geometry/edge.py
@@ -7,15 +7,17 @@
import shapely
from matplotlib.axes import Axes
from numpy.typing import NDArray
+from pandera.dtypes import Int32
from pandera.typing import Series
from pandera.typing.geopandas import GeoDataFrame, GeoSeries
-from pydantic import model_validator
from shapely.geometry import LineString, MultiLineString, Point
from ribasim.input_base import SpatialTableModel
__all__ = ("EdgeTable",)
+SPATIALCONTROLNODETYPES = {"LevelDemand", "FlowDemand", "DiscreteControl", "PidControl"}
+
class NodeData(NamedTuple):
node_id: int
@@ -26,11 +28,11 @@ class NodeData(NamedTuple):
class EdgeSchema(pa.SchemaModel):
name: Series[str] = pa.Field(default="")
from_node_type: Series[str] = pa.Field(nullable=True)
- from_node_id: Series[int] = pa.Field(default=0, coerce=True)
+ from_node_id: Series[Int32] = pa.Field(default=0, coerce=True)
to_node_type: Series[str] = pa.Field(nullable=True)
- to_node_id: Series[int] = pa.Field(default=0, coerce=True)
+ to_node_id: Series[Int32] = pa.Field(default=0, coerce=True)
edge_type: Series[str] = pa.Field(default="flow", coerce=True)
- subnetwork_id: Series[pd.Int64Dtype] = pa.Field(
+ subnetwork_id: Series[pd.Int32Dtype] = pa.Field(
default=pd.NA, nullable=True, coerce=True
)
geometry: GeoSeries[Any] = pa.Field(default=None, nullable=True)
@@ -42,18 +44,10 @@ class Config:
class EdgeTable(SpatialTableModel[EdgeSchema]):
"""Defines the connections between nodes."""
- @model_validator(mode="after")
- def empty_table(self) -> "EdgeTable":
- if self.df is None:
- self.df = GeoDataFrame[EdgeSchema]()
- self.df.set_geometry("geometry", inplace=True)
- return self
-
def add(
self,
from_node: NodeData,
to_node: NodeData,
- edge_type: str,
geometry: LineString | MultiLineString | None = None,
name: str = "",
subnetwork_id: int | None = None,
@@ -63,30 +57,42 @@ def add(
if geometry is None
else [geometry]
)
+ edge_type = (
+ "control" if from_node.node_type in SPATIALCONTROLNODETYPES else "flow"
+ )
+ assert self.df is not None
+
table_to_append = GeoDataFrame[EdgeSchema](
data={
"from_node_type": pd.Series([from_node.node_type], dtype=str),
- "from_node_id": pd.Series([from_node.node_id], dtype=int),
+ "from_node_id": pd.Series([from_node.node_id], dtype=np.int32),
"to_node_type": pd.Series([to_node.node_type], dtype=str),
- "to_node_id": pd.Series([to_node.node_id], dtype=int),
+ "to_node_id": pd.Series([to_node.node_id], dtype=np.int32),
"edge_type": pd.Series([edge_type], dtype=str),
"name": pd.Series([name], dtype=str),
- "subnetwork_id": pd.Series([subnetwork_id], dtype=pd.Int64Dtype()),
+ "subnetwork_id": pd.Series([subnetwork_id], dtype=pd.Int32Dtype()),
},
geometry=geometry_to_append,
+ crs=self.df.crs,
)
- if self.df is None:
- self.df = table_to_append
- else:
- self.df = GeoDataFrame[EdgeSchema](pd.concat([self.df, table_to_append]))
+ self.df = GeoDataFrame[EdgeSchema](
+ pd.concat([self.df, table_to_append], ignore_index=True)
+ )
+ self.df.index.name = "fid"
def get_where_edge_type(self, edge_type: str) -> NDArray[np.bool_]:
assert self.df is not None
return (self.df.edge_type == edge_type).to_numpy()
+ def sort(self):
+ # Only sort the index (fid / edge_id) since this needs to be sorted in a GeoPackage.
+ # Under most circumstances, this retains the input order,
+ # making the edge_id as stable as possible; useful for post-processing.
+ self.df.sort_index(inplace=True)
+
def plot(self, **kwargs) -> Axes:
- assert self.df is not None # Pleases mypy
+ assert self.df is not None
kwargs = kwargs.copy() # Avoid side-effects
ax = kwargs.get("ax", None)
color_flow = kwargs.pop("color_flow", None)
@@ -145,3 +151,6 @@ def plot(self, **kwargs) -> Axes:
)
return ax
+
+ def __getitem__(self, _):
+ raise NotImplementedError
diff --git a/python/ribasim/ribasim/geometry/node.py b/python/ribasim/ribasim/geometry/node.py
index 6999e917e..990dd394c 100644
--- a/python/ribasim/ribasim/geometry/node.py
+++ b/python/ribasim/ribasim/geometry/node.py
@@ -6,6 +6,7 @@
import pandas as pd
import pandera as pa
from matplotlib.patches import Patch
+from pandera.dtypes import Int32
from pandera.typing import Series
from pandera.typing.geopandas import GeoSeries
@@ -15,10 +16,10 @@
class NodeSchema(pa.SchemaModel):
- node_id: Series[int]
+ node_id: Series[Int32] = pa.Field(ge=0)
name: Series[str] = pa.Field(default="")
node_type: Series[str] = pa.Field(default="")
- subnetwork_id: Series[pd.Int64Dtype] = pa.Field(
+ subnetwork_id: Series[pd.Int32Dtype] = pa.Field(
default=pd.NA, nullable=True, coerce=True
)
geometry: GeoSeries[Any] = pa.Field(default=None, nullable=True)
@@ -38,6 +39,11 @@ def filter(self, nodetype: str):
self.df.drop(mask, inplace=True)
self.df.reset_index(inplace=True, drop=True)
+ def sort(self):
+ assert self.df is not None
+ sort_keys = ["node_type", "node_id"]
+ self.df.sort_values(sort_keys, ignore_index=True, inplace=True)
+
def plot_allocation_networks(self, ax=None, zorder=None) -> Any:
if ax is None:
_, ax = plt.subplots()
@@ -110,6 +116,7 @@ def plot(self, ax=None, zorder=None) -> Any:
"PidControl": "x",
"UserDemand": "s",
"LevelDemand": "o",
+ "FlowDemand": "h",
"": "o",
}
@@ -128,6 +135,7 @@ def plot(self, ax=None, zorder=None) -> Any:
"PidControl": "k",
"UserDemand": "g",
"LevelDemand": "k",
+ "FlowDemand": "r",
"": "k",
}
if self.df is None:
diff --git a/python/ribasim/ribasim/input_base.py b/python/ribasim/ribasim/input_base.py
index b1cd8d6cc..d46905bae 100644
--- a/python/ribasim/ribasim/input_base.py
+++ b/python/ribasim/ribasim/input_base.py
@@ -1,5 +1,4 @@
import re
-import warnings
from abc import ABC, abstractmethod
from collections.abc import Callable, Generator
from contextlib import closing
@@ -14,6 +13,7 @@
)
import geopandas as gpd
+import numpy as np
import pandas as pd
import pandera as pa
from pandera.typing import DataFrame
@@ -31,14 +31,13 @@
validate_call,
)
-from ribasim.types import FilePath
+import ribasim
__all__ = ("TableModel",)
delimiter = " / "
gpd.options.io_engine = "pyogrio"
-warnings.filterwarnings("ignore", category=UserWarning, module="pyogrio")
context_file_loading: ContextVar[dict[str, Any]] = ContextVar(
"file_loading", default={}
@@ -133,15 +132,6 @@ def set_filepath(self, filepath: Path) -> None:
self.filepath = filepath
self.model_config["validate_assignment"] = True
- @abstractmethod
- def _save(self, directory: DirectoryPath, input_dir: DirectoryPath) -> None:
- """Save this instance to disk.
-
- This method needs to be implemented by any class deriving from
- FileModel.
- """
- raise NotImplementedError()
-
@classmethod
@abstractmethod
def _load(cls, filepath: Path | None) -> dict[str, Any]:
@@ -226,21 +216,17 @@ def _load(cls, filepath: Path | None) -> dict[str, Any]:
else:
return {}
- def _save(
- self,
- directory: DirectoryPath,
- input_dir: DirectoryPath,
- ) -> None:
+ def _save(self, directory: DirectoryPath, input_dir: DirectoryPath) -> None:
# TODO directory could be used to save an arrow file
db_path = context_file_loading.get().get("database")
- if self.df is not None and self.filepath is not None:
+ if self.filepath is not None:
self.sort()
self._write_arrow(self.filepath, directory, input_dir)
- elif self.df is not None and db_path is not None:
+ elif db_path is not None:
self.sort()
- self._write_table(db_path)
+ self._write_geopackage(db_path)
- def _write_table(self, temp_path: Path) -> None:
+ def _write_geopackage(self, temp_path: Path) -> None:
"""
Write the contents of the input to a database.
@@ -249,9 +235,8 @@ def _write_table(self, temp_path: Path) -> None:
connection : Connection
SQLite connection to the database.
"""
+ assert self.df is not None
table = self.tablename()
- if self.df is None:
- return
# Add `fid` to all tables as primary key
# Enables editing values manually in QGIS
@@ -285,7 +270,7 @@ def _write_arrow(self, filepath: Path, directory: Path, input_dir: Path) -> None
)
@classmethod
- def _from_db(cls, path: FilePath, table: str) -> pd.DataFrame | None:
+ def _from_db(cls, path: Path, table: str) -> pd.DataFrame | None:
with connect(path) as connection:
if exists(connection, table):
query = f"select * from {esc_id(table)}"
@@ -298,7 +283,7 @@ def _from_db(cls, path: FilePath, table: str) -> pd.DataFrame | None:
return df
@classmethod
- def _from_arrow(cls, path: FilePath) -> pd.DataFrame:
+ def _from_arrow(cls, path: Path) -> pd.DataFrame:
directory = context_file_loading.get().get("directory", Path("."))
return pd.read_feather(directory / path)
@@ -338,36 +323,46 @@ def _repr_html_(self):
else:
return f"{self.tablename()}
" + self.df._repr_html_()
+ def __getitem__(self, index) -> pd.DataFrame | gpd.GeoDataFrame:
+ tablename = self.tablename()
+ if self.df is None:
+ raise ValueError(f"Cannot index into {tablename}: it contains no data.")
+
+ # Allow for indexing with multiple values.
+ np_index = np.atleast_1d(index)
+ missing = np.setdiff1d(np_index, self.df["node_id"].unique())
+ if missing.size > 0:
+ raise IndexError(f"{tablename} does not contain node_id: {missing}")
+
+ # Index with .loc[..., :] to always return a DataFrame.
+ return self.df.loc[self.df["node_id"].isin(np_index), :]
+
class SpatialTableModel(TableModel[TableT], Generic[TableT]):
df: GeoDataFrame[TableT] | None = Field(default=None, exclude=True, repr=False)
@classmethod
- def _from_db(cls, path: FilePath, table: str):
+ def _from_db(cls, path: Path, table: str):
with connect(path) as connection:
if exists(connection, table):
df = gpd.read_file(path, layer=table, fid_as_index=True)
else:
- print(f"Can't read from {path}:{table}")
df = None
return df
- def _write_table(self, path: FilePath) -> None:
+ def _write_geopackage(self, path: Path) -> None:
"""
- Write the contents of the input to a database.
+ Write the contents of the input to the GeoPackage.
Parameters
----------
- path : FilePath
+ path : Path
"""
- if self.df is None:
- return
- self.df.to_file(path, layer=self.tablename(), driver="GPKG", mode="a")
-
- def sort(self):
- if self.df is not None:
- self.df.sort_index(inplace=True)
+ assert self.df is not None
+ # the index name must be fid otherwise it will generate a separate fid column
+ self.df.index.name = "fid"
+ self.df.to_file(path, layer=self.tablename(), index=True, driver="GPKG")
class ChildModel(BaseModel):
@@ -412,28 +407,25 @@ def get_input_type(cls):
def _layername(cls, field: str) -> str:
return f"{cls.get_input_type()}{delimiter}{field}"
- def tables(self) -> Generator[TableModel[Any], Any, None]:
+ def _tables(self) -> Generator[TableModel[Any], Any, None]:
for key in self.fields():
attr = getattr(self, key)
- if isinstance(attr, TableModel):
+ if (
+ isinstance(attr, TableModel)
+ and (attr.df is not None)
+ and not (isinstance(attr, ribasim.geometry.node.NodeTable))
+ ):
yield attr
def node_ids(self) -> set[int]:
node_ids: set[int] = set()
- for table in self.tables():
+ for table in self._tables():
node_ids.update(table.node_ids())
return node_ids
- def _save(self, directory: DirectoryPath, input_dir: DirectoryPath, **kwargs):
- # TODO: stop sorting loop so that "node" comes first
- for field in sorted(self.fields(), key=lambda x: x != "node"):
- attr = getattr(self, field)
- # TODO
- if hasattr(attr, "_save"):
- attr._save(
- directory,
- input_dir,
- )
+ def _save(self, directory: DirectoryPath, input_dir: DirectoryPath):
+ for table in self._tables():
+ table._save(directory, input_dir)
def _repr_content(self) -> str:
"""Generate a succinct overview of the content.
diff --git a/python/ribasim/ribasim/model.py b/python/ribasim/ribasim/model.py
index 5394774e4..f47cda53d 100644
--- a/python/ribasim/ribasim/model.py
+++ b/python/ribasim/ribasim/model.py
@@ -1,14 +1,18 @@
import datetime
+from collections.abc import Generator
+from os import PathLike
from pathlib import Path
from typing import Any
+import numpy as np
+import pandas as pd
import tomli
import tomli_w
from matplotlib import pyplot as plt
+from pandera.typing.geopandas import GeoDataFrame
from pydantic import (
DirectoryPath,
Field,
- FilePath,
field_serializer,
model_validator,
)
@@ -19,12 +23,14 @@
Basin,
DiscreteControl,
FlowBoundary,
+ FlowDemand,
FractionalFlow,
LevelBoundary,
LevelDemand,
LinearResistance,
Logging,
ManningResistance,
+ MultiNodeModel,
Outlet,
PidControl,
Pump,
@@ -34,43 +40,53 @@
Terminal,
UserDemand,
)
-from ribasim.geometry.edge import EdgeTable
+from ribasim.geometry.edge import EdgeSchema, EdgeTable
+from ribasim.geometry.node import NodeTable
from ribasim.input_base import (
ChildModel,
FileModel,
- NodeModel,
+ SpatialTableModel,
context_file_loading,
)
+from ribasim.utils import MissingOptionalModule
+
+try:
+ import xugrid
+except ImportError:
+ xugrid = MissingOptionalModule("xugrid")
class Model(FileModel):
starttime: datetime.datetime
endtime: datetime.datetime
+ crs: str
- input_dir: Path = Field(default_factory=lambda: Path("."))
- results_dir: Path = Field(default_factory=lambda: Path("results"))
+ input_dir: Path = Field(default=Path("."))
+ results_dir: Path = Field(default=Path("results"))
- allocation: Allocation = Field(default_factory=Allocation)
logging: Logging = Field(default_factory=Logging)
solver: Solver = Field(default_factory=Solver)
results: Results = Field(default_factory=Results)
+ allocation: Allocation = Field(default_factory=Allocation)
+
basin: Basin = Field(default_factory=Basin)
+ discrete_control: DiscreteControl = Field(default_factory=DiscreteControl)
+ flow_boundary: FlowBoundary = Field(default_factory=FlowBoundary)
+ flow_demand: FlowDemand = Field(default_factory=FlowDemand)
+ fractional_flow: FractionalFlow = Field(default_factory=FractionalFlow)
+ level_boundary: LevelBoundary = Field(default_factory=LevelBoundary)
+ level_demand: LevelDemand = Field(default_factory=LevelDemand)
linear_resistance: LinearResistance = Field(default_factory=LinearResistance)
manning_resistance: ManningResistance = Field(default_factory=ManningResistance)
+ outlet: Outlet = Field(default_factory=Outlet)
+ pid_control: PidControl = Field(default_factory=PidControl)
+ pump: Pump = Field(default_factory=Pump)
tabulated_rating_curve: TabulatedRatingCurve = Field(
default_factory=TabulatedRatingCurve
)
- fractional_flow: FractionalFlow = Field(default_factory=FractionalFlow)
- pump: Pump = Field(default_factory=Pump)
- level_boundary: LevelBoundary = Field(default_factory=LevelBoundary)
- flow_boundary: FlowBoundary = Field(default_factory=FlowBoundary)
- outlet: Outlet = Field(default_factory=Outlet)
terminal: Terminal = Field(default_factory=Terminal)
- discrete_control: DiscreteControl = Field(default_factory=DiscreteControl)
- pid_control: PidControl = Field(default_factory=PidControl)
user_demand: UserDemand = Field(default_factory=UserDemand)
- level_demand: LevelDemand = Field(default_factory=LevelDemand)
edge: EdgeTable = Field(default_factory=EdgeTable)
@@ -79,17 +95,27 @@ def set_node_parent(self) -> "Model":
for (
k,
v,
- ) in self.children().items():
+ ) in self._children().items():
setattr(v, "_parent", self)
setattr(v, "_parent_field", k)
return self
+ @model_validator(mode="after")
+ def ensure_edge_table_is_present(self) -> "Model":
+ if self.edge.df is None:
+ self.edge.df = GeoDataFrame[EdgeSchema]()
+ self.edge.df.set_geometry("geometry", inplace=True, crs=self.crs)
+ return self
+
@field_serializer("input_dir", "results_dir")
def serialize_path(self, path: Path) -> str:
return str(path)
def model_post_init(self, __context: Any) -> None:
- # Always write dir fields
+ # When serializing we exclude fields that are set to their default values
+ # However, we always want to write `input_dir` and `results_dir`
+ # By overriding `BaseModel.model_post_init` we can set them explicitly,
+ # and enforce that they are always written.
self.model_fields_set.update({"input_dir", "results_dir"})
def __repr__(self) -> str:
@@ -101,14 +127,31 @@ def __repr__(self) -> str:
INDENT = " "
for field in self.fields():
attr = getattr(self, field)
- content.append(f"{INDENT}{field}={repr(attr)},")
+ if isinstance(attr, EdgeTable):
+ content.append(f"{INDENT}{field}=Edge(...),")
+ else:
+ if isinstance(attr, MultiNodeModel) and attr.node.df is None:
+ # Skip unused node types
+ continue
+ content.append(f"{INDENT}{field}={repr(attr)},")
content.append(")")
return "\n".join(content)
- def _write_toml(self, fn: FilePath):
- fn = Path(fn)
+ def _write_toml(self, fn: Path) -> Path:
+ """
+ Write the model data to a TOML file.
+
+ Parameters
+ ----------
+ fn : FilePath
+ The file path where the TOML file will be written.
+ Returns
+ -------
+ Path
+ The file path of the written TOML file.
+ """
content = self.model_dump(exclude_unset=True, exclude_none=True, by_alias=True)
# Filter empty dicts (default Nodes)
content = dict(filter(lambda x: x[1], content.items()))
@@ -118,51 +161,82 @@ def _write_toml(self, fn: FilePath):
return fn
def _save(self, directory: DirectoryPath, input_dir: DirectoryPath):
+ # Set CRS of the tables to the CRS stored in the Model object
+ self.set_crs(self.crs)
db_path = directory / input_dir / "database.gpkg"
db_path.parent.mkdir(parents=True, exist_ok=True)
db_path.unlink(missing_ok=True)
context_file_loading.get()["database"] = db_path
self.edge._save(directory, input_dir)
- for sub in self.nodes().values():
- sub._save(directory, input_dir)
- def nodes(self):
- return {
- k: getattr(self, k)
- for k in self.model_fields.keys()
- if isinstance(getattr(self, k), NodeModel)
- }
+ node = self.node_table()
+ assert node.df is not None
+ # Temporarily require unique node_id for #1262
+ # and copy them to the fid for #1306.
+ if not node.df["node_id"].is_unique:
+ raise ValueError("node_id must be unique")
+ node.df.set_index("node_id", drop=False, inplace=True)
+ node.df.index.name = "fid"
+ node.df.sort_index(inplace=True)
+ node._save(directory, input_dir)
+
+ for sub in self._nodes():
+ sub._save(directory, input_dir)
- def children(self):
+ def set_crs(self, crs: str) -> None:
+ self._apply_crs_function("set_crs", crs)
+
+ def to_crs(self, crs: str) -> None:
+ # Set CRS of the tables to the CRS stored in the Model object
+ self.set_crs(self.crs)
+ self._apply_crs_function("to_crs", crs)
+
+ def _apply_crs_function(self, function_name: str, crs: str) -> None:
+ """Apply `function_name`, with `crs` as the first and only argument to all spatial tables."""
+ self.edge.df = getattr(self.edge.df, function_name)(crs)
+ for sub in self._nodes():
+ if sub.node.df is not None:
+ sub.node.df = getattr(sub.node.df, function_name)(crs)
+ for table in sub._tables():
+ if isinstance(table, SpatialTableModel) and table.df is not None:
+ table.df = getattr(table.df, function_name)(crs)
+ self.crs = crs
+
+ def node_table(self) -> NodeTable:
+ """Compute the full NodeTable from all node types."""
+ df_chunks = [node.node.df.set_crs(self.crs) for node in self._nodes()] # type: ignore
+ df = pd.concat(df_chunks, ignore_index=True)
+ node_table = NodeTable(df=df)
+ node_table.sort()
+ assert node_table.df is not None
+ node_table.df.index.name = "fid"
+ return node_table
+
+ def _nodes(self) -> Generator[MultiNodeModel, Any, None]:
+ """Return all non-empty MultiNodeModel instances."""
+ for key in self.model_fields.keys():
+ attr = getattr(self, key)
+ if (
+ isinstance(attr, MultiNodeModel)
+ and attr.node.df is not None
+ # TODO: Model.read creates empty node tables (#1278)
+ and not attr.node.df.empty
+ ):
+ yield attr
+
+ def _children(self):
return {
k: getattr(self, k)
for k in self.model_fields.keys()
if isinstance(getattr(self, k), ChildModel)
}
- def validate_model_node_field_ids(self):
- raise NotImplementedError()
-
- def validate_model_node_ids(self):
- raise NotImplementedError()
-
- def validate_model(self):
- """Validate the model.
-
- Checks:
- - Whether the node IDs of the node_type fields are valid
- - Whether the node IDs in the node field correspond to the node IDs on the node type fields
- """
-
- self.validate_model_node_field_ids()
- self.validate_model_node_ids()
-
@classmethod
- def read(cls, filepath: FilePath) -> "Model":
+ def read(cls, filepath: str | PathLike[str]) -> "Model":
"""Read model from TOML file."""
return cls(filepath=filepath) # type: ignore
- def write(self, filepath: Path | str) -> Path:
+ def write(self, filepath: str | PathLike[str]) -> Path:
"""
Write the contents of the model to disk and save it as a TOML configuration file.
@@ -170,15 +244,15 @@ def write(self, filepath: Path | str) -> Path:
Parameters
----------
- filepath: FilePath ending in .toml
+ filepath: str | PathLike[str] A file path with .toml extension
"""
# TODO
# self.validate_model()
filepath = Path(filepath)
+ self.filepath = filepath
if not filepath.suffix == ".toml":
raise ValueError(f"Filepath '{filepath}' is not a .toml file.")
context_file_loading.set({})
- filepath = Path(filepath)
directory = filepath.parent
directory.mkdir(parents=True, exist_ok=True)
self._save(directory, self.input_dir)
@@ -191,7 +265,7 @@ def write(self, filepath: Path | str) -> Path:
def _load(cls, filepath: Path | None) -> dict[str, Any]:
context_file_loading.set({})
- if filepath is not None:
+ if filepath is not None and filepath.is_file():
with open(filepath, "rb") as f:
config = tomli.load(f)
@@ -210,7 +284,65 @@ def reset_contextvar(self) -> "Model":
return self
def plot_control_listen(self, ax):
- raise NotImplementedError()
+ df_listen_edge = pd.DataFrame(
+ data={
+ "control_node_id": pd.Series([], dtype=np.int32),
+ "control_node_type": pd.Series([], dtype=str),
+ "listen_node_id": pd.Series([], dtype=np.int32),
+ "listen_node_type": pd.Series([], dtype=str),
+ }
+ )
+
+ # Listen edges from PidControl
+ for table in (self.pid_control.static.df, self.pid_control.time.df):
+ if table is None:
+ continue
+
+ to_add = table[
+ ["node_id", "listen_node_id", "listen_node_type"]
+ ].drop_duplicates()
+ to_add.columns = ["control_node_id", "listen_node_id", "listen_node_type"]
+ to_add["control_node_type"] = "PidControl"
+ df_listen_edge = pd.concat([df_listen_edge, to_add])
+
+ # Listen edges from DiscreteControl
+ df_variable = self.discrete_control.variable.df
+ if df_variable is not None:
+ to_add = df_variable[
+ ["node_id", "listen_node_id", "listen_node_type"]
+ ].drop_duplicates()
+ to_add.columns = ["control_node_id", "listen_node_id", "listen_node_type"]
+ to_add["control_node_type"] = "DiscreteControl"
+ df_listen_edge = pd.concat([df_listen_edge, to_add])
+
+ # Collect geometry data
+ node = self.node_table().df
+ control_nodes_geometry = df_listen_edge.merge(
+ node,
+ left_on=["control_node_id", "control_node_type"],
+ right_on=["node_id", "node_type"],
+ how="left",
+ )["geometry"]
+
+ listen_nodes_geometry = df_listen_edge.merge(
+ node,
+ left_on=["listen_node_id", "listen_node_type"],
+ right_on=["node_id", "node_type"],
+ how="left",
+ )["geometry"]
+
+ # Plot listen edges
+ for i, (point_listen, point_control) in enumerate(
+ zip(listen_nodes_geometry, control_nodes_geometry)
+ ):
+ ax.plot(
+ [point_listen.x, point_control.x],
+ [point_listen.y, point_control.y],
+ color="gray",
+ ls="--",
+ label="Listen edge" if i == 0 else None,
+ )
+ return
def plot(self, ax=None, indicate_subnetworks: bool = True) -> Any:
"""
@@ -229,24 +361,139 @@ def plot(self, ax=None, indicate_subnetworks: bool = True) -> Any:
_, ax = plt.subplots()
ax.axis("off")
+ node = self.node_table()
self.edge.plot(ax=ax, zorder=2)
- for node in self.nodes().values():
- node.node.plot(ax=ax, zorder=3)
- # TODO
- # self.plot_control_listen(ax)
- # self.node.plot(ax=ax, zorder=3)
+ self.plot_control_listen(ax)
+ node.plot(ax=ax, zorder=3)
handles, labels = ax.get_legend_handles_labels()
- # TODO
- # if indicate_subnetworks:
- # (
- # handles_subnetworks,
- # labels_subnetworks,
- # ) = self.network.node.plot_allocation_networks(ax=ax, zorder=1)
- # handles += handles_subnetworks
- # labels += labels_subnetworks
+ if indicate_subnetworks:
+ (
+ handles_subnetworks,
+ labels_subnetworks,
+ ) = node.plot_allocation_networks(ax=ax, zorder=1)
+ handles += handles_subnetworks
+ labels += labels_subnetworks
ax.legend(handles, labels, loc="lower left", bbox_to_anchor=(1, 0.5))
return ax
+
+ def to_xugrid(self, add_results: bool = True):
+ """
+ Convert the network and results to a `xugrid.UgridDataset`.
+ To get the network only, set `add_results=False`.
+ This method will throw `ImportError`,
+ if the optional dependency `xugrid` isn't installed.
+ """
+ node_df = self.node_table().df
+ assert node_df is not None
+
+ # This will need to be adopted for locally unique node IDs,
+ # otherwise the `node_lookup` with `argsort` is not correct.
+ if not node_df.node_id.is_unique:
+ raise ValueError("node_id must be unique")
+ node_df.sort_values("node_id", inplace=True)
+
+ assert self.edge.df is not None
+ edge_df = self.edge.df.copy()
+ # We assume only the flow network is of interest.
+ edge_df = edge_df[edge_df.edge_type == "flow"]
+
+ node_id = node_df.node_id.to_numpy()
+ edge_id = edge_df.index.to_numpy()
+ from_node_id = edge_df.from_node_id.to_numpy()
+ to_node_id = edge_df.to_node_id.to_numpy()
+
+ # from node_id to the node_dim index
+ node_lookup = pd.Series(
+ index=node_id,
+ data=node_id.argsort().astype(np.int32),
+ name="node_index",
+ )
+
+ grid = xugrid.Ugrid1d(
+ node_x=node_df.geometry.x,
+ node_y=node_df.geometry.y,
+ fill_value=-1,
+ edge_node_connectivity=np.column_stack(
+ (
+ node_lookup[from_node_id],
+ node_lookup[to_node_id],
+ )
+ ),
+ name="ribasim",
+ projected=node_df.crs.is_projected,
+ crs=node_df.crs,
+ )
+
+ edge_dim = grid.edge_dimension
+ node_dim = grid.node_dimension
+
+ uds = xugrid.UgridDataset(None, grid)
+ uds = uds.assign_coords(node_id=(node_dim, node_id))
+ uds = uds.assign_coords(edge_id=(edge_dim, edge_id))
+ uds = uds.assign_coords(from_node_id=(edge_dim, from_node_id))
+ uds = uds.assign_coords(to_node_id=(edge_dim, to_node_id))
+
+ if add_results:
+ uds = self._add_results(uds)
+
+ return uds
+
+ def _add_results(self, uds):
+ toml_path = self.filepath
+ if toml_path is None:
+ raise FileNotFoundError("Model must be written to disk to add results.")
+
+ results_path = toml_path.parent / self.results_dir
+ basin_path = results_path / "basin.arrow"
+ flow_path = results_path / "flow.arrow"
+
+ if not basin_path.is_file() or not flow_path.is_file():
+ raise FileNotFoundError(
+ f"Cannot find results in '{results_path}', "
+ "perhaps the model needs to be run first."
+ )
+
+ basin_df = pd.read_feather(basin_path)
+ flow_df = pd.read_feather(flow_path)
+
+ edge_dim = uds.grid.edge_dimension
+ node_dim = uds.grid.node_dimension
+
+ # from node_id to the node_dim index
+ node_lookup = pd.Series(
+ index=uds["node_id"],
+ data=uds[node_dim],
+ name="node_index",
+ )
+ # from edge_id to the edge_dim index
+ edge_lookup = pd.Series(
+ index=uds["edge_id"],
+ data=uds[edge_dim],
+ name="edge_index",
+ )
+
+ basin_df = pd.read_feather(basin_path)
+ flow_df = pd.read_feather(flow_path)
+
+ # datetime64[ms] gives trouble; https://github.com/pydata/xarray/issues/6318
+ flow_df["time"] = flow_df["time"].astype("datetime64[ns]")
+ basin_df["time"] = basin_df["time"].astype("datetime64[ns]")
+
+ # add flow results to the UgridDataset
+ flow_df[edge_dim] = edge_lookup[flow_df["edge_id"]].to_numpy()
+ flow_da = flow_df.set_index(["time", edge_dim])["flow_rate"].to_xarray()
+ uds[flow_da.name] = flow_da
+
+ # add basin results to the UgridDataset
+ basin_df[node_dim] = node_lookup[basin_df["node_id"]].to_numpy()
+ basin_df.drop(columns=["node_id"], inplace=True)
+ basin_ds = basin_df.set_index(["time", node_dim]).to_xarray()
+
+ for var_name, da in basin_ds.data_vars.items():
+ uds[var_name] = da
+
+ return uds
diff --git a/python/ribasim/ribasim/nodes/discrete_control.py b/python/ribasim/ribasim/nodes/discrete_control.py
index eeb0b28ca..df7b9f42b 100644
--- a/python/ribasim/ribasim/nodes/discrete_control.py
+++ b/python/ribasim/ribasim/nodes/discrete_control.py
@@ -1,9 +1,18 @@
from pandas import DataFrame
from ribasim.input_base import TableModel
-from ribasim.schemas import DiscreteControlConditionSchema, DiscreteControlLogicSchema
+from ribasim.schemas import (
+ DiscreteControlConditionSchema,
+ DiscreteControlLogicSchema,
+ DiscreteControlVariableSchema,
+)
-__all__ = ["Condition", "Logic"]
+__all__ = ["Condition", "Logic", "Variable"]
+
+
+class Variable(TableModel[DiscreteControlVariableSchema]):
+ def __init__(self, **kwargs):
+ super().__init__(df=DataFrame(dict(**kwargs)))
class Condition(TableModel[DiscreteControlConditionSchema]):
diff --git a/python/ribasim/ribasim/nodes/flow_demand.py b/python/ribasim/ribasim/nodes/flow_demand.py
new file mode 100644
index 000000000..56ce7019a
--- /dev/null
+++ b/python/ribasim/ribasim/nodes/flow_demand.py
@@ -0,0 +1,19 @@
+from pandas import DataFrame
+
+from ribasim.input_base import TableModel
+from ribasim.schemas import (
+ FlowDemandStaticSchema,
+ FlowDemandTimeSchema,
+)
+
+__all__ = ["Static", "Time"]
+
+
+class Static(TableModel[FlowDemandStaticSchema]):
+ def __init__(self, **kwargs):
+ super().__init__(df=DataFrame(dict(**kwargs)))
+
+
+class Time(TableModel[FlowDemandTimeSchema]):
+ def __init__(self, **kwargs):
+ super().__init__(df=DataFrame(dict(**kwargs)))
diff --git a/python/ribasim/ribasim/schemas.py b/python/ribasim/ribasim/schemas.py
index cac1bab75..72b1f4191 100644
--- a/python/ribasim/ribasim/schemas.py
+++ b/python/ribasim/ribasim/schemas.py
@@ -1,7 +1,7 @@
# Automatically generated file. Do not modify.
import pandera as pa
-from pandera.dtypes import Timestamp
+from pandera.dtypes import Int32, Timestamp
from pandera.typing import Series
@@ -28,18 +28,18 @@ class BasinConcentrationSchema(_BaseSchema):
class BasinProfileSchema(_BaseSchema):
- node_id: Series[int] = pa.Field(nullable=False, default=0)
+ node_id: Series[Int32] = pa.Field(nullable=False, default=0)
area: Series[float] = pa.Field(nullable=False)
level: Series[float] = pa.Field(nullable=False)
class BasinStateSchema(_BaseSchema):
- node_id: Series[int] = pa.Field(nullable=False, default=0)
+ node_id: Series[Int32] = pa.Field(nullable=False, default=0)
level: Series[float] = pa.Field(nullable=False)
class BasinStaticSchema(_BaseSchema):
- node_id: Series[int] = pa.Field(nullable=False, default=0)
+ node_id: Series[Int32] = pa.Field(nullable=False, default=0)
drainage: Series[float] = pa.Field(nullable=True)
potential_evaporation: Series[float] = pa.Field(nullable=True)
infiltration: Series[float] = pa.Field(nullable=True)
@@ -48,14 +48,14 @@ class BasinStaticSchema(_BaseSchema):
class BasinSubgridSchema(_BaseSchema):
- subgrid_id: Series[int] = pa.Field(nullable=False, default=0)
- node_id: Series[int] = pa.Field(nullable=False, default=0)
+ subgrid_id: Series[Int32] = pa.Field(nullable=False, default=0)
+ node_id: Series[Int32] = pa.Field(nullable=False, default=0)
basin_level: Series[float] = pa.Field(nullable=False)
subgrid_level: Series[float] = pa.Field(nullable=False)
class BasinTimeSchema(_BaseSchema):
- node_id: Series[int] = pa.Field(nullable=False, default=0)
+ node_id: Series[Int32] = pa.Field(nullable=False, default=0)
time: Series[Timestamp] = pa.Field(nullable=False)
drainage: Series[float] = pa.Field(nullable=True)
potential_evaporation: Series[float] = pa.Field(nullable=True)
@@ -65,16 +65,13 @@ class BasinTimeSchema(_BaseSchema):
class DiscreteControlConditionSchema(_BaseSchema):
- node_id: Series[int] = pa.Field(nullable=False, default=0)
- listen_node_type: Series[str] = pa.Field(nullable=False)
- listen_node_id: Series[int] = pa.Field(nullable=False, default=0)
- variable: Series[str] = pa.Field(nullable=False)
+ node_id: Series[Int32] = pa.Field(nullable=False, default=0)
+ compound_variable_id: Series[Int32] = pa.Field(nullable=False, default=0)
greater_than: Series[float] = pa.Field(nullable=False)
- look_ahead: Series[float] = pa.Field(nullable=True)
class DiscreteControlLogicSchema(_BaseSchema):
- node_id: Series[int] = pa.Field(nullable=False, default=0)
+ node_id: Series[Int32] = pa.Field(nullable=False, default=0)
truth_state: Series[str] = pa.Field(nullable=False)
control_state: Series[str] = pa.Field(nullable=False)
@@ -86,20 +83,43 @@ class FlowBoundaryConcentrationSchema(_BaseSchema):
concentration: Series[float] = pa.Field(nullable=False)
+class DiscreteControlVariableSchema(_BaseSchema):
+ node_id: Series[Int32] = pa.Field(nullable=False, default=0)
+ compound_variable_id: Series[Int32] = pa.Field(nullable=False, default=0)
+ listen_node_type: Series[str] = pa.Field(nullable=False)
+ listen_node_id: Series[Int32] = pa.Field(nullable=False, default=0)
+ variable: Series[str] = pa.Field(nullable=False)
+ weight: Series[float] = pa.Field(nullable=True)
+ look_ahead: Series[float] = pa.Field(nullable=True)
+
+
class FlowBoundaryStaticSchema(_BaseSchema):
- node_id: Series[int] = pa.Field(nullable=False, default=0)
+ node_id: Series[Int32] = pa.Field(nullable=False, default=0)
active: Series[pa.BOOL] = pa.Field(nullable=True)
flow_rate: Series[float] = pa.Field(nullable=False)
class FlowBoundaryTimeSchema(_BaseSchema):
- node_id: Series[int] = pa.Field(nullable=False, default=0)
+ node_id: Series[Int32] = pa.Field(nullable=False, default=0)
time: Series[Timestamp] = pa.Field(nullable=False)
flow_rate: Series[float] = pa.Field(nullable=False)
+class FlowDemandStaticSchema(_BaseSchema):
+ node_id: Series[Int32] = pa.Field(nullable=False, default=0)
+ demand: Series[float] = pa.Field(nullable=False)
+ priority: Series[Int32] = pa.Field(nullable=False, default=0)
+
+
+class FlowDemandTimeSchema(_BaseSchema):
+ node_id: Series[Int32] = pa.Field(nullable=False, default=0)
+ time: Series[Timestamp] = pa.Field(nullable=False)
+ demand: Series[float] = pa.Field(nullable=False)
+ priority: Series[Int32] = pa.Field(nullable=False, default=0)
+
+
class FractionalFlowStaticSchema(_BaseSchema):
- node_id: Series[int] = pa.Field(nullable=False, default=0)
+ node_id: Series[Int32] = pa.Field(nullable=False, default=0)
fraction: Series[float] = pa.Field(nullable=False)
control_state: Series[str] = pa.Field(nullable=True)
@@ -112,34 +132,34 @@ class LevelBoundaryConcentrationSchema(_BaseSchema):
class LevelBoundaryStaticSchema(_BaseSchema):
- node_id: Series[int] = pa.Field(nullable=False, default=0)
+ node_id: Series[Int32] = pa.Field(nullable=False, default=0)
active: Series[pa.BOOL] = pa.Field(nullable=True)
level: Series[float] = pa.Field(nullable=False)
class LevelBoundaryTimeSchema(_BaseSchema):
- node_id: Series[int] = pa.Field(nullable=False, default=0)
+ node_id: Series[Int32] = pa.Field(nullable=False, default=0)
time: Series[Timestamp] = pa.Field(nullable=False)
level: Series[float] = pa.Field(nullable=False)
class LevelDemandStaticSchema(_BaseSchema):
- node_id: Series[int] = pa.Field(nullable=False, default=0)
- min_level: Series[float] = pa.Field(nullable=False)
- max_level: Series[float] = pa.Field(nullable=False)
- priority: Series[int] = pa.Field(nullable=False, default=0)
+ node_id: Series[Int32] = pa.Field(nullable=False, default=0)
+ min_level: Series[float] = pa.Field(nullable=True)
+ max_level: Series[float] = pa.Field(nullable=True)
+ priority: Series[Int32] = pa.Field(nullable=False, default=0)
class LevelDemandTimeSchema(_BaseSchema):
- node_id: Series[int] = pa.Field(nullable=False, default=0)
+ node_id: Series[Int32] = pa.Field(nullable=False, default=0)
time: Series[Timestamp] = pa.Field(nullable=False)
- min_level: Series[float] = pa.Field(nullable=False)
- max_level: Series[float] = pa.Field(nullable=False)
- priority: Series[int] = pa.Field(nullable=False, default=0)
+ min_level: Series[float] = pa.Field(nullable=True)
+ max_level: Series[float] = pa.Field(nullable=True)
+ priority: Series[Int32] = pa.Field(nullable=False, default=0)
class LinearResistanceStaticSchema(_BaseSchema):
- node_id: Series[int] = pa.Field(nullable=False, default=0)
+ node_id: Series[Int32] = pa.Field(nullable=False, default=0)
active: Series[pa.BOOL] = pa.Field(nullable=True)
resistance: Series[float] = pa.Field(nullable=False)
max_flow_rate: Series[float] = pa.Field(nullable=True)
@@ -147,7 +167,7 @@ class LinearResistanceStaticSchema(_BaseSchema):
class ManningResistanceStaticSchema(_BaseSchema):
- node_id: Series[int] = pa.Field(nullable=False, default=0)
+ node_id: Series[Int32] = pa.Field(nullable=False, default=0)
active: Series[pa.BOOL] = pa.Field(nullable=True)
length: Series[float] = pa.Field(nullable=False)
manning_n: Series[float] = pa.Field(nullable=False)
@@ -157,7 +177,7 @@ class ManningResistanceStaticSchema(_BaseSchema):
class OutletStaticSchema(_BaseSchema):
- node_id: Series[int] = pa.Field(nullable=False, default=0)
+ node_id: Series[Int32] = pa.Field(nullable=False, default=0)
active: Series[pa.BOOL] = pa.Field(nullable=True)
flow_rate: Series[float] = pa.Field(nullable=False)
min_flow_rate: Series[float] = pa.Field(nullable=True)
@@ -167,10 +187,10 @@ class OutletStaticSchema(_BaseSchema):
class PidControlStaticSchema(_BaseSchema):
- node_id: Series[int] = pa.Field(nullable=False, default=0)
+ node_id: Series[Int32] = pa.Field(nullable=False, default=0)
active: Series[pa.BOOL] = pa.Field(nullable=True)
listen_node_type: Series[str] = pa.Field(nullable=False)
- listen_node_id: Series[int] = pa.Field(nullable=False, default=0)
+ listen_node_id: Series[Int32] = pa.Field(nullable=False, default=0)
target: Series[float] = pa.Field(nullable=False)
proportional: Series[float] = pa.Field(nullable=False)
integral: Series[float] = pa.Field(nullable=False)
@@ -179,9 +199,9 @@ class PidControlStaticSchema(_BaseSchema):
class PidControlTimeSchema(_BaseSchema):
- node_id: Series[int] = pa.Field(nullable=False, default=0)
+ node_id: Series[Int32] = pa.Field(nullable=False, default=0)
listen_node_type: Series[str] = pa.Field(nullable=False)
- listen_node_id: Series[int] = pa.Field(nullable=False, default=0)
+ listen_node_id: Series[Int32] = pa.Field(nullable=False, default=0)
time: Series[Timestamp] = pa.Field(nullable=False)
target: Series[float] = pa.Field(nullable=False)
proportional: Series[float] = pa.Field(nullable=False)
@@ -191,7 +211,7 @@ class PidControlTimeSchema(_BaseSchema):
class PumpStaticSchema(_BaseSchema):
- node_id: Series[int] = pa.Field(nullable=False, default=0)
+ node_id: Series[Int32] = pa.Field(nullable=False, default=0)
active: Series[pa.BOOL] = pa.Field(nullable=True)
flow_rate: Series[float] = pa.Field(nullable=False)
min_flow_rate: Series[float] = pa.Field(nullable=True)
@@ -200,7 +220,7 @@ class PumpStaticSchema(_BaseSchema):
class TabulatedRatingCurveStaticSchema(_BaseSchema):
- node_id: Series[int] = pa.Field(nullable=False, default=0)
+ node_id: Series[Int32] = pa.Field(nullable=False, default=0)
active: Series[pa.BOOL] = pa.Field(nullable=True)
level: Series[float] = pa.Field(nullable=False)
flow_rate: Series[float] = pa.Field(nullable=False)
@@ -208,29 +228,29 @@ class TabulatedRatingCurveStaticSchema(_BaseSchema):
class TabulatedRatingCurveTimeSchema(_BaseSchema):
- node_id: Series[int] = pa.Field(nullable=False, default=0)
+ node_id: Series[Int32] = pa.Field(nullable=False, default=0)
time: Series[Timestamp] = pa.Field(nullable=False)
level: Series[float] = pa.Field(nullable=False)
flow_rate: Series[float] = pa.Field(nullable=False)
class TerminalStaticSchema(_BaseSchema):
- node_id: Series[int] = pa.Field(nullable=False, default=0)
+ node_id: Series[Int32] = pa.Field(nullable=False, default=0)
class UserDemandStaticSchema(_BaseSchema):
- node_id: Series[int] = pa.Field(nullable=False, default=0)
+ node_id: Series[Int32] = pa.Field(nullable=False, default=0)
active: Series[pa.BOOL] = pa.Field(nullable=True)
demand: Series[float] = pa.Field(nullable=False)
return_factor: Series[float] = pa.Field(nullable=False)
min_level: Series[float] = pa.Field(nullable=False)
- priority: Series[int] = pa.Field(nullable=False, default=0)
+ priority: Series[Int32] = pa.Field(nullable=False, default=0)
class UserDemandTimeSchema(_BaseSchema):
- node_id: Series[int] = pa.Field(nullable=False, default=0)
+ node_id: Series[Int32] = pa.Field(nullable=False, default=0)
time: Series[Timestamp] = pa.Field(nullable=False)
demand: Series[float] = pa.Field(nullable=False)
return_factor: Series[float] = pa.Field(nullable=False)
min_level: Series[float] = pa.Field(nullable=False)
- priority: Series[int] = pa.Field(nullable=False, default=0)
+ priority: Series[Int32] = pa.Field(nullable=False, default=0)
diff --git a/python/ribasim/ribasim/types.py b/python/ribasim/ribasim/types.py
deleted file mode 100644
index 407e07f53..000000000
--- a/python/ribasim/ribasim/types.py
+++ /dev/null
@@ -1,5 +0,0 @@
-from os import PathLike
-
-FilePath = str | PathLike[str]
-
-__all__ = ()
diff --git a/python/ribasim/ribasim/utils.py b/python/ribasim/ribasim/utils.py
index 001b47862..93f368c10 100644
--- a/python/ribasim/ribasim/utils.py
+++ b/python/ribasim/ribasim/utils.py
@@ -5,3 +5,13 @@ def _pascal_to_snake(pascal_str):
# Insert a '_' before all uppercase letters that are not at the start of the string
# and convert the string to lowercase
return re.sub(r"(? ribasim.Model:
return ribasim_testmodels.basic_transient_model()
+@pytest.fixture()
+def bucket() -> ribasim.Model:
+ return ribasim_testmodels.bucket_model()
+
+
@pytest.fixture()
def tabulated_rating_curve() -> ribasim.Model:
return ribasim_testmodels.tabulated_rating_curve_model()
@@ -35,8 +40,8 @@ def discrete_control_of_pid_control() -> ribasim.Model:
@pytest.fixture()
-def level_setpoint_with_minmax() -> ribasim.Model:
- return ribasim_testmodels.level_setpoint_with_minmax_model()
+def level_range() -> ribasim.Model:
+ return ribasim_testmodels.level_range_model()
@pytest.fixture()
diff --git a/python/ribasim/tests/test_edge.py b/python/ribasim/tests/test_edge.py
index 045f11645..ce1acd501 100644
--- a/python/ribasim/tests/test_edge.py
+++ b/python/ribasim/tests/test_edge.py
@@ -32,3 +32,8 @@ def test_validation(edge):
def test_edge_plot(edge):
edge.plot()
+
+
+def test_edge_indexing(edge):
+ with pytest.raises(NotImplementedError):
+ edge[1]
diff --git a/python/ribasim/tests/test_io.py b/python/ribasim/tests/test_io.py
index 683b49274..2fb6e50de 100644
--- a/python/ribasim/tests/test_io.py
+++ b/python/ribasim/tests/test_io.py
@@ -1,57 +1,54 @@
+from datetime import datetime
+
+import numpy as np
import pytest
import ribasim
import tomli
from pandas import DataFrame
from pandas.testing import assert_frame_equal
from pydantic import ValidationError
+from ribasim import Model
from ribasim.nodes import pump, terminal
-def __assert_equal(a: DataFrame, b: DataFrame, is_network=False) -> None:
- """Like pandas.testing.assert_frame_equal, but ignoring the index."""
+def __assert_equal(a: DataFrame, b: DataFrame) -> None:
+ """Lenient version of pandas.testing.assert_frame_equal."""
if a is None and b is None:
- return True
-
- if is_network:
- # We set this on write, needed for GeoPackage.
- a.index.name = "fid"
- a.index.name = "fid"
+ return
+ elif a is None or b is None:
+ assert False
a = a.reset_index(drop=True)
b = b.reset_index(drop=True)
+ a.drop(columns=["fid"], inplace=True, errors="ignore")
+ b.drop(columns=["fid"], inplace=True, errors="ignore")
- # avoid comparing datetime64[ns] with datetime64[ms]
- if "time" in a:
- a["time"] = a.time.astype("datetime64[ns]")
- b["time"] = b.time.astype("datetime64[ns]")
-
- if "fid" in a:
- a.drop(columns=["fid"], inplace=True)
- if "fid" in b:
- b.drop(columns=["fid"], inplace=True)
-
- return assert_frame_equal(a, b)
+ assert_frame_equal(a, b)
def test_basic(basic, tmp_path):
model_orig = basic
toml_path = tmp_path / "basic/ribasim.toml"
+ assert model_orig.filepath is None
model_orig.write(toml_path)
- model_loaded = ribasim.Model(filepath=toml_path)
+ assert model_orig.filepath == toml_path
+ model_loaded = Model.read(toml_path)
+ assert model_loaded.filepath == toml_path
with open(toml_path, "rb") as f:
toml_dict = tomli.load(f)
assert toml_dict["ribasim_version"] == ribasim.__version__
- __assert_equal(model_orig.edge.df, model_loaded.edge.df, is_network=True)
+ __assert_equal(model_orig.edge.df, model_loaded.edge.df)
+ __assert_equal(model_orig.node_table().df, model_loaded.node_table().df)
assert model_loaded.basin.time.df is None
def test_basic_arrow(basic_arrow, tmp_path):
model_orig = basic_arrow
model_orig.write(tmp_path / "basic_arrow/ribasim.toml")
- model_loaded = ribasim.Model(filepath=tmp_path / "basic_arrow/ribasim.toml")
+ model_loaded = Model.read(tmp_path / "basic_arrow/ribasim.toml")
__assert_equal(model_orig.basin.profile.df, model_loaded.basin.profile.df)
@@ -59,12 +56,13 @@ def test_basic_arrow(basic_arrow, tmp_path):
def test_basic_transient(basic_transient, tmp_path):
model_orig = basic_transient
model_orig.write(tmp_path / "basic_transient/ribasim.toml")
- model_loaded = ribasim.Model(filepath=tmp_path / "basic_transient/ribasim.toml")
+ model_loaded = Model.read(tmp_path / "basic_transient/ribasim.toml")
- __assert_equal(model_orig.edge.df, model_loaded.edge.df, is_network=True)
+ __assert_equal(model_orig.edge.df, model_loaded.edge.df)
time = model_loaded.basin.time
- assert model_orig.basin.time.df.time[0] == time.df.time[0]
+ assert model_orig.basin.time.df.time.iloc[0] == time.df.time.iloc[0]
+ assert time.df.node_id.dtype == np.int32
__assert_equal(model_orig.basin.time.df, time.df)
assert time.df.shape == (1468, 7)
@@ -84,7 +82,7 @@ def test_repr():
assert isinstance(pump_static._repr_html_(), str)
-def test_extra_columns(basic_transient):
+def test_extra_columns():
terminal_static = terminal.Static(meta_id=[-1, -2, -3])
assert "meta_id" in terminal_static.df.columns
assert (terminal_static.df.meta_id == [-1, -2, -3]).all()
@@ -94,41 +92,50 @@ def test_extra_columns(basic_transient):
terminal.Static(meta_id=[-1, -2, -3], extra=[-1, -2, -3])
-def test_sort(level_setpoint_with_minmax, tmp_path):
- model = level_setpoint_with_minmax
+def test_sort(level_range, tmp_path):
+ model = level_range
table = model.discrete_control.condition
+ edge = model.edge
# apply a wrong sort, then call the sort method to restore order
table.df.sort_values("greater_than", ascending=False, inplace=True)
assert table.df.iloc[0]["greater_than"] == 15.0
assert table._sort_keys == [
"node_id",
- "listen_node_id",
- "variable",
+ "compound_variable_id",
"greater_than",
]
table.sort()
assert table.df.iloc[0]["greater_than"] == 5.0
+ # The edge table is not sorted
+ assert edge.df.iloc[1]["from_node_type"] == "Pump"
+ assert edge.df.iloc[1]["from_node_id"] == 3
+
# re-apply wrong sort, then check if it gets sorted on write
table.df.sort_values("greater_than", ascending=False, inplace=True)
model.write(tmp_path / "basic/ribasim.toml")
# write sorts the model in place
assert table.df.iloc[0]["greater_than"] == 5.0
- model_loaded = ribasim.Model(filepath=tmp_path / "basic/ribasim.toml")
+ model_loaded = ribasim.Model.read(filepath=tmp_path / "basic/ribasim.toml")
table_loaded = model_loaded.discrete_control.condition
+ edge_loaded = model_loaded.edge
assert table_loaded.df.iloc[0]["greater_than"] == 5.0
+ assert edge.df.iloc[1]["from_node_type"] == "Pump"
+ assert edge.df.iloc[1]["from_node_id"] == 3
__assert_equal(table.df, table_loaded.df)
+ __assert_equal(edge.df, edge_loaded.df)
-@pytest.mark.xfail(reason="Needs Model read implementation")
def test_roundtrip(trivial, tmp_path):
model1 = trivial
+ # set custom Edge index
+ model1.edge.df.index = [15, 12]
model1dir = tmp_path / "model1"
model2dir = tmp_path / "model2"
# read a model and then write it to a different path
model1.write(model1dir / "ribasim.toml")
- model2 = ribasim.Model(filepath=model1dir / "ribasim.toml")
+ model2 = Model.read(model1dir / "ribasim.toml")
model2.write(model2dir / "ribasim.toml")
assert (model1dir / "database.gpkg").is_file()
@@ -138,9 +145,25 @@ def test_roundtrip(trivial, tmp_path):
model2dir / "ribasim.toml"
).read_text()
+ # check if custom Edge indexes are retained (sorted)
+ assert (model1.edge.df.index == [12, 15]).all()
+ assert (model2.edge.df.index == [12, 15]).all()
+
# check if all tables are the same
- __assert_equal(model1.network.node.df, model2.network.node.df, is_network=True)
- __assert_equal(model1.network.edge.df, model2.network.edge.df, is_network=True)
- for node1, node2 in zip(model1.nodes().values(), model2.nodes().values()):
- for table1, table2 in zip(node1.tables(), node2.tables()):
+ __assert_equal(model1.node_table().df, model2.node_table().df)
+ __assert_equal(model1.edge.df, model2.edge.df)
+ for node1, node2 in zip(model1._nodes(), model2._nodes()):
+ for table1, table2 in zip(node1._tables(), node2._tables()):
__assert_equal(table1.df, table2.df)
+
+
+def test_datetime_timezone():
+ # Due to a pydantic issue, a time zone was added.
+ # https://github.com/Deltares/Ribasim/issues/1282
+ model = ribasim.Model(
+ starttime="2000-01-01", endtime="2001-01-01 00:00:00", crs="EPSG:28992"
+ )
+ assert isinstance(model.starttime, datetime)
+ assert isinstance(model.endtime, datetime)
+ assert model.starttime.tzinfo is None
+ assert model.endtime.tzinfo is None
diff --git a/python/ribasim/tests/test_model.py b/python/ribasim/tests/test_model.py
index 796030925..c64ba479a 100644
--- a/python/ribasim/tests/test_model.py
+++ b/python/ribasim/tests/test_model.py
@@ -4,8 +4,12 @@
import numpy as np
import pandas as pd
import pytest
+import xugrid
from pydantic import ValidationError
+from pyproj import CRS
+from ribasim import Node
from ribasim.config import Solver
+from ribasim.geometry.edge import NodeData
from ribasim.input_base import esc_id
from ribasim.model import Model
from shapely import Point
@@ -62,24 +66,12 @@ def test_exclude_unset(basic):
assert d["solver"]["saveat"] == 86400.0
-@pytest.mark.xfail(reason="Needs implementation")
-def test_invalid_node_id(basic):
- model = basic
-
- # Add entry with invalid node ID
- df = model.pump.static.df._append(
- {"flow_rate": 1, "node_id": -1, "active": True},
- ignore_index=True,
- )
- # Currently can't handle mixed NaN and None in a DataFrame
- df = df.where(pd.notna(df), None)
- model.pump.static.df = df
-
+def test_invalid_node_id():
with pytest.raises(
ValueError,
- match=re.escape("Node IDs must be non-negative integers, got [-1]."),
+ match=r".* Input should be greater than or equal to 0 .*",
):
- model.validate_model_node_field_ids()
+ Node(-1, Point(7.0, 7.0))
@pytest.mark.xfail(reason="Should be reimplemented by the .add() API.")
@@ -134,9 +126,11 @@ def test_node_ids_unsequential(basic):
def test_tabulated_rating_curve_model(tabulated_rating_curve, tmp_path):
model_orig = tabulated_rating_curve
+ model_orig.set_crs(model_orig.crs)
basin_area = tabulated_rating_curve.basin.area.df
assert basin_area is not None
assert basin_area.geometry.geom_type.iloc[0] == "Polygon"
+ assert basin_area.crs == CRS.from_epsg(28992)
model_orig.write(tmp_path / "tabulated_rating_curve/ribasim.toml")
model_new = Model.read(tmp_path / "tabulated_rating_curve/ribasim.toml")
pd.testing.assert_series_equal(
@@ -157,8 +151,8 @@ def test_write_adds_fid_in_tables(basic, tmp_path):
# for edge no index was provided, but it still needs to write it to file
nrow = len(model_orig.edge.df)
- assert model_orig.edge.df.index.name is None
- assert model_orig.edge.df.index.equals(pd.Index(np.full(nrow, 0)))
+ assert model_orig.edge.df.index.name == "fid"
+ assert model_orig.edge.df.index.equals(pd.RangeIndex(nrow))
model_orig.write(tmp_path / "basic/ribasim.toml")
with connect(tmp_path / "basic/database.gpkg") as connection:
@@ -173,3 +167,85 @@ def test_write_adds_fid_in_tables(basic, tmp_path):
query = "select fid from Edge"
df = pd.read_sql_query(query, connection)
assert "fid" in df.columns
+
+
+def test_node_table(basic):
+ model = basic
+ node = model.node_table()
+ df = node.df
+ assert df.geometry.is_unique
+ assert df.node_id.dtype == np.int32
+ assert df.subnetwork_id.dtype == pd.Int32Dtype()
+ assert df.node_type.iloc[0] == "Basin"
+ assert df.node_type.iloc[-1] == "Terminal"
+ assert df.crs == CRS.from_epsg(28992)
+
+
+def test_edge_table(basic):
+ model = basic
+ df = model.edge.df
+ assert df.geometry.is_unique
+ assert df.from_node_id.dtype == np.int32
+ assert df.subnetwork_id.dtype == pd.Int32Dtype()
+ assert df.crs == CRS.from_epsg(28992)
+
+
+def test_indexing(basic):
+ model = basic
+
+ result = model.basin[1]
+ assert isinstance(result, NodeData)
+
+ # Also test with a numpy type
+ result = model.basin[np.int32(1)]
+ assert isinstance(result, NodeData)
+
+ with pytest.raises(TypeError, match="Basin index must be an integer, not list"):
+ model.basin[[1, 3, 6]]
+
+ result = model.basin.static[1]
+ assert isinstance(result, pd.DataFrame)
+
+ result = model.basin.static[[1, 3, 6]]
+ assert isinstance(result, pd.DataFrame)
+
+ with pytest.raises(
+ IndexError, match=re.escape("Basin / static does not contain node_id: [2]")
+ ):
+ model.basin.static[2]
+
+ with pytest.raises(
+ ValueError,
+ match=re.escape("Cannot index into Basin / time: it contains no data."),
+ ):
+ model.basin.time[1]
+
+
+def test_xugrid(basic, tmp_path):
+ uds = basic.to_xugrid(add_results=False)
+ assert isinstance(uds, xugrid.UgridDataset)
+ assert uds.grid.edge_dimension == "ribasim_nEdges"
+ assert uds.grid.node_dimension == "ribasim_nNodes"
+ assert uds.grid.crs == CRS.from_epsg(28992)
+ assert uds.node_id.dtype == np.int32
+ uds.ugrid.to_netcdf(tmp_path / "ribasim.nc")
+ uds = xugrid.open_dataset(tmp_path / "ribasim.nc")
+ assert uds.attrs["Conventions"] == "CF-1.9 UGRID-1.0"
+
+ with pytest.raises(FileNotFoundError, match="Model must be written to disk"):
+ basic.to_xugrid(add_results=True)
+
+ basic.write(tmp_path / "ribasim.toml")
+ with pytest.raises(FileNotFoundError, match="Cannot find results"):
+ basic.to_xugrid(add_results=True)
+
+
+def test_to_crs(bucket: Model):
+ model = bucket
+
+ # Reproject to World Geodetic System 1984
+ model.to_crs("EPSG:4326")
+
+ # Assert that the bucket is still at Deltares' headquarter
+ assert model.basin.node.df["geometry"].iloc[0].x == pytest.approx(4.38, abs=0.1)
+ assert model.basin.node.df["geometry"].iloc[0].y == pytest.approx(51.98, abs=0.1)
diff --git a/python/ribasim_api/ribasim_api/__init__.py b/python/ribasim_api/ribasim_api/__init__.py
index a8d68a239..7b7f04fa8 100644
--- a/python/ribasim_api/ribasim_api/__init__.py
+++ b/python/ribasim_api/ribasim_api/__init__.py
@@ -1,4 +1,4 @@
-__version__ = "2024.4.0"
+__version__ = "2024.7.0"
from ribasim_api.ribasim_api import RibasimApi
diff --git a/python/ribasim_api/ribasim_api/ribasim_api.py b/python/ribasim_api/ribasim_api/ribasim_api.py
index 341f1e7c4..74544e6f9 100644
--- a/python/ribasim_api/ribasim_api/ribasim_api.py
+++ b/python/ribasim_api/ribasim_api/ribasim_api.py
@@ -30,3 +30,6 @@ def shutdown_julia(self) -> None:
def update_subgrid_level(self) -> None:
self.lib.update_subgrid_level()
+
+ def execute(self, config_file: str) -> None:
+ self._execute_function(self.lib.execute, config_file.encode())
diff --git a/python/ribasim_api/tests/conftest.py b/python/ribasim_api/tests/conftest.py
index b69fe8167..7c57ed6bc 100644
--- a/python/ribasim_api/tests/conftest.py
+++ b/python/ribasim_api/tests/conftest.py
@@ -12,7 +12,7 @@ def libribasim_paths() -> tuple[Path, Path]:
repo_root = Path(__file__).parents[3].resolve()
lib_or_bin = "bin" if platform.system() == "Windows" else "lib"
extension = ".dll" if platform.system() == "Windows" else ".so"
- lib_folder = repo_root / "build" / "libribasim" / lib_or_bin
+ lib_folder = repo_root / "build" / "ribasim" / lib_or_bin
lib_path = lib_folder / f"libribasim{extension}"
return lib_path, lib_folder
diff --git a/python/ribasim_api/tests/test_bmi.py b/python/ribasim_api/tests/test_bmi.py
index 101bf7ed5..be1c9e340 100644
--- a/python/ribasim_api/tests/test_bmi.py
+++ b/python/ribasim_api/tests/test_bmi.py
@@ -132,3 +132,9 @@ def test_get_version(libribasim):
config = tomli.load(fp)
assert libribasim.get_version() == config["version"]
+
+
+def test_execute(libribasim, basic, tmp_path):
+ basic.write(tmp_path / "ribasim.toml")
+ config_file = str(tmp_path / "ribasim.toml")
+ libribasim.execute(config_file)
diff --git a/python/ribasim_testmodels/ribasim_testmodels/__init__.py b/python/ribasim_testmodels/ribasim_testmodels/__init__.py
index 43e3575be..7e2b483da 100644
--- a/python/ribasim_testmodels/ribasim_testmodels/__init__.py
+++ b/python/ribasim_testmodels/ribasim_testmodels/__init__.py
@@ -7,12 +7,15 @@
import ribasim_testmodels
from ribasim_testmodels.allocation import (
allocation_example_model,
+ flow_demand_model,
fractional_flow_subnetwork_model,
level_demand_model,
+ linear_resistance_demand_model,
looped_subnetwork_model,
main_network_with_subnetworks_model,
minimal_subnetwork_model,
subnetwork_model,
+ subnetworks_with_sources_model,
user_demand_model,
)
from ribasim_testmodels.backwater import backwater_model
@@ -25,13 +28,14 @@
)
from ribasim_testmodels.bucket import bucket_model, leaky_bucket_model
from ribasim_testmodels.discrete_control import (
+ compound_variable_condition_model,
flow_condition_model,
level_boundary_condition_model,
- level_setpoint_with_minmax_model,
+ level_range_model,
pump_discrete_control_model,
tabulated_rating_curve_control_model,
)
-from ribasim_testmodels.dutch_waterways import dutch_waterways_model
+from ribasim_testmodels.doc_example import local_pidcontrolled_cascade_model
from ribasim_testmodels.equations import (
linear_resistance_model,
manning_resistance_model,
@@ -60,10 +64,11 @@
"basic_model",
"basic_transient_model",
"bucket_model",
+ "compound_variable_condition_model",
"discrete_control_of_pid_control_model",
- "dutch_waterways_model",
"flow_boundary_time_model",
"flow_condition_model",
+ "flow_demand_model",
"fractional_flow_subnetwork_model",
"invalid_discrete_control_model",
"invalid_edge_types_model",
@@ -72,8 +77,10 @@
"leaky_bucket_model",
"level_boundary_condition_model",
"level_demand_model",
- "level_setpoint_with_minmax_model",
+ "level_range_model",
+ "linear_resistance_demand_model",
"linear_resistance_model",
+ "local_pidcontrolled_cascade_model",
"looped_subnetwork_model",
"main_network_with_subnetworks_model",
"manning_resistance_model",
@@ -85,6 +92,7 @@
"pump_discrete_control_model",
"rating_curve_model",
"subnetwork_model",
+ "subnetworks_with_sources_model",
"tabulated_rating_curve_control_model",
"tabulated_rating_curve_model",
"trivial_model",
diff --git a/python/ribasim_testmodels/ribasim_testmodels/allocation.py b/python/ribasim_testmodels/ribasim_testmodels/allocation.py
index f86cc51bd..746f8dd4b 100644
--- a/python/ribasim_testmodels/ribasim_testmodels/allocation.py
+++ b/python/ribasim_testmodels/ribasim_testmodels/allocation.py
@@ -9,7 +9,9 @@
basin,
discrete_control,
flow_boundary,
+ flow_demand,
fractional_flow,
+ level_boundary,
level_demand,
linear_resistance,
outlet,
@@ -26,6 +28,7 @@ def user_demand_model() -> Model:
model = Model(
starttime="2020-01-01",
endtime="2021-01-01",
+ crs="EPSG:28992",
solver=Solver(algorithm="Tsit5"),
)
@@ -60,10 +63,10 @@ def user_demand_model() -> Model:
)
model.terminal.add(Node(4, Point(2, 0)))
- model.edge.add(model.basin[1], model.user_demand[2], "flow")
- model.edge.add(model.basin[1], model.user_demand[3], "flow")
- model.edge.add(model.user_demand[2], model.terminal[4], "flow")
- model.edge.add(model.user_demand[3], model.terminal[4], "flow")
+ model.edge.add(model.basin[1], model.user_demand[2])
+ model.edge.add(model.basin[1], model.user_demand[3])
+ model.edge.add(model.user_demand[2], model.terminal[4])
+ model.edge.add(model.user_demand[3], model.terminal[4])
return model
@@ -76,6 +79,7 @@ def subnetwork_model() -> Model:
model = Model(
starttime="2020-01-01",
endtime="2020-04-01",
+ crs="EPSG:28992",
allocation=Allocation(use_allocation=True, timestep=86400),
)
@@ -119,7 +123,7 @@ def subnetwork_model() -> Model:
Node(11, Point(3, 3), subnetwork_id=2),
[
user_demand.Static(
- demand=[5.0], return_factor=0.9, min_level=0.9, priority=1
+ demand=[5.0], return_factor=0.5, min_level=0.9, priority=1
)
],
)
@@ -133,21 +137,21 @@ def subnetwork_model() -> Model:
)
model.outlet.add(Node(13, Point(2, 4), subnetwork_id=2), outlet_data)
- model.edge.add(model.flow_boundary[1], model.basin[2], "flow", subnetwork_id=2)
- model.edge.add(model.basin[2], model.outlet[3], "flow")
- model.edge.add(model.outlet[3], model.terminal[4], "flow")
- model.edge.add(model.basin[2], model.user_demand[10], "flow")
- model.edge.add(model.basin[2], model.pump[5], "flow")
- model.edge.add(model.pump[5], model.basin[6], "flow")
- model.edge.add(model.basin[6], model.outlet[7], "flow")
- model.edge.add(model.outlet[7], model.basin[8], "flow")
- model.edge.add(model.basin[6], model.user_demand[11], "flow")
- model.edge.add(model.basin[8], model.user_demand[12], "flow")
- model.edge.add(model.basin[6], model.outlet[13], "flow")
- model.edge.add(model.outlet[13], model.terminal[9], "flow")
- model.edge.add(model.user_demand[10], model.basin[2], "flow")
- model.edge.add(model.user_demand[11], model.basin[6], "flow")
- model.edge.add(model.user_demand[12], model.basin[8], "flow")
+ model.edge.add(model.flow_boundary[1], model.basin[2], subnetwork_id=2)
+ model.edge.add(model.basin[2], model.outlet[3])
+ model.edge.add(model.outlet[3], model.terminal[4])
+ model.edge.add(model.basin[2], model.user_demand[10])
+ model.edge.add(model.basin[2], model.pump[5])
+ model.edge.add(model.pump[5], model.basin[6])
+ model.edge.add(model.basin[6], model.outlet[7])
+ model.edge.add(model.outlet[7], model.basin[8])
+ model.edge.add(model.basin[6], model.user_demand[11])
+ model.edge.add(model.basin[8], model.user_demand[12])
+ model.edge.add(model.basin[6], model.outlet[13])
+ model.edge.add(model.outlet[13], model.terminal[9])
+ model.edge.add(model.user_demand[10], model.basin[2])
+ model.edge.add(model.user_demand[11], model.basin[6])
+ model.edge.add(model.user_demand[12], model.basin[8])
return model
@@ -160,6 +164,7 @@ def looped_subnetwork_model() -> Model:
model = Model(
starttime="2020-01-01",
endtime="2021-01-01",
+ crs="EPSG:28992",
allocation=Allocation(use_allocation=True, timestep=86400),
)
@@ -247,35 +252,35 @@ def looped_subnetwork_model() -> Model:
],
)
- model.edge.add(model.flow_boundary[5], model.basin[2], "flow", subnetwork_id=2)
- model.edge.add(model.basin[2], model.outlet[3], "flow")
- model.edge.add(model.outlet[3], model.terminal[4], "flow")
- model.edge.add(model.basin[2], model.user_demand[1], "flow")
- model.edge.add(model.basin[2], model.pump[6], "flow")
- model.edge.add(model.pump[6], model.basin[9], "flow")
- model.edge.add(model.basin[9], model.outlet[8], "flow")
- model.edge.add(model.outlet[8], model.basin[7], "flow")
- model.edge.add(model.basin[7], model.user_demand[12], "flow")
- model.edge.add(model.basin[9], model.tabulated_rating_curve[13], "flow")
- model.edge.add(model.tabulated_rating_curve[13], model.basin[15], "flow")
- model.edge.add(model.basin[15], model.pump[16], "flow")
- model.edge.add(model.pump[16], model.basin[17], "flow")
- model.edge.add(model.basin[17], model.user_demand[20], "flow")
- model.edge.add(model.basin[15], model.tabulated_rating_curve[19], "flow")
- model.edge.add(model.tabulated_rating_curve[19], model.basin[21], "flow")
- model.edge.add(model.basin[15], model.user_demand[18], "flow")
- model.edge.add(model.user_demand[18], model.basin[21], "flow")
- model.edge.add(model.basin[21], model.outlet[22], "flow")
- model.edge.add(model.outlet[22], model.terminal[23], "flow")
- model.edge.add(model.basin[9], model.outlet[10], "flow")
- model.edge.add(model.outlet[10], model.basin[11], "flow")
- model.edge.add(model.basin[11], model.tabulated_rating_curve[14], "flow")
- model.edge.add(model.tabulated_rating_curve[14], model.basin[17], "flow")
- model.edge.add(model.user_demand[1], model.basin[2], "flow")
- model.edge.add(model.user_demand[12], model.basin[7], "flow")
- model.edge.add(model.user_demand[20], model.basin[17], "flow")
- model.edge.add(model.basin[11], model.user_demand[24], "flow")
- model.edge.add(model.user_demand[24], model.basin[11], "flow")
+ model.edge.add(model.flow_boundary[5], model.basin[2], subnetwork_id=2)
+ model.edge.add(model.basin[2], model.outlet[3])
+ model.edge.add(model.outlet[3], model.terminal[4])
+ model.edge.add(model.basin[2], model.user_demand[1])
+ model.edge.add(model.basin[2], model.pump[6])
+ model.edge.add(model.pump[6], model.basin[9])
+ model.edge.add(model.basin[9], model.outlet[8])
+ model.edge.add(model.outlet[8], model.basin[7])
+ model.edge.add(model.basin[7], model.user_demand[12])
+ model.edge.add(model.basin[9], model.tabulated_rating_curve[13])
+ model.edge.add(model.tabulated_rating_curve[13], model.basin[15])
+ model.edge.add(model.basin[15], model.pump[16])
+ model.edge.add(model.pump[16], model.basin[17])
+ model.edge.add(model.basin[17], model.user_demand[20])
+ model.edge.add(model.basin[15], model.tabulated_rating_curve[19])
+ model.edge.add(model.tabulated_rating_curve[19], model.basin[21])
+ model.edge.add(model.basin[15], model.user_demand[18])
+ model.edge.add(model.user_demand[18], model.basin[21])
+ model.edge.add(model.basin[21], model.outlet[22])
+ model.edge.add(model.outlet[22], model.terminal[23])
+ model.edge.add(model.basin[9], model.outlet[10])
+ model.edge.add(model.outlet[10], model.basin[11])
+ model.edge.add(model.basin[11], model.tabulated_rating_curve[14])
+ model.edge.add(model.tabulated_rating_curve[14], model.basin[17])
+ model.edge.add(model.user_demand[1], model.basin[2])
+ model.edge.add(model.user_demand[12], model.basin[7])
+ model.edge.add(model.user_demand[20], model.basin[17])
+ model.edge.add(model.basin[11], model.user_demand[24])
+ model.edge.add(model.user_demand[24], model.basin[11])
return model
@@ -286,6 +291,7 @@ def minimal_subnetwork_model() -> Model:
model = Model(
starttime="2020-01-01",
endtime="2021-01-01",
+ crs="EPSG:28992",
allocation=Allocation(use_allocation=True, timestep=86400),
)
@@ -325,13 +331,13 @@ def minimal_subnetwork_model() -> Model:
],
)
- model.edge.add(model.flow_boundary[1], model.basin[2], "flow", subnetwork_id=2)
- model.edge.add(model.basin[2], model.pump[3], "flow")
- model.edge.add(model.pump[3], model.basin[4], "flow")
- model.edge.add(model.basin[4], model.user_demand[5], "flow")
- model.edge.add(model.basin[4], model.user_demand[6], "flow")
- model.edge.add(model.user_demand[5], model.basin[4], "flow")
- model.edge.add(model.user_demand[6], model.basin[4], "flow")
+ model.edge.add(model.flow_boundary[1], model.basin[2], subnetwork_id=2)
+ model.edge.add(model.basin[2], model.pump[3])
+ model.edge.add(model.pump[3], model.basin[4])
+ model.edge.add(model.basin[4], model.user_demand[5])
+ model.edge.add(model.basin[4], model.user_demand[6])
+ model.edge.add(model.user_demand[5], model.basin[4])
+ model.edge.add(model.user_demand[6], model.basin[4])
return model
@@ -344,6 +350,7 @@ def fractional_flow_subnetwork_model() -> Model:
model = Model(
starttime="2020-01-01",
endtime="2021-01-01",
+ crs="EPSG:28992",
allocation=Allocation(use_allocation=True, timestep=86400),
)
@@ -399,28 +406,32 @@ def fractional_flow_subnetwork_model() -> Model:
model.discrete_control.add(
Node(10, Point(-1, 2), subnetwork_id=2),
[
- discrete_control.Condition(
+ discrete_control.Variable(
listen_node_type="FlowBoundary",
listen_node_id=[1],
variable="flow_rate",
- greater_than=3e-3,
+ compound_variable_id=1,
+ ),
+ discrete_control.Condition(
+ greater_than=[3e-3],
+ compound_variable_id=1,
),
discrete_control.Logic(truth_state=["F", "T"], control_state=["A", "B"]),
],
)
- model.edge.add(model.flow_boundary[1], model.basin[2], "flow", subnetwork_id=2)
- model.edge.add(model.basin[2], model.tabulated_rating_curve[3], "flow")
- model.edge.add(model.tabulated_rating_curve[3], model.fractional_flow[4], "flow")
- model.edge.add(model.fractional_flow[4], model.basin[5], "flow")
- model.edge.add(model.basin[5], model.user_demand[6], "flow")
- model.edge.add(model.user_demand[6], model.basin[5], "flow")
- model.edge.add(model.tabulated_rating_curve[3], model.fractional_flow[7], "flow")
- model.edge.add(model.fractional_flow[7], model.basin[8], "flow")
- model.edge.add(model.basin[8], model.user_demand[9], "flow")
- model.edge.add(model.user_demand[9], model.basin[8], "flow")
- model.edge.add(model.discrete_control[10], model.fractional_flow[4], "control")
- model.edge.add(model.discrete_control[10], model.fractional_flow[7], "control")
+ model.edge.add(model.flow_boundary[1], model.basin[2], subnetwork_id=2)
+ model.edge.add(model.basin[2], model.tabulated_rating_curve[3])
+ model.edge.add(model.tabulated_rating_curve[3], model.fractional_flow[4])
+ model.edge.add(model.fractional_flow[4], model.basin[5])
+ model.edge.add(model.basin[5], model.user_demand[6])
+ model.edge.add(model.user_demand[6], model.basin[5])
+ model.edge.add(model.tabulated_rating_curve[3], model.fractional_flow[7])
+ model.edge.add(model.fractional_flow[7], model.basin[8])
+ model.edge.add(model.basin[8], model.user_demand[9])
+ model.edge.add(model.user_demand[9], model.basin[8])
+ model.edge.add(model.discrete_control[10], model.fractional_flow[4])
+ model.edge.add(model.discrete_control[10], model.fractional_flow[7])
return model
@@ -431,6 +442,7 @@ def allocation_example_model() -> Model:
model = Model(
starttime="2020-01-01",
endtime="2020-01-20",
+ crs="EPSG:28992",
allocation=Allocation(use_allocation=True, timestep=86400),
)
@@ -492,11 +504,15 @@ def allocation_example_model() -> Model:
model.discrete_control.add(
Node(11, Point(4.5, 0.25), subnetwork_id=2),
[
- discrete_control.Condition(
+ discrete_control.Variable(
listen_node_type="Basin",
listen_node_id=[5],
variable="level",
- greater_than=0.52,
+ compound_variable_id=1,
+ ),
+ discrete_control.Condition(
+ greater_than=[0.52],
+ compound_variable_id=1,
),
discrete_control.Logic(
truth_state=["T", "F"], control_state=["divert", "close"]
@@ -517,22 +533,22 @@ def allocation_example_model() -> Model:
],
)
- model.edge.add(model.flow_boundary[1], model.basin[2], "flow", subnetwork_id=2)
- model.edge.add(model.basin[2], model.user_demand[3], "flow")
- model.edge.add(model.basin[2], model.linear_resistance[4], "flow")
- model.edge.add(model.linear_resistance[4], model.basin[5], "flow")
- model.edge.add(model.basin[5], model.user_demand[6], "flow")
- model.edge.add(model.basin[5], model.tabulated_rating_curve[7], "flow")
- model.edge.add(model.tabulated_rating_curve[7], model.fractional_flow[8], "flow")
- model.edge.add(model.user_demand[3], model.basin[2], "flow")
- model.edge.add(model.user_demand[6], model.basin[5], "flow")
- model.edge.add(model.tabulated_rating_curve[7], model.fractional_flow[9], "flow")
- model.edge.add(model.fractional_flow[8], model.terminal[10], "flow")
- model.edge.add(model.fractional_flow[9], model.basin[12], "flow")
- model.edge.add(model.basin[12], model.user_demand[13], "flow")
- model.edge.add(model.user_demand[13], model.terminal[10], "flow")
- model.edge.add(model.discrete_control[11], model.fractional_flow[8], "control")
- model.edge.add(model.discrete_control[11], model.fractional_flow[9], "control")
+ model.edge.add(model.flow_boundary[1], model.basin[2], subnetwork_id=2)
+ model.edge.add(model.basin[2], model.user_demand[3])
+ model.edge.add(model.basin[2], model.linear_resistance[4])
+ model.edge.add(model.linear_resistance[4], model.basin[5])
+ model.edge.add(model.basin[5], model.user_demand[6])
+ model.edge.add(model.basin[5], model.tabulated_rating_curve[7])
+ model.edge.add(model.tabulated_rating_curve[7], model.fractional_flow[8])
+ model.edge.add(model.user_demand[3], model.basin[2])
+ model.edge.add(model.user_demand[6], model.basin[5])
+ model.edge.add(model.tabulated_rating_curve[7], model.fractional_flow[9])
+ model.edge.add(model.fractional_flow[8], model.terminal[10])
+ model.edge.add(model.fractional_flow[9], model.basin[12])
+ model.edge.add(model.basin[12], model.user_demand[13])
+ model.edge.add(model.user_demand[13], model.terminal[10])
+ model.edge.add(model.discrete_control[11], model.fractional_flow[8])
+ model.edge.add(model.discrete_control[11], model.fractional_flow[9])
return model
@@ -543,6 +559,7 @@ def main_network_with_subnetworks_model() -> Model:
model = Model(
starttime="2020-01-01",
endtime="2020-03-01",
+ crs="EPSG:28992",
allocation=Allocation(use_allocation=True, timestep=86400),
)
@@ -581,7 +598,7 @@ def main_network_with_subnetworks_model() -> Model:
model.basin.add(Node(10, Point(27, 1), subnetwork_id=1), basin_data)
model.pump.add(
Node(11, Point(3, 4), subnetwork_id=3),
- [pump.Static(flow_rate=[1e-3], max_flow_rate=1.0)],
+ [pump.Static(flow_rate=[1e-3], max_flow_rate=10.0)],
)
model.basin.add(Node(12, Point(2, 4), subnetwork_id=3), large_basin_data)
model.outlet.add(
@@ -670,11 +687,15 @@ def main_network_with_subnetworks_model() -> Model:
model.discrete_control.add(
Node(33, Point(13, 5), subnetwork_id=5),
[
- discrete_control.Condition(
+ discrete_control.Variable(
listen_node_type="Basin",
listen_node_id=[25],
variable="level",
- greater_than=0.003,
+ compound_variable_id=1,
+ ),
+ discrete_control.Condition(
+ greater_than=[0.003],
+ compound_variable_id=1,
),
discrete_control.Logic(truth_state=["F", "T"], control_state=["A", "B"]),
],
@@ -769,82 +790,105 @@ def main_network_with_subnetworks_model() -> Model:
],
)
- model.edge.add(model.flow_boundary[1], model.basin[2], "flow", subnetwork_id=1)
- model.edge.add(model.basin[2], model.linear_resistance[3], "flow")
- model.edge.add(model.linear_resistance[3], model.basin[4], "flow")
- model.edge.add(model.basin[4], model.linear_resistance[5], "flow")
- model.edge.add(model.linear_resistance[5], model.basin[6], "flow")
- model.edge.add(model.basin[6], model.linear_resistance[7], "flow")
- model.edge.add(model.linear_resistance[7], model.basin[8], "flow")
- model.edge.add(model.basin[8], model.linear_resistance[9], "flow")
- model.edge.add(model.linear_resistance[9], model.basin[10], "flow")
- model.edge.add(model.pump[11], model.basin[12], "flow")
- model.edge.add(model.basin[12], model.outlet[13], "flow")
- model.edge.add(model.outlet[13], model.terminal[14], "flow")
- model.edge.add(model.basin[12], model.user_demand[20], "flow")
- model.edge.add(model.basin[12], model.pump[15], "flow")
- model.edge.add(model.pump[15], model.basin[16], "flow")
- model.edge.add(model.basin[16], model.outlet[17], "flow")
- model.edge.add(model.outlet[17], model.basin[18], "flow")
- model.edge.add(model.basin[16], model.user_demand[21], "flow")
- model.edge.add(model.basin[18], model.user_demand[22], "flow")
- model.edge.add(model.basin[16], model.outlet[23], "flow")
- model.edge.add(model.outlet[23], model.terminal[19], "flow")
- model.edge.add(model.user_demand[20], model.basin[12], "flow")
- model.edge.add(model.user_demand[21], model.basin[16], "flow")
- model.edge.add(model.user_demand[22], model.basin[18], "flow")
- model.edge.add(model.pump[24], model.basin[25], "flow")
- model.edge.add(model.basin[25], model.tabulated_rating_curve[26], "flow")
- model.edge.add(model.tabulated_rating_curve[26], model.fractional_flow[27], "flow")
- model.edge.add(model.fractional_flow[27], model.basin[28], "flow")
- model.edge.add(model.basin[28], model.user_demand[29], "flow")
- model.edge.add(model.user_demand[29], model.basin[28], "flow")
- model.edge.add(model.tabulated_rating_curve[26], model.fractional_flow[30], "flow")
- model.edge.add(model.fractional_flow[30], model.basin[31], "flow")
- model.edge.add(model.basin[31], model.user_demand[32], "flow")
- model.edge.add(model.user_demand[32], model.basin[31], "flow")
- model.edge.add(model.discrete_control[33], model.fractional_flow[27], "control")
- model.edge.add(model.discrete_control[33], model.fractional_flow[30], "control")
- model.edge.add(model.pump[38], model.basin[35], "flow")
- model.edge.add(model.basin[35], model.outlet[36], "flow")
- model.edge.add(model.outlet[36], model.terminal[37], "flow")
- model.edge.add(model.basin[35], model.user_demand[34], "flow")
- model.edge.add(model.basin[35], model.pump[39], "flow")
- model.edge.add(model.pump[39], model.basin[42], "flow")
- model.edge.add(model.basin[42], model.outlet[41], "flow")
- model.edge.add(model.outlet[41], model.basin[40], "flow")
- model.edge.add(model.basin[40], model.user_demand[45], "flow")
- model.edge.add(model.basin[42], model.tabulated_rating_curve[46], "flow")
- model.edge.add(model.tabulated_rating_curve[46], model.basin[48], "flow")
- model.edge.add(model.basin[48], model.pump[49], "flow")
- model.edge.add(model.pump[49], model.basin[50], "flow")
- model.edge.add(model.basin[50], model.user_demand[53], "flow")
- model.edge.add(model.basin[48], model.tabulated_rating_curve[52], "flow")
- model.edge.add(model.tabulated_rating_curve[52], model.basin[54], "flow")
- model.edge.add(model.basin[48], model.user_demand[51], "flow")
- model.edge.add(model.user_demand[51], model.basin[54], "flow")
- model.edge.add(model.basin[54], model.outlet[55], "flow")
- model.edge.add(model.outlet[55], model.terminal[56], "flow")
- model.edge.add(model.basin[42], model.outlet[43], "flow")
- model.edge.add(model.outlet[43], model.basin[44], "flow")
- model.edge.add(model.basin[44], model.tabulated_rating_curve[47], "flow")
- model.edge.add(model.tabulated_rating_curve[47], model.basin[50], "flow")
- model.edge.add(model.user_demand[34], model.basin[35], "flow")
- model.edge.add(model.user_demand[45], model.basin[40], "flow")
- model.edge.add(model.user_demand[53], model.basin[50], "flow")
- model.edge.add(model.basin[44], model.user_demand[57], "flow")
- model.edge.add(model.user_demand[57], model.basin[44], "flow")
- model.edge.add(model.basin[2], model.pump[11], "flow", subnetwork_id=3)
- model.edge.add(model.basin[6], model.pump[24], "flow", subnetwork_id=5)
- model.edge.add(model.basin[10], model.pump[38], "flow", subnetwork_id=7)
+ model.edge.add(model.flow_boundary[1], model.basin[2], subnetwork_id=1)
+ model.edge.add(model.basin[2], model.linear_resistance[3])
+ model.edge.add(model.linear_resistance[3], model.basin[4])
+ model.edge.add(model.basin[4], model.linear_resistance[5])
+ model.edge.add(model.linear_resistance[5], model.basin[6])
+ model.edge.add(model.basin[6], model.linear_resistance[7])
+ model.edge.add(model.linear_resistance[7], model.basin[8])
+ model.edge.add(model.basin[8], model.linear_resistance[9])
+ model.edge.add(model.linear_resistance[9], model.basin[10])
+ model.edge.add(model.pump[11], model.basin[12])
+ model.edge.add(model.basin[12], model.outlet[13])
+ model.edge.add(model.outlet[13], model.terminal[14])
+ model.edge.add(model.basin[12], model.user_demand[20])
+ model.edge.add(model.basin[12], model.pump[15])
+ model.edge.add(model.pump[15], model.basin[16])
+ model.edge.add(model.basin[16], model.outlet[17])
+ model.edge.add(model.outlet[17], model.basin[18])
+ model.edge.add(model.basin[16], model.user_demand[21])
+ model.edge.add(model.basin[18], model.user_demand[22])
+ model.edge.add(model.basin[16], model.outlet[23])
+ model.edge.add(model.outlet[23], model.terminal[19])
+ model.edge.add(model.user_demand[20], model.basin[12])
+ model.edge.add(model.user_demand[21], model.basin[16])
+ model.edge.add(model.user_demand[22], model.basin[18])
+ model.edge.add(model.pump[24], model.basin[25])
+ model.edge.add(model.basin[25], model.tabulated_rating_curve[26])
+ model.edge.add(model.tabulated_rating_curve[26], model.fractional_flow[27])
+ model.edge.add(model.fractional_flow[27], model.basin[28])
+ model.edge.add(model.basin[28], model.user_demand[29])
+ model.edge.add(model.user_demand[29], model.basin[28])
+ model.edge.add(model.tabulated_rating_curve[26], model.fractional_flow[30])
+ model.edge.add(model.fractional_flow[30], model.basin[31])
+ model.edge.add(model.basin[31], model.user_demand[32])
+ model.edge.add(model.user_demand[32], model.basin[31])
+ model.edge.add(model.discrete_control[33], model.fractional_flow[27])
+ model.edge.add(model.discrete_control[33], model.fractional_flow[30])
+ model.edge.add(model.pump[38], model.basin[35])
+ model.edge.add(model.basin[35], model.outlet[36])
+ model.edge.add(model.outlet[36], model.terminal[37])
+ model.edge.add(model.basin[35], model.user_demand[34])
+ model.edge.add(model.basin[35], model.pump[39])
+ model.edge.add(model.pump[39], model.basin[42])
+ model.edge.add(model.basin[42], model.outlet[41])
+ model.edge.add(model.outlet[41], model.basin[40])
+ model.edge.add(model.basin[40], model.user_demand[45])
+ model.edge.add(model.basin[42], model.tabulated_rating_curve[46])
+ model.edge.add(model.tabulated_rating_curve[46], model.basin[48])
+ model.edge.add(model.basin[48], model.pump[49])
+ model.edge.add(model.pump[49], model.basin[50])
+ model.edge.add(model.basin[50], model.user_demand[53])
+ model.edge.add(model.basin[48], model.tabulated_rating_curve[52])
+ model.edge.add(model.tabulated_rating_curve[52], model.basin[54])
+ model.edge.add(model.basin[48], model.user_demand[51])
+ model.edge.add(model.user_demand[51], model.basin[54])
+ model.edge.add(model.basin[54], model.outlet[55])
+ model.edge.add(model.outlet[55], model.terminal[56])
+ model.edge.add(model.basin[42], model.outlet[43])
+ model.edge.add(model.outlet[43], model.basin[44])
+ model.edge.add(model.basin[44], model.tabulated_rating_curve[47])
+ model.edge.add(model.tabulated_rating_curve[47], model.basin[50])
+ model.edge.add(model.user_demand[34], model.basin[35])
+ model.edge.add(model.user_demand[45], model.basin[40])
+ model.edge.add(model.user_demand[53], model.basin[50])
+ model.edge.add(model.basin[44], model.user_demand[57])
+ model.edge.add(model.user_demand[57], model.basin[44])
+ model.edge.add(model.basin[2], model.pump[11], subnetwork_id=3)
+ model.edge.add(model.basin[6], model.pump[24], subnetwork_id=5)
+ model.edge.add(model.basin[10], model.pump[38], subnetwork_id=7)
+
+ return model
+
+
+def subnetworks_with_sources_model() -> Model:
+ """Generate a model with subnetworks which contain sources."""
+
+ model = main_network_with_subnetworks_model()
+
+ model.flow_boundary.add(
+ Node(58, Point(3, 5), subnetwork_id=3),
+ [flow_boundary.Static(flow_rate=[0.003])],
+ )
+ model.flow_boundary.add(
+ Node(59, Point(28, 5), subnetwork_id=7),
+ [flow_boundary.Static(flow_rate=[0.003])],
+ )
+
+ model.edge.add(model.flow_boundary[58], model.basin[16], subnetwork_id=3)
+ model.edge.add(model.flow_boundary[59], model.basin[44], subnetwork_id=7)
return model
def level_demand_model() -> Model:
+ """Small model with LevelDemand nodes."""
+
model = Model(
starttime="2020-01-01",
endtime="2020-02-01",
+ crs="EPSG:28992",
allocation=Allocation(use_allocation=True, timestep=1e5),
)
model.flow_boundary.add(
@@ -878,10 +922,134 @@ def level_demand_model() -> Model:
[basin.Profile(area=1000.0, level=[0.0, 1.0]), basin.State(level=[0.5])],
)
- model.edge.add(model.flow_boundary[1], model.basin[2], "flow", subnetwork_id=2)
- model.edge.add(model.basin[2], model.user_demand[3], "flow")
- model.edge.add(model.level_demand[4], model.basin[2], "control")
- model.edge.add(model.user_demand[3], model.basin[5], "flow")
- model.edge.add(model.level_demand[4], model.basin[5], "control")
+ # Isolated LevelDemand + Basin pair to test optional min_level
+ model.level_demand.add(
+ Node(6, Point(3, -1), subnetwork_id=3),
+ [level_demand.Static(max_level=[1.0], priority=1)],
+ )
+ model.basin.add(
+ Node(7, Point(3, 0), subnetwork_id=3),
+ [basin.Profile(area=1000.0, level=[0.0, 1.0]), basin.State(level=[2.0])],
+ )
+
+ model.edge.add(model.flow_boundary[1], model.basin[2], subnetwork_id=2)
+ model.edge.add(model.basin[2], model.user_demand[3])
+ model.edge.add(model.level_demand[4], model.basin[2])
+ model.edge.add(model.user_demand[3], model.basin[5])
+ model.edge.add(model.level_demand[4], model.basin[5])
+
+ model.edge.add(model.level_demand[6], model.basin[7])
+
+ return model
+
+
+def flow_demand_model() -> Model:
+ """Small model with a FlowDemand."""
+
+ model = Model(
+ starttime="2020-01-01 00:00:00",
+ endtime="2021-01-01 00:00:00",
+ crs="EPSG:28992",
+ allocation=Allocation(use_allocation=True, timestep=1e5),
+ )
+
+ model.tabulated_rating_curve.add(
+ Node(2, Point(1, 0), subnetwork_id=2),
+ [tabulated_rating_curve.Static(level=[0.0, 1.0], flow_rate=[0.0, 2e-3])],
+ )
+
+ model.level_boundary.add(
+ Node(1, Point(0, 0), subnetwork_id=2),
+ [level_boundary.Static(node_id=[1], level=[1.0])],
+ )
+
+ model.basin.add(
+ Node(3, Point(2, 0), subnetwork_id=2),
+ [basin.Profile(area=1e3, level=[0.0, 1.0]), basin.State(level=[1.0])],
+ )
+ model.basin.add(
+ Node(7, Point(3, -1), subnetwork_id=2),
+ [basin.Profile(area=1e3, level=[0.0, 1.0]), basin.State(level=[1.0])],
+ )
+
+ model.user_demand.add(
+ Node(4, Point(3, 0), subnetwork_id=2),
+ [
+ user_demand.Static(
+ priority=[3], demand=1e-3, return_factor=1.0, min_level=0.2
+ )
+ ],
+ )
+ model.user_demand.add(
+ Node(6, Point(2, -1), subnetwork_id=2),
+ [
+ user_demand.Static(
+ priority=[1], demand=1e-3, return_factor=1.0, min_level=0.2
+ )
+ ],
+ )
+ model.user_demand.add(
+ Node(8, Point(3, -2), subnetwork_id=2),
+ [
+ user_demand.Static(
+ priority=[4], demand=2e-3, return_factor=1.0, min_level=0.2
+ )
+ ],
+ )
+
+ model.flow_demand.add(
+ Node(5, Point(1, -1), subnetwork_id=2),
+ [flow_demand.Static(demand=2e-3, priority=[2])],
+ )
+
+ model.edge.add(
+ model.level_boundary[1],
+ model.tabulated_rating_curve[2],
+ subnetwork_id=2,
+ )
+ model.edge.add(model.tabulated_rating_curve[2], model.basin[3])
+ model.edge.add(model.basin[3], model.user_demand[4])
+ model.edge.add(model.user_demand[4], model.basin[7])
+ model.edge.add(model.basin[7], model.user_demand[8])
+ model.edge.add(model.user_demand[8], model.basin[7])
+ model.edge.add(model.basin[3], model.user_demand[6])
+ model.edge.add(model.user_demand[6], model.basin[7])
+ model.edge.add(model.flow_demand[5], model.tabulated_rating_curve[2])
+
+ return model
+
+
+def linear_resistance_demand_model():
+ """Small model with a FlowDemand for a node with a max flow rate."""
+
+ model = Model(
+ starttime="2020-01-01 00:00:00",
+ endtime="2021-01-01 00:00:00",
+ crs="EPSG:28992",
+ allocation=Allocation(use_allocation=True),
+ )
+
+ model.basin.add(
+ Node(1, Point(0, 0), subnetwork_id=2),
+ [basin.Profile(area=1e3, level=[0.0, 1.0]), basin.State(level=[1.0])],
+ )
+ model.basin.add(
+ Node(3, Point(2, 0), subnetwork_id=2),
+ [basin.Profile(area=1e3, level=[0.0, 1.0]), basin.State(level=[1.0])],
+ )
+
+ model.linear_resistance.add(
+ Node(2, Point(0, 1), subnetwork_id=2),
+ [linear_resistance.Static(resistance=1.0, max_flow_rate=[2.0])],
+ )
+
+ model.flow_demand.add(
+ Node(4, Point(1, 1), subnetwork_id=2),
+ [flow_demand.Static(priority=[1], demand=2.0)],
+ )
+
+ model.edge.add(model.basin[1], model.linear_resistance[2], subnetwork_id=1)
+ model.edge.add(model.linear_resistance[2], model.basin[3])
+ model.edge.add(model.flow_demand[4], model.linear_resistance[2])
return model
diff --git a/python/ribasim_testmodels/ribasim_testmodels/backwater.py b/python/ribasim_testmodels/ribasim_testmodels/backwater.py
index 1390d35ea..04b79a550 100644
--- a/python/ribasim_testmodels/ribasim_testmodels/backwater.py
+++ b/python/ribasim_testmodels/ribasim_testmodels/backwater.py
@@ -4,7 +4,6 @@
from ribasim.nodes import (
basin,
flow_boundary,
- level_boundary,
manning_resistance,
)
from shapely.geometry import Point
@@ -18,11 +17,12 @@ def backwater_model():
node_type[0] = "FlowBoundary"
node_type[-1] = "LevelBoundary"
- ids = np.arange(1, node_type.size + 1, dtype=int)
+ ids = np.arange(1, node_type.size + 1, dtype=np.int32)
model = ribasim.Model(
starttime="2020-01-01",
endtime="2021-01-01",
+ crs="EPSG:28992",
)
model.flow_boundary.add(
@@ -55,28 +55,25 @@ def backwater_model():
model.edge.add(
model.flow_boundary[1],
model.basin[2],
- "flow",
)
else:
model.edge.add(
model.manning_resistance[id - 1],
model.basin[id],
- "flow",
)
model.edge.add(
model.basin[id],
model.manning_resistance[id + 1],
- "flow",
)
- model.level_boundary.add(
- Node(102, Point(1010.0, 0.0)), [level_boundary.Static(level=[2.0])]
+ model.basin.add(
+ Node(102, Point(1010.0, 0.0)),
+ [basin.State(level=[2.0]), basin.Profile(level=[0.0, 1.0], area=1e20)],
)
model.edge.add(
model.manning_resistance[101],
- model.level_boundary[102],
- "flow",
+ model.basin[102],
)
return model
diff --git a/python/ribasim_testmodels/ribasim_testmodels/basic.py b/python/ribasim_testmodels/ribasim_testmodels/basic.py
index 0c3c5eb7b..f7d5c45a4 100644
--- a/python/ribasim_testmodels/ribasim_testmodels/basic.py
+++ b/python/ribasim_testmodels/ribasim_testmodels/basic.py
@@ -24,8 +24,9 @@
def basic_model() -> ribasim.Model:
# Setup model
model = ribasim.Model(
- starttime="2020-01-01 00:00:00",
- endtime="2021-01-01 00:00:00",
+ starttime="2020-01-01",
+ endtime="2021-01-01",
+ crs="EPSG:28992",
)
model.logging = ribasim.Logging(verbosity="debug")
@@ -150,62 +151,52 @@ def basic_model() -> ribasim.Model:
model.terminal.add(Node(14, Point(3.0, -2.0)))
# Setup edges
- model.edge.add(model.basin[1], model.manning_resistance[2], "flow")
- model.edge.add(model.manning_resistance[2], model.basin[3], "flow")
+ model.edge.add(model.basin[1], model.manning_resistance[2])
+ model.edge.add(model.manning_resistance[2], model.basin[3])
model.edge.add(
model.basin[3],
model.tabulated_rating_curve[4],
- "flow",
)
model.edge.add(
model.tabulated_rating_curve[4],
model.fractional_flow[5],
- "flow",
)
model.edge.add(
model.tabulated_rating_curve[4],
model.fractional_flow[8],
- "flow",
)
- model.edge.add(model.fractional_flow[5], model.basin[6], "flow")
- model.edge.add(model.basin[6], model.pump[7], "flow")
- model.edge.add(model.fractional_flow[8], model.basin[9], "flow")
- model.edge.add(model.pump[7], model.basin[9], "flow")
- model.edge.add(model.basin[9], model.linear_resistance[10], "flow")
+ model.edge.add(model.fractional_flow[5], model.basin[6])
+ model.edge.add(model.basin[6], model.pump[7])
+ model.edge.add(model.fractional_flow[8], model.basin[9])
+ model.edge.add(model.pump[7], model.basin[9])
+ model.edge.add(model.basin[9], model.linear_resistance[10])
model.edge.add(
model.level_boundary[11],
model.linear_resistance[12],
- "flow",
)
model.edge.add(
model.linear_resistance[12],
model.basin[3],
- "flow",
)
model.edge.add(
model.tabulated_rating_curve[4],
model.fractional_flow[13],
- "flow",
)
model.edge.add(
model.fractional_flow[13],
model.terminal[14],
- "flow",
)
model.edge.add(
model.flow_boundary[15],
model.basin[6],
- "flow",
)
model.edge.add(
model.flow_boundary[16],
model.basin[1],
- "flow",
)
model.edge.add(
model.linear_resistance[10],
model.level_boundary[17],
- "flow",
)
return model
@@ -279,8 +270,9 @@ def tabulated_rating_curve_model() -> ribasim.Model:
# Setup a model:
model = ribasim.Model(
- starttime="2020-01-01 00:00:00",
- endtime="2021-01-01 00:00:00",
+ starttime="2020-01-01",
+ endtime="2021-01-01",
+ crs="EPSG:28992",
)
# Setup tabulated rating curve:
@@ -337,22 +329,18 @@ def tabulated_rating_curve_model() -> ribasim.Model:
model.edge.add(
model.basin[1],
model.tabulated_rating_curve[2],
- "flow",
)
model.edge.add(
model.basin[1],
model.tabulated_rating_curve[3],
- "flow",
)
model.edge.add(
model.tabulated_rating_curve[2],
model.basin[4],
- "flow",
)
model.edge.add(
model.tabulated_rating_curve[3],
model.basin[4],
- "flow",
)
return model
@@ -360,9 +348,9 @@ def tabulated_rating_curve_model() -> ribasim.Model:
def outlet_model():
"""Set up a basic model with an outlet that encounters various physical constraints."""
model = ribasim.Model(
- starttime="2020-01-01 00:00:00",
- endtime="2021-01-01 00:00:00",
- solver=ribasim.Solver(saveat=0),
+ starttime="2020-01-01",
+ endtime="2021-01-01",
+ crs="EPSG:28992",
)
# Set up the basins
@@ -370,7 +358,7 @@ def outlet_model():
Node(3, Point(2.0, 0.0)),
[
basin.Profile(area=[1000.0, 1000.0], level=[0.0, 1.0]),
- basin.State(level=[1e-3]),
+ basin.State(level=[0.0]),
],
)
@@ -396,7 +384,7 @@ def outlet_model():
)
# Setup the edges
- model.edge.add(model.level_boundary[1], model.outlet[2], "flow")
- model.edge.add(model.outlet[2], model.basin[3], "flow")
+ model.edge.add(model.level_boundary[1], model.outlet[2])
+ model.edge.add(model.outlet[2], model.basin[3])
return model
diff --git a/python/ribasim_testmodels/ribasim_testmodels/bucket.py b/python/ribasim_testmodels/ribasim_testmodels/bucket.py
index 248ed3b8f..87fb28e07 100644
--- a/python/ribasim_testmodels/ribasim_testmodels/bucket.py
+++ b/python/ribasim_testmodels/ribasim_testmodels/bucket.py
@@ -9,15 +9,16 @@
def bucket_model() -> ribasim.Model:
- """Bucket model with just a single basin."""
+ """Bucket model with just a single basin at Deltares' headquarter."""
model = ribasim.Model(
starttime="2020-01-01",
endtime="2021-01-01",
+ crs="EPSG:28992",
)
model.basin.add(
- Node(1, Point(400.0, 200.0)),
+ Node(1, Point(85825.6, 444613.9)),
[
basin.Profile(
area=[1000.0, 1000.0],
@@ -37,15 +38,16 @@ def bucket_model() -> ribasim.Model:
def leaky_bucket_model() -> ribasim.Model:
- """Bucket model with dynamic forcing with missings."""
+ """Bucket model with dynamic forcing with missings at Deltares' headquarter."""
model = ribasim.Model(
starttime="2020-01-01",
endtime="2020-01-05",
+ crs="EPSG:28992",
)
model.basin.add(
- Node(1, Point(400.0, 200.0)),
+ Node(1, Point(85825.6, 444613.9)),
[
basin.Profile(
area=[1000.0, 1000.0],
diff --git a/python/ribasim_testmodels/ribasim_testmodels/discrete_control.py b/python/ribasim_testmodels/ribasim_testmodels/discrete_control.py
index 6d05cbfdd..fcdd5b501 100644
--- a/python/ribasim_testmodels/ribasim_testmodels/discrete_control.py
+++ b/python/ribasim_testmodels/ribasim_testmodels/discrete_control.py
@@ -22,6 +22,7 @@ def pump_discrete_control_model() -> Model:
model = Model(
starttime="2020-01-01",
endtime="2021-01-01",
+ crs="EPSG:28992",
)
model.basin.add(
@@ -53,11 +54,15 @@ def pump_discrete_control_model() -> Model:
model.discrete_control.add(
Node(5, Point(1, 1)),
[
- discrete_control.Condition(
+ discrete_control.Variable(
listen_node_type="Basin",
listen_node_id=[1, 3],
variable="level",
+ compound_variable_id=[1, 2],
+ ),
+ discrete_control.Condition(
greater_than=[0.8, 0.4],
+ compound_variable_id=[1, 2],
),
discrete_control.Logic(
truth_state=["FF", "TF", "FT", "TT"],
@@ -68,11 +73,15 @@ def pump_discrete_control_model() -> Model:
model.discrete_control.add(
Node(6, Point(2, -1)),
[
- discrete_control.Condition(
+ discrete_control.Variable(
listen_node_type="Basin",
- listen_node_id=3,
+ listen_node_id=[3],
variable="level",
+ compound_variable_id=1,
+ ),
+ discrete_control.Condition(
greater_than=[0.45],
+ compound_variable_id=1,
),
discrete_control.Logic(
truth_state=["T", "F"],
@@ -84,32 +93,26 @@ def pump_discrete_control_model() -> Model:
model.edge.add(
model.basin[1],
model.linear_resistance[2],
- "flow",
)
model.edge.add(
model.linear_resistance[2],
model.basin[3],
- "flow",
)
model.edge.add(
model.basin[1],
model.pump[4],
- "flow",
)
model.edge.add(
model.pump[4],
model.basin[3],
- "flow",
)
model.edge.add(
model.discrete_control[5],
model.pump[4],
- "control",
)
model.edge.add(
model.discrete_control[6],
model.linear_resistance[2],
- "control",
)
return model
@@ -121,6 +124,7 @@ def flow_condition_model() -> Model:
model = Model(
starttime="2020-01-01",
endtime="2021-01-01",
+ crs="EPSG:28992",
)
model.flow_boundary.add(
@@ -144,12 +148,16 @@ def flow_condition_model() -> Model:
model.discrete_control.add(
Node(5, Point(1, 1)),
[
- discrete_control.Condition(
+ discrete_control.Variable(
listen_node_type="FlowBoundary",
- listen_node_id=1,
+ listen_node_id=[1],
variable="flow_rate",
- greater_than=[20 / (86400)],
look_ahead=60 * 86400,
+ compound_variable_id=1,
+ ),
+ discrete_control.Condition(
+ greater_than=[20 / (86400)],
+ compound_variable_id=1,
),
discrete_control.Logic(truth_state=["T", "F"], control_state=["off", "on"]),
],
@@ -158,22 +166,18 @@ def flow_condition_model() -> Model:
model.edge.add(
model.flow_boundary[1],
model.basin[2],
- "flow",
)
model.edge.add(
model.basin[2],
model.pump[3],
- "flow",
)
model.edge.add(
model.pump[3],
model.terminal[4],
- "flow",
)
model.edge.add(
model.discrete_control[5],
model.pump[3],
- "control",
)
return model
@@ -185,6 +189,7 @@ def level_boundary_condition_model() -> Model:
model = Model(
starttime="2020-01-01",
endtime="2021-01-01",
+ crs="EPSG:28992",
)
model.level_boundary.add(
@@ -210,12 +215,16 @@ def level_boundary_condition_model() -> Model:
model.discrete_control.add(
Node(6, Point(1.5, 1)),
[
- discrete_control.Condition(
+ discrete_control.Variable(
listen_node_type="LevelBoundary",
listen_node_id=[1],
variable="level",
- greater_than=6.0,
look_ahead=60 * 86400,
+ compound_variable_id=1,
+ ),
+ discrete_control.Condition(
+ greater_than=[6.0],
+ compound_variable_id=1,
),
discrete_control.Logic(truth_state=["T", "F"], control_state=["on", "off"]),
],
@@ -224,27 +233,22 @@ def level_boundary_condition_model() -> Model:
model.edge.add(
model.level_boundary[1],
model.linear_resistance[2],
- "flow",
)
model.edge.add(
model.linear_resistance[2],
model.basin[3],
- "flow",
)
model.edge.add(
model.basin[3],
model.outlet[4],
- "flow",
)
model.edge.add(
model.outlet[4],
model.terminal[5],
- "flow",
)
model.edge.add(
model.discrete_control[6],
model.outlet[4],
- "control",
)
return model
@@ -261,6 +265,7 @@ def tabulated_rating_curve_control_model() -> Model:
model = Model(
starttime="2020-01-01",
endtime="2021-01-01",
+ crs="EPSG:28992",
)
model.basin.add(
@@ -286,11 +291,15 @@ def tabulated_rating_curve_control_model() -> Model:
model.discrete_control.add(
Node(4, Point(1, 1)),
[
- discrete_control.Condition(
+ discrete_control.Variable(
listen_node_type="Basin",
listen_node_id=[1],
variable="level",
- greater_than=0.5,
+ compound_variable_id=1,
+ ),
+ discrete_control.Condition(
+ greater_than=[0.5],
+ compound_variable_id=1,
),
discrete_control.Logic(
truth_state=["T", "F"], control_state=["low", "high"]
@@ -301,23 +310,78 @@ def tabulated_rating_curve_control_model() -> Model:
model.edge.add(
model.basin[1],
model.tabulated_rating_curve[2],
- "flow",
)
model.edge.add(
model.tabulated_rating_curve[2],
model.terminal[3],
- "flow",
)
model.edge.add(
model.discrete_control[4],
model.tabulated_rating_curve[2],
- "control",
)
return model
-def level_setpoint_with_minmax_model() -> Model:
+def compound_variable_condition_model() -> Model:
+ """
+ Set up a minimal model containing a condition on a compound variable
+ for discrete control.
+ """
+
+ model = Model(
+ starttime="2020-01-01",
+ endtime="2021-01-01",
+ crs="EPSG:28992",
+ )
+
+ model.basin.add(
+ Node(1, Point(1, 0)),
+ [
+ basin.Profile(area=1000.0, level=[0.0, 1.0]),
+ basin.State(level=[1.0]),
+ ],
+ )
+ model.flow_boundary.add(
+ Node(2, Point(0, 0)), [flow_boundary.Static(flow_rate=[0.0])]
+ )
+ model.flow_boundary.add(
+ Node(3, Point(0, 1)),
+ [flow_boundary.Time(time=["2020-01-01", "2021-01-01"], flow_rate=[0.0, 2.0])],
+ )
+ model.pump.add(
+ Node(4, Point(2, 0)),
+ [pump.Static(control_state=["Off", "On"], flow_rate=[0.0, 1.0])],
+ )
+ model.terminal.add(Node(5, Point(3, 0)))
+ model.discrete_control.add(
+ Node(6, Point(1, 1)),
+ [
+ discrete_control.Variable(
+ listen_node_type="FlowBoundary",
+ listen_node_id=[2, 3],
+ variable="flow_rate",
+ weight=0.5,
+ compound_variable_id=1,
+ ),
+ discrete_control.Condition(
+ greater_than=[0.5],
+ compound_variable_id=1,
+ ),
+ discrete_control.Logic(truth_state=["T", "F"], control_state=["On", "Off"]),
+ ],
+ )
+
+ model.edge.add(model.flow_boundary[2], model.basin[1])
+ model.edge.add(model.flow_boundary[3], model.basin[1])
+ model.edge.add(model.basin[1], model.pump[4])
+ model.edge.add(model.pump[4], model.terminal[5])
+ model.edge.add(model.discrete_control[6], model.pump[4])
+
+ return model
+
+
+def level_range_model() -> Model:
"""
Set up a minimal model in which the level of a basin is kept within an acceptable range
around a setpoint while being affected by time-varying forcing.
@@ -327,6 +391,7 @@ def level_setpoint_with_minmax_model() -> Model:
model = Model(
starttime="2020-01-01",
endtime="2021-01-01",
+ crs="EPSG:28992",
)
model.basin.add(
@@ -334,6 +399,7 @@ def level_setpoint_with_minmax_model() -> Model:
[
basin.Profile(area=1000.0, level=[0.0, 1.0]),
basin.State(level=[20.0]),
+ basin.Time(time=["2020-01-01", "2020-07-01"], precipitation=[0.0, 3e-6]),
],
)
model.pump.add(
@@ -349,22 +415,26 @@ def level_setpoint_with_minmax_model() -> Model:
)
model.tabulated_rating_curve.add(
Node(5, Point(-1, 0)),
- [tabulated_rating_curve.Static(level=[2.0, 15.0], flow_rate=[0.0, 1e-3])],
+ [tabulated_rating_curve.Static(level=[2.0, 15.0], flow_rate=[0.0, 2e-3])],
)
model.terminal.add(Node(6, Point(-2, 0)))
model.discrete_control.add(
Node(7, Point(1, 0)),
[
- discrete_control.Condition(
+ discrete_control.Variable(
listen_node_type="Basin",
- listen_node_id=1,
+ listen_node_id=[1],
variable="level",
- # min, setpoint, max
- greater_than=[5.0, 10.0, 15.0],
+ compound_variable_id=1,
+ ),
+ discrete_control.Condition(
+ # min, max
+ greater_than=[5.0, 15.0],
+ compound_variable_id=1,
),
discrete_control.Logic(
- truth_state=["FFF", "U**", "T*F", "**D", "TTT"],
- control_state=["in", "in", "none", "out", "out"],
+ truth_state=["FF", "TF", "TT"],
+ control_state=["in", "none", "out"],
),
],
)
@@ -372,42 +442,34 @@ def level_setpoint_with_minmax_model() -> Model:
model.edge.add(
model.basin[1],
model.pump[3],
- "flow",
)
model.edge.add(
model.pump[3],
model.level_boundary[4],
- "flow",
)
model.edge.add(
model.level_boundary[4],
model.pump[2],
- "flow",
)
model.edge.add(
model.pump[2],
model.basin[1],
- "flow",
)
model.edge.add(
model.basin[1],
model.tabulated_rating_curve[5],
- "flow",
)
model.edge.add(
model.tabulated_rating_curve[5],
model.terminal[6],
- "flow",
)
model.edge.add(
model.discrete_control[7],
model.pump[2],
- "control",
)
model.edge.add(
model.discrete_control[7],
model.pump[3],
- "control",
)
return model
diff --git a/python/ribasim_testmodels/ribasim_testmodels/doc_example.py b/python/ribasim_testmodels/ribasim_testmodels/doc_example.py
new file mode 100644
index 000000000..ea6a562e1
--- /dev/null
+++ b/python/ribasim_testmodels/ribasim_testmodels/doc_example.py
@@ -0,0 +1,178 @@
+import numpy as np
+import pandas as pd
+from ribasim import Model, Node
+from ribasim.nodes import (
+ basin,
+ outlet,
+ pid_control,
+ pump,
+)
+from shapely.geometry import Point
+
+
+def local_pidcontrolled_cascade_model():
+ """Demonstrating model for the cascade polder project from our partner"""
+
+ model = Model(starttime="2020-01-01", endtime="2021-01-01", crs="EPSG:28992")
+
+ # Set up basins
+ time = pd.date_range(model.starttime, model.endtime)
+ day_of_year = time.day_of_year.to_numpy()
+
+ precipitation = np.zeros(day_of_year.size)
+ precipitation[0:90] = 1.72e-8
+ precipitation[330:366] = 1.72e-8
+
+ evaporation = np.zeros(day_of_year.size)
+ evaporation[130:270] = 2.87e-8
+
+ drainage = np.zeros(day_of_year.size)
+ drainage[120:270] = 0.4 * 2.87e-8
+ drainage3 = drainage.copy()
+ drainage3[210:240] = 17 * 2.87e-8
+ drainage4 = drainage.copy()
+ drainage4[160:240] = 13 * 2.87e-8
+
+ infiltration = np.zeros(day_of_year.size)
+ infiltration[0:90] = 5e-8
+
+ polder_profile = basin.Profile(area=[100, 100], level=[0.0, 3.0])
+
+ basin_time = [
+ basin.Time(
+ time=pd.date_range(model.starttime, model.endtime),
+ drainage=drainage,
+ potential_evaporation=evaporation,
+ infiltration=0.0,
+ precipitation=precipitation,
+ urban_runoff=0.0,
+ ),
+ ]
+
+ basin_time4 = [
+ basin.Time(
+ time=pd.date_range(model.starttime, model.endtime),
+ drainage=drainage4,
+ potential_evaporation=evaporation,
+ infiltration=0.0,
+ precipitation=precipitation,
+ urban_runoff=0.0,
+ ),
+ ]
+ basin_time3 = [
+ basin.Time(
+ time=pd.date_range(model.starttime, model.endtime),
+ drainage=drainage3,
+ potential_evaporation=evaporation,
+ infiltration=0.0,
+ precipitation=precipitation,
+ urban_runoff=0.0,
+ ),
+ ]
+
+ model.basin.add(
+ Node(1, Point(2.0, 0.0)),
+ [
+ basin.State(level=[2.5]),
+ basin.Profile(area=[1000, 1000], level=[0.0, 3.0]),
+ basin.Time(
+ time=pd.date_range(model.starttime, model.endtime),
+ drainage=0.0,
+ potential_evaporation=0.0,
+ infiltration=0.0,
+ precipitation=0.0,
+ urban_runoff=0.0,
+ ),
+ ],
+ )
+ model.basin.add(
+ Node(4, Point(0.0, -2.0)),
+ [basin.State(level=[1.5]), polder_profile, *basin_time],
+ )
+ model.basin.add(
+ Node(6, Point(0.0, -4.0)),
+ [basin.State(level=[1.0]), polder_profile, *basin_time],
+ )
+ model.basin.add(
+ Node(8, Point(2.0, -4.0)),
+ [basin.State(level=[1.5]), polder_profile, *basin_time3],
+ )
+ model.basin.add(
+ Node(10, Point(4.0, -4.0)),
+ [basin.State(level=[1.3]), polder_profile, *basin_time4],
+ )
+ model.basin.add(
+ Node(12, Point(4.0, -2.0)),
+ [basin.State(level=[0.1]), polder_profile, *basin_time],
+ )
+
+ # Set up pid control
+ pid_control_data = {
+ "listen_node_type": "Basin",
+ "proportional": [0.1],
+ "integral": [0.00],
+ "derivative": [0.0],
+ }
+ model.pid_control.add(
+ Node(3, Point(-1.0, -1.0)),
+ [pid_control.Static(listen_node_id=[4], target=[2.0], **pid_control_data)],
+ )
+ model.pid_control.add(
+ Node(14, Point(-1.0, -3.0)),
+ [pid_control.Static(listen_node_id=[6], target=[1.5], **pid_control_data)],
+ )
+ model.pid_control.add(
+ Node(15, Point(1.0, -3.0)),
+ [pid_control.Static(listen_node_id=[8], target=[1.0], **pid_control_data)],
+ )
+ model.pid_control.add(
+ Node(16, Point(3.0, -3.0)),
+ [pid_control.Static(listen_node_id=[10], target=[0.5], **pid_control_data)],
+ )
+
+ # Set up pump
+ model.pump.add(
+ Node(13, Point(4.0, -1.0)),
+ [pump.Static(flow_rate=[0.5 / 3600])],
+ )
+
+ # Set up outlet
+ model.outlet.add(
+ Node(2, Point(0.0, -1.0)),
+ [outlet.Static(flow_rate=[4 * 0.5 / 3600], min_crest_level=[0.0])],
+ )
+ model.outlet.add(
+ Node(5, Point(0.0, -3.0)),
+ [outlet.Static(flow_rate=[0.5 / 3600], min_crest_level=[1.95])],
+ )
+ model.outlet.add(
+ Node(7, Point(1.0, -4.0)),
+ [outlet.Static(flow_rate=[4 * 0.5 / 3600], min_crest_level=[1.45])],
+ )
+ model.outlet.add(
+ Node(9, Point(3.0, -4.0)),
+ [outlet.Static(flow_rate=[0.5 / 3600], min_crest_level=[0.95])],
+ )
+ model.outlet.add(
+ Node(11, Point(4.0, -3.0)),
+ [outlet.Static(flow_rate=[0.5 / 3600], min_crest_level=[0.45])],
+ )
+
+ model.edge.add(model.basin[1], model.outlet[2])
+ model.edge.add(model.pid_control[3], model.outlet[2])
+ model.edge.add(model.outlet[2], model.basin[4])
+ model.edge.add(model.basin[4], model.outlet[5])
+ model.edge.add(model.outlet[5], model.basin[6])
+ model.edge.add(model.basin[6], model.outlet[7])
+ model.edge.add(model.outlet[7], model.basin[8])
+ model.edge.add(model.basin[8], model.outlet[9])
+ model.edge.add(model.outlet[9], model.basin[10])
+ model.edge.add(model.basin[10], model.outlet[11])
+ model.edge.add(model.outlet[11], model.basin[12])
+ model.edge.add(model.basin[12], model.pump[13])
+ model.edge.add(model.pump[13], model.basin[1])
+ model.edge.add(model.pid_control[14], model.outlet[5])
+ model.edge.add(model.pid_control[15], model.outlet[7])
+ model.edge.add(model.pid_control[16], model.outlet[9])
+
+ return model
diff --git a/python/ribasim_testmodels/ribasim_testmodels/dutch_waterways.py b/python/ribasim_testmodels/ribasim_testmodels/dutch_waterways.py
deleted file mode 100644
index 469fbdb3c..000000000
--- a/python/ribasim_testmodels/ribasim_testmodels/dutch_waterways.py
+++ /dev/null
@@ -1,266 +0,0 @@
-import numpy as np
-import pandas as pd
-from ribasim.config import Node
-from ribasim.model import Model
-from ribasim.nodes import (
- basin,
- discrete_control,
- flow_boundary,
- level_boundary,
- linear_resistance,
- pid_control,
- pump,
- tabulated_rating_curve,
-)
-from shapely.geometry import Point
-
-
-def dutch_waterways_model() -> Model:
- """Set up a model that is representative of the main Dutch rivers."""
-
- model = Model(
- starttime="2020-01-01",
- endtime="2021-01-01",
- )
-
- profile_level = np.array([1.86, 3.21, 4.91, 6.61, 8.31, 10.07, 10.17, 10.27, 11.61, 12.94, 13.05, 13.69, 14.32, 14.96, 15.59]) # fmt: skip
- width = np.array([10.0, 88.0, 137.0, 139.0, 141.0, 219.0, 220.0, 221.0, 302.0, 606.0, 837.0, 902.0, 989.0, 1008.0, 1011.0]) # fmt: skip
- basin_profile = basin.Profile(level=profile_level, area=1e4 * width)
-
- linear_resistance_shared = [linear_resistance.Static(resistance=[1e-2])]
-
- # Flow rate curve from sine series
- n_times = 250
- time = pd.date_range(start="2020-01-01", end="2021-01-01", periods=n_times).astype(
- "datetime64[s]"
- )
- flow_rate = np.zeros(n_times)
- x = np.linspace(0, 1, n_times)
- n_terms = 5
- for i in np.arange(1, 2 * n_terms, 2):
- flow_rate += 4 / (i * np.pi) * np.sin(2 * i * np.pi * x)
-
- # Scale to desired magnitude
- b = (250 + 800) / 2
- a = 800 - b
- flow_rate = a * flow_rate + b
-
- # TODO use EPSG:28992 and apply 405 - y to the y coordinates
- model.flow_boundary.add(
- Node(1, Point(1310, 312)),
- [flow_boundary.Time(time=time, flow_rate=flow_rate)],
- )
- model.basin.add(
- Node(2, Point(1281, 278), name="IJsselkop"),
- [basin.State(level=[8.31]), basin_profile],
- )
- model.linear_resistance.add(Node(3, Point(1283, 183)), linear_resistance_shared)
- model.linear_resistance.add(Node(4, Point(1220, 186)), linear_resistance_shared)
- model.basin.add(
- Node(5, Point(1342, 162), name="IJssel Westervoort"),
- [basin.State(level=[7.5]), basin_profile],
- )
- model.basin.add(
- Node(6, Point(1134, 184), name="Nederrijn Arnhem"),
- [basin.State(level=[7.5]), basin_profile],
- )
- model.level_boundary.add(
- Node(7, Point(1383, 121)), [level_boundary.Static(level=[3.0])]
- )
- model.tabulated_rating_curve.add(
- Node(8, Point(1052, 201), name="Driel open"),
- [
- tabulated_rating_curve.Static(
- control_state=["pump_low", "pump_high", "rating_curve", "rating_curve"],
- active=[False, False, True, True],
- # The level and flow rate for "pump_low", "pump_high" are irrelevant
- # since the rating curve is not active here
- level=[0.0, 0.0, 7.45, 7.46],
- flow_rate=[0.0, 0.0, 418, 420.15],
- )
- ],
- )
- model.pump.add(
- Node(9, Point(1043, 188), name="Driel gecontroleerd"),
- [
- pump.Static(
- active=[True, True, False],
- control_state=["pump_low", "pump_high", "rating_curve"],
- flow_rate=[15.0, 25.0, 1.0],
- )
- ],
- )
- model.basin.add(
- Node(10, Point(920, 197)), [basin.State(level=[7.0]), basin_profile]
- )
- model.linear_resistance.add(Node(11, Point(783, 237)), linear_resistance_shared)
- model.basin.add(
- Node(12, Point(609, 186)), [basin.State(level=[6.0]), basin_profile]
- )
- model.tabulated_rating_curve.add(
- Node(13, Point(430, 176), name="Amerongen open"),
- [tabulated_rating_curve.Static(level=[4.45, 4.46], flow_rate=[418, 420.15])],
- )
- model.pump.add(
- Node(14, Point(442, 164), name="Amerongen gecontroleerd"),
- [pump.Static(flow_rate=[1.0], min_flow_rate=0.0, max_flow_rate=50.0)],
- )
- model.basin.add(
- Node(15, Point(369, 185)), [basin.State(level=[5.5]), basin_profile]
- )
- model.level_boundary.add(
- Node(16, Point(329, 202), name="Kruising ARK"),
- [level_boundary.Static(level=[3.0])],
- )
- model.discrete_control.add(
- Node(17, Point(1187, 276), name="Controller Driel"),
- [
- discrete_control.Condition(
- listen_node_type="FlowBoundary",
- listen_node_id=1,
- variable="flow_rate",
- greater_than=[250, 275, 750, 800],
- ),
- discrete_control.Logic(
- truth_state=["FFFF", "U***", "T**F", "***D", "TTTT"],
- control_state=[
- "pump_low",
- "pump_low",
- "pump_high",
- "rating_curve",
- "rating_curve",
- ],
- ),
- ],
- )
- model.linear_resistance.add(Node(18, Point(1362, 142)), linear_resistance_shared)
- model.linear_resistance.add(Node(19, Point(349, 194)), linear_resistance_shared)
- model.pid_control.add(
- Node(20, Point(511, 126), name="Controller Amerongen"),
- [
- pid_control.Static(
- listen_node_type="Basin",
- listen_node_id=[12],
- target=6.0,
- proportional=-0.005,
- integral=0.0,
- derivative=-0.002,
- )
- ],
- )
-
- model.edge.add(
- model.flow_boundary[1],
- model.basin[2],
- "flow",
- name="Pannerdensch Kanaal",
- )
- model.edge.add(
- model.basin[2],
- model.linear_resistance[3],
- "flow",
- name="Start IJssel",
- )
- model.edge.add(
- model.linear_resistance[3],
- model.basin[5],
- "flow",
- )
- model.edge.add(
- model.basin[2],
- model.linear_resistance[4],
- "flow",
- name="Start Nederrijn",
- )
- model.edge.add(
- model.linear_resistance[4],
- model.basin[6],
- "flow",
- )
- model.edge.add(
- model.basin[6],
- model.pump[9],
- "flow",
- )
- model.edge.add(
- model.pump[9],
- model.basin[10],
- "flow",
- )
- model.edge.add(
- model.basin[10],
- model.linear_resistance[11],
- "flow",
- )
- model.edge.add(
- model.linear_resistance[11],
- model.basin[12],
- "flow",
- )
- model.edge.add(
- model.basin[12],
- model.pump[14],
- "flow",
- )
- model.edge.add(
- model.pump[14],
- model.basin[15],
- "flow",
- )
- model.edge.add(
- model.basin[6],
- model.tabulated_rating_curve[8],
- "flow",
- )
- model.edge.add(
- model.tabulated_rating_curve[8],
- model.basin[10],
- "flow",
- )
- model.edge.add(
- model.basin[12],
- model.tabulated_rating_curve[13],
- "flow",
- )
- model.edge.add(
- model.tabulated_rating_curve[13],
- model.basin[15],
- "flow",
- )
- model.edge.add(
- model.basin[5],
- model.linear_resistance[18],
- "flow",
- )
- model.edge.add(
- model.linear_resistance[18],
- model.level_boundary[7],
- "flow",
- )
- model.edge.add(
- model.basin[15],
- model.linear_resistance[19],
- "flow",
- )
- model.edge.add(
- model.linear_resistance[19],
- model.level_boundary[16],
- "flow",
- )
- model.edge.add(
- model.pid_control[20],
- model.pump[14],
- "control",
- )
- model.edge.add(
- model.discrete_control[17],
- model.tabulated_rating_curve[8],
- "control",
- )
- model.edge.add(
- model.discrete_control[17],
- model.pump[9],
- "control",
- )
-
- return model
diff --git a/python/ribasim_testmodels/ribasim_testmodels/equations.py b/python/ribasim_testmodels/ribasim_testmodels/equations.py
index 6409812ef..9ffe4c715 100644
--- a/python/ribasim_testmodels/ribasim_testmodels/equations.py
+++ b/python/ribasim_testmodels/ribasim_testmodels/equations.py
@@ -24,6 +24,7 @@ def linear_resistance_model() -> Model:
model = Model(
starttime="2020-01-01",
endtime="2021-01-01",
+ crs="EPSG:28992",
)
model.basin.add(
@@ -39,12 +40,10 @@ def linear_resistance_model() -> Model:
model.edge.add(
model.basin[1],
model.linear_resistance[2],
- "flow",
)
model.edge.add(
model.linear_resistance[2],
model.level_boundary[3],
- "flow",
)
return model
@@ -56,6 +55,7 @@ def rating_curve_model() -> Model:
model = Model(
starttime="2020-01-01",
endtime="2021-01-01",
+ crs="EPSG:28992",
)
model.basin.add(
@@ -79,12 +79,10 @@ def rating_curve_model() -> Model:
model.edge.add(
model.basin[1],
model.tabulated_rating_curve[2],
- "flow",
)
model.edge.add(
model.tabulated_rating_curve[2],
model.terminal[3],
- "flow",
)
return model
@@ -96,6 +94,7 @@ def manning_resistance_model() -> Model:
model = Model(
starttime="2020-01-01",
endtime="2021-01-01",
+ crs="EPSG:28992",
)
basin_profile = basin.Profile(area=[0.01, 100.0, 100.0], level=[0.0, 1.0, 2.0])
@@ -114,12 +113,10 @@ def manning_resistance_model() -> Model:
model.edge.add(
model.basin[1],
model.manning_resistance[2],
- "flow",
)
model.edge.add(
model.manning_resistance[2],
model.basin[3],
- "flow",
)
return model
@@ -131,6 +128,7 @@ def misc_nodes_model() -> Model:
model = Model(
starttime="2020-01-01",
endtime="2021-01-01",
+ crs="EPSG:28992",
solver=Solver(dt=24 * 60 * 60, algorithm="Euler"),
)
@@ -156,32 +154,26 @@ def misc_nodes_model() -> Model:
model.edge.add(
model.flow_boundary[1],
model.fractional_flow[2],
- "flow",
)
model.edge.add(
model.fractional_flow[2],
model.basin[3],
- "flow",
)
model.edge.add(
model.basin[3],
model.pump[4],
- "flow",
)
model.edge.add(
model.pump[4],
model.basin[5],
- "flow",
)
model.edge.add(
model.flow_boundary[1],
model.fractional_flow[6],
- "flow",
)
model.edge.add(
model.fractional_flow[6],
model.terminal[7],
- "flow",
)
return model
@@ -191,8 +183,7 @@ def pid_control_equation_model() -> Model:
"""Set up a model with pid control for an analytical solution test"""
model = Model(
- starttime="2020-01-01",
- endtime="2020-01-01 00:05:00",
+ starttime="2020-01-01", endtime="2020-01-01 00:05:00", crs="EPSG:28992"
)
model.basin.add(
Node(1, Point(0, 0)),
@@ -221,17 +212,14 @@ def pid_control_equation_model() -> Model:
model.edge.add(
model.basin[1],
model.pump[2],
- "flow",
)
model.edge.add(
model.pump[2],
model.terminal[3],
- "flow",
)
model.edge.add(
model.pid_control[4],
model.pump[2],
- "control",
)
return model
diff --git a/python/ribasim_testmodels/ribasim_testmodels/invalid.py b/python/ribasim_testmodels/ribasim_testmodels/invalid.py
index 5bbf3baa6..87ea383d0 100644
--- a/python/ribasim_testmodels/ribasim_testmodels/invalid.py
+++ b/python/ribasim_testmodels/ribasim_testmodels/invalid.py
@@ -19,6 +19,7 @@ def invalid_qh_model() -> Model:
model = Model(
starttime="2020-01-01",
endtime="2020-12-01",
+ crs="EPSG:28992",
)
model.tabulated_rating_curve.add(
@@ -55,6 +56,7 @@ def invalid_fractional_flow_model() -> Model:
model = Model(
starttime="2020-01-01",
endtime="2020-12-01",
+ crs="EPSG:28992",
)
basin_shared: list[TableModel[Any]] = [
@@ -84,38 +86,31 @@ def invalid_fractional_flow_model() -> Model:
model.edge.add(
model.basin[1],
model.tabulated_rating_curve[7],
- "flow",
)
- # Invalid: TabulatedRatingCurve #7 combines FractionalFlow outneighbors with other outneigbor types.
+ # Invalid: TabulatedRatingCurve #7 has outflow to FractionalFlow and other node types.
model.edge.add(
model.tabulated_rating_curve[7],
model.basin[2],
- "flow",
)
model.edge.add(
model.tabulated_rating_curve[7],
model.fractional_flow[3],
- "flow",
)
model.edge.add(
model.fractional_flow[3],
model.terminal[5],
- "flow",
)
model.edge.add(
model.tabulated_rating_curve[7],
model.fractional_flow[4],
- "flow",
)
model.edge.add(
model.fractional_flow[4],
model.terminal[6],
- "flow",
)
model.edge.add(
model.basin[2],
model.fractional_flow[8],
- "flow",
)
return model
@@ -125,6 +120,7 @@ def invalid_discrete_control_model() -> Model:
model = Model(
starttime="2020-01-01",
endtime="2020-12-01",
+ crs="EPSG:28992",
)
basin_shared: list[TableModel[Any]] = [
@@ -152,15 +148,19 @@ def invalid_discrete_control_model() -> Model:
model.discrete_control.add(
Node(5, Point(1, 1)),
[
- discrete_control.Condition(
+ discrete_control.Variable(
listen_node_type=["Basin", "FlowBoundary", "FlowBoundary"],
listen_node_id=[1, 4, 4],
variable=["level", "flow_rate", "flow_rate"],
- greater_than=[0.5, 1.5, 1.5],
# Invalid: look_ahead can only be specified for timeseries variables.
# Invalid: this look_ahead will go past the provided timeseries during simulation.
# Invalid: look_ahead must be non-negative.
look_ahead=[100.0, 40 * 24 * 60 * 60, -10.0],
+ compound_variable_id=[1, 2, 3],
+ ),
+ discrete_control.Condition(
+ greater_than=[0.5, 1.5, 1.5],
+ compound_variable_id=[1, 2, 3],
),
# Invalid: DiscreteControl node #4 has 2 conditions so
# truth states have to be of length 2
@@ -171,22 +171,18 @@ def invalid_discrete_control_model() -> Model:
model.edge.add(
model.basin[1],
model.pump[2],
- "flow",
)
model.edge.add(
model.pump[2],
model.basin[3],
- "flow",
)
model.edge.add(
model.flow_boundary[4],
model.basin[3],
- "flow",
)
model.edge.add(
model.discrete_control[5],
model.pump[2],
- "control",
)
return model
@@ -198,6 +194,7 @@ def invalid_edge_types_model() -> Model:
model = Model(
starttime="2020-01-01",
endtime="2020-12-01",
+ crs="EPSG:28992",
)
basin_shared: list[TableModel[Any]] = [
@@ -212,12 +209,13 @@ def invalid_edge_types_model() -> Model:
model.edge.add(
model.basin[1],
model.pump[2],
- "foo",
)
model.edge.add(
model.pump[2],
model.basin[3],
- "bar",
)
+ assert model.edge.df is not None
+ model.edge.df["edge_type"] = ["foo", "bar"]
+
return model
diff --git a/python/ribasim_testmodels/ribasim_testmodels/pid_control.py b/python/ribasim_testmodels/ribasim_testmodels/pid_control.py
index a243946f2..4a543acc3 100644
--- a/python/ribasim_testmodels/ribasim_testmodels/pid_control.py
+++ b/python/ribasim_testmodels/ribasim_testmodels/pid_control.py
@@ -19,6 +19,7 @@ def pid_control_model() -> Model:
model = Model(
starttime="2020-01-01",
endtime="2020-12-01",
+ crs="EPSG:28992",
)
model.flow_boundary.add(
@@ -75,13 +76,13 @@ def pid_control_model() -> Model:
],
)
- model.edge.add(model.flow_boundary[1], model.basin[2], "flow")
- model.edge.add(model.basin[2], model.pump[3], "flow")
- model.edge.add(model.pump[3], model.level_boundary[4], "flow")
- model.edge.add(model.level_boundary[4], model.outlet[6], "flow")
- model.edge.add(model.pid_control[5], model.pump[3], "control")
- model.edge.add(model.outlet[6], model.basin[2], "flow")
- model.edge.add(model.pid_control[7], model.outlet[6], "control")
+ model.edge.add(model.flow_boundary[1], model.basin[2])
+ model.edge.add(model.basin[2], model.pump[3])
+ model.edge.add(model.pump[3], model.level_boundary[4])
+ model.edge.add(model.level_boundary[4], model.outlet[6])
+ model.edge.add(model.pid_control[5], model.pump[3])
+ model.edge.add(model.outlet[6], model.basin[2])
+ model.edge.add(model.pid_control[7], model.outlet[6])
return model
@@ -92,6 +93,7 @@ def discrete_control_of_pid_control_model() -> Model:
model = Model(
starttime="2020-01-01",
endtime="2020-12-01",
+ crs="EPSG:28992",
)
model.level_boundary.add(
@@ -127,11 +129,15 @@ def discrete_control_of_pid_control_model() -> Model:
model.discrete_control.add(
Node(7, Point(0, 1)),
[
- discrete_control.Condition(
+ discrete_control.Variable(
listen_node_type="LevelBoundary",
listen_node_id=[1],
variable="level",
- greater_than=5.0,
+ compound_variable_id=1,
+ ),
+ discrete_control.Condition(
+ greater_than=[5.0],
+ compound_variable_id=1,
),
discrete_control.Logic(
truth_state=["T", "F"], control_state=["target_high", "target_low"]
@@ -142,32 +148,26 @@ def discrete_control_of_pid_control_model() -> Model:
model.edge.add(
model.level_boundary[1],
model.outlet[2],
- "flow",
)
model.edge.add(
model.outlet[2],
model.basin[3],
- "flow",
)
model.edge.add(
model.basin[3],
model.tabulated_rating_curve[4],
- "flow",
)
model.edge.add(
model.tabulated_rating_curve[4],
model.terminal[5],
- "flow",
)
model.edge.add(
model.pid_control[6],
model.outlet[2],
- "control",
)
model.edge.add(
model.discrete_control[7],
model.pid_control[6],
- "control",
)
return model
diff --git a/python/ribasim_testmodels/ribasim_testmodels/time.py b/python/ribasim_testmodels/ribasim_testmodels/time.py
index 38f5aa705..64e006d8a 100644
--- a/python/ribasim_testmodels/ribasim_testmodels/time.py
+++ b/python/ribasim_testmodels/ribasim_testmodels/time.py
@@ -12,6 +12,7 @@ def flow_boundary_time_model() -> Model:
model = Model(
starttime="2020-01-01",
endtime="2021-01-01",
+ crs="EPSG:28992",
)
model.flow_boundary.add(
@@ -42,12 +43,10 @@ def flow_boundary_time_model() -> Model:
model.edge.add(
model.flow_boundary[1],
model.basin[2],
- "flow",
)
model.edge.add(
model.flow_boundary[3],
model.basin[2],
- "flow",
)
return model
diff --git a/python/ribasim_testmodels/ribasim_testmodels/trivial.py b/python/ribasim_testmodels/ribasim_testmodels/trivial.py
index 347d1501b..ad3669eb3 100644
--- a/python/ribasim_testmodels/ribasim_testmodels/trivial.py
+++ b/python/ribasim_testmodels/ribasim_testmodels/trivial.py
@@ -10,6 +10,7 @@ def trivial_model() -> Model:
model = Model(
starttime="2020-01-01",
endtime="2021-01-01",
+ crs="EPSG:28992",
results=Results(subgrid=True, compression=False),
)
@@ -50,12 +51,10 @@ def trivial_model() -> Model:
model.edge.add(
model.basin[6],
model.tabulated_rating_curve[0],
- "flow",
)
model.edge.add(
model.tabulated_rating_curve[0],
model.terminal[terminal_id],
- "flow",
)
return model
diff --git a/python/ribasim_testmodels/ribasim_testmodels/two_basin.py b/python/ribasim_testmodels/ribasim_testmodels/two_basin.py
index 7ff5e17f4..9cedb312f 100644
--- a/python/ribasim_testmodels/ribasim_testmodels/two_basin.py
+++ b/python/ribasim_testmodels/ribasim_testmodels/two_basin.py
@@ -19,7 +19,7 @@ def two_basin_model() -> Model:
The right basin fills up and discharges over the rating curve.
"""
- model = Model(starttime="2020-01-01", endtime="2021-01-01")
+ model = Model(starttime="2020-01-01", endtime="2021-01-01", crs="EPSG:28992")
model.flow_boundary.add(
Node(1, Point(0, 0)), [flow_boundary.Static(flow_rate=[1e-2])]
@@ -60,15 +60,13 @@ def two_basin_model() -> Model:
)
model.terminal.add(Node(5, Point(1100, 0)))
- model.edge.add(model.flow_boundary[1], model.basin[2], "flow")
+ model.edge.add(model.flow_boundary[1], model.basin[2])
model.edge.add(
model.basin[3],
model.tabulated_rating_curve[4],
- "flow",
)
model.edge.add(
model.tabulated_rating_curve[4],
model.terminal[5],
- "flow",
)
return model
diff --git a/ribasim_qgis/core/nodes.py b/ribasim_qgis/core/nodes.py
index c65022c59..97682e780 100644
--- a/ribasim_qgis/core/nodes.py
+++ b/ribasim_qgis/core/nodes.py
@@ -227,6 +227,7 @@ def renderer(self) -> QgsCategorizedSymbolRenderer:
"LevelDemand",
shape.Circle,
),
+ "FlowDemand": (QColor("red"), "FlowDemand", shape.Hexagon),
# All other nodes, or incomplete input
"": (QColor("white"), "", shape.Circle),
}
@@ -690,10 +691,10 @@ def attributes(cls) -> list[QgsField]:
]
-class DiscreteControlCondition(Input):
+class DiscreteControlVariable(Input):
@classmethod
def input_type(cls) -> str:
- return "DiscreteControl / condition"
+ return "DiscreteControl / variable"
@classmethod
def geometry_type(cls) -> str:
@@ -703,9 +704,29 @@ def geometry_type(cls) -> str:
def attributes(cls) -> list[QgsField]:
return [
QgsField("node_id", QVariant.Int),
+ QgsField("compound_variable_id", QVariant.Int),
QgsField("listen_node_type", QVariant.String),
QgsField("listen_node_id", QVariant.Int),
QgsField("variable", QVariant.String),
+ QgsField("weight", QVariant.Double),
+ QgsField("look_ahead", QVariant.Double),
+ ]
+
+
+class DiscreteControlCondition(Input):
+ @classmethod
+ def input_type(cls) -> str:
+ return "DiscreteControl / condition"
+
+ @classmethod
+ def geometry_type(cls) -> str:
+ return "No Geometry"
+
+ @classmethod
+ def attributes(cls) -> list[QgsField]:
+ return [
+ QgsField("node_id", QVariant.Int),
+ QgsField("compound_variable_id", QVariant.Int),
QgsField("greater_than", QVariant.Double),
]
@@ -846,7 +867,45 @@ def attributes(cls) -> list[QgsField]:
return [
QgsField("node_id", QVariant.Int),
QgsField("time", QVariant.DateTime),
- QgsField("level_demand", QVariant.Double),
+ QgsField("min_level", QVariant.Double),
+ QgsField("max_level", QVariant.Double),
+ QgsField("priority", QVariant.Int),
+ ]
+
+
+class FlowDemandStatic(Input):
+ @classmethod
+ def input_type(cls) -> str:
+ return "FlowDemand / static"
+
+ @classmethod
+ def geometry_type(cls) -> str:
+ return "No Geometry"
+
+ @classmethod
+ def attributes(cls) -> list[QgsField]:
+ return [
+ QgsField("node_id", QVariant.Int),
+ QgsField("demand", QVariant.Double),
+ QgsField("priority", QVariant.Int),
+ ]
+
+
+class FlowDemandTime(Input):
+ @classmethod
+ def input_type(cls) -> str:
+ return "FlowDemand / time"
+
+ @classmethod
+ def geometry_type(cls) -> str:
+ return "No Geometry"
+
+ @classmethod
+ def attributes(cls) -> list[QgsField]:
+ return [
+ QgsField("node_id", QVariant.Int),
+ QgsField("time", QVariant.DateTime),
+ QgsField("demand", QVariant.Double),
QgsField("priority", QVariant.Int),
]
@@ -859,7 +918,7 @@ def attributes(cls) -> list[QgsField]:
cls.nodetype() for cls in Input.__subclasses__() if not cls.is_spatial()
}
EDGETYPES = {"flow", "control"}
-SPATIALCONTROLNODETYPES = {"DiscreteControl", "PidControl"}
+SPATIALCONTROLNODETYPES = {"LevelDemand", "FlowDemand", "DiscreteControl", "PidControl"}
def load_nodes_from_geopackage(path: Path) -> dict[str, Input]:
@@ -867,5 +926,7 @@ def load_nodes_from_geopackage(path: Path) -> dict[str, Input]:
gpkg_names = geopackage.layers(path)
nodes = {}
for layername in gpkg_names:
- nodes[layername] = NODES[layername](path)
+ klass = NODES.get(layername)
+ if klass is not None:
+ nodes[layername] = klass(path)
return nodes
diff --git a/ribasim_qgis/metadata.txt b/ribasim_qgis/metadata.txt
index f35eeeada..1478f2aad 100644
--- a/ribasim_qgis/metadata.txt
+++ b/ribasim_qgis/metadata.txt
@@ -7,7 +7,7 @@
name=Ribasim-QGIS
qgisMinimumVersion=3.0
description=QGIS plugin to setup Ribasim models
-version=2024.4.0
+version=2024.7.0
author=Deltares and contributors
email=ribasim.info@deltares.nl
diff --git a/utils/gen_python.jl b/utils/gen_python.jl
index ed3f43a6b..2fd5db115 100644
--- a/utils/gen_python.jl
+++ b/utils/gen_python.jl
@@ -6,7 +6,7 @@ using OteraEngine
using Ribasim
pythontype(::Type{<:AbstractString}) = "Series[str]"
-pythontype(::Type{<:Integer}) = "Series[int]"
+pythontype(::Type{<:Integer}) = "Series[Int32]"
pythontype(::Type{<:AbstractFloat}) = "Series[float]"
pythontype(::Type{<:Number}) = "Series[float]"
pythontype(::Type{<:Bool}) = "Series[pa.BOOL]" # pa.BOOL is a nullable boolean type, bool is not nullable
@@ -44,9 +44,9 @@ function get_models()
end
# Setup template with whitespace settings that mainly strips whitespace.
-# See model.py.jinja for the layout of the template.
+# See schemas.py.jinja for the layout of the template.
model_template = Template(
- normpath(@__DIR__, "templates", "model.py.jinja");
+ normpath(@__DIR__, "templates", "schemas.py.jinja");
config = Dict("trim_blocks" => true, "lstrip_blocks" => true, "autoescape" => false),
)
diff --git a/utils/generate-testmodels.py b/utils/generate-testmodels.py
index 2394efe30..516ef2281 100644
--- a/utils/generate-testmodels.py
+++ b/utils/generate-testmodels.py
@@ -1,8 +1,18 @@
+import multiprocessing
import shutil
+from functools import partial
from pathlib import Path
import ribasim_testmodels
+
+def generate_model(args, datadir):
+ model_name, model_constructor = args
+ model = model_constructor()
+ model.write(datadir / model_name / "ribasim.toml")
+ return model_name
+
+
if __name__ == "__main__":
datadir = Path("generated_testmodels")
if datadir.is_dir():
@@ -18,7 +28,10 @@
Don't put important stuff in here, it will be emptied for every run."""
)
- for model_name, model_constructor in ribasim_testmodels.constructors.items():
- print(f"Generating {model_name}")
- model = model_constructor()
- model.write(datadir / model_name / "ribasim.toml")
+ generate_model_partial = partial(generate_model, datadir=datadir)
+
+ with multiprocessing.Pool(processes=4) as p:
+ for model_name in p.imap_unordered(
+ generate_model_partial, ribasim_testmodels.constructors.items()
+ ):
+ print(f"Generated {model_name}")
diff --git a/utils/github-release.py b/utils/github-release.py
index c0d3da74e..0b78a30f4 100644
--- a/utils/github-release.py
+++ b/utils/github-release.py
@@ -1,24 +1,42 @@
import subprocess
-# Get the name of the currently checked out tag
-tag_name = subprocess.check_output(
- ["git", "describe", "--tags", "--exact-match"], text=True
-).strip()
-
-
-print(f"Currently checked out tag: {tag_name}")
-
-# Create a release using gh
-subprocess.check_call(
- [
- "gh",
- "release",
- "create",
- tag_name,
- "--generate-notes",
- "ribasim_cli_linux.zip",
- "ribasim_cli_windows.zip",
- "ribasim_qgis.zip",
- "generated_testmodels.zip",
- ]
-)
+
+def current_git_branch():
+ result = subprocess.run(
+ ["git", "rev-parse", "--abbrev-ref", "HEAD"],
+ capture_output=True,
+ text=True,
+ check=True,
+ )
+ return result.stdout.strip()
+
+
+def main():
+ # Get the name of the currently checked out tag
+ tag_name = subprocess.check_output(
+ ["git", "describe", "--tags", "--exact-match"], text=True
+ ).strip()
+
+ print(f"Currently checked out tag: {tag_name}")
+
+ # Create a release using gh
+ subprocess.check_call(
+ [
+ "gh",
+ "release",
+ "create",
+ tag_name,
+ "--generate-notes",
+ "ribasim_cli_linux.zip",
+ "ribasim_cli_windows.zip",
+ "ribasim_qgis.zip",
+ "generated_testmodels.zip",
+ ]
+ )
+
+
+if __name__ == "__main__":
+ if current_git_branch().startswith("v20"):
+ main()
+ else:
+ print("Branch doesn't start with 'v20', no release made.")
diff --git a/utils/runstats.jl b/utils/runstats.jl
index ca81f0f17..97c97ba9f 100644
--- a/utils/runstats.jl
+++ b/utils/runstats.jl
@@ -106,7 +106,7 @@ toml_paths = get_testmodels()
runs = OrderedDict{String, Any}[]
for toml_path in toml_paths
config = Ribasim.Config(toml_path)
- println(basename(toml_path))
+ println(basename(dirname(toml_path)))
# run first to compile, if this takes too long perhaps we can shorten the duration
Ribasim.run(config)
timed = @timed Ribasim.run(config)
diff --git a/utils/templates/model.py.jinja b/utils/templates/schemas.py.jinja
similarity index 85%
rename from utils/templates/model.py.jinja
rename to utils/templates/schemas.py.jinja
index db2a8df50..1ff1a6a23 100644
--- a/utils/templates/model.py.jinja
+++ b/utils/templates/schemas.py.jinja
@@ -1,7 +1,7 @@
# Automatically generated file. Do not modify.
import pandera as pa
-from pandera.dtypes import Timestamp
+from pandera.dtypes import Int32, Timestamp
from pandera.typing import Series
@@ -14,7 +14,7 @@ class _BaseSchema(pa.DataFrameModel):
{% for m in models %}
class {{m[:name]}}Schema(_BaseSchema):
{% for f in m[:fields] %}
- {% if (f[2] == "Series[int]") %}
+ {% if (f[2] == "Series[Int32]") %}
{{ f[1] }}: {{ f[2] }} = pa.Field(nullable={{ f[3] }}, default=0)
{% else %}
{{ f[1] }}: {{ f[2] }} = pa.Field(nullable={{ f[3] }})
diff --git a/utils/testmodelrun.jl b/utils/testmodelrun.jl
index fd8c26cfc..6cefde49e 100644
--- a/utils/testmodelrun.jl
+++ b/utils/testmodelrun.jl
@@ -1,4 +1,4 @@
-using Ribasim
+import Ribasim
include("utils.jl")
@@ -7,24 +7,27 @@ function main(ARGS)
n_model = length(toml_paths)
n_pass = 0
n_fail = 0
+ lk = ReentrantLock()
failed = String[]
- for toml_path in toml_paths
+ Threads.@threads for toml_path in toml_paths
modelname = basename(dirname(toml_path))
- @info "Running model $modelname"
- if Ribasim.main(toml_path) != 0
- @error "Simulation failed" modelname
- push!(failed, modelname)
- n_fail += 1
- else
- n_pass += 1
+ ret_code = Ribasim.main(toml_path)
+ lock(lk) do
+ if ret_code != 0
+ push!(failed, modelname)
+ n_fail += 1
+ else
+ n_pass += 1
+ end
end
end
- @info "Ran $n_model models, $n_pass passed, $n_fail failed."
+ println("Ran $n_model models, $n_pass passed, $n_fail failed.\n")
if n_fail > 0
println("Failed models:")
foreach(println, failed)
+ error("Model run failed")
end
end