From 818d2ec624703f47b93522e0894f763b2a061373 Mon Sep 17 00:00:00 2001 From: Ruben Arts Date: Tue, 11 Jun 2024 11:36:34 +0200 Subject: [PATCH] feat: add `--clean-env` flag to tasks and run command (#1395) Fixes #289 slightly Adds: ``` pixi run --clean-env xxx ``` ```toml [tasks] isolated-task = {cmd = "/usr/bin/env", clean-env = true} ``` This doesn't work on Windows, as it is just to shitty to get working on windows. You need to many variables and paths for a working environment for the label "clean" as you need the `Program Files` directories for the compilers. And other stuff. And I'm honestly a 120% Done with this PR. And it's breaking into actually being productive. --- Cargo.lock | 8 +- docs/features/advanced_tasks.md | 17 + docs/reference/cli.md | 7 +- docs/reference/project_configuration.md | 1 + examples/cpp-sdl/pixi.lock | 546 +++++++++++------ examples/cpp-sdl/pixi.toml | 1 + pixi.lock | 759 ++++++++++++------------ schema/examples/valid/full.toml | 3 +- schema/model.py | 5 + schema/schema.json | 5 + src/activation.rs | 109 +++- src/cli/run.rs | 26 +- src/cli/shell_hook.rs | 5 +- src/cli/task.rs | 6 + src/lock_file/update.rs | 7 +- src/project/mod.rs | 3 +- src/task/mod.rs | 21 +- tests/common/mod.rs | 4 +- tests/install_tests.rs | 1 - tests/task_tests.rs | 43 ++ 20 files changed, 979 insertions(+), 598 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 0f35e441d..d6ed4c59b 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3868,9 +3868,9 @@ dependencies = [ [[package]] name = "rattler_repodata_gateway" -version = "0.20.3" +version = "0.20.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c5cf314480ddf618405c8249393e55cefcbd18b65b9877ced23365519054e14f" +checksum = "810de4b4ef0c75087b77b6425caf869ee435ee392950f71800ec21ac512e576b" dependencies = [ "anyhow", "async-compression", @@ -3956,9 +3956,9 @@ dependencies = [ [[package]] name = "rattler_virtual_packages" -version = "0.19.13" +version = "0.19.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7cf0fd83b54bdb95f722b80b1ea9219e02b5c5ab4ad24b4b9bdb8b9e2ad8173a" +checksum = "2ae1f4c940a73181b636a2957e665f1c7caeed443ef468ca31d380417f4b52bd" dependencies = [ "archspec", "libloading", diff --git a/docs/features/advanced_tasks.md b/docs/features/advanced_tasks.md index 9dd0030de..75829daa5 100644 --- a/docs/features/advanced_tasks.md +++ b/docs/features/advanced_tasks.md @@ -195,6 +195,23 @@ These variables are not shared over tasks, so you need to define these for every ``` This will output `/tmp/path:/usr/bin:/bin` instead of the original `/usr/bin:/bin`. +## Clean environment +You can make sure the environment of a task is "pixi only". +Here pixi will only include the minimal required environment variables for your platform to run the command in. +The environment will contain all variables set by the conda environment like `"CONDA_PREFIX"`. +It will however include some default values from the shell, like: +`"DISPLAY"`, `"LC_ALL"`, `"LC_TIME"`, `"LC_NUMERIC"`, `"LC_MEASUREMENT"`, `"SHELL"`, `"USER"`, `"USERNAME"`, `"LOGNAME"`, `"HOME"`, `"HOSTNAME"`,`"TMPDIR"`, `"XPC_SERVICE_NAME"`, `"XPC_FLAGS"` + +```toml +[tasks] +clean_command = { cmd = "python run_in_isolated_env.py", clean-env = true} +``` +This setting can also be set from the command line with `pixi run --clean-env TASK_NAME`. + +!!! warning "`clean-env` not supported on Windows" + On Windows it's hard to create a "clean environment" as `conda-forge` doesn't ship Windows compilers and Windows needs a lot of base variables. + Making this feature not worthy of implementing as the amount of edge cases will make it unusable. + ## Our task runner: deno_task_shell To support the different OS's (Windows, OSX and Linux), pixi integrates a shell that can run on all of them. diff --git a/docs/reference/cli.md b/docs/reference/cli.md index d77642adc..0064f09fc 100644 --- a/docs/reference/cli.md +++ b/docs/reference/cli.md @@ -179,7 +179,7 @@ You cannot run `pixi run source setup.bash` as `source` is not available in the - `--frozen`: install the environment as defined in the lock file, doesn't update `pixi.lock` if it isn't up-to-date with [manifest file](project_configuration.md). It can also be controlled by the `PIXI_FROZEN` environment variable (example: `PIXI_FROZEN=true`). - `--locked`: only install if the `pixi.lock` is up-to-date with the [manifest file](project_configuration.md)[^1]. It can also be controlled by the `PIXI_LOCKED` environment variable (example: `PIXI_LOCKED=true`). Conflicts with `--frozen`. - `--environment (-e)`: The environment to run the task in, if none are provided the default environment will be used or a selector will be given to select the right environment. - +- `--clean-env`: Run the task in a clean environment, this will remove all environment variables of the shell environment except for the ones pixi sets. THIS DOESN't WORK ON `Windows`. ```shell pixi run python pixi run cowpy "Hey pixi user" @@ -193,6 +193,11 @@ pixi run task argument1 argument2 # If you have multiple environments you can select the right one with the --environment flag. pixi run --environment cuda python + +# THIS DOESN'T WORK ON WINDOWS +# If you want to run a command in a clean environment you can use the --clean-env flag. +# The PATH should only contain the pixi environment here. +pixi run --clean-env "echo \$PATH" ``` !!! info diff --git a/docs/reference/project_configuration.md b/docs/reference/project_configuration.md index 33c141fd1..58df3477c 100644 --- a/docs/reference/project_configuration.md +++ b/docs/reference/project_configuration.md @@ -176,6 +176,7 @@ alias = { depends-on=["depending"]} download = { cmd="curl -o file.txt https://example.com/file.txt" , outputs=["file.txt"]} build = { cmd="npm build", cwd="frontend", inputs=["frontend/package.json", "frontend/*.js"]} run = { cmd="python run.py $ARGUMENT", env={ ARGUMENT="value" }} +clean-env = { cmd = "python isolated.py", clean-env = true} # Only on Unix! ``` You can modify this table using [`pixi task`](cli.md#task). diff --git a/examples/cpp-sdl/pixi.lock b/examples/cpp-sdl/pixi.lock index 15bb4a21e..4ae903b89 100644 --- a/examples/cpp-sdl/pixi.lock +++ b/examples/cpp-sdl/pixi.lock @@ -8,13 +8,13 @@ environments: - 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/attr-2.5.1-h166bdaf_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/binutils-2.40-h4852527_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/binutils_impl_linux-64-2.40-ha1999f0_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/binutils-2.40-h4852527_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/binutils_impl_linux-64-2.40-ha1999f0_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/binutils_linux-64-2.40-hdade7a5_3.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/c-compiler-1.5.2-h0b41bf4_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/ca-certificates-2024.6.2-hbcca054_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/cmake-3.26.4-hcfe8598_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/cxx-compiler-1.5.2-hf52228f_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/dbus-1.13.6-h5008d03_3.tar.bz2 @@ -31,7 +31,7 @@ environments: - 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/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/ld_impl_linux-64-2.40-hf3520f5_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.40-hf3520f5_2.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/libcap-2.69-h0f662aa_0.conda @@ -62,12 +62,13 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libuv-1.48.0-hd590300_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/libxcb-1.15-h0b41bf4_0.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/libzlib-1.3.1-h4ab18f5_1.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/make-4.3-hd18ef5c_1.tar.bz2 - 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/ncurses-6.5-h59595ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ninja-1.11.1-h924138e_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.3.0-h4ab18f5_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.3.1-h4ab18f5_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/pthread-stubs-0.4-h36c2ea0_1001.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/pulseaudio-client-16.1-hb77b528_5.conda @@ -82,13 +83,13 @@ 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-xproto-7.0.31-h7f98852_1007.tar.bz2 - 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/zlib-1.2.13-hd590300_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/zlib-1.3.1-h4ab18f5_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.6-ha6fb4c9_0.conda osx-64: - 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/c-compiler-1.5.2-hbf74d83_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/ca-certificates-2024.6.2-h8857fd0_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/cctools-973.0.1-h76f1dac_13.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/cctools_osx-64-973.0.1-hcc6d90d_13.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/clang-14-14.0.6-default_hdb78580_1.conda @@ -114,24 +115,25 @@ environments: - 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/libssh2-1.11.0-hd019ec5_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libuv-1.48.0-h67532ce_0.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/libzlib-1.3.1-h87427d6_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-openmp-18.1.6-h15ab845_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-tools-14.0.6-hc8e404f_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/make-4.3-h22f3db7_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.5-h5846eda_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/ninja-1.11.1-hb8565cd_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.3.0-h87427d6_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.3.1-h87427d6_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/rhash-1.4.3-h0dc2134_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/sdl2-2.26.5-hf0c8a7f_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/sigtool-0.1.3-h88f4db0_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/tapi-1100.0.11-h9ce4665_0.tar.bz2 - 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/zlib-1.2.13-h8a1eda9_5.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/zlib-1.3.1-h87427d6_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/zstd-1.5.6-h915ae27_0.conda osx-arm64: - 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/c-compiler-1.5.2-h5008568_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/ca-certificates-2024.6.2-hf0a4a13_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cctools-973.0.1-hcbb26d4_13.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cctools_osx-arm64-973.0.1-hef52d2f_13.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-14-14.0.6-default_h5dc8d65_1.conda @@ -157,28 +159,36 @@ environments: - 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/libssh2-1.11.0-h7a5bd25_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libuv-1.48.0-h93a5062_0.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/libzlib-1.3.1-hfb2fe0b_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-openmp-18.1.6-hde57baf_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-tools-14.0.6-hd1a9a77_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/make-4.3-he57ea6c_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.5-hb89a1cb_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ninja-1.11.1-hffc8910_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.3.0-hfb2fe0b_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.3.1-hfb2fe0b_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/rhash-1.4.3-hb547adb_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sdl2-2.26.5-hb7217d7_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sigtool-0.1.3-h44b9a77_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tapi-1100.0.11-he4954df_0.tar.bz2 - 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/zlib-1.2.13-h53f4e23_5.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zlib-1.3.1-hfb2fe0b_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.6-hb46c0d2_0.conda win-64: - conda: https://conda.anaconda.org/conda-forge/win-64/cmake-3.26.4-h1537add_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/cxx-compiler-1.5.2-h91493d7_0.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/win-64/make-4.3-h3d2af85_1.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/win-64/msys2-conda-epoch-20160418-1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/ninja-1.11.1-h91493d7_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/sdl2-2.26.5-h63175ca_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/vc-14.3-ha32ba9b_20.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.38.33135-h835141b_20.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/vs2015_runtime-14.38.33135-h22015db_20.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-h8a93ad2_20.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.40.33810-ha82c5b3_20.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vs2015_runtime-14.40.33810-h3bf8584_20.conda - conda: https://conda.anaconda.org/conda-forge/win-64/vs2019_win-64-19.29.30139-he1865b1_20.conda - conda: https://conda.anaconda.org/conda-forge/win-64/vswhere-3.1.4-h57928b3_0.conda default: @@ -216,7 +226,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libsystemd0-255-h3516f8a_1.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/libxcb-1.15-h0b41bf4_0.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/libzlib-1.3.1-h4ab18f5_1.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/mpg123-1.32.6-h59595ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pcre2-10.43-hcad00b1_0.conda @@ -241,9 +251,9 @@ environments: win-64: - conda: https://conda.anaconda.org/conda-forge/win-64/sdl2-2.26.5-h63175ca_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/vc-14.3-ha32ba9b_20.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.38.33135-h835141b_20.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/vs2015_runtime-14.38.33135-h22015db_20.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-h8a93ad2_20.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.40.33810-ha82c5b3_20.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vs2015_runtime-14.40.33810-h3bf8584_20.conda packages: - kind: conda name: _libgcc_mutex @@ -292,32 +302,34 @@ packages: - kind: conda name: binutils version: '2.40' - build: h4852527_1 - build_number: 1 + build: h4852527_2 + build_number: 2 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/binutils-2.40-h4852527_1.conda - sha256: 98f7bbce18e0f36a7e6831bb003bdc2f019dcce9ac3483da6ec45fe7e35b9546 - md5: dfaea5684bbbbf0b64a4c31f984d0661 + url: https://conda.anaconda.org/conda-forge/linux-64/binutils-2.40-h4852527_2.conda + sha256: 89f06321896092d2d931fc40cd6753f11dfe90ebb9d180c9512b614a7b623423 + md5: 0ea11d9433ec00000e96e82d6381671d depends: - binutils_impl_linux-64 >=2.40,<2.41.0a0 license: GPL-3.0-only - size: 31129 - timestamp: 1716583484405 + license_family: GPL + size: 31105 + timestamp: 1717523048004 - kind: conda name: binutils_impl_linux-64 version: '2.40' - build: ha1999f0_1 - build_number: 1 + build: ha1999f0_2 + build_number: 2 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/binutils_impl_linux-64-2.40-ha1999f0_1.conda - sha256: 852fd086e8b05da7650e8c532cfb391a532dc2d572f6aaadd5629d00a945bfe8 - md5: e901545940ebdc5c40017fab53642b3c + url: https://conda.anaconda.org/conda-forge/linux-64/binutils_impl_linux-64-2.40-ha1999f0_2.conda + sha256: 93965e6d95da53fa2ead26298eeb8ab53b8e9da0732c4baee2f4ce7d9c16aec1 + md5: 861a9d0b9ad43dcebe5a76f38a7d2527 depends: - - ld_impl_linux-64 2.40 hf3520f5_1 + - ld_impl_linux-64 2.40 hf3520f5_2 - sysroot_linux-64 license: GPL-3.0-only - size: 5528821 - timestamp: 1716583458455 + license_family: GPL + size: 5584502 + timestamp: 1717523025003 - kind: conda name: binutils_linux-64 version: '2.40' @@ -462,37 +474,37 @@ packages: timestamp: 1670951603925 - kind: conda name: ca-certificates - version: 2024.2.2 + version: 2024.6.2 build: h8857fd0_0 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/ca-certificates-2024.2.2-h8857fd0_0.conda - sha256: 54a794aedbb4796afeabdf54287b06b1d27f7b13b3814520925f4c2c80f58ca9 - md5: f2eacee8c33c43692f1ccfd33d0f50b1 + url: https://conda.anaconda.org/conda-forge/osx-64/ca-certificates-2024.6.2-h8857fd0_0.conda + sha256: ba0614477229fcb0f0666356f2c4686caa66f0ed1446e7c9666ce234abe2bacf + md5: 3c23a8cab15ae51ebc9efdc229fccecf license: ISC - size: 155665 - timestamp: 1706843838227 + size: 156145 + timestamp: 1717311781754 - kind: conda name: ca-certificates - version: 2024.2.2 + version: 2024.6.2 build: hbcca054_0 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2024.2.2-hbcca054_0.conda - sha256: 91d81bfecdbb142c15066df70cc952590ae8991670198f92c66b62019b251aeb - md5: 2f4327a1cbe7f022401b236e915a5fef + url: https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2024.6.2-hbcca054_0.conda + sha256: 979af0932b2a5a26112044891a2d79e402e5ae8166f50fa48b8ebae47c0a2d65 + md5: 847c3c2905cc467cea52c24f9cfa8080 license: ISC - size: 155432 - timestamp: 1706843687645 + size: 156035 + timestamp: 1717311767102 - kind: conda name: ca-certificates - version: 2024.2.2 + version: 2024.6.2 build: hf0a4a13_0 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/ca-certificates-2024.2.2-hf0a4a13_0.conda - sha256: 49bc3439816ac72d0c0e0f144b8cc870fdcc4adec2e861407ec818d8116b2204 - md5: fb416a1795f18dcc5a038bc2dc54edf9 + url: https://conda.anaconda.org/conda-forge/osx-arm64/ca-certificates-2024.6.2-hf0a4a13_0.conda + sha256: f5fd189d48965df396d060eb48628cbd9f083f1a1ea79c5236f60d655c7b9633 + md5: b534f104f102479402f88f73adf750f5 license: ISC - size: 155725 - timestamp: 1706844034242 + size: 156299 + timestamp: 1717311742040 - kind: conda name: cctools version: 973.0.1 @@ -540,7 +552,7 @@ packages: - ld64_osx-64 >=609,<610.0a0 - libcxx - libllvm14 >=14.0.6,<14.1.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - sigtool constrains: - cctools 973.0.1.* @@ -563,7 +575,7 @@ packages: - ld64_osx-arm64 >=609,<610.0a0 - libcxx - libllvm14 >=14.0.6,<14.1.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - sigtool constrains: - cctools 973.0.1.* @@ -792,7 +804,7 @@ packages: - libcxx >=15.0.7 - libexpat >=2.5.0,<3.0a0 - libuv - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - ncurses >=6.3,<7.0a0 - rhash <=1.4.3 - xz >=5.2.6,<6.0a0 @@ -818,7 +830,7 @@ packages: - libgcc-ng >=12 - libstdcxx-ng >=12 - libuv - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - ncurses >=6.3,<7.0a0 - rhash <=1.4.3 - xz >=5.2.6,<6.0a0 @@ -843,7 +855,7 @@ packages: - libcxx >=15.0.7 - libexpat >=2.5.0,<3.0a0 - libuv - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - ncurses >=6.3,<7.0a0 - rhash <=1.4.3 - xz >=5.2.6,<6.0a0 @@ -1360,17 +1372,18 @@ packages: - kind: conda name: ld_impl_linux-64 version: '2.40' - build: hf3520f5_1 - build_number: 1 + build: hf3520f5_2 + build_number: 2 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.40-hf3520f5_1.conda - sha256: cb54a873c1c84c47f7174093889686b626946b8143905ec0f76a56785b26a304 - md5: 33b7851c39c25da14f6a233a8ccbeeca + url: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.40-hf3520f5_2.conda + sha256: 5ed96807b26bc32d2d180e38e7340388ddfdb642950f888f7da78d274846afea + md5: 61b0bd5219ce7192b4e3633521a78975 constrains: - binutils_impl_linux-64 2.40 license: GPL-3.0-only - size: 707934 - timestamp: 1716583433869 + license_family: GPL + size: 708179 + timestamp: 1717523002366 - kind: conda name: libasprintf version: 0.22.5 @@ -1460,7 +1473,7 @@ packages: - 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 + - libzlib >=1.2.13,<2.0.0a0 - openssl >=3.3.0,<4.0a0 - zstd >=1.5.6,<1.6.0a0 license: curl @@ -1480,7 +1493,7 @@ packages: - libgcc-ng >=12 - libnghttp2 >=1.58.0,<2.0a0 - libssh2 >=1.11.0,<2.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - openssl >=3.3.0,<4.0a0 - zstd >=1.5.6,<1.6.0a0 license: curl @@ -1499,7 +1512,7 @@ packages: - 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 + - libzlib >=1.2.13,<2.0.0a0 - openssl >=3.3.0,<4.0a0 - zstd >=1.5.6,<1.6.0a0 license: curl @@ -1788,7 +1801,7 @@ packages: - libffi >=3.4,<4.0a0 - libgcc-ng >=12 - libiconv >=1.17,<2.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - pcre2 >=10.43,<10.44.0a0 constrains: - glib 2.80.2 *_0 @@ -1853,7 +1866,7 @@ packages: md5: ed06753e2ba7c66ed0ca7f19578fcb68 depends: - libcxx >=15 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 license: Apache-2.0 WITH LLVM-exception license_family: Apache size: 22467131 @@ -1869,7 +1882,7 @@ packages: md5: 9f3dce5d26ea56a9000cd74c034582bd depends: - libcxx >=15 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 license: Apache-2.0 WITH LLVM-exception license_family: Apache size: 20571387 @@ -1889,7 +1902,7 @@ packages: - libev >=4.33,<5.0a0 - libgcc-ng >=12 - libstdcxx-ng >=12 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - openssl >=3.2.0,<4.0a0 license: MIT license_family: MIT @@ -1910,7 +1923,7 @@ packages: - libcxx >=16.0.6 - libev >=4.33,<4.34.0a0 - libev >=4.33,<5.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - openssl >=3.2.0,<4.0a0 license: MIT license_family: MIT @@ -1931,7 +1944,7 @@ packages: - libcxx >=16.0.6 - libev >=4.33,<4.34.0a0 - libev >=4.33,<5.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - openssl >=3.2.0,<4.0a0 license: MIT license_family: MIT @@ -2014,7 +2027,7 @@ packages: md5: 1f5a58e686b13bcfde88b93f547d23fe depends: - libgcc-ng >=12 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - openssl >=3.1.1,<4.0a0 license: BSD-3-Clause license_family: BSD @@ -2029,7 +2042,7 @@ packages: sha256: bb57d0c53289721fff1eeb3103a1c6a988178e88d8a8f4345b0b91a35f0e0015 md5: 029f7dc931a3b626b94823bc77830b01 depends: - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - openssl >=3.1.1,<4.0a0 license: BSD-3-Clause license_family: BSD @@ -2044,7 +2057,7 @@ packages: sha256: f3886763b88f4b24265db6036535ef77b7b77ce91b1cbe588c0fbdd861eec515 md5: ca3a72efba692c59a90d4b9fc0dfe774 depends: - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - openssl >=3.1.1,<4.0a0 license: BSD-3-Clause license_family: BSD @@ -2170,51 +2183,55 @@ packages: timestamp: 1682082368177 - kind: conda name: libzlib - version: 1.2.13 - build: h53f4e23_5 - build_number: 5 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/libzlib-1.2.13-h53f4e23_5.conda - sha256: ab1c8aefa2d54322a63aaeeefe9cf877411851738616c4068e0dccc66b9c758a - md5: 1a47f5236db2e06a320ffa0392f81bd8 + version: 1.3.1 + build: h4ab18f5_1 + build_number: 1 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.3.1-h4ab18f5_1.conda + sha256: adf6096f98b537a11ae3729eaa642b0811478f0ea0402ca67b5108fe2cb0010d + md5: 57d7dc60e9325e3de37ff8dffd18e814 + depends: + - libgcc-ng >=12 constrains: - - zlib 1.2.13 *_5 + - zlib 1.3.1 *_1 license: Zlib license_family: Other - size: 48102 - timestamp: 1686575426584 + size: 61574 + timestamp: 1716874187109 - kind: conda name: libzlib - version: 1.2.13 - build: h8a1eda9_5 - build_number: 5 + version: 1.3.1 + build: h87427d6_1 + build_number: 1 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/libzlib-1.2.13-h8a1eda9_5.conda - sha256: fc58ad7f47ffea10df1f2165369978fba0a1cc32594aad778f5eec725f334867 - md5: 4a3ad23f6e16f99c04e166767193d700 + url: https://conda.anaconda.org/conda-forge/osx-64/libzlib-1.3.1-h87427d6_1.conda + sha256: 80a62db652b1da0ccc100812a1d86e94f75028968991bfb17f9536f3aa72d91d + md5: b7575b5aa92108dcc9aaab0f05f2dbce + depends: + - __osx >=10.13 constrains: - - zlib 1.2.13 *_5 + - zlib 1.3.1 *_1 license: Zlib license_family: Other - size: 59404 - timestamp: 1686575566695 + size: 57372 + timestamp: 1716874211519 - kind: conda name: libzlib - version: 1.2.13 - build: hd590300_5 - build_number: 5 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.2.13-hd590300_5.conda - sha256: 370c7c5893b737596fd6ca0d9190c9715d89d888b8c88537ae1ef168c25e82e4 - md5: f36c115f1ee199da648e0597ec2047ad + version: 1.3.1 + build: hfb2fe0b_1 + build_number: 1 + subdir: osx-arm64 + url: https://conda.anaconda.org/conda-forge/osx-arm64/libzlib-1.3.1-hfb2fe0b_1.conda + sha256: c34365dd37b0eab27b9693af32a1f7f284955517c2cc91f1b88a7ef4738ff03e + md5: 636077128927cf79fd933276dc3aed47 depends: - - libgcc-ng >=12 + - __osx >=11.0 constrains: - - zlib 1.2.13 *_5 + - zlib 1.3.1 *_1 license: Zlib license_family: Other - size: 61588 - timestamp: 1686575217516 + size: 46921 + timestamp: 1716874262512 - kind: conda name: llvm-openmp version: 18.1.6 @@ -2228,6 +2245,7 @@ packages: constrains: - openmp 18.1.6|18.1.6.* license: Apache-2.0 WITH LLVM-exception + license_family: APACHE size: 300479 timestamp: 1716753668057 - kind: conda @@ -2243,6 +2261,7 @@ packages: constrains: - openmp 18.1.6|18.1.6.* license: Apache-2.0 WITH LLVM-exception + license_family: APACHE size: 276591 timestamp: 1716753686325 - kind: conda @@ -2256,7 +2275,7 @@ packages: md5: a55c7b960756f104bcbf5bfcd5c8890a depends: - libllvm14 14.0.6 hc8e404f_4 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 constrains: - llvmdev 14.0.6 - clang 14.0.6.* @@ -2277,7 +2296,7 @@ packages: md5: fd0a3b0a22ba6f5ace86ce5b5e26c4c5 depends: - libllvm14 14.0.6 hd1a9a77_4 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 constrains: - llvmdev 14.0.6 - clang 14.0.6.* @@ -2302,6 +2321,139 @@ packages: license_family: BSD size: 143402 timestamp: 1674727076728 +- kind: conda + name: m2w64-gcc-libgfortran + version: 5.3.0 + build: '6' + build_number: 6 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/m2w64-gcc-libgfortran-5.3.0-6.tar.bz2 + sha256: 9de95a7996d5366ae0808eef2acbc63f9b11b874aa42375f55379e6715845dc6 + md5: 066552ac6b907ec6d72c0ddab29050dc + depends: + - m2w64-gcc-libs-core + - msys2-conda-epoch ==20160418 + license: GPL, LGPL, FDL, custom + size: 350687 + timestamp: 1608163451316 +- kind: conda + name: m2w64-gcc-libs + version: 5.3.0 + build: '7' + build_number: 7 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/m2w64-gcc-libs-5.3.0-7.tar.bz2 + sha256: 3bd1ab02b7c89a5b153a17be03b36d833f1517ff2a6a77ead7c4a808b88196aa + md5: fe759119b8b3bfa720b8762c6fdc35de + depends: + - m2w64-gcc-libgfortran + - m2w64-gcc-libs-core + - m2w64-gmp + - m2w64-libwinpthread-git + - msys2-conda-epoch ==20160418 + license: GPL3+, partial:GCCRLE, partial:LGPL2+ + size: 532390 + timestamp: 1608163512830 +- kind: conda + name: m2w64-gcc-libs-core + version: 5.3.0 + build: '7' + build_number: 7 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/m2w64-gcc-libs-core-5.3.0-7.tar.bz2 + sha256: 58afdfe859ed2e9a9b1cc06bc408720cb2c3a6a132e59d4805b090d7574f4ee0 + md5: 4289d80fb4d272f1f3b56cfe87ac90bd + depends: + - m2w64-gmp + - m2w64-libwinpthread-git + - msys2-conda-epoch ==20160418 + license: GPL3+, partial:GCCRLE, partial:LGPL2+ + size: 219240 + timestamp: 1608163481341 +- kind: conda + name: m2w64-gmp + version: 6.1.0 + build: '2' + build_number: 2 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/m2w64-gmp-6.1.0-2.tar.bz2 + sha256: 7e3cd95f554660de45f8323fca359e904e8d203efaf07a4d311e46d611481ed1 + md5: 53a1c73e1e3d185516d7e3af177596d9 + depends: + - msys2-conda-epoch ==20160418 + license: LGPL3 + size: 743501 + timestamp: 1608163782057 +- kind: conda + name: m2w64-libwinpthread-git + version: 5.0.0.4634.697f757 + build: '2' + build_number: 2 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/m2w64-libwinpthread-git-5.0.0.4634.697f757-2.tar.bz2 + sha256: f63a09b2cae7defae0480f1740015d6235f1861afa6fe2e2d3e10bd0d1314ee0 + md5: 774130a326dee16f1ceb05cc687ee4f0 + depends: + - msys2-conda-epoch ==20160418 + license: MIT, BSD + size: 31928 + timestamp: 1608166099896 +- kind: conda + name: make + version: '4.3' + build: h22f3db7_1 + build_number: 1 + subdir: osx-64 + url: https://conda.anaconda.org/conda-forge/osx-64/make-4.3-h22f3db7_1.tar.bz2 + sha256: adef15126b518548b69ecaef24e22f88fa0a6358bd3c11e791af214f7344983b + md5: ac4a1dd58e6d821c518ae0011e8592b7 + license: GPL-3.0-or-later + license_family: GPL + size: 255465 + timestamp: 1602706542653 +- kind: conda + name: make + version: '4.3' + build: h3d2af85_1 + build_number: 1 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/make-4.3-h3d2af85_1.tar.bz2 + sha256: f31b00c710df71f2f75c641272ecb1f9bd1e15a5a77510055120641215487fbb + md5: c3be283d3d278c379b50137a2a17f869 + depends: + - m2w64-gcc-libs + license: GPL-3.0-or-later + license_family: GPL + size: 6245358 + timestamp: 1602706995515 +- kind: conda + name: make + version: '4.3' + build: hd18ef5c_1 + build_number: 1 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/make-4.3-hd18ef5c_1.tar.bz2 + sha256: 4a5fe7c80bb0de0015328e2d3fc8db1736f528cb1fd53cd0d5527e24269a4f7c + md5: 4049ebfd3190b580dffe76daed26155a + depends: + - libgcc-ng >=7.5.0 + license: GPL-3.0-or-later + license_family: GPL + size: 518896 + timestamp: 1602706451788 +- kind: conda + name: make + version: '4.3' + build: he57ea6c_1 + build_number: 1 + subdir: osx-arm64 + url: https://conda.anaconda.org/conda-forge/osx-arm64/make-4.3-he57ea6c_1.tar.bz2 + sha256: a011e3e1c4caec821eb4213d0a0154d39e5f81a44d2e8bafe6f84e7840c3909e + md5: 1939d04ef89e38fde652ee8c669e092f + license: GPL-3.0-or-later + license_family: GPL + size: 253227 + timestamp: 1602706492919 - kind: conda name: mpg123 version: 1.32.6 @@ -2317,6 +2469,17 @@ packages: license_family: LGPL size: 491811 timestamp: 1712327176955 +- kind: conda + name: msys2-conda-epoch + version: '20160418' + build: '1' + build_number: 1 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/msys2-conda-epoch-20160418-1.tar.bz2 + sha256: 99358d58d778abee4dca82ad29fb58058571f19b0f86138363c260049d4ac7f1 + md5: b0309b72560df66f71a9d5e34a5efdfa + size: 3227 + timestamp: 1608166968312 - kind: conda name: ncurses version: '6.5' @@ -2413,13 +2576,12 @@ packages: timestamp: 1676837935565 - kind: conda name: openssl - version: 3.3.0 - build: h4ab18f5_3 - build_number: 3 + version: 3.3.1 + build: h4ab18f5_0 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.3.0-h4ab18f5_3.conda - sha256: 33dcea0ed3a61b2de6b66661cdd55278640eb99d676cd129fbff3e53641fa125 - md5: 12ea6d0d4ed54530eaed18e4835c1f7c + url: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.3.1-h4ab18f5_0.conda + sha256: 9691f8bd6394c5bb0b8d2f47cd1467b91bd5b1df923b69e6b517f54496ee4b50 + md5: a41fa0e391cc9e0d6b78ac69ca047a6c depends: - ca-certificates - libgcc-ng >=12 @@ -2427,17 +2589,16 @@ packages: - pyopenssl >=22.1 license: Apache-2.0 license_family: Apache - size: 2891147 - timestamp: 1716468354865 + size: 2896170 + timestamp: 1717546157673 - kind: conda name: openssl - version: 3.3.0 - build: h87427d6_3 - build_number: 3 + version: 3.3.1 + build: h87427d6_0 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.3.0-h87427d6_3.conda - sha256: 58ffbdce44ac18c6632a2ce1531d06e3fb2e855d40728ba3a2b709158b9a1c33 - md5: ec504fefb403644d893adffb6e7a2dbe + url: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.3.1-h87427d6_0.conda + sha256: 272bee725877f417fef923f5e7852ebfe06b40b6bf3364f4498b2b3f568d5e2c + md5: 1bdad93ae01353340f194c5d879745db depends: - __osx >=10.13 - ca-certificates @@ -2445,17 +2606,16 @@ packages: - pyopenssl >=22.1 license: Apache-2.0 license_family: Apache - size: 2542959 - timestamp: 1716468436467 + size: 2547614 + timestamp: 1717546605131 - kind: conda name: openssl - version: 3.3.0 - build: hfb2fe0b_3 - build_number: 3 + version: 3.3.1 + build: hfb2fe0b_0 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.3.0-hfb2fe0b_3.conda - sha256: 6f41c163ab57e7499dff092be4498614651f0f6432e12c2b9f06859a8bc39b75 - md5: 730f618b008b3c13c1e3f973408ddd67 + url: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.3.1-hfb2fe0b_0.conda + sha256: 6cb2d44f027b259be8cba2240bdf21af7b426e4132a73e0052f7173ab8b60ab0 + md5: c4a0bbd96a0da60bf265dac62c87f4e1 depends: - __osx >=11.0 - ca-certificates @@ -2463,8 +2623,8 @@ packages: - pyopenssl >=22.1 license: Apache-2.0 license_family: Apache - size: 2893954 - timestamp: 1716468329572 + size: 2891941 + timestamp: 1717545846389 - kind: conda name: pcre2 version: '10.43' @@ -2476,7 +2636,7 @@ packages: depends: - bzip2 >=1.0.8,<2.0a0 - libgcc-ng >=12 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 license: BSD-3-Clause license_family: BSD size: 950847 @@ -2705,52 +2865,52 @@ packages: - kind: conda name: vc version: '14.3' - build: ha32ba9b_20 + build: h8a93ad2_20 build_number: 20 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-ha32ba9b_20.conda - sha256: 16cb562ce210ee089060f4aa52f3225a571c83885632a870ea2297d460e3bb00 - md5: 2abfb5cb1b9d41a50f765d60f0be563d + url: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-h8a93ad2_20.conda + sha256: 23ac5feb15a9adf3ab2b8c4dcd63650f8b7ae860c5ceb073e49cf71d203eddef + md5: 8558f367e1d7700554f7cdb823c46faf depends: - - vc14_runtime >=14.38.33135 + - vc14_runtime >=14.40.33810 track_features: - vc14 license: BSD-3-Clause license_family: BSD - size: 17122 - timestamp: 1716231244564 + size: 17391 + timestamp: 1717709040616 - kind: conda name: vc14_runtime - version: 14.38.33135 - build: h835141b_20 + version: 14.40.33810 + build: ha82c5b3_20 build_number: 20 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.38.33135-h835141b_20.conda - sha256: 05b07e0dd3fd49dcc98a365ff661ed6b65e2f0266b4bb03d273131ffdba663be - md5: e971b35a5765862fabc4ba6e5ddf9470 + url: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.40.33810-ha82c5b3_20.conda + sha256: af3cfa347e3d7c1277e9b964b0849a9a9f095bff61836cb3c3a89862fbc32e17 + md5: e39cc4c34c53654ec939558993d9dc5b depends: - ucrt >=10.0.20348.0 constrains: - - vs2015_runtime 14.38.33135.* *_20 + - vs2015_runtime 14.40.33810.* *_20 license: LicenseRef-ProprietaryMicrosoft license_family: Proprietary - size: 744189 - timestamp: 1716231234745 + size: 751934 + timestamp: 1717709031266 - kind: conda name: vs2015_runtime - version: 14.38.33135 - build: h22015db_20 + version: 14.40.33810 + build: h3bf8584_20 build_number: 20 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/vs2015_runtime-14.38.33135-h22015db_20.conda - sha256: 2cebabc39766ea051e577762d813ad4151e9d0ff96f3ff3374d575a272951416 - md5: bb4f5ab332e46e1b022d8842e72905b1 + url: https://conda.anaconda.org/conda-forge/win-64/vs2015_runtime-14.40.33810-h3bf8584_20.conda + sha256: 0c2803f7a788c51f28235a7228dc2ab3f107b4b16ab0845a3e595c8c51e50a7a + md5: c21f1b4a3a30bbc3ef35a50957578e0e depends: - - vc14_runtime >=14.38.33135 + - vc14_runtime >=14.40.33810 license: BSD-3-Clause license_family: BSD - size: 17124 - timestamp: 1716231247457 + size: 17395 + timestamp: 1717709043353 - kind: conda name: vs2019_win-64 version: 19.29.30139 @@ -2927,50 +3087,52 @@ packages: timestamp: 1660346964847 - kind: conda name: zlib - version: 1.2.13 - build: h53f4e23_5 - build_number: 5 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/zlib-1.2.13-h53f4e23_5.conda - sha256: de0ee1e24aa6867058d3b852a15c8d7f49f262f5828772700c647186d4a96bbe - md5: a08383f223b10b71492d27566fafbf6c + version: 1.3.1 + build: h4ab18f5_1 + build_number: 1 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/zlib-1.3.1-h4ab18f5_1.conda + sha256: cee16ab07a11303de721915f0a269e8c7a54a5c834aa52f74b1cc3a59000ade8 + md5: 9653f1bf3766164d0e65fa723cabbc54 depends: - - libzlib 1.2.13 h53f4e23_5 + - libgcc-ng >=12 + - libzlib 1.3.1 h4ab18f5_1 license: Zlib license_family: Other - size: 79577 - timestamp: 1686575471024 + size: 93004 + timestamp: 1716874213487 - kind: conda name: zlib - version: 1.2.13 - build: h8a1eda9_5 - build_number: 5 + version: 1.3.1 + build: h87427d6_1 + build_number: 1 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/zlib-1.2.13-h8a1eda9_5.conda - sha256: d1f4c82fd7bd240a78ce8905e931e68dca5f523c7da237b6b63c87d5625c5b35 - md5: 75a8a98b1c4671c5d2897975731da42d + url: https://conda.anaconda.org/conda-forge/osx-64/zlib-1.3.1-h87427d6_1.conda + sha256: 41bd5fef28b2755d637e3a8ea5c84010628392fbcf80c7e3d7370aaced7ee4fe + md5: 3ac9ef8975965f9698dbedd2a4cc5894 depends: - - libzlib 1.2.13 h8a1eda9_5 + - __osx >=10.13 + - libzlib 1.3.1 h87427d6_1 license: Zlib license_family: Other - size: 90764 - timestamp: 1686575574678 + size: 88782 + timestamp: 1716874245467 - kind: conda name: zlib - version: 1.2.13 - build: hd590300_5 - build_number: 5 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/zlib-1.2.13-hd590300_5.conda - sha256: 9887a04d7e7cb14bd2b52fa01858f05a6d7f002c890f618d9fcd864adbfecb1b - md5: 68c34ec6149623be41a1933ab996a209 + version: 1.3.1 + build: hfb2fe0b_1 + build_number: 1 + subdir: osx-arm64 + url: https://conda.anaconda.org/conda-forge/osx-arm64/zlib-1.3.1-hfb2fe0b_1.conda + sha256: 87360c2dc662916aac37cf01e53324b4f4f78db6f399220818076752b093ede5 + md5: f27e021db7862b6ddbc1d3578f10d883 depends: - - libgcc-ng >=12 - - libzlib 1.2.13 hd590300_5 + - __osx >=11.0 + - libzlib 1.3.1 hfb2fe0b_1 license: Zlib license_family: Other - size: 92825 - timestamp: 1686575231103 + size: 78260 + timestamp: 1716874280334 - kind: conda name: zstd version: 1.5.6 @@ -2981,7 +3143,7 @@ packages: md5: 4cb2cd56f039b129bb0e491c1164167e depends: - __osx >=10.9 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 license: BSD-3-Clause license_family: BSD size: 498900 @@ -2997,7 +3159,7 @@ packages: depends: - libgcc-ng >=12 - libstdcxx-ng >=12 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 license: BSD-3-Clause license_family: BSD size: 554846 @@ -3012,7 +3174,7 @@ packages: md5: d96942c06c3e84bfcc5efb038724a7fd depends: - __osx >=11.0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 license: BSD-3-Clause license_family: BSD size: 405089 diff --git a/examples/cpp-sdl/pixi.toml b/examples/cpp-sdl/pixi.toml index 219b7dde8..30fe4bac0 100644 --- a/examples/cpp-sdl/pixi.toml +++ b/examples/cpp-sdl/pixi.toml @@ -17,6 +17,7 @@ sdl2 = "2.26.5.*" cmake = "3.26.4.*" cxx-compiler = "1.5.2.*" ninja = "1.11.1.*" +make = ">=4.3,<5" [feature.build.tasks.configure] # Configures CMake diff --git a/pixi.lock b/pixi.lock index 97381306e..2320b724c 100644 --- a/pixi.lock +++ b/pixi.lock @@ -10,14 +10,14 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.7.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/noarch/babel-2.14.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/binutils-2.40-h4852527_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/binutils_impl_linux-64-2.40-ha1999f0_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/binutils-2.40-h4852527_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/binutils_impl_linux-64-2.40-ha1999f0_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/binutils_linux-64-2.40-hdade7a5_3.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/c-compiler-1.7.0-hd590300_1.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/ca-certificates-2024.6.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/cairocffi-1.6.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cairosvg-2.7.1-pyhd8ed1ab_0.conda @@ -75,7 +75,7 @@ environments: - 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/krb5-1.21.2-h659d440_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-hf3520f5_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.40-hf3520f5_2.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/libasprintf-0.22.5-h661eb56_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libasprintf-devel-0.22.5-h661eb56_2.conda @@ -107,7 +107,7 @@ environments: - 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/libzlib-1.2.13-hd590300_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.3.1-h4ab18f5_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/markdown-3.6-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/noarch/mdx_truly_sane_lists-1.3-pyhd8ed1ab_0.tar.bz2 @@ -118,9 +118,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/mkdocs-material-extensions-1.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/mkdocs-redirects-1.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.5-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/nodeenv-1.9.1-pyhd8ed1ab_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-h4ab18f5_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.3.1-h4ab18f5_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/paginate-0.5.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda @@ -152,7 +152,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/pyyaml-env-tag-0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8228510_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/regex-2024.5.15-py312h9a8786e_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ruamel.yaml-0.18.6-py312h98912ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ruamel.yaml.clib-0.2.8-py312h98912ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/rust-1.77.2-h70c747d_1.conda @@ -168,8 +168,8 @@ environments: - 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/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomlkit-0.12.5-pyha770c72_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-extensions-4.12.1-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.12.1-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.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/unidecode-1.3.8-pyhd8ed1ab_0.conda @@ -192,7 +192,7 @@ environments: - 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/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/zlib-1.3.1-h4ab18f5_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.6-ha6fb4c9_0.conda osx-64: - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.7.0-pyhd8ed1ab_0.conda @@ -201,7 +201,7 @@ environments: - 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/ca-certificates-2024.6.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/cairocffi-1.6.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cairosvg-2.7.1-pyhd8ed1ab_0.conda @@ -269,7 +269,7 @@ environments: - 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/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/libzlib-1.2.13-h8a1eda9_5.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libzlib-1.3.1-h87427d6_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/markdown-3.6-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/noarch/mdx_truly_sane_lists-1.3-pyhd8ed1ab_0.tar.bz2 @@ -280,9 +280,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/mkdocs-material-extensions-1.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/mkdocs-redirects-1.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.5-h5846eda_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/nodeenv-1.9.1-pyhd8ed1ab_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-h87427d6_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.3.1-h87427d6_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/paginate-0.5.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda @@ -314,7 +314,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/pyyaml-env-tag-0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/readline-8.2-h9e318b2_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/regex-2024.5.15-py312hbd25219_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/ruamel.yaml-0.18.6-py312h41838bb_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/ruamel.yaml.clib-0.2.8-py312h41838bb_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/rust-1.77.2-h7e1429e_1.conda @@ -329,8 +329,8 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-h1abcd95_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomlkit-0.12.5-pyha770c72_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-extensions-4.12.1-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.12.1-pyha770c72_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/unidecode-1.3.8-pyhd8ed1ab_0.conda @@ -344,7 +344,7 @@ environments: - 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/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/zlib-1.3.1-h87427d6_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/zstd-1.5.6-h915ae27_0.conda osx-arm64: - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.7.0-pyhd8ed1ab_0.conda @@ -353,7 +353,7 @@ environments: - 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/ca-certificates-2024.6.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/cairocffi-1.6.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cairosvg-2.7.1-pyhd8ed1ab_0.conda @@ -421,7 +421,7 @@ environments: - 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/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/libzlib-1.2.13-h53f4e23_5.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzlib-1.3.1-hfb2fe0b_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/markdown-3.6-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/noarch/mdx_truly_sane_lists-1.3-pyhd8ed1ab_0.tar.bz2 @@ -432,9 +432,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/mkdocs-material-extensions-1.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/mkdocs-redirects-1.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.5-hb89a1cb_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/nodeenv-1.9.1-pyhd8ed1ab_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-hfb2fe0b_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.3.1-hfb2fe0b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/paginate-0.5.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda @@ -466,7 +466,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/pyyaml-env-tag-0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/readline-8.2-h92ec313_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/regex-2024.5.15-py312h7e5086c_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ruamel.yaml-0.18.6-py312he37b823_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ruamel.yaml.clib-0.2.8-py312he37b823_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/rust-1.77.2-h4ff7c5d_1.conda @@ -481,8 +481,8 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h5083fa2_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomlkit-0.12.5-pyha770c72_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-extensions-4.12.1-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.12.1-pyha770c72_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/unidecode-1.3.8-pyhd8ed1ab_0.conda @@ -496,7 +496,7 @@ environments: - 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/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/zlib-1.3.1-hfb2fe0b_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.6-hb46c0d2_0.conda win-64: - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.7.0-pyhd8ed1ab_0.conda @@ -504,7 +504,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.14.0-pyhd8ed1ab_0.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/ca-certificates-2024.2.2-h56e8100_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/ca-certificates-2024.6.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/cairocffi-1.6.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cairosvg-2.7.1-pyhd8ed1ab_0.conda @@ -557,7 +557,7 @@ environments: - 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/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/libzlib-1.2.13-hcfcfb64_5.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libzlib-1.3.1-h2466b09_1.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 @@ -573,9 +573,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/mkdocs-material-extensions-1.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/mkdocs-redirects-1.2.1-pyhd8ed1ab_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/nodeenv-1.8.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.9.1-pyhd8ed1ab_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-h2466b09_3.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.3.1-h2466b09_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/paginate-0.5.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda @@ -605,7 +605,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/pyyaml-6.0.1-py312he70551f_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyyaml-env-tag-0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/regex-2024.5.15-py312h4389bb4_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/ruamel.yaml-0.18.6-py312he70551f_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/ruamel.yaml.clib-0.2.8-py312he70551f_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/rust-1.77.2-hf8d6059_1.conda @@ -620,18 +620,18 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h5226925_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomlkit-0.12.5-pyha770c72_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-extensions-4.12.1-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.12.1-pyha770c72_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/ukkonen-1.0.1-py312h0d7def4_4.conda - conda: https://conda.anaconda.org/conda-forge/noarch/unidecode-1.3.8-pyhd8ed1ab_0.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-ha32ba9b_20.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.38.33135-h835141b_20.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-h8a93ad2_20.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.40.33810-ha82c5b3_20.conda - conda: https://conda.anaconda.org/conda-forge/noarch/verspec-0.1.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.26.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/vs2015_runtime-14.38.33135-h22015db_20.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vs2015_runtime-14.40.33810-h3bf8584_20.conda - conda: https://conda.anaconda.org/conda-forge/win-64/watchdog-4.0.1-py312h2e8e312_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/win_inet_pton-1.1.0-pyhd8ed1ab_6.tar.bz2 @@ -640,7 +640,7 @@ environments: - 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/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/zlib-1.3.1-h2466b09_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/zstd-1.5.6-h0ea2cb4_0.conda docs: channels: @@ -652,7 +652,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.14.0-pyhd8ed1ab_0.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/ca-certificates-2024.2.2-hbcca054_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2024.6.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/cairocffi-1.6.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cairosvg-2.7.1-pyhd8ed1ab_0.conda @@ -682,7 +682,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.4-pyhd8ed1ab_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-hf3520f5_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.40-hf3520f5_2.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/libasprintf-0.22.5-h661eb56_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libasprintf-devel-0.22.5-h661eb56_2.conda @@ -705,7 +705,7 @@ environments: - 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/libzlib-1.2.13-hd590300_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.3.1-h4ab18f5_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/markdown-3.6-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/noarch/mdx_truly_sane_lists-1.3-pyhd8ed1ab_0.tar.bz2 @@ -717,7 +717,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/mkdocs-redirects-1.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.5-h59595ed_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-h4ab18f5_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.3.1-h4ab18f5_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/paginate-0.5.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda @@ -740,13 +740,13 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/pyyaml-env-tag-0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8228510_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/regex-2024.5.15-py312h9a8786e_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-70.0.0-pyhd8ed1ab_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/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/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-extensions-4.12.1-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.12.1-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/verspec-0.1.0-pyhd8ed1ab_0.tar.bz2 @@ -766,13 +766,13 @@ environments: - 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/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/zlib-1.3.1-h4ab18f5_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.6-ha6fb4c9_0.conda osx-64: - conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.14.0-pyhd8ed1ab_0.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/ca-certificates-2024.2.2-h8857fd0_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ca-certificates-2024.6.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/cairocffi-1.6.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cairosvg-2.7.1-pyhd8ed1ab_0.conda @@ -821,7 +821,7 @@ environments: - 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/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/libzlib-1.2.13-h8a1eda9_5.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libzlib-1.3.1-h87427d6_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/markdown-3.6-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/noarch/mdx_truly_sane_lists-1.3-pyhd8ed1ab_0.tar.bz2 @@ -833,7 +833,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/mkdocs-redirects-1.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.5-h5846eda_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-h87427d6_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.3.1-h87427d6_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/paginate-0.5.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda @@ -856,13 +856,13 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/pyyaml-env-tag-0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/readline-8.2-h9e318b2_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/regex-2024.5.15-py312hbd25219_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-70.0.0-pyhd8ed1ab_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/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/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-extensions-4.12.1-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.12.1-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/verspec-0.1.0-pyhd8ed1ab_0.tar.bz2 @@ -873,13 +873,13 @@ environments: - 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/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/zlib-1.3.1-h87427d6_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/zstd-1.5.6-h915ae27_0.conda osx-arm64: - conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.14.0-pyhd8ed1ab_0.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/ca-certificates-2024.2.2-hf0a4a13_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ca-certificates-2024.6.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/cairocffi-1.6.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cairosvg-2.7.1-pyhd8ed1ab_0.conda @@ -928,7 +928,7 @@ environments: - 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/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/libzlib-1.2.13-h53f4e23_5.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzlib-1.3.1-hfb2fe0b_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/markdown-3.6-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/noarch/mdx_truly_sane_lists-1.3-pyhd8ed1ab_0.tar.bz2 @@ -940,7 +940,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/mkdocs-redirects-1.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.5-hb89a1cb_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-hfb2fe0b_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.3.1-hfb2fe0b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/paginate-0.5.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda @@ -963,13 +963,13 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/pyyaml-env-tag-0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/readline-8.2-h92ec313_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/regex-2024.5.15-py312h7e5086c_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-70.0.0-pyhd8ed1ab_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/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/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-extensions-4.12.1-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.12.1-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/verspec-0.1.0-pyhd8ed1ab_0.tar.bz2 @@ -980,13 +980,13 @@ environments: - 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/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/zlib-1.3.1-hfb2fe0b_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.6-hb46c0d2_0.conda win-64: - conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.14.0-pyhd8ed1ab_0.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/ca-certificates-2024.2.2-h56e8100_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/ca-certificates-2024.6.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/cairocffi-1.6.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cairosvg-2.7.1-pyhd8ed1ab_0.conda @@ -1027,7 +1027,7 @@ environments: - 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/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/libzlib-1.2.13-hcfcfb64_5.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libzlib-1.3.1-h2466b09_1.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 @@ -1044,7 +1044,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/mkdocs-redirects-1.2.1-pyhd8ed1ab_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/win-64/openjpeg-2.5.2-h3d672ee_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.3.0-h2466b09_3.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.3.1-h2466b09_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/paginate-0.5.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda @@ -1066,20 +1066,20 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/pyyaml-6.0.1-py312he70551f_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyyaml-env-tag-0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/regex-2024.5.15-py312h4389bb4_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-70.0.0-pyhd8ed1ab_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/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/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-extensions-4.12.1-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.12.1-pyha770c72_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/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-ha32ba9b_20.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.38.33135-h835141b_20.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-h8a93ad2_20.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.40.33810-ha82c5b3_20.conda - conda: https://conda.anaconda.org/conda-forge/noarch/verspec-0.1.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/vs2015_runtime-14.38.33135-h22015db_20.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vs2015_runtime-14.40.33810-h3bf8584_20.conda - conda: https://conda.anaconda.org/conda-forge/win-64/watchdog-4.0.1-py312h2e8e312_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/win_inet_pton-1.1.0-pyhd8ed1ab_6.tar.bz2 @@ -1088,7 +1088,7 @@ environments: - 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/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/zlib-1.3.1-h2466b09_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/zstd-1.5.6-h0ea2cb4_0.conda schema: channels: @@ -1100,13 +1100,13 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.7.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/linux-64/bzip2-1.0.8-hd590300_5.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/ca-certificates-2024.6.2-hbcca054_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/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.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/iniconfig-2.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-3.2.0-pyhd8ed1ab_3.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.40-hf3520f5_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.40-hf3520f5_2.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/libgcc-ng-13.2.0-h77fa898_7.conda @@ -1115,9 +1115,9 @@ environments: - 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/libuuid-2.38.1-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/libzlib-1.2.13-hd590300_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.3.1-h4ab18f5_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.5-h59595ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.3.0-h4ab18f5_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.3.1-h4ab18f5_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.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/pydantic-2.6.4-pyhd8ed1ab_0.conda @@ -1133,8 +1133,8 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/taplo-0.9.1-h1ff36dd_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/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - - 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-extensions-4.12.1-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.12.1-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_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 @@ -1143,7 +1143,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.7.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/bzip2-1.0.8-h10d778d_5.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/ca-certificates-2024.6.2-h8857fd0_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/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda @@ -1152,9 +1152,9 @@ environments: - 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/libsqlite-3.45.3-h92b6c6a_0.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/libzlib-1.3.1-h87427d6_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.5-h5846eda_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.3.0-h87427d6_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.3.1-h87427d6_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.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/pydantic-2.6.4-pyhd8ed1ab_0.conda @@ -1170,8 +1170,8 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/taplo-0.9.1-h236d3af_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/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - - 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-extensions-4.12.1-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.12.1-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_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 @@ -1180,7 +1180,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.7.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/bzip2-1.0.8-h93a5062_5.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/ca-certificates-2024.6.2-hf0a4a13_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/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda @@ -1189,9 +1189,9 @@ environments: - 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/libsqlite-3.45.3-h091b4b1_0.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/libzlib-1.3.1-hfb2fe0b_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.5-hb89a1cb_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.3.0-hfb2fe0b_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.3.1-hfb2fe0b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.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/pydantic-2.6.4-pyhd8ed1ab_0.conda @@ -1207,8 +1207,8 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/taplo-0.9.1-h16c8c8b_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/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - - 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-extensions-4.12.1-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.12.1-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_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 @@ -1217,7 +1217,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.7.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/bzip2-1.0.8-hcfcfb64_5.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/ca-certificates-2024.6.2-h56e8100_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/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda @@ -1226,14 +1226,14 @@ environments: - 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/libsqlite-3.45.3-hcfcfb64_0.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/libzlib-1.3.1-h2466b09_1.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/win-64/msys2-conda-epoch-20160418-1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.3.0-h2466b09_3.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.3.1-h2466b09_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.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/pydantic-2.6.4-pyhd8ed1ab_0.conda @@ -1248,13 +1248,13 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/taplo-0.9.1-h7f3b576_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/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - - 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-extensions-4.12.1-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.12.1-pyha770c72_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/vc-14.3-ha32ba9b_20.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.38.33135-h835141b_20.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/vs2015_runtime-14.38.33135-h22015db_20.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-h8a93ad2_20.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.40.33810-ha82c5b3_20.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vs2015_runtime-14.40.33810-h3bf8584_20.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/zipp-3.17.0-pyhd8ed1ab_0.conda @@ -1339,32 +1339,34 @@ packages: - kind: conda name: binutils version: '2.40' - build: h4852527_1 - build_number: 1 + build: h4852527_2 + build_number: 2 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/binutils-2.40-h4852527_1.conda - sha256: 98f7bbce18e0f36a7e6831bb003bdc2f019dcce9ac3483da6ec45fe7e35b9546 - md5: dfaea5684bbbbf0b64a4c31f984d0661 + url: https://conda.anaconda.org/conda-forge/linux-64/binutils-2.40-h4852527_2.conda + sha256: 89f06321896092d2d931fc40cd6753f11dfe90ebb9d180c9512b614a7b623423 + md5: 0ea11d9433ec00000e96e82d6381671d depends: - binutils_impl_linux-64 >=2.40,<2.41.0a0 license: GPL-3.0-only - size: 31129 - timestamp: 1716583484405 + license_family: GPL + size: 31105 + timestamp: 1717523048004 - kind: conda name: binutils_impl_linux-64 version: '2.40' - build: ha1999f0_1 - build_number: 1 + build: ha1999f0_2 + build_number: 2 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/binutils_impl_linux-64-2.40-ha1999f0_1.conda - sha256: 852fd086e8b05da7650e8c532cfb391a532dc2d572f6aaadd5629d00a945bfe8 - md5: e901545940ebdc5c40017fab53642b3c + url: https://conda.anaconda.org/conda-forge/linux-64/binutils_impl_linux-64-2.40-ha1999f0_2.conda + sha256: 93965e6d95da53fa2ead26298eeb8ab53b8e9da0732c4baee2f4ce7d9c16aec1 + md5: 861a9d0b9ad43dcebe5a76f38a7d2527 depends: - - ld_impl_linux-64 2.40 hf3520f5_1 + - ld_impl_linux-64 2.40 hf3520f5_2 - sysroot_linux-64 license: GPL-3.0-only - size: 5528821 - timestamp: 1716583458455 + license_family: GPL + size: 5584502 + timestamp: 1717523025003 - kind: conda name: binutils_linux-64 version: '2.40' @@ -1576,48 +1578,48 @@ packages: timestamp: 1714575511013 - kind: conda name: ca-certificates - version: 2024.2.2 + version: 2024.6.2 build: h56e8100_0 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/ca-certificates-2024.2.2-h56e8100_0.conda - sha256: 4d587088ecccd393fec3420b64f1af4ee1a0e6897a45cfd5ef38055322cea5d0 - md5: 63da060240ab8087b60d1357051ea7d6 + url: https://conda.anaconda.org/conda-forge/win-64/ca-certificates-2024.6.2-h56e8100_0.conda + sha256: d872d11558ebeaeb87bcf9086e97c075a1a2dfffed2d0e97570cf197ab29e3d8 + md5: 12a3a2b3a00a21bbb390d4de5ad8dd0f license: ISC - size: 155886 - timestamp: 1706843918052 + size: 156530 + timestamp: 1717311907623 - kind: conda name: ca-certificates - version: 2024.2.2 + version: 2024.6.2 build: h8857fd0_0 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/ca-certificates-2024.2.2-h8857fd0_0.conda - sha256: 54a794aedbb4796afeabdf54287b06b1d27f7b13b3814520925f4c2c80f58ca9 - md5: f2eacee8c33c43692f1ccfd33d0f50b1 + url: https://conda.anaconda.org/conda-forge/osx-64/ca-certificates-2024.6.2-h8857fd0_0.conda + sha256: ba0614477229fcb0f0666356f2c4686caa66f0ed1446e7c9666ce234abe2bacf + md5: 3c23a8cab15ae51ebc9efdc229fccecf license: ISC - size: 155665 - timestamp: 1706843838227 + size: 156145 + timestamp: 1717311781754 - kind: conda name: ca-certificates - version: 2024.2.2 + version: 2024.6.2 build: hbcca054_0 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2024.2.2-hbcca054_0.conda - sha256: 91d81bfecdbb142c15066df70cc952590ae8991670198f92c66b62019b251aeb - md5: 2f4327a1cbe7f022401b236e915a5fef + url: https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2024.6.2-hbcca054_0.conda + sha256: 979af0932b2a5a26112044891a2d79e402e5ae8166f50fa48b8ebae47c0a2d65 + md5: 847c3c2905cc467cea52c24f9cfa8080 license: ISC - size: 155432 - timestamp: 1706843687645 + size: 156035 + timestamp: 1717311767102 - kind: conda name: ca-certificates - version: 2024.2.2 + version: 2024.6.2 build: hf0a4a13_0 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/ca-certificates-2024.2.2-hf0a4a13_0.conda - sha256: 49bc3439816ac72d0c0e0f144b8cc870fdcc4adec2e861407ec818d8116b2204 - md5: fb416a1795f18dcc5a038bc2dc54edf9 + url: https://conda.anaconda.org/conda-forge/osx-arm64/ca-certificates-2024.6.2-hf0a4a13_0.conda + sha256: f5fd189d48965df396d060eb48628cbd9f083f1a1ea79c5236f60d655c7b9633 + md5: b534f104f102479402f88f73adf750f5 license: ISC - size: 155725 - timestamp: 1706844034242 + size: 156299 + timestamp: 1717311742040 - kind: conda name: cairo version: 1.18.0 @@ -1633,7 +1635,7 @@ packages: - icu >=73.2,<74.0a0 - libglib >=2.78.0,<3.0a0 - libpng >=1.6.39,<1.7.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - pixman >=0.42.2,<1.0a0 - ucrt >=10.0.20348.0 - vc >=14.2,<15 @@ -1660,7 +1662,7 @@ packages: - libpng >=1.6.39,<1.7.0a0 - libstdcxx-ng >=12 - libxcb >=1.15,<1.16.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - pixman >=0.42.2,<1.0a0 - xorg-libice >=1.1.1,<2.0a0 - xorg-libsm >=1.2.4,<2.0a0 @@ -1688,7 +1690,7 @@ packages: - libcxx >=16.0.6 - libglib >=2.78.0,<3.0a0 - libpng >=1.6.39,<1.7.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - pixman >=0.42.2,<1.0a0 - zlib license: LGPL-2.1-only or MPL-1.1 @@ -1711,7 +1713,7 @@ packages: - libcxx >=16.0.6 - libglib >=2.78.0,<3.0a0 - libpng >=1.6.39,<1.7.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - pixman >=0.42.2,<1.0a0 - zlib license: LGPL-2.1-only or MPL-1.1 @@ -2018,7 +2020,7 @@ packages: - krb5 >=1.21.2,<1.22.0a0 - libcurl 8.8.0 h7b6f9a7_0 - libssh2 >=1.11.0,<2.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - openssl >=3.3.0,<4.0a0 - zstd >=1.5.6,<1.6.0a0 license: curl @@ -2038,7 +2040,7 @@ packages: - libcurl 8.8.0 hca28451_0 - libgcc-ng >=12 - libssh2 >=1.11.0,<2.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - openssl >=3.3.0,<4.0a0 - zstd >=1.5.6,<1.6.0a0 license: curl @@ -2058,7 +2060,7 @@ packages: - krb5 >=1.21.2,<1.22.0a0 - libcurl 8.8.0 hf9fcc65_0 - libssh2 >=1.11.0,<2.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - openssl >=3.3.0,<4.0a0 - zstd >=1.5.6,<1.6.0a0 license: curl @@ -2280,7 +2282,7 @@ packages: - freetype >=2.12.1,<3.0a0 - libgcc-ng >=12 - libuuid >=2.32.1,<3.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 license: MIT license_family: MIT size: 272010 @@ -2296,7 +2298,7 @@ packages: depends: - expat >=2.5.0,<3.0a0 - freetype >=2.12.1,<3.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 license: MIT license_family: MIT size: 237068 @@ -2312,7 +2314,7 @@ packages: depends: - expat >=2.5.0,<3.0a0 - freetype >=2.12.1,<3.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 license: MIT license_family: MIT size: 237668 @@ -2329,7 +2331,7 @@ packages: - expat >=2.5.0,<3.0a0 - freetype >=2.12.1,<3.0a0 - libiconv >=1.17,<2.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - ucrt >=10.0.20348.0 - vc >=14.2,<15 - vs2015_runtime >=14.29.30139 @@ -2400,7 +2402,7 @@ packages: depends: - libgcc-ng >=12 - libpng >=1.6.39,<1.7.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 license: GPL-2.0-only OR FTL size: 634972 timestamp: 1694615932610 @@ -2415,7 +2417,7 @@ packages: md5: 25152fce119320c980e5470e64834b50 depends: - libpng >=1.6.39,<1.7.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 license: GPL-2.0-only OR FTL size: 599300 timestamp: 1694616137838 @@ -2430,7 +2432,7 @@ packages: md5: e6085e516a3e304ce41a8ee08b9b89ad depends: - libpng >=1.6.39,<1.7.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 license: GPL-2.0-only OR FTL size: 596430 timestamp: 1694616332835 @@ -2445,7 +2447,7 @@ packages: md5: 3761b23693f768dc75a8fd0a73ca053f depends: - libpng >=1.6.39,<1.7.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - ucrt >=10.0.20348.0 - vc >=14.2,<15 - vc14_runtime >=14.29.30139 @@ -2712,7 +2714,7 @@ packages: - gettext - libexpat >=2.5.0,<3.0a0 - libiconv >=1.17,<2.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - openssl >=3.2.0,<4.0a0 - pcre2 >=10.42,<10.43.0a0 - perl 5.* @@ -2734,7 +2736,7 @@ packages: - libexpat >=2.5.0,<3.0a0 - libgcc-ng >=12 - libiconv >=1.17,<2.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - openssl >=3.2.0,<4.0a0 - pcre2 >=10.42,<10.43.0a0 - perl 5.* @@ -2756,7 +2758,7 @@ packages: - gettext - libexpat >=2.5.0,<3.0a0 - libiconv >=1.17,<2.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - openssl >=3.2.0,<4.0a0 - pcre2 >=10.42,<10.43.0a0 - perl 5.* @@ -3151,17 +3153,18 @@ packages: - kind: conda name: ld_impl_linux-64 version: '2.40' - build: hf3520f5_1 - build_number: 1 + build: hf3520f5_2 + build_number: 2 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.40-hf3520f5_1.conda - sha256: cb54a873c1c84c47f7174093889686b626946b8143905ec0f76a56785b26a304 - md5: 33b7851c39c25da14f6a233a8ccbeeca + url: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.40-hf3520f5_2.conda + sha256: 5ed96807b26bc32d2d180e38e7340388ddfdb642950f888f7da78d274846afea + md5: 61b0bd5219ce7192b4e3633521a78975 constrains: - binutils_impl_linux-64 2.40 license: GPL-3.0-only - size: 707934 - timestamp: 1716583433869 + license_family: GPL + size: 708179 + timestamp: 1717523002366 - kind: conda name: lerc version: 4.0.0 @@ -3314,7 +3317,7 @@ packages: - 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 + - libzlib >=1.2.13,<2.0.0a0 - openssl >=3.3.0,<4.0a0 - zstd >=1.5.6,<1.6.0a0 license: curl @@ -3334,7 +3337,7 @@ packages: - libgcc-ng >=12 - libnghttp2 >=1.58.0,<2.0a0 - libssh2 >=1.11.0,<2.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - openssl >=3.3.0,<4.0a0 - zstd >=1.5.6,<1.6.0a0 license: curl @@ -3353,7 +3356,7 @@ packages: - 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 + - libzlib >=1.2.13,<2.0.0a0 - openssl >=3.3.0,<4.0a0 - zstd >=1.5.6,<1.6.0a0 license: curl @@ -3803,7 +3806,7 @@ packages: - libcxx >=16 - libffi >=3.4,<4.0a0 - libiconv >=1.17,<2.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - pcre2 >=10.42,<10.43.0a0 constrains: - glib 2.78.4 *_0 @@ -3824,7 +3827,7 @@ packages: - libgcc-ng >=12 - libiconv >=1.17,<2.0a0 - libstdcxx-ng >=12 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - pcre2 >=10.42,<10.43.0a0 constrains: - glib 2.78.4 *_0 @@ -3844,7 +3847,7 @@ packages: - libcxx >=16 - libffi >=3.4,<4.0a0 - libiconv >=1.17,<2.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - pcre2 >=10.42,<10.43.0a0 constrains: - glib 2.78.4 *_0 @@ -3863,7 +3866,7 @@ packages: - libffi >=3.4,<4.0a0 - libiconv >=1.17,<2.0a0 - libintl >=0.22.5,<1.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - pcre2 >=10.43,<10.44.0a0 - ucrt >=10.0.20348.0 - vc >=14.2,<15 @@ -4091,7 +4094,7 @@ packages: - libev >=4.33,<5.0a0 - libgcc-ng >=12 - libstdcxx-ng >=12 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - openssl >=3.2.0,<4.0a0 license: MIT license_family: MIT @@ -4112,7 +4115,7 @@ packages: - libcxx >=16.0.6 - libev >=4.33,<4.34.0a0 - libev >=4.33,<5.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - openssl >=3.2.0,<4.0a0 license: MIT license_family: MIT @@ -4133,7 +4136,7 @@ packages: - libcxx >=16.0.6 - libev >=4.33,<4.34.0a0 - libev >=4.33,<5.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - openssl >=3.2.0,<4.0a0 license: MIT license_family: MIT @@ -4162,7 +4165,7 @@ packages: sha256: 66c4713b07408398f2221229a1c1d5df57d65dc0902258113f2d9ecac4772495 md5: 77e684ca58d82cae9deebafb95b1a2b8 depends: - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 license: zlib-acknowledgement size: 264177 timestamp: 1708780447187 @@ -4175,7 +4178,7 @@ packages: sha256: 6ad31bf262a114de5bbe0c6ba73b29ed25239d0f46f9d59700310d2ea0b3c142 md5: 77e398acc32617a0384553aea29e866b depends: - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - ucrt >=10.0.20348.0 - vc >=14.2,<15 - vc14_runtime >=14.29.30139 @@ -4192,7 +4195,7 @@ packages: md5: 009981dd9cfcaa4dbfa25ffaed86bcae depends: - libgcc-ng >=12 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 license: zlib-acknowledgement size: 288221 timestamp: 1708780443939 @@ -4205,7 +4208,7 @@ packages: sha256: 13e646d24b5179e6b0a5ece4451a587d759f55d9a360b7015f8f96eff4524b8f md5: 65dcddb15965c9de2c0365cb14910532 depends: - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 license: zlib-acknowledgement size: 268524 timestamp: 1708780496420 @@ -4233,7 +4236,7 @@ packages: sha256: 4337f466eb55bbdc74e168b52ec8c38f598e3664244ec7a2536009036e2066cc md5: c8c1186c7f3351f6ffddb97b1f54fc58 depends: - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 license: Unlicense size: 824794 timestamp: 1713367748819 @@ -4247,7 +4250,7 @@ packages: md5: b3316cbe90249da4f8e84cd66e1cc55b depends: - libgcc-ng >=12 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 license: Unlicense size: 859858 timestamp: 1713367435849 @@ -4260,7 +4263,7 @@ packages: sha256: 4d44b68fb29dcbc2216a8cae0b274b02ef9b4ae05d1d0f785362ed30b91c9b52 md5: 68e462226209f35182ef66eda0f794ff depends: - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 license: Unlicense size: 902546 timestamp: 1713367776445 @@ -4289,7 +4292,7 @@ packages: md5: 1f5a58e686b13bcfde88b93f547d23fe depends: - libgcc-ng >=12 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - openssl >=3.1.1,<4.0a0 license: BSD-3-Clause license_family: BSD @@ -4304,7 +4307,7 @@ packages: sha256: bb57d0c53289721fff1eeb3103a1c6a988178e88d8a8f4345b0b91a35f0e0015 md5: 029f7dc931a3b626b94823bc77830b01 depends: - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - openssl >=3.1.1,<4.0a0 license: BSD-3-Clause license_family: BSD @@ -4319,7 +4322,7 @@ packages: sha256: f3886763b88f4b24265db6036535ef77b7b77ce91b1cbe588c0fbdd861eec515 md5: ca3a72efba692c59a90d4b9fc0dfe774 depends: - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - openssl >=3.1.1,<4.0a0 license: BSD-3-Clause license_family: BSD @@ -4367,7 +4370,7 @@ packages: - 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 + - libzlib >=1.2.13,<2.0.0a0 - xz >=5.2.6,<6.0a0 - zstd >=1.5.5,<1.6.0a0 license: HPND @@ -4388,7 +4391,7 @@ packages: - 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 + - libzlib >=1.2.13,<2.0.0a0 - xz >=5.2.6,<6.0a0 - zstd >=1.5.5,<1.6.0a0 license: HPND @@ -4410,7 +4413,7 @@ packages: - libjpeg-turbo >=3.0.0,<4.0a0 - libstdcxx-ng >=12 - libwebp-base >=1.3.2,<2.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - xz >=5.2.6,<6.0a0 - zstd >=1.5.5,<1.6.0a0 license: HPND @@ -4429,7 +4432,7 @@ packages: - lerc >=4.0.0,<5.0a0 - libdeflate >=1.20,<1.21.0a0 - libjpeg-turbo >=3.0.0,<4.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - ucrt >=10.0.20348.0 - vc >=14.2,<15 - vc14_runtime >=14.29.30139 @@ -4597,70 +4600,74 @@ packages: timestamp: 1702724383534 - kind: conda name: libzlib - version: 1.2.13 - build: h53f4e23_5 - build_number: 5 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/libzlib-1.2.13-h53f4e23_5.conda - sha256: ab1c8aefa2d54322a63aaeeefe9cf877411851738616c4068e0dccc66b9c758a - md5: 1a47f5236db2e06a320ffa0392f81bd8 + version: 1.3.1 + build: h2466b09_1 + build_number: 1 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/libzlib-1.3.1-h2466b09_1.conda + sha256: b13846a54a15243e15f96fec06b526d8155adc6a1ac2b6ed47a88f6a71a94b68 + md5: d4483ca8afc57ddf1f6dded53b36c17f + depends: + - ucrt >=10.0.20348.0 + - vc >=14.2,<15 + - vc14_runtime >=14.29.30139 constrains: - - zlib 1.2.13 *_5 + - zlib 1.3.1 *_1 license: Zlib license_family: Other - size: 48102 - timestamp: 1686575426584 + size: 56186 + timestamp: 1716874730539 - kind: conda name: libzlib - version: 1.2.13 - build: h8a1eda9_5 - build_number: 5 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/libzlib-1.2.13-h8a1eda9_5.conda - sha256: fc58ad7f47ffea10df1f2165369978fba0a1cc32594aad778f5eec725f334867 - md5: 4a3ad23f6e16f99c04e166767193d700 + version: 1.3.1 + build: h4ab18f5_1 + build_number: 1 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.3.1-h4ab18f5_1.conda + sha256: adf6096f98b537a11ae3729eaa642b0811478f0ea0402ca67b5108fe2cb0010d + md5: 57d7dc60e9325e3de37ff8dffd18e814 + depends: + - libgcc-ng >=12 constrains: - - zlib 1.2.13 *_5 + - zlib 1.3.1 *_1 license: Zlib license_family: Other - size: 59404 - timestamp: 1686575566695 + size: 61574 + timestamp: 1716874187109 - kind: conda name: libzlib - version: 1.2.13 - build: hcfcfb64_5 - build_number: 5 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/libzlib-1.2.13-hcfcfb64_5.conda - sha256: c161822ee8130b71e08b6d282b9919c1de2c5274b29921a867bca0f7d30cad26 - md5: 5fdb9c6a113b6b6cb5e517fd972d5f41 + version: 1.3.1 + build: h87427d6_1 + build_number: 1 + subdir: osx-64 + url: https://conda.anaconda.org/conda-forge/osx-64/libzlib-1.3.1-h87427d6_1.conda + sha256: 80a62db652b1da0ccc100812a1d86e94f75028968991bfb17f9536f3aa72d91d + md5: b7575b5aa92108dcc9aaab0f05f2dbce depends: - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 + - __osx >=10.13 constrains: - - zlib 1.2.13 *_5 + - zlib 1.3.1 *_1 license: Zlib license_family: Other - size: 55800 - timestamp: 1686575452215 + size: 57372 + timestamp: 1716874211519 - kind: conda name: libzlib - version: 1.2.13 - build: hd590300_5 - build_number: 5 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.2.13-hd590300_5.conda - sha256: 370c7c5893b737596fd6ca0d9190c9715d89d888b8c88537ae1ef168c25e82e4 - md5: f36c115f1ee199da648e0597ec2047ad + version: 1.3.1 + build: hfb2fe0b_1 + build_number: 1 + subdir: osx-arm64 + url: https://conda.anaconda.org/conda-forge/osx-arm64/libzlib-1.3.1-hfb2fe0b_1.conda + sha256: c34365dd37b0eab27b9693af32a1f7f284955517c2cc91f1b88a7ef4738ff03e + md5: 636077128927cf79fd933276dc3aed47 depends: - - libgcc-ng >=12 + - __osx >=11.0 constrains: - - zlib 1.2.13 *_5 + - zlib 1.3.1 *_1 license: Zlib license_family: Other - size: 61588 - timestamp: 1686575217516 + size: 46921 + timestamp: 1716874262512 - kind: conda name: m2w64-gcc-libgfortran version: 5.3.0 @@ -5019,20 +5026,20 @@ packages: timestamp: 1715194898402 - kind: conda name: nodeenv - version: 1.8.0 + version: 1.9.1 build: pyhd8ed1ab_0 subdir: noarch noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.8.0-pyhd8ed1ab_0.conda - sha256: 1320306234552717149f36f825ddc7e27ea295f24829e9db4cc6ceaff0b032bd - md5: 2a75b296096adabbabadd5e9782e5fcc + url: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.9.1-pyhd8ed1ab_0.conda + sha256: 85ee07342ab055dc081f3de8292c5e7195e43e046db9c5750f242f928f6bb8f2 + md5: dfe0528d0f1c16c1f7c528ea5536ab30 depends: - python 2.7|>=3.7 - setuptools license: BSD-3-Clause license_family: BSD - size: 34358 - timestamp: 1683893151613 + size: 34489 + timestamp: 1717585382642 - kind: conda name: openjpeg version: 2.5.2 @@ -5044,7 +5051,7 @@ packages: depends: - libpng >=1.6.43,<1.7.0a0 - libtiff >=4.6.0,<4.7.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - ucrt >=10.0.20348.0 - vc >=14.2,<15 - vc14_runtime >=14.29.30139 @@ -5065,7 +5072,7 @@ packages: - libpng >=1.6.43,<1.7.0a0 - libstdcxx-ng >=12 - libtiff >=4.6.0,<4.7.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 license: BSD-2-Clause license_family: BSD size: 341592 @@ -5082,7 +5089,7 @@ packages: - libcxx >=16 - libpng >=1.6.43,<1.7.0a0 - libtiff >=4.6.0,<4.7.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 license: BSD-2-Clause license_family: BSD size: 331273 @@ -5099,20 +5106,19 @@ packages: - libcxx >=16 - libpng >=1.6.43,<1.7.0a0 - libtiff >=4.6.0,<4.7.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 license: BSD-2-Clause license_family: BSD size: 316603 timestamp: 1709159627299 - kind: conda name: openssl - version: 3.3.0 - build: h2466b09_3 - build_number: 3 + version: 3.3.1 + build: h2466b09_0 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/openssl-3.3.0-h2466b09_3.conda - sha256: 11b2513fceb20102bdc7f7656a59005acb9ecd0886b7cbfb9c13c2c953f2429b - md5: d7fec5d3bb8fc0c8e266bf1ad350cec5 + url: https://conda.anaconda.org/conda-forge/win-64/openssl-3.3.1-h2466b09_0.conda + sha256: fbd63a41b854370a74e5f7ccc50d67f053d60c08e40389156e7924df0824d297 + md5: 27fe798366ef3a81715b13eedf699e2f depends: - ca-certificates - ucrt >=10.0.20348.0 @@ -5122,17 +5128,16 @@ packages: - pyopenssl >=22.1 license: Apache-2.0 license_family: Apache - size: 8368468 - timestamp: 1716471282135 + size: 8383610 + timestamp: 1717550042871 - kind: conda name: openssl - version: 3.3.0 - build: h4ab18f5_3 - build_number: 3 + version: 3.3.1 + build: h4ab18f5_0 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.3.0-h4ab18f5_3.conda - sha256: 33dcea0ed3a61b2de6b66661cdd55278640eb99d676cd129fbff3e53641fa125 - md5: 12ea6d0d4ed54530eaed18e4835c1f7c + url: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.3.1-h4ab18f5_0.conda + sha256: 9691f8bd6394c5bb0b8d2f47cd1467b91bd5b1df923b69e6b517f54496ee4b50 + md5: a41fa0e391cc9e0d6b78ac69ca047a6c depends: - ca-certificates - libgcc-ng >=12 @@ -5140,17 +5145,16 @@ packages: - pyopenssl >=22.1 license: Apache-2.0 license_family: Apache - size: 2891147 - timestamp: 1716468354865 + size: 2896170 + timestamp: 1717546157673 - kind: conda name: openssl - version: 3.3.0 - build: h87427d6_3 - build_number: 3 + version: 3.3.1 + build: h87427d6_0 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.3.0-h87427d6_3.conda - sha256: 58ffbdce44ac18c6632a2ce1531d06e3fb2e855d40728ba3a2b709158b9a1c33 - md5: ec504fefb403644d893adffb6e7a2dbe + url: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.3.1-h87427d6_0.conda + sha256: 272bee725877f417fef923f5e7852ebfe06b40b6bf3364f4498b2b3f568d5e2c + md5: 1bdad93ae01353340f194c5d879745db depends: - __osx >=10.13 - ca-certificates @@ -5158,17 +5162,16 @@ packages: - pyopenssl >=22.1 license: Apache-2.0 license_family: Apache - size: 2542959 - timestamp: 1716468436467 + size: 2547614 + timestamp: 1717546605131 - kind: conda name: openssl - version: 3.3.0 - build: hfb2fe0b_3 - build_number: 3 + version: 3.3.1 + build: hfb2fe0b_0 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.3.0-hfb2fe0b_3.conda - sha256: 6f41c163ab57e7499dff092be4498614651f0f6432e12c2b9f06859a8bc39b75 - md5: 730f618b008b3c13c1e3f973408ddd67 + url: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.3.1-hfb2fe0b_0.conda + sha256: 6cb2d44f027b259be8cba2240bdf21af7b426e4132a73e0052f7173ab8b60ab0 + md5: c4a0bbd96a0da60bf265dac62c87f4e1 depends: - __osx >=11.0 - ca-certificates @@ -5176,8 +5179,8 @@ packages: - pyopenssl >=22.1 license: Apache-2.0 license_family: Apache - size: 2893954 - timestamp: 1716468329572 + size: 2891941 + timestamp: 1717545846389 - kind: conda name: packaging version: '24.0' @@ -5233,7 +5236,7 @@ packages: md5: 41de8bab2d5e5cd6daaba1896e81d366 depends: - bzip2 >=1.0.8,<2.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 license: BSD-3-Clause license_family: BSD size: 899794 @@ -5248,7 +5251,7 @@ packages: md5: 3e12888ecc8ee1ebee2eef9b7856357a depends: - bzip2 >=1.0.8,<2.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 license: BSD-3-Clause license_family: BSD size: 619848 @@ -5264,7 +5267,7 @@ packages: depends: - bzip2 >=1.0.8,<2.0a0 - libgcc-ng >=12 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 license: BSD-3-Clause license_family: BSD size: 1017235 @@ -5279,7 +5282,7 @@ packages: md5: d0485b8aa2cedb141a7bd27b4efa4c9c depends: - bzip2 >=1.0.8,<2.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - ucrt >=10.0.20348.0 - vc >=14.2,<15 - vc14_runtime >=14.29.30139 @@ -5341,7 +5344,7 @@ packages: - 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 + - libzlib >=1.2.13,<2.0.0a0 - openjpeg >=2.5.2,<3.0a0 - python >=3.12,<3.13.0a0 - python_abi 3.12.* *_cp312 @@ -5364,7 +5367,7 @@ packages: - 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 + - libzlib >=1.2.13,<2.0.0a0 - openjpeg >=2.5.2,<3.0a0 - python >=3.12,<3.13.0a0 - python_abi 3.12.* *_cp312 @@ -5390,7 +5393,7 @@ packages: - 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 + - libzlib >=1.2.13,<2.0.0a0 - openjpeg >=2.5.2,<3.0a0 - python >=3.12,<3.13.0a0 - python >=3.12,<3.13.0a0 *_cpython @@ -5415,7 +5418,7 @@ packages: - 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 + - libzlib >=1.2.13,<2.0.0a0 - openjpeg >=2.5.2,<3.0a0 - python >=3.12,<3.13.0a0 - python_abi 3.12.* *_cp312 @@ -5974,7 +5977,7 @@ packages: - libexpat >=2.6.2,<3.0a0 - libffi >=3.4,<4.0a0 - libsqlite >=3.45.2,<4.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - ncurses >=6.4.20240210,<7.0a0 - openssl >=3.2.1,<4.0a0 - readline >=8.2,<9.0a0 @@ -5999,7 +6002,7 @@ packages: - libexpat >=2.6.2,<3.0a0 - libffi >=3.4,<4.0a0 - libsqlite >=3.45.2,<4.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - openssl >=3.2.1,<4.0a0 - tk >=8.6.13,<8.7.0a0 - tzdata @@ -6026,7 +6029,7 @@ packages: - libexpat >=2.6.2,<3.0a0 - libffi >=3.4,<4.0a0 - libsqlite >=3.45.2,<4.0a0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - ncurses >=6.4.20240210,<7.0a0 - openssl >=3.2.1,<4.0a0 - readline >=8.2,<9.0a0 @@ -6056,7 +6059,7 @@ packages: - libsqlite >=3.45.2,<4.0a0 - libuuid >=2.38.1,<3.0a0 - libxcrypt >=4.4.36 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - ncurses >=6.4.20240210,<7.0a0 - openssl >=3.2.1,<4.0a0 - readline >=8.2,<9.0a0 @@ -6363,25 +6366,25 @@ packages: timestamp: 1715828565789 - kind: conda name: requests - version: 2.32.2 + version: 2.32.3 build: pyhd8ed1ab_0 subdir: noarch noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.2-pyhd8ed1ab_0.conda - sha256: 115b796fddc846bee6f47e3c57d04d12fa93a47a7a8ef639cefdc05203c1bf00 - md5: e1643b34b19df8c028a4f00bf5df58a6 + url: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.3-pyhd8ed1ab_0.conda + sha256: 5845ffe82a6fa4d437a2eae1e32a1ad308d7ad349f61e337c0a890fe04c513cc + md5: 5ede4753180c7a550a443c430dc8ab52 depends: - certifi >=2017.4.17 - charset-normalizer >=2,<4 - idna >=2.5,<4 - - python >=3.7 + - python >=3.8 - urllib3 >=1.21.1,<3 constrains: - chardet >=3.0.2,<6 license: Apache-2.0 license_family: APACHE - size: 57885 - timestamp: 1716354575895 + size: 58810 + timestamp: 1717057174842 - kind: conda name: ruamel.yaml version: 0.18.6 @@ -6543,7 +6546,7 @@ packages: depends: - gcc_impl_linux-64 - libgcc-ng >=12 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - rust-std-x86_64-unknown-linux-gnu 1.77.2 h2c6d0dc_1 license: MIT license_family: MIT @@ -6836,7 +6839,7 @@ packages: sha256: 30412b2e9de4ff82d8c2a7e5d06a15f4f4fef1809a72138b6ccb53a33b26faf5 md5: bf830ba5afc507c6232d4ef0fb1a882d depends: - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 license: TCL license_family: BSD size: 3270220 @@ -6851,7 +6854,7 @@ packages: sha256: 72457ad031b4c048e5891f3f6cb27a53cb479db68a52d965f796910e71a403a8 md5: b50a57ba89c32b62428b71a875291c9b depends: - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 license: TCL license_family: BSD size: 3145523 @@ -6884,7 +6887,7 @@ packages: md5: d453b98d9c83e71da0741bb0ff4d76bc depends: - libgcc-ng >=12 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 license: TCL license_family: BSD size: 3318875 @@ -6921,34 +6924,34 @@ packages: timestamp: 1715185504185 - kind: conda name: typing-extensions - version: 4.11.0 + version: 4.12.1 build: hd8ed1ab_0 subdir: noarch noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.11.0-hd8ed1ab_0.conda - sha256: aecbd9c601ba5a6c128da8975276fd817b968a9edc969b7ae97aee76e80a14a6 - md5: 471e3988f8ca5e9eb3ce6be7eac3bcee + url: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.12.1-hd8ed1ab_0.conda + sha256: bbfed919c23f45e0937176260e6d3275bc46d7d41b7df8bbcf72f5b649b171e3 + md5: 474ea8ffc0a68a93dd5fcb23f7e09e5d depends: - - typing_extensions 4.11.0 pyha770c72_0 + - typing_extensions 4.12.1 pyha770c72_0 license: PSF-2.0 license_family: PSF - size: 10093 - timestamp: 1712330094282 + size: 10132 + timestamp: 1717287867504 - kind: conda name: typing_extensions - version: 4.11.0 + version: 4.12.1 build: pyha770c72_0 subdir: noarch noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.11.0-pyha770c72_0.conda - sha256: a7e8714d14f854058e971a6ed44f18cc37cc685f98ddefb2e6b7899a0cc4d1a2 - md5: 6ef2fc37559256cf682d8b3375e89b80 + url: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.12.1-pyha770c72_0.conda + sha256: c50d61fe29cd2752943358037ee1107a60b44b8d32c464d18308d668b6494573 + md5: 26d7ee34132362115093717c706c384c depends: - python >=3.8 license: PSF-2.0 license_family: PSF - size: 37583 - timestamp: 1712330089194 + size: 39706 + timestamp: 1717287863652 - kind: conda name: tzdata version: 2024a @@ -7086,37 +7089,37 @@ packages: - kind: conda name: vc version: '14.3' - build: ha32ba9b_20 + build: h8a93ad2_20 build_number: 20 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-ha32ba9b_20.conda - sha256: 16cb562ce210ee089060f4aa52f3225a571c83885632a870ea2297d460e3bb00 - md5: 2abfb5cb1b9d41a50f765d60f0be563d + url: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-h8a93ad2_20.conda + sha256: 23ac5feb15a9adf3ab2b8c4dcd63650f8b7ae860c5ceb073e49cf71d203eddef + md5: 8558f367e1d7700554f7cdb823c46faf depends: - - vc14_runtime >=14.38.33135 + - vc14_runtime >=14.40.33810 track_features: - vc14 license: BSD-3-Clause license_family: BSD - size: 17122 - timestamp: 1716231244564 + size: 17391 + timestamp: 1717709040616 - kind: conda name: vc14_runtime - version: 14.38.33135 - build: h835141b_20 + version: 14.40.33810 + build: ha82c5b3_20 build_number: 20 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.38.33135-h835141b_20.conda - sha256: 05b07e0dd3fd49dcc98a365ff661ed6b65e2f0266b4bb03d273131ffdba663be - md5: e971b35a5765862fabc4ba6e5ddf9470 + url: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.40.33810-ha82c5b3_20.conda + sha256: af3cfa347e3d7c1277e9b964b0849a9a9f095bff61836cb3c3a89862fbc32e17 + md5: e39cc4c34c53654ec939558993d9dc5b depends: - ucrt >=10.0.20348.0 constrains: - - vs2015_runtime 14.38.33135.* *_20 + - vs2015_runtime 14.40.33810.* *_20 license: LicenseRef-ProprietaryMicrosoft license_family: Proprietary - size: 744189 - timestamp: 1716231234745 + size: 751934 + timestamp: 1717709031266 - kind: conda name: verspec version: 0.1.0 @@ -7152,19 +7155,19 @@ packages: timestamp: 1715681264937 - kind: conda name: vs2015_runtime - version: 14.38.33135 - build: h22015db_20 + version: 14.40.33810 + build: h3bf8584_20 build_number: 20 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/vs2015_runtime-14.38.33135-h22015db_20.conda - sha256: 2cebabc39766ea051e577762d813ad4151e9d0ff96f3ff3374d575a272951416 - md5: bb4f5ab332e46e1b022d8842e72905b1 + url: https://conda.anaconda.org/conda-forge/win-64/vs2015_runtime-14.40.33810-h3bf8584_20.conda + sha256: 0c2803f7a788c51f28235a7228dc2ab3f107b4b16ab0845a3e595c8c51e50a7a + md5: c21f1b4a3a30bbc3ef35a50957578e0e depends: - - vc14_runtime >=14.38.33135 + - vc14_runtime >=14.40.33810 license: BSD-3-Clause license_family: BSD - size: 17124 - timestamp: 1716231247457 + size: 17395 + timestamp: 1717709043353 - kind: conda name: watchdog version: 4.0.1 @@ -7178,6 +7181,7 @@ packages: - python_abi 3.12.* *_cp312 - pyyaml >=3.10 license: Apache-2.0 + license_family: APACHE size: 162034 timestamp: 1716562347718 - kind: conda @@ -7193,6 +7197,7 @@ packages: - python_abi 3.12.* *_cp312 - pyyaml >=3.10 license: Apache-2.0 + license_family: APACHE size: 136444 timestamp: 1716561872155 - kind: conda @@ -7210,6 +7215,7 @@ packages: - python_abi 3.12.* *_cp312 - pyyaml >=3.10 license: Apache-2.0 + license_family: APACHE size: 145420 timestamp: 1716562106758 - kind: conda @@ -7226,6 +7232,7 @@ packages: - python_abi 3.12.* *_cp312 - pyyaml >=3.10 license: Apache-2.0 + license_family: APACHE size: 144881 timestamp: 1716561920161 - kind: conda @@ -7629,68 +7636,70 @@ packages: timestamp: 1695255262261 - kind: conda name: zlib - version: 1.2.13 - build: h53f4e23_5 - build_number: 5 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/zlib-1.2.13-h53f4e23_5.conda - sha256: de0ee1e24aa6867058d3b852a15c8d7f49f262f5828772700c647186d4a96bbe - md5: a08383f223b10b71492d27566fafbf6c + version: 1.3.1 + build: h2466b09_1 + build_number: 1 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/zlib-1.3.1-h2466b09_1.conda + sha256: 76409556e6c7cb91991cd94d7fc853c9272c2872bd7e3573ff35eb33d6fca5be + md5: f8e0a35bf6df768ad87ed7bbbc36ab04 depends: - - libzlib 1.2.13 h53f4e23_5 + - libzlib 1.3.1 h2466b09_1 + - ucrt >=10.0.20348.0 + - vc >=14.2,<15 + - vc14_runtime >=14.29.30139 license: Zlib license_family: Other - size: 79577 - timestamp: 1686575471024 + size: 108081 + timestamp: 1716874767420 - kind: conda name: zlib - version: 1.2.13 - build: h8a1eda9_5 - build_number: 5 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/zlib-1.2.13-h8a1eda9_5.conda - sha256: d1f4c82fd7bd240a78ce8905e931e68dca5f523c7da237b6b63c87d5625c5b35 - md5: 75a8a98b1c4671c5d2897975731da42d + version: 1.3.1 + build: h4ab18f5_1 + build_number: 1 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/zlib-1.3.1-h4ab18f5_1.conda + sha256: cee16ab07a11303de721915f0a269e8c7a54a5c834aa52f74b1cc3a59000ade8 + md5: 9653f1bf3766164d0e65fa723cabbc54 depends: - - libzlib 1.2.13 h8a1eda9_5 + - libgcc-ng >=12 + - libzlib 1.3.1 h4ab18f5_1 license: Zlib license_family: Other - size: 90764 - timestamp: 1686575574678 + size: 93004 + timestamp: 1716874213487 - kind: conda name: zlib - version: 1.2.13 - build: hcfcfb64_5 - build_number: 5 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/zlib-1.2.13-hcfcfb64_5.conda - sha256: 0f91b719c7558046bcd37fdc7ae4b9eb2b7a8e335beb8b59ae7ccb285a46aa46 - md5: a318e8622e11663f645cc7fa3260f462 + version: 1.3.1 + build: h87427d6_1 + build_number: 1 + subdir: osx-64 + url: https://conda.anaconda.org/conda-forge/osx-64/zlib-1.3.1-h87427d6_1.conda + sha256: 41bd5fef28b2755d637e3a8ea5c84010628392fbcf80c7e3d7370aaced7ee4fe + md5: 3ac9ef8975965f9698dbedd2a4cc5894 depends: - - libzlib 1.2.13 hcfcfb64_5 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 + - __osx >=10.13 + - libzlib 1.3.1 h87427d6_1 license: Zlib license_family: Other - size: 107711 - timestamp: 1686575474476 + size: 88782 + timestamp: 1716874245467 - kind: conda name: zlib - version: 1.2.13 - build: hd590300_5 - build_number: 5 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/zlib-1.2.13-hd590300_5.conda - sha256: 9887a04d7e7cb14bd2b52fa01858f05a6d7f002c890f618d9fcd864adbfecb1b - md5: 68c34ec6149623be41a1933ab996a209 + version: 1.3.1 + build: hfb2fe0b_1 + build_number: 1 + subdir: osx-arm64 + url: https://conda.anaconda.org/conda-forge/osx-arm64/zlib-1.3.1-hfb2fe0b_1.conda + sha256: 87360c2dc662916aac37cf01e53324b4f4f78db6f399220818076752b093ede5 + md5: f27e021db7862b6ddbc1d3578f10d883 depends: - - libgcc-ng >=12 - - libzlib 1.2.13 hd590300_5 + - __osx >=11.0 + - libzlib 1.3.1 hfb2fe0b_1 license: Zlib license_family: Other - size: 92825 - timestamp: 1686575231103 + size: 78260 + timestamp: 1716874280334 - kind: conda name: zstd version: 1.5.6 @@ -7700,7 +7709,7 @@ packages: sha256: 768e30dc513568491818fb068ee867c57c514b553915536da09e5d10b4ebf3c3 md5: 9a17230f95733c04dc40a2b1e5491d74 depends: - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 - ucrt >=10.0.20348.0 - vc >=14.2,<15 - vc14_runtime >=14.29.30139 @@ -7718,7 +7727,7 @@ packages: md5: 4cb2cd56f039b129bb0e491c1164167e depends: - __osx >=10.9 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 license: BSD-3-Clause license_family: BSD size: 498900 @@ -7734,7 +7743,7 @@ packages: depends: - libgcc-ng >=12 - libstdcxx-ng >=12 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 license: BSD-3-Clause license_family: BSD size: 554846 @@ -7749,7 +7758,7 @@ packages: md5: d96942c06c3e84bfcc5efb038724a7fd depends: - __osx >=11.0 - - libzlib >=1.2.13,<1.3.0a0 + - libzlib >=1.2.13,<2.0.0a0 license: BSD-3-Clause license_family: BSD size: 405089 diff --git a/schema/examples/valid/full.toml b/schema/examples/valid/full.toml index 7dfca2a00..e237d5d76 100644 --- a/schema/examples/valid/full.toml +++ b/schema/examples/valid/full.toml @@ -49,7 +49,8 @@ test4 = { cmd = "pytest", cwd = "tests", depends-on = ["test2"] } test5 = { cmd = "pytest" } test6 = { depends-on = ["test5"] } test7 = { cmd = "pytest", cwd = "tests", depends-on = ["test5"], env = {PYTHONPATH = "bla", "WEIRD_STRING" = "blu"}} - +test8 = { cmd = "pytest", cwd = "tests", depends-on = ["test5"], env = {PYTHONPATH = "bla", "WEIRD_STRING" = "blu"}, clean-env = true} +test9 = { cmd = "pytest", clean-env = false} [system-requirements] linux = "5.10" libc = { family="glibc", version="2.17" } diff --git a/schema/model.py b/schema/model.py index 33fd4bc21..da0701a6e 100644 --- a/schema/model.py +++ b/schema/model.py @@ -261,6 +261,11 @@ class TaskInlineTable(StrictBaseModel): description="A map of environment variables to values, used in the task, these will be overwritten by the shell.", examples=[{"key": "value"}, {"ARGUMENT": "value"}], ) + clean_env: bool | None = Field( + None, + alias="clean-env", + description="Whether to run in a clean environment, removing all environment variables except those defined in `env` and by pixi itself.", + ) ####################### diff --git a/schema/schema.json b/schema/schema.json index c1adafd50..7c3ac48a4 100644 --- a/schema/schema.json +++ b/schema/schema.json @@ -1145,6 +1145,11 @@ "type": "object", "additionalProperties": false, "properties": { + "clean-env": { + "title": "Clean-Env", + "description": "Whether to run in a clean environment, removing all environment variables except those defined in `env` and by pixi itself.", + "type": "boolean" + }, "cmd": { "title": "Cmd", "description": "A shell command to run the task in the limited, but cross-platform `bash`-like `deno_task_shell`. See the documentation for [supported syntax](https://pixi.sh/latest/features/advanced_tasks/#syntax)", diff --git a/src/activation.rs b/src/activation.rs index 21304f5b2..429d7fd9d 100644 --- a/src/activation.rs +++ b/src/activation.rs @@ -132,6 +132,7 @@ pub fn get_activator<'p>( /// Runs and caches the activation script. pub async fn run_activation( environment: &Environment<'_>, + clean_env: bool, ) -> miette::Result> { let activator = get_activator(environment, ShellEnum::default()).map_err(|e| { miette::miette!(format!( @@ -141,6 +142,12 @@ pub async fn run_activation( )) })?; + let path_modification_behavior = if clean_env { + PathModificationBehavior::Replace + } else { + PathModificationBehavior::Prepend + }; + let activator_result = match tokio::task::spawn_blocking(move || { // Run and cache the activation script activator.run_activation(ActivationVariables { @@ -151,7 +158,7 @@ pub async fn run_activation( conda_prefix: None, // Prepending environment paths so they get found first. - path_modification_behavior: PathModificationBehavior::Prepend, + path_modification_behavior, }) }) .await @@ -186,7 +193,47 @@ pub async fn run_activation( } }; - Ok(activator_result) + if clean_env && cfg!(windows) { + return Err(miette::miette!( + format!("It's not possible to run a `clean-env` on Windows as it requires so many non conda specific files that it is basically useless to use. \ + So pixi currently doesn't support this feature."))); + } else if clean_env { + let mut cleaned_environment_variables = get_clean_environment_variables(); + + // Extend with the original activation environment + cleaned_environment_variables.extend(activator_result); + + // Enable this when we found a better way to support windows. + // On Windows the path is not completely replace, but we need to strip some paths to keep it as clean as possible. + // if cfg!(target_os = "windows") { + // let path = env + // .get("Path") + // .map(|path| { + // // Keep some of the paths + // let win_path = std::env::split_paths(&path).filter(|p| { + // // Required for base functionalities + // p.to_string_lossy().contains(":\\Windows") + // // Required for compilers + // || p.to_string_lossy().contains("\\Program Files") + // // Required for pixi environments + // || p.starts_with(environment.dir()) + // }); + // // Join back up the paths + // std::env::join_paths(win_path).expect("Could not join paths") + // }) + // .expect("Could not find PATH in environment variables"); + // // Insert the path back into the env. + // env.insert( + // "Path".to_string(), + // path.to_str() + // .expect("Path contains non-utf8 paths") + // .to_string(), + // ); + // } + + return Ok(cleaned_environment_variables); + } + Ok(std::env::vars().chain(activator_result).collect()) } /// Get the environment variables that are statically generated from the project and the environment. @@ -213,6 +260,45 @@ pub fn get_environment_variables<'p>(environment: &'p Environment<'p>) -> HashMa .collect() } +pub fn get_clean_environment_variables() -> HashMap { + let env = std::env::vars().collect::>(); + + let unix_keys = if cfg!(unix) { + vec![ + "DISPLAY", + "LC_ALL", + "LC_TIME", + "LC_NUMERIC", + "LC_MEASUREMENT", + "SHELL", + "USER", + "USERNAME", + "LOGNAME", + "HOME", + "HOSTNAME", + ] + } else { + vec![] + }; + + let macos_keys = if cfg!(target_os = "macos") { + vec!["TMPDIR", "XPC_SERVICE_NAME", "XPC_FLAGS"] + } else { + vec![] + }; + + let keys = unix_keys + .into_iter() + .chain(macos_keys) + // .chain(windows_keys) + .map(|s| s.to_string().to_uppercase()) + .collect_vec(); + + env.into_iter() + .filter(|(key, _)| keys.contains(&key.to_string().to_uppercase())) + .collect::>() +} + /// Determine the environment variables that need to be set in an interactive shell to make it /// function as if the environment has been activated. This method runs the activation scripts from /// the environment and stores the environment variables it added, finally it adds environment @@ -224,7 +310,10 @@ pub async fn get_activation_env<'p>( // Get the prefix which we can then activate. get_up_to_date_prefix(environment, lock_file_usage, false).await?; - environment.project().get_env_variables(environment).await + environment + .project() + .get_env_variables(environment, false) + .await } #[cfg(test)] @@ -253,14 +342,13 @@ mod tests { let default_env = project.default_environment(); let env = default_env.get_metadata_env(); - dbg!(&env); + assert_eq!(env.get("PIXI_ENVIRONMENT_NAME").unwrap(), "default"); assert!(env.get("PIXI_ENVIRONMENT_PLATFORMS").is_some()); assert!(env.get("PIXI_PROMPT").unwrap().contains("pixi")); let test_env = project.environment("test").unwrap(); let env = test_env.get_metadata_env(); - dbg!(&env); assert_eq!(env.get("PIXI_ENVIRONMENT_NAME").unwrap(), "test"); assert!(env.get("PIXI_PROMPT").unwrap().contains("pixi")); @@ -294,4 +382,15 @@ mod tests { &project.version().as_ref().unwrap().to_string() ); } + + #[test] + #[cfg(target_os = "unix")] + fn test_get_linux_clean_environment_variables() { + let env = get_clean_environment_variables(); + // Make sure that the environment variables are set. + assert_eq!( + env.get("USER").unwrap(), + std::env::var("USER").as_ref().unwrap() + ); + } } diff --git a/src/cli/run.rs b/src/cli/run.rs index f9b59bb1b..e6373ffa2 100644 --- a/src/cli/run.rs +++ b/src/cli/run.rs @@ -9,7 +9,6 @@ use dialoguer::theme::ColorfulTheme; use itertools::Itertools; use miette::{miette, Context, Diagnostic, IntoDiagnostic}; -use crate::activation::get_environment_variables; use crate::environment::verify_prefix_location_unchanged; use crate::project::errors::UnsupportedPlatformError; use crate::task::{ @@ -47,6 +46,12 @@ pub struct Args { #[clap(flatten)] pub config: ConfigCli, + + /// Use a clean environment to run the task + /// + /// Using this flag will ignore your current shell environment and use bare minimum environment to activate the pixi environment in. + #[arg(long)] + pub clean_env: bool, } /// CLI entry point for `pixi run` @@ -166,8 +171,12 @@ pub async fn execute(args: Args) -> miette::Result<()> { let task_env: &_ = match task_envs.entry(executable_task.run_environment.clone()) { Entry::Occupied(env) => env.into_mut(), Entry::Vacant(entry) => { - let command_env = - get_task_env(&mut lock_file, &executable_task.run_environment).await?; + let command_env = get_task_env( + &mut lock_file, + &executable_task.run_environment, + args.clean_env || executable_task.task().clean_env(), + ) + .await?; entry.insert(command_env) } }; @@ -230,6 +239,7 @@ fn command_not_found<'p>(project: &'p Project, explicit_environment: Option( lock_file_derived_data: &mut LockFileDerivedData<'p>, environment: &Environment<'p>, + clean_env: bool, ) -> miette::Result> { // Make sure the system requirements are met verify_current_platform_has_required_virtual_packages(environment).into_diagnostic()?; @@ -239,19 +249,13 @@ pub async fn get_task_env<'p>( // Get environment variables from the activation let activation_env = await_in_progress("activating environment", |_| { - crate::activation::run_activation(environment) + crate::activation::run_activation(environment, clean_env) }) .await .wrap_err("failed to activate environment")?; - // Get environments from pixi - let environment_variables = get_environment_variables(environment); - // Concatenate with the system environment variables - Ok(std::env::vars() - .chain(activation_env) - .chain(environment_variables) - .collect()) + Ok(activation_env) } #[derive(Debug, Error, Diagnostic)] diff --git a/src/cli/shell_hook.rs b/src/cli/shell_hook.rs index 1ba4e06fa..823c65a87 100644 --- a/src/cli/shell_hook.rs +++ b/src/cli/shell_hook.rs @@ -88,7 +88,10 @@ async fn generate_activation_script( /// Generates a JSON object describing the changes to the shell environment when /// activating the provided pixi environment. async fn generate_environment_json(environment: &Environment<'_>) -> miette::Result { - let environment_variables = environment.project().get_env_variables(environment).await?; + let environment_variables = environment + .project() + .get_env_variables(environment, false) + .await?; let shell_env = ShellEnv { environment_variables, }; diff --git a/src/cli/task.rs b/src/cli/task.rs index 551f8be21..52bd88e74 100644 --- a/src/cli/task.rs +++ b/src/cli/task.rs @@ -81,6 +81,10 @@ pub struct AddArgs { /// The environment variable to set, use --env key=value multiple times for more than one variable #[arg(long, value_parser = parse_key_val)] pub env: Vec<(String, String)>, + + /// Isolate the task from the shell environment, and only use the pixi environment to run the task + #[arg(long)] + pub clean_env: bool, } /// Parse a single key-value pair @@ -149,6 +153,7 @@ impl From for Task { } else if depends_on.is_empty() && value.cwd.is_none() && value.env.is_empty() { Self::Plain(cmd_args) } else { + let clean_env = value.clean_env; let cwd = value.cwd; let env = if value.env.is_empty() { None @@ -166,6 +171,7 @@ impl From for Task { outputs: None, cwd, env, + clean_env, }) } } diff --git a/src/lock_file/update.rs b/src/lock_file/update.rs index 7fcae4ecb..9f48f7ec4 100644 --- a/src/lock_file/update.rs +++ b/src/lock_file/update.rs @@ -139,7 +139,10 @@ impl<'p> LockFileDerivedData<'p> { Some(context) => context.clone(), }; - let env_variables = environment.project().get_env_variables(environment).await?; + let env_variables = environment + .project() + .get_env_variables(environment, false) + .await?; // Update the prefix with Pypi records environment::update_prefix_pypi( environment.name(), @@ -1011,7 +1014,7 @@ impl<'p> UpdateContext<'p> { }; // Get environment variables from the activation - let env_variables = project.get_env_variables(&environment).await?; + let env_variables = project.get_env_variables(&environment, false).await?; let locked_group_records = self .locked_grouped_pypi_records diff --git a/src/project/mod.rs b/src/project/mod.rs index 0a533c76c..a78855d02 100644 --- a/src/project/mod.rs +++ b/src/project/mod.rs @@ -518,6 +518,7 @@ impl Project { pub async fn get_env_variables( &self, environment: &Environment<'_>, + clean_env: bool, ) -> miette::Result<&HashMap> { let cell = self.env_vars.get(environment.name()).ok_or_else(|| { miette::miette!( @@ -527,7 +528,7 @@ impl Project { })?; cell.get_or_try_init::(async { - let activation_env = run_activation(environment).await?; + let activation_env = run_activation(environment, clean_env).await?; let environment_variables = get_environment_variables(environment); diff --git a/src/task/mod.rs b/src/task/mod.rs index 2d42f2d2f..27fb8b941 100644 --- a/src/task/mod.rs +++ b/src/task/mod.rs @@ -154,12 +154,22 @@ impl Task { pub fn is_custom(&self) -> bool { matches!(self, Task::Custom(_)) } + + /// True if this task is meant to run in a clean environment, stripped of all non required variables. + pub fn clean_env(&self) -> bool { + match self { + Task::Plain(_) => false, + Task::Custom(_) => false, + Task::Execute(execute) => execute.clean_env, + Task::Alias(_) => false, + } + } } /// A command script executes a single command from the environment #[serde_as] #[derive(Debug, Clone, Deserialize)] -#[serde(deny_unknown_fields)] +#[serde(deny_unknown_fields, rename_all = "kebab-case")] pub struct Execute { /// A list of arguments, the first argument denotes the command to run. When deserializing both /// an array of strings and a single string are supported. @@ -172,8 +182,8 @@ pub struct Execute { pub outputs: Option>, /// A list of commands that should be run before this one - // BREAK: Make the alias a renamed field to force kebab-case - #[serde(default, alias = "depends-on")] + // BREAK: Make the remove the alias and force kebab-case + #[serde(default, alias = "depends_on")] #[serde_as(deserialize_as = "OneOrMany<_, PreferMany>")] pub depends_on: Vec, @@ -182,6 +192,10 @@ pub struct Execute { /// A list of environment variables to set before running the command pub env: Option>, + + /// Isolate the task from the running machine + #[serde(default)] + pub clean_env: bool, } impl From for Task { @@ -200,6 +214,7 @@ pub struct Custom { /// The working directory for the command relative to the root of the project. pub cwd: Option, } + impl From for Task { fn from(value: Custom) -> Self { Task::Custom(value) diff --git a/tests/common/mod.rs b/tests/common/mod.rs index 23b9ed8d9..cc396755c 100644 --- a/tests/common/mod.rs +++ b/tests/common/mod.rs @@ -331,7 +331,8 @@ impl PixiControl { // Construct the task environment if not already created. let task_env = match task_env.as_ref() { None => { - let env = get_task_env(&mut lock_file, &task.run_environment).await?; + let env = + get_task_env(&mut lock_file, &task.run_environment, args.clean_env).await?; task_env.insert(env) as &_ } Some(task_env) => task_env, @@ -429,6 +430,7 @@ impl TasksControl<'_> { feature, cwd: None, env: Default::default(), + clean_env: false, }, } } diff --git a/tests/install_tests.rs b/tests/install_tests.rs index 14fc20138..d0ce82881 100644 --- a/tests/install_tests.rs +++ b/tests/install_tests.rs @@ -477,7 +477,6 @@ async fn test_installer_name() { .with_install(true) .await .unwrap(); - dbg!(pixi.default_env_path().unwrap()); // Get the correct dist-info folder let dist_info = if cfg!(not(target_os = "windows")) { diff --git a/tests/task_tests.rs b/tests/task_tests.rs index 1748ea331..4e977ceb1 100644 --- a/tests/task_tests.rs +++ b/tests/task_tests.rs @@ -239,3 +239,46 @@ async fn test_task_with_env() { assert_eq!(result.exit_code, 0); assert_eq!(result.stdout, "From a world with spaces\n"); } + +#[tokio::test] +async fn test_clean_env() { + let pixi = PixiControl::new().unwrap(); + pixi.init().without_channels().await.unwrap(); + + std::env::set_var("HELLO", "world from env"); + + pixi.tasks() + .add("env-test".into(), None, FeatureName::Default) + .with_commands(["echo Hello is: $HELLO"]) + .execute() + .unwrap(); + + let run = pixi.run(Args { + task: vec!["env-test".to_string()], + manifest_path: None, + clean_env: true, + ..Default::default() + }); + + if cfg!(windows) { + // Clean env running not supported on windows. + run.await.unwrap_err(); + } else { + let result = run.await.unwrap(); + assert_eq!(result.exit_code, 0); + assert_eq!(result.stdout, "Hello is:\n"); + } + + let result = pixi + .run(Args { + task: vec!["env-test".to_string()], + manifest_path: None, + clean_env: false, + ..Default::default() + }) + .await + .unwrap(); + + assert_eq!(result.exit_code, 0); + assert_eq!(result.stdout, "Hello is: world from env\n"); +}