From ebcb3d522afbbe31d31f73781a4129fb5e5e429c Mon Sep 17 00:00:00 2001 From: ykiko Date: Sat, 4 Apr 2026 19:47:18 +0800 Subject: [PATCH 01/52] feat: cross-compile support for macOS x64, Linux arm64, Windows arm64 Add CLICE_TARGET_TRIPLE to toolchain.cmake for cross-compilation. Upgrade LLVM from 21.1.4 to 21.1.8 and switch publish workflow from xmake to CMake. Co-Authored-By: Claude Opus 4.6 (1M context) --- .github/workflows/build-llvm.yml | 112 +++++++++++++++++++++++----- .github/workflows/publish-clice.yml | 36 ++++++++- cmake/llvm.cmake | 10 +++ cmake/package.cmake | 2 +- cmake/toolchain.cmake | 24 ++++++ config/llvm-manifest.json | 84 +-------------------- pixi.toml | 1 + scripts/build-llvm.py | 8 ++ scripts/setup-llvm.py | 5 +- 9 files changed, 178 insertions(+), 104 deletions(-) diff --git a/.github/workflows/build-llvm.yml b/.github/workflows/build-llvm.yml index f878e337b..44afe8f89 100644 --- a/.github/workflows/build-llvm.yml +++ b/.github/workflows/build-llvm.yml @@ -12,6 +12,7 @@ jobs: fail-fast: false matrix: include: + # ── Native builds ────────────────────────────────────────────── - os: windows-2025 llvm_mode: Debug lto: OFF @@ -39,6 +40,38 @@ jobs: - os: macos-15 llvm_mode: RelWithDebInfo lto: ON + + # ── Cross-compilation builds ─────────────────────────────────── + # macOS x64 (from arm64 macos-15) + - os: macos-15 + llvm_mode: RelWithDebInfo + lto: OFF + target_triple: x86_64-apple-darwin + - os: macos-15 + llvm_mode: RelWithDebInfo + lto: ON + target_triple: x86_64-apple-darwin + + # Linux aarch64 (from x64 ubuntu-24.04) + - os: ubuntu-24.04 + llvm_mode: RelWithDebInfo + lto: OFF + target_triple: aarch64-linux-gnu + - os: ubuntu-24.04 + llvm_mode: RelWithDebInfo + lto: ON + target_triple: aarch64-linux-gnu + + # Windows arm64 (from x64 windows-2025) + - os: windows-2025 + llvm_mode: RelWithDebInfo + lto: OFF + target_triple: aarch64-pc-windows-msvc + - os: windows-2025 + llvm_mode: RelWithDebInfo + lto: ON + target_triple: aarch64-pc-windows-msvc + runs-on: ${{ matrix.os }} steps: - name: Checkout repository @@ -76,17 +109,27 @@ jobs: cache: true locked: true - - name: Clone llvm-project (21.1.4) + - name: Clone llvm-project (21.1.8) shell: bash run: | - git clone --branch llvmorg-21.1.4 --depth 1 https://github.com/llvm/llvm-project.git .llvm + git clone --branch llvmorg-21.1.8 --depth 1 https://github.com/llvm/llvm-project.git .llvm - name: Build LLVM (install-distribution) shell: bash run: | - pixi run build-llvm --llvm-src=.llvm --mode="${{ matrix.llvm_mode }}" --lto="${{ matrix.lto }}" --build-dir=build + EXTRA_ARGS="" + if [[ -n "${{ matrix.target_triple }}" ]]; then + EXTRA_ARGS="--target-triple=${{ matrix.target_triple }}" + fi + pixi run build-llvm \ + --llvm-src=.llvm \ + --mode="${{ matrix.llvm_mode }}" \ + --lto="${{ matrix.lto }}" \ + --build-dir=build \ + ${EXTRA_ARGS} - name: Build clice using installed LLVM + if: ${{ !matrix.target_triple }} shell: bash run: | cmake -B build -G Ninja \ @@ -99,6 +142,7 @@ jobs: cmake --build build - name: Run tests + if: ${{ !matrix.target_triple }} shell: bash run: | EXE_EXT="" @@ -108,8 +152,10 @@ jobs: ./build/bin/unit_tests${EXE_EXT} --test-dir="./tests/data" uv run --project tests pytest -s --log-cli-level=INFO tests/integration --executable=./build/bin/clice${EXE_EXT} + # Prune is only supported for native builds (requires linking clice to test). + # Cross-compiled targets reuse the native prune manifest of the same OS. - name: Prune LLVM static libraries (Debug/RelWithDebInfo no LTO) - if: matrix.llvm_mode == 'Debug' || (matrix.llvm_mode == 'RelWithDebInfo' && matrix.lto == 'OFF') + if: (!matrix.target_triple) && (matrix.llvm_mode == 'Debug' || (matrix.llvm_mode == 'RelWithDebInfo' && matrix.lto == 'OFF')) shell: bash run: | MANIFEST="pruned-libs-${{ matrix.os }}.json" @@ -123,7 +169,7 @@ jobs: --manifest "${MANIFEST}" - name: Upload pruned-libs manifest - if: matrix.llvm_mode == 'RelWithDebInfo' && matrix.lto == 'OFF' + if: (!matrix.target_triple) && matrix.llvm_mode == 'RelWithDebInfo' && matrix.lto == 'OFF' uses: actions/upload-artifact@v4 with: name: llvm-pruned-libs-${{ matrix.os }} @@ -131,8 +177,28 @@ jobs: if-no-files-found: error compression-level: 0 - - name: Apply pruned-libs manifest (RelWithDebInfo + LTO) - if: matrix.llvm_mode == 'RelWithDebInfo' && matrix.lto == 'ON' + - name: Apply pruned-libs manifest (RelWithDebInfo + LTO, native only) + if: (!matrix.target_triple) && matrix.llvm_mode == 'RelWithDebInfo' && matrix.lto == 'ON' + shell: bash + env: + GH_TOKEN: ${{ github.token }} + run: | + MANIFEST="pruned-libs-${{ matrix.os }}.json" + python3 scripts/prune-llvm-bin.py \ + --action apply \ + --manifest "${MANIFEST}" \ + --install-dir ".llvm/build-install/lib" \ + --build-dir "build" \ + --gh-run-id "${{ github.run_id }}" \ + --gh-artifact "llvm-pruned-libs-${{ matrix.os }}" \ + --gh-download-dir "artifacts" \ + --max-attempts 60 \ + --sleep-seconds 60 + + # For cross-compiled LTO builds, apply the native prune manifest. + # The unused library set is arch-independent (same API surface). + - name: Apply pruned-libs manifest (cross-compile + LTO) + if: matrix.target_triple && matrix.lto == 'ON' shell: bash env: GH_TOKEN: ${{ github.token }} @@ -157,16 +223,28 @@ jobs: MODE_TAG="debug" fi - ARCH="x64" - PLATFORM="linux" - TOOLCHAIN="gnu" - if [[ "${{ matrix.os }}" == windows-* ]]; then - PLATFORM="windows" - TOOLCHAIN="msvc" - elif [[ "${{ matrix.os }}" == macos-* ]]; then - ARCH="arm64" - PLATFORM="macos" - TOOLCHAIN="clang" + # Determine arch/platform/toolchain from target triple or runner OS + if [[ -n "${{ matrix.target_triple }}" ]]; then + case "${{ matrix.target_triple }}" in + x86_64-apple-darwin) + ARCH="x64"; PLATFORM="macos"; TOOLCHAIN="clang" ;; + aarch64-linux-gnu) + ARCH="aarch64"; PLATFORM="linux"; TOOLCHAIN="gnu" ;; + aarch64-pc-windows-msvc) + ARCH="aarch64"; PLATFORM="windows"; TOOLCHAIN="msvc" ;; + esac + else + ARCH="x64" + PLATFORM="linux" + TOOLCHAIN="gnu" + if [[ "${{ matrix.os }}" == windows-* ]]; then + PLATFORM="windows" + TOOLCHAIN="msvc" + elif [[ "${{ matrix.os }}" == macos-* ]]; then + ARCH="arm64" + PLATFORM="macos" + TOOLCHAIN="clang" + fi fi SUFFIX="" diff --git a/.github/workflows/publish-clice.yml b/.github/workflows/publish-clice.yml index 07c4fb055..9a02b8624 100644 --- a/.github/workflows/publish-clice.yml +++ b/.github/workflows/publish-clice.yml @@ -9,6 +9,7 @@ jobs: fail-fast: false matrix: include: + # ── Native builds ────────────────────────────────────────────── - os: windows-2025 artifact_name: clice.zip asset_name: clice-x64-windows-msvc.zip @@ -27,6 +28,28 @@ jobs: symbol_artifact_name: clice-symbol.tar.gz symbol_asset_name: clice-arm64-macos-darwin-symbol.tar.gz + # ── Cross-compilation builds ─────────────────────────────────── + - os: macos-15 + target_triple: x86_64-apple-darwin + artifact_name: clice.tar.gz + asset_name: clice-x86_64-macos-darwin.tar.gz + symbol_artifact_name: clice-symbol.tar.gz + symbol_asset_name: clice-x86_64-macos-darwin-symbol.tar.gz + + - os: ubuntu-24.04 + target_triple: aarch64-linux-gnu + artifact_name: clice.tar.gz + asset_name: clice-aarch64-linux-gnu.tar.gz + symbol_artifact_name: clice-symbol.tar.gz + symbol_asset_name: clice-aarch64-linux-gnu-symbol.tar.gz + + - os: windows-2025 + target_triple: aarch64-pc-windows-msvc + artifact_name: clice.zip + asset_name: clice-aarch64-windows-msvc.zip + symbol_artifact_name: clice-symbol.zip + symbol_asset_name: clice-aarch64-windows-msvc-symbol.zip + runs-on: ${{ matrix.os }} defaults: @@ -41,9 +64,20 @@ jobs: with: environments: package - - name: Package + - name: Package (native) + if: ${{ !matrix.target_triple }} run: pixi run package + - name: Package (cross-compile) + if: ${{ matrix.target_triple }} + run: | + cmake -B build/RelWithDebInfo -G Ninja \ + -DCMAKE_BUILD_TYPE=RelWithDebInfo \ + -DCMAKE_TOOLCHAIN_FILE=cmake/toolchain.cmake \ + -DCLICE_RELEASE=ON \ + -DCLICE_TARGET_TRIPLE=${{ matrix.target_triple }} + cmake --build build/RelWithDebInfo + - name: Upload Main Package to Release if: startsWith(github.ref, 'refs/tags/v') uses: svenstaro/upload-release-action@v2 diff --git a/cmake/llvm.cmake b/cmake/llvm.cmake index 066f92ca7..3aa24b451 100644 --- a/cmake/llvm.cmake +++ b/cmake/llvm.cmake @@ -25,6 +25,16 @@ function(setup_llvm LLVM_VERSION) list(APPEND LLVM_SETUP_ARGS "--offline") endif() + if(DEFINED CLICE_TARGET_TRIPLE) + if(CLICE_TARGET_TRIPLE MATCHES "linux") + list(APPEND LLVM_SETUP_ARGS "--target-platform" "Linux") + elseif(CLICE_TARGET_TRIPLE MATCHES "darwin") + list(APPEND LLVM_SETUP_ARGS "--target-platform" "macosx") + elseif(CLICE_TARGET_TRIPLE MATCHES "windows") + list(APPEND LLVM_SETUP_ARGS "--target-platform" "Windows") + endif() + endif() + execute_process( COMMAND "${Python3_EXECUTABLE}" "${LLVM_SETUP_SCRIPT}" ${LLVM_SETUP_ARGS} RESULT_VARIABLE LLVM_SETUP_RESULT diff --git a/cmake/package.cmake b/cmake/package.cmake index 593449bc5..c056e75df 100644 --- a/cmake/package.cmake +++ b/cmake/package.cmake @@ -1,7 +1,7 @@ include_guard() include(${CMAKE_CURRENT_LIST_DIR}/llvm.cmake) -setup_llvm("21.1.4+r1") +setup_llvm("21.1.8") # install dependencies include(FetchContent) diff --git a/cmake/toolchain.cmake b/cmake/toolchain.cmake index f237c37fc..f5c60a31c 100644 --- a/cmake/toolchain.cmake +++ b/cmake/toolchain.cmake @@ -1,5 +1,29 @@ cmake_minimum_required(VERSION 3.30) +# Cross-compilation support via CLICE_TARGET_TRIPLE. +# Examples: +# -DCLICE_TARGET_TRIPLE=x86_64-apple-darwin (macOS x64 from arm64) +# -DCLICE_TARGET_TRIPLE=aarch64-linux-gnu (Linux arm64 from x64) +# -DCLICE_TARGET_TRIPLE=aarch64-pc-windows-msvc (Windows arm64 from x64) +if(DEFINED CLICE_TARGET_TRIPLE) + if(CLICE_TARGET_TRIPLE MATCHES "^x86_64-apple-darwin") + set(CMAKE_OSX_ARCHITECTURES "x86_64" CACHE STRING "") + elseif(CLICE_TARGET_TRIPLE MATCHES "^aarch64-.*-linux") + set(CMAKE_SYSTEM_NAME Linux) + set(CMAKE_SYSTEM_PROCESSOR aarch64) + set(CMAKE_C_COMPILER_TARGET "aarch64-linux-gnu" CACHE STRING "") + set(CMAKE_CXX_COMPILER_TARGET "aarch64-linux-gnu" CACHE STRING "") + if(DEFINED ENV{CONDA_PREFIX} AND NOT DEFINED CMAKE_SYSROOT) + set(CMAKE_SYSROOT "$ENV{CONDA_PREFIX}/aarch64-conda-linux-gnu/sysroot" CACHE PATH "") + endif() + elseif(CLICE_TARGET_TRIPLE MATCHES "^aarch64-.*-windows") + set(CMAKE_SYSTEM_NAME Windows) + set(CMAKE_SYSTEM_PROCESSOR ARM64) + set(CMAKE_C_COMPILER_TARGET "aarch64-pc-windows-msvc" CACHE STRING "") + set(CMAKE_CXX_COMPILER_TARGET "aarch64-pc-windows-msvc" CACHE STRING "") + endif() +endif() + set(CMAKE_C_COMPILER clang CACHE STRING "") set(CMAKE_CXX_COMPILER clang++ CACHE STRING "") diff --git a/config/llvm-manifest.json b/config/llvm-manifest.json index c403fd5c1..fe51488c7 100644 --- a/config/llvm-manifest.json +++ b/config/llvm-manifest.json @@ -1,83 +1 @@ -[ - { - "version": "21.1.4+r1", - "filename": "arm64-macos-clang-debug-asan.tar.xz", - "sha256": "7da4b7d63edefecaf11773e7e701c575140d1a07329bbbb038673b6ee4516ff5", - "lto": false, - "asan": true, - "platform": "macosx", - "build_type": "Debug" - }, - { - "version": "21.1.4+r1", - "filename": "arm64-macos-clang-releasedbg-lto.tar.xz", - "sha256": "300455b169448f9f01ae95e3bc269f489558a4ca3955e3032171cc75feca0e30", - "lto": true, - "asan": false, - "platform": "macosx", - "build_type": "RelWithDebInfo" - }, - { - "version": "21.1.4+r1", - "filename": "arm64-macos-clang-releasedbg.tar.xz", - "sha256": "9abfc6cd65b957d734ffb97610a634fb4a66d3fbe0fcfb5a1c9124ef693c1495", - "lto": false, - "asan": false, - "platform": "macosx", - "build_type": "RelWithDebInfo" - }, - { - "version": "21.1.4+r1", - "filename": "x64-linux-gnu-debug-asan.tar.xz", - "sha256": "c1ad3ec476911596a842ac67dd9c9c9475ce9f0a77b81101d3c801840292e7bc", - "lto": false, - "asan": true, - "platform": "linux", - "build_type": "Debug" - }, - { - "version": "21.1.4+r1", - "filename": "x64-linux-gnu-releasedbg-lto.tar.xz", - "sha256": "8a869c2184d139dbba704e2d712e7a68336458ad2d70622b3eb906c3e3511e54", - "lto": true, - "asan": false, - "platform": "linux", - "build_type": "RelWithDebInfo" - }, - { - "version": "21.1.4+r1", - "filename": "x64-linux-gnu-releasedbg.tar.xz", - "sha256": "552bab86f715d4f2c027f07eaaf5b3d6b8e430af0b74b470142f3f00da4feec6", - "lto": false, - "asan": false, - "platform": "linux", - "build_type": "RelWithDebInfo" - }, - { - "version": "21.1.4+r1", - "filename": "x64-windows-msvc-debug-asan.tar.xz", - "sha256": "093667a493d336c22ff3c604c5f1fea2a7d2c927c1179cec44e9a03726906ac1", - "lto": false, - "asan": true, - "platform": "windows", - "build_type": "Debug" - }, - { - "version": "21.1.4+r1", - "filename": "x64-windows-msvc-releasedbg-lto.tar.xz", - "sha256": "010539e85621dc3c6ecf359d899feb4075aeca5d0bba6625cdbec0e570e79129", - "lto": true, - "asan": false, - "platform": "windows", - "build_type": "RelWithDebInfo" - }, - { - "version": "21.1.4+r1", - "filename": "x64-windows-msvc-releasedbg.tar.xz", - "sha256": "f473c09fbea10053fac00be409d75dc228d4a38bcbc5e4aeb58b56a4b0dde78e", - "lto": false, - "asan": false, - "platform": "windows", - "build_type": "RelWithDebInfo" - } -] +[] diff --git a/pixi.toml b/pixi.toml index 9fd9556bc..aef912183 100644 --- a/pixi.toml +++ b/pixi.toml @@ -41,6 +41,7 @@ sccache = "*" [feature.build.target.linux-64.dependencies] sysroot_linux-64 = "==2.17" +sysroot_linux-aarch64 = "==2.17" gcc = "==14.2.0" gxx = "==14.2.0" ccache = "*" diff --git a/scripts/build-llvm.py b/scripts/build-llvm.py index 97a406586..60f77d891 100644 --- a/scripts/build-llvm.py +++ b/scripts/build-llvm.py @@ -48,6 +48,10 @@ def main(): "--build-dir", help="Custom build directory (relative to project root or absolute)", ) + parser.add_argument( + "--target-triple", + help="Cross-compilation target triple (e.g. x86_64-apple-darwin, aarch64-linux-gnu, aarch64-pc-windows-msvc)", + ) args = parser.parse_args() @@ -85,6 +89,7 @@ def main(): print("--- Configuration ---") print(f"Mode: {args.mode}") print(f"LTO: {args.lto}") + print(f"Target Triple: {args.target_triple or '(native)'}") print(f"Root: {project_root}") print(f"Build Dir: {build_dir}") print(f"Install Prefix: {install_prefix}") @@ -272,6 +277,9 @@ def main(): else: cmake_args.append("-DLLVM_ENABLE_LTO=OFF") + if args.target_triple: + cmake_args.append(f"-DCLICE_TARGET_TRIPLE={args.target_triple}") + build_dir.mkdir(exist_ok=True) print(f"\nConfiguring in {build_dir}...") diff --git a/scripts/setup-llvm.py b/scripts/setup-llvm.py index e62697fe8..60fa97110 100644 --- a/scripts/setup-llvm.py +++ b/scripts/setup-llvm.py @@ -264,6 +264,7 @@ def main() -> None: parser.add_argument("--install-path") parser.add_argument("--enable-lto", action="store_true") parser.add_argument("--offline", action="store_true") + parser.add_argument("--target-platform", help="Override platform for cross-compilation (e.g. macosx, linux, windows)") parser.add_argument("--output", required=True) args = parser.parse_args() @@ -275,8 +276,8 @@ def main() -> None: ) token = os.environ.get("GH_TOKEN") or os.environ.get("GITHUB_TOKEN") build_type = args.build_type - platform_name = detect_platform() - log(f"Platform detected: {platform_name}, normalized build type: {build_type}") + platform_name = args.target_platform if args.target_platform else detect_platform() + log(f"Platform: {platform_name}, normalized build type: {build_type}") manifest = read_manifest(Path(args.manifest)) binary_dir = Path(args.binary_dir).resolve() From a1583950ef93e41c55aa2a1fe1d6cf81a155846e Mon Sep 17 00:00:00 2001 From: ykiko Date: Sat, 4 Apr 2026 19:53:14 +0800 Subject: [PATCH 02/52] fix: separate cross-compile pixi environments with proper toolchains Create three dedicated environments (cross-macos-x64, cross-linux-aarch64, cross-windows-arm64) instead of mixing cross-compile deps into the native build environment. Co-Authored-By: Claude Opus 4.6 (1M context) --- pixi.toml | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/pixi.toml b/pixi.toml index aef912183..3fed9b3e1 100644 --- a/pixi.toml +++ b/pixi.toml @@ -19,6 +19,9 @@ platforms = ["win-64", "linux-64", "osx-arm64"] [environments] default = ["build", "test"] package = ["build", "test", "package"] +cross-macos-x64 = ["build", "cross-macos-x64"] +cross-linux-aarch64 = ["build", "cross-linux-aarch64"] +cross-windows-arm64 = ["build", "cross-windows-arm64"] node = ["node"] format = ["format"] @@ -41,7 +44,6 @@ sccache = "*" [feature.build.target.linux-64.dependencies] sysroot_linux-64 = "==2.17" -sysroot_linux-aarch64 = "==2.17" gcc = "==14.2.0" gxx = "==14.2.0" ccache = "*" @@ -55,6 +57,19 @@ scripts = ["scripts/activate_linux.sh"] [feature.build.target.win-64.activation] scripts = ["scripts/activate_asan.bat"] +# ── Cross-compilation environments ─────────────────────────────────────────── +# macOS x64 (from arm64): clang natively supports cross-arch, no extra deps. +[feature.cross-macos-x64.target.osx-arm64.dependencies] + +# Linux aarch64 (from x64): needs aarch64 sysroot and cross gcc for libstdc++. +[feature.cross-linux-aarch64.target.linux-64.dependencies] +sysroot_linux-aarch64 = "==2.17" +gcc_linux-aarch64 = "==14.2.0" +gxx_linux-aarch64 = "==14.2.0" + +# Windows arm64 (from x64): Windows SDK on CI already includes ARM64 libs. +[feature.cross-windows-arm64.target.win-64.dependencies] + [feature.test.pypi-dependencies] pytest = "*" pytest-asyncio = ">=1.1.0" From ddf6d2c4e412f90bc550a810d6fa79a535ecc1aa Mon Sep 17 00:00:00 2001 From: ykiko Date: Sat, 4 Apr 2026 19:55:14 +0800 Subject: [PATCH 03/52] chore: update pixi.lock for cross-compile environments Co-Authored-By: Claude Opus 4.6 (1M context) --- pixi.lock | 1977 ++++++++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 1746 insertions(+), 231 deletions(-) diff --git a/pixi.lock b/pixi.lock index 3c9e4fa0c..57916e886 100644 --- a/pixi.lock +++ b/pixi.lock @@ -1,5 +1,517 @@ version: 6 environments: + cross-linux-aarch64: + channels: + - url: https://conda.anaconda.org/conda-forge/ + options: + pypi-prerelease-mode: if-necessary-or-explicit + packages: + linux-64: + - conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-20_gnu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/binutils_impl_linux-64-2.45.1-default_hfdba357_102.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/binutils_impl_linux-aarch64-2.45.1-default_hc5fa074_102.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/binutils_linux-aarch64-2.45.1-default_h7726a90_102.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hda65f42_9.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.34.6-hb03c661_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ccache-4.13.2-hedf47ba_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-20-20.1.8-default_h99862b1_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-20.1.8-default_cfg_hcbb2b3e_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/clang_impl_linux-64-20.1.8-default_cfg_h027053c_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/clangxx-20.1.8-default_cfg_hcbb2b3e_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/clangxx_impl_linux-64-20.1.8-default_cfg_h027053c_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/cmake-4.3.1-hc85cc9f_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/compiler-rt-20.1.8-hb700be7_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_linux-64-20.1.8-hffcefe0_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/gcc-14.2.0-h96c4ede_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/gcc_impl_linux-64-14.2.0-hdb7739f_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/gcc_impl_linux-aarch64-14.2.0-h0367a0d_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/gcc_linux-aarch64-14.2.0-h476b46d_10.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/gxx-14.2.0-h96c4ede_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/gxx_impl_linux-64-14.2.0-h2ead766_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/gxx_impl_linux-aarch64-14.2.0-he1303a5_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/gxx_linux-aarch64-14.2.0-h1e077ba_10.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/icu-78.3-h33c6efd_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/kernel-headers_linux-64-3.10.0-he073ed8_18.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/kernel-headers_linux-aarch64-4.18.0-h05a177a_18.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.3-hb9d3cd8_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.22.2-ha1258a1_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45.1-default_hbd61a6d_102.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-aarch64-2.45.1-default_h27e1c4c_102.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp20.1-20.1.8-default_h99862b1_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.19.0-hcf29cc6_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20250104-pl5321h7949ede_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-hd590300_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.7.5-hecca717_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.5.2-h3435931_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-he0feb66_18.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/libgcc-devel_linux-64-14.2.0-h9c4974d_102.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/libgcc-devel_linux-aarch64-14.2.0-h3d07465_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_18.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-he0feb66_18.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libhiredis-1.3.0-h5888daf_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.18-h3b78370_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm20-20.1.8-hf7376ad_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.2-hb03c661_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libmpdec-4.0.0-hb03c661_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.68.1-h877daf1_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libsanitizer-14.2.0-hed042b8_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.52.0-hf4e2dac_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libssh2-1.11.1-hcf80075_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h934c35e_18.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/libstdcxx-devel_linux-64-14.2.0-h9c4974d_102.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/libstdcxx-devel_linux-aarch64-14.2.0-h3d07465_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.42-h5347b49_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libuv-1.51.0-hb03c661_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libxml2-16-2.15.2-hca6bf5a_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.15.2-he237659_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.3.2-h25fd6f3_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/lld-20.1.8-hef48ded_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/llvm-openmp-22.1.2-h4922eb0_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/llvm-tools-20-20.1.8-h3b15d91_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/llvm-tools-20.1.8-hb700be7_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.5-h2d0b736_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ninja-1.13.2-h171cf75_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.6.1-h35e630c_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.14.3-h32b2ec7_101_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.3-h853b02a_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/rhash-1.4.6-hb9d3cd8_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/sysroot_linux-64-2.17-h0157908_18.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/sysroot_linux-aarch64-2.17-h68829e0_18.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h366c992_103.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/xxhash-0.8.3-hb47aa4a_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb78ec9c_6.conda + osx-arm64: + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-hd037594_9.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.34.6-hc919400_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ccache-4.13.2-h414bf82_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cctools-1030.6.3-llvm20_1_h617d6d1_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cctools_impl_osx-arm64-1030.6.3-llvm20_1_hd60c58f_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-20-20.1.8-default_hf3020a7_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-20.1.8-default_cfg_hb78b91e_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang_impl_osx-arm64-20.1.8-default_cfg_h6e044b8_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clangxx-20.1.8-default_cfg_h170a469_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clangxx_impl_osx-arm64-20.1.8-default_cfg_h6e044b8_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cmake-4.3.1-h8cb302d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/compiler-rt-20.1.8-h855ad52_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_osx-arm64-20.1.8-he32a8d3_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-78.3-hef89b57_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.22.2-h385eeb1_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ld64-956.6-llvm20_1_hb625feb_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ld64_osx-arm64-956.6-llvm20_1_h4e43e91_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang-cpp20.1-20.1.8-default_hf3020a7_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.19.0-hd5a2499_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-22.1.2-h55c6f16_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-devel-20.1.8-h6dc3340_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/libcxx-headers-20.1.8-h707e725_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libedit-3.1.20250104-pl5321hafb1f1b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libev-4.33-h93a5062_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.7.5-hf6b4638_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libffi-3.5.2-hcf2aa1b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libhiredis-1.3.0-h286801f_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libiconv-1.18-h23cfdf5_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm20-20.1.8-h8e0c9ce_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-5.8.2-h8088a28_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libmpdec-4.0.0-h84a0fba_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnghttp2-1.68.1-h8f3e76b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsigtool-0.1.3-h98dc951_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.52.0-h1ae2325_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libssh2-1.11.1-h1590b86_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libuv-1.51.0-h6caf38d_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-16-2.15.2-h5ef1a60_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-2.15.2-h8d039ee_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzlib-1.3.2-h8088a28_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lld-20.1.8-ha4b1419_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-openmp-22.1.2-hc7d1edf_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-tools-20-20.1.8-h91fd4e7_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-tools-20.1.8-h855ad52_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.5-h5e97a16_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ninja-1.13.2-h49c215f_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.6.1-hd24854e_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.14.3-h4c637c5_101_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/readline-8.3-h46df422_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/rhash-1.4.6-h5505292_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sigtool-codesign-0.1.3-h98dc951_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tapi-1600.0.11.8-h997e182_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h010d191_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xxhash-0.8.3-haa4e116_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.7-hbf9d68e_6.conda + win-64: + - conda: https://conda.anaconda.org/conda-forge/win-64/bzip2-1.0.8-h0ad9c76_9.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-h4c7d964_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/clang-20-20.1.8-default_hac490eb_14.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/clang-20.1.8-default_nocfg_hbb9487a_14.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/clangxx-20.1.8-default_nocfg_hbb9487a_14.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/cmake-4.3.1-hdcbee5b_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/compiler-rt-20.1.8-h49e36cd_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_win-64-20.1.8-h49e36cd_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.22.2-h0ea6238_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.19.0-h8206538_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.7.5-hac47afa_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.5.2-h3d046cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libiconv-1.18-hc1393d2_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libllvm20-20.1.8-h830ff33_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/liblzma-5.8.2-hfd05255_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libmpdec-4.0.0-hfd05255_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.52.0-hf5d6505_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libssh2-1.11.1-h9aa295b_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libuv-1.51.0-hfd05255_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libxml2-16-2.15.2-h692994f_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libxml2-2.15.2-h5d26750_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libzlib-1.3.2-hfd05255_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/lld-20.1.8-hc465015_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/llvm-tools-20.1.8-h752b59f_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/ninja-1.13.2-h477610d_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.6.1-hf411b9b_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.14.3-h4b44e0e_101_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/sccache-0.14.0-h18a1a76_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h6ed50ae_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/ucrt-10.0.26100.0-h57928b3_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-h41ae7f8_34.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.44.35208-h818238b_34.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vcomp14-14.44.35208-h818238b_34.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/zstd-1.5.7-h534d264_6.conda + cross-macos-x64: + channels: + - url: https://conda.anaconda.org/conda-forge/ + options: + pypi-prerelease-mode: if-necessary-or-explicit + packages: + linux-64: + - conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-20_gnu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/binutils_impl_linux-64-2.45.1-default_hfdba357_102.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hda65f42_9.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.34.6-hb03c661_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ccache-4.13.2-hedf47ba_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-20-20.1.8-default_h99862b1_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-20.1.8-default_cfg_hcbb2b3e_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/clang_impl_linux-64-20.1.8-default_cfg_h027053c_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/clangxx-20.1.8-default_cfg_hcbb2b3e_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/clangxx_impl_linux-64-20.1.8-default_cfg_h027053c_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/cmake-4.3.1-hc85cc9f_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/compiler-rt-20.1.8-hb700be7_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_linux-64-20.1.8-hffcefe0_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/gcc-14.2.0-h96c4ede_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/gcc_impl_linux-64-14.2.0-hdb7739f_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/gxx-14.2.0-h96c4ede_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/gxx_impl_linux-64-14.2.0-h2ead766_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/icu-78.3-h33c6efd_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/kernel-headers_linux-64-3.10.0-he073ed8_18.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.3-hb9d3cd8_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.22.2-ha1258a1_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45.1-default_hbd61a6d_102.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp20.1-20.1.8-default_h99862b1_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.19.0-hcf29cc6_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20250104-pl5321h7949ede_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-hd590300_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.7.5-hecca717_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.5.2-h3435931_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-he0feb66_18.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/libgcc-devel_linux-64-14.2.0-h9c4974d_102.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_18.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-he0feb66_18.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libhiredis-1.3.0-h5888daf_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.18-h3b78370_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm20-20.1.8-hf7376ad_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.2-hb03c661_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libmpdec-4.0.0-hb03c661_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.68.1-h877daf1_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libsanitizer-14.2.0-hed042b8_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.52.0-hf4e2dac_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libssh2-1.11.1-hcf80075_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h934c35e_18.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/libstdcxx-devel_linux-64-14.2.0-h9c4974d_102.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.42-h5347b49_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libuv-1.51.0-hb03c661_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libxml2-16-2.15.2-hca6bf5a_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.15.2-he237659_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.3.2-h25fd6f3_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/lld-20.1.8-hef48ded_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/llvm-openmp-22.1.2-h4922eb0_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/llvm-tools-20-20.1.8-h3b15d91_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/llvm-tools-20.1.8-hb700be7_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.5-h2d0b736_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ninja-1.13.2-h171cf75_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.6.1-h35e630c_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.14.3-h32b2ec7_101_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.3-h853b02a_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/rhash-1.4.6-hb9d3cd8_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/sysroot_linux-64-2.17-h0157908_18.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h366c992_103.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/xxhash-0.8.3-hb47aa4a_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb78ec9c_6.conda + osx-arm64: + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-hd037594_9.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.34.6-hc919400_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ccache-4.13.2-h414bf82_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cctools-1030.6.3-llvm20_1_h617d6d1_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cctools_impl_osx-arm64-1030.6.3-llvm20_1_hd60c58f_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-20-20.1.8-default_hf3020a7_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-20.1.8-default_cfg_hb78b91e_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang_impl_osx-arm64-20.1.8-default_cfg_h6e044b8_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clangxx-20.1.8-default_cfg_h170a469_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clangxx_impl_osx-arm64-20.1.8-default_cfg_h6e044b8_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cmake-4.3.1-h8cb302d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/compiler-rt-20.1.8-h855ad52_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_osx-arm64-20.1.8-he32a8d3_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-78.3-hef89b57_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.22.2-h385eeb1_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ld64-956.6-llvm20_1_hb625feb_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ld64_osx-arm64-956.6-llvm20_1_h4e43e91_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang-cpp20.1-20.1.8-default_hf3020a7_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.19.0-hd5a2499_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-22.1.2-h55c6f16_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-devel-20.1.8-h6dc3340_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/libcxx-headers-20.1.8-h707e725_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libedit-3.1.20250104-pl5321hafb1f1b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libev-4.33-h93a5062_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.7.5-hf6b4638_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libffi-3.5.2-hcf2aa1b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libhiredis-1.3.0-h286801f_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libiconv-1.18-h23cfdf5_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm20-20.1.8-h8e0c9ce_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-5.8.2-h8088a28_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libmpdec-4.0.0-h84a0fba_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnghttp2-1.68.1-h8f3e76b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsigtool-0.1.3-h98dc951_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.52.0-h1ae2325_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libssh2-1.11.1-h1590b86_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libuv-1.51.0-h6caf38d_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-16-2.15.2-h5ef1a60_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-2.15.2-h8d039ee_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzlib-1.3.2-h8088a28_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lld-20.1.8-ha4b1419_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-openmp-22.1.2-hc7d1edf_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-tools-20-20.1.8-h91fd4e7_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-tools-20.1.8-h855ad52_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.5-h5e97a16_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ninja-1.13.2-h49c215f_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.6.1-hd24854e_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.14.3-h4c637c5_101_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/readline-8.3-h46df422_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/rhash-1.4.6-h5505292_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sigtool-codesign-0.1.3-h98dc951_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tapi-1600.0.11.8-h997e182_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h010d191_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xxhash-0.8.3-haa4e116_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.7-hbf9d68e_6.conda + win-64: + - conda: https://conda.anaconda.org/conda-forge/win-64/bzip2-1.0.8-h0ad9c76_9.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-h4c7d964_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/clang-20-20.1.8-default_hac490eb_14.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/clang-20.1.8-default_nocfg_hbb9487a_14.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/clangxx-20.1.8-default_nocfg_hbb9487a_14.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/cmake-4.3.1-hdcbee5b_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/compiler-rt-20.1.8-h49e36cd_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_win-64-20.1.8-h49e36cd_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.22.2-h0ea6238_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.19.0-h8206538_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.7.5-hac47afa_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.5.2-h3d046cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libiconv-1.18-hc1393d2_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libllvm20-20.1.8-h830ff33_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/liblzma-5.8.2-hfd05255_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libmpdec-4.0.0-hfd05255_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.52.0-hf5d6505_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libssh2-1.11.1-h9aa295b_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libuv-1.51.0-hfd05255_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libxml2-16-2.15.2-h692994f_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libxml2-2.15.2-h5d26750_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libzlib-1.3.2-hfd05255_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/lld-20.1.8-hc465015_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/llvm-tools-20.1.8-h752b59f_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/ninja-1.13.2-h477610d_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.6.1-hf411b9b_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.14.3-h4b44e0e_101_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/sccache-0.14.0-h18a1a76_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h6ed50ae_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/ucrt-10.0.26100.0-h57928b3_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-h41ae7f8_34.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.44.35208-h818238b_34.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vcomp14-14.44.35208-h818238b_34.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/zstd-1.5.7-h534d264_6.conda + cross-windows-arm64: + channels: + - url: https://conda.anaconda.org/conda-forge/ + options: + pypi-prerelease-mode: if-necessary-or-explicit + packages: + linux-64: + - conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-20_gnu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/binutils_impl_linux-64-2.45.1-default_hfdba357_102.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hda65f42_9.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.34.6-hb03c661_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ccache-4.13.2-hedf47ba_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-20-20.1.8-default_h99862b1_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-20.1.8-default_cfg_hcbb2b3e_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/clang_impl_linux-64-20.1.8-default_cfg_h027053c_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/clangxx-20.1.8-default_cfg_hcbb2b3e_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/clangxx_impl_linux-64-20.1.8-default_cfg_h027053c_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/cmake-4.3.1-hc85cc9f_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/compiler-rt-20.1.8-hb700be7_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_linux-64-20.1.8-hffcefe0_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/gcc-14.2.0-h96c4ede_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/gcc_impl_linux-64-14.2.0-hdb7739f_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/gxx-14.2.0-h96c4ede_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/gxx_impl_linux-64-14.2.0-h2ead766_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/icu-78.3-h33c6efd_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/kernel-headers_linux-64-3.10.0-he073ed8_18.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.3-hb9d3cd8_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.22.2-ha1258a1_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45.1-default_hbd61a6d_102.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp20.1-20.1.8-default_h99862b1_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.19.0-hcf29cc6_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20250104-pl5321h7949ede_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-hd590300_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.7.5-hecca717_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.5.2-h3435931_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-he0feb66_18.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/libgcc-devel_linux-64-14.2.0-h9c4974d_102.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_18.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-he0feb66_18.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libhiredis-1.3.0-h5888daf_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.18-h3b78370_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm20-20.1.8-hf7376ad_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.2-hb03c661_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libmpdec-4.0.0-hb03c661_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.68.1-h877daf1_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libsanitizer-14.2.0-hed042b8_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.52.0-hf4e2dac_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libssh2-1.11.1-hcf80075_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h934c35e_18.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/libstdcxx-devel_linux-64-14.2.0-h9c4974d_102.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.42-h5347b49_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libuv-1.51.0-hb03c661_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libxml2-16-2.15.2-hca6bf5a_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.15.2-he237659_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.3.2-h25fd6f3_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/lld-20.1.8-hef48ded_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/llvm-openmp-22.1.2-h4922eb0_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/llvm-tools-20-20.1.8-h3b15d91_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/llvm-tools-20.1.8-hb700be7_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.5-h2d0b736_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ninja-1.13.2-h171cf75_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.6.1-h35e630c_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.14.3-h32b2ec7_101_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.3-h853b02a_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/rhash-1.4.6-hb9d3cd8_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/sysroot_linux-64-2.17-h0157908_18.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h366c992_103.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/xxhash-0.8.3-hb47aa4a_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb78ec9c_6.conda + osx-arm64: + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-hd037594_9.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.34.6-hc919400_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ccache-4.13.2-h414bf82_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cctools-1030.6.3-llvm20_1_h617d6d1_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cctools_impl_osx-arm64-1030.6.3-llvm20_1_hd60c58f_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-20-20.1.8-default_hf3020a7_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-20.1.8-default_cfg_hb78b91e_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang_impl_osx-arm64-20.1.8-default_cfg_h6e044b8_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clangxx-20.1.8-default_cfg_h170a469_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clangxx_impl_osx-arm64-20.1.8-default_cfg_h6e044b8_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cmake-4.3.1-h8cb302d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/compiler-rt-20.1.8-h855ad52_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_osx-arm64-20.1.8-he32a8d3_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-78.3-hef89b57_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.22.2-h385eeb1_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ld64-956.6-llvm20_1_hb625feb_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ld64_osx-arm64-956.6-llvm20_1_h4e43e91_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang-cpp20.1-20.1.8-default_hf3020a7_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.19.0-hd5a2499_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-22.1.2-h55c6f16_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-devel-20.1.8-h6dc3340_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/libcxx-headers-20.1.8-h707e725_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libedit-3.1.20250104-pl5321hafb1f1b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libev-4.33-h93a5062_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.7.5-hf6b4638_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libffi-3.5.2-hcf2aa1b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libhiredis-1.3.0-h286801f_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libiconv-1.18-h23cfdf5_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm20-20.1.8-h8e0c9ce_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-5.8.2-h8088a28_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libmpdec-4.0.0-h84a0fba_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnghttp2-1.68.1-h8f3e76b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsigtool-0.1.3-h98dc951_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.52.0-h1ae2325_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libssh2-1.11.1-h1590b86_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libuv-1.51.0-h6caf38d_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-16-2.15.2-h5ef1a60_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-2.15.2-h8d039ee_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzlib-1.3.2-h8088a28_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lld-20.1.8-ha4b1419_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-openmp-22.1.2-hc7d1edf_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-tools-20-20.1.8-h91fd4e7_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-tools-20.1.8-h855ad52_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.5-h5e97a16_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ninja-1.13.2-h49c215f_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.6.1-hd24854e_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.14.3-h4c637c5_101_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/readline-8.3-h46df422_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/rhash-1.4.6-h5505292_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sigtool-codesign-0.1.3-h98dc951_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tapi-1600.0.11.8-h997e182_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h010d191_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xxhash-0.8.3-haa4e116_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.7-hbf9d68e_6.conda + win-64: + - conda: https://conda.anaconda.org/conda-forge/win-64/bzip2-1.0.8-h0ad9c76_9.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-h4c7d964_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/clang-20-20.1.8-default_hac490eb_14.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/clang-20.1.8-default_nocfg_hbb9487a_14.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/clangxx-20.1.8-default_nocfg_hbb9487a_14.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/cmake-4.3.1-hdcbee5b_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/compiler-rt-20.1.8-h49e36cd_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_win-64-20.1.8-h49e36cd_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.22.2-h0ea6238_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.19.0-h8206538_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.7.5-hac47afa_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.5.2-h3d046cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libiconv-1.18-hc1393d2_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libllvm20-20.1.8-h830ff33_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/liblzma-5.8.2-hfd05255_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libmpdec-4.0.0-hfd05255_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.52.0-hf5d6505_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libssh2-1.11.1-h9aa295b_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libuv-1.51.0-hfd05255_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libxml2-16-2.15.2-h692994f_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libxml2-2.15.2-h5d26750_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libzlib-1.3.2-hfd05255_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/lld-20.1.8-hc465015_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/llvm-tools-20.1.8-h752b59f_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/ninja-1.13.2-h477610d_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.6.1-hf411b9b_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.14.3-h4b44e0e_101_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/sccache-0.14.0-h18a1a76_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h6ed50ae_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/ucrt-10.0.26100.0-h57928b3_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-h41ae7f8_34.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.44.35208-h818238b_34.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vcomp14-14.44.35208-h818238b_34.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/zstd-1.5.7-h534d264_6.conda default: channels: - url: https://conda.anaconda.org/conda-forge/ @@ -18,9 +530,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/ccache-4.13.2-hedf47ba_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-20-20.1.8-default_h99862b1_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-20.1.8-default_h36abe19_5.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-format-20-20.1.8-default_h99862b1_14.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-format-20.1.8-default_h99862b1_14.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-tools-20.1.8-default_h57a47db_14.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/clangxx-20.1.8-default_h363a0c9_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/cmake-4.2.1-hc85cc9f_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/compiler-rt-20.1.8-hb700be7_1.conda @@ -35,7 +544,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.21.3-h659f571_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45-default_hbd61a6d_105.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp20.1-20.1.8-default_h99862b1_5.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang13-22.1.0-default_h746c552_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.17.0-h4e3cde8_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20250104-pl5321h7949ede_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-hd590300_2.conda @@ -48,7 +556,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libhiredis-1.3.0-h5888daf_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.18-h3b78370_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm20-20.1.8-hf7376ad_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm22-22.1.1-hf7376ad_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.1-hb9d3cd8_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libmpdec-4.0.0-hb9d3cd8_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.67.0-had1ee68_0.conda @@ -86,7 +593,7 @@ environments: - pypi: https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/fd/1a/208293b6c350f5abea6941d5606080d4a492644052504f5312e5de30a902/pygls-2.1.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/f4/7e/a72dd26f3b0f4f2bf1dd8923c85f7ceb43172af56d63c7383eb62b332364/pygments-2.20.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/d4/24/a372aaf5c9b7208e7112038812994107bc65a84cd00e0354a88c2c77a617/pytest-9.0.3-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/3b/ab/b3226f0bd7cdcf710fbede2b3548584366da3b19b5021e74f5bde2a8fa3f/pytest-9.0.2-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e5/35/f8b19922b6a25bc0880171a2f1a003eaeb93657475193ab516fd87cac9da/pytest_asyncio-1.3.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl osx-arm64: @@ -96,9 +603,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ccache-4.13.2-h414bf82_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-20-20.1.8-default_h73dfc95_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-20.1.8-default_hf9bcbb7_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-format-20-20.1.8-default_hf3020a7_14.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-format-20.1.8-default_hf3020a7_14.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-tools-20.1.8-default_h1589341_14.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clangxx-20.1.8-default_h36137df_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cmake-4.2.1-h54ad630_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/compiler-rt-20.1.8-h855ad52_1.conda @@ -106,7 +610,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-78.1-h38cb7af_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.21.3-h237132a_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang-cpp20.1-20.1.8-default_h73dfc95_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang13-21.1.8-default_h13b06bd_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.17.0-hdece5d2_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-21.1.8-hf598326_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-devel-20.1.8-h6dc3340_3.conda @@ -118,7 +621,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libhiredis-1.3.0-h286801f_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libiconv-1.18-h23cfdf5_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm20-20.1.8-h8e0c9ce_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm21-21.1.8-h8e0c9ce_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-5.8.1-h39f12f2_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libmpdec-4.0.0-h5505292_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnghttp2-1.67.0-hc438710_0.conda @@ -150,7 +652,7 @@ environments: - pypi: https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/fd/1a/208293b6c350f5abea6941d5606080d4a492644052504f5312e5de30a902/pygls-2.1.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/f4/7e/a72dd26f3b0f4f2bf1dd8923c85f7ceb43172af56d63c7383eb62b332364/pygments-2.20.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/d4/24/a372aaf5c9b7208e7112038812994107bc65a84cd00e0354a88c2c77a617/pytest-9.0.3-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/3b/ab/b3226f0bd7cdcf710fbede2b3548584366da3b19b5021e74f5bde2a8fa3f/pytest-9.0.2-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e5/35/f8b19922b6a25bc0880171a2f1a003eaeb93657475193ab516fd87cac9da/pytest_asyncio-1.3.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl win-64: @@ -158,15 +660,12 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.11.12-h4c7d964_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/clang-20-20.1.8-default_hac490eb_5.conda - conda: https://conda.anaconda.org/conda-forge/win-64/clang-20.1.8-default_hac490eb_5.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/clang-format-20.1.8-default_hac490eb_14.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/clang-tools-20.1.8-default_hac490eb_14.conda - conda: https://conda.anaconda.org/conda-forge/win-64/clangxx-20.1.8-default_hac490eb_5.conda - conda: https://conda.anaconda.org/conda-forge/win-64/cmake-4.2.1-hdcbee5b_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/compiler-rt-20.1.8-h49e36cd_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_win-64-20.1.8-h49e36cd_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/icu-78.1-h637d24d_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.21.3-hdf4eb48_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libclang13-22.1.0-default_ha2db4b5_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.17.0-h43ecb02_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.7.3-hac47afa_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.5.2-h52bdfb6_0.conda @@ -203,7 +702,7 @@ environments: - pypi: https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/fd/1a/208293b6c350f5abea6941d5606080d4a492644052504f5312e5de30a902/pygls-2.1.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/f4/7e/a72dd26f3b0f4f2bf1dd8923c85f7ceb43172af56d63c7383eb62b332364/pygments-2.20.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/d4/24/a372aaf5c9b7208e7112038812994107bc65a84cd00e0354a88c2c77a617/pytest-9.0.3-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/3b/ab/b3226f0bd7cdcf710fbede2b3548584366da3b19b5021e74f5bde2a8fa3f/pytest-9.0.2-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e5/35/f8b19922b6a25bc0880171a2f1a003eaeb93657475193ab516fd87cac9da/pytest_asyncio-1.3.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl format: @@ -383,9 +882,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/ccache-4.13.2-hedf47ba_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-20-20.1.8-default_h99862b1_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-20.1.8-default_h36abe19_5.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-format-20-20.1.8-default_h99862b1_14.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-format-20.1.8-default_h99862b1_14.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-tools-20.1.8-default_h57a47db_14.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/clangxx-20.1.8-default_h363a0c9_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/cmake-4.2.1-hc85cc9f_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/compiler-rt-20.1.8-hb700be7_1.conda @@ -399,7 +895,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.21.3-h659f571_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45-default_hbd61a6d_104.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp20.1-20.1.8-default_h99862b1_5.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang13-22.1.0-default_h746c552_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.17.0-h4e3cde8_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20250104-pl5321h7949ede_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-hd590300_2.conda @@ -412,7 +907,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libhiredis-1.3.0-h5888daf_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.18-h3b78370_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm20-20.1.8-hf7376ad_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm22-22.1.1-hf7376ad_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.1-hb9d3cd8_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-devel-5.8.1-hb9d3cd8_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libmpdec-4.0.0-hb9d3cd8_0.conda @@ -454,7 +948,7 @@ environments: - pypi: https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/fd/1a/208293b6c350f5abea6941d5606080d4a492644052504f5312e5de30a902/pygls-2.1.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/f4/7e/a72dd26f3b0f4f2bf1dd8923c85f7ceb43172af56d63c7383eb62b332364/pygments-2.20.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/d4/24/a372aaf5c9b7208e7112038812994107bc65a84cd00e0354a88c2c77a617/pytest-9.0.3-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/3b/ab/b3226f0bd7cdcf710fbede2b3548584366da3b19b5021e74f5bde2a8fa3f/pytest-9.0.2-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e5/35/f8b19922b6a25bc0880171a2f1a003eaeb93657475193ab516fd87cac9da/pytest_asyncio-1.3.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl osx-arm64: @@ -464,16 +958,12 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ccache-4.13.2-h414bf82_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-20-20.1.8-default_h73dfc95_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-20.1.8-default_hf9bcbb7_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-format-20-20.1.8-default_hf3020a7_14.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-format-20.1.8-default_hf3020a7_14.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-tools-20.1.8-default_h1589341_14.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clangxx-20.1.8-default_h36137df_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cmake-4.2.1-h54ad630_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/compiler-rt-20.1.8-h855ad52_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_osx-arm64-20.1.8-he32a8d3_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.21.3-h237132a_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang-cpp20.1-20.1.8-default_h73dfc95_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang13-21.1.7-default_h13b06bd_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.17.0-hdece5d2_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-21.1.7-hf598326_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-devel-20.1.8-h6dc3340_3.conda @@ -485,7 +975,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libhiredis-1.3.0-h286801f_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libiconv-1.18-h23cfdf5_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm20-20.1.8-h8e0c9ce_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm21-21.1.8-h8e0c9ce_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-5.8.1-h39f12f2_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-devel-5.8.1-h39f12f2_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libmpdec-4.0.0-h5505292_0.conda @@ -521,7 +1010,7 @@ environments: - pypi: https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/fd/1a/208293b6c350f5abea6941d5606080d4a492644052504f5312e5de30a902/pygls-2.1.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/f4/7e/a72dd26f3b0f4f2bf1dd8923c85f7ceb43172af56d63c7383eb62b332364/pygments-2.20.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/d4/24/a372aaf5c9b7208e7112038812994107bc65a84cd00e0354a88c2c77a617/pytest-9.0.3-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/3b/ab/b3226f0bd7cdcf710fbede2b3548584366da3b19b5021e74f5bde2a8fa3f/pytest-9.0.2-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e5/35/f8b19922b6a25bc0880171a2f1a003eaeb93657475193ab516fd87cac9da/pytest_asyncio-1.3.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl win-64: @@ -529,14 +1018,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.11.12-h4c7d964_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/clang-20-20.1.8-default_hac490eb_5.conda - conda: https://conda.anaconda.org/conda-forge/win-64/clang-20.1.8-default_hac490eb_5.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/clang-format-20.1.8-default_hac490eb_14.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/clang-tools-20.1.8-default_hac490eb_14.conda - conda: https://conda.anaconda.org/conda-forge/win-64/clangxx-20.1.8-default_hac490eb_5.conda - conda: https://conda.anaconda.org/conda-forge/win-64/cmake-4.2.1-hdcbee5b_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/compiler-rt-20.1.8-h49e36cd_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_win-64-20.1.8-h49e36cd_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.21.3-hdf4eb48_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libclang13-22.1.0-default_ha2db4b5_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.17.0-h43ecb02_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.7.3-hac47afa_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.5.2-h52bdfb6_0.conda @@ -576,7 +1062,7 @@ environments: - pypi: https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/fd/1a/208293b6c350f5abea6941d5606080d4a492644052504f5312e5de30a902/pygls-2.1.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/f4/7e/a72dd26f3b0f4f2bf1dd8923c85f7ceb43172af56d63c7383eb62b332364/pygments-2.20.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/d4/24/a372aaf5c9b7208e7112038812994107bc65a84cd00e0354a88c2c77a617/pytest-9.0.3-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/3b/ab/b3226f0bd7cdcf710fbede2b3548584366da3b19b5021e74f5bde2a8fa3f/pytest-9.0.2-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e5/35/f8b19922b6a25bc0880171a2f1a003eaeb93657475193ab516fd87cac9da/pytest_asyncio-1.3.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl packages: @@ -587,6 +1073,19 @@ packages: purls: [] size: 2562 timestamp: 1578324546067 +- conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-20_gnu.conda + build_number: 20 + sha256: 1dd3fffd892081df9726d7eb7e0dea6198962ba775bd88842135a4ddb4deb3c9 + md5: a9f577daf3de00bca7c3c76c0ecbd1de + depends: + - __glibc >=2.17,<3.0.a0 + - libgomp >=7.5.0 + constrains: + - openmp_impl <0.0a0 + license: BSD-3-Clause + license_family: BSD + size: 28948 + timestamp: 1770939786096 - conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2 build_number: 16 sha256: fbe2c5e56a653bebb982eda4876a9178aedfc2b545f25d0ce9c4c0b508253d22 @@ -630,6 +1129,37 @@ packages: purls: [] size: 3719982 timestamp: 1766513109980 +- conda: https://conda.anaconda.org/conda-forge/linux-64/binutils_impl_linux-64-2.45.1-default_hfdba357_102.conda + sha256: 0a7d405064f53b9d91d92515f1460f7906ee5e8523f3cd8973430e81219f4917 + md5: 8165352fdce2d2025bf884dc0ee85700 + depends: + - ld_impl_linux-64 2.45.1 default_hbd61a6d_102 + - sysroot_linux-64 + - zstd >=1.5.7,<1.6.0a0 + license: GPL-3.0-only + license_family: GPL + size: 3661455 + timestamp: 1774197460085 +- conda: https://conda.anaconda.org/conda-forge/linux-64/binutils_impl_linux-aarch64-2.45.1-default_hc5fa074_102.conda + sha256: 5a9d58f2f7cb2066e64fda3ba6e352ae947d0be25774d6270cb9dc98f00be821 + md5: 5366007cde5b4ede6e19fee262cf2f95 + depends: + - ld_impl_linux-aarch64 2.45.1 default_h27e1c4c_102 + - sysroot_linux-aarch64 + - zstd >=1.5.7,<1.6.0a0 + license: GPL-3.0-only + license_family: GPL + size: 3538540 + timestamp: 1774197478919 +- conda: https://conda.anaconda.org/conda-forge/linux-64/binutils_linux-aarch64-2.45.1-default_h7726a90_102.conda + sha256: c47ffb66cb82cfe4596ebab4ae6e82f390ff4e7620dfd66264941b66bb42e6c8 + md5: a0047e55f495b44a2bb3242ff43eb1dd + depends: + - binutils_impl_linux-aarch64 2.45.1 default_hc5fa074_102 + license: GPL-3.0-only + license_family: GPL + size: 36242 + timestamp: 1774197490029 - conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hda65f42_8.conda sha256: c30daba32ddebbb7ded490f0e371eae90f51e72db620554089103b4a6934b0d5 md5: 51a19bba1b8ebfb60df25cde030b7ebc @@ -641,6 +1171,16 @@ packages: purls: [] size: 260341 timestamp: 1757437258798 +- conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hda65f42_9.conda + sha256: 0b75d45f0bba3e95dc693336fa51f40ea28c980131fec438afb7ce6118ed05f6 + md5: d2ffd7602c02f2b316fd921d39876885 + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=14 + license: bzip2-1.0.6 + license_family: BSD + size: 260182 + timestamp: 1771350215188 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-hd037594_8.conda sha256: b456200636bd5fecb2bec63f7e0985ad2097cf1b83d60ce0b6968dffa6d02aa1 md5: 58fd217444c2a5701a44244faf518206 @@ -651,6 +1191,15 @@ packages: purls: [] size: 125061 timestamp: 1757437486465 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-hd037594_9.conda + sha256: 540fe54be35fac0c17feefbdc3e29725cce05d7367ffedfaaa1bdda234b019df + md5: 620b85a3f45526a8bc4d23fd78fc22f0 + depends: + - __osx >=11.0 + license: bzip2-1.0.6 + license_family: BSD + size: 124834 + timestamp: 1771350416561 - conda: https://conda.anaconda.org/conda-forge/win-64/bzip2-1.0.8-h0ad9c76_8.conda sha256: d882712855624641f48aa9dc3f5feea2ed6b4e6004585d3616386a18186fe692 md5: 1077e9333c41ff0be8edd1a5ec0ddace @@ -663,6 +1212,17 @@ packages: purls: [] size: 55977 timestamp: 1757437738856 +- conda: https://conda.anaconda.org/conda-forge/win-64/bzip2-1.0.8-h0ad9c76_9.conda + sha256: 76dfb71df5e8d1c4eded2dbb5ba15bb8fb2e2b0fe42d94145d5eed4c75c35902 + md5: 4cb8e6b48f67de0b018719cdf1136306 + depends: + - ucrt >=10.0.20348.0 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + license: bzip2-1.0.6 + license_family: BSD + size: 56115 + timestamp: 1771350256444 - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.34.6-hb03c661_0.conda sha256: cc9accf72fa028d31c2a038460787751127317dcfa991f8d1f1babf216bb454e md5: 920bb03579f15389b9e512095ad995b7 @@ -702,6 +1262,22 @@ packages: purls: [] size: 152432 timestamp: 1762967197890 +- conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-h4c7d964_0.conda + sha256: 37950019c59b99585cee5d30dbc2cc9696ed4e11f5742606a4db1621ed8f94d6 + md5: f001e6e220355b7f87403a4d0e5bf1ca + depends: + - __win + license: ISC + size: 147734 + timestamp: 1772006322223 +- conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda + sha256: 67cc7101b36421c5913a1687ef1b99f85b5d6868da3abbf6ec1a4181e79782fc + md5: 4492fd26db29495f0ba23f146cd5638d + depends: + - __unix + license: ISC + size: 147413 + timestamp: 1772006283803 - pypi: https://files.pythonhosted.org/packages/80/56/60547f7801b97c67e97491dc3d9ade9fbccbd0325058fd3dfcb2f5d98d90/cattrs-26.1.0-py3-none-any.whl name: cattrs version: 26.1.0 @@ -750,6 +1326,49 @@ packages: purls: [] size: 598937 timestamp: 1774189390770 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/cctools-1030.6.3-llvm20_1_h617d6d1_4.conda + sha256: 06d1d3af6b0c1b82ae981ac507213c3b8936bafc84d242bfca8b148467e8b881 + md5: c438326a31a001c8f756131986a06d7e + depends: + - cctools_impl_osx-arm64 1030.6.3 llvm20_1_hd60c58f_4 + - ld64 956.6 llvm20_1_hb625feb_4 + - libllvm20 >=20.1.8,<20.2.0a0 + license: APSL-2.0 + license_family: Other + size: 24331 + timestamp: 1768852523211 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/cctools_impl_osx-arm64-1030.6.3-llvm20_1_hd60c58f_4.conda + sha256: 12548860339e8c1f504d896f2ca6d1018b759bbe9b2d4ac4127136a8253010a9 + md5: f72e7ff154f694ec93da1b96d4bac480 + depends: + - __osx >=11.0 + - ld64_osx-arm64 >=956.6,<956.7.0a0 + - libcxx + - libllvm20 >=20.1.8,<20.2.0a0 + - libzlib >=1.3.1,<2.0a0 + - llvm-tools 20.1.* + - sigtool-codesign + constrains: + - ld64 956.6.* + - cctools 1030.6.3.* + - clang 20.1.* + license: APSL-2.0 + license_family: Other + size: 749459 + timestamp: 1768852487669 +- conda: https://conda.anaconda.org/conda-forge/linux-64/clang-20.1.8-default_cfg_hcbb2b3e_14.conda + sha256: d0fae6c3df20351948bc21f4f6355604c0415937953467070d0b348bc15eed78 + md5: b3eea62d87bb2fed05e560a7aa10e54d + depends: + - binutils_impl_linux-64 + - clang-20 20.1.8 default_h99862b1_14 + - clang_impl_linux-64 20.1.8 default_cfg_h027053c_14 + - libgcc-devel_linux-64 + - sysroot_linux-64 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + size: 70692 + timestamp: 1773111311302 - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-20.1.8-default_h36abe19_5.conda sha256: dfce7b8de6be7a988dab1092e2ad54fc544a572cc5ac7df28f8f48ab409814bc md5: b6ab4982173dcae265d545bec3a76a6c @@ -763,6 +1382,19 @@ packages: purls: [] size: 69507 timestamp: 1764393877870 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-20.1.8-default_cfg_hb78b91e_14.conda + sha256: 06a85395d8ccd4f13235d5ffacd382e136d5c65e70b4ea650d274ada36820713 + md5: 1939aea70abc3e7d803a661eb10d94a0 + depends: + - cctools + - clang-20 20.1.8.* default_* + - clang_impl_osx-arm64 20.1.8 default_cfg_h6e044b8_14 + - ld64 + - ld64_osx-arm64 * llvm20_1_* + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + size: 71104 + timestamp: 1773110711411 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-20.1.8-default_hf9bcbb7_5.conda sha256: 18a3c82f91af7551f686c680456cecfc472cf70e5a3f894f2ca3d8171dbfe928 md5: a53f0e70b6c18388381b387cd9c0f448 @@ -788,6 +1420,33 @@ packages: purls: [] size: 108981467 timestamp: 1764399230779 +- conda: https://conda.anaconda.org/conda-forge/win-64/clang-20.1.8-default_nocfg_hbb9487a_14.conda + sha256: 333508432c9e4c9751570f2ab54c233cffcc8bbcc8a6c220403ff36d3fff80ef + md5: 3babdfdb46f4444189a18caf502dadcd + depends: + - clang-20 20.1.8 default_hac490eb_14 + - libzlib >=1.3.1,<2.0a0 + - ucrt >=10.0.20348.0 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + - zstd >=1.5.7,<1.6.0a0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + size: 109016635 + timestamp: 1773116987287 +- conda: https://conda.anaconda.org/conda-forge/linux-64/clang-20-20.1.8-default_h99862b1_14.conda + sha256: 1870def4ed5ea8c72455356147c5d166c3ccbf9ee2e08252e95bb32cd958ad35 + md5: fff00d34a9915cd2280b77ddbd239724 + depends: + - __glibc >=2.17,<3.0.a0 + - libclang-cpp20.1 20.1.8 default_h99862b1_14 + - libgcc >=14 + - libllvm20 >=20.1.8,<20.2.0a0 + - libstdcxx >=14 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + size: 862220 + timestamp: 1773111106333 - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-20-20.1.8-default_h99862b1_5.conda sha256: 8c1cd16b814763792420aa0ee12d6b449d11e5978a1c05b1e41e75990c4d7478 md5: 21cd9b3eabc4ad3c4d824bf4e9edef5a @@ -815,6 +1474,31 @@ packages: purls: [] size: 850136 timestamp: 1764397974589 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-20-20.1.8-default_hf3020a7_14.conda + sha256: 874eb91da727b7fa24bb07127c8f6b9a9409b0bb8124387487286dd392344d0b + md5: 29bd97f44320bf5569a3d7d4e7b082d3 + depends: + - __osx >=11.0 + - libclang-cpp20.1 20.1.8 default_hf3020a7_14 + - libcxx >=20.1.8 + - libllvm20 >=20.1.8,<20.2.0a0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + size: 844483 + timestamp: 1773110232358 +- conda: https://conda.anaconda.org/conda-forge/win-64/clang-20-20.1.8-default_hac490eb_14.conda + sha256: f787af3a1ab2ac4e6911365caa668fefdcf32486b9491986d6f9a6126aa315c6 + md5: 2743a90ee20d8b1e290ddc8603f5092e + depends: + - libzlib >=1.3.1,<2.0a0 + - ucrt >=10.0.20348.0 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + - zstd >=1.5.7,<1.6.0a0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + size: 73446163 + timestamp: 1773141809598 - conda: https://conda.anaconda.org/conda-forge/win-64/clang-20-20.1.8-default_hac490eb_5.conda sha256: af5efd61f56030acced4c8bbf5b5f9cfeecc439ee2a6451c560b71c8d3ea7545 md5: 817f6565e6bc0f7fb9ed50c3fdf503e1 @@ -829,21 +1513,6 @@ packages: purls: [] size: 73427981 timestamp: 1764398987103 -- conda: https://conda.anaconda.org/conda-forge/linux-64/clang-format-20.1.8-default_h99862b1_14.conda - sha256: b58148bb200231f21a0a78e90456414be7de8dd4fc115ebdf6e9d808d151e9e6 - md5: de9baf19d75c9ca7b4e88f5609db0347 - depends: - - __glibc >=2.17,<3.0.a0 - - clang-format-20 20.1.8 default_h99862b1_14 - - libclang-cpp20.1 >=20.1.8,<20.2.0a0 - - libgcc >=14 - - libllvm20 >=20.1.8,<20.2.0a0 - - libstdcxx >=14 - license: Apache-2.0 WITH LLVM-exception - license_family: Apache - purls: [] - size: 71009 - timestamp: 1773111214926 - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-format-21.1.7-default_h99862b1_2.conda sha256: 8a9c2e0df0fd55da3ea9352fc356d1ca9d9312bbf275e1a5e22552bfb63affb9 md5: 8e0b6ced8948217e4748ad0c26f8df4d @@ -858,20 +1527,6 @@ packages: license_family: Apache size: 27733 timestamp: 1766016586518 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-format-20.1.8-default_hf3020a7_14.conda - sha256: 0967d59e8a89c5f9c1cfa3579403ee3295f5770c01b308c9abb434df47acc5db - md5: 86639340249e4d8fa1b37ab92e581d26 - depends: - - __osx >=11.0 - - clang-format-20 20.1.8 default_hf3020a7_14 - - libclang-cpp20.1 >=20.1.8,<20.2.0a0 - - libcxx >=20.1.8 - - libllvm20 >=20.1.8,<20.2.0a0 - license: Apache-2.0 WITH LLVM-exception - license_family: Apache - purls: [] - size: 71355 - timestamp: 1773110589745 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-format-21.1.7-default_hf3020a7_2.conda sha256: 2b91ed7e567a1618fd342100ba43bcd670bff8a1183a5c65032cefc0a436d3d6 md5: 37585890edaa4842a62037a7fa6e1e64 @@ -885,18 +1540,6 @@ packages: license_family: Apache size: 28328 timestamp: 1766167306042 -- conda: https://conda.anaconda.org/conda-forge/win-64/clang-format-20.1.8-default_hac490eb_14.conda - sha256: 7c657222c2b310387e11a316bf835910181c04ed54f2e35e28885cc5423c8496 - md5: 188355e2c07643a0232b9b817c230a36 - depends: - - ucrt >=10.0.20348.0 - - vc >=14.3,<15 - - vc14_runtime >=14.44.35208 - license: Apache-2.0 WITH LLVM-exception - license_family: Apache - purls: [] - size: 1265666 - timestamp: 1773142030144 - conda: https://conda.anaconda.org/conda-forge/win-64/clang-format-21.1.7-default_hac490eb_2.conda sha256: afa22671525e890a98445d1c2abc35e8b87c4c208d053e6527c5d2cbf6f7c938 md5: 8afc1288250ef6c77e8f7aa0df683a65 @@ -908,33 +1551,6 @@ packages: license_family: Apache size: 1233929 timestamp: 1766022144370 -- conda: https://conda.anaconda.org/conda-forge/linux-64/clang-format-20-20.1.8-default_h99862b1_14.conda - sha256: 17b84830ca43b9db271b50d8474a4231204321016f9ff5c2c690dddeb0d66f28 - md5: 55910d2902458004d9c4e443648c5841 - depends: - - __glibc >=2.17,<3.0.a0 - - libclang-cpp20.1 >=20.1.8,<20.2.0a0 - - libgcc >=14 - - libllvm20 >=20.1.8,<20.2.0a0 - - libstdcxx >=14 - license: Apache-2.0 WITH LLVM-exception - license_family: Apache - purls: [] - size: 114295 - timestamp: 1773111143555 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-format-20-20.1.8-default_hf3020a7_14.conda - sha256: 52f77009e2f69db348c10cb20371e0b1bf6f49e2e91e026d5fb93addc6526ef6 - md5: 2250c216f6da8f1f875f2b6a794d5e67 - depends: - - __osx >=11.0 - - libclang-cpp20.1 >=20.1.8,<20.2.0a0 - - libcxx >=20.1.8 - - libllvm20 >=20.1.8,<20.2.0a0 - license: Apache-2.0 WITH LLVM-exception - license_family: Apache - purls: [] - size: 108365 - timestamp: 1773110420001 - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-format-21-21.1.7-default_h99862b1_2.conda sha256: 4d360c464ddab6c47c8fceca87b625b58d6a3b3cd523958a314e8db7d5f4eb94 md5: 5589c06b39ae5be8aca4d16e28a43518 @@ -960,65 +1576,47 @@ packages: license_family: Apache size: 65217 timestamp: 1766167190049 -- conda: https://conda.anaconda.org/conda-forge/linux-64/clang-tools-20.1.8-default_h57a47db_14.conda - sha256: 565bbd489160501c5374fe346dca83a6ec4dac23aecc5bc48c276fe47ca2c263 - md5: 897e3de8e6310eb23d01004907520513 +- conda: https://conda.anaconda.org/conda-forge/linux-64/clang_impl_linux-64-20.1.8-default_cfg_h027053c_14.conda + sha256: 8df1db031e9d34f86040cf49595bd1debf3fbe2b9c6a5386148e269412faafbd + md5: 47da9203dde46c589423f45fbf85e2a8 depends: - - __glibc >=2.17,<3.0.a0 - - clang-format 20.1.8 default_h99862b1_14 - - libclang-cpp20.1 >=20.1.8,<20.2.0a0 - - libclang13 >=20.1.8 - - libgcc >=14 - - libllvm20 >=20.1.8,<20.2.0a0 - - libstdcxx >=14 - - libxml2 - - libxml2-16 >=2.14.6 - constrains: - - clangdev 20.1.8 + - binutils_impl_linux-64 + - clang-20 20.1.8 default_h99862b1_14 + - compiler-rt 20.1.8.* + - compiler-rt_linux-64 + - libgcc-devel_linux-64 + - llvm-openmp >=20.1.8 + - sysroot_linux-64 license: Apache-2.0 WITH LLVM-exception license_family: Apache - purls: [] - size: 21897132 - timestamp: 1773111341498 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-tools-20.1.8-default_h1589341_14.conda - sha256: 372c9e722fd99e42838528d33148ca1fa7dd84a02cf06ac7d291657f657e7026 - md5: 8a25b0558245abf052a89a38eb8dbb58 - depends: - - __osx >=11.0 - - clang-format 20.1.8 default_hf3020a7_14 - - libclang-cpp20.1 >=20.1.8,<20.2.0a0 - - libclang13 >=20.1.8 - - libcxx >=20.1.8 - - libllvm20 >=20.1.8,<20.2.0a0 - - libxml2 - - libxml2-16 >=2.14.6 - constrains: - - clangdev 20.1.8 + size: 71029 + timestamp: 1773111250623 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang_impl_osx-arm64-20.1.8-default_cfg_h6e044b8_14.conda + sha256: c935a4b55c6a76500c3208af4cbd0cab49f0ca7ded883b69a5064549a59765aa + md5: a2ef2da222ffb555412fb3b76b468955 + depends: + - cctools_impl_osx-arm64 + - clang-20 20.1.8.* default_* + - compiler-rt 20.1.8.* + - compiler-rt_osx-arm64 + - ld64_osx-arm64 * llvm20_1_* + - llvm-openmp >=20.1.8 + - llvm-tools 20.1.8.* license: Apache-2.0 WITH LLVM-exception license_family: Apache - purls: [] - size: 14941399 - timestamp: 1773110809290 -- conda: https://conda.anaconda.org/conda-forge/win-64/clang-tools-20.1.8-default_hac490eb_14.conda - sha256: 25b5962d5e46c01edd9e91b0092a1cbe840276cfce6e0ccd8752ff9d21deb0fb - md5: 7f081578424e00ff4724ded6228f1be8 - depends: - - clang-format 20.1.8 default_hac490eb_14 - - libclang13 >=20.1.8 - - libxml2 - - libxml2-16 >=2.14.6 - - libzlib >=1.3.1,<2.0a0 - - ucrt >=10.0.20348.0 - - vc >=14.3,<15 - - vc14_runtime >=14.44.35208 - - zstd >=1.5.7,<1.6.0a0 - constrains: - - clangdev 20.1.8 + size: 71450 + timestamp: 1773110653470 +- conda: https://conda.anaconda.org/conda-forge/linux-64/clangxx-20.1.8-default_cfg_hcbb2b3e_14.conda + sha256: 2ab059f0a1cd475ace855518d0b829b88a350df52645e495fc8104a3dae4bd64 + md5: 0f4df79722050b6a94f2fab1525fce8d + depends: + - clang 20.1.8 default_cfg_hcbb2b3e_14 + - clangxx_impl_linux-64 20.1.8.* default_* + - libstdcxx-devel_linux-64 license: Apache-2.0 WITH LLVM-exception license_family: Apache - purls: [] - size: 319341053 - timestamp: 1773142869937 + size: 70674 + timestamp: 1773111458417 - conda: https://conda.anaconda.org/conda-forge/linux-64/clangxx-20.1.8-default_h363a0c9_5.conda sha256: d30843fc1012ff5fb6c95e07c15182d22f03a37c380ae350ba069adf75092828 md5: 692c84fedd1a3302ff26dbc9a211f626 @@ -1030,6 +1628,17 @@ packages: purls: [] size: 69653 timestamp: 1764393894282 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/clangxx-20.1.8-default_cfg_h170a469_14.conda + sha256: ab302bdf42fed92df2435555850b7ff12b75037a24f4e2bcad4a78c32977b2a6 + md5: 492ba121e7cb21148569d11e7ead50e4 + depends: + - clang 20.1.8 default_cfg_hb78b91e_14 + - clangxx_impl_osx-arm64 20.1.8.* default_* + - libcxx-devel 20.1.* + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + size: 71097 + timestamp: 1773111032556 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clangxx-20.1.8-default_h36137df_5.conda sha256: 7aab017150fc1d0b2a463ffa298b3ed4fd83ed6083fa1fb812ecef75170bf60f md5: 881b85454ddf23fb46d1ddcbd148146f @@ -1045,7 +1654,22 @@ packages: sha256: b84853552d15ad6f6198b8803842853bb8e133f1feb4e15ac1d38a24fe0c68c9 md5: 4275ccf7c108d6cf4e4eb715bfec8cef depends: - - clang 20.1.8 default_hac490eb_5 + - clang 20.1.8 default_hac490eb_5 + - libzlib >=1.3.1,<2.0a0 + - ucrt >=10.0.20348.0 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + - zstd >=1.5.7,<1.6.0a0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 36371198 + timestamp: 1764399473710 +- conda: https://conda.anaconda.org/conda-forge/win-64/clangxx-20.1.8-default_nocfg_hbb9487a_14.conda + sha256: 180fe4935c13c7f4b771e73dbe83165684d3785c363581b614eb974d9c2e75aa + md5: c773745906d812b9f499253888129158 + depends: + - clang 20.1.8 default_nocfg_hbb9487a_14 - libzlib >=1.3.1,<2.0a0 - ucrt >=10.0.20348.0 - vc >=14.3,<15 @@ -1053,9 +1677,30 @@ packages: - zstd >=1.5.7,<1.6.0a0 license: Apache-2.0 WITH LLVM-exception license_family: Apache - purls: [] - size: 36371198 - timestamp: 1764399473710 + size: 36384719 + timestamp: 1773143657444 +- conda: https://conda.anaconda.org/conda-forge/linux-64/clangxx_impl_linux-64-20.1.8-default_cfg_h027053c_14.conda + sha256: f43e56bddaa42854c3401d5bdc681d1962e9054b8e3c98e35ab47628fe6ef134 + md5: 9dee03ee766554fa83cc81599fa972a4 + depends: + - clang-20 20.1.8 default_h99862b1_14 + - clang_impl_linux-64 20.1.8 default_cfg_h027053c_14 + - libstdcxx-devel_linux-64 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + size: 70781 + timestamp: 1773111421376 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/clangxx_impl_osx-arm64-20.1.8-default_cfg_h6e044b8_14.conda + sha256: 9f71b8d4911c7d5ea7e873d33991ddf15c5b34d583b714f68d90e9b9569bae8f + md5: a3bae23a3ba82ec47b480fe8865523e7 + depends: + - clang-20 20.1.8.* default_* + - clang_impl_osx-arm64 20.1.8 default_cfg_h6e044b8_14 + - libcxx-devel 20.1.* + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + size: 71095 + timestamp: 1773110946504 - conda: https://conda.anaconda.org/conda-forge/linux-64/cmake-4.2.1-hc85cc9f_0.conda sha256: 655db6eddb370306d6d0ed3ac1d679ca044e45e03a43fc98cccfc5cafc341c5f md5: e4afa0cb7943cc9810546f70f02223d5 @@ -1077,6 +1722,26 @@ packages: purls: [] size: 22303088 timestamp: 1765229009574 +- conda: https://conda.anaconda.org/conda-forge/linux-64/cmake-4.3.1-hc85cc9f_0.conda + sha256: 8ff9f2c159c55ea2b920c4ea41f39cd3b9ecf86b218a377f2941cb1c8b534741 + md5: 0f753e779c0fee33c84ed1a110c0cb4a + depends: + - __glibc >=2.17,<3.0.a0 + - bzip2 >=1.0.8,<2.0a0 + - libcurl >=8.19.0,<9.0a0 + - libexpat >=2.7.4,<3.0a0 + - libgcc >=14 + - liblzma >=5.8.2,<6.0a0 + - libstdcxx >=14 + - libuv >=1.51.0,<2.0a0 + - libzlib >=1.3.2,<2.0a0 + - ncurses >=6.5,<7.0a0 + - rhash >=1.4.6,<2.0a0 + - zstd >=1.5.7,<1.6.0a0 + license: BSD-3-Clause + license_family: BSD + size: 23093161 + timestamp: 1774645184037 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cmake-4.2.1-h54ad630_0.conda sha256: a881f3379ff18a98bbc2456e9a74d748bdbd930799c2b98dd266733b0d8fbd90 md5: 11a1d109b6d7882b5f2f93fe9824af4a @@ -1097,6 +1762,25 @@ packages: purls: [] size: 17740888 timestamp: 1765231308407 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/cmake-4.3.1-h8cb302d_0.conda + sha256: 2f33e0157b553c752b609bc5907a537afe9c34f5b282abc1b03ffa898c8ac43e + md5: fdda7688fea2d343e8b73ab9be037501 + depends: + - __osx >=11.0 + - bzip2 >=1.0.8,<2.0a0 + - libcurl >=8.19.0,<9.0a0 + - libcxx >=19 + - libexpat >=2.7.4,<3.0a0 + - liblzma >=5.8.2,<6.0a0 + - libuv >=1.51.0,<2.0a0 + - libzlib >=1.3.2,<2.0a0 + - ncurses >=6.5,<7.0a0 + - rhash >=1.4.6,<2.0a0 + - zstd >=1.5.7,<1.6.0a0 + license: BSD-3-Clause + license_family: BSD + size: 18158020 + timestamp: 1774647856214 - conda: https://conda.anaconda.org/conda-forge/win-64/cmake-4.2.1-hdcbee5b_0.conda sha256: 03d85d6493ad6c410708f243aeb680c491075c89f0cae7e3afab718f27f28967 md5: dd8c71fb422275f652743068455e9acd @@ -1115,6 +1799,23 @@ packages: purls: [] size: 15739640 timestamp: 1765230626010 +- conda: https://conda.anaconda.org/conda-forge/win-64/cmake-4.3.1-hdcbee5b_0.conda + sha256: f2ab8f116055dc97385db8b1cf04f9929d8038f88ab1af9103a536cdd4034b28 + md5: d5e76415788f7ed5ec619dc1f055cf2f + depends: + - bzip2 >=1.0.8,<2.0a0 + - libcurl >=8.19.0,<9.0a0 + - libexpat >=2.7.4,<3.0a0 + - liblzma >=5.8.2,<6.0a0 + - libuv >=1.51.0,<2.0a0 + - libzlib >=1.3.2,<2.0a0 + - ucrt >=10.0.20348.0 + - vc14_runtime >=14.44.35208 + - zstd >=1.5.7,<1.6.0a0 + license: BSD-3-Clause + license_family: BSD + size: 16262043 + timestamp: 1774646510689 - pypi: https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl name: colorama version: 0.4.6 @@ -1259,6 +1960,30 @@ packages: purls: [] size: 73545585 timestamp: 1740240767348 +- conda: https://conda.anaconda.org/conda-forge/linux-64/gcc_impl_linux-aarch64-14.2.0-h0367a0d_2.conda + sha256: 474e931e8cd64f7c3577ed06f990345cef170263c9e67d46507df52ca4042dac + md5: b9c91a3b8d6c045e5d58f018edf3794d + depends: + - binutils_impl_linux-aarch64 >=2.40 + - libgcc-devel_linux-aarch64 14.2.0 h3d07465_2 + - sysroot_linux-aarch64 + license: GPL-3.0-only WITH GCC-exception-3.1 + license_family: GPL + size: 409533260 + timestamp: 1740241669007 +- conda: https://conda.anaconda.org/conda-forge/linux-64/gcc_linux-aarch64-14.2.0-h476b46d_10.conda + sha256: 0769c534c2893d396ba638d82a758e2b681cc18f2176dc39f98458e65ed3ff11 + md5: f1471c725c83dc50e69e0c3672473cca + depends: + - binutils_linux-aarch64 + - gcc_impl_linux-64 14.2.0.* + - gcc_impl_linux-aarch64 14.2.0.* + - sysroot_linux-64 + - sysroot_linux-aarch64 + license: BSD-3-Clause + license_family: BSD + size: 32458 + timestamp: 1745041767697 - conda: https://conda.anaconda.org/conda-forge/linux-64/gxx-14.2.0-h96c4ede_2.conda sha256: 9294f1a33a629102d2c1e0965dc8c23cd39f8608dba38defea81f2c517d69750 md5: d82a920bedd11c9d8195bcb662d3dc89 @@ -1283,6 +2008,31 @@ packages: purls: [] size: 14611960 timestamp: 1740241005796 +- conda: https://conda.anaconda.org/conda-forge/linux-64/gxx_impl_linux-aarch64-14.2.0-he1303a5_2.conda + sha256: 7b57e2ce4fe7c44f6c5bff0cf62e4bfb8e49bb011bfd907dcd77b3b1bb84643d + md5: 1d1a1504f3103b9e632372f64a9414a2 + depends: + - gcc_impl_linux-aarch64 14.2.0 h0367a0d_2 + - libstdcxx-devel_linux-aarch64 14.2.0 h3d07465_2 + - sysroot_linux-aarch64 + - tzdata + license: GPL-3.0-only WITH GCC-exception-3.1 + license_family: GPL + size: 101948070 + timestamp: 1740242725017 +- conda: https://conda.anaconda.org/conda-forge/linux-64/gxx_linux-aarch64-14.2.0-h1e077ba_10.conda + sha256: e0b2da072fe73daf03853e46b3d8d4190edc8749f518839ca04b4fe644e0109b + md5: 0b8d34a1ac86abcf000da7663d0f19f2 + depends: + - binutils_linux-aarch64 + - gcc_linux-aarch64 14.2.0 h476b46d_10 + - gxx_impl_linux-64 14.2.0.* + - gxx_impl_linux-aarch64 14.2.0.* + - sysroot_linux-aarch64 + license: BSD-3-Clause + license_family: BSD + size: 30794 + timestamp: 1745041786397 - conda: https://conda.anaconda.org/conda-forge/linux-64/icu-75.1-he02047a_0.conda sha256: 71e750d509f5fa3421087ba88ef9a7b9be11c53174af3aa4d06aff4c18b38e8e md5: 8b189310083baabfb622af68fd9d3ae3 @@ -1306,6 +2056,17 @@ packages: purls: [] size: 12722920 timestamp: 1766299101259 +- conda: https://conda.anaconda.org/conda-forge/linux-64/icu-78.3-h33c6efd_0.conda + sha256: fbf86c4a59c2ed05bbffb2ba25c7ed94f6185ec30ecb691615d42342baa1a16a + md5: c80d8a3b84358cb967fa81e7075fbc8a + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=14 + - libstdcxx >=14 + license: MIT + license_family: MIT + size: 12723451 + timestamp: 1773822285671 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-75.1-hfee45f7_0.conda sha256: 9ba12c93406f3df5ab0a43db8a4b4ef67a5871dfd401010fbe29b218b2cbe620 md5: 5eb22c1d7b3fc4abb50d92d621583137 @@ -1325,6 +2086,15 @@ packages: purls: [] size: 12372254 timestamp: 1766299497731 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-78.3-hef89b57_0.conda + sha256: 3a7907a17e9937d3a46dfd41cffaf815abad59a569440d1e25177c15fd0684e5 + md5: f1182c91c0de31a7abd40cedf6a5ebef + depends: + - __osx >=11.0 + license: MIT + license_family: MIT + size: 12361647 + timestamp: 1773822915649 - conda: https://conda.anaconda.org/conda-forge/win-64/icu-78.1-h637d24d_0.conda sha256: bee083d5a0f05c380fcec1f30a71ef5518b23563aeb0a21f6b60b792645f9689 md5: cb8048bed35ef01431184d6a88e46b3e @@ -1352,6 +2122,15 @@ packages: purls: [] size: 943486 timestamp: 1729794504440 +- conda: https://conda.anaconda.org/conda-forge/noarch/kernel-headers_linux-aarch64-4.18.0-h05a177a_18.conda + sha256: 99731884b26d5801c931f6ed4e1d40f0d1b2efc60ab2d1d49e9b3a6508a390df + md5: 40ebaa9844bc99af99fc1beaed90b379 + constrains: + - sysroot_linux-aarch64 ==2.17 + license: LGPL-2.0-or-later AND LGPL-2.0-or-later WITH exceptions AND GPL-2.0-or-later AND MPL-2.0 + license_family: GPL + size: 1113306 + timestamp: 1729794501866 - conda: https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.3-hb9d3cd8_0.conda sha256: 0960d06048a7185d3542d850986d807c6e37ca2e644342dd0c72feefcf26c2a4 md5: b38117a3c920364aff79f870c984b4a3 @@ -1377,6 +2156,21 @@ packages: purls: [] size: 1370023 timestamp: 1719463201255 +- conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.22.2-ha1258a1_0.conda + sha256: 3e307628ca3527448dd1cb14ad7bb9d04d1d28c7d4c5f97ba196ae984571dd25 + md5: fb53fb07ce46a575c5d004bbc96032c2 + depends: + - __glibc >=2.17,<3.0.a0 + - keyutils >=1.6.3,<2.0a0 + - libedit >=3.1.20250104,<3.2.0a0 + - libedit >=3.1.20250104,<4.0a0 + - libgcc >=14 + - libstdcxx >=14 + - openssl >=3.5.5,<4.0a0 + license: MIT + license_family: MIT + size: 1386730 + timestamp: 1769769569681 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.21.3-h237132a_0.conda sha256: 4442f957c3c77d69d9da3521268cad5d54c9033f1a73f99cde0a3658937b159b md5: c6dc8a0fdec13a0565936655c33069a1 @@ -1391,6 +2185,19 @@ packages: purls: [] size: 1155530 timestamp: 1719463474401 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.22.2-h385eeb1_0.conda + sha256: c0a0bf028fe7f3defcdcaa464e536cf1b202d07451e18ad83fdd169d15bef6ed + md5: e446e1822f4da8e5080a9de93474184d + depends: + - __osx >=11.0 + - libcxx >=19 + - libedit >=3.1.20250104,<3.2.0a0 + - libedit >=3.1.20250104,<4.0a0 + - openssl >=3.5.5,<4.0a0 + license: MIT + license_family: MIT + size: 1160828 + timestamp: 1769770119811 - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.21.3-hdf4eb48_0.conda sha256: 18e8b3430d7d232dad132f574268f56b3eb1a19431d6d5de8c53c29e6c18fa81 md5: 31aec030344e962fbd7dbbbbd68e60a9 @@ -1404,6 +2211,49 @@ packages: purls: [] size: 712034 timestamp: 1719463874284 +- conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.22.2-h0ea6238_0.conda + sha256: eb60f1ad8b597bcf95dee11bc11fe71a8325bc1204cf51d2bb1f2120ffd77761 + md5: 4432f52dc0c8eb6a7a6abc00a037d93c + depends: + - openssl >=3.5.5,<4.0a0 + - ucrt >=10.0.20348.0 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + license: MIT + license_family: MIT + size: 751055 + timestamp: 1769769688841 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/ld64-956.6-llvm20_1_hb625feb_4.conda + sha256: 33f0b80086362ca297c97baab00843555e0e8046ccb3b9a74b11664189d747eb + md5: 8dc8f551182c66222a13919dff83f803 + depends: + - ld64_osx-arm64 956.6 llvm20_1_h4e43e91_4 + - libllvm20 >=20.1.8,<20.2.0a0 + constrains: + - cctools_osx-arm64 1030.6.3.* + - cctools 1030.6.3.* + license: APSL-2.0 + license_family: Other + size: 21584 + timestamp: 1768852506335 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/ld64_osx-arm64-956.6-llvm20_1_h4e43e91_4.conda + sha256: 471b94fee6c4d6cc349c1d1f9a85c3f7d4f395d1bc1fda246cb8a17055d36e0d + md5: e6dbfee18adf4c8430637dde015f55ac + depends: + - __osx >=11.0 + - libcxx + - libllvm20 >=20.1.8,<20.2.0a0 + - sigtool-codesign + - tapi >=1600.0.11.8,<1601.0a0 + constrains: + - cctools_impl_osx-arm64 1030.6.3.* + - ld64 956.6.* + - cctools 1030.6.3.* + - clang 20.1.* + license: APSL-2.0 + license_family: Other + size: 1036692 + timestamp: 1768852444491 - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45-default_hbd61a6d_104.conda sha256: 9e191baf2426a19507f1d0a17be0fdb7aa155cdf0f61d5a09c808e0a69464312 md5: a6abd2796fc332536735f68ba23f7901 @@ -1430,6 +2280,30 @@ packages: purls: [] size: 730831 timestamp: 1766513089214 +- conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45.1-default_hbd61a6d_102.conda + sha256: 3d584956604909ff5df353767f3a2a2f60e07d070b328d109f30ac40cd62df6c + md5: 18335a698559cdbcd86150a48bf54ba6 + depends: + - __glibc >=2.17,<3.0.a0 + - zstd >=1.5.7,<1.6.0a0 + constrains: + - binutils_impl_linux-64 2.45.1 + license: GPL-3.0-only + license_family: GPL + size: 728002 + timestamp: 1774197446916 +- conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-aarch64-2.45.1-default_h27e1c4c_102.conda + sha256: 68ca2efa29a437a2a7228e3675d006b79fe8275b12ffcd2b9800e602a321f728 + md5: c70958a69e2b420627d3ab25b776255d + depends: + - __glibc >=2.17,<3.0.a0 + - zstd >=1.5.7,<1.6.0a0 + constrains: + - binutils_impl_linux-aarch64 2.45.1 + license: GPL-3.0-only + license_family: GPL + size: 787622 + timestamp: 1774197463263 - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlicommon-1.2.0-hb03c661_1.conda sha256: 318f36bd49ca8ad85e6478bd8506c88d82454cc008c1ac1c6bf00a3c42fa610e md5: 72c8fd1af66bd67bf580645b426513ed @@ -1491,6 +2365,18 @@ packages: license_family: MIT size: 290754 timestamp: 1764018009077 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp20.1-20.1.8-default_h99862b1_14.conda + sha256: 14421cd84020c0b0244e92bad7a44ce2d39be6a373381937131bff8cac8e9c5f + md5: ced50aa2f3a606e82d1db4ae5db9e77a + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=14 + - libllvm20 >=20.1.8,<20.2.0a0 + - libstdcxx >=14 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + size: 21292259 + timestamp: 1773110979919 - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp20.1-20.1.8-default_h99862b1_5.conda sha256: b9f0e167cdf5cbe076231788fcb3affe25914534d84ab249258161b693c4cfd2 md5: 33acc83688f092f96ea2ead08e3b4dcd @@ -1516,6 +2402,17 @@ packages: purls: [] size: 13959982 timestamp: 1764397711426 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang-cpp20.1-20.1.8-default_hf3020a7_14.conda + sha256: c17b17926aa902603d95ee84d75e4e64f0e8dcdb6517db8470641a128024d28a + md5: 0db94c23243a8c1c7fa382ff17a8fdbe + depends: + - __osx >=11.0 + - libcxx >=20.1.8 + - libllvm20 >=20.1.8,<20.2.0a0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + size: 13960846 + timestamp: 1773109960146 - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp21.1-21.1.7-default_h99862b1_2.conda sha256: b41513470499628c0f9b7e1b057c8d7641a75be482d4a296a4eb41234aaac971 md5: fd47a1021b2a3a91b0c05f4d7b529b68 @@ -1539,57 +2436,6 @@ packages: license_family: Apache size: 13672685 timestamp: 1766166376555 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libclang13-22.1.0-default_h746c552_0.conda - sha256: 4a9dd814492a129f2ff40cd4ab0b942232c9e3c6dbc0d0aaf861f1f65e99cc7d - md5: 140459a7413d8f6884eb68205ce39a0d - depends: - - __glibc >=2.17,<3.0.a0 - - libgcc >=14 - - libllvm22 >=22.1.0,<22.2.0a0 - - libstdcxx >=14 - license: Apache-2.0 WITH LLVM-exception - license_family: Apache - purls: [] - size: 12817500 - timestamp: 1772101411287 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang13-21.1.7-default_h13b06bd_4.conda - sha256: ed55559f8af599838de775c099fbf644c19d1720b9f57064a2abb0ab2ff99765 - md5: e886d09eb4ae02f446edd4c32c351ca6 - depends: - - __osx >=11.0 - - libcxx >=21.1.7 - - libllvm21 >=21.1.7,<21.2.0a0 - license: Apache-2.0 WITH LLVM-exception - license_family: Apache - purls: [] - size: 8517139 - timestamp: 1767751023683 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang13-21.1.8-default_h13b06bd_3.conda - sha256: dc803069f4001aae4bdd6069af20140785a9c1a0c9abe6a3704e0ef87ad0f4c2 - md5: d111e982033ec02a55845e994a6db09a - depends: - - __osx >=11.0 - - libcxx >=21.1.8 - - libllvm21 >=21.1.8,<21.2.0a0 - license: Apache-2.0 WITH LLVM-exception - license_family: Apache - purls: [] - size: 8516482 - timestamp: 1771032974531 -- conda: https://conda.anaconda.org/conda-forge/win-64/libclang13-22.1.0-default_ha2db4b5_0.conda - sha256: c8e34362c6bf7305ef50f0de4e16292cd97e31650ab6465282eeeac62f0a05c4 - md5: 7ad437870ea7d487e1b0e663503b6b1d - depends: - - libzlib >=1.3.1,<2.0a0 - - ucrt >=10.0.20348.0 - - vc >=14.3,<15 - - vc14_runtime >=14.44.35208 - - zstd >=1.5.7,<1.6.0a0 - license: Apache-2.0 WITH LLVM-exception - license_family: Apache - purls: [] - size: 30584641 - timestamp: 1772353741135 - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.17.0-h4e3cde8_1.conda sha256: 2d7be2fe0f58a0945692abee7bb909f8b19284b518d958747e5ff51d0655c303 md5: 117499f93e892ea1e57fdca16c2e8351 @@ -1607,6 +2453,22 @@ packages: purls: [] size: 459417 timestamp: 1765379027010 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.19.0-hcf29cc6_0.conda + sha256: a0390fd0536ebcd2244e243f5f00ab8e76ab62ed9aa214cd54470fe7496620f4 + md5: d50608c443a30c341c24277d28290f76 + depends: + - __glibc >=2.17,<3.0.a0 + - krb5 >=1.22.2,<1.23.0a0 + - libgcc >=14 + - libnghttp2 >=1.67.0,<2.0a0 + - libssh2 >=1.11.1,<2.0a0 + - libzlib >=1.3.1,<2.0a0 + - openssl >=3.5.5,<4.0a0 + - zstd >=1.5.7,<1.6.0a0 + license: curl + license_family: MIT + size: 466704 + timestamp: 1773218522665 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.17.0-hdece5d2_1.conda sha256: 1a8a958448610ca3f8facddfe261fdbb010e7029a1571b84052ec9770fc0a36e md5: 1d6e791c6e264ae139d469ce011aab51 @@ -1623,6 +2485,21 @@ packages: purls: [] size: 394471 timestamp: 1765379821294 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.19.0-hd5a2499_0.conda + sha256: c4d581b067fa60f9dc0e1c5f18b756760ff094a03139e6b206eb98d185ae2bb1 + md5: 9fc7771fc8104abed9119113160be15a + depends: + - __osx >=11.0 + - krb5 >=1.22.2,<1.23.0a0 + - libnghttp2 >=1.67.0,<2.0a0 + - libssh2 >=1.11.1,<2.0a0 + - libzlib >=1.3.1,<2.0a0 + - openssl >=3.5.5,<4.0a0 + - zstd >=1.5.7,<1.6.0a0 + license: curl + license_family: MIT + size: 399616 + timestamp: 1773219210246 - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.17.0-h43ecb02_1.conda sha256: 5ebab5c980c09d31b35a25095b295124d89fd8bdffdb3487604218ad56512885 md5: c02248f96a0073904bb085a437143895 @@ -1638,6 +2515,20 @@ packages: purls: [] size: 379189 timestamp: 1765379273605 +- conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.19.0-h8206538_0.conda + sha256: 6b2143ba5454b399dab4471e9e1d07352a2f33b569975e6b8aedc2d9bf51cbb0 + md5: ed181e29a7ebf0f60b84b98d6140a340 + depends: + - krb5 >=1.22.2,<1.23.0a0 + - libssh2 >=1.11.1,<2.0a0 + - libzlib >=1.3.1,<2.0a0 + - ucrt >=10.0.20348.0 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + license: curl + license_family: MIT + size: 392543 + timestamp: 1773218585056 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-21.1.7-hf598326_0.conda sha256: 4bdbef0241b52e7a8552e8af7425f0b56d5621dd69df46c816546fefa17d77ab md5: 0de94f39727c31c0447e408c5a210a56 @@ -1658,6 +2549,15 @@ packages: purls: [] size: 569118 timestamp: 1765919724254 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-22.1.2-h55c6f16_0.conda + sha256: d1402087c8792461bfc081629e8aa97e6e577a31ae0b84e6b9cc144a18f48067 + md5: 4280e0a7fd613b271e022e60dea0138c + depends: + - __osx >=11.0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + size: 568094 + timestamp: 1774439202359 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-devel-20.1.8-h6dc3340_3.conda sha256: 860588fb7b8c9227cfae68cf410c885fb0e05a635f3daddef9457c429a9704ba md5: 78233f1b892fc02bca12b2daf3bd8d48 @@ -1737,6 +2637,18 @@ packages: purls: [] size: 76643 timestamp: 1763549731408 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.7.5-hecca717_0.conda + sha256: e8c2b57f6aacabdf2f1b0924bd4831ce5071ba080baa4a9e8c0d720588b6794c + md5: 49f570f3bc4c874a06ea69b7225753af + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=14 + constrains: + - expat 2.7.5.* + license: MIT + license_family: MIT + size: 76624 + timestamp: 1774719175983 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.7.3-haf25636_0.conda sha256: fce22610ecc95e6d149e42a42fbc3cc9d9179bd4eb6232639a60f06e080eec98 md5: b79875dbb5b1db9a4a22a4520f918e1a @@ -1749,6 +2661,17 @@ packages: purls: [] size: 67800 timestamp: 1763549994166 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.7.5-hf6b4638_0.conda + sha256: 06780dec91dd25770c8cf01e158e1062fbf7c576b1406427475ce69a8af75b7e + md5: a32123f93e168eaa4080d87b0fb5da8a + depends: + - __osx >=11.0 + constrains: + - expat 2.7.5.* + license: MIT + license_family: MIT + size: 68192 + timestamp: 1774719211725 - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.7.3-hac47afa_0.conda sha256: 844ab708594bdfbd7b35e1a67c379861bcd180d6efe57b654f482ae2f7f5c21e md5: 8c9e4f1a0e688eef2e95711178061a0f @@ -1763,6 +2686,29 @@ packages: purls: [] size: 70137 timestamp: 1763550049107 +- conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.7.5-hac47afa_0.conda + sha256: 6850c3a4d5dc215b86f58518cfb8752998533d6569b08da8df1da72e7c68e571 + md5: bfb43f52f13b7c56e7677aa7a8efdf0c + depends: + - ucrt >=10.0.20348.0 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + constrains: + - expat 2.7.5.* + license: MIT + license_family: MIT + size: 70609 + timestamp: 1774719377850 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.5.2-h3435931_0.conda + sha256: 31f19b6a88ce40ebc0d5a992c131f57d919f73c0b92cd1617a5bec83f6e961e6 + md5: a360c33a5abe61c07959e449fa1453eb + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=14 + license: MIT + license_family: MIT + size: 58592 + timestamp: 1769456073053 - conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.5.2-h9ec8514_0.conda sha256: 25cbdfa65580cfab1b8d15ee90b4c9f1e0d72128f1661449c9a999d341377d54 md5: 35f29eec58405aaf55e01cb470d8c26a @@ -1774,6 +2720,15 @@ packages: purls: [] size: 57821 timestamp: 1760295480630 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libffi-3.5.2-hcf2aa1b_0.conda + sha256: 6686a26466a527585e6a75cc2a242bf4a3d97d6d6c86424a441677917f28bec7 + md5: 43c04d9cb46ef176bb2a4c77e324d599 + depends: + - __osx >=11.0 + license: MIT + license_family: MIT + size: 40979 + timestamp: 1769456747661 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libffi-3.5.2-he5f378a_0.conda sha256: 9b8acdf42df61b7bfe8bdc545c016c29e61985e79748c64ad66df47dbc2e295f md5: 411ff7cd5d1472bba0f55c0faf04453b @@ -1784,6 +2739,17 @@ packages: purls: [] size: 40251 timestamp: 1760295839166 +- conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.5.2-h3d046cb_0.conda + sha256: 59d01f2dfa8b77491b5888a5ab88ff4e1574c9359f7e229da254cdfe27ddc190 + md5: 720b39f5ec0610457b725eb3f396219a + depends: + - ucrt >=10.0.20348.0 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + license: MIT + license_family: MIT + size: 45831 + timestamp: 1769456418774 - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.5.2-h52bdfb6_0.conda sha256: ddff25aaa4f0aa535413f5d831b04073789522890a4d8626366e43ecde1534a3 md5: ba4ad812d2afc22b9a34ce8327a0930f @@ -1810,6 +2776,19 @@ packages: purls: [] size: 1042798 timestamp: 1765256792743 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-he0feb66_18.conda + sha256: faf7d2017b4d718951e3a59d081eb09759152f93038479b768e3d612688f83f5 + md5: 0aa00f03f9e39fb9876085dee11a85d4 + depends: + - __glibc >=2.17,<3.0.a0 + - _openmp_mutex >=4.5 + constrains: + - libgcc-ng ==15.2.0=*_18 + - libgomp 15.2.0 he0feb66_18 + license: GPL-3.0-only WITH GCC-exception-3.1 + license_family: GPL + size: 1041788 + timestamp: 1771378212382 - conda: https://conda.anaconda.org/conda-forge/noarch/libgcc-devel_linux-64-14.2.0-h9c4974d_102.conda sha256: d663727f935853d1e94b8eb69fb1bac267339c99236fd26e14d4a2297ac96c91 md5: 80ecc6e9ecffe737e30a7e5a9b10bcb4 @@ -1820,6 +2799,15 @@ packages: purls: [] size: 2761178 timestamp: 1740240568863 +- conda: https://conda.anaconda.org/conda-forge/noarch/libgcc-devel_linux-aarch64-14.2.0-h3d07465_2.conda + sha256: 4e77723f7bbf31e71552ab7a05548bdd4d47b8bee095f18c7f355e49194d0941 + md5: 19c53a8551f691208a2ed19190cbd9f7 + depends: + - __unix + license: GPL-3.0-only WITH GCC-exception-3.1 + license_family: GPL + size: 2164685 + timestamp: 1740241522056 - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_16.conda sha256: 5f07f9317f596a201cc6e095e5fc92621afca64829785e483738d935f8cab361 md5: 5a68259fac2da8f2ee6f7bfe49c9eb8b @@ -1830,6 +2818,15 @@ packages: purls: [] size: 27256 timestamp: 1765256804124 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_18.conda + sha256: e318a711400f536c81123e753d4c797a821021fb38970cebfb3f454126016893 + md5: d5e96b1ed75ca01906b3d2469b4ce493 + depends: + - libgcc 15.2.0 he0feb66_18 + license: GPL-3.0-only WITH GCC-exception-3.1 + license_family: GPL + size: 27526 + timestamp: 1771378224552 - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-he0feb66_16.conda sha256: 5b3e5e4e9270ecfcd48f47e3a68f037f5ab0f529ccb223e8e5d5ac75a58fc687 md5: 26c46f90d0e727e95c6c9498a33a09f3 @@ -1840,6 +2837,15 @@ packages: purls: [] size: 603284 timestamp: 1765256703881 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-he0feb66_18.conda + sha256: 21337ab58e5e0649d869ab168d4e609b033509de22521de1bfed0c031bfc5110 + md5: 239c5e9546c38a1e884d69effcf4c882 + depends: + - __glibc >=2.17,<3.0.a0 + license: GPL-3.0-only WITH GCC-exception-3.1 + license_family: GPL + size: 603262 + timestamp: 1771378117851 - conda: https://conda.anaconda.org/conda-forge/linux-64/libhiredis-1.3.0-h5888daf_1.conda sha256: 5638e321719590b00826d218431d5028d1a22a76f281532ce621d9a40d5e0f42 md5: aa342fcf3bc583660dbfdb2eae6be48e @@ -1965,25 +2971,8 @@ packages: - zstd >=1.5.7,<1.6.0a0 license: Apache-2.0 WITH LLVM-exception license_family: Apache - purls: [] size: 29398498 timestamp: 1765924904821 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm22-22.1.1-hf7376ad_0.conda - sha256: 1145f9e85f0fbbdba88f1da5c8c48672bee7702e2f40c563b2dd48350ab4d413 - md5: 97cc6dad22677304846a798c8a65064d - depends: - - __glibc >=2.17,<3.0.a0 - - libgcc >=14 - - libstdcxx >=14 - - libxml2 - - libxml2-16 >=2.14.6 - - libzlib >=1.3.1,<2.0a0 - - zstd >=1.5.7,<1.6.0a0 - license: Apache-2.0 WITH LLVM-exception - license_family: Apache - purls: [] - size: 44256563 - timestamp: 1773371774629 - conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.1-hb9d3cd8_2.conda sha256: f2591c0069447bbe28d4d696b7fcb0c5bd0b4ac582769b89addbcf26fb3430d8 md5: 1a580f7796c7bf6393fddb8bbbde58dc @@ -1996,6 +2985,17 @@ packages: purls: [] size: 112894 timestamp: 1749230047870 +- conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.2-hb03c661_0.conda + sha256: 755c55ebab181d678c12e49cced893598f2bab22d582fbbf4d8b83c18be207eb + md5: c7c83eecbb72d88b940c249af56c8b17 + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=14 + constrains: + - xz 5.8.2.* + license: 0BSD + size: 113207 + timestamp: 1768752626120 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-5.8.1-h39f12f2_2.conda sha256: 0cb92a9e026e7bd4842f410a5c5c665c89b2eb97794ffddba519a626b8ce7285 md5: d6df911d4564d77c4374b02552cb17d1 @@ -2007,6 +3007,16 @@ packages: purls: [] size: 92286 timestamp: 1749230283517 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-5.8.2-h8088a28_0.conda + sha256: 7bfc7ffb2d6a9629357a70d4eadeadb6f88fa26ebc28f606b1c1e5e5ed99dc7e + md5: 009f0d956d7bfb00de86901d16e486c7 + depends: + - __osx >=11.0 + constrains: + - xz 5.8.2.* + license: 0BSD + size: 92242 + timestamp: 1768752982486 - conda: https://conda.anaconda.org/conda-forge/win-64/liblzma-5.8.1-h2466b09_2.conda sha256: 55764956eb9179b98de7cc0e55696f2eff8f7b83fc3ebff5e696ca358bca28cc md5: c15148b2e18da456f5108ccb5e411446 @@ -2015,11 +3025,23 @@ packages: - vc >=14.2,<15 - vc14_runtime >=14.29.30139 constrains: - - xz 5.8.1.* + - xz 5.8.1.* + license: 0BSD + purls: [] + size: 104935 + timestamp: 1749230611612 +- conda: https://conda.anaconda.org/conda-forge/win-64/liblzma-5.8.2-hfd05255_0.conda + sha256: f25bf293f550c8ed2e0c7145eb404324611cfccff37660869d97abf526eb957c + md5: ba0bfd4c3cf73f299ffe46ff0eaeb8e3 + depends: + - ucrt >=10.0.20348.0 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + constrains: + - xz 5.8.2.* license: 0BSD - purls: [] - size: 104935 - timestamp: 1749230611612 + size: 106169 + timestamp: 1768752763559 - conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-devel-5.8.1-hb9d3cd8_2.conda sha256: 329e66330a8f9cbb6a8d5995005478188eb4ba8a6b6391affa849744f4968492 md5: f61edadbb301530bd65a32646bd81552 @@ -2053,6 +3075,16 @@ packages: purls: [] size: 129344 timestamp: 1749230637001 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libmpdec-4.0.0-hb03c661_1.conda + sha256: fe171ed5cf5959993d43ff72de7596e8ac2853e9021dec0344e583734f1e0843 + md5: 2c21e66f50753a083cbe6b80f38268fa + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=14 + license: BSD-2-Clause + license_family: BSD + size: 92400 + timestamp: 1769482286018 - conda: https://conda.anaconda.org/conda-forge/linux-64/libmpdec-4.0.0-hb9d3cd8_0.conda sha256: 3aa92d4074d4063f2a162cd8ecb45dccac93e543e565c01a787e16a43501f7ee md5: c7e925f37e3b40d893459e625f6a53f1 @@ -2074,6 +3106,15 @@ packages: purls: [] size: 71829 timestamp: 1748393749336 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libmpdec-4.0.0-h84a0fba_1.conda + sha256: 1089c7f15d5b62c622625ec6700732ece83be8b705da8c6607f4dabb0c4bd6d2 + md5: 57c4be259f5e0b99a5983799a228ae55 + depends: + - __osx >=11.0 + license: BSD-2-Clause + license_family: BSD + size: 73690 + timestamp: 1769482560514 - conda: https://conda.anaconda.org/conda-forge/win-64/libmpdec-4.0.0-h2466b09_0.conda sha256: fc529fc82c7caf51202cc5cec5bb1c2e8d90edbac6d0a4602c966366efe3c7bf md5: 74860100b2029e2523cf480804c76b9b @@ -2086,6 +3127,17 @@ packages: purls: [] size: 88657 timestamp: 1723861474602 +- conda: https://conda.anaconda.org/conda-forge/win-64/libmpdec-4.0.0-hfd05255_1.conda + sha256: 40dcd0b9522a6e0af72a9db0ced619176e7cfdb114855c7a64f278e73f8a7514 + md5: e4a9fc2bba3b022dad998c78856afe47 + depends: + - ucrt >=10.0.20348.0 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + license: BSD-2-Clause + license_family: BSD + size: 89411 + timestamp: 1769482314283 - conda: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.67.0-had1ee68_0.conda sha256: a4a7dab8db4dc81c736e9a9b42bdfd97b087816e029e221380511960ac46c690 md5: b499ce4b026493a13774bcf0f4c33849 @@ -2103,6 +3155,22 @@ packages: purls: [] size: 666600 timestamp: 1756834976695 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.68.1-h877daf1_0.conda + sha256: 663444d77a42f2265f54fb8b48c5450bfff4388d9c0f8253dd7855f0d993153f + md5: 2a45e7f8af083626f009645a6481f12d + depends: + - __glibc >=2.17,<3.0.a0 + - c-ares >=1.34.6,<2.0a0 + - libev >=4.33,<4.34.0a0 + - libev >=4.33,<5.0a0 + - libgcc >=14 + - libstdcxx >=14 + - libzlib >=1.3.1,<2.0a0 + - openssl >=3.5.5,<4.0a0 + license: MIT + license_family: MIT + size: 663344 + timestamp: 1773854035739 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnghttp2-1.67.0-hc438710_0.conda sha256: a07cb53b5ffa2d5a18afc6fd5a526a5a53dd9523fbc022148bd2f9395697c46d md5: a4b4dd73c67df470d091312ab87bf6ae @@ -2119,6 +3187,21 @@ packages: purls: [] size: 575454 timestamp: 1756835746393 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnghttp2-1.68.1-h8f3e76b_0.conda + sha256: 2bc7bc3978066f2c274ebcbf711850cc9ab92e023e433b9631958a098d11e10a + md5: 6ea18834adbc3b33df9bd9fb45eaf95b + depends: + - __osx >=11.0 + - c-ares >=1.34.6,<2.0a0 + - libcxx >=19 + - libev >=4.33,<4.34.0a0 + - libev >=4.33,<5.0a0 + - libzlib >=1.3.1,<2.0a0 + - openssl >=3.5.5,<4.0a0 + license: MIT + license_family: MIT + size: 576526 + timestamp: 1773854624224 - conda: https://conda.anaconda.org/conda-forge/linux-64/libsanitizer-14.2.0-hed042b8_2.conda sha256: 489e069ed0a3c376da5d83166a330c1b8a041a3d25a482f692b4fb86846f2a2d md5: 80f0abb70cd4f10ee15aa5693d89c65a @@ -2131,6 +3214,16 @@ packages: purls: [] size: 4507944 timestamp: 1740240704883 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsigtool-0.1.3-h98dc951_0.conda + sha256: 421f7bd7caaa945d9cd5d374cc3f01e75637ca7372a32d5e7695c825a48a30d1 + md5: c08557d00807785decafb932b5be7ef5 + depends: + - __osx >=11.0 + - openssl >=3.5.4,<4.0a0 + license: MIT + license_family: MIT + size: 36416 + timestamp: 1767045062496 - conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.51.1-h0c1763c_0.conda sha256: 6f0e8a812e8e33a4d8b7a0e595efe28373080d27b78ee4828aa4f6649a088454 md5: 2e1b84d273b01835256e53fd938de355 @@ -2164,6 +3257,17 @@ packages: purls: [] size: 943451 timestamp: 1766319676469 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.52.0-hf4e2dac_0.conda + sha256: d716847b7deca293d2e49ed1c8ab9e4b9e04b9d780aea49a97c26925b28a7993 + md5: fd893f6a3002a635b5e50ceb9dd2c0f4 + depends: + - __glibc >=2.17,<3.0.a0 + - icu >=78.2,<79.0a0 + - libgcc >=14 + - libzlib >=1.3.1,<2.0a0 + license: blessing + size: 951405 + timestamp: 1772818874251 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.51.1-h1b79a29_1.conda sha256: f2c3cbf2ca7d697098964a748fbf19d6e4adcefa23844ec49f0166f1d36af83c md5: 8c3951797658e10b610929c3e57e9ad9 @@ -2184,6 +3288,16 @@ packages: purls: [] size: 906292 timestamp: 1764359907797 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.52.0-h1ae2325_0.conda + sha256: beb0fd5594d6d7c7cd42c992b6bb4d66cbb39d6c94a8234f15956da99a04306c + md5: f6233a3fddc35a2ec9f617f79d6f3d71 + depends: + - __osx >=11.0 + - icu >=78.2,<79.0a0 + - libzlib >=1.3.1,<2.0a0 + license: blessing + size: 918420 + timestamp: 1772819478684 - conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.51.1-hf5d6505_0.conda sha256: a976c8b455d9023b83878609bd68c3b035b9839d592bd6c7be7552c523773b62 md5: f92bef2f8e523bb0eabe60099683617a @@ -2206,6 +3320,16 @@ packages: purls: [] size: 1292859 timestamp: 1766319616777 +- conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.52.0-hf5d6505_0.conda + sha256: 5fccf1e4e4062f8b9a554abf4f9735a98e70f82e2865d0bfdb47b9de94887583 + md5: 8830689d537fda55f990620680934bb1 + depends: + - ucrt >=10.0.20348.0 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + license: blessing + size: 1297302 + timestamp: 1772818899033 - conda: https://conda.anaconda.org/conda-forge/linux-64/libssh2-1.11.1-hcf80075_0.conda sha256: fa39bfd69228a13e553bd24601332b7cfeb30ca11a3ca50bb028108fe90a7661 md5: eecce068c7e4eddeb169591baac20ac4 @@ -2257,6 +3381,18 @@ packages: purls: [] size: 5856456 timestamp: 1765256838573 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h934c35e_18.conda + sha256: 78668020064fdaa27e9ab65cd2997e2c837b564ab26ce3bf0e58a2ce1a525c6e + md5: 1b08cd684f34175e4514474793d44bcb + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc 15.2.0 he0feb66_18 + constrains: + - libstdcxx-ng ==15.2.0=*_18 + license: GPL-3.0-only WITH GCC-exception-3.1 + license_family: GPL + size: 5852330 + timestamp: 1771378262446 - conda: https://conda.anaconda.org/conda-forge/noarch/libstdcxx-devel_linux-64-14.2.0-h9c4974d_102.conda sha256: 7bd1943aea09457cca1aa611c71bc3b12990832d3a0ffb4b1f25a83deb035669 md5: 54bac3d48bc1f91216b5f5fb259d8764 @@ -2267,6 +3403,15 @@ packages: purls: [] size: 13572040 timestamp: 1740240603306 +- conda: https://conda.anaconda.org/conda-forge/noarch/libstdcxx-devel_linux-aarch64-14.2.0-h3d07465_2.conda + sha256: bb99fafbee7a17c7704efa85269f99710c46d383a9c8b47a4197de28fff00af4 + md5: 0ed92f62e27ba6722c27c816ed7a5ee4 + depends: + - __unix + license: GPL-3.0-only WITH GCC-exception-3.1 + license_family: GPL + size: 12409145 + timestamp: 1740241547169 - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-15.2.0-hdf11a46_16.conda sha256: 81f2f246c7533b41c5e0c274172d607829019621c4a0823b5c0b4a8c7028ee84 md5: 1b3152694d236cf233b76b8c56bf0eae @@ -2299,6 +3444,16 @@ packages: purls: [] size: 40311 timestamp: 1766271528534 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.42-h5347b49_0.conda + sha256: bc1b08c92626c91500fd9f26f2c797f3eb153b627d53e9c13cd167f1e12b2829 + md5: 38ffe67b78c9d4de527be8315e5ada2c + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=14 + license: BSD-3-Clause + license_family: BSD + size: 40297 + timestamp: 1775052476770 - conda: https://conda.anaconda.org/conda-forge/linux-64/libuv-1.51.0-hb03c661_1.conda sha256: c180f4124a889ac343fc59d15558e93667d894a966ec6fdb61da1604481be26b md5: 0f03292cc56bf91a077a134ea8747118 @@ -2380,6 +3535,21 @@ packages: purls: [] size: 45402 timestamp: 1766327161688 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.15.2-he237659_0.conda + sha256: 275c324f87bda1a3b67d2f4fcc3555eeff9e228a37655aa001284a7ceb6b0392 + md5: e49238a1609f9a4a844b09d9926f2c3d + depends: + - __glibc >=2.17,<3.0.a0 + - icu >=78.2,<79.0a0 + - libgcc >=14 + - libiconv >=1.18,<2.0a0 + - liblzma >=5.8.2,<6.0a0 + - libxml2-16 2.15.2 hca6bf5a_0 + - libzlib >=1.3.1,<2.0a0 + license: MIT + license_family: MIT + size: 45968 + timestamp: 1772704614539 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-2.15.1-h8d039ee_1.conda sha256: 59f96fa27cce6a9a27414c5bb301eedda1a1b85cd0d8f5d68f77e46b86e7c95f md5: fd804ee851e20faca4fecc7df0901d07 @@ -2425,6 +3595,20 @@ packages: purls: [] size: 40611 timestamp: 1761016283558 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-2.15.2-h8d039ee_0.conda + sha256: 99cb32dd06a2e58c12981b71a84b052293f27b5ab042e3f21d895f5d7ee13eff + md5: e476ba84e57f2bd2004a27381812ad4e + depends: + - __osx >=11.0 + - icu >=78.2,<79.0a0 + - libiconv >=1.18,<2.0a0 + - liblzma >=5.8.2,<6.0a0 + - libxml2-16 2.15.2 h5ef1a60_0 + - libzlib >=1.3.1,<2.0a0 + license: MIT + license_family: MIT + size: 41206 + timestamp: 1772704982288 - conda: https://conda.anaconda.org/conda-forge/win-64/libxml2-2.15.1-h5d26750_0.conda sha256: f507960adf64ee9c9c7b7833d8b11980765ebd2bf5345f73d5a3b21b259eaed5 md5: 9176ee05643a1bfe7f2e7b4c921d2c3d @@ -2460,6 +3644,23 @@ packages: purls: [] size: 43387 timestamp: 1766327259710 +- conda: https://conda.anaconda.org/conda-forge/win-64/libxml2-2.15.2-h5d26750_0.conda + sha256: f905eb7046987c336122121759e7f09144729f6898f48cd06df2a945b86998d8 + md5: 1007e1bfe181a2aee214779ee7f13d30 + depends: + - libiconv >=1.18,<2.0a0 + - liblzma >=5.8.2,<6.0a0 + - libxml2-16 2.15.2 h692994f_0 + - libzlib >=1.3.1,<2.0a0 + - ucrt >=10.0.20348.0 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + constrains: + - icu <0.0a0 + license: MIT + license_family: MIT + size: 43681 + timestamp: 1772704748950 - conda: https://conda.anaconda.org/conda-forge/linux-64/libxml2-16-2.15.1-ha9997c6_0.conda sha256: 71436e72a286ef8b57d6f4287626ff91991eb03c7bdbe835280521791efd1434 md5: e7733bc6785ec009e47a224a71917e84 @@ -2510,6 +3711,22 @@ packages: purls: [] size: 554734 timestamp: 1761015772672 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libxml2-16-2.15.2-hca6bf5a_0.conda + sha256: 08d2b34b49bec9613784f868209bb7c3bb8840d6cf835ff692e036b09745188c + md5: f3bc152cb4f86babe30f3a4bf0dbef69 + depends: + - __glibc >=2.17,<3.0.a0 + - icu >=78.2,<79.0a0 + - libgcc >=14 + - libiconv >=1.18,<2.0a0 + - liblzma >=5.8.2,<6.0a0 + - libzlib >=1.3.1,<2.0a0 + constrains: + - libxml2 2.15.2 + license: MIT + license_family: MIT + size: 557492 + timestamp: 1772704601644 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-16-2.15.1-h0ff4647_0.conda sha256: ebe2dd9da94280ad43da936efa7127d329b559f510670772debc87602b49b06d md5: 438c97d1e9648dd7342f86049dd44638 @@ -2557,6 +3774,21 @@ packages: purls: [] size: 464186 timestamp: 1761016258891 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-16-2.15.2-h5ef1a60_0.conda + sha256: 6432259204e78c8a8a815afae987fbf60bd722605fe2c4b022e65196b17d4537 + md5: b284e2b02d53ef7981613839fb86beee + depends: + - __osx >=11.0 + - icu >=78.2,<79.0a0 + - libiconv >=1.18,<2.0a0 + - liblzma >=5.8.2,<6.0a0 + - libzlib >=1.3.1,<2.0a0 + constrains: + - libxml2 2.15.2 + license: MIT + license_family: MIT + size: 466220 + timestamp: 1772704950232 - conda: https://conda.anaconda.org/conda-forge/win-64/libxml2-16-2.15.1-h3cfd58e_1.conda sha256: a857e941156b7f462063e34e086d212c6ccbc1521ebdf75b9ed66bd90add57dc md5: 07d73826fde28e7dbaec52a3297d7d26 @@ -2593,6 +3825,23 @@ packages: purls: [] size: 518135 timestamp: 1761016320405 +- conda: https://conda.anaconda.org/conda-forge/win-64/libxml2-16-2.15.2-h692994f_0.conda + sha256: b8c71b3b609c7cfe17f3f2a47c75394d7b30acfb8b34ad7a049ea8757b4d33df + md5: e365238134188e42ed36ee996159d482 + depends: + - libiconv >=1.18,<2.0a0 + - liblzma >=5.8.2,<6.0a0 + - libzlib >=1.3.1,<2.0a0 + - ucrt >=10.0.20348.0 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + constrains: + - libxml2 2.15.2 + - icu <0.0a0 + license: MIT + license_family: MIT + size: 520078 + timestamp: 1772704728534 - conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.3.1-hb9d3cd8_2.conda sha256: d4bfe88d7cb447768e31650f06257995601f89076080e76df55e3112d4e47dc4 md5: edb0dca6bc32e4f4789199455a1dbeb8 @@ -2606,6 +3855,17 @@ packages: purls: [] size: 60963 timestamp: 1727963148474 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.3.2-h25fd6f3_2.conda + sha256: 55044c403570f0dc26e6364de4dc5368e5f3fc7ff103e867c487e2b5ab2bcda9 + md5: d87ff7921124eccd67248aa483c23fec + depends: + - __glibc >=2.17,<3.0.a0 + constrains: + - zlib 1.3.2 *_2 + license: Zlib + license_family: Other + size: 63629 + timestamp: 1774072609062 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzlib-1.3.1-h8359307_2.conda sha256: ce34669eadaba351cd54910743e6a2261b67009624dbc7daeeafdef93616711b md5: 369964e85dc26bfe78f41399b366c435 @@ -2618,6 +3878,17 @@ packages: purls: [] size: 46438 timestamp: 1727963202283 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzlib-1.3.2-h8088a28_2.conda + sha256: 361415a698514b19a852f5d1123c5da746d4642139904156ddfca7c922d23a05 + md5: bc5a5721b6439f2f62a84f2548136082 + depends: + - __osx >=11.0 + constrains: + - zlib 1.3.2 *_2 + license: Zlib + license_family: Other + size: 47759 + timestamp: 1774072956767 - conda: https://conda.anaconda.org/conda-forge/win-64/libzlib-1.3.1-h2466b09_2.conda sha256: ba945c6493449bed0e6e29883c4943817f7c79cbff52b83360f7b341277c6402 md5: 41fbfac52c601159df6c01f875de31b9 @@ -2632,6 +3903,19 @@ packages: purls: [] size: 55476 timestamp: 1727963768015 +- conda: https://conda.anaconda.org/conda-forge/win-64/libzlib-1.3.2-hfd05255_2.conda + sha256: 88609816e0cc7452bac637aaf65783e5edf4fee8a9f8e22bdc3a75882c536061 + md5: dbabbd6234dea34040e631f87676292f + depends: + - ucrt >=10.0.20348.0 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + constrains: + - zlib 1.3.2 *_2 + license: Zlib + license_family: Other + size: 58347 + timestamp: 1774072851498 - conda: https://conda.anaconda.org/conda-forge/linux-64/lld-20.1.8-hef48ded_1.conda sha256: c3294734baa2a30f613447d48333ac3a09b4060e4603ecef727c6a935b59268e md5: 1284f189f4b05bd1ef935807b05f6a26 @@ -2683,6 +3967,30 @@ packages: purls: [] size: 131581380 timestamp: 1757395097614 +- conda: https://conda.anaconda.org/conda-forge/linux-64/llvm-openmp-22.1.2-h4922eb0_0.conda + sha256: 67fa0977eeb7f983b626aaa815b1e9eba3314f5ea5bf99ca0e91f26221dd9bbb + md5: 2a60ab96432bc74eedbcda8a528080a1 + depends: + - __glibc >=2.17,<3.0.a0 + constrains: + - openmp 22.1.2|22.1.2.* + - intel-openmp <0.0a0 + license: Apache-2.0 WITH LLVM-exception + license_family: APACHE + size: 6132003 + timestamp: 1774564946563 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-openmp-22.1.2-hc7d1edf_0.conda + sha256: d8acb8e790312346a286f7168380ca3ce86d5982fb073df6e0fbec1e51fa47a1 + md5: 9c162044093d8d689836dafe3c27fe06 + depends: + - __osx >=11.0 + constrains: + - intel-openmp <0.0a0 + - openmp 22.1.2|22.1.2.* + license: Apache-2.0 WITH LLVM-exception + license_family: APACHE + size: 285695 + timestamp: 1774733561929 - conda: https://conda.anaconda.org/conda-forge/linux-64/llvm-tools-20.1.8-hb700be7_1.conda sha256: 153f96ab1ee7d96214a26968c8dc107b96c65ab4d96a302fc602cd84bafc2e0c md5: 2339a92546214f7ac54557f674c41e99 @@ -2931,6 +4239,17 @@ packages: purls: [] size: 3165399 timestamp: 1762839186699 +- conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.6.1-h35e630c_1.conda + sha256: 44c877f8af015332a5d12f5ff0fb20ca32f896526a7d0cdb30c769df1144fb5c + md5: f61eb8cd60ff9057122a3d338b99c00f + depends: + - __glibc >=2.17,<3.0.a0 + - ca-certificates + - libgcc >=14 + license: Apache-2.0 + license_family: Apache + size: 3164551 + timestamp: 1769555830639 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.6.0-h5503f6c_0.conda sha256: ebe93dafcc09e099782fe3907485d4e1671296bc14f8c383cb6f3dfebb773988 md5: b34dc4172653c13dcf453862f251af2b @@ -2942,6 +4261,16 @@ packages: purls: [] size: 3108371 timestamp: 1762839712322 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.6.1-hd24854e_1.conda + sha256: 361f5c5e60052abc12bdd1b50d7a1a43e6a6653aab99a2263bf2288d709dcf67 + md5: f4f6ad63f98f64191c3e77c5f5f29d76 + depends: + - __osx >=11.0 + - ca-certificates + license: Apache-2.0 + license_family: Apache + size: 3104268 + timestamp: 1769556384749 - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.6.0-h725018a_0.conda sha256: 6d72d6f766293d4f2aa60c28c244c8efed6946c430814175f959ffe8cab899b3 md5: 84f8fb4afd1157f59098f618cd2437e4 @@ -2955,6 +4284,18 @@ packages: purls: [] size: 9440812 timestamp: 1762841722179 +- conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.6.1-hf411b9b_1.conda + sha256: 53a5ad2e5553b8157a91bb8aa375f78c5958f77cb80e9d2ce59471ea8e5c0bd6 + md5: eb585509b815415bc964b2c7e11c7eb3 + depends: + - ca-certificates + - ucrt >=10.0.20348.0 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + license: Apache-2.0 + license_family: Apache + size: 9343023 + timestamp: 1769557547888 - pypi: https://files.pythonhosted.org/packages/b7/b9/c538f279a4e237a006a2c98387d081e9eb060d203d8ed34467cc0f0b9b53/packaging-26.0-py3-none-any.whl name: packaging version: '26.0' @@ -3058,10 +4399,10 @@ packages: requires_dist: - colorama>=0.4.6 ; extra == 'windows-terminal' requires_python: '>=3.9' -- pypi: https://files.pythonhosted.org/packages/d4/24/a372aaf5c9b7208e7112038812994107bc65a84cd00e0354a88c2c77a617/pytest-9.0.3-py3-none-any.whl +- pypi: https://files.pythonhosted.org/packages/3b/ab/b3226f0bd7cdcf710fbede2b3548584366da3b19b5021e74f5bde2a8fa3f/pytest-9.0.2-py3-none-any.whl name: pytest - version: 9.0.3 - sha256: 2c5efc453d45394fdd706ade797c0a81091eccd1d6e4bccfcd476e2b8e0ab5d9 + version: 9.0.2 + sha256: 711ffd45bf766d5264d487b917733b453d917afd2b0ad65223959f59089f875b requires_dist: - colorama>=0.4 ; sys_platform == 'win32' - exceptiongroup>=1 ; python_full_version < '3.11' @@ -3119,6 +4460,33 @@ packages: size: 36790521 timestamp: 1765021515427 python_site_packages_path: lib/python3.14/site-packages +- conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.14.3-h32b2ec7_101_cp314.conda + build_number: 101 + sha256: cb0628c5f1732f889f53a877484da98f5a0e0f47326622671396fb4f2b0cd6bd + md5: c014ad06e60441661737121d3eae8a60 + depends: + - __glibc >=2.17,<3.0.a0 + - bzip2 >=1.0.8,<2.0a0 + - ld_impl_linux-64 >=2.36.1 + - libexpat >=2.7.3,<3.0a0 + - libffi >=3.5.2,<3.6.0a0 + - libgcc >=14 + - liblzma >=5.8.2,<6.0a0 + - libmpdec >=4.0.0,<5.0a0 + - libsqlite >=3.51.2,<4.0a0 + - libuuid >=2.41.3,<3.0a0 + - libzlib >=1.3.1,<2.0a0 + - ncurses >=6.5,<7.0a0 + - openssl >=3.5.5,<4.0a0 + - python_abi 3.14.* *_cp314 + - readline >=8.3,<9.0a0 + - tk >=8.6.13,<8.7.0a0 + - tzdata + - zstd >=1.5.7,<1.6.0a0 + license: Python-2.0 + size: 36702440 + timestamp: 1770675584356 + python_site_packages_path: lib/python3.14/site-packages - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.14.2-h40d2674_100_cp314.conda build_number: 100 sha256: 1a93782e90b53e04c2b1a50a0f8bf0887936649d19dba6a05b05c4b44dae96b7 @@ -3144,6 +4512,30 @@ packages: size: 13575758 timestamp: 1765021280625 python_site_packages_path: lib/python3.14/site-packages +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.14.3-h4c637c5_101_cp314.conda + build_number: 101 + sha256: fccce2af62d11328d232df9f6bbf63464fd45f81f718c661757f9c628c4378ce + md5: 753c8d0447677acb7ddbcc6e03e82661 + depends: + - __osx >=11.0 + - bzip2 >=1.0.8,<2.0a0 + - libexpat >=2.7.3,<3.0a0 + - libffi >=3.5.2,<3.6.0a0 + - liblzma >=5.8.2,<6.0a0 + - libmpdec >=4.0.0,<5.0a0 + - libsqlite >=3.51.2,<4.0a0 + - libzlib >=1.3.1,<2.0a0 + - ncurses >=6.5,<7.0a0 + - openssl >=3.5.5,<4.0a0 + - python_abi 3.14.* *_cp314 + - readline >=8.3,<9.0a0 + - tk >=8.6.13,<8.7.0a0 + - tzdata + - zstd >=1.5.7,<1.6.0a0 + license: Python-2.0 + size: 13522698 + timestamp: 1770675365241 + python_site_packages_path: lib/python3.14/site-packages - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.14.2-h4b44e0e_100_cp314.conda build_number: 100 sha256: 6857d7c97cc71fe9ba298dcb1d3b66cc7df425132ab801babd655faa3df48f32 @@ -3169,6 +4561,30 @@ packages: size: 16833248 timestamp: 1765020224759 python_site_packages_path: Lib/site-packages +- conda: https://conda.anaconda.org/conda-forge/win-64/python-3.14.3-h4b44e0e_101_cp314.conda + build_number: 101 + sha256: 3f99d83bfd95b9bdae64a42a1e4bf5131dc20b724be5ac8a9a7e1ac2c0f006d7 + md5: 7ec2be7eaf59f83f3e5617665f3fbb2e + depends: + - bzip2 >=1.0.8,<2.0a0 + - libexpat >=2.7.3,<3.0a0 + - libffi >=3.5.2,<3.6.0a0 + - liblzma >=5.8.2,<6.0a0 + - libmpdec >=4.0.0,<5.0a0 + - libsqlite >=3.51.2,<4.0a0 + - libzlib >=1.3.1,<2.0a0 + - openssl >=3.5.5,<4.0a0 + - python_abi 3.14.* *_cp314 + - tk >=8.6.13,<8.7.0a0 + - tzdata + - ucrt >=10.0.20348.0 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + - zstd >=1.5.7,<1.6.0a0 + license: Python-2.0 + size: 18273230 + timestamp: 1770675442998 + python_site_packages_path: Lib/site-packages - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda build_number: 8 sha256: ad6d2e9ac39751cc0529dd1566a26751a0bf2542adb0c232533d32e176e21db5 @@ -3273,6 +4689,17 @@ packages: purls: [] size: 6698663 timestamp: 1770690927791 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/sigtool-codesign-0.1.3-h98dc951_0.conda + sha256: f3d006e2441f110160a684744d90921bbedbffa247d7599d7e76b5cd048116dc + md5: ade77ad7513177297b1d75e351e136ce + depends: + - __osx >=11.0 + - libsigtool 0.1.3 h98dc951_0 + - openssl >=3.5.4,<4.0a0 + license: MIT + license_family: MIT + size: 114331 + timestamp: 1767045086274 - conda: https://conda.anaconda.org/conda-forge/linux-64/stylua-2.3.1-hb17b654_1.conda sha256: 55d6701de61979958ef23b1179158f691cc17bb4990b7b7d4fa2c15755b3f6b9 md5: 946560e6fd16473525953ae27909e7a0 @@ -3318,6 +4745,39 @@ packages: purls: [] size: 15166921 timestamp: 1735290488259 +- conda: https://conda.anaconda.org/conda-forge/noarch/sysroot_linux-aarch64-2.17-h68829e0_18.conda + sha256: 1e478bfd87c296829e62f0cae37e591568c2dcfc90ee6228c285bb1c7130b915 + md5: 5af44a8494602d062a4c6f019bcb6116 + depends: + - kernel-headers_linux-aarch64 4.18.0 h05a177a_18 + - tzdata + license: LGPL-2.0-or-later AND LGPL-2.0-or-later WITH exceptions AND GPL-2.0-or-later AND MPL-2.0 + license_family: GPL + size: 15739604 + timestamp: 1735290496248 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/tapi-1600.0.11.8-h997e182_1.conda + sha256: 0072a50a204dc6a309ea61e01315caee86cf82879ce5254bb8feb04a3e0de762 + md5: ddd7d9cd7e3c3f184867e92ed1c7d394 + depends: + - libcxx >=19.0.0.a0 + - __osx >=11.0 + - ncurses >=6.5,<7.0a0 + license: NCSA + size: 200231 + timestamp: 1774947735492 +- conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h366c992_103.conda + sha256: cafeec44494f842ffeca27e9c8b0c27ed714f93ac77ddadc6aaf726b5554ebac + md5: cffd3bdd58090148f4cfcd831f4b26ab + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=14 + - libzlib >=1.3.1,<2.0a0 + constrains: + - xorg-libx11 >=1.8.12,<2.0a0 + license: TCL + license_family: BSD + size: 3301196 + timestamp: 1769460227866 - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_ha0e22de_103.conda sha256: 1544760538a40bcd8ace2b1d8ebe3eb5807ac268641f8acdc18c69c5ebfeaf64 md5: 86bc20552bf46075e3d92b67f089172d @@ -3332,6 +4792,16 @@ packages: purls: [] size: 3284905 timestamp: 1763054914403 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h010d191_3.conda + sha256: 799cab4b6cde62f91f750149995d149bc9db525ec12595e8a1d91b9317f038b3 + md5: a9d86bc62f39b94c4661716624eb21b0 + depends: + - __osx >=11.0 + - libzlib >=1.3.1,<2.0a0 + license: TCL + license_family: BSD + size: 3127137 + timestamp: 1769460817696 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h892fb3f_3.conda sha256: ad0c67cb03c163a109820dc9ecf77faf6ec7150e942d1e8bb13e5d39dc058ab7 md5: a73d54a5abba6543cb2f0af1bfbd6851 @@ -3355,6 +4825,17 @@ packages: purls: [] size: 3472313 timestamp: 1763055164278 +- conda: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h6ed50ae_3.conda + sha256: 0e79810fae28f3b69fe7391b0d43f5474d6bd91d451d5f2bde02f55ae481d5e3 + md5: 0481bfd9814bf525bd4b3ee4b51494c4 + depends: + - ucrt >=10.0.20348.0 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + license: TCL + license_family: BSD + size: 3526350 + timestamp: 1769460339384 - conda: https://conda.anaconda.org/conda-forge/linux-64/tombi-0.7.12-hb17b654_0.conda sha256: 972bd56e5e73e72411424d6d903f0267c18d684020aa2189dfb4a4fd86376076 md5: bae1720cadffd3bfd69f965b2590cf6f @@ -3434,6 +4915,17 @@ packages: purls: [] size: 19070 timestamp: 1765216452130 +- conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-h41ae7f8_34.conda + sha256: 9dc40c2610a6e6727d635c62cced5ef30b7b30123f5ef67d6139e23d21744b3a + md5: 1e610f2416b6acdd231c5f573d754a0f + depends: + - vc14_runtime >=14.44.35208 + track_features: + - vc14 + license: BSD-3-Clause + license_family: BSD + size: 19356 + timestamp: 1767320221521 - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.44.35208-h818238b_33.conda sha256: 7e8f7da25d7ce975bbe7d7e6d6e899bf1f253e524a3427cc135a79f3a79c457c md5: fb8e4914c5ad1c71b3c519621e1df7b8 @@ -3447,6 +4939,18 @@ packages: purls: [] size: 684323 timestamp: 1765216366832 +- conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.44.35208-h818238b_34.conda + sha256: 02732f953292cce179de9b633e74928037fa3741eb5ef91c3f8bae4f761d32a5 + md5: 37eb311485d2d8b2c419449582046a42 + depends: + - ucrt >=10.0.20348.0 + - vcomp14 14.44.35208 h818238b_34 + constrains: + - vs2015_runtime 14.44.35208.* *_34 + license: LicenseRef-MicrosoftVisualCpp2015-2022Runtime + license_family: Proprietary + size: 683233 + timestamp: 1767320219644 - conda: https://conda.anaconda.org/conda-forge/win-64/vcomp14-14.44.35208-h818238b_33.conda sha256: f79edd878094e86af2b2bc1455b0a81e02839a784fb093d5996ad4cf7b810101 md5: 4cb6942b4bd846e51b4849f4a93c7e6d @@ -3459,6 +4963,17 @@ packages: purls: [] size: 115073 timestamp: 1765216325898 +- conda: https://conda.anaconda.org/conda-forge/win-64/vcomp14-14.44.35208-h818238b_34.conda + sha256: 878d5d10318b119bd98ed3ed874bd467acbe21996e1d81597a1dbf8030ea0ce6 + md5: 242d9f25d2ae60c76b38a5e42858e51d + depends: + - ucrt >=10.0.20348.0 + constrains: + - vs2015_runtime 14.44.35208.* *_34 + license: LicenseRef-MicrosoftVisualCpp2015-2022Runtime + license_family: Proprietary + size: 115235 + timestamp: 1767320173250 - conda: https://conda.anaconda.org/conda-forge/linux-64/xxhash-0.8.3-hb47aa4a_0.conda sha256: 08e12f140b1af540a6de03dd49173c0e5ae4ebc563cabdd35ead0679835baf6f md5: 607e13a8caac17f9a664bcab5302ce06 From 255a12a0e6af30e60043ce6cf529e29ae69120ce Mon Sep 17 00:00:00 2001 From: ykiko Date: Sat, 4 Apr 2026 20:02:39 +0800 Subject: [PATCH 04/52] chore: add workflow_dispatch trigger to build-llvm Co-Authored-By: Claude Opus 4.6 (1M context) --- .github/workflows/build-llvm.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/build-llvm.yml b/.github/workflows/build-llvm.yml index 44afe8f89..2694cb72b 100644 --- a/.github/workflows/build-llvm.yml +++ b/.github/workflows/build-llvm.yml @@ -1,6 +1,7 @@ name: build llvm on: + workflow_dispatch: pull_request: # if you want to run this workflow, change the branch name to main, # if you want to turn off it, change it to non existent branch. From 1bbdd24b0ab95c0fc47d722826f4f708d48c781a Mon Sep 17 00:00:00 2001 From: ykiko Date: Sat, 4 Apr 2026 20:09:06 +0800 Subject: [PATCH 05/52] fix: remove Windows Debug build from LLVM matrix LLVM_USE_SANITIZER=Address is not supported on Windows. Co-Authored-By: Claude Opus 4.6 (1M context) --- .github/workflows/build-llvm.yml | 3 --- 1 file changed, 3 deletions(-) diff --git a/.github/workflows/build-llvm.yml b/.github/workflows/build-llvm.yml index 2694cb72b..1529a2226 100644 --- a/.github/workflows/build-llvm.yml +++ b/.github/workflows/build-llvm.yml @@ -14,9 +14,6 @@ jobs: matrix: include: # ── Native builds ────────────────────────────────────────────── - - os: windows-2025 - llvm_mode: Debug - lto: OFF - os: windows-2025 llvm_mode: RelWithDebInfo lto: OFF From 47147e0c0667fe5dce1c96433992775021ad806a Mon Sep 17 00:00:00 2001 From: ykiko Date: Sat, 4 Apr 2026 20:24:23 +0800 Subject: [PATCH 06/52] fix: remove LLVM_USE_LINKER from build-llvm.py, rely on toolchain The toolchain.cmake already sets the correct linker (lld-link on Windows, lld elsewhere). LLVM's HandleLLVMOptions.cmake was adding a conflicting -fuse-ld=lld on top of the toolchain's -fuse-ld=lld-link, causing link failures on Windows LTO builds. Co-Authored-By: Claude Opus 4.6 (1M context) --- scripts/build-llvm.py | 1 - 1 file changed, 1 deletion(-) diff --git a/scripts/build-llvm.py b/scripts/build-llvm.py index 60f77d891..54ed058cd 100644 --- a/scripts/build-llvm.py +++ b/scripts/build-llvm.py @@ -236,7 +236,6 @@ def main(): "-DCMAKE_JOB_POOL_LINK=console", "-DLLVM_ENABLE_PROJECTS=clang;clang-tools-extra", "-DLLVM_TARGETS_TO_BUILD=all", - "-DLLVM_USE_LINKER=lld", "-DLLVM_DISABLE_ASSEMBLY_FILES=ON", # Distribution f"-DLLVM_DISTRIBUTION_COMPONENTS={components_joined}", From 23f43f590b49dedfd5e7c490e4b91ef552c5f5ef Mon Sep 17 00:00:00 2001 From: ykiko Date: Sat, 4 Apr 2026 20:34:01 +0800 Subject: [PATCH 07/52] fix: use lld-link on Windows for LLVM builds LLVM's HandleLLVMOptions generates MSVC-style linker flags (/opt:lldlto, /lldltocache) when LTO is enabled. These are interpreted as file paths by the clang++ GNU driver. Explicitly setting LLVM_USE_LINKER=lld-link tells LLVM's CMake to use the correct flag style. Co-Authored-By: Claude Opus 4.6 (1M context) --- scripts/build-llvm.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/scripts/build-llvm.py b/scripts/build-llvm.py index 54ed058cd..671e82b77 100644 --- a/scripts/build-llvm.py +++ b/scripts/build-llvm.py @@ -269,6 +269,9 @@ def main(): if sys.platform == "win32": is_shared = "OFF" + cmake_args.append("-DLLVM_USE_LINKER=lld-link") + else: + cmake_args.append("-DLLVM_USE_LINKER=lld") cmake_args.append(f"-DBUILD_SHARED_LIBS={is_shared}") if lto_enabled: From 6093726970736da7bcd6a3bf82803ec36e1bcdb1 Mon Sep 17 00:00:00 2001 From: ykiko Date: Sat, 4 Apr 2026 20:51:48 +0800 Subject: [PATCH 08/52] fix: use clang-cl on Windows for LLVM builds clang++ (GNU driver) cannot handle MSVC-style linker flags like /lldltocache: and /opt:lldlto= that LLVM's CMake generates when LTO is enabled. Switch to clang-cl (MSVC driver) on Windows which natively understands these flags. Co-Authored-By: Claude Opus 4.6 (1M context) --- scripts/build-llvm.py | 27 +++++++++++++++++++++------ 1 file changed, 21 insertions(+), 6 deletions(-) diff --git a/scripts/build-llvm.py b/scripts/build-llvm.py index 671e82b77..181260233 100644 --- a/scripts/build-llvm.py +++ b/scripts/build-llvm.py @@ -198,10 +198,28 @@ def main(): cmake_args = [ "-G", "Ninja", - f"-DCMAKE_TOOLCHAIN_FILE={toolchain_file.as_posix()}", f"-DCMAKE_INSTALL_PREFIX={install_prefix}", - "-DCMAKE_C_FLAGS=-w", - "-DCMAKE_CXX_FLAGS=-w", + ] + + if sys.platform == "win32": + # Use clang-cl (MSVC driver) on Windows so that LLVM's CMake + # generates correct MSVC-style linker flags for LTO, etc. + cmake_args += [ + "-DCMAKE_C_COMPILER=clang-cl", + "-DCMAKE_CXX_COMPILER=clang-cl", + "-DCMAKE_C_FLAGS=-w", + "-DCMAKE_CXX_FLAGS=-w", + "-DLLVM_USE_LINKER=lld-link", + ] + else: + cmake_args += [ + f"-DCMAKE_TOOLCHAIN_FILE={toolchain_file.as_posix()}", + "-DCMAKE_C_FLAGS=-w", + "-DCMAKE_CXX_FLAGS=-w", + "-DLLVM_USE_LINKER=lld", + ] + + cmake_args += [ "-DLLVM_ENABLE_ZLIB=OFF", "-DLLVM_ENABLE_ZSTD=OFF", "-DLLVM_ENABLE_LIBXML2=OFF", @@ -269,9 +287,6 @@ def main(): if sys.platform == "win32": is_shared = "OFF" - cmake_args.append("-DLLVM_USE_LINKER=lld-link") - else: - cmake_args.append("-DLLVM_USE_LINKER=lld") cmake_args.append(f"-DBUILD_SHARED_LIBS={is_shared}") if lto_enabled: From 0c64c13bac11159c9d3582b441b283b3b3dc2fe9 Mon Sep 17 00:00:00 2001 From: ykiko Date: Sun, 5 Apr 2026 03:39:54 +0800 Subject: [PATCH 09/52] fix: install uv before running integration tests in build-llvm CI The package pixi environment doesn't include uv, causing 'uv: command not found' when running integration tests. Co-Authored-By: Claude Opus 4.6 (1M context) --- .github/workflows/build-llvm.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-llvm.yml b/.github/workflows/build-llvm.yml index 1529a2226..d274b2733 100644 --- a/.github/workflows/build-llvm.yml +++ b/.github/workflows/build-llvm.yml @@ -148,7 +148,7 @@ jobs: EXE_EXT=".exe" fi ./build/bin/unit_tests${EXE_EXT} --test-dir="./tests/data" - uv run --project tests pytest -s --log-cli-level=INFO tests/integration --executable=./build/bin/clice${EXE_EXT} + pip install uv && uv run --project tests pytest -s --log-cli-level=INFO tests/integration --executable=./build/bin/clice${EXE_EXT} # Prune is only supported for native builds (requires linking clice to test). # Cross-compiled targets reuse the native prune manifest of the same OS. From 51a94ea6c4639c29b084c91d2358ca60b952ea4e Mon Sep 17 00:00:00 2001 From: ykiko Date: Sun, 12 Apr 2026 19:21:48 +0800 Subject: [PATCH 10/52] feat: automate LLVM build-upload-PR pipeline - Add llvm_version and skip_upload inputs to build-llvm workflow - Add upload job to auto-publish artifacts to clice-llvm repo - Add update-clice job to auto-create PR with version bump - Extract distribution components list to scripts/llvm-components.json - Add validate-llvm-components.py to catch stale/renamed components - Add update-llvm-version.py to update manifest and package.cmake Co-Authored-By: Claude Opus 4.6 --- .github/workflows/build-llvm.yml | 118 +++++++++++++++++++- scripts/build-llvm.py | 101 +----------------- scripts/llvm-components.json | 99 +++++++++++++++++ scripts/update-llvm-version.py | 106 ++++++++++++++++++ scripts/validate-llvm-components.py | 160 ++++++++++++++++++++++++++++ 5 files changed, 485 insertions(+), 99 deletions(-) create mode 100644 scripts/llvm-components.json create mode 100755 scripts/update-llvm-version.py create mode 100755 scripts/validate-llvm-components.py diff --git a/.github/workflows/build-llvm.yml b/.github/workflows/build-llvm.yml index d274b2733..1f3aa4c36 100644 --- a/.github/workflows/build-llvm.yml +++ b/.github/workflows/build-llvm.yml @@ -2,6 +2,16 @@ name: build llvm on: workflow_dispatch: + inputs: + llvm_version: + description: "LLVM version to build (e.g., 21.1.8)" + required: true + type: string + skip_upload: + description: "Skip upload and PR creation (build-only mode)" + required: false + type: boolean + default: false pull_request: # if you want to run this workflow, change the branch name to main, # if you want to turn off it, change it to non existent branch. @@ -107,10 +117,19 @@ jobs: cache: true locked: true - - name: Clone llvm-project (21.1.8) + - name: Clone llvm-project shell: bash run: | - git clone --branch llvmorg-21.1.8 --depth 1 https://github.com/llvm/llvm-project.git .llvm + VERSION="${{ inputs.llvm_version || '21.1.8' }}" + echo "Cloning LLVM ${VERSION}..." + git clone --branch "llvmorg-${VERSION}" --depth 1 https://github.com/llvm/llvm-project.git .llvm + + - name: Validate distribution components + shell: bash + run: | + python3 scripts/validate-llvm-components.py \ + --llvm-src=.llvm \ + --components-file=scripts/llvm-components.json - name: Build LLVM (install-distribution) shell: bash @@ -265,3 +284,98 @@ jobs: name: ${{ env.LLVM_INSTALL_ARCHIVE }} path: ${{ env.LLVM_INSTALL_ARCHIVE }} if-no-files-found: error + + # ── Upload to clice-llvm ──────────────────────────────────────────────── + upload: + needs: build + if: ${{ inputs.llvm_version && !inputs.skip_upload }} + runs-on: ubuntu-24.04 + permissions: + contents: read + steps: + - uses: actions/checkout@v4 + + - name: Download all build artifacts + env: + GH_TOKEN: ${{ github.token }} + run: scripts/download-llvm.sh "${{ github.run_id }}" + + - name: Upload to clice-llvm + env: + GH_TOKEN: ${{ secrets.UPLOAD_LLVM }} + TARGET_REPO: clice-io/clice-llvm + run: python3 scripts/upload-llvm.py "${{ inputs.llvm_version }}" "${TARGET_REPO}" "${{ github.run_id }}" + + - name: Save manifest for update-clice job + uses: actions/upload-artifact@v4 + with: + name: llvm-manifest-final + path: artifacts/llvm-manifest.json + if-no-files-found: error + compression-level: 0 + + # ── Auto-create PR to update clice LLVM dependency ────────────────────── + update-clice: + needs: upload + runs-on: ubuntu-24.04 + permissions: + contents: write + pull-requests: write + steps: + - uses: actions/checkout@v4 + + - name: Download manifest + uses: actions/download-artifact@v4 + with: + name: llvm-manifest-final + path: . + + - name: Update manifest and version + run: | + python3 scripts/update-llvm-version.py \ + --version "${{ inputs.llvm_version }}" \ + --manifest-src llvm-manifest.json \ + --manifest-dest config/llvm-manifest.json \ + --package-cmake cmake/package.cmake + + - name: Create or update PR + env: + GH_TOKEN: ${{ github.token }} + run: | + VERSION="${{ inputs.llvm_version }}" + BRANCH="chore/update-llvm-${VERSION}" + RUN_URL="https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}" + RELEASE_URL="https://github.com/clice-io/clice-llvm/releases/tag/${VERSION}" + + git config user.name "github-actions[bot]" + git config user.email "41898282+github-actions[bot]@users.noreply.github.com" + git checkout -b "${BRANCH}" + git add config/llvm-manifest.json cmake/package.cmake + git commit -m "chore: update LLVM to ${VERSION}" + git push --force-with-lease origin "${BRANCH}" + + # Check if PR already exists for this branch + EXISTING_PR=$(gh pr list --head "${BRANCH}" --json number --jq '.[0].number // empty') + + BODY="$(cat < Auto-generated by build-llvm workflow + EOF + )" + + if [[ -n "${EXISTING_PR}" ]]; then + echo "Updating existing PR #${EXISTING_PR}" + gh pr edit "${EXISTING_PR}" --body "${BODY}" + else + gh pr create \ + --title "chore: update LLVM to ${VERSION}" \ + --body "${BODY}" \ + --base main + fi diff --git a/scripts/build-llvm.py b/scripts/build-llvm.py index 181260233..ebfe48664 100644 --- a/scripts/build-llvm.py +++ b/scripts/build-llvm.py @@ -4,6 +4,7 @@ import shutil import argparse import os +import json from pathlib import Path @@ -96,103 +97,9 @@ def main(): print(f"Toolchain: {toolchain_file}") print("---------------------") - llvm_distribution_components = [ - "LLVMDemangle", - "LLVMSupport", - "LLVMCore", - "LLVMOption", - "LLVMBinaryFormat", - "LLVMMC", - "LLVMMCParser", - "LLVMObject", - "LLVMProfileData", - "LLVMBitReader", - "LLVMBitstreamReader", - "LLVMRemarks", - "LLVMObjectYAML", - "LLVMAggressiveInstCombine", - "LLVMInstCombine", - "LLVMIRReader", - "LLVMTextAPI", - "LLVMSymbolize", - "LLVMDebugInfoDWARF", - "LLVMDebugInfoDWARFLowLevel", - "LLVMDebugInfoCodeView", - "LLVMDebugInfoGSYM", - "LLVMDebugInfoPDB", - "LLVMDebugInfoBTF", - "LLVMDebugInfoMSF", - "LLVMAsmParser", - "LLVMTargetParser", - "LLVMTransformUtils", - "LLVMAnalysis", - "LLVMScalarOpts", - "LLVMFrontendHLSL", - "LLVMFrontendOpenMP", - "LLVMFrontendOffloading", - "LLVMFrontendAtomic", - "LLVMFrontendDirective", - "LLVMWindowsDriver", - "clangIndex", - "clangAPINotes", - "clangAST", - "clangASTMatchers", - "clangBasic", - "clangDriver", - "clangFormat", - "clangFrontend", - "clangLex", - "clangParse", - "clangSema", - "clangSerialization", - "clangRewrite", - "clangAnalysis", - "clangEdit", - "clangSupport", - "clangStaticAnalyzerCore", - "clangStaticAnalyzerFrontend", - "clangTidy", - "clangTidyUtils", - "clangTidyAndroidModule", - "clangTidyAbseilModule", - "clangTidyAlteraModule", - "clangTidyBoostModule", - "clangTidyBugproneModule", - "clangTidyCERTModule", - "clangTidyConcurrencyModule", - "clangTidyCppCoreGuidelinesModule", - "clangTidyDarwinModule", - "clangTidyFuchsiaModule", - "clangTidyGoogleModule", - "clangTidyHICPPModule", - "clangTidyLinuxKernelModule", - "clangTidyLLVMModule", - "clangTidyLLVMLibcModule", - "clangTidyMiscModule", - "clangTidyModernizeModule", - "clangTidyObjCModule", - "clangTidyOpenMPModule", - "clangTidyPerformanceModule", - "clangTidyPortabilityModule", - "clangTidyReadabilityModule", - "clangTidyZirconModule", - "clangTooling", - "clangToolingCore", - "clangToolingInclusions", - "clangToolingInclusionsStdlib", - "clangToolingSyntax", - "clangToolingRefactoring", - "clangTransformer", - "clangCrossTU", - "clangAnalysisFlowSensitive", - "clangAnalysisFlowSensitiveModels", - "clangStaticAnalyzerCheckers", - "clangIncludeCleaner", - "llvm-headers", - "clang-headers", - "clang-tidy-headers", - "clang-resource-headers", - ] + components_path = Path(__file__).resolve().parent / "llvm-components.json" + with components_path.open() as f: + llvm_distribution_components = json.load(f)["components"] components_joined = ";".join(llvm_distribution_components) cmake_args = [ diff --git a/scripts/llvm-components.json b/scripts/llvm-components.json new file mode 100644 index 000000000..6578f04f6 --- /dev/null +++ b/scripts/llvm-components.json @@ -0,0 +1,99 @@ +{ + "components": [ + "LLVMDemangle", + "LLVMSupport", + "LLVMCore", + "LLVMOption", + "LLVMBinaryFormat", + "LLVMMC", + "LLVMMCParser", + "LLVMObject", + "LLVMProfileData", + "LLVMBitReader", + "LLVMBitstreamReader", + "LLVMRemarks", + "LLVMObjectYAML", + "LLVMAggressiveInstCombine", + "LLVMInstCombine", + "LLVMIRReader", + "LLVMTextAPI", + "LLVMSymbolize", + "LLVMDebugInfoDWARF", + "LLVMDebugInfoDWARFLowLevel", + "LLVMDebugInfoCodeView", + "LLVMDebugInfoGSYM", + "LLVMDebugInfoPDB", + "LLVMDebugInfoBTF", + "LLVMDebugInfoMSF", + "LLVMAsmParser", + "LLVMTargetParser", + "LLVMTransformUtils", + "LLVMAnalysis", + "LLVMScalarOpts", + "LLVMFrontendHLSL", + "LLVMFrontendOpenMP", + "LLVMFrontendOffloading", + "LLVMFrontendAtomic", + "LLVMFrontendDirective", + "LLVMWindowsDriver", + "clangIndex", + "clangAPINotes", + "clangAST", + "clangASTMatchers", + "clangBasic", + "clangDriver", + "clangFormat", + "clangFrontend", + "clangLex", + "clangParse", + "clangSema", + "clangSerialization", + "clangRewrite", + "clangAnalysis", + "clangEdit", + "clangSupport", + "clangStaticAnalyzerCore", + "clangStaticAnalyzerFrontend", + "clangTidy", + "clangTidyUtils", + "clangTidyAndroidModule", + "clangTidyAbseilModule", + "clangTidyAlteraModule", + "clangTidyBoostModule", + "clangTidyBugproneModule", + "clangTidyCERTModule", + "clangTidyConcurrencyModule", + "clangTidyCppCoreGuidelinesModule", + "clangTidyDarwinModule", + "clangTidyFuchsiaModule", + "clangTidyGoogleModule", + "clangTidyHICPPModule", + "clangTidyLinuxKernelModule", + "clangTidyLLVMModule", + "clangTidyLLVMLibcModule", + "clangTidyMiscModule", + "clangTidyModernizeModule", + "clangTidyObjCModule", + "clangTidyOpenMPModule", + "clangTidyPerformanceModule", + "clangTidyPortabilityModule", + "clangTidyReadabilityModule", + "clangTidyZirconModule", + "clangTooling", + "clangToolingCore", + "clangToolingInclusions", + "clangToolingInclusionsStdlib", + "clangToolingSyntax", + "clangToolingRefactoring", + "clangTransformer", + "clangCrossTU", + "clangAnalysisFlowSensitive", + "clangAnalysisFlowSensitiveModels", + "clangStaticAnalyzerCheckers", + "clangIncludeCleaner", + "llvm-headers", + "clang-headers", + "clang-tidy-headers", + "clang-resource-headers" + ] +} diff --git a/scripts/update-llvm-version.py b/scripts/update-llvm-version.py new file mode 100755 index 000000000..9191a3774 --- /dev/null +++ b/scripts/update-llvm-version.py @@ -0,0 +1,106 @@ +#!/usr/bin/env python3 + +import argparse +import json +import re +import sys +from pathlib import Path + + +def copy_manifest(src: Path, dest: Path) -> None: + text = src.read_text(encoding="utf-8") + + try: + data = json.loads(text) + except json.JSONDecodeError as err: + print(f"Error: {src} is not valid JSON: {err}", file=sys.stderr) + sys.exit(1) + + if not isinstance(data, list) or len(data) == 0: + print(f"Error: {src} must be a non-empty JSON array", file=sys.stderr) + sys.exit(1) + + dest.parent.mkdir(parents=True, exist_ok=True) + with dest.open("w", encoding="utf-8") as handle: + json.dump(data, handle, indent=2) + handle.write("\n") + + print(f"Copied manifest: {src} -> {dest} ({len(data)} entries)") + + +def update_package_cmake(path: Path, version: str) -> None: + text = path.read_text(encoding="utf-8") + + pattern = r'setup_llvm\("[^"]*"\)' + matches = re.findall(pattern, text) + + if len(matches) == 0: + print(f"Error: no setup_llvm(...) call found in {path}", file=sys.stderr) + sys.exit(1) + + if len(matches) > 1: + print( + f"Error: expected exactly 1 setup_llvm(...) call in {path}, " + f"found {len(matches)}", + file=sys.stderr, + ) + sys.exit(1) + + old_call = matches[0] + new_call = f'setup_llvm("{version}")' + + if old_call == new_call: + print(f"Version in {path} is already {version}, no change needed") + return + + updated = text.replace(old_call, new_call) + path.write_text(updated, encoding="utf-8") + print(f"Updated {path}: {old_call} -> {new_call}") + + +def main() -> None: + parser = argparse.ArgumentParser( + description="Update LLVM version references in the clice project." + ) + parser.add_argument( + "--version", + required=True, + help="New LLVM version string (e.g. 21.2.0)", + ) + parser.add_argument( + "--manifest-src", + required=True, + help="Path to the source llvm-manifest.json (downloaded from build)", + ) + parser.add_argument( + "--manifest-dest", + required=True, + help="Path to destination manifest (e.g. config/llvm-manifest.json)", + ) + parser.add_argument( + "--package-cmake", + required=True, + help="Path to cmake/package.cmake", + ) + args = parser.parse_args() + + manifest_src = Path(args.manifest_src) + manifest_dest = Path(args.manifest_dest) + package_cmake = Path(args.package_cmake) + + if not manifest_src.is_file(): + print(f"Error: manifest source not found: {manifest_src}", file=sys.stderr) + sys.exit(1) + + if not package_cmake.is_file(): + print(f"Error: package.cmake not found: {package_cmake}", file=sys.stderr) + sys.exit(1) + + copy_manifest(manifest_src, manifest_dest) + update_package_cmake(package_cmake, args.version) + + print("Done.") + + +if __name__ == "__main__": + main() diff --git a/scripts/validate-llvm-components.py b/scripts/validate-llvm-components.py new file mode 100755 index 000000000..85e6d04fc --- /dev/null +++ b/scripts/validate-llvm-components.py @@ -0,0 +1,160 @@ +#!/usr/bin/env python3 +""" +Validate the LLVM distribution component list against the actual LLVM source tree. + +Scans the LLVM source for CMake library targets and compares them against +a components JSON file to detect stale or misspelled entries. +""" + +import argparse +import difflib +import json +import re +import sys +from pathlib import Path + + +# CMake function calls that define library targets. +# The captured group uses [^\s)]+ to grab the target name without +# trailing parentheses or whitespace. +LLVM_LIB_PATTERNS = [ + re.compile(r"add_llvm_component_library\(\s*([^\s)]+)"), + re.compile(r"add_llvm_library\(\s*([^\s)]+)"), +] + +CLANG_LIB_PATTERNS = [ + re.compile(r"add_clang_library\(\s*([^\s)]+)"), +] + +# Header-only / custom install targets. +HEADER_PATTERNS = [ + re.compile(r"add_llvm_install_targets\(\s*([^\s)]+)"), + re.compile(r"add_custom_target\(\s*([^\s)]+)"), +] + +# Targets we recognise as header-only distribution components. +KNOWN_HEADER_TARGETS = { + "llvm-headers", + "clang-headers", + "clang-tidy-headers", + "clang-resource-headers", +} + + +def scan_targets(directory: Path, patterns: list[re.Pattern]) -> set[str]: + """Recursively scan *directory* for CMakeLists.txt files and extract target names.""" + targets: set[str] = set() + if not directory.is_dir(): + return targets + for cmake_file in directory.rglob("CMakeLists.txt"): + text = cmake_file.read_text(errors="replace") + for pattern in patterns: + for match in pattern.finditer(text): + targets.add(match.group(1)) + return targets + + +def scan_header_targets(llvm_src: Path) -> set[str]: + """Scan for well-known header / custom-install targets across the tree.""" + found: set[str] = set() + for cmake_file in llvm_src.rglob("CMakeLists.txt"): + text = cmake_file.read_text(errors="replace") + for pattern in HEADER_PATTERNS: + for match in pattern.finditer(text): + name = match.group(1) + if name in KNOWN_HEADER_TARGETS: + found.add(name) + return found + + +def collect_source_targets(llvm_src: Path) -> set[str]: + """Return the full set of library / header targets found in the LLVM source tree.""" + targets: set[str] = set() + targets |= scan_targets(llvm_src / "llvm" / "lib", LLVM_LIB_PATTERNS) + targets |= scan_targets(llvm_src / "clang" / "lib", CLANG_LIB_PATTERNS) + targets |= scan_targets(llvm_src / "clang-tools-extra", CLANG_LIB_PATTERNS) + targets |= scan_header_targets(llvm_src) + return targets + + +def load_components(path: Path) -> list[str]: + with path.open("r", encoding="utf-8") as handle: + data = json.load(handle) + if isinstance(data, dict): + data = data.get("components", []) + if not isinstance(data, list) or not data: + print(f"Error: no component list found in {path}", file=sys.stderr) + sys.exit(1) + return data + + +def main() -> None: + parser = argparse.ArgumentParser( + description="Validate LLVM distribution components against the source tree." + ) + parser.add_argument( + "--llvm-src", + required=True, + help="Path to the llvm-project source root", + ) + parser.add_argument( + "--components-file", + required=True, + help="Path to llvm-components.json", + ) + args = parser.parse_args() + + llvm_src = Path(args.llvm_src).expanduser().resolve() + components_file = Path(args.components_file).expanduser().resolve() + + if not llvm_src.is_dir(): + print(f"Error: LLVM source directory not found: {llvm_src}") + sys.exit(1) + + if not (llvm_src / "llvm" / "CMakeLists.txt").exists(): + print(f"Error: {llvm_src} does not look like an llvm-project root.") + sys.exit(1) + + if not components_file.is_file(): + print(f"Error: components file not found: {components_file}") + sys.exit(1) + + components = load_components(components_file) + source_targets = collect_source_targets(llvm_src) + + print(f"Found {len(source_targets)} targets in LLVM source tree") + print(f"Components file lists {len(components)} entries") + + # --- Check for components that are missing from the source tree ----------- + missing: list[tuple[str, list[str]]] = [] + for name in components: + if name not in source_targets: + suggestions = difflib.get_close_matches(name, source_targets, n=3, cutoff=0.6) + missing.append((name, suggestions)) + + if missing: + print(f"\nError: {len(missing)} component(s) not found in the source tree:\n") + for name, suggestions in missing: + print(f" - {name}") + if suggestions: + print(f" Did you mean: {', '.join(suggestions)}?") + sys.exit(1) + + # --- Warn about source targets not present in the component list ---------- + component_set = set(components) + new_targets = sorted(source_targets - component_set - KNOWN_HEADER_TARGETS) + # Filter to targets that follow LLVM/Clang naming conventions to reduce noise. + noteworthy = [ + t for t in new_targets if t.startswith(("LLVM", "clang", "Clang")) + ] + if noteworthy: + print(f"\nWarning: {len(noteworthy)} target(s) in source not listed in components:") + for name in noteworthy: + print(f" + {name}") + + print("\nAll components validated successfully.") + sys.exit(0) + + +if __name__ == "__main__": + main() From 2d44a06d08411ea90a58425f8d67d9b2e06526ee Mon Sep 17 00:00:00 2001 From: ykiko Date: Sun, 12 Apr 2026 19:30:02 +0800 Subject: [PATCH 11/52] ci: trigger workflow re-run Co-Authored-By: Claude Opus 4.6 From a8d0fa7f4a8b59c387e7700250530059d5071615 Mon Sep 17 00:00:00 2001 From: ykiko Date: Sun, 12 Apr 2026 19:39:59 +0800 Subject: [PATCH 12/52] chore: regenerate pixi.lock for cross-compile environments Co-Authored-By: Claude Opus 4.6 --- pixi.lock | 343 ++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 334 insertions(+), 9 deletions(-) diff --git a/pixi.lock b/pixi.lock index 57916e886..8e1b11165 100644 --- a/pixi.lock +++ b/pixi.lock @@ -17,6 +17,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/ccache-4.13.2-hedf47ba_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-20-20.1.8-default_h99862b1_14.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-20.1.8-default_cfg_hcbb2b3e_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-format-20-20.1.8-default_h99862b1_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-format-20.1.8-default_h99862b1_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-tools-20.1.8-default_h57a47db_14.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/clang_impl_linux-64-20.1.8-default_cfg_h027053c_14.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/clangxx-20.1.8-default_cfg_hcbb2b3e_14.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/clangxx_impl_linux-64-20.1.8-default_cfg_h027053c_14.conda @@ -39,6 +42,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45.1-default_hbd61a6d_102.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-aarch64-2.45.1-default_h27e1c4c_102.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp20.1-20.1.8-default_h99862b1_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang13-22.1.3-default_h746c552_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.19.0-hcf29cc6_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20250104-pl5321h7949ede_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-hd590300_2.conda @@ -52,6 +56,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libhiredis-1.3.0-h5888daf_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.18-h3b78370_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm20-20.1.8-hf7376ad_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm22-22.1.3-hf7376ad_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.2-hb03c661_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libmpdec-4.0.0-hb03c661_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.68.1-h877daf1_0.conda @@ -92,6 +97,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cctools_impl_osx-arm64-1030.6.3-llvm20_1_hd60c58f_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-20-20.1.8-default_hf3020a7_14.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-20.1.8-default_cfg_hb78b91e_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-format-20-20.1.8-default_hf3020a7_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-format-20.1.8-default_hf3020a7_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-tools-20.1.8-default_h1589341_14.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang_impl_osx-arm64-20.1.8-default_cfg_h6e044b8_14.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clangxx-20.1.8-default_cfg_h170a469_14.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clangxx_impl_osx-arm64-20.1.8-default_cfg_h6e044b8_14.conda @@ -103,6 +111,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ld64-956.6-llvm20_1_hb625feb_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ld64_osx-arm64-956.6-llvm20_1_h4e43e91_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang-cpp20.1-20.1.8-default_hf3020a7_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang13-22.1.0-default_h13b06bd_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.19.0-hd5a2499_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-22.1.2-h55c6f16_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-devel-20.1.8-h6dc3340_3.conda @@ -114,6 +123,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libhiredis-1.3.0-h286801f_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libiconv-1.18-h23cfdf5_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm20-20.1.8-h8e0c9ce_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm22-22.1.3-h89af1be_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-5.8.2-h8088a28_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libmpdec-4.0.0-h84a0fba_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnghttp2-1.68.1-h8f3e76b_0.conda @@ -146,11 +156,14 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-h4c7d964_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/clang-20-20.1.8-default_hac490eb_14.conda - conda: https://conda.anaconda.org/conda-forge/win-64/clang-20.1.8-default_nocfg_hbb9487a_14.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/clang-format-20.1.8-default_hac490eb_14.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/clang-tools-20.1.8-default_hac490eb_14.conda - conda: https://conda.anaconda.org/conda-forge/win-64/clangxx-20.1.8-default_nocfg_hbb9487a_14.conda - conda: https://conda.anaconda.org/conda-forge/win-64/cmake-4.3.1-hdcbee5b_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/compiler-rt-20.1.8-h49e36cd_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_win-64-20.1.8-h49e36cd_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.22.2-h0ea6238_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libclang13-22.1.3-default_ha2db4b5_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.19.0-h8206538_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.7.5-hac47afa_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.5.2-h3d046cb_0.conda @@ -193,6 +206,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/ccache-4.13.2-hedf47ba_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-20-20.1.8-default_h99862b1_14.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-20.1.8-default_cfg_hcbb2b3e_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-format-20-20.1.8-default_h99862b1_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-format-20.1.8-default_h99862b1_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-tools-20.1.8-default_h57a47db_14.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/clang_impl_linux-64-20.1.8-default_cfg_h027053c_14.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/clangxx-20.1.8-default_cfg_hcbb2b3e_14.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/clangxx_impl_linux-64-20.1.8-default_cfg_h027053c_14.conda @@ -209,6 +225,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.22.2-ha1258a1_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45.1-default_hbd61a6d_102.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp20.1-20.1.8-default_h99862b1_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang13-22.1.3-default_h746c552_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.19.0-hcf29cc6_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20250104-pl5321h7949ede_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-hd590300_2.conda @@ -221,6 +238,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libhiredis-1.3.0-h5888daf_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.18-h3b78370_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm20-20.1.8-hf7376ad_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm22-22.1.3-hf7376ad_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.2-hb03c661_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libmpdec-4.0.0-hb03c661_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.68.1-h877daf1_0.conda @@ -259,6 +277,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cctools_impl_osx-arm64-1030.6.3-llvm20_1_hd60c58f_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-20-20.1.8-default_hf3020a7_14.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-20.1.8-default_cfg_hb78b91e_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-format-20-20.1.8-default_hf3020a7_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-format-20.1.8-default_hf3020a7_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-tools-20.1.8-default_h1589341_14.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang_impl_osx-arm64-20.1.8-default_cfg_h6e044b8_14.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clangxx-20.1.8-default_cfg_h170a469_14.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clangxx_impl_osx-arm64-20.1.8-default_cfg_h6e044b8_14.conda @@ -270,6 +291,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ld64-956.6-llvm20_1_hb625feb_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ld64_osx-arm64-956.6-llvm20_1_h4e43e91_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang-cpp20.1-20.1.8-default_hf3020a7_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang13-22.1.0-default_h13b06bd_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.19.0-hd5a2499_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-22.1.2-h55c6f16_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-devel-20.1.8-h6dc3340_3.conda @@ -281,6 +303,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libhiredis-1.3.0-h286801f_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libiconv-1.18-h23cfdf5_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm20-20.1.8-h8e0c9ce_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm22-22.1.3-h89af1be_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-5.8.2-h8088a28_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libmpdec-4.0.0-h84a0fba_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnghttp2-1.68.1-h8f3e76b_0.conda @@ -313,11 +336,14 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-h4c7d964_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/clang-20-20.1.8-default_hac490eb_14.conda - conda: https://conda.anaconda.org/conda-forge/win-64/clang-20.1.8-default_nocfg_hbb9487a_14.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/clang-format-20.1.8-default_hac490eb_14.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/clang-tools-20.1.8-default_hac490eb_14.conda - conda: https://conda.anaconda.org/conda-forge/win-64/clangxx-20.1.8-default_nocfg_hbb9487a_14.conda - conda: https://conda.anaconda.org/conda-forge/win-64/cmake-4.3.1-hdcbee5b_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/compiler-rt-20.1.8-h49e36cd_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_win-64-20.1.8-h49e36cd_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.22.2-h0ea6238_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libclang13-22.1.3-default_ha2db4b5_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.19.0-h8206538_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.7.5-hac47afa_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.5.2-h3d046cb_0.conda @@ -360,6 +386,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/ccache-4.13.2-hedf47ba_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-20-20.1.8-default_h99862b1_14.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-20.1.8-default_cfg_hcbb2b3e_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-format-20-20.1.8-default_h99862b1_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-format-20.1.8-default_h99862b1_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-tools-20.1.8-default_h57a47db_14.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/clang_impl_linux-64-20.1.8-default_cfg_h027053c_14.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/clangxx-20.1.8-default_cfg_hcbb2b3e_14.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/clangxx_impl_linux-64-20.1.8-default_cfg_h027053c_14.conda @@ -376,6 +405,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.22.2-ha1258a1_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45.1-default_hbd61a6d_102.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp20.1-20.1.8-default_h99862b1_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang13-22.1.3-default_h746c552_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.19.0-hcf29cc6_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20250104-pl5321h7949ede_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-hd590300_2.conda @@ -388,6 +418,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libhiredis-1.3.0-h5888daf_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.18-h3b78370_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm20-20.1.8-hf7376ad_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm22-22.1.3-hf7376ad_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.2-hb03c661_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libmpdec-4.0.0-hb03c661_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.68.1-h877daf1_0.conda @@ -426,6 +457,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cctools_impl_osx-arm64-1030.6.3-llvm20_1_hd60c58f_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-20-20.1.8-default_hf3020a7_14.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-20.1.8-default_cfg_hb78b91e_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-format-20-20.1.8-default_hf3020a7_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-format-20.1.8-default_hf3020a7_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-tools-20.1.8-default_h1589341_14.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang_impl_osx-arm64-20.1.8-default_cfg_h6e044b8_14.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clangxx-20.1.8-default_cfg_h170a469_14.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clangxx_impl_osx-arm64-20.1.8-default_cfg_h6e044b8_14.conda @@ -437,6 +471,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ld64-956.6-llvm20_1_hb625feb_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ld64_osx-arm64-956.6-llvm20_1_h4e43e91_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang-cpp20.1-20.1.8-default_hf3020a7_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang13-22.1.0-default_h13b06bd_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.19.0-hd5a2499_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-22.1.2-h55c6f16_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-devel-20.1.8-h6dc3340_3.conda @@ -448,6 +483,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libhiredis-1.3.0-h286801f_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libiconv-1.18-h23cfdf5_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm20-20.1.8-h8e0c9ce_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm22-22.1.3-h89af1be_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-5.8.2-h8088a28_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libmpdec-4.0.0-h84a0fba_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnghttp2-1.68.1-h8f3e76b_0.conda @@ -480,11 +516,14 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-h4c7d964_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/clang-20-20.1.8-default_hac490eb_14.conda - conda: https://conda.anaconda.org/conda-forge/win-64/clang-20.1.8-default_nocfg_hbb9487a_14.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/clang-format-20.1.8-default_hac490eb_14.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/clang-tools-20.1.8-default_hac490eb_14.conda - conda: https://conda.anaconda.org/conda-forge/win-64/clangxx-20.1.8-default_nocfg_hbb9487a_14.conda - conda: https://conda.anaconda.org/conda-forge/win-64/cmake-4.3.1-hdcbee5b_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/compiler-rt-20.1.8-h49e36cd_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_win-64-20.1.8-h49e36cd_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.22.2-h0ea6238_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libclang13-22.1.3-default_ha2db4b5_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.19.0-h8206538_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.7.5-hac47afa_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.5.2-h3d046cb_0.conda @@ -530,6 +569,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/ccache-4.13.2-hedf47ba_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-20-20.1.8-default_h99862b1_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-20.1.8-default_h36abe19_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-format-20-20.1.8-default_h99862b1_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-format-20.1.8-default_h99862b1_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-tools-20.1.8-default_h57a47db_14.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/clangxx-20.1.8-default_h363a0c9_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/cmake-4.2.1-hc85cc9f_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/compiler-rt-20.1.8-hb700be7_1.conda @@ -544,6 +586,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.21.3-h659f571_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45-default_hbd61a6d_105.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp20.1-20.1.8-default_h99862b1_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang13-22.1.0-default_h746c552_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.17.0-h4e3cde8_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20250104-pl5321h7949ede_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-hd590300_2.conda @@ -556,6 +599,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libhiredis-1.3.0-h5888daf_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.18-h3b78370_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm20-20.1.8-hf7376ad_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm22-22.1.1-hf7376ad_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.1-hb9d3cd8_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libmpdec-4.0.0-hb9d3cd8_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.67.0-had1ee68_0.conda @@ -593,7 +637,7 @@ environments: - pypi: https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/fd/1a/208293b6c350f5abea6941d5606080d4a492644052504f5312e5de30a902/pygls-2.1.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/f4/7e/a72dd26f3b0f4f2bf1dd8923c85f7ceb43172af56d63c7383eb62b332364/pygments-2.20.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/3b/ab/b3226f0bd7cdcf710fbede2b3548584366da3b19b5021e74f5bde2a8fa3f/pytest-9.0.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/d4/24/a372aaf5c9b7208e7112038812994107bc65a84cd00e0354a88c2c77a617/pytest-9.0.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e5/35/f8b19922b6a25bc0880171a2f1a003eaeb93657475193ab516fd87cac9da/pytest_asyncio-1.3.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl osx-arm64: @@ -603,6 +647,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ccache-4.13.2-h414bf82_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-20-20.1.8-default_h73dfc95_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-20.1.8-default_hf9bcbb7_5.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-format-20-20.1.8-default_hf3020a7_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-format-20.1.8-default_hf3020a7_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-tools-20.1.8-default_h1589341_14.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clangxx-20.1.8-default_h36137df_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cmake-4.2.1-h54ad630_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/compiler-rt-20.1.8-h855ad52_1.conda @@ -610,6 +657,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-78.1-h38cb7af_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.21.3-h237132a_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang-cpp20.1-20.1.8-default_h73dfc95_5.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang13-21.1.8-default_h13b06bd_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.17.0-hdece5d2_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-21.1.8-hf598326_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-devel-20.1.8-h6dc3340_3.conda @@ -621,6 +669,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libhiredis-1.3.0-h286801f_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libiconv-1.18-h23cfdf5_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm20-20.1.8-h8e0c9ce_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm21-21.1.8-h8e0c9ce_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-5.8.1-h39f12f2_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libmpdec-4.0.0-h5505292_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnghttp2-1.67.0-hc438710_0.conda @@ -652,7 +701,7 @@ environments: - pypi: https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/fd/1a/208293b6c350f5abea6941d5606080d4a492644052504f5312e5de30a902/pygls-2.1.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/f4/7e/a72dd26f3b0f4f2bf1dd8923c85f7ceb43172af56d63c7383eb62b332364/pygments-2.20.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/3b/ab/b3226f0bd7cdcf710fbede2b3548584366da3b19b5021e74f5bde2a8fa3f/pytest-9.0.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/d4/24/a372aaf5c9b7208e7112038812994107bc65a84cd00e0354a88c2c77a617/pytest-9.0.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e5/35/f8b19922b6a25bc0880171a2f1a003eaeb93657475193ab516fd87cac9da/pytest_asyncio-1.3.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl win-64: @@ -660,12 +709,15 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.11.12-h4c7d964_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/clang-20-20.1.8-default_hac490eb_5.conda - conda: https://conda.anaconda.org/conda-forge/win-64/clang-20.1.8-default_hac490eb_5.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/clang-format-20.1.8-default_hac490eb_14.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/clang-tools-20.1.8-default_hac490eb_14.conda - conda: https://conda.anaconda.org/conda-forge/win-64/clangxx-20.1.8-default_hac490eb_5.conda - conda: https://conda.anaconda.org/conda-forge/win-64/cmake-4.2.1-hdcbee5b_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/compiler-rt-20.1.8-h49e36cd_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_win-64-20.1.8-h49e36cd_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/icu-78.1-h637d24d_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.21.3-hdf4eb48_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libclang13-22.1.0-default_ha2db4b5_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.17.0-h43ecb02_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.7.3-hac47afa_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.5.2-h52bdfb6_0.conda @@ -702,7 +754,7 @@ environments: - pypi: https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/fd/1a/208293b6c350f5abea6941d5606080d4a492644052504f5312e5de30a902/pygls-2.1.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/f4/7e/a72dd26f3b0f4f2bf1dd8923c85f7ceb43172af56d63c7383eb62b332364/pygments-2.20.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/3b/ab/b3226f0bd7cdcf710fbede2b3548584366da3b19b5021e74f5bde2a8fa3f/pytest-9.0.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/d4/24/a372aaf5c9b7208e7112038812994107bc65a84cd00e0354a88c2c77a617/pytest-9.0.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e5/35/f8b19922b6a25bc0880171a2f1a003eaeb93657475193ab516fd87cac9da/pytest_asyncio-1.3.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl format: @@ -882,6 +934,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/ccache-4.13.2-hedf47ba_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-20-20.1.8-default_h99862b1_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-20.1.8-default_h36abe19_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-format-20-20.1.8-default_h99862b1_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-format-20.1.8-default_h99862b1_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-tools-20.1.8-default_h57a47db_14.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/clangxx-20.1.8-default_h363a0c9_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/cmake-4.2.1-hc85cc9f_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/compiler-rt-20.1.8-hb700be7_1.conda @@ -895,6 +950,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.21.3-h659f571_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45-default_hbd61a6d_104.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp20.1-20.1.8-default_h99862b1_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang13-22.1.0-default_h746c552_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.17.0-h4e3cde8_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20250104-pl5321h7949ede_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-hd590300_2.conda @@ -907,6 +963,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libhiredis-1.3.0-h5888daf_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.18-h3b78370_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm20-20.1.8-hf7376ad_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm22-22.1.1-hf7376ad_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.1-hb9d3cd8_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-devel-5.8.1-hb9d3cd8_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libmpdec-4.0.0-hb9d3cd8_0.conda @@ -948,7 +1005,7 @@ environments: - pypi: https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/fd/1a/208293b6c350f5abea6941d5606080d4a492644052504f5312e5de30a902/pygls-2.1.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/f4/7e/a72dd26f3b0f4f2bf1dd8923c85f7ceb43172af56d63c7383eb62b332364/pygments-2.20.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/3b/ab/b3226f0bd7cdcf710fbede2b3548584366da3b19b5021e74f5bde2a8fa3f/pytest-9.0.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/d4/24/a372aaf5c9b7208e7112038812994107bc65a84cd00e0354a88c2c77a617/pytest-9.0.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e5/35/f8b19922b6a25bc0880171a2f1a003eaeb93657475193ab516fd87cac9da/pytest_asyncio-1.3.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl osx-arm64: @@ -958,12 +1015,16 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ccache-4.13.2-h414bf82_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-20-20.1.8-default_h73dfc95_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-20.1.8-default_hf9bcbb7_5.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-format-20-20.1.8-default_hf3020a7_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-format-20.1.8-default_hf3020a7_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-tools-20.1.8-default_h1589341_14.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clangxx-20.1.8-default_h36137df_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cmake-4.2.1-h54ad630_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/compiler-rt-20.1.8-h855ad52_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_osx-arm64-20.1.8-he32a8d3_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.21.3-h237132a_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang-cpp20.1-20.1.8-default_h73dfc95_5.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang13-21.1.7-default_h13b06bd_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.17.0-hdece5d2_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-21.1.7-hf598326_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-devel-20.1.8-h6dc3340_3.conda @@ -975,6 +1036,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libhiredis-1.3.0-h286801f_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libiconv-1.18-h23cfdf5_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm20-20.1.8-h8e0c9ce_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm21-21.1.8-h8e0c9ce_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-5.8.1-h39f12f2_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-devel-5.8.1-h39f12f2_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libmpdec-4.0.0-h5505292_0.conda @@ -1010,7 +1072,7 @@ environments: - pypi: https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/fd/1a/208293b6c350f5abea6941d5606080d4a492644052504f5312e5de30a902/pygls-2.1.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/f4/7e/a72dd26f3b0f4f2bf1dd8923c85f7ceb43172af56d63c7383eb62b332364/pygments-2.20.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/3b/ab/b3226f0bd7cdcf710fbede2b3548584366da3b19b5021e74f5bde2a8fa3f/pytest-9.0.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/d4/24/a372aaf5c9b7208e7112038812994107bc65a84cd00e0354a88c2c77a617/pytest-9.0.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e5/35/f8b19922b6a25bc0880171a2f1a003eaeb93657475193ab516fd87cac9da/pytest_asyncio-1.3.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl win-64: @@ -1018,11 +1080,14 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.11.12-h4c7d964_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/clang-20-20.1.8-default_hac490eb_5.conda - conda: https://conda.anaconda.org/conda-forge/win-64/clang-20.1.8-default_hac490eb_5.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/clang-format-20.1.8-default_hac490eb_14.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/clang-tools-20.1.8-default_hac490eb_14.conda - conda: https://conda.anaconda.org/conda-forge/win-64/clangxx-20.1.8-default_hac490eb_5.conda - conda: https://conda.anaconda.org/conda-forge/win-64/cmake-4.2.1-hdcbee5b_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/compiler-rt-20.1.8-h49e36cd_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_win-64-20.1.8-h49e36cd_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.21.3-hdf4eb48_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libclang13-22.1.0-default_ha2db4b5_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.17.0-h43ecb02_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.7.3-hac47afa_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.5.2-h52bdfb6_0.conda @@ -1062,7 +1127,7 @@ environments: - pypi: https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/fd/1a/208293b6c350f5abea6941d5606080d4a492644052504f5312e5de30a902/pygls-2.1.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/f4/7e/a72dd26f3b0f4f2bf1dd8923c85f7ceb43172af56d63c7383eb62b332364/pygments-2.20.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/3b/ab/b3226f0bd7cdcf710fbede2b3548584366da3b19b5021e74f5bde2a8fa3f/pytest-9.0.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/d4/24/a372aaf5c9b7208e7112038812994107bc65a84cd00e0354a88c2c77a617/pytest-9.0.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e5/35/f8b19922b6a25bc0880171a2f1a003eaeb93657475193ab516fd87cac9da/pytest_asyncio-1.3.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl packages: @@ -1513,6 +1578,21 @@ packages: purls: [] size: 73427981 timestamp: 1764398987103 +- conda: https://conda.anaconda.org/conda-forge/linux-64/clang-format-20.1.8-default_h99862b1_14.conda + sha256: b58148bb200231f21a0a78e90456414be7de8dd4fc115ebdf6e9d808d151e9e6 + md5: de9baf19d75c9ca7b4e88f5609db0347 + depends: + - __glibc >=2.17,<3.0.a0 + - clang-format-20 20.1.8 default_h99862b1_14 + - libclang-cpp20.1 >=20.1.8,<20.2.0a0 + - libgcc >=14 + - libllvm20 >=20.1.8,<20.2.0a0 + - libstdcxx >=14 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 71009 + timestamp: 1773111214926 - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-format-21.1.7-default_h99862b1_2.conda sha256: 8a9c2e0df0fd55da3ea9352fc356d1ca9d9312bbf275e1a5e22552bfb63affb9 md5: 8e0b6ced8948217e4748ad0c26f8df4d @@ -1527,6 +1607,20 @@ packages: license_family: Apache size: 27733 timestamp: 1766016586518 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-format-20.1.8-default_hf3020a7_14.conda + sha256: 0967d59e8a89c5f9c1cfa3579403ee3295f5770c01b308c9abb434df47acc5db + md5: 86639340249e4d8fa1b37ab92e581d26 + depends: + - __osx >=11.0 + - clang-format-20 20.1.8 default_hf3020a7_14 + - libclang-cpp20.1 >=20.1.8,<20.2.0a0 + - libcxx >=20.1.8 + - libllvm20 >=20.1.8,<20.2.0a0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 71355 + timestamp: 1773110589745 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-format-21.1.7-default_hf3020a7_2.conda sha256: 2b91ed7e567a1618fd342100ba43bcd670bff8a1183a5c65032cefc0a436d3d6 md5: 37585890edaa4842a62037a7fa6e1e64 @@ -1540,6 +1634,18 @@ packages: license_family: Apache size: 28328 timestamp: 1766167306042 +- conda: https://conda.anaconda.org/conda-forge/win-64/clang-format-20.1.8-default_hac490eb_14.conda + sha256: 7c657222c2b310387e11a316bf835910181c04ed54f2e35e28885cc5423c8496 + md5: 188355e2c07643a0232b9b817c230a36 + depends: + - ucrt >=10.0.20348.0 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 1265666 + timestamp: 1773142030144 - conda: https://conda.anaconda.org/conda-forge/win-64/clang-format-21.1.7-default_hac490eb_2.conda sha256: afa22671525e890a98445d1c2abc35e8b87c4c208d053e6527c5d2cbf6f7c938 md5: 8afc1288250ef6c77e8f7aa0df683a65 @@ -1551,6 +1657,33 @@ packages: license_family: Apache size: 1233929 timestamp: 1766022144370 +- conda: https://conda.anaconda.org/conda-forge/linux-64/clang-format-20-20.1.8-default_h99862b1_14.conda + sha256: 17b84830ca43b9db271b50d8474a4231204321016f9ff5c2c690dddeb0d66f28 + md5: 55910d2902458004d9c4e443648c5841 + depends: + - __glibc >=2.17,<3.0.a0 + - libclang-cpp20.1 >=20.1.8,<20.2.0a0 + - libgcc >=14 + - libllvm20 >=20.1.8,<20.2.0a0 + - libstdcxx >=14 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 114295 + timestamp: 1773111143555 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-format-20-20.1.8-default_hf3020a7_14.conda + sha256: 52f77009e2f69db348c10cb20371e0b1bf6f49e2e91e026d5fb93addc6526ef6 + md5: 2250c216f6da8f1f875f2b6a794d5e67 + depends: + - __osx >=11.0 + - libclang-cpp20.1 >=20.1.8,<20.2.0a0 + - libcxx >=20.1.8 + - libllvm20 >=20.1.8,<20.2.0a0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 108365 + timestamp: 1773110420001 - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-format-21-21.1.7-default_h99862b1_2.conda sha256: 4d360c464ddab6c47c8fceca87b625b58d6a3b3cd523958a314e8db7d5f4eb94 md5: 5589c06b39ae5be8aca4d16e28a43518 @@ -1576,6 +1709,65 @@ packages: license_family: Apache size: 65217 timestamp: 1766167190049 +- conda: https://conda.anaconda.org/conda-forge/linux-64/clang-tools-20.1.8-default_h57a47db_14.conda + sha256: 565bbd489160501c5374fe346dca83a6ec4dac23aecc5bc48c276fe47ca2c263 + md5: 897e3de8e6310eb23d01004907520513 + depends: + - __glibc >=2.17,<3.0.a0 + - clang-format 20.1.8 default_h99862b1_14 + - libclang-cpp20.1 >=20.1.8,<20.2.0a0 + - libclang13 >=20.1.8 + - libgcc >=14 + - libllvm20 >=20.1.8,<20.2.0a0 + - libstdcxx >=14 + - libxml2 + - libxml2-16 >=2.14.6 + constrains: + - clangdev 20.1.8 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 21897132 + timestamp: 1773111341498 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-tools-20.1.8-default_h1589341_14.conda + sha256: 372c9e722fd99e42838528d33148ca1fa7dd84a02cf06ac7d291657f657e7026 + md5: 8a25b0558245abf052a89a38eb8dbb58 + depends: + - __osx >=11.0 + - clang-format 20.1.8 default_hf3020a7_14 + - libclang-cpp20.1 >=20.1.8,<20.2.0a0 + - libclang13 >=20.1.8 + - libcxx >=20.1.8 + - libllvm20 >=20.1.8,<20.2.0a0 + - libxml2 + - libxml2-16 >=2.14.6 + constrains: + - clangdev 20.1.8 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 14941399 + timestamp: 1773110809290 +- conda: https://conda.anaconda.org/conda-forge/win-64/clang-tools-20.1.8-default_hac490eb_14.conda + sha256: 25b5962d5e46c01edd9e91b0092a1cbe840276cfce6e0ccd8752ff9d21deb0fb + md5: 7f081578424e00ff4724ded6228f1be8 + depends: + - clang-format 20.1.8 default_hac490eb_14 + - libclang13 >=20.1.8 + - libxml2 + - libxml2-16 >=2.14.6 + - libzlib >=1.3.1,<2.0a0 + - ucrt >=10.0.20348.0 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + - zstd >=1.5.7,<1.6.0a0 + constrains: + - clangdev 20.1.8 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 319341053 + timestamp: 1773142869937 - conda: https://conda.anaconda.org/conda-forge/linux-64/clang_impl_linux-64-20.1.8-default_cfg_h027053c_14.conda sha256: 8df1db031e9d34f86040cf49595bd1debf3fbe2b9c6a5386148e269412faafbd md5: 47da9203dde46c589423f45fbf85e2a8 @@ -2436,6 +2628,93 @@ packages: license_family: Apache size: 13672685 timestamp: 1766166376555 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libclang13-22.1.0-default_h746c552_0.conda + sha256: 4a9dd814492a129f2ff40cd4ab0b942232c9e3c6dbc0d0aaf861f1f65e99cc7d + md5: 140459a7413d8f6884eb68205ce39a0d + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=14 + - libllvm22 >=22.1.0,<22.2.0a0 + - libstdcxx >=14 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 12817500 + timestamp: 1772101411287 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libclang13-22.1.3-default_h746c552_0.conda + sha256: 485de0c70865eb489d819defea714187c84502e3c50a511173d62135b8cef12f + md5: 9b47a4cd3aabb73201a2b8ed9f127189 + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=14 + - libllvm22 >=22.1.3,<22.2.0a0 + - libstdcxx >=14 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + size: 12822776 + timestamp: 1775789745068 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang13-21.1.7-default_h13b06bd_4.conda + sha256: ed55559f8af599838de775c099fbf644c19d1720b9f57064a2abb0ab2ff99765 + md5: e886d09eb4ae02f446edd4c32c351ca6 + depends: + - __osx >=11.0 + - libcxx >=21.1.7 + - libllvm21 >=21.1.7,<21.2.0a0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 8517139 + timestamp: 1767751023683 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang13-21.1.8-default_h13b06bd_3.conda + sha256: dc803069f4001aae4bdd6069af20140785a9c1a0c9abe6a3704e0ef87ad0f4c2 + md5: d111e982033ec02a55845e994a6db09a + depends: + - __osx >=11.0 + - libcxx >=21.1.8 + - libllvm21 >=21.1.8,<21.2.0a0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 8516482 + timestamp: 1771032974531 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang13-22.1.0-default_h13b06bd_0.conda + sha256: 1f9195e2f9be884880b3d119be6eaea4b8f57d399b49e78a9718071ecee1cc29 + md5: 64ecee538edc16caf5717f3c2d6d8545 + depends: + - __osx >=11.0 + - libcxx >=22.1.0 + - libllvm22 >=22.1.0,<22.2.0a0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + size: 8934812 + timestamp: 1772098474633 +- conda: https://conda.anaconda.org/conda-forge/win-64/libclang13-22.1.0-default_ha2db4b5_0.conda + sha256: c8e34362c6bf7305ef50f0de4e16292cd97e31650ab6465282eeeac62f0a05c4 + md5: 7ad437870ea7d487e1b0e663503b6b1d + depends: + - libzlib >=1.3.1,<2.0a0 + - ucrt >=10.0.20348.0 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + - zstd >=1.5.7,<1.6.0a0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 30584641 + timestamp: 1772353741135 +- conda: https://conda.anaconda.org/conda-forge/win-64/libclang13-22.1.3-default_ha2db4b5_0.conda + sha256: 78243c98e6cbf86f901012f78a305356fadd960c046c661229184d621b2ff7e7 + md5: deb5befa374fcbc9ec2534c8467b0a6b + depends: + - libzlib >=1.3.2,<2.0a0 + - ucrt >=10.0.20348.0 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + - zstd >=1.5.7,<1.6.0a0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + size: 30490578 + timestamp: 1775788007988 - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.17.0-h4e3cde8_1.conda sha256: 2d7be2fe0f58a0945692abee7bb909f8b19284b518d958747e5ff51d0655c303 md5: 117499f93e892ea1e57fdca16c2e8351 @@ -2971,8 +3250,54 @@ packages: - zstd >=1.5.7,<1.6.0a0 license: Apache-2.0 WITH LLVM-exception license_family: Apache + purls: [] size: 29398498 timestamp: 1765924904821 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm22-22.1.1-hf7376ad_0.conda + sha256: 1145f9e85f0fbbdba88f1da5c8c48672bee7702e2f40c563b2dd48350ab4d413 + md5: 97cc6dad22677304846a798c8a65064d + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=14 + - libstdcxx >=14 + - libxml2 + - libxml2-16 >=2.14.6 + - libzlib >=1.3.1,<2.0a0 + - zstd >=1.5.7,<1.6.0a0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 44256563 + timestamp: 1773371774629 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm22-22.1.3-hf7376ad_0.conda + sha256: ad732019e8dd963efb5a54b5ff49168f191246bc418c3033762b6e8cb64b530c + md5: aeb186f7165bf287495a267fa8ff4129 + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=14 + - libstdcxx >=14 + - libxml2 + - libxml2-16 >=2.14.6 + - libzlib >=1.3.2,<2.0a0 + - zstd >=1.5.7,<1.6.0a0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + size: 44235531 + timestamp: 1775641389057 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm22-22.1.3-h89af1be_0.conda + sha256: 009519933ac584e828c32adeb963f236f912ab66aa688ecf9b723921001ae691 + md5: 34579e09a78af20b408bd9dda75084bb + depends: + - __osx >=11.0 + - libcxx >=19 + - libxml2 + - libxml2-16 >=2.14.6 + - libzlib >=1.3.2,<2.0a0 + - zstd >=1.5.7,<1.6.0a0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + size: 30043021 + timestamp: 1775645036351 - conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.1-hb9d3cd8_2.conda sha256: f2591c0069447bbe28d4d696b7fcb0c5bd0b4ac582769b89addbcf26fb3430d8 md5: 1a580f7796c7bf6393fddb8bbbde58dc @@ -4399,10 +4724,10 @@ packages: requires_dist: - colorama>=0.4.6 ; extra == 'windows-terminal' requires_python: '>=3.9' -- pypi: https://files.pythonhosted.org/packages/3b/ab/b3226f0bd7cdcf710fbede2b3548584366da3b19b5021e74f5bde2a8fa3f/pytest-9.0.2-py3-none-any.whl +- pypi: https://files.pythonhosted.org/packages/d4/24/a372aaf5c9b7208e7112038812994107bc65a84cd00e0354a88c2c77a617/pytest-9.0.3-py3-none-any.whl name: pytest - version: 9.0.2 - sha256: 711ffd45bf766d5264d487b917733b453d917afd2b0ad65223959f59089f875b + version: 9.0.3 + sha256: 2c5efc453d45394fdd706ade797c0a81091eccd1d6e4bccfcd476e2b8e0ab5d9 requires_dist: - colorama>=0.4 ; sys_platform == 'win32' - exceptiongroup>=1 ; python_full_version < '3.11' From 32bb87990a5eba1ff695daa58f8309b522567f35 Mon Sep 17 00:00:00 2001 From: ykiko Date: Sun, 12 Apr 2026 19:43:58 +0800 Subject: [PATCH 13/52] style: fix ruff formatting in validate-llvm-components.py Co-Authored-By: Claude Opus 4.6 --- scripts/validate-llvm-components.py | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/scripts/validate-llvm-components.py b/scripts/validate-llvm-components.py index 85e6d04fc..a50a7a426 100755 --- a/scripts/validate-llvm-components.py +++ b/scripts/validate-llvm-components.py @@ -129,7 +129,9 @@ def main() -> None: missing: list[tuple[str, list[str]]] = [] for name in components: if name not in source_targets: - suggestions = difflib.get_close_matches(name, source_targets, n=3, cutoff=0.6) + suggestions = difflib.get_close_matches( + name, source_targets, n=3, cutoff=0.6 + ) missing.append((name, suggestions)) if missing: @@ -144,11 +146,11 @@ def main() -> None: component_set = set(components) new_targets = sorted(source_targets - component_set - KNOWN_HEADER_TARGETS) # Filter to targets that follow LLVM/Clang naming conventions to reduce noise. - noteworthy = [ - t for t in new_targets if t.startswith(("LLVM", "clang", "Clang")) - ] + noteworthy = [t for t in new_targets if t.startswith(("LLVM", "clang", "Clang"))] if noteworthy: - print(f"\nWarning: {len(noteworthy)} target(s) in source not listed in components:") + print( + f"\nWarning: {len(noteworthy)} target(s) in source not listed in components:" + ) for name in noteworthy: print(f" + {name}") From 0bbde181a5ba3b41688aac1e98a2f2a69e9f060e Mon Sep 17 00:00:00 2001 From: ykiko Date: Sun, 12 Apr 2026 19:47:31 +0800 Subject: [PATCH 14/52] style: fix ruff formatting in setup-llvm.py Co-Authored-By: Claude Opus 4.6 --- scripts/setup-llvm.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/scripts/setup-llvm.py b/scripts/setup-llvm.py index 60fa97110..4fe2f315c 100644 --- a/scripts/setup-llvm.py +++ b/scripts/setup-llvm.py @@ -264,7 +264,10 @@ def main() -> None: parser.add_argument("--install-path") parser.add_argument("--enable-lto", action="store_true") parser.add_argument("--offline", action="store_true") - parser.add_argument("--target-platform", help="Override platform for cross-compilation (e.g. macosx, linux, windows)") + parser.add_argument( + "--target-platform", + help="Override platform for cross-compilation (e.g. macosx, linux, windows)", + ) parser.add_argument("--output", required=True) args = parser.parse_args() From 7319f4445a79a0bb79f9edebb1218f2969dfcf7a Mon Sep 17 00:00:00 2001 From: ykiko Date: Sun, 12 Apr 2026 20:27:38 +0800 Subject: [PATCH 15/52] fix: scan add_library patterns for resource header targets LLVM 21.1.8 changed clang-resource-headers from add_custom_target to add_library(... INTERFACE ...). Add add_library pattern to header scanning so the validation script can detect it. Co-Authored-By: Claude Opus 4.6 --- scripts/validate-llvm-components.py | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/validate-llvm-components.py b/scripts/validate-llvm-components.py index a50a7a426..aa341f73e 100755 --- a/scripts/validate-llvm-components.py +++ b/scripts/validate-llvm-components.py @@ -30,6 +30,7 @@ HEADER_PATTERNS = [ re.compile(r"add_llvm_install_targets\(\s*([^\s)]+)"), re.compile(r"add_custom_target\(\s*([^\s)]+)"), + re.compile(r"add_library\(\s*([^\s)]+)"), ] # Targets we recognise as header-only distribution components. From 7d5f5ad08d7a90e7ea838593502b49ccfa345291 Mon Sep 17 00:00:00 2001 From: ykiko Date: Sun, 12 Apr 2026 23:13:42 +0800 Subject: [PATCH 16/52] feat: add skip_pr input to build-llvm workflow Allow uploading artifacts to clice-llvm without creating a PR to update the clice repo. Co-Authored-By: Claude Opus 4.6 --- .github/workflows/build-llvm.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.github/workflows/build-llvm.yml b/.github/workflows/build-llvm.yml index 1f3aa4c36..95520d965 100644 --- a/.github/workflows/build-llvm.yml +++ b/.github/workflows/build-llvm.yml @@ -12,6 +12,11 @@ on: required: false type: boolean default: false + skip_pr: + description: "Skip PR creation (upload only, no PR)" + required: false + type: boolean + default: false pull_request: # if you want to run this workflow, change the branch name to main, # if you want to turn off it, change it to non existent branch. @@ -317,6 +322,7 @@ jobs: # ── Auto-create PR to update clice LLVM dependency ────────────────────── update-clice: needs: upload + if: ${{ !inputs.skip_pr }} runs-on: ubuntu-24.04 permissions: contents: write From 0dc62d02271e27d96a1b8829a8a3cc7bd8dcb041 Mon Sep 17 00:00:00 2001 From: ykiko Date: Mon, 13 Apr 2026 09:14:14 +0800 Subject: [PATCH 17/52] feat: add arch field to LLVM manifest for cross-compile support Add architecture (x64/arm64) field to manifest entries so that pick_artifact can correctly select the right artifact when multiple architectures exist for the same platform. Update setup-llvm.py with --target-arch argument and cmake/llvm.cmake to pass it from CLICE_TARGET_TRIPLE. Co-Authored-By: Claude Opus 4.6 --- cmake/llvm.cmake | 6 ++ config/llvm-manifest.json | 143 +++++++++++++++++++++++++++++++++++++- scripts/setup-llvm.py | 45 ++++++++++-- scripts/upload-llvm.py | 10 +++ 4 files changed, 198 insertions(+), 6 deletions(-) diff --git a/cmake/llvm.cmake b/cmake/llvm.cmake index 3aa24b451..694857ef5 100644 --- a/cmake/llvm.cmake +++ b/cmake/llvm.cmake @@ -33,6 +33,12 @@ function(setup_llvm LLVM_VERSION) elseif(CLICE_TARGET_TRIPLE MATCHES "windows") list(APPEND LLVM_SETUP_ARGS "--target-platform" "Windows") endif() + + if(CLICE_TARGET_TRIPLE MATCHES "^aarch64") + list(APPEND LLVM_SETUP_ARGS "--target-arch" "arm64") + elseif(CLICE_TARGET_TRIPLE MATCHES "^x86_64") + list(APPEND LLVM_SETUP_ARGS "--target-arch" "x64") + endif() endif() execute_process( diff --git a/config/llvm-manifest.json b/config/llvm-manifest.json index fe51488c7..7e1e321b8 100644 --- a/config/llvm-manifest.json +++ b/config/llvm-manifest.json @@ -1 +1,142 @@ -[] +[ + { + "version": "21.1.8", + "filename": "aarch64-linux-gnu-releasedbg-lto.tar.xz", + "sha256": "41519a1e238afa67eb7bf75181265c816bbd51c5bd9b8bbd88ae889403efd128", + "lto": true, + "asan": false, + "platform": "linux", + "build_type": "RelWithDebInfo", + "arch": "arm64" + }, + { + "version": "21.1.8", + "filename": "aarch64-linux-gnu-releasedbg.tar.xz", + "sha256": "dd22285b87570b8e83bb5119d319827b51ef82aab166f348aacc7e25c4479889", + "lto": false, + "asan": false, + "platform": "linux", + "build_type": "RelWithDebInfo", + "arch": "arm64" + }, + { + "version": "21.1.8", + "filename": "aarch64-windows-msvc-releasedbg-lto.tar.xz", + "sha256": "1cf598277354efdd839ee6cd826824ef2afb26e334fb32bbc8e48c49c6acb742", + "lto": true, + "asan": false, + "platform": "windows", + "build_type": "RelWithDebInfo", + "arch": "arm64" + }, + { + "version": "21.1.8", + "filename": "aarch64-windows-msvc-releasedbg.tar.xz", + "sha256": "8f91b0a2a2895654feaebb7c9b24a6624662552ea51c6bb5eeb658dbaa0ff5a1", + "lto": false, + "asan": false, + "platform": "windows", + "build_type": "RelWithDebInfo", + "arch": "arm64" + }, + { + "version": "21.1.8", + "filename": "arm64-macos-clang-debug-asan.tar.xz", + "sha256": "c6b70f141f0fc21eaf20ccbeb5ae101c08f8c19749e3d11e239af80d2c9e83ff", + "lto": false, + "asan": true, + "platform": "macosx", + "build_type": "Debug", + "arch": "arm64" + }, + { + "version": "21.1.8", + "filename": "arm64-macos-clang-releasedbg-lto.tar.xz", + "sha256": "48cab8a3842dde154f271ad4cd782b02cda237cc84b87b261395eea810d6dbde", + "lto": true, + "asan": false, + "platform": "macosx", + "build_type": "RelWithDebInfo", + "arch": "arm64" + }, + { + "version": "21.1.8", + "filename": "arm64-macos-clang-releasedbg.tar.xz", + "sha256": "1c640714dc7d4ef8a34d6786d50d3149d4458802af32ccbcf64ec1ea53e83ed0", + "lto": false, + "asan": false, + "platform": "macosx", + "build_type": "RelWithDebInfo", + "arch": "arm64" + }, + { + "version": "21.1.8", + "filename": "x64-linux-gnu-debug-asan.tar.xz", + "sha256": "64ebfc3ecf4117b6fdd467d5f9bcd5a2030bb408c70415ed40bf99f35311a6b0", + "lto": false, + "asan": true, + "platform": "linux", + "build_type": "Debug", + "arch": "x64" + }, + { + "version": "21.1.8", + "filename": "x64-linux-gnu-releasedbg-lto.tar.xz", + "sha256": "af8f97fbb57999aedd37a5e7c20d89499bf6518c6a0b5e83e18e6677a075fe71", + "lto": true, + "asan": false, + "platform": "linux", + "build_type": "RelWithDebInfo", + "arch": "x64" + }, + { + "version": "21.1.8", + "filename": "x64-linux-gnu-releasedbg.tar.xz", + "sha256": "cdcd5312c6eba9295a05a68cd09559c4616ae0456550f7a64ed8fa15d283285b", + "lto": false, + "asan": false, + "platform": "linux", + "build_type": "RelWithDebInfo", + "arch": "x64" + }, + { + "version": "21.1.8", + "filename": "x64-macos-clang-releasedbg-lto.tar.xz", + "sha256": "543db4d7fcd81d127c8f9ad33e359ecba442549da6d63d80e564710049ae2f08", + "lto": true, + "asan": false, + "platform": "macosx", + "build_type": "RelWithDebInfo", + "arch": "x64" + }, + { + "version": "21.1.8", + "filename": "x64-macos-clang-releasedbg.tar.xz", + "sha256": "2193ade0b1e123f835b782488f31262a2f9ef541cf0f0f0125b190e08b721a29", + "lto": false, + "asan": false, + "platform": "macosx", + "build_type": "RelWithDebInfo", + "arch": "x64" + }, + { + "version": "21.1.8", + "filename": "x64-windows-msvc-releasedbg-lto.tar.xz", + "sha256": "bf131c12c1ae87ffe3b7f87c424d7c2e628e63f591cb3505e901cf4c5ba0474b", + "lto": true, + "asan": false, + "platform": "windows", + "build_type": "RelWithDebInfo", + "arch": "x64" + }, + { + "version": "21.1.8", + "filename": "x64-windows-msvc-releasedbg.tar.xz", + "sha256": "6dddec41a7960c9409516a46ca9d48d30f85adf948362e61ff37dd55ecf17568", + "lto": false, + "asan": false, + "platform": "windows", + "build_type": "RelWithDebInfo", + "arch": "x64" + } +] diff --git a/scripts/setup-llvm.py b/scripts/setup-llvm.py index 4fe2f315c..caff39903 100644 --- a/scripts/setup-llvm.py +++ b/scripts/setup-llvm.py @@ -40,8 +40,24 @@ def detect_platform() -> str: raise RuntimeError(f"Unsupported platform: {plat}") +def detect_arch() -> str: + import platform + + machine = platform.machine().lower() + if machine in ("x86_64", "amd64"): + return "x64" + if machine in ("aarch64", "arm64"): + return "arm64" + raise RuntimeError(f"Unsupported architecture: {machine}") + + def pick_artifact( - manifest: list[dict], version: str, build_type: str, is_lto: bool, platform: str + manifest: list[dict], + version: str, + build_type: str, + is_lto: bool, + platform: str, + arch: str, ) -> dict: base_version = version.split("+", 1)[0] for entry in manifest: @@ -49,6 +65,8 @@ def pick_artifact( continue if entry.get("platform") != platform.lower(): continue + if entry.get("arch") != arch: + continue if entry.get("build_type") != build_type: continue if bool(entry.get("lto")) != is_lto: @@ -56,7 +74,7 @@ def pick_artifact( return entry raise RuntimeError( f"No matching LLVM artifact in manifest for version={base_version}, platform={platform}, " - f"build_type={build_type}, lto={is_lto}" + f"arch={arch}, build_type={build_type}, lto={is_lto}" ) @@ -268,6 +286,10 @@ def main() -> None: "--target-platform", help="Override platform for cross-compilation (e.g. macosx, linux, windows)", ) + parser.add_argument( + "--target-arch", + help="Override architecture for cross-compilation (e.g. x64, arm64)", + ) parser.add_argument("--output", required=True) args = parser.parse_args() @@ -280,7 +302,10 @@ def main() -> None: token = os.environ.get("GH_TOKEN") or os.environ.get("GITHUB_TOKEN") build_type = args.build_type platform_name = args.target_platform if args.target_platform else detect_platform() - log(f"Platform: {platform_name}, normalized build type: {build_type}") + arch_name = args.target_arch if args.target_arch else detect_arch() + log( + f"Platform: {platform_name}, arch: {arch_name}, normalized build type: {build_type}" + ) manifest = read_manifest(Path(args.manifest)) binary_dir = Path(args.binary_dir).resolve() @@ -308,7 +333,12 @@ def main() -> None: if install_path is None: needs_install = True artifact = pick_artifact( - manifest, args.version, build_type, args.enable_lto, platform_name + manifest, + args.version, + build_type, + args.enable_lto, + platform_name, + arch_name, ) log(f"Selected artifact: {artifact.get('filename')} for download") filename = artifact["filename"] @@ -321,7 +351,12 @@ def main() -> None: install_path = install_root elif needs_install: artifact = pick_artifact( - manifest, args.version, build_type, args.enable_lto, platform_name + manifest, + args.version, + build_type, + args.enable_lto, + platform_name, + arch_name, ) log(f"Selected artifact: {artifact.get('filename')} for download") filename = artifact["filename"] diff --git a/scripts/upload-llvm.py b/scripts/upload-llvm.py index 6d9db0f40..5a0db3e5d 100644 --- a/scripts/upload-llvm.py +++ b/scripts/upload-llvm.py @@ -27,6 +27,15 @@ def parse_platform(name: str) -> str: raise ValueError(f"Unable to determine platform from filename: {name}") +def parse_arch(name: str) -> str: + lowered = name.lower() + if lowered.startswith("aarch64-") or lowered.startswith("arm64-"): + return "arm64" + if lowered.startswith("x64-") or lowered.startswith("x86_64-"): + return "x64" + raise ValueError(f"Unable to determine arch from filename: {name}") + + def parse_build_type(name: str) -> str: lowered = name.lower() if "debug" in lowered: @@ -43,6 +52,7 @@ def build_metadata_entry(path: Path, version: str) -> dict: "lto": "-lto" in filename.lower(), "asan": "-asan" in filename.lower(), "platform": parse_platform(filename), + "arch": parse_arch(filename), "build_type": parse_build_type(filename), } From 34c13b0b487df41ed0adaff654693034ed5bd422 Mon Sep 17 00:00:00 2001 From: ykiko Date: Mon, 13 Apr 2026 09:22:33 +0800 Subject: [PATCH 18/52] fix: restore LLVM version to 21.1.4+r1 and add Windows Debug build Revert to 21.1.4+r1 for this PR (version upgrade should come via the automated workflow). Add missing Windows Debug entry to build-llvm matrix. Manifest now includes arch field for all entries. Co-Authored-By: Claude Opus 4.6 --- .github/workflows/build-llvm.yml | 3 + cmake/package.cmake | 2 +- config/llvm-manifest.json | 94 ++++++++------------------------ 3 files changed, 26 insertions(+), 73 deletions(-) diff --git a/.github/workflows/build-llvm.yml b/.github/workflows/build-llvm.yml index 95520d965..163c12eda 100644 --- a/.github/workflows/build-llvm.yml +++ b/.github/workflows/build-llvm.yml @@ -29,6 +29,9 @@ jobs: matrix: include: # ── Native builds ────────────────────────────────────────────── + - os: windows-2025 + llvm_mode: Debug + lto: OFF - os: windows-2025 llvm_mode: RelWithDebInfo lto: OFF diff --git a/cmake/package.cmake b/cmake/package.cmake index c056e75df..593449bc5 100644 --- a/cmake/package.cmake +++ b/cmake/package.cmake @@ -1,7 +1,7 @@ include_guard() include(${CMAKE_CURRENT_LIST_DIR}/llvm.cmake) -setup_llvm("21.1.8") +setup_llvm("21.1.4+r1") # install dependencies include(FetchContent) diff --git a/config/llvm-manifest.json b/config/llvm-manifest.json index 7e1e321b8..d0531c9cc 100644 --- a/config/llvm-manifest.json +++ b/config/llvm-manifest.json @@ -1,48 +1,8 @@ [ { - "version": "21.1.8", - "filename": "aarch64-linux-gnu-releasedbg-lto.tar.xz", - "sha256": "41519a1e238afa67eb7bf75181265c816bbd51c5bd9b8bbd88ae889403efd128", - "lto": true, - "asan": false, - "platform": "linux", - "build_type": "RelWithDebInfo", - "arch": "arm64" - }, - { - "version": "21.1.8", - "filename": "aarch64-linux-gnu-releasedbg.tar.xz", - "sha256": "dd22285b87570b8e83bb5119d319827b51ef82aab166f348aacc7e25c4479889", - "lto": false, - "asan": false, - "platform": "linux", - "build_type": "RelWithDebInfo", - "arch": "arm64" - }, - { - "version": "21.1.8", - "filename": "aarch64-windows-msvc-releasedbg-lto.tar.xz", - "sha256": "1cf598277354efdd839ee6cd826824ef2afb26e334fb32bbc8e48c49c6acb742", - "lto": true, - "asan": false, - "platform": "windows", - "build_type": "RelWithDebInfo", - "arch": "arm64" - }, - { - "version": "21.1.8", - "filename": "aarch64-windows-msvc-releasedbg.tar.xz", - "sha256": "8f91b0a2a2895654feaebb7c9b24a6624662552ea51c6bb5eeb658dbaa0ff5a1", - "lto": false, - "asan": false, - "platform": "windows", - "build_type": "RelWithDebInfo", - "arch": "arm64" - }, - { - "version": "21.1.8", + "version": "21.1.4+r1", "filename": "arm64-macos-clang-debug-asan.tar.xz", - "sha256": "c6b70f141f0fc21eaf20ccbeb5ae101c08f8c19749e3d11e239af80d2c9e83ff", + "sha256": "7da4b7d63edefecaf11773e7e701c575140d1a07329bbbb038673b6ee4516ff5", "lto": false, "asan": true, "platform": "macosx", @@ -50,9 +10,9 @@ "arch": "arm64" }, { - "version": "21.1.8", + "version": "21.1.4+r1", "filename": "arm64-macos-clang-releasedbg-lto.tar.xz", - "sha256": "48cab8a3842dde154f271ad4cd782b02cda237cc84b87b261395eea810d6dbde", + "sha256": "300455b169448f9f01ae95e3bc269f489558a4ca3955e3032171cc75feca0e30", "lto": true, "asan": false, "platform": "macosx", @@ -60,9 +20,9 @@ "arch": "arm64" }, { - "version": "21.1.8", + "version": "21.1.4+r1", "filename": "arm64-macos-clang-releasedbg.tar.xz", - "sha256": "1c640714dc7d4ef8a34d6786d50d3149d4458802af32ccbcf64ec1ea53e83ed0", + "sha256": "9abfc6cd65b957d734ffb97610a634fb4a66d3fbe0fcfb5a1c9124ef693c1495", "lto": false, "asan": false, "platform": "macosx", @@ -70,9 +30,9 @@ "arch": "arm64" }, { - "version": "21.1.8", + "version": "21.1.4+r1", "filename": "x64-linux-gnu-debug-asan.tar.xz", - "sha256": "64ebfc3ecf4117b6fdd467d5f9bcd5a2030bb408c70415ed40bf99f35311a6b0", + "sha256": "c1ad3ec476911596a842ac67dd9c9c9475ce9f0a77b81101d3c801840292e7bc", "lto": false, "asan": true, "platform": "linux", @@ -80,9 +40,9 @@ "arch": "x64" }, { - "version": "21.1.8", + "version": "21.1.4+r1", "filename": "x64-linux-gnu-releasedbg-lto.tar.xz", - "sha256": "af8f97fbb57999aedd37a5e7c20d89499bf6518c6a0b5e83e18e6677a075fe71", + "sha256": "8a869c2184d139dbba704e2d712e7a68336458ad2d70622b3eb906c3e3511e54", "lto": true, "asan": false, "platform": "linux", @@ -90,9 +50,9 @@ "arch": "x64" }, { - "version": "21.1.8", + "version": "21.1.4+r1", "filename": "x64-linux-gnu-releasedbg.tar.xz", - "sha256": "cdcd5312c6eba9295a05a68cd09559c4616ae0456550f7a64ed8fa15d283285b", + "sha256": "552bab86f715d4f2c027f07eaaf5b3d6b8e430af0b74b470142f3f00da4feec6", "lto": false, "asan": false, "platform": "linux", @@ -100,29 +60,19 @@ "arch": "x64" }, { - "version": "21.1.8", - "filename": "x64-macos-clang-releasedbg-lto.tar.xz", - "sha256": "543db4d7fcd81d127c8f9ad33e359ecba442549da6d63d80e564710049ae2f08", - "lto": true, - "asan": false, - "platform": "macosx", - "build_type": "RelWithDebInfo", - "arch": "x64" - }, - { - "version": "21.1.8", - "filename": "x64-macos-clang-releasedbg.tar.xz", - "sha256": "2193ade0b1e123f835b782488f31262a2f9ef541cf0f0f0125b190e08b721a29", + "version": "21.1.4+r1", + "filename": "x64-windows-msvc-debug-asan.tar.xz", + "sha256": "093667a493d336c22ff3c604c5f1fea2a7d2c927c1179cec44e9a03726906ac1", "lto": false, - "asan": false, - "platform": "macosx", - "build_type": "RelWithDebInfo", + "asan": true, + "platform": "windows", + "build_type": "Debug", "arch": "x64" }, { - "version": "21.1.8", + "version": "21.1.4+r1", "filename": "x64-windows-msvc-releasedbg-lto.tar.xz", - "sha256": "bf131c12c1ae87ffe3b7f87c424d7c2e628e63f591cb3505e901cf4c5ba0474b", + "sha256": "010539e85621dc3c6ecf359d899feb4075aeca5d0bba6625cdbec0e570e79129", "lto": true, "asan": false, "platform": "windows", @@ -130,9 +80,9 @@ "arch": "x64" }, { - "version": "21.1.8", + "version": "21.1.4+r1", "filename": "x64-windows-msvc-releasedbg.tar.xz", - "sha256": "6dddec41a7960c9409516a46ca9d48d30f85adf948362e61ff37dd55ecf17568", + "sha256": "f473c09fbea10053fac00be409d75dc228d4a38bcbc5e4aeb58b56a4b0dde78e", "lto": false, "asan": false, "platform": "windows", From 01c5e9a3612ca7c343da6238153c1d12bfef739f Mon Sep 17 00:00:00 2001 From: ykiko Date: Mon, 13 Apr 2026 09:59:35 +0800 Subject: [PATCH 19/52] feat: upgrade LLVM to 21.1.8 and add cross-compile CI targets - Update LLVM from 21.1.4+r1 to 21.1.8 - Add cross-compile build targets to test-cmake.yml: macOS x64, Linux arm64, Windows arm64 - Cross-compile jobs build only (no tests) - Windows Debug artifact pending from build-llvm workflow Co-Authored-By: Claude Opus 4.6 --- .github/workflows/test-cmake.yml | 28 ++++++++-- cmake/package.cmake | 2 +- config/llvm-manifest.json | 94 ++++++++++++++++++++++++-------- 3 files changed, 97 insertions(+), 27 deletions(-) diff --git a/.github/workflows/test-cmake.yml b/.github/workflows/test-cmake.yml index 1f77de9ac..2e5802b70 100644 --- a/.github/workflows/test-cmake.yml +++ b/.github/workflows/test-cmake.yml @@ -19,6 +19,16 @@ jobs: matrix: os: [windows-2025, ubuntu-24.04, macos-15] build_type: [Debug, RelWithDebInfo] + include: + - os: macos-15 + build_type: RelWithDebInfo + target_triple: x86_64-apple-darwin + - os: ubuntu-24.04 + build_type: RelWithDebInfo + target_triple: aarch64-linux-gnu + - os: windows-2025 + build_type: RelWithDebInfo + target_triple: aarch64-pc-windows-msvc runs-on: ${{ matrix.os }} steps: - name: Checkout repository @@ -30,9 +40,9 @@ jobs: uses: actions/cache@v4 with: path: ${{ runner.os == 'Windows' && '.cache/sccache' || '.cache/ccache' }} - key: ${{ runner.os }}-${{ matrix.build_type }}-ccache-${{ github.sha }} + key: ${{ runner.os }}-${{ matrix.build_type }}-${{ matrix.target_triple || 'native' }}-ccache-${{ github.sha }} restore-keys: | - ${{ runner.os }}-${{ matrix.build_type }}-ccache- + ${{ runner.os }}-${{ matrix.build_type }}-${{ matrix.target_triple || 'native' }}-ccache- - name: Zero cache stats run: | @@ -44,17 +54,27 @@ jobs: fi shell: bash - - name: Build + - name: Build (native) + if: ${{ !matrix.target_triple }} run: pixi run build ${{ matrix.build_type }} ON + - name: Build (cross-compile) + if: ${{ matrix.target_triple }} + shell: bash + run: | + pixi run cmake-config ${{ matrix.build_type }} OFF "-DCLICE_ENABLE_TEST=OFF -DCLICE_TARGET_TRIPLE=${{ matrix.target_triple }}" + pixi run cmake-build ${{ matrix.build_type }} + - name: Unit Test + if: ${{ !matrix.target_triple }} run: pixi run unit-test ${{ matrix.build_type }} - name: Integration Test + if: ${{ !matrix.target_triple }} run: pixi run integration-test ${{ matrix.build_type }} - name: Smoke Test - if: success() || failure() + if: ${{ !matrix.target_triple && (success() || failure()) }} run: pixi run smoke-test ${{ matrix.build_type }} - name: Print cache stats and stop server diff --git a/cmake/package.cmake b/cmake/package.cmake index 593449bc5..c056e75df 100644 --- a/cmake/package.cmake +++ b/cmake/package.cmake @@ -1,7 +1,7 @@ include_guard() include(${CMAKE_CURRENT_LIST_DIR}/llvm.cmake) -setup_llvm("21.1.4+r1") +setup_llvm("21.1.8") # install dependencies include(FetchContent) diff --git a/config/llvm-manifest.json b/config/llvm-manifest.json index d0531c9cc..7e1e321b8 100644 --- a/config/llvm-manifest.json +++ b/config/llvm-manifest.json @@ -1,8 +1,48 @@ [ { - "version": "21.1.4+r1", + "version": "21.1.8", + "filename": "aarch64-linux-gnu-releasedbg-lto.tar.xz", + "sha256": "41519a1e238afa67eb7bf75181265c816bbd51c5bd9b8bbd88ae889403efd128", + "lto": true, + "asan": false, + "platform": "linux", + "build_type": "RelWithDebInfo", + "arch": "arm64" + }, + { + "version": "21.1.8", + "filename": "aarch64-linux-gnu-releasedbg.tar.xz", + "sha256": "dd22285b87570b8e83bb5119d319827b51ef82aab166f348aacc7e25c4479889", + "lto": false, + "asan": false, + "platform": "linux", + "build_type": "RelWithDebInfo", + "arch": "arm64" + }, + { + "version": "21.1.8", + "filename": "aarch64-windows-msvc-releasedbg-lto.tar.xz", + "sha256": "1cf598277354efdd839ee6cd826824ef2afb26e334fb32bbc8e48c49c6acb742", + "lto": true, + "asan": false, + "platform": "windows", + "build_type": "RelWithDebInfo", + "arch": "arm64" + }, + { + "version": "21.1.8", + "filename": "aarch64-windows-msvc-releasedbg.tar.xz", + "sha256": "8f91b0a2a2895654feaebb7c9b24a6624662552ea51c6bb5eeb658dbaa0ff5a1", + "lto": false, + "asan": false, + "platform": "windows", + "build_type": "RelWithDebInfo", + "arch": "arm64" + }, + { + "version": "21.1.8", "filename": "arm64-macos-clang-debug-asan.tar.xz", - "sha256": "7da4b7d63edefecaf11773e7e701c575140d1a07329bbbb038673b6ee4516ff5", + "sha256": "c6b70f141f0fc21eaf20ccbeb5ae101c08f8c19749e3d11e239af80d2c9e83ff", "lto": false, "asan": true, "platform": "macosx", @@ -10,9 +50,9 @@ "arch": "arm64" }, { - "version": "21.1.4+r1", + "version": "21.1.8", "filename": "arm64-macos-clang-releasedbg-lto.tar.xz", - "sha256": "300455b169448f9f01ae95e3bc269f489558a4ca3955e3032171cc75feca0e30", + "sha256": "48cab8a3842dde154f271ad4cd782b02cda237cc84b87b261395eea810d6dbde", "lto": true, "asan": false, "platform": "macosx", @@ -20,9 +60,9 @@ "arch": "arm64" }, { - "version": "21.1.4+r1", + "version": "21.1.8", "filename": "arm64-macos-clang-releasedbg.tar.xz", - "sha256": "9abfc6cd65b957d734ffb97610a634fb4a66d3fbe0fcfb5a1c9124ef693c1495", + "sha256": "1c640714dc7d4ef8a34d6786d50d3149d4458802af32ccbcf64ec1ea53e83ed0", "lto": false, "asan": false, "platform": "macosx", @@ -30,9 +70,9 @@ "arch": "arm64" }, { - "version": "21.1.4+r1", + "version": "21.1.8", "filename": "x64-linux-gnu-debug-asan.tar.xz", - "sha256": "c1ad3ec476911596a842ac67dd9c9c9475ce9f0a77b81101d3c801840292e7bc", + "sha256": "64ebfc3ecf4117b6fdd467d5f9bcd5a2030bb408c70415ed40bf99f35311a6b0", "lto": false, "asan": true, "platform": "linux", @@ -40,9 +80,9 @@ "arch": "x64" }, { - "version": "21.1.4+r1", + "version": "21.1.8", "filename": "x64-linux-gnu-releasedbg-lto.tar.xz", - "sha256": "8a869c2184d139dbba704e2d712e7a68336458ad2d70622b3eb906c3e3511e54", + "sha256": "af8f97fbb57999aedd37a5e7c20d89499bf6518c6a0b5e83e18e6677a075fe71", "lto": true, "asan": false, "platform": "linux", @@ -50,9 +90,9 @@ "arch": "x64" }, { - "version": "21.1.4+r1", + "version": "21.1.8", "filename": "x64-linux-gnu-releasedbg.tar.xz", - "sha256": "552bab86f715d4f2c027f07eaaf5b3d6b8e430af0b74b470142f3f00da4feec6", + "sha256": "cdcd5312c6eba9295a05a68cd09559c4616ae0456550f7a64ed8fa15d283285b", "lto": false, "asan": false, "platform": "linux", @@ -60,19 +100,29 @@ "arch": "x64" }, { - "version": "21.1.4+r1", - "filename": "x64-windows-msvc-debug-asan.tar.xz", - "sha256": "093667a493d336c22ff3c604c5f1fea2a7d2c927c1179cec44e9a03726906ac1", + "version": "21.1.8", + "filename": "x64-macos-clang-releasedbg-lto.tar.xz", + "sha256": "543db4d7fcd81d127c8f9ad33e359ecba442549da6d63d80e564710049ae2f08", + "lto": true, + "asan": false, + "platform": "macosx", + "build_type": "RelWithDebInfo", + "arch": "x64" + }, + { + "version": "21.1.8", + "filename": "x64-macos-clang-releasedbg.tar.xz", + "sha256": "2193ade0b1e123f835b782488f31262a2f9ef541cf0f0f0125b190e08b721a29", "lto": false, - "asan": true, - "platform": "windows", - "build_type": "Debug", + "asan": false, + "platform": "macosx", + "build_type": "RelWithDebInfo", "arch": "x64" }, { - "version": "21.1.4+r1", + "version": "21.1.8", "filename": "x64-windows-msvc-releasedbg-lto.tar.xz", - "sha256": "010539e85621dc3c6ecf359d899feb4075aeca5d0bba6625cdbec0e570e79129", + "sha256": "bf131c12c1ae87ffe3b7f87c424d7c2e628e63f591cb3505e901cf4c5ba0474b", "lto": true, "asan": false, "platform": "windows", @@ -80,9 +130,9 @@ "arch": "x64" }, { - "version": "21.1.4+r1", + "version": "21.1.8", "filename": "x64-windows-msvc-releasedbg.tar.xz", - "sha256": "f473c09fbea10053fac00be409d75dc228d4a38bcbc5e4aeb58b56a4b0dde78e", + "sha256": "6dddec41a7960c9409516a46ca9d48d30f85adf948362e61ff37dd55ecf17568", "lto": false, "asan": false, "platform": "windows", From 4b107e29bdcc9b0a0cc7479602a522c16e99a660 Mon Sep 17 00:00:00 2001 From: ykiko Date: Mon, 13 Apr 2026 10:02:29 +0800 Subject: [PATCH 20/52] fix: use explicit matrix includes for cross-compile CI jobs GitHub Actions include with cartesian product doesn't create new entries - switch to explicit include-only matrix. Co-Authored-By: Claude Opus 4.6 --- .github/workflows/test-cmake.yml | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-cmake.yml b/.github/workflows/test-cmake.yml index 2e5802b70..5a9502572 100644 --- a/.github/workflows/test-cmake.yml +++ b/.github/workflows/test-cmake.yml @@ -17,9 +17,21 @@ jobs: strategy: fail-fast: false matrix: - os: [windows-2025, ubuntu-24.04, macos-15] - build_type: [Debug, RelWithDebInfo] include: + # ── Native builds ────────────────────────────────────────────── + - os: windows-2025 + build_type: Debug + - os: windows-2025 + build_type: RelWithDebInfo + - os: ubuntu-24.04 + build_type: Debug + - os: ubuntu-24.04 + build_type: RelWithDebInfo + - os: macos-15 + build_type: Debug + - os: macos-15 + build_type: RelWithDebInfo + # ── Cross-compile builds (build-only, no tests) ────────────── - os: macos-15 build_type: RelWithDebInfo target_triple: x86_64-apple-darwin From e13d28a96b929620bb964dbcd5799243d929a251 Mon Sep 17 00:00:00 2001 From: ykiko Date: Mon, 13 Apr 2026 10:21:53 +0800 Subject: [PATCH 21/52] fix: use host flatc for cross-compilation When cross-compiling, the built flatc is for the target architecture and cannot run on the host. Use find_program to locate a host flatc instead. Add flatbuffers conda package to provide it. Co-Authored-By: Claude Opus 4.6 --- CMakeLists.txt | 9 +++++++- pixi.lock | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++ pixi.toml | 3 +++ 3 files changed, 67 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index d5c45d14b..bbca11d60 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -127,9 +127,16 @@ endif() set(FBS_SCHEMA_FILE "${PROJECT_SOURCE_DIR}/src/index/schema.fbs") set(GENERATED_HEADER "${PROJECT_BINARY_DIR}/generated/schema_generated.h") +if(CMAKE_CROSSCOMPILING) + find_program(FLATC_EXECUTABLE flatc REQUIRED) + set(FLATC_CMD "${FLATC_EXECUTABLE}") +else() + set(FLATC_CMD "$") +endif() + add_custom_command( OUTPUT "${GENERATED_HEADER}" - COMMAND $ --cpp -o "${PROJECT_BINARY_DIR}/generated" "${FBS_SCHEMA_FILE}" + COMMAND ${FLATC_CMD} --cpp -o "${PROJECT_BINARY_DIR}/generated" "${FBS_SCHEMA_FILE}" DEPENDS "${FBS_SCHEMA_FILE}" COMMENT "Generating C++ header from ${FBS_SCHEMA_FILE}" ) diff --git a/pixi.lock b/pixi.lock index 8e1b11165..eba3f6d49 100644 --- a/pixi.lock +++ b/pixi.lock @@ -26,6 +26,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/cmake-4.3.1-hc85cc9f_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/compiler-rt-20.1.8-hb700be7_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_linux-64-20.1.8-hffcefe0_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/flatbuffers-25.12.19-h54a6638_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gcc-14.2.0-h96c4ede_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gcc_impl_linux-64-14.2.0-hdb7739f_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gcc_impl_linux-aarch64-14.2.0-h0367a0d_2.conda @@ -106,6 +107,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cmake-4.3.1-h8cb302d_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/compiler-rt-20.1.8-h855ad52_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_osx-arm64-20.1.8-he32a8d3_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/flatbuffers-25.12.19-h784d473_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-78.3-hef89b57_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.22.2-h385eeb1_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ld64-956.6-llvm20_1_hb625feb_4.conda @@ -162,6 +164,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/cmake-4.3.1-hdcbee5b_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/compiler-rt-20.1.8-h49e36cd_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_win-64-20.1.8-h49e36cd_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/flatbuffers-25.12.19-h5112557_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.22.2-h0ea6238_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libclang13-22.1.3-default_ha2db4b5_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.19.0-h8206538_0.conda @@ -215,6 +218,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/cmake-4.3.1-hc85cc9f_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/compiler-rt-20.1.8-hb700be7_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_linux-64-20.1.8-hffcefe0_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/flatbuffers-25.12.19-h54a6638_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gcc-14.2.0-h96c4ede_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gcc_impl_linux-64-14.2.0-hdb7739f_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gxx-14.2.0-h96c4ede_2.conda @@ -286,6 +290,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cmake-4.3.1-h8cb302d_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/compiler-rt-20.1.8-h855ad52_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_osx-arm64-20.1.8-he32a8d3_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/flatbuffers-25.12.19-h784d473_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-78.3-hef89b57_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.22.2-h385eeb1_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ld64-956.6-llvm20_1_hb625feb_4.conda @@ -342,6 +347,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/cmake-4.3.1-hdcbee5b_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/compiler-rt-20.1.8-h49e36cd_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_win-64-20.1.8-h49e36cd_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/flatbuffers-25.12.19-h5112557_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.22.2-h0ea6238_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libclang13-22.1.3-default_ha2db4b5_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.19.0-h8206538_0.conda @@ -395,6 +401,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/cmake-4.3.1-hc85cc9f_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/compiler-rt-20.1.8-hb700be7_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_linux-64-20.1.8-hffcefe0_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/flatbuffers-25.12.19-h54a6638_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gcc-14.2.0-h96c4ede_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gcc_impl_linux-64-14.2.0-hdb7739f_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gxx-14.2.0-h96c4ede_2.conda @@ -466,6 +473,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cmake-4.3.1-h8cb302d_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/compiler-rt-20.1.8-h855ad52_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_osx-arm64-20.1.8-he32a8d3_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/flatbuffers-25.12.19-h784d473_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-78.3-hef89b57_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.22.2-h385eeb1_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ld64-956.6-llvm20_1_hb625feb_4.conda @@ -522,6 +530,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/cmake-4.3.1-hdcbee5b_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/compiler-rt-20.1.8-h49e36cd_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_win-64-20.1.8-h49e36cd_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/flatbuffers-25.12.19-h5112557_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.22.2-h0ea6238_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libclang13-22.1.3-default_ha2db4b5_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.19.0-h8206538_0.conda @@ -576,6 +585,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/cmake-4.2.1-hc85cc9f_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/compiler-rt-20.1.8-hb700be7_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_linux-64-20.1.8-hffcefe0_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/flatbuffers-25.12.19-h54a6638_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gcc-14.2.0-h96c4ede_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gcc_impl_linux-64-14.2.0-hdb7739f_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gxx-14.2.0-h96c4ede_2.conda @@ -654,6 +664,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cmake-4.2.1-h54ad630_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/compiler-rt-20.1.8-h855ad52_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_osx-arm64-20.1.8-he32a8d3_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/flatbuffers-25.12.19-h784d473_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-78.1-h38cb7af_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.21.3-h237132a_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang-cpp20.1-20.1.8-default_h73dfc95_5.conda @@ -715,6 +726,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/cmake-4.2.1-hdcbee5b_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/compiler-rt-20.1.8-h49e36cd_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_win-64-20.1.8-h49e36cd_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/flatbuffers-25.12.19-h5112557_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/icu-78.1-h637d24d_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.21.3-hdf4eb48_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libclang13-22.1.0-default_ha2db4b5_0.conda @@ -771,6 +783,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-format-21-21.1.7-default_h99862b1_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-format-21.1.7-default_h99862b1_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/fd-find-10.3.0-hdab8a38_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/flatbuffers-25.12.19-h54a6638_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/icu-75.1-he02047a_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45-default_hbd61a6d_105.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp21.1-21.1.7-default_h99862b1_2.conda @@ -810,6 +823,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-format-21-21.1.7-default_hf3020a7_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-format-21.1.7-default_hf3020a7_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fd-find-10.3.0-h0ca00b2_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/flatbuffers-25.12.19-h784d473_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-75.1-hfee45f7_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang-cpp21.1-21.1.7-default_hf3020a7_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-21.1.8-hf598326_0.conda @@ -842,6 +856,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.11.12-h4c7d964_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/clang-format-21.1.7-default_hac490eb_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/fd-find-10.3.0-h77a83cd_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/flatbuffers-25.12.19-h5112557_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.7.3-hac47afa_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.5.2-h52bdfb6_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/liblzma-5.8.1-h2466b09_2.conda @@ -874,6 +889,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.34.6-hb03c661_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.11.12-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/flatbuffers-25.12.19-h54a6638_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/icu-75.1-he02047a_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlicommon-1.2.0-hb03c661_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlidec-1.2.0-hb03c661_1.conda @@ -895,6 +911,7 @@ environments: osx-arm64: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.34.6-hc919400_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.11.12-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/flatbuffers-25.12.19-h784d473_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-75.1-hfee45f7_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlicommon-1.2.0-hc919400_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlidec-1.2.0-hc919400_1.conda @@ -910,6 +927,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pnpm-10.26.2-h7c87c79_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.7-hbf9d68e_6.conda win-64: + - conda: https://conda.anaconda.org/conda-forge/win-64/flatbuffers-25.12.19-h5112557_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/nodejs-24.12.0-he453025_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pnpm-10.26.2-h785286a_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/ucrt-10.0.26100.0-h57928b3_0.conda @@ -941,6 +959,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/cmake-4.2.1-hc85cc9f_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/compiler-rt-20.1.8-hb700be7_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_linux-64-20.1.8-hffcefe0_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/flatbuffers-25.12.19-h54a6638_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gcc-14.2.0-h96c4ede_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gcc_impl_linux-64-14.2.0-hdb7739f_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gxx-14.2.0-h96c4ede_2.conda @@ -1022,6 +1041,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cmake-4.2.1-h54ad630_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/compiler-rt-20.1.8-h855ad52_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_osx-arm64-20.1.8-he32a8d3_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/flatbuffers-25.12.19-h784d473_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.21.3-h237132a_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang-cpp20.1-20.1.8-default_h73dfc95_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang13-21.1.7-default_h13b06bd_4.conda @@ -1086,6 +1106,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/cmake-4.2.1-hdcbee5b_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/compiler-rt-20.1.8-h49e36cd_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_win-64-20.1.8-h49e36cd_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/flatbuffers-25.12.19-h5112557_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.21.3-hdf4eb48_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libclang13-22.1.0-default_ha2db4b5_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.17.0-h43ecb02_1.conda @@ -2126,6 +2147,41 @@ packages: license_family: MIT size: 1196708 timestamp: 1757337405047 +- conda: https://conda.anaconda.org/conda-forge/linux-64/flatbuffers-25.12.19-h54a6638_0.conda + sha256: 8e7e28382d6daffe7ff34edb5f9c115d8943f6b5132624048243b9b27ea0a537 + md5: 0d08f16839ff30d3852aae4bfeb0d44a + depends: + - libgcc >=14 + - libstdcxx >=14 + - __glibc >=2.17,<3.0.a0 + license: Apache-2.0 + license_family: APACHE + purls: [] + size: 1841035 + timestamp: 1766388876335 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/flatbuffers-25.12.19-h784d473_0.conda + sha256: 534bff044ed0be12787d5d41af4a14896d22ab0d92794083f4205ebcf0a93289 + md5: e1c1fce04be829b04b0a03e9194f848a + depends: + - __osx >=11.0 + - libcxx >=19 + license: Apache-2.0 + license_family: APACHE + purls: [] + size: 1549199 + timestamp: 1766388878273 +- conda: https://conda.anaconda.org/conda-forge/win-64/flatbuffers-25.12.19-h5112557_0.conda + sha256: e155e1d61041e0f4391bfbbbf8b7331afbbea364823525cc421c8bd5c3b887fc + md5: 6070d5165220ed7f30c8511917c77cf9 + depends: + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + - ucrt >=10.0.20348.0 + license: Apache-2.0 + license_family: APACHE + purls: [] + size: 2094000 + timestamp: 1766388891562 - conda: https://conda.anaconda.org/conda-forge/linux-64/gcc-14.2.0-h96c4ede_2.conda sha256: 6592ff15983759799df89d0a992268809e9ce0376933e053716660ecda19d87e md5: 7f23fa6a103277a8491d3d10240ebd09 diff --git a/pixi.toml b/pixi.toml index 3fed9b3e1..5ff2e4567 100644 --- a/pixi.toml +++ b/pixi.toml @@ -168,6 +168,9 @@ gh workflow run upload-llvm.yml \ args = ["file_name"] cmd = ["scripts/delete-artifacts.bash", "{{ file_name }}"] +[dependencies] +flatbuffers = ">=25.12.19,<26" + # ============================================================================== # # DOCS & VSCODE EXTENSION # # ============================================================================== # From 6e24d61c22d1eb107b7bab43faebc9096b5f6ecf Mon Sep 17 00:00:00 2001 From: ykiko Date: Mon, 13 Apr 2026 10:33:27 +0800 Subject: [PATCH 22/52] fix: pin flatbuffers conda package to match FetchContent version The flatc version must match the FetchContent flatbuffers library version (v25.9.23) to avoid schema_generated.h compatibility errors. Co-Authored-By: Claude Opus 4.6 --- pixi.lock | 76 +++++++++++++++++++++++++++---------------------------- pixi.toml | 2 +- 2 files changed, 39 insertions(+), 39 deletions(-) diff --git a/pixi.lock b/pixi.lock index eba3f6d49..46992a1cf 100644 --- a/pixi.lock +++ b/pixi.lock @@ -26,7 +26,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/cmake-4.3.1-hc85cc9f_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/compiler-rt-20.1.8-hb700be7_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_linux-64-20.1.8-hffcefe0_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/flatbuffers-25.12.19-h54a6638_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/flatbuffers-25.9.23-hb7d4c21_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gcc-14.2.0-h96c4ede_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gcc_impl_linux-64-14.2.0-hdb7739f_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gcc_impl_linux-aarch64-14.2.0-h0367a0d_2.conda @@ -107,7 +107,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cmake-4.3.1-h8cb302d_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/compiler-rt-20.1.8-h855ad52_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_osx-arm64-20.1.8-he32a8d3_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/flatbuffers-25.12.19-h784d473_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/flatbuffers-25.9.23-h9e8ef45_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-78.3-hef89b57_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.22.2-h385eeb1_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ld64-956.6-llvm20_1_hb625feb_4.conda @@ -164,7 +164,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/cmake-4.3.1-hdcbee5b_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/compiler-rt-20.1.8-h49e36cd_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_win-64-20.1.8-h49e36cd_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/flatbuffers-25.12.19-h5112557_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/flatbuffers-25.9.23-h4025804_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.22.2-h0ea6238_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libclang13-22.1.3-default_ha2db4b5_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.19.0-h8206538_0.conda @@ -218,7 +218,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/cmake-4.3.1-hc85cc9f_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/compiler-rt-20.1.8-hb700be7_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_linux-64-20.1.8-hffcefe0_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/flatbuffers-25.12.19-h54a6638_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/flatbuffers-25.9.23-hb7d4c21_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gcc-14.2.0-h96c4ede_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gcc_impl_linux-64-14.2.0-hdb7739f_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gxx-14.2.0-h96c4ede_2.conda @@ -290,7 +290,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cmake-4.3.1-h8cb302d_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/compiler-rt-20.1.8-h855ad52_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_osx-arm64-20.1.8-he32a8d3_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/flatbuffers-25.12.19-h784d473_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/flatbuffers-25.9.23-h9e8ef45_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-78.3-hef89b57_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.22.2-h385eeb1_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ld64-956.6-llvm20_1_hb625feb_4.conda @@ -347,7 +347,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/cmake-4.3.1-hdcbee5b_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/compiler-rt-20.1.8-h49e36cd_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_win-64-20.1.8-h49e36cd_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/flatbuffers-25.12.19-h5112557_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/flatbuffers-25.9.23-h4025804_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.22.2-h0ea6238_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libclang13-22.1.3-default_ha2db4b5_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.19.0-h8206538_0.conda @@ -401,7 +401,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/cmake-4.3.1-hc85cc9f_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/compiler-rt-20.1.8-hb700be7_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_linux-64-20.1.8-hffcefe0_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/flatbuffers-25.12.19-h54a6638_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/flatbuffers-25.9.23-hb7d4c21_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gcc-14.2.0-h96c4ede_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gcc_impl_linux-64-14.2.0-hdb7739f_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gxx-14.2.0-h96c4ede_2.conda @@ -473,7 +473,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cmake-4.3.1-h8cb302d_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/compiler-rt-20.1.8-h855ad52_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_osx-arm64-20.1.8-he32a8d3_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/flatbuffers-25.12.19-h784d473_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/flatbuffers-25.9.23-h9e8ef45_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-78.3-hef89b57_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.22.2-h385eeb1_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ld64-956.6-llvm20_1_hb625feb_4.conda @@ -530,7 +530,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/cmake-4.3.1-hdcbee5b_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/compiler-rt-20.1.8-h49e36cd_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_win-64-20.1.8-h49e36cd_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/flatbuffers-25.12.19-h5112557_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/flatbuffers-25.9.23-h4025804_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.22.2-h0ea6238_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libclang13-22.1.3-default_ha2db4b5_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.19.0-h8206538_0.conda @@ -585,7 +585,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/cmake-4.2.1-hc85cc9f_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/compiler-rt-20.1.8-hb700be7_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_linux-64-20.1.8-hffcefe0_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/flatbuffers-25.12.19-h54a6638_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/flatbuffers-25.9.23-hb7d4c21_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gcc-14.2.0-h96c4ede_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gcc_impl_linux-64-14.2.0-hdb7739f_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gxx-14.2.0-h96c4ede_2.conda @@ -664,7 +664,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cmake-4.2.1-h54ad630_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/compiler-rt-20.1.8-h855ad52_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_osx-arm64-20.1.8-he32a8d3_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/flatbuffers-25.12.19-h784d473_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/flatbuffers-25.9.23-h9e8ef45_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-78.1-h38cb7af_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.21.3-h237132a_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang-cpp20.1-20.1.8-default_h73dfc95_5.conda @@ -726,7 +726,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/cmake-4.2.1-hdcbee5b_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/compiler-rt-20.1.8-h49e36cd_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_win-64-20.1.8-h49e36cd_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/flatbuffers-25.12.19-h5112557_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/flatbuffers-25.9.23-h4025804_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/icu-78.1-h637d24d_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.21.3-hdf4eb48_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libclang13-22.1.0-default_ha2db4b5_0.conda @@ -783,7 +783,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-format-21-21.1.7-default_h99862b1_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-format-21.1.7-default_h99862b1_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/fd-find-10.3.0-hdab8a38_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/flatbuffers-25.12.19-h54a6638_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/flatbuffers-25.9.23-hb7d4c21_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/icu-75.1-he02047a_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45-default_hbd61a6d_105.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp21.1-21.1.7-default_h99862b1_2.conda @@ -823,7 +823,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-format-21-21.1.7-default_hf3020a7_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-format-21.1.7-default_hf3020a7_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fd-find-10.3.0-h0ca00b2_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/flatbuffers-25.12.19-h784d473_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/flatbuffers-25.9.23-h9e8ef45_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-75.1-hfee45f7_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang-cpp21.1-21.1.7-default_hf3020a7_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-21.1.8-hf598326_0.conda @@ -856,7 +856,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.11.12-h4c7d964_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/clang-format-21.1.7-default_hac490eb_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/fd-find-10.3.0-h77a83cd_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/flatbuffers-25.12.19-h5112557_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/flatbuffers-25.9.23-h4025804_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.7.3-hac47afa_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.5.2-h52bdfb6_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/liblzma-5.8.1-h2466b09_2.conda @@ -889,7 +889,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.34.6-hb03c661_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.11.12-hbd8a1cb_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/flatbuffers-25.12.19-h54a6638_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/flatbuffers-25.9.23-hb7d4c21_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/icu-75.1-he02047a_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlicommon-1.2.0-hb03c661_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlidec-1.2.0-hb03c661_1.conda @@ -911,7 +911,7 @@ environments: osx-arm64: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.34.6-hc919400_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.11.12-hbd8a1cb_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/flatbuffers-25.12.19-h784d473_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/flatbuffers-25.9.23-h9e8ef45_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-75.1-hfee45f7_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlicommon-1.2.0-hc919400_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlidec-1.2.0-hc919400_1.conda @@ -927,7 +927,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pnpm-10.26.2-h7c87c79_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.7-hbf9d68e_6.conda win-64: - - conda: https://conda.anaconda.org/conda-forge/win-64/flatbuffers-25.12.19-h5112557_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/flatbuffers-25.9.23-h4025804_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/nodejs-24.12.0-he453025_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pnpm-10.26.2-h785286a_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/ucrt-10.0.26100.0-h57928b3_0.conda @@ -959,7 +959,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/cmake-4.2.1-hc85cc9f_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/compiler-rt-20.1.8-hb700be7_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_linux-64-20.1.8-hffcefe0_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/flatbuffers-25.12.19-h54a6638_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/flatbuffers-25.9.23-hb7d4c21_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gcc-14.2.0-h96c4ede_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gcc_impl_linux-64-14.2.0-hdb7739f_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gxx-14.2.0-h96c4ede_2.conda @@ -1041,7 +1041,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cmake-4.2.1-h54ad630_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/compiler-rt-20.1.8-h855ad52_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_osx-arm64-20.1.8-he32a8d3_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/flatbuffers-25.12.19-h784d473_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/flatbuffers-25.9.23-h9e8ef45_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.21.3-h237132a_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang-cpp20.1-20.1.8-default_h73dfc95_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang13-21.1.7-default_h13b06bd_4.conda @@ -1106,7 +1106,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/cmake-4.2.1-hdcbee5b_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/compiler-rt-20.1.8-h49e36cd_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_win-64-20.1.8-h49e36cd_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/flatbuffers-25.12.19-h5112557_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/flatbuffers-25.9.23-h4025804_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.21.3-hdf4eb48_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libclang13-22.1.0-default_ha2db4b5_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.17.0-h43ecb02_1.conda @@ -2147,41 +2147,41 @@ packages: license_family: MIT size: 1196708 timestamp: 1757337405047 -- conda: https://conda.anaconda.org/conda-forge/linux-64/flatbuffers-25.12.19-h54a6638_0.conda - sha256: 8e7e28382d6daffe7ff34edb5f9c115d8943f6b5132624048243b9b27ea0a537 - md5: 0d08f16839ff30d3852aae4bfeb0d44a +- conda: https://conda.anaconda.org/conda-forge/linux-64/flatbuffers-25.9.23-hb7d4c21_0.conda + sha256: e5f90c2fd61012d6ad332657a5bf5455620f0db8524f0b005d91e1c2737bad69 + md5: 10a330bfd5345af730b0fc1349d15eaf depends: + - __glibc >=2.17,<3.0.a0 - libgcc >=14 - libstdcxx >=14 - - __glibc >=2.17,<3.0.a0 license: Apache-2.0 license_family: APACHE purls: [] - size: 1841035 - timestamp: 1766388876335 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/flatbuffers-25.12.19-h784d473_0.conda - sha256: 534bff044ed0be12787d5d41af4a14896d22ab0d92794083f4205ebcf0a93289 - md5: e1c1fce04be829b04b0a03e9194f848a + size: 1584732 + timestamp: 1761142459651 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/flatbuffers-25.9.23-h9e8ef45_0.conda + sha256: b8f4ce2919f2542c6688af909c18f9672b2a19efdb57118c5f415dd5ff0fb3cd + md5: 1d6e0829bc8d6907fae9a81f169414ce depends: - __osx >=11.0 - libcxx >=19 license: Apache-2.0 license_family: APACHE purls: [] - size: 1549199 - timestamp: 1766388878273 -- conda: https://conda.anaconda.org/conda-forge/win-64/flatbuffers-25.12.19-h5112557_0.conda - sha256: e155e1d61041e0f4391bfbbbf8b7331afbbea364823525cc421c8bd5c3b887fc - md5: 6070d5165220ed7f30c8511917c77cf9 + size: 1299156 + timestamp: 1761143339517 +- conda: https://conda.anaconda.org/conda-forge/win-64/flatbuffers-25.9.23-h4025804_0.conda + sha256: dc5a1b8bf5c667f5d86bdafd56faabbd2cfd3d498d612f709e6bf493a52c4713 + md5: e9eda0b0b9dd959828fa35e84cc09669 depends: + - ucrt >=10.0.20348.0 - vc >=14.3,<15 - vc14_runtime >=14.44.35208 - - ucrt >=10.0.20348.0 license: Apache-2.0 license_family: APACHE purls: [] - size: 2094000 - timestamp: 1766388891562 + size: 1777143 + timestamp: 1761142523983 - conda: https://conda.anaconda.org/conda-forge/linux-64/gcc-14.2.0-h96c4ede_2.conda sha256: 6592ff15983759799df89d0a992268809e9ce0376933e053716660ecda19d87e md5: 7f23fa6a103277a8491d3d10240ebd09 diff --git a/pixi.toml b/pixi.toml index 5ff2e4567..03a7f324f 100644 --- a/pixi.toml +++ b/pixi.toml @@ -169,7 +169,7 @@ args = ["file_name"] cmd = ["scripts/delete-artifacts.bash", "{{ file_name }}"] [dependencies] -flatbuffers = ">=25.12.19,<26" +flatbuffers = "==25.9.23" # ============================================================================== # # DOCS & VSCODE EXTENSION # From dd37e17e70577486dec4f8ab15a814c445d645af Mon Sep 17 00:00:00 2001 From: ykiko Date: Mon, 13 Apr 2026 11:42:05 +0800 Subject: [PATCH 23/52] fix(build-llvm): skip ASAN for Windows Debug builds clang-cl's -fsanitize=address is incompatible with -MDd (dynamic debug CRT). Skip ASAN on Windows and remove -asan suffix from the Windows Debug artifact name. Co-Authored-By: Claude Opus 4.6 --- .github/workflows/build-llvm.yml | 2 +- scripts/build-llvm.py | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build-llvm.yml b/.github/workflows/build-llvm.yml index 163c12eda..59ef6f83e 100644 --- a/.github/workflows/build-llvm.yml +++ b/.github/workflows/build-llvm.yml @@ -276,7 +276,7 @@ jobs: if [[ "${{ matrix.lto }}" == "ON" ]]; then SUFFIX="-lto" fi - if [[ "${{ matrix.llvm_mode }}" == "Debug" ]]; then + if [[ "${{ matrix.llvm_mode }}" == "Debug" && "${{ matrix.os }}" != windows-* ]]; then SUFFIX="${SUFFIX}-asan" fi diff --git a/scripts/build-llvm.py b/scripts/build-llvm.py index ebfe48664..2a56835f0 100644 --- a/scripts/build-llvm.py +++ b/scripts/build-llvm.py @@ -185,8 +185,10 @@ def main(): is_shared = "OFF" if args.mode == "Debug": cmake_args.append("-DCMAKE_BUILD_TYPE=Debug") - cmake_args.append("-DLLVM_USE_SANITIZER=Address") - is_shared = "ON" + # ASAN is incompatible with -MDd on Windows (clang-cl), skip it there. + if sys.platform != "win32": + cmake_args.append("-DLLVM_USE_SANITIZER=Address") + is_shared = "ON" elif args.mode == "Release": cmake_args.append("-DCMAKE_BUILD_TYPE=Release") elif args.mode == "RelWithDebInfo": From 7299a5285ac32829ea43ea705a1858cfa6f7f863 Mon Sep 17 00:00:00 2001 From: ykiko Date: Mon, 13 Apr 2026 11:58:56 +0800 Subject: [PATCH 24/52] fix(build-llvm): pass --target to clang-cl for Windows cross-compile On Windows, build-llvm.py uses clang-cl directly instead of the toolchain file, so CLICE_TARGET_TRIPLE wasn't setting the compiler target. Pass --target= via CMAKE_C/CXX_FLAGS and set LLVM_HOST_TRIPLE for correct cross-compilation. Co-Authored-By: Claude Opus 4.6 --- scripts/build-llvm.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/scripts/build-llvm.py b/scripts/build-llvm.py index 2a56835f0..394462c98 100644 --- a/scripts/build-llvm.py +++ b/scripts/build-llvm.py @@ -111,11 +111,14 @@ def main(): if sys.platform == "win32": # Use clang-cl (MSVC driver) on Windows so that LLVM's CMake # generates correct MSVC-style linker flags for LTO, etc. + c_flags = "-w" + if args.target_triple: + c_flags += f" --target={args.target_triple}" cmake_args += [ "-DCMAKE_C_COMPILER=clang-cl", "-DCMAKE_CXX_COMPILER=clang-cl", - "-DCMAKE_C_FLAGS=-w", - "-DCMAKE_CXX_FLAGS=-w", + f"-DCMAKE_C_FLAGS={c_flags}", + f"-DCMAKE_CXX_FLAGS={c_flags}", "-DLLVM_USE_LINKER=lld-link", ] else: @@ -205,6 +208,7 @@ def main(): if args.target_triple: cmake_args.append(f"-DCLICE_TARGET_TRIPLE={args.target_triple}") + cmake_args.append(f"-DLLVM_HOST_TRIPLE={args.target_triple}") build_dir.mkdir(exist_ok=True) From 2b1b28d1edf88ea840d9df218cb6b9b42a11bd10 Mon Sep 17 00:00:00 2001 From: ykiko Date: Mon, 13 Apr 2026 12:36:27 +0800 Subject: [PATCH 25/52] fix(build-llvm): build native host tools for cross-compilation When cross-compiling LLVM (Linux aarch64 from x64, Windows ARM64 from x64), tablegen tools are compiled for the target architecture but must run on the host during the build. Add a two-stage build: first compile native llvm-tblgen, llvm-min-tblgen, and clang-tblgen, then pass LLVM_NATIVE_TOOL_DIR to the cross-compile build. macOS cross-compilation is excluded because Rosetta 2 transparently runs x86_64 tools on ARM64 hosts. Co-Authored-By: Claude Opus 4.6 --- scripts/build-llvm.py | 67 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 67 insertions(+) diff --git a/scripts/build-llvm.py b/scripts/build-llvm.py index 394462c98..c2ef444c8 100644 --- a/scripts/build-llvm.py +++ b/scripts/build-llvm.py @@ -23,6 +23,66 @@ def normalize_mode(value: str) -> str: ) +def build_native_tools(project_root: Path, build_dir: Path) -> Path: + """Build native host tablegen tools for cross-compilation. + + When cross-compiling LLVM, build tools like llvm-tblgen must run on the + host but would otherwise be compiled for the target architecture. This + function performs a minimal native build and returns the bin directory + containing host-runnable executables. + """ + native_dir = build_dir.parent / f"{build_dir.name}-native-tools" + native_dir.mkdir(exist_ok=True) + source_dir = project_root / "llvm" + + cmake_args = [ + "-G", "Ninja", + "-DCMAKE_BUILD_TYPE=Release", + "-DLLVM_ENABLE_PROJECTS=clang;clang-tools-extra", + "-DLLVM_TARGETS_TO_BUILD=Native", + "-DCMAKE_C_FLAGS=-w", + "-DCMAKE_CXX_FLAGS=-w", + ] + + if sys.platform == "win32": + cmake_args += [ + "-DCMAKE_C_COMPILER=clang-cl", + "-DCMAKE_CXX_COMPILER=clang-cl", + ] + else: + cmake_args += [ + "-DCMAKE_C_COMPILER=clang", + "-DCMAKE_CXX_COMPILER=clang++", + ] + + print(f"\nConfiguring native host tools in {native_dir}...") + subprocess.check_call( + ["cmake", "-S", str(source_dir), "-B", str(native_dir)] + cmake_args + ) + + required_tools = ["llvm-tblgen", "llvm-min-tblgen", "clang-tblgen"] + optional_tools = ["clang-tidy-confusable-chars-gen"] + + for tool in required_tools: + print(f"Building native {tool}...") + subprocess.check_call( + ["cmake", "--build", str(native_dir), "--target", tool] + ) + + for tool in optional_tools: + try: + print(f"Building native {tool} (optional)...") + subprocess.check_call( + ["cmake", "--build", str(native_dir), "--target", tool] + ) + except subprocess.CalledProcessError: + print(f" {tool} not available, skipping.") + + bin_dir = native_dir / "bin" + print(f"Native host tools ready in {bin_dir}") + return bin_dir + + def main(): parser = argparse.ArgumentParser( description="Build LLVM with specific configurations." @@ -210,6 +270,13 @@ def main(): cmake_args.append(f"-DCLICE_TARGET_TRIPLE={args.target_triple}") cmake_args.append(f"-DLLVM_HOST_TRIPLE={args.target_triple}") + # Cross-compilation needs native host tools (tablegen, etc.) that can + # run on the build machine. macOS handles this transparently via + # Rosetta 2, but Linux and Windows require a separate native build. + if sys.platform != "darwin": + native_bin_dir = build_native_tools(project_root, build_dir) + cmake_args.append(f"-DLLVM_NATIVE_TOOL_DIR={native_bin_dir}") + build_dir.mkdir(exist_ok=True) print(f"\nConfiguring in {build_dir}...") From 369e61ffadf20270174961c5cbdad47e19ac17fb Mon Sep 17 00:00:00 2001 From: ykiko Date: Mon, 13 Apr 2026 12:41:07 +0800 Subject: [PATCH 26/52] style: fix formatting in build-llvm.py Co-Authored-By: Claude Opus 4.6 --- scripts/build-llvm.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/scripts/build-llvm.py b/scripts/build-llvm.py index c2ef444c8..7c9bdc1bf 100644 --- a/scripts/build-llvm.py +++ b/scripts/build-llvm.py @@ -36,7 +36,8 @@ def build_native_tools(project_root: Path, build_dir: Path) -> Path: source_dir = project_root / "llvm" cmake_args = [ - "-G", "Ninja", + "-G", + "Ninja", "-DCMAKE_BUILD_TYPE=Release", "-DLLVM_ENABLE_PROJECTS=clang;clang-tools-extra", "-DLLVM_TARGETS_TO_BUILD=Native", @@ -65,9 +66,7 @@ def build_native_tools(project_root: Path, build_dir: Path) -> Path: for tool in required_tools: print(f"Building native {tool}...") - subprocess.check_call( - ["cmake", "--build", str(native_dir), "--target", tool] - ) + subprocess.check_call(["cmake", "--build", str(native_dir), "--target", tool]) for tool in optional_tools: try: From ff19ee5ff0617e4b0b8a6e642d35ba5bd25cecff Mon Sep 17 00:00:00 2001 From: ykiko Date: Mon, 13 Apr 2026 15:27:44 +0800 Subject: [PATCH 27/52] fix(build-llvm): disable assembly files in native tools build The BLAKE3 SSE2 assembly file requires MASM (ml64.exe) which may not be available on Windows CI runners. Since native tools only need tablegen executables, disable assembly files to avoid the dependency. Co-Authored-By: Claude Opus 4.6 --- scripts/build-llvm.py | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/build-llvm.py b/scripts/build-llvm.py index 7c9bdc1bf..b1d5310d2 100644 --- a/scripts/build-llvm.py +++ b/scripts/build-llvm.py @@ -41,6 +41,7 @@ def build_native_tools(project_root: Path, build_dir: Path) -> Path: "-DCMAKE_BUILD_TYPE=Release", "-DLLVM_ENABLE_PROJECTS=clang;clang-tools-extra", "-DLLVM_TARGETS_TO_BUILD=Native", + "-DLLVM_DISABLE_ASSEMBLY_FILES=ON", "-DCMAKE_C_FLAGS=-w", "-DCMAKE_CXX_FLAGS=-w", ] From 71b19e953faa70b3f21451622691e768998fd7b2 Mon Sep 17 00:00:00 2001 From: ykiko Date: Mon, 13 Apr 2026 15:31:41 +0800 Subject: [PATCH 28/52] fix(build-llvm): remove Windows Debug from matrix, tolerate partial failures MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Remove Windows Debug from the build matrix — clice cannot link against it yet (_ITERATOR_DEBUG_LEVEL mismatch), and the failure blocks the upload job from running. Change the upload job condition to !cancelled() so that flaky post-step failures (e.g. Post Setup Pixi) do not prevent artifact upload. Co-Authored-By: Claude Opus 4.6 --- .github/workflows/build-llvm.yml | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/.github/workflows/build-llvm.yml b/.github/workflows/build-llvm.yml index 59ef6f83e..98a43b742 100644 --- a/.github/workflows/build-llvm.yml +++ b/.github/workflows/build-llvm.yml @@ -29,9 +29,6 @@ jobs: matrix: include: # ── Native builds ────────────────────────────────────────────── - - os: windows-2025 - llvm_mode: Debug - lto: OFF - os: windows-2025 llvm_mode: RelWithDebInfo lto: OFF @@ -296,7 +293,7 @@ jobs: # ── Upload to clice-llvm ──────────────────────────────────────────────── upload: needs: build - if: ${{ inputs.llvm_version && !inputs.skip_upload }} + if: ${{ !cancelled() && inputs.llvm_version && !inputs.skip_upload }} runs-on: ubuntu-24.04 permissions: contents: read From 8a5d7da78b0ad8ba2769c7f49a5647d1b29e0ed3 Mon Sep 17 00:00:00 2001 From: ykiko Date: Mon, 13 Apr 2026 17:56:54 +0800 Subject: [PATCH 29/52] chore: update llvm-manifest.json with rebuilt artifacts All 14 LLVM artifacts successfully rebuilt with cross-compilation support for Linux aarch64 and Windows ARM64. Co-Authored-By: Claude Opus 4.6 --- config/llvm-manifest.json | 84 +++++++++++++++++++-------------------- 1 file changed, 42 insertions(+), 42 deletions(-) diff --git a/config/llvm-manifest.json b/config/llvm-manifest.json index 7e1e321b8..35585da1a 100644 --- a/config/llvm-manifest.json +++ b/config/llvm-manifest.json @@ -2,141 +2,141 @@ { "version": "21.1.8", "filename": "aarch64-linux-gnu-releasedbg-lto.tar.xz", - "sha256": "41519a1e238afa67eb7bf75181265c816bbd51c5bd9b8bbd88ae889403efd128", + "sha256": "5e86f5a5b13821c4b6671bf880ee22a38528ae2864c4983237a8009d1f19e63a", "lto": true, "asan": false, "platform": "linux", - "build_type": "RelWithDebInfo", - "arch": "arm64" + "arch": "arm64", + "build_type": "RelWithDebInfo" }, { "version": "21.1.8", "filename": "aarch64-linux-gnu-releasedbg.tar.xz", - "sha256": "dd22285b87570b8e83bb5119d319827b51ef82aab166f348aacc7e25c4479889", + "sha256": "18919751f431fa478b7ca649205f6ff2736399fa92184d4ddbf1ab5b05e2b6e7", "lto": false, "asan": false, "platform": "linux", - "build_type": "RelWithDebInfo", - "arch": "arm64" + "arch": "arm64", + "build_type": "RelWithDebInfo" }, { "version": "21.1.8", "filename": "aarch64-windows-msvc-releasedbg-lto.tar.xz", - "sha256": "1cf598277354efdd839ee6cd826824ef2afb26e334fb32bbc8e48c49c6acb742", + "sha256": "bff9a9aa8bad7c2f55880c52ef7f27622f17843374317bd7e9b5e5f4dc5cee4a", "lto": true, "asan": false, "platform": "windows", - "build_type": "RelWithDebInfo", - "arch": "arm64" + "arch": "arm64", + "build_type": "RelWithDebInfo" }, { "version": "21.1.8", "filename": "aarch64-windows-msvc-releasedbg.tar.xz", - "sha256": "8f91b0a2a2895654feaebb7c9b24a6624662552ea51c6bb5eeb658dbaa0ff5a1", + "sha256": "82d34ccd825c1f958353aec834b88f439e58bdb7be84f6482f49db1dac2b7f93", "lto": false, "asan": false, "platform": "windows", - "build_type": "RelWithDebInfo", - "arch": "arm64" + "arch": "arm64", + "build_type": "RelWithDebInfo" }, { "version": "21.1.8", "filename": "arm64-macos-clang-debug-asan.tar.xz", - "sha256": "c6b70f141f0fc21eaf20ccbeb5ae101c08f8c19749e3d11e239af80d2c9e83ff", + "sha256": "75796bd25d7b8ca70ce162db25fe1309e5b27ef248145950076f5808e9eaa55c", "lto": false, "asan": true, "platform": "macosx", - "build_type": "Debug", - "arch": "arm64" + "arch": "arm64", + "build_type": "Debug" }, { "version": "21.1.8", "filename": "arm64-macos-clang-releasedbg-lto.tar.xz", - "sha256": "48cab8a3842dde154f271ad4cd782b02cda237cc84b87b261395eea810d6dbde", + "sha256": "8440ccd51da242441f3092cab4ff450603d11bf9f53e4871a04762b6dceb4775", "lto": true, "asan": false, "platform": "macosx", - "build_type": "RelWithDebInfo", - "arch": "arm64" + "arch": "arm64", + "build_type": "RelWithDebInfo" }, { "version": "21.1.8", "filename": "arm64-macos-clang-releasedbg.tar.xz", - "sha256": "1c640714dc7d4ef8a34d6786d50d3149d4458802af32ccbcf64ec1ea53e83ed0", + "sha256": "789a0ae32c7438bcea756a79d3065877bef2aee29e7e8d0cee68e1744071f655", "lto": false, "asan": false, "platform": "macosx", - "build_type": "RelWithDebInfo", - "arch": "arm64" + "arch": "arm64", + "build_type": "RelWithDebInfo" }, { "version": "21.1.8", "filename": "x64-linux-gnu-debug-asan.tar.xz", - "sha256": "64ebfc3ecf4117b6fdd467d5f9bcd5a2030bb408c70415ed40bf99f35311a6b0", + "sha256": "66ad57bcdf63965d2567be4a4b89bbb4dc5ed5d9ddfe4a77798c72cc0c099f91", "lto": false, "asan": true, "platform": "linux", - "build_type": "Debug", - "arch": "x64" + "arch": "x64", + "build_type": "Debug" }, { "version": "21.1.8", "filename": "x64-linux-gnu-releasedbg-lto.tar.xz", - "sha256": "af8f97fbb57999aedd37a5e7c20d89499bf6518c6a0b5e83e18e6677a075fe71", + "sha256": "c9cdb7a65710218741e62e77e191515d42957fa1516bbc2944e7f7fc159ecdcd", "lto": true, "asan": false, "platform": "linux", - "build_type": "RelWithDebInfo", - "arch": "x64" + "arch": "x64", + "build_type": "RelWithDebInfo" }, { "version": "21.1.8", "filename": "x64-linux-gnu-releasedbg.tar.xz", - "sha256": "cdcd5312c6eba9295a05a68cd09559c4616ae0456550f7a64ed8fa15d283285b", + "sha256": "9872a9d7049570ae5f5c8bf570da5673683214fd977dbf2507742205e4c8b825", "lto": false, "asan": false, "platform": "linux", - "build_type": "RelWithDebInfo", - "arch": "x64" + "arch": "x64", + "build_type": "RelWithDebInfo" }, { "version": "21.1.8", "filename": "x64-macos-clang-releasedbg-lto.tar.xz", - "sha256": "543db4d7fcd81d127c8f9ad33e359ecba442549da6d63d80e564710049ae2f08", + "sha256": "7ba2cde330b800c92b58feacfb0eb0b07c6c7abfcc3e4af9f179475354c1bc74", "lto": true, "asan": false, "platform": "macosx", - "build_type": "RelWithDebInfo", - "arch": "x64" + "arch": "x64", + "build_type": "RelWithDebInfo" }, { "version": "21.1.8", "filename": "x64-macos-clang-releasedbg.tar.xz", - "sha256": "2193ade0b1e123f835b782488f31262a2f9ef541cf0f0f0125b190e08b721a29", + "sha256": "e3bab8f1428075672d27b564c906d349c6a8d5288b373923439262a33a8f3c23", "lto": false, "asan": false, "platform": "macosx", - "build_type": "RelWithDebInfo", - "arch": "x64" + "arch": "x64", + "build_type": "RelWithDebInfo" }, { "version": "21.1.8", "filename": "x64-windows-msvc-releasedbg-lto.tar.xz", - "sha256": "bf131c12c1ae87ffe3b7f87c424d7c2e628e63f591cb3505e901cf4c5ba0474b", + "sha256": "f605d23a0737f346fc5ed2e4e4e5380540a7702de56f4b0c16ee205e12d47d21", "lto": true, "asan": false, "platform": "windows", - "build_type": "RelWithDebInfo", - "arch": "x64" + "arch": "x64", + "build_type": "RelWithDebInfo" }, { "version": "21.1.8", "filename": "x64-windows-msvc-releasedbg.tar.xz", - "sha256": "6dddec41a7960c9409516a46ca9d48d30f85adf948362e61ff37dd55ecf17568", + "sha256": "d22ccd8d7042c5a1da989cd32f95627491d6e7d35433a31e7250c17830958c3c", "lto": false, "asan": false, "platform": "windows", - "build_type": "RelWithDebInfo", - "arch": "x64" + "arch": "x64", + "build_type": "RelWithDebInfo" } ] From 67967738bc026dd0e052d759aef15e029bb0e07d Mon Sep 17 00:00:00 2001 From: ykiko Date: Mon, 13 Apr 2026 18:26:32 +0800 Subject: [PATCH 30/52] feat(ci): enable tests for cross-compile builds, remove Windows Debug - Remove Windows Debug from CI matrix (known linker mismatch, deferred) - macOS x86_64 cross-compile: enable tests via Rosetta 2 - Linux aarch64 cross-compile: enable tests via QEMU user-mode emulation - Windows ARM64 cross-compile: build-only (no ARM64 emulation on x64) Cross-compiled test binaries run transparently through binfmt_misc (QEMU on Linux, Rosetta on macOS). Tests are compiled with CLICE_ENABLE_TEST=ON for testable platforms. Co-Authored-By: Claude Opus 4.6 --- .github/workflows/test-cmake.yml | 24 +++++++++++++++++------- 1 file changed, 17 insertions(+), 7 deletions(-) diff --git a/.github/workflows/test-cmake.yml b/.github/workflows/test-cmake.yml index 5a9502572..d2109eff7 100644 --- a/.github/workflows/test-cmake.yml +++ b/.github/workflows/test-cmake.yml @@ -19,8 +19,6 @@ jobs: matrix: include: # ── Native builds ────────────────────────────────────────────── - - os: windows-2025 - build_type: Debug - os: windows-2025 build_type: RelWithDebInfo - os: ubuntu-24.04 @@ -31,7 +29,7 @@ jobs: build_type: Debug - os: macos-15 build_type: RelWithDebInfo - # ── Cross-compile builds (build-only, no tests) ────────────── + # ── Cross-compile builds ──────────────────────────────────────── - os: macos-15 build_type: RelWithDebInfo target_triple: x86_64-apple-darwin @@ -41,6 +39,7 @@ jobs: - os: windows-2025 build_type: RelWithDebInfo target_triple: aarch64-pc-windows-msvc + build_only: true runs-on: ${{ matrix.os }} steps: - name: Checkout repository @@ -66,6 +65,13 @@ jobs: fi shell: bash + - name: Setup QEMU for aarch64 tests + if: matrix.target_triple == 'aarch64-linux-gnu' + run: | + sudo apt-get update + sudo apt-get install -y qemu-user-static libc6-arm64-cross libstdc++6-arm64-cross + echo "QEMU_LD_PREFIX=/usr/aarch64-linux-gnu" >> "$GITHUB_ENV" + - name: Build (native) if: ${{ !matrix.target_triple }} run: pixi run build ${{ matrix.build_type }} ON @@ -74,19 +80,23 @@ jobs: if: ${{ matrix.target_triple }} shell: bash run: | - pixi run cmake-config ${{ matrix.build_type }} OFF "-DCLICE_ENABLE_TEST=OFF -DCLICE_TARGET_TRIPLE=${{ matrix.target_triple }}" + TEST_FLAG="ON" + if [[ "${{ matrix.build_only }}" == "true" ]]; then + TEST_FLAG="OFF" + fi + pixi run cmake-config ${{ matrix.build_type }} OFF "-DCLICE_ENABLE_TEST=${TEST_FLAG} -DCLICE_TARGET_TRIPLE=${{ matrix.target_triple }}" pixi run cmake-build ${{ matrix.build_type }} - name: Unit Test - if: ${{ !matrix.target_triple }} + if: ${{ !matrix.build_only }} run: pixi run unit-test ${{ matrix.build_type }} - name: Integration Test - if: ${{ !matrix.target_triple }} + if: ${{ !matrix.build_only }} run: pixi run integration-test ${{ matrix.build_type }} - name: Smoke Test - if: ${{ !matrix.target_triple && (success() || failure()) }} + if: ${{ !matrix.build_only && (success() || failure()) }} run: pixi run smoke-test ${{ matrix.build_type }} - name: Print cache stats and stop server From 1d832efbd6de184bacc6b4c79af37b3759977737 Mon Sep 17 00:00:00 2001 From: ykiko Date: Mon, 13 Apr 2026 18:51:57 +0800 Subject: [PATCH 31/52] feat(ci): use native ARM64 runner for Windows ARM64 tests Replace cross-compile + build-only with a native build on windows-11-arm runner. This allows running full tests (unit, integration, smoke) on ARM64 Windows. Co-Authored-By: Claude Opus 4.6 --- .github/workflows/test-cmake.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/test-cmake.yml b/.github/workflows/test-cmake.yml index d2109eff7..02929d24a 100644 --- a/.github/workflows/test-cmake.yml +++ b/.github/workflows/test-cmake.yml @@ -36,10 +36,8 @@ jobs: - os: ubuntu-24.04 build_type: RelWithDebInfo target_triple: aarch64-linux-gnu - - os: windows-2025 + - os: windows-11-arm build_type: RelWithDebInfo - target_triple: aarch64-pc-windows-msvc - build_only: true runs-on: ${{ matrix.os }} steps: - name: Checkout repository From 9719593502d0cff9628423a1c2a73afb59228ba8 Mon Sep 17 00:00:00 2001 From: ykiko Date: Mon, 13 Apr 2026 19:21:07 +0800 Subject: [PATCH 32/52] fix(ci): pass target triple for Windows ARM64 native runner The pixi-managed clang on windows-11-arm is an x64 binary running under emulation, defaulting to x64 code generation. Pass CLICE_TARGET_TRIPLE so it generates ARM64 code that matches the ARM64 LLVM libraries. Tests still run natively on the ARM64 runner. Co-Authored-By: Claude Opus 4.6 --- .github/workflows/test-cmake.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/test-cmake.yml b/.github/workflows/test-cmake.yml index 02929d24a..0eb98e4ae 100644 --- a/.github/workflows/test-cmake.yml +++ b/.github/workflows/test-cmake.yml @@ -38,6 +38,7 @@ jobs: target_triple: aarch64-linux-gnu - os: windows-11-arm build_type: RelWithDebInfo + target_triple: aarch64-pc-windows-msvc runs-on: ${{ matrix.os }} steps: - name: Checkout repository From 086786558e53e15c4b16e5ab04a588bdf01e5473 Mon Sep 17 00:00:00 2001 From: ykiko Date: Mon, 13 Apr 2026 19:57:21 +0800 Subject: [PATCH 33/52] feat(ci): use native runners for all platforms, drop QEMU/Rosetta Replace cross-compilation with native runners: - macOS x86_64: macos-13 (Intel) instead of Rosetta on macos-15 - Linux aarch64: ubuntu-24.04-arm instead of QEMU on ubuntu-24.04 - Windows ARM64: windows-11-arm (kept from previous commit) Remove QEMU setup step and build_only logic since all platforms now build and test natively. Co-Authored-By: Claude Opus 4.6 --- .github/workflows/test-cmake.yml | 25 +++++-------------------- 1 file changed, 5 insertions(+), 20 deletions(-) diff --git a/.github/workflows/test-cmake.yml b/.github/workflows/test-cmake.yml index 0eb98e4ae..46cc0495d 100644 --- a/.github/workflows/test-cmake.yml +++ b/.github/workflows/test-cmake.yml @@ -29,13 +29,11 @@ jobs: build_type: Debug - os: macos-15 build_type: RelWithDebInfo - # ── Cross-compile builds ──────────────────────────────────────── - - os: macos-15 + # ── Additional platform builds ───────────────────────────────── + - os: macos-13 build_type: RelWithDebInfo - target_triple: x86_64-apple-darwin - - os: ubuntu-24.04 + - os: ubuntu-24.04-arm build_type: RelWithDebInfo - target_triple: aarch64-linux-gnu - os: windows-11-arm build_type: RelWithDebInfo target_triple: aarch64-pc-windows-msvc @@ -64,13 +62,6 @@ jobs: fi shell: bash - - name: Setup QEMU for aarch64 tests - if: matrix.target_triple == 'aarch64-linux-gnu' - run: | - sudo apt-get update - sudo apt-get install -y qemu-user-static libc6-arm64-cross libstdc++6-arm64-cross - echo "QEMU_LD_PREFIX=/usr/aarch64-linux-gnu" >> "$GITHUB_ENV" - - name: Build (native) if: ${{ !matrix.target_triple }} run: pixi run build ${{ matrix.build_type }} ON @@ -79,23 +70,17 @@ jobs: if: ${{ matrix.target_triple }} shell: bash run: | - TEST_FLAG="ON" - if [[ "${{ matrix.build_only }}" == "true" ]]; then - TEST_FLAG="OFF" - fi - pixi run cmake-config ${{ matrix.build_type }} OFF "-DCLICE_ENABLE_TEST=${TEST_FLAG} -DCLICE_TARGET_TRIPLE=${{ matrix.target_triple }}" + pixi run cmake-config ${{ matrix.build_type }} OFF "-DCLICE_ENABLE_TEST=ON -DCLICE_TARGET_TRIPLE=${{ matrix.target_triple }}" pixi run cmake-build ${{ matrix.build_type }} - name: Unit Test - if: ${{ !matrix.build_only }} run: pixi run unit-test ${{ matrix.build_type }} - name: Integration Test - if: ${{ !matrix.build_only }} run: pixi run integration-test ${{ matrix.build_type }} - name: Smoke Test - if: ${{ !matrix.build_only && (success() || failure()) }} + if: success() || failure() run: pixi run smoke-test ${{ matrix.build_type }} - name: Print cache stats and stop server From c490cce28221852016a2398ff86fa04227742a8f Mon Sep 17 00:00:00 2001 From: ykiko Date: Mon, 13 Apr 2026 20:11:19 +0800 Subject: [PATCH 34/52] fix(ci): revert to cross-compile for macOS x64 and Linux arm64 macos-13 runner is no longer available and ubuntu-24.04-arm lacks pixi linux-aarch64 platform packages. Revert these two to the proven cross-compile approach (Rosetta / QEMU). Keep windows-11-arm native runner which works. Co-Authored-By: Claude Opus 4.6 --- .github/workflows/test-cmake.yml | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-cmake.yml b/.github/workflows/test-cmake.yml index 46cc0495d..90c989792 100644 --- a/.github/workflows/test-cmake.yml +++ b/.github/workflows/test-cmake.yml @@ -30,10 +30,12 @@ jobs: - os: macos-15 build_type: RelWithDebInfo # ── Additional platform builds ───────────────────────────────── - - os: macos-13 + - os: macos-15 build_type: RelWithDebInfo - - os: ubuntu-24.04-arm + target_triple: x86_64-apple-darwin + - os: ubuntu-24.04 build_type: RelWithDebInfo + target_triple: aarch64-linux-gnu - os: windows-11-arm build_type: RelWithDebInfo target_triple: aarch64-pc-windows-msvc @@ -62,6 +64,13 @@ jobs: fi shell: bash + - name: Setup QEMU for aarch64 tests + if: matrix.target_triple == 'aarch64-linux-gnu' + run: | + sudo apt-get update + sudo apt-get install -y qemu-user-static libc6-arm64-cross libstdc++6-arm64-cross + echo "QEMU_LD_PREFIX=/usr/aarch64-linux-gnu" >> "$GITHUB_ENV" + - name: Build (native) if: ${{ !matrix.target_triple }} run: pixi run build ${{ matrix.build_type }} ON From 939331da7bd37ca8836f0ef33ffe3ddf46000912 Mon Sep 17 00:00:00 2001 From: ykiko Date: Mon, 13 Apr 2026 21:55:53 +0800 Subject: [PATCH 35/52] feat(ci): use native runners for cross-platform testing via artifact transfer Cross-compile on pixi-supported platforms, upload binaries, then run tests on native runners (macos-15-intel, ubuntu-24.04-arm) instead of QEMU/Rosetta. Add test-run pixi environment for lightweight test-only platform support. Co-Authored-By: Claude Opus 4.6 --- .github/workflows/test-cmake.yml | 67 +- pixi.lock | 1083 +++++++++++++++++++++++++++++- pixi.toml | 14 +- 3 files changed, 1150 insertions(+), 14 deletions(-) diff --git a/.github/workflows/test-cmake.yml b/.github/workflows/test-cmake.yml index 90c989792..b46086102 100644 --- a/.github/workflows/test-cmake.yml +++ b/.github/workflows/test-cmake.yml @@ -29,13 +29,16 @@ jobs: build_type: Debug - os: macos-15 build_type: RelWithDebInfo - # ── Additional platform builds ───────────────────────────────── + # ── Cross-compile (build only, tests run on native runners) ──── - os: macos-15 build_type: RelWithDebInfo target_triple: x86_64-apple-darwin + build_only: true - os: ubuntu-24.04 build_type: RelWithDebInfo target_triple: aarch64-linux-gnu + build_only: true + # ── Native ARM64 build + test ───────────────────────────────── - os: windows-11-arm build_type: RelWithDebInfo target_triple: aarch64-pc-windows-msvc @@ -64,13 +67,6 @@ jobs: fi shell: bash - - name: Setup QEMU for aarch64 tests - if: matrix.target_triple == 'aarch64-linux-gnu' - run: | - sudo apt-get update - sudo apt-get install -y qemu-user-static libc6-arm64-cross libstdc++6-arm64-cross - echo "QEMU_LD_PREFIX=/usr/aarch64-linux-gnu" >> "$GITHUB_ENV" - - name: Build (native) if: ${{ !matrix.target_triple }} run: pixi run build ${{ matrix.build_type }} ON @@ -79,17 +75,28 @@ jobs: if: ${{ matrix.target_triple }} shell: bash run: | - pixi run cmake-config ${{ matrix.build_type }} OFF "-DCLICE_ENABLE_TEST=ON -DCLICE_TARGET_TRIPLE=${{ matrix.target_triple }}" + pixi run cmake-config ${{ matrix.build_type }} OFF "-DCLICE_TARGET_TRIPLE=${{ matrix.target_triple }}" pixi run cmake-build ${{ matrix.build_type }} + - name: Upload cross-compiled binaries + if: ${{ matrix.build_only }} + uses: actions/upload-artifact@v4 + with: + name: cross-build-${{ matrix.target_triple }} + path: build/${{ matrix.build_type }}/bin/ + if-no-files-found: error + retention-days: 1 + - name: Unit Test + if: ${{ !matrix.build_only }} run: pixi run unit-test ${{ matrix.build_type }} - name: Integration Test + if: ${{ !matrix.build_only }} run: pixi run integration-test ${{ matrix.build_type }} - name: Smoke Test - if: success() || failure() + if: ${{ !matrix.build_only && (success() || failure()) }} run: pixi run smoke-test ${{ matrix.build_type }} - name: Print cache stats and stop server @@ -102,3 +109,43 @@ jobs: pixi run -- ccache --show-stats fi shell: bash + + test-cross: + needs: build + strategy: + fail-fast: false + matrix: + include: + - os: macos-15-intel + build_type: RelWithDebInfo + target_triple: x86_64-apple-darwin + - os: ubuntu-24.04-arm + build_type: RelWithDebInfo + target_triple: aarch64-linux-gnu + runs-on: ${{ matrix.os }} + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - uses: ./.github/actions/setup-pixi + with: + environments: test-run + + - name: Download cross-compiled binaries + uses: actions/download-artifact@v4 + with: + name: cross-build-${{ matrix.target_triple }} + path: build/${{ matrix.build_type }}/bin/ + + - name: Make binaries executable + run: chmod +x build/${{ matrix.build_type }}/bin/* + + - name: Unit Test + run: pixi run -e test-run unit-test ${{ matrix.build_type }} + + - name: Integration Test + run: pixi run -e test-run integration-test ${{ matrix.build_type }} + + - name: Smoke Test + if: success() || failure() + run: pixi run -e test-run smoke-test ${{ matrix.build_type }} diff --git a/pixi.lock b/pixi.lock index 46992a1cf..5ac018a80 100644 --- a/pixi.lock +++ b/pixi.lock @@ -908,6 +908,46 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.6.0-h26f9b46_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pnpm-10.26.2-hcdd682b_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb78ec9c_6.conda + linux-aarch64: + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/_openmp_mutex-4.5-20_gnu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/c-ares-1.34.6-he30d5cf_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/flatbuffers-25.9.23-h5248ec3_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/icu-78.3-hcab7f73_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libbrotlicommon-1.2.0-he30d5cf_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libbrotlidec-1.2.0-he30d5cf_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libbrotlienc-1.2.0-he30d5cf_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libev-4.33-h31becfc_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgcc-15.2.0-h8acb6b2_18.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgcc-ng-15.2.0-he9431aa_18.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgomp-15.2.0-h8acb6b2_18.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libnghttp2-1.68.1-hd3077d7_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libsqlite-3.53.0-h022381a_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libstdcxx-15.2.0-hef695bb_18.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libuv-1.51.0-he30d5cf_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libzlib-1.3.2-hdc9db2a_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/nodejs-24.14.1-he5f9b4c_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/openssl-3.6.2-h546c87b_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/pnpm-10.33.0-ha193a0a_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/zstd-1.5.7-h85ac4a6_6.conda + osx-64: + - conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.34.6-hb5e19a0_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/flatbuffers-25.9.23-h6982a40_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/icu-78.3-h25d91c4_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlicommon-1.2.0-h8616949_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlidec-1.2.0-h8616949_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlienc-1.2.0-h8616949_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-22.1.3-h19cb2f5_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libev-4.33-h10d778d_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libnghttp2-1.68.1-h70048d4_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libsqlite-3.53.0-h8f8c405_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libuv-1.51.0-h58003a5_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libzlib-1.3.2-hbb4bfdb_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/nodejs-24.14.1-hc6dc384_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.6.2-hc881268_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pnpm-10.33.0-hd10af01_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/zstd-1.5.7-h3eecb57_6.conda osx-arm64: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.34.6-hc919400_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.11.12-hbd8a1cb_0.conda @@ -1151,6 +1191,178 @@ environments: - pypi: https://files.pythonhosted.org/packages/d4/24/a372aaf5c9b7208e7112038812994107bc65a84cd00e0354a88c2c77a617/pytest-9.0.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e5/35/f8b19922b6a25bc0880171a2f1a003eaeb93657475193ab516fd87cac9da/pytest_asyncio-1.3.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl + test-run: + channels: + - url: https://conda.anaconda.org/conda-forge/ + indexes: + - https://pypi.org/simple + options: + pypi-prerelease-mode: if-necessary-or-explicit + packages: + linux-64: + - conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-20_gnu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hda65f42_9.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/flatbuffers-25.9.23-hb7d4c21_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/icu-78.3-h33c6efd_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45.1-default_hbd61a6d_102.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.7.5-hecca717_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.5.2-h3435931_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-he0feb66_18.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-he0feb66_18.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.3-hb03c661_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libmpdec-4.0.0-hb03c661_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.53.0-hf4e2dac_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h934c35e_18.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.42-h5347b49_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.3.2-h25fd6f3_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.5-h2d0b736_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.6.2-h35e630c_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.14.4-habeac84_100_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.3-h853b02a_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h366c992_103.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb78ec9c_6.conda + - pypi: https://files.pythonhosted.org/packages/64/b4/17d4b0b2a2dc85a6df63d1157e028ed19f90d4cd97c36717afef2bc2f395/attrs-26.1.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/80/56/60547f7801b97c67e97491dc3d9ade9fbccbd0325058fd3dfcb2f5d98d90/cattrs-26.1.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/cb/b1/3846dd7f199d53cb17f49cba7e651e9ce294d8497c8c150530ed11865bb8/iniconfig-2.3.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/7b/f0/92f2d609d6642b5f30cb50a885d2bf1483301c69d5786286500d15651ef2/lsprotocol-2025.0.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/b7/b9/c538f279a4e237a006a2c98387d081e9eb060d203d8ed34467cc0f0b9b53/packaging-26.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/fd/1a/208293b6c350f5abea6941d5606080d4a492644052504f5312e5de30a902/pygls-2.1.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/f4/7e/a72dd26f3b0f4f2bf1dd8923c85f7ceb43172af56d63c7383eb62b332364/pygments-2.20.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/d4/24/a372aaf5c9b7208e7112038812994107bc65a84cd00e0354a88c2c77a617/pytest-9.0.3-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/e5/35/f8b19922b6a25bc0880171a2f1a003eaeb93657475193ab516fd87cac9da/pytest_asyncio-1.3.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl + linux-aarch64: + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/_openmp_mutex-4.5-20_gnu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/bzip2-1.0.8-h4777abc_9.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/flatbuffers-25.9.23-h5248ec3_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ld_impl_linux-aarch64-2.45.1-default_h1979696_102.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libexpat-2.7.5-hfae3067_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libffi-3.5.2-h376a255_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgcc-15.2.0-h8acb6b2_18.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgomp-15.2.0-h8acb6b2_18.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/liblzma-5.8.3-he30d5cf_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libmpdec-4.0.0-he30d5cf_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libsqlite-3.53.0-h022381a_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libstdcxx-15.2.0-hef695bb_18.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libuuid-2.42-h1022ec0_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libzlib-1.3.2-hdc9db2a_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ncurses-6.5-ha32ae93_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/openssl-3.6.2-h546c87b_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/python-3.14.4-hfd9ac0a_100_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/readline-8.3-hb682ff5_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/tk-8.6.13-noxft_h0dc03b3_103.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/zstd-1.5.7-h85ac4a6_6.conda + - pypi: https://files.pythonhosted.org/packages/64/b4/17d4b0b2a2dc85a6df63d1157e028ed19f90d4cd97c36717afef2bc2f395/attrs-26.1.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/80/56/60547f7801b97c67e97491dc3d9ade9fbccbd0325058fd3dfcb2f5d98d90/cattrs-26.1.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/cb/b1/3846dd7f199d53cb17f49cba7e651e9ce294d8497c8c150530ed11865bb8/iniconfig-2.3.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/7b/f0/92f2d609d6642b5f30cb50a885d2bf1483301c69d5786286500d15651ef2/lsprotocol-2025.0.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/b7/b9/c538f279a4e237a006a2c98387d081e9eb060d203d8ed34467cc0f0b9b53/packaging-26.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/fd/1a/208293b6c350f5abea6941d5606080d4a492644052504f5312e5de30a902/pygls-2.1.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/f4/7e/a72dd26f3b0f4f2bf1dd8923c85f7ceb43172af56d63c7383eb62b332364/pygments-2.20.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/d4/24/a372aaf5c9b7208e7112038812994107bc65a84cd00e0354a88c2c77a617/pytest-9.0.3-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/e5/35/f8b19922b6a25bc0880171a2f1a003eaeb93657475193ab516fd87cac9da/pytest_asyncio-1.3.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl + osx-64: + - conda: https://conda.anaconda.org/conda-forge/osx-64/bzip2-1.0.8-h500dc9f_9.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/flatbuffers-25.9.23-h6982a40_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/icu-78.3-h25d91c4_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-22.1.3-h19cb2f5_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libexpat-2.7.5-hcc62823_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libffi-3.5.2-hd1f9c09_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/liblzma-5.8.3-hbb4bfdb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libmpdec-4.0.0-hf3981d6_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libsqlite-3.53.0-h8f8c405_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libzlib-1.3.2-hbb4bfdb_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.5-h0622a9a_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.6.2-hc881268_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/python-3.14.4-h7c6738f_100_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/readline-8.3-h68b038d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-h7142dee_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/zstd-1.5.7-h3eecb57_6.conda + - pypi: https://files.pythonhosted.org/packages/64/b4/17d4b0b2a2dc85a6df63d1157e028ed19f90d4cd97c36717afef2bc2f395/attrs-26.1.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/80/56/60547f7801b97c67e97491dc3d9ade9fbccbd0325058fd3dfcb2f5d98d90/cattrs-26.1.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/cb/b1/3846dd7f199d53cb17f49cba7e651e9ce294d8497c8c150530ed11865bb8/iniconfig-2.3.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/7b/f0/92f2d609d6642b5f30cb50a885d2bf1483301c69d5786286500d15651ef2/lsprotocol-2025.0.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/b7/b9/c538f279a4e237a006a2c98387d081e9eb060d203d8ed34467cc0f0b9b53/packaging-26.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/fd/1a/208293b6c350f5abea6941d5606080d4a492644052504f5312e5de30a902/pygls-2.1.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/f4/7e/a72dd26f3b0f4f2bf1dd8923c85f7ceb43172af56d63c7383eb62b332364/pygments-2.20.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/d4/24/a372aaf5c9b7208e7112038812994107bc65a84cd00e0354a88c2c77a617/pytest-9.0.3-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/e5/35/f8b19922b6a25bc0880171a2f1a003eaeb93657475193ab516fd87cac9da/pytest_asyncio-1.3.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl + osx-arm64: + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-hd037594_9.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/flatbuffers-25.9.23-h9e8ef45_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-22.1.3-h55c6f16_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.7.5-hf6b4638_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libffi-3.5.2-hcf2aa1b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-5.8.3-h8088a28_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libmpdec-4.0.0-h84a0fba_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.53.0-h1b79a29_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzlib-1.3.2-h8088a28_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.5-h5e97a16_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.6.2-hd24854e_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.14.4-h4c637c5_100_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/readline-8.3-h46df422_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h010d191_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.7-hbf9d68e_6.conda + - pypi: https://files.pythonhosted.org/packages/64/b4/17d4b0b2a2dc85a6df63d1157e028ed19f90d4cd97c36717afef2bc2f395/attrs-26.1.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/80/56/60547f7801b97c67e97491dc3d9ade9fbccbd0325058fd3dfcb2f5d98d90/cattrs-26.1.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/cb/b1/3846dd7f199d53cb17f49cba7e651e9ce294d8497c8c150530ed11865bb8/iniconfig-2.3.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/7b/f0/92f2d609d6642b5f30cb50a885d2bf1483301c69d5786286500d15651ef2/lsprotocol-2025.0.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/b7/b9/c538f279a4e237a006a2c98387d081e9eb060d203d8ed34467cc0f0b9b53/packaging-26.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/fd/1a/208293b6c350f5abea6941d5606080d4a492644052504f5312e5de30a902/pygls-2.1.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/f4/7e/a72dd26f3b0f4f2bf1dd8923c85f7ceb43172af56d63c7383eb62b332364/pygments-2.20.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/d4/24/a372aaf5c9b7208e7112038812994107bc65a84cd00e0354a88c2c77a617/pytest-9.0.3-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/e5/35/f8b19922b6a25bc0880171a2f1a003eaeb93657475193ab516fd87cac9da/pytest_asyncio-1.3.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl + win-64: + - conda: https://conda.anaconda.org/conda-forge/win-64/bzip2-1.0.8-h0ad9c76_9.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-h4c7d964_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/flatbuffers-25.9.23-h4025804_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.7.5-hac47afa_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.5.2-h3d046cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/liblzma-5.8.3-hfd05255_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libmpdec-4.0.0-hfd05255_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.53.0-hf5d6505_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libzlib-1.3.2-hfd05255_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.6.2-hf411b9b_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.14.4-h4b44e0e_100_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h6ed50ae_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/ucrt-10.0.26100.0-h57928b3_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-h41ae7f8_34.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.44.35208-h818238b_34.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vcomp14-14.44.35208-h818238b_34.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/zstd-1.5.7-h534d264_6.conda + - pypi: https://files.pythonhosted.org/packages/64/b4/17d4b0b2a2dc85a6df63d1157e028ed19f90d4cd97c36717afef2bc2f395/attrs-26.1.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/80/56/60547f7801b97c67e97491dc3d9ade9fbccbd0325058fd3dfcb2f5d98d90/cattrs-26.1.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/cb/b1/3846dd7f199d53cb17f49cba7e651e9ce294d8497c8c150530ed11865bb8/iniconfig-2.3.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/7b/f0/92f2d609d6642b5f30cb50a885d2bf1483301c69d5786286500d15651ef2/lsprotocol-2025.0.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/b7/b9/c538f279a4e237a006a2c98387d081e9eb060d203d8ed34467cc0f0b9b53/packaging-26.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/fd/1a/208293b6c350f5abea6941d5606080d4a492644052504f5312e5de30a902/pygls-2.1.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/f4/7e/a72dd26f3b0f4f2bf1dd8923c85f7ceb43172af56d63c7383eb62b332364/pygments-2.20.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/d4/24/a372aaf5c9b7208e7112038812994107bc65a84cd00e0354a88c2c77a617/pytest-9.0.3-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/e5/35/f8b19922b6a25bc0880171a2f1a003eaeb93657475193ab516fd87cac9da/pytest_asyncio-1.3.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl packages: - conda: https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2 sha256: fe51de6107f9edc7aa4f786a70f4a883943bc9d39b3bb7307c04c41410990726 @@ -1170,6 +1382,7 @@ packages: - openmp_impl <0.0a0 license: BSD-3-Clause license_family: BSD + purls: [] size: 28948 timestamp: 1770939786096 - conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2 @@ -1186,6 +1399,19 @@ packages: purls: [] size: 23621 timestamp: 1650670423406 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/_openmp_mutex-4.5-20_gnu.conda + build_number: 20 + sha256: a2527b1d81792a0ccd2c05850960df119c2b6d8f5fdec97f2db7d25dc23b1068 + md5: 468fd3bb9e1f671d36c2cbc677e56f1d + depends: + - libgomp >=7.5.0 + constrains: + - openmp_impl <0.0a0 + license: BSD-3-Clause + license_family: BSD + purls: [] + size: 28926 + timestamp: 1770939656741 - pypi: https://files.pythonhosted.org/packages/64/b4/17d4b0b2a2dc85a6df63d1157e028ed19f90d4cd97c36717afef2bc2f395/attrs-26.1.0-py3-none-any.whl name: attrs version: 26.1.0 @@ -1265,8 +1491,29 @@ packages: - libgcc >=14 license: bzip2-1.0.6 license_family: BSD + purls: [] size: 260182 timestamp: 1771350215188 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/bzip2-1.0.8-h4777abc_9.conda + sha256: b3495077889dde6bb370938e7db82be545c73e8589696ad0843a32221520ad4c + md5: 840d8fc0d7b3209be93080bc20e07f2d + depends: + - libgcc >=14 + license: bzip2-1.0.6 + license_family: BSD + purls: [] + size: 192412 + timestamp: 1771350241232 +- conda: https://conda.anaconda.org/conda-forge/osx-64/bzip2-1.0.8-h500dc9f_9.conda + sha256: 9f242f13537ef1ce195f93f0cc162965d6cc79da578568d6d8e50f70dd025c42 + md5: 4173ac3b19ec0a4f400b4f782910368b + depends: + - __osx >=10.13 + license: bzip2-1.0.6 + license_family: BSD + purls: [] + size: 133427 + timestamp: 1771350680709 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-hd037594_8.conda sha256: b456200636bd5fecb2bec63f7e0985ad2097cf1b83d60ce0b6968dffa6d02aa1 md5: 58fd217444c2a5701a44244faf518206 @@ -1284,6 +1531,7 @@ packages: - __osx >=11.0 license: bzip2-1.0.6 license_family: BSD + purls: [] size: 124834 timestamp: 1771350416561 - conda: https://conda.anaconda.org/conda-forge/win-64/bzip2-1.0.8-h0ad9c76_8.conda @@ -1307,6 +1555,7 @@ packages: - vc14_runtime >=14.44.35208 license: bzip2-1.0.6 license_family: BSD + purls: [] size: 56115 timestamp: 1771350256444 - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.34.6-hb03c661_0.conda @@ -1320,6 +1569,24 @@ packages: purls: [] size: 207882 timestamp: 1765214722852 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/c-ares-1.34.6-he30d5cf_0.conda + sha256: 7ec8a68efe479e2e298558cbc2e79d29430d5c7508254268818c0ae19b206519 + md5: 1dfbec0d08f112103405756181304c16 + depends: + - libgcc >=14 + license: MIT + license_family: MIT + size: 217215 + timestamp: 1765214743735 +- conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.34.6-hb5e19a0_0.conda + sha256: 2f5bc0292d595399df0d168355b4e9820affc8036792d6984bd751fdda2bcaea + md5: fc9a153c57c9f070bebaa7eef30a8f17 + depends: + - __osx >=10.13 + license: MIT + license_family: MIT + size: 186122 + timestamp: 1765215100384 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.34.6-hc919400_0.conda sha256: 2995f2aed4e53725e5efbc28199b46bf311c3cab2648fc4f10c2227d6d5fa196 md5: bcb3cba70cf1eec964a03b4ba7775f01 @@ -1354,6 +1621,7 @@ packages: depends: - __win license: ISC + purls: [] size: 147734 timestamp: 1772006322223 - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda @@ -1362,6 +1630,7 @@ packages: depends: - __unix license: ISC + purls: [] size: 147413 timestamp: 1772006283803 - pypi: https://files.pythonhosted.org/packages/80/56/60547f7801b97c67e97491dc3d9ade9fbccbd0325058fd3dfcb2f5d98d90/cattrs-26.1.0-py3-none-any.whl @@ -2159,6 +2428,28 @@ packages: purls: [] size: 1584732 timestamp: 1761142459651 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/flatbuffers-25.9.23-h5248ec3_0.conda + sha256: 9e0559987ca6a4a5b4a942514709311993ded4b1fb911a1fc69876ba3e221fe0 + md5: b68619170886a3289fdc167e1120122c + depends: + - libgcc >=14 + - libstdcxx >=14 + license: Apache-2.0 + license_family: APACHE + purls: [] + size: 1414741 + timestamp: 1761328999536 +- conda: https://conda.anaconda.org/conda-forge/osx-64/flatbuffers-25.9.23-h6982a40_0.conda + sha256: 7d430e5fbe47e690e00345e4c5a856d2469aa1ea6afc573e8dabd0eb8aabea5f + md5: 314a166f491f531788ad6220acad496c + depends: + - __osx >=10.13 + - libcxx >=19 + license: Apache-2.0 + license_family: APACHE + purls: [] + size: 1358478 + timestamp: 1761142801269 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/flatbuffers-25.9.23-h9e8ef45_0.conda sha256: b8f4ce2919f2542c6688af909c18f9672b2a19efdb57118c5f415dd5ff0fb3cd md5: 1d6e0829bc8d6907fae9a81f169414ce @@ -2313,8 +2604,29 @@ packages: - libstdcxx >=14 license: MIT license_family: MIT + purls: [] size: 12723451 timestamp: 1773822285671 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/icu-78.3-hcab7f73_0.conda + sha256: 49ba6aed2c6b482bb0ba41078057555d29764299bc947b990708617712ef6406 + md5: 546da38c2fa9efacf203e2ad3f987c59 + depends: + - libgcc >=14 + - libstdcxx >=14 + license: MIT + license_family: MIT + size: 12837286 + timestamp: 1773822650615 +- conda: https://conda.anaconda.org/conda-forge/osx-64/icu-78.3-h25d91c4_0.conda + sha256: 1294117122d55246bb83ad5b589e2a031aacdf2d0b1f99fd338aa4394f881735 + md5: 627eca44e62e2b665eeec57a984a7f00 + depends: + - __osx >=11.0 + license: MIT + license_family: MIT + purls: [] + size: 12273764 + timestamp: 1773822733780 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-75.1-hfee45f7_0.conda sha256: 9ba12c93406f3df5ab0a43db8a4b4ef67a5871dfd401010fbe29b218b2cbe620 md5: 5eb22c1d7b3fc4abb50d92d621583137 @@ -2538,6 +2850,7 @@ packages: - binutils_impl_linux-64 2.45.1 license: GPL-3.0-only license_family: GPL + purls: [] size: 728002 timestamp: 1774197446916 - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-aarch64-2.45.1-default_h27e1c4c_102.conda @@ -2552,6 +2865,18 @@ packages: license_family: GPL size: 787622 timestamp: 1774197463263 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ld_impl_linux-aarch64-2.45.1-default_h1979696_102.conda + sha256: 7abd913d81a9bf00abb699e8987966baa2065f5132e37e815f92d90fc6bba530 + md5: a21644fc4a83da26452a718dc9468d5f + depends: + - zstd >=1.5.7,<1.6.0a0 + constrains: + - binutils_impl_linux-aarch64 2.45.1 + license: GPL-3.0-only + license_family: GPL + purls: [] + size: 875596 + timestamp: 1774197520746 - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlicommon-1.2.0-hb03c661_1.conda sha256: 318f36bd49ca8ad85e6478bd8506c88d82454cc008c1ac1c6bf00a3c42fa610e md5: 72c8fd1af66bd67bf580645b426513ed @@ -2562,6 +2887,24 @@ packages: license_family: MIT size: 79965 timestamp: 1764017188531 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libbrotlicommon-1.2.0-he30d5cf_1.conda + sha256: 5fa8c163c8d776503aa68cdaf798ff9440c76a0a1c3ea84e0c43dbf1ece8af4d + md5: 8ec1d03f3000108899d1799d9964f281 + depends: + - libgcc >=14 + license: MIT + license_family: MIT + size: 80030 + timestamp: 1764017273715 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlicommon-1.2.0-h8616949_1.conda + sha256: 4c19b211b3095f541426d5a9abac63e96a5045e509b3d11d4f9482de53efe43b + md5: f157c098841474579569c85a60ece586 + depends: + - __osx >=10.13 + license: MIT + license_family: MIT + size: 78854 + timestamp: 1764017554982 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlicommon-1.2.0-hc919400_1.conda sha256: a7cb9e660531cf6fbd4148cff608c85738d0b76f0975c5fc3e7d5e92840b7229 md5: 006e7ddd8a110771134fcc4e1e3a6ffa @@ -2582,6 +2925,26 @@ packages: license_family: MIT size: 34632 timestamp: 1764017199083 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libbrotlidec-1.2.0-he30d5cf_1.conda + sha256: 494365e8f58799ea95a6e82334ef696e9c2120aecd6626121694b30a15033301 + md5: 47e5b71b77bb8b47b4ecf9659492977f + depends: + - libbrotlicommon 1.2.0 he30d5cf_1 + - libgcc >=14 + license: MIT + license_family: MIT + size: 33166 + timestamp: 1764017282936 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlidec-1.2.0-h8616949_1.conda + sha256: 729158be90ae655a4e0427fe4079767734af1f9b69ff58cf94ca6e8d4b3eb4b7 + md5: 63186ac7a8a24b3528b4b14f21c03f54 + depends: + - __osx >=10.13 + - libbrotlicommon 1.2.0 h8616949_1 + license: MIT + license_family: MIT + size: 30835 + timestamp: 1764017584474 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlidec-1.2.0-hc919400_1.conda sha256: 2eae444039826db0454b19b52a3390f63bfe24f6b3e63089778dd5a5bf48b6bf md5: 079e88933963f3f149054eec2c487bc2 @@ -2603,6 +2966,26 @@ packages: license_family: MIT size: 298378 timestamp: 1764017210931 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libbrotlienc-1.2.0-he30d5cf_1.conda + sha256: f998c03257b9aa1f7464446af2cf424862f0e54258a2a588309853e45ae771df + md5: 6553a5d017fe14859ea8a4e6ea5def8f + depends: + - libbrotlicommon 1.2.0 he30d5cf_1 + - libgcc >=14 + license: MIT + license_family: MIT + size: 309304 + timestamp: 1764017292044 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlienc-1.2.0-h8616949_1.conda + sha256: 8ece7b41b6548d6601ac2c2cd605cf2261268fc4443227cc284477ed23fbd401 + md5: 12a58fd3fc285ce20cf20edf21a0ff8f + depends: + - __osx >=10.13 + - libbrotlicommon 1.2.0 h8616949_1 + license: MIT + license_family: MIT + size: 310355 + timestamp: 1764017609985 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlienc-1.2.0-hc919400_1.conda sha256: 01436c32bb41f9cb4bcf07dda647ce4e5deb8307abfc3abdc8da5317db8189d1 md5: b2b7c8288ca1a2d71ff97a8e6a1e8883 @@ -2864,6 +3247,16 @@ packages: license_family: MIT size: 392543 timestamp: 1773218585056 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-22.1.3-h19cb2f5_0.conda + sha256: 24d7e7d15d144f2f74fbc9f397a643f0a1da94dbe9aa9f0d15990fabe34974c9 + md5: 212ddd7bd52988f751905114325b5c0b + depends: + - __osx >=11.0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 564947 + timestamp: 1775564350407 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-21.1.7-hf598326_0.conda sha256: 4bdbef0241b52e7a8552e8af7425f0b56d5621dd69df46c816546fefa17d77ab md5: 0de94f39727c31c0447e408c5a210a56 @@ -2893,6 +3286,16 @@ packages: license_family: Apache size: 568094 timestamp: 1774439202359 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-22.1.3-h55c6f16_0.conda + sha256: 34cc56c627b01928e49731bcfe92338e440ab6b5952feee8f1dd16570b8b8339 + md5: acbb3f547c4aae16b19e417db0c6e5ed + depends: + - __osx >=11.0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 570026 + timestamp: 1775565121045 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-devel-20.1.8-h6dc3340_3.conda sha256: 860588fb7b8c9227cfae68cf410c885fb0e05a635f3daddef9457c429a9704ba md5: 78233f1b892fc02bca12b2daf3bd8d48 @@ -2951,6 +3354,22 @@ packages: purls: [] size: 112766 timestamp: 1702146165126 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libev-4.33-h31becfc_2.conda + sha256: 973af77e297f1955dd1f69c2cbdc5ab9dfc88388a5576cd152cda178af0fd006 + md5: a9a13cb143bbaa477b1ebaefbe47a302 + depends: + - libgcc-ng >=12 + license: BSD-2-Clause + license_family: BSD + size: 115123 + timestamp: 1702146237623 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libev-4.33-h10d778d_2.conda + sha256: 0d238488564a7992942aa165ff994eca540f687753b4f0998b29b4e4d030ff43 + md5: 899db79329439820b7e8f8de41bca902 + license: BSD-2-Clause + license_family: BSD + size: 106663 + timestamp: 1702146352558 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libev-4.33-h93a5062_2.conda sha256: 95cecb3902fbe0399c3a7e67a5bed1db813e5ab0e22f4023a5e0f722f2cc214f md5: 36d33e440c31857372a72137f78bacf5 @@ -2982,8 +3401,33 @@ packages: - expat 2.7.5.* license: MIT license_family: MIT + purls: [] size: 76624 timestamp: 1774719175983 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libexpat-2.7.5-hfae3067_0.conda + sha256: 6d438fc0bfdb263c24654fe49c09b31f06ec78eb709eb386392d2499af105f85 + md5: 05d1e0b30acd816a192c03dc6e164f4d + depends: + - libgcc >=14 + constrains: + - expat 2.7.5.* + license: MIT + license_family: MIT + purls: [] + size: 76523 + timestamp: 1774719129371 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libexpat-2.7.5-hcc62823_0.conda + sha256: 341d8a457a8342c396a8ac788da2639cbc8b62568f6ba2a3d322d1ace5aa9e16 + md5: 1d6e71b8c73711e28ffe207acdc4e2f8 + depends: + - __osx >=11.0 + constrains: + - expat 2.7.5.* + license: MIT + license_family: MIT + purls: [] + size: 74797 + timestamp: 1774719557730 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.7.3-haf25636_0.conda sha256: fce22610ecc95e6d149e42a42fbc3cc9d9179bd4eb6232639a60f06e080eec98 md5: b79875dbb5b1db9a4a22a4520f918e1a @@ -3005,6 +3449,7 @@ packages: - expat 2.7.5.* license: MIT license_family: MIT + purls: [] size: 68192 timestamp: 1774719211725 - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.7.3-hac47afa_0.conda @@ -3032,6 +3477,7 @@ packages: - expat 2.7.5.* license: MIT license_family: MIT + purls: [] size: 70609 timestamp: 1774719377850 - conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.5.2-h3435931_0.conda @@ -3042,6 +3488,7 @@ packages: - libgcc >=14 license: MIT license_family: MIT + purls: [] size: 58592 timestamp: 1769456073053 - conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.5.2-h9ec8514_0.conda @@ -3055,6 +3502,26 @@ packages: purls: [] size: 57821 timestamp: 1760295480630 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libffi-3.5.2-h376a255_0.conda + sha256: 3df4c539449aabc3443bbe8c492c01d401eea894603087fca2917aa4e1c2dea9 + md5: 2f364feefb6a7c00423e80dcb12db62a + depends: + - libgcc >=14 + license: MIT + license_family: MIT + purls: [] + size: 55952 + timestamp: 1769456078358 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libffi-3.5.2-hd1f9c09_0.conda + sha256: 951958d1792238006fdc6fce7f71f1b559534743b26cc1333497d46e5903a2d6 + md5: 66a0dc7464927d0853b590b6f53ba3ea + depends: + - __osx >=10.13 + license: MIT + license_family: MIT + purls: [] + size: 53583 + timestamp: 1769456300951 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libffi-3.5.2-hcf2aa1b_0.conda sha256: 6686a26466a527585e6a75cc2a242bf4a3d97d6d6c86424a441677917f28bec7 md5: 43c04d9cb46ef176bb2a4c77e324d599 @@ -3062,6 +3529,7 @@ packages: - __osx >=11.0 license: MIT license_family: MIT + purls: [] size: 40979 timestamp: 1769456747661 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libffi-3.5.2-he5f378a_0.conda @@ -3083,6 +3551,7 @@ packages: - vc14_runtime >=14.44.35208 license: MIT license_family: MIT + purls: [] size: 45831 timestamp: 1769456418774 - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.5.2-h52bdfb6_0.conda @@ -3122,8 +3591,22 @@ packages: - libgomp 15.2.0 he0feb66_18 license: GPL-3.0-only WITH GCC-exception-3.1 license_family: GPL + purls: [] size: 1041788 timestamp: 1771378212382 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgcc-15.2.0-h8acb6b2_18.conda + sha256: 43df385bedc1cab11993c4369e1f3b04b4ca5d0ea16cba6a0e7f18dbc129fcc9 + md5: 552567ea2b61e3a3035759b2fdb3f9a6 + depends: + - _openmp_mutex >=4.5 + constrains: + - libgcc-ng ==15.2.0=*_18 + - libgomp 15.2.0 h8acb6b2_18 + license: GPL-3.0-only WITH GCC-exception-3.1 + license_family: GPL + purls: [] + size: 622900 + timestamp: 1771378128706 - conda: https://conda.anaconda.org/conda-forge/noarch/libgcc-devel_linux-64-14.2.0-h9c4974d_102.conda sha256: d663727f935853d1e94b8eb69fb1bac267339c99236fd26e14d4a2297ac96c91 md5: 80ecc6e9ecffe737e30a7e5a9b10bcb4 @@ -3162,8 +3645,17 @@ packages: license_family: GPL size: 27526 timestamp: 1771378224552 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-he0feb66_16.conda - sha256: 5b3e5e4e9270ecfcd48f47e3a68f037f5ab0f529ccb223e8e5d5ac75a58fc687 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgcc-ng-15.2.0-he9431aa_18.conda + sha256: 83bb0415f59634dccfa8335d4163d1f6db00a27b36666736f9842b650b92cf2f + md5: 4feebd0fbf61075a1a9c2e9b3936c257 + depends: + - libgcc 15.2.0 h8acb6b2_18 + license: GPL-3.0-only WITH GCC-exception-3.1 + license_family: GPL + size: 27568 + timestamp: 1771378136019 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-he0feb66_16.conda + sha256: 5b3e5e4e9270ecfcd48f47e3a68f037f5ab0f529ccb223e8e5d5ac75a58fc687 md5: 26c46f90d0e727e95c6c9498a33a09f3 depends: - __glibc >=2.17,<3.0.a0 @@ -3179,8 +3671,17 @@ packages: - __glibc >=2.17,<3.0.a0 license: GPL-3.0-only WITH GCC-exception-3.1 license_family: GPL + purls: [] size: 603262 timestamp: 1771378117851 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgomp-15.2.0-h8acb6b2_18.conda + sha256: fc716f11a6a8525e27a5d332ef6a689210b0d2a4dd1133edc0f530659aa9faa6 + md5: 4faa39bf919939602e594253bd673958 + license: GPL-3.0-only WITH GCC-exception-3.1 + license_family: GPL + purls: [] + size: 588060 + timestamp: 1771378040807 - conda: https://conda.anaconda.org/conda-forge/linux-64/libhiredis-1.3.0-h5888daf_1.conda sha256: 5638e321719590b00826d218431d5028d1a22a76f281532ce621d9a40d5e0f42 md5: aa342fcf3bc583660dbfdb2eae6be48e @@ -3377,6 +3878,40 @@ packages: license: 0BSD size: 113207 timestamp: 1768752626120 +- conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.3-hb03c661_0.conda + sha256: ec30e52a3c1bf7d0425380a189d209a52baa03f22fb66dd3eb587acaa765bd6d + md5: b88d90cad08e6bc8ad540cb310a761fb + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=14 + constrains: + - xz 5.8.3.* + license: 0BSD + purls: [] + size: 113478 + timestamp: 1775825492909 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/liblzma-5.8.3-he30d5cf_0.conda + sha256: d61962b9cd54c3554361550203c64d5b65b71e3058a285b66e4b04b9769f0a5c + md5: 76298a9e6d71ee6e832a8d0d7373b261 + depends: + - libgcc >=14 + constrains: + - xz 5.8.3.* + license: 0BSD + purls: [] + size: 126102 + timestamp: 1775828008518 +- conda: https://conda.anaconda.org/conda-forge/osx-64/liblzma-5.8.3-hbb4bfdb_0.conda + sha256: d9e2006051529aec5578c6efeb13bb6a7200a014b2d5a77a579e83a8049d5f3c + md5: becdfbfe7049fa248e52aa37a9df09e2 + depends: + - __osx >=11.0 + constrains: + - xz 5.8.3.* + license: 0BSD + purls: [] + size: 105724 + timestamp: 1775826029494 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-5.8.1-h39f12f2_2.conda sha256: 0cb92a9e026e7bd4842f410a5c5c665c89b2eb97794ffddba519a626b8ce7285 md5: d6df911d4564d77c4374b02552cb17d1 @@ -3398,6 +3933,17 @@ packages: license: 0BSD size: 92242 timestamp: 1768752982486 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-5.8.3-h8088a28_0.conda + sha256: 34878d87275c298f1a732c6806349125cebbf340d24c6c23727268184bba051e + md5: b1fd823b5ae54fbec272cea0811bd8a9 + depends: + - __osx >=11.0 + constrains: + - xz 5.8.3.* + license: 0BSD + purls: [] + size: 92472 + timestamp: 1775825802659 - conda: https://conda.anaconda.org/conda-forge/win-64/liblzma-5.8.1-h2466b09_2.conda sha256: 55764956eb9179b98de7cc0e55696f2eff8f7b83fc3ebff5e696ca358bca28cc md5: c15148b2e18da456f5108ccb5e411446 @@ -3423,6 +3969,19 @@ packages: license: 0BSD size: 106169 timestamp: 1768752763559 +- conda: https://conda.anaconda.org/conda-forge/win-64/liblzma-5.8.3-hfd05255_0.conda + sha256: d636d1a25234063642f9c531a7bb58d84c1c496411280a36ea000bd122f078f1 + md5: 8f83619ab1588b98dd99c90b0bfc5c6d + depends: + - ucrt >=10.0.20348.0 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + constrains: + - xz 5.8.3.* + license: 0BSD + purls: [] + size: 106486 + timestamp: 1775825663227 - conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-devel-5.8.1-hb9d3cd8_2.conda sha256: 329e66330a8f9cbb6a8d5995005478188eb4ba8a6b6391affa849744f4968492 md5: f61edadbb301530bd65a32646bd81552 @@ -3464,6 +4023,7 @@ packages: - libgcc >=14 license: BSD-2-Clause license_family: BSD + purls: [] size: 92400 timestamp: 1769482286018 - conda: https://conda.anaconda.org/conda-forge/linux-64/libmpdec-4.0.0-hb9d3cd8_0.conda @@ -3477,6 +4037,26 @@ packages: purls: [] size: 91183 timestamp: 1748393666725 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libmpdec-4.0.0-he30d5cf_1.conda + sha256: 57c0dd12d506e84541c4e877898bd2a59cca141df493d34036f18b2751e0a453 + md5: 7b9813e885482e3ccb1fa212b86d7fd0 + depends: + - libgcc >=14 + license: BSD-2-Clause + license_family: BSD + purls: [] + size: 114056 + timestamp: 1769482343003 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libmpdec-4.0.0-hf3981d6_1.conda + sha256: 1096c740109386607938ab9f09a7e9bca06d86770a284777586d6c378b8fb3fd + md5: ec88ba8a245855935b871a7324373105 + depends: + - __osx >=10.13 + license: BSD-2-Clause + license_family: BSD + purls: [] + size: 79899 + timestamp: 1769482558610 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libmpdec-4.0.0-h5505292_0.conda sha256: 0a1875fc1642324ebd6c4ac864604f3f18f57fbcf558a8264f6ced028a3c75b2 md5: 85ccccb47823dd9f7a99d2c7f530342f @@ -3494,6 +4074,7 @@ packages: - __osx >=11.0 license: BSD-2-Clause license_family: BSD + purls: [] size: 73690 timestamp: 1769482560514 - conda: https://conda.anaconda.org/conda-forge/win-64/libmpdec-4.0.0-h2466b09_0.conda @@ -3517,6 +4098,7 @@ packages: - vc14_runtime >=14.44.35208 license: BSD-2-Clause license_family: BSD + purls: [] size: 89411 timestamp: 1769482314283 - conda: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.67.0-had1ee68_0.conda @@ -3552,6 +4134,36 @@ packages: license_family: MIT size: 663344 timestamp: 1773854035739 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libnghttp2-1.68.1-hd3077d7_0.conda + sha256: 13782715b9eeebc4ad16d36e84ca569d1495e3516aea3fe546a32caa0a597d82 + md5: be5f0f007a4500a226ef001115535a3d + depends: + - c-ares >=1.34.6,<2.0a0 + - libev >=4.33,<4.34.0a0 + - libev >=4.33,<5.0a0 + - libgcc >=14 + - libstdcxx >=14 + - libzlib >=1.3.1,<2.0a0 + - openssl >=3.5.5,<4.0a0 + license: MIT + license_family: MIT + size: 726928 + timestamp: 1773854039807 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libnghttp2-1.68.1-h70048d4_0.conda + sha256: 899551e16aac9dfb85bfc2fd98b655f4d1b7fea45720ec04ccb93d95b4d24798 + md5: dba4c95e2fe24adcae4b77ebf33559ae + depends: + - __osx >=11.0 + - c-ares >=1.34.6,<2.0a0 + - libcxx >=19 + - libev >=4.33,<4.34.0a0 + - libev >=4.33,<5.0a0 + - libzlib >=1.3.1,<2.0a0 + - openssl >=3.5.5,<4.0a0 + license: MIT + license_family: MIT + size: 606749 + timestamp: 1773854765508 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnghttp2-1.67.0-hc438710_0.conda sha256: a07cb53b5ffa2d5a18afc6fd5a526a5a53dd9523fbc022148bd2f9395697c46d md5: a4b4dd73c67df470d091312ab87bf6ae @@ -3649,6 +4261,39 @@ packages: license: blessing size: 951405 timestamp: 1772818874251 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.53.0-hf4e2dac_0.conda + sha256: ec37c79f737933bbac965f5dc0f08ef2790247129a84bb3114fad4900adce401 + md5: 810d83373448da85c3f673fbcb7ad3a3 + depends: + - __glibc >=2.17,<3.0.a0 + - icu >=78.3,<79.0a0 + - libgcc >=14 + - libzlib >=1.3.2,<2.0a0 + license: blessing + purls: [] + size: 958864 + timestamp: 1775753750179 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libsqlite-3.53.0-h022381a_0.conda + sha256: 2cc87e1394245188dd7c2c621f14ad0d15910d842e3541e8a571dc94d222ce75 + md5: 86db4036fd08bf34e991bf48a8af405d + depends: + - libgcc >=14 + - libzlib >=1.3.2,<2.0a0 + license: blessing + purls: [] + size: 954351 + timestamp: 1775753767469 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libsqlite-3.53.0-h8f8c405_0.conda + sha256: ae9d83cab8988a7d4ccec411fef23c141b5b3d301db3e926ab7cd4befe3764e6 + md5: f2bb6692dfb33a1bbce746aa812a9a5b + depends: + - __osx >=11.0 + - icu >=78.3,<79.0a0 + - libzlib >=1.3.2,<2.0a0 + license: blessing + purls: [] + size: 1007272 + timestamp: 1775754456682 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.51.1-h1b79a29_1.conda sha256: f2c3cbf2ca7d697098964a748fbf19d6e4adcefa23844ec49f0166f1d36af83c md5: 8c3951797658e10b610929c3e57e9ad9 @@ -3679,6 +4324,16 @@ packages: license: blessing size: 918420 timestamp: 1772819478684 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.53.0-h1b79a29_0.conda + sha256: 1a9d1e3e18dbb0b87cff3b40c3e42703730d7ac7ee9b9322c2682196a81ba0c3 + md5: 8423c008105df35485e184066cad4566 + depends: + - __osx >=11.0 + - libzlib >=1.3.2,<2.0a0 + license: blessing + purls: [] + size: 920039 + timestamp: 1775754485962 - conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.51.1-hf5d6505_0.conda sha256: a976c8b455d9023b83878609bd68c3b035b9839d592bd6c7be7552c523773b62 md5: f92bef2f8e523bb0eabe60099683617a @@ -3711,6 +4366,17 @@ packages: license: blessing size: 1297302 timestamp: 1772818899033 +- conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.53.0-hf5d6505_0.conda + sha256: 7a6256ea136936df4c4f3b227ba1e273b7d61152f9811b52157af497f07640b0 + md5: 4152b5a8d2513fd7ae9fb9f221a5595d + depends: + - ucrt >=10.0.20348.0 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + license: blessing + purls: [] + size: 1301855 + timestamp: 1775753831574 - conda: https://conda.anaconda.org/conda-forge/linux-64/libssh2-1.11.1-hcf80075_0.conda sha256: fa39bfd69228a13e553bd24601332b7cfeb30ca11a3ca50bb028108fe90a7661 md5: eecce068c7e4eddeb169591baac20ac4 @@ -3772,8 +4438,21 @@ packages: - libstdcxx-ng ==15.2.0=*_18 license: GPL-3.0-only WITH GCC-exception-3.1 license_family: GPL + purls: [] size: 5852330 timestamp: 1771378262446 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libstdcxx-15.2.0-hef695bb_18.conda + sha256: 31fdb9ffafad106a213192d8319b9f810e05abca9c5436b60e507afb35a6bc40 + md5: f56573d05e3b735cb03efeb64a15f388 + depends: + - libgcc 15.2.0 h8acb6b2_18 + constrains: + - libstdcxx-ng ==15.2.0=*_18 + license: GPL-3.0-only WITH GCC-exception-3.1 + license_family: GPL + purls: [] + size: 5541411 + timestamp: 1771378162499 - conda: https://conda.anaconda.org/conda-forge/noarch/libstdcxx-devel_linux-64-14.2.0-h9c4974d_102.conda sha256: 7bd1943aea09457cca1aa611c71bc3b12990832d3a0ffb4b1f25a83deb035669 md5: 54bac3d48bc1f91216b5f5fb259d8764 @@ -3833,8 +4512,19 @@ packages: - libgcc >=14 license: BSD-3-Clause license_family: BSD + purls: [] size: 40297 timestamp: 1775052476770 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libuuid-2.42-h1022ec0_0.conda + sha256: 7d427edf58c702c337bf62bc90f355b7fc374a65fd9f70ea7a490f13bb76b1b9 + md5: a0b5de740d01c390bdbb46d7503c9fab + depends: + - libgcc >=14 + license: BSD-3-Clause + license_family: BSD + purls: [] + size: 43567 + timestamp: 1775052485727 - conda: https://conda.anaconda.org/conda-forge/linux-64/libuv-1.51.0-hb03c661_1.conda sha256: c180f4124a889ac343fc59d15558e93667d894a966ec6fdb61da1604481be26b md5: 0f03292cc56bf91a077a134ea8747118 @@ -3846,6 +4536,24 @@ packages: purls: [] size: 895108 timestamp: 1753948278280 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libuv-1.51.0-he30d5cf_1.conda + sha256: 7a0fb5638582efc887a18b7d270b0c4a6f6e681bf401cab25ebafa2482569e90 + md5: 8e62bf5af966325ee416f19c6f14ffa3 + depends: + - libgcc >=14 + license: MIT + license_family: MIT + size: 629238 + timestamp: 1753948296190 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libuv-1.51.0-h58003a5_1.conda + sha256: d90dd0eee6f195a5bd14edab4c5b33be3635b674b0b6c010fb942b956aa2254c + md5: fbfc6cf607ae1e1e498734e256561dc3 + depends: + - __osx >=10.13 + license: MIT + license_family: MIT + size: 422612 + timestamp: 1753948458902 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libuv-1.51.0-h6caf38d_1.conda sha256: 042c7488ad97a5629ec0a991a8b2a3345599401ecc75ad6a5af73b60e6db9689 md5: c0d87c3c8e075daf1daf6c31b53e8083 @@ -4245,8 +4953,31 @@ packages: - zlib 1.3.2 *_2 license: Zlib license_family: Other + purls: [] size: 63629 timestamp: 1774072609062 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libzlib-1.3.2-hdc9db2a_2.conda + sha256: eb111e32e5a7313a5bf799c7fb2419051fa2fe7eff74769fac8d5a448b309f7f + md5: 502006882cf5461adced436e410046d1 + constrains: + - zlib 1.3.2 *_2 + license: Zlib + license_family: Other + purls: [] + size: 69833 + timestamp: 1774072605429 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libzlib-1.3.2-hbb4bfdb_2.conda + sha256: 4c6da089952b2d70150c74234679d6f7ac04f4a98f9432dec724968f912691e7 + md5: 30439ff30578e504ee5e0b390afc8c65 + depends: + - __osx >=11.0 + constrains: + - zlib 1.3.2 *_2 + license: Zlib + license_family: Other + purls: [] + size: 59000 + timestamp: 1774073052242 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzlib-1.3.1-h8359307_2.conda sha256: ce34669eadaba351cd54910743e6a2261b67009624dbc7daeeafdef93616711b md5: 369964e85dc26bfe78f41399b366c435 @@ -4268,6 +4999,7 @@ packages: - zlib 1.3.2 *_2 license: Zlib license_family: Other + purls: [] size: 47759 timestamp: 1774072956767 - conda: https://conda.anaconda.org/conda-forge/win-64/libzlib-1.3.1-h2466b09_2.conda @@ -4295,6 +5027,7 @@ packages: - zlib 1.3.2 *_2 license: Zlib license_family: Other + purls: [] size: 58347 timestamp: 1774072851498 - conda: https://conda.anaconda.org/conda-forge/linux-64/lld-20.1.8-hef48ded_1.conda @@ -4477,6 +5210,24 @@ packages: purls: [] size: 891641 timestamp: 1738195959188 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ncurses-6.5-ha32ae93_3.conda + sha256: 91cfb655a68b0353b2833521dc919188db3d8a7f4c64bea2c6a7557b24747468 + md5: 182afabe009dc78d8b73100255ee6868 + depends: + - libgcc >=13 + license: X11 AND BSD-3-Clause + purls: [] + size: 926034 + timestamp: 1738196018799 +- conda: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.5-h0622a9a_3.conda + sha256: ea4a5d27ded18443749aefa49dc79f6356da8506d508b5296f60b8d51e0c4bd9 + md5: ced34dd9929f491ca6dab6a2927aff25 + depends: + - __osx >=10.13 + license: X11 AND BSD-3-Clause + purls: [] + size: 822259 + timestamp: 1738196181298 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.5-h5e97a16_3.conda sha256: 2827ada40e8d9ca69a153a45f7fd14f32b2ead7045d3bbb5d10964898fe65733 md5: 068d497125e4bf8a66bf707254fff5ae @@ -4560,6 +5311,49 @@ packages: license: MIT size: 17538321 timestamp: 1766137768828 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/nodejs-24.14.1-he5f9b4c_0.conda + sha256: 537c9938cc6a180e1aff7f5cd737f3f248feff8c2a4ec831324ab9797adc93f1 + md5: 8637b0572ebf0d51e431a2db58286c01 + depends: + - __glibc >=2.28,<3.0.a0 + - libgcc >=14 + - libstdcxx >=14 + - icu >=78.3,<79.0a0 + - libnghttp2 >=1.68.1,<2.0a0 + - openssl >=3.5.5,<4.0a0 + - libbrotlicommon >=1.2.0,<1.3.0a0 + - libbrotlienc >=1.2.0,<1.3.0a0 + - libbrotlidec >=1.2.0,<1.3.0a0 + - c-ares >=1.34.6,<2.0a0 + - zstd >=1.5.7,<1.6.0a0 + - libzlib >=1.3.2,<2.0a0 + - libuv >=1.51.0,<2.0a0 + - libsqlite >=3.52.0,<4.0a0 + license: MIT + license_family: MIT + size: 23415087 + timestamp: 1774518161811 +- conda: https://conda.anaconda.org/conda-forge/osx-64/nodejs-24.14.1-hc6dc384_0.conda + sha256: de46225a84134e0dd3bc3f39cecdb6e9ca7c2555d45eeb8a916186b500b5484b + md5: 558c379648523eef0b3f441827d564d8 + depends: + - __osx >=10.15 + - libcxx >=19 + - c-ares >=1.34.6,<2.0a0 + - libuv >=1.51.0,<2.0a0 + - libsqlite >=3.52.0,<4.0a0 + - zstd >=1.5.7,<1.6.0a0 + - libbrotlicommon >=1.2.0,<1.3.0a0 + - libbrotlienc >=1.2.0,<1.3.0a0 + - libbrotlidec >=1.2.0,<1.3.0a0 + - libnghttp2 >=1.68.1,<2.0a0 + - icu >=78.3,<79.0a0 + - libzlib >=1.3.2,<2.0a0 + - openssl >=3.5.5,<4.0a0 + license: MIT + license_family: MIT + size: 16946699 + timestamp: 1774519152832 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nodejs-22.21.1-hf2fe37f_0.conda sha256: 16fc66a8f7c566aa626833482bfeb20f6a1953861ba5d7e91eb4f72c600c4151 md5: cd2e913e4e61a013e1707daf551165d3 @@ -4631,6 +5425,40 @@ packages: license_family: Apache size: 3164551 timestamp: 1769555830639 +- conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.6.2-h35e630c_0.conda + sha256: c0ef482280e38c71a08ad6d71448194b719630345b0c9c60744a2010e8a8e0cb + md5: da1b85b6a87e141f5140bb9924cecab0 + depends: + - __glibc >=2.17,<3.0.a0 + - ca-certificates + - libgcc >=14 + license: Apache-2.0 + license_family: Apache + purls: [] + size: 3167099 + timestamp: 1775587756857 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/openssl-3.6.2-h546c87b_0.conda + sha256: 348cb74c1530ac241215d047ef65d134cf797af935c97a68655319362b7e6a01 + md5: 3b129669089e4d6a5c6871dbb4669b99 + depends: + - ca-certificates + - libgcc >=14 + license: Apache-2.0 + license_family: Apache + purls: [] + size: 3706406 + timestamp: 1775589602258 +- conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.6.2-hc881268_0.conda + sha256: 334fd49ea31b99114f5afb1ec44555dc8c90640648302a4f8f838ee345d1ec50 + md5: 5cf0ece4375c73d7a5765e83565a69c7 + depends: + - __osx >=11.0 + - ca-certificates + license: Apache-2.0 + license_family: Apache + purls: [] + size: 2776564 + timestamp: 1775589970694 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.6.0-h5503f6c_0.conda sha256: ebe93dafcc09e099782fe3907485d4e1671296bc14f8c383cb6f3dfebb773988 md5: b34dc4172653c13dcf453862f251af2b @@ -4652,6 +5480,17 @@ packages: license_family: Apache size: 3104268 timestamp: 1769556384749 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.6.2-hd24854e_0.conda + sha256: c91bf510c130a1ea1b6ff023e28bac0ccaef869446acd805e2016f69ebdc49ea + md5: 25dcccd4f80f1638428613e0d7c9b4e1 + depends: + - __osx >=11.0 + - ca-certificates + license: Apache-2.0 + license_family: Apache + purls: [] + size: 3106008 + timestamp: 1775587972483 - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.6.0-h725018a_0.conda sha256: 6d72d6f766293d4f2aa60c28c244c8efed6946c430814175f959ffe8cab899b3 md5: 84f8fb4afd1157f59098f618cd2437e4 @@ -4677,6 +5516,19 @@ packages: license_family: Apache size: 9343023 timestamp: 1769557547888 +- conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.6.2-hf411b9b_0.conda + sha256: feb5815125c60f2be4a411e532db1ed1cd2d7261a6a43c54cb6ae90724e2e154 + md5: 05c7d624cff49dbd8db1ad5ba537a8a3 + depends: + - ca-certificates + - ucrt >=10.0.20348.0 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + license: Apache-2.0 + license_family: Apache + purls: [] + size: 9410183 + timestamp: 1775589779763 - pypi: https://files.pythonhosted.org/packages/b7/b9/c538f279a4e237a006a2c98387d081e9eb060d203d8ed34467cc0f0b9b53/packaging-26.0-py3-none-any.whl name: packaging version: '26.0' @@ -4705,6 +5557,30 @@ packages: license: MIT size: 3241937 timestamp: 1766502303206 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/pnpm-10.33.0-ha193a0a_0.conda + sha256: 7d85a3f10cc488b97456bb649d890e34173a1ba52a0b7e45bfb6d1e8bf69d66a + md5: e6432dc4c17030a58e2002ce1c996486 + depends: + - nodejs + - libgcc >=14 + - libstdcxx >=14 + - nodejs >=24.13.1,<25.0a0 + license: MIT + license_family: MIT + size: 3394554 + timestamp: 1774385329513 +- conda: https://conda.anaconda.org/conda-forge/osx-64/pnpm-10.33.0-hd10af01_0.conda + sha256: 3a2dd7f2c33941aea8390ba5edb28950666e9d611e7e6e9d4482df8eae90193b + md5: 109de21be9152ebab3525b9727f7afb0 + depends: + - nodejs + - libcxx >=19 + - __osx >=11.0 + - nodejs >=24.14.0,<25.0a0 + license: MIT + license_family: MIT + size: 3395499 + timestamp: 1774385409599 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pnpm-10.26.2-h7c87c79_0.conda sha256: a6fbbc064a4dda94bb8d5adda3b529df30428b78932dbec7ff940ccc2db2270b md5: 8fe0376020813be4387dd1a811b32e86 @@ -4868,6 +5744,86 @@ packages: size: 36702440 timestamp: 1770675584356 python_site_packages_path: lib/python3.14/site-packages +- conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.14.4-habeac84_100_cp314.conda + build_number: 100 + sha256: dec247c5badc811baa34d6085df9d0465535883cf745e22e8d79092ad54a3a7b + md5: a443f87920815d41bfe611296e507995 + depends: + - __glibc >=2.17,<3.0.a0 + - bzip2 >=1.0.8,<2.0a0 + - ld_impl_linux-64 >=2.36.1 + - libexpat >=2.7.5,<3.0a0 + - libffi >=3.5.2,<3.6.0a0 + - libgcc >=14 + - liblzma >=5.8.2,<6.0a0 + - libmpdec >=4.0.0,<5.0a0 + - libsqlite >=3.52.0,<4.0a0 + - libuuid >=2.42,<3.0a0 + - libzlib >=1.3.2,<2.0a0 + - ncurses >=6.5,<7.0a0 + - openssl >=3.5.6,<4.0a0 + - python_abi 3.14.* *_cp314 + - readline >=8.3,<9.0a0 + - tk >=8.6.13,<8.7.0a0 + - tzdata + - zstd >=1.5.7,<1.6.0a0 + license: Python-2.0 + purls: [] + size: 36705460 + timestamp: 1775614357822 + python_site_packages_path: lib/python3.14/site-packages +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/python-3.14.4-hfd9ac0a_100_cp314.conda + build_number: 100 + sha256: d29da77f75e8f9184cc9502d5c44be87397291a9e88819d5418322a173f76303 + md5: 3cfbe780f0f51cc8cba41db9f8a28bfe + depends: + - bzip2 >=1.0.8,<2.0a0 + - ld_impl_linux-aarch64 >=2.36.1 + - libexpat >=2.7.5,<3.0a0 + - libffi >=3.5.2,<3.6.0a0 + - libgcc >=14 + - liblzma >=5.8.2,<6.0a0 + - libmpdec >=4.0.0,<5.0a0 + - libsqlite >=3.52.0,<4.0a0 + - libuuid >=2.42,<3.0a0 + - libzlib >=1.3.2,<2.0a0 + - ncurses >=6.5,<7.0a0 + - openssl >=3.5.6,<4.0a0 + - python_abi 3.14.* *_cp314 + - readline >=8.3,<9.0a0 + - tk >=8.6.13,<8.7.0a0 + - tzdata + - zstd >=1.5.7,<1.6.0a0 + license: Python-2.0 + purls: [] + size: 37409899 + timestamp: 1775613674766 + python_site_packages_path: lib/python3.14/site-packages +- conda: https://conda.anaconda.org/conda-forge/osx-64/python-3.14.4-h7c6738f_100_cp314.conda + build_number: 100 + sha256: fc99d7a6a3f5eb776c20880c441e3708ff95d35d0a03f3ceb2a89016f59a01fc + md5: d4e8506d0ac094be21451682eed9ce4d + depends: + - __osx >=11.0 + - bzip2 >=1.0.8,<2.0a0 + - libexpat >=2.7.5,<3.0a0 + - libffi >=3.5.2,<3.6.0a0 + - liblzma >=5.8.2,<6.0a0 + - libmpdec >=4.0.0,<5.0a0 + - libsqlite >=3.52.0,<4.0a0 + - libzlib >=1.3.2,<2.0a0 + - ncurses >=6.5,<7.0a0 + - openssl >=3.5.6,<4.0a0 + - python_abi 3.14.* *_cp314 + - readline >=8.3,<9.0a0 + - tk >=8.6.13,<8.7.0a0 + - tzdata + - zstd >=1.5.7,<1.6.0a0 + license: Python-2.0 + purls: [] + size: 14431104 + timestamp: 1775616356805 + python_site_packages_path: lib/python3.14/site-packages - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.14.2-h40d2674_100_cp314.conda build_number: 100 sha256: 1a93782e90b53e04c2b1a50a0f8bf0887936649d19dba6a05b05c4b44dae96b7 @@ -4917,6 +5873,31 @@ packages: size: 13522698 timestamp: 1770675365241 python_site_packages_path: lib/python3.14/site-packages +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.14.4-h4c637c5_100_cp314.conda + build_number: 100 + sha256: 27e7d6cbe021f37244b643f06a98e46767255f7c2907108dd3736f042757ddad + md5: e1bc5a3015a4bbeb304706dba5a32b7f + depends: + - __osx >=11.0 + - bzip2 >=1.0.8,<2.0a0 + - libexpat >=2.7.5,<3.0a0 + - libffi >=3.5.2,<3.6.0a0 + - liblzma >=5.8.2,<6.0a0 + - libmpdec >=4.0.0,<5.0a0 + - libsqlite >=3.52.0,<4.0a0 + - libzlib >=1.3.2,<2.0a0 + - ncurses >=6.5,<7.0a0 + - openssl >=3.5.6,<4.0a0 + - python_abi 3.14.* *_cp314 + - readline >=8.3,<9.0a0 + - tk >=8.6.13,<8.7.0a0 + - tzdata + - zstd >=1.5.7,<1.6.0a0 + license: Python-2.0 + purls: [] + size: 13533346 + timestamp: 1775616188373 + python_site_packages_path: lib/python3.14/site-packages - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.14.2-h4b44e0e_100_cp314.conda build_number: 100 sha256: 6857d7c97cc71fe9ba298dcb1d3b66cc7df425132ab801babd655faa3df48f32 @@ -4966,6 +5947,31 @@ packages: size: 18273230 timestamp: 1770675442998 python_site_packages_path: Lib/site-packages +- conda: https://conda.anaconda.org/conda-forge/win-64/python-3.14.4-h4b44e0e_100_cp314.conda + build_number: 100 + sha256: e258d626b0ba778abb319f128de4c1211306fe86fe0803166817b1ce2514c920 + md5: 40b6a8f438afb5e7b314cc5c4a43cd84 + depends: + - bzip2 >=1.0.8,<2.0a0 + - libexpat >=2.7.5,<3.0a0 + - libffi >=3.5.2,<3.6.0a0 + - liblzma >=5.8.2,<6.0a0 + - libmpdec >=4.0.0,<5.0a0 + - libsqlite >=3.52.0,<4.0a0 + - libzlib >=1.3.2,<2.0a0 + - openssl >=3.5.6,<4.0a0 + - python_abi 3.14.* *_cp314 + - tk >=8.6.13,<8.7.0a0 + - tzdata + - ucrt >=10.0.20348.0 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + - zstd >=1.5.7,<1.6.0a0 + license: Python-2.0 + purls: [] + size: 18055445 + timestamp: 1775615317758 + python_site_packages_path: Lib/site-packages - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda build_number: 8 sha256: ad6d2e9ac39751cc0529dd1566a26751a0bf2542adb0c232533d32e176e21db5 @@ -4989,6 +5995,28 @@ packages: purls: [] size: 345073 timestamp: 1765813471974 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/readline-8.3-hb682ff5_0.conda + sha256: fe695f9d215e9a2e3dd0ca7f56435ab4df24f5504b83865e3d295df36e88d216 + md5: 3d49cad61f829f4f0e0611547a9cda12 + depends: + - libgcc >=14 + - ncurses >=6.5,<7.0a0 + license: GPL-3.0-only + license_family: GPL + purls: [] + size: 357597 + timestamp: 1765815673644 +- conda: https://conda.anaconda.org/conda-forge/osx-64/readline-8.3-h68b038d_0.conda + sha256: 4614af680aa0920e82b953fece85a03007e0719c3399f13d7de64176874b80d5 + md5: eefd65452dfe7cce476a519bece46704 + depends: + - __osx >=10.13 + - ncurses >=6.5,<7.0a0 + license: GPL-3.0-only + license_family: GPL + purls: [] + size: 317819 + timestamp: 1765813692798 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/readline-8.3-h46df422_0.conda sha256: a77010528efb4b548ac2a4484eaf7e1c3907f2aec86123ed9c5212ae44502477 md5: f8381319127120ce51e081dce4865cf4 @@ -5157,6 +6185,7 @@ packages: - xorg-libx11 >=1.8.12,<2.0a0 license: TCL license_family: BSD + purls: [] size: 3301196 timestamp: 1769460227866 - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_ha0e22de_103.conda @@ -5173,6 +6202,30 @@ packages: purls: [] size: 3284905 timestamp: 1763054914403 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/tk-8.6.13-noxft_h0dc03b3_103.conda + sha256: e25c314b52764219f842b41aea2c98a059f06437392268f09b03561e4f6e5309 + md5: 7fc6affb9b01e567d2ef1d05b84aa6ed + depends: + - libgcc >=14 + - libzlib >=1.3.1,<2.0a0 + constrains: + - xorg-libx11 >=1.8.12,<2.0a0 + license: TCL + license_family: BSD + purls: [] + size: 3368666 + timestamp: 1769464148928 +- conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-h7142dee_3.conda + sha256: 7f0d9c320288532873e2d8486c331ec6d87919c9028208d3f6ac91dc8f99a67b + md5: 6e6efb7463f8cef69dbcb4c2205bf60e + depends: + - __osx >=10.13 + - libzlib >=1.3.1,<2.0a0 + license: TCL + license_family: BSD + purls: [] + size: 3282953 + timestamp: 1769460532442 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h010d191_3.conda sha256: 799cab4b6cde62f91f750149995d149bc9db525ec12595e8a1d91b9317f038b3 md5: a9d86bc62f39b94c4661716624eb21b0 @@ -5181,6 +6234,7 @@ packages: - libzlib >=1.3.1,<2.0a0 license: TCL license_family: BSD + purls: [] size: 3127137 timestamp: 1769460817696 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h892fb3f_3.conda @@ -5215,6 +6269,7 @@ packages: - vc14_runtime >=14.44.35208 license: TCL license_family: BSD + purls: [] size: 3526350 timestamp: 1769460339384 - conda: https://conda.anaconda.org/conda-forge/linux-64/tombi-0.7.12-hb17b654_0.conda @@ -5305,6 +6360,7 @@ packages: - vc14 license: BSD-3-Clause license_family: BSD + purls: [] size: 19356 timestamp: 1767320221521 - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.44.35208-h818238b_33.conda @@ -5330,6 +6386,7 @@ packages: - vs2015_runtime 14.44.35208.* *_34 license: LicenseRef-MicrosoftVisualCpp2015-2022Runtime license_family: Proprietary + purls: [] size: 683233 timestamp: 1767320219644 - conda: https://conda.anaconda.org/conda-forge/win-64/vcomp14-14.44.35208-h818238b_33.conda @@ -5353,6 +6410,7 @@ packages: - vs2015_runtime 14.44.35208.* *_34 license: LicenseRef-MicrosoftVisualCpp2015-2022Runtime license_family: Proprietary + purls: [] size: 115235 timestamp: 1767320173250 - conda: https://conda.anaconda.org/conda-forge/linux-64/xxhash-0.8.3-hb47aa4a_0.conda @@ -5492,6 +6550,27 @@ packages: purls: [] size: 601375 timestamp: 1764777111296 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/zstd-1.5.7-h85ac4a6_6.conda + sha256: 569990cf12e46f9df540275146da567d9c618c1e9c7a0bc9d9cfefadaed20b75 + md5: c3655f82dcea2aa179b291e7099c1fcc + depends: + - libzlib >=1.3.1,<2.0a0 + license: BSD-3-Clause + license_family: BSD + purls: [] + size: 614429 + timestamp: 1764777145593 +- conda: https://conda.anaconda.org/conda-forge/osx-64/zstd-1.5.7-h3eecb57_6.conda + sha256: 47101a4055a70a4876ffc87b750ab2287b67eca793f21c8224be5e1ee6394d3f + md5: 727109b184d680772e3122f40136d5ca + depends: + - __osx >=10.13 + - libzlib >=1.3.1,<2.0a0 + license: BSD-3-Clause + license_family: BSD + purls: [] + size: 528148 + timestamp: 1764777156963 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.7-hbf9d68e_6.conda sha256: 9485ba49e8f47d2b597dd399e88f4802e100851b27c21d7525625b0b4025a5d9 md5: ab136e4c34e97f34fb621d2592a393d8 diff --git a/pixi.toml b/pixi.toml index 03a7f324f..09445d971 100644 --- a/pixi.toml +++ b/pixi.toml @@ -14,7 +14,7 @@ readme = "README.md" documentation = "https://docs.clice.io/clice/" repository = "https://github.com/clice-io/clice" channels = ["conda-forge"] -platforms = ["win-64", "linux-64", "osx-arm64"] +platforms = ["win-64", "linux-64", "osx-arm64", "osx-64", "linux-aarch64"] [environments] default = ["build", "test"] @@ -24,10 +24,14 @@ cross-linux-aarch64 = ["build", "cross-linux-aarch64"] cross-windows-arm64 = ["build", "cross-windows-arm64"] node = ["node"] format = ["format"] +test-run = ["test"] # ============================================================================== # # DEPENDENCIES # # ============================================================================== # +[feature.build] +platforms = ["win-64", "linux-64", "osx-arm64"] + [feature.build.dependencies] python = ">=3.13" cmake = ">=3.30" @@ -70,6 +74,9 @@ gxx_linux-aarch64 = "==14.2.0" # Windows arm64 (from x64): Windows SDK on CI already includes ARM64 libs. [feature.cross-windows-arm64.target.win-64.dependencies] +[feature.test.dependencies] +python = ">=3.13" + [feature.test.pypi-dependencies] pytest = "*" pytest-asyncio = ">=1.1.0" @@ -124,7 +131,7 @@ depends-on = [ args = [{ arg = "type", default = "RelWithDebInfo" }] depends-on = [{ task = "lint-cpp", args = ["{{ type }}"] }] -[feature.build.tasks.unit-test] +[feature.test.tasks.unit-test] args = [{ arg = "type", default = "RelWithDebInfo" }] cmd = './build/{{ type }}/bin/unit_tests --test-dir="./tests/data"' @@ -199,6 +206,9 @@ outputs = ["editors/vscode/node_modules/.modules.yaml"] # ============================================================================== # # FORMAT # # ============================================================================== # +[feature.format] +platforms = ["win-64", "linux-64", "osx-arm64"] + [feature.format.dependencies] ruff = "*" tombi = "*" From 751d3dc2ba6284d82b936b20976d445d0badacad Mon Sep 17 00:00:00 2001 From: ykiko Date: Mon, 13 Apr 2026 22:27:42 +0800 Subject: [PATCH 36/52] fix(ci): use cross-compile env for aarch64 build, upload lib/ for tests - Use cross-linux-aarch64 pixi env for Linux aarch64 cross-compilation (provides sysroot, fixes Exec format error on native ARM64 runner) - Upload lib/ directory alongside bin/ (clang resource dir needed by tests) - Remove unnecessary platform restrictions from build/format features Co-Authored-By: Claude Opus 4.6 --- .github/workflows/test-cmake.yml | 13 +- pixi.lock | 2100 +++++++++++++++++++++++++++++- pixi.toml | 6 - 3 files changed, 2092 insertions(+), 27 deletions(-) diff --git a/.github/workflows/test-cmake.yml b/.github/workflows/test-cmake.yml index b46086102..200921f31 100644 --- a/.github/workflows/test-cmake.yml +++ b/.github/workflows/test-cmake.yml @@ -38,6 +38,7 @@ jobs: build_type: RelWithDebInfo target_triple: aarch64-linux-gnu build_only: true + pixi_env: cross-linux-aarch64 # ── Native ARM64 build + test ───────────────────────────────── - os: windows-11-arm build_type: RelWithDebInfo @@ -48,6 +49,8 @@ jobs: uses: actions/checkout@v4 - uses: ./.github/actions/setup-pixi + with: + environments: ${{ matrix.pixi_env && format('default {0}', matrix.pixi_env) || 'default' }} - name: Restore compiler cache uses: actions/cache@v4 @@ -75,15 +78,17 @@ jobs: if: ${{ matrix.target_triple }} shell: bash run: | - pixi run cmake-config ${{ matrix.build_type }} OFF "-DCLICE_TARGET_TRIPLE=${{ matrix.target_triple }}" - pixi run cmake-build ${{ matrix.build_type }} + pixi run -e ${{ matrix.pixi_env || 'default' }} cmake-config ${{ matrix.build_type }} OFF "-DCLICE_TARGET_TRIPLE=${{ matrix.target_triple }}" + pixi run -e ${{ matrix.pixi_env || 'default' }} cmake-build ${{ matrix.build_type }} - name: Upload cross-compiled binaries if: ${{ matrix.build_only }} uses: actions/upload-artifact@v4 with: name: cross-build-${{ matrix.target_triple }} - path: build/${{ matrix.build_type }}/bin/ + path: | + build/${{ matrix.build_type }}/bin/ + build/${{ matrix.build_type }}/lib/ if-no-files-found: error retention-days: 1 @@ -135,7 +140,7 @@ jobs: uses: actions/download-artifact@v4 with: name: cross-build-${{ matrix.target_triple }} - path: build/${{ matrix.build_type }}/bin/ + path: build/${{ matrix.build_type }}/ - name: Make binaries executable run: chmod +x build/${{ matrix.build_type }}/bin/* diff --git a/pixi.lock b/pixi.lock index 5ac018a80..0e851233b 100644 --- a/pixi.lock +++ b/pixi.lock @@ -89,6 +89,130 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xxhash-0.8.3-hb47aa4a_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb78ec9c_6.conda + linux-aarch64: + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/_openmp_mutex-4.5-20_gnu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/binutils_impl_linux-aarch64-2.45.1-default_h5f4c503_102.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/bzip2-1.0.8-h4777abc_9.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/c-ares-1.34.6-he30d5cf_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang-20-20.1.8-default_he95a3c9_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang-20.1.8-default_cfg_h99ebb92_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang-format-20-20.1.8-default_he95a3c9_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang-format-20.1.8-default_he95a3c9_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang-tools-20.1.8-default_h72162bb_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang_impl_linux-aarch64-20.1.8-default_cfg_h02d8f17_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clangxx-20.1.8-default_cfg_h99ebb92_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clangxx_impl_linux-aarch64-20.1.8-default_cfg_h02d8f17_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/cmake-4.3.1-hc9d863e_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/compiler-rt-20.1.8-hfefdfc9_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_linux-aarch64-20.1.8-hfefdfc9_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/flatbuffers-25.9.23-h5248ec3_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/kernel-headers_linux-aarch64-4.18.0-h05a177a_9.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/keyutils-1.6.3-h86ecc28_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/krb5-1.22.2-hfd895c2_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ld_impl_linux-aarch64-2.45.1-default_h1979696_102.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libclang-cpp20.1-20.1.8-default_he95a3c9_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libclang13-22.1.3-default_h94a09a5_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libcurl-8.19.0-hc57f145_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libedit-3.1.20250104-pl5321h976ea20_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libev-4.33-h31becfc_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libexpat-2.7.5-hfae3067_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libffi-3.5.2-h376a255_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgcc-15.2.0-h8acb6b2_18.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/libgcc-devel_linux-aarch64-15.2.0-h55c397f_118.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgcc-ng-15.2.0-he9431aa_18.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgomp-15.2.0-h8acb6b2_18.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libiconv-1.18-h90929bb_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libllvm20-20.1.8-hfd2ba90_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libllvm22-22.1.3-hfd2ba90_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/liblzma-5.8.3-he30d5cf_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libmpdec-4.0.0-he30d5cf_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libnghttp2-1.68.1-hd3077d7_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libsqlite-3.53.0-h022381a_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libssh2-1.11.1-h18c354c_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libstdcxx-15.2.0-hef695bb_18.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/libstdcxx-devel_linux-aarch64-15.2.0-ha7b1723_118.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libuuid-2.42-h1022ec0_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libuv-1.51.0-he30d5cf_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libxml2-16-2.15.2-h064b767_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libxml2-2.15.2-h49afab2_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libzlib-1.3.2-hdc9db2a_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/lld-20.1.8-hd253d04_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/llvm-openmp-22.1.3-he40846f_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/llvm-tools-20-20.1.8-hb2a4a65_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/llvm-tools-20.1.8-hfefdfc9_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ncurses-6.5-ha32ae93_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ninja-1.13.2-hdc560ac_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/openssl-3.6.2-h546c87b_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/python-3.14.4-hfd9ac0a_100_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/readline-8.3-hb682ff5_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/rhash-1.4.6-h86ecc28_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/sysroot_linux-aarch64-2.28-h585391f_9.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/tk-8.6.13-noxft_h0dc03b3_103.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/zstd-1.5.7-h85ac4a6_6.conda + osx-64: + - conda: https://conda.anaconda.org/conda-forge/osx-64/bzip2-1.0.8-h500dc9f_9.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.34.6-hb5e19a0_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/cctools-1030.6.3-llvm20_1_h8f84d09_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/cctools_impl_osx-64-1030.6.3-llvm20_1_he6ac7bf_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clang-20-20.1.8-default_hd70426c_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clang-20.1.8-default_cfg_h93fe8ef_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clang-format-20-20.1.8-default_hd70426c_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clang-format-20.1.8-default_hd70426c_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clang-tools-20.1.8-default_ha975d00_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clang_impl_osx-64-20.1.8-default_cfg_h91eacd1_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clangxx-20.1.8-default_cfg_h41ee372_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clangxx_impl_osx-64-20.1.8-default_cfg_h91eacd1_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/cmake-4.3.1-h2426fb6_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/compiler-rt-20.1.8-he914875_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_osx-64-20.1.8-h138dee1_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/flatbuffers-25.9.23-h6982a40_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/icu-78.3-h25d91c4_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/krb5-1.22.2-h207b36a_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ld64-956.6-llvm20_1_h2b71b23_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ld64_osx-64-956.6-llvm20_1_hb7237e5_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libclang-cpp20.1-20.1.8-default_hd70426c_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libclang13-22.1.3-default_h2429e1b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.19.0-h8f0b9e4_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-22.1.3-h19cb2f5_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-devel-20.1.8-h7c275be_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/libcxx-headers-20.1.8-h707e725_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libedit-3.1.20250104-pl5321ha958ccf_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libev-4.33-h10d778d_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libexpat-2.7.5-hcc62823_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libffi-3.5.2-hd1f9c09_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libiconv-1.18-h57a12c2_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm20-20.1.8-h56e7563_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm22-22.1.3-hab754da_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/liblzma-5.8.3-hbb4bfdb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libmpdec-4.0.0-hf3981d6_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libnghttp2-1.68.1-h70048d4_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libsigtool-0.1.3-hc0f2934_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libsqlite-3.53.0-h8f8c405_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libssh2-1.11.1-hed3591d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libuv-1.51.0-h58003a5_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libxml2-16-2.15.2-h7a90416_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libxml2-2.15.2-hd552753_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libzlib-1.3.2-hbb4bfdb_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/lld-20.1.8-hc570667_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-openmp-22.1.3-h0d3cbff_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-tools-20-20.1.8-h879f4bc_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-tools-20.1.8-hb0207f0_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.5-h0622a9a_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ninja-1.13.2-hfc0b2d5_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.6.2-hc881268_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/python-3.14.4-h7c6738f_100_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/readline-8.3-h68b038d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/rhash-1.4.6-h6e16a3a_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/sigtool-codesign-0.1.3-hc0f2934_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/tapi-1600.0.11.8-h8d8e812_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-h7142dee_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/zstd-1.5.7-h3eecb57_6.conda osx-arm64: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-hd037594_9.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.34.6-hc919400_0.conda @@ -272,6 +396,130 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xxhash-0.8.3-hb47aa4a_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb78ec9c_6.conda + linux-aarch64: + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/_openmp_mutex-4.5-20_gnu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/binutils_impl_linux-aarch64-2.45.1-default_h5f4c503_102.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/bzip2-1.0.8-h4777abc_9.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/c-ares-1.34.6-he30d5cf_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang-20-20.1.8-default_he95a3c9_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang-20.1.8-default_cfg_h99ebb92_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang-format-20-20.1.8-default_he95a3c9_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang-format-20.1.8-default_he95a3c9_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang-tools-20.1.8-default_h72162bb_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang_impl_linux-aarch64-20.1.8-default_cfg_h02d8f17_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clangxx-20.1.8-default_cfg_h99ebb92_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clangxx_impl_linux-aarch64-20.1.8-default_cfg_h02d8f17_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/cmake-4.3.1-hc9d863e_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/compiler-rt-20.1.8-hfefdfc9_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_linux-aarch64-20.1.8-hfefdfc9_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/flatbuffers-25.9.23-h5248ec3_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/kernel-headers_linux-aarch64-4.18.0-h05a177a_9.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/keyutils-1.6.3-h86ecc28_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/krb5-1.22.2-hfd895c2_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ld_impl_linux-aarch64-2.45.1-default_h1979696_102.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libclang-cpp20.1-20.1.8-default_he95a3c9_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libclang13-22.1.3-default_h94a09a5_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libcurl-8.19.0-hc57f145_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libedit-3.1.20250104-pl5321h976ea20_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libev-4.33-h31becfc_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libexpat-2.7.5-hfae3067_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libffi-3.5.2-h376a255_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgcc-15.2.0-h8acb6b2_18.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/libgcc-devel_linux-aarch64-15.2.0-h55c397f_118.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgcc-ng-15.2.0-he9431aa_18.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgomp-15.2.0-h8acb6b2_18.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libiconv-1.18-h90929bb_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libllvm20-20.1.8-hfd2ba90_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libllvm22-22.1.3-hfd2ba90_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/liblzma-5.8.3-he30d5cf_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libmpdec-4.0.0-he30d5cf_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libnghttp2-1.68.1-hd3077d7_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libsqlite-3.53.0-h022381a_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libssh2-1.11.1-h18c354c_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libstdcxx-15.2.0-hef695bb_18.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/libstdcxx-devel_linux-aarch64-15.2.0-ha7b1723_118.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libuuid-2.42-h1022ec0_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libuv-1.51.0-he30d5cf_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libxml2-16-2.15.2-h064b767_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libxml2-2.15.2-h49afab2_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libzlib-1.3.2-hdc9db2a_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/lld-20.1.8-hd253d04_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/llvm-openmp-22.1.3-he40846f_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/llvm-tools-20-20.1.8-hb2a4a65_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/llvm-tools-20.1.8-hfefdfc9_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ncurses-6.5-ha32ae93_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ninja-1.13.2-hdc560ac_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/openssl-3.6.2-h546c87b_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/python-3.14.4-hfd9ac0a_100_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/readline-8.3-hb682ff5_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/rhash-1.4.6-h86ecc28_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/sysroot_linux-aarch64-2.28-h585391f_9.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/tk-8.6.13-noxft_h0dc03b3_103.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/zstd-1.5.7-h85ac4a6_6.conda + osx-64: + - conda: https://conda.anaconda.org/conda-forge/osx-64/bzip2-1.0.8-h500dc9f_9.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.34.6-hb5e19a0_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/cctools-1030.6.3-llvm20_1_h8f84d09_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/cctools_impl_osx-64-1030.6.3-llvm20_1_he6ac7bf_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clang-20-20.1.8-default_hd70426c_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clang-20.1.8-default_cfg_h93fe8ef_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clang-format-20-20.1.8-default_hd70426c_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clang-format-20.1.8-default_hd70426c_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clang-tools-20.1.8-default_ha975d00_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clang_impl_osx-64-20.1.8-default_cfg_h91eacd1_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clangxx-20.1.8-default_cfg_h41ee372_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clangxx_impl_osx-64-20.1.8-default_cfg_h91eacd1_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/cmake-4.3.1-h2426fb6_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/compiler-rt-20.1.8-he914875_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_osx-64-20.1.8-h138dee1_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/flatbuffers-25.9.23-h6982a40_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/icu-78.3-h25d91c4_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/krb5-1.22.2-h207b36a_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ld64-956.6-llvm20_1_h2b71b23_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ld64_osx-64-956.6-llvm20_1_hb7237e5_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libclang-cpp20.1-20.1.8-default_hd70426c_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libclang13-22.1.3-default_h2429e1b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.19.0-h8f0b9e4_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-22.1.3-h19cb2f5_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-devel-20.1.8-h7c275be_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/libcxx-headers-20.1.8-h707e725_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libedit-3.1.20250104-pl5321ha958ccf_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libev-4.33-h10d778d_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libexpat-2.7.5-hcc62823_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libffi-3.5.2-hd1f9c09_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libiconv-1.18-h57a12c2_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm20-20.1.8-h56e7563_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm22-22.1.3-hab754da_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/liblzma-5.8.3-hbb4bfdb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libmpdec-4.0.0-hf3981d6_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libnghttp2-1.68.1-h70048d4_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libsigtool-0.1.3-hc0f2934_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libsqlite-3.53.0-h8f8c405_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libssh2-1.11.1-hed3591d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libuv-1.51.0-h58003a5_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libxml2-16-2.15.2-h7a90416_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libxml2-2.15.2-hd552753_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libzlib-1.3.2-hbb4bfdb_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/lld-20.1.8-hc570667_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-openmp-22.1.3-h0d3cbff_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-tools-20-20.1.8-h879f4bc_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-tools-20.1.8-hb0207f0_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.5-h0622a9a_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ninja-1.13.2-hfc0b2d5_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.6.2-hc881268_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/python-3.14.4-h7c6738f_100_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/readline-8.3-h68b038d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/rhash-1.4.6-h6e16a3a_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/sigtool-codesign-0.1.3-hc0f2934_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/tapi-1600.0.11.8-h8d8e812_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-h7142dee_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/zstd-1.5.7-h3eecb57_6.conda osx-arm64: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-hd037594_9.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.34.6-hc919400_0.conda @@ -455,6 +703,130 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xxhash-0.8.3-hb47aa4a_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb78ec9c_6.conda + linux-aarch64: + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/_openmp_mutex-4.5-20_gnu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/binutils_impl_linux-aarch64-2.45.1-default_h5f4c503_102.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/bzip2-1.0.8-h4777abc_9.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/c-ares-1.34.6-he30d5cf_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang-20-20.1.8-default_he95a3c9_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang-20.1.8-default_cfg_h99ebb92_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang-format-20-20.1.8-default_he95a3c9_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang-format-20.1.8-default_he95a3c9_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang-tools-20.1.8-default_h72162bb_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang_impl_linux-aarch64-20.1.8-default_cfg_h02d8f17_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clangxx-20.1.8-default_cfg_h99ebb92_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clangxx_impl_linux-aarch64-20.1.8-default_cfg_h02d8f17_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/cmake-4.3.1-hc9d863e_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/compiler-rt-20.1.8-hfefdfc9_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_linux-aarch64-20.1.8-hfefdfc9_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/flatbuffers-25.9.23-h5248ec3_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/kernel-headers_linux-aarch64-4.18.0-h05a177a_9.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/keyutils-1.6.3-h86ecc28_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/krb5-1.22.2-hfd895c2_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ld_impl_linux-aarch64-2.45.1-default_h1979696_102.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libclang-cpp20.1-20.1.8-default_he95a3c9_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libclang13-22.1.3-default_h94a09a5_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libcurl-8.19.0-hc57f145_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libedit-3.1.20250104-pl5321h976ea20_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libev-4.33-h31becfc_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libexpat-2.7.5-hfae3067_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libffi-3.5.2-h376a255_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgcc-15.2.0-h8acb6b2_18.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/libgcc-devel_linux-aarch64-15.2.0-h55c397f_118.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgcc-ng-15.2.0-he9431aa_18.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgomp-15.2.0-h8acb6b2_18.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libiconv-1.18-h90929bb_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libllvm20-20.1.8-hfd2ba90_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libllvm22-22.1.3-hfd2ba90_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/liblzma-5.8.3-he30d5cf_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libmpdec-4.0.0-he30d5cf_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libnghttp2-1.68.1-hd3077d7_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libsqlite-3.53.0-h022381a_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libssh2-1.11.1-h18c354c_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libstdcxx-15.2.0-hef695bb_18.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/libstdcxx-devel_linux-aarch64-15.2.0-ha7b1723_118.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libuuid-2.42-h1022ec0_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libuv-1.51.0-he30d5cf_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libxml2-16-2.15.2-h064b767_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libxml2-2.15.2-h49afab2_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libzlib-1.3.2-hdc9db2a_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/lld-20.1.8-hd253d04_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/llvm-openmp-22.1.3-he40846f_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/llvm-tools-20-20.1.8-hb2a4a65_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/llvm-tools-20.1.8-hfefdfc9_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ncurses-6.5-ha32ae93_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ninja-1.13.2-hdc560ac_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/openssl-3.6.2-h546c87b_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/python-3.14.4-hfd9ac0a_100_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/readline-8.3-hb682ff5_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/rhash-1.4.6-h86ecc28_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/sysroot_linux-aarch64-2.28-h585391f_9.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/tk-8.6.13-noxft_h0dc03b3_103.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/zstd-1.5.7-h85ac4a6_6.conda + osx-64: + - conda: https://conda.anaconda.org/conda-forge/osx-64/bzip2-1.0.8-h500dc9f_9.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.34.6-hb5e19a0_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/cctools-1030.6.3-llvm20_1_h8f84d09_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/cctools_impl_osx-64-1030.6.3-llvm20_1_he6ac7bf_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clang-20-20.1.8-default_hd70426c_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clang-20.1.8-default_cfg_h93fe8ef_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clang-format-20-20.1.8-default_hd70426c_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clang-format-20.1.8-default_hd70426c_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clang-tools-20.1.8-default_ha975d00_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clang_impl_osx-64-20.1.8-default_cfg_h91eacd1_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clangxx-20.1.8-default_cfg_h41ee372_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clangxx_impl_osx-64-20.1.8-default_cfg_h91eacd1_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/cmake-4.3.1-h2426fb6_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/compiler-rt-20.1.8-he914875_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_osx-64-20.1.8-h138dee1_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/flatbuffers-25.9.23-h6982a40_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/icu-78.3-h25d91c4_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/krb5-1.22.2-h207b36a_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ld64-956.6-llvm20_1_h2b71b23_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ld64_osx-64-956.6-llvm20_1_hb7237e5_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libclang-cpp20.1-20.1.8-default_hd70426c_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libclang13-22.1.3-default_h2429e1b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.19.0-h8f0b9e4_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-22.1.3-h19cb2f5_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-devel-20.1.8-h7c275be_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/libcxx-headers-20.1.8-h707e725_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libedit-3.1.20250104-pl5321ha958ccf_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libev-4.33-h10d778d_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libexpat-2.7.5-hcc62823_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libffi-3.5.2-hd1f9c09_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libiconv-1.18-h57a12c2_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm20-20.1.8-h56e7563_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm22-22.1.3-hab754da_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/liblzma-5.8.3-hbb4bfdb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libmpdec-4.0.0-hf3981d6_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libnghttp2-1.68.1-h70048d4_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libsigtool-0.1.3-hc0f2934_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libsqlite-3.53.0-h8f8c405_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libssh2-1.11.1-hed3591d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libuv-1.51.0-h58003a5_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libxml2-16-2.15.2-h7a90416_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libxml2-2.15.2-hd552753_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libzlib-1.3.2-hbb4bfdb_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/lld-20.1.8-hc570667_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-openmp-22.1.3-h0d3cbff_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-tools-20-20.1.8-h879f4bc_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-tools-20.1.8-hb0207f0_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.5-h0622a9a_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ninja-1.13.2-hfc0b2d5_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.6.2-hc881268_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/python-3.14.4-h7c6738f_100_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/readline-8.3-h68b038d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/rhash-1.4.6-h6e16a3a_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/sigtool-codesign-0.1.3-hc0f2934_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/tapi-1600.0.11.8-h8d8e812_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-h7142dee_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/zstd-1.5.7-h3eecb57_6.conda osx-arm64: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-hd037594_9.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.34.6-hc919400_0.conda @@ -650,6 +1022,152 @@ environments: - pypi: https://files.pythonhosted.org/packages/d4/24/a372aaf5c9b7208e7112038812994107bc65a84cd00e0354a88c2c77a617/pytest-9.0.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e5/35/f8b19922b6a25bc0880171a2f1a003eaeb93657475193ab516fd87cac9da/pytest_asyncio-1.3.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl + linux-aarch64: + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/_openmp_mutex-4.5-20_gnu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/binutils_impl_linux-aarch64-2.45.1-default_h5f4c503_102.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/bzip2-1.0.8-h4777abc_9.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/c-ares-1.34.6-he30d5cf_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang-20-20.1.8-default_he95a3c9_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang-20.1.8-default_cfg_h99ebb92_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang-format-20-20.1.8-default_he95a3c9_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang-format-20.1.8-default_he95a3c9_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang-tools-20.1.8-default_h72162bb_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang_impl_linux-aarch64-20.1.8-default_cfg_h02d8f17_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clangxx-20.1.8-default_cfg_h99ebb92_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clangxx_impl_linux-aarch64-20.1.8-default_cfg_h02d8f17_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/cmake-4.3.1-hc9d863e_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/compiler-rt-20.1.8-hfefdfc9_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_linux-aarch64-20.1.8-hfefdfc9_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/flatbuffers-25.9.23-h5248ec3_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/kernel-headers_linux-aarch64-4.18.0-h05a177a_9.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/keyutils-1.6.3-h86ecc28_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/krb5-1.22.2-hfd895c2_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ld_impl_linux-aarch64-2.45.1-default_h1979696_102.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libclang-cpp20.1-20.1.8-default_he95a3c9_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libclang13-22.1.3-default_h94a09a5_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libcurl-8.19.0-hc57f145_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libedit-3.1.20250104-pl5321h976ea20_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libev-4.33-h31becfc_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libexpat-2.7.5-hfae3067_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libffi-3.5.2-h376a255_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgcc-15.2.0-h8acb6b2_18.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/libgcc-devel_linux-aarch64-15.2.0-h55c397f_118.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgcc-ng-15.2.0-he9431aa_18.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgomp-15.2.0-h8acb6b2_18.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libiconv-1.18-h90929bb_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libllvm20-20.1.8-hfd2ba90_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libllvm22-22.1.3-hfd2ba90_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/liblzma-5.8.3-he30d5cf_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libmpdec-4.0.0-he30d5cf_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libnghttp2-1.68.1-hd3077d7_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libsqlite-3.53.0-h022381a_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libssh2-1.11.1-h18c354c_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libstdcxx-15.2.0-hef695bb_18.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/libstdcxx-devel_linux-aarch64-15.2.0-ha7b1723_118.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libuuid-2.42-h1022ec0_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libuv-1.51.0-he30d5cf_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libxml2-16-2.15.2-h064b767_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libxml2-2.15.2-h49afab2_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libzlib-1.3.2-hdc9db2a_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/lld-20.1.8-hd253d04_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/llvm-openmp-22.1.3-he40846f_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/llvm-tools-20-20.1.8-hb2a4a65_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/llvm-tools-20.1.8-hfefdfc9_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ncurses-6.5-ha32ae93_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ninja-1.13.2-hdc560ac_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/openssl-3.6.2-h546c87b_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/python-3.14.4-hfd9ac0a_100_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/readline-8.3-hb682ff5_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/rhash-1.4.6-h86ecc28_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/sysroot_linux-aarch64-2.28-h585391f_9.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/tk-8.6.13-noxft_h0dc03b3_103.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/zstd-1.5.7-h85ac4a6_6.conda + - pypi: https://files.pythonhosted.org/packages/64/b4/17d4b0b2a2dc85a6df63d1157e028ed19f90d4cd97c36717afef2bc2f395/attrs-26.1.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/80/56/60547f7801b97c67e97491dc3d9ade9fbccbd0325058fd3dfcb2f5d98d90/cattrs-26.1.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/cb/b1/3846dd7f199d53cb17f49cba7e651e9ce294d8497c8c150530ed11865bb8/iniconfig-2.3.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/7b/f0/92f2d609d6642b5f30cb50a885d2bf1483301c69d5786286500d15651ef2/lsprotocol-2025.0.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/b7/b9/c538f279a4e237a006a2c98387d081e9eb060d203d8ed34467cc0f0b9b53/packaging-26.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/fd/1a/208293b6c350f5abea6941d5606080d4a492644052504f5312e5de30a902/pygls-2.1.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/f4/7e/a72dd26f3b0f4f2bf1dd8923c85f7ceb43172af56d63c7383eb62b332364/pygments-2.20.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/d4/24/a372aaf5c9b7208e7112038812994107bc65a84cd00e0354a88c2c77a617/pytest-9.0.3-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/e5/35/f8b19922b6a25bc0880171a2f1a003eaeb93657475193ab516fd87cac9da/pytest_asyncio-1.3.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl + osx-64: + - conda: https://conda.anaconda.org/conda-forge/osx-64/bzip2-1.0.8-h500dc9f_9.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.34.6-hb5e19a0_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/cctools-1030.6.3-llvm20_1_h8f84d09_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/cctools_impl_osx-64-1030.6.3-llvm20_1_he6ac7bf_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clang-20-20.1.8-default_hd70426c_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clang-20.1.8-default_cfg_h93fe8ef_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clang-format-20-20.1.8-default_hd70426c_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clang-format-20.1.8-default_hd70426c_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clang-tools-20.1.8-default_ha975d00_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clang_impl_osx-64-20.1.8-default_cfg_h91eacd1_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clangxx-20.1.8-default_cfg_h41ee372_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clangxx_impl_osx-64-20.1.8-default_cfg_h91eacd1_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/cmake-4.3.1-h2426fb6_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/compiler-rt-20.1.8-he914875_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_osx-64-20.1.8-h138dee1_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/flatbuffers-25.9.23-h6982a40_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/icu-78.3-h25d91c4_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/krb5-1.22.2-h207b36a_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ld64-956.6-llvm20_1_h2b71b23_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ld64_osx-64-956.6-llvm20_1_hb7237e5_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libclang-cpp20.1-20.1.8-default_hd70426c_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libclang13-22.1.3-default_h2429e1b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.19.0-h8f0b9e4_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-22.1.3-h19cb2f5_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-devel-20.1.8-h7c275be_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/libcxx-headers-20.1.8-h707e725_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libedit-3.1.20250104-pl5321ha958ccf_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libev-4.33-h10d778d_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libexpat-2.7.5-hcc62823_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libffi-3.5.2-hd1f9c09_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libiconv-1.18-h57a12c2_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm20-20.1.8-h56e7563_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm22-22.1.3-hab754da_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/liblzma-5.8.3-hbb4bfdb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libmpdec-4.0.0-hf3981d6_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libnghttp2-1.68.1-h70048d4_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libsigtool-0.1.3-hc0f2934_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libsqlite-3.53.0-h8f8c405_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libssh2-1.11.1-hed3591d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libuv-1.51.0-h58003a5_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libxml2-16-2.15.2-h7a90416_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libxml2-2.15.2-hd552753_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libzlib-1.3.2-hbb4bfdb_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/lld-20.1.8-hc570667_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-openmp-22.1.3-h0d3cbff_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-tools-20-20.1.8-h879f4bc_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-tools-20.1.8-hb0207f0_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.5-h0622a9a_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ninja-1.13.2-hfc0b2d5_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.6.2-hc881268_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/python-3.14.4-h7c6738f_100_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/readline-8.3-h68b038d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/rhash-1.4.6-h6e16a3a_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/sigtool-codesign-0.1.3-hc0f2934_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/tapi-1600.0.11.8-h8d8e812_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-h7142dee_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/zstd-1.5.7-h3eecb57_6.conda + - pypi: https://files.pythonhosted.org/packages/64/b4/17d4b0b2a2dc85a6df63d1157e028ed19f90d4cd97c36717afef2bc2f395/attrs-26.1.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/80/56/60547f7801b97c67e97491dc3d9ade9fbccbd0325058fd3dfcb2f5d98d90/cattrs-26.1.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/cb/b1/3846dd7f199d53cb17f49cba7e651e9ce294d8497c8c150530ed11865bb8/iniconfig-2.3.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/7b/f0/92f2d609d6642b5f30cb50a885d2bf1483301c69d5786286500d15651ef2/lsprotocol-2025.0.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/b7/b9/c538f279a4e237a006a2c98387d081e9eb060d203d8ed34467cc0f0b9b53/packaging-26.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/fd/1a/208293b6c350f5abea6941d5606080d4a492644052504f5312e5de30a902/pygls-2.1.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/f4/7e/a72dd26f3b0f4f2bf1dd8923c85f7ceb43172af56d63c7383eb62b332364/pygments-2.20.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/d4/24/a372aaf5c9b7208e7112038812994107bc65a84cd00e0354a88c2c77a617/pytest-9.0.3-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/e5/35/f8b19922b6a25bc0880171a2f1a003eaeb93657475193ab516fd87cac9da/pytest_asyncio-1.3.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl osx-arm64: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-hd037594_8.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.34.6-hc919400_0.conda @@ -817,6 +1335,79 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/tombi-0.7.12-hb17b654_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-h8577fbf_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb78ec9c_6.conda + linux-aarch64: + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/_openmp_mutex-4.5-20_gnu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/bzip2-1.0.8-h4777abc_9.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang-format-21-21.1.7-default_he95a3c9_4.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang-format-21.1.7-default_he95a3c9_4.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/fd-find-10.4.2-h1ebd7d5_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/flatbuffers-25.9.23-h5248ec3_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/icu-78.3-hcab7f73_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ld_impl_linux-aarch64-2.45.1-default_h1979696_102.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libclang-cpp21.1-21.1.8-default_he95a3c9_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libexpat-2.7.5-hfae3067_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libffi-3.5.2-h376a255_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgcc-15.2.0-h8acb6b2_18.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgomp-15.2.0-h8acb6b2_18.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libiconv-1.18-h90929bb_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libllvm21-21.1.8-hfd2ba90_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/liblzma-5.8.3-he30d5cf_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libmpdec-4.0.0-he30d5cf_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libsqlite-3.53.0-h022381a_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libstdcxx-15.2.0-hef695bb_18.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libuuid-2.42-h1022ec0_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libuv-1.51.0-he30d5cf_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libxml2-16-2.15.2-h79dcc73_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libxml2-2.15.2-h825857f_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libzlib-1.3.2-hdc9db2a_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ncurses-6.5-ha32ae93_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/nodejs-22.22.2-h42e3414_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/openssl-3.6.2-h546c87b_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/prettier-3.8.2-h1e5041c_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/python-3.14.4-hfd9ac0a_100_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/readline-8.3-hb682ff5_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ruff-0.15.10-h9f438e6_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/stylua-2.4.1-h069e38c_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/tk-8.6.13-noxft_h0dc03b3_103.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/tombi-0.9.17-h069e38c_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/zstd-1.5.7-h85ac4a6_6.conda + osx-64: + - conda: https://conda.anaconda.org/conda-forge/osx-64/bzip2-1.0.8-h500dc9f_9.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clang-format-21-21.1.7-default_hd70426c_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clang-format-21.1.7-default_hd70426c_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/fd-find-10.4.2-h009cd8f_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/flatbuffers-25.9.23-h6982a40_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/icu-78.3-h25d91c4_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libclang-cpp21.1-21.1.8-default_hd70426c_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-22.1.3-h19cb2f5_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libexpat-2.7.5-hcc62823_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libffi-3.5.2-hd1f9c09_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libiconv-1.18-h57a12c2_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm21-21.1.8-h56e7563_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/liblzma-5.8.3-hbb4bfdb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libmpdec-4.0.0-hf3981d6_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libsqlite-3.53.0-h8f8c405_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libuv-1.51.0-h58003a5_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libxml2-16-2.15.2-h7a90416_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libxml2-2.15.2-hd552753_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libzlib-1.3.2-hbb4bfdb_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.5-h0622a9a_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/nodejs-22.22.2-h5d72c05_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.6.2-hc881268_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/prettier-3.8.2-h4eb6579_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/python-3.14.4-h7c6738f_100_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/readline-8.3-h68b038d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ruff-0.15.10-h16586dd_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/stylua-2.4.1-h19f9e61_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-h7142dee_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/tombi-0.9.17-h19f9e61_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/zstd-1.5.7-h3eecb57_6.conda osx-arm64: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-hd037594_8.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.11.12-hbd8a1cb_0.conda @@ -1067,6 +1658,160 @@ environments: - pypi: https://files.pythonhosted.org/packages/d4/24/a372aaf5c9b7208e7112038812994107bc65a84cd00e0354a88c2c77a617/pytest-9.0.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e5/35/f8b19922b6a25bc0880171a2f1a003eaeb93657475193ab516fd87cac9da/pytest_asyncio-1.3.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl + linux-aarch64: + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/_openmp_mutex-4.5-20_gnu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/binutils_impl_linux-aarch64-2.45.1-default_h5f4c503_102.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/bzip2-1.0.8-h4777abc_9.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/c-ares-1.34.6-he30d5cf_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang-20-20.1.8-default_he95a3c9_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang-20.1.8-default_cfg_h99ebb92_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang-format-20-20.1.8-default_he95a3c9_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang-format-20.1.8-default_he95a3c9_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang-tools-20.1.8-default_h72162bb_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang_impl_linux-aarch64-20.1.8-default_cfg_h02d8f17_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clangxx-20.1.8-default_cfg_h99ebb92_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clangxx_impl_linux-aarch64-20.1.8-default_cfg_h02d8f17_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/cmake-4.3.1-hc9d863e_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/compiler-rt-20.1.8-hfefdfc9_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_linux-aarch64-20.1.8-hfefdfc9_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/flatbuffers-25.9.23-h5248ec3_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/kernel-headers_linux-aarch64-4.18.0-h05a177a_9.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/keyutils-1.6.3-h86ecc28_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/krb5-1.22.2-hfd895c2_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ld_impl_linux-aarch64-2.45.1-default_h1979696_102.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libclang-cpp20.1-20.1.8-default_he95a3c9_14.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libclang13-22.1.3-default_h94a09a5_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libcurl-8.19.0-hc57f145_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libedit-3.1.20250104-pl5321h976ea20_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libev-4.33-h31becfc_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libexpat-2.7.5-hfae3067_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libffi-3.5.2-h376a255_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgcc-15.2.0-h8acb6b2_18.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/libgcc-devel_linux-aarch64-15.2.0-h55c397f_118.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgcc-ng-15.2.0-he9431aa_18.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgomp-15.2.0-h8acb6b2_18.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libiconv-1.18-h90929bb_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libllvm20-20.1.8-hfd2ba90_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libllvm22-22.1.3-hfd2ba90_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/liblzma-5.8.3-he30d5cf_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/liblzma-devel-5.8.3-he30d5cf_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libmpdec-4.0.0-he30d5cf_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libnghttp2-1.68.1-hd3077d7_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libsqlite-3.53.0-h022381a_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libssh2-1.11.1-h18c354c_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libstdcxx-15.2.0-hef695bb_18.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/libstdcxx-devel_linux-aarch64-15.2.0-ha7b1723_118.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libuuid-2.42-h1022ec0_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libuv-1.51.0-he30d5cf_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libxml2-16-2.15.2-h064b767_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libxml2-2.15.2-h49afab2_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libzlib-1.3.2-hdc9db2a_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/lld-20.1.8-hd253d04_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/llvm-openmp-22.1.3-he40846f_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/llvm-tools-20-20.1.8-hb2a4a65_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/llvm-tools-20.1.8-hfefdfc9_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ncurses-6.5-ha32ae93_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ninja-1.13.2-hdc560ac_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/openssl-3.6.2-h546c87b_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/python-3.14.4-hfd9ac0a_100_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/readline-8.3-hb682ff5_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/rhash-1.4.6-h86ecc28_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/sysroot_linux-aarch64-2.28-h585391f_9.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/tk-8.6.13-noxft_h0dc03b3_103.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xz-5.8.3-hd704e39_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xz-gpl-tools-5.8.3-hd704e39_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xz-tools-5.8.3-he30d5cf_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/zstd-1.5.7-h85ac4a6_6.conda + - pypi: https://files.pythonhosted.org/packages/64/b4/17d4b0b2a2dc85a6df63d1157e028ed19f90d4cd97c36717afef2bc2f395/attrs-26.1.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/80/56/60547f7801b97c67e97491dc3d9ade9fbccbd0325058fd3dfcb2f5d98d90/cattrs-26.1.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/cb/b1/3846dd7f199d53cb17f49cba7e651e9ce294d8497c8c150530ed11865bb8/iniconfig-2.3.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/7b/f0/92f2d609d6642b5f30cb50a885d2bf1483301c69d5786286500d15651ef2/lsprotocol-2025.0.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/b7/b9/c538f279a4e237a006a2c98387d081e9eb060d203d8ed34467cc0f0b9b53/packaging-26.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/fd/1a/208293b6c350f5abea6941d5606080d4a492644052504f5312e5de30a902/pygls-2.1.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/f4/7e/a72dd26f3b0f4f2bf1dd8923c85f7ceb43172af56d63c7383eb62b332364/pygments-2.20.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/d4/24/a372aaf5c9b7208e7112038812994107bc65a84cd00e0354a88c2c77a617/pytest-9.0.3-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/e5/35/f8b19922b6a25bc0880171a2f1a003eaeb93657475193ab516fd87cac9da/pytest_asyncio-1.3.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl + osx-64: + - conda: https://conda.anaconda.org/conda-forge/osx-64/bzip2-1.0.8-h500dc9f_9.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.34.6-hb5e19a0_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/cctools-1030.6.3-llvm20_1_h8f84d09_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/cctools_impl_osx-64-1030.6.3-llvm20_1_he6ac7bf_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clang-20-20.1.8-default_hd70426c_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clang-20.1.8-default_cfg_h93fe8ef_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clang-format-20-20.1.8-default_hd70426c_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clang-format-20.1.8-default_hd70426c_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clang-tools-20.1.8-default_ha975d00_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clang_impl_osx-64-20.1.8-default_cfg_h91eacd1_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clangxx-20.1.8-default_cfg_h41ee372_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clangxx_impl_osx-64-20.1.8-default_cfg_h91eacd1_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/cmake-4.3.1-h2426fb6_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/compiler-rt-20.1.8-he914875_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_osx-64-20.1.8-h138dee1_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/flatbuffers-25.9.23-h6982a40_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/icu-78.3-h25d91c4_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/krb5-1.22.2-h207b36a_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ld64-956.6-llvm20_1_h2b71b23_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ld64_osx-64-956.6-llvm20_1_hb7237e5_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libclang-cpp20.1-20.1.8-default_hd70426c_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libclang13-22.1.3-default_h2429e1b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.19.0-h8f0b9e4_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-22.1.3-h19cb2f5_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-devel-20.1.8-h7c275be_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/libcxx-headers-20.1.8-h707e725_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libedit-3.1.20250104-pl5321ha958ccf_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libev-4.33-h10d778d_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libexpat-2.7.5-hcc62823_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libffi-3.5.2-hd1f9c09_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libiconv-1.18-h57a12c2_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm20-20.1.8-h56e7563_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm22-22.1.3-hab754da_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/liblzma-5.8.3-hbb4bfdb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/liblzma-devel-5.8.3-hbb4bfdb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libmpdec-4.0.0-hf3981d6_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libnghttp2-1.68.1-h70048d4_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libsigtool-0.1.3-hc0f2934_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libsqlite-3.53.0-h8f8c405_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libssh2-1.11.1-hed3591d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libuv-1.51.0-h58003a5_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libxml2-16-2.15.2-h7a90416_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libxml2-2.15.2-hd552753_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libzlib-1.3.2-hbb4bfdb_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/lld-20.1.8-hc570667_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-openmp-22.1.3-h0d3cbff_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-tools-20-20.1.8-h879f4bc_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-tools-20.1.8-hb0207f0_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.5-h0622a9a_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ninja-1.13.2-hfc0b2d5_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.6.2-hc881268_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/python-3.14.4-h7c6738f_100_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/readline-8.3-h68b038d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/rhash-1.4.6-h6e16a3a_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/sigtool-codesign-0.1.3-hc0f2934_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/tapi-1600.0.11.8-h8d8e812_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-h7142dee_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/xz-5.8.3-h6a5a847_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/xz-gpl-tools-5.8.3-h6a5a847_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/xz-tools-5.8.3-hbb4bfdb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/zstd-1.5.7-h3eecb57_6.conda + - pypi: https://files.pythonhosted.org/packages/64/b4/17d4b0b2a2dc85a6df63d1157e028ed19f90d4cd97c36717afef2bc2f395/attrs-26.1.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/80/56/60547f7801b97c67e97491dc3d9ade9fbccbd0325058fd3dfcb2f5d98d90/cattrs-26.1.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/cb/b1/3846dd7f199d53cb17f49cba7e651e9ce294d8497c8c150530ed11865bb8/iniconfig-2.3.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/7b/f0/92f2d609d6642b5f30cb50a885d2bf1483301c69d5786286500d15651ef2/lsprotocol-2025.0.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/b7/b9/c538f279a4e237a006a2c98387d081e9eb060d203d8ed34467cc0f0b9b53/packaging-26.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/fd/1a/208293b6c350f5abea6941d5606080d4a492644052504f5312e5de30a902/pygls-2.1.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/f4/7e/a72dd26f3b0f4f2bf1dd8923c85f7ceb43172af56d63c7383eb62b332364/pygments-2.20.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/d4/24/a372aaf5c9b7208e7112038812994107bc65a84cd00e0354a88c2c77a617/pytest-9.0.3-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/e5/35/f8b19922b6a25bc0880171a2f1a003eaeb93657475193ab516fd87cac9da/pytest_asyncio-1.3.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl osx-arm64: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-hd037594_8.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.34.6-hc919400_0.conda @@ -1463,6 +2208,18 @@ packages: license_family: GPL size: 3538540 timestamp: 1774197478919 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/binutils_impl_linux-aarch64-2.45.1-default_h5f4c503_102.conda + sha256: 7fd4ddde2f0150d015dfa9f2db5f428bd1570078f270e4bd4f116487a52de169 + md5: 56a04d796d7e3cdc9f8d2e1278e91bff + depends: + - ld_impl_linux-aarch64 2.45.1 default_h1979696_102 + - sysroot_linux-aarch64 + - zstd >=1.5.7,<1.6.0a0 + license: GPL-3.0-only + license_family: GPL + purls: [] + size: 4683754 + timestamp: 1774197535605 - conda: https://conda.anaconda.org/conda-forge/linux-64/binutils_linux-aarch64-2.45.1-default_h7726a90_102.conda sha256: c47ffb66cb82cfe4596ebab4ae6e82f390ff4e7620dfd66264941b66bb42e6c8 md5: a0047e55f495b44a2bb3242ff43eb1dd @@ -1576,6 +2333,7 @@ packages: - libgcc >=14 license: MIT license_family: MIT + purls: [] size: 217215 timestamp: 1765214743735 - conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.34.6-hb5e19a0_0.conda @@ -1585,6 +2343,7 @@ packages: - __osx >=10.13 license: MIT license_family: MIT + purls: [] size: 186122 timestamp: 1765215100384 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.34.6-hc919400_0.conda @@ -1681,6 +2440,18 @@ packages: purls: [] size: 598937 timestamp: 1774189390770 +- conda: https://conda.anaconda.org/conda-forge/osx-64/cctools-1030.6.3-llvm20_1_h8f84d09_4.conda + sha256: 7265c22396c12f72d580bdb304dee046927dc4cbf5b042cf46c2be0c326344da + md5: fa04761b51a9890506e9a1b14110c064 + depends: + - cctools_impl_osx-64 1030.6.3 llvm20_1_he6ac7bf_4 + - ld64 956.6 llvm20_1_h2b71b23_4 + - libllvm20 >=20.1.8,<20.2.0a0 + license: APSL-2.0 + license_family: Other + purls: [] + size: 24247 + timestamp: 1768852718486 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cctools-1030.6.3-llvm20_1_h617d6d1_4.conda sha256: 06d1d3af6b0c1b82ae981ac507213c3b8936bafc84d242bfca8b148467e8b881 md5: c438326a31a001c8f756131986a06d7e @@ -1692,6 +2463,26 @@ packages: license_family: Other size: 24331 timestamp: 1768852523211 +- conda: https://conda.anaconda.org/conda-forge/osx-64/cctools_impl_osx-64-1030.6.3-llvm20_1_he6ac7bf_4.conda + sha256: 57cbbc7e294e2ec89be215d1955fa1c2499ccd59569171d33ddcf9e8ab4c9d3b + md5: c22c6b3e93e65ca72cd5e8a2eca90371 + depends: + - __osx >=10.13 + - ld64_osx-64 >=956.6,<956.7.0a0 + - libcxx + - libllvm20 >=20.1.8,<20.2.0a0 + - libzlib >=1.3.1,<2.0a0 + - llvm-tools 20.1.* + - sigtool-codesign + constrains: + - cctools 1030.6.3.* + - ld64 956.6.* + - clang 20.1.* + license: APSL-2.0 + license_family: Other + purls: [] + size: 745520 + timestamp: 1768852675139 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cctools_impl_osx-arm64-1030.6.3-llvm20_1_hd60c58f_4.conda sha256: 12548860339e8c1f504d896f2ca6d1018b759bbe9b2d4ac4127136a8253010a9 md5: f72e7ff154f694ec93da1b96d4bac480 @@ -1737,6 +2528,34 @@ packages: purls: [] size: 69507 timestamp: 1764393877870 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang-20.1.8-default_cfg_h99ebb92_14.conda + sha256: e5b9aff6d5ba66b1567ad9759837dcff0c60cb467be9ff8ecac1290919015211 + md5: be66e0988881b9290df14efcb47d2526 + depends: + - binutils_impl_linux-aarch64 + - clang-20 20.1.8 default_he95a3c9_14 + - clang_impl_linux-aarch64 20.1.8 default_cfg_h02d8f17_14 + - libgcc-devel_linux-aarch64 + - sysroot_linux-aarch64 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 70761 + timestamp: 1773112504923 +- conda: https://conda.anaconda.org/conda-forge/osx-64/clang-20.1.8-default_cfg_h93fe8ef_14.conda + sha256: 25617e98cce5d8bb444afb871af622d482801eb9fa5ed10530f01755584a2042 + md5: 717de6f61275c9e0fdc19cec88675481 + depends: + - cctools + - clang-20 20.1.8.* default_* + - clang_impl_osx-64 20.1.8 default_cfg_h91eacd1_14 + - ld64 + - ld64_osx-64 * llvm20_1_* + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 70785 + timestamp: 1773106956658 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-20.1.8-default_cfg_hb78b91e_14.conda sha256: 06a85395d8ccd4f13235d5ffacd382e136d5c65e70b4ea650d274ada36820713 md5: 1939aea70abc3e7d803a661eb10d94a0 @@ -1816,6 +2635,32 @@ packages: purls: [] size: 865216 timestamp: 1764393818684 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang-20-20.1.8-default_he95a3c9_14.conda + sha256: 058a064e863e237136742ef13432c04bd8d9888a44328ca8ff787437d20cea57 + md5: d71c1d73d5c878c6dd9df969f1806b19 + depends: + - libclang-cpp20.1 20.1.8 default_he95a3c9_14 + - libgcc >=14 + - libllvm20 >=20.1.8,<20.2.0a0 + - libstdcxx >=14 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 865049 + timestamp: 1773112301362 +- conda: https://conda.anaconda.org/conda-forge/osx-64/clang-20-20.1.8-default_hd70426c_14.conda + sha256: cc3c5b4b04d7a40082145ecd57d605720261777698f37890d4836e04bf98d350 + md5: 7e220963c87a883d230e4f4b0e8885c0 + depends: + - __osx >=10.13 + - libclang-cpp20.1 20.1.8 default_hd70426c_14 + - libcxx >=20.1.8 + - libllvm20 >=20.1.8,<20.2.0a0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 845420 + timestamp: 1773106700838 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-20-20.1.8-default_h73dfc95_5.conda sha256: d283acae6b725f6ca9b647049630c4bc4e1240c46ea906643e762363214789a3 md5: 6191d65e848fc8ab429d2627cae7b322 @@ -1897,6 +2742,60 @@ packages: license_family: Apache size: 27733 timestamp: 1766016586518 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang-format-20.1.8-default_he95a3c9_14.conda + sha256: ff0d40335bbbf2d7f2db2e150fd4ee91e4c860f219dbdac71f3059c5ca35c47e + md5: 9fc3dfb63b9cf2cc12eecf9ac6a70ee8 + depends: + - clang-format-20 20.1.8 default_he95a3c9_14 + - libclang-cpp20.1 >=20.1.8,<20.2.0a0 + - libgcc >=14 + - libllvm20 >=20.1.8,<20.2.0a0 + - libstdcxx >=14 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 71196 + timestamp: 1773112449017 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang-format-21.1.7-default_he95a3c9_4.conda + sha256: c4d97522e87fca7e9822a2d1d3e10c4ad1c5d344014dbfe2af6bad75828a5548 + md5: 00560dc9b8ca6db6758db424aed59bc9 + depends: + - clang-format-21 21.1.7 default_he95a3c9_4 + - libclang-cpp21.1 >=21.1.7,<21.2.0a0 + - libgcc >=14 + - libllvm21 >=21.1.7,<21.2.0a0 + - libstdcxx >=14 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + size: 28375 + timestamp: 1767757083736 +- conda: https://conda.anaconda.org/conda-forge/osx-64/clang-format-20.1.8-default_hd70426c_14.conda + sha256: 6faebb1b2cc0f474317cae4e1966f9b70677c168275b7fa06e17db7c512f5320 + md5: 4346a48a4d0fa429817dc6f54f20cfa7 + depends: + - __osx >=10.13 + - clang-format-20 20.1.8 default_hd70426c_14 + - libclang-cpp20.1 >=20.1.8,<20.2.0a0 + - libcxx >=20.1.8 + - libllvm20 >=20.1.8,<20.2.0a0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 70968 + timestamp: 1773106884052 +- conda: https://conda.anaconda.org/conda-forge/osx-64/clang-format-21.1.7-default_hd70426c_4.conda + sha256: 4437a8f0f78d4f6b7dbc05ad12cd6fab7fc8cc66624c934669ec8ccde4c4e152 + md5: 0a34f22705cdaeabe1f122712f3a6ee7 + depends: + - __osx >=10.13 + - clang-format-21 21.1.7 default_hd70426c_4 + - libclang-cpp21.1 >=21.1.7,<21.2.0a0 + - libcxx >=21.1.7 + - libllvm21 >=21.1.7,<21.2.0a0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + size: 28362 + timestamp: 1767755464058 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-format-20.1.8-default_hf3020a7_14.conda sha256: 0967d59e8a89c5f9c1cfa3579403ee3295f5770c01b308c9abb434df47acc5db md5: 86639340249e4d8fa1b37ab92e581d26 @@ -1961,6 +2860,32 @@ packages: purls: [] size: 114295 timestamp: 1773111143555 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang-format-20-20.1.8-default_he95a3c9_14.conda + sha256: aa1117ccf394d43411b41af4bd0a19ce036cdc6315cb876c1b53545ce01a8893 + md5: d512fa1e4955471e07d6ba882ab7d913 + depends: + - libclang-cpp20.1 >=20.1.8,<20.2.0a0 + - libgcc >=14 + - libllvm20 >=20.1.8,<20.2.0a0 + - libstdcxx >=14 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 115214 + timestamp: 1773112385771 +- conda: https://conda.anaconda.org/conda-forge/osx-64/clang-format-20-20.1.8-default_hd70426c_14.conda + sha256: ce5bded8c07c9b1fbdafaa39d765012ba8e44084f249f420b7e21db719177a17 + md5: 37f0429d94b8070789189fe77873dfb5 + depends: + - __osx >=10.13 + - libclang-cpp20.1 >=20.1.8,<20.2.0a0 + - libcxx >=20.1.8 + - libllvm20 >=20.1.8,<20.2.0a0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 110072 + timestamp: 1773106778522 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-format-20-20.1.8-default_hf3020a7_14.conda sha256: 52f77009e2f69db348c10cb20371e0b1bf6f49e2e91e026d5fb93addc6526ef6 md5: 2250c216f6da8f1f875f2b6a794d5e67 @@ -1987,6 +2912,30 @@ packages: license_family: Apache size: 70516 timestamp: 1766016504444 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang-format-21-21.1.7-default_he95a3c9_4.conda + sha256: 5c49a53803c22f4b513e9f01e3328fb59fc63c04c4493f055a89dd72c6e9015a + md5: 2f2eaa57047e62408459bce2a0515d83 + depends: + - libclang-cpp21.1 >=21.1.7,<21.2.0a0 + - libgcc >=14 + - libllvm21 >=21.1.7,<21.2.0a0 + - libstdcxx >=14 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + size: 71876 + timestamp: 1767757044225 +- conda: https://conda.anaconda.org/conda-forge/osx-64/clang-format-21-21.1.7-default_hd70426c_4.conda + sha256: 33024012e1e0ae3d9f43f9e9c2f4d5405ff74050a5aed82aa5710301d67aa4d4 + md5: 6c80c1abd27dc6ac66fc9709a6f83d8d + depends: + - __osx >=10.13 + - libclang-cpp21.1 >=21.1.7,<21.2.0a0 + - libcxx >=21.1.7 + - libllvm21 >=21.1.7,<21.2.0a0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + size: 67378 + timestamp: 1767755325469 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-format-21-21.1.7-default_hf3020a7_2.conda sha256: fe5588d72edbe9d464f24735ac3f8a167a150d9fc365523fdad8ba05e09d68b5 md5: 1642e5fb3cd0e4e8e5d9ae2b68ba554e @@ -2019,6 +2968,44 @@ packages: purls: [] size: 21897132 timestamp: 1773111341498 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang-tools-20.1.8-default_h72162bb_14.conda + sha256: 739b5187f33c9596f02552552bdf6d070ee44c78d9be1d034b2a8407af005c9e + md5: 43b367ef0e7b9f4b26c3c3811fd83fab + depends: + - clang-format 20.1.8 default_he95a3c9_14 + - libclang-cpp20.1 >=20.1.8,<20.2.0a0 + - libclang13 >=20.1.8 + - libgcc >=14 + - libllvm20 >=20.1.8,<20.2.0a0 + - libstdcxx >=14 + - libxml2 + - libxml2-16 >=2.14.6 + constrains: + - clangdev 20.1.8 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 21914873 + timestamp: 1773112538494 +- conda: https://conda.anaconda.org/conda-forge/osx-64/clang-tools-20.1.8-default_ha975d00_14.conda + sha256: c61a5825d6fd71f5d81a970983523621520160f52e48709d4d155f92ccb9347a + md5: c133554d183b10fe1054d7c08c0d6f31 + depends: + - __osx >=10.13 + - clang-format 20.1.8 default_hd70426c_14 + - libclang-cpp20.1 >=20.1.8,<20.2.0a0 + - libclang13 >=20.1.8 + - libcxx >=20.1.8 + - libllvm20 >=20.1.8,<20.2.0a0 + - libxml2 + - libxml2-16 >=2.14.6 + constrains: + - clangdev 20.1.8 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 15525882 + timestamp: 1773107056620 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-tools-20.1.8-default_h1589341_14.conda sha256: 372c9e722fd99e42838528d33148ca1fa7dd84a02cf06ac7d291657f657e7026 md5: 8a25b0558245abf052a89a38eb8dbb58 @@ -2073,6 +3060,38 @@ packages: license_family: Apache size: 71029 timestamp: 1773111250623 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang_impl_linux-aarch64-20.1.8-default_cfg_h02d8f17_14.conda + sha256: e5a5b0a90b7f7b2dcf51dd86e9d5f2a155a80efa18ec511a3dee352afe930073 + md5: 72001cdee051b742bee52d540de2a3d8 + depends: + - binutils_impl_linux-aarch64 + - clang-20 20.1.8 default_he95a3c9_14 + - compiler-rt 20.1.8.* + - compiler-rt_linux-aarch64 + - libgcc-devel_linux-aarch64 + - llvm-openmp >=20.1.8 + - sysroot_linux-aarch64 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 70967 + timestamp: 1773112477051 +- conda: https://conda.anaconda.org/conda-forge/osx-64/clang_impl_osx-64-20.1.8-default_cfg_h91eacd1_14.conda + sha256: fd15cf1476688a67d05727d7214b10e935212299a8a2dee143a4a9de12597377 + md5: 32dd82ac4dc28bba809cde45019139ed + depends: + - cctools_impl_osx-64 + - clang-20 20.1.8.* default_* + - compiler-rt 20.1.8.* + - compiler-rt_osx-64 + - ld64_osx-64 * llvm20_1_* + - llvm-openmp >=20.1.8 + - llvm-tools 20.1.8.* + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 71052 + timestamp: 1773106905859 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang_impl_osx-arm64-20.1.8-default_cfg_h6e044b8_14.conda sha256: c935a4b55c6a76500c3208af4cbd0cab49f0ca7ded883b69a5064549a59765aa md5: a2ef2da222ffb555412fb3b76b468955 @@ -2110,6 +3129,30 @@ packages: purls: [] size: 69653 timestamp: 1764393894282 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clangxx-20.1.8-default_cfg_h99ebb92_14.conda + sha256: f8d63befa5ab29a8369825a68ba2a09cac9d63de901f843c255050705280052d + md5: 1ab7fdf1bfec96637d58b425c76d19f0 + depends: + - clang 20.1.8 default_cfg_h99ebb92_14 + - clangxx_impl_linux-aarch64 20.1.8.* default_* + - libstdcxx-devel_linux-aarch64 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 70675 + timestamp: 1773112645624 +- conda: https://conda.anaconda.org/conda-forge/osx-64/clangxx-20.1.8-default_cfg_h41ee372_14.conda + sha256: 650bb94163ed2a6155d8a7a55bb13c804d7c36578890727b589db245bc123dd2 + md5: 0f5214191e88403e0aae5efb0bf6142b + depends: + - clang 20.1.8 default_cfg_h93fe8ef_14 + - clangxx_impl_osx-64 20.1.8.* default_* + - libcxx-devel 20.1.* + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 70780 + timestamp: 1773107174962 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clangxx-20.1.8-default_cfg_h170a469_14.conda sha256: ab302bdf42fed92df2435555850b7ff12b75037a24f4e2bcad4a78c32977b2a6 md5: 492ba121e7cb21148569d11e7ead50e4 @@ -2172,6 +3215,30 @@ packages: license_family: Apache size: 70781 timestamp: 1773111421376 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clangxx_impl_linux-aarch64-20.1.8-default_cfg_h02d8f17_14.conda + sha256: c4d91dd5d7239a102fa331b7578fb54fda5dcfeb29becfe96a3e518de669fb5c + md5: 3a52a7bd48352e8054efefd4e887b01a + depends: + - clang-20 20.1.8 default_he95a3c9_14 + - clang_impl_linux-aarch64 20.1.8 default_cfg_h02d8f17_14 + - libstdcxx-devel_linux-aarch64 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 70776 + timestamp: 1773112610864 +- conda: https://conda.anaconda.org/conda-forge/osx-64/clangxx_impl_osx-64-20.1.8-default_cfg_h91eacd1_14.conda + sha256: 83e2498aeb1a8e499638333a533a0ae88a25805fba2f7b0cbc43ca619cd3b3ee + md5: daf42dd4ac701b1f5ac4ea4042d67495 + depends: + - clang-20 20.1.8.* default_* + - clang_impl_osx-64 20.1.8 default_cfg_h91eacd1_14 + - libcxx-devel 20.1.* + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 70829 + timestamp: 1773107127220 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clangxx_impl_osx-arm64-20.1.8-default_cfg_h6e044b8_14.conda sha256: 9f71b8d4911c7d5ea7e873d33991ddf15c5b34d583b714f68d90e9b9569bae8f md5: a3bae23a3ba82ec47b480fe8865523e7 @@ -2224,6 +3291,46 @@ packages: license_family: BSD size: 23093161 timestamp: 1774645184037 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/cmake-4.3.1-hc9d863e_0.conda + sha256: a48cd9bcfbddadf1c95d1fe9fb88efa3cb37295364c3de3cda9d9fbd3ce49c9a + md5: 91b2bf7ed065ad0a7ca04065291e5a42 + depends: + - bzip2 >=1.0.8,<2.0a0 + - libcurl >=8.19.0,<9.0a0 + - libexpat >=2.7.4,<3.0a0 + - libgcc >=14 + - liblzma >=5.8.2,<6.0a0 + - libstdcxx >=14 + - libuv >=1.51.0,<2.0a0 + - libzlib >=1.3.2,<2.0a0 + - ncurses >=6.5,<7.0a0 + - rhash >=1.4.6,<2.0a0 + - zstd >=1.5.7,<1.6.0a0 + license: BSD-3-Clause + license_family: BSD + purls: [] + size: 22201886 + timestamp: 1774645182415 +- conda: https://conda.anaconda.org/conda-forge/osx-64/cmake-4.3.1-h2426fb6_0.conda + sha256: 623593da13ae0f2cd0aeef05344bfc665459e5340d5e9ef0c7acf116e43e84f3 + md5: e941ad268dd394c2e5420d12f36a5c50 + depends: + - __osx >=11.0 + - bzip2 >=1.0.8,<2.0a0 + - libcurl >=8.19.0,<9.0a0 + - libcxx >=19 + - libexpat >=2.7.4,<3.0a0 + - liblzma >=5.8.2,<6.0a0 + - libuv >=1.51.0,<2.0a0 + - libzlib >=1.3.2,<2.0a0 + - ncurses >=6.5,<7.0a0 + - rhash >=1.4.6,<2.0a0 + - zstd >=1.5.7,<1.6.0a0 + license: BSD-3-Clause + license_family: BSD + purls: [] + size: 19503666 + timestamp: 1774647328042 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cmake-4.2.1-h54ad630_0.conda sha256: a881f3379ff18a98bbc2456e9a74d748bdbd930799c2b98dd266733b0d8fbd90 md5: 11a1d109b6d7882b5f2f93fe9824af4a @@ -2317,6 +3424,31 @@ packages: purls: [] size: 114057 timestamp: 1757411545630 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/compiler-rt-20.1.8-hfefdfc9_1.conda + sha256: 5e38aefaa49af5dd8b592a37f17a9f1c0266109787c0340e601148b610c6c3bf + md5: 019266cb891fb0fa8db64500284982e8 + depends: + - clang 20.1.8.* + - compiler-rt_linux-aarch64 20.1.8.* + - libgcc >=14 + - libstdcxx >=14 + license: Apache-2.0 WITH LLVM-exception + license_family: APACHE + purls: [] + size: 114247 + timestamp: 1757411597816 +- conda: https://conda.anaconda.org/conda-forge/osx-64/compiler-rt-20.1.8-he914875_1.conda + sha256: 936a0574e42301e80b28c916d6d04c4c190d3f9f55d4f79b40010cdb80303659 + md5: c1c2d447387aa28c3c47af20e577efc5 + depends: + - __osx >=10.13 + - clang 20.1.8.* + - compiler-rt_osx-64 20.1.8.* + license: Apache-2.0 WITH LLVM-exception + license_family: APACHE + purls: [] + size: 98501 + timestamp: 1757412567261 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/compiler-rt-20.1.8-h855ad52_1.conda sha256: 7f0ede04667d5c0307acef1a6a24174ed57721d0ddedafa49fc23a9e7ef8b3c8 md5: 0e093e6ebcab8549d8bc6e3e1541ce8f @@ -2356,6 +3488,32 @@ packages: purls: [] size: 49731196 timestamp: 1757411421407 +- conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_linux-aarch64-20.1.8-hfefdfc9_1.conda + sha256: a4661f55e1490a1b3d9602af65bcba5abe03f20a088f47d0c963cc33cc9b08db + md5: 72801a5d5757f0d0f704060a04950c62 + depends: + - clang 20.1.8.* + constrains: + - clangxx 20.1.8 + - compiler-rt 20.1.8 + license: Apache-2.0 WITH LLVM-exception + license_family: APACHE + purls: [] + size: 33168669 + timestamp: 1757411450142 +- conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_osx-64-20.1.8-h138dee1_1.conda + sha256: 0ba19b579574909b75232c7797b85be313a5754bf646075bd5595c415488a8ef + md5: a3fd8937c6d67c0accbac072f5a275d2 + depends: + - clang 20.1.8.* + constrains: + - clangxx 20.1.8 + - compiler-rt 20.1.8 + license: Apache-2.0 WITH LLVM-exception + license_family: APACHE + purls: [] + size: 10803361 + timestamp: 1757412442272 - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_osx-arm64-20.1.8-he32a8d3_1.conda sha256: 96eff0041b6c73d85a30810fb381db73a55209000eaf1f10a12e701068cea3ee md5: 81175797ba08c2755feaede0919aabca @@ -2394,6 +3552,28 @@ packages: license_family: MIT size: 1209421 timestamp: 1757336717570 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/fd-find-10.4.2-h1ebd7d5_0.conda + sha256: e875c95350dcd53ebf2ae46ae17c155a925fb5e88e3b51e891373154d65b05c2 + md5: 571107d5bfaaf5e18cb42e81a14cd6c9 + depends: + - libgcc >=14 + constrains: + - __glibc >=2.17 + license: MIT + license_family: MIT + size: 1113801 + timestamp: 1773352768018 +- conda: https://conda.anaconda.org/conda-forge/osx-64/fd-find-10.4.2-h009cd8f_0.conda + sha256: 472f04555f084c7c3f554a2d65c540b386ab55ed66055823dc59c029321afcb0 + md5: 7898be59567e317ac459b27fddf57cbd + depends: + - __osx >=11.0 + constrains: + - __osx >=10.13 + license: MIT + license_family: MIT + size: 1133353 + timestamp: 1773353161332 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fd-find-10.3.0-h0ca00b2_0.conda sha256: 87360775e2416402e00f386855d0a6d68e9e94db9016f00fc0ebf99e5c71f92a md5: 7e2ef0657717cee5e385cd5ab26e0365 @@ -2691,6 +3871,16 @@ packages: license_family: GPL size: 1113306 timestamp: 1729794501866 +- conda: https://conda.anaconda.org/conda-forge/noarch/kernel-headers_linux-aarch64-4.18.0-h05a177a_9.conda + sha256: 5d224bf4df9bac24e69de41897c53756108c5271a0e5d2d2f66fd4e2fbc1d84b + md5: bb3b7cad9005f2cbf9d169fb30263f3e + constrains: + - sysroot_linux-aarch64 ==2.28 + license: LGPL-2.0-or-later AND LGPL-2.0-or-later WITH exceptions AND GPL-2.0-or-later + license_family: GPL + purls: [] + size: 1248134 + timestamp: 1765578613607 - conda: https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.3-hb9d3cd8_0.conda sha256: 0960d06048a7185d3542d850986d807c6e37ca2e644342dd0c72feefcf26c2a4 md5: b38117a3c920364aff79f870c984b4a3 @@ -2701,6 +3891,15 @@ packages: purls: [] size: 134088 timestamp: 1754905959823 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/keyutils-1.6.3-h86ecc28_0.conda + sha256: 5ce830ca274b67de11a7075430a72020c1fb7d486161a82839be15c2b84e9988 + md5: e7df0aab10b9cbb73ab2a467ebfaf8c7 + depends: + - libgcc >=13 + license: LGPL-2.1-or-later + purls: [] + size: 129048 + timestamp: 1754906002667 - conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.21.3-h659f571_0.conda sha256: 99df692f7a8a5c27cd14b5fb1374ee55e756631b9c3d659ed3ee60830249b238 md5: 3f43953b7d3fb3aaa1d0d0723d91e368 @@ -2724,13 +3923,42 @@ packages: - keyutils >=1.6.3,<2.0a0 - libedit >=3.1.20250104,<3.2.0a0 - libedit >=3.1.20250104,<4.0a0 - - libgcc >=14 - - libstdcxx >=14 + - libgcc >=14 + - libstdcxx >=14 + - openssl >=3.5.5,<4.0a0 + license: MIT + license_family: MIT + size: 1386730 + timestamp: 1769769569681 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/krb5-1.22.2-hfd895c2_0.conda + sha256: b53999d888dda53c506b264e8c02b5f5c8e022c781eda0718f007339e6bc90ba + md5: d9ca108bd680ea86a963104b6b3e95ca + depends: + - keyutils >=1.6.3,<2.0a0 + - libedit >=3.1.20250104,<3.2.0a0 + - libedit >=3.1.20250104,<4.0a0 + - libgcc >=14 + - libstdcxx >=14 + - openssl >=3.5.5,<4.0a0 + license: MIT + license_family: MIT + purls: [] + size: 1517436 + timestamp: 1769773395215 +- conda: https://conda.anaconda.org/conda-forge/osx-64/krb5-1.22.2-h207b36a_0.conda + sha256: df009385e8262c234c0dae9016540b86dad3d299f0d9366d08e327e8e7731634 + md5: e66e2c52d2fdddcf314ad750fb4ebb4a + depends: + - __osx >=10.13 + - libcxx >=19 + - libedit >=3.1.20250104,<3.2.0a0 + - libedit >=3.1.20250104,<4.0a0 - openssl >=3.5.5,<4.0a0 license: MIT license_family: MIT - size: 1386730 - timestamp: 1769769569681 + purls: [] + size: 1193620 + timestamp: 1769770267475 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.21.3-h237132a_0.conda sha256: 4442f957c3c77d69d9da3521268cad5d54c9033f1a73f99cde0a3658937b159b md5: c6dc8a0fdec13a0565936655c33069a1 @@ -2783,6 +4011,20 @@ packages: license_family: MIT size: 751055 timestamp: 1769769688841 +- conda: https://conda.anaconda.org/conda-forge/osx-64/ld64-956.6-llvm20_1_h2b71b23_4.conda + sha256: 7e163285fb13393abf04107b2fab0f809f643dd20e5eca922049ce5ee850e146 + md5: e0d290abd3879e0b8b7070a1ae6ddcf5 + depends: + - ld64_osx-64 956.6 llvm20_1_hb7237e5_4 + - libllvm20 >=20.1.8,<20.2.0a0 + constrains: + - cctools 1030.6.3.* + - cctools_osx-64 1030.6.3.* + license: APSL-2.0 + license_family: Other + purls: [] + size: 21548 + timestamp: 1768852698535 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ld64-956.6-llvm20_1_hb625feb_4.conda sha256: 33f0b80086362ca297c97baab00843555e0e8046ccb3b9a74b11664189d747eb md5: 8dc8f551182c66222a13919dff83f803 @@ -2796,6 +4038,25 @@ packages: license_family: Other size: 21584 timestamp: 1768852506335 +- conda: https://conda.anaconda.org/conda-forge/osx-64/ld64_osx-64-956.6-llvm20_1_hb7237e5_4.conda + sha256: c697e45f359f23d13ecc678c971fe51ab4ed1dc12458ad77683ce87d9633317d + md5: 92ba1cd5702193deb2d25536e9dd9246 + depends: + - __osx >=10.13 + - libcxx + - libllvm20 >=20.1.8,<20.2.0a0 + - sigtool-codesign + - tapi >=1600.0.11.8,<1601.0a0 + constrains: + - cctools 1030.6.3.* + - ld64 956.6.* + - cctools_impl_osx-64 1030.6.3.* + - clang 20.1.* + license: APSL-2.0 + license_family: Other + purls: [] + size: 1116524 + timestamp: 1768852608416 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ld64_osx-arm64-956.6-llvm20_1_h4e43e91_4.conda sha256: 471b94fee6c4d6cc349c1d1f9a85c3f7d4f395d1bc1fda246cb8a17055d36e0d md5: e6dbfee18adf4c8430637dde015f55ac @@ -3021,6 +4282,30 @@ packages: purls: [] size: 21305254 timestamp: 1764393708507 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libclang-cpp20.1-20.1.8-default_he95a3c9_14.conda + sha256: 347507293087867bf58cdf622c6897db09b3b2cc23cb19aaaa9f933b986d6d11 + md5: cf6b8e9ce90d553304fe12dc35752248 + depends: + - libgcc >=14 + - libllvm20 >=20.1.8,<20.2.0a0 + - libstdcxx >=14 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 20803761 + timestamp: 1773112177842 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libclang-cpp20.1-20.1.8-default_hd70426c_14.conda + sha256: 9ec738f3b44870f3fb6eb20276fd2965647525e5e4edbaac08a69595fe2f8960 + md5: 08b49539e7aa57666345ced7fe831257 + depends: + - __osx >=10.13 + - libcxx >=20.1.8 + - libllvm20 >=20.1.8,<20.2.0a0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 14726937 + timestamp: 1773106463590 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang-cpp20.1-20.1.8-default_h73dfc95_5.conda sha256: 40004708b66fc2873fb9b9a5a9b6bd31ce227aefe915e9e1383abdedb78e96de md5: e33ebe1ae6bc0210cb241477efbb6474 @@ -3056,6 +4341,28 @@ packages: license_family: Apache size: 21055117 timestamp: 1766016009924 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libclang-cpp21.1-21.1.8-default_he95a3c9_3.conda + sha256: b52e4939589ad2b4bc1ba8b98e168ef0e8a4d792f42e8174fad0138b8669e635 + md5: 4ba7653ca09e74e8968120c6aea4bfb1 + depends: + - libgcc >=14 + - libllvm21 >=21.1.8,<21.2.0a0 + - libstdcxx >=14 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + size: 20670213 + timestamp: 1770191273636 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libclang-cpp21.1-21.1.8-default_hd70426c_3.conda + sha256: f60412324c199c73446741ae6a9fdba5b974c5d3efff61cc37169ac9013c7535 + md5: a7d3c6d820211cc2f8ee885385a164d2 + depends: + - __osx >=10.13 + - libcxx >=21.1.8 + - libllvm21 >=21.1.8,<21.2.0a0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + size: 14458313 + timestamp: 1770185579215 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang-cpp21.1-21.1.7-default_hf3020a7_2.conda sha256: cd7269ab02e1152fec0c8d017700d6c9b2a6a817c809216c47fa5a805f82849f md5: e1a690c66f36a1ed451c56db826b9f36 @@ -3092,6 +4399,30 @@ packages: license_family: Apache size: 12822776 timestamp: 1775789745068 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libclang13-22.1.3-default_h94a09a5_0.conda + sha256: 6ae089d25fb34c3c32a98e5f942a3d472809c747edcf596ead61704ea2117953 + md5: 7c7dc469f56ce1831736c2827bc52b8c + depends: + - libgcc >=14 + - libllvm22 >=22.1.3,<22.2.0a0 + - libstdcxx >=14 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 12617798 + timestamp: 1775789736838 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libclang13-22.1.3-default_h2429e1b_0.conda + sha256: 4e8cae021b7357f34288f1e63e8b46efc000879ca23fc15612a60c5c6952e9e1 + md5: d93c1df2c69ad415e4e29ec49541c0e1 + depends: + - __osx >=11.0 + - libcxx >=22.1.3 + - libllvm22 >=22.1.3,<22.2.0a0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 9462836 + timestamp: 1775790949879 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang13-21.1.7-default_h13b06bd_4.conda sha256: ed55559f8af599838de775c099fbf644c19d1720b9f57064a2abb0ab2ff99765 md5: e886d09eb4ae02f446edd4c32c351ca6 @@ -3187,6 +4518,38 @@ packages: license_family: MIT size: 466704 timestamp: 1773218522665 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libcurl-8.19.0-hc57f145_0.conda + sha256: 75c1b2f9cff7598c593dda96c55963298bebb5bcb5a77af0b4c41cb03d26100b + md5: d5306c7ec07faf48cfb0e552c67339e0 + depends: + - krb5 >=1.22.2,<1.23.0a0 + - libgcc >=14 + - libnghttp2 >=1.67.0,<2.0a0 + - libssh2 >=1.11.1,<2.0a0 + - libzlib >=1.3.1,<2.0a0 + - openssl >=3.5.5,<4.0a0 + - zstd >=1.5.7,<1.6.0a0 + license: curl + license_family: MIT + purls: [] + size: 485694 + timestamp: 1773218484057 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.19.0-h8f0b9e4_0.conda + sha256: 55c6b34ae18a7f8f57d9ffe3f4ec2a82ddcc8a87248d2447f9bbba3ba66d8aec + md5: 8bc2742696d50c358f4565b25ba33b08 + depends: + - __osx >=11.0 + - krb5 >=1.22.2,<1.23.0a0 + - libnghttp2 >=1.67.0,<2.0a0 + - libssh2 >=1.11.1,<2.0a0 + - libzlib >=1.3.1,<2.0a0 + - openssl >=3.5.5,<4.0a0 + - zstd >=1.5.7,<1.6.0a0 + license: curl + license_family: MIT + purls: [] + size: 419039 + timestamp: 1773219507657 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.17.0-hdece5d2_1.conda sha256: 1a8a958448610ca3f8facddfe261fdbb010e7029a1571b84052ec9770fc0a36e md5: 1d6e791c6e264ae139d469ce011aab51 @@ -3296,6 +4659,17 @@ packages: purls: [] size: 570026 timestamp: 1775565121045 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-devel-20.1.8-h7c275be_3.conda + sha256: 1883788a6cb2d879a0c88fb33f6a680c3249491087878610e77f33ee202b3b2c + md5: 4c8e572b874e3f80d145d4faa46cf81b + depends: + - libcxx >=20.1.8 + - libcxx-headers >=20.1.8,<20.1.9.0a0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 21865 + timestamp: 1764635936721 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-devel-20.1.8-h6dc3340_3.conda sha256: 860588fb7b8c9227cfae68cf410c885fb0e05a635f3daddef9457c429a9704ba md5: 78233f1b892fc02bca12b2daf3bd8d48 @@ -3332,6 +4706,30 @@ packages: purls: [] size: 134676 timestamp: 1738479519902 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libedit-3.1.20250104-pl5321h976ea20_0.conda + sha256: c0b27546aa3a23d47919226b3a1635fccdb4f24b94e72e206a751b33f46fd8d6 + md5: fb640d776fc92b682a14e001980825b1 + depends: + - ncurses + - libgcc >=13 + - ncurses >=6.5,<7.0a0 + license: BSD-2-Clause + license_family: BSD + purls: [] + size: 148125 + timestamp: 1738479808948 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libedit-3.1.20250104-pl5321ha958ccf_0.conda + sha256: 6cc49785940a99e6a6b8c6edbb15f44c2dd6c789d9c283e5ee7bdfedd50b4cd6 + md5: 1f4ed31220402fcddc083b4bff406868 + depends: + - ncurses + - __osx >=10.13 + - ncurses >=6.5,<7.0a0 + license: BSD-2-Clause + license_family: BSD + purls: [] + size: 115563 + timestamp: 1738479554273 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libedit-3.1.20250104-pl5321hafb1f1b_0.conda sha256: 66aa216a403de0bb0c1340a88d1a06adaff66bae2cfd196731aa24db9859d631 md5: 44083d2d2c2025afca315c7a172eab2b @@ -3361,6 +4759,7 @@ packages: - libgcc-ng >=12 license: BSD-2-Clause license_family: BSD + purls: [] size: 115123 timestamp: 1702146237623 - conda: https://conda.anaconda.org/conda-forge/osx-64/libev-4.33-h10d778d_2.conda @@ -3368,6 +4767,7 @@ packages: md5: 899db79329439820b7e8f8de41bca902 license: BSD-2-Clause license_family: BSD + purls: [] size: 106663 timestamp: 1702146352558 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libev-4.33-h93a5062_2.conda @@ -3626,6 +5026,16 @@ packages: license_family: GPL size: 2164685 timestamp: 1740241522056 +- conda: https://conda.anaconda.org/conda-forge/noarch/libgcc-devel_linux-aarch64-15.2.0-h55c397f_118.conda + sha256: 661e29553769ceb5874eb1ed6c00263fcd36fac9f5fe0fee65d5e5cac3187ff3 + md5: 42284981c315916d916fb3156b8d5b9e + depends: + - __unix + license: GPL-3.0-only WITH GCC-exception-3.1 + license_family: GPL + purls: [] + size: 2364690 + timestamp: 1771378032404 - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_16.conda sha256: 5f07f9317f596a201cc6e095e5fc92621afca64829785e483738d935f8cab361 md5: 5a68259fac2da8f2ee6f7bfe49c9eb8b @@ -3652,6 +5062,7 @@ packages: - libgcc 15.2.0 h8acb6b2_18 license: GPL-3.0-only WITH GCC-exception-3.1 license_family: GPL + purls: [] size: 27568 timestamp: 1771378136019 - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-he0feb66_16.conda @@ -3715,6 +5126,24 @@ packages: purls: [] size: 790176 timestamp: 1754908768807 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libiconv-1.18-h90929bb_2.conda + sha256: 1473451cd282b48d24515795a595801c9b65b567fe399d7e12d50b2d6cdb04d9 + md5: 5a86bf847b9b926f3a4f203339748d78 + depends: + - libgcc >=14 + license: LGPL-2.1-only + purls: [] + size: 791226 + timestamp: 1754910975665 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libiconv-1.18-h57a12c2_2.conda + sha256: a1c8cecdf9966921e13f0ae921309a1f415dfbd2b791f2117cf7e8f5e61a48b6 + md5: 210a85a1119f97ea7887188d176db135 + depends: + - __osx >=10.13 + license: LGPL-2.1-only + purls: [] + size: 737846 + timestamp: 1754908900138 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libiconv-1.18-h23cfdf5_2.conda sha256: de0336e800b2af9a40bdd694b03870ac4a848161b35c8a2325704f123f185f03 md5: 4d5a7445f0b25b6a3ddbb56e790f5251 @@ -3751,6 +5180,36 @@ packages: purls: [] size: 43977914 timestamp: 1757353652788 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libllvm20-20.1.8-hfd2ba90_1.conda + sha256: 1a5eb7ebccdc23b0e606f9645cf5b436e01f161c80705bfb34d2793a36846b8f + md5: 36f730da2c88718ea21242a7326292da + depends: + - libgcc >=14 + - libstdcxx >=14 + - libxml2 + - libxml2-16 >=2.14.5 + - libzlib >=1.3.1,<2.0a0 + - zstd >=1.5.7,<1.6.0a0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 42749733 + timestamp: 1757353785740 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm20-20.1.8-h56e7563_1.conda + sha256: d61976b0938af6025de5907486f6c4686c6192e9842d9fc9873eb7f50815e17d + md5: 862eed3ed84906f3387d15ac20075a0d + depends: + - __osx >=10.13 + - libcxx >=19 + - libxml2 + - libxml2-16 >=2.14.5 + - libzlib >=1.3.1,<2.0a0 + - zstd >=1.5.7,<1.6.0a0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 30758108 + timestamp: 1757354844443 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm20-20.1.8-h8e0c9ce_1.conda sha256: 6639cbbde4143b14b666db9dc33beddbf6772317a42d317c8c5162b9524bd24a md5: 717f1efdf0a0240255c7c34d55889d58 @@ -3795,6 +5254,34 @@ packages: license_family: Apache size: 44333366 timestamp: 1765959132513 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libllvm21-21.1.8-hfd2ba90_0.conda + sha256: 5af18365698a9093a81490de16c97a0af5318e20086b74998718f1e5d7566e74 + md5: de59c5148c2a8347c02e437e3ed242a0 + depends: + - libgcc >=14 + - libstdcxx >=14 + - libxml2 + - libxml2-16 >=2.14.6 + - libzlib >=1.3.1,<2.0a0 + - zstd >=1.5.7,<1.6.0a0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + size: 43148553 + timestamp: 1765930975162 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm21-21.1.8-h56e7563_0.conda + sha256: b98962b93624f52399aa748cc66dea7d6aae0a20db6decadc979db151928d214 + md5: 8f26c2dbe4213a12b6595f4b941ac9cb + depends: + - __osx >=10.13 + - libcxx >=19 + - libxml2 + - libxml2-16 >=2.14.6 + - libzlib >=1.3.1,<2.0a0 + - zstd >=1.5.7,<1.6.0a0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + size: 31433093 + timestamp: 1765929081793 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm21-21.1.8-h8e0c9ce_0.conda sha256: 3f4512155aca799a25937f9ee794490794fb33f8f90a5e6532d8be869e7d79a0 md5: 8fc5b2387a7907cd58805668dad3b70f @@ -3841,6 +5328,36 @@ packages: license_family: Apache size: 44235531 timestamp: 1775641389057 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libllvm22-22.1.3-hfd2ba90_0.conda + sha256: 37357ec248309d522f9409a3c9452c35ee201d7810420101825f5ab3a38b3bf5 + md5: c2e1304da2e44348df892c1425bf294d + depends: + - libgcc >=14 + - libstdcxx >=14 + - libxml2 + - libxml2-16 >=2.14.6 + - libzlib >=1.3.2,<2.0a0 + - zstd >=1.5.7,<1.6.0a0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 43123502 + timestamp: 1775639481201 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm22-22.1.3-hab754da_0.conda + sha256: b5c973001deac8ff38e7cb004eb3e81e7e23b536f5f031f26ce4ad3248664f29 + md5: a0f8f5f9acf7469fbc3cc34d2e10c631 + depends: + - __osx >=11.0 + - libcxx >=19 + - libxml2 + - libxml2-16 >=2.14.6 + - libzlib >=1.3.2,<2.0a0 + - zstd >=1.5.7,<1.6.0a0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 31820683 + timestamp: 1775644312152 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm22-22.1.3-h89af1be_0.conda sha256: 009519933ac584e828c32adeb963f236f912ab66aa688ecf9b723921001ae691 md5: 34579e09a78af20b408bd9dda75084bb @@ -3993,6 +5510,26 @@ packages: purls: [] size: 439868 timestamp: 1749230061968 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/liblzma-devel-5.8.3-he30d5cf_0.conda + sha256: 584cbcebe2f8c4c3e81eb46e3ed085bc49f709a9aeb92847ac20e1aa25c4b7b6 + md5: 349d74fc98742dd532de0ae6368fd19d + depends: + - libgcc >=14 + - liblzma 5.8.3 he30d5cf_0 + license: 0BSD + purls: [] + size: 493047 + timestamp: 1775828222341 +- conda: https://conda.anaconda.org/conda-forge/osx-64/liblzma-devel-5.8.3-hbb4bfdb_0.conda + sha256: 05f845d7f29691f8410665297a4fd168261aaa2710993e9e21effd66365c080d + md5: a59a33afff299f2d95fdabbd1214f4f1 + depends: + - __osx >=11.0 + - liblzma 5.8.3 hbb4bfdb_0 + license: 0BSD + purls: [] + size: 118185 + timestamp: 1775826064340 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-devel-5.8.1-h39f12f2_2.conda sha256: 974804430e24f0b00f3a48b67ec10c9f5441c9bb3d82cc0af51ba45b8a75a241 md5: 1201137f1a5ec9556032ffc04dcdde8d @@ -4147,6 +5684,7 @@ packages: - openssl >=3.5.5,<4.0a0 license: MIT license_family: MIT + purls: [] size: 726928 timestamp: 1773854039807 - conda: https://conda.anaconda.org/conda-forge/osx-64/libnghttp2-1.68.1-h70048d4_0.conda @@ -4162,6 +5700,7 @@ packages: - openssl >=3.5.5,<4.0a0 license: MIT license_family: MIT + purls: [] size: 606749 timestamp: 1773854765508 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnghttp2-1.67.0-hc438710_0.conda @@ -4207,6 +5746,17 @@ packages: purls: [] size: 4507944 timestamp: 1740240704883 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libsigtool-0.1.3-hc0f2934_0.conda + sha256: f87b743d5ab11c1a8ddd800dd9357fc0fabe47686068232ddc1d1eed0d7321ec + md5: 3576aba85ce5e9ab15aa0ea376ab864b + depends: + - __osx >=10.13 + - openssl >=3.5.4,<4.0a0 + license: MIT + license_family: MIT + purls: [] + size: 38085 + timestamp: 1767044977731 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsigtool-0.1.3-h98dc951_0.conda sha256: 421f7bd7caaa945d9cd5d374cc3f01e75637ca7372a32d5e7695c825a48a30d1 md5: c08557d00807785decafb932b5be7ef5 @@ -4390,6 +5940,30 @@ packages: purls: [] size: 304790 timestamp: 1745608545575 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libssh2-1.11.1-h18c354c_0.conda + sha256: 1e289bcce4ee6a5817a19c66e296f3c644dcfa6e562e5c1cba807270798814e7 + md5: eecc495bcfdd9da8058969656f916cc2 + depends: + - libgcc >=13 + - libzlib >=1.3.1,<2.0a0 + - openssl >=3.5.0,<4.0a0 + license: BSD-3-Clause + license_family: BSD + purls: [] + size: 311396 + timestamp: 1745609845915 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libssh2-1.11.1-hed3591d_0.conda + sha256: 00654ba9e5f73aa1f75c1f69db34a19029e970a4aeb0fa8615934d8e9c369c3c + md5: a6cb15db1c2dc4d3a5f6cf3772e09e81 + depends: + - __osx >=10.13 + - libzlib >=1.3.1,<2.0a0 + - openssl >=3.5.0,<4.0a0 + license: BSD-3-Clause + license_family: BSD + purls: [] + size: 284216 + timestamp: 1745608575796 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libssh2-1.11.1-h1590b86_0.conda sha256: 8bfe837221390ffc6f111ecca24fa12d4a6325da0c8d131333d63d6c37f27e0a md5: b68e8f66b94b44aaa8de4583d3d4cc40 @@ -4472,6 +6046,16 @@ packages: license_family: GPL size: 12409145 timestamp: 1740241547169 +- conda: https://conda.anaconda.org/conda-forge/noarch/libstdcxx-devel_linux-aarch64-15.2.0-ha7b1723_118.conda + sha256: 52afca5e24e0bbc840cf9c28b440dea2cebc4500e97084a38cdd27fdc8a3e57c + md5: 99ea26f70c5e380294e760e8bdbaddff + depends: + - __unix + license: GPL-3.0-only WITH GCC-exception-3.1 + license_family: GPL + purls: [] + size: 17628403 + timestamp: 1771378058765 - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-15.2.0-hdf11a46_16.conda sha256: 81f2f246c7533b41c5e0c274172d607829019621c4a0823b5c0b4a8c7028ee84 md5: 1b3152694d236cf233b76b8c56bf0eae @@ -4543,6 +6127,7 @@ packages: - libgcc >=14 license: MIT license_family: MIT + purls: [] size: 629238 timestamp: 1753948296190 - conda: https://conda.anaconda.org/conda-forge/osx-64/libuv-1.51.0-h58003a5_1.conda @@ -4552,6 +6137,7 @@ packages: - __osx >=10.13 license: MIT license_family: MIT + purls: [] size: 422612 timestamp: 1753948458902 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libuv-1.51.0-h6caf38d_1.conda @@ -4616,29 +6202,74 @@ packages: - icu >=78.1,<79.0a0 - libgcc >=14 - libiconv >=1.18,<2.0a0 - - liblzma >=5.8.1,<6.0a0 - - libxml2-16 2.15.1 hca6bf5a_1 + - liblzma >=5.8.1,<6.0a0 + - libxml2-16 2.15.1 hca6bf5a_1 + - libzlib >=1.3.1,<2.0a0 + license: MIT + license_family: MIT + purls: [] + size: 45402 + timestamp: 1766327161688 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.15.2-he237659_0.conda + sha256: 275c324f87bda1a3b67d2f4fcc3555eeff9e228a37655aa001284a7ceb6b0392 + md5: e49238a1609f9a4a844b09d9926f2c3d + depends: + - __glibc >=2.17,<3.0.a0 + - icu >=78.2,<79.0a0 + - libgcc >=14 + - libiconv >=1.18,<2.0a0 + - liblzma >=5.8.2,<6.0a0 + - libxml2-16 2.15.2 hca6bf5a_0 + - libzlib >=1.3.1,<2.0a0 + license: MIT + license_family: MIT + size: 45968 + timestamp: 1772704614539 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libxml2-2.15.2-h49afab2_0.conda + sha256: 7325511542b860dee82d862ab5264e9b89d47cf587eb0b627a74ab51c205928c + md5: 8e7352cb825c97f6f8945db66ac074f4 + depends: + - libgcc >=14 + - libiconv >=1.18,<2.0a0 + - liblzma >=5.8.2,<6.0a0 + - libxml2-16 2.15.2 h064b767_0 + - libzlib >=1.3.1,<2.0a0 + constrains: + - icu <0.0a0 + license: MIT + license_family: MIT + purls: [] + size: 48391 + timestamp: 1772704690028 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libxml2-2.15.2-h825857f_0.conda + sha256: 3e51e1952cb60c8107094b6b78473d91ff49d428ad4bef6806124b383e8fe29c + md5: 19de96909ee1198e2853acd8aba89f6c + depends: + - icu >=78.2,<79.0a0 + - libgcc >=14 + - libiconv >=1.18,<2.0a0 + - liblzma >=5.8.2,<6.0a0 + - libxml2-16 2.15.2 h79dcc73_0 - libzlib >=1.3.1,<2.0a0 license: MIT license_family: MIT - purls: [] - size: 45402 - timestamp: 1766327161688 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.15.2-he237659_0.conda - sha256: 275c324f87bda1a3b67d2f4fcc3555eeff9e228a37655aa001284a7ceb6b0392 - md5: e49238a1609f9a4a844b09d9926f2c3d + size: 47837 + timestamp: 1772704681112 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libxml2-2.15.2-hd552753_0.conda + sha256: 5b9e8a5146275ac0539231f646ee51a9e4629e730026ff69dadff35bfb745911 + md5: eea3155f3b4a3b75af504c871ec23858 depends: - - __glibc >=2.17,<3.0.a0 + - __osx >=11.0 - icu >=78.2,<79.0a0 - - libgcc >=14 - libiconv >=1.18,<2.0a0 - liblzma >=5.8.2,<6.0a0 - - libxml2-16 2.15.2 hca6bf5a_0 + - libxml2-16 2.15.2 h7a90416_0 - libzlib >=1.3.1,<2.0a0 license: MIT license_family: MIT - size: 45968 - timestamp: 1772704614539 + purls: [] + size: 41106 + timestamp: 1772705465931 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-2.15.1-h8d039ee_1.conda sha256: 59f96fa27cce6a9a27414c5bb301eedda1a1b85cd0d8f5d68f77e46b86e7c95f md5: fd804ee851e20faca4fecc7df0901d07 @@ -4816,6 +6447,53 @@ packages: license_family: MIT size: 557492 timestamp: 1772704601644 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libxml2-16-2.15.2-h064b767_0.conda + sha256: dac2d213b589bb43be9a0c69715be36ac78a50d422d74e64bb0dfba3646df6e5 + md5: 3a4f72b35cd5058f10b37643c20b10f7 + depends: + - libgcc >=14 + - libiconv >=1.18,<2.0a0 + - liblzma >=5.8.2,<6.0a0 + - libzlib >=1.3.1,<2.0a0 + constrains: + - libxml2 2.15.2 + - icu <0.0a0 + license: MIT + license_family: MIT + purls: [] + size: 600071 + timestamp: 1772704680679 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libxml2-16-2.15.2-h79dcc73_0.conda + sha256: da6b2ebbcecc158200d90be39514e4e902971628029b35b7f6ad57270659c5d9 + md5: e3ec9079759d35b875097d6a9a69e744 + depends: + - icu >=78.2,<79.0a0 + - libgcc >=14 + - libiconv >=1.18,<2.0a0 + - liblzma >=5.8.2,<6.0a0 + - libzlib >=1.3.1,<2.0a0 + constrains: + - libxml2 2.15.2 + license: MIT + license_family: MIT + size: 598438 + timestamp: 1772704671710 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libxml2-16-2.15.2-h7a90416_0.conda + sha256: f67e4b7d7f97e57ecd611a42e42d5f6c047fd3d1eb8270813b888924440c8a59 + md5: 0c8bdbfd118f5963ab343846094932a3 + depends: + - __osx >=11.0 + - icu >=78.2,<79.0a0 + - libiconv >=1.18,<2.0a0 + - liblzma >=5.8.2,<6.0a0 + - libzlib >=1.3.1,<2.0a0 + constrains: + - libxml2 2.15.2 + license: MIT + license_family: MIT + purls: [] + size: 495922 + timestamp: 1772705426323 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-16-2.15.1-h0ff4647_0.conda sha256: ebe2dd9da94280ad43da936efa7127d329b559f510670772debc87602b49b06d md5: 438c97d1e9648dd7342f86049dd44638 @@ -5047,6 +6725,38 @@ packages: purls: [] size: 11272299 timestamp: 1757394114845 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/lld-20.1.8-hd253d04_1.conda + sha256: ac00b0f53c896eb12361821edf0d781c42633512cbb6e77822fedad1b39b2132 + md5: d3f7c78180bbc1f23c3f2f9a365b6af5 + depends: + - libgcc >=14 + - libllvm20 >=20.1.8,<20.2.0a0 + - libstdcxx >=14 + - libzlib >=1.3.1,<2.0a0 + - zstd >=1.5.7,<1.6.0a0 + constrains: + - llvm ==20.1.8 + license: Apache-2.0 WITH LLVM-exception + license_family: APACHE + purls: [] + size: 10867469 + timestamp: 1757394289800 +- conda: https://conda.anaconda.org/conda-forge/osx-64/lld-20.1.8-hc570667_1.conda + sha256: 62cb16bc66ef2547f7e3c00f20170d7d8cc74bb3108071063f10482fd7564b77 + md5: 6e9a1470d8d5bc2bdc2070cb09f25803 + depends: + - __osx >=10.13 + - libcxx >=19.1.7 + - libllvm20 >=20.1.8,<20.2.0a0 + - libzlib >=1.3.1,<2.0a0 + - zstd >=1.5.7,<1.6.0a0 + constrains: + - llvm ==20.1.8 + license: Apache-2.0 WITH LLVM-exception + license_family: APACHE + purls: [] + size: 5188685 + timestamp: 1757394834206 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lld-20.1.8-ha4b1419_1.conda sha256: 3893dfe3f7c012df0238967c10e6045d0375357845e3d824bf61cf176887a2bc md5: a22a12e559cabf166f8e776e261b6b52 @@ -5093,6 +6803,30 @@ packages: license_family: APACHE size: 6132003 timestamp: 1774564946563 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/llvm-openmp-22.1.3-he40846f_0.conda + sha256: adf5bb460e29d43e61cab9a86fc8d3352c35416202c868a43313d6be4cffa704 + md5: 4b13246183726c990620b1691ccb3a61 + constrains: + - intel-openmp <0.0a0 + - openmp 22.1.3|22.1.3.* + license: Apache-2.0 WITH LLVM-exception + license_family: APACHE + purls: [] + size: 5895691 + timestamp: 1775711719772 +- conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-openmp-22.1.3-h0d3cbff_0.conda + sha256: 58d10bd4638d0b3646389002cac57a46c578512b08ec20a3b2ea15f56b32d565 + md5: fbc27eb49069842d5335776d600856ff + depends: + - __osx >=11.0 + constrains: + - intel-openmp <0.0a0 + - openmp 22.1.3|22.1.3.* + license: Apache-2.0 WITH LLVM-exception + license_family: APACHE + purls: [] + size: 311000 + timestamp: 1775712575099 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-openmp-22.1.2-hc7d1edf_0.conda sha256: d8acb8e790312346a286f7168380ca3ce86d5982fb073df6e0fbec1e51fa47a1 md5: 9c162044093d8d689836dafe3c27fe06 @@ -5124,6 +6858,41 @@ packages: purls: [] size: 87809 timestamp: 1757353876330 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/llvm-tools-20.1.8-hfefdfc9_1.conda + sha256: 29781e608c2f427f9a8eb2f1d68aad8bbb27a7252c9749bb5d28c61c77155835 + md5: 8b31bc218e343ccc08f62a6570a9abed + depends: + - libgcc >=14 + - libllvm20 20.1.8 hfd2ba90_1 + - libstdcxx >=14 + - llvm-tools-20 20.1.8 hb2a4a65_1 + constrains: + - llvm 20.1.8 + - clang 20.1.8 + - clang-tools 20.1.8 + - llvmdev 20.1.8 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 87183 + timestamp: 1757353939522 +- conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-tools-20.1.8-hb0207f0_1.conda + sha256: d184e4ff0b57021f3c8299fb0ad8d6136b1d7d5d8b917a4fdaf6f6c1c368a187 + md5: 1502d96cd1247d250409bd75fb4f6a98 + depends: + - __osx >=10.13 + - libllvm20 20.1.8 h56e7563_1 + - llvm-tools-20 20.1.8 h879f4bc_1 + constrains: + - clang-tools 20.1.8 + - llvm 20.1.8 + - llvmdev 20.1.8 + - clang 20.1.8 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 87857 + timestamp: 1757355204148 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-tools-20.1.8-h855ad52_1.conda sha256: 1f94a0336ac63020b8f8c57dca502cae3238f45e9b4cdd6df1fc06d3837ded5e md5: 626404d8b36c1ce1d1c2f84d91d8b99d @@ -5178,6 +6947,34 @@ packages: purls: [] size: 26528257 timestamp: 1757353803953 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/llvm-tools-20-20.1.8-hb2a4a65_1.conda + sha256: 137e5bae2dd0f75c29828d8ef5bc17e624f86ac26cf0aa13f585e79a8a60ae2d + md5: 8cd792ab377b15692403db08147eb20a + depends: + - libgcc >=14 + - libllvm20 20.1.8 hfd2ba90_1 + - libstdcxx >=14 + - libzlib >=1.3.1,<2.0a0 + - zstd >=1.5.7,<1.6.0a0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 25629947 + timestamp: 1757353881981 +- conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-tools-20-20.1.8-h879f4bc_1.conda + sha256: d490ca39a2d04ad1c728479d2bcd4bd91b68290e57f34ad6e8dc1378489a86c9 + md5: f00cecf59f10a5d94d94c9715544fd94 + depends: + - __osx >=10.13 + - libcxx >=19 + - libllvm20 20.1.8 h56e7563_1 + - libzlib >=1.3.1,<2.0a0 + - zstd >=1.5.7,<1.6.0a0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 19469937 + timestamp: 1757355100117 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-tools-20-20.1.8-h91fd4e7_1.conda sha256: 97d9c549c34e7e16aff4e719c4e0d12e03cde46249297632dcf770fb86e475d6 md5: 77366ec6038780fbaa5509f064e93d6f @@ -5249,6 +7046,28 @@ packages: purls: [] size: 186323 timestamp: 1763688260928 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ninja-1.13.2-hdc560ac_0.conda + sha256: 45fbc7c8c44681f5cefba1e5b26ca504a4485b000c5dfaa31cec0b7bc78d0de4 + md5: 8b5222a41b5d51fb1a5a2c514e770218 + depends: + - libstdcxx >=14 + - libgcc >=14 + license: Apache-2.0 + license_family: APACHE + purls: [] + size: 182666 + timestamp: 1763688214250 +- conda: https://conda.anaconda.org/conda-forge/osx-64/ninja-1.13.2-hfc0b2d5_0.conda + sha256: 1646832e3c2389595569ab9a6234c119a4dedf6f4e55532a8bf07edab7f8037d + md5: afda563484aa0017278866707807a335 + depends: + - libcxx >=19 + - __osx >=10.13 + license: Apache-2.0 + license_family: APACHE + purls: [] + size: 178071 + timestamp: 1763688235442 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ninja-1.13.2-h49c215f_0.conda sha256: 18d33c17b28d4771fc0b91b7b963c9ce31aca0a9af7dc8e9ee7c974bb207192c md5: 175809cc57b2c67f27a0f238bd7f069d @@ -5311,6 +7130,21 @@ packages: license: MIT size: 17538321 timestamp: 1766137768828 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/nodejs-22.22.2-h42e3414_0.conda + sha256: 1cb164cc94c50e87de68457fe6d8c63927bf593ff6ec89dec552c8592a0b1a13 + md5: dfa79a205a3359f575568d11ff81905c + depends: + - __glibc >=2.28,<3.0.a0 + - libstdcxx >=14 + - libgcc >=14 + - libzlib >=1.3.2,<2.0a0 + - openssl >=3.5.5,<4.0a0 + - libuv >=1.51.0,<2.0a0 + - icu >=78.3,<79.0a0 + license: MIT + license_family: MIT + size: 25236411 + timestamp: 1774516958373 - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/nodejs-24.14.1-he5f9b4c_0.conda sha256: 537c9938cc6a180e1aff7f5cd737f3f248feff8c2a4ec831324ab9797adc93f1 md5: 8637b0572ebf0d51e431a2db58286c01 @@ -5333,6 +7167,20 @@ packages: license_family: MIT size: 23415087 timestamp: 1774518161811 +- conda: https://conda.anaconda.org/conda-forge/osx-64/nodejs-22.22.2-h5d72c05_0.conda + sha256: 23f85cb1e1bd6fc16fbfa4440f7d3909e8daa587dce6c19764a4638a5dfa3df1 + md5: 6be8f1395dfe143ce1d2e71da3a9cddf + depends: + - __osx >=10.15 + - libcxx >=19 + - libzlib >=1.3.2,<2.0a0 + - icu >=78.3,<79.0a0 + - libuv >=1.51.0,<2.0a0 + - openssl >=3.5.5,<4.0a0 + license: MIT + license_family: MIT + size: 17639577 + timestamp: 1774518173221 - conda: https://conda.anaconda.org/conda-forge/osx-64/nodejs-24.14.1-hc6dc384_0.conda sha256: de46225a84134e0dd3bc3f39cecdb6e9ca7c2555d45eeb8a916186b500b5484b md5: 558c379648523eef0b3f441827d564d8 @@ -5615,6 +7463,27 @@ packages: license_family: MIT size: 1102504 timestamp: 1764738744929 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/prettier-3.8.2-h1e5041c_0.conda + sha256: 2eb5878d62122b749faa9a45409c60dcd86f33cd57a04b612c75d65e30e97eb0 + md5: c89bd1a7a061de7f4f5ceaad4b4e0b94 + depends: + - nodejs + - nodejs >=22.22.2,<23.0a0 + license: MIT + license_family: MIT + size: 1107020 + timestamp: 1775805655765 +- conda: https://conda.anaconda.org/conda-forge/osx-64/prettier-3.8.2-h4eb6579_0.conda + sha256: cba1fa4d254fe5617d5b3bd346e873ab072c64c9a3429eac99802840b5c05c72 + md5: 15910075a5f0dff9f021e3028b4b1caf + depends: + - nodejs + - __osx >=11.0 + - nodejs >=22.22.2,<23.0a0 + license: MIT + license_family: MIT + size: 1105536 + timestamp: 1775805806133 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/prettier-3.7.4-h79221d7_0.conda sha256: 7e5f42737afb5919b13e379d4bcba1b19f54d746a23150116c3c2d856072014d md5: f84e9db3c73c179dee0952eff5846188 @@ -6039,6 +7908,26 @@ packages: purls: [] size: 193775 timestamp: 1748644872902 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/rhash-1.4.6-h86ecc28_1.conda + sha256: 0fe6f40213f2d8af4fcb7388eeb782a4e496c8bab32c189c3a34b37e8004e5a4 + md5: 745d02c0c22ea2f28fbda2cb5dbec189 + depends: + - libgcc >=13 + license: MIT + license_family: MIT + purls: [] + size: 207475 + timestamp: 1748644952027 +- conda: https://conda.anaconda.org/conda-forge/osx-64/rhash-1.4.6-h6e16a3a_1.conda + sha256: 65c946fc5a9bb71772a7ac9bad64ff08ac07f7d5311306c2dcc1647157b96706 + md5: d0fcaaeff83dd4b6fb035c2f36df198b + depends: + - __osx >=10.13 + license: MIT + license_family: MIT + purls: [] + size: 185180 + timestamp: 1748644989546 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/rhash-1.4.6-h5505292_1.conda sha256: f4957c05f4fbcd99577de8838ca4b5b1ae4b400a44be647a0159c14f85b9bfc0 md5: 029e812c8ae4e0d4cf6ff4f7d8dc9366 @@ -6062,6 +7951,32 @@ packages: license: MIT size: 11472103 timestamp: 1766094973645 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ruff-0.15.10-h9f438e6_0.conda + noarch: python + sha256: a24f4f7ad72a384d7ab9eef098d7b5763dea8b6089775f934cc382e0a3ee0aa0 + md5: db2d93522a5fc17553c118b9a090baf1 + depends: + - python + - libgcc >=14 + constrains: + - __glibc >=2.17 + license: MIT + license_family: MIT + size: 8859933 + timestamp: 1775763991712 +- conda: https://conda.anaconda.org/conda-forge/osx-64/ruff-0.15.10-h16586dd_0.conda + noarch: python + sha256: 0948b77ffb3914443d0d79ca427df9098e7295bd155331734a918f3dc02e080f + md5: 42b0cc7848c084ce32eaa4c65534b750 + depends: + - python + - __osx >=11.0 + constrains: + - __osx >=10.13 + license: MIT + license_family: MIT + size: 9203052 + timestamp: 1775764220099 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ruff-0.14.10-hb0cad00_0.conda noarch: python sha256: dcae2c2d8c3a07782c0ce900f44488e2c2a2acd3720850181165a4e0034219fc @@ -6098,6 +8013,18 @@ packages: purls: [] size: 6698663 timestamp: 1770690927791 +- conda: https://conda.anaconda.org/conda-forge/osx-64/sigtool-codesign-0.1.3-hc0f2934_0.conda + sha256: b89d89d0b62e0a84093205607d071932cca228d4d6982a5b073eec7e765b146d + md5: 1261fc730f1d8af7eeea8a0024b23493 + depends: + - __osx >=10.13 + - libsigtool 0.1.3 hc0f2934_0 + - openssl >=3.5.4,<4.0a0 + license: MIT + license_family: MIT + purls: [] + size: 123083 + timestamp: 1767045007433 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sigtool-codesign-0.1.3-h98dc951_0.conda sha256: f3d006e2441f110160a684744d90921bbedbffa247d7599d7e76b5cd048116dc md5: ade77ad7513177297b1d75e351e136ce @@ -6121,6 +8048,28 @@ packages: license_family: MOZILLA size: 2043399 timestamp: 1764712277790 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/stylua-2.4.1-h069e38c_0.conda + sha256: bb3f25c8f5361760eb31bac94790f72739fbc0b5171898249028e8b84cc48d20 + md5: 18a9941295a7782b64c29648bfe0cb21 + depends: + - libgcc >=14 + constrains: + - __glibc >=2.17 + license: MPL-2.0 + license_family: MOZILLA + size: 1934765 + timestamp: 1775490537046 +- conda: https://conda.anaconda.org/conda-forge/osx-64/stylua-2.4.1-h19f9e61_0.conda + sha256: 91fc89663e48d00817483cfdb963e1f39a2fa51d66e98f4cbee2f4a2ad52da4a + md5: fa01cd49d292f9ed65c7e4d2c574cef7 + depends: + - __osx >=11.0 + constrains: + - __osx >=10.13 + license: MPL-2.0 + license_family: MOZILLA + size: 1966260 + timestamp: 1775490609404 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/stylua-2.3.1-h8d80559_1.conda sha256: b289cc5b177372fcb4498e50448a636b9c0076c5093a344f76ea4dc19ee04bd5 md5: c5034ca591220810f58cf0365a52677a @@ -6164,6 +8113,29 @@ packages: license_family: GPL size: 15739604 timestamp: 1735290496248 +- conda: https://conda.anaconda.org/conda-forge/noarch/sysroot_linux-aarch64-2.28-h585391f_9.conda + sha256: 1bd2db6b2e451247bab103e4a0128cf6c7595dd72cb26d70f7fadd9edd1d1bc3 + md5: fdf07ab944a222ff28c754914fdb0740 + depends: + - __glibc >=2.28 + - kernel-headers_linux-aarch64 4.18.0 h05a177a_9 + - tzdata + license: LGPL-2.0-or-later AND LGPL-2.0-or-later WITH exceptions AND GPL-2.0-or-later + license_family: GPL + purls: [] + size: 23644746 + timestamp: 1765578629426 +- conda: https://conda.anaconda.org/conda-forge/osx-64/tapi-1600.0.11.8-h8d8e812_2.conda + sha256: 0e814730160c8e214eadd7905e3659d8f52af86fd37d85fd287060748948a2b8 + md5: 524528dee57e42d77b1af677137de5a5 + depends: + - libcxx >=19.0.0.a0 + - __osx >=10.13 + - ncurses >=6.5,<7.0a0 + license: NCSA + purls: [] + size: 213790 + timestamp: 1775657389876 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tapi-1600.0.11.8-h997e182_1.conda sha256: 0072a50a204dc6a309ea61e01315caee86cf82879ce5254bb8feb04a3e0de762 md5: ddd7d9cd7e3c3f184867e92ed1c7d394 @@ -6283,6 +8255,26 @@ packages: license: MIT size: 6029930 timestamp: 1766862999011 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/tombi-0.9.17-h069e38c_0.conda + sha256: c581ea5b00fd268e8d2b69aa89128adb43ab408ec7a96549e38589b887c0a999 + md5: aa5dd526ac2b9489c17cca68deae82a8 + depends: + - libgcc >=14 + constrains: + - __glibc >=2.17 + license: MIT + size: 6395446 + timestamp: 1776005471267 +- conda: https://conda.anaconda.org/conda-forge/osx-64/tombi-0.9.17-h19f9e61_0.conda + sha256: f3c8ff4883a2a18b62d43e87283b081f5cc41834e5225a109fe205eec9db7cb3 + md5: 13568d5f34ca701f8d31961815a08c55 + depends: + - __osx >=11.0 + constrains: + - __osx >=10.13 + license: MIT + size: 6721520 + timestamp: 1776005523084 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tombi-0.7.12-h6fdd925_0.conda sha256: e75c9461c2e09e1f403e9d8541c16e6a74e8e6e09e1985dfdec7621030f8749d md5: 0b1ba2fe993fff755eba4dccc33c2a50 @@ -6448,6 +8440,32 @@ packages: purls: [] size: 23987 timestamp: 1749230104359 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xz-5.8.3-hd704e39_0.conda + sha256: a12cc406fc348d3b3a6c2bc6e2a1a82b2f6865d67f1f41498f7301aea77ae9c3 + md5: 515cd9d9970d3addd52b8f85ee1beab9 + depends: + - libgcc >=14 + - liblzma 5.8.3 he30d5cf_0 + - liblzma-devel 5.8.3 he30d5cf_0 + - xz-gpl-tools 5.8.3 hd704e39_0 + - xz-tools 5.8.3 he30d5cf_0 + license: 0BSD AND LGPL-2.1-or-later AND GPL-2.0-or-later + purls: [] + size: 24330 + timestamp: 1775828875434 +- conda: https://conda.anaconda.org/conda-forge/osx-64/xz-5.8.3-h6a5a847_0.conda + sha256: ba5ad03c1c99c0bc62b92fb4630a33839e07b41f1b64c2d224f63a36b6ac1c00 + md5: 65aa14eb080715ecf13b15e5d85acde2 + depends: + - __osx >=11.0 + - liblzma 5.8.3 hbb4bfdb_0 + - liblzma-devel 5.8.3 hbb4bfdb_0 + - xz-gpl-tools 5.8.3 h6a5a847_0 + - xz-tools 5.8.3 hbb4bfdb_0 + license: 0BSD AND LGPL-2.1-or-later AND GPL-2.0-or-later + purls: [] + size: 24261 + timestamp: 1775826189380 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xz-5.8.1-h9a6d368_2.conda sha256: afb747cf017b67cc31d54c6e6c4bd1b1e179fe487a3d23a856232ed7fd0b099b md5: 39435c82e5a007ef64cbb153ecc40cfd @@ -6488,6 +8506,30 @@ packages: purls: [] size: 33911 timestamp: 1749230090353 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xz-gpl-tools-5.8.3-hd704e39_0.conda + sha256: ad964969ff1a72d8cc8d60a6bbd66ca5f79c00f2e3dec612caae1c2c5b9e2d16 + md5: f357f5285cc0c4df2305dd6ccb977ec5 + depends: + - libgcc >=14 + - liblzma 5.8.3 he30d5cf_0 + constrains: + - xz 5.8.3.* + license: 0BSD AND LGPL-2.1-or-later AND GPL-2.0-or-later + purls: [] + size: 34353 + timestamp: 1775828661986 +- conda: https://conda.anaconda.org/conda-forge/osx-64/xz-gpl-tools-5.8.3-h6a5a847_0.conda + sha256: e9bbba55933e2d962f65b689796561e9b687c36fb388b42eba5c0c561c6fe574 + md5: f2d1a60e16eb0da1cac4f9d0129957da + depends: + - __osx >=11.0 + - liblzma 5.8.3 hbb4bfdb_0 + constrains: + - xz 5.8.3.* + license: 0BSD AND LGPL-2.1-or-later AND GPL-2.0-or-later + purls: [] + size: 34168 + timestamp: 1775826151739 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xz-gpl-tools-5.8.1-h9a6d368_2.conda sha256: a0790cfb48d240e7b655b0d797a00040219cf39e3ee38e2104e548515df4f9c2 md5: 09b1442c1d49ac7c5f758c44695e77d1 @@ -6513,6 +8555,30 @@ packages: purls: [] size: 96433 timestamp: 1749230076687 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xz-tools-5.8.3-he30d5cf_0.conda + sha256: 86d48bb0ac214d1d72e05e765523d5847f3ccd872c142304d3c307cc95c93881 + md5: 6cf7b9f879c7665749c7ddd45cc5c163 + depends: + - libgcc >=14 + - liblzma 5.8.3 he30d5cf_0 + constrains: + - xz 5.8.3.* + license: 0BSD AND LGPL-2.1-or-later + purls: [] + size: 102970 + timestamp: 1775828449899 +- conda: https://conda.anaconda.org/conda-forge/osx-64/xz-tools-5.8.3-hbb4bfdb_0.conda + sha256: 57fc818b986bf86c5dec503047d5ba2f97bf76f2de225a3e6fea0c87c6e973dd + md5: 0a8d7aa810e8bef50429295f485fb14c + depends: + - __osx >=11.0 + - liblzma 5.8.3 hbb4bfdb_0 + constrains: + - xz 5.8.3.* + license: 0BSD AND LGPL-2.1-or-later + purls: [] + size: 86264 + timestamp: 1775826113228 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xz-tools-5.8.1-h39f12f2_2.conda sha256: 9d1232705e3d175f600dc8e344af9182d0341cdaa73d25330591a28532951063 md5: 37996935aa33138fca43e4b4563b6a28 diff --git a/pixi.toml b/pixi.toml index 09445d971..ffaa5a454 100644 --- a/pixi.toml +++ b/pixi.toml @@ -29,9 +29,6 @@ test-run = ["test"] # ============================================================================== # # DEPENDENCIES # # ============================================================================== # -[feature.build] -platforms = ["win-64", "linux-64", "osx-arm64"] - [feature.build.dependencies] python = ">=3.13" cmake = ">=3.30" @@ -206,9 +203,6 @@ outputs = ["editors/vscode/node_modules/.modules.yaml"] # ============================================================================== # # FORMAT # # ============================================================================== # -[feature.format] -platforms = ["win-64", "linux-64", "osx-arm64"] - [feature.format.dependencies] ruff = "*" tombi = "*" From 880c74f7d62f3838dc447d94db45e66337801589 Mon Sep 17 00:00:00 2001 From: ykiko Date: Mon, 13 Apr 2026 22:35:38 +0800 Subject: [PATCH 37/52] feat(ci): unify cross-compile + native test pattern for all 3 new platforms - Add win-arm64 to pixi platforms (6 total) - Move Windows ARM64 from native build to cross-compile from windows-2025 - All 3 new platforms (macOS x64, Linux aarch64, Windows ARM64) use the same pattern: cross-compile on original platform, test on native runner - Move flatbuffers from workspace deps to build feature (unavailable on win-arm64) - Add platform restrictions for build/format/node features (native tools like cmake, ruff, pnpm unavailable on win-arm64) Co-Authored-By: Claude Opus 4.6 --- .github/workflows/test-cmake.yml | 9 +- pixi.lock | 225 +++++++++++++++++++++++++++---- pixi.toml | 13 +- 3 files changed, 215 insertions(+), 32 deletions(-) diff --git a/.github/workflows/test-cmake.yml b/.github/workflows/test-cmake.yml index 200921f31..e08acb626 100644 --- a/.github/workflows/test-cmake.yml +++ b/.github/workflows/test-cmake.yml @@ -39,10 +39,11 @@ jobs: target_triple: aarch64-linux-gnu build_only: true pixi_env: cross-linux-aarch64 - # ── Native ARM64 build + test ───────────────────────────────── - - os: windows-11-arm + - os: windows-2025 build_type: RelWithDebInfo target_triple: aarch64-pc-windows-msvc + build_only: true + pixi_env: cross-windows-arm64 runs-on: ${{ matrix.os }} steps: - name: Checkout repository @@ -127,6 +128,9 @@ jobs: - os: ubuntu-24.04-arm build_type: RelWithDebInfo target_triple: aarch64-linux-gnu + - os: windows-11-arm + build_type: RelWithDebInfo + target_triple: aarch64-pc-windows-msvc runs-on: ${{ matrix.os }} steps: - name: Checkout repository @@ -143,6 +147,7 @@ jobs: path: build/${{ matrix.build_type }}/ - name: Make binaries executable + if: runner.os != 'Windows' run: chmod +x build/${{ matrix.build_type }}/bin/* - name: Unit Test diff --git a/pixi.lock b/pixi.lock index 0e851233b..790279032 100644 --- a/pixi.lock +++ b/pixi.lock @@ -1301,7 +1301,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-format-21-21.1.7-default_h99862b1_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-format-21.1.7-default_h99862b1_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/fd-find-10.3.0-hdab8a38_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/flatbuffers-25.9.23-hb7d4c21_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/icu-75.1-he02047a_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45-default_hbd61a6d_105.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp21.1-21.1.7-default_h99862b1_2.conda @@ -1342,7 +1341,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang-format-21-21.1.7-default_he95a3c9_4.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/clang-format-21.1.7-default_he95a3c9_4.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/fd-find-10.4.2-h1ebd7d5_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/flatbuffers-25.9.23-h5248ec3_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/icu-78.3-hcab7f73_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ld_impl_linux-aarch64-2.45.1-default_h1979696_102.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libclang-cpp21.1-21.1.8-default_he95a3c9_3.conda @@ -1380,7 +1378,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/clang-format-21-21.1.7-default_hd70426c_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/clang-format-21.1.7-default_hd70426c_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/fd-find-10.4.2-h009cd8f_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/flatbuffers-25.9.23-h6982a40_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/icu-78.3-h25d91c4_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libclang-cpp21.1-21.1.8-default_hd70426c_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-22.1.3-h19cb2f5_0.conda @@ -1414,7 +1411,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-format-21-21.1.7-default_hf3020a7_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-format-21.1.7-default_hf3020a7_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fd-find-10.3.0-h0ca00b2_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/flatbuffers-25.9.23-h9e8ef45_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-75.1-hfee45f7_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang-cpp21.1-21.1.7-default_hf3020a7_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-21.1.8-hf598326_0.conda @@ -1447,7 +1443,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.11.12-h4c7d964_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/clang-format-21.1.7-default_hac490eb_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/fd-find-10.3.0-h77a83cd_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/flatbuffers-25.9.23-h4025804_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.7.3-hac47afa_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.5.2-h52bdfb6_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/liblzma-5.8.1-h2466b09_2.conda @@ -1480,7 +1475,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.34.6-hb03c661_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.11.12-hbd8a1cb_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/flatbuffers-25.9.23-hb7d4c21_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/icu-75.1-he02047a_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlicommon-1.2.0-hb03c661_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlidec-1.2.0-hb03c661_1.conda @@ -1503,7 +1497,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/_openmp_mutex-4.5-20_gnu.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/c-ares-1.34.6-he30d5cf_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/flatbuffers-25.9.23-h5248ec3_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/icu-78.3-hcab7f73_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libbrotlicommon-1.2.0-he30d5cf_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libbrotlidec-1.2.0-he30d5cf_1.conda @@ -1524,7 +1517,6 @@ environments: osx-64: - conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.34.6-hb5e19a0_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/flatbuffers-25.9.23-h6982a40_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/icu-78.3-h25d91c4_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlicommon-1.2.0-h8616949_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlidec-1.2.0-h8616949_1.conda @@ -1542,7 +1534,6 @@ environments: osx-arm64: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.34.6-hc919400_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.11.12-hbd8a1cb_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/flatbuffers-25.9.23-h9e8ef45_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-75.1-hfee45f7_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlicommon-1.2.0-hc919400_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlidec-1.2.0-hc919400_1.conda @@ -1558,7 +1549,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pnpm-10.26.2-h7c87c79_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.7-hbf9d68e_6.conda win-64: - - conda: https://conda.anaconda.org/conda-forge/win-64/flatbuffers-25.9.23-h4025804_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/nodejs-24.12.0-he453025_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pnpm-10.26.2-h785286a_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/ucrt-10.0.26100.0-h57928b3_0.conda @@ -1948,7 +1938,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-20_gnu.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hda65f42_9.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/flatbuffers-25.9.23-hb7d4c21_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/icu-78.3-h33c6efd_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45.1-default_hbd61a6d_102.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.7.5-hecca717_0.conda @@ -1984,7 +1973,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/_openmp_mutex-4.5-20_gnu.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/bzip2-1.0.8-h4777abc_9.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/flatbuffers-25.9.23-h5248ec3_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ld_impl_linux-aarch64-2.45.1-default_h1979696_102.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libexpat-2.7.5-hfae3067_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libffi-3.5.2-h376a255_0.conda @@ -1993,7 +1981,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/liblzma-5.8.3-he30d5cf_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libmpdec-4.0.0-he30d5cf_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libsqlite-3.53.0-h022381a_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libstdcxx-15.2.0-hef695bb_18.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libuuid-2.42-h1022ec0_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libzlib-1.3.2-hdc9db2a_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ncurses-6.5-ha32ae93_3.conda @@ -2018,9 +2005,7 @@ environments: osx-64: - conda: https://conda.anaconda.org/conda-forge/osx-64/bzip2-1.0.8-h500dc9f_9.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/flatbuffers-25.9.23-h6982a40_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/icu-78.3-h25d91c4_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-22.1.3-h19cb2f5_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libexpat-2.7.5-hcc62823_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libffi-3.5.2-hd1f9c09_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/liblzma-5.8.3-hbb4bfdb_0.conda @@ -2049,8 +2034,6 @@ environments: osx-arm64: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-hd037594_9.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/flatbuffers-25.9.23-h9e8ef45_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-22.1.3-h55c6f16_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.7.5-hf6b4638_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libffi-3.5.2-hcf2aa1b_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-5.8.3-h8088a28_0.conda @@ -2079,7 +2062,6 @@ environments: win-64: - conda: https://conda.anaconda.org/conda-forge/win-64/bzip2-1.0.8-h0ad9c76_9.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-h4c7d964_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/flatbuffers-25.9.23-h4025804_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.7.5-hac47afa_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.5.2-h3d046cb_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/liblzma-5.8.3-hfd05255_0.conda @@ -2108,6 +2090,36 @@ environments: - pypi: https://files.pythonhosted.org/packages/d4/24/a372aaf5c9b7208e7112038812994107bc65a84cd00e0354a88c2c77a617/pytest-9.0.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e5/35/f8b19922b6a25bc0880171a2f1a003eaeb93657475193ab516fd87cac9da/pytest_asyncio-1.3.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl + win-arm64: + - conda: https://conda.anaconda.org/conda-forge/win-arm64/bzip2-1.0.8-h50b96f5_9.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-h4c7d964_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-arm64/libexpat-2.7.5-h5d29faa_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-arm64/libffi-3.5.2-h92b751d_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-arm64/liblzma-5.8.3-hfbbf558_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-arm64/libmpdec-4.0.0-hfbbf558_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-arm64/libsqlite-3.53.0-h8de43fd_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-arm64/libzlib-1.3.2-hfbbf558_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-arm64/openssl-3.6.2-h3d85b8a_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-arm64/python-3.14.4-hb6d80db_100_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda + - conda: https://conda.anaconda.org/conda-forge/win-arm64/tk-8.6.13-hb57ce7c_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-arm64/vc-14.3-h2e3bdea_34.conda + - conda: https://conda.anaconda.org/conda-forge/win-arm64/vc14_runtime-14.44.35208-hf0bffbb_34.conda + - conda: https://conda.anaconda.org/conda-forge/win-arm64/vcomp14-14.44.35208-hf0bffbb_34.conda + - conda: https://conda.anaconda.org/conda-forge/win-arm64/zstd-1.5.7-h6f9f45c_6.conda + - pypi: https://files.pythonhosted.org/packages/64/b4/17d4b0b2a2dc85a6df63d1157e028ed19f90d4cd97c36717afef2bc2f395/attrs-26.1.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/80/56/60547f7801b97c67e97491dc3d9ade9fbccbd0325058fd3dfcb2f5d98d90/cattrs-26.1.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/cb/b1/3846dd7f199d53cb17f49cba7e651e9ce294d8497c8c150530ed11865bb8/iniconfig-2.3.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/7b/f0/92f2d609d6642b5f30cb50a885d2bf1483301c69d5786286500d15651ef2/lsprotocol-2025.0.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/b7/b9/c538f279a4e237a006a2c98387d081e9eb060d203d8ed34467cc0f0b9b53/packaging-26.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/fd/1a/208293b6c350f5abea6941d5606080d4a492644052504f5312e5de30a902/pygls-2.1.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/f4/7e/a72dd26f3b0f4f2bf1dd8923c85f7ceb43172af56d63c7383eb62b332364/pygments-2.20.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/d4/24/a372aaf5c9b7208e7112038812994107bc65a84cd00e0354a88c2c77a617/pytest-9.0.3-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/e5/35/f8b19922b6a25bc0880171a2f1a003eaeb93657475193ab516fd87cac9da/pytest_asyncio-1.3.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl packages: - conda: https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2 sha256: fe51de6107f9edc7aa4f786a70f4a883943bc9d39b3bb7307c04c41410990726 @@ -2315,6 +2327,17 @@ packages: purls: [] size: 56115 timestamp: 1771350256444 +- conda: https://conda.anaconda.org/conda-forge/win-arm64/bzip2-1.0.8-h50b96f5_9.conda + sha256: 587c16d198bbd3380c142780b518187e9facf967ef37cba3eb2ec5693f55c5c2 + md5: d18ad6aa47782a4014bfa6934124a1c6 + depends: + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + license: bzip2-1.0.6 + license_family: BSD + purls: [] + size: 56747 + timestamp: 1771350268192 - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.34.6-hb03c661_0.conda sha256: cc9accf72fa028d31c2a038460787751127317dcfa991f8d1f1babf216bb454e md5: 920bb03579f15389b9e512095ad995b7 @@ -4649,16 +4672,6 @@ packages: license_family: Apache size: 568094 timestamp: 1774439202359 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-22.1.3-h55c6f16_0.conda - sha256: 34cc56c627b01928e49731bcfe92338e440ab6b5952feee8f1dd16570b8b8339 - md5: acbb3f547c4aae16b19e417db0c6e5ed - depends: - - __osx >=11.0 - license: Apache-2.0 WITH LLVM-exception - license_family: Apache - purls: [] - size: 570026 - timestamp: 1775565121045 - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-devel-20.1.8-h7c275be_3.conda sha256: 1883788a6cb2d879a0c88fb33f6a680c3249491087878610e77f33ee202b3b2c md5: 4c8e572b874e3f80d145d4faa46cf81b @@ -4880,6 +4893,19 @@ packages: purls: [] size: 70609 timestamp: 1774719377850 +- conda: https://conda.anaconda.org/conda-forge/win-arm64/libexpat-2.7.5-h5d29faa_0.conda + sha256: ffea741f54a58e9365d6533308b152ba2266f659c91ef5bc25bb5c4c4b231118 + md5: ed447ec4ae997a7ab8c6e46f266d5fa1 + depends: + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + constrains: + - expat 2.7.5.* + license: MIT + license_family: MIT + purls: [] + size: 63719 + timestamp: 1774719281308 - conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.5.2-h3435931_0.conda sha256: 31f19b6a88ce40ebc0d5a992c131f57d919f73c0b92cd1617a5bec83f6e961e6 md5: a360c33a5abe61c07959e449fa1453eb @@ -4966,6 +4992,16 @@ packages: purls: [] size: 44866 timestamp: 1760295760649 +- conda: https://conda.anaconda.org/conda-forge/win-arm64/libffi-3.5.2-h92b751d_0.conda + sha256: 45b2d30367b77258a98f47a8043311cbbcfe959c6b612a7e36f1ebd10d83b866 + md5: 42a412a1a15832e005ed5ca4a556fccf + depends: + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + license: MIT + purls: [] + size: 45685 + timestamp: 1769456270735 - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-he0feb66_16.conda sha256: 6eed58051c2e12b804d53ceff5994a350c61baf117ec83f5f10c953a3f311451 md5: 6d0363467e6ed84f11435eb309f2ff06 @@ -5499,6 +5535,18 @@ packages: purls: [] size: 106486 timestamp: 1775825663227 +- conda: https://conda.anaconda.org/conda-forge/win-arm64/liblzma-5.8.3-hfbbf558_0.conda + sha256: 14992b717ce63ed7acbaea73d5cd1ab956864804a14d95489eb5c7661394a206 + md5: 05d76088c9e8d7f8d3986c4044d7d928 + depends: + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + constrains: + - xz 5.8.3.* + license: 0BSD + purls: [] + size: 98360 + timestamp: 1775825578466 - conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-devel-5.8.1-hb9d3cd8_2.conda sha256: 329e66330a8f9cbb6a8d5995005478188eb4ba8a6b6391affa849744f4968492 md5: f61edadbb301530bd65a32646bd81552 @@ -5638,6 +5686,16 @@ packages: purls: [] size: 89411 timestamp: 1769482314283 +- conda: https://conda.anaconda.org/conda-forge/win-arm64/libmpdec-4.0.0-hfbbf558_1.conda + sha256: c8c7fbfc44c253bd5a48f1246b1cc49b95f5567d2ffc5e1636d10ee7707e9f04 + md5: 72604dfc56c9c14f82adc08fe86c0912 + depends: + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + license: BSD-2-Clause + purls: [] + size: 73303 + timestamp: 1769482284805 - conda: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.67.0-had1ee68_0.conda sha256: a4a7dab8db4dc81c736e9a9b42bdfd97b087816e029e221380511960ac46c690 md5: b499ce4b026493a13774bcf0f4c33849 @@ -5927,6 +5985,16 @@ packages: purls: [] size: 1301855 timestamp: 1775753831574 +- conda: https://conda.anaconda.org/conda-forge/win-arm64/libsqlite-3.53.0-h8de43fd_0.conda + sha256: 3ab1cd41dee9a9081790b91f1e163b32c73361304b3d8eb661d67735a7cdcaf2 + md5: 55c328dee344b6cbcd8ecbd9a95d1c3d + depends: + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + license: blessing + purls: [] + size: 1107687 + timestamp: 1775753800774 - conda: https://conda.anaconda.org/conda-forge/linux-64/libssh2-1.11.1-hcf80075_0.conda sha256: fa39bfd69228a13e553bd24601332b7cfeb30ca11a3ca50bb028108fe90a7661 md5: eecce068c7e4eddeb169591baac20ac4 @@ -6708,6 +6776,19 @@ packages: purls: [] size: 58347 timestamp: 1774072851498 +- conda: https://conda.anaconda.org/conda-forge/win-arm64/libzlib-1.3.2-hfbbf558_2.conda + sha256: 7d6262e31dba63c438090301395642940c828b09f7951af204da135d38e6d794 + md5: bc40726d448b48e36b26982e737e93b5 + depends: + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + constrains: + - zlib 1.3.2 *_2 + license: Zlib + license_family: Other + purls: [] + size: 54427 + timestamp: 1774072762111 - conda: https://conda.anaconda.org/conda-forge/linux-64/lld-20.1.8-hef48ded_1.conda sha256: c3294734baa2a30f613447d48333ac3a09b4060e4603ecef727c6a935b59268e md5: 1284f189f4b05bd1ef935807b05f6a26 @@ -7377,6 +7458,18 @@ packages: purls: [] size: 9410183 timestamp: 1775589779763 +- conda: https://conda.anaconda.org/conda-forge/win-arm64/openssl-3.6.2-h3d85b8a_0.conda + sha256: d2225de9924ad10f51a9337585e5e4398197b811e7b72c9b152842827f45f96d + md5: 4cafd6f7db05fdb2f323d283f1efa41b + depends: + - ca-certificates + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + license: Apache-2.0 + license_family: Apache + purls: [] + size: 9163478 + timestamp: 1775588776854 - pypi: https://files.pythonhosted.org/packages/b7/b9/c538f279a4e237a006a2c98387d081e9eb060d203d8ed34467cc0f0b9b53/packaging-26.0-py3-none-any.whl name: packaging version: '26.0' @@ -7841,6 +7934,30 @@ packages: size: 18055445 timestamp: 1775615317758 python_site_packages_path: Lib/site-packages +- conda: https://conda.anaconda.org/conda-forge/win-arm64/python-3.14.4-hb6d80db_100_cp314.conda + build_number: 100 + sha256: 27ee18bb22a5d71474e66eee9fe3cc5ac81eb5d8fba32193d65673b5170164f3 + md5: ea556ff447241cbd9e86acbee1132251 + depends: + - bzip2 >=1.0.8,<2.0a0 + - libexpat >=2.7.5,<3.0a0 + - libffi >=3.5.2,<3.6.0a0 + - liblzma >=5.8.2,<6.0a0 + - libmpdec >=4.0.0,<5.0a0 + - libsqlite >=3.52.0,<4.0a0 + - libzlib >=1.3.2,<2.0a0 + - openssl >=3.5.6,<4.0a0 + - python_abi 3.14.* *_cp314 + - tk >=8.6.13,<8.7.0a0 + - tzdata + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + - zstd >=1.5.7,<1.6.0a0 + license: Python-2.0 + purls: [] + size: 16359161 + timestamp: 1775614192026 + python_site_packages_path: Lib/site-packages - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda build_number: 8 sha256: ad6d2e9ac39751cc0529dd1566a26751a0bf2542adb0c232533d32e176e21db5 @@ -8244,6 +8361,17 @@ packages: purls: [] size: 3526350 timestamp: 1769460339384 +- conda: https://conda.anaconda.org/conda-forge/win-arm64/tk-8.6.13-hb57ce7c_3.conda + sha256: ea91e47f4d307db4e9b614a0257f14e3646a259a87d69342ff6bbc2e5f8d0f04 + md5: f9be2a06b2de18bbcd8caf832f3fb77f + depends: + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + license: TCL + license_family: BSD + purls: [] + size: 3140243 + timestamp: 1769460275298 - conda: https://conda.anaconda.org/conda-forge/linux-64/tombi-0.7.12-hb17b654_0.conda sha256: 972bd56e5e73e72411424d6d903f0267c18d684020aa2189dfb4a4fd86376076 md5: bae1720cadffd3bfd69f965b2590cf6f @@ -8355,6 +8483,18 @@ packages: purls: [] size: 19356 timestamp: 1767320221521 +- conda: https://conda.anaconda.org/conda-forge/win-arm64/vc-14.3-h2e3bdea_34.conda + sha256: 888680c163f303fbeb16438ba7c383caf9209411304f45ee56b224249c6e7b84 + md5: 016abcdd7e5a9ec5529264b243115c86 + depends: + - vc14_runtime >=14.44.35208 + track_features: + - vc14 + license: BSD-3-Clause + license_family: BSD + purls: [] + size: 18895 + timestamp: 1767319996496 - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.44.35208-h818238b_33.conda sha256: 7e8f7da25d7ce975bbe7d7e6d6e899bf1f253e524a3427cc135a79f3a79c457c md5: fb8e4914c5ad1c71b3c519621e1df7b8 @@ -8381,6 +8521,16 @@ packages: purls: [] size: 683233 timestamp: 1767320219644 +- conda: https://conda.anaconda.org/conda-forge/win-arm64/vc14_runtime-14.44.35208-hf0bffbb_34.conda + sha256: 8cab939f61d383f54c1bd8679660c1b578b19084d2931f75e28fb6e1dad8bd96 + md5: d37de0e6c99e4f3584b184d5a262c087 + depends: + - vcomp14 14.44.35208 hf0bffbb_34 + license: LicenseRef-MicrosoftVisualCpp2015-2022Runtime + license_family: Proprietary + purls: [] + size: 15394733 + timestamp: 1767319979389 - conda: https://conda.anaconda.org/conda-forge/win-64/vcomp14-14.44.35208-h818238b_33.conda sha256: f79edd878094e86af2b2bc1455b0a81e02839a784fb093d5996ad4cf7b810101 md5: 4cb6942b4bd846e51b4849f4a93c7e6d @@ -8405,6 +8555,14 @@ packages: purls: [] size: 115235 timestamp: 1767320173250 +- conda: https://conda.anaconda.org/conda-forge/win-arm64/vcomp14-14.44.35208-hf0bffbb_34.conda + sha256: f0fbb442601ace29830952bd48c5db083b6729be4c19765cd26aef870eb72a59 + md5: 3b5a5bbed6d24efe84b8432623bad37c + license: LicenseRef-MicrosoftVisualCpp2015-2022Runtime + license_family: Proprietary + purls: [] + size: 23369 + timestamp: 1767319970572 - conda: https://conda.anaconda.org/conda-forge/linux-64/xxhash-0.8.3-hb47aa4a_0.conda sha256: 08e12f140b1af540a6de03dd49173c0e5ae4ebc563cabdd35ead0679835baf6f md5: 607e13a8caac17f9a664bcab5302ce06 @@ -8661,3 +8819,14 @@ packages: purls: [] size: 388453 timestamp: 1764777142545 +- conda: https://conda.anaconda.org/conda-forge/win-arm64/zstd-1.5.7-h6f9f45c_6.conda + sha256: f935e53a90e9af6192a4228718561094dfe25265a931c74867a30e13945cb329 + md5: ca37e85ec31647de81fb7393e198011d + depends: + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + - libzlib >=1.3.1,<2.0a0 + license: BSD-3-Clause + purls: [] + size: 359076 + timestamp: 1764777149135 diff --git a/pixi.toml b/pixi.toml index ffaa5a454..05f1f4cab 100644 --- a/pixi.toml +++ b/pixi.toml @@ -14,7 +14,7 @@ readme = "README.md" documentation = "https://docs.clice.io/clice/" repository = "https://github.com/clice-io/clice" channels = ["conda-forge"] -platforms = ["win-64", "linux-64", "osx-arm64", "osx-64", "linux-aarch64"] +platforms = ["win-64", "linux-64", "osx-arm64", "osx-64", "linux-aarch64", "win-arm64"] [environments] default = ["build", "test"] @@ -29,6 +29,9 @@ test-run = ["test"] # ============================================================================== # # DEPENDENCIES # # ============================================================================== # +[feature.build] +platforms = ["win-64", "linux-64", "osx-arm64", "osx-64", "linux-aarch64"] + [feature.build.dependencies] python = ">=3.13" cmake = ">=3.30" @@ -39,6 +42,7 @@ lld = "==20.1.8" llvm-tools = "==20.1.8" clang-tools = "==20.1.8" compiler-rt = "==20.1.8" +flatbuffers = "==25.9.23" [feature.build.target.win-64.dependencies] sccache = "*" @@ -173,11 +177,13 @@ args = ["file_name"] cmd = ["scripts/delete-artifacts.bash", "{{ file_name }}"] [dependencies] -flatbuffers = "==25.9.23" # ============================================================================== # # DOCS & VSCODE EXTENSION # # ============================================================================== # +[feature.node] +platforms = ["win-64", "linux-64", "osx-arm64", "osx-64", "linux-aarch64"] + [feature.node.dependencies] nodejs = ">=20" pnpm = "*" @@ -203,6 +209,9 @@ outputs = ["editors/vscode/node_modules/.modules.yaml"] # ============================================================================== # # FORMAT # # ============================================================================== # +[feature.format] +platforms = ["win-64", "linux-64", "osx-arm64", "osx-64", "linux-aarch64"] + [feature.format.dependencies] ruff = "*" tombi = "*" From 4efa25213aee98ecde9422f5da318c0feb954d56 Mon Sep 17 00:00:00 2001 From: ykiko Date: Mon, 13 Apr 2026 22:40:04 +0800 Subject: [PATCH 38/52] fix(ci): install single pixi env per job to fix activate-environment error Co-Authored-By: Claude Opus 4.6 --- .github/workflows/test-cmake.yml | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/.github/workflows/test-cmake.yml b/.github/workflows/test-cmake.yml index e08acb626..8055640f7 100644 --- a/.github/workflows/test-cmake.yml +++ b/.github/workflows/test-cmake.yml @@ -51,7 +51,7 @@ jobs: - uses: ./.github/actions/setup-pixi with: - environments: ${{ matrix.pixi_env && format('default {0}', matrix.pixi_env) || 'default' }} + environments: ${{ matrix.pixi_env || 'default' }} - name: Restore compiler cache uses: actions/cache@v4 @@ -63,11 +63,12 @@ jobs: - name: Zero cache stats run: | + ENV="${{ matrix.pixi_env || 'default' }}" if [ "$RUNNER_OS" = "Windows" ]; then - pixi run -- sccache --stop-server || true - pixi run -- sccache --zero-stats || true + pixi run -e "$ENV" -- sccache --stop-server || true + pixi run -e "$ENV" -- sccache --zero-stats || true else - pixi run -- ccache --zero-stats || true + pixi run -e "$ENV" -- ccache --zero-stats || true fi shell: bash @@ -108,11 +109,12 @@ jobs: - name: Print cache stats and stop server if: always() run: | + ENV="${{ matrix.pixi_env || 'default' }}" if [ "$RUNNER_OS" = "Windows" ]; then - pixi run -- sccache --show-stats - pixi run -- sccache --stop-server || true + pixi run -e "$ENV" -- sccache --show-stats + pixi run -e "$ENV" -- sccache --stop-server || true else - pixi run -- ccache --show-stats + pixi run -e "$ENV" -- ccache --show-stats fi shell: bash From 64637f4feae4cd2665ba022542d674ef07e4fb24 Mon Sep 17 00:00:00 2001 From: ykiko Date: Mon, 13 Apr 2026 23:01:17 +0800 Subject: [PATCH 39/52] fix(ci): fix aarch64-linux-gnu regex in toolchain.cmake The regex `^aarch64-.*-linux` requires a vendor segment between arch and os (e.g. aarch64-unknown-linux-gnu) but the triple `aarch64-linux-gnu` has no vendor. Change to `^aarch64-.*linux` to match both forms. Co-Authored-By: Claude Opus 4.6 --- cmake/toolchain.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmake/toolchain.cmake b/cmake/toolchain.cmake index f5c60a31c..6b7f45a15 100644 --- a/cmake/toolchain.cmake +++ b/cmake/toolchain.cmake @@ -8,7 +8,7 @@ cmake_minimum_required(VERSION 3.30) if(DEFINED CLICE_TARGET_TRIPLE) if(CLICE_TARGET_TRIPLE MATCHES "^x86_64-apple-darwin") set(CMAKE_OSX_ARCHITECTURES "x86_64" CACHE STRING "") - elseif(CLICE_TARGET_TRIPLE MATCHES "^aarch64-.*-linux") + elseif(CLICE_TARGET_TRIPLE MATCHES "^aarch64-.*linux") set(CMAKE_SYSTEM_NAME Linux) set(CMAKE_SYSTEM_PROCESSOR aarch64) set(CMAKE_C_COMPILER_TARGET "aarch64-linux-gnu" CACHE STRING "") From 45803522fed75c0528772a70f0f0a93ba600d23d Mon Sep 17 00:00:00 2001 From: ykiko Date: Mon, 13 Apr 2026 23:11:43 +0800 Subject: [PATCH 40/52] fix(ci): unset LIBRARY_PATH for aarch64 cross-compilation Conda's ld_impl_linux-64 sets LIBRARY_PATH=$CONDA_PREFIX/lib which contains x86_64 libgcc_s.so.1. When cross-compiling for aarch64, lld finds this incompatible library and fails. Add activation script to clear LIBRARY_PATH in the cross-linux-aarch64 environment. Co-Authored-By: Claude Opus 4.6 --- pixi.toml | 3 +++ scripts/activate_cross_linux.sh | 5 +++++ 2 files changed, 8 insertions(+) create mode 100644 scripts/activate_cross_linux.sh diff --git a/pixi.toml b/pixi.toml index 05f1f4cab..99fa38c3e 100644 --- a/pixi.toml +++ b/pixi.toml @@ -72,6 +72,9 @@ sysroot_linux-aarch64 = "==2.17" gcc_linux-aarch64 = "==14.2.0" gxx_linux-aarch64 = "==14.2.0" +[feature.cross-linux-aarch64.target.linux-64.activation] +scripts = ["scripts/activate_cross_linux.sh"] + # Windows arm64 (from x64): Windows SDK on CI already includes ARM64 libs. [feature.cross-windows-arm64.target.win-64.dependencies] diff --git a/scripts/activate_cross_linux.sh b/scripts/activate_cross_linux.sh new file mode 100644 index 000000000..c0c0293f5 --- /dev/null +++ b/scripts/activate_cross_linux.sh @@ -0,0 +1,5 @@ +#!/bin/sh +# Clear LIBRARY_PATH to prevent host x86_64 libraries from being found +# during aarch64 cross-compilation. Conda's ld_impl_linux-64 sets +# LIBRARY_PATH=$CONDA_PREFIX/lib which contains x86_64 libgcc_s.so.1. +unset LIBRARY_PATH From 0af68f340563e889860d697d0c41a4323c87b2e2 Mon Sep 17 00:00:00 2001 From: ykiko Date: Mon, 13 Apr 2026 23:26:33 +0800 Subject: [PATCH 41/52] fix(ci): unset LIBRARY_PATH before cmake for cross-compilation Pixi's activation script `unset` doesn't propagate through its environment capture mechanism. Use `env -u LIBRARY_PATH` to strip the host x86_64 library path directly before cmake invocation, preventing lld from finding incompatible libgcc_s.so.1. Co-Authored-By: Claude Opus 4.6 --- .github/workflows/test-cmake.yml | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-cmake.yml b/.github/workflows/test-cmake.yml index 8055640f7..6d798706c 100644 --- a/.github/workflows/test-cmake.yml +++ b/.github/workflows/test-cmake.yml @@ -80,8 +80,16 @@ jobs: if: ${{ matrix.target_triple }} shell: bash run: | - pixi run -e ${{ matrix.pixi_env || 'default' }} cmake-config ${{ matrix.build_type }} OFF "-DCLICE_TARGET_TRIPLE=${{ matrix.target_triple }}" - pixi run -e ${{ matrix.pixi_env || 'default' }} cmake-build ${{ matrix.build_type }} + ENV="${{ matrix.pixi_env || 'default' }}" + pixi run -e "$ENV" -- env -u LIBRARY_PATH \ + cmake -B "build/${{ matrix.build_type }}" -G Ninja \ + -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} \ + -DCMAKE_TOOLCHAIN_FILE=cmake/toolchain.cmake \ + -DCLICE_ENABLE_TEST=ON \ + -DCLICE_CI_ENVIRONMENT=OFF \ + "-DCLICE_TARGET_TRIPLE=${{ matrix.target_triple }}" + pixi run -e "$ENV" -- env -u LIBRARY_PATH \ + cmake --build "build/${{ matrix.build_type }}" - name: Upload cross-compiled binaries if: ${{ matrix.build_only }} From caf897c3cc2834311b675e6f44b51e029293b2da Mon Sep 17 00:00:00 2001 From: ykiko Date: Mon, 13 Apr 2026 23:31:20 +0800 Subject: [PATCH 42/52] fix(ci): also unset LDFLAGS/CFLAGS for cross-compilation Conda's cross-compilation toolchain sets LDFLAGS with -L$CONDA_PREFIX/lib pointing to host x86_64 libraries. CMake picks up LDFLAGS from the environment, causing lld to find incompatible libgcc_s.so.1. Strip all conda compiler flags since our toolchain.cmake provides the correct settings. Co-Authored-By: Claude Opus 4.6 --- .github/workflows/test-cmake.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-cmake.yml b/.github/workflows/test-cmake.yml index 6d798706c..1c9e7a97e 100644 --- a/.github/workflows/test-cmake.yml +++ b/.github/workflows/test-cmake.yml @@ -81,14 +81,14 @@ jobs: shell: bash run: | ENV="${{ matrix.pixi_env || 'default' }}" - pixi run -e "$ENV" -- env -u LIBRARY_PATH \ + pixi run -e "$ENV" -- env -u LIBRARY_PATH -u LDFLAGS -u CFLAGS -u CXXFLAGS -u CPPFLAGS \ cmake -B "build/${{ matrix.build_type }}" -G Ninja \ -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} \ -DCMAKE_TOOLCHAIN_FILE=cmake/toolchain.cmake \ -DCLICE_ENABLE_TEST=ON \ -DCLICE_CI_ENVIRONMENT=OFF \ "-DCLICE_TARGET_TRIPLE=${{ matrix.target_triple }}" - pixi run -e "$ENV" -- env -u LIBRARY_PATH \ + pixi run -e "$ENV" -- env -u LIBRARY_PATH -u LDFLAGS -u CFLAGS -u CXXFLAGS -u CPPFLAGS \ cmake --build "build/${{ matrix.build_type }}" - name: Upload cross-compiled binaries From f950b5720b536305aaa51887cde99f031481a7a9 Mon Sep 17 00:00:00 2001 From: ykiko Date: Tue, 14 Apr 2026 00:47:38 +0800 Subject: [PATCH 43/52] fix(ci): fix aarch64 LLVM cross-build and add clice verification - build-llvm.py: clear LDFLAGS/CFLAGS/LIBRARY_PATH when cross-compiling to prevent conda's host-platform flags from leaking into the target build - build-llvm.yml: use cross-linux-aarch64/cross-windows-arm64 pixi envs for cross-compile jobs (provides aarch64 sysroot) - build-llvm.yml: add "Build clice" step for cross-compiled LLVM to catch architecture mismatches early - build-llvm.yml: add binary architecture verification step Co-Authored-By: Claude Opus 4.6 --- .github/workflows/build-llvm.yml | 38 ++++++++++++++++++++++++++++++-- scripts/build-llvm.py | 6 +++++ 2 files changed, 42 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build-llvm.yml b/.github/workflows/build-llvm.yml index 98a43b742..e8f616e70 100644 --- a/.github/workflows/build-llvm.yml +++ b/.github/workflows/build-llvm.yml @@ -70,20 +70,24 @@ jobs: llvm_mode: RelWithDebInfo lto: OFF target_triple: aarch64-linux-gnu + pixi_env: cross-linux-aarch64 - os: ubuntu-24.04 llvm_mode: RelWithDebInfo lto: ON target_triple: aarch64-linux-gnu + pixi_env: cross-linux-aarch64 # Windows arm64 (from x64 windows-2025) - os: windows-2025 llvm_mode: RelWithDebInfo lto: OFF target_triple: aarch64-pc-windows-msvc + pixi_env: cross-windows-arm64 - os: windows-2025 llvm_mode: RelWithDebInfo lto: ON target_triple: aarch64-pc-windows-msvc + pixi_env: cross-windows-arm64 runs-on: ${{ matrix.os }} steps: @@ -117,7 +121,7 @@ jobs: uses: prefix-dev/setup-pixi@v0.9.3 with: pixi-version: v0.59.0 - environments: package + environments: ${{ matrix.pixi_env || 'package' }} activate-environment: true cache: true locked: true @@ -139,11 +143,12 @@ jobs: - name: Build LLVM (install-distribution) shell: bash run: | + ENV="${{ matrix.pixi_env || 'package' }}" EXTRA_ARGS="" if [[ -n "${{ matrix.target_triple }}" ]]; then EXTRA_ARGS="--target-triple=${{ matrix.target_triple }}" fi - pixi run build-llvm \ + pixi run -e "$ENV" build-llvm \ --llvm-src=.llvm \ --mode="${{ matrix.llvm_mode }}" \ --lto="${{ matrix.lto }}" \ @@ -163,6 +168,35 @@ jobs: -DLLVM_INSTALL_PATH=".llvm/build-install" cmake --build build + - name: Build clice using installed LLVM (cross-compile) + if: ${{ matrix.target_triple }} + shell: bash + run: | + ENV="${{ matrix.pixi_env || 'package' }}" + pixi run -e "$ENV" -- env -u LIBRARY_PATH -u LDFLAGS -u CFLAGS -u CXXFLAGS -u CPPFLAGS \ + cmake -B build-clice -G Ninja \ + -DCMAKE_BUILD_TYPE=${{ matrix.llvm_mode }} \ + -DCMAKE_TOOLCHAIN_FILE=cmake/toolchain.cmake \ + -DCLICE_ENABLE_TEST=ON \ + -DCLICE_CI_ENVIRONMENT=ON \ + -DCLICE_ENABLE_LTO=${{ matrix.lto }} \ + "-DCLICE_TARGET_TRIPLE=${{ matrix.target_triple }}" \ + -DLLVM_INSTALL_PATH=".llvm/build-install" + pixi run -e "$ENV" -- env -u LIBRARY_PATH -u LDFLAGS -u CFLAGS -u CXXFLAGS -u CPPFLAGS \ + cmake --build build-clice + + - name: Verify cross-compiled binary architecture + if: ${{ matrix.target_triple && runner.os != 'Windows' }} + shell: bash + run: | + BINARY="build-clice/bin/clice" + echo "Binary info:" + file "$BINARY" + case "${{ matrix.target_triple }}" in + aarch64-linux-gnu) file "$BINARY" | grep -q "aarch64" ;; + x86_64-apple-darwin) file "$BINARY" | grep -q "x86_64" ;; + esac + - name: Run tests if: ${{ !matrix.target_triple }} shell: bash diff --git a/scripts/build-llvm.py b/scripts/build-llvm.py index b1d5310d2..65e9f65b7 100644 --- a/scripts/build-llvm.py +++ b/scripts/build-llvm.py @@ -277,6 +277,12 @@ def main(): native_bin_dir = build_native_tools(project_root, build_dir) cmake_args.append(f"-DLLVM_NATIVE_TOOL_DIR={native_bin_dir}") + # When cross-compiling, clear conda's host-platform flags so they + # don't leak into the target build (e.g. -L pointing to x86_64 libs). + if args.target_triple: + for var in ["LIBRARY_PATH", "LDFLAGS", "CFLAGS", "CXXFLAGS", "CPPFLAGS"]: + os.environ.pop(var, None) + build_dir.mkdir(exist_ok=True) print(f"\nConfiguring in {build_dir}...") From bd45b1d661496153364d3e5adf7a5523e3e9d3ae Mon Sep 17 00:00:00 2001 From: ykiko Date: Tue, 14 Apr 2026 03:23:15 +0800 Subject: [PATCH 44/52] fix(ci): update LLVM 21.1.8 manifest with correct SHA256 hashes The previous 21.1.8 release contained x86_64 objects in the aarch64 package. After rebuilding with proper cross-compilation sysroot and env var isolation, update the manifest with correct hashes. Co-Authored-By: Claude Opus 4.6 --- config/llvm-manifest.json | 280 +++++++++++++++++++------------------- 1 file changed, 140 insertions(+), 140 deletions(-) diff --git a/config/llvm-manifest.json b/config/llvm-manifest.json index 35585da1a..e04d8e832 100644 --- a/config/llvm-manifest.json +++ b/config/llvm-manifest.json @@ -1,142 +1,142 @@ [ - { - "version": "21.1.8", - "filename": "aarch64-linux-gnu-releasedbg-lto.tar.xz", - "sha256": "5e86f5a5b13821c4b6671bf880ee22a38528ae2864c4983237a8009d1f19e63a", - "lto": true, - "asan": false, - "platform": "linux", - "arch": "arm64", - "build_type": "RelWithDebInfo" - }, - { - "version": "21.1.8", - "filename": "aarch64-linux-gnu-releasedbg.tar.xz", - "sha256": "18919751f431fa478b7ca649205f6ff2736399fa92184d4ddbf1ab5b05e2b6e7", - "lto": false, - "asan": false, - "platform": "linux", - "arch": "arm64", - "build_type": "RelWithDebInfo" - }, - { - "version": "21.1.8", - "filename": "aarch64-windows-msvc-releasedbg-lto.tar.xz", - "sha256": "bff9a9aa8bad7c2f55880c52ef7f27622f17843374317bd7e9b5e5f4dc5cee4a", - "lto": true, - "asan": false, - "platform": "windows", - "arch": "arm64", - "build_type": "RelWithDebInfo" - }, - { - "version": "21.1.8", - "filename": "aarch64-windows-msvc-releasedbg.tar.xz", - "sha256": "82d34ccd825c1f958353aec834b88f439e58bdb7be84f6482f49db1dac2b7f93", - "lto": false, - "asan": false, - "platform": "windows", - "arch": "arm64", - "build_type": "RelWithDebInfo" - }, - { - "version": "21.1.8", - "filename": "arm64-macos-clang-debug-asan.tar.xz", - "sha256": "75796bd25d7b8ca70ce162db25fe1309e5b27ef248145950076f5808e9eaa55c", - "lto": false, - "asan": true, - "platform": "macosx", - "arch": "arm64", - "build_type": "Debug" - }, - { - "version": "21.1.8", - "filename": "arm64-macos-clang-releasedbg-lto.tar.xz", - "sha256": "8440ccd51da242441f3092cab4ff450603d11bf9f53e4871a04762b6dceb4775", - "lto": true, - "asan": false, - "platform": "macosx", - "arch": "arm64", - "build_type": "RelWithDebInfo" - }, - { - "version": "21.1.8", - "filename": "arm64-macos-clang-releasedbg.tar.xz", - "sha256": "789a0ae32c7438bcea756a79d3065877bef2aee29e7e8d0cee68e1744071f655", - "lto": false, - "asan": false, - "platform": "macosx", - "arch": "arm64", - "build_type": "RelWithDebInfo" - }, - { - "version": "21.1.8", - "filename": "x64-linux-gnu-debug-asan.tar.xz", - "sha256": "66ad57bcdf63965d2567be4a4b89bbb4dc5ed5d9ddfe4a77798c72cc0c099f91", - "lto": false, - "asan": true, - "platform": "linux", - "arch": "x64", - "build_type": "Debug" - }, - { - "version": "21.1.8", - "filename": "x64-linux-gnu-releasedbg-lto.tar.xz", - "sha256": "c9cdb7a65710218741e62e77e191515d42957fa1516bbc2944e7f7fc159ecdcd", - "lto": true, - "asan": false, - "platform": "linux", - "arch": "x64", - "build_type": "RelWithDebInfo" - }, - { - "version": "21.1.8", - "filename": "x64-linux-gnu-releasedbg.tar.xz", - "sha256": "9872a9d7049570ae5f5c8bf570da5673683214fd977dbf2507742205e4c8b825", - "lto": false, - "asan": false, - "platform": "linux", - "arch": "x64", - "build_type": "RelWithDebInfo" - }, - { - "version": "21.1.8", - "filename": "x64-macos-clang-releasedbg-lto.tar.xz", - "sha256": "7ba2cde330b800c92b58feacfb0eb0b07c6c7abfcc3e4af9f179475354c1bc74", - "lto": true, - "asan": false, - "platform": "macosx", - "arch": "x64", - "build_type": "RelWithDebInfo" - }, - { - "version": "21.1.8", - "filename": "x64-macos-clang-releasedbg.tar.xz", - "sha256": "e3bab8f1428075672d27b564c906d349c6a8d5288b373923439262a33a8f3c23", - "lto": false, - "asan": false, - "platform": "macosx", - "arch": "x64", - "build_type": "RelWithDebInfo" - }, - { - "version": "21.1.8", - "filename": "x64-windows-msvc-releasedbg-lto.tar.xz", - "sha256": "f605d23a0737f346fc5ed2e4e4e5380540a7702de56f4b0c16ee205e12d47d21", - "lto": true, - "asan": false, - "platform": "windows", - "arch": "x64", - "build_type": "RelWithDebInfo" - }, - { - "version": "21.1.8", - "filename": "x64-windows-msvc-releasedbg.tar.xz", - "sha256": "d22ccd8d7042c5a1da989cd32f95627491d6e7d35433a31e7250c17830958c3c", - "lto": false, - "asan": false, - "platform": "windows", - "arch": "x64", - "build_type": "RelWithDebInfo" - } + { + "version": "21.1.8", + "filename": "aarch64-linux-gnu-releasedbg-lto.tar.xz", + "sha256": "f3444ee840b50933c23656cbee7c4d010e752ac55ca66095b97f7c0e997b13b5", + "lto": true, + "asan": false, + "platform": "linux", + "arch": "arm64", + "build_type": "RelWithDebInfo" + }, + { + "version": "21.1.8", + "filename": "aarch64-linux-gnu-releasedbg.tar.xz", + "sha256": "b9012bf059e4d8673fb564b5780e5fc78c6a2e47f5cc6a39f444d1879b42dd2a", + "lto": false, + "asan": false, + "platform": "linux", + "arch": "arm64", + "build_type": "RelWithDebInfo" + }, + { + "version": "21.1.8", + "filename": "aarch64-windows-msvc-releasedbg-lto.tar.xz", + "sha256": "8870d16141ba7f9ea12f5147b8d91329abbbaa4376cd4576667dd323d896dd08", + "lto": true, + "asan": false, + "platform": "windows", + "arch": "arm64", + "build_type": "RelWithDebInfo" + }, + { + "version": "21.1.8", + "filename": "aarch64-windows-msvc-releasedbg.tar.xz", + "sha256": "ad394e79ec85dd40f942671bb0342ffe54a103eb2baabacb773999d57d80134b", + "lto": false, + "asan": false, + "platform": "windows", + "arch": "arm64", + "build_type": "RelWithDebInfo" + }, + { + "version": "21.1.8", + "filename": "arm64-macos-clang-debug-asan.tar.xz", + "sha256": "b02d20e4f7294ee33f49a09dfdd765b3b44135e003ef50e3a760aeee39e3f993", + "lto": false, + "asan": true, + "platform": "macosx", + "arch": "arm64", + "build_type": "Debug" + }, + { + "version": "21.1.8", + "filename": "arm64-macos-clang-releasedbg-lto.tar.xz", + "sha256": "e40c21eb0d0b91d9d4ab31212a5cb01ea46707f5c29839414567857e4147604d", + "lto": true, + "asan": false, + "platform": "macosx", + "arch": "arm64", + "build_type": "RelWithDebInfo" + }, + { + "version": "21.1.8", + "filename": "arm64-macos-clang-releasedbg.tar.xz", + "sha256": "e1b01de34f0edfd41c118e4981a93afb35556ae369597e864f4a393db623b926", + "lto": false, + "asan": false, + "platform": "macosx", + "arch": "arm64", + "build_type": "RelWithDebInfo" + }, + { + "version": "21.1.8", + "filename": "x64-linux-gnu-debug-asan.tar.xz", + "sha256": "76bb82d822b5377fb5e0fac8abcfba125142e6a0acc02bb36d1fa1532a268646", + "lto": false, + "asan": true, + "platform": "linux", + "arch": "x64", + "build_type": "Debug" + }, + { + "version": "21.1.8", + "filename": "x64-linux-gnu-releasedbg-lto.tar.xz", + "sha256": "32f5edddec1e689124f045b586fb402ae30febc05203af7391b088bc8494cd53", + "lto": true, + "asan": false, + "platform": "linux", + "arch": "x64", + "build_type": "RelWithDebInfo" + }, + { + "version": "21.1.8", + "filename": "x64-linux-gnu-releasedbg.tar.xz", + "sha256": "8ba3c84f23a2a81a86c54780754a61adf99048aa2ac0dc9b9708d0f842d553de", + "lto": false, + "asan": false, + "platform": "linux", + "arch": "x64", + "build_type": "RelWithDebInfo" + }, + { + "version": "21.1.8", + "filename": "x64-macos-clang-releasedbg-lto.tar.xz", + "sha256": "97e81d6296896d7237f118f728d05291707b9e4e5791e07ce4be8aee0517505d", + "lto": true, + "asan": false, + "platform": "macosx", + "arch": "x64", + "build_type": "RelWithDebInfo" + }, + { + "version": "21.1.8", + "filename": "x64-macos-clang-releasedbg.tar.xz", + "sha256": "53c13f8e1082fa2fe2f9c05303de48cb3133bf5f24271f4b3062f1dec578159c", + "lto": false, + "asan": false, + "platform": "macosx", + "arch": "x64", + "build_type": "RelWithDebInfo" + }, + { + "version": "21.1.8", + "filename": "x64-windows-msvc-releasedbg-lto.tar.xz", + "sha256": "16bcf0e4cbc3d2b1204edd619a3837004dacea28eeff0a101c8d0212f936427d", + "lto": true, + "asan": false, + "platform": "windows", + "arch": "x64", + "build_type": "RelWithDebInfo" + }, + { + "version": "21.1.8", + "filename": "x64-windows-msvc-releasedbg.tar.xz", + "sha256": "81d31fad05e200726c8178314b0b2045c947483dddd8cb974f4c376ae5f441fa", + "lto": false, + "asan": false, + "platform": "windows", + "arch": "x64", + "build_type": "RelWithDebInfo" + } ] From 3f1157eafaf21fcd32cddd1111e6c7122fcce28b Mon Sep 17 00:00:00 2001 From: ykiko Date: Tue, 14 Apr 2026 03:28:13 +0800 Subject: [PATCH 45/52] fix(ci): reformat llvm-manifest.json with prettier Co-Authored-By: Claude Opus 4.6 --- config/llvm-manifest.json | 280 +++++++++++++++++++------------------- 1 file changed, 140 insertions(+), 140 deletions(-) diff --git a/config/llvm-manifest.json b/config/llvm-manifest.json index e04d8e832..fd9eefeb9 100644 --- a/config/llvm-manifest.json +++ b/config/llvm-manifest.json @@ -1,142 +1,142 @@ [ - { - "version": "21.1.8", - "filename": "aarch64-linux-gnu-releasedbg-lto.tar.xz", - "sha256": "f3444ee840b50933c23656cbee7c4d010e752ac55ca66095b97f7c0e997b13b5", - "lto": true, - "asan": false, - "platform": "linux", - "arch": "arm64", - "build_type": "RelWithDebInfo" - }, - { - "version": "21.1.8", - "filename": "aarch64-linux-gnu-releasedbg.tar.xz", - "sha256": "b9012bf059e4d8673fb564b5780e5fc78c6a2e47f5cc6a39f444d1879b42dd2a", - "lto": false, - "asan": false, - "platform": "linux", - "arch": "arm64", - "build_type": "RelWithDebInfo" - }, - { - "version": "21.1.8", - "filename": "aarch64-windows-msvc-releasedbg-lto.tar.xz", - "sha256": "8870d16141ba7f9ea12f5147b8d91329abbbaa4376cd4576667dd323d896dd08", - "lto": true, - "asan": false, - "platform": "windows", - "arch": "arm64", - "build_type": "RelWithDebInfo" - }, - { - "version": "21.1.8", - "filename": "aarch64-windows-msvc-releasedbg.tar.xz", - "sha256": "ad394e79ec85dd40f942671bb0342ffe54a103eb2baabacb773999d57d80134b", - "lto": false, - "asan": false, - "platform": "windows", - "arch": "arm64", - "build_type": "RelWithDebInfo" - }, - { - "version": "21.1.8", - "filename": "arm64-macos-clang-debug-asan.tar.xz", - "sha256": "b02d20e4f7294ee33f49a09dfdd765b3b44135e003ef50e3a760aeee39e3f993", - "lto": false, - "asan": true, - "platform": "macosx", - "arch": "arm64", - "build_type": "Debug" - }, - { - "version": "21.1.8", - "filename": "arm64-macos-clang-releasedbg-lto.tar.xz", - "sha256": "e40c21eb0d0b91d9d4ab31212a5cb01ea46707f5c29839414567857e4147604d", - "lto": true, - "asan": false, - "platform": "macosx", - "arch": "arm64", - "build_type": "RelWithDebInfo" - }, - { - "version": "21.1.8", - "filename": "arm64-macos-clang-releasedbg.tar.xz", - "sha256": "e1b01de34f0edfd41c118e4981a93afb35556ae369597e864f4a393db623b926", - "lto": false, - "asan": false, - "platform": "macosx", - "arch": "arm64", - "build_type": "RelWithDebInfo" - }, - { - "version": "21.1.8", - "filename": "x64-linux-gnu-debug-asan.tar.xz", - "sha256": "76bb82d822b5377fb5e0fac8abcfba125142e6a0acc02bb36d1fa1532a268646", - "lto": false, - "asan": true, - "platform": "linux", - "arch": "x64", - "build_type": "Debug" - }, - { - "version": "21.1.8", - "filename": "x64-linux-gnu-releasedbg-lto.tar.xz", - "sha256": "32f5edddec1e689124f045b586fb402ae30febc05203af7391b088bc8494cd53", - "lto": true, - "asan": false, - "platform": "linux", - "arch": "x64", - "build_type": "RelWithDebInfo" - }, - { - "version": "21.1.8", - "filename": "x64-linux-gnu-releasedbg.tar.xz", - "sha256": "8ba3c84f23a2a81a86c54780754a61adf99048aa2ac0dc9b9708d0f842d553de", - "lto": false, - "asan": false, - "platform": "linux", - "arch": "x64", - "build_type": "RelWithDebInfo" - }, - { - "version": "21.1.8", - "filename": "x64-macos-clang-releasedbg-lto.tar.xz", - "sha256": "97e81d6296896d7237f118f728d05291707b9e4e5791e07ce4be8aee0517505d", - "lto": true, - "asan": false, - "platform": "macosx", - "arch": "x64", - "build_type": "RelWithDebInfo" - }, - { - "version": "21.1.8", - "filename": "x64-macos-clang-releasedbg.tar.xz", - "sha256": "53c13f8e1082fa2fe2f9c05303de48cb3133bf5f24271f4b3062f1dec578159c", - "lto": false, - "asan": false, - "platform": "macosx", - "arch": "x64", - "build_type": "RelWithDebInfo" - }, - { - "version": "21.1.8", - "filename": "x64-windows-msvc-releasedbg-lto.tar.xz", - "sha256": "16bcf0e4cbc3d2b1204edd619a3837004dacea28eeff0a101c8d0212f936427d", - "lto": true, - "asan": false, - "platform": "windows", - "arch": "x64", - "build_type": "RelWithDebInfo" - }, - { - "version": "21.1.8", - "filename": "x64-windows-msvc-releasedbg.tar.xz", - "sha256": "81d31fad05e200726c8178314b0b2045c947483dddd8cb974f4c376ae5f441fa", - "lto": false, - "asan": false, - "platform": "windows", - "arch": "x64", - "build_type": "RelWithDebInfo" - } + { + "version": "21.1.8", + "filename": "aarch64-linux-gnu-releasedbg-lto.tar.xz", + "sha256": "f3444ee840b50933c23656cbee7c4d010e752ac55ca66095b97f7c0e997b13b5", + "lto": true, + "asan": false, + "platform": "linux", + "arch": "arm64", + "build_type": "RelWithDebInfo" + }, + { + "version": "21.1.8", + "filename": "aarch64-linux-gnu-releasedbg.tar.xz", + "sha256": "b9012bf059e4d8673fb564b5780e5fc78c6a2e47f5cc6a39f444d1879b42dd2a", + "lto": false, + "asan": false, + "platform": "linux", + "arch": "arm64", + "build_type": "RelWithDebInfo" + }, + { + "version": "21.1.8", + "filename": "aarch64-windows-msvc-releasedbg-lto.tar.xz", + "sha256": "8870d16141ba7f9ea12f5147b8d91329abbbaa4376cd4576667dd323d896dd08", + "lto": true, + "asan": false, + "platform": "windows", + "arch": "arm64", + "build_type": "RelWithDebInfo" + }, + { + "version": "21.1.8", + "filename": "aarch64-windows-msvc-releasedbg.tar.xz", + "sha256": "ad394e79ec85dd40f942671bb0342ffe54a103eb2baabacb773999d57d80134b", + "lto": false, + "asan": false, + "platform": "windows", + "arch": "arm64", + "build_type": "RelWithDebInfo" + }, + { + "version": "21.1.8", + "filename": "arm64-macos-clang-debug-asan.tar.xz", + "sha256": "b02d20e4f7294ee33f49a09dfdd765b3b44135e003ef50e3a760aeee39e3f993", + "lto": false, + "asan": true, + "platform": "macosx", + "arch": "arm64", + "build_type": "Debug" + }, + { + "version": "21.1.8", + "filename": "arm64-macos-clang-releasedbg-lto.tar.xz", + "sha256": "e40c21eb0d0b91d9d4ab31212a5cb01ea46707f5c29839414567857e4147604d", + "lto": true, + "asan": false, + "platform": "macosx", + "arch": "arm64", + "build_type": "RelWithDebInfo" + }, + { + "version": "21.1.8", + "filename": "arm64-macos-clang-releasedbg.tar.xz", + "sha256": "e1b01de34f0edfd41c118e4981a93afb35556ae369597e864f4a393db623b926", + "lto": false, + "asan": false, + "platform": "macosx", + "arch": "arm64", + "build_type": "RelWithDebInfo" + }, + { + "version": "21.1.8", + "filename": "x64-linux-gnu-debug-asan.tar.xz", + "sha256": "76bb82d822b5377fb5e0fac8abcfba125142e6a0acc02bb36d1fa1532a268646", + "lto": false, + "asan": true, + "platform": "linux", + "arch": "x64", + "build_type": "Debug" + }, + { + "version": "21.1.8", + "filename": "x64-linux-gnu-releasedbg-lto.tar.xz", + "sha256": "32f5edddec1e689124f045b586fb402ae30febc05203af7391b088bc8494cd53", + "lto": true, + "asan": false, + "platform": "linux", + "arch": "x64", + "build_type": "RelWithDebInfo" + }, + { + "version": "21.1.8", + "filename": "x64-linux-gnu-releasedbg.tar.xz", + "sha256": "8ba3c84f23a2a81a86c54780754a61adf99048aa2ac0dc9b9708d0f842d553de", + "lto": false, + "asan": false, + "platform": "linux", + "arch": "x64", + "build_type": "RelWithDebInfo" + }, + { + "version": "21.1.8", + "filename": "x64-macos-clang-releasedbg-lto.tar.xz", + "sha256": "97e81d6296896d7237f118f728d05291707b9e4e5791e07ce4be8aee0517505d", + "lto": true, + "asan": false, + "platform": "macosx", + "arch": "x64", + "build_type": "RelWithDebInfo" + }, + { + "version": "21.1.8", + "filename": "x64-macos-clang-releasedbg.tar.xz", + "sha256": "53c13f8e1082fa2fe2f9c05303de48cb3133bf5f24271f4b3062f1dec578159c", + "lto": false, + "asan": false, + "platform": "macosx", + "arch": "x64", + "build_type": "RelWithDebInfo" + }, + { + "version": "21.1.8", + "filename": "x64-windows-msvc-releasedbg-lto.tar.xz", + "sha256": "16bcf0e4cbc3d2b1204edd619a3837004dacea28eeff0a101c8d0212f936427d", + "lto": true, + "asan": false, + "platform": "windows", + "arch": "x64", + "build_type": "RelWithDebInfo" + }, + { + "version": "21.1.8", + "filename": "x64-windows-msvc-releasedbg.tar.xz", + "sha256": "81d31fad05e200726c8178314b0b2045c947483dddd8cb974f4c376ae5f441fa", + "lto": false, + "asan": false, + "platform": "windows", + "arch": "x64", + "build_type": "RelWithDebInfo" + } ] From ca1cef7e068306da7caab2c10fffd81bc805a4ae Mon Sep 17 00:00:00 2001 From: ykiko Date: Tue, 14 Apr 2026 03:52:26 +0800 Subject: [PATCH 46/52] fix(ci): add upstream clang to test-run env for macOS On macOS runners without upstream clang in PATH, clice falls back to /usr/bin/clang++ (Apple's) which emits vendor-specific flags that upstream LLVM 21 cannot parse, causing 28 unit test failures on macos-15-intel. Add clang/clangxx to the test feature for macOS platforms so test-run gets upstream clang. Co-Authored-By: Claude Opus 4.6 --- pixi.lock | 100 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ pixi.toml | 12 +++++++ 2 files changed, 112 insertions(+) diff --git a/pixi.lock b/pixi.lock index 790279032..247a3fe8b 100644 --- a/pixi.lock +++ b/pixi.lock @@ -2005,18 +2005,43 @@ environments: osx-64: - conda: https://conda.anaconda.org/conda-forge/osx-64/bzip2-1.0.8-h500dc9f_9.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/cctools-1030.6.3-llvm20_1_h8f84d09_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/cctools_impl_osx-64-1030.6.3-llvm20_1_he6ac7bf_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clang-20-20.1.8-default_hd70426c_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clang-20.1.8-default_cfg_h93fe8ef_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clang_impl_osx-64-20.1.8-default_cfg_h91eacd1_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clangxx-20.1.8-default_cfg_h41ee372_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/clangxx_impl_osx-64-20.1.8-default_cfg_h91eacd1_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/compiler-rt-20.1.8-he914875_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_osx-64-20.1.8-h138dee1_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/icu-78.3-h25d91c4_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ld64-956.6-llvm20_1_h2b71b23_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ld64_osx-64-956.6-llvm20_1_hb7237e5_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libclang-cpp20.1-20.1.8-default_hd70426c_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-22.1.3-h19cb2f5_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-devel-20.1.8-h7c275be_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/libcxx-headers-20.1.8-h707e725_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libexpat-2.7.5-hcc62823_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libffi-3.5.2-hd1f9c09_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libiconv-1.18-h57a12c2_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm20-20.1.8-h56e7563_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/liblzma-5.8.3-hbb4bfdb_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libmpdec-4.0.0-hf3981d6_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libsigtool-0.1.3-hc0f2934_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libsqlite-3.53.0-h8f8c405_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libxml2-16-2.15.2-h7a90416_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libxml2-2.15.2-hd552753_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libzlib-1.3.2-hbb4bfdb_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-openmp-22.1.3-h0d3cbff_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-tools-20-20.1.8-h879f4bc_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-tools-20.1.8-hb0207f0_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.5-h0622a9a_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.6.2-hc881268_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/python-3.14.4-h7c6738f_100_cp314.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/readline-8.3-h68b038d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/sigtool-codesign-0.1.3-hc0f2934_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/tapi-1600.0.11.8-h8d8e812_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-h7142dee_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/zstd-1.5.7-h3eecb57_6.conda @@ -2034,17 +2059,43 @@ environments: osx-arm64: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-hd037594_9.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cctools-1030.6.3-llvm20_1_h617d6d1_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cctools_impl_osx-arm64-1030.6.3-llvm20_1_hd60c58f_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-20-20.1.8-default_hf3020a7_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-20.1.8-default_cfg_hb78b91e_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang_impl_osx-arm64-20.1.8-default_cfg_h6e044b8_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clangxx-20.1.8-default_cfg_h170a469_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clangxx_impl_osx-arm64-20.1.8-default_cfg_h6e044b8_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/compiler-rt-20.1.8-h855ad52_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/compiler-rt_osx-arm64-20.1.8-he32a8d3_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-78.3-hef89b57_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ld64-956.6-llvm20_1_hb625feb_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ld64_osx-arm64-956.6-llvm20_1_h4e43e91_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang-cpp20.1-20.1.8-default_hf3020a7_14.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-22.1.3-h55c6f16_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-devel-20.1.8-h6dc3340_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/libcxx-headers-20.1.8-h707e725_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.7.5-hf6b4638_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libffi-3.5.2-hcf2aa1b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libiconv-1.18-h23cfdf5_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm20-20.1.8-h8e0c9ce_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-5.8.3-h8088a28_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libmpdec-4.0.0-h84a0fba_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsigtool-0.1.3-h98dc951_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.53.0-h1b79a29_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-16-2.15.2-h5ef1a60_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-2.15.2-h8d039ee_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzlib-1.3.2-h8088a28_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-openmp-22.1.3-hc7d1edf_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-tools-20-20.1.8-h91fd4e7_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-tools-20.1.8-h855ad52_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.5-h5e97a16_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.6.2-hd24854e_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.14.4-h4c637c5_100_cp314.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/readline-8.3-h46df422_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sigtool-codesign-0.1.3-h98dc951_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tapi-1600.0.11.8-h997e182_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h010d191_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.7-hbf9d68e_6.conda @@ -2484,6 +2535,7 @@ packages: - libllvm20 >=20.1.8,<20.2.0a0 license: APSL-2.0 license_family: Other + purls: [] size: 24331 timestamp: 1768852523211 - conda: https://conda.anaconda.org/conda-forge/osx-64/cctools_impl_osx-64-1030.6.3-llvm20_1_he6ac7bf_4.conda @@ -2523,6 +2575,7 @@ packages: - clang 20.1.* license: APSL-2.0 license_family: Other + purls: [] size: 749459 timestamp: 1768852487669 - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-20.1.8-default_cfg_hcbb2b3e_14.conda @@ -2590,6 +2643,7 @@ packages: - ld64_osx-arm64 * llvm20_1_* license: Apache-2.0 WITH LLVM-exception license_family: Apache + purls: [] size: 71104 timestamp: 1773110711411 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-20.1.8-default_hf9bcbb7_5.conda @@ -2707,6 +2761,7 @@ packages: - libllvm20 >=20.1.8,<20.2.0a0 license: Apache-2.0 WITH LLVM-exception license_family: Apache + purls: [] size: 844483 timestamp: 1773110232358 - conda: https://conda.anaconda.org/conda-forge/win-64/clang-20-20.1.8-default_hac490eb_14.conda @@ -3128,6 +3183,7 @@ packages: - llvm-tools 20.1.8.* license: Apache-2.0 WITH LLVM-exception license_family: Apache + purls: [] size: 71450 timestamp: 1773110653470 - conda: https://conda.anaconda.org/conda-forge/linux-64/clangxx-20.1.8-default_cfg_hcbb2b3e_14.conda @@ -3185,6 +3241,7 @@ packages: - libcxx-devel 20.1.* license: Apache-2.0 WITH LLVM-exception license_family: Apache + purls: [] size: 71097 timestamp: 1773111032556 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clangxx-20.1.8-default_h36137df_5.conda @@ -3271,6 +3328,7 @@ packages: - libcxx-devel 20.1.* license: Apache-2.0 WITH LLVM-exception license_family: Apache + purls: [] size: 71095 timestamp: 1773110946504 - conda: https://conda.anaconda.org/conda-forge/linux-64/cmake-4.2.1-hc85cc9f_0.conda @@ -3856,6 +3914,7 @@ packages: - __osx >=11.0 license: MIT license_family: MIT + purls: [] size: 12361647 timestamp: 1773822915649 - conda: https://conda.anaconda.org/conda-forge/win-64/icu-78.1-h637d24d_0.conda @@ -4059,6 +4118,7 @@ packages: - cctools 1030.6.3.* license: APSL-2.0 license_family: Other + purls: [] size: 21584 timestamp: 1768852506335 - conda: https://conda.anaconda.org/conda-forge/osx-64/ld64_osx-64-956.6-llvm20_1_hb7237e5_4.conda @@ -4096,6 +4156,7 @@ packages: - clang 20.1.* license: APSL-2.0 license_family: Other + purls: [] size: 1036692 timestamp: 1768852444491 - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45-default_hbd61a6d_104.conda @@ -4350,6 +4411,7 @@ packages: - libllvm20 >=20.1.8,<20.2.0a0 license: Apache-2.0 WITH LLVM-exception license_family: Apache + purls: [] size: 13960846 timestamp: 1773109960146 - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp21.1-21.1.7-default_h99862b1_2.conda @@ -4672,6 +4734,16 @@ packages: license_family: Apache size: 568094 timestamp: 1774439202359 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-22.1.3-h55c6f16_0.conda + sha256: 34cc56c627b01928e49731bcfe92338e440ab6b5952feee8f1dd16570b8b8339 + md5: acbb3f547c4aae16b19e417db0c6e5ed + depends: + - __osx >=11.0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + purls: [] + size: 570026 + timestamp: 1775565121045 - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-devel-20.1.8-h7c275be_3.conda sha256: 1883788a6cb2d879a0c88fb33f6a680c3249491087878610e77f33ee202b3b2c md5: 4c8e572b874e3f80d145d4faa46cf81b @@ -5823,6 +5895,7 @@ packages: - openssl >=3.5.4,<4.0a0 license: MIT license_family: MIT + purls: [] size: 36416 timestamp: 1767045062496 - conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.51.1-h0c1763c_0.conda @@ -6395,6 +6468,7 @@ packages: - libzlib >=1.3.1,<2.0a0 license: MIT license_family: MIT + purls: [] size: 41206 timestamp: 1772704982288 - conda: https://conda.anaconda.org/conda-forge/win-64/libxml2-2.15.1-h5d26750_0.conda @@ -6622,6 +6696,7 @@ packages: - libxml2 2.15.2 license: MIT license_family: MIT + purls: [] size: 466220 timestamp: 1772704950232 - conda: https://conda.anaconda.org/conda-forge/win-64/libxml2-16-2.15.1-h3cfd58e_1.conda @@ -6920,6 +6995,19 @@ packages: license_family: APACHE size: 285695 timestamp: 1774733561929 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-openmp-22.1.3-hc7d1edf_0.conda + sha256: 71dcf9a9df103f57a0d5b0abc2594a15c2dd3afe52f07ac2d1c471552a61fb8d + md5: 086b00b77f5f0f7ef5c2a99855650df4 + depends: + - __osx >=11.0 + constrains: + - openmp 22.1.3|22.1.3.* + - intel-openmp <0.0a0 + license: Apache-2.0 WITH LLVM-exception + license_family: APACHE + purls: [] + size: 285886 + timestamp: 1775712563398 - conda: https://conda.anaconda.org/conda-forge/linux-64/llvm-tools-20.1.8-hb700be7_1.conda sha256: 153f96ab1ee7d96214a26968c8dc107b96c65ab4d96a302fc602cd84bafc2e0c md5: 2339a92546214f7ac54557f674c41e99 @@ -8151,6 +8239,7 @@ packages: - openssl >=3.5.4,<4.0a0 license: MIT license_family: MIT + purls: [] size: 114331 timestamp: 1767045086274 - conda: https://conda.anaconda.org/conda-forge/linux-64/stylua-2.3.1-hb17b654_1.conda @@ -8263,6 +8352,17 @@ packages: license: NCSA size: 200231 timestamp: 1774947735492 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/tapi-1600.0.11.8-h997e182_2.conda + sha256: de6893e53664e769c1b1c4103a666d436e3d307c0eb6a09a164e749d116e80f7 + md5: 555070ad1e18b72de36e9ee7ed3236b3 + depends: + - libcxx >=19.0.0.a0 + - __osx >=11.0 + - ncurses >=6.5,<7.0a0 + license: NCSA + purls: [] + size: 200192 + timestamp: 1775657222120 - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h366c992_103.conda sha256: cafeec44494f842ffeca27e9c8b0c27ed714f93ac77ddadc6aaf726b5554ebac md5: cffd3bdd58090148f4cfcd831f4b26ab diff --git a/pixi.toml b/pixi.toml index 99fa38c3e..c68c1830a 100644 --- a/pixi.toml +++ b/pixi.toml @@ -81,6 +81,18 @@ scripts = ["scripts/activate_cross_linux.sh"] [feature.test.dependencies] python = ">=3.13" +# clice discovers toolchain flags by running `clang++ -###`. On macOS, the +# system Apple clang emits vendor-specific flags that upstream LLVM cannot +# parse, causing unit test failures. Providing upstream clang in PATH +# prevents fallback to /usr/bin/clang++. +[feature.test.target.osx-64.dependencies] +clang = "==20.1.8" +clangxx = "==20.1.8" + +[feature.test.target.osx-arm64.dependencies] +clang = "==20.1.8" +clangxx = "==20.1.8" + [feature.test.pypi-dependencies] pytest = "*" pytest-asyncio = ">=1.1.0" From 22f892422d29b5f277bc91faa5954dca39daf4bc Mon Sep 17 00:00:00 2001 From: ykiko Date: Tue, 14 Apr 2026 04:17:42 +0800 Subject: [PATCH 47/52] fix(ci): add lld to test-run env for macOS integration tests Integration tests use CMake with toolchain.cmake which requires -fuse-ld=lld. Without lld in the test-run environment, CMake's compiler check fails on macOS cross-compile test runners. Co-Authored-By: Claude Opus 4.6 --- pixi.lock | 2 ++ pixi.toml | 9 +++++---- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/pixi.lock b/pixi.lock index 247a3fe8b..500074406 100644 --- a/pixi.lock +++ b/pixi.lock @@ -2032,6 +2032,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/libxml2-16-2.15.2-h7a90416_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libxml2-2.15.2-hd552753_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libzlib-1.3.2-hbb4bfdb_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/lld-20.1.8-hc570667_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-openmp-22.1.3-h0d3cbff_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-tools-20-20.1.8-h879f4bc_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-tools-20.1.8-hb0207f0_1.conda @@ -2086,6 +2087,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-16-2.15.2-h5ef1a60_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-2.15.2-h8d039ee_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzlib-1.3.2-h8088a28_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lld-20.1.8-ha4b1419_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-openmp-22.1.3-hc7d1edf_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-tools-20-20.1.8-h91fd4e7_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-tools-20.1.8-h855ad52_1.conda diff --git a/pixi.toml b/pixi.toml index c68c1830a..2f9c99962 100644 --- a/pixi.toml +++ b/pixi.toml @@ -81,17 +81,18 @@ scripts = ["scripts/activate_cross_linux.sh"] [feature.test.dependencies] python = ">=3.13" -# clice discovers toolchain flags by running `clang++ -###`. On macOS, the -# system Apple clang emits vendor-specific flags that upstream LLVM cannot -# parse, causing unit test failures. Providing upstream clang in PATH -# prevents fallback to /usr/bin/clang++. +# On macOS, the system Apple clang emits vendor-specific flags that upstream +# LLVM cannot parse. Providing upstream clang + lld in PATH prevents +# fallback to /usr/bin/clang++ and satisfies toolchain.cmake's -fuse-ld=lld. [feature.test.target.osx-64.dependencies] clang = "==20.1.8" clangxx = "==20.1.8" +lld = "==20.1.8" [feature.test.target.osx-arm64.dependencies] clang = "==20.1.8" clangxx = "==20.1.8" +lld = "==20.1.8" [feature.test.pypi-dependencies] pytest = "*" From 1fbd674f6ff2ac796fdeb3693a6741f6a57cf876 Mon Sep 17 00:00:00 2001 From: ykiko Date: Sat, 18 Apr 2026 17:46:25 +0800 Subject: [PATCH 48/52] fix(ci): address cross-compile review findings - publish-clice.yml: add pixi_env matrix entries and wrap cross-compile cmake calls in `pixi run -e $ENV -- env -u LIBRARY_PATH ...` so the aarch64 linker cannot pick up conda host libs during release packaging. - build-llvm.py: move the env-var cleanup before build_native_tools so the native-tools configure isn't contaminated by target-arch link flags. - setup-llvm.py: produce a clear error when manifest entries lack the new `arch` field instead of silently returning "no match". - build-llvm.yml: upload cross-compiled clice artifacts and add a test-cross job that downloads them on native ARM/Intel runners and runs unit/integration/smoke tests. - update-llvm-version.py: add a --check mode and wire it into check-format so every PR verifies the setup_llvm(...) regex and manifest schema still match what the auto-PR job expects. - Remove decorative banner comments introduced by this branch across the workflow files, pixi.toml, and validate-llvm-components.py. Co-Authored-By: Claude Opus 4.6 --- .github/workflows/build-llvm.yml | 61 ++++++++++++++++++++++-- .github/workflows/check-format.yml | 6 +++ .github/workflows/publish-clice.yml | 18 ++++--- .github/workflows/test-cmake.yml | 4 +- pixi.toml | 1 - scripts/build-llvm.py | 13 ++--- scripts/setup-llvm.py | 13 ++++- scripts/update-llvm-version.py | 74 +++++++++++++++++++++++++---- scripts/validate-llvm-components.py | 4 +- 9 files changed, 163 insertions(+), 31 deletions(-) diff --git a/.github/workflows/build-llvm.yml b/.github/workflows/build-llvm.yml index e8f616e70..d44479774 100644 --- a/.github/workflows/build-llvm.yml +++ b/.github/workflows/build-llvm.yml @@ -28,7 +28,7 @@ jobs: fail-fast: false matrix: include: - # ── Native builds ────────────────────────────────────────────── + # Native builds - os: windows-2025 llvm_mode: RelWithDebInfo lto: OFF @@ -54,7 +54,7 @@ jobs: llvm_mode: RelWithDebInfo lto: ON - # ── Cross-compilation builds ─────────────────────────────────── + # Cross-compilation builds # macOS x64 (from arm64 macos-15) - os: macos-15 llvm_mode: RelWithDebInfo @@ -197,6 +197,17 @@ jobs: x86_64-apple-darwin) file "$BINARY" | grep -q "x86_64" ;; esac + - name: Upload cross-compiled clice for functional test + if: ${{ matrix.target_triple && matrix.lto == 'OFF' }} + uses: actions/upload-artifact@v4 + with: + name: cross-clice-${{ matrix.target_triple }}-${{ matrix.llvm_mode }} + path: | + build-clice/bin/ + build-clice/lib/ + if-no-files-found: error + retention-days: 1 + - name: Run tests if: ${{ !matrix.target_triple }} shell: bash @@ -324,7 +335,50 @@ jobs: path: ${{ env.LLVM_INSTALL_ARCHIVE }} if-no-files-found: error - # ── Upload to clice-llvm ──────────────────────────────────────────────── + test-cross: + needs: build + strategy: + fail-fast: false + matrix: + include: + - os: macos-15-intel + llvm_mode: RelWithDebInfo + target_triple: x86_64-apple-darwin + - os: ubuntu-24.04-arm + llvm_mode: RelWithDebInfo + target_triple: aarch64-linux-gnu + - os: windows-11-arm + llvm_mode: RelWithDebInfo + target_triple: aarch64-pc-windows-msvc + runs-on: ${{ matrix.os }} + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - uses: ./.github/actions/setup-pixi + with: + environments: test-run + + - name: Download cross-compiled clice + uses: actions/download-artifact@v4 + with: + name: cross-clice-${{ matrix.target_triple }}-${{ matrix.llvm_mode }} + path: build/${{ matrix.llvm_mode }}/ + + - name: Make binaries executable + if: runner.os != 'Windows' + run: chmod +x build/${{ matrix.llvm_mode }}/bin/* + + - name: Unit Test + run: pixi run -e test-run unit-test ${{ matrix.llvm_mode }} + + - name: Integration Test + run: pixi run -e test-run integration-test ${{ matrix.llvm_mode }} + + - name: Smoke Test + if: success() || failure() + run: pixi run -e test-run smoke-test ${{ matrix.llvm_mode }} + upload: needs: build if: ${{ !cancelled() && inputs.llvm_version && !inputs.skip_upload }} @@ -353,7 +407,6 @@ jobs: if-no-files-found: error compression-level: 0 - # ── Auto-create PR to update clice LLVM dependency ────────────────────── update-clice: needs: upload if: ${{ !inputs.skip_pr }} diff --git a/.github/workflows/check-format.yml b/.github/workflows/check-format.yml index 26b308d75..ffc9a52e9 100644 --- a/.github/workflows/check-format.yml +++ b/.github/workflows/check-format.yml @@ -14,6 +14,12 @@ jobs: with: environments: format + - name: Validate update-llvm-version.py can still patch package.cmake + run: | + python3 scripts/update-llvm-version.py --check \ + --manifest-dest config/llvm-manifest.json \ + --package-cmake cmake/package.cmake + - name: Run formatter run: pixi run format continue-on-error: true diff --git a/.github/workflows/publish-clice.yml b/.github/workflows/publish-clice.yml index 9a02b8624..8e483acad 100644 --- a/.github/workflows/publish-clice.yml +++ b/.github/workflows/publish-clice.yml @@ -9,7 +9,7 @@ jobs: fail-fast: false matrix: include: - # ── Native builds ────────────────────────────────────────────── + # Native builds - os: windows-2025 artifact_name: clice.zip asset_name: clice-x64-windows-msvc.zip @@ -28,9 +28,10 @@ jobs: symbol_artifact_name: clice-symbol.tar.gz symbol_asset_name: clice-arm64-macos-darwin-symbol.tar.gz - # ── Cross-compilation builds ─────────────────────────────────── + # Cross-compilation builds - os: macos-15 target_triple: x86_64-apple-darwin + pixi_env: package artifact_name: clice.tar.gz asset_name: clice-x86_64-macos-darwin.tar.gz symbol_artifact_name: clice-symbol.tar.gz @@ -38,6 +39,7 @@ jobs: - os: ubuntu-24.04 target_triple: aarch64-linux-gnu + pixi_env: cross-linux-aarch64 artifact_name: clice.tar.gz asset_name: clice-aarch64-linux-gnu.tar.gz symbol_artifact_name: clice-symbol.tar.gz @@ -45,6 +47,7 @@ jobs: - os: windows-2025 target_triple: aarch64-pc-windows-msvc + pixi_env: cross-windows-arm64 artifact_name: clice.zip asset_name: clice-aarch64-windows-msvc.zip symbol_artifact_name: clice-symbol.zip @@ -62,7 +65,7 @@ jobs: - uses: ./.github/actions/setup-pixi with: - environments: package + environments: ${{ matrix.pixi_env || 'package' }} - name: Package (native) if: ${{ !matrix.target_triple }} @@ -71,12 +74,15 @@ jobs: - name: Package (cross-compile) if: ${{ matrix.target_triple }} run: | - cmake -B build/RelWithDebInfo -G Ninja \ + ENV="${{ matrix.pixi_env }}" + pixi run -e "$ENV" -- env -u LIBRARY_PATH -u LDFLAGS -u CFLAGS -u CXXFLAGS -u CPPFLAGS \ + cmake -B build/RelWithDebInfo -G Ninja \ -DCMAKE_BUILD_TYPE=RelWithDebInfo \ -DCMAKE_TOOLCHAIN_FILE=cmake/toolchain.cmake \ -DCLICE_RELEASE=ON \ - -DCLICE_TARGET_TRIPLE=${{ matrix.target_triple }} - cmake --build build/RelWithDebInfo + "-DCLICE_TARGET_TRIPLE=${{ matrix.target_triple }}" + pixi run -e "$ENV" -- env -u LIBRARY_PATH -u LDFLAGS -u CFLAGS -u CXXFLAGS -u CPPFLAGS \ + cmake --build build/RelWithDebInfo - name: Upload Main Package to Release if: startsWith(github.ref, 'refs/tags/v') diff --git a/.github/workflows/test-cmake.yml b/.github/workflows/test-cmake.yml index 1c9e7a97e..65f226a8b 100644 --- a/.github/workflows/test-cmake.yml +++ b/.github/workflows/test-cmake.yml @@ -18,7 +18,7 @@ jobs: fail-fast: false matrix: include: - # ── Native builds ────────────────────────────────────────────── + # Native builds - os: windows-2025 build_type: RelWithDebInfo - os: ubuntu-24.04 @@ -29,7 +29,7 @@ jobs: build_type: Debug - os: macos-15 build_type: RelWithDebInfo - # ── Cross-compile (build only, tests run on native runners) ──── + # Cross-compile (build only; tests run on native runners) - os: macos-15 build_type: RelWithDebInfo target_triple: x86_64-apple-darwin diff --git a/pixi.toml b/pixi.toml index 2f9c99962..803e84da6 100644 --- a/pixi.toml +++ b/pixi.toml @@ -62,7 +62,6 @@ scripts = ["scripts/activate_linux.sh"] [feature.build.target.win-64.activation] scripts = ["scripts/activate_asan.bat"] -# ── Cross-compilation environments ─────────────────────────────────────────── # macOS x64 (from arm64): clang natively supports cross-arch, no extra deps. [feature.cross-macos-x64.target.osx-arm64.dependencies] diff --git a/scripts/build-llvm.py b/scripts/build-llvm.py index 65e9f65b7..f769d9068 100644 --- a/scripts/build-llvm.py +++ b/scripts/build-llvm.py @@ -270,6 +270,13 @@ def main(): cmake_args.append(f"-DCLICE_TARGET_TRIPLE={args.target_triple}") cmake_args.append(f"-DLLVM_HOST_TRIPLE={args.target_triple}") + # When cross-compiling, clear conda's host-platform flags so they + # don't leak into the target build (e.g. -L pointing to x86_64 libs). + # This must happen before the native-tools build too so we don't + # contaminate the native configure with target-arch link flags. + for var in ["LIBRARY_PATH", "LDFLAGS", "CFLAGS", "CXXFLAGS", "CPPFLAGS"]: + os.environ.pop(var, None) + # Cross-compilation needs native host tools (tablegen, etc.) that can # run on the build machine. macOS handles this transparently via # Rosetta 2, but Linux and Windows require a separate native build. @@ -277,12 +284,6 @@ def main(): native_bin_dir = build_native_tools(project_root, build_dir) cmake_args.append(f"-DLLVM_NATIVE_TOOL_DIR={native_bin_dir}") - # When cross-compiling, clear conda's host-platform flags so they - # don't leak into the target build (e.g. -L pointing to x86_64 libs). - if args.target_triple: - for var in ["LIBRARY_PATH", "LDFLAGS", "CFLAGS", "CXXFLAGS", "CPPFLAGS"]: - os.environ.pop(var, None) - build_dir.mkdir(exist_ok=True) print(f"\nConfiguring in {build_dir}...") diff --git a/scripts/setup-llvm.py b/scripts/setup-llvm.py index caff39903..8c530c422 100644 --- a/scripts/setup-llvm.py +++ b/scripts/setup-llvm.py @@ -60,18 +60,29 @@ def pick_artifact( arch: str, ) -> dict: base_version = version.split("+", 1)[0] + saw_missing_arch = False for entry in manifest: if entry.get("version") != version: continue if entry.get("platform") != platform.lower(): continue - if entry.get("arch") != arch: + entry_arch = entry.get("arch") + if entry_arch is None: + saw_missing_arch = True + continue + if entry_arch != arch: continue if entry.get("build_type") != build_type: continue if bool(entry.get("lto")) != is_lto: continue return entry + if saw_missing_arch: + raise RuntimeError( + f"Manifest contains entries without an 'arch' field for version={base_version}, " + f"platform={platform}. The manifest format changed to require explicit " + f"architectures; regenerate it via scripts/update-llvm-version.py." + ) raise RuntimeError( f"No matching LLVM artifact in manifest for version={base_version}, platform={platform}, " f"arch={arch}, build_type={build_type}, lto={is_lto}" diff --git a/scripts/update-llvm-version.py b/scripts/update-llvm-version.py index 9191a3774..c18f84355 100755 --- a/scripts/update-llvm-version.py +++ b/scripts/update-llvm-version.py @@ -58,19 +58,62 @@ def update_package_cmake(path: Path, version: str) -> None: print(f"Updated {path}: {old_call} -> {new_call}") +def check_package_cmake(path: Path) -> None: + """Verify package.cmake has exactly one setup_llvm(...) call that the + update script can rewrite. Used by CI to catch drift before the next bump.""" + text = path.read_text(encoding="utf-8") + matches = re.findall(r'setup_llvm\("[^"]*"\)', text) + if len(matches) == 0: + print(f"Error: no setup_llvm(...) call found in {path}", file=sys.stderr) + sys.exit(1) + if len(matches) > 1: + print( + f"Error: expected exactly 1 setup_llvm(...) call in {path}, " + f"found {len(matches)}: {matches}", + file=sys.stderr, + ) + sys.exit(1) + print(f"OK: {path} has a single setup_llvm(...) call: {matches[0]}") + + +def check_manifest(path: Path) -> None: + """Verify the manifest is a well-formed non-empty array with required fields.""" + try: + data = json.loads(path.read_text(encoding="utf-8")) + except json.JSONDecodeError as err: + print(f"Error: {path} is not valid JSON: {err}", file=sys.stderr) + sys.exit(1) + if not isinstance(data, list) or len(data) == 0: + print(f"Error: {path} must be a non-empty JSON array", file=sys.stderr) + sys.exit(1) + required = ("version", "platform", "arch", "build_type", "filename", "sha256") + for idx, entry in enumerate(data): + missing = [k for k in required if k not in entry] + if missing: + print( + f"Error: {path} entry {idx} is missing fields: {missing}", + file=sys.stderr, + ) + sys.exit(1) + print(f"OK: {path} has {len(data)} well-formed entries") + + def main() -> None: parser = argparse.ArgumentParser( description="Update LLVM version references in the clice project." ) + parser.add_argument( + "--check", + action="store_true", + help="Validate existing state without modifying files (for CI drift checks)", + ) parser.add_argument( "--version", - required=True, - help="New LLVM version string (e.g. 21.2.0)", + help="New LLVM version string (e.g. 21.2.0); required unless --check", ) parser.add_argument( "--manifest-src", - required=True, - help="Path to the source llvm-manifest.json (downloaded from build)", + help="Path to the source llvm-manifest.json; required unless --check", ) parser.add_argument( "--manifest-dest", @@ -84,18 +127,31 @@ def main() -> None: ) args = parser.parse_args() - manifest_src = Path(args.manifest_src) manifest_dest = Path(args.manifest_dest) package_cmake = Path(args.package_cmake) - if not manifest_src.is_file(): - print(f"Error: manifest source not found: {manifest_src}", file=sys.stderr) - sys.exit(1) - if not package_cmake.is_file(): print(f"Error: package.cmake not found: {package_cmake}", file=sys.stderr) sys.exit(1) + if args.check: + check_package_cmake(package_cmake) + check_manifest(manifest_dest) + print("Done (check mode).") + return + + if not args.version or not args.manifest_src: + print( + "Error: --version and --manifest-src are required unless --check is set", + file=sys.stderr, + ) + sys.exit(1) + + manifest_src = Path(args.manifest_src) + if not manifest_src.is_file(): + print(f"Error: manifest source not found: {manifest_src}", file=sys.stderr) + sys.exit(1) + copy_manifest(manifest_src, manifest_dest) update_package_cmake(package_cmake, args.version) diff --git a/scripts/validate-llvm-components.py b/scripts/validate-llvm-components.py index aa341f73e..26c804ffe 100755 --- a/scripts/validate-llvm-components.py +++ b/scripts/validate-llvm-components.py @@ -126,7 +126,7 @@ def main() -> None: print(f"Found {len(source_targets)} targets in LLVM source tree") print(f"Components file lists {len(components)} entries") - # --- Check for components that are missing from the source tree ----------- + # Check for components that are missing from the source tree. missing: list[tuple[str, list[str]]] = [] for name in components: if name not in source_targets: @@ -143,7 +143,7 @@ def main() -> None: print(f" Did you mean: {', '.join(suggestions)}?") sys.exit(1) - # --- Warn about source targets not present in the component list ---------- + # Warn about source targets not present in the component list. component_set = set(components) new_targets = sorted(source_targets - component_set - KNOWN_HEADER_TARGETS) # Filter to targets that follow LLVM/Clang naming conventions to reduce noise. From 16121f9c8f3d934713b28bff51f7c0d96b13eac9 Mon Sep 17 00:00:00 2001 From: ykiko Date: Sat, 18 Apr 2026 23:29:54 +0800 Subject: [PATCH 49/52] refactor(ci): use pixi tasks with -- passthrough for clice builds Drop the "extra" arg workaround in pixi.toml now that pixi supports verbatim passthrough via `--`. Route all CI clice builds through pixi tasks (cmake-config/cmake-build/package-config) instead of raw cmake, so LLVM-path and toolchain conventions stay centralized. Move conda-flag clearing for cross builds into per-feature activation scripts (linux/macos/windows), using `export VAR=` which reliably overrides conda values; drop the `env -u LIBRARY_PATH` CI wrappers. --- .github/workflows/benchmark.yml | 2 +- .github/workflows/build-llvm.yml | 46 ++---- .github/workflows/publish-clice.yml | 11 +- .github/workflows/test-cmake.yml | 10 +- pixi.lock | 235 +++++++++++++++++++++++----- pixi.toml | 35 +++-- scripts/activate_cross_linux.sh | 15 +- scripts/activate_cross_macos.sh | 8 + scripts/activate_cross_windows.bat | 8 + 9 files changed, 265 insertions(+), 105 deletions(-) create mode 100644 scripts/activate_cross_macos.sh create mode 100644 scripts/activate_cross_windows.bat diff --git a/.github/workflows/benchmark.yml b/.github/workflows/benchmark.yml index 49811e724..0ac4301ea 100644 --- a/.github/workflows/benchmark.yml +++ b/.github/workflows/benchmark.yml @@ -21,7 +21,7 @@ jobs: - name: Build scan_benchmark run: | - pixi run cmake-config RelWithDebInfo ON "-DCLICE_ENABLE_BENCHMARK=ON" + pixi run cmake-config RelWithDebInfo ON -- -DCLICE_ENABLE_BENCHMARK=ON cmake --build build/RelWithDebInfo --target scan_benchmark - name: Clone LLVM diff --git a/.github/workflows/build-llvm.yml b/.github/workflows/build-llvm.yml index d44479774..878dc9f76 100644 --- a/.github/workflows/build-llvm.yml +++ b/.github/workflows/build-llvm.yml @@ -159,37 +159,27 @@ jobs: if: ${{ !matrix.target_triple }} shell: bash run: | - cmake -B build -G Ninja \ - -DCMAKE_BUILD_TYPE=${{ matrix.llvm_mode }} \ - -DCMAKE_TOOLCHAIN_FILE=cmake/toolchain.cmake \ - -DCLICE_ENABLE_TEST=ON \ - -DCLICE_CI_ENVIRONMENT=ON \ - -DCLICE_ENABLE_LTO=${{ matrix.lto }} \ - -DLLVM_INSTALL_PATH=".llvm/build-install" - cmake --build build + pixi run cmake-config ${{ matrix.llvm_mode }} ON -- \ + "-DCLICE_ENABLE_LTO=${{ matrix.lto }}" \ + "-DLLVM_INSTALL_PATH=.llvm/build-install" + pixi run cmake-build ${{ matrix.llvm_mode }} - name: Build clice using installed LLVM (cross-compile) if: ${{ matrix.target_triple }} shell: bash run: | ENV="${{ matrix.pixi_env || 'package' }}" - pixi run -e "$ENV" -- env -u LIBRARY_PATH -u LDFLAGS -u CFLAGS -u CXXFLAGS -u CPPFLAGS \ - cmake -B build-clice -G Ninja \ - -DCMAKE_BUILD_TYPE=${{ matrix.llvm_mode }} \ - -DCMAKE_TOOLCHAIN_FILE=cmake/toolchain.cmake \ - -DCLICE_ENABLE_TEST=ON \ - -DCLICE_CI_ENVIRONMENT=ON \ - -DCLICE_ENABLE_LTO=${{ matrix.lto }} \ + pixi run -e "$ENV" cmake-config ${{ matrix.llvm_mode }} ON -- \ + "-DCLICE_ENABLE_LTO=${{ matrix.lto }}" \ "-DCLICE_TARGET_TRIPLE=${{ matrix.target_triple }}" \ - -DLLVM_INSTALL_PATH=".llvm/build-install" - pixi run -e "$ENV" -- env -u LIBRARY_PATH -u LDFLAGS -u CFLAGS -u CXXFLAGS -u CPPFLAGS \ - cmake --build build-clice + "-DLLVM_INSTALL_PATH=.llvm/build-install" + pixi run -e "$ENV" cmake-build ${{ matrix.llvm_mode }} - name: Verify cross-compiled binary architecture if: ${{ matrix.target_triple && runner.os != 'Windows' }} shell: bash run: | - BINARY="build-clice/bin/clice" + BINARY="build/${{ matrix.llvm_mode }}/bin/clice" echo "Binary info:" file "$BINARY" case "${{ matrix.target_triple }}" in @@ -203,8 +193,8 @@ jobs: with: name: cross-clice-${{ matrix.target_triple }}-${{ matrix.llvm_mode }} path: | - build-clice/bin/ - build-clice/lib/ + build/${{ matrix.llvm_mode }}/bin/ + build/${{ matrix.llvm_mode }}/lib/ if-no-files-found: error retention-days: 1 @@ -212,12 +202,8 @@ jobs: if: ${{ !matrix.target_triple }} shell: bash run: | - EXE_EXT="" - if [[ "${{ runner.os }}" == "Windows" ]]; then - EXE_EXT=".exe" - fi - ./build/bin/unit_tests${EXE_EXT} --test-dir="./tests/data" - pip install uv && uv run --project tests pytest -s --log-cli-level=INFO tests/integration --executable=./build/bin/clice${EXE_EXT} + pixi run unit-test ${{ matrix.llvm_mode }} + pixi run integration-test ${{ matrix.llvm_mode }} # Prune is only supported for native builds (requires linking clice to test). # Cross-compiled targets reuse the native prune manifest of the same OS. @@ -230,7 +216,7 @@ jobs: python3 scripts/prune-llvm-bin.py \ --action discover \ --install-dir ".llvm/build-install/lib" \ - --build-dir "build" \ + --build-dir "build/${{ matrix.llvm_mode }}" \ --max-attempts 60 \ --sleep-seconds 60 \ --manifest "${MANIFEST}" @@ -255,7 +241,7 @@ jobs: --action apply \ --manifest "${MANIFEST}" \ --install-dir ".llvm/build-install/lib" \ - --build-dir "build" \ + --build-dir "build/${{ matrix.llvm_mode }}" \ --gh-run-id "${{ github.run_id }}" \ --gh-artifact "llvm-pruned-libs-${{ matrix.os }}" \ --gh-download-dir "artifacts" \ @@ -275,7 +261,7 @@ jobs: --action apply \ --manifest "${MANIFEST}" \ --install-dir ".llvm/build-install/lib" \ - --build-dir "build" \ + --build-dir "build/${{ matrix.llvm_mode }}" \ --gh-run-id "${{ github.run_id }}" \ --gh-artifact "llvm-pruned-libs-${{ matrix.os }}" \ --gh-download-dir "artifacts" \ diff --git a/.github/workflows/publish-clice.yml b/.github/workflows/publish-clice.yml index 8e483acad..663c2b1a0 100644 --- a/.github/workflows/publish-clice.yml +++ b/.github/workflows/publish-clice.yml @@ -31,7 +31,7 @@ jobs: # Cross-compilation builds - os: macos-15 target_triple: x86_64-apple-darwin - pixi_env: package + pixi_env: cross-macos-x64 artifact_name: clice.tar.gz asset_name: clice-x86_64-macos-darwin.tar.gz symbol_artifact_name: clice-symbol.tar.gz @@ -75,14 +75,9 @@ jobs: if: ${{ matrix.target_triple }} run: | ENV="${{ matrix.pixi_env }}" - pixi run -e "$ENV" -- env -u LIBRARY_PATH -u LDFLAGS -u CFLAGS -u CXXFLAGS -u CPPFLAGS \ - cmake -B build/RelWithDebInfo -G Ninja \ - -DCMAKE_BUILD_TYPE=RelWithDebInfo \ - -DCMAKE_TOOLCHAIN_FILE=cmake/toolchain.cmake \ - -DCLICE_RELEASE=ON \ + pixi run -e "$ENV" package-config -- \ "-DCLICE_TARGET_TRIPLE=${{ matrix.target_triple }}" - pixi run -e "$ENV" -- env -u LIBRARY_PATH -u LDFLAGS -u CFLAGS -u CXXFLAGS -u CPPFLAGS \ - cmake --build build/RelWithDebInfo + pixi run -e "$ENV" cmake-build - name: Upload Main Package to Release if: startsWith(github.ref, 'refs/tags/v') diff --git a/.github/workflows/test-cmake.yml b/.github/workflows/test-cmake.yml index 65f226a8b..a99478617 100644 --- a/.github/workflows/test-cmake.yml +++ b/.github/workflows/test-cmake.yml @@ -81,15 +81,9 @@ jobs: shell: bash run: | ENV="${{ matrix.pixi_env || 'default' }}" - pixi run -e "$ENV" -- env -u LIBRARY_PATH -u LDFLAGS -u CFLAGS -u CXXFLAGS -u CPPFLAGS \ - cmake -B "build/${{ matrix.build_type }}" -G Ninja \ - -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} \ - -DCMAKE_TOOLCHAIN_FILE=cmake/toolchain.cmake \ - -DCLICE_ENABLE_TEST=ON \ - -DCLICE_CI_ENVIRONMENT=OFF \ + pixi run -e "$ENV" cmake-config ${{ matrix.build_type }} OFF -- \ "-DCLICE_TARGET_TRIPLE=${{ matrix.target_triple }}" - pixi run -e "$ENV" -- env -u LIBRARY_PATH -u LDFLAGS -u CFLAGS -u CXXFLAGS -u CPPFLAGS \ - cmake --build "build/${{ matrix.build_type }}" + pixi run -e "$ENV" cmake-build ${{ matrix.build_type }} - name: Upload cross-compiled binaries if: ${{ matrix.build_only }} diff --git a/pixi.lock b/pixi.lock index 500074406..775ec1cdb 100644 --- a/pixi.lock +++ b/pixi.lock @@ -58,7 +58,8 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.18-h3b78370_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm20-20.1.8-hf7376ad_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm22-22.1.3-hf7376ad_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.2-hb03c661_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.3-hb03c661_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-devel-5.8.3-hb03c661_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libmpdec-4.0.0-hb03c661_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.68.1-h877daf1_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libsanitizer-14.2.0-hed042b8_2.conda @@ -88,6 +89,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h366c992_103.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xxhash-0.8.3-hb47aa4a_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/xz-5.8.3-ha02ee65_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/xz-gpl-tools-5.8.3-ha02ee65_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/xz-tools-5.8.3-hb03c661_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb78ec9c_6.conda linux-aarch64: - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/_openmp_mutex-4.5-20_gnu.conda @@ -126,6 +130,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libllvm20-20.1.8-hfd2ba90_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libllvm22-22.1.3-hfd2ba90_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/liblzma-5.8.3-he30d5cf_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/liblzma-devel-5.8.3-he30d5cf_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libmpdec-4.0.0-he30d5cf_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libnghttp2-1.68.1-hd3077d7_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libsqlite-3.53.0-h022381a_0.conda @@ -151,6 +156,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/sysroot_linux-aarch64-2.28-h585391f_9.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/tk-8.6.13-noxft_h0dc03b3_103.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xz-5.8.3-hd704e39_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xz-gpl-tools-5.8.3-hd704e39_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xz-tools-5.8.3-he30d5cf_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/zstd-1.5.7-h85ac4a6_6.conda osx-64: - conda: https://conda.anaconda.org/conda-forge/osx-64/bzip2-1.0.8-h500dc9f_9.conda @@ -188,6 +196,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm20-20.1.8-h56e7563_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm22-22.1.3-hab754da_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/liblzma-5.8.3-hbb4bfdb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/liblzma-devel-5.8.3-hbb4bfdb_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libmpdec-4.0.0-hf3981d6_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libnghttp2-1.68.1-h70048d4_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libsigtool-0.1.3-hc0f2934_0.conda @@ -212,6 +221,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/tapi-1600.0.11.8-h8d8e812_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-h7142dee_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/xz-5.8.3-h6a5a847_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/xz-gpl-tools-5.8.3-h6a5a847_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/xz-tools-5.8.3-hbb4bfdb_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/zstd-1.5.7-h3eecb57_6.conda osx-arm64: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-hd037594_9.conda @@ -250,7 +262,8 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libiconv-1.18-h23cfdf5_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm20-20.1.8-h8e0c9ce_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm22-22.1.3-h89af1be_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-5.8.2-h8088a28_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-5.8.3-h8088a28_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-devel-5.8.3-h8088a28_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libmpdec-4.0.0-h84a0fba_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnghttp2-1.68.1-h8f3e76b_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsigtool-0.1.3-h98dc951_0.conda @@ -276,6 +289,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h010d191_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xxhash-0.8.3-haa4e116_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xz-5.8.3-hd0f0c4f_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xz-gpl-tools-5.8.3-hd0f0c4f_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xz-tools-5.8.3-h8088a28_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.7-hbf9d68e_6.conda win-64: - conda: https://conda.anaconda.org/conda-forge/win-64/bzip2-1.0.8-h0ad9c76_9.conda @@ -296,7 +312,8 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.5.2-h3d046cb_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libiconv-1.18-hc1393d2_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libllvm20-20.1.8-h830ff33_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/liblzma-5.8.2-hfd05255_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/liblzma-5.8.3-hfd05255_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/liblzma-devel-5.8.3-hfd05255_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libmpdec-4.0.0-hfd05255_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.52.0-hf5d6505_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libssh2-1.11.1-h9aa295b_0.conda @@ -317,6 +334,8 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-h41ae7f8_34.conda - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.44.35208-h818238b_34.conda - conda: https://conda.anaconda.org/conda-forge/win-64/vcomp14-14.44.35208-h818238b_34.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/xz-5.8.3-hb6c8415_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/xz-tools-5.8.3-hfd05255_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/zstd-1.5.7-h534d264_6.conda cross-macos-x64: channels: @@ -367,7 +386,8 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.18-h3b78370_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm20-20.1.8-hf7376ad_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm22-22.1.3-hf7376ad_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.2-hb03c661_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.3-hb03c661_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-devel-5.8.3-hb03c661_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libmpdec-4.0.0-hb03c661_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.68.1-h877daf1_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libsanitizer-14.2.0-hed042b8_2.conda @@ -395,6 +415,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h366c992_103.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xxhash-0.8.3-hb47aa4a_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/xz-5.8.3-ha02ee65_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/xz-gpl-tools-5.8.3-ha02ee65_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/xz-tools-5.8.3-hb03c661_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb78ec9c_6.conda linux-aarch64: - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/_openmp_mutex-4.5-20_gnu.conda @@ -433,6 +456,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libllvm20-20.1.8-hfd2ba90_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libllvm22-22.1.3-hfd2ba90_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/liblzma-5.8.3-he30d5cf_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/liblzma-devel-5.8.3-he30d5cf_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libmpdec-4.0.0-he30d5cf_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libnghttp2-1.68.1-hd3077d7_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libsqlite-3.53.0-h022381a_0.conda @@ -458,6 +482,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/sysroot_linux-aarch64-2.28-h585391f_9.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/tk-8.6.13-noxft_h0dc03b3_103.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xz-5.8.3-hd704e39_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xz-gpl-tools-5.8.3-hd704e39_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xz-tools-5.8.3-he30d5cf_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/zstd-1.5.7-h85ac4a6_6.conda osx-64: - conda: https://conda.anaconda.org/conda-forge/osx-64/bzip2-1.0.8-h500dc9f_9.conda @@ -495,6 +522,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm20-20.1.8-h56e7563_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm22-22.1.3-hab754da_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/liblzma-5.8.3-hbb4bfdb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/liblzma-devel-5.8.3-hbb4bfdb_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libmpdec-4.0.0-hf3981d6_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libnghttp2-1.68.1-h70048d4_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libsigtool-0.1.3-hc0f2934_0.conda @@ -519,6 +547,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/tapi-1600.0.11.8-h8d8e812_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-h7142dee_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/xz-5.8.3-h6a5a847_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/xz-gpl-tools-5.8.3-h6a5a847_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/xz-tools-5.8.3-hbb4bfdb_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/zstd-1.5.7-h3eecb57_6.conda osx-arm64: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-hd037594_9.conda @@ -557,7 +588,8 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libiconv-1.18-h23cfdf5_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm20-20.1.8-h8e0c9ce_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm22-22.1.3-h89af1be_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-5.8.2-h8088a28_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-5.8.3-h8088a28_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-devel-5.8.3-h8088a28_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libmpdec-4.0.0-h84a0fba_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnghttp2-1.68.1-h8f3e76b_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsigtool-0.1.3-h98dc951_0.conda @@ -583,6 +615,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h010d191_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xxhash-0.8.3-haa4e116_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xz-5.8.3-hd0f0c4f_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xz-gpl-tools-5.8.3-hd0f0c4f_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xz-tools-5.8.3-h8088a28_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.7-hbf9d68e_6.conda win-64: - conda: https://conda.anaconda.org/conda-forge/win-64/bzip2-1.0.8-h0ad9c76_9.conda @@ -603,7 +638,8 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.5.2-h3d046cb_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libiconv-1.18-hc1393d2_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libllvm20-20.1.8-h830ff33_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/liblzma-5.8.2-hfd05255_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/liblzma-5.8.3-hfd05255_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/liblzma-devel-5.8.3-hfd05255_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libmpdec-4.0.0-hfd05255_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.52.0-hf5d6505_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libssh2-1.11.1-h9aa295b_0.conda @@ -624,6 +660,8 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-h41ae7f8_34.conda - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.44.35208-h818238b_34.conda - conda: https://conda.anaconda.org/conda-forge/win-64/vcomp14-14.44.35208-h818238b_34.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/xz-5.8.3-hb6c8415_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/xz-tools-5.8.3-hfd05255_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/zstd-1.5.7-h534d264_6.conda cross-windows-arm64: channels: @@ -674,7 +712,8 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.18-h3b78370_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm20-20.1.8-hf7376ad_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm22-22.1.3-hf7376ad_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.2-hb03c661_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.3-hb03c661_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-devel-5.8.3-hb03c661_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libmpdec-4.0.0-hb03c661_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.68.1-h877daf1_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libsanitizer-14.2.0-hed042b8_2.conda @@ -702,6 +741,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h366c992_103.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xxhash-0.8.3-hb47aa4a_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/xz-5.8.3-ha02ee65_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/xz-gpl-tools-5.8.3-ha02ee65_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/xz-tools-5.8.3-hb03c661_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb78ec9c_6.conda linux-aarch64: - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/_openmp_mutex-4.5-20_gnu.conda @@ -740,6 +782,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libllvm20-20.1.8-hfd2ba90_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libllvm22-22.1.3-hfd2ba90_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/liblzma-5.8.3-he30d5cf_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/liblzma-devel-5.8.3-he30d5cf_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libmpdec-4.0.0-he30d5cf_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libnghttp2-1.68.1-hd3077d7_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libsqlite-3.53.0-h022381a_0.conda @@ -765,6 +808,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/sysroot_linux-aarch64-2.28-h585391f_9.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/tk-8.6.13-noxft_h0dc03b3_103.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xz-5.8.3-hd704e39_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xz-gpl-tools-5.8.3-hd704e39_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xz-tools-5.8.3-he30d5cf_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/zstd-1.5.7-h85ac4a6_6.conda osx-64: - conda: https://conda.anaconda.org/conda-forge/osx-64/bzip2-1.0.8-h500dc9f_9.conda @@ -802,6 +848,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm20-20.1.8-h56e7563_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm22-22.1.3-hab754da_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/liblzma-5.8.3-hbb4bfdb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/liblzma-devel-5.8.3-hbb4bfdb_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libmpdec-4.0.0-hf3981d6_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libnghttp2-1.68.1-h70048d4_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libsigtool-0.1.3-hc0f2934_0.conda @@ -826,6 +873,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/tapi-1600.0.11.8-h8d8e812_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-h7142dee_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/xz-5.8.3-h6a5a847_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/xz-gpl-tools-5.8.3-h6a5a847_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/xz-tools-5.8.3-hbb4bfdb_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/zstd-1.5.7-h3eecb57_6.conda osx-arm64: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-hd037594_9.conda @@ -864,7 +914,8 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libiconv-1.18-h23cfdf5_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm20-20.1.8-h8e0c9ce_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm22-22.1.3-h89af1be_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-5.8.2-h8088a28_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-5.8.3-h8088a28_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-devel-5.8.3-h8088a28_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libmpdec-4.0.0-h84a0fba_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnghttp2-1.68.1-h8f3e76b_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsigtool-0.1.3-h98dc951_0.conda @@ -890,6 +941,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h010d191_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xxhash-0.8.3-haa4e116_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xz-5.8.3-hd0f0c4f_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xz-gpl-tools-5.8.3-hd0f0c4f_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xz-tools-5.8.3-h8088a28_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.7-hbf9d68e_6.conda win-64: - conda: https://conda.anaconda.org/conda-forge/win-64/bzip2-1.0.8-h0ad9c76_9.conda @@ -910,7 +964,8 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.5.2-h3d046cb_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libiconv-1.18-hc1393d2_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libllvm20-20.1.8-h830ff33_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/liblzma-5.8.2-hfd05255_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/liblzma-5.8.3-hfd05255_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/liblzma-devel-5.8.3-hfd05255_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libmpdec-4.0.0-hfd05255_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.52.0-hf5d6505_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libssh2-1.11.1-h9aa295b_0.conda @@ -931,6 +986,8 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-h41ae7f8_34.conda - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.44.35208-h818238b_34.conda - conda: https://conda.anaconda.org/conda-forge/win-64/vcomp14-14.44.35208-h818238b_34.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/xz-5.8.3-hb6c8415_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/xz-tools-5.8.3-hfd05255_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/zstd-1.5.7-h534d264_6.conda default: channels: @@ -5494,17 +5551,6 @@ packages: purls: [] size: 112894 timestamp: 1749230047870 -- conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.2-hb03c661_0.conda - sha256: 755c55ebab181d678c12e49cced893598f2bab22d582fbbf4d8b83c18be207eb - md5: c7c83eecbb72d88b940c249af56c8b17 - depends: - - __glibc >=2.17,<3.0.a0 - - libgcc >=14 - constrains: - - xz 5.8.2.* - license: 0BSD - size: 113207 - timestamp: 1768752626120 - conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.3-hb03c661_0.conda sha256: ec30e52a3c1bf7d0425380a189d209a52baa03f22fb66dd3eb587acaa765bd6d md5: b88d90cad08e6bc8ad540cb310a761fb @@ -5550,16 +5596,6 @@ packages: purls: [] size: 92286 timestamp: 1749230283517 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-5.8.2-h8088a28_0.conda - sha256: 7bfc7ffb2d6a9629357a70d4eadeadb6f88fa26ebc28f606b1c1e5e5ed99dc7e - md5: 009f0d956d7bfb00de86901d16e486c7 - depends: - - __osx >=11.0 - constrains: - - xz 5.8.2.* - license: 0BSD - size: 92242 - timestamp: 1768752982486 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-5.8.3-h8088a28_0.conda sha256: 34878d87275c298f1a732c6806349125cebbf340d24c6c23727268184bba051e md5: b1fd823b5ae54fbec272cea0811bd8a9 @@ -5584,18 +5620,6 @@ packages: purls: [] size: 104935 timestamp: 1749230611612 -- conda: https://conda.anaconda.org/conda-forge/win-64/liblzma-5.8.2-hfd05255_0.conda - sha256: f25bf293f550c8ed2e0c7145eb404324611cfccff37660869d97abf526eb957c - md5: ba0bfd4c3cf73f299ffe46ff0eaeb8e3 - depends: - - ucrt >=10.0.20348.0 - - vc >=14.3,<15 - - vc14_runtime >=14.44.35208 - constrains: - - xz 5.8.2.* - license: 0BSD - size: 106169 - timestamp: 1768752763559 - conda: https://conda.anaconda.org/conda-forge/win-64/liblzma-5.8.3-hfd05255_0.conda sha256: d636d1a25234063642f9c531a7bb58d84c1c496411280a36ea000bd122f078f1 md5: 8f83619ab1588b98dd99c90b0bfc5c6d @@ -5632,6 +5656,16 @@ packages: purls: [] size: 439868 timestamp: 1749230061968 +- conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-devel-5.8.3-hb03c661_0.conda + sha256: 7858f6a173206bc8a5bdc8e75690483bb66c0dcc3809ac1cb43c561a4723623a + md5: 55c20edec8e90c4703787acaade60808 + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=14 + - liblzma 5.8.3 hb03c661_0 + license: 0BSD + size: 491429 + timestamp: 1775825511214 - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/liblzma-devel-5.8.3-he30d5cf_0.conda sha256: 584cbcebe2f8c4c3e81eb46e3ed085bc49f709a9aeb92847ac20e1aa25c4b7b6 md5: 349d74fc98742dd532de0ae6368fd19d @@ -5662,6 +5696,15 @@ packages: purls: [] size: 116244 timestamp: 1749230297170 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-devel-5.8.3-h8088a28_0.conda + sha256: 3002be39c0e98ec6cd103b0dc2963dc9e0d7cab127fb2fe9a8de9707a76ed1f0 + md5: ebe1f5418d6e2d4bbc26b2c906a0a470 + depends: + - __osx >=11.0 + - liblzma 5.8.3 h8088a28_0 + license: 0BSD + size: 118482 + timestamp: 1775825828010 - conda: https://conda.anaconda.org/conda-forge/win-64/liblzma-devel-5.8.1-h2466b09_2.conda sha256: 1ccff927a2d768403bad85e36ca3e931d96890adb4f503e1780c3412dd1e1298 md5: 42c90c4941c59f1b9f8fab627ad8ae76 @@ -5674,6 +5717,17 @@ packages: purls: [] size: 129344 timestamp: 1749230637001 +- conda: https://conda.anaconda.org/conda-forge/win-64/liblzma-devel-5.8.3-hfd05255_0.conda + sha256: 875f0535e135b9949720b80057508e14a9cb9351d4117760dacc6296f5b5704a + md5: 7845201435d0c7c0a02269c2742da1cc + depends: + - liblzma 5.8.3 hfd05255_0 + - ucrt >=10.0.20348.0 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + license: 0BSD + size: 130960 + timestamp: 1775825690054 - conda: https://conda.anaconda.org/conda-forge/linux-64/libmpdec-4.0.0-hb03c661_1.conda sha256: fe171ed5cf5959993d43ff72de7596e8ac2853e9021dec0344e583734f1e0843 md5: 2c21e66f50753a083cbe6b80f38268fa @@ -8700,6 +8754,19 @@ packages: purls: [] size: 23987 timestamp: 1749230104359 +- conda: https://conda.anaconda.org/conda-forge/linux-64/xz-5.8.3-ha02ee65_0.conda + sha256: 2553fd3ec0a1020b2ca05ca10b0036a596cb0d4bf3645922fcf69dacce0e6679 + md5: 6a1b6af49a334e4e06b9f103367762bf + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=14 + - liblzma 5.8.3 hb03c661_0 + - liblzma-devel 5.8.3 hb03c661_0 + - xz-gpl-tools 5.8.3 ha02ee65_0 + - xz-tools 5.8.3 hb03c661_0 + license: 0BSD AND LGPL-2.1-or-later AND GPL-2.0-or-later + size: 24360 + timestamp: 1775825568523 - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xz-5.8.3-hd704e39_0.conda sha256: a12cc406fc348d3b3a6c2bc6e2a1a82b2f6865d67f1f41498f7301aea77ae9c3 md5: 515cd9d9970d3addd52b8f85ee1beab9 @@ -8739,6 +8806,18 @@ packages: purls: [] size: 23995 timestamp: 1749230346887 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/xz-5.8.3-hd0f0c4f_0.conda + sha256: d5bb880876336f625523c022aa9bdc6be76a85df721d9e7b33c352f528619185 + md5: 4df12be699991b97b66a85cc46ea75b5 + depends: + - __osx >=11.0 + - liblzma 5.8.3 h8088a28_0 + - liblzma-devel 5.8.3 h8088a28_0 + - xz-gpl-tools 5.8.3 hd0f0c4f_0 + - xz-tools 5.8.3 h8088a28_0 + license: 0BSD AND LGPL-2.1-or-later AND GPL-2.0-or-later + size: 24348 + timestamp: 1775825911109 - conda: https://conda.anaconda.org/conda-forge/win-64/xz-5.8.1-h208afaa_2.conda sha256: 22289a81da4698bb8d13ac032a88a4a1f49505b2303885e1add3d8bd1a7b56e6 md5: fb3fa84ea37de9f12cc8ba730cec0bdc @@ -8753,6 +8832,19 @@ packages: purls: [] size: 24430 timestamp: 1749230691276 +- conda: https://conda.anaconda.org/conda-forge/win-64/xz-5.8.3-hb6c8415_0.conda + sha256: 2c34f766619921fd543095f26a2688b845fe2cb372b71488d232ad3612630bb7 + md5: 46f70d503d68c55c104a564928a39852 + depends: + - liblzma 5.8.3 hfd05255_0 + - liblzma-devel 5.8.3 hfd05255_0 + - ucrt >=10.0.20348.0 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + - xz-tools 5.8.3 hfd05255_0 + license: 0BSD AND LGPL-2.1-or-later AND GPL-2.0-or-later + size: 24697 + timestamp: 1775825746585 - conda: https://conda.anaconda.org/conda-forge/linux-64/xz-gpl-tools-5.8.1-hbcc6ac9_2.conda sha256: 840838dca829ec53f1160f3fca6dbfc43f2388b85f15d3e867e69109b168b87b md5: bf627c16aa26231720af037a2709ab09 @@ -8766,6 +8858,18 @@ packages: purls: [] size: 33911 timestamp: 1749230090353 +- conda: https://conda.anaconda.org/conda-forge/linux-64/xz-gpl-tools-5.8.3-ha02ee65_0.conda + sha256: 8f139666ea18dc8340a44a54056627dd4e89e242e8cd136ab2467d6dc2c192ba + md5: 8f5e2c6726c1339287a3c76a2c138ac7 + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=14 + - liblzma 5.8.3 hb03c661_0 + constrains: + - xz 5.8.3.* + license: 0BSD AND LGPL-2.1-or-later AND GPL-2.0-or-later + size: 34213 + timestamp: 1775825548743 - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xz-gpl-tools-5.8.3-hd704e39_0.conda sha256: ad964969ff1a72d8cc8d60a6bbd66ca5f79c00f2e3dec612caae1c2c5b9e2d16 md5: f357f5285cc0c4df2305dd6ccb977ec5 @@ -8802,6 +8906,17 @@ packages: purls: [] size: 34103 timestamp: 1749230329933 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/xz-gpl-tools-5.8.3-hd0f0c4f_0.conda + sha256: 0864d53202f618b4c8a5f2c38b7029f14b900b852e99b6248813303f69ccfdee + md5: 43d168a8c95a8fcdcc44c2a0a7887653 + depends: + - __osx >=11.0 + - liblzma 5.8.3 h8088a28_0 + constrains: + - xz 5.8.3.* + license: 0BSD AND LGPL-2.1-or-later AND GPL-2.0-or-later + size: 34224 + timestamp: 1775825884830 - conda: https://conda.anaconda.org/conda-forge/linux-64/xz-tools-5.8.1-hb9d3cd8_2.conda sha256: 58034f3fca491075c14e61568ad8b25de00cb3ae479de3e69be6d7ee5d3ace28 md5: 1bad2995c8f1c8075c6c331bf96e46fb @@ -8815,6 +8930,18 @@ packages: purls: [] size: 96433 timestamp: 1749230076687 +- conda: https://conda.anaconda.org/conda-forge/linux-64/xz-tools-5.8.3-hb03c661_0.conda + sha256: 162ebd76803464b8c8ebc7d45df32edf0ec717b3bf369a437ae3b0254f22dc2e + md5: b62b615caa60812640f24db3a8d0fc87 + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=14 + - liblzma 5.8.3 hb03c661_0 + constrains: + - xz 5.8.3.* + license: 0BSD AND LGPL-2.1-or-later + size: 95955 + timestamp: 1775825530484 - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xz-tools-5.8.3-he30d5cf_0.conda sha256: 86d48bb0ac214d1d72e05e765523d5847f3ccd872c142304d3c307cc95c93881 md5: 6cf7b9f879c7665749c7ddd45cc5c163 @@ -8851,6 +8978,17 @@ packages: purls: [] size: 86425 timestamp: 1749230316106 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/xz-tools-5.8.3-h8088a28_0.conda + sha256: beb7fb34d5517cce06f5f89710de7108a8ca65ed9c0324269fc0446807bcbd91 + md5: b8c47eab4e58fe7015a12ceb9d5b114c + depends: + - __osx >=11.0 + - liblzma 5.8.3 h8088a28_0 + constrains: + - xz 5.8.3.* + license: 0BSD AND LGPL-2.1-or-later + size: 85931 + timestamp: 1775825857949 - conda: https://conda.anaconda.org/conda-forge/win-64/xz-tools-5.8.1-h2466b09_2.conda sha256: 38712f0e62f61741ab69d7551fa863099f5be769bdf9fdbc28542134874b4e88 md5: e1b62ec0457e6ba10287a49854108fdb @@ -8865,6 +9003,19 @@ packages: purls: [] size: 67419 timestamp: 1749230666460 +- conda: https://conda.anaconda.org/conda-forge/win-64/xz-tools-5.8.3-hfd05255_0.conda + sha256: 96b8212ff33dd8a1df8c0f69c0ad7b3551496c3068576408c0bedf9260febae2 + md5: 01b20ff45704b888d218f31a3aa3ea2a + depends: + - liblzma 5.8.3 hfd05255_0 + - ucrt >=10.0.20348.0 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + constrains: + - xz 5.8.3.* + license: 0BSD AND LGPL-2.1-or-later + size: 68149 + timestamp: 1775825719953 - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb78ec9c_6.conda sha256: 68f0206ca6e98fea941e5717cec780ed2873ffabc0e1ed34428c061e2c6268c7 md5: 4a13eeac0b5c8e5b8ab496e6c4ddd829 diff --git a/pixi.toml b/pixi.toml index 803e84da6..f45666ee1 100644 --- a/pixi.toml +++ b/pixi.toml @@ -19,9 +19,9 @@ platforms = ["win-64", "linux-64", "osx-arm64", "osx-64", "linux-aarch64", "win- [environments] default = ["build", "test"] package = ["build", "test", "package"] -cross-macos-x64 = ["build", "cross-macos-x64"] -cross-linux-aarch64 = ["build", "cross-linux-aarch64"] -cross-windows-arm64 = ["build", "cross-windows-arm64"] +cross-macos-x64 = ["build", "package", "cross-macos-x64"] +cross-linux-aarch64 = ["build", "package", "cross-linux-aarch64"] +cross-windows-arm64 = ["build", "package", "cross-windows-arm64"] node = ["node"] format = ["format"] test-run = ["test"] @@ -65,6 +65,9 @@ scripts = ["scripts/activate_asan.bat"] # macOS x64 (from arm64): clang natively supports cross-arch, no extra deps. [feature.cross-macos-x64.target.osx-arm64.dependencies] +[feature.cross-macos-x64.target.osx-arm64.activation] +scripts = ["scripts/activate_cross_macos.sh"] + # Linux aarch64 (from x64): needs aarch64 sysroot and cross gcc for libstdc++. [feature.cross-linux-aarch64.target.linux-64.dependencies] sysroot_linux-aarch64 = "==2.17" @@ -77,6 +80,9 @@ scripts = ["scripts/activate_cross_linux.sh"] # Windows arm64 (from x64): Windows SDK on CI already includes ARM64 libs. [feature.cross-windows-arm64.target.win-64.dependencies] +[feature.cross-windows-arm64.target.win-64.activation] +scripts = ["scripts/activate_cross_windows.bat"] + [feature.test.dependencies] python = ">=3.13" @@ -102,15 +108,22 @@ lsprotocol = ">=2024.0.0" [feature.package.dependencies] xz = ">=5.8.1,<6" -[feature.package.tasks.package] +[feature.package.tasks.package-config] +args = [{ arg = "type", default = "RelWithDebInfo" }] cmd = """ -cmake -B build/RelWithDebInfo -G Ninja \ - -DCMAKE_BUILD_TYPE=RelWithDebInfo \ +cmake -B build/{{ type }} -G Ninja \ + -DCMAKE_BUILD_TYPE={{ type }} \ -DCMAKE_TOOLCHAIN_FILE=cmake/toolchain.cmake \ - -DCLICE_RELEASE=ON && \ -cmake --build build/RelWithDebInfo + -DCLICE_RELEASE=ON """ +[feature.package.tasks.package] +args = [{ arg = "type", default = "RelWithDebInfo" }] +depends-on = [ + { task = "package-config", args = ["{{ type }}"] }, + { task = "cmake-build", args = ["{{ type }}"] }, +] + # ============================================================================== # # CMAKE # # ============================================================================== # @@ -118,14 +131,13 @@ cmake --build build/RelWithDebInfo args = [ { arg = "type", default = "RelWithDebInfo" }, { arg = "ci", default = "OFF" }, - { arg = "extra", default = "" }, ] cmd = """ cmake -B build/{{ type }} -G Ninja \ -DCMAKE_BUILD_TYPE={{ type }} \ -DCMAKE_TOOLCHAIN_FILE=cmake/toolchain.cmake \ -DCLICE_ENABLE_TEST=ON \ - -DCLICE_CI_ENVIRONMENT={{ ci }} {{extra}} \ + -DCLICE_CI_ENVIRONMENT={{ ci }} """ [feature.build.tasks.cmake-build] @@ -136,10 +148,9 @@ cmd = "cmake --build build/{{ type }}" args = [ { arg = "type", default = "RelWithDebInfo" }, { arg = "ci", default = "OFF" }, - { arg = "extra", default = "" }, ] depends-on = [ - { task = "cmake-config", args = ["{{ type }}", "{{ ci }}", "{{extra}}"] }, + { task = "cmake-config", args = ["{{ type }}", "{{ ci }}"] }, { task = "cmake-build", args = ["{{ type }}"] }, ] diff --git a/scripts/activate_cross_linux.sh b/scripts/activate_cross_linux.sh index c0c0293f5..be2ed4bbd 100644 --- a/scripts/activate_cross_linux.sh +++ b/scripts/activate_cross_linux.sh @@ -1,5 +1,12 @@ #!/bin/sh -# Clear LIBRARY_PATH to prevent host x86_64 libraries from being found -# during aarch64 cross-compilation. Conda's ld_impl_linux-64 sets -# LIBRARY_PATH=$CONDA_PREFIX/lib which contains x86_64 libgcc_s.so.1. -unset LIBRARY_PATH +# Clear conda cross-gcc flags so host x86_64 paths don't leak into the +# aarch64 build. conda's gcc_linux-aarch64 activation sets +# CFLAGS/CXXFLAGS/CPPFLAGS/LDFLAGS with -isystem/-L pointing at $CONDA_PREFIX +# (x86_64 host paths). LIBRARY_PATH from ld_impl_linux-64 likewise points at +# host libs. Empty-string export reliably overrides conda-installed values +# regardless of whether pixi sources or calls this script. +export CFLAGS= +export CXXFLAGS= +export CPPFLAGS= +export LDFLAGS= +export LIBRARY_PATH= diff --git a/scripts/activate_cross_macos.sh b/scripts/activate_cross_macos.sh new file mode 100644 index 000000000..a029868fc --- /dev/null +++ b/scripts/activate_cross_macos.sh @@ -0,0 +1,8 @@ +#!/bin/sh +# Clear conda host flags so arm64 host paths don't leak into the x86_64-macos +# cross build. See scripts/activate_cross_linux.sh for rationale. +export CFLAGS= +export CXXFLAGS= +export CPPFLAGS= +export LDFLAGS= +export LIBRARY_PATH= diff --git a/scripts/activate_cross_windows.bat b/scripts/activate_cross_windows.bat new file mode 100644 index 000000000..9d151f5e4 --- /dev/null +++ b/scripts/activate_cross_windows.bat @@ -0,0 +1,8 @@ +@echo off +REM Clear conda host flags so host x64 paths don't leak into the aarch64-windows +REM cross build. See scripts/activate_cross_linux.sh for rationale. +set "CFLAGS=" +set "CXXFLAGS=" +set "CPPFLAGS=" +set "LDFLAGS=" +set "LIBRARY_PATH=" From 5dfc8be832c9d93ca60b28cfcee2bef2e5391a53 Mon Sep 17 00:00:00 2001 From: ykiko Date: Sat, 18 Apr 2026 23:44:12 +0800 Subject: [PATCH 50/52] ci: bump pixi to v0.67.0 to match local The new `--` passthrough syntax used in task invocations requires a recent pixi. Align CI with the local version used for verification. --- .github/actions/setup-pixi/action.yml | 2 +- .github/workflows/build-llvm.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/actions/setup-pixi/action.yml b/.github/actions/setup-pixi/action.yml index 5423957d7..ea1b4ae29 100644 --- a/.github/actions/setup-pixi/action.yml +++ b/.github/actions/setup-pixi/action.yml @@ -13,7 +13,7 @@ runs: - name: Setup Pixi uses: prefix-dev/setup-pixi@v0.9.3 with: - pixi-version: v0.62.0 + pixi-version: v0.67.0 environments: ${{ inputs.environments }} activate-environment: true cache: true diff --git a/.github/workflows/build-llvm.yml b/.github/workflows/build-llvm.yml index 878dc9f76..aece19ba1 100644 --- a/.github/workflows/build-llvm.yml +++ b/.github/workflows/build-llvm.yml @@ -120,7 +120,7 @@ jobs: - name: Setup Pixi uses: prefix-dev/setup-pixi@v0.9.3 with: - pixi-version: v0.59.0 + pixi-version: v0.67.0 environments: ${{ matrix.pixi_env || 'package' }} activate-environment: true cache: true From ce6cf0dea3602b5ee2d319510c4e8f18c80b2c1b Mon Sep 17 00:00:00 2001 From: ykiko Date: Sat, 18 Apr 2026 23:45:53 +0800 Subject: [PATCH 51/52] ci(build-llvm): use shared setup-pixi composite action Drop the only remaining inline `prefix-dev/setup-pixi` invocation so every workflow goes through `.github/actions/setup-pixi`. This keeps the pixi version pinned in a single place for future bumps. --- .github/workflows/build-llvm.yml | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/.github/workflows/build-llvm.yml b/.github/workflows/build-llvm.yml index aece19ba1..f93940296 100644 --- a/.github/workflows/build-llvm.yml +++ b/.github/workflows/build-llvm.yml @@ -117,14 +117,9 @@ jobs: free -h df -h - - name: Setup Pixi - uses: prefix-dev/setup-pixi@v0.9.3 + - uses: ./.github/actions/setup-pixi with: - pixi-version: v0.67.0 environments: ${{ matrix.pixi_env || 'package' }} - activate-environment: true - cache: true - locked: true - name: Clone llvm-project shell: bash From f9d5941963a5734d2c686fd3b58eaf4a47f29b08 Mon Sep 17 00:00:00 2001 From: ykiko Date: Sat, 18 Apr 2026 23:53:19 +0800 Subject: [PATCH 52/52] ci: run all test phases via `pixi run test` Add smoke-test to the `test` pixi task and collapse the per-phase workflow steps into a single `pixi run test` invocation in build-llvm and test-cmake. This fills a gap in the native build-llvm job, which previously skipped the smoke phase, and keeps the one-command form identical between CI and local dev. The collapse drops the `if: success() || failure()` guard that used to run smoke even when integration failed. That signal is minor and not worth fanning the pipeline back out for. --- .github/workflows/build-llvm.yml | 15 +++------------ .github/workflows/test-cmake.yml | 23 ++++------------------- pixi.toml | 1 + 3 files changed, 8 insertions(+), 31 deletions(-) diff --git a/.github/workflows/build-llvm.yml b/.github/workflows/build-llvm.yml index f93940296..914a81314 100644 --- a/.github/workflows/build-llvm.yml +++ b/.github/workflows/build-llvm.yml @@ -196,9 +196,7 @@ jobs: - name: Run tests if: ${{ !matrix.target_triple }} shell: bash - run: | - pixi run unit-test ${{ matrix.llvm_mode }} - pixi run integration-test ${{ matrix.llvm_mode }} + run: pixi run test ${{ matrix.llvm_mode }} # Prune is only supported for native builds (requires linking clice to test). # Cross-compiled targets reuse the native prune manifest of the same OS. @@ -350,15 +348,8 @@ jobs: if: runner.os != 'Windows' run: chmod +x build/${{ matrix.llvm_mode }}/bin/* - - name: Unit Test - run: pixi run -e test-run unit-test ${{ matrix.llvm_mode }} - - - name: Integration Test - run: pixi run -e test-run integration-test ${{ matrix.llvm_mode }} - - - name: Smoke Test - if: success() || failure() - run: pixi run -e test-run smoke-test ${{ matrix.llvm_mode }} + - name: Run tests + run: pixi run -e test-run test ${{ matrix.llvm_mode }} upload: needs: build diff --git a/.github/workflows/test-cmake.yml b/.github/workflows/test-cmake.yml index a99478617..f9ad986ce 100644 --- a/.github/workflows/test-cmake.yml +++ b/.github/workflows/test-cmake.yml @@ -96,17 +96,9 @@ jobs: if-no-files-found: error retention-days: 1 - - name: Unit Test + - name: Run tests if: ${{ !matrix.build_only }} - run: pixi run unit-test ${{ matrix.build_type }} - - - name: Integration Test - if: ${{ !matrix.build_only }} - run: pixi run integration-test ${{ matrix.build_type }} - - - name: Smoke Test - if: ${{ !matrix.build_only && (success() || failure()) }} - run: pixi run smoke-test ${{ matrix.build_type }} + run: pixi run test ${{ matrix.build_type }} - name: Print cache stats and stop server if: always() @@ -154,12 +146,5 @@ jobs: if: runner.os != 'Windows' run: chmod +x build/${{ matrix.build_type }}/bin/* - - name: Unit Test - run: pixi run -e test-run unit-test ${{ matrix.build_type }} - - - name: Integration Test - run: pixi run -e test-run integration-test ${{ matrix.build_type }} - - - name: Smoke Test - if: success() || failure() - run: pixi run -e test-run smoke-test ${{ matrix.build_type }} + - name: Run tests + run: pixi run -e test-run test ${{ matrix.build_type }} diff --git a/pixi.toml b/pixi.toml index f45666ee1..d106509ce 100644 --- a/pixi.toml +++ b/pixi.toml @@ -181,6 +181,7 @@ args = [{ arg = "type", default = "RelWithDebInfo" }] depends-on = [ { task = "unit-test", args = ["{{ type }}"] }, { task = "integration-test", args = ["{{ type }}"] }, + { task = "smoke-test", args = ["{{ type }}"] }, ] # ============================================================================== #