diff --git a/backends/pixi-build-ros/pixi.lock b/backends/pixi-build-ros/pixi.lock index 60fd5a85..04cb8169 100644 --- a/backends/pixi-build-ros/pixi.lock +++ b/backends/pixi-build-ros/pixi.lock @@ -4,6 +4,8 @@ environments: channels: - url: https://prefix.dev/pixi-build-backends/ - url: https://prefix.dev/conda-forge/ + indexes: + - https://pypi.org/simple packages: linux-64: - conda: https://prefix.dev/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2 @@ -13,13 +15,10 @@ environments: - conda: https://prefix.dev/conda-forge/linux-64/binutils_impl_linux-64-2.44-hdf8817f_2.conda - conda: https://prefix.dev/conda-forge/linux-64/bzip2-1.0.8-hda65f42_8.conda - conda: https://prefix.dev/conda-forge/noarch/ca-certificates-2025.8.3-hbd8a1cb_0.conda - - conda: https://prefix.dev/conda-forge/noarch/catkin_pkg-1.1.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/linux-64/clang-21-21.1.2-default_h99862b1_0.conda - conda: https://prefix.dev/conda-forge/linux-64/clang-21.1.2-default_h36abe19_0.conda - conda: https://prefix.dev/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda - - conda: https://prefix.dev/conda-forge/noarch/cpython-3.12.11-py312hd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/distro-1.9.0-pyhd8ed1ab_1.conda - - conda: https://prefix.dev/conda-forge/noarch/docutils-0.22.2-pyhd8ed1ab_0.conda + - conda: https://prefix.dev/conda-forge/noarch/cpython-3.14.0-py314hd8ed1ab_101.conda - conda: https://prefix.dev/conda-forge/noarch/exceptiongroup-1.3.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/linux-64/icu-75.1-he02047a_0.conda - conda: https://prefix.dev/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_1.conda @@ -36,18 +35,17 @@ environments: - conda: https://prefix.dev/conda-forge/linux-64/libiconv-1.18-h3b78370_2.conda - conda: https://prefix.dev/conda-forge/linux-64/libllvm21-21.1.2-hf7376ad_0.conda - conda: https://prefix.dev/conda-forge/linux-64/liblzma-5.8.1-hb9d3cd8_2.conda - - conda: https://prefix.dev/conda-forge/linux-64/libnsl-2.0.1-hb9d3cd8_1.conda + - conda: https://prefix.dev/conda-forge/linux-64/libmpdec-4.0.0-hb9d3cd8_0.conda - conda: https://prefix.dev/conda-forge/linux-64/libsqlite-3.50.4-h0c1763c_0.conda - conda: https://prefix.dev/conda-forge/linux-64/libstdcxx-15.1.0-h8f9b012_5.conda - conda: https://prefix.dev/conda-forge/linux-64/libstdcxx-ng-15.1.0-h4852527_5.conda - conda: https://prefix.dev/conda-forge/linux-64/libuuid-2.41.2-he9a06e4_0.conda - - conda: https://prefix.dev/conda-forge/linux-64/libxcrypt-4.4.36-hd590300_1.conda - conda: https://prefix.dev/conda-forge/linux-64/libxml2-16-2.15.0-ha9997c6_1.conda - conda: https://prefix.dev/conda-forge/linux-64/libxml2-2.15.0-h26afc86_1.conda - conda: https://prefix.dev/conda-forge/linux-64/libzlib-1.3.1-hb9d3cd8_2.conda - conda: https://prefix.dev/conda-forge/linux-64/mimalloc-3.1.5-h54a6638_0.conda - conda: https://prefix.dev/conda-forge/linux-64/mold-2.40.2-hd1b2760_1.conda - - conda: https://prefix.dev/conda-forge/linux-64/mypy-1.18.2-py312h4c3975b_0.conda + - conda: https://prefix.dev/conda-forge/linux-64/mypy-1.18.2-py314h5bd0f2a_0.conda - conda: https://prefix.dev/conda-forge/noarch/mypy_extensions-1.1.0-pyha770c72_0.conda - conda: https://prefix.dev/conda-forge/linux-64/ncurses-6.5-h2d0b736_3.conda - conda: https://prefix.dev/conda-forge/linux-64/openssl-3.5.4-h26f9b46_0.conda @@ -57,26 +55,19 @@ environments: - conda: https://prefix.dev/pixi-build-backends/noarch/pixi-build-api-version-2-h4616a5c_0.conda - conda: https://prefix.dev/conda-forge/noarch/pixi-pycharm-0.0.9-unix_hf108a03_0.conda - conda: https://prefix.dev/conda-forge/noarch/pluggy-1.6.0-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/linux-64/psutil-7.1.0-py312h4c3975b_0.conda + - conda: https://prefix.dev/conda-forge/linux-64/psutil-7.1.0-py314h5bd0f2a_0.conda - conda: https://prefix.dev/conda-forge/linux-64/py-rattler-0.15.0-py310h045cca9_1.conda - conda: https://prefix.dev/conda-forge/noarch/py_rattler-0.15.0-h88c55c7_1.conda - - conda: https://prefix.dev/conda-forge/noarch/pydantic-2.11.9-pyh3cfb1c2_0.conda - - conda: https://prefix.dev/conda-forge/linux-64/pydantic-core-2.33.2-py312h680f630_0.conda + - conda: https://prefix.dev/conda-forge/noarch/pydantic-2.12.1-pyh3cfb1c2_0.conda + - conda: https://prefix.dev/conda-forge/linux-64/pydantic-core-2.41.3-py314h2e6c369_0.conda - conda: https://prefix.dev/conda-forge/noarch/pygments-2.19.2-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/pyparsing-3.2.5-pyhcf101f3_0.conda - conda: https://prefix.dev/conda-forge/noarch/pytest-8.4.2-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/linux-64/python-3.12.11-h9e4cc4f_0_cpython.conda - - conda: https://prefix.dev/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhe01879c_2.conda - - conda: https://prefix.dev/conda-forge/noarch/python-gil-3.12.11-hd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/python_abi-3.12-8_cp312.conda + - conda: https://prefix.dev/conda-forge/linux-64/python-3.14.0-h5989046_101_cp314.conda + - conda: https://prefix.dev/conda-forge/noarch/python-gil-3.14.0-h4df99d1_101.conda + - conda: https://prefix.dev/conda-forge/noarch/python_abi-3.14-8_cp314.conda - conda: https://prefix.dev/conda-forge/noarch/pyupgrade-3.20.0-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/linux-64/pyyaml-6.0.3-py312h8a5da7c_0.conda - conda: https://prefix.dev/conda-forge/linux-64/readline-8.2-h8c095d6_2.conda - - conda: https://prefix.dev/conda-forge/noarch/rosdistro-1.0.1-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/rospkg-1.6.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/linux-64/ruff-0.13.2-ha3a3aed_0.conda - - conda: https://prefix.dev/conda-forge/noarch/setuptools-80.9.0-pyhff2d567_0.conda - - conda: https://prefix.dev/conda-forge/noarch/six-1.17.0-pyhe01879c_1.conda - conda: https://prefix.dev/conda-forge/noarch/syrupy-5.0.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/sysroot_linux-64-2.28-h4ee821c_8.conda - conda: https://prefix.dev/conda-forge/linux-64/tbb-2022.2.0-hb60516a_1.conda @@ -88,21 +79,28 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/typing-inspection-0.4.2-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda - conda: https://prefix.dev/conda-forge/noarch/tzdata-2025b-h78e105d_0.conda - - conda: https://prefix.dev/conda-forge/linux-64/yaml-0.2.5-h280c20c_3.conda - conda: https://prefix.dev/conda-forge/linux-64/zstd-1.5.7-hb8e6e7a_2.conda - - conda: . - conda: ../../py-pixi-build-backend subdir: linux-64 + - pypi: https://files.pythonhosted.org/packages/99/1b/50316bd6f95c50686b35799abebb6168d90ee18b7c03e3065f587f010f7c/catkin_pkg-1.1.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/66/dd/f95350e853a4468ec37478414fc04ae2d61dad7a947b3015c3dcc51a09b9/docutils-0.22.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/10/5e/1aa9a93198c6b64513c9d7752de7422c06402de6600a8767da1524f9570b/pyparsing-3.2.5-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/ec/57/56b9bcc3c9c6a792fcbaf139543cee77261f3651ca9da0c93f5c1221264b/python_dateutil-2.9.0.post0-py2.py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/88/f9/16491d7ed2a919954993e48aa941b200f38040928474c9e85ea9e64222c3/pyyaml-6.0.3-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/22/32/d0fbc4383a6a213d315c39dda9107f81654d9941c43d6c687e61995ec388/rosdistro-1.0.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/fa/c1/b0616243c1f922252ceb4513c22abefc1773cf372bfc0b6f7e59c2829f96/rospkg-1.6.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl + - pypi: ./ osx-arm64: - conda: https://prefix.dev/conda-forge/noarch/_python_abi3_support-1.0-hd8ed1ab_2.conda - conda: https://prefix.dev/conda-forge/noarch/annotated-types-0.7.0-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/osx-arm64/bzip2-1.0.8-hd037594_8.conda - conda: https://prefix.dev/conda-forge/noarch/ca-certificates-2025.8.3-hbd8a1cb_0.conda - - conda: https://prefix.dev/conda-forge/noarch/catkin_pkg-1.1.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/cpython-3.14.0-py314hd8ed1ab_100.conda - - conda: https://prefix.dev/conda-forge/noarch/distro-1.9.0-pyhd8ed1ab_1.conda - - conda: https://prefix.dev/conda-forge/noarch/docutils-0.22.2-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/exceptiongroup-1.3.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/osx-arm64/icu-75.1-hfee45f7_0.conda - conda: https://prefix.dev/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_1.conda @@ -127,20 +125,13 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/pydantic-2.12.0-pyh3cfb1c2_0.conda - conda: https://prefix.dev/conda-forge/osx-arm64/pydantic-core-2.41.1-py314h724159f_0.conda - conda: https://prefix.dev/conda-forge/noarch/pygments-2.19.2-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/pyparsing-3.2.5-pyhcf101f3_0.conda - conda: https://prefix.dev/conda-forge/noarch/pytest-8.4.2-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/osx-arm64/python-3.14.0-h8929636_100_cp314.conda - - conda: https://prefix.dev/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhe01879c_2.conda - conda: https://prefix.dev/conda-forge/noarch/python-gil-3.14.0-h4df99d1_100.conda - conda: https://prefix.dev/conda-forge/noarch/python_abi-3.14-8_cp314.conda - conda: https://prefix.dev/conda-forge/noarch/pyupgrade-3.20.0-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/pyyaml-6.0.3-pyh7db6752_0.conda - conda: https://prefix.dev/conda-forge/osx-arm64/readline-8.2-h1d1bf99_2.conda - - conda: https://prefix.dev/conda-forge/noarch/rosdistro-1.0.1-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/rospkg-1.6.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/osx-arm64/ruff-0.13.2-h492a034_0.conda - - conda: https://prefix.dev/conda-forge/noarch/setuptools-80.9.0-pyhff2d567_0.conda - - conda: https://prefix.dev/conda-forge/noarch/six-1.17.0-pyhe01879c_1.conda - conda: https://prefix.dev/conda-forge/noarch/syrupy-5.0.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/osx-arm64/tk-8.6.13-h892fb3f_2.conda - conda: https://prefix.dev/conda-forge/noarch/tokenize-rt-6.2.0-pyhd8ed1ab_0.conda @@ -150,21 +141,28 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/typing-inspection-0.4.2-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda - conda: https://prefix.dev/conda-forge/noarch/tzdata-2025b-h78e105d_0.conda - - conda: https://prefix.dev/conda-forge/osx-arm64/yaml-0.2.5-h925e9cb_3.conda - conda: https://prefix.dev/conda-forge/osx-arm64/zstd-1.5.7-h6491c7d_2.conda - - conda: . - conda: ../../py-pixi-build-backend subdir: osx-arm64 + - pypi: https://files.pythonhosted.org/packages/99/1b/50316bd6f95c50686b35799abebb6168d90ee18b7c03e3065f587f010f7c/catkin_pkg-1.1.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/66/dd/f95350e853a4468ec37478414fc04ae2d61dad7a947b3015c3dcc51a09b9/docutils-0.22.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/10/5e/1aa9a93198c6b64513c9d7752de7422c06402de6600a8767da1524f9570b/pyparsing-3.2.5-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/ec/57/56b9bcc3c9c6a792fcbaf139543cee77261f3651ca9da0c93f5c1221264b/python_dateutil-2.9.0.post0-py2.py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/bd/9c/4d95bb87eb2063d20db7b60faa3840c1b18025517ae857371c4dd55a6b3a/pyyaml-6.0.3-cp314-cp314-macosx_11_0_arm64.whl + - pypi: https://files.pythonhosted.org/packages/22/32/d0fbc4383a6a213d315c39dda9107f81654d9941c43d6c687e61995ec388/rosdistro-1.0.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/fa/c1/b0616243c1f922252ceb4513c22abefc1773cf372bfc0b6f7e59c2829f96/rospkg-1.6.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl + - pypi: ./ win-64: - conda: https://prefix.dev/conda-forge/noarch/_python_abi3_support-1.0-hd8ed1ab_2.conda - conda: https://prefix.dev/conda-forge/noarch/annotated-types-0.7.0-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/win-64/bzip2-1.0.8-h0ad9c76_8.conda - conda: https://prefix.dev/conda-forge/noarch/ca-certificates-2025.8.3-h4c7d964_0.conda - - conda: https://prefix.dev/conda-forge/noarch/catkin_pkg-1.1.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/cpython-3.14.0-py314hd8ed1ab_100.conda - - conda: https://prefix.dev/conda-forge/noarch/distro-1.9.0-pyhd8ed1ab_1.conda - - conda: https://prefix.dev/conda-forge/noarch/docutils-0.22.2-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/exceptiongroup-1.3.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/win-64/libexpat-2.7.1-hac47afa_0.conda @@ -187,19 +185,12 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/pydantic-2.12.0-pyh3cfb1c2_0.conda - conda: https://prefix.dev/conda-forge/win-64/pydantic-core-2.41.1-py314h49d6ca3_0.conda - conda: https://prefix.dev/conda-forge/noarch/pygments-2.19.2-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/pyparsing-3.2.5-pyhcf101f3_0.conda - conda: https://prefix.dev/conda-forge/noarch/pytest-8.4.2-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/win-64/python-3.14.0-h6fd79ff_100_cp314.conda - - conda: https://prefix.dev/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhe01879c_2.conda - conda: https://prefix.dev/conda-forge/noarch/python-gil-3.14.0-h4df99d1_100.conda - conda: https://prefix.dev/conda-forge/noarch/python_abi-3.14-8_cp314.conda - conda: https://prefix.dev/conda-forge/noarch/pyupgrade-3.20.0-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/pyyaml-6.0.3-pyh7db6752_0.conda - - conda: https://prefix.dev/conda-forge/noarch/rosdistro-1.0.1-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/rospkg-1.6.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/win-64/ruff-0.13.2-h3e3edff_0.conda - - conda: https://prefix.dev/conda-forge/noarch/setuptools-80.9.0-pyhff2d567_0.conda - - conda: https://prefix.dev/conda-forge/noarch/six-1.17.0-pyhe01879c_1.conda - conda: https://prefix.dev/conda-forge/noarch/syrupy-5.0.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/win-64/tk-8.6.13-h2c6b04d_2.conda - conda: https://prefix.dev/conda-forge/noarch/tokenize-rt-6.2.0-pyhd8ed1ab_0.conda @@ -213,11 +204,21 @@ environments: - conda: https://prefix.dev/conda-forge/win-64/vc-14.3-h41ae7f8_31.conda - conda: https://prefix.dev/conda-forge/win-64/vc14_runtime-14.44.35208-h818238b_31.conda - conda: https://prefix.dev/conda-forge/win-64/vcomp14-14.44.35208-h818238b_31.conda - - conda: https://prefix.dev/conda-forge/win-64/yaml-0.2.5-h6a83c73_3.conda - conda: https://prefix.dev/conda-forge/win-64/zstd-1.5.7-hbeecb71_2.conda - - conda: . - conda: ../../py-pixi-build-backend subdir: win-64 + - pypi: https://files.pythonhosted.org/packages/99/1b/50316bd6f95c50686b35799abebb6168d90ee18b7c03e3065f587f010f7c/catkin_pkg-1.1.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/66/dd/f95350e853a4468ec37478414fc04ae2d61dad7a947b3015c3dcc51a09b9/docutils-0.22.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/10/5e/1aa9a93198c6b64513c9d7752de7422c06402de6600a8767da1524f9570b/pyparsing-3.2.5-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/ec/57/56b9bcc3c9c6a792fcbaf139543cee77261f3651ca9da0c93f5c1221264b/python_dateutil-2.9.0.post0-py2.py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/23/20/bb6982b26a40bb43951265ba29d4c246ef0ff59c9fdcdf0ed04e0687de4d/pyyaml-6.0.3-cp314-cp314-win_amd64.whl + - pypi: https://files.pythonhosted.org/packages/22/32/d0fbc4383a6a213d315c39dda9107f81654d9941c43d6c687e61995ec388/rosdistro-1.0.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/fa/c1/b0616243c1f922252ceb4513c22abefc1773cf372bfc0b6f7e59c2829f96/rospkg-1.6.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl + - pypi: ./ lint: channels: - url: https://prefix.dev/pixi-build-backends/ @@ -293,6 +294,8 @@ environments: channels: - url: https://prefix.dev/pixi-build-backends/ - url: https://prefix.dev/conda-forge/ + indexes: + - https://pypi.org/simple packages: linux-64: - conda: https://prefix.dev/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2 @@ -302,13 +305,10 @@ environments: - conda: https://prefix.dev/conda-forge/linux-64/binutils_impl_linux-64-2.44-hdf8817f_2.conda - conda: https://prefix.dev/conda-forge/linux-64/bzip2-1.0.8-hda65f42_8.conda - conda: https://prefix.dev/conda-forge/noarch/ca-certificates-2025.8.3-hbd8a1cb_0.conda - - conda: https://prefix.dev/conda-forge/noarch/catkin_pkg-1.1.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/linux-64/clang-21-21.1.2-default_h99862b1_0.conda - conda: https://prefix.dev/conda-forge/linux-64/clang-21.1.2-default_h36abe19_0.conda - conda: https://prefix.dev/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda - - conda: https://prefix.dev/conda-forge/noarch/cpython-3.12.11-py312hd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/distro-1.9.0-pyhd8ed1ab_1.conda - - conda: https://prefix.dev/conda-forge/noarch/docutils-0.22.2-pyhd8ed1ab_0.conda + - conda: https://prefix.dev/conda-forge/noarch/cpython-3.14.0-py314hd8ed1ab_101.conda - conda: https://prefix.dev/conda-forge/noarch/exceptiongroup-1.3.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/linux-64/icu-75.1-he02047a_0.conda - conda: https://prefix.dev/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_1.conda @@ -325,18 +325,17 @@ environments: - conda: https://prefix.dev/conda-forge/linux-64/libiconv-1.18-h3b78370_2.conda - conda: https://prefix.dev/conda-forge/linux-64/libllvm21-21.1.2-hf7376ad_0.conda - conda: https://prefix.dev/conda-forge/linux-64/liblzma-5.8.1-hb9d3cd8_2.conda - - conda: https://prefix.dev/conda-forge/linux-64/libnsl-2.0.1-hb9d3cd8_1.conda + - conda: https://prefix.dev/conda-forge/linux-64/libmpdec-4.0.0-hb9d3cd8_0.conda - conda: https://prefix.dev/conda-forge/linux-64/libsqlite-3.50.4-h0c1763c_0.conda - conda: https://prefix.dev/conda-forge/linux-64/libstdcxx-15.1.0-h8f9b012_5.conda - conda: https://prefix.dev/conda-forge/linux-64/libstdcxx-ng-15.1.0-h4852527_5.conda - conda: https://prefix.dev/conda-forge/linux-64/libuuid-2.41.2-he9a06e4_0.conda - - conda: https://prefix.dev/conda-forge/linux-64/libxcrypt-4.4.36-hd590300_1.conda - conda: https://prefix.dev/conda-forge/linux-64/libxml2-16-2.15.0-ha9997c6_1.conda - conda: https://prefix.dev/conda-forge/linux-64/libxml2-2.15.0-h26afc86_1.conda - conda: https://prefix.dev/conda-forge/linux-64/libzlib-1.3.1-hb9d3cd8_2.conda - conda: https://prefix.dev/conda-forge/linux-64/mimalloc-3.1.5-h54a6638_0.conda - conda: https://prefix.dev/conda-forge/linux-64/mold-2.40.2-hd1b2760_1.conda - - conda: https://prefix.dev/conda-forge/linux-64/mypy-1.18.2-py312h4c3975b_0.conda + - conda: https://prefix.dev/conda-forge/linux-64/mypy-1.18.2-py314h5bd0f2a_0.conda - conda: https://prefix.dev/conda-forge/noarch/mypy_extensions-1.1.0-pyha770c72_0.conda - conda: https://prefix.dev/conda-forge/linux-64/ncurses-6.5-h2d0b736_3.conda - conda: https://prefix.dev/conda-forge/linux-64/openssl-3.5.4-h26f9b46_0.conda @@ -346,24 +345,17 @@ environments: - conda: https://prefix.dev/pixi-build-backends/noarch/pixi-build-api-version-2-h4616a5c_0.conda - conda: https://prefix.dev/conda-forge/noarch/pixi-pycharm-0.0.9-unix_hf108a03_0.conda - conda: https://prefix.dev/conda-forge/noarch/pluggy-1.6.0-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/linux-64/psutil-7.1.0-py312h4c3975b_0.conda + - conda: https://prefix.dev/conda-forge/linux-64/psutil-7.1.0-py314h5bd0f2a_0.conda - conda: https://prefix.dev/conda-forge/linux-64/py-rattler-0.15.0-py310h045cca9_1.conda - conda: https://prefix.dev/conda-forge/noarch/py_rattler-0.15.0-h88c55c7_1.conda - - conda: https://prefix.dev/conda-forge/noarch/pydantic-2.11.9-pyh3cfb1c2_0.conda - - conda: https://prefix.dev/conda-forge/linux-64/pydantic-core-2.33.2-py312h680f630_0.conda + - conda: https://prefix.dev/conda-forge/noarch/pydantic-2.12.1-pyh3cfb1c2_0.conda + - conda: https://prefix.dev/conda-forge/linux-64/pydantic-core-2.41.3-py314h2e6c369_0.conda - conda: https://prefix.dev/conda-forge/noarch/pygments-2.19.2-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/pyparsing-3.2.5-pyhcf101f3_0.conda - conda: https://prefix.dev/conda-forge/noarch/pytest-8.4.2-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/linux-64/python-3.12.11-h9e4cc4f_0_cpython.conda - - conda: https://prefix.dev/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhe01879c_2.conda - - conda: https://prefix.dev/conda-forge/noarch/python-gil-3.12.11-hd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/python_abi-3.12-8_cp312.conda - - conda: https://prefix.dev/conda-forge/linux-64/pyyaml-6.0.3-py312h8a5da7c_0.conda + - conda: https://prefix.dev/conda-forge/linux-64/python-3.14.0-h5989046_101_cp314.conda + - conda: https://prefix.dev/conda-forge/noarch/python-gil-3.14.0-h4df99d1_101.conda + - conda: https://prefix.dev/conda-forge/noarch/python_abi-3.14-8_cp314.conda - conda: https://prefix.dev/conda-forge/linux-64/readline-8.2-h8c095d6_2.conda - - conda: https://prefix.dev/conda-forge/noarch/rosdistro-1.0.1-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/rospkg-1.6.0-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/setuptools-80.9.0-pyhff2d567_0.conda - - conda: https://prefix.dev/conda-forge/noarch/six-1.17.0-pyhe01879c_1.conda - conda: https://prefix.dev/conda-forge/noarch/syrupy-5.0.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/sysroot_linux-64-2.28-h4ee821c_8.conda - conda: https://prefix.dev/conda-forge/linux-64/tbb-2022.2.0-hb60516a_1.conda @@ -374,21 +366,28 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/typing-inspection-0.4.2-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda - conda: https://prefix.dev/conda-forge/noarch/tzdata-2025b-h78e105d_0.conda - - conda: https://prefix.dev/conda-forge/linux-64/yaml-0.2.5-h280c20c_3.conda - conda: https://prefix.dev/conda-forge/linux-64/zstd-1.5.7-hb8e6e7a_2.conda - - conda: . - conda: ../../py-pixi-build-backend subdir: linux-64 + - pypi: https://files.pythonhosted.org/packages/99/1b/50316bd6f95c50686b35799abebb6168d90ee18b7c03e3065f587f010f7c/catkin_pkg-1.1.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/66/dd/f95350e853a4468ec37478414fc04ae2d61dad7a947b3015c3dcc51a09b9/docutils-0.22.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/10/5e/1aa9a93198c6b64513c9d7752de7422c06402de6600a8767da1524f9570b/pyparsing-3.2.5-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/ec/57/56b9bcc3c9c6a792fcbaf139543cee77261f3651ca9da0c93f5c1221264b/python_dateutil-2.9.0.post0-py2.py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/88/f9/16491d7ed2a919954993e48aa941b200f38040928474c9e85ea9e64222c3/pyyaml-6.0.3-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/22/32/d0fbc4383a6a213d315c39dda9107f81654d9941c43d6c687e61995ec388/rosdistro-1.0.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/fa/c1/b0616243c1f922252ceb4513c22abefc1773cf372bfc0b6f7e59c2829f96/rospkg-1.6.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl + - pypi: ./ osx-arm64: - conda: https://prefix.dev/conda-forge/noarch/_python_abi3_support-1.0-hd8ed1ab_2.conda - conda: https://prefix.dev/conda-forge/noarch/annotated-types-0.7.0-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/osx-arm64/bzip2-1.0.8-hd037594_8.conda - conda: https://prefix.dev/conda-forge/noarch/ca-certificates-2025.8.3-hbd8a1cb_0.conda - - conda: https://prefix.dev/conda-forge/noarch/catkin_pkg-1.1.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/cpython-3.14.0-py314hd8ed1ab_100.conda - - conda: https://prefix.dev/conda-forge/noarch/distro-1.9.0-pyhd8ed1ab_1.conda - - conda: https://prefix.dev/conda-forge/noarch/docutils-0.22.2-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/exceptiongroup-1.3.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/osx-arm64/icu-75.1-hfee45f7_0.conda - conda: https://prefix.dev/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_1.conda @@ -413,18 +412,11 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/pydantic-2.12.0-pyh3cfb1c2_0.conda - conda: https://prefix.dev/conda-forge/osx-arm64/pydantic-core-2.41.1-py314h724159f_0.conda - conda: https://prefix.dev/conda-forge/noarch/pygments-2.19.2-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/pyparsing-3.2.5-pyhcf101f3_0.conda - conda: https://prefix.dev/conda-forge/noarch/pytest-8.4.2-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/osx-arm64/python-3.14.0-h8929636_100_cp314.conda - - conda: https://prefix.dev/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhe01879c_2.conda - conda: https://prefix.dev/conda-forge/noarch/python-gil-3.14.0-h4df99d1_100.conda - conda: https://prefix.dev/conda-forge/noarch/python_abi-3.14-8_cp314.conda - - conda: https://prefix.dev/conda-forge/noarch/pyyaml-6.0.3-pyh7db6752_0.conda - conda: https://prefix.dev/conda-forge/osx-arm64/readline-8.2-h1d1bf99_2.conda - - conda: https://prefix.dev/conda-forge/noarch/rosdistro-1.0.1-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/rospkg-1.6.0-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/setuptools-80.9.0-pyhff2d567_0.conda - - conda: https://prefix.dev/conda-forge/noarch/six-1.17.0-pyhe01879c_1.conda - conda: https://prefix.dev/conda-forge/noarch/syrupy-5.0.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/osx-arm64/tk-8.6.13-h892fb3f_2.conda - conda: https://prefix.dev/conda-forge/noarch/tomli-2.2.1-pyhe01879c_2.conda @@ -433,21 +425,28 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/typing-inspection-0.4.2-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda - conda: https://prefix.dev/conda-forge/noarch/tzdata-2025b-h78e105d_0.conda - - conda: https://prefix.dev/conda-forge/osx-arm64/yaml-0.2.5-h925e9cb_3.conda - conda: https://prefix.dev/conda-forge/osx-arm64/zstd-1.5.7-h6491c7d_2.conda - - conda: . - conda: ../../py-pixi-build-backend subdir: osx-arm64 + - pypi: https://files.pythonhosted.org/packages/99/1b/50316bd6f95c50686b35799abebb6168d90ee18b7c03e3065f587f010f7c/catkin_pkg-1.1.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/66/dd/f95350e853a4468ec37478414fc04ae2d61dad7a947b3015c3dcc51a09b9/docutils-0.22.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/10/5e/1aa9a93198c6b64513c9d7752de7422c06402de6600a8767da1524f9570b/pyparsing-3.2.5-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/ec/57/56b9bcc3c9c6a792fcbaf139543cee77261f3651ca9da0c93f5c1221264b/python_dateutil-2.9.0.post0-py2.py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/bd/9c/4d95bb87eb2063d20db7b60faa3840c1b18025517ae857371c4dd55a6b3a/pyyaml-6.0.3-cp314-cp314-macosx_11_0_arm64.whl + - pypi: https://files.pythonhosted.org/packages/22/32/d0fbc4383a6a213d315c39dda9107f81654d9941c43d6c687e61995ec388/rosdistro-1.0.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/fa/c1/b0616243c1f922252ceb4513c22abefc1773cf372bfc0b6f7e59c2829f96/rospkg-1.6.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl + - pypi: ./ win-64: - conda: https://prefix.dev/conda-forge/noarch/_python_abi3_support-1.0-hd8ed1ab_2.conda - conda: https://prefix.dev/conda-forge/noarch/annotated-types-0.7.0-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/win-64/bzip2-1.0.8-h0ad9c76_8.conda - conda: https://prefix.dev/conda-forge/noarch/ca-certificates-2025.8.3-h4c7d964_0.conda - - conda: https://prefix.dev/conda-forge/noarch/catkin_pkg-1.1.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/cpython-3.14.0-py314hd8ed1ab_100.conda - - conda: https://prefix.dev/conda-forge/noarch/distro-1.9.0-pyhd8ed1ab_1.conda - - conda: https://prefix.dev/conda-forge/noarch/docutils-0.22.2-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/exceptiongroup-1.3.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/win-64/libexpat-2.7.1-hac47afa_0.conda @@ -470,17 +469,10 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/pydantic-2.12.0-pyh3cfb1c2_0.conda - conda: https://prefix.dev/conda-forge/win-64/pydantic-core-2.41.1-py314h49d6ca3_0.conda - conda: https://prefix.dev/conda-forge/noarch/pygments-2.19.2-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/pyparsing-3.2.5-pyhcf101f3_0.conda - conda: https://prefix.dev/conda-forge/noarch/pytest-8.4.2-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/win-64/python-3.14.0-h6fd79ff_100_cp314.conda - - conda: https://prefix.dev/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhe01879c_2.conda - conda: https://prefix.dev/conda-forge/noarch/python-gil-3.14.0-h4df99d1_100.conda - conda: https://prefix.dev/conda-forge/noarch/python_abi-3.14-8_cp314.conda - - conda: https://prefix.dev/conda-forge/noarch/pyyaml-6.0.3-pyh7db6752_0.conda - - conda: https://prefix.dev/conda-forge/noarch/rosdistro-1.0.1-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/rospkg-1.6.0-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/setuptools-80.9.0-pyhff2d567_0.conda - - conda: https://prefix.dev/conda-forge/noarch/six-1.17.0-pyhe01879c_1.conda - conda: https://prefix.dev/conda-forge/noarch/syrupy-5.0.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/win-64/tk-8.6.13-h2c6b04d_2.conda - conda: https://prefix.dev/conda-forge/noarch/tomli-2.2.1-pyhe01879c_2.conda @@ -493,16 +485,27 @@ environments: - conda: https://prefix.dev/conda-forge/win-64/vc-14.3-h41ae7f8_31.conda - conda: https://prefix.dev/conda-forge/win-64/vc14_runtime-14.44.35208-h818238b_31.conda - conda: https://prefix.dev/conda-forge/win-64/vcomp14-14.44.35208-h818238b_31.conda - - conda: https://prefix.dev/conda-forge/win-64/yaml-0.2.5-h6a83c73_3.conda - conda: https://prefix.dev/conda-forge/win-64/zstd-1.5.7-hbeecb71_2.conda - - conda: . - conda: ../../py-pixi-build-backend subdir: win-64 + - pypi: https://files.pythonhosted.org/packages/99/1b/50316bd6f95c50686b35799abebb6168d90ee18b7c03e3065f587f010f7c/catkin_pkg-1.1.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/66/dd/f95350e853a4468ec37478414fc04ae2d61dad7a947b3015c3dcc51a09b9/docutils-0.22.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/10/5e/1aa9a93198c6b64513c9d7752de7422c06402de6600a8767da1524f9570b/pyparsing-3.2.5-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/ec/57/56b9bcc3c9c6a792fcbaf139543cee77261f3651ca9da0c93f5c1221264b/python_dateutil-2.9.0.post0-py2.py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/23/20/bb6982b26a40bb43951265ba29d4c246ef0ff59c9fdcdf0ed04e0687de4d/pyyaml-6.0.3-cp314-cp314-win_amd64.whl + - pypi: https://files.pythonhosted.org/packages/22/32/d0fbc4383a6a213d315c39dda9107f81654d9941c43d6c687e61995ec388/rosdistro-1.0.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/fa/c1/b0616243c1f922252ceb4513c22abefc1773cf372bfc0b6f7e59c2829f96/rospkg-1.6.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl + - pypi: ./ packages: - conda: https://prefix.dev/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2 sha256: fe51de6107f9edc7aa4f786a70f4a883943bc9d39b3bb7307c04c41410990726 md5: d7c89558ba9fa0495403155b64376d81 license: None + purls: [] size: 2562 timestamp: 1578324546067 - conda: https://prefix.dev/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2 @@ -516,6 +519,7 @@ packages: - openmp_impl 9999 license: BSD-3-Clause license_family: BSD + purls: [] size: 23621 timestamp: 1650670423406 - conda: https://prefix.dev/conda-forge/noarch/_python_abi3_support-1.0-hd8ed1ab_2.conda @@ -526,6 +530,7 @@ packages: - python-gil license: MIT license_family: MIT + purls: [] size: 8191 timestamp: 1744137672556 - conda: https://prefix.dev/conda-forge/noarch/annotated-types-0.7.0-pyhd8ed1ab_1.conda @@ -536,6 +541,8 @@ packages: - typing-extensions >=4.0.0 license: MIT license_family: MIT + purls: + - pkg:pypi/annotated-types?source=hash-mapping size: 18074 timestamp: 1733247158254 - conda: https://prefix.dev/conda-forge/linux-64/binutils_impl_linux-64-2.44-hdf8817f_2.conda @@ -546,6 +553,7 @@ packages: - sysroot_linux-64 license: GPL-3.0-only license_family: GPL + purls: [] size: 3797704 timestamp: 1758810925961 - conda: https://prefix.dev/conda-forge/linux-64/bzip2-1.0.8-hda65f42_8.conda @@ -556,6 +564,7 @@ packages: - libgcc >=14 license: bzip2-1.0.6 license_family: BSD + purls: [] size: 260341 timestamp: 1757437258798 - conda: https://prefix.dev/conda-forge/osx-arm64/bzip2-1.0.8-hd037594_8.conda @@ -565,6 +574,7 @@ packages: - __osx >=11.0 license: bzip2-1.0.6 license_family: BSD + purls: [] size: 125061 timestamp: 1757437486465 - conda: https://prefix.dev/conda-forge/win-64/bzip2-1.0.8-h0ad9c76_8.conda @@ -576,6 +586,7 @@ packages: - vc14_runtime >=14.44.35208 license: bzip2-1.0.6 license_family: BSD + purls: [] size: 55977 timestamp: 1757437738856 - conda: https://prefix.dev/conda-forge/noarch/ca-certificates-2025.8.3-h4c7d964_0.conda @@ -584,6 +595,7 @@ packages: depends: - __win license: ISC + purls: [] size: 154489 timestamp: 1754210967212 - conda: https://prefix.dev/conda-forge/noarch/ca-certificates-2025.8.3-hbd8a1cb_0.conda @@ -592,22 +604,30 @@ packages: depends: - __unix license: ISC + purls: [] size: 154402 timestamp: 1754210968730 -- conda: https://prefix.dev/conda-forge/noarch/catkin_pkg-1.1.0-pyhd8ed1ab_0.conda - sha256: fe602164dc1920551e1452543e22338d55d8a879959f12598c9674cf295c6341 - md5: 3e500faf80e42f26d422d849877d48c4 - depends: +- pypi: https://files.pythonhosted.org/packages/99/1b/50316bd6f95c50686b35799abebb6168d90ee18b7c03e3065f587f010f7c/catkin_pkg-1.1.0-py3-none-any.whl + name: catkin-pkg + version: 1.1.0 + sha256: 7f5486b4f5681b5f043316ce10fc638c8d0ba8127146e797c85f4024e4356027 + requires_dist: - docutils - packaging - - pyparsing >=1.5.7 - - python >=3.10 - python-dateutil + - pyparsing - setuptools - license: BSD-3-Clause - license_family: BSD - size: 54106 - timestamp: 1757558592553 + - flake8 ; extra == 'test' + - flake8-blind-except ; extra == 'test' + - flake8-builtins ; extra == 'test' + - flake8-class-newline ; extra == 'test' + - flake8-comprehensions ; extra == 'test' + - flake8-deprecated ; extra == 'test' + - flake8-docstrings ; extra == 'test' + - flake8-import-order ; extra == 'test' + - flake8-quotes ; extra == 'test' + - pytest ; extra == 'test' + requires_python: '>=3.6' - conda: https://prefix.dev/conda-forge/linux-64/clang-21.1.2-default_h36abe19_0.conda sha256: ea83dca0a9f2b38372a05394c2dddf61909cfa5d4e17e40a44ae64b4d9e5a0c7 md5: ac71ad8b3bd77478e5cbb59131949ff0 @@ -618,6 +638,7 @@ packages: - sysroot_linux-64 license: Apache-2.0 WITH LLVM-exception license_family: Apache + purls: [] size: 24280 timestamp: 1758876115407 - conda: https://prefix.dev/conda-forge/linux-64/clang-21-21.1.2-default_h99862b1_0.conda @@ -631,6 +652,7 @@ packages: - libstdcxx >=14 license: Apache-2.0 WITH LLVM-exception license_family: Apache + purls: [] size: 828918 timestamp: 1758876066009 - conda: https://prefix.dev/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda @@ -640,18 +662,10 @@ packages: - python >=3.9 license: BSD-3-Clause license_family: BSD + purls: + - pkg:pypi/colorama?source=hash-mapping size: 27011 timestamp: 1733218222191 -- conda: https://prefix.dev/conda-forge/noarch/cpython-3.12.11-py312hd8ed1ab_0.conda - noarch: generic - sha256: 7e7bc8e73a2f3736444a8564cbece7216464c00f0bc38e604b0c792ff60d621a - md5: e5279009e7a7f7edd3cd2880c502b3cc - depends: - - python >=3.12,<3.13.0a0 - - python_abi * *_cp312 - license: Python-2.0 - size: 45852 - timestamp: 1749047748072 - conda: https://prefix.dev/conda-forge/noarch/cpython-3.14.0-py314hd8ed1ab_100.conda noarch: generic sha256: 7ecfed30abd3f27e950084bf53171cb70a5560b7dcd734a37f15e33a51d95dee @@ -660,25 +674,30 @@ packages: - python >=3.14,<3.15.0a0 - python_abi * *_cp314 license: Python-2.0 + purls: [] size: 48961 timestamp: 1759867443910 -- conda: https://prefix.dev/conda-forge/noarch/distro-1.9.0-pyhd8ed1ab_1.conda - sha256: 5603c7d0321963bb9b4030eadabc3fd7ca6103a38475b4e0ed13ed6d97c86f4e - md5: 0a2014fd9860f8b1eaa0b1f3d3771a08 - depends: - - python >=3.9 - license: Apache-2.0 - license_family: APACHE - size: 41773 - timestamp: 1734729953882 -- conda: https://prefix.dev/conda-forge/noarch/docutils-0.22.2-pyhd8ed1ab_0.conda - sha256: dd02330f2ecca4a489a001e5ec66ee8aa50773dc2c621c8fc7053b454d9a27b2 - md5: ba6a7a1c262587d333761b0cda2bbd28 +- conda: https://prefix.dev/conda-forge/noarch/cpython-3.14.0-py314hd8ed1ab_101.conda + noarch: generic + sha256: 8db51bbd02b4fb538dd2681ddd097a77f8ccf47016fcf59163911d8b8241d4df + md5: d1caec8d6086bcd2c30dfdd0af222d2d depends: - - python >=3.10 - license: CC-PDDC AND BSD-3-Clause AND BSD-2-Clause AND ZPL-2.1 - size: 437394 - timestamp: 1758409808966 + - python >=3.14,<3.15.0a0 + - python_abi * *_cp314 + license: Python-2.0 + purls: [] + size: 49179 + timestamp: 1760298337556 +- pypi: https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl + name: distro + version: 1.9.0 + sha256: 7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2 + requires_python: '>=3.6' +- pypi: https://files.pythonhosted.org/packages/66/dd/f95350e853a4468ec37478414fc04ae2d61dad7a947b3015c3dcc51a09b9/docutils-0.22.2-py3-none-any.whl + name: docutils + version: 0.22.2 + sha256: b0e98d679283fc3bb0ead8a5da7f501baa632654e7056e9c5846842213d674d8 + requires_python: '>=3.9' - conda: https://prefix.dev/conda-forge/noarch/exceptiongroup-1.3.0-pyhd8ed1ab_0.conda sha256: ce61f4f99401a4bd455b89909153b40b9c823276aefcbb06f2044618696009ca md5: 72e42d28960d875c7654614f8b50939a @@ -686,6 +705,8 @@ packages: - python >=3.9 - typing_extensions >=4.6.0 license: MIT and PSF-2.0 + purls: + - pkg:pypi/exceptiongroup?source=hash-mapping size: 21284 timestamp: 1746947398083 - conda: https://prefix.dev/conda-forge/linux-64/icu-75.1-he02047a_0.conda @@ -697,6 +718,7 @@ packages: - libstdcxx-ng >=12 license: MIT license_family: MIT + purls: [] size: 12129203 timestamp: 1720853576813 - conda: https://prefix.dev/conda-forge/osx-arm64/icu-75.1-hfee45f7_0.conda @@ -706,6 +728,7 @@ packages: - __osx >=11.0 license: MIT license_family: MIT + purls: [] size: 11857802 timestamp: 1720853997952 - conda: https://prefix.dev/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_1.conda @@ -715,6 +738,8 @@ packages: - python >=3.9 license: MIT license_family: MIT + purls: + - pkg:pypi/iniconfig?source=hash-mapping size: 11474 timestamp: 1733223232820 - conda: https://prefix.dev/conda-forge/noarch/kernel-headers_linux-64-4.18.0-he073ed8_8.conda @@ -724,6 +749,7 @@ packages: - sysroot_linux-64 ==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: 1272697 timestamp: 1752669126073 - conda: https://prefix.dev/conda-forge/linux-64/ld_impl_linux-64-2.44-ha97dd6f_2.conda @@ -735,6 +761,7 @@ packages: - binutils_impl_linux-64 2.44 license: GPL-3.0-only license_family: GPL + purls: [] size: 747158 timestamp: 1758810907507 - conda: https://prefix.dev/conda-forge/linux-64/libclang-cpp21.1-21.1.2-default_h99862b1_0.conda @@ -747,6 +774,7 @@ packages: - libstdcxx >=14 license: Apache-2.0 WITH LLVM-exception license_family: Apache + purls: [] size: 21082467 timestamp: 1758875974778 - conda: https://prefix.dev/conda-forge/linux-64/libexpat-2.7.1-hecca717_0.conda @@ -759,6 +787,7 @@ packages: - expat 2.7.1.* license: MIT license_family: MIT + purls: [] size: 74811 timestamp: 1752719572741 - conda: https://prefix.dev/conda-forge/osx-arm64/libexpat-2.7.1-hec049ff_0.conda @@ -770,6 +799,7 @@ packages: - expat 2.7.1.* license: MIT license_family: MIT + purls: [] size: 65971 timestamp: 1752719657566 - conda: https://prefix.dev/conda-forge/win-64/libexpat-2.7.1-hac47afa_0.conda @@ -783,6 +813,7 @@ packages: - expat 2.7.1.* license: MIT license_family: MIT + purls: [] size: 141322 timestamp: 1752719767870 - conda: https://prefix.dev/conda-forge/linux-64/libffi-3.4.6-h2dba641_1.conda @@ -793,6 +824,7 @@ packages: - libgcc >=13 license: MIT license_family: MIT + purls: [] size: 57433 timestamp: 1743434498161 - conda: https://prefix.dev/conda-forge/osx-arm64/libffi-3.4.6-h1da3d7d_1.conda @@ -802,6 +834,7 @@ packages: - __osx >=11.0 license: MIT license_family: MIT + purls: [] size: 39839 timestamp: 1743434670405 - conda: https://prefix.dev/conda-forge/win-64/libffi-3.4.6-h537db12_1.conda @@ -813,6 +846,7 @@ packages: - vc14_runtime >=14.29.30139 license: MIT license_family: MIT + purls: [] size: 44978 timestamp: 1743435053850 - conda: https://prefix.dev/conda-forge/linux-64/libgcc-15.1.0-h767d61c_5.conda @@ -826,6 +860,7 @@ packages: - libgcc-ng ==15.1.0=*_5 license: GPL-3.0-only WITH GCC-exception-3.1 license_family: GPL + purls: [] size: 824191 timestamp: 1757042543820 - conda: https://prefix.dev/conda-forge/noarch/libgcc-devel_linux-64-15.1.0-h4c094af_105.conda @@ -835,6 +870,7 @@ packages: - __unix license: GPL-3.0-only WITH GCC-exception-3.1 license_family: GPL + purls: [] size: 2728198 timestamp: 1757042471636 - conda: https://prefix.dev/conda-forge/linux-64/libgcc-ng-15.1.0-h69a702a_5.conda @@ -844,6 +880,7 @@ packages: - libgcc 15.1.0 h767d61c_5 license: GPL-3.0-only WITH GCC-exception-3.1 license_family: GPL + purls: [] size: 29187 timestamp: 1757042549554 - conda: https://prefix.dev/conda-forge/linux-64/libgomp-15.1.0-h767d61c_5.conda @@ -853,6 +890,7 @@ packages: - __glibc >=2.17,<3.0.a0 license: GPL-3.0-only WITH GCC-exception-3.1 license_family: GPL + purls: [] size: 447215 timestamp: 1757042483384 - conda: https://prefix.dev/conda-forge/linux-64/libhwloc-2.12.1-default_h7f8ec31_1002.conda @@ -866,6 +904,7 @@ packages: - libxml2-16 >=2.14.6 license: BSD-3-Clause license_family: BSD + purls: [] size: 2450642 timestamp: 1757624375958 - conda: https://prefix.dev/conda-forge/linux-64/libiconv-1.18-h3b78370_2.conda @@ -875,6 +914,7 @@ packages: - __glibc >=2.17,<3.0.a0 - libgcc >=14 license: LGPL-2.1-only + purls: [] size: 790176 timestamp: 1754908768807 - conda: https://prefix.dev/conda-forge/linux-64/libllvm21-21.1.2-hf7376ad_0.conda @@ -890,6 +930,7 @@ packages: - zstd >=1.5.7,<1.6.0a0 license: Apache-2.0 WITH LLVM-exception license_family: Apache + purls: [] size: 44347174 timestamp: 1758823362425 - conda: https://prefix.dev/conda-forge/linux-64/liblzma-5.8.1-hb9d3cd8_2.conda @@ -901,6 +942,7 @@ packages: constrains: - xz 5.8.1.* license: 0BSD + purls: [] size: 112894 timestamp: 1749230047870 - conda: https://prefix.dev/conda-forge/osx-arm64/liblzma-5.8.1-h39f12f2_2.conda @@ -911,6 +953,7 @@ packages: constrains: - xz 5.8.1.* license: 0BSD + purls: [] size: 92286 timestamp: 1749230283517 - conda: https://prefix.dev/conda-forge/win-64/liblzma-5.8.1-h2466b09_2.conda @@ -923,6 +966,7 @@ packages: constrains: - xz 5.8.1.* license: 0BSD + purls: [] size: 104935 timestamp: 1749230611612 - conda: https://prefix.dev/conda-forge/linux-64/libmpdec-4.0.0-hb9d3cd8_0.conda @@ -933,6 +977,7 @@ packages: - libgcc >=13 license: BSD-2-Clause license_family: BSD + purls: [] size: 91183 timestamp: 1748393666725 - conda: https://prefix.dev/conda-forge/osx-arm64/libmpdec-4.0.0-h5505292_0.conda @@ -942,6 +987,7 @@ packages: - __osx >=11.0 license: BSD-2-Clause license_family: BSD + purls: [] size: 71829 timestamp: 1748393749336 - conda: https://prefix.dev/conda-forge/win-64/libmpdec-4.0.0-h2466b09_0.conda @@ -953,18 +999,9 @@ packages: - vc14_runtime >=14.29.30139 license: BSD-2-Clause license_family: BSD + purls: [] size: 88657 timestamp: 1723861474602 -- conda: https://prefix.dev/conda-forge/linux-64/libnsl-2.0.1-hb9d3cd8_1.conda - sha256: 927fe72b054277cde6cb82597d0fcf6baf127dcbce2e0a9d8925a68f1265eef5 - md5: d864d34357c3b65a4b731f78c0801dc4 - depends: - - __glibc >=2.17,<3.0.a0 - - libgcc >=13 - license: LGPL-2.1-only - license_family: GPL - size: 33731 - timestamp: 1750274110928 - conda: https://prefix.dev/conda-forge/linux-64/libsqlite-3.50.4-h0c1763c_0.conda sha256: 6d9c32fc369af5a84875725f7ddfbfc2ace795c28f246dc70055a79f9b2003da md5: 0b367fad34931cb79e0d6b7e5c06bb1c @@ -973,6 +1010,7 @@ packages: - libgcc >=14 - libzlib >=1.3.1,<2.0a0 license: blessing + purls: [] size: 932581 timestamp: 1753948484112 - conda: https://prefix.dev/conda-forge/osx-arm64/libsqlite-3.50.4-h4237e3c_0.conda @@ -983,6 +1021,7 @@ packages: - icu >=75.1,<76.0a0 - libzlib >=1.3.1,<2.0a0 license: blessing + purls: [] size: 902645 timestamp: 1753948599139 - conda: https://prefix.dev/conda-forge/win-64/libsqlite-3.50.4-hf5d6505_0.conda @@ -993,6 +1032,7 @@ packages: - vc >=14.3,<15 - vc14_runtime >=14.44.35208 license: blessing + purls: [] size: 1288499 timestamp: 1753948889360 - conda: https://prefix.dev/conda-forge/linux-64/libstdcxx-15.1.0-h8f9b012_5.conda @@ -1003,6 +1043,7 @@ packages: - libgcc 15.1.0 h767d61c_5 license: GPL-3.0-only WITH GCC-exception-3.1 license_family: GPL + purls: [] size: 3896432 timestamp: 1757042571458 - conda: https://prefix.dev/conda-forge/linux-64/libstdcxx-ng-15.1.0-h4852527_5.conda @@ -1012,6 +1053,7 @@ packages: - libstdcxx 15.1.0 h8f9b012_5 license: GPL-3.0-only WITH GCC-exception-3.1 license_family: GPL + purls: [] size: 29233 timestamp: 1757042603319 - conda: https://prefix.dev/conda-forge/linux-64/libuuid-2.41.2-he9a06e4_0.conda @@ -1022,16 +1064,9 @@ packages: - libgcc >=14 license: BSD-3-Clause license_family: BSD + purls: [] size: 37135 timestamp: 1758626800002 -- conda: https://prefix.dev/conda-forge/linux-64/libxcrypt-4.4.36-hd590300_1.conda - sha256: 6ae68e0b86423ef188196fff6207ed0c8195dd84273cb5623b85aa08033a410c - md5: 5aa797f8787fe7a17d1b0821485b5adc - depends: - - libgcc-ng >=12 - license: LGPL-2.1-or-later - size: 100393 - timestamp: 1702724383534 - conda: https://prefix.dev/conda-forge/linux-64/libxml2-2.15.0-h26afc86_1.conda sha256: 4310577d7eea817d35a1c05e1e54575b06ce085d73e6dd59aa38523adf50168f md5: 8337b675e0cad517fbcb3daf7588087a @@ -1045,6 +1080,7 @@ packages: - libzlib >=1.3.1,<2.0a0 license: MIT license_family: MIT + purls: [] size: 45363 timestamp: 1758640621036 - conda: https://prefix.dev/conda-forge/linux-64/libxml2-16-2.15.0-ha9997c6_1.conda @@ -1061,6 +1097,7 @@ packages: - libxml2 2.15.0 license: MIT license_family: MIT + purls: [] size: 556276 timestamp: 1758640612398 - conda: https://prefix.dev/conda-forge/linux-64/libzlib-1.3.1-hb9d3cd8_2.conda @@ -1073,6 +1110,7 @@ packages: - zlib 1.3.1 *_2 license: Zlib license_family: Other + purls: [] size: 60963 timestamp: 1727963148474 - conda: https://prefix.dev/conda-forge/osx-arm64/libzlib-1.3.1-h8359307_2.conda @@ -1084,6 +1122,7 @@ packages: - zlib 1.3.1 *_2 license: Zlib license_family: Other + purls: [] size: 46438 timestamp: 1727963202283 - conda: https://prefix.dev/conda-forge/win-64/libzlib-1.3.1-h2466b09_2.conda @@ -1097,6 +1136,7 @@ packages: - zlib 1.3.1 *_2 license: Zlib license_family: Other + purls: [] size: 55476 timestamp: 1727963768015 - conda: https://prefix.dev/conda-forge/linux-64/mimalloc-3.1.5-h54a6638_0.conda @@ -1109,6 +1149,7 @@ packages: - __glibc >=2.17,<3.0.a0 license: MIT license_family: MIT + purls: [] size: 103866 timestamp: 1752824520127 - conda: https://prefix.dev/conda-forge/linux-64/mold-2.40.2-hd1b2760_1.conda @@ -1125,24 +1166,27 @@ packages: - zstd >=1.5.7,<1.6.0a0 license: MIT license_family: MIT + purls: [] size: 3028876 timestamp: 1752868577231 -- conda: https://prefix.dev/conda-forge/linux-64/mypy-1.18.2-py312h4c3975b_0.conda - sha256: fb90735bc355263cde3b3af4fff62dafa9d14b0aacb46f644c8ea7e82a9fd133 - md5: 25163f59343531e356658848bde3fc7c +- conda: https://prefix.dev/conda-forge/linux-64/mypy-1.18.2-py314h5bd0f2a_0.conda + sha256: 987c29e33178dc550f566aa042aebf49233576caa151699f1db6ad1792cc8157 + md5: 1e87cabfdfea01d30e2ce1dd6152846f depends: - __glibc >=2.17,<3.0.a0 - libgcc >=14 - mypy_extensions >=1.0.0 - pathspec >=0.9.0 - psutil >=4.0 - - python >=3.12,<3.13.0a0 - - python_abi 3.12.* *_cp312 + - python >=3.14.0rc2,<3.15.0a0 + - python_abi 3.14.* *_cp314 - typing_extensions >=4.6.0 license: MIT license_family: MIT - size: 19541793 - timestamp: 1758278722332 + purls: + - pkg:pypi/mypy?source=hash-mapping + size: 18293071 + timestamp: 1758279255488 - conda: https://prefix.dev/conda-forge/osx-arm64/mypy-1.18.2-py314h0612a62_0.conda sha256: ae51616fa487bd3de59709b711da817e0405c97b645c983bf7af7decd81009f8 md5: 35e2005b4577fc8b4fc187451013e688 @@ -1157,6 +1201,8 @@ packages: - typing_extensions >=4.6.0 license: MIT license_family: MIT + purls: + - pkg:pypi/mypy?source=hash-mapping size: 11070284 timestamp: 1758280121914 - conda: https://prefix.dev/conda-forge/win-64/mypy-1.18.2-py314h5a2d7ad_0.conda @@ -1174,6 +1220,8 @@ packages: - vc14_runtime >=14.44.35208 license: MIT license_family: MIT + purls: + - pkg:pypi/mypy?source=hash-mapping size: 8899693 timestamp: 1758278850938 - conda: https://prefix.dev/conda-forge/noarch/mypy_extensions-1.1.0-pyha770c72_0.conda @@ -1183,6 +1231,8 @@ packages: - python >=3.9 license: MIT license_family: MIT + purls: + - pkg:pypi/mypy-extensions?source=hash-mapping size: 11766 timestamp: 1745776666688 - conda: https://prefix.dev/conda-forge/linux-64/ncurses-6.5-h2d0b736_3.conda @@ -1192,6 +1242,7 @@ packages: - __glibc >=2.17,<3.0.a0 - libgcc >=13 license: X11 AND BSD-3-Clause + purls: [] size: 891641 timestamp: 1738195959188 - conda: https://prefix.dev/conda-forge/osx-arm64/ncurses-6.5-h5e97a16_3.conda @@ -1200,6 +1251,7 @@ packages: depends: - __osx >=11.0 license: X11 AND BSD-3-Clause + purls: [] size: 797030 timestamp: 1738196177597 - conda: https://prefix.dev/conda-forge/linux-64/openssl-3.5.4-h26f9b46_0.conda @@ -1211,6 +1263,7 @@ packages: - libgcc >=14 license: Apache-2.0 license_family: Apache + purls: [] size: 3119624 timestamp: 1759324353651 - conda: https://prefix.dev/conda-forge/osx-arm64/openssl-3.5.4-h5503f6c_0.conda @@ -1221,6 +1274,7 @@ packages: - ca-certificates license: Apache-2.0 license_family: Apache + purls: [] size: 3067808 timestamp: 1759324763146 - conda: https://prefix.dev/conda-forge/win-64/openssl-3.5.4-h725018a_0.conda @@ -1233,6 +1287,7 @@ packages: - vc14_runtime >=14.44.35208 license: Apache-2.0 license_family: Apache + purls: [] size: 9218823 timestamp: 1759326176247 - conda: https://prefix.dev/conda-forge/noarch/packaging-25.0-pyh29332c3_1.conda @@ -1243,6 +1298,8 @@ packages: - python license: Apache-2.0 license_family: APACHE + purls: + - pkg:pypi/packaging?source=hash-mapping size: 62477 timestamp: 1745345660407 - conda: https://prefix.dev/conda-forge/linux-64/patchelf-0.18.0-h3f2d84a_2.conda @@ -1255,6 +1312,7 @@ packages: - libgcc >=13 license: GPL-3.0-or-later license_family: GPL + purls: [] size: 136130 timestamp: 1745559387060 - conda: https://prefix.dev/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_1.conda @@ -1264,6 +1322,8 @@ packages: - python >=3.9 license: MPL-2.0 license_family: MOZILLA + purls: + - pkg:pypi/pathspec?source=hash-mapping size: 41075 timestamp: 1733233471940 - conda: https://prefix.dev/pixi-build-backends/noarch/pixi-build-api-version-2-h4616a5c_0.conda @@ -1271,29 +1331,19 @@ packages: license: BSD-3-Clause size: 2890 timestamp: 1756725992228 -- conda: . +- pypi: ./ name: pixi-build-ros version: 0.3.0 - build: pyh4616a5c_0 - subdir: noarch - depends: - - python >=3.10 - - python * + sha256: e4c435000de73c9dc65ff1d75cb45fa637250abe63b958cd63cffd98cd1be465 + requires_dist: - rosdistro - - pydantic >=2.8.2,<3 - - py_rattler >=0.15.0,<0.16 - - catkin_pkg + - catkin-pkg + - pytest + - toml - pyyaml - - pixi-build-api-version >=2,<3 - - typing-extensions - - py-pixi-build-backend - input: - hash: 9207d418fb513f092b592b7d44106f182e9b4b4b0c9c6eddee0246d3c107ff2b - globs: - - pyproject.toml - sources: - py-pixi-build-backend: - path: ../../py-pixi-build-backend + - pydantic + - py-rattler + editable: true - conda: https://prefix.dev/conda-forge/noarch/pixi-pycharm-0.0.9-unix_hf108a03_0.conda sha256: adb49cb011bc758a18d7729431d393c96b1686e9cb8b2b0a76f158a20a590743 md5: 178205e98910428bf7411888adf63033 @@ -1302,6 +1352,7 @@ packages: - python >=3.8 license: BSD-3-Clause license_family: BSD + purls: [] size: 6681 timestamp: 1758810290525 - conda: https://prefix.dev/conda-forge/noarch/pixi-pycharm-0.0.9-win_hba80fca_0.conda @@ -1312,6 +1363,7 @@ packages: - python >=3.8 license: BSD-3-Clause license_family: BSD + purls: [] size: 6687 timestamp: 1758810287418 - conda: https://prefix.dev/conda-forge/noarch/pluggy-1.6.0-pyhd8ed1ab_0.conda @@ -1321,20 +1373,24 @@ packages: - python >=3.9 license: MIT license_family: MIT + purls: + - pkg:pypi/pluggy?source=hash-mapping size: 24246 timestamp: 1747339794916 -- conda: https://prefix.dev/conda-forge/linux-64/psutil-7.1.0-py312h4c3975b_0.conda - sha256: 15484f43cf8a5c08b073a28e9789bc76abaf5ef328148d00ad0c1f05079a9455 - md5: d99ab14339ac25676f1751b76b26c9b2 +- conda: https://prefix.dev/conda-forge/linux-64/psutil-7.1.0-py314h5bd0f2a_0.conda + sha256: 2f412443ae50c3f8c85b4d2209e938be812d52a367f04533c9c7cc143d8a3435 + md5: 3bba9ff64ab2030c4c28c0d225864196 depends: - __glibc >=2.17,<3.0.a0 - libgcc >=14 - - python >=3.12,<3.13.0a0 - - python_abi 3.12.* *_cp312 + - python >=3.14.0rc2,<3.15.0a0 + - python_abi 3.14.* *_cp314 license: BSD-3-Clause license_family: BSD - size: 475455 - timestamp: 1758169358813 + purls: + - pkg:pypi/psutil?source=hash-mapping + size: 488279 + timestamp: 1758169396992 - conda: https://prefix.dev/conda-forge/osx-arm64/psutil-7.1.0-py314h0612a62_0.conda sha256: 273618f4ecbb85409281e0a6f178fbcceac8323e02c7c7f2208ead19ce597363 md5: 7cfbbd0442df7523027aeb44ca3d02b2 @@ -1345,6 +1401,8 @@ packages: - python_abi 3.14.* *_cp314 license: BSD-3-Clause license_family: BSD + purls: + - pkg:pypi/psutil?source=hash-mapping size: 499273 timestamp: 1758169590526 - conda: https://prefix.dev/conda-forge/win-64/psutil-7.1.0-py314h5a2d7ad_0.conda @@ -1358,6 +1416,8 @@ packages: - vc14_runtime >=14.44.35208 license: BSD-3-Clause license_family: BSD + purls: + - pkg:pypi/psutil?source=hash-mapping size: 503792 timestamp: 1758169642572 - conda: ../../py-pixi-build-backend @@ -1369,7 +1429,7 @@ packages: - typing-extensions - pixi-build-api-version >=2,<3 - python >=3.8 - - python_abi 3.12.* *_cp312 + - python_abi 3.14.* *_cp314 constrains: - __glibc >=2.17 license: BSD-3-Clause @@ -1424,6 +1484,8 @@ packages: - __glibc >=2.17 license: BSD-3-Clause license_family: BSD + purls: + - pkg:pypi/py-rattler?source=hash-mapping size: 9613431 timestamp: 1758953122602 - conda: https://prefix.dev/conda-forge/osx-arm64/py-rattler-0.15.0-py310h96aa460_1.conda @@ -1440,6 +1502,8 @@ packages: - __osx >=11.0 license: BSD-3-Clause license_family: BSD + purls: + - pkg:pypi/py-rattler?source=hash-mapping size: 8088883 timestamp: 1758953226815 - conda: https://prefix.dev/conda-forge/win-64/py-rattler-0.15.0-py310hb39080a_1.conda @@ -1458,6 +1522,8 @@ packages: - cpython >=3.10 license: BSD-3-Clause license_family: BSD + purls: + - pkg:pypi/py-rattler?source=hash-mapping size: 9403973 timestamp: 1758953148675 - conda: https://prefix.dev/conda-forge/noarch/py_rattler-0.15.0-h88c55c7_1.conda @@ -1467,22 +1533,9 @@ packages: - py-rattler >=0.15.0,<0.15.1.0a0 license: BSD-3-Clause license_family: BSD + purls: [] size: 4710 timestamp: 1758953122602 -- conda: https://prefix.dev/conda-forge/noarch/pydantic-2.11.9-pyh3cfb1c2_0.conda - sha256: c3ec0c2202d109cdd5cac008bf7a42b67d4aa3c4cc14b4ee3e00a00541eabd88 - md5: a6db60d33fe1ad50314a46749267fdfc - depends: - - annotated-types >=0.6.0 - - pydantic-core 2.33.2 - - python >=3.10 - - typing-extensions >=4.6.1 - - typing-inspection >=0.4.0 - - typing_extensions >=4.12.2 - license: MIT - license_family: MIT - size: 307176 - timestamp: 1757881787287 - conda: https://prefix.dev/conda-forge/noarch/pydantic-2.12.0-pyh3cfb1c2_0.conda sha256: 510c3752efeff69705953266a70577047f77a69da89245f598c2cce0e771531a md5: 41749e96b495f27bf1729e0f99722415 @@ -1495,23 +1548,43 @@ packages: - typing_extensions >=4.14.1 license: MIT license_family: MIT + purls: + - pkg:pypi/pydantic?source=hash-mapping size: 317651 timestamp: 1759907890903 -- conda: https://prefix.dev/conda-forge/linux-64/pydantic-core-2.33.2-py312h680f630_0.conda - sha256: 4d14d7634c8f351ff1e63d733f6bb15cba9a0ec77e468b0de9102014a4ddc103 - md5: cfbd96e5a0182dfb4110fc42dda63e57 +- conda: https://prefix.dev/conda-forge/noarch/pydantic-2.12.1-pyh3cfb1c2_0.conda + sha256: 35a7b793da55f28d3192f597623cf0ebf9284c864569a83809745d778fa4d622 + md5: 475c8814c9d3a0e4fe7f6ed2abb2cf83 + depends: + - annotated-types >=0.6.0 + - pydantic-core 2.41.3 + - python >=3.10 + - typing-extensions >=4.6.1 + - typing-inspection >=0.4.2 + - typing_extensions >=4.14.1 + license: MIT + license_family: MIT + purls: + - pkg:pypi/pydantic?source=compressed-mapping + size: 317803 + timestamp: 1760395202242 +- conda: https://prefix.dev/conda-forge/linux-64/pydantic-core-2.41.3-py314h2e6c369_0.conda + sha256: e722843845c476769dc199a6f0be9ce8e03b73cdacd7162da5eecfa04616b25d + md5: ea534aa72a3985d3b37126ccb3614ef5 depends: - python - typing-extensions >=4.6.0,!=4.7.0 - __glibc >=2.17,<3.0.a0 - - libgcc >=13 - - python_abi 3.12.* *_cp312 + - libgcc >=14 + - python_abi 3.14.* *_cp314 constrains: - __glibc >=2.17 license: MIT license_family: MIT - size: 1890081 - timestamp: 1746625309715 + purls: + - pkg:pypi/pydantic-core?source=hash-mapping + size: 1939886 + timestamp: 1760391167215 - conda: https://prefix.dev/conda-forge/osx-arm64/pydantic-core-2.41.1-py314h724159f_0.conda sha256: c440696e5f66311084727b47881ed60d414dec10bc1859cccbdc79c2f9c75104 md5: 61a14b0602ebb663adea4748e2462536 @@ -1524,6 +1597,8 @@ packages: constrains: - __osx >=11.0 license: MIT + purls: + - pkg:pypi/pydantic-core?source=hash-mapping size: 1792522 timestamp: 1759889859264 - conda: https://prefix.dev/conda-forge/win-64/pydantic-core-2.41.1-py314h49d6ca3_0.conda @@ -1540,6 +1615,8 @@ packages: - ucrt >=10.0.20348.0 - python_abi 3.14.* *_cp314 license: MIT + purls: + - pkg:pypi/pydantic-core?source=hash-mapping size: 1972700 timestamp: 1759889861716 - conda: https://prefix.dev/conda-forge/noarch/pygments-2.19.2-pyhd8ed1ab_0.conda @@ -1549,18 +1626,18 @@ packages: - python >=3.9 license: BSD-2-Clause license_family: BSD + purls: + - pkg:pypi/pygments?source=hash-mapping size: 889287 timestamp: 1750615908735 -- conda: https://prefix.dev/conda-forge/noarch/pyparsing-3.2.5-pyhcf101f3_0.conda - sha256: 6814b61b94e95ffc45ec539a6424d8447895fef75b0fec7e1be31f5beee883fb - md5: 6c8979be6d7a17692793114fa26916e8 - depends: - - python >=3.10 - - python - license: MIT - license_family: MIT - size: 104044 - timestamp: 1758436411254 +- pypi: https://files.pythonhosted.org/packages/10/5e/1aa9a93198c6b64513c9d7752de7422c06402de6600a8767da1524f9570b/pyparsing-3.2.5-py3-none-any.whl + name: pyparsing + version: 3.2.5 + sha256: e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e + requires_dist: + - railroad-diagrams ; extra == 'diagrams' + - jinja2 ; extra == 'diagrams' + requires_python: '>=3.9' - conda: https://prefix.dev/conda-forge/noarch/pytest-8.4.2-pyhd8ed1ab_0.conda sha256: 41053d9893e379a3133bb9b557b98a3d2142fca474fb6b964ba5d97515f78e2d md5: 1f987505580cb972cf28dc5f74a0f81b @@ -1577,38 +1654,40 @@ packages: - pytest-faulthandler >=2 license: MIT license_family: MIT + purls: + - pkg:pypi/pytest?source=compressed-mapping size: 276734 timestamp: 1757011891753 -- conda: https://prefix.dev/conda-forge/linux-64/python-3.12.11-h9e4cc4f_0_cpython.conda - sha256: 6cca004806ceceea9585d4d655059e951152fc774a471593d4f5138e6a54c81d - md5: 94206474a5608243a10c92cefbe0908f +- conda: https://prefix.dev/conda-forge/linux-64/python-3.13.7-h2b335a9_100_cp313.conda + build_number: 100 + sha256: 16cc30a5854f31ca6c3688337d34e37a79cdc518a06375fe3482ea8e2d6b34c8 + md5: 724dcf9960e933838247971da07fe5cf depends: - __glibc >=2.17,<3.0.a0 - bzip2 >=1.0.8,<2.0a0 - ld_impl_linux-64 >=2.36.1 - - libexpat >=2.7.0,<3.0a0 + - libexpat >=2.7.1,<3.0a0 - libffi >=3.4.6,<3.5.0a0 - - libgcc >=13 + - libgcc >=14 - liblzma >=5.8.1,<6.0a0 - - libnsl >=2.0.1,<2.1.0a0 - - libsqlite >=3.50.0,<4.0a0 + - libmpdec >=4.0.0,<5.0a0 + - libsqlite >=3.50.4,<4.0a0 - libuuid >=2.38.1,<3.0a0 - - libxcrypt >=4.4.36 - libzlib >=1.3.1,<2.0a0 - ncurses >=6.5,<7.0a0 - - openssl >=3.5.0,<4.0a0 + - openssl >=3.5.2,<4.0a0 + - python_abi 3.13.* *_cp313 - readline >=8.2,<9.0a0 - tk >=8.6.13,<8.7.0a0 - tzdata - constrains: - - python_abi 3.12.* *_cp312 license: Python-2.0 - size: 31445023 - timestamp: 1749050216615 -- conda: https://prefix.dev/conda-forge/linux-64/python-3.13.7-h2b335a9_100_cp313.conda - build_number: 100 - sha256: 16cc30a5854f31ca6c3688337d34e37a79cdc518a06375fe3482ea8e2d6b34c8 - md5: 724dcf9960e933838247971da07fe5cf + size: 33583088 + timestamp: 1756911465277 + python_site_packages_path: lib/python3.13/site-packages +- conda: https://prefix.dev/conda-forge/linux-64/python-3.14.0-h5989046_101_cp314.conda + build_number: 101 + sha256: 61ae2c29b1097c12161a09a4061be8f909bc1387d8388e875d8ed5e357ef0824 + md5: b2ad21488149ec2c4d83640619de2430 depends: - __glibc >=2.17,<3.0.a0 - bzip2 >=1.0.8,<2.0a0 @@ -1619,18 +1698,20 @@ packages: - liblzma >=5.8.1,<6.0a0 - libmpdec >=4.0.0,<5.0a0 - libsqlite >=3.50.4,<4.0a0 - - libuuid >=2.38.1,<3.0a0 + - libuuid >=2.41.2,<3.0a0 - libzlib >=1.3.1,<2.0a0 - ncurses >=6.5,<7.0a0 - - openssl >=3.5.2,<4.0a0 - - python_abi 3.13.* *_cp313 + - openssl >=3.5.4,<4.0a0 + - python_abi 3.14.* *_cp314 - readline >=8.2,<9.0a0 - tk >=8.6.13,<8.7.0a0 - tzdata + - zstd >=1.5.7,<1.6.0a0 license: Python-2.0 - size: 33583088 - timestamp: 1756911465277 - python_site_packages_path: lib/python3.13/site-packages + purls: [] + size: 36692257 + timestamp: 1760299587505 + python_site_packages_path: lib/python3.14/site-packages - conda: https://prefix.dev/conda-forge/osx-arm64/python-3.13.7-h5c937ed_100_cp313.conda build_number: 100 sha256: b9776cc330fa4836171a42e0e9d9d3da145d7702ba6ef9fad45e94f0f016eaef @@ -1675,6 +1756,7 @@ packages: - tzdata - zstd >=1.5.7,<1.6.0a0 license: Python-2.0 + purls: [] size: 13459937 timestamp: 1759868716176 python_site_packages_path: lib/python3.14/site-packages @@ -1722,29 +1804,17 @@ packages: - vc14_runtime >=14.44.35208 - zstd >=1.5.7,<1.6.0a0 license: Python-2.0 + purls: [] size: 16814710 timestamp: 1759867391470 python_site_packages_path: Lib/site-packages -- conda: https://prefix.dev/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhe01879c_2.conda - sha256: d6a17ece93bbd5139e02d2bd7dbfa80bee1a4261dced63f65f679121686bf664 - md5: 5b8d21249ff20967101ffa321cab24e8 - depends: - - python >=3.9 - - six >=1.5 - - python - license: Apache-2.0 - license_family: APACHE - size: 233310 - timestamp: 1751104122689 -- conda: https://prefix.dev/conda-forge/noarch/python-gil-3.12.11-hd8ed1ab_0.conda - sha256: b8afeaefe409d61fa4b68513b25a66bb17f3ca430d67cfea51083c7bfbe098ef - md5: 859c6bec94cd74119f12b961aba965a8 - depends: - - cpython 3.12.11.* - - python_abi * *_cp312 - license: Python-2.0 - size: 45836 - timestamp: 1749047798827 +- pypi: https://files.pythonhosted.org/packages/ec/57/56b9bcc3c9c6a792fcbaf139543cee77261f3651ca9da0c93f5c1221264b/python_dateutil-2.9.0.post0-py2.py3-none-any.whl + name: python-dateutil + version: 2.9.0.post0 + sha256: a8b2bc7bffae282281c8140a97d3aa9c14da0b136dfe83f850eea9a5f7470427 + requires_dist: + - six>=1.5 + requires_python: '>=2.7,!=3.0.*,!=3.1.*,!=3.2.*' - conda: https://prefix.dev/conda-forge/noarch/python-gil-3.14.0-h4df99d1_100.conda sha256: c9460fb47138ab51689fdc1bb4988ed272fb3c0227d1cee00f70abbc8f00dc84 md5: 6bab5aef6a9016d250a33611ada07725 @@ -1752,18 +1822,19 @@ packages: - cpython 3.14.0.* - python_abi * *_cp314 license: Python-2.0 + purls: [] size: 48934 timestamp: 1759867500314 -- conda: https://prefix.dev/conda-forge/noarch/python_abi-3.12-8_cp312.conda - build_number: 8 - sha256: 80677180dd3c22deb7426ca89d6203f1c7f1f256f2d5a94dc210f6e758229809 - md5: c3efd25ac4d74b1584d2f7a57195ddf1 - constrains: - - python 3.12.* *_cpython - license: BSD-3-Clause - license_family: BSD - size: 6958 - timestamp: 1752805918820 +- conda: https://prefix.dev/conda-forge/noarch/python-gil-3.14.0-h4df99d1_101.conda + sha256: ee0054cb761b0404f47aeca672d0b14a1bd305c4d5a962054ef7250eb4d145f5 + md5: ff70037e37dbf735066dec79c1e93c76 + depends: + - cpython 3.14.0.* + - python_abi * *_cp314 + license: Python-2.0 + purls: [] + size: 49201 + timestamp: 1760298434567 - conda: https://prefix.dev/conda-forge/noarch/python_abi-3.13-8_cp313.conda build_number: 8 sha256: 210bffe7b121e651419cb196a2a63687b087497595c9be9d20ebe97dd06060a7 @@ -1782,6 +1853,7 @@ packages: - python 3.14.* *_cp314 license: BSD-3-Clause license_family: BSD + purls: [] size: 6989 timestamp: 1752805904792 - conda: https://prefix.dev/conda-forge/noarch/pyupgrade-3.20.0-pyhd8ed1ab_0.conda @@ -1792,33 +1864,25 @@ packages: - tokenize-rt >=6.1.0 license: MIT license_family: MIT + purls: + - pkg:pypi/pyupgrade?source=hash-mapping size: 46600 timestamp: 1748047653089 -- conda: https://prefix.dev/conda-forge/linux-64/pyyaml-6.0.3-py312h8a5da7c_0.conda - sha256: 1b3dc4c25c83093fff08b86a3574bc6b94ba355c8eba1f35d805c5e256455fc7 - md5: fba10c2007c8b06f77c5a23ce3a635ad - depends: - - __glibc >=2.17,<3.0.a0 - - libgcc >=14 - - python >=3.12,<3.13.0a0 - - python_abi 3.12.* *_cp312 - - yaml >=0.2.5,<0.3.0a0 - license: MIT - license_family: MIT - size: 204539 - timestamp: 1758892248166 -- conda: https://prefix.dev/conda-forge/noarch/pyyaml-6.0.3-pyh7db6752_0.conda - sha256: 828af2fd7bb66afc9ab1c564c2046be391aaf66c0215f05afaf6d7a9a270fe2a - md5: b12f41c0d7fb5ab81709fcc86579688f - depends: - - python >=3.10.* - - yaml - track_features: - - pyyaml_no_compile - license: MIT - license_family: MIT - size: 45223 - timestamp: 1758891992558 +- pypi: https://files.pythonhosted.org/packages/23/20/bb6982b26a40bb43951265ba29d4c246ef0ff59c9fdcdf0ed04e0687de4d/pyyaml-6.0.3-cp314-cp314-win_amd64.whl + name: pyyaml + version: 6.0.3 + sha256: 4a2e8cebe2ff6ab7d1050ecd59c25d4c8bd7e6f400f5f82b96557ac0abafd0ac + requires_python: '>=3.8' +- pypi: https://files.pythonhosted.org/packages/88/f9/16491d7ed2a919954993e48aa941b200f38040928474c9e85ea9e64222c3/pyyaml-6.0.3-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl + name: pyyaml + version: 6.0.3 + sha256: c458b6d084f9b935061bc36216e8a69a7e293a2f1e68bf956dcd9e6cbcd143f5 + requires_python: '>=3.8' +- pypi: https://files.pythonhosted.org/packages/bd/9c/4d95bb87eb2063d20db7b60faa3840c1b18025517ae857371c4dd55a6b3a/pyyaml-6.0.3-cp314-cp314-macosx_11_0_arm64.whl + name: pyyaml + version: 6.0.3 + sha256: 34d5fcd24b8445fadc33f9cf348c1047101756fd760b4dacb5c3e99755703310 + requires_python: '>=3.8' - conda: https://prefix.dev/conda-forge/linux-64/readline-8.2-h8c095d6_2.conda sha256: 2d6d0c026902561ed77cd646b5021aef2d4db22e57a5b0178dfc669231e06d2c md5: 283b96675859b20a825f8fa30f311446 @@ -1827,6 +1891,7 @@ packages: - ncurses >=6.5,<7.0a0 license: GPL-3.0-only license_family: GPL + purls: [] size: 282480 timestamp: 1740379431762 - conda: https://prefix.dev/conda-forge/osx-arm64/readline-8.2-h1d1bf99_2.conda @@ -1836,33 +1901,30 @@ packages: - ncurses >=6.5,<7.0a0 license: GPL-3.0-only license_family: GPL + purls: [] size: 252359 timestamp: 1740379663071 -- conda: https://prefix.dev/conda-forge/noarch/rosdistro-1.0.1-pyhd8ed1ab_0.conda - sha256: bff3b2fe7afe35125669ffcb7d6153db78070a753e1e4ac3b3d8d198eb6d6982 - md5: b7ed380a9088b543e06a4f73985ed03a - depends: - - catkin_pkg - - python >=3.9 +- pypi: https://files.pythonhosted.org/packages/22/32/d0fbc4383a6a213d315c39dda9107f81654d9941c43d6c687e61995ec388/rosdistro-1.0.1-py3-none-any.whl + name: rosdistro + version: 1.0.1 + sha256: 587da10e1bc9f1ff8dc026ac9361ac1a1d2a79a434dfcb73175e45110880651c + requires_dist: - pyyaml - - rospkg - setuptools - license: BSD-3-Clause - license_family: BSD - size: 47691 - timestamp: 1747826651335 -- conda: https://prefix.dev/conda-forge/noarch/rospkg-1.6.0-pyhd8ed1ab_0.conda - sha256: 236e8b53b0fab599d63f346b0e84fbe9bd8d160e0dd1e591e39f23ff6924941e - md5: 80daa4ba1f1944b8ac1f90a66fc9ef27 - depends: - - catkin_pkg - - distro - - python >=3.9 + - catkin-pkg + - rospkg + - pytest ; extra == 'test' + requires_python: '>=3.6' +- pypi: https://files.pythonhosted.org/packages/fa/c1/b0616243c1f922252ceb4513c22abefc1773cf372bfc0b6f7e59c2829f96/rospkg-1.6.0-py3-none-any.whl + name: rospkg + version: 1.6.0 + sha256: 491d49a0d85969cd99df056122f95fc33ff277992a4e275c4448c2e02220a9cb + requires_dist: + - catkin-pkg - pyyaml - license: BSD-3-Clause - license_family: BSD - size: 31293 - timestamp: 1737835793379 + - distro>=1.4.0 ; python_full_version >= '3.8' + - pytest ; extra == 'test' + requires_python: '>=3.6' - conda: https://prefix.dev/conda-forge/linux-64/ruff-0.13.2-ha3a3aed_0.conda noarch: python sha256: bfcfabdc7e09e3aed1014719a76071afbe15062b2cd351399120fd77806d8ba5 @@ -1875,6 +1937,8 @@ packages: - __glibc >=2.17 license: MIT license_family: MIT + purls: + - pkg:pypi/ruff?source=hash-mapping size: 11015565 timestamp: 1758825350135 - conda: https://prefix.dev/conda-forge/osx-arm64/ruff-0.13.2-h492a034_0.conda @@ -1888,6 +1952,8 @@ packages: - __osx >=11.0 license: MIT license_family: MIT + purls: + - pkg:pypi/ruff?source=hash-mapping size: 10159192 timestamp: 1758825447811 - conda: https://prefix.dev/conda-forge/win-64/ruff-0.13.2-h3e3edff_0.conda @@ -1901,27 +1967,72 @@ packages: - ucrt >=10.0.20348.0 license: MIT license_family: MIT + purls: + - pkg:pypi/ruff?source=hash-mapping size: 11310182 timestamp: 1758825367109 -- conda: https://prefix.dev/conda-forge/noarch/setuptools-80.9.0-pyhff2d567_0.conda - sha256: 972560fcf9657058e3e1f97186cc94389144b46dbdf58c807ce62e83f977e863 - md5: 4de79c071274a53dcaf2a8c749d1499e - depends: - - python >=3.9 - license: MIT - license_family: MIT - size: 748788 - timestamp: 1748804951958 -- conda: https://prefix.dev/conda-forge/noarch/six-1.17.0-pyhe01879c_1.conda - sha256: 458227f759d5e3fcec5d9b7acce54e10c9e1f4f4b7ec978f3bfd54ce4ee9853d - md5: 3339e3b65d58accf4ca4fb8748ab16b3 - depends: - - python >=3.9 - - python - license: MIT - license_family: MIT - size: 18455 - timestamp: 1753199211006 +- pypi: https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl + name: setuptools + version: 80.9.0 + sha256: 062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 + requires_dist: + - pytest>=6,!=8.1.* ; extra == 'test' + - virtualenv>=13.0.0 ; extra == 'test' + - wheel>=0.44.0 ; extra == 'test' + - pip>=19.1 ; extra == 'test' + - packaging>=24.2 ; extra == 'test' + - jaraco-envs>=2.2 ; extra == 'test' + - pytest-xdist>=3 ; extra == 'test' + - jaraco-path>=3.7.2 ; extra == 'test' + - build[virtualenv]>=1.0.3 ; extra == 'test' + - filelock>=3.4.0 ; extra == 'test' + - ini2toml[lite]>=0.14 ; extra == 'test' + - tomli-w>=1.0.0 ; extra == 'test' + - pytest-timeout ; extra == 'test' + - pytest-perf ; sys_platform != 'cygwin' and extra == 'test' + - jaraco-develop>=7.21 ; python_full_version >= '3.9' and sys_platform != 'cygwin' and extra == 'test' + - pytest-home>=0.5 ; extra == 'test' + - pytest-subprocess ; extra == 'test' + - pyproject-hooks!=1.1 ; extra == 'test' + - jaraco-test>=5.5 ; extra == 'test' + - sphinx>=3.5 ; extra == 'doc' + - jaraco-packaging>=9.3 ; extra == 'doc' + - rst-linker>=1.9 ; extra == 'doc' + - furo ; extra == 'doc' + - sphinx-lint ; extra == 'doc' + - jaraco-tidelift>=1.4 ; extra == 'doc' + - pygments-github-lexers==0.0.5 ; extra == 'doc' + - sphinx-favicon ; extra == 'doc' + - sphinx-inline-tabs ; extra == 'doc' + - sphinx-reredirects ; extra == 'doc' + - sphinxcontrib-towncrier ; extra == 'doc' + - sphinx-notfound-page>=1,<2 ; extra == 'doc' + - pyproject-hooks!=1.1 ; extra == 'doc' + - towncrier<24.7 ; extra == 'doc' + - packaging>=24.2 ; extra == 'core' + - more-itertools>=8.8 ; extra == 'core' + - jaraco-text>=3.7 ; extra == 'core' + - importlib-metadata>=6 ; python_full_version < '3.10' and extra == 'core' + - tomli>=2.0.1 ; python_full_version < '3.11' and extra == 'core' + - wheel>=0.43.0 ; extra == 'core' + - platformdirs>=4.2.2 ; extra == 'core' + - jaraco-functools>=4 ; extra == 'core' + - more-itertools ; extra == 'core' + - pytest-checkdocs>=2.4 ; extra == 'check' + - pytest-ruff>=0.2.1 ; sys_platform != 'cygwin' and extra == 'check' + - ruff>=0.8.0 ; sys_platform != 'cygwin' and extra == 'check' + - pytest-cov ; extra == 'cover' + - pytest-enabler>=2.2 ; extra == 'enabler' + - pytest-mypy ; extra == 'type' + - mypy==1.14.* ; extra == 'type' + - importlib-metadata>=7.0.2 ; python_full_version < '3.10' and extra == 'type' + - jaraco-develop>=7.21 ; sys_platform != 'cygwin' and extra == 'type' + requires_python: '>=3.9' +- pypi: https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl + name: six + version: 1.17.0 + sha256: 4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 + requires_python: '>=2.7,!=3.0.*,!=3.1.*,!=3.2.*' - conda: https://prefix.dev/conda-forge/noarch/syrupy-5.0.0-pyhd8ed1ab_0.conda sha256: 3ff00f26d7920901ba528190088048b322791239d443009edc5aebb7060e4654 md5: 805fe17ec5dec0d30e6c8450ac01a273 @@ -1930,6 +2041,8 @@ packages: - python >=3.10,<4.0 license: MIT license_family: MIT + purls: + - pkg:pypi/syrupy?source=hash-mapping size: 44936 timestamp: 1759112392766 - conda: https://prefix.dev/conda-forge/noarch/sysroot_linux-64-2.28-h4ee821c_8.conda @@ -1941,6 +2054,7 @@ packages: - 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: 24210909 timestamp: 1752669140965 - conda: https://prefix.dev/conda-forge/linux-64/tbb-2022.2.0-hb60516a_1.conda @@ -1953,6 +2067,7 @@ packages: - libstdcxx >=14 license: Apache-2.0 license_family: APACHE + purls: [] size: 183204 timestamp: 1755775909376 - conda: https://prefix.dev/conda-forge/linux-64/tk-8.6.13-noxft_hd72426e_102.conda @@ -1964,6 +2079,7 @@ packages: - libzlib >=1.3.1,<2.0a0 license: TCL license_family: BSD + purls: [] size: 3285204 timestamp: 1748387766691 - conda: https://prefix.dev/conda-forge/osx-arm64/tk-8.6.13-h892fb3f_2.conda @@ -1974,6 +2090,7 @@ packages: - libzlib >=1.3.1,<2.0a0 license: TCL license_family: BSD + purls: [] size: 3125538 timestamp: 1748388189063 - conda: https://prefix.dev/conda-forge/win-64/tk-8.6.13-h2c6b04d_2.conda @@ -1985,6 +2102,7 @@ packages: - vc14_runtime >=14.29.30139 license: TCL license_family: BSD + purls: [] size: 3466348 timestamp: 1748388121356 - conda: https://prefix.dev/conda-forge/noarch/tokenize-rt-6.2.0-pyhd8ed1ab_0.conda @@ -1994,8 +2112,15 @@ packages: - python >=3.9 license: MIT license_family: MIT + purls: + - pkg:pypi/tokenize-rt?source=hash-mapping size: 12383 timestamp: 1748092106333 +- pypi: https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl + name: toml + version: 0.10.2 + sha256: 806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b + requires_python: '>=2.6,!=3.0.*,!=3.1.*,!=3.2.*' - conda: https://prefix.dev/conda-forge/noarch/tomli-2.2.1-pyhe01879c_2.conda sha256: 040a5a05c487647c089ad5e05ad5aff5942830db2a4e656f1e300d73436436f1 md5: 30a0a26c8abccf4b7991d590fe17c699 @@ -2004,6 +2129,8 @@ packages: - python license: MIT license_family: MIT + purls: + - pkg:pypi/tomli?source=compressed-mapping size: 21238 timestamp: 1753796677376 - conda: https://prefix.dev/conda-forge/noarch/types-pyyaml-6.0.12.20250915-pyhd8ed1ab_0.conda @@ -2012,6 +2139,8 @@ packages: depends: - python >=3.10 license: Apache-2.0 AND MIT + purls: + - pkg:pypi/types-pyyaml?source=hash-mapping size: 21996 timestamp: 1757934724384 - conda: https://prefix.dev/conda-forge/noarch/typing-extensions-4.15.0-h396c80c_0.conda @@ -2021,6 +2150,7 @@ packages: - typing_extensions ==4.15.0 pyhcf101f3_0 license: PSF-2.0 license_family: PSF + purls: [] size: 91383 timestamp: 1756220668932 - conda: https://prefix.dev/conda-forge/noarch/typing-inspection-0.4.2-pyhd8ed1ab_0.conda @@ -2031,6 +2161,8 @@ packages: - typing_extensions >=4.12.0 license: MIT license_family: MIT + purls: + - pkg:pypi/typing-inspection?source=compressed-mapping size: 18799 timestamp: 1759301271883 - conda: https://prefix.dev/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda @@ -2041,12 +2173,15 @@ packages: - python license: PSF-2.0 license_family: PSF + purls: + - pkg:pypi/typing-extensions?source=hash-mapping size: 51692 timestamp: 1756220668932 - conda: https://prefix.dev/conda-forge/noarch/tzdata-2025b-h78e105d_0.conda sha256: 5aaa366385d716557e365f0a4e9c3fca43ba196872abbbe3d56bb610d131e192 md5: 4222072737ccff51314b5ece9c7d6f5a license: LicenseRef-Public-Domain + purls: [] size: 122968 timestamp: 1742727099393 - conda: https://prefix.dev/conda-forge/win-64/ucrt-10.0.26100.0-h57928b3_0.conda @@ -2056,6 +2191,7 @@ packages: - vc14_runtime >=14.29.30037 - vs2015_runtime >=14.29.30037 license: LicenseRef-MicrosoftWindowsSDK10 + purls: [] size: 694692 timestamp: 1756385147981 - conda: https://prefix.dev/conda-forge/win-64/vc-14.3-h41ae7f8_31.conda @@ -2067,6 +2203,7 @@ packages: - vc14 license: BSD-3-Clause license_family: BSD + purls: [] size: 18249 timestamp: 1753739241465 - conda: https://prefix.dev/conda-forge/win-64/vc14_runtime-14.44.35208-h818238b_31.conda @@ -2079,6 +2216,7 @@ packages: - vs2015_runtime 14.44.35208.* *_31 license: LicenseRef-MicrosoftVisualCpp2015-2022Runtime license_family: Proprietary + purls: [] size: 682424 timestamp: 1753739239305 - conda: https://prefix.dev/conda-forge/win-64/vcomp14-14.44.35208-h818238b_31.conda @@ -2090,41 +2228,9 @@ packages: - vs2015_runtime 14.44.35208.* *_31 license: LicenseRef-MicrosoftVisualCpp2015-2022Runtime license_family: Proprietary + purls: [] size: 113963 timestamp: 1753739198723 -- conda: https://prefix.dev/conda-forge/linux-64/yaml-0.2.5-h280c20c_3.conda - sha256: 6d9ea2f731e284e9316d95fa61869fe7bbba33df7929f82693c121022810f4ad - md5: a77f85f77be52ff59391544bfe73390a - depends: - - libgcc >=14 - - __glibc >=2.17,<3.0.a0 - license: MIT - license_family: MIT - size: 85189 - timestamp: 1753484064210 -- conda: https://prefix.dev/conda-forge/osx-arm64/yaml-0.2.5-h925e9cb_3.conda - sha256: b03433b13d89f5567e828ea9f1a7d5c5d697bf374c28a4168d71e9464f5dafac - md5: 78a0fe9e9c50d2c381e8ee47e3ea437d - depends: - - __osx >=11.0 - license: MIT - license_family: MIT - size: 83386 - timestamp: 1753484079473 -- conda: https://prefix.dev/conda-forge/win-64/yaml-0.2.5-h6a83c73_3.conda - sha256: 80ee68c1e7683a35295232ea79bcc87279d31ffeda04a1665efdb43cbd50a309 - md5: 433699cba6602098ae8957a323da2664 - depends: - - vc >=14.3,<15 - - vc14_runtime >=14.44.35208 - - ucrt >=10.0.20348.0 - - vc >=14.3,<15 - - vc14_runtime >=14.44.35208 - - ucrt >=10.0.20348.0 - license: MIT - license_family: MIT - size: 63944 - timestamp: 1753484092156 - conda: https://prefix.dev/conda-forge/linux-64/zstd-1.5.7-hb8e6e7a_2.conda sha256: a4166e3d8ff4e35932510aaff7aa90772f84b4d07e9f6f83c614cba7ceefe0eb md5: 6432cb5d4ac0046c3ac0a8a0f95842f9 @@ -2135,6 +2241,7 @@ packages: - libzlib >=1.3.1,<2.0a0 license: BSD-3-Clause license_family: BSD + purls: [] size: 567578 timestamp: 1742433379869 - conda: https://prefix.dev/conda-forge/osx-arm64/zstd-1.5.7-h6491c7d_2.conda @@ -2145,6 +2252,7 @@ packages: - libzlib >=1.3.1,<2.0a0 license: BSD-3-Clause license_family: BSD + purls: [] size: 399979 timestamp: 1742433432699 - conda: https://prefix.dev/conda-forge/win-64/zstd-1.5.7-hbeecb71_2.conda @@ -2157,5 +2265,6 @@ packages: - vc14_runtime >=14.29.30139 license: BSD-3-Clause license_family: BSD + purls: [] size: 354697 timestamp: 1742433568506 diff --git a/backends/pixi-build-ros/pixi.toml b/backends/pixi-build-ros/pixi.toml index 24f09ee9..e2787a67 100644 --- a/backends/pixi-build-ros/pixi.toml +++ b/backends/pixi-build-ros/pixi.toml @@ -20,7 +20,10 @@ scripts = ["../../scripts/activate.sh"] [dependencies] pydantic = ">=2.8.2,<3" py_rattler = ">=0.15.0,<0.16" -pixi-build-ros = { path = "." } +py-pixi-build-backend = "*" + +[pypi-dependencies] +pixi-build-ros = { path = ".", editable = true } [environments] default = { features = ["test", "lint"], solve-group = "default" } @@ -74,5 +77,5 @@ pixi-build-api-version = ">=2,<3" # should be added to `py-pixi-build-backend` typing-extensions = "*" # this depends has to match the test dependency, so switch comments if needed -# py-pixi-build-backend = "*" +#py-pixi-build-backend = "*" py-pixi-build-backend = { path = "../../py-pixi-build-backend" } diff --git a/backends/pixi-build-ros/pyproject.toml b/backends/pixi-build-ros/pyproject.toml index 138e3bd6..f060ad76 100644 --- a/backends/pixi-build-ros/pyproject.toml +++ b/backends/pixi-build-ros/pyproject.toml @@ -7,7 +7,8 @@ dependencies = [ "pyyaml", "pydantic", "py_rattler", - "py-pixi-build-backend", + # TODO: publish to pypi + # "py-pixi-build-backend", ] name = "pixi-build-ros" version = "0.3.0" diff --git a/backends/pixi-build-ros/robostack.yaml b/backends/pixi-build-ros/robostack.yaml index 93a9b278..f790ae6e 100644 --- a/backends/pixi-build-ros/robostack.yaml +++ b/backends/pixi-build-ros/robostack.yaml @@ -358,6 +358,8 @@ liblz4-dev: robostack: [lz4] libmicrohttpd: robostack: [libmicrohttpd] +libnanoflann-dev: + robostack: [nanoflann] libncurses-dev: robostack: linux: [ncurses] @@ -904,10 +906,14 @@ python3-tk: robostack: [tk] python3-tornado: robostack: [tornado] +python3-transforms3d: + robostack: [transforms3d] python3-twisted: robostack: [twisted] python3-typeguard: robostack: [typeguard] +python3-types-pyyaml: + robostack: [types-pyyaml] python3-unidiff: robostack: [unidiff] python3-usb: diff --git a/backends/pixi-build-ros/src/pixi_build_ros/ros_generator.py b/backends/pixi-build-ros/src/pixi_build_ros/ros_generator.py index c19a238a..cf15a75c 100644 --- a/backends/pixi-build-ros/src/pixi_build_ros/ros_generator.py +++ b/backends/pixi-build-ros/src/pixi_build_ros/ros_generator.py @@ -1,5 +1,5 @@ """ -Python generator implementation using Python bindings. +ROS generator implementation using Python bindings. """ from pathlib import Path @@ -11,9 +11,9 @@ GeneratedRecipe, ) from .metadata_provider import ROSPackageXmlMetadataProvider -from pixi_build_backend.types.intermediate_recipe import Script, ConditionalRequirements +from pixi_build_backend.types.intermediate_recipe import Script -from pixi_build_backend.types.item import ItemPackageDependency, VecItemPackageDependency +from pixi_build_backend.types.item import ItemPackageDependency from pixi_build_backend.types.platform import Platform from pixi_build_backend.types.project_model import ProjectModelV1 from pixi_build_backend.types.python_params import PythonParams @@ -25,6 +25,7 @@ convert_package_xml_to_catkin_package, get_package_xml_content, load_package_map_data, + merge_requirements, ) from .config import ROSBackendConfig, PackageMappingSource @@ -153,69 +154,3 @@ def default_variants(self, host_platform: Platform) -> dict[str, Any]: if host_platform.is_windows: variants["cxx_compiler"] = ["vs2019"] return variants - - -def merge_requirements( - model_requirements: ConditionalRequirements, - package_requirements: ConditionalRequirements, -) -> ConditionalRequirements: - """Merge two sets of requirements.""" - merged = ConditionalRequirements() - - merged.host = merge_unique_items(model_requirements.host, package_requirements.host) - merged.build = merge_unique_items(model_requirements.build, package_requirements.build) - merged.run = merge_unique_items(model_requirements.run, package_requirements.run) - - # If the dependency is of type Source in one of the requirements, we need to set them to Source for all variants - return merged - - -def merge_unique_items( - model: list[ItemPackageDependency] | VecItemPackageDependency, - package: list[ItemPackageDependency] | VecItemPackageDependency, -) -> list[ItemPackageDependency]: - """Merge unique items from source into target.""" - - def _find_matching(list_to_find: list[ItemPackageDependency], name: str) -> ItemPackageDependency | None: - for dep in list_to_find: - if dep.concrete.package_name == name: - return dep - else: - return None - - def _merge_specs(spec1: str, spec2: str, package_name: str) -> str: - # remove the package name - version_spec1 = spec1.removeprefix(package_name).strip() - version_spec2 = spec2.removeprefix(package_name).strip() - - if " " in version_spec1 or " " in version_spec2: - raise ValueError(f"{version_spec1}, or {version_spec2} contains spaces, cannot merge specifiers.") - - # early out with *, empty or == - if version_spec1 in ["*", ""] or "==" in version_spec2 or version_spec1 == version_spec2: - return spec2 - if version_spec2 in ["*", ""] or "==" in version_spec1: - return spec1 - return package_name + " " + ",".join([version_spec1, version_spec2]) - - result: list[ItemPackageDependency] = [] - templates_in_model = [str(i.template) for i in model] - for item in list(model) + list(package): - # It's concrete (i.e. no template) - if item.concrete is not None: - # It does not exist yet in model - item_in_result = _find_matching(result, item.concrete.package_name) - if not item_in_result: - result.append(item) - else: - new_dep = ItemPackageDependency( - name=_merge_specs( - item_in_result.concrete.binary_spec, item.concrete.binary_spec, item.concrete.package_name - ) - ) - result.remove(item_in_result) - result.append(new_dep) - - elif str(item.template) not in templates_in_model: - result.append(item) - return result diff --git a/backends/pixi-build-ros/src/pixi_build_ros/utils.py b/backends/pixi-build-ros/src/pixi_build_ros/utils.py index d75439eb..6af10314 100644 --- a/backends/pixi-build-ros/src/pixi_build_ros/utils.py +++ b/backends/pixi-build-ros/src/pixi_build_ros/utils.py @@ -7,7 +7,7 @@ from catkin_pkg.package import Package as CatkinPackage, parse_package_string, Dependency from pixi_build_backend.types.intermediate_recipe import ConditionalRequirements -from pixi_build_backend.types.item import ItemPackageDependency +from pixi_build_backend.types.item import ItemPackageDependency, VecItemPackageDependency from pixi_build_backend.types.platform import Platform from pixi_build_ros.distro import Distro from rattler import Version @@ -262,3 +262,85 @@ def package_xml_to_conda_requirements( cond.run = run_requirements return cond + + +def find_matching(list_to_find: list[ItemPackageDependency], name: str) -> ItemPackageDependency | None: + for dep in list_to_find: + if dep.concrete.package_name == name: + return dep + else: + return None + + +def normalize_spec(spec: str | None, package_name: str) -> str: + """Normalize a spec by removing package name and handling None.""" + if not spec: + return "" + return spec.removeprefix(package_name).strip() + + +def merge_specs(spec1: str | None, spec2: str | None, package_name: str) -> str: + # remove the package name + version_spec1 = normalize_spec(spec1, package_name) + version_spec2 = normalize_spec(spec2, package_name) + + if " " in version_spec1 or " " in version_spec2: + raise ValueError(f"{version_spec1}, or {version_spec2} contains spaces, cannot merge specifiers.") + + # early out with *, empty or == + if version_spec1 in ["*", ""] or "==" in version_spec2 or version_spec1 == version_spec2: + return spec2 or "" + if version_spec2 in ["*", ""] or "==" in version_spec1: + return spec1 or "" + return package_name + " " + ",".join([version_spec1, version_spec2]) + + +def merge_unique_items( + model: list[ItemPackageDependency] | VecItemPackageDependency, + package: list[ItemPackageDependency] | VecItemPackageDependency, +) -> list[ItemPackageDependency]: + """Merge unique items from source into target.""" + + result: list[ItemPackageDependency] = [] + templates_in_model = [str(i.template) for i in model] + for item in list(model) + list(package): + # It's concrete (i.e. no template) + if item.concrete is not None: + # It does not exist yet in model + item_in_result = find_matching(result, item.concrete.package_name) + if not item_in_result: + result.append(item) + elif item_in_result.concrete.is_source: + # If the existing dependency is source, don't merge - keep the source one + continue + elif item.concrete.is_source: + # If a new item is source, replace the existing one + result = [dep for dep in result if dep.concrete.package_name != item.concrete.package_name] + result.append(item) + else: + new_dep = ItemPackageDependency( + name=merge_specs( + item_in_result.concrete.binary_spec, item.concrete.binary_spec, item.concrete.package_name + ) + ) + result.remove(item_in_result) + result.append(new_dep) + + elif str(item.template) not in templates_in_model: + result.append(item) + return result + + +def merge_requirements( + model_requirements: ConditionalRequirements, + package_requirements: ConditionalRequirements, +) -> ConditionalRequirements: + """Merge two sets of requirements.""" + merged = ConditionalRequirements() + + merged.host = merge_unique_items(model_requirements.host, package_requirements.host) + merged.build = merge_unique_items(model_requirements.build, package_requirements.build) + merged.run = merge_unique_items(model_requirements.run, package_requirements.run) + + # If the dependency is of type Source in one of the requirements, we need to set them to Source for all variants + return merged diff --git a/backends/pixi-build-ros/tests/test_spec_merging.py b/backends/pixi-build-ros/tests/test_spec_merging.py index 1a2feace..e5f78453 100644 --- a/backends/pixi-build-ros/tests/test_spec_merging.py +++ b/backends/pixi-build-ros/tests/test_spec_merging.py @@ -1,6 +1,6 @@ import pytest from pixi_build_backend.types.item import ItemPackageDependency -from pixi_build_ros.ros_generator import merge_unique_items +from pixi_build_ros.utils import merge_unique_items def test_with_star_items(): @@ -40,3 +40,17 @@ def test_specs_with_spaces(): with pytest.raises(ValueError) as exc: merge_unique_items(list1, list2) assert "contains spaces" in str(exc) + + +def test_specs_with_none(): + list1 = [ItemPackageDependency("ros-noetic")] + list2 = [ItemPackageDependency("ros-noetic <=2.0,<3.0")] + result = merge_unique_items(list1, list2) + assert result[0].concrete.binary_spec == list2[0].concrete.binary_spec + + +def test_specs_with_source(): + list1 = [ItemPackageDependency('ros-noetic[url="https://blabla"]')] + list2 = [ItemPackageDependency("ros-noetic <=2.0,<3.0")] + result = merge_unique_items(list1, list2) + assert str(result[0].concrete.source_spec.spec) == str(list1[0].concrete.source_spec.spec)