From 39a78a8f7c986a4ea53918af7af29871600feb06 Mon Sep 17 00:00:00 2001 From: Henrique Antonio Lustosa Ribeiro Silva Date: Sat, 6 Jul 2024 09:39:59 -0300 Subject: [PATCH 01/41] Add potential fix draft and test case --- dart/collision/ode/OdeCollisionDetector.cpp | 75 ++++++++++-- tests/regression/CMakeLists.txt | 8 ++ tests/regression/test_Issue1654.cpp | 124 ++++++++++++++++++++ 3 files changed, 198 insertions(+), 9 deletions(-) create mode 100644 tests/regression/test_Issue1654.cpp diff --git a/dart/collision/ode/OdeCollisionDetector.cpp b/dart/collision/ode/OdeCollisionDetector.cpp index 53d3ac7e82188..9008bfe277c0d 100644 --- a/dart/collision/ode/OdeCollisionDetector.cpp +++ b/dart/collision/ode/OdeCollisionDetector.cpp @@ -48,6 +48,8 @@ #include "dart/dynamics/SphereShape.hpp" #include +#include +#include namespace dart { namespace collision { @@ -70,6 +72,19 @@ Contact convertContact( OdeCollisionObject* b2, const CollisionOption& option); +using CollObjPair = std::pair; +struct obj_pair_hash { + size_t operator()(const CollObjPair& p) const throw() { + auto less = std::min(p.first, p.second); + auto more = std::max(p.first, p.second); + auto h = std::hash{}; + return h(less) ^ h(more); + } +}; + +using ContactManifold = std::unordered_map,obj_pair_hash>; +ContactManifold pastContacts; + struct OdeCollisionCallbackData { dContactGeom* contactGeoms; @@ -88,9 +103,11 @@ struct OdeCollisionCallbackData /// result. std::size_t numContacts; + std::unordered_set hits; + OdeCollisionCallbackData( const CollisionOption& option, CollisionResult* result) - : option(option), result(result), done(false), numContacts(0u) + : option(option), result(result), done(false), numContacts(0u), hits{{}} { // Do nothing } @@ -158,9 +175,15 @@ bool OdeCollisionDetector::collide( OdeCollisionCallbackData data(option, result); data.contactGeoms = contactCollisions; - + dSpaceCollide(odeGroup->getOdeSpaceId(), &data, CollisionCallback); + for (auto& pair : pastContacts) { + if (data.hits.find(pair.first) == data.hits.end()) { + pair.second.clear(); + } + } + return data.numContacts > 0; } @@ -285,8 +308,11 @@ void CollisionCallback(void* data, dGeomID o1, dGeomID o2) cdData->numContacts += numc; - if (result) + if (result) { reportContacts(numc, odeResult, collObj1, collObj2, option, *result); + cdData->hits.insert(std::make_pair(collObj1, collObj2)); + } + } //============================================================================== @@ -300,23 +326,54 @@ void reportContacts( { if (0u == numContacts) return; - + // For binary check, return after adding the first contact point to the result // without the checkings of repeatidity and co-linearity. if (1u == option.maxNumContacts) { result.addContact(convertContact(contactGeoms[0], b1, b2, option)); - return; } - + for (auto i = 0; i < numContacts; ++i) { - result.addContact(convertContact(contactGeoms[i], b1, b2, option)); + result.addContact(convertContact(contactGeoms[i], b1, b2, option)); + } + + const auto pair = std::make_pair(std::move(b1), std::move(b2)); + auto it = pastContacts.find(pair); + if(it == pastContacts.end()) { + pastContacts[pair] = std::vector{}; + it = pastContacts.find(pair); + } - if (result.getNumContacts() >= option.maxNumContacts) - return; + + auto& pastContacsVec = pastContacts[pair]; + auto missing = 3 - numContacts; + auto results_vec_copy = result.getContacts(); + + for (const auto& past_cont : pastContacsVec) { + if (missing <= 0) break; + for (const auto& curr_cont : results_vec_copy) { + auto dist_v = past_cont.point - curr_cont.point; + const auto dist_m = (dist_v.transpose() * dist_v).coeff(0,0); + if (dist_m < 0.001) { + continue; + } + else { + --missing; + result.addContact(past_cont); + } + } + } + for(const auto& item : results_vec_copy) { + pastContacsVec.push_back(item); + } + + if(pastContacsVec.size() > 10) { + pastContacsVec = std::vector(pastContacsVec.begin() + pastContacsVec.size() - 10, pastContacsVec.end()); } } + //============================================================================== Contact convertContact( const dContactGeom& odeContact, diff --git a/tests/regression/CMakeLists.txt b/tests/regression/CMakeLists.txt index e0dd73c6a461d..cee4dcd3074b7 100644 --- a/tests/regression/CMakeLists.txt +++ b/tests/regression/CMakeLists.txt @@ -48,6 +48,14 @@ if(TARGET dart-collision-bullet AND TARGET dart-collision-ode) dart-utils) endif() + + dart_add_test("regression" test_Issue1654) + target_link_libraries(test_Issue1654 + dart-collision-bullet + dart-collision-ode + dart-gui-osg + dart-utils) + if(TARGET dart-utils) dart_add_test("regression" test_Issue1193) target_link_libraries(test_Issue1193 dart-utils) diff --git a/tests/regression/test_Issue1654.cpp b/tests/regression/test_Issue1654.cpp new file mode 100644 index 0000000000000..ef428c206b6b4 --- /dev/null +++ b/tests/regression/test_Issue1654.cpp @@ -0,0 +1,124 @@ +/* + * Copyright (c) 2011-2022, The DART development contributors + * All rights reserved. + * + * The list of contributors can be found at: + * https://github.com/dartsim/dart/blob/master/LICENSE + * + * This file is provided under the following "BSD-style" License: + * Redistribution and use in source and binary forms, with or + * without modification, are permitted provided that the following + * conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + * CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF + * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include + +#include + +using namespace dart; + +class CapsuleTest: public testing::Test, + public testing::WithParamInterface +{ +}; +TEST_P(CapsuleTest, CapsuleCollision) +{ + const double capsuleRadius = 0.2; + const double capsuleHeight = 0.6; + + auto world = dart::simulation::World::create(); + + if (strcmp(GetParam(), "bullet") == 0) + { + world->getConstraintSolver()->setCollisionDetector( + dart::collision::BulletCollisionDetector::create()); + } + else if (strcmp(GetParam(), "ode") == 0) + { + world->getConstraintSolver()->setCollisionDetector( + dart::collision::OdeCollisionDetector::create()); + } + else { + ASSERT_TRUE(false); + } + + auto ground = createBox({10000, 1000, 0.1}, {0, 0, -0.05}); + ground->setMobile(false); + world->addSkeleton(ground); + + ::osg::ref_ptr node + = new gui::osg::RealTimeWorldNode(world); + + auto skeleton = dart::dynamics::Skeleton::create("test"); + dart::dynamics::FreeJoint* joint; + BodyNode* bn; + std::tie(joint, bn) + = skeleton->createJointAndBodyNodePair(); + + Eigen::Isometry3d T_capsule; + T_capsule = Eigen::Translation3d(0, 0, 0.5) + * Eigen::AngleAxisd(M_PI_2, Eigen::Vector3d(0, 1, 0)); + joint->setRelativeTransform(T_capsule); + + auto capsuleNode = bn->createShapeNodeWith< + dart::dynamics::CollisionAspect, + dart::dynamics::DynamicsAspect>( + std::make_shared( + capsuleRadius, capsuleHeight)); + + dart::dynamics::Inertia inertia; + inertia.setMass(1.0); + inertia.setMoment(capsuleNode->getShape()->computeInertia(inertia.getMass())); + bn->setInertia(inertia); + // std::cout << "Inertia: " << bn->getBodyNodeProperties().mInertia.getMoment() + // << std::endl; + + world->addSkeleton(skeleton); + const double tolerance = 0.05; + for (int i = 1; i < 50000; ++i) + { + world->step(); + auto capsulePos = bn->getWorldTransform().translation(); + // std::cout << i << ": " << capsulePos.transpose() << std::endl; + ASSERT_GT(capsulePos.z(), capsuleRadius - tolerance); + } +} + +INSTANTIATE_TEST_CASE_P( + CollisionEngine, + CapsuleTest, + testing::Values("ode")); + // testing::Values("bullet", "ode")); From f7e4a120e0941a4a871b3e04197dfbb381415dc8 Mon Sep 17 00:00:00 2001 From: Henrique Antonio Lustosa Ribeiro Silva Date: Tue, 9 Jul 2024 15:46:54 -0300 Subject: [PATCH 02/41] Fix Collision test --- tests/integration/test_Collision.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/tests/integration/test_Collision.cpp b/tests/integration/test_Collision.cpp index 7f1b7f58f21ad..3a6be4f2c9c69 100644 --- a/tests/integration/test_Collision.cpp +++ b/tests/integration/test_Collision.cpp @@ -482,8 +482,9 @@ void testSphereSphere( EXPECT_TRUE(group->collide(option, &result)); // TODO(JS): BulletCollisionDetector includes a bug related to this. // (see #876) -#if HAVE_BULLET - if (cd->getType() != BulletCollisionDetector::getStaticType()) +#if HAVE_BULLET || HAVE_ODE + if (cd->getType() != BulletCollisionDetector::getStaticType() && + cd->getType() != OdeCollisionDetector::getStaticType()) #endif { EXPECT_EQ(result.getNumContacts(), 1u); From d3aacc4619b5d8115b4a055e0ebf0e3f2922a152 Mon Sep 17 00:00:00 2001 From: Jeongseok Lee Date: Sat, 22 Jun 2024 21:58:45 -0700 Subject: [PATCH 03/41] Remove archlinux support (cherry picked from commit e1e31a7fb24e3c0b7d8565c4322bcd3981e8ceaf) --- .github/workflows/cache_docker.yml | 2 +- .github/workflows/ci_ubuntu.yml | 2 +- docker/dev/v6.14/Dockerfile.archlinux | 51 ------------ docker/dev/v6.14/Dockerfile.archlinux-min | 39 ---------- docker/dev/v6.14/Dockerfile.ubuntu.noble | 1 - docker/dev/v6.14/Dockerfile.ubuntu.oracular | 77 +++++++++++++++++++ .../locales/ko/LC_MESSAGES/overview.po | 4 +- docs/readthedocs/overview.rst | 2 +- 8 files changed, 82 insertions(+), 96 deletions(-) delete mode 100644 docker/dev/v6.14/Dockerfile.archlinux delete mode 100644 docker/dev/v6.14/Dockerfile.archlinux-min create mode 100644 docker/dev/v6.14/Dockerfile.ubuntu.oracular diff --git a/.github/workflows/cache_docker.yml b/.github/workflows/cache_docker.yml index fe37b23f9bf16..e45571d9fc09b 100644 --- a/.github/workflows/cache_docker.yml +++ b/.github/workflows/cache_docker.yml @@ -29,7 +29,7 @@ jobs: strategy: fail-fast: false matrix: - distro: [jammy, noble] + distro: [jammy, noble, oracular] dart_version: [v6.14] platforms: ["linux/amd64,linux/arm64,linux/ppc64le,linux/s390x"] build_min: [OFF] diff --git a/.github/workflows/ci_ubuntu.yml b/.github/workflows/ci_ubuntu.yml index 0b4ada103aff4..0040d27fbd8e0 100644 --- a/.github/workflows/ci_ubuntu.yml +++ b/.github/workflows/ci_ubuntu.yml @@ -29,7 +29,7 @@ jobs: fail-fast: false matrix: # Supported LTS versions - os: [ubuntu-jammy, ubuntu-noble, archlinux] + os: [ubuntu-jammy, ubuntu-noble] build_type: [Release] codecov: [OFF] check_format: [OFF] diff --git a/docker/dev/v6.14/Dockerfile.archlinux b/docker/dev/v6.14/Dockerfile.archlinux deleted file mode 100644 index 5b28271295d39..0000000000000 --- a/docker/dev/v6.14/Dockerfile.archlinux +++ /dev/null @@ -1,51 +0,0 @@ -ARG TARGETPLATFORM=linux/amd64 -FROM --platform=$TARGETPLATFORM jslee02/dart-dev:archlinux-min-v6.14 - -USER builder - -# ============================================================================== -# DART optional dependencies -# ============================================================================== -RUN yay -Syu --needed --noconfirm \ - bullet \ - coin-or-ipopt \ - freeglut \ - nlopt \ - octomap \ - opencl-clhpp \ - opencl-headers \ - opencl-icd-loader \ - openscenegraph \ - pagmo \ - spdlog \ - tinyxml2 \ - urdfdom - -# ============================================================================== -# Python binding dependencies -# ============================================================================== -RUN yay -Syu --needed --noconfirm \ - python3 \ - python-pip \ - pybind11 \ - python-numpy \ - python-pytest \ - python-requests \ - python-setuptools - -USER root - -# ode -RUN git clone https://bitbucket.org/odedevs/ode.git -b 'master' \ - && mkdir -p ode/build \ - && cmake ode \ - -B ode/build \ - -DCMAKE_BUILD_TYPE=Release \ - -DODE_WITH_TESTS=OFF \ - -DODE_WITH_DEMOS=OFF \ - -DODE_WITH_LIBCCD=ON \ - -DODE_WITH_LIBCCD_SYSTEM=ON \ - -DODE_WITH_LIBCCD_BOX_CYL=OFF \ - -DODE_DOUBLE_PRECISION=ON \ - && cmake --build ode/build --target install -j${NUM_CORES} \ - && rm -rf ode diff --git a/docker/dev/v6.14/Dockerfile.archlinux-min b/docker/dev/v6.14/Dockerfile.archlinux-min deleted file mode 100644 index 1fe649e6deb0d..0000000000000 --- a/docker/dev/v6.14/Dockerfile.archlinux-min +++ /dev/null @@ -1,39 +0,0 @@ -ARG TARGETPLATFORM=linux/amd64 -FROM --platform=$TARGETPLATFORM archlinux:latest - -#=============================================================================== -# Install packages only available in pacman -#=============================================================================== -RUN pacman -Syuq --noconfirm glu - -#=============================================================================== -# Install yay -#=============================================================================== -RUN pacman -Syuq --noconfirm git base-devel sudo go -RUN echo "Defaults lecture = never" > /etc/sudoers.d/privacy \ - && echo "%wheel ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/wheel \ - && useradd -m -G wheel -s /bin/bash builder -USER builder -WORKDIR /home/builder -RUN git clone https://aur.archlinux.org/yay.git --single-branch --depth 1 \ - && cd yay \ - && makepkg -si --noconfirm \ - && cd .. \ - && rm -rf .cache yay - -#=============================================================================== -# Build tools -#=============================================================================== -RUN yay -Syu --needed --noconfirm \ - clang \ - cmake \ - doxygen \ - valgrind - -# ============================================================================== -# DART required dependencies -# ============================================================================== -RUN yay -Syu --needed --noconfirm \ - assimp eigen fcl fmt - -USER root diff --git a/docker/dev/v6.14/Dockerfile.ubuntu.noble b/docker/dev/v6.14/Dockerfile.ubuntu.noble index 2a91654d30c68..8882bfd8b3886 100644 --- a/docker/dev/v6.14/Dockerfile.ubuntu.noble +++ b/docker/dev/v6.14/Dockerfile.ubuntu.noble @@ -65,7 +65,6 @@ RUN apt-get install -y --no-install-recommends \ pybind11-dev \ python3 \ python3-dev \ - python3-distutils \ python3-numpy \ python3-pip \ python3-pytest \ diff --git a/docker/dev/v6.14/Dockerfile.ubuntu.oracular b/docker/dev/v6.14/Dockerfile.ubuntu.oracular new file mode 100644 index 0000000000000..4c47e6eabe778 --- /dev/null +++ b/docker/dev/v6.14/Dockerfile.ubuntu.oracular @@ -0,0 +1,77 @@ +ARG TARGETPLATFORM=linux/amd64 +FROM --platform=$TARGETPLATFORM ubuntu:oracular + +ARG DEBIAN_FRONTEND=noninteractive + +# Use /bin/bash to use pushd/popd +SHELL ["/bin/bash", "-c"] + +# Update apt-get +RUN apt-get update -qq + +# ============================================================================== +# Build tools +# ============================================================================== +RUN apt-get install -y --no-install-recommends \ + build-essential \ + clang \ + clang-format-14 \ + cmake \ + curl \ + doxygen \ + git \ + lcov \ + lsb-release \ + pkg-config \ + software-properties-common \ + valgrind + +# ============================================================================== +# DART required dependencies +# ============================================================================== +RUN apt-get install -y --no-install-recommends \ + libassimp-dev \ + libeigen3-dev \ + libfcl-dev \ + libfmt-dev + +# ============================================================================== +# DART optional dependencies +# ============================================================================== + +RUN apt-get install -y --no-install-recommends \ + coinor-libipopt-dev \ + freeglut3-dev \ + libxi-dev \ + libxmu-dev \ + libbullet-dev \ + libtinyxml2-dev \ + liburdfdom-dev \ + liburdfdom-headers-dev \ + libopenscenegraph-dev \ + libnlopt-cxx-dev \ + liboctomap-dev \ + libode-dev \ + libimgui-dev \ + libspdlog-dev \ + libpagmo-dev + +# ============================================================================== +# Python binding dependencies +# ============================================================================== + +RUN apt-get install -y --no-install-recommends \ + libpython3-dev \ + pybind11-dev \ + python3 \ + python3-dev \ + python3-numpy \ + python3-pip \ + python3-pytest \ + python3-setuptools + +# ============================================================================== +# Clean up +# ============================================================================== + +RUN rm -rf /var/lib/apt/lists/* diff --git a/docs/readthedocs/locales/ko/LC_MESSAGES/overview.po b/docs/readthedocs/locales/ko/LC_MESSAGES/overview.po index 60f764a637d1e..890bffb5e68ae 100644 --- a/docs/readthedocs/locales/ko/LC_MESSAGES/overview.po +++ b/docs/readthedocs/locales/ko/LC_MESSAGES/overview.po @@ -100,9 +100,9 @@ msgstr "BSD 라이센스로 배포되는 오픈 소스 C++ 라이브러리 입 #: ../../overview.rst:24 d2ed9cf688bd4dc6b2e1e9f41f61d4bd msgid "" -"Supports multiple platforms including Ubuntu, Archlinux, FreeBSD, macOS, " +"Supports multiple platforms including Ubuntu, FreeBSD, macOS, " "and Windows." -msgstr "Ubuntu, Archlinux, FreeBSD, macOS 및 Windows를 비롯한 여러 플랫폼을 지원합니다." +msgstr "Ubuntu, FreeBSD, macOS 및 Windows를 비롯한 여러 플랫폼을 지원합니다." #: ../../overview.rst:25 ce0dc185f12a49cfb162dffa42518c2c msgid "Fully integrated with Gazebo." diff --git a/docs/readthedocs/overview.rst b/docs/readthedocs/overview.rst index b1ac86184a20b..7af87192ff96e 100644 --- a/docs/readthedocs/overview.rst +++ b/docs/readthedocs/overview.rst @@ -21,7 +21,7 @@ General ~~~~~~~ * Open-source C++ library licensed under the BSD license. -* Supports multiple platforms including Ubuntu, Archlinux, FreeBSD, macOS, and Windows. +* Supports multiple platforms including Ubuntu, FreeBSD, macOS, and Windows. * Fully integrated with Gazebo. * Supports models in URDF and SDF formats. * Provides default integration methods (semi-implicit Euler and RK4) and an extensible API for other numerical integration methods. From 5976fe60e8b1bdf84516c0c6d53c3724031f955e Mon Sep 17 00:00:00 2001 From: Jeongseok Lee Date: Sun, 23 Jun 2024 12:00:32 -0700 Subject: [PATCH 04/41] Remove building archlinux images --- .github/workflows/cache_docker.yml | 45 ------------------------------ 1 file changed, 45 deletions(-) diff --git a/.github/workflows/cache_docker.yml b/.github/workflows/cache_docker.yml index e45571d9fc09b..a5559ce8db0ef 100644 --- a/.github/workflows/cache_docker.yml +++ b/.github/workflows/cache_docker.yml @@ -70,51 +70,6 @@ jobs: - name: Image digest run: echo ${{ steps.docker_build.outputs.digest }} - # Archlinux on amd64 - archlinux: - name: archlinux - runs-on: ubuntu-latest - strategy: - fail-fast: false - matrix: - distro: [archlinux] - dart_version: [v6.14] - build_min: [ON] - env: - OS_VERSION: ${{ matrix.distro }} - DART_VERSION: ${{ matrix.dart_version }} - steps: - # https://github.com/marketplace/actions/docker-setup-qemu - - name: Set up QEMU - uses: docker/setup-qemu-action@v3 - # https://github.com/marketplace/actions/docker-setup-buildx - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v3 - # https://github.com/marketplace/actions/docker-login - - name: Login to DockerHub - uses: docker/login-action@v3 - with: - username: ${{ secrets.DOCKER_USERNAME }} - password: ${{ secrets.DOCKER_PASSWORD }} - # https://github.com/marketplace/actions/build-and-push-docker-images - - name: Build and push (min) - if: ${{ matrix.build_min == 'ON' }} - id: docker_build_min - uses: docker/build-push-action@v6 - with: - file: ./docker/dev/${{ env.DART_VERSION }}/Dockerfile.${{ env.OS_VERSION }}-min - push: true - tags: ${{ env.DOCKER_REPO }}:${{ env.OS_VERSION }}-min-${{ env.DART_VERSION }} - - name: Build and push - id: docker_build - uses: docker/build-push-action@v6 - with: - file: ./docker/dev/${{ env.DART_VERSION }}/Dockerfile.${{ env.OS_VERSION }} - push: true - tags: ${{ env.DOCKER_REPO }}:${{ env.OS_VERSION }}-${{ env.DART_VERSION }} - - name: Image digest - run: echo ${{ steps.docker_build.outputs.digest }} - # Manylinux min manylinux_min: name: manylinux (min) From a020c5030e422b429634feed03346c91a7619604 Mon Sep 17 00:00:00 2001 From: Jeongseok Lee Date: Sun, 23 Jun 2024 12:04:16 -0700 Subject: [PATCH 05/41] Upgrade pybind11 to v2.12.0 (cherry picked from commit 24b2c723a098f9ae7af440e2c07a1c84ec3f7b88) --- python/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/python/CMakeLists.txt b/python/CMakeLists.txt index cc23a4001ca7b..37cadf4f8de14 100644 --- a/python/CMakeLists.txt +++ b/python/CMakeLists.txt @@ -10,7 +10,7 @@ include(FetchContent) FetchContent_Declare( pybind11 GIT_REPOSITORY https://github.com/pybind/pybind11 - GIT_TAG v2.11.1 + GIT_TAG v2.12.0 ) FetchContent_MakeAvailable(pybind11) From e8ed6e4460cb5459df23fbdc0fb026319a21f873 Mon Sep 17 00:00:00 2001 From: Jeongseok Lee Date: Mon, 24 Jun 2024 22:13:56 -0700 Subject: [PATCH 06/41] Update changelog for 6.14.0 --- CHANGELOG.md | 26 +++++++++++++++++++++----- 1 file changed, 21 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 673cad6947323..5e32bce793c1b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,20 +2,36 @@ ## DART 6 -### [DART 6.14.0 (TBD)](https://github.com/dartsim/dart/milestone/73?closed=1) +### [DART 6.14.0 (2024-06-24)](https://github.com/dartsim/dart/milestone/73?closed=1) + +This release is mostly a maintenance update, including various CI updates and build fixes for recent development environment toolsets and dependencies. * Tested Platforms * Linux - * Ubuntu 22.04 LTS on amd64 / GCC 11.2 / amd64 - * (experimental) Arch Linux - * macOS 12 (Monterey) / Clang 13 / amd64 - * Windows / Microsoft Visual Studio 2022 / amd64 + * Ubuntu 22.04 LTS / GCC 11.4 / x86_64 + * Ubuntu 24.04 LTS / GCC 13.2 / x86_64 + * macOS 14 / Clang 15 / arm64 + * Windows / MSVC 19.40 / x86_64 * Breaking Changes * Removed planning component +* Build + + * Added Pixi support + +* General + + * Added profile interface with Tracy backend support + * Added benchmark setup, including boxes and kinematics benchmarks + +* Dynamics + + * Allowed specifying mimic joint properties per DoF: [#1752](https://github.com/dartsim/dart/pull/1752) + * [Improved performance in constructing LCP problem](https://github.com/dartsim/dart/commit/76d8fe1a72f6925c06f64eea3d2cd135234b59de) + ### [DART 6.13.2 (2024-03-17)](https://github.com/dartsim/dart/milestone/75?closed=1) * Tested Platforms From 3a27135e7d12cd3851a333e3aa0536b08df62fea Mon Sep 17 00:00:00 2001 From: Jeongseok Lee Date: Wed, 26 Jun 2024 06:55:10 -0700 Subject: [PATCH 07/41] Bump version to 6.15 --- CHANGELOG.md | 10 ++++++++++ examples/atlas_puppet/CMakeLists.txt | 2 +- examples/atlas_simbicon/CMakeLists.txt | 2 +- examples/biped_stand/CMakeLists.txt | 2 +- examples/box_stacking/CMakeLists.txt | 2 +- examples/boxes/CMakeLists.txt | 2 +- .../glut_add_delete_skels/CMakeLists.txt | 2 +- .../glut_atlas_simbicon/CMakeLists.txt | 2 +- .../glut_biped_stand/CMakeLists.txt | 2 +- .../glut_hardcoded_design/CMakeLists.txt | 2 +- .../glut_human_joint_limits/CMakeLists.txt | 2 +- .../glut_hybrid_dynamics/CMakeLists.txt | 2 +- .../glut_joint_constraints/CMakeLists.txt | 2 +- .../glut_mixed_chain/CMakeLists.txt | 2 +- .../glut_operational_space_control/CMakeLists.txt | 2 +- .../glut_rigid_chain/CMakeLists.txt | 2 +- .../glut_rigid_cubes/CMakeLists.txt | 2 +- .../deprecated_examples/glut_rigid_loop/CMakeLists.txt | 2 +- .../glut_rigid_shapes/CMakeLists.txt | 2 +- .../glut_simple_frames/CMakeLists.txt | 2 +- .../glut_soft_bodies/CMakeLists.txt | 2 +- .../deprecated_examples/glut_vehicle/CMakeLists.txt | 2 +- examples/drag_and_drop/CMakeLists.txt | 2 +- examples/empty/CMakeLists.txt | 2 +- examples/fetch/CMakeLists.txt | 2 +- examples/heightmap/CMakeLists.txt | 2 +- examples/hello_world/CMakeLists.txt | 2 +- examples/hubo_puppet/CMakeLists.txt | 2 +- examples/imgui/CMakeLists.txt | 2 +- examples/operational_space_control/CMakeLists.txt | 2 +- examples/point_cloud/CMakeLists.txt | 2 +- examples/rerun/CMakeLists.txt | 2 +- examples/rigid_shapes/CMakeLists.txt | 2 +- examples/soft_bodies/CMakeLists.txt | 2 +- examples/speed_test/CMakeLists.txt | 2 +- examples/tinkertoy/CMakeLists.txt | 2 +- examples/wam_ikfast/CMakeLists.txt | 2 +- package.xml | 2 +- pixi.toml | 2 +- tutorials/tutorial_biped/CMakeLists.txt | 2 +- tutorials/tutorial_biped_finished/CMakeLists.txt | 2 +- tutorials/tutorial_collisions/CMakeLists.txt | 2 +- tutorials/tutorial_collisions_finished/CMakeLists.txt | 2 +- tutorials/tutorial_dominoes/CMakeLists.txt | 2 +- tutorials/tutorial_dominoes_finished/CMakeLists.txt | 2 +- tutorials/tutorial_multi_pendulum/CMakeLists.txt | 2 +- .../tutorial_multi_pendulum_finished/CMakeLists.txt | 2 +- 47 files changed, 56 insertions(+), 46 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5e32bce793c1b..ef4c6c5ce302e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,16 @@ ## DART 6 +### [DART 6.15.0 (TBD)](https://github.com/dartsim/dart/milestone/77?closed=1) + +* Tested Platforms + + * Linux + * Ubuntu 22.04 LTS / GCC 11.4 / x86_64 + * Ubuntu 24.04 LTS / GCC 13.2 / x86_64 + * macOS 14 / Clang 15 / arm64 + * Windows / MSVC 19.40 / x86_64 + ### [DART 6.14.0 (2024-06-24)](https://github.com/dartsim/dart/milestone/73?closed=1) This release is mostly a maintenance update, including various CI updates and build fixes for recent development environment toolsets and dependencies. diff --git a/examples/atlas_puppet/CMakeLists.txt b/examples/atlas_puppet/CMakeLists.txt index 444b2dfbfee04..12044ebd8d2b5 100644 --- a/examples/atlas_puppet/CMakeLists.txt +++ b/examples/atlas_puppet/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/examples/atlas_simbicon/CMakeLists.txt b/examples/atlas_simbicon/CMakeLists.txt index 444b2dfbfee04..12044ebd8d2b5 100644 --- a/examples/atlas_simbicon/CMakeLists.txt +++ b/examples/atlas_simbicon/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/examples/biped_stand/CMakeLists.txt b/examples/biped_stand/CMakeLists.txt index 4119a1700da82..eb6e8bee256c0 100644 --- a/examples/biped_stand/CMakeLists.txt +++ b/examples/biped_stand/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/examples/box_stacking/CMakeLists.txt b/examples/box_stacking/CMakeLists.txt index 444b2dfbfee04..12044ebd8d2b5 100644 --- a/examples/box_stacking/CMakeLists.txt +++ b/examples/box_stacking/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/examples/boxes/CMakeLists.txt b/examples/boxes/CMakeLists.txt index ca226d839c86c..28ec0e3bad52b 100644 --- a/examples/boxes/CMakeLists.txt +++ b/examples/boxes/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/examples/deprecated_examples/glut_add_delete_skels/CMakeLists.txt b/examples/deprecated_examples/glut_add_delete_skels/CMakeLists.txt index 098159adab0d3..1215be022a26f 100644 --- a/examples/deprecated_examples/glut_add_delete_skels/CMakeLists.txt +++ b/examples/deprecated_examples/glut_add_delete_skels/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/examples/deprecated_examples/glut_atlas_simbicon/CMakeLists.txt b/examples/deprecated_examples/glut_atlas_simbicon/CMakeLists.txt index e912116a765b7..9861ff2e877e8 100644 --- a/examples/deprecated_examples/glut_atlas_simbicon/CMakeLists.txt +++ b/examples/deprecated_examples/glut_atlas_simbicon/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/examples/deprecated_examples/glut_biped_stand/CMakeLists.txt b/examples/deprecated_examples/glut_biped_stand/CMakeLists.txt index e912116a765b7..9861ff2e877e8 100644 --- a/examples/deprecated_examples/glut_biped_stand/CMakeLists.txt +++ b/examples/deprecated_examples/glut_biped_stand/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/examples/deprecated_examples/glut_hardcoded_design/CMakeLists.txt b/examples/deprecated_examples/glut_hardcoded_design/CMakeLists.txt index e912116a765b7..9861ff2e877e8 100644 --- a/examples/deprecated_examples/glut_hardcoded_design/CMakeLists.txt +++ b/examples/deprecated_examples/glut_hardcoded_design/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/examples/deprecated_examples/glut_human_joint_limits/CMakeLists.txt b/examples/deprecated_examples/glut_human_joint_limits/CMakeLists.txt index e9bfe3ff405ec..0200cefdce9ad 100644 --- a/examples/deprecated_examples/glut_human_joint_limits/CMakeLists.txt +++ b/examples/deprecated_examples/glut_human_joint_limits/CMakeLists.txt @@ -41,7 +41,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/examples/deprecated_examples/glut_hybrid_dynamics/CMakeLists.txt b/examples/deprecated_examples/glut_hybrid_dynamics/CMakeLists.txt index e912116a765b7..9861ff2e877e8 100644 --- a/examples/deprecated_examples/glut_hybrid_dynamics/CMakeLists.txt +++ b/examples/deprecated_examples/glut_hybrid_dynamics/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/examples/deprecated_examples/glut_joint_constraints/CMakeLists.txt b/examples/deprecated_examples/glut_joint_constraints/CMakeLists.txt index e912116a765b7..9861ff2e877e8 100644 --- a/examples/deprecated_examples/glut_joint_constraints/CMakeLists.txt +++ b/examples/deprecated_examples/glut_joint_constraints/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/examples/deprecated_examples/glut_mixed_chain/CMakeLists.txt b/examples/deprecated_examples/glut_mixed_chain/CMakeLists.txt index e912116a765b7..9861ff2e877e8 100644 --- a/examples/deprecated_examples/glut_mixed_chain/CMakeLists.txt +++ b/examples/deprecated_examples/glut_mixed_chain/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/examples/deprecated_examples/glut_operational_space_control/CMakeLists.txt b/examples/deprecated_examples/glut_operational_space_control/CMakeLists.txt index e912116a765b7..9861ff2e877e8 100644 --- a/examples/deprecated_examples/glut_operational_space_control/CMakeLists.txt +++ b/examples/deprecated_examples/glut_operational_space_control/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/examples/deprecated_examples/glut_rigid_chain/CMakeLists.txt b/examples/deprecated_examples/glut_rigid_chain/CMakeLists.txt index e912116a765b7..9861ff2e877e8 100644 --- a/examples/deprecated_examples/glut_rigid_chain/CMakeLists.txt +++ b/examples/deprecated_examples/glut_rigid_chain/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/examples/deprecated_examples/glut_rigid_cubes/CMakeLists.txt b/examples/deprecated_examples/glut_rigid_cubes/CMakeLists.txt index e912116a765b7..9861ff2e877e8 100644 --- a/examples/deprecated_examples/glut_rigid_cubes/CMakeLists.txt +++ b/examples/deprecated_examples/glut_rigid_cubes/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/examples/deprecated_examples/glut_rigid_loop/CMakeLists.txt b/examples/deprecated_examples/glut_rigid_loop/CMakeLists.txt index e912116a765b7..9861ff2e877e8 100644 --- a/examples/deprecated_examples/glut_rigid_loop/CMakeLists.txt +++ b/examples/deprecated_examples/glut_rigid_loop/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/examples/deprecated_examples/glut_rigid_shapes/CMakeLists.txt b/examples/deprecated_examples/glut_rigid_shapes/CMakeLists.txt index e912116a765b7..9861ff2e877e8 100644 --- a/examples/deprecated_examples/glut_rigid_shapes/CMakeLists.txt +++ b/examples/deprecated_examples/glut_rigid_shapes/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/examples/deprecated_examples/glut_simple_frames/CMakeLists.txt b/examples/deprecated_examples/glut_simple_frames/CMakeLists.txt index e912116a765b7..9861ff2e877e8 100644 --- a/examples/deprecated_examples/glut_simple_frames/CMakeLists.txt +++ b/examples/deprecated_examples/glut_simple_frames/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/examples/deprecated_examples/glut_soft_bodies/CMakeLists.txt b/examples/deprecated_examples/glut_soft_bodies/CMakeLists.txt index e912116a765b7..9861ff2e877e8 100644 --- a/examples/deprecated_examples/glut_soft_bodies/CMakeLists.txt +++ b/examples/deprecated_examples/glut_soft_bodies/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/examples/deprecated_examples/glut_vehicle/CMakeLists.txt b/examples/deprecated_examples/glut_vehicle/CMakeLists.txt index e912116a765b7..9861ff2e877e8 100644 --- a/examples/deprecated_examples/glut_vehicle/CMakeLists.txt +++ b/examples/deprecated_examples/glut_vehicle/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/examples/drag_and_drop/CMakeLists.txt b/examples/drag_and_drop/CMakeLists.txt index 444b2dfbfee04..12044ebd8d2b5 100644 --- a/examples/drag_and_drop/CMakeLists.txt +++ b/examples/drag_and_drop/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/examples/empty/CMakeLists.txt b/examples/empty/CMakeLists.txt index 444b2dfbfee04..12044ebd8d2b5 100644 --- a/examples/empty/CMakeLists.txt +++ b/examples/empty/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/examples/fetch/CMakeLists.txt b/examples/fetch/CMakeLists.txt index dfc622f5cdbb0..638f60bcd6ce1 100644 --- a/examples/fetch/CMakeLists.txt +++ b/examples/fetch/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/examples/heightmap/CMakeLists.txt b/examples/heightmap/CMakeLists.txt index 444b2dfbfee04..12044ebd8d2b5 100644 --- a/examples/heightmap/CMakeLists.txt +++ b/examples/heightmap/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/examples/hello_world/CMakeLists.txt b/examples/hello_world/CMakeLists.txt index 444b2dfbfee04..12044ebd8d2b5 100644 --- a/examples/hello_world/CMakeLists.txt +++ b/examples/hello_world/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/examples/hubo_puppet/CMakeLists.txt b/examples/hubo_puppet/CMakeLists.txt index 444b2dfbfee04..12044ebd8d2b5 100644 --- a/examples/hubo_puppet/CMakeLists.txt +++ b/examples/hubo_puppet/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/examples/imgui/CMakeLists.txt b/examples/imgui/CMakeLists.txt index 444b2dfbfee04..12044ebd8d2b5 100644 --- a/examples/imgui/CMakeLists.txt +++ b/examples/imgui/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/examples/operational_space_control/CMakeLists.txt b/examples/operational_space_control/CMakeLists.txt index 444b2dfbfee04..12044ebd8d2b5 100644 --- a/examples/operational_space_control/CMakeLists.txt +++ b/examples/operational_space_control/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/examples/point_cloud/CMakeLists.txt b/examples/point_cloud/CMakeLists.txt index 444b2dfbfee04..12044ebd8d2b5 100644 --- a/examples/point_cloud/CMakeLists.txt +++ b/examples/point_cloud/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/examples/rerun/CMakeLists.txt b/examples/rerun/CMakeLists.txt index 7d117e0fec73e..730a6e2da02b1 100644 --- a/examples/rerun/CMakeLists.txt +++ b/examples/rerun/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/examples/rigid_shapes/CMakeLists.txt b/examples/rigid_shapes/CMakeLists.txt index ca226d839c86c..28ec0e3bad52b 100644 --- a/examples/rigid_shapes/CMakeLists.txt +++ b/examples/rigid_shapes/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/examples/soft_bodies/CMakeLists.txt b/examples/soft_bodies/CMakeLists.txt index 444b2dfbfee04..12044ebd8d2b5 100644 --- a/examples/soft_bodies/CMakeLists.txt +++ b/examples/soft_bodies/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/examples/speed_test/CMakeLists.txt b/examples/speed_test/CMakeLists.txt index 7d117e0fec73e..730a6e2da02b1 100644 --- a/examples/speed_test/CMakeLists.txt +++ b/examples/speed_test/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/examples/tinkertoy/CMakeLists.txt b/examples/tinkertoy/CMakeLists.txt index 444b2dfbfee04..12044ebd8d2b5 100644 --- a/examples/tinkertoy/CMakeLists.txt +++ b/examples/tinkertoy/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/examples/wam_ikfast/CMakeLists.txt b/examples/wam_ikfast/CMakeLists.txt index 9cb6799ea98f7..87e31e361993c 100644 --- a/examples/wam_ikfast/CMakeLists.txt +++ b/examples/wam_ikfast/CMakeLists.txt @@ -14,7 +14,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/package.xml b/package.xml index 7b11f8984edbf..baf5eac500ead 100644 --- a/package.xml +++ b/package.xml @@ -4,7 +4,7 @@ a Catkin workspace. Catkin is not required to build DART. For more information, see: http://ros.org/reps/rep-0136.html --> dartsim - 6.14.0 + 6.15.0 DART (Dynamic Animation and Robotics Toolkit) is a collaborative, cross-platform, open source library created by the Georgia Tech Graphics diff --git a/pixi.toml b/pixi.toml index a660b0f19fb16..ee7cdc62519bd 100644 --- a/pixi.toml +++ b/pixi.toml @@ -1,6 +1,6 @@ [project] name = "DART" -version = "6.14.0" +version = "6.15.0" description = "Dynamic Animation and Robotics Toolkit" authors = ["Jeongseok Lee "] channels = ["conda-forge"] diff --git a/tutorials/tutorial_biped/CMakeLists.txt b/tutorials/tutorial_biped/CMakeLists.txt index 7d82e65fe177d..843e0a2d81c52 100644 --- a/tutorials/tutorial_biped/CMakeLists.txt +++ b/tutorials/tutorial_biped/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/tutorials/tutorial_biped_finished/CMakeLists.txt b/tutorials/tutorial_biped_finished/CMakeLists.txt index 7d82e65fe177d..843e0a2d81c52 100644 --- a/tutorials/tutorial_biped_finished/CMakeLists.txt +++ b/tutorials/tutorial_biped_finished/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/tutorials/tutorial_collisions/CMakeLists.txt b/tutorials/tutorial_collisions/CMakeLists.txt index a7d0ac8a2b66c..801a414d4bae1 100644 --- a/tutorials/tutorial_collisions/CMakeLists.txt +++ b/tutorials/tutorial_collisions/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/tutorials/tutorial_collisions_finished/CMakeLists.txt b/tutorials/tutorial_collisions_finished/CMakeLists.txt index a7d0ac8a2b66c..801a414d4bae1 100644 --- a/tutorials/tutorial_collisions_finished/CMakeLists.txt +++ b/tutorials/tutorial_collisions_finished/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/tutorials/tutorial_dominoes/CMakeLists.txt b/tutorials/tutorial_dominoes/CMakeLists.txt index a7d0ac8a2b66c..801a414d4bae1 100644 --- a/tutorials/tutorial_dominoes/CMakeLists.txt +++ b/tutorials/tutorial_dominoes/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/tutorials/tutorial_dominoes_finished/CMakeLists.txt b/tutorials/tutorial_dominoes_finished/CMakeLists.txt index a7d0ac8a2b66c..801a414d4bae1 100644 --- a/tutorials/tutorial_dominoes_finished/CMakeLists.txt +++ b/tutorials/tutorial_dominoes_finished/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/tutorials/tutorial_multi_pendulum/CMakeLists.txt b/tutorials/tutorial_multi_pendulum/CMakeLists.txt index a7d0ac8a2b66c..801a414d4bae1 100644 --- a/tutorials/tutorial_multi_pendulum/CMakeLists.txt +++ b/tutorials/tutorial_multi_pendulum/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) diff --git a/tutorials/tutorial_multi_pendulum_finished/CMakeLists.txt b/tutorials/tutorial_multi_pendulum_finished/CMakeLists.txt index a7d0ac8a2b66c..801a414d4bae1 100644 --- a/tutorials/tutorial_multi_pendulum_finished/CMakeLists.txt +++ b/tutorials/tutorial_multi_pendulum_finished/CMakeLists.txt @@ -12,7 +12,7 @@ if(DART_IN_SOURCE_BUILD) return() endif() -find_package(DART 6.14.0 REQUIRED COMPONENTS ${required_components} CONFIG) +find_package(DART 6.15.0 REQUIRED COMPONENTS ${required_components} CONFIG) file(GLOB srcs "*.cpp" "*.hpp") add_executable(${example_name} ${srcs}) From b4c6db348ebec30c131fc015ed25d34f2026f6d2 Mon Sep 17 00:00:00 2001 From: Steve Peters Date: Wed, 26 Jun 2024 08:13:59 -0700 Subject: [PATCH 08/41] Include CTest for BUILD_TESTING option (#1819) Signed-off-by: Steve Peters Co-authored-by: Jeongseok (JS) Lee --- CMakeLists.txt | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 7e2ef2722ec21..0b57e6c501612 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -379,11 +379,13 @@ set(DART_IN_SOURCE_BUILD TRUE) if(TARGET dart) # Add a "tests" target to build unit tests. - enable_testing() - if(MSVC) - add_subdirectory(tests) - else() - add_subdirectory(tests EXCLUDE_FROM_ALL) + include(CTest) + if (BUILD_TESTING) + if(MSVC) + add_subdirectory(tests) + else() + add_subdirectory(tests EXCLUDE_FROM_ALL) + endif() endif() # Add example subdirectories and an "examples" target. @@ -431,7 +433,10 @@ endif() add_subdirectory(python) # Add 'ALL' target that builds everything -set(all_target_candidates tests_and_run dartpy pytest) +set(all_target_candidates dartpy) +if (BUILD_TESTING) + list(APPEND all_target_candidates tests_and_run pytest) +endif() foreach(target_candidate ${all_target_candidates}) if(TARGET ${target_candidate}) list(APPEND all_targets ${target_candidate}) @@ -687,7 +692,9 @@ endif() #=============================================================================== message(STATUS "") message(STATUS "Run 'make' to build all the components") -message(STATUS "Run 'make tests' to build all the tests") +if (BUILD_TESTING) + message(STATUS "Run 'make tests' to build all the tests") +endif() message(STATUS "Run 'make examples' to build all the examples") message(STATUS "Run 'make tutorials' to build all the tutorials") message(STATUS "Run 'make view_docs' to see the API documentation") From bc57e9b476efd113b5db76fad13e4d774f04c726 Mon Sep 17 00:00:00 2001 From: Jeongseok Lee Date: Wed, 26 Jun 2024 10:45:34 -0700 Subject: [PATCH 09/41] Fix doxygen folder path (cherry picked from commit 15c5150ddb24c31a00183e2bac835600c113ef80) --- CMakeLists.txt | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 0b57e6c501612..c743989eb2b7a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -660,10 +660,9 @@ if(DOXYGEN_FOUND) COMMAND find "${DOXYGEN_OUTPUT_ROOT}" -type f -name "*.html" -exec sed -i 's: doxygen=\"[^\"]*\"::g' {} \\$ COMMAND ${CMAKE_COMMAND} -E echo "Done." - WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/doxygen + WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/docs/doxygen DEPENDS ${DOXYGEN_DOXYFILE} ) - # add_custom_target(docs ALL DEPENDS ${DOXYGEN_HTML_INDEX}) add_custom_target(docs DEPENDS ${DOXYGEN_HTML_INDEX}) add_custom_target( docs_forced @@ -671,7 +670,7 @@ if(DOXYGEN_FOUND) COMMAND ${DOXYGEN_EXECUTABLE} -u ${DOXYGEN_DOXYFILE} COMMAND ${DOXYGEN_EXECUTABLE} ${DOXYGEN_DOXYFILE} COMMAND ${CMAKE_COMMAND} -E echo "Done." - WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/doxygen + WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/docs/doxygen ) # Add the "view_docs" target that opens the generated API documentation. From 9d9d1bc3e42fd30ac6d22779548282c027487982 Mon Sep 17 00:00:00 2001 From: Jeongseok Lee Date: Thu, 27 Jun 2024 03:26:32 -0700 Subject: [PATCH 10/41] Replace pagmo with pagmo-devel --- pixi.lock | 437 ++++++++++++++++++++++++++++++++++++------------------ pixi.toml | 8 +- 2 files changed, 296 insertions(+), 149 deletions(-) diff --git a/pixi.lock b/pixi.lock index a3eddd1bb0fa2..50bb64b8ac491 100644 --- a/pixi.lock +++ b/pixi.lock @@ -53,7 +53,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/ipopt-3.14.16-h3696c94_4.conda - conda: https://conda.anaconda.org/conda-forge/noarch/isort-5.13.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.1-h166bdaf_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.21.2-h659d440_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.21.3-h659f571_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/lame-3.100-h166bdaf_1003.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.40-hf3520f5_7.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/lerc-4.0.0-h27087fc_0.tar.bz2 @@ -74,15 +74,15 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.6.2-h59595ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.4.2-h7f98852_5.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libflac-1.4.3-h59595ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-13.2.0-h77fa898_11.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcrypt-1.10.3-hd590300_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-13.2.0-h77fa898_13.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcrypt-1.11.0-h4ab18f5_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgettextpo-0.22.5-h59595ed_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgettextpo-devel-0.22.5-h59595ed_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-13.2.0-h69a702a_11.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-13.2.0-h3d2ce59_11.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-13.2.0-h69a702a_13.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-13.2.0-h3d2ce59_13.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libglib-2.80.2-hf974151_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-13.2.0-h77fa898_11.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgpg-error-1.49-h4f305b6_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-13.2.0-h77fa898_13.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgpg-error-1.50-h4f305b6_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libhwloc-2.10.0-default_h5622ce7_1001.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.17-hd590300_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libidn2-2.3.7-hd590300_0.conda @@ -92,7 +92,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.58.0-h47da74e_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libnsl-2.0.1-hd590300_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libode-0.16.2-h30efb56_14.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libogg-1.3.4-h7f98852_1.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/libogg-1.3.5-h4ab18f5_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.27-pthreads_h413a1c8_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libopus-1.3.1-h7f98852_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libpciaccess-0.18-hd590300_0.conda @@ -102,7 +102,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libspral-2024.05.08-h1b93dcb_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.46.0-hde9e2c9_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libssh2-1.11.0-h0841786_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-13.2.0-hc0a3c3a_11.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-13.2.0-hc0a3c3a_13.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libsystemd0-255-h3516f8a_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libtasn1-4.19.0-h166bdaf_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.6.0-h1dd3fc0_3.conda @@ -132,10 +132,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/octomap-1.9.8-h924138e_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/openh264-2.3.1-hcb278e6_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/openscenegraph-3.6.5-h82d3af2_18.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.3.1-h4ab18f5_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.3.1-h4ab18f5_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/p11-kit-0.24.1-hc5aa10d_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pagmo-2.19.0-h53026fa_9.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pagmo-devel-2.19.0-h9b4894b_9.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pcre-8.45-h9c3ff4c_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/pcre2-10.43-hcad00b1_0.conda @@ -156,6 +157,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/spdlog-1.12.0-hd2e6256_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/svt-av1-1.4.1-hcb278e6_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/tbb-2021.12.0-h297d8ca_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/tbb-devel-2021.12.0-h7c56ddd_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/tinyxml2-10.0.0-h59595ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h4845f30_101.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 @@ -236,7 +238,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/ipopt-3.14.16-h8b46a37_4.conda - conda: https://conda.anaconda.org/conda-forge/noarch/isort-5.13.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/krb5-1.21.2-hb884880_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/krb5-1.21.3-h37d8d59_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/lame-3.100-hb7f2c08_1003.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/lerc-4.0.0-hb486fe8_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libaec-1.1.3-h73e2aa4_0.conda @@ -296,10 +298,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/octomap-1.9.8-hb8565cd_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/openh264-2.3.1-hf0c8a7f_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/openscenegraph-3.6.5-h70c001c_18.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.3.1-h87427d6_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.3.1-h87427d6_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/p11-kit-0.24.1-h65f8906_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/pagmo-2.19.0-h50a4cf7_9.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pagmo-devel-2.19.0-h86917f8_9.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/pcre-8.45-he49afe7_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda @@ -318,6 +321,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/spdlog-1.12.0-h8dd852c_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/svt-av1-1.4.1-hf0c8a7f_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/tbb-2021.12.0-h3c5361c_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/tbb-devel-2021.12.0-h7393e1e_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/tinyxml2-10.0.0-h73e2aa4_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-h1abcd95_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 @@ -382,7 +386,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ipopt-3.14.16-h387674d_4.conda - conda: https://conda.anaconda.org/conda-forge/noarch/isort-5.13.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.21.2-h92f50d5_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.21.3-h237132a_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lame-3.100-h1a8c8d9_1003.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lerc-4.0.0-h9a09cb3_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libaec-1.1.3-hebf3989_0.conda @@ -443,10 +447,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/octomap-1.9.8-hffc8910_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openh264-2.3.1-hb7217d7_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openscenegraph-3.6.5-h71ba0d9_18.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.3.1-hfb2fe0b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.3.1-hfb2fe0b_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/p11-kit-0.24.1-h29577a5_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pagmo-2.19.0-ha6598ea_9.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pagmo-devel-2.19.0-h3ed7ff5_9.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pcre-8.45-hbdafb3b_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pcre2-10.43-h26f9a81_0.conda @@ -466,6 +471,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/spdlog-1.12.0-he64bfa9_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/svt-av1-1.4.1-h7ea286d_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tbb-2021.12.0-h420ef59_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tbb-devel-2021.12.0-h94f16c5_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tinyxml2-10.0.0-hebf3989_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h5083fa2_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 @@ -522,7 +528,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/intel-openmp-2024.1.0-h57928b3_966.conda - conda: https://conda.anaconda.org/conda-forge/win-64/ipopt-3.14.16-ha3daec3_4.conda - conda: https://conda.anaconda.org/conda-forge/noarch/isort-5.13.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.21.2-heb0366b_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.21.3-hdf4eb48_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/lerc-4.0.0-h63175ca_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libaec-1.1.3-h63175ca_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libblas-3.9.0-22_win64_mkl.conda @@ -560,9 +566,10 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/openh264-2.3.1-h63175ca_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/openmp-5.0.0-vc14_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/openscenegraph-3.6.5-h2596158_18.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.3.1-h2466b09_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.3.1-h2466b09_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pagmo-2.19.0-hac87e97_9.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pagmo-devel-2.19.0-h24fcb66_9.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pcre-8.45-h0e60522_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/pcre2-10.44-h3d7b363_0.conda @@ -579,6 +586,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/spdlog-1.12.0-h64d2f7d_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/svt-av1-1.4.1-h63175ca_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/tbb-2021.12.0-hc790b64_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/tbb-devel-2021.12.0-hb551fcf_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/tinyxml2-10.0.0-h63175ca_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h5226925_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 @@ -2858,74 +2866,72 @@ packages: timestamp: 1646151697040 - kind: conda name: krb5 - version: 1.21.2 - build: h659d440_0 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.21.2-h659d440_0.conda - sha256: 259bfaae731989b252b7d2228c1330ef91b641c9d68ff87dae02cbae682cb3e4 - md5: cd95826dbd331ed1be26bdf401432844 + version: 1.21.3 + build: h237132a_0 + subdir: osx-arm64 + url: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.21.3-h237132a_0.conda + sha256: 4442f957c3c77d69d9da3521268cad5d54c9033f1a73f99cde0a3658937b159b + md5: c6dc8a0fdec13a0565936655c33069a1 depends: - - keyutils >=1.6.1,<2.0a0 + - __osx >=11.0 + - libcxx >=16 - libedit >=3.1.20191231,<3.2.0a0 - libedit >=3.1.20191231,<4.0a0 - - libgcc-ng >=12 - - libstdcxx-ng >=12 - - openssl >=3.1.2,<4.0a0 + - openssl >=3.3.1,<4.0a0 license: MIT - license_family: MIT - size: 1371181 - timestamp: 1692097755782 + size: 1155530 + timestamp: 1719463474401 - kind: conda name: krb5 - version: 1.21.2 - build: h92f50d5_0 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.21.2-h92f50d5_0.conda - sha256: 70bdb9b4589ec7c7d440e485ae22b5a352335ffeb91a771d4c162996c3070875 - md5: 92f1cff174a538e0722bf2efb16fc0b2 + version: 1.21.3 + build: h37d8d59_0 + subdir: osx-64 + url: https://conda.anaconda.org/conda-forge/osx-64/krb5-1.21.3-h37d8d59_0.conda + sha256: 83b52685a4ce542772f0892a0f05764ac69d57187975579a0835ff255ae3ef9c + md5: d4765c524b1d91567886bde656fb514b depends: - - libcxx >=15.0.7 + - __osx >=10.13 + - libcxx >=16 - libedit >=3.1.20191231,<3.2.0a0 - libedit >=3.1.20191231,<4.0a0 - - openssl >=3.1.2,<4.0a0 + - openssl >=3.3.1,<4.0a0 license: MIT - license_family: MIT - size: 1195575 - timestamp: 1692098070699 + size: 1185323 + timestamp: 1719463492984 - kind: conda name: krb5 - version: 1.21.2 - build: hb884880_0 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/krb5-1.21.2-hb884880_0.conda - sha256: 081ae2008a21edf57c048f331a17c65d1ccb52d6ca2f87ee031a73eff4dc0fc6 - md5: 80505a68783f01dc8d7308c075261b2f + version: 1.21.3 + build: h659f571_0 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.21.3-h659f571_0.conda + sha256: 99df692f7a8a5c27cd14b5fb1374ee55e756631b9c3d659ed3ee60830249b238 + md5: 3f43953b7d3fb3aaa1d0d0723d91e368 depends: - - libcxx >=15.0.7 + - keyutils >=1.6.1,<2.0a0 - libedit >=3.1.20191231,<3.2.0a0 - libedit >=3.1.20191231,<4.0a0 - - openssl >=3.1.2,<4.0a0 + - libgcc-ng >=12 + - libstdcxx-ng >=12 + - openssl >=3.3.1,<4.0a0 license: MIT - license_family: MIT - size: 1183568 - timestamp: 1692098004387 + size: 1370023 + timestamp: 1719463201255 - kind: conda name: krb5 - version: 1.21.2 - build: heb0366b_0 + version: 1.21.3 + build: hdf4eb48_0 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/krb5-1.21.2-heb0366b_0.conda - sha256: 6002adff9e3dcfc9732b861730cb9e33d45fd76b2035b2cdb4e6daacb8262c0b - md5: 6e8b0f22b4eef3b3cb3849bb4c3d47f9 + url: https://conda.anaconda.org/conda-forge/win-64/krb5-1.21.3-hdf4eb48_0.conda + sha256: 18e8b3430d7d232dad132f574268f56b3eb1a19431d6d5de8c53c29e6c18fa81 + md5: 31aec030344e962fbd7dbbbbd68e60a9 depends: - - openssl >=3.1.2,<4.0a0 + - openssl >=3.3.1,<4.0a0 - ucrt >=10.0.20348.0 - vc >=14.2,<15 - vc14_runtime >=14.29.30139 license: MIT - license_family: MIT - size: 710894 - timestamp: 1692098129546 + size: 712034 + timestamp: 1719463874284 - kind: conda name: lame version: '3.100' @@ -3981,36 +3987,36 @@ packages: - kind: conda name: libgcc-ng version: 13.2.0 - build: h77fa898_11 - build_number: 11 + build: h77fa898_13 + build_number: 13 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-13.2.0-h77fa898_11.conda - sha256: bbdd49b5a191105cf4bf82a59d611afa1e8568efa556dd988e4e5d0efc3058b1 - md5: 0b3b218a596bb4c3854cc9ee799f94e5 + url: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-13.2.0-h77fa898_13.conda + sha256: ffa0f472c8b37f864de855af2d3c057f1813162319f10ebd97332d73fc27ba60 + md5: 9358cdd61ef0d600d2a0dde2d53b006c depends: - _libgcc_mutex 0.1 conda_forge - _openmp_mutex >=4.5 constrains: - - libgomp 13.2.0 h77fa898_11 + - libgomp 13.2.0 h77fa898_13 license: GPL-3.0-only WITH GCC-exception-3.1 license_family: GPL - size: 796010 - timestamp: 1718867009281 + size: 792721 + timestamp: 1719179941452 - kind: conda name: libgcrypt - version: 1.10.3 - build: hd590300_0 + version: 1.11.0 + build: h4ab18f5_0 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libgcrypt-1.10.3-hd590300_0.conda - sha256: d1bd47faa29fec7288c7b212198432b07f890d3d6f646078da93b059c2e9daff - md5: 32d16ad533c59bb0a3c5ffaf16110829 + url: https://conda.anaconda.org/conda-forge/linux-64/libgcrypt-1.11.0-h4ab18f5_0.conda + sha256: df01345f5f23ef268523f1fc6c088b6cec1b49c978b8b92da608b4d81c16d62f + md5: 0a00e32cabe3e571c0611387e7bc2042 depends: - libgcc-ng >=12 - - libgpg-error >=1.47,<2.0a0 + - libgpg-error >=1.50,<2.0a0 license: LGPL-2.1-or-later AND GPL-2.0-or-later license_family: GPL - size: 634887 - timestamp: 1701383493365 + size: 685291 + timestamp: 1719405073729 - kind: conda name: libgettextpo version: 0.22.5 @@ -4141,18 +4147,18 @@ packages: - kind: conda name: libgfortran-ng version: 13.2.0 - build: h69a702a_11 - build_number: 11 + build: h69a702a_13 + build_number: 13 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-13.2.0-h69a702a_11.conda - sha256: f91aa928161201f189057c90db1508def36bef6329ebb29a71d8064b180250dd - md5: 4c3e460d6acf8e43e4ce8bf405187eb7 + url: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-13.2.0-h69a702a_13.conda + sha256: 3ef5d92510e9cdd70ec2a9f1f83b8c1d327ff0f9bfc17831a8f8f06f10c2085c + md5: 516e66b26eea14e7e322fe99e88e0f02 depends: - - libgfortran5 13.2.0 h3d2ce59_11 + - libgfortran5 13.2.0 h3d2ce59_13 license: GPL-3.0-only WITH GCC-exception-3.1 license_family: GPL - size: 48638 - timestamp: 1718867040994 + size: 48419 + timestamp: 1719179972468 - kind: conda name: libgfortran5 version: 13.2.0 @@ -4173,20 +4179,20 @@ packages: - kind: conda name: libgfortran5 version: 13.2.0 - build: h3d2ce59_11 - build_number: 11 + build: h3d2ce59_13 + build_number: 13 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-13.2.0-h3d2ce59_11.conda - sha256: de8535b5fb39a78f4b7473b88c400c922ae063f29500c097743b480fd0a4f326 - md5: c485da4fdb454539f852a90ae06e9bb7 + url: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-13.2.0-h3d2ce59_13.conda + sha256: 19cffb68b19ff5f426d1cb3db670dccb73c09f54b8d3f8e304665e2cee68f14f + md5: 1e380198685bc1e993bbbc4b579f5916 depends: - libgcc-ng >=13.2.0 constrains: - libgfortran-ng 13.2.0 license: GPL-3.0-only WITH GCC-exception-3.1 license_family: GPL - size: 1467184 - timestamp: 1718867019794 + size: 1459384 + timestamp: 1719179951703 - kind: conda name: libgfortran5 version: 13.2.0 @@ -4269,26 +4275,26 @@ packages: - kind: conda name: libgomp version: 13.2.0 - build: h77fa898_11 - build_number: 11 + build: h77fa898_13 + build_number: 13 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libgomp-13.2.0-h77fa898_11.conda - sha256: f4112111fa350bcd8d6d354cdde3426751a579add88fa523f6483c714821e681 - md5: 8c462ced2af33648195dc9459f331f31 + url: https://conda.anaconda.org/conda-forge/linux-64/libgomp-13.2.0-h77fa898_13.conda + sha256: c5949bec7eee93cdd5c367e6e5c5e92ee1c5139a827567af23853dd52721d8ed + md5: d370d1855cca14dff6a819c90c77497c depends: - _libgcc_mutex 0.1 conda_forge license: GPL-3.0-only WITH GCC-exception-3.1 license_family: GPL - size: 444606 - timestamp: 1718866940233 + size: 444091 + timestamp: 1719179831697 - kind: conda name: libgpg-error - version: '1.49' + version: '1.50' build: h4f305b6_0 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libgpg-error-1.49-h4f305b6_0.conda - sha256: b2664c2c11211a63856f23278efb49d3e65d902297989a0c12dcd228b5d97110 - md5: dfcfd72c7a430d3616763ecfbefe4ca9 + url: https://conda.anaconda.org/conda-forge/linux-64/libgpg-error-1.50-h4f305b6_0.conda + sha256: c60969d5c315f33fee90a1f2dd5d169e2834ace5a55f5a6f822aa7485a3a84cc + md5: 0d7ff1a8e69565ca3add6925e18e708f depends: - gettext - libasprintf >=0.22.5,<1.0a0 @@ -4297,8 +4303,8 @@ packages: - libstdcxx-ng >=12 license: GPL-2.0-only license_family: GPL - size: 263319 - timestamp: 1714121531915 + size: 273774 + timestamp: 1719390736440 - kind: conda name: libhwloc version: 2.10.0 @@ -4876,19 +4882,18 @@ packages: timestamp: 1710842064170 - kind: conda name: libogg - version: 1.3.4 - build: h7f98852_1 - build_number: 1 + version: 1.3.5 + build: h4ab18f5_0 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libogg-1.3.4-h7f98852_1.tar.bz2 - sha256: b88afeb30620b11bed54dac4295aa57252321446ba4e6babd7dce4b9ffde9b25 - md5: 6e8cc2173440d77708196c5b93771680 + url: https://conda.anaconda.org/conda-forge/linux-64/libogg-1.3.5-h4ab18f5_0.conda + sha256: 5eda3fe92b99b25dd4737226a9485078ab405672d9f621be75edcb68f1e9026d + md5: 601bfb4b3c6f0b844443bb81a56651e0 depends: - - libgcc-ng >=9.3.0 + - libgcc-ng >=12 license: BSD-3-Clause license_family: BSD - size: 210550 - timestamp: 1610382007814 + size: 205914 + timestamp: 1719301575771 - kind: conda name: libopenblas version: 0.3.27 @@ -5261,18 +5266,18 @@ packages: - kind: conda name: libstdcxx-ng version: 13.2.0 - build: hc0a3c3a_11 - build_number: 11 + build: hc0a3c3a_13 + build_number: 13 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-13.2.0-hc0a3c3a_11.conda - sha256: e03f0f2712f45a85234016bcc5afa76023e31e00a2e74d8819a1b3bdf091fdb0 - md5: eaa8ea74083fb4a78ae19e431e556003 + url: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-13.2.0-hc0a3c3a_13.conda + sha256: 143171c6084e526122cc2976fbbfadf7b9f50e5d13036adf20feb7ed9d036dd2 + md5: 1053882642ed5bbc799e1e866ff86826 depends: - - libgcc-ng 13.2.0 h77fa898_11 + - libgcc-ng 13.2.0 h77fa898_13 license: GPL-3.0-only WITH GCC-exception-3.1 license_family: GPL - size: 3874046 - timestamp: 1718867032452 + size: 3836375 + timestamp: 1719179964037 - kind: conda name: libsystemd0 version: '255' @@ -5898,6 +5903,7 @@ packages: constrains: - openmp 18.1.8|18.1.8.* license: Apache-2.0 WITH LLVM-exception + license_family: APACHE size: 276438 timestamp: 1718911793488 - kind: conda @@ -6739,11 +6745,12 @@ packages: - kind: conda name: openssl version: 3.3.1 - build: h2466b09_0 + build: h2466b09_1 + build_number: 1 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/openssl-3.3.1-h2466b09_0.conda - sha256: fbd63a41b854370a74e5f7ccc50d67f053d60c08e40389156e7924df0824d297 - md5: 27fe798366ef3a81715b13eedf699e2f + url: https://conda.anaconda.org/conda-forge/win-64/openssl-3.3.1-h2466b09_1.conda + sha256: e45ee071d45fcfaa59beb31def800cdb9d81b17bbb74c4a7e400102cb22ca35e + md5: aa36aca82d1ffd26bee88ac7dc9e1ee3 depends: - ca-certificates - ucrt >=10.0.20348.0 @@ -6753,16 +6760,17 @@ packages: - pyopenssl >=22.1 license: Apache-2.0 license_family: Apache - size: 8383610 - timestamp: 1717550042871 + size: 8355633 + timestamp: 1719366975403 - kind: conda name: openssl version: 3.3.1 - build: h4ab18f5_0 + build: h4ab18f5_1 + build_number: 1 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.3.1-h4ab18f5_0.conda - sha256: 9691f8bd6394c5bb0b8d2f47cd1467b91bd5b1df923b69e6b517f54496ee4b50 - md5: a41fa0e391cc9e0d6b78ac69ca047a6c + url: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.3.1-h4ab18f5_1.conda + sha256: ff3faf8d4c1c9aa4bd3263b596a68fcc6ac910297f354b2ce28718a3509db6d9 + md5: b1e9d076f14e8d776213fd5047b4c3d9 depends: - ca-certificates - libgcc-ng >=12 @@ -6770,16 +6778,17 @@ packages: - pyopenssl >=22.1 license: Apache-2.0 license_family: Apache - size: 2896170 - timestamp: 1717546157673 + size: 2896610 + timestamp: 1719363957188 - kind: conda name: openssl version: 3.3.1 - build: h87427d6_0 + build: h87427d6_1 + build_number: 1 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.3.1-h87427d6_0.conda - sha256: 272bee725877f417fef923f5e7852ebfe06b40b6bf3364f4498b2b3f568d5e2c - md5: 1bdad93ae01353340f194c5d879745db + url: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.3.1-h87427d6_1.conda + sha256: 60eed5d771207bcef05e0547c8f93a61d0ad1dcf75e19f8f8d9ded8094d78477 + md5: d838ffe9ec3c6d971f110e04487466ff depends: - __osx >=10.13 - ca-certificates @@ -6787,16 +6796,17 @@ packages: - pyopenssl >=22.1 license: Apache-2.0 license_family: Apache - size: 2547614 - timestamp: 1717546605131 + size: 2551950 + timestamp: 1719364820943 - kind: conda name: openssl version: 3.3.1 - build: hfb2fe0b_0 + build: hfb2fe0b_1 + build_number: 1 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.3.1-hfb2fe0b_0.conda - sha256: 6cb2d44f027b259be8cba2240bdf21af7b426e4132a73e0052f7173ab8b60ab0 - md5: c4a0bbd96a0da60bf265dac62c87f4e1 + url: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.3.1-hfb2fe0b_1.conda + sha256: 3ab411856c3bef88595473f0dd86e82de4f913f88319548acf262d5b1175b050 + md5: c665dec48e08311096823956642a501c depends: - __osx >=11.0 - ca-certificates @@ -6804,8 +6814,8 @@ packages: - pyopenssl >=22.1 license: Apache-2.0 license_family: Apache - size: 2891941 - timestamp: 1717545846389 + size: 2897767 + timestamp: 1719363723462 - kind: conda name: p11-kit version: 0.24.1 @@ -6944,6 +6954,82 @@ packages: license: GPL-3.0-or-later OR LGPL-3.0-or-later size: 4060160 timestamp: 1713853428915 +- kind: conda + name: pagmo-devel + version: 2.19.0 + build: h24fcb66_9 + build_number: 9 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/pagmo-devel-2.19.0-h24fcb66_9.conda + sha256: 07f10e0d778e962833f9cb19c5609f83958a3727f38ee8d008145a16b31a4918 + md5: fe7f518de58041cd21cb77cfacee3a91 + depends: + - eigen + - ipopt >=3.14.16,<3.14.17.0a0 + - nlopt >=2.7.1,<2.8.0a0 + - pagmo 2.19.0 hac87e97_9 + - tbb >=2021.12.0 + - tbb-devel + license: GPL-3.0-or-later OR LGPL-3.0-or-later + size: 308756 + timestamp: 1713853511936 +- kind: conda + name: pagmo-devel + version: 2.19.0 + build: h3ed7ff5_9 + build_number: 9 + subdir: osx-arm64 + url: https://conda.anaconda.org/conda-forge/osx-arm64/pagmo-devel-2.19.0-h3ed7ff5_9.conda + sha256: 4924dd77bab81197860d62f6d0f0575df9820767dc0f58d28a0c9358a9899f72 + md5: 5dad6b1f53f1e85d7a05e7a3e0c8c0fe + depends: + - eigen + - ipopt >=3.14.16,<3.14.17.0a0 + - nlopt >=2.7.1,<2.8.0a0 + - pagmo 2.19.0 ha6598ea_9 + - tbb >=2021.12.0 + - tbb-devel + license: GPL-3.0-or-later OR LGPL-3.0-or-later + size: 119423 + timestamp: 1713853323464 +- kind: conda + name: pagmo-devel + version: 2.19.0 + build: h86917f8_9 + build_number: 9 + subdir: osx-64 + url: https://conda.anaconda.org/conda-forge/osx-64/pagmo-devel-2.19.0-h86917f8_9.conda + sha256: 05a7c21d0072fa8684cf48470f49c2e63b49c080fba1f0c66d82720b92e790d6 + md5: 17a60fafdf6e85f0122ebf1895dcc65b + depends: + - eigen + - ipopt >=3.14.16,<3.14.17.0a0 + - nlopt >=2.7.1,<2.8.0a0 + - pagmo 2.19.0 h50a4cf7_9 + - tbb >=2021.12.0 + - tbb-devel + license: GPL-3.0-or-later OR LGPL-3.0-or-later + size: 119409 + timestamp: 1713853566419 +- kind: conda + name: pagmo-devel + version: 2.19.0 + build: h9b4894b_9 + build_number: 9 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/pagmo-devel-2.19.0-h9b4894b_9.conda + sha256: 7c89ff1bb0ccc0d4aebc422be9607a617ffbf4da83f94eeb2281be86cda991d2 + md5: 72b5fa2807a9b1d45ddaa20bb2702f07 + depends: + - eigen + - ipopt >=3.14.16,<3.14.17.0a0 + - nlopt >=2.7.1,<2.8.0a0 + - pagmo 2.19.0 h53026fa_9 + - tbb >=2021.11.0 + - tbb-devel + license: GPL-3.0-or-later OR LGPL-3.0-or-later + size: 119161 + timestamp: 1713852426923 - kind: conda name: pathspec version: 0.12.1 @@ -7805,6 +7891,67 @@ packages: license_family: APACHE size: 161771 timestamp: 1716031112705 +- kind: conda + name: tbb-devel + version: 2021.12.0 + build: h7393e1e_1 + build_number: 1 + subdir: osx-64 + url: https://conda.anaconda.org/conda-forge/osx-64/tbb-devel-2021.12.0-h7393e1e_1.conda + sha256: 670bfacee9193661c17b8d46045d3d42ba56c961d83859b16d8fc7f7cd4bec30 + md5: a644e49902aa960bf4bf99875cf39775 + depends: + - __osx >=10.13 + - libcxx >=16 + - tbb 2021.12.0 h3c5361c_1 + size: 1058748 + timestamp: 1716030884841 +- kind: conda + name: tbb-devel + version: 2021.12.0 + build: h7c56ddd_1 + build_number: 1 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/tbb-devel-2021.12.0-h7c56ddd_1.conda + sha256: a4f4eee733239846dbf37f35777de53840f5721c5bd18f6326288d05daa104c8 + md5: f896f49efc2e33ab5d4d3690bb4f32ef + depends: + - libgcc-ng >=12 + - libstdcxx-ng >=12 + - tbb 2021.12.0 h297d8ca_1 + size: 1057309 + timestamp: 1716030849894 +- kind: conda + name: tbb-devel + version: 2021.12.0 + build: h94f16c5_1 + build_number: 1 + subdir: osx-arm64 + url: https://conda.anaconda.org/conda-forge/osx-arm64/tbb-devel-2021.12.0-h94f16c5_1.conda + sha256: e8e77e7830cf5ae4cf9d21841ce0b333613fd3e0dc7efa70cfc1f11f54ce1379 + md5: 36632e54f2864b82bf76b4d017f0c0ee + depends: + - __osx >=11.0 + - libcxx >=16 + - tbb 2021.12.0 h420ef59_1 + size: 1057118 + timestamp: 1716030942305 +- kind: conda + name: tbb-devel + version: 2021.12.0 + build: hb551fcf_1 + build_number: 1 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/tbb-devel-2021.12.0-hb551fcf_1.conda + sha256: 0dac2867318c12575eb73e65aa9babd2fff1ec37068d0cc5d3fa942873af75bc + md5: ce48530b0800c691735f1b96c36cb842 + depends: + - tbb 2021.12.0 hc790b64_1 + - ucrt >=10.0.20348.0 + - vc >=14.2,<15 + - vc14_runtime >=14.29.30139 + size: 1066598 + timestamp: 1716031184519 - kind: conda name: tinyxml2 version: 10.0.0 diff --git a/pixi.toml b/pixi.toml index ee7cdc62519bd..9b59911be5226 100644 --- a/pixi.toml +++ b/pixi.toml @@ -25,16 +25,16 @@ console_bridge = ">=1.0.2,<1.1" eigen = ">=3.4.0,<3.5" fcl = ">=0.7.0,<0.8" fmt = ">=10.2.1,<10.3" +ipopt = ">=3.14.14,<3.15" libode = ">=0.16.2,<0.17" +nlopt = ">=2.7.1,<2.8" +numpy = ">=1.26.4,<1.27" octomap = ">=1.9.8,<1.10" openscenegraph = ">=3.6.5,<3.7" +pagmo-devel = ">=2.19.0,<2.20" spdlog = ">=1.12.0,<1.13" tinyxml2 = ">=10.0.0,<10.1" urdfdom = ">=4.0.0,<4.1" -ipopt = ">=3.14.14,<3.15" -nlopt = ">=2.7.1,<2.8" -pagmo = ">=2.19.0,<2.20" -numpy = ">=1.26.4,<1.27" [tasks] clean = { cmd = "rm -rf build && rm -rf .deps && rm -rf .pixi && rm pixi.lock" } From b95ff8378dbda31d3ca24d3c108ece6c429cee68 Mon Sep 17 00:00:00 2001 From: Jeongseok Lee Date: Thu, 27 Jun 2024 03:48:58 -0700 Subject: [PATCH 11/41] [pixi] Fix finding pagmo and ipopt (cherry picked from commit 75c5565cd6a45bb143ba1fe95137000f2610d03b) --- cmake/FindIPOPT.cmake | 2 +- pixi.lock | 378 ++++++++++++++++++++++++++++++++++++++++++ pixi.toml | 2 + 3 files changed, 381 insertions(+), 1 deletion(-) diff --git a/cmake/FindIPOPT.cmake b/cmake/FindIPOPT.cmake index 3500d836136db..01094bb95869d 100644 --- a/cmake/FindIPOPT.cmake +++ b/cmake/FindIPOPT.cmake @@ -34,7 +34,7 @@ find_path(IPOPT_INCLUDE_DIRS # Libraries find_library(IPOPT_LIBRARIES - NAMES ipopt + NAMES ipopt ipopt-3 HINTS ${PC_IPOPT_LIBDIR}) # Version diff --git a/pixi.lock b/pixi.lock index 50bb64b8ac491..07e158cdf1010 100644 --- a/pixi.lock +++ b/pixi.lock @@ -13,6 +13,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/assimp-5.3.1-h8343317_3.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/attr-2.5.1-h166bdaf_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/black-24.2.0-py312h7900ff3_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/boost-1.84.0-h9cebb41_3.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/bullet-cpp-3.25-hfb8ada1_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hd590300_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.28.1-hd590300_0.conda @@ -62,6 +63,10 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libasprintf-devel-0.22.5-h661eb56_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libblas-3.9.0-22_linux64_openblas.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libboost-1.84.0-hba137d9_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libboost-devel-1.84.0-h00ab1b0_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libboost-headers-1.84.0-ha770c72_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libboost-python-1.84.0-py312h389efb2_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libboost-python-devel-1.84.0-py312h9cebb41_3.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libcap-2.69-h0f662aa_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.9.0-22_linux64_openblas.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libccd-double-2.1-h59595ed_3.conda @@ -201,6 +206,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/argcomplete-3.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/assimp-5.3.1-h3e74f17_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/black-24.2.0-py312hb401068_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/boost-1.84.0-h0be7463_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/bullet-cpp-3.25-h28a66ae_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/bzip2-1.0.8-h10d778d_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.28.1-h10d778d_0.conda @@ -246,6 +252,10 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/libasprintf-devel-0.22.5-h5ff76d1_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libblas-3.9.0-22_osx64_openblas.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libboost-1.84.0-h739af76_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libboost-devel-1.84.0-h2b186f8_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libboost-headers-1.84.0-h694c41f_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libboost-python-1.84.0-py312h44e70fa_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libboost-python-devel-1.84.0-py312h0be7463_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libcblas-3.9.0-22_osx64_openblas.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libccd-double-2.1-he965462_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libclang-cpp14-14.0.6-default_hdb78580_1.conda @@ -349,6 +359,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/argcomplete-3.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/assimp-5.3.1-h8e95e21_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/black-24.2.0-py312h81bd7bf_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/boost-1.84.0-ha814d7c_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bullet-cpp-3.25-py312h9e53831_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-h93a5062_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.28.1-h93a5062_0.conda @@ -394,6 +405,10 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libasprintf-devel-0.22.5-h8fbad5d_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libblas-3.9.0-22_osxarm64_openblas.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libboost-1.84.0-h17eb2be_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libboost-devel-1.84.0-hf450f58_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libboost-headers-1.84.0-hce30654_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libboost-python-1.84.0-py312hffe1f2a_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libboost-python-devel-1.84.0-py312ha814d7c_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcblas-3.9.0-22_osxarm64_openblas.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libccd-double-2.1-h9a09cb3_2.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang-cpp14-14.0.6-default_h5dc8d65_1.conda @@ -498,6 +513,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/argcomplete-3.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/assimp-5.3.1-h0dbab56_3.conda - conda: https://conda.anaconda.org/conda-forge/win-64/black-24.2.0-py312h2e8e312_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/boost-1.84.0-h7e22eef_3.conda - conda: https://conda.anaconda.org/conda-forge/win-64/bullet-cpp-3.25-h2ab9e98_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/bzip2-1.0.8-hcfcfb64_5.conda - conda: https://conda.anaconda.org/conda-forge/win-64/ca-certificates-2024.6.2-h56e8100_0.conda @@ -533,6 +549,10 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/libaec-1.1.3-h63175ca_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libblas-3.9.0-22_win64_mkl.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libboost-1.84.0-h9a677ad_3.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libboost-devel-1.84.0-h91493d7_3.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libboost-headers-1.84.0-h57928b3_3.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libboost-python-1.84.0-py312hbaa7e33_3.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libboost-python-devel-1.84.0-py312h7e22eef_3.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libcblas-3.9.0-22_win64_mkl.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libccd-double-2.1-h63175ca_3.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.8.0-hd5e4a3a_0.conda @@ -935,6 +955,70 @@ packages: license_family: MIT size: 379530 timestamp: 1708248469387 +- kind: conda + name: boost + version: 1.84.0 + build: h0be7463_3 + build_number: 3 + subdir: osx-64 + url: https://conda.anaconda.org/conda-forge/osx-64/boost-1.84.0-h0be7463_3.conda + sha256: c46f7e0c27970c1dc9e414a93fa5b924560bc087627480cdff66377dd7459d9d + md5: dd3f02033b71977b64e904b102287026 + depends: + - libboost-python-devel 1.84.0 py312h0be7463_3 + - numpy >=1.19,<3 + - python_abi 3.12.* *_cp312 + license: BSL-1.0 + size: 16870 + timestamp: 1715810172837 +- kind: conda + name: boost + version: 1.84.0 + build: h7e22eef_3 + build_number: 3 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/boost-1.84.0-h7e22eef_3.conda + sha256: 9d814f516b6a94eaf67275a0cdacf180f1cb0d77e3946cf0abc56df5b02a545d + md5: 517951afaf5769d204b8cbe7c7bbb42a + depends: + - libboost-python-devel 1.84.0 py312h7e22eef_3 + - numpy >=1.19,<3 + - python_abi 3.12.* *_cp312 + license: BSL-1.0 + size: 17177 + timestamp: 1715813394613 +- kind: conda + name: boost + version: 1.84.0 + build: h9cebb41_3 + build_number: 3 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/boost-1.84.0-h9cebb41_3.conda + sha256: c21962bcdc6ddd1f53313f1e99f5c946463d7134e68caecdd44306c3a980efdf + md5: 0f6b5b068329616dcda3f2292ea51666 + depends: + - libboost-python-devel 1.84.0 py312h9cebb41_3 + - numpy >=1.19,<3 + - python_abi 3.12.* *_cp312 + license: BSL-1.0 + size: 16567 + timestamp: 1715808476049 +- kind: conda + name: boost + version: 1.84.0 + build: ha814d7c_3 + build_number: 3 + subdir: osx-arm64 + url: https://conda.anaconda.org/conda-forge/osx-arm64/boost-1.84.0-ha814d7c_3.conda + sha256: 47269bf2c80e95dd2d13c7cdccd2d5b430a4134a47aa4890db150c286a0d33ca + md5: b944f8951b52e67f4c4084b81d665392 + depends: + - libboost-python-devel 1.84.0 py312ha814d7c_3 + - numpy >=1.19,<3 + - python_abi 3.12.* *_cp312 + license: BSL-1.0 + size: 16897 + timestamp: 1715812872354 - kind: conda name: bullet-cpp version: '3.25' @@ -3359,6 +3443,300 @@ packages: license: BSL-1.0 size: 2846684 timestamp: 1715807756203 +- kind: conda + name: libboost-devel + version: 1.84.0 + build: h00ab1b0_3 + build_number: 3 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libboost-devel-1.84.0-h00ab1b0_3.conda + sha256: 5d42a748aa02b6bf9be51a4485d97833ad55dd3dcc5a1542d3efacf56db402ea + md5: 0421eaf6d3bdf1b022e7dc8ca1f04717 + depends: + - libboost 1.84.0 hba137d9_3 + - libboost-headers 1.84.0 ha770c72_3 + constrains: + - boost-cpp =1.84.0 + license: BSL-1.0 + size: 38661 + timestamp: 1715807886439 +- kind: conda + name: libboost-devel + version: 1.84.0 + build: h2b186f8_3 + build_number: 3 + subdir: osx-64 + url: https://conda.anaconda.org/conda-forge/osx-64/libboost-devel-1.84.0-h2b186f8_3.conda + sha256: 94359cce3c0e4e8846a251809181f24b1ca7a0fd68c4e5ce598b85b85cc0e5ea + md5: 45daaf71e4727eb4d808405ee804a278 + depends: + - libboost 1.84.0 h739af76_3 + - libboost-headers 1.84.0 h694c41f_3 + constrains: + - boost-cpp =1.84.0 + license: BSL-1.0 + size: 40070 + timestamp: 1715808967172 +- kind: conda + name: libboost-devel + version: 1.84.0 + build: h91493d7_3 + build_number: 3 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/libboost-devel-1.84.0-h91493d7_3.conda + sha256: 23fa83be066cff8dd3de6ed5c757a462a99864bd55cf1d8c4945d58fd69f55f5 + md5: bbee3f78583858d0dde216defecb5a5d + depends: + - libboost 1.84.0 h9a677ad_3 + - libboost-headers 1.84.0 h57928b3_3 + constrains: + - boost-cpp =1.84.0 + license: BSL-1.0 + size: 41689 + timestamp: 1715810567634 +- kind: conda + name: libboost-devel + version: 1.84.0 + build: hf450f58_3 + build_number: 3 + subdir: osx-arm64 + url: https://conda.anaconda.org/conda-forge/osx-arm64/libboost-devel-1.84.0-hf450f58_3.conda + sha256: d4c47e3916c762b7d5c9c7a25733bdf37290461da107770461168fbf5b3a4184 + md5: e97bd3bcf730e57c7140ad814b57f4f9 + depends: + - libboost 1.84.0 h17eb2be_3 + - libboost-headers 1.84.0 hce30654_3 + constrains: + - boost-cpp =1.84.0 + license: BSL-1.0 + size: 39682 + timestamp: 1715810790792 +- kind: conda + name: libboost-headers + version: 1.84.0 + build: h57928b3_3 + build_number: 3 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/libboost-headers-1.84.0-h57928b3_3.conda + sha256: 5400798053b5d9c05cb66393b14e42bedfc1a092481f900fa0ecf7eb22d24d16 + md5: ee6a7cb2afb87ed75895861f83c521f5 + constrains: + - boost-cpp =1.84.0 + license: BSL-1.0 + size: 13835060 + timestamp: 1715810327067 +- kind: conda + name: libboost-headers + version: 1.84.0 + build: h694c41f_3 + build_number: 3 + subdir: osx-64 + url: https://conda.anaconda.org/conda-forge/osx-64/libboost-headers-1.84.0-h694c41f_3.conda + sha256: c92852dfa9a0bab914207fe910070f0e6d008a6826a3a8f33c7a6f7aad6de106 + md5: 2c25e8e0d2c106d1080c43cf64b5792a + constrains: + - boost-cpp =1.84.0 + license: BSL-1.0 + size: 13802807 + timestamp: 1715808830882 +- kind: conda + name: libboost-headers + version: 1.84.0 + build: ha770c72_3 + build_number: 3 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libboost-headers-1.84.0-ha770c72_3.conda + sha256: 3b44fe8a2765ecc23e3a02611fdc96508d0c447ef1925e672d2871a7d601fa19 + md5: f9d078d434c0183c3a4f91dcbb167f68 + constrains: + - boost-cpp =1.84.0 + license: BSL-1.0 + size: 13715096 + timestamp: 1715807775534 +- kind: conda + name: libboost-headers + version: 1.84.0 + build: hce30654_3 + build_number: 3 + subdir: osx-arm64 + url: https://conda.anaconda.org/conda-forge/osx-arm64/libboost-headers-1.84.0-hce30654_3.conda + sha256: bb86a36dfe468f372fd0d888bea514b6d3da24d068ddcafdbcb329d2198ff77a + md5: 58d7afce173a157e68068b550e592185 + constrains: + - boost-cpp =1.84.0 + license: BSL-1.0 + size: 13837601 + timestamp: 1715810563676 +- kind: conda + name: libboost-python + version: 1.84.0 + build: py312h389efb2_3 + build_number: 3 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libboost-python-1.84.0-py312h389efb2_3.conda + sha256: dd42992c79585abdc4a805f30ec33bfea895b2b22259f9ee2103d731894cd796 + md5: 495c1403979076651d93f81d1cf048ed + depends: + - libgcc-ng >=12 + - libstdcxx-ng >=12 + - numpy >=1.19,<3 + - python >=3.12,<3.13.0a0 + - python_abi 3.12.* *_cp312 + constrains: + - boost =1.84.0 + - py-boost <0.0a0 + license: BSL-1.0 + size: 124325 + timestamp: 1715808249326 +- kind: conda + name: libboost-python + version: 1.84.0 + build: py312h44e70fa_3 + build_number: 3 + subdir: osx-64 + url: https://conda.anaconda.org/conda-forge/osx-64/libboost-python-1.84.0-py312h44e70fa_3.conda + sha256: 6aae73b19dc50b82bcb8adf3cf9cddcfcffa81881780a579a92c3bb282d97dfb + md5: 710fd7b29cc87e9969c6d6f598ee98c5 + depends: + - __osx >=10.13 + - libcxx >=16 + - numpy >=1.19,<3 + - python >=3.12,<3.13.0a0 + - python_abi 3.12.* *_cp312 + constrains: + - boost =1.84.0 + - py-boost <0.0a0 + license: BSL-1.0 + size: 108379 + timestamp: 1715809716095 +- kind: conda + name: libboost-python + version: 1.84.0 + build: py312hbaa7e33_3 + build_number: 3 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/libboost-python-1.84.0-py312hbaa7e33_3.conda + sha256: e5e19015b0298d76101c7fe4c43f6c55e51f2ad223a0c28e6d41515ab730b0cc + md5: a7bea4cc741415a13b1281650eab7f69 + depends: + - numpy >=1.19,<3 + - python >=3.12,<3.13.0a0 + - python_abi 3.12.* *_cp312 + - ucrt >=10.0.20348.0 + - vc >=14.2,<15 + - vc14_runtime >=14.29.30139 + constrains: + - boost =1.84.0 + - py-boost <0.0a0 + license: BSL-1.0 + size: 115257 + timestamp: 1715811862262 +- kind: conda + name: libboost-python + version: 1.84.0 + build: py312hffe1f2a_3 + build_number: 3 + subdir: osx-arm64 + url: https://conda.anaconda.org/conda-forge/osx-arm64/libboost-python-1.84.0-py312hffe1f2a_3.conda + sha256: 76e9ca638880abc425233597fc4c7c47ae63eb35cd5496b7b8b54a276637ce0d + md5: 0612e4d6a619d7a3e5b4fa3e7258a74e + depends: + - __osx >=11.0 + - libcxx >=16 + - numpy >=1.19,<3 + - python >=3.12,<3.13.0a0 + - python >=3.12,<3.13.0a0 *_cpython + - python_abi 3.12.* *_cp312 + constrains: + - py-boost <0.0a0 + - boost =1.84.0 + license: BSL-1.0 + size: 107933 + timestamp: 1715811895637 +- kind: conda + name: libboost-python-devel + version: 1.84.0 + build: py312h0be7463_3 + build_number: 3 + subdir: osx-64 + url: https://conda.anaconda.org/conda-forge/osx-64/libboost-python-devel-1.84.0-py312h0be7463_3.conda + sha256: 1f6b0df37d2570c194c5f1350a271fd822bc571185e7fa12ca14fb460a121ae0 + md5: c5302f6481b42ea63dd9da617fd15b22 + depends: + - libboost-devel 1.84.0 h2b186f8_3 + - libboost-python 1.84.0 py312h44e70fa_3 + - numpy >=1.19,<3 + - python >=3.12,<3.13.0a0 + - python_abi 3.12.* *_cp312 + constrains: + - boost =1.84.0 + - py-boost <0.0a0 + license: BSL-1.0 + size: 20275 + timestamp: 1715809947793 +- kind: conda + name: libboost-python-devel + version: 1.84.0 + build: py312h7e22eef_3 + build_number: 3 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/libboost-python-devel-1.84.0-py312h7e22eef_3.conda + sha256: 9d3d79e1d1e9c33c65363e5b06c7b2187c5ec948b8fd8fd22b1927c523d4faff + md5: a923e4da2b3b488bfc674421df9f9f3e + depends: + - libboost-devel 1.84.0 h91493d7_3 + - libboost-python 1.84.0 py312hbaa7e33_3 + - numpy >=1.19,<3 + - python >=3.12,<3.13.0a0 + - python_abi 3.12.* *_cp312 + constrains: + - boost =1.84.0 + - py-boost <0.0a0 + license: BSL-1.0 + size: 20549 + timestamp: 1715812752611 +- kind: conda + name: libboost-python-devel + version: 1.84.0 + build: py312h9cebb41_3 + build_number: 3 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libboost-python-devel-1.84.0-py312h9cebb41_3.conda + sha256: 314f24791c172079f5a03906ac8b74e090262540e502ebad548042cbb5cb863c + md5: a103aa85d8490e082fafa6d0903e985d + depends: + - libboost-devel 1.84.0 h00ab1b0_3 + - libboost-python 1.84.0 py312h389efb2_3 + - numpy >=1.19,<3 + - python >=3.12,<3.13.0a0 + - python_abi 3.12.* *_cp312 + constrains: + - boost =1.84.0 + - py-boost <0.0a0 + license: BSL-1.0 + size: 20016 + timestamp: 1715808399274 +- kind: conda + name: libboost-python-devel + version: 1.84.0 + build: py312ha814d7c_3 + build_number: 3 + subdir: osx-arm64 + url: https://conda.anaconda.org/conda-forge/osx-arm64/libboost-python-devel-1.84.0-py312ha814d7c_3.conda + sha256: ac95c49e963a6c3a40c7cc4f1effacaae4009f24ac54c2e9e4e62f98b209f984 + md5: ccf309a3178695fcadf8dcee52598cf5 + depends: + - libboost-devel 1.84.0 hf450f58_3 + - libboost-python 1.84.0 py312hffe1f2a_3 + - numpy >=1.19,<3 + - python >=3.12,<3.13.0a0 + - python_abi 3.12.* *_cp312 + constrains: + - py-boost <0.0a0 + - boost =1.84.0 + license: BSL-1.0 + size: 20343 + timestamp: 1715812457125 - kind: conda name: libcap version: '2.69' diff --git a/pixi.toml b/pixi.toml index 9b59911be5226..955fc1c6222ff 100644 --- a/pixi.toml +++ b/pixi.toml @@ -20,6 +20,7 @@ pipx = ">=1.4.3,<1.5" [dependencies] assimp = ">=5.3.1,<5.4" +boost = ">=1.84.0,<1.85" bullet-cpp = ">=3.25,<4" console_bridge = ">=1.0.2,<1.1" eigen = ">=3.4.0,<3.5" @@ -31,6 +32,7 @@ nlopt = ">=2.7.1,<2.8" numpy = ">=1.26.4,<1.27" octomap = ">=1.9.8,<1.10" openscenegraph = ">=3.6.5,<3.7" +pagmo = ">=2.19.0,<2.20" pagmo-devel = ">=2.19.0,<2.20" spdlog = ">=1.12.0,<1.13" tinyxml2 = ">=10.0.0,<10.1" From b631135d06e5fef47f470d3c66c107820abe3c5c Mon Sep 17 00:00:00 2001 From: Jeongseok Lee Date: Thu, 27 Jun 2024 05:03:19 -0700 Subject: [PATCH 12/41] [py] Remove binding of deprecated BoxedLcpConstraintSolver constructor (cherry picked from commit ad9a8a1c61223b0d276c0242b0acf148721ff89b) --- dart/constraint/BoxedLcpConstraintSolver.hpp | 2 +- .../constraint/BoxedLcpConstraintSolver.cpp | 25 +++++++++++-------- 2 files changed, 16 insertions(+), 11 deletions(-) diff --git a/dart/constraint/BoxedLcpConstraintSolver.hpp b/dart/constraint/BoxedLcpConstraintSolver.hpp index 3220c1876aaad..7d9ff613c9134 100644 --- a/dart/constraint/BoxedLcpConstraintSolver.hpp +++ b/dart/constraint/BoxedLcpConstraintSolver.hpp @@ -61,7 +61,7 @@ class BoxedLcpConstraintSolver : public ConstraintSolver BoxedLcpSolverPtr boxedLcpSolver = nullptr, BoxedLcpSolverPtr secondaryBoxedLcpSolver = nullptr); - /// Constructos with default primary and secondary LCP solvers, which are + /// Constructs with default primary and secondary LCP solvers, which are /// Dantzig and PGS, respectively. BoxedLcpConstraintSolver(); diff --git a/python/dartpy/constraint/BoxedLcpConstraintSolver.cpp b/python/dartpy/constraint/BoxedLcpConstraintSolver.cpp index b470ab9e2732b..97b088ed85997 100644 --- a/python/dartpy/constraint/BoxedLcpConstraintSolver.cpp +++ b/python/dartpy/constraint/BoxedLcpConstraintSolver.cpp @@ -42,26 +42,31 @@ namespace python { void BoxedLcpConstraintSolver(py::module& m) { ::py::class_< - dart::constraint::BoxedLcpConstraintSolver, - dart::constraint::ConstraintSolver, - std::shared_ptr>( + constraint::BoxedLcpConstraintSolver, + constraint::ConstraintSolver, + std::shared_ptr>( m, "BoxedLcpConstraintSolver") - .def(::py::init(), ::py::arg("timeStep")) + .def(::py::init<>()) .def( - ::py::init(), - ::py::arg("timeStep"), + ::py::init(), ::py::arg("boxedLcpSolver")) + .def( + ::py::init< + constraint::BoxedLcpSolverPtr, + constraint::BoxedLcpSolverPtr>(), + ::py::arg("boxedLcpSolver"), + ::py::arg("secondaryBoxedLcpSolver")) .def( "setBoxedLcpSolver", - +[](dart::constraint::BoxedLcpConstraintSolver* self, - dart::constraint::BoxedLcpSolverPtr lcpSolver) { + +[](constraint::BoxedLcpConstraintSolver* self, + constraint::BoxedLcpSolverPtr lcpSolver) { self->setBoxedLcpSolver(lcpSolver); }, ::py::arg("lcpSolver")) .def( "getBoxedLcpSolver", - +[](const dart::constraint::BoxedLcpConstraintSolver* self) - -> dart::constraint::ConstBoxedLcpSolverPtr { + +[](const constraint::BoxedLcpConstraintSolver* self) + -> constraint::ConstBoxedLcpSolverPtr { return self->getBoxedLcpSolver(); }); } From ff610d3464649c13afdb19bb37e15875aa7578b0 Mon Sep 17 00:00:00 2001 From: Jeongseok Lee Date: Thu, 27 Jun 2024 04:23:40 -0700 Subject: [PATCH 13/41] [vcpkg] Update to 2024.06.15 --- .github/workflows/ci_windows.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci_windows.yml b/.github/workflows/ci_windows.yml index 3c92109aed376..fbc2e43f7b149 100644 --- a/.github/workflows/ci_windows.yml +++ b/.github/workflows/ci_windows.yml @@ -55,7 +55,7 @@ jobs: tracy urdfdom triplet: x64-windows - revision: "2024.02.14" + revision: "2024.06.15" github-binarycache: true token: ${{ github.token }} From e11c65ffc4c473fe1467e02fa3cbebe4feebe776 Mon Sep 17 00:00:00 2001 From: Steve Peters Date: Fri, 28 Jun 2024 16:20:31 -0700 Subject: [PATCH 14/41] config.hpp.in: remove whitespace from version macros (#1820) Signed-off-by: Steve Peters --- dart/config.hpp.in | 6 +++--- tests/unit/common/test_Logging.cpp | 12 ++++++++++++ 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/dart/config.hpp.in b/dart/config.hpp.in index 7ee2997fd7a80..c288339c28c02 100644 --- a/dart/config.hpp.in +++ b/dart/config.hpp.in @@ -2,9 +2,9 @@ #pragma once /* Version number */ -#define DART_MAJOR_VERSION @DART_MAJOR_VERSION @ -#define DART_MINOR_VERSION @DART_MINOR_VERSION @ -#define DART_PATCH_VERSION @DART_PATCH_VERSION @ +#define DART_MAJOR_VERSION @DART_MAJOR_VERSION@ +#define DART_MINOR_VERSION @DART_MINOR_VERSION@ +#define DART_PATCH_VERSION @DART_PATCH_VERSION@ #define DART_VERSION "@DART_VERSION@" #define DART_DESCRIPTION "@DART_PKG_DESC@" diff --git a/tests/unit/common/test_Logging.cpp b/tests/unit/common/test_Logging.cpp index 4595a768b54f2..a38b736e81f35 100644 --- a/tests/unit/common/test_Logging.cpp +++ b/tests/unit/common/test_Logging.cpp @@ -33,6 +33,8 @@ #include "TestHelpers.hpp" #include +// For version macros +#include #include @@ -55,3 +57,13 @@ TEST(LoggingTest, Arguments) [[maybe_unused]] int val = 10; DART_INFO("Log with param '{}' and '{}'", 1, val); } + +//============================================================================== +TEST(LoggingTest, VersionMacros) +{ + DART_INFO("DART_VERSION: {}", DART_VERSION); + DART_INFO("DART_DESCRIPTION: {}", DART_DESCRIPTION); + EXPECT_TRUE(DART_VERSION_AT_LEAST(5, 999, 999)); + EXPECT_TRUE(DART_VERSION_AT_LEAST(6, 13, 999)); + EXPECT_TRUE(DART_VERSION_AT_LEAST(6, 14, 1)); +} From 69a445c8062025d157d9db25895540df696faaaa Mon Sep 17 00:00:00 2001 From: Jeongseok Lee Date: Fri, 28 Jun 2024 23:05:17 -0700 Subject: [PATCH 15/41] [vcpkg] Update version to 2024.06.15 for dartpy build --- .github/workflows/publish_dartpy.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/publish_dartpy.yml b/.github/workflows/publish_dartpy.yml index 1da683e6074c5..1db019cd8abd3 100644 --- a/.github/workflows/publish_dartpy.yml +++ b/.github/workflows/publish_dartpy.yml @@ -119,7 +119,7 @@ jobs: tinyxml2 urdfdom triplet: x64-windows - revision: "2024.02.14" + revision: "2024.06.15" github-binarycache: true token: ${{ github.token }} From 8cf5fa89e2c37c524699d317307004105abcd8fc Mon Sep 17 00:00:00 2001 From: Jeongseok Lee Date: Sat, 29 Jun 2024 15:54:17 -0700 Subject: [PATCH 16/41] [pixi] Exclude hidden folders from formatting (cherry picked from commit b2c4e067d23737e02ef97c00a98dc65703eb2efc) --- pixi.toml | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/pixi.toml b/pixi.toml index 955fc1c6222ff..5d4e2d43c5f39 100644 --- a/pixi.toml +++ b/pixi.toml @@ -49,12 +49,20 @@ install-local = { cmd = "cmake --install build --prefix $CONDA_PREFIX", depends_ configure = { cmd = "cmake -G Ninja -S . -B build -DCMAKE_BUILD_TYPE=Release -DDART_VERBOSE=ON -DDART_USE_SYSTEM_IMGUI=ON" } -lint = { cmd = "cmake --build build --target format && black . && isort .", depends_on = [ +lint-cpp = { cmd = "cmake --build build --target format", depends_on = [ "configure", ] } -check-lint = { cmd = "cmake --build build --target check-format && black . --check && isort . --check", depends_on = [ +lint-py = { cmd = "black . --exclude '\\..*' && isort . --skip-glob '.*'", depends_on = [ "configure", ] } +lint = { depends_on = ["lint-cpp", "lint-py"] } +check-lint-cpp = { cmd = "cmake --build build --target check-format", depends_on = [ + "configure", +] } +check-lint-py = { cmd = "black . --check --exclude '\\..*' && isort . --check --skip-glob '.*'", depends_on = [ + "configure", +] } +check-lint = { depends_on = ["check-lint-cpp", "check-lint-py"] } build = { cmd = "cmake --build build -j --target all", depends_on = [ "configure", @@ -146,10 +154,14 @@ freeglut = ">=3.2.2,<3.3" [target.win-64.tasks] configure = { cmd = "cmake -S . -B build -G 'Visual Studio 17 2022' -DDART_VERBOSE=ON -DDART_MSVC_DEFAULT_OPTIONS=ON -DBUILD_SHARED_LIBS=OFF -DDART_USE_SYSTEM_IMGUI=OFF" } -lint = { cmd = "black . && isort .", depends_on = ["configure"] } -check-lint = { cmd = "black . --check && isort . --check", depends_on = [ +lint-py = { cmd = "black . --exclude '\\..*' && isort . --skip-glob '.*'", depends_on = [ + "configure", +] } +lint = { depends_on = ["lint-py"] } +check-lint-py = { cmd = "black . --check --exclude '\\..*' && isort . --check --skip-glob '.*'", depends_on = [ "configure", ] } +check-lint = { depends_on = ["check-lint-py"] } build = { cmd = "cmake --build build --config Release -j", depends_on = [ "configure", ] } From b6a39c4a96feb91b7ec770fba9a80d4d9c05e131 Mon Sep 17 00:00:00 2001 From: Jeongseok Lee Date: Sat, 29 Jun 2024 15:56:38 -0700 Subject: [PATCH 17/41] [clang-format] Set language standard to C++17 (cherry picked from commit 94380de048bf3afc1d72f41f906cd0b7f22da1c5) --- .clang-format | 2 +- dart/common/AspectWithVersion.hpp | 4 +- dart/common/Cloneable.hpp | 2 +- dart/common/Composite.cpp | 10 ++-- dart/common/Composite.hpp | 2 +- dart/common/CompositeJoiner.hpp | 2 +- dart/common/EmbeddedAspect.hpp | 6 +- dart/common/RequiresAspect.hpp | 4 +- dart/common/SpecializedForAspect.hpp | 4 +- dart/common/detail/AspectWithVersion.hpp | 4 +- dart/common/detail/EmbeddedAspect.hpp | 4 +- dart/dynamics/BodyNode.cpp | 10 ++-- dart/dynamics/HierarchicalIK.cpp | 9 +-- dart/dynamics/HierarchicalIK.hpp | 8 +-- dart/dynamics/NodeManagerJoiner.hpp | 4 +- dart/dynamics/PointCloudShape.cpp | 4 +- dart/dynamics/SoftBodyNode.cpp | 18 +++--- dart/dynamics/SpecializedNodeManager.hpp | 8 +-- dart/dynamics/detail/BasicNodeManager.hpp | 4 +- dart/dynamics/detail/BodyNodeAspect.hpp | 10 ++-- dart/dynamics/detail/EndEffectorAspect.hpp | 2 +- dart/dynamics/detail/EulerJointAspect.hpp | 2 +- dart/dynamics/detail/FixedJacobianNode.hpp | 4 +- dart/dynamics/detail/PlanarJointAspect.hpp | 2 +- dart/dynamics/detail/PrismaticJointAspect.hpp | 2 +- dart/dynamics/detail/RevoluteJointAspect.hpp | 2 +- dart/dynamics/detail/ScrewJointAspect.hpp | 2 +- dart/dynamics/detail/ShapeFrameAspect.hpp | 2 +- dart/dynamics/detail/ShapeNode.hpp | 2 +- dart/dynamics/detail/UniversalJointAspect.hpp | 2 +- dart/utils/CompositeResourceRetriever.hpp | 2 +- dart/utils/PackageResourceRetriever.hpp | 2 +- examples/atlas_puppet/main.cpp | 2 +- examples/hubo_puppet/main.cpp | 2 +- examples/wam_ikfast/InputHandler.hpp | 2 +- python/dartpy/collision/CollisionDetector.cpp | 2 +- python/dartpy/collision/CollisionGroup.cpp | 2 +- python/dartpy/collision/FCLCollisionGroup.cpp | 2 +- python/dartpy/constraint/ConstraintBase.cpp | 2 +- python/dartpy/dynamics/Frame.cpp | 2 +- python/dartpy/dynamics/Node.cpp | 2 +- .../dartpy/dynamics/TranslationalJoint2D.cpp | 10 ++-- python/dartpy/dynamics/UniversalJoint.cpp | 10 ++-- python/dartpy/dynamics/ZeroDofJoint.cpp | 2 +- python/dartpy/gui/osg/ImGuiHandler.cpp | 2 +- tests/integration/GeneratedWamIkFast.cpp | 55 +++++++++---------- tests/integration/SharedLibraryWamIkFast.cpp | 55 +++++++++---------- tests/integration/test_NameManagement.cpp | 4 +- tests/unit/common/test_Uri.cpp | 2 +- 49 files changed, 146 insertions(+), 157 deletions(-) diff --git a/.clang-format b/.clang-format index 68766810a2d55..7d92892bcd625 100644 --- a/.clang-format +++ b/.clang-format @@ -151,6 +151,6 @@ SpacesInContainerLiterals: true SpacesInCStyleCastParentheses: false SpacesInParentheses: false SpacesInSquareBrackets: false -Standard: Auto +Standard: c++17 TabWidth: 2 UseTab: Never diff --git a/dart/common/AspectWithVersion.hpp b/dart/common/AspectWithVersion.hpp index 4e82430225bb9..95d6c9f2c0296 100644 --- a/dart/common/AspectWithVersion.hpp +++ b/dart/common/AspectWithVersion.hpp @@ -43,7 +43,7 @@ template < class DerivedT, typename StateDataT, class CompositeT = Composite, - void (*updateState)(DerivedT*) = &detail::NoOp > + void (*updateState)(DerivedT*) = &detail::NoOp> using AspectWithState = detail::AspectWithState< CompositeTrackingAspect, DerivedT, @@ -56,7 +56,7 @@ template < class DerivedT, typename PropertiesDataT, class CompositeT = Composite, - void (*updateProperties)(DerivedT*) = &detail::NoOp > + void (*updateProperties)(DerivedT*) = &detail::NoOp> using AspectWithVersionedProperties = detail::AspectWithVersionedProperties< CompositeTrackingAspect, DerivedT, diff --git a/dart/common/Cloneable.hpp b/dart/common/Cloneable.hpp index 05d7923a0d95d..764e909239299 100644 --- a/dart/common/Cloneable.hpp +++ b/dart/common/Cloneable.hpp @@ -303,7 +303,7 @@ class CloneableVector CloneableVector& operator=(const CloneableVector& other); /// Create a copy of this CloneableVector's contents - std::unique_ptr > clone() const; + std::unique_ptr> clone() const; /// Copy the contents of another cloneable vector into this one. void copy(const CloneableVector& anotherVector); diff --git a/dart/common/Composite.cpp b/dart/common/Composite.cpp index 6dfd8658ce765..f47e471b0ad66 100644 --- a/dart/common/Composite.cpp +++ b/dart/common/Composite.cpp @@ -57,9 +57,8 @@ template < typename ObjectType, class DataType, const DataType* (ObjectType::*getData)() const, - typename ObjectMap - = std::map >, - typename DataMap = std::map > > + typename ObjectMap = std::map>, + typename DataMap = std::map>> static void extractDataFromObjectTypeMap( DataMap& dataMap, const ObjectMap& objectMap) { @@ -113,9 +112,8 @@ template < typename ObjectType, class DataType, void (ObjectType::*setData)(const DataType&), - typename ObjectMap - = std::map >, - typename DataMap = std::map > > + typename ObjectMap = std::map>, + typename DataMap = std::map>> static void setObjectsFromDataTypeMap( ObjectMap& objectMap, const DataMap& dataMap) { diff --git a/dart/common/Composite.hpp b/dart/common/Composite.hpp index 45504b6a369e3..4422256b5308b 100644 --- a/dart/common/Composite.hpp +++ b/dart/common/Composite.hpp @@ -55,7 +55,7 @@ class Composite using State = detail::CompositeState; using Properties = detail::CompositeProperties; - using AspectMap = std::map >; + using AspectMap = std::map>; using RequiredAspectSet = std::unordered_set; template diff --git a/dart/common/CompositeJoiner.hpp b/dart/common/CompositeJoiner.hpp index 01ff4acfb48ee..8c571bcf2843d 100644 --- a/dart/common/CompositeJoiner.hpp +++ b/dart/common/CompositeJoiner.hpp @@ -130,7 +130,7 @@ class CompositeJoiner : public Base1, public Base2 /// you to include arbitrarily many base classes in the joining. template class CompositeJoiner - : public CompositeJoiner > + : public CompositeJoiner> { public: /// Default constructor diff --git a/dart/common/EmbeddedAspect.hpp b/dart/common/EmbeddedAspect.hpp index 6419d5698f352..127df953bbd48 100644 --- a/dart/common/EmbeddedAspect.hpp +++ b/dart/common/EmbeddedAspect.hpp @@ -89,7 +89,7 @@ DART_DECLARE_CLASS_WITH_VIRTUAL_BASE_BEGIN template class EmbedState : public virtual common::RequiresAspect< - common::EmbeddedStateAspect > + common::EmbeddedStateAspect> { public: using Derived = DerivedT; @@ -200,7 +200,7 @@ DART_DECLARE_CLASS_WITH_VIRTUAL_BASE_BEGIN template class EmbedProperties : public virtual common::RequiresAspect< - common::EmbeddedPropertiesAspect > + common::EmbeddedPropertiesAspect> { public: using Derived = DerivedT; @@ -377,7 +377,7 @@ class EmbedStateAndProperties : public virtual common::RequiresAspect< common::EmbeddedStateAndPropertiesAspect< DerivedT, StateDataT, - PropertiesDataT> > + PropertiesDataT>> { public: using Derived = DerivedT; diff --git a/dart/common/RequiresAspect.hpp b/dart/common/RequiresAspect.hpp index 7fe027eabcb6a..98e9b187b4cbc 100644 --- a/dart/common/RequiresAspect.hpp +++ b/dart/common/RequiresAspect.hpp @@ -66,8 +66,8 @@ DART_DECLARE_CLASS_WITH_VIRTUAL_BASE_END template class RequiresAspect : public CompositeJoiner< - Virtual >, - Virtual > > + Virtual>, + Virtual>> { }; diff --git a/dart/common/SpecializedForAspect.hpp b/dart/common/SpecializedForAspect.hpp index 6ec283fe7204b..c2b64e5e26622 100644 --- a/dart/common/SpecializedForAspect.hpp +++ b/dart/common/SpecializedForAspect.hpp @@ -192,8 +192,8 @@ DART_DECLARE_CLASS_WITH_VIRTUAL_BASE_END template class SpecializedForAspect : public CompositeJoiner< - Virtual >, - Virtual > > + Virtual>, + Virtual>> { public: virtual ~SpecializedForAspect() = default; diff --git a/dart/common/detail/AspectWithVersion.hpp b/dart/common/detail/AspectWithVersion.hpp index 8ca57b5685e17..41700a6b35646 100644 --- a/dart/common/detail/AspectWithVersion.hpp +++ b/dart/common/detail/AspectWithVersion.hpp @@ -49,7 +49,7 @@ template < class DerivedT, typename StateDataT, class CompositeT = Composite, - void (*updateState)(DerivedT*) = &NoOp > + void (*updateState)(DerivedT*) = &NoOp> class AspectWithState : public BaseT { public: @@ -104,7 +104,7 @@ template < class DerivedT, typename PropertiesDataT, class CompositeT = Composite, - void (*updateProperties)(DerivedT*) = &NoOp > + void (*updateProperties)(DerivedT*) = &NoOp> class AspectWithVersionedProperties : public BaseT { public: diff --git a/dart/common/detail/EmbeddedAspect.hpp b/dart/common/detail/EmbeddedAspect.hpp index 37d24b0110b14..3b8d214e0f384 100644 --- a/dart/common/detail/EmbeddedAspect.hpp +++ b/dart/common/detail/EmbeddedAspect.hpp @@ -78,7 +78,7 @@ template < void (*setEmbeddedState)(DerivedT*, const StateT&) = &DefaultSetEmbeddedState, const StateT& (*getEmbeddedState)(const DerivedT*) - = &DefaultGetEmbeddedState > + = &DefaultGetEmbeddedState> class EmbeddedStateAspect : public BaseT { public: @@ -245,7 +245,7 @@ template < void (*setEmbeddedProperties)(DerivedT*, const PropertiesT&) = &DefaultSetEmbeddedProperties, const PropertiesT& (*getEmbeddedProperties)(const DerivedT*) - = &DefaultGetEmbeddedProperties > + = &DefaultGetEmbeddedProperties> class EmbeddedPropertiesAspect : public BaseT { protected: diff --git a/dart/dynamics/BodyNode.cpp b/dart/dynamics/BodyNode.cpp index bcd8f56e3faa2..31e64a5d59a47 100644 --- a/dart/dynamics/BodyNode.cpp +++ b/dart/dynamics/BodyNode.cpp @@ -54,8 +54,8 @@ namespace dynamics { template < class DataType, std::unique_ptr (Node::*getData)() const, - typename VectorType = common::CloneableVector >, - typename DataMap = std::map > > + typename VectorType = common::CloneableVector>, + typename DataMap = std::map>> static void extractDataFromNodeTypeMap( DataMap& dataMap, const BodyNode::NodeMap& nodeMap) { @@ -84,8 +84,8 @@ static void extractDataFromNodeTypeMap( template < class DataType, void (Node::*setData)(const DataType&), - typename VectorType = common::CloneableVector >, - typename DataMap = std::map > > + typename VectorType = common::CloneableVector>, + typename DataMap = std::map>> static void setNodesFromDataTypeMap( BodyNode::NodeMap& nodeMap, const DataMap& dataMap) { @@ -95,7 +95,7 @@ static void setNodesFromDataTypeMap( while (nodeMap.end() != node_it && dataMap.end() != data_it) { if (node_it->first == data_it->first) { const std::vector& node_vec = node_it->second; - const std::vector >& data_vec + const std::vector>& data_vec = data_it->second->getVector(); // TODO(MXG): Should we report if the dimensions are mismatched? diff --git a/dart/dynamics/HierarchicalIK.cpp b/dart/dynamics/HierarchicalIK.cpp index fce34317c4cda..79d2e4e7e7d57 100644 --- a/dart/dynamics/HierarchicalIK.cpp +++ b/dart/dynamics/HierarchicalIK.cpp @@ -272,8 +272,7 @@ const std::vector& HierarchicalIK::computeNullSpaces() const mNullSpaceCache.resize(hierarchy.size()); bool zeroedNullSpace = false; for (std::size_t i = 0; i < hierarchy.size(); ++i) { - const std::vector >& level - = hierarchy[i]; + const std::vector>& level = hierarchy[i]; Eigen::MatrixXd& NS = mNullSpaceCache[i]; if (i == 0) { @@ -472,8 +471,7 @@ double HierarchicalIK::Constraint::eval(const Eigen::VectorXd& _x) double cost = 0.0; for (std::size_t i = 0; i < hierarchy.size(); ++i) { - const std::vector >& level - = hierarchy[i]; + const std::vector>& level = hierarchy[i]; for (std::size_t j = 0; j < level.size(); ++j) { const std::shared_ptr& ik = level[j]; @@ -509,8 +507,7 @@ void HierarchicalIK::Constraint::evalGradient( _grad.setZero(); for (std::size_t i = 0; i < hierarchy.size(); ++i) { - const std::vector >& level - = hierarchy[i]; + const std::vector>& level = hierarchy[i]; mLevelGradCache.setZero(nDofs); for (std::size_t j = 0; j < level.size(); ++j) { diff --git a/dart/dynamics/HierarchicalIK.hpp b/dart/dynamics/HierarchicalIK.hpp index d912ad957cad8..0908eca4e5cdc 100644 --- a/dart/dynamics/HierarchicalIK.hpp +++ b/dart/dynamics/HierarchicalIK.hpp @@ -45,7 +45,7 @@ namespace dynamics { /// their gradients added. Precedence of the modules decreases as the index of /// the outer vector increases. Modules with lower precedence will be projected /// through the null spaces of modules with higher precedence. -typedef std::vector > > +typedef std::vector>> IKHierarchy; /// The HierarchicalIK class provides a convenient way of setting up a @@ -351,8 +351,8 @@ class HierarchicalIK : public common::Subject class CompositeIK : public HierarchicalIK { public: - typedef std::unordered_set > ModuleSet; - typedef std::unordered_set > + typedef std::unordered_set> ModuleSet; + typedef std::unordered_set> ConstModuleSet; /// Create a CompositeIK module @@ -385,7 +385,7 @@ class CompositeIK : public HierarchicalIK CompositeIK(const SkeletonPtr& _skel); /// The set of modules being used by this CompositeIK - std::unordered_set > mModuleSet; + std::unordered_set> mModuleSet; }; /// The WholeBodyIK class provides an interface for simultaneously solving all diff --git a/dart/dynamics/NodeManagerJoiner.hpp b/dart/dynamics/NodeManagerJoiner.hpp index 614feabf8fa64..61dccc3c2ab00 100644 --- a/dart/dynamics/NodeManagerJoiner.hpp +++ b/dart/dynamics/NodeManagerJoiner.hpp @@ -101,7 +101,7 @@ template class NodeManagerJoinerForBodyNode : public NodeManagerJoinerForBodyNode< Base1, - NodeManagerJoinerForBodyNode > + NodeManagerJoinerForBodyNode> { public: NodeManagerJoinerForBodyNode() = default; @@ -173,7 +173,7 @@ template class NodeManagerJoinerForSkeleton : public NodeManagerJoinerForSkeleton< Base1, - NodeManagerJoinerForSkeleton > + NodeManagerJoinerForSkeleton> { public: NodeManagerJoinerForSkeleton() = default; diff --git a/dart/dynamics/PointCloudShape.cpp b/dart/dynamics/PointCloudShape.cpp index 7cadb6853ddf5..0096e15773cd9 100644 --- a/dart/dynamics/PointCloudShape.cpp +++ b/dart/dynamics/PointCloudShape.cpp @@ -205,13 +205,13 @@ Eigen::Vector4d PointCloudShape::getOverallColor() const void PointCloudShape::setColors( const std::vector< Eigen::Vector4d, - Eigen::aligned_allocator >& colors) + Eigen::aligned_allocator>& colors) { mColors = colors; } //============================================================================== -const std::vector >& +const std::vector>& PointCloudShape::getColors() const { return mColors; diff --git a/dart/dynamics/SoftBodyNode.cpp b/dart/dynamics/SoftBodyNode.cpp index bd12909103372..4356a98eacae4 100644 --- a/dart/dynamics/SoftBodyNode.cpp +++ b/dart/dynamics/SoftBodyNode.cpp @@ -1431,26 +1431,26 @@ SoftBodyNode::UniqueProperties SoftBodyNodeHelper::makeBoxProperties( std::vector corners(nCorners); - std::vector > edgeX( + std::vector> edgeX( 4, std::vector(nVerticesAtEdgeX)); - std::vector > edgeY( + std::vector> edgeY( 4, std::vector(nVerticesAtEdgeY)); - std::vector > edgeZ( + std::vector> edgeZ( 4, std::vector(nVerticesAtEdgeZ)); - std::vector > sideXNeg( + std::vector> sideXNeg( nVerticesAtEdgeY, std::vector(nVerticesAtEdgeZ)); - std::vector > sideXPos( + std::vector> sideXPos( nVerticesAtEdgeY, std::vector(nVerticesAtEdgeZ)); - std::vector > sideYNeg( + std::vector> sideYNeg( nVerticesAtEdgeZ, std::vector(nVerticesAtEdgeX)); - std::vector > sideYPos( + std::vector> sideYPos( nVerticesAtEdgeZ, std::vector(nVerticesAtEdgeX)); - std::vector > sideZNeg( + std::vector> sideZNeg( nVerticesAtEdgeX, std::vector(nVerticesAtEdgeY)); - std::vector > sideZPos( + std::vector> sideZPos( nVerticesAtEdgeX, std::vector(nVerticesAtEdgeY)); Eigen::Vector3d x0y0z0 diff --git a/dart/dynamics/SpecializedNodeManager.hpp b/dart/dynamics/SpecializedNodeManager.hpp index 8c8792429f434..6ac11bd24bd5d 100644 --- a/dart/dynamics/SpecializedNodeManager.hpp +++ b/dart/dynamics/SpecializedNodeManager.hpp @@ -113,8 +113,8 @@ DART_DECLARE_CLASS_WITH_VIRTUAL_BASE_END template class BodyNodeSpecializedFor : public NodeManagerJoinerForBodyNode< - common::Virtual >, - common::Virtual > > + common::Virtual>, + common::Virtual>> { }; @@ -217,8 +217,8 @@ DART_DECLARE_CLASS_WITH_VIRTUAL_BASE_END template class SkeletonSpecializedFor : public NodeManagerJoinerForSkeleton< - common::Virtual >, - common::Virtual > > + common::Virtual>, + common::Virtual>> { }; diff --git a/dart/dynamics/detail/BasicNodeManager.hpp b/dart/dynamics/detail/BasicNodeManager.hpp index 13266d95526c9..70eca0a756888 100644 --- a/dart/dynamics/detail/BasicNodeManager.hpp +++ b/dart/dynamics/detail/BasicNodeManager.hpp @@ -50,9 +50,9 @@ namespace detail { class BasicNodeManagerForBodyNode { public: - using NodeMap = std::map >; + using NodeMap = std::map>; using NodeDestructorSet = std::unordered_set; - using NodeNameMgrMap = std::map >; + using NodeNameMgrMap = std::map>; using SpecializedTreeNodes = std::map*>; diff --git a/dart/dynamics/detail/BodyNodeAspect.hpp b/dart/dynamics/detail/BodyNodeAspect.hpp index 38f7b7e8b3b84..ed50dcfefb233 100644 --- a/dart/dynamics/detail/BodyNodeAspect.hpp +++ b/dart/dynamics/detail/BodyNodeAspect.hpp @@ -116,16 +116,16 @@ struct BodyNodeAspectProperties //============================================================================== using NodeTypeStateVector - = common::CloneableVector >; + = common::CloneableVector>; using NodeStateMap - = std::map >; + = std::map>; using AllNodeStates = common::CloneableMap; //============================================================================== using NodeTypePropertiesVector - = common::CloneableVector >; + = common::CloneableVector>; using NodePropertiesMap - = std::map >; + = std::map>; using AllNodeProperties = common::CloneableMap; //============================================================================== @@ -168,7 +168,7 @@ using BodyNodeCompositeBase = common::EmbedStateAndPropertiesOnTopOf< BodyNode, BodyNodeState, BodyNodeAspectProperties, - common::RequiresAspect >; + common::RequiresAspect>; } // namespace detail } // namespace dynamics diff --git a/dart/dynamics/detail/EndEffectorAspect.hpp b/dart/dynamics/detail/EndEffectorAspect.hpp index 4a920e9892589..791d1794d2d49 100644 --- a/dart/dynamics/detail/EndEffectorAspect.hpp +++ b/dart/dynamics/detail/EndEffectorAspect.hpp @@ -97,7 +97,7 @@ void SupportUpdate(Support* support); using EndEffectorCompositeBase = CompositeNode > >; + common::SpecializedForAspect>>; } // namespace detail } // namespace dynamics diff --git a/dart/dynamics/detail/EulerJointAspect.hpp b/dart/dynamics/detail/EulerJointAspect.hpp index d611c70767894..984f922965333 100644 --- a/dart/dynamics/detail/EulerJointAspect.hpp +++ b/dart/dynamics/detail/EulerJointAspect.hpp @@ -84,7 +84,7 @@ struct EulerJointProperties : GenericJoint::Properties, using EulerJointBase = common::EmbedPropertiesOnTopOf< EulerJoint, EulerJointUniqueProperties, - GenericJoint >; + GenericJoint>; } // namespace detail } // namespace dynamics diff --git a/dart/dynamics/detail/FixedJacobianNode.hpp b/dart/dynamics/detail/FixedJacobianNode.hpp index eaedf635a6dc8..b6527fab029ff 100644 --- a/dart/dynamics/detail/FixedJacobianNode.hpp +++ b/dart/dynamics/detail/FixedJacobianNode.hpp @@ -45,8 +45,8 @@ class FixedJacobianNode; namespace detail { using FixedJacobianNodeCompositeBase = common::CompositeJoiner< - EntityNode >, - common::Virtual >; + EntityNode>, + common::Virtual>; } // namespace detail } // namespace dynamics diff --git a/dart/dynamics/detail/PlanarJointAspect.hpp b/dart/dynamics/detail/PlanarJointAspect.hpp index bf87839988b7f..a40130ef658d7 100644 --- a/dart/dynamics/detail/PlanarJointAspect.hpp +++ b/dart/dynamics/detail/PlanarJointAspect.hpp @@ -127,7 +127,7 @@ struct PlanarJointProperties : GenericJoint::Properties, using PlanarJointBase = common::EmbedPropertiesOnTopOf< PlanarJoint, PlanarJointUniqueProperties, - GenericJoint >; + GenericJoint>; } // namespace detail } // namespace dynamics diff --git a/dart/dynamics/detail/PrismaticJointAspect.hpp b/dart/dynamics/detail/PrismaticJointAspect.hpp index 851fbd0b809c2..ee08e6ff98a48 100644 --- a/dart/dynamics/detail/PrismaticJointAspect.hpp +++ b/dart/dynamics/detail/PrismaticJointAspect.hpp @@ -76,7 +76,7 @@ struct PrismaticJointProperties : GenericJoint::Properties, using PrismaticJointBase = common::EmbedPropertiesOnTopOf< PrismaticJoint, PrismaticJointUniqueProperties, - GenericJoint >; + GenericJoint>; } // namespace detail } // namespace dynamics diff --git a/dart/dynamics/detail/RevoluteJointAspect.hpp b/dart/dynamics/detail/RevoluteJointAspect.hpp index 246cc42ae96bb..01bd6921c8982 100644 --- a/dart/dynamics/detail/RevoluteJointAspect.hpp +++ b/dart/dynamics/detail/RevoluteJointAspect.hpp @@ -76,7 +76,7 @@ struct RevoluteJointProperties : GenericJoint::Properties, using RevoluteJointBase = common::EmbedPropertiesOnTopOf< RevoluteJoint, RevoluteJointUniqueProperties, - GenericJoint >; + GenericJoint>; } // namespace detail diff --git a/dart/dynamics/detail/ScrewJointAspect.hpp b/dart/dynamics/detail/ScrewJointAspect.hpp index 0de55457fa184..1f63f231b98ec 100644 --- a/dart/dynamics/detail/ScrewJointAspect.hpp +++ b/dart/dynamics/detail/ScrewJointAspect.hpp @@ -81,7 +81,7 @@ struct ScrewJointProperties : GenericJoint::Properties, using ScrewJointBase = common::EmbedPropertiesOnTopOf< ScrewJoint, ScrewJointUniqueProperties, - GenericJoint >; + GenericJoint>; } // namespace detail } // namespace dynamics diff --git a/dart/dynamics/detail/ShapeFrameAspect.hpp b/dart/dynamics/detail/ShapeFrameAspect.hpp index 7068cfed8c0a4..623dd5ed3858c 100644 --- a/dart/dynamics/detail/ShapeFrameAspect.hpp +++ b/dart/dynamics/detail/ShapeFrameAspect.hpp @@ -160,7 +160,7 @@ using ShapeFrameCompositeBase = common::EmbedPropertiesOnTopOf< ShapeFrame, ShapeFrameProperties, common:: - SpecializedForAspect >; + SpecializedForAspect>; } // namespace detail } // namespace dynamics diff --git a/dart/dynamics/detail/ShapeNode.hpp b/dart/dynamics/detail/ShapeNode.hpp index 091cb978f6370..95f096ec7ec93 100644 --- a/dart/dynamics/detail/ShapeNode.hpp +++ b/dart/dynamics/detail/ShapeNode.hpp @@ -42,7 +42,7 @@ namespace dynamics { namespace detail { using ShapeNodeCompositeBase - = CompositeNode >; + = CompositeNode>; } // namespace detail } // namespace dynamics diff --git a/dart/dynamics/detail/UniversalJointAspect.hpp b/dart/dynamics/detail/UniversalJointAspect.hpp index f0e2b87d34e4a..b1841fb5b9776 100644 --- a/dart/dynamics/detail/UniversalJointAspect.hpp +++ b/dart/dynamics/detail/UniversalJointAspect.hpp @@ -77,7 +77,7 @@ struct UniversalJointProperties : GenericJoint::Properties, using UniversalJointBase = common::EmbedPropertiesOnTopOf< UniversalJoint, UniversalJointUniqueProperties, - GenericJoint >; + GenericJoint>; } // namespace detail } // namespace dynamics diff --git a/dart/utils/CompositeResourceRetriever.hpp b/dart/utils/CompositeResourceRetriever.hpp index e83e526affeef..b9093f44633a8 100644 --- a/dart/utils/CompositeResourceRetriever.hpp +++ b/dart/utils/CompositeResourceRetriever.hpp @@ -82,7 +82,7 @@ class CompositeResourceRetriever : public virtual common::ResourceRetriever std::vector getRetrievers( const common::Uri& _uri) const; - std::unordered_map > + std::unordered_map> mResourceRetrievers; std::vector mDefaultResourceRetrievers; }; diff --git a/dart/utils/PackageResourceRetriever.hpp b/dart/utils/PackageResourceRetriever.hpp index f32131c65eec6..a0e52ac239aa8 100644 --- a/dart/utils/PackageResourceRetriever.hpp +++ b/dart/utils/PackageResourceRetriever.hpp @@ -99,7 +99,7 @@ class PackageResourceRetriever : public virtual common::ResourceRetriever private: common::ResourceRetrieverPtr mLocalRetriever; - std::unordered_map > mPackageMap; + std::unordered_map> mPackageMap; const std::vector& getPackagePaths( const std::string& _packageName) const; diff --git a/examples/atlas_puppet/main.cpp b/examples/atlas_puppet/main.cpp index 03625bf559f9d..43f901f75ae26 100644 --- a/examples/atlas_puppet/main.cpp +++ b/examples/atlas_puppet/main.cpp @@ -487,7 +487,7 @@ class InputHandler : public ::osgGA::GUIEventHandler std::vector mEndEffectorIndex; - std::vector > mDefaultBounds; + std::vector> mDefaultBounds; dart::common::aligned_vector mDefaultTargetTf; diff --git a/examples/hubo_puppet/main.cpp b/examples/hubo_puppet/main.cpp index 1fdd5520cfbaf..fce275651719b 100644 --- a/examples/hubo_puppet/main.cpp +++ b/examples/hubo_puppet/main.cpp @@ -1074,7 +1074,7 @@ class InputHandler : public ::osgGA::GUIEventHandler std::vector mEndEffectorIndex; - std::vector > mDefaultBounds; + std::vector> mDefaultBounds; dart::common::aligned_vector mDefaultTargetTf; diff --git a/examples/wam_ikfast/InputHandler.hpp b/examples/wam_ikfast/InputHandler.hpp index 86d386b53c82c..2e2c17dcb979a 100644 --- a/examples/wam_ikfast/InputHandler.hpp +++ b/examples/wam_ikfast/InputHandler.hpp @@ -67,7 +67,7 @@ class InputHandler : public ::osgGA::GUIEventHandler std::vector mEndEffectorIndex; - std::vector > mDefaultBounds; + std::vector> mDefaultBounds; dart::common::aligned_vector mDefaultTargetTf; }; diff --git a/python/dartpy/collision/CollisionDetector.cpp b/python/dartpy/collision/CollisionDetector.cpp index 68904c66e6f40..bef9e30ea32c1 100644 --- a/python/dartpy/collision/CollisionDetector.cpp +++ b/python/dartpy/collision/CollisionDetector.cpp @@ -43,7 +43,7 @@ void CollisionDetector(py::module& m) { ::py::class_< dart::collision::CollisionDetector, - std::shared_ptr >( + std::shared_ptr>( m, "CollisionDetector") .def( "cloneWithoutCollisionObjects", diff --git a/python/dartpy/collision/CollisionGroup.cpp b/python/dartpy/collision/CollisionGroup.cpp index fca4f4cf5f4b7..38cc91fb3c84e 100644 --- a/python/dartpy/collision/CollisionGroup.cpp +++ b/python/dartpy/collision/CollisionGroup.cpp @@ -44,7 +44,7 @@ void CollisionGroup(py::module& m) { ::py::class_< dart::collision::CollisionGroup, - std::shared_ptr >(m, "CollisionGroup") + std::shared_ptr>(m, "CollisionGroup") .def( "getCollisionDetector", +[](dart::collision::CollisionGroup* self) diff --git a/python/dartpy/collision/FCLCollisionGroup.cpp b/python/dartpy/collision/FCLCollisionGroup.cpp index 77d679088a351..9062ec645404f 100644 --- a/python/dartpy/collision/FCLCollisionGroup.cpp +++ b/python/dartpy/collision/FCLCollisionGroup.cpp @@ -44,7 +44,7 @@ void FCLCollisionGroup(py::module& m) ::py::class_< dart::collision::FCLCollisionGroup, dart::collision::CollisionGroup, - std::shared_ptr >( + std::shared_ptr>( m, "FCLCollisionGroup") .def( ::py::init(), diff --git a/python/dartpy/constraint/ConstraintBase.cpp b/python/dartpy/constraint/ConstraintBase.cpp index f67957efb92b9..408c9b529baae 100644 --- a/python/dartpy/constraint/ConstraintBase.cpp +++ b/python/dartpy/constraint/ConstraintBase.cpp @@ -43,7 +43,7 @@ void ConstraintBase(py::module& m) { ::py::class_< dart::constraint::ConstraintBase, - std::shared_ptr >(m, "ConstraintBase") + std::shared_ptr>(m, "ConstraintBase") .def( "getType", +[](const dart::constraint::ConstraintBase* self) -> std::string { diff --git a/python/dartpy/dynamics/Frame.cpp b/python/dartpy/dynamics/Frame.cpp index 0ac999759ac5e..d0a5f769e5c35 100644 --- a/python/dartpy/dynamics/Frame.cpp +++ b/python/dartpy/dynamics/Frame.cpp @@ -47,7 +47,7 @@ void Frame(py::module& m) ::py::class_< dart::dynamics::Frame, dart::dynamics::Entity, - std::shared_ptr >(m, "Frame") + std::shared_ptr>(m, "Frame") .def( "getRelativeTransform", +[](const dart::dynamics::Frame* self) -> Eigen::Isometry3d { diff --git a/python/dartpy/dynamics/Node.cpp b/python/dartpy/dynamics/Node.cpp index 29471710d665b..3c6458e8a1703 100644 --- a/python/dartpy/dynamics/Node.cpp +++ b/python/dartpy/dynamics/Node.cpp @@ -49,7 +49,7 @@ void Node(py::module& m) ::py::class_< dart::dynamics::Node, /*dart::common::VersionCounter,*/ dart::common::Subject, - std::shared_ptr >(m, "Node") + std::shared_ptr>(m, "Node") .def( "setName", +[](dart::dynamics::Node* self, const std::string& newName) diff --git a/python/dartpy/dynamics/TranslationalJoint2D.cpp b/python/dartpy/dynamics/TranslationalJoint2D.cpp index 7f7705a679424..15d30fa733685 100644 --- a/python/dartpy/dynamics/TranslationalJoint2D.cpp +++ b/python/dartpy/dynamics/TranslationalJoint2D.cpp @@ -74,8 +74,8 @@ void TranslationalJoint2D(py::module& m) dart::common::EmbedPropertiesOnTopOf< dart::dynamics::TranslationalJoint2D, dart::dynamics::detail::TranslationalJoint2DUniqueProperties, - dart::dynamics::GenericJoint > >, - std::shared_ptr >( + dart::dynamics::GenericJoint>>, + std::shared_ptr>( m, "TranslationalJoint2D") .def( "hasTranslationalJoint2DAspect", @@ -89,7 +89,7 @@ void TranslationalJoint2D(py::module& m) dart::dynamics::TranslationalJoint2D, dart::dynamics::detail::TranslationalJoint2DUniqueProperties, dart::dynamics::GenericJoint< - dart::math::RealVectorSpace<2> > >::Aspect* aspect) { + dart::math::RealVectorSpace<2>>>::Aspect* aspect) { self->setTranslationalJoint2DAspect(aspect); }, ::py::arg("aspect")) @@ -105,7 +105,7 @@ void TranslationalJoint2D(py::module& m) dart::dynamics::TranslationalJoint2D, dart::dynamics::detail::TranslationalJoint2DUniqueProperties, dart::dynamics::GenericJoint< - dart::math::RealVectorSpace<2> > >::Aspect> { + dart::math::RealVectorSpace<2>>>::Aspect> { return self->releaseTranslationalJoint2DAspect(); }) .def( @@ -127,7 +127,7 @@ void TranslationalJoint2D(py::module& m) dart::dynamics::TranslationalJoint2D, dart::dynamics::detail::TranslationalJoint2DUniqueProperties, dart::dynamics::GenericJoint< - dart::math::RealVectorSpace<2> > >::AspectProperties& + dart::math::RealVectorSpace<2>>>::AspectProperties& properties) { self->setAspectProperties(properties); }, ::py::arg("properties")) .def( diff --git a/python/dartpy/dynamics/UniversalJoint.cpp b/python/dartpy/dynamics/UniversalJoint.cpp index cf45f75b06e8f..d127a0398d33a 100644 --- a/python/dartpy/dynamics/UniversalJoint.cpp +++ b/python/dartpy/dynamics/UniversalJoint.cpp @@ -77,8 +77,8 @@ void UniversalJoint(py::module& m) dart::common::EmbedPropertiesOnTopOf< dart::dynamics::UniversalJoint, dart::dynamics::detail::UniversalJointUniqueProperties, - dart::dynamics::GenericJoint > >, - std::shared_ptr >(m, "UniversalJoint") + dart::dynamics::GenericJoint>>, + std::shared_ptr>(m, "UniversalJoint") .def( "hasUniversalJointAspect", +[](const dart::dynamics::UniversalJoint* self) -> bool { @@ -91,7 +91,7 @@ void UniversalJoint(py::module& m) dart::dynamics::UniversalJoint, dart::dynamics::detail::UniversalJointUniqueProperties, dart::dynamics::GenericJoint< - dart::math::RealVectorSpace<2> > >::Aspect* aspect) { + dart::math::RealVectorSpace<2>>>::Aspect* aspect) { self->setUniversalJointAspect(aspect); }, ::py::arg("aspect")) @@ -107,7 +107,7 @@ void UniversalJoint(py::module& m) dart::dynamics::UniversalJoint, dart::dynamics::detail::UniversalJointUniqueProperties, dart::dynamics::GenericJoint< - dart::math::RealVectorSpace<2> > >::Aspect> { + dart::math::RealVectorSpace<2>>>::Aspect> { return self->releaseUniversalJointAspect(); }) .def( @@ -130,7 +130,7 @@ void UniversalJoint(py::module& m) dart::dynamics::UniversalJoint, dart::dynamics::detail::UniversalJointUniqueProperties, dart::dynamics::GenericJoint< - dart::math::RealVectorSpace<2> > >::AspectProperties& + dart::math::RealVectorSpace<2>>>::AspectProperties& properties) { self->setAspectProperties(properties); }, ::py::arg("properties")) .def( diff --git a/python/dartpy/dynamics/ZeroDofJoint.cpp b/python/dartpy/dynamics/ZeroDofJoint.cpp index fc2dc49c72f9c..59db48e3f9652 100644 --- a/python/dartpy/dynamics/ZeroDofJoint.cpp +++ b/python/dartpy/dynamics/ZeroDofJoint.cpp @@ -55,7 +55,7 @@ void ZeroDofJoint(py::module& m) ::py::class_< dart::dynamics::ZeroDofJoint, dart::dynamics::Joint, - std::shared_ptr >(m, "ZeroDofJoint") + std::shared_ptr>(m, "ZeroDofJoint") .def( "getZeroDofJointProperties", +[](const dart::dynamics::ZeroDofJoint* self) diff --git a/python/dartpy/gui/osg/ImGuiHandler.cpp b/python/dartpy/gui/osg/ImGuiHandler.cpp index 9a9ea224e40ff..2db794fc8fe21 100644 --- a/python/dartpy/gui/osg/ImGuiHandler.cpp +++ b/python/dartpy/gui/osg/ImGuiHandler.cpp @@ -48,7 +48,7 @@ void ImGuiHandler(py::module& m) { ::pybind11::class_< dart::gui::osg::ImGuiHandler, - osg::ref_ptr >(m, "ImGuiHandler") + osg::ref_ptr>(m, "ImGuiHandler") .def(::pybind11::init<>()) .def( "newFrame", diff --git a/tests/integration/GeneratedWamIkFast.cpp b/tests/integration/GeneratedWamIkFast.cpp index c3aa365c348fd..d5ac0511017ab 100644 --- a/tests/integration/GeneratedWamIkFast.cpp +++ b/tests/integration/GeneratedWamIkFast.cpp @@ -30916,7 +30916,7 @@ class IKSolver } { - std::vector > + std::vector> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -31161,8 +31161,7 @@ class IKSolver } { - std::vector< - IkSingleDOFSolutionBase > + std::vector> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -31664,7 +31663,7 @@ class IKSolver { std::vector< IkSingleDOFSolutionBase< - IkReal> > + IkReal>> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -31875,7 +31874,7 @@ class IKSolver { std::vector< IkSingleDOFSolutionBase< - IkReal> > + IkReal>> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -32107,7 +32106,7 @@ class IKSolver { std::vector< IkSingleDOFSolutionBase< - IkReal> > + IkReal>> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -32355,7 +32354,7 @@ class IKSolver { std::vector< IkSingleDOFSolutionBase< - IkReal> > + IkReal>> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -32624,7 +32623,7 @@ class IKSolver { std::vector< IkSingleDOFSolutionBase< - IkReal> > + IkReal>> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -32918,7 +32917,7 @@ class IKSolver { std::vector< IkSingleDOFSolutionBase< - IkReal> > + IkReal>> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -33194,7 +33193,7 @@ class IKSolver { std::vector< IkSingleDOFSolutionBase< - IkReal> > + IkReal>> vinfos(7); vinfos[0].jointtype = 1; @@ -33524,7 +33523,7 @@ class IKSolver { std::vector< IkSingleDOFSolutionBase< - IkReal> > + IkReal>> vinfos(7); vinfos[0].jointtype = 1; @@ -33799,7 +33798,7 @@ class IKSolver { std::vector< - IkSingleDOFSolutionBase > + IkSingleDOFSolutionBase> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -33995,8 +33994,7 @@ class IKSolver } { - std::vector< - IkSingleDOFSolutionBase > + std::vector> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -34165,7 +34163,7 @@ class IKSolver } { - std::vector > + std::vector> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -34604,7 +34602,7 @@ class IKSolver { std::vector< - IkSingleDOFSolutionBase > + IkSingleDOFSolutionBase> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -34800,8 +34798,8 @@ class IKSolver } { - std::vector > + std::vector< + IkSingleDOFSolutionBase> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -35021,7 +35019,7 @@ class IKSolver { std::vector< IkSingleDOFSolutionBase< - IkReal> > + IkReal>> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -35240,7 +35238,7 @@ class IKSolver { std::vector< IkSingleDOFSolutionBase< - IkReal> > + IkReal>> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -35467,7 +35465,7 @@ class IKSolver { std::vector< IkSingleDOFSolutionBase< - IkReal> > + IkReal>> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -35728,7 +35726,7 @@ class IKSolver { std::vector< IkSingleDOFSolutionBase< - IkReal> > + IkReal>> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -35977,7 +35975,7 @@ class IKSolver { std::vector< IkSingleDOFSolutionBase< - IkReal> > + IkReal>> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -36264,7 +36262,7 @@ class IKSolver { std::vector< IkSingleDOFSolutionBase< - IkReal> > + IkReal>> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -36508,8 +36506,7 @@ class IKSolver } { - std::vector< - IkSingleDOFSolutionBase > + std::vector> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -36695,7 +36692,7 @@ class IKSolver } { - std::vector > + std::vector> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -36850,8 +36847,8 @@ class IKSolver } { - std::vector > - vinfos(7); + std::vector> vinfos( + 7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; vinfos[0].indices[0] = _ij4[0]; diff --git a/tests/integration/SharedLibraryWamIkFast.cpp b/tests/integration/SharedLibraryWamIkFast.cpp index b34039dae8894..586cbfa92006c 100644 --- a/tests/integration/SharedLibraryWamIkFast.cpp +++ b/tests/integration/SharedLibraryWamIkFast.cpp @@ -30928,7 +30928,7 @@ class IKSolver } { - std::vector > + std::vector> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -31173,8 +31173,7 @@ class IKSolver } { - std::vector< - IkSingleDOFSolutionBase > + std::vector> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -31676,7 +31675,7 @@ class IKSolver { std::vector< IkSingleDOFSolutionBase< - IkReal> > + IkReal>> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -31887,7 +31886,7 @@ class IKSolver { std::vector< IkSingleDOFSolutionBase< - IkReal> > + IkReal>> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -32119,7 +32118,7 @@ class IKSolver { std::vector< IkSingleDOFSolutionBase< - IkReal> > + IkReal>> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -32367,7 +32366,7 @@ class IKSolver { std::vector< IkSingleDOFSolutionBase< - IkReal> > + IkReal>> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -32636,7 +32635,7 @@ class IKSolver { std::vector< IkSingleDOFSolutionBase< - IkReal> > + IkReal>> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -32930,7 +32929,7 @@ class IKSolver { std::vector< IkSingleDOFSolutionBase< - IkReal> > + IkReal>> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -33206,7 +33205,7 @@ class IKSolver { std::vector< IkSingleDOFSolutionBase< - IkReal> > + IkReal>> vinfos(7); vinfos[0].jointtype = 1; @@ -33536,7 +33535,7 @@ class IKSolver { std::vector< IkSingleDOFSolutionBase< - IkReal> > + IkReal>> vinfos(7); vinfos[0].jointtype = 1; @@ -33811,7 +33810,7 @@ class IKSolver { std::vector< - IkSingleDOFSolutionBase > + IkSingleDOFSolutionBase> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -34007,8 +34006,7 @@ class IKSolver } { - std::vector< - IkSingleDOFSolutionBase > + std::vector> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -34177,7 +34175,7 @@ class IKSolver } { - std::vector > + std::vector> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -34616,7 +34614,7 @@ class IKSolver { std::vector< - IkSingleDOFSolutionBase > + IkSingleDOFSolutionBase> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -34812,8 +34810,8 @@ class IKSolver } { - std::vector > + std::vector< + IkSingleDOFSolutionBase> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -35033,7 +35031,7 @@ class IKSolver { std::vector< IkSingleDOFSolutionBase< - IkReal> > + IkReal>> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -35252,7 +35250,7 @@ class IKSolver { std::vector< IkSingleDOFSolutionBase< - IkReal> > + IkReal>> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -35479,7 +35477,7 @@ class IKSolver { std::vector< IkSingleDOFSolutionBase< - IkReal> > + IkReal>> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -35740,7 +35738,7 @@ class IKSolver { std::vector< IkSingleDOFSolutionBase< - IkReal> > + IkReal>> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -35989,7 +35987,7 @@ class IKSolver { std::vector< IkSingleDOFSolutionBase< - IkReal> > + IkReal>> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -36276,7 +36274,7 @@ class IKSolver { std::vector< IkSingleDOFSolutionBase< - IkReal> > + IkReal>> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -36520,8 +36518,7 @@ class IKSolver } { - std::vector< - IkSingleDOFSolutionBase > + std::vector> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -36707,7 +36704,7 @@ class IKSolver } { - std::vector > + std::vector> vinfos(7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; @@ -36862,8 +36859,8 @@ class IKSolver } { - std::vector > - vinfos(7); + std::vector> vinfos( + 7); vinfos[0].jointtype = 1; vinfos[0].foffset = j4; vinfos[0].indices[0] = _ij4[0]; diff --git a/tests/integration/test_NameManagement.cpp b/tests/integration/test_NameManagement.cpp index ff9b597461318..b72266fe9537b 100644 --- a/tests/integration/test_NameManagement.cpp +++ b/tests/integration/test_NameManagement.cpp @@ -193,7 +193,7 @@ TEST(NameManagement, Skeleton) //============================================================================== TEST(NameManagement, SetPattern) { - dart::common::NameManager > test_mgr("test", "name"); + dart::common::NameManager> test_mgr("test", "name"); std::shared_ptr entity0(new SimpleFrame(Frame::World(), "name")); std::shared_ptr entity1(new SimpleFrame(Frame::World(), "name")); @@ -228,7 +228,7 @@ TEST(NameManagement, SetPattern) //============================================================================== TEST(NameManagement, Regression554) { - dart::common::NameManager > test_mgr("test", "name"); + dart::common::NameManager> test_mgr("test", "name"); std::shared_ptr int0(new int(0)); std::shared_ptr int1(new int(1)); diff --git a/tests/unit/common/test_Uri.cpp b/tests/unit/common/test_Uri.cpp index 5efae41dc98b9..76af6b53a6e10 100644 --- a/tests/unit/common/test_Uri.cpp +++ b/tests/unit/common/test_Uri.cpp @@ -247,7 +247,7 @@ TEST(UriHelpers, getUri_InputIsPath_AppendsFileSchema) TEST(UriHelpers, getRelativeUri) { - std::vector > testPairs = { + std::vector> testPairs = { // RFC 3986, Section 5.4.1.: Normal Examples {"g:h", "g:h"}, {"g", "http://a/b/c/g"}, From eb6fa74218ce5cb53418189b6caf54d25852f67b Mon Sep 17 00:00:00 2001 From: Jeongseok Lee Date: Sat, 29 Jun 2024 18:39:52 -0700 Subject: [PATCH 18/41] [build] Remove DART_IN_CI (cherry picked from commit cf20b0e5f27f519beaaa0afaf281e035c75509fd) --- .github/workflows/publish_dartpy.yml | 6 ------ CMakeLists.txt | 1 - pyproject.toml | 1 - scripts/build.sh | 1 - setup.py | 4 ---- 5 files changed, 13 deletions(-) diff --git a/.github/workflows/publish_dartpy.yml b/.github/workflows/publish_dartpy.yml index 1db019cd8abd3..07bdf00b23bf8 100644 --- a/.github/workflows/publish_dartpy.yml +++ b/.github/workflows/publish_dartpy.yml @@ -127,9 +127,6 @@ jobs: if: ${{ matrix.os != 'windows-latest' && (matrix.release_only == false || github.ref == 'refs/heads/main') }} uses: pypa/cibuildwheel@v2.19.1 env: - # Common - DART_IN_CI: ON - # macOS MACOSX_DEPLOYMENT_TARGET: 14.0 @@ -140,9 +137,6 @@ jobs: if: ${{ matrix.os == 'windows-latest' && (matrix.release_only == false || github.ref == 'refs/heads/main') }} uses: pypa/cibuildwheel@v2.19.1 env: - # Common - DART_IN_CI: ON - # macOS MACOSX_DEPLOYMENT_TARGET: 14.0 diff --git a/CMakeLists.txt b/CMakeLists.txt index c743989eb2b7a..d4ba49eaa0717 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -99,7 +99,6 @@ dart_option(DART_FAST_DEBUG "Add -O1 option for DEBUG mode build" OFF) dart_option(DART_FORCE_COLORED_OUTPUT "Always produce ANSI-colored output (GNU/Clang only)." OFF) dart_option(DART_USE_SYSTEM_IMGUI "Use system ImGui" OFF) -dart_option(DART_IN_CI "Indicate building DART as part of CI" OFF) #=============================================================================== # Print intro diff --git a/pyproject.toml b/pyproject.toml index 3ee20925fb6dd..0c4477b105981 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -69,7 +69,6 @@ skip = [ [tool.cibuildwheel.linux] archs = ["x86_64"] -environment-pass = ["DART_IN_CI"] [tool.cibuildwheel.macos] archs = ["auto64"] # TODO: Add universal2 and arm64 diff --git a/scripts/build.sh b/scripts/build.sh index df11ff8dc6266..2d12b171b881e 100755 --- a/scripts/build.sh +++ b/scripts/build.sh @@ -190,7 +190,6 @@ cmake .. \ -DDART_VERBOSE=ON \ -DDART_TREAT_WARNINGS_AS_ERRORS=ON \ -DDART_CODECOV=$CODECOV \ - -DDART_IN_CI=$IN_CI \ -DDART_ENABLE_SIMD=$ENABLE_SIMD \ ${install_prefix_option} \ ${cmake_args} diff --git a/setup.py b/setup.py index e24332b0bd9c7..c7d64e264f8a7 100644 --- a/setup.py +++ b/setup.py @@ -164,10 +164,6 @@ def build_extension(self, ext: CMakeExtension) -> None: cmake_args += ["-DDART_USE_SYSTEM_IMGUI=OFF"] - cmake_args += [ - f"-DDART_IN_CI={os.environ.get('DART_IN_CI', 'OFF')}", - ] - build_temp = Path(self.build_temp) / ext.name if not build_temp.exists(): build_temp.mkdir(parents=True) From cf868659eb9e3460b693d1741a416e9dfd6a89c9 Mon Sep 17 00:00:00 2001 From: Jeongseok Lee Date: Sat, 29 Jun 2024 18:43:22 -0700 Subject: [PATCH 19/41] [pixi] Use system installed imgui (cherry picked from commit 17724f85a5dddfa3b2c5f1dc90b78295c7224f35) --- pixi.lock | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++ pixi.toml | 6 ++---- 2 files changed, 53 insertions(+), 4 deletions(-) diff --git a/pixi.lock b/pixi.lock index 07e158cdf1010..9bfc4b1574211 100644 --- a/pixi.lock +++ b/pixi.lock @@ -539,7 +539,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/freeglut-3.2.2-he0c23c2_3.conda - conda: https://conda.anaconda.org/conda-forge/win-64/freetype-2.12.1-hdaf720e_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/glfw-3.4-hcfcfb64_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/hdf5-1.14.3-nompi_h2b43c12_105.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/imgui-1.90.8-hecf2515_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/intel-openmp-2024.1.0-h57928b3_966.conda - conda: https://conda.anaconda.org/conda-forge/win-64/ipopt-3.14.16-ha3daec3_4.conda @@ -602,6 +604,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.12.4-h889d299_0_cpython.conda - conda: https://conda.anaconda.org/conda-forge/win-64/python_abi-3.12-4_cp312.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/sdl2-2.30.2-h63175ca_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.1.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/spdlog-1.12.0-h64d2f7d_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/svt-av1-1.4.1-h63175ca_0.conda @@ -2501,6 +2504,21 @@ packages: license: Zlib size: 113768 timestamp: 1708789054033 +- kind: conda + name: glfw + version: '3.4' + build: hcfcfb64_0 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/glfw-3.4-hcfcfb64_0.conda + sha256: f7759a2d1e473d36b39a65096c1b0660fe3574b7aa8fa330ef13626926292d13 + md5: 5d41478e933d70273686b267827d2ae6 + depends: + - ucrt >=10.0.20348.0 + - vc >=14.2,<15 + - vc14_runtime >=14.29.30139 + license: Zlib + size: 118348 + timestamp: 1708789270458 - kind: conda name: glfw version: '3.4' @@ -2801,6 +2819,24 @@ packages: license_family: MIT size: 626709 timestamp: 1717724405363 +- kind: conda + name: imgui + version: 1.90.8 + build: hecf2515_0 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/imgui-1.90.8-hecf2515_0.conda + sha256: b1f6b1886a966f02e456b14d949d118738509ba343c31a5f6d1f1addf963738b + md5: 3cfddbbb10ae792a183e73699b03cddc + depends: + - glfw >=3.4,<4.0a0 + - sdl2 >=2.30.2,<3.0a0 + - ucrt >=10.0.20348.0 + - vc >=14.2,<15 + - vc14_runtime >=14.29.30139 + license: MIT + license_family: MIT + size: 657726 + timestamp: 1717724662603 - kind: conda name: iniconfig version: 2.0.0 @@ -8014,6 +8050,21 @@ packages: license_family: MIT size: 184509 timestamp: 1693427593121 +- kind: conda + name: sdl2 + version: 2.30.2 + build: h63175ca_0 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/sdl2-2.30.2-h63175ca_0.conda + sha256: 2f8020bffb8fcaca01638c44fb845f223140baf04f8766ecca2eb8bc2f7443f0 + md5: 18017f8551ce74d2281f5684f16eb71f + depends: + - ucrt >=10.0.20348.0 + - vc >=14.2,<15 + - vc14_runtime >=14.29.30139 + license: Zlib + size: 2155390 + timestamp: 1712091452523 - kind: conda name: sdl2 version: 2.30.2 diff --git a/pixi.toml b/pixi.toml index 5d4e2d43c5f39..644ad78c1afae 100644 --- a/pixi.toml +++ b/pixi.toml @@ -26,6 +26,7 @@ console_bridge = ">=1.0.2,<1.1" eigen = ">=3.4.0,<3.5" fcl = ">=0.7.0,<0.8" fmt = ">=10.2.1,<10.3" +imgui = ">=1.90.8,<1.91" ipopt = ">=3.14.14,<3.15" libode = ">=0.16.2,<0.17" nlopt = ">=2.7.1,<2.8" @@ -116,7 +117,6 @@ clang-format-14 = ">=14.0.6,<14.1" [target.linux-64.dependencies] freeglut = ">=3.2.2,<3.3" -imgui = ">=1.90.4,<1.91" [target.linux-64.tasks] tracy = { cmd = "docker run --rm -d -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix:rw --net=host tracy-profiler" } @@ -129,7 +129,6 @@ tracy = { cmd = "docker run --rm -d -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/. clang-format-14 = ">=14.0.6,<14.1" [target.osx-64.dependencies] -imgui = ">=1.90.4,<1.91" [target.osx-64.tasks] @@ -141,7 +140,6 @@ imgui = ">=1.90.4,<1.91" clang-format-14 = ">=14.0.6,<14.1" [target.osx-arm64.dependencies] -imgui = ">=1.90.4,<1.91" [target.osx-arm64.tasks] @@ -153,7 +151,7 @@ imgui = ">=1.90.4,<1.91" freeglut = ">=3.2.2,<3.3" [target.win-64.tasks] -configure = { cmd = "cmake -S . -B build -G 'Visual Studio 17 2022' -DDART_VERBOSE=ON -DDART_MSVC_DEFAULT_OPTIONS=ON -DBUILD_SHARED_LIBS=OFF -DDART_USE_SYSTEM_IMGUI=OFF" } +configure = { cmd = "cmake -S . -B build -G 'Visual Studio 17 2022' -DDART_VERBOSE=ON -DDART_MSVC_DEFAULT_OPTIONS=ON -DBUILD_SHARED_LIBS=OFF -DDART_USE_SYSTEM_IMGUI=ON" } lint-py = { cmd = "black . --exclude '\\..*' && isort . --skip-glob '.*'", depends_on = [ "configure", ] } From 0a70b7f854f335eebabc272b714a5015a786fb32 Mon Sep 17 00:00:00 2001 From: Jeongseok Lee Date: Sat, 29 Jun 2024 18:57:58 -0700 Subject: [PATCH 20/41] [build] Fix Findimgui.cmake -- still not working since libimgui.so doesn't include backends defs (cherry picked from commit d12b7aa0e1c2738fbfe817f59bb0424d4161bd02) --- cmake/Findimgui.cmake | 26 +++++++++++++++++++++++--- 1 file changed, 23 insertions(+), 3 deletions(-) diff --git a/cmake/Findimgui.cmake b/cmake/Findimgui.cmake index ab187289624a3..d36334062c0cf 100644 --- a/cmake/Findimgui.cmake +++ b/cmake/Findimgui.cmake @@ -19,13 +19,33 @@ find_package(PkgConfig QUIET) # Check to see if pkgconfig is installed. pkg_check_modules(PC_imgui imgui QUIET) -# Include directories -find_path(imgui_INCLUDE_DIRS +# Find the path containing imgui.h +find_path(imgui_INCLUDE_DIR NAMES imgui.h HINTS ${PC_imgui_INCLUDEDIR} - PATHS "${CMAKE_INSTALL_PREFIX}/include" + PATHS + "${CMAKE_INSTALL_PREFIX}/include" + "${CMAKE_INSTALL_PREFIX}/include/imgui" ) +# Find the path containing imgui_impl_opengl2.h +find_path(imgui_backends_INCLUDE_DIR + NAMES imgui_impl_opengl2.h + HINTS + ${PC_imgui_INCLUDEDIR} + ${PC_imgui_INCLUDEDIR}/backends + PATHS + "${CMAKE_INSTALL_PREFIX}/include" + "${CMAKE_INSTALL_PREFIX}/include/imgui/backends" +) + +# Combine both paths into imgui_INCLUDE_DIRS +if (imgui_INCLUDE_DIR AND imgui_backends_INCLUDE_DIR) + set(imgui_INCLUDE_DIRS ${imgui_INCLUDE_DIR} ${imgui_backends_INCLUDE_DIR}) +else() + message(FATAL_ERROR "Could not find the required imgui headers") +endif() + # Library find_library(imgui_LIBRARIES NAMES imgui From 6ffb2e496ef05b2c949e3b2d08f84b17f2887dc1 Mon Sep 17 00:00:00 2001 From: Jeongseok Lee Date: Sat, 29 Jun 2024 18:19:15 -0700 Subject: [PATCH 21/41] [vcpkg] Update packages (cherry picked from commit a9da4761cfaf8987b41dcddd9b75a2d24444a2ba) --- .github/workflows/ci_windows.yml | 1 + .github/workflows/publish_dartpy.yml | 5 ++--- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci_windows.yml b/.github/workflows/ci_windows.yml index fbc2e43f7b149..12ab62604aa5c 100644 --- a/.github/workflows/ci_windows.yml +++ b/.github/workflows/ci_windows.yml @@ -47,6 +47,7 @@ jobs: bullet3 freeglut glfw3 + imgui nlopt opengl osg diff --git a/.github/workflows/publish_dartpy.yml b/.github/workflows/publish_dartpy.yml index 07bdf00b23bf8..7166058cf3e8c 100644 --- a/.github/workflows/publish_dartpy.yml +++ b/.github/workflows/publish_dartpy.yml @@ -99,24 +99,23 @@ jobs: if: ${{ matrix.os == 'windows-latest' && (matrix.release_only == false || github.ref == 'refs/heads/main') }} uses: johnwason/vcpkg-action@v6 with: + # TODO: Add ode and coin-or-ipopt pkgs: > assimp - ccd eigen3 fcl fmt spdlog bullet3 - coin-or-ipopt freeglut glfw3 imgui nlopt - ode opengl osg pagmo2 tinyxml2 + tracy urdfdom triplet: x64-windows revision: "2024.06.15" From a55b701751ba212a27e51ead31794de0564d3e41 Mon Sep 17 00:00:00 2001 From: Jeongseok Lee Date: Sat, 29 Jun 2024 18:55:53 -0700 Subject: [PATCH 22/41] [vcpkg] Use system installed imgui (cherry picked from commit c857f6cd9bc8d404e082f172fad2543a4d32b1fb) --- .github/workflows/ci_windows.yml | 4 ++-- .github/workflows/publish_dartpy.yml | 2 +- setup.py | 5 ++++- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci_windows.yml b/.github/workflows/ci_windows.yml index 12ab62604aa5c..6c8eb405ed349 100644 --- a/.github/workflows/ci_windows.yml +++ b/.github/workflows/ci_windows.yml @@ -47,7 +47,7 @@ jobs: bullet3 freeglut glfw3 - imgui + imgui[opengl2-binding] nlopt opengl osg @@ -79,7 +79,7 @@ jobs: -DDART_MSVC_DEFAULT_OPTIONS=ON ^ -DDART_VERBOSE=ON ^ -DBUILD_SHARED_LIBS=${{ matrix.build_shared_libs }} ^ - -DDART_USE_SYSTEM_IMGUI=OFF ^ + -DDART_USE_SYSTEM_IMGUI=ON ^ || exit /b cmake ^ --build build ^ diff --git a/.github/workflows/publish_dartpy.yml b/.github/workflows/publish_dartpy.yml index 7166058cf3e8c..f7f3a14455dcf 100644 --- a/.github/workflows/publish_dartpy.yml +++ b/.github/workflows/publish_dartpy.yml @@ -109,7 +109,7 @@ jobs: bullet3 freeglut glfw3 - imgui + imgui[opengl2-binding] nlopt opengl osg diff --git a/setup.py b/setup.py index c7d64e264f8a7..d9a9f8c49eced 100644 --- a/setup.py +++ b/setup.py @@ -162,7 +162,10 @@ def build_extension(self, ext: CMakeExtension) -> None: # CMake 3.12+ only. build_args += [f"-j{self.parallel}"] - cmake_args += ["-DDART_USE_SYSTEM_IMGUI=OFF"] + if sys.platform.startswith("msvc"): + cmake_args += ["-DDART_USE_SYSTEM_IMGUI=ON"] + else: + cmake_args += ["-DDART_USE_SYSTEM_IMGUI=OFF"] build_temp = Path(self.build_temp) / ext.name if not build_temp.exists(): From 634d15d3cc7e76c4980f04b3640ef4953bbe1a37 Mon Sep 17 00:00:00 2001 From: Jeongseok Lee Date: Sat, 29 Jun 2024 20:53:26 -0700 Subject: [PATCH 23/41] [build] Use Ninja on Unix (cherry picked from commit 7918a9cca91d3feb2c1c58f76ee97cedf42690fb) --- Brewfile | 1 + docker/dev/v6.14/Dockerfile.ubuntu.jammy | 1 + docker/dev/v6.14/Dockerfile.ubuntu.noble | 1 + docker/dev/v6.14/Dockerfile.ubuntu.oracular | 1 + scripts/build.sh | 3 ++- 5 files changed, 6 insertions(+), 1 deletion(-) diff --git a/Brewfile b/Brewfile index b1351f87f8339..ae21487fae893 100644 --- a/Brewfile +++ b/Brewfile @@ -1,5 +1,6 @@ # Build dependencies brew 'cmake' +brew 'ninja' brew 'pkg-config' brew 'tracy' diff --git a/docker/dev/v6.14/Dockerfile.ubuntu.jammy b/docker/dev/v6.14/Dockerfile.ubuntu.jammy index e88e5fa09cfbd..43e1aefdeea3b 100644 --- a/docker/dev/v6.14/Dockerfile.ubuntu.jammy +++ b/docker/dev/v6.14/Dockerfile.ubuntu.jammy @@ -22,6 +22,7 @@ RUN apt-get install -y --no-install-recommends \ git \ lcov \ lsb-release \ + ninja-build \ pkg-config \ software-properties-common \ valgrind diff --git a/docker/dev/v6.14/Dockerfile.ubuntu.noble b/docker/dev/v6.14/Dockerfile.ubuntu.noble index 8882bfd8b3886..0d9072e10ba12 100644 --- a/docker/dev/v6.14/Dockerfile.ubuntu.noble +++ b/docker/dev/v6.14/Dockerfile.ubuntu.noble @@ -22,6 +22,7 @@ RUN apt-get install -y --no-install-recommends \ git \ lcov \ lsb-release \ + ninja-build \ pkg-config \ software-properties-common \ valgrind diff --git a/docker/dev/v6.14/Dockerfile.ubuntu.oracular b/docker/dev/v6.14/Dockerfile.ubuntu.oracular index 4c47e6eabe778..67aafa23c2ea7 100644 --- a/docker/dev/v6.14/Dockerfile.ubuntu.oracular +++ b/docker/dev/v6.14/Dockerfile.ubuntu.oracular @@ -22,6 +22,7 @@ RUN apt-get install -y --no-install-recommends \ git \ lcov \ lsb-release \ + ninja-build \ pkg-config \ software-properties-common \ valgrind diff --git a/scripts/build.sh b/scripts/build.sh index 2d12b171b881e..69aefb22688d9 100755 --- a/scripts/build.sh +++ b/scripts/build.sh @@ -183,9 +183,10 @@ if [ -n "$DART_USE_SYSTEM_IMGUI" ]; then cmake_args+=" -DDART_USE_SYSTEM_IMGUI=$DART_USE_SYSTEM_IMGUI" fi -cmake .. \ +cmake \ -S $source_dir \ -B $build_dir \ + -G Ninja \ -DCMAKE_BUILD_TYPE=$BUILD_TYPE \ -DDART_VERBOSE=ON \ -DDART_TREAT_WARNINGS_AS_ERRORS=ON \ From a0a1784246572022c0fa8647651a0e7521b7035e Mon Sep 17 00:00:00 2001 From: Jeongseok Lee Date: Sun, 30 Jun 2024 00:11:40 -0700 Subject: [PATCH 24/41] [pixi] Rename example- to ex- --- pixi.toml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pixi.toml b/pixi.toml index 644ad78c1afae..7886a19e7225b 100644 --- a/pixi.toml +++ b/pixi.toml @@ -85,13 +85,13 @@ test-all = { cmd = "cmake --build build -j --target ALL", depends_on = [ "configure", ] } -example-hello-world = { cmd = "cmake --build build --target hello_world --parallel && ./build/bin/hello_world", depends_on = [ +ex-atlas-puppet = { cmd = "cmake --build build --target atlas_puppet --parallel && ./build/bin/atlas_puppet", depends_on = [ "configure", ] } -example-atlas-puppet = { cmd = "cmake --build build --target atlas_puppet --parallel && ./build/bin/atlas_puppet", depends_on = [ +ex-atlas-simbicon = { cmd = "cmake --build build --target atlas_simbicon --parallel && ./build/bin/atlas_simbicon", depends_on = [ "configure", ] } -example-atlas-simbicon = { cmd = "cmake --build build --target atlas_simbicon --parallel && ./build/bin/atlas_simbicon", depends_on = [ +ex-hello-world = { cmd = "cmake --build build --target hello_world --parallel && ./build/bin/hello_world", depends_on = [ "configure", ] } From 34f62f6b21ba742879d95ea019d9aadf7a4c323f Mon Sep 17 00:00:00 2001 From: Jeongseok Lee Date: Sun, 30 Jun 2024 00:28:24 -0700 Subject: [PATCH 25/41] [pixi] Run lock update CI job on every Sat --- .github/workflows/update_lockfiles.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/update_lockfiles.yml b/.github/workflows/update_lockfiles.yml index d5dac2ed806ad..25b55e4e6334f 100644 --- a/.github/workflows/update_lockfiles.yml +++ b/.github/workflows/update_lockfiles.yml @@ -7,7 +7,7 @@ permissions: on: workflow_dispatch: schedule: - - cron: 0 5 1 * * # Runs at 05:00, on day 1 of the month + - cron: 0 5 * * SAT # Runs at 05:00, on every Staturday jobs: pixi-update: From 42ad24d3a29dbee2f408f0dce27163f79e674f8f Mon Sep 17 00:00:00 2001 From: Jeongseok Lee Date: Sun, 30 Jun 2024 00:33:47 -0700 Subject: [PATCH 26/41] [pixi] Add tutorial tasks (cherry picked from commit b27d020f01ae37fbe63478180d0ae85efc2551b7) --- pixi.toml | 62 ++++++++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 57 insertions(+), 5 deletions(-) diff --git a/pixi.toml b/pixi.toml index 7886a19e7225b..39b34fcd67230 100644 --- a/pixi.toml +++ b/pixi.toml @@ -7,16 +7,16 @@ channels = ["conda-forge"] platforms = ["linux-64", "osx-64", "osx-arm64", "win-64"] [build-dependencies] +black = ">=24.2.0,<24.3" cmake = "3.22.*" -ninja = ">=1.11.1,<1.12" -pkg-config = ">=0.29.2,<0.30" -pytest = ">=8.1.1,<8.2" doxygen = ">=1.10.0,<1.11" -setuptools = ">=69.1.1,<69.2" -black = ">=24.2.0,<24.3" isort = ">=5.13.2,<5.14" +ninja = ">=1.11.1,<1.12" pip = ">=24.0,<25" pipx = ">=1.4.3,<1.5" +pkg-config = ">=0.29.2,<0.30" +pytest = ">=8.1.1,<8.2" +setuptools = ">=69.1.1,<69.2" [dependencies] assimp = ">=5.3.1,<5.4" @@ -105,6 +105,31 @@ bm-kinematics = { cmd = "cmake --build build --target BM_INTEGRATION_kinematics "configure", ] } +tu-biped = { cmd = "cmake --build build --target tutorial_biped --parallel && ./build/bin/tutorial_biped", depends_on = [ + "configure", +] } +tu-biped-fi = { cmd = "cmake --build build --target tutorial_biped_finished --parallel && ./build/bin/tutorial_biped_finished", depends_on = [ + "configure", +] } +tu-collisions = { cmd = "cmake --build build --target tutorial_collisions --parallel && ./build/bin/tutorial_collisions", depends_on = [ + "configure", +] } +tu-collisions-fi = { cmd = "cmake --build build --target tutorial_collisions_finished --parallel && ./build/bin/tutorial_collisions_finished", depends_on = [ + "configure", +] } +tu-dominoes = { cmd = "cmake --build build --target tutorial_dominoes --parallel && ./build/bin/tutorial_dominoes", depends_on = [ + "configure", +] } +tu-dominoes-fi = { cmd = "cmake --build build --target tutorial_dominoes_finished --parallel && ./build/bin/tutorial_dominoes_finished", depends_on = [ + "configure", +] } +tu-multi-pendulum = { cmd = "cmake --build build --target tutorial_multi_pendulum --parallel && ./build/bin/tutorial_multi_pendulum", depends_on = [ + "configure", +] } +tu-multi-pendulum-fi = { cmd = "cmake --build build --target tutorial_multi_pendulum_finished --parallel && ./build/bin/tutorial_multi_pendulum_finished", depends_on = [ + "configure", +] } + create-deps-dir = { cmd = "mkdir -p .deps" } remove-deps-dir = { cmd = "rm -rf .deps" } @@ -160,6 +185,7 @@ check-lint-py = { cmd = "black . --check --exclude '\\..*' && isort . --check -- "configure", ] } check-lint = { depends_on = ["check-lint-py"] } + build = { cmd = "cmake --build build --config Release -j", depends_on = [ "configure", ] } @@ -169,6 +195,7 @@ build-tests = { cmd = "cmake --build build --config Release -j --target tests", build-dartpy = { cmd = "cmake --build build -j --target dartpy", depends_on = [ "configure", ] } + test = { cmd = "ctest --test-dir build --build-config Release --output-on-failure", depends_on = [ "build-tests", ] } @@ -178,3 +205,28 @@ test-dartpy = { cmd = "cmake --build build --config Release -j --target pytest", test-all = { cmd = "cmake --build build --config Release -j --target ALL", depends_on = [ "configure", ] } + +tu-biped = { cmd = "cmake --build build --config Release --target tutorial_biped --parallel && build/Release/tutorial_biped.exe", depends_on = [ + "configure", +] } +tu-biped-fi = { cmd = "cmake --build build --config Release --target tutorial_biped_finished --parallel && build/Release/tutorial_biped_finished.exe", depends_on = [ + "configure", +] } +tu-collisions = { cmd = "cmake --build build --config Release --target tutorial_collisions --parallel && build/Release/tutorial_collisions.exe", depends_on = [ + "configure", +] } +tu-collisions-fi = { cmd = "cmake --build build --config Release --target tutorial_collisions_finished --parallel && build/Release/tutorial_collisions_finished.exe", depends_on = [ + "configure", +] } +tu-dominoes = { cmd = "cmake --build build --config Release --target tutorial_dominoes --parallel && build/Release/tutorial_dominoes.exe", depends_on = [ + "configure", +] } +tu-dominoes-fi = { cmd = "cmake --build build --config Release --target tutorial_dominoes_finished --parallel && build/Release/tutorial_dominoes_finished.exe", depends_on = [ + "configure", +] } +tu-multi-pendulum = { cmd = "cmake --build build --config Release --target tutorial_multi_pendulum --parallel && build/Release/tutorial_multi_pendulum.exe", depends_on = [ + "configure", +] } +tu-multi-pendulum-fi = { cmd = "cmake --build build --config Release --target tutorial_multi_pendulum_finished --parallel && build/Release/tutorial_multi_pendulum_finished.exe", depends_on = [ + "configure", +] } From 938cd1af8b108675dd3a542fb089112e31a8731f Mon Sep 17 00:00:00 2001 From: Jeongseok Lee Date: Mon, 1 Jul 2024 16:12:51 -0700 Subject: [PATCH 27/41] [docker] Update dep versions for dartpy build (cherry picked from commit b09da38c29ecf41114dcbc883afae861cd91a756) --- .../dev/v6.14/Dockerfile.manylinux_2_28_aarch64-min | 12 ++++++------ .../dev/v6.14/Dockerfile.manylinux_2_28_ppc64le-min | 12 ++++++------ docker/dev/v6.14/Dockerfile.manylinux_2_28_s390x-min | 12 ++++++------ docker/dev/v6.14/Dockerfile.manylinux_2_28_x86_64 | 12 ++++++------ 4 files changed, 24 insertions(+), 24 deletions(-) diff --git a/docker/dev/v6.14/Dockerfile.manylinux_2_28_aarch64-min b/docker/dev/v6.14/Dockerfile.manylinux_2_28_aarch64-min index 467a0247d9da9..204faedc8c6e1 100644 --- a/docker/dev/v6.14/Dockerfile.manylinux_2_28_aarch64-min +++ b/docker/dev/v6.14/Dockerfile.manylinux_2_28_aarch64-min @@ -14,7 +14,7 @@ RUN yum install -y \ python3-devel # fmt -RUN git clone https://github.com/fmtlib/fmt.git -b 10.2.1 \ +RUN git clone https://github.com/fmtlib/fmt.git -b '11.0.0' \ && mkdir -p fmt/build \ && cmake fmt -B fmt/build \ -DCMAKE_BUILD_TYPE=Release \ @@ -25,7 +25,7 @@ RUN git clone https://github.com/fmtlib/fmt.git -b 10.2.1 \ && rm -rf fmt # assimp -RUN git clone https://github.com/assimp/assimp.git -b 'v5.3.1' \ +RUN git clone https://github.com/assimp/assimp.git -b 'v5.4.1' \ && mkdir -p assimp/build \ && cmake assimp -B assimp/build -DCMAKE_BUILD_TYPE=Release -DASSIMP_BUILD_TESTS=OFF -DASSIMP_WARNINGS_AS_ERRORS=OFF \ && cmake --build assimp/build --target install -j${NUM_CORES} \ @@ -60,7 +60,7 @@ RUN git clone https://github.com/flexible-collision-library/fcl.git -b '0.7.0' \ && rm -rf fcl # Bullet -RUN git clone https://github.com/bulletphysics/bullet3.git -b 3.25 \ +RUN git clone https://github.com/bulletphysics/bullet3.git -b '3.25' \ && mkdir -p bullet3/build \ && cmake bullet3 -B bullet3/build -DCMAKE_BUILD_TYPE=Release -DBUILD_UNIT_TESTS=OFF -DBUILD_CPU_DEMOS=OFF -DBUILD_BULLET2_DEMOS=OFF \ && cmake --build bullet3/build --target install -j${NUM_CORES} \ @@ -74,21 +74,21 @@ RUN git clone https://github.com/leethomason/tinyxml2.git -b '10.0.0' \ && rm -rf tinyxml2 # console_bridge -RUN git clone https://github.com/ros/console_bridge.git -b 1.0.2 \ +RUN git clone https://github.com/ros/console_bridge.git -b '1.0.2' \ && mkdir -p console_bridge/build \ && cmake console_bridge -B console_bridge/build -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTING=OFF \ && cmake --build console_bridge/build --target install -j${NUM_CORES} \ && rm -rf console_bridge # urdfdom_headers -RUN git clone https://github.com/ros/urdfdom_headers.git -b 1.1.1\ +RUN git clone https://github.com/ros/urdfdom_headers.git -b '1.1.1' \ && mkdir -p urdfdom_headers/build \ && cmake urdfdom_headers -B urdfdom_headers/build -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTING=OFF \ && cmake --build urdfdom_headers/build --target install -j${NUM_CORES} \ && rm -rf urdfdom_headers # urdfdom -RUN git clone https://github.com/ros/urdfdom.git -b 4.0.0 \ +RUN git clone https://github.com/ros/urdfdom.git -b '4.0.0' \ && mkdir -p urdfdom/build \ && cmake urdfdom -B urdfdom/build -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTING=OFF \ && cmake --build urdfdom/build --target install -j${NUM_CORES} \ diff --git a/docker/dev/v6.14/Dockerfile.manylinux_2_28_ppc64le-min b/docker/dev/v6.14/Dockerfile.manylinux_2_28_ppc64le-min index 4ac8a701b7842..5508a55c958b9 100644 --- a/docker/dev/v6.14/Dockerfile.manylinux_2_28_ppc64le-min +++ b/docker/dev/v6.14/Dockerfile.manylinux_2_28_ppc64le-min @@ -11,7 +11,7 @@ ARG NUM_CORES=14 RUN yum install -y glew-devel boost-devel python3-devel # fmt -RUN git clone https://github.com/fmtlib/fmt.git -b 10.2.1 \ +RUN git clone https://github.com/fmtlib/fmt.git -b '11.0.0' \ && mkdir -p fmt/build \ && cmake fmt -B fmt/build \ -DCMAKE_BUILD_TYPE=Release \ @@ -22,7 +22,7 @@ RUN git clone https://github.com/fmtlib/fmt.git -b 10.2.1 \ && rm -rf fmt # assimp -RUN git clone https://github.com/assimp/assimp.git -b 'v5.3.1' \ +RUN git clone https://github.com/assimp/assimp.git -b 'v5.4.1' \ && mkdir -p assimp/build \ && cmake assimp -B assimp/build -DCMAKE_BUILD_TYPE=Release -DASSIMP_BUILD_TESTS=OFF -DASSIMP_WARNINGS_AS_ERRORS=OFF \ && cmake --build assimp/build --target install -j${NUM_CORES} \ @@ -57,7 +57,7 @@ RUN git clone https://github.com/flexible-collision-library/fcl.git -b '0.7.0' \ && rm -rf fcl # Bullet -RUN git clone https://github.com/bulletphysics/bullet3.git -b 3.25 \ +RUN git clone https://github.com/bulletphysics/bullet3.git -b '3.25' \ && mkdir -p bullet3/build \ && cmake bullet3 -B bullet3/build -DCMAKE_BUILD_TYPE=Release -DBUILD_UNIT_TESTS=OFF -DBUILD_CPU_DEMOS=OFF -DBUILD_BULLET2_DEMOS=OFF \ && cmake --build bullet3/build --target install -j${NUM_CORES} \ @@ -71,21 +71,21 @@ RUN git clone https://github.com/leethomason/tinyxml2.git -b '10.0.0' \ && rm -rf tinyxml2 # console_bridge -RUN git clone https://github.com/ros/console_bridge.git -b 1.0.2 \ +RUN git clone https://github.com/ros/console_bridge.git -b '1.0.2' \ && mkdir -p console_bridge/build \ && cmake console_bridge -B console_bridge/build -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTING=OFF \ && cmake --build console_bridge/build --target install -j${NUM_CORES} \ && rm -rf console_bridge # urdfdom_headers -RUN git clone https://github.com/ros/urdfdom_headers.git -b 1.1.1\ +RUN git clone https://github.com/ros/urdfdom_headers.git -b '1.1.1' \ && mkdir -p urdfdom_headers/build \ && cmake urdfdom_headers -B urdfdom_headers/build -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTING=OFF \ && cmake --build urdfdom_headers/build --target install -j${NUM_CORES} \ && rm -rf urdfdom_headers # urdfdom -RUN git clone https://github.com/ros/urdfdom.git -b 4.0.0 \ +RUN git clone https://github.com/ros/urdfdom.git -b '4.0.0' \ && mkdir -p urdfdom/build \ && cmake urdfdom -B urdfdom/build -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTING=OFF \ && cmake --build urdfdom/build --target install -j${NUM_CORES} \ diff --git a/docker/dev/v6.14/Dockerfile.manylinux_2_28_s390x-min b/docker/dev/v6.14/Dockerfile.manylinux_2_28_s390x-min index ac5c7dc673c73..70e4e526589fc 100644 --- a/docker/dev/v6.14/Dockerfile.manylinux_2_28_s390x-min +++ b/docker/dev/v6.14/Dockerfile.manylinux_2_28_s390x-min @@ -11,7 +11,7 @@ ARG NUM_CORES=14 RUN yum install -y glew-devel boost-devel python3-devel # fmt -RUN git clone https://github.com/fmtlib/fmt.git -b 10.2.1 \ +RUN git clone https://github.com/fmtlib/fmt.git -b '11.0.0' \ && mkdir -p fmt/build \ && cmake fmt -B fmt/build \ -DCMAKE_BUILD_TYPE=Release \ @@ -22,7 +22,7 @@ RUN git clone https://github.com/fmtlib/fmt.git -b 10.2.1 \ && rm -rf fmt # assimp -RUN git clone https://github.com/assimp/assimp.git -b 'v5.3.1' \ +RUN git clone https://github.com/assimp/assimp.git -b 'v5.4.1' \ && mkdir -p assimp/build \ && cmake assimp -B assimp/build -DCMAKE_BUILD_TYPE=Release -DASSIMP_BUILD_TESTS=OFF -DASSIMP_WARNINGS_AS_ERRORS=OFF \ && cmake --build assimp/build --target install -j${NUM_CORES} \ @@ -57,7 +57,7 @@ RUN git clone https://github.com/flexible-collision-library/fcl.git -b '0.7.0' \ && rm -rf fcl # Bullet -RUN git clone https://github.com/bulletphysics/bullet3.git -b 3.25 \ +RUN git clone https://github.com/bulletphysics/bullet3.git -b '3.25' \ && mkdir -p bullet3/build \ && cmake bullet3 -B bullet3/build -DCMAKE_BUILD_TYPE=Release -DBUILD_UNIT_TESTS=OFF -DBUILD_CPU_DEMOS=OFF -DBUILD_BULLET2_DEMOS=OFF \ && cmake --build bullet3/build --target install -j${NUM_CORES} \ @@ -71,21 +71,21 @@ RUN git clone https://github.com/leethomason/tinyxml2.git -b '10.0.0' \ && rm -rf tinyxml2 # console_bridge -RUN git clone https://github.com/ros/console_bridge.git -b 1.0.2 \ +RUN git clone https://github.com/ros/console_bridge.git -b '1.0.2' \ && mkdir -p console_bridge/build \ && cmake console_bridge -B console_bridge/build -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTING=OFF \ && cmake --build console_bridge/build --target install -j${NUM_CORES} \ && rm -rf console_bridge # urdfdom_headers -RUN git clone https://github.com/ros/urdfdom_headers.git -b 1.1.1\ +RUN git clone https://github.com/ros/urdfdom_headers.git -b '1.1.1' \ && mkdir -p urdfdom_headers/build \ && cmake urdfdom_headers -B urdfdom_headers/build -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTING=OFF \ && cmake --build urdfdom_headers/build --target install -j${NUM_CORES} \ && rm -rf urdfdom_headers # urdfdom -RUN git clone https://github.com/ros/urdfdom.git -b 4.0.0 \ +RUN git clone https://github.com/ros/urdfdom.git -b '4.0.0' \ && mkdir -p urdfdom/build \ && cmake urdfdom -B urdfdom/build -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTING=OFF \ && cmake --build urdfdom/build --target install -j${NUM_CORES} \ diff --git a/docker/dev/v6.14/Dockerfile.manylinux_2_28_x86_64 b/docker/dev/v6.14/Dockerfile.manylinux_2_28_x86_64 index c586f27f1c6af..d989d2c1745c2 100644 --- a/docker/dev/v6.14/Dockerfile.manylinux_2_28_x86_64 +++ b/docker/dev/v6.14/Dockerfile.manylinux_2_28_x86_64 @@ -15,7 +15,7 @@ RUN yum install -y \ python3-devel # fmt -RUN git clone https://github.com/fmtlib/fmt.git -b 10.2.1 \ +RUN git clone https://github.com/fmtlib/fmt.git -b '11.0.0' \ && mkdir -p fmt/build \ && cmake fmt -B fmt/build \ -DCMAKE_BUILD_TYPE=Release \ @@ -26,7 +26,7 @@ RUN git clone https://github.com/fmtlib/fmt.git -b 10.2.1 \ && rm -rf fmt # assimp -RUN git clone https://github.com/assimp/assimp.git -b 'v5.3.1' \ +RUN git clone https://github.com/assimp/assimp.git -b 'v5.4.1' \ && mkdir -p assimp/build \ && cmake assimp -B assimp/build -DCMAKE_BUILD_TYPE=Release -DASSIMP_BUILD_TESTS=OFF -DASSIMP_WARNINGS_AS_ERRORS=OFF \ && cmake --build assimp/build --target install -j${NUM_CORES} \ @@ -68,28 +68,28 @@ RUN git clone https://github.com/leethomason/tinyxml2.git -b '10.0.0' \ && rm -rf tinyxml2 # console_bridge -RUN git clone https://github.com/ros/console_bridge.git -b 1.0.2 \ +RUN git clone https://github.com/ros/console_bridge.git -b '1.0.2' \ && mkdir -p console_bridge/build \ && cmake console_bridge -B console_bridge/build -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTING=OFF \ && cmake --build console_bridge/build --target install -j${NUM_CORES} \ && rm -rf console_bridge # urdfdom_headers -RUN git clone https://github.com/ros/urdfdom_headers.git -b 1.1.1\ +RUN git clone https://github.com/ros/urdfdom_headers.git -b '1.1.1' \ && mkdir -p urdfdom_headers/build \ && cmake urdfdom_headers -B urdfdom_headers/build -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTING=OFF \ && cmake --build urdfdom_headers/build --target install -j${NUM_CORES} \ && rm -rf urdfdom_headers # urdfdom -RUN git clone https://github.com/ros/urdfdom.git -b 4.0.0 \ +RUN git clone https://github.com/ros/urdfdom.git -b '4.0.0' \ && mkdir -p urdfdom/build \ && cmake urdfdom -B urdfdom/build -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTING=OFF \ && cmake --build urdfdom/build --target install -j${NUM_CORES} \ && rm -rf urdfdom # Bullet -RUN git clone https://github.com/bulletphysics/bullet3.git -b 3.25 \ +RUN git clone https://github.com/bulletphysics/bullet3.git -b '3.25' \ && mkdir -p bullet3/build \ && cmake bullet3 \ -B bullet3/build \ From 433de99ceb9064c90dc06533289b1bf3b379dd1f Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 5 Jul 2024 22:26:05 -0700 Subject: [PATCH 28/41] Update pixi lockfile (#1828) Co-authored-by: jslee02 <4038467+jslee02@users.noreply.github.com> --- pixi.lock | 848 ++++++++++++++++++++++++------------------------------ 1 file changed, 369 insertions(+), 479 deletions(-) diff --git a/pixi.lock b/pixi.lock index 9bfc4b1574211..a855f9b006540 100644 --- a/pixi.lock +++ b/pixi.lock @@ -17,7 +17,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/bullet-cpp-3.25-hfb8ada1_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hd590300_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.28.1-hd590300_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2024.6.2-hbcca054_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2024.7.4-hbcca054_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/clang-format-14-14.0.6-default_h7634d5b_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-unix_pyh707e725_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/cmake-3.22.3-h5432695_0.tar.bz2 @@ -49,7 +49,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/gnutls-3.7.9-hb077bed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/hdf5-1.14.3-nompi_hdf9ad27_105.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/icu-73.2-h59595ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/imgui-1.90.8-hc3331dd_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/imgui-1.90.9-hf17a319_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ipopt-3.14.16-h3696c94_4.conda - conda: https://conda.anaconda.org/conda-forge/noarch/isort-5.13.2-pyhd8ed1ab_0.conda @@ -71,22 +71,22 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.9.0-22_linux64_openblas.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libccd-double-2.1-h59595ed_3.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp14-14.0.6-default_h7634d5b_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.8.0-hca28451_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.8.0-hca28451_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.20-hd590300_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libdrm-2.4.121-h4ab18f5_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libdrm-2.4.122-h4ab18f5_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20191231-he28a2e2_2.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-hd590300_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.6.2-h59595ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.4.2-h7f98852_5.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libflac-1.4.3-h59595ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-13.2.0-h77fa898_13.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-14.1.0-h77fa898_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcrypt-1.11.0-h4ab18f5_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgettextpo-0.22.5-h59595ed_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgettextpo-devel-0.22.5-h59595ed_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-13.2.0-h69a702a_13.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-13.2.0-h3d2ce59_13.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-14.1.0-h69a702a_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-14.1.0-hc5f4f2c_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libglib-2.80.2-hf974151_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-13.2.0-h77fa898_13.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-14.1.0-h77fa898_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgpg-error-1.50-h4f305b6_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libhwloc-2.10.0-default_h5622ce7_1001.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.17-hd590300_2.conda @@ -107,7 +107,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libspral-2024.05.08-h1b93dcb_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.46.0-hde9e2c9_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libssh2-1.11.0-h0841786_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-13.2.0-hc0a3c3a_13.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-14.1.0-hc0a3c3a_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libsystemd0-255-h3516f8a_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libtasn1-4.19.0-h166bdaf_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.6.0-h1dd3fc0_3.conda @@ -157,7 +157,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/python_abi-3.12-4_cp312.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8228510_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/rhash-1.4.3-hd590300_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/sdl2-2.30.2-hdbcbe63_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/sdl2-2.30.5-hef7aa77_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.1.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/spdlog-1.12.0-hd2e6256_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/svt-av1-1.4.1-hcb278e6_0.conda @@ -210,7 +210,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/bullet-cpp-3.25-h28a66ae_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/bzip2-1.0.8-h10d778d_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.28.1-h10d778d_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/ca-certificates-2024.6.2-h8857fd0_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ca-certificates-2024.7.4-h8857fd0_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/clang-format-14-14.0.6-default_hdb78580_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-unix_pyh707e725_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/cmake-3.22.3-h35a7dd9_0.tar.bz2 @@ -240,7 +240,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/gnutls-3.7.9-h1951705_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/hdf5-1.14.3-nompi_h687a608_105.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/icu-73.2-hf5e326d_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/imgui-1.90.8-hb044264_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/imgui-1.90.9-hb044264_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/ipopt-3.14.16-h8b46a37_4.conda - conda: https://conda.anaconda.org/conda-forge/noarch/isort-5.13.2-pyhd8ed1ab_0.conda @@ -259,8 +259,8 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/libcblas-3.9.0-22_osx64_openblas.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libccd-double-2.1-he965462_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libclang-cpp14-14.0.6-default_hdb78580_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.8.0-hf9fcc65_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-17.0.6-h88467a6_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.8.0-hf9fcc65_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-17.0.6-heb59cac_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libdeflate-1.20-h49d49c5_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libedit-3.1.20191231-h0678c8f_2.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libev-4.33-h10d778d_2.conda @@ -270,7 +270,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/libgettextpo-devel-0.22.5-h5ff76d1_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgfortran-5.0.0-13_2_0_h97931a8_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgfortran5-13.2.0-h2873a65_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libhwloc-2.10.0-default_h456cccd_1001.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libhwloc-2.11.0-default_h456cccd_1000.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libiconv-1.17-hd75f5a5_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libidn2-2.3.7-h10d778d_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libintl-0.22.5-h5ff76d1_2.conda @@ -326,12 +326,12 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/python_abi-3.12-4_cp312.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/readline-8.2-h9e318b2_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/rhash-1.4.3-h0dc2134_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/sdl2-2.30.2-h73e2aa4_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/sdl2-2.30.5-hf036a51_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.1.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/spdlog-1.12.0-h8dd852c_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/svt-av1-1.4.1-hf0c8a7f_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/tbb-2021.12.0-h3c5361c_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/tbb-devel-2021.12.0-h7393e1e_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/tbb-2021.12.0-h3c5361c_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/tbb-devel-2021.12.0-h222663f_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/tinyxml2-10.0.0-h73e2aa4_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-h1abcd95_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 @@ -363,7 +363,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bullet-cpp-3.25-py312h9e53831_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-h93a5062_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.28.1-h93a5062_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ca-certificates-2024.6.2-hf0a4a13_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ca-certificates-2024.7.4-hf0a4a13_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/clang-format-14-14.0.6-default_h5dc8d65_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-unix_pyh707e725_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cmake-3.22.3-he7c8c24_0.tar.bz2 @@ -393,7 +393,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gnutls-3.7.9-hd26332c_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/hdf5-1.14.3-nompi_hec07895_105.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-73.2-hc8870d7_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/imgui-1.90.8-hcde34a3_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/imgui-1.90.9-hcde34a3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ipopt-3.14.16-h387674d_4.conda - conda: https://conda.anaconda.org/conda-forge/noarch/isort-5.13.2-pyhd8ed1ab_0.conda @@ -412,8 +412,8 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcblas-3.9.0-22_osxarm64_openblas.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libccd-double-2.1-h9a09cb3_2.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang-cpp14-14.0.6-default_h5dc8d65_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.8.0-h7b6f9a7_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-17.0.6-h5f092b4_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.8.0-h7b6f9a7_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-17.0.6-h0812c0d_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libdeflate-1.20-h93a5062_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libedit-3.1.20191231-hc8eb9b7_2.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libev-4.33-h93a5062_2.conda @@ -424,7 +424,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgfortran-5.0.0-13_2_0_hd922786_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgfortran5-13.2.0-hf226fd6_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libglib-2.80.2-h535f939_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libhwloc-2.10.0-default_h7685b71_1001.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libhwloc-2.11.0-default_h7685b71_1000.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libiconv-1.17-h0d3ecfb_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libidn2-2.3.7-h93a5062_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libintl-0.22.5-h8fbad5d_2.conda @@ -481,12 +481,12 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python_abi-3.12-4_cp312.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/readline-8.2-h92ec313_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/rhash-1.4.3-hb547adb_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sdl2-2.30.2-hebf3989_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sdl2-2.30.5-h00cdb27_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.1.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/spdlog-1.12.0-he64bfa9_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/svt-av1-1.4.1-h7ea286d_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tbb-2021.12.0-h420ef59_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tbb-devel-2021.12.0-h94f16c5_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tbb-2021.12.0-h420ef59_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tbb-devel-2021.12.0-hdc09de8_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tinyxml2-10.0.0-hebf3989_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h5083fa2_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 @@ -509,14 +509,13 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zlib-1.2.13-hfb2fe0b_6.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.6-hb46c0d2_0.conda win-64: - - conda: https://conda.anaconda.org/conda-forge/win-64/aom-3.6.1-h63175ca_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/argcomplete-3.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/assimp-5.3.1-h0dbab56_3.conda - conda: https://conda.anaconda.org/conda-forge/win-64/black-24.2.0-py312h2e8e312_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/boost-1.84.0-h7e22eef_3.conda - conda: https://conda.anaconda.org/conda-forge/win-64/bullet-cpp-3.25-h2ab9e98_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/bzip2-1.0.8-hcfcfb64_5.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/ca-certificates-2024.6.2-h56e8100_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/ca-certificates-2024.7.4-h56e8100_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-win_pyh7428d3b_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/cmake-3.22.3-h39d44d4_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/collada-dom-2.5.0-hc0d5731_8.conda @@ -527,7 +526,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/expat-2.6.2-h63175ca_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/fcl-0.7.0-he22821c_4.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/ffmpeg-4.4.2-gpl_hf960ced_113.conda - conda: https://conda.anaconda.org/conda-forge/win-64/flann-1.9.2-h23e6bae_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/fmt-10.2.1-h181d51b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2 @@ -541,9 +539,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/freetype-2.12.1-hdaf720e_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/glfw-3.4-hcfcfb64_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/hdf5-1.14.3-nompi_h2b43c12_105.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/imgui-1.90.8-hecf2515_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/imgui-1.90.9-hecf2515_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/intel-openmp-2024.1.0-h57928b3_966.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/intel-openmp-2024.2.0-h57928b3_979.conda - conda: https://conda.anaconda.org/conda-forge/win-64/ipopt-3.14.16-ha3daec3_4.conda - conda: https://conda.anaconda.org/conda-forge/noarch/isort-5.13.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.21.3-hdf4eb48_0.conda @@ -557,13 +555,13 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/libboost-python-devel-1.84.0-py312h7e22eef_3.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libcblas-3.9.0-22_win64_mkl.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libccd-double-2.1-h63175ca_3.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.8.0-hd5e4a3a_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.8.0-hd5e4a3a_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libdeflate-1.20-hcfcfb64_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.6.2-h63175ca_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.4.2-h8ffe710_5.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libflang-5.0.0-h6538335_20180525.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libglib-2.80.2-h7025463_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libhwloc-2.10.0-default_h8125262_1001.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libhwloc-2.11.0-default_h8125262_1000.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libiconv-1.17-hcfcfb64_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libintl-0.22.5-h5728263_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libjpeg-turbo-3.0.0-hcfcfb64_1.conda @@ -585,9 +583,8 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/nlopt-2.7.1-py312h1fad3b1_5.conda - conda: https://conda.anaconda.org/conda-forge/win-64/numpy-1.26.4-py312h8753938_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/octomap-1.9.8-h91493d7_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/openh264-2.3.1-h63175ca_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/openmp-5.0.0-vc14_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/openscenegraph-3.6.5-h2596158_18.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/openscenegraph-3.6.5-hf7c1acd_20.conda - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.3.1-h2466b09_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pagmo-2.19.0-hac87e97_9.conda @@ -604,12 +601,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.12.4-h889d299_0_cpython.conda - conda: https://conda.anaconda.org/conda-forge/win-64/python_abi-3.12-4_cp312.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/sdl2-2.30.2-h63175ca_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/sdl2-2.30.5-he0c23c2_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.1.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/spdlog-1.12.0-h64d2f7d_2.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/svt-av1-1.4.1-h63175ca_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/tbb-2021.12.0-hc790b64_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/tbb-devel-2021.12.0-hb551fcf_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/tbb-2021.12.0-hc790b64_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/tbb-devel-2021.12.0-h9a7971d_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/tinyxml2-10.0.0-h63175ca_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h5226925_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 @@ -622,8 +618,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.40.33810-ha82c5b3_20.conda - conda: https://conda.anaconda.org/conda-forge/win-64/vs2015_runtime-14.40.33810-h3bf8584_20.conda - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/x264-1!164.3095-h8ffe710_2.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/x265-3.5-h2d74725_3.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/xz-5.2.6-h8d14728_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/zlib-1.3.1-h2466b09_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/zstd-1.5.6-h0ea2cb4_0.conda @@ -724,22 +718,6 @@ packages: license_family: BSD size: 2678249 timestamp: 1694225960207 -- kind: conda - name: aom - version: 3.6.1 - build: h63175ca_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/aom-3.6.1-h63175ca_0.conda - sha256: 3d5ae5f4f032daf24b9ac412cd57047590866e09e807f5a16d8112c6fe84700c - md5: 40e557b0d849edcb884d02d9ea6511bf - depends: - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: BSD-2-Clause - license_family: BSD - size: 7918540 - timestamp: 1694228877684 - kind: conda name: aom version: 3.6.1 @@ -1196,48 +1174,48 @@ packages: timestamp: 1711819445938 - kind: conda name: ca-certificates - version: 2024.6.2 + version: 2024.7.4 build: h56e8100_0 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/ca-certificates-2024.6.2-h56e8100_0.conda - sha256: d872d11558ebeaeb87bcf9086e97c075a1a2dfffed2d0e97570cf197ab29e3d8 - md5: 12a3a2b3a00a21bbb390d4de5ad8dd0f + url: https://conda.anaconda.org/conda-forge/win-64/ca-certificates-2024.7.4-h56e8100_0.conda + sha256: 7f37bb33c7954de1b4d19ad622859feb4f6c58f751c38b895524cad4e44af72e + md5: 9caa97c9504072cd060cf0a3142cc0ed license: ISC - size: 156530 - timestamp: 1717311907623 + size: 154943 + timestamp: 1720077592592 - kind: conda name: ca-certificates - version: 2024.6.2 + version: 2024.7.4 build: h8857fd0_0 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/ca-certificates-2024.6.2-h8857fd0_0.conda - sha256: ba0614477229fcb0f0666356f2c4686caa66f0ed1446e7c9666ce234abe2bacf - md5: 3c23a8cab15ae51ebc9efdc229fccecf + url: https://conda.anaconda.org/conda-forge/osx-64/ca-certificates-2024.7.4-h8857fd0_0.conda + sha256: d16f46c489cb3192305c7d25b795333c5fc17bb0986de20598ed519f8c9cc9e4 + md5: 7df874a4b05b2d2b82826190170eaa0f license: ISC - size: 156145 - timestamp: 1717311781754 + size: 154473 + timestamp: 1720077510541 - kind: conda name: ca-certificates - version: 2024.6.2 + version: 2024.7.4 build: hbcca054_0 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2024.6.2-hbcca054_0.conda - sha256: 979af0932b2a5a26112044891a2d79e402e5ae8166f50fa48b8ebae47c0a2d65 - md5: 847c3c2905cc467cea52c24f9cfa8080 + url: https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2024.7.4-hbcca054_0.conda + sha256: c1548a3235376f464f9931850b64b02492f379b2f2bb98bc786055329b080446 + md5: 23ab7665c5f63cfb9f1f6195256daac6 license: ISC - size: 156035 - timestamp: 1717311767102 + size: 154853 + timestamp: 1720077432978 - kind: conda name: ca-certificates - version: 2024.6.2 + version: 2024.7.4 build: hf0a4a13_0 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/ca-certificates-2024.6.2-hf0a4a13_0.conda - sha256: f5fd189d48965df396d060eb48628cbd9f083f1a1ea79c5236f60d655c7b9633 - md5: b534f104f102479402f88f73adf750f5 + url: https://conda.anaconda.org/conda-forge/osx-arm64/ca-certificates-2024.7.4-hf0a4a13_0.conda + sha256: 33a61116dae7f369b6ce92a7f2a1ff361ae737c675a493b11feb5570b89e0e3b + md5: 21f9a33e5fe996189e470c19c5354dbe license: ISC - size: 156299 - timestamp: 1717311742040 + size: 154517 + timestamp: 1720077468981 - kind: conda name: clang-format-14 version: 14.0.6 @@ -1957,34 +1935,6 @@ packages: license_family: GPL size: 9452373 timestamp: 1697114721535 -- kind: conda - name: ffmpeg - version: 4.4.2 - build: gpl_hf960ced_113 - build_number: 113 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/ffmpeg-4.4.2-gpl_hf960ced_113.conda - sha256: 8877367a1503da0374efeadbc6bf9558e9e4a4b5effef4af15494ddcc88cac8d - md5: 08db712dab040632cf97e4c2ca033f9c - depends: - - aom >=3.6.1,<3.7.0a0 - - bzip2 >=1.0.8,<2.0a0 - - fontconfig >=2.14.2,<3.0a0 - - fonts-conda-ecosystem - - freetype >=2.12.1,<3.0a0 - - libxml2 >=2.11.5,<3.0.0a0 - - libzlib >=1.2.13,<2.0.0a0 - - openh264 >=2.3.1,<2.3.2.0a0 - - svt-av1 >=1.4.1,<1.4.2.0a0 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - - x264 >=1!164.3095,<1!165 - - x265 >=3.5,<3.6.0a0 - license: GPL-2.0-or-later - license_family: GPL - size: 11014091 - timestamp: 1697116022232 - kind: conda name: flann version: 1.9.2 @@ -2770,12 +2720,12 @@ packages: timestamp: 1692901622519 - kind: conda name: imgui - version: 1.90.8 + version: 1.90.9 build: hb044264_0 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/imgui-1.90.8-hb044264_0.conda - sha256: 84c253a84ce62f4ac7abb954b482d4a8deb1f018a019c3bbd5754b453e32e53b - md5: d14c9a46517fe353f1705383e81dd3d9 + url: https://conda.anaconda.org/conda-forge/osx-64/imgui-1.90.9-hb044264_0.conda + sha256: bb8c23e92986e108bbe1846cc68af19884557106c690cb1a610d084d9af84cdf + md5: bddcd8a2ea5d52b5dedc8b7602c940fb depends: - __osx >=10.15 - glfw >=3.4,<4.0a0 @@ -2783,33 +2733,16 @@ packages: - sdl2 >=2.30.2,<3.0a0 license: MIT license_family: MIT - size: 675510 - timestamp: 1717724323201 + size: 675920 + timestamp: 1719868518940 - kind: conda name: imgui - version: 1.90.8 - build: hc3331dd_0 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/imgui-1.90.8-hc3331dd_0.conda - sha256: fcf149b71a66004cf6b9e266b6dee7751f30e14b242bd1d5b3289cc7f842fe48 - md5: 62270d89a1f4c1cf53981e0ee9b5c4eb - depends: - - glfw >=3.4,<4.0a0 - - libgcc-ng >=12 - - libstdcxx-ng >=12 - - sdl2 >=2.30.2,<3.0a0 - license: MIT - license_family: MIT - size: 666499 - timestamp: 1717724198561 -- kind: conda - name: imgui - version: 1.90.8 + version: 1.90.9 build: hcde34a3_0 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/imgui-1.90.8-hcde34a3_0.conda - sha256: e864c4cb40dc0ebaffcd56be3ff95ba54b430bd2a1605df254db5c7eaa86438d - md5: 7eb05b36e8adb011b790525284249b07 + url: https://conda.anaconda.org/conda-forge/osx-arm64/imgui-1.90.9-hcde34a3_0.conda + sha256: 4ded639779230efa68155ac2f34cbc817290505c8d235777c8b0717a8469c4dc + md5: 659d8cc00821b83ad4ff1b3ff1cb1313 depends: - __osx >=11.0 - glfw >=3.4,<4.0a0 @@ -2817,16 +2750,16 @@ packages: - sdl2 >=2.30.2,<3.0a0 license: MIT license_family: MIT - size: 626709 - timestamp: 1717724405363 + size: 628004 + timestamp: 1719868602560 - kind: conda name: imgui - version: 1.90.8 + version: 1.90.9 build: hecf2515_0 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/imgui-1.90.8-hecf2515_0.conda - sha256: b1f6b1886a966f02e456b14d949d118738509ba343c31a5f6d1f1addf963738b - md5: 3cfddbbb10ae792a183e73699b03cddc + url: https://conda.anaconda.org/conda-forge/win-64/imgui-1.90.9-hecf2515_0.conda + sha256: d7e100ab8b3ffc7b6f259ef2248d26f618d119dc95eda76c2d63ade5c3e79fde + md5: bb24b739c2ed6405065062729651dc06 depends: - glfw >=3.4,<4.0a0 - sdl2 >=2.30.2,<3.0a0 @@ -2835,8 +2768,26 @@ packages: - vc14_runtime >=14.29.30139 license: MIT license_family: MIT - size: 657726 - timestamp: 1717724662603 + size: 660008 + timestamp: 1719868715190 +- kind: conda + name: imgui + version: 1.90.9 + build: hf17a319_0 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/imgui-1.90.9-hf17a319_0.conda + sha256: b034940c79870d1783009a9c19022b5258e38c53b1944891eb6033b20b1e7667 + md5: a11b85af9bfc1e21bd9ff79d8b389d48 + depends: + - __glibc >=2.17,<3.0.a0 + - glfw >=3.4,<4.0a0 + - libgcc-ng >=12 + - libstdcxx-ng >=12 + - sdl2 >=2.30.2,<3.0a0 + license: MIT + license_family: MIT + size: 666928 + timestamp: 1719868543607 - kind: conda name: iniconfig version: 2.0.0 @@ -2854,17 +2805,17 @@ packages: timestamp: 1673103208955 - kind: conda name: intel-openmp - version: 2024.1.0 - build: h57928b3_966 - build_number: 966 + version: 2024.2.0 + build: h57928b3_979 + build_number: 979 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/intel-openmp-2024.1.0-h57928b3_966.conda - sha256: 77465396f2636c8b3b3a587f1636ee35c17a73e2a2c7e0ea0957b05f84704cf3 - md5: 35d7ea07ad6c878bd7240d2d6c1b8657 + url: https://conda.anaconda.org/conda-forge/win-64/intel-openmp-2024.2.0-h57928b3_979.conda + sha256: 49ba0097aa41406eefd09903a525abbe6e98b5452a9a3dddb68989a86eb519ed + md5: 192b0028299eebbc8d88624764df61f5 license: LicenseRef-IntelSimplifiedSoftwareOct2022 license_family: Proprietary - size: 1616293 - timestamp: 1716560867765 + size: 1854665 + timestamp: 1720049226486 - kind: conda name: ipopt version: 3.14.16 @@ -2999,6 +2950,7 @@ packages: - libedit >=3.1.20191231,<4.0a0 - openssl >=3.3.1,<4.0a0 license: MIT + license_family: MIT size: 1155530 timestamp: 1719463474401 - kind: conda @@ -3016,6 +2968,7 @@ packages: - libedit >=3.1.20191231,<4.0a0 - openssl >=3.3.1,<4.0a0 license: MIT + license_family: MIT size: 1185323 timestamp: 1719463492984 - kind: conda @@ -3034,6 +2987,7 @@ packages: - libstdcxx-ng >=12 - openssl >=3.3.1,<4.0a0 license: MIT + license_family: MIT size: 1370023 timestamp: 1719463201255 - kind: conda @@ -3050,6 +3004,7 @@ packages: - vc >=14.2,<15 - vc14_runtime >=14.29.30139 license: MIT + license_family: MIT size: 712034 timestamp: 1719463874284 - kind: conda @@ -3988,108 +3943,114 @@ packages: - kind: conda name: libcurl version: 8.8.0 - build: h7b6f9a7_0 + build: h7b6f9a7_1 + build_number: 1 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.8.0-h7b6f9a7_0.conda - sha256: b83aa249e7c8abc1aa56593ad50d1b4c0a52f5f3d5fd7c489c2ccfc3a548f391 - md5: 245b30f99dc5379ebe1c78899be8d3f5 + url: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.8.0-h7b6f9a7_1.conda + sha256: 9da82a9bd72e9872941da32be54543076c92dbeb2aba688a1c24adbc1c699e64 + md5: e9580b0bb247a2ccf937b16161478f19 depends: - - krb5 >=1.21.2,<1.22.0a0 + - krb5 >=1.21.3,<1.22.0a0 - libnghttp2 >=1.58.0,<2.0a0 - libssh2 >=1.11.0,<2.0a0 - - libzlib >=1.2.13,<2.0.0a0 - - openssl >=3.3.0,<4.0a0 + - libzlib >=1.2.13,<2.0a0 + - openssl >=3.3.1,<4.0a0 - zstd >=1.5.6,<1.6.0a0 license: curl license_family: MIT - size: 364890 - timestamp: 1716378993833 + size: 370070 + timestamp: 1719603062088 - kind: conda name: libcurl version: 8.8.0 - build: hca28451_0 + build: hca28451_1 + build_number: 1 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.8.0-hca28451_0.conda - sha256: 45aec0ffc6fe3fd4c0083b815aa102b8103380acc2b6714fb272d921acc68ab2 - md5: f21c27f076a07907e70c49bb57bd0f20 + url: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.8.0-hca28451_1.conda + sha256: 6b5b64cdcdb643368ebe236de07eedee99b025bb95129bbe317c46e5bdc693f3 + md5: b8afb3e3cb3423cc445cf611ab95fdb0 depends: - - krb5 >=1.21.2,<1.22.0a0 + - krb5 >=1.21.3,<1.22.0a0 - libgcc-ng >=12 - libnghttp2 >=1.58.0,<2.0a0 - libssh2 >=1.11.0,<2.0a0 - - libzlib >=1.2.13,<2.0.0a0 - - openssl >=3.3.0,<4.0a0 + - libzlib >=1.2.13,<2.0a0 + - openssl >=3.3.1,<4.0a0 - zstd >=1.5.6,<1.6.0a0 license: curl license_family: MIT - size: 405535 - timestamp: 1716378550673 + size: 410158 + timestamp: 1719602718702 - kind: conda name: libcurl version: 8.8.0 - build: hd5e4a3a_0 + build: hd5e4a3a_1 + build_number: 1 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.8.0-hd5e4a3a_0.conda - sha256: 169fb0a11dd3a1f0adbb93b275f9752aa24b64e73d0c8e220aa10213c6ee74ff - md5: 4f86149dc6228f1e5617faa2cce90f94 + url: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.8.0-hd5e4a3a_1.conda + sha256: ebe665ec226672e7e6e37f2b1fe554db83f9fea5267cbc5a849ab34d8546b2c3 + md5: 88fbd2ea44690c6dfad8737659936461 depends: - - krb5 >=1.21.2,<1.22.0a0 + - krb5 >=1.21.3,<1.22.0a0 - libssh2 >=1.11.0,<2.0a0 - - libzlib >=1.2.13,<2.0.0a0 + - libzlib >=1.2.13,<2.0a0 - ucrt >=10.0.20348.0 - vc >=14.2,<15 - vc14_runtime >=14.29.30139 license: curl license_family: MIT - size: 334903 - timestamp: 1716379079949 + size: 334189 + timestamp: 1719603160758 - kind: conda name: libcurl version: 8.8.0 - build: hf9fcc65_0 + build: hf9fcc65_1 + build_number: 1 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.8.0-hf9fcc65_0.conda - sha256: 1eb3e00586ddbf662877e62d1108bd2ff539fbeee34c52edf1d6c5fa3c9f4435 - md5: 276894efcbca23aa674e280e90bc5673 + url: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.8.0-hf9fcc65_1.conda + sha256: 25e2b044e6978f1714a4b2844f34a45fc8a0c60185db8d332906989d70b65927 + md5: 11711bab5306a6534797a68b3c4c2bed depends: - - krb5 >=1.21.2,<1.22.0a0 + - krb5 >=1.21.3,<1.22.0a0 - libnghttp2 >=1.58.0,<2.0a0 - libssh2 >=1.11.0,<2.0a0 - - libzlib >=1.2.13,<2.0.0a0 - - openssl >=3.3.0,<4.0a0 + - libzlib >=1.2.13,<2.0a0 + - openssl >=3.3.1,<4.0a0 - zstd >=1.5.6,<1.6.0a0 license: curl license_family: MIT - size: 385778 - timestamp: 1716378974624 + size: 390707 + timestamp: 1719602983754 - kind: conda name: libcxx version: 17.0.6 - build: h5f092b4_0 + build: h0812c0d_3 + build_number: 3 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-17.0.6-h5f092b4_0.conda - sha256: 119d3d9306f537d4c89dc99ed99b94c396d262f0b06f7833243646f68884f2c2 - md5: a96fd5dda8ce56c86a971e0fa02751d0 + url: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-17.0.6-h0812c0d_3.conda + sha256: a0568191ad6dc889d5482f7858e501f94d50139d1a0ef96434047fa34599e9a4 + md5: bb3540fadfee3013271e4323c8cb1ade depends: - __osx >=11.0 license: Apache-2.0 WITH LLVM-exception license_family: Apache - size: 1248885 - timestamp: 1715020154867 + size: 1250190 + timestamp: 1720040315257 - kind: conda name: libcxx version: 17.0.6 - build: h88467a6_0 + build: heb59cac_3 + build_number: 3 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/libcxx-17.0.6-h88467a6_0.conda - sha256: e7b57062c1edfcbd13d2129467c94cbff7f0a988ee75782bf48b1dc0e6300b8b - md5: 0fe355aecb8d24b8bc07c763209adbd9 + url: https://conda.anaconda.org/conda-forge/osx-64/libcxx-17.0.6-heb59cac_3.conda + sha256: 9df841c64b19a3843869467ff8ff2eb3f6c5491ebaac8fd94fb8029a5b00dcbf + md5: ef15f182e353155497e13726b915bfc4 depends: - __osx >=10.13 license: Apache-2.0 WITH LLVM-exception license_family: Apache - size: 1249309 - timestamp: 1715020018902 + size: 1250659 + timestamp: 1720040263499 - kind: conda name: libdeflate version: '1.20' @@ -4146,19 +4107,19 @@ packages: timestamp: 1711196523408 - kind: conda name: libdrm - version: 2.4.121 + version: 2.4.122 build: h4ab18f5_0 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libdrm-2.4.121-h4ab18f5_0.conda - sha256: ad6b2b83f53b1ff524e5cd9617674658d97bdfdf1c9a118c011dfaf1d6ac039b - md5: 3bcee3436b1effa9a3caee2b74175c08 + url: https://conda.anaconda.org/conda-forge/linux-64/libdrm-2.4.122-h4ab18f5_0.conda + sha256: 74c59a29b76bafbb022389c7cfa9b33b8becd7879b2c6b25a1a99735bf4e9c81 + md5: bbfc4dbe5e97b385ef088f354d65e563 depends: - libgcc-ng >=12 - libpciaccess >=0.18,<0.19.0a0 license: MIT license_family: MIT - size: 306112 - timestamp: 1718878251176 + size: 305483 + timestamp: 1719531428392 - kind: conda name: libedit version: 3.1.20191231 @@ -4400,22 +4361,21 @@ packages: timestamp: 1527899216421 - kind: conda name: libgcc-ng - version: 13.2.0 - build: h77fa898_13 - build_number: 13 + version: 14.1.0 + build: h77fa898_0 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-13.2.0-h77fa898_13.conda - sha256: ffa0f472c8b37f864de855af2d3c057f1813162319f10ebd97332d73fc27ba60 - md5: 9358cdd61ef0d600d2a0dde2d53b006c + url: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-14.1.0-h77fa898_0.conda + sha256: b8e869ac96591cda2704bf7e77a301025e405227791a0bddf14a3dac65125538 + md5: ca0fad6a41ddaef54a153b78eccb5037 depends: - _libgcc_mutex 0.1 conda_forge - _openmp_mutex >=4.5 constrains: - - libgomp 13.2.0 h77fa898_13 + - libgomp 14.1.0 h77fa898_0 license: GPL-3.0-only WITH GCC-exception-3.1 license_family: GPL - size: 792721 - timestamp: 1719179941452 + size: 842109 + timestamp: 1719538896937 - kind: conda name: libgcrypt version: 1.11.0 @@ -4560,19 +4520,18 @@ packages: timestamp: 1707330749033 - kind: conda name: libgfortran-ng - version: 13.2.0 - build: h69a702a_13 - build_number: 13 + version: 14.1.0 + build: h69a702a_0 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-13.2.0-h69a702a_13.conda - sha256: 3ef5d92510e9cdd70ec2a9f1f83b8c1d327ff0f9bfc17831a8f8f06f10c2085c - md5: 516e66b26eea14e7e322fe99e88e0f02 + url: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-14.1.0-h69a702a_0.conda + sha256: ef624dacacf97b2b0af39110b36e2fd3e39e358a1a6b7b21b85c9ac22d8ffed9 + md5: f4ca84fbd6d06b0a052fb2d5b96dde41 depends: - - libgfortran5 13.2.0 h3d2ce59_13 + - libgfortran5 14.1.0 hc5f4f2c_0 license: GPL-3.0-only WITH GCC-exception-3.1 license_family: GPL - size: 48419 - timestamp: 1719179972468 + size: 49893 + timestamp: 1719538933879 - kind: conda name: libgfortran5 version: 13.2.0 @@ -4590,23 +4549,6 @@ packages: license_family: GPL size: 1571379 timestamp: 1707328880361 -- kind: conda - name: libgfortran5 - version: 13.2.0 - build: h3d2ce59_13 - build_number: 13 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-13.2.0-h3d2ce59_13.conda - sha256: 19cffb68b19ff5f426d1cb3db670dccb73c09f54b8d3f8e304665e2cee68f14f - md5: 1e380198685bc1e993bbbc4b579f5916 - depends: - - libgcc-ng >=13.2.0 - constrains: - - libgfortran-ng 13.2.0 - license: GPL-3.0-only WITH GCC-exception-3.1 - license_family: GPL - size: 1459384 - timestamp: 1719179951703 - kind: conda name: libgfortran5 version: 13.2.0 @@ -4624,6 +4566,22 @@ packages: license_family: GPL size: 997381 timestamp: 1707330687590 +- kind: conda + name: libgfortran5 + version: 14.1.0 + build: hc5f4f2c_0 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-14.1.0-hc5f4f2c_0.conda + sha256: a67d66b1e60a8a9a9e4440cee627c959acb4810cb182e089a4b0729bfdfbdf90 + md5: 6456c2620c990cd8dde2428a27ba0bc5 + depends: + - libgcc-ng >=14.1.0 + constrains: + - libgfortran-ng 14.1.0 + license: GPL-3.0-only WITH GCC-exception-3.1 + license_family: GPL + size: 1457561 + timestamp: 1719538909168 - kind: conda name: libglib version: 2.80.2 @@ -4688,19 +4646,18 @@ packages: timestamp: 1715252654366 - kind: conda name: libgomp - version: 13.2.0 - build: h77fa898_13 - build_number: 13 + version: 14.1.0 + build: h77fa898_0 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libgomp-13.2.0-h77fa898_13.conda - sha256: c5949bec7eee93cdd5c367e6e5c5e92ee1c5139a827567af23853dd52721d8ed - md5: d370d1855cca14dff6a819c90c77497c + url: https://conda.anaconda.org/conda-forge/linux-64/libgomp-14.1.0-h77fa898_0.conda + sha256: 7699df61a1f6c644b3576a40f54791561f2845983120477a16116b951c9cdb05 + md5: ae061a5ed5f05818acdf9adab72c146d depends: - _libgcc_mutex 0.1 conda_forge license: GPL-3.0-only WITH GCC-exception-3.1 license_family: GPL - size: 444091 - timestamp: 1719179831697 + size: 456925 + timestamp: 1719538796073 - kind: conda name: libgpg-error version: '1.50' @@ -4719,23 +4676,6 @@ packages: license_family: GPL size: 273774 timestamp: 1719390736440 -- kind: conda - name: libhwloc - version: 2.10.0 - build: default_h456cccd_1001 - build_number: 1001 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/libhwloc-2.10.0-default_h456cccd_1001.conda - sha256: 86490005550a3d3adaa450497ae9d9427e0420f605c3e4b732fe44b8445fbc93 - md5: d2dc768b14cdf226a30a8eab15641305 - depends: - - __osx >=10.13 - - libcxx >=16 - - libxml2 >=2.12.7,<3.0a0 - license: BSD-3-Clause - license_family: BSD - size: 2347954 - timestamp: 1715972915061 - kind: conda name: libhwloc version: 2.10.0 @@ -4755,30 +4695,47 @@ packages: timestamp: 1715972847822 - kind: conda name: libhwloc - version: 2.10.0 - build: default_h7685b71_1001 - build_number: 1001 + version: 2.11.0 + build: default_h456cccd_1000 + build_number: 1000 + subdir: osx-64 + url: https://conda.anaconda.org/conda-forge/osx-64/libhwloc-2.11.0-default_h456cccd_1000.conda + sha256: cbd6e20aa4dede5025f03be0d1d8bccfa6b3549b3b3d98f94d10ea73ebf550e4 + md5: 3e07b3953681279cc9cbc4d8b2723009 + depends: + - __osx >=10.13 + - libcxx >=16 + - libxml2 >=2.12.7,<3.0a0 + license: BSD-3-Clause + license_family: BSD + size: 2350298 + timestamp: 1719334081063 +- kind: conda + name: libhwloc + version: 2.11.0 + build: default_h7685b71_1000 + build_number: 1000 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/libhwloc-2.10.0-default_h7685b71_1001.conda - sha256: 987f6303b837e51601358bf9d6931549ed6746174d459285063dfa03f9f4ac63 - md5: 1d80edc1c263b4cc8b7dd3c6c26d9283 + url: https://conda.anaconda.org/conda-forge/osx-arm64/libhwloc-2.11.0-default_h7685b71_1000.conda + sha256: e1b92011a85ce4de0b8f107c6a85fe4d7dfa81fbf5aaecda5cd68d408667eba6 + md5: dfa163200dabc0fb31bd6a6bca96f836 depends: - __osx >=11.0 - libcxx >=16 - libxml2 >=2.12.7,<3.0a0 license: BSD-3-Clause license_family: BSD - size: 2322710 - timestamp: 1715972853552 + size: 2325334 + timestamp: 1719333994790 - kind: conda name: libhwloc - version: 2.10.0 - build: default_h8125262_1001 - build_number: 1001 + version: 2.11.0 + build: default_h8125262_1000 + build_number: 1000 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/libhwloc-2.10.0-default_h8125262_1001.conda - sha256: 7f1aa1b071269df72e88297c046ec153b7f9a81e6f135d2da4401c96f41b5052 - md5: e761885eb4c181074d172220d46319a0 + url: https://conda.anaconda.org/conda-forge/win-64/libhwloc-2.11.0-default_h8125262_1000.conda + sha256: f7f7733b2a839499a6d340edcce08dca5b5798293d3429f8b4a5c8a799dbabe9 + md5: 065e86390dcd9304259ad8b627f724bd depends: - libxml2 >=2.12.7,<3.0a0 - pthreads-win32 @@ -4787,8 +4744,8 @@ packages: - vc14_runtime >=14.29.30139 license: BSD-3-Clause license_family: BSD - size: 2373948 - timestamp: 1715973819139 + size: 2380869 + timestamp: 1719335179554 - kind: conda name: libiconv version: '1.17' @@ -5679,19 +5636,18 @@ packages: timestamp: 1685837820566 - kind: conda name: libstdcxx-ng - version: 13.2.0 - build: hc0a3c3a_13 - build_number: 13 + version: 14.1.0 + build: hc0a3c3a_0 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-13.2.0-hc0a3c3a_13.conda - sha256: 143171c6084e526122cc2976fbbfadf7b9f50e5d13036adf20feb7ed9d036dd2 - md5: 1053882642ed5bbc799e1e866ff86826 + url: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-14.1.0-hc0a3c3a_0.conda + sha256: 88c42b388202ffe16adaa337e36cf5022c63cf09b0405cf06fc6aeacccbe6146 + md5: 1cb187a157136398ddbaae90713e2498 depends: - - libgcc-ng 13.2.0 h77fa898_13 + - libgcc-ng 14.1.0 h77fa898_0 license: GPL-3.0-only WITH GCC-exception-3.1 license_family: GPL - size: 3836375 - timestamp: 1719179964037 + size: 3881307 + timestamp: 1719538923443 - kind: conda name: libsystemd0 version: '255' @@ -6949,23 +6905,6 @@ packages: license_family: BSD size: 200054 timestamp: 1668155810471 -- kind: conda - name: openh264 - version: 2.3.1 - build: h63175ca_2 - build_number: 2 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/openh264-2.3.1-h63175ca_2.conda - sha256: 251566b5326a292215a3db5a184c255a092242a371431b617c7baf300fa9d170 - md5: 76e822d93cdc32b00b61810d3fa030e0 - depends: - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vs2015_runtime >=14.29.30139 - license: BSD-2-Clause - license_family: BSD - size: 410812 - timestamp: 1675882258839 - kind: conda name: openh264 version: 2.3.1 @@ -7028,36 +6967,6 @@ packages: platform: win license: NCSA size: 590466 -- kind: conda - name: openscenegraph - version: 3.6.5 - build: h2596158_18 - build_number: 18 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/openscenegraph-3.6.5-h2596158_18.conda - sha256: e768b71449699a9ab2ae0d1cb35618dad93d8d34e25a279c9fe27b183030cfd0 - md5: ed079f061539bdda510dfdabfafcc243 - depends: - - collada-dom >=2.5.0,<2.6.0a0 - - expat - - ffmpeg >=4.4.2,<5.0a0 - - fontconfig >=2.14.2,<3.0a0 - - fonts-conda-ecosystem - - freetype >=2.12.1,<3.0a0 - - libcurl >=8.4.0,<9.0a0 - - libexpat >=2.5.0,<3.0a0 - - libjpeg-turbo >=3.0.0,<4.0a0 - - libpng >=1.6.39,<1.7.0a0 - - libtiff >=4.6.0,<4.7.0a0 - - libzlib >=1.2.13,<2.0.0a0 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - - zlib - license: LGPL-2.1-only - license_family: LGPL - size: 6349359 - timestamp: 1697288798486 - kind: conda name: openscenegraph version: 3.6.5 @@ -7156,6 +7065,35 @@ packages: license_family: LGPL size: 9359490 timestamp: 1697287350405 +- kind: conda + name: openscenegraph + version: 3.6.5 + build: hf7c1acd_20 + build_number: 20 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/openscenegraph-3.6.5-hf7c1acd_20.conda + sha256: 253ca2cd4f563fd89af9013f08360e78bca3a51a0dd1a1a078379dfecb25b6ce + md5: c337913fb8b92eba8a0f598d13ed3d65 + depends: + - collada-dom >=2.5.0,<2.6.0a0 + - expat + - fontconfig >=2.14.2,<3.0a0 + - fonts-conda-ecosystem + - freetype >=2.12.1,<3.0a0 + - libcurl >=8.8.0,<9.0a0 + - libexpat >=2.6.2,<3.0a0 + - libjpeg-turbo >=3.0.0,<4.0a0 + - libpng >=1.6.43,<1.7.0a0 + - libtiff >=4.6.0,<4.7.0a0 + - libzlib >=1.3.1,<2.0a0 + - ucrt >=10.0.20348.0 + - vc >=14.2,<15 + - vc14_runtime >=14.29.30139 + - zlib + license: LGPL-2.1-only + license_family: LGPL + size: 6276013 + timestamp: 1720016187344 - kind: conda name: openssl version: 3.3.1 @@ -8052,62 +7990,65 @@ packages: timestamp: 1693427593121 - kind: conda name: sdl2 - version: 2.30.2 - build: h63175ca_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/sdl2-2.30.2-h63175ca_0.conda - sha256: 2f8020bffb8fcaca01638c44fb845f223140baf04f8766ecca2eb8bc2f7443f0 - md5: 18017f8551ce74d2281f5684f16eb71f + version: 2.30.5 + build: h00cdb27_0 + subdir: osx-arm64 + url: https://conda.anaconda.org/conda-forge/osx-arm64/sdl2-2.30.5-h00cdb27_0.conda + sha256: 54f675b06a8ca5a1c43f6a5bae0afe6ecf352618d787810fc2b96bf741e1c97a + md5: 0d9d61e103fa7c4525858b012bbd5473 depends: - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 + - __osx >=11.0 + - libcxx >=16 license: Zlib - size: 2155390 - timestamp: 1712091452523 + size: 1256470 + timestamp: 1720071904035 - kind: conda name: sdl2 - version: 2.30.2 - build: h73e2aa4_0 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/sdl2-2.30.2-h73e2aa4_0.conda - sha256: 15932a4125f27daf6bfa35ebff879326a7bae91078874f62cbc0b7f8f38a61b8 - md5: fb62c1528129a067f3162e723a54446d + version: 2.30.5 + build: he0c23c2_0 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/sdl2-2.30.5-he0c23c2_0.conda + sha256: 3493f8a84d38037c133b8bf5b8ade24e7bbf2c611899b6119aaac7eb6f906318 + md5: 131b868376556dc569abcb6320e94557 depends: - - libcxx >=16 + - ucrt >=10.0.20348.0 + - vc >=14.2,<15 + - vc14_runtime >=14.29.30139 license: Zlib - size: 1184131 - timestamp: 1712091348007 + size: 2416917 + timestamp: 1720072009725 - kind: conda name: sdl2 - version: 2.30.2 - build: hdbcbe63_0 + version: 2.30.5 + build: hef7aa77_0 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/sdl2-2.30.2-hdbcbe63_0.conda - sha256: 64b7ba181c585065fafb6e3ba8fe5a2fdf3b1b544f00f7c97625a737aafa3b95 - md5: 384fc41d2db4062cd67c5073810049fa + url: https://conda.anaconda.org/conda-forge/linux-64/sdl2-2.30.5-hef7aa77_0.conda + sha256: c34159a27b03708854c189106de104824dfd1f832aad1e63a3f1d3953128bcf4 + md5: 4195eebbbc662b28e60e45c8b597bcbf depends: + - __glibc >=2.17,<3.0.a0 - libgcc-ng >=12 - libstdcxx-ng >=12 - pulseaudio-client >=17.0,<17.1.0a0 - - xorg-libx11 >=1.8.7,<2.0a0 + - xorg-libx11 >=1.8.9,<2.0a0 - xorg-libxext >=1.3.4,<2.0a0 license: Zlib - size: 1391428 - timestamp: 1712091106383 + size: 1376026 + timestamp: 1720071746874 - kind: conda name: sdl2 - version: 2.30.2 - build: hebf3989_0 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/sdl2-2.30.2-hebf3989_0.conda - sha256: 5c78cf48fdc1d08ed2c68f1312a357aa0c6ec207e3d24d2fbb89e241ca7d429f - md5: b962526879a8bad545c671b2a1a97549 + version: 2.30.5 + build: hf036a51_0 + subdir: osx-64 + url: https://conda.anaconda.org/conda-forge/osx-64/sdl2-2.30.5-hf036a51_0.conda + sha256: b0b8e8144416b8f1d13909c86e15b1061e8f9a7e37e4e876609e4422a27033c1 + md5: d1780e825b8a0f3e42bd16fa6412fbd4 depends: + - __osx >=10.13 - libcxx >=16 license: Zlib - size: 1254538 - timestamp: 1712091426929 + size: 1230510 + timestamp: 1720071699988 - kind: conda name: setuptools version: 69.1.1 @@ -8192,22 +8133,6 @@ packages: license_family: MIT size: 156560 timestamp: 1697421775628 -- kind: conda - name: svt-av1 - version: 1.4.1 - build: h63175ca_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/svt-av1-1.4.1-h63175ca_0.conda - sha256: ca68968390a6811de0568241e254b5b29e86c96221d1760228efa584ce4c4f65 - md5: 4e0b494c944e58a4de7aed21bb80645c - depends: - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vs2015_runtime >=14.29.30139 - license: BSD-2-Clause - license_family: BSD - size: 1951822 - timestamp: 1670989434546 - kind: conda name: svt-av1 version: 1.4.1 @@ -8271,70 +8196,67 @@ packages: - kind: conda name: tbb version: 2021.12.0 - build: h3c5361c_1 - build_number: 1 + build: h3c5361c_2 + build_number: 2 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/tbb-2021.12.0-h3c5361c_1.conda - sha256: 7097247f971b4aa29ffc2d3dba908306c6153a9a15088133a7bbd5b7528e5e8f - md5: e23dd312f13ffe470cc4fdeaddc7a32e + url: https://conda.anaconda.org/conda-forge/osx-64/tbb-2021.12.0-h3c5361c_2.conda + sha256: 73948d253126d6845906ace12a8e8a5f83e3f29f571db92171c4c0b9389248f1 + md5: 9baedc6436ec835bca3aabf06e971687 depends: - __osx >=10.13 - libcxx >=16 - - libhwloc >=2.10.0,<2.10.1.0a0 + - libhwloc >=2.11.0,<2.11.1.0a0 license: Apache-2.0 - license_family: APACHE - size: 172122 - timestamp: 1716030842899 + size: 172329 + timestamp: 1720077246862 - kind: conda name: tbb version: 2021.12.0 - build: h420ef59_1 - build_number: 1 + build: h420ef59_2 + build_number: 2 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/tbb-2021.12.0-h420ef59_1.conda - sha256: 38e57614078b2bce88172a4ca178dfe2ad7b7b96b1d64ff6c5f5cbd4313fa7c1 - md5: 42dec95fabef398cb81c096db4d868e7 + url: https://conda.anaconda.org/conda-forge/osx-arm64/tbb-2021.12.0-h420ef59_2.conda + sha256: ba8068861d7f264c18660169f52412a281a879162e2a5ddca9341e1330791ffb + md5: d1bdd77599a20c4118b423d5b055f7ce depends: - __osx >=11.0 - libcxx >=16 - - libhwloc >=2.10.0,<2.10.1.0a0 + - libhwloc >=2.11.0,<2.11.1.0a0 license: Apache-2.0 - license_family: APACHE - size: 127893 - timestamp: 1716030910416 + size: 128214 + timestamp: 1720077320914 - kind: conda name: tbb version: 2021.12.0 - build: hc790b64_1 - build_number: 1 + build: hc790b64_2 + build_number: 2 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/tbb-2021.12.0-hc790b64_1.conda - sha256: 87461c83a4f0d4f119af7368f20c47bbe0c27d963a7c22a3d08c71075077f855 - md5: e98333643abc739ebea1bac97a479828 + url: https://conda.anaconda.org/conda-forge/win-64/tbb-2021.12.0-hc790b64_2.conda + sha256: e41d0d07bbabc0144292fd28e871f54828eaa10da27e50c8b8cf5dad9a2f3a92 + md5: 3d6620dda0ba48d457fb722adfad5963 depends: - - libhwloc >=2.10.0,<2.10.1.0a0 + - libhwloc >=2.11.0,<2.11.1.0a0 - ucrt >=10.0.20348.0 - vc >=14.2,<15 - vc14_runtime >=14.29.30139 license: Apache-2.0 - license_family: APACHE - size: 161771 - timestamp: 1716031112705 + size: 161756 + timestamp: 1720077659730 - kind: conda name: tbb-devel version: 2021.12.0 - build: h7393e1e_1 - build_number: 1 + build: h222663f_2 + build_number: 2 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/tbb-devel-2021.12.0-h7393e1e_1.conda - sha256: 670bfacee9193661c17b8d46045d3d42ba56c961d83859b16d8fc7f7cd4bec30 - md5: a644e49902aa960bf4bf99875cf39775 + url: https://conda.anaconda.org/conda-forge/osx-64/tbb-devel-2021.12.0-h222663f_2.conda + sha256: 44492ea7d2ab56f510d581c661f1795a6af2bbd4496b8f86173efaf4c8a8cf5f + md5: 0e2eb9be6c25d5a0c68e355be381cfef depends: - __osx >=10.13 - libcxx >=16 - - tbb 2021.12.0 h3c5361c_1 - size: 1058748 - timestamp: 1716030884841 + - tbb 2021.12.0 h3c5361c_2 + size: 1057308 + timestamp: 1720077306876 - kind: conda name: tbb-devel version: 2021.12.0 @@ -8353,34 +8275,34 @@ packages: - kind: conda name: tbb-devel version: 2021.12.0 - build: h94f16c5_1 - build_number: 1 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/tbb-devel-2021.12.0-h94f16c5_1.conda - sha256: e8e77e7830cf5ae4cf9d21841ce0b333613fd3e0dc7efa70cfc1f11f54ce1379 - md5: 36632e54f2864b82bf76b4d017f0c0ee - depends: - - __osx >=11.0 - - libcxx >=16 - - tbb 2021.12.0 h420ef59_1 - size: 1057118 - timestamp: 1716030942305 -- kind: conda - name: tbb-devel - version: 2021.12.0 - build: hb551fcf_1 - build_number: 1 + build: h9a7971d_2 + build_number: 2 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/tbb-devel-2021.12.0-hb551fcf_1.conda - sha256: 0dac2867318c12575eb73e65aa9babd2fff1ec37068d0cc5d3fa942873af75bc - md5: ce48530b0800c691735f1b96c36cb842 + url: https://conda.anaconda.org/conda-forge/win-64/tbb-devel-2021.12.0-h9a7971d_2.conda + sha256: ab6f9bc5129016710fd7ac69508ed01c5b4f4896ba8dcadca38b86e2d4340e2b + md5: ecec92a681117f7a4d7d9db073de5e25 depends: - - tbb 2021.12.0 hc790b64_1 + - tbb 2021.12.0 hc790b64_2 - ucrt >=10.0.20348.0 - vc >=14.2,<15 - vc14_runtime >=14.29.30139 - size: 1066598 - timestamp: 1716031184519 + size: 1065375 + timestamp: 1720077724202 +- kind: conda + name: tbb-devel + version: 2021.12.0 + build: hdc09de8_2 + build_number: 2 + subdir: osx-arm64 + url: https://conda.anaconda.org/conda-forge/osx-arm64/tbb-devel-2021.12.0-hdc09de8_2.conda + sha256: 86d5e4589feffb5861d1c3887fdb7a3fcf1f69ca74cdc750b8d43313cd5a47a0 + md5: 9e3bbd6449d385b56890e2bcc220ead0 + depends: + - __osx >=11.0 + - libcxx >=16 + - tbb 2021.12.0 h420ef59_2 + size: 1058161 + timestamp: 1720077363787 - kind: conda name: tinyxml2 version: 10.0.0 @@ -8874,38 +8796,6 @@ packages: license_family: GPL size: 937077 timestamp: 1660323305349 -- kind: conda - name: x264 - version: 1!164.3095 - build: h8ffe710_2 - build_number: 2 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/x264-1!164.3095-h8ffe710_2.tar.bz2 - sha256: 97166b318f8c68ffe4d50b2f4bd36e415219eeaef233e7d41c54244dc6108249 - md5: 19e39905184459760ccb8cf5c75f148b - depends: - - vc >=14.1,<15 - - vs2015_runtime >=14.16.27033 - license: GPL-2.0-or-later - license_family: GPL - size: 1041889 - timestamp: 1660323726084 -- kind: conda - name: x265 - version: '3.5' - build: h2d74725_3 - build_number: 3 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/x265-3.5-h2d74725_3.tar.bz2 - sha256: 02b9874049112f2b7335c9a3e880ac05d99a08d9a98160c5a98898b2b3ac42b2 - md5: ca7129a334198f08347fb19ac98a2de9 - depends: - - vc >=14.1,<15 - - vs2015_runtime >=14.16.27033 - license: GPL-2.0-or-later - license_family: GPL - size: 5517425 - timestamp: 1646611941216 - kind: conda name: x265 version: '3.5' From 23b52dd4bb6d8459229bebfa2c9a0cf36e4662ae Mon Sep 17 00:00:00 2001 From: "Jeongseok (JS) Lee" Date: Wed, 3 Jul 2024 21:57:28 -0700 Subject: [PATCH 29/41] Set DART_ENABLE_SIMD=OFF by default (#1825) Signed-off-by: Jeongseok (JS) Lee --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index d4ba49eaa0717..84c9c1c7b0fee 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -85,7 +85,7 @@ endif() # compile options, which may cause runtime errors especially memory alignment # errors. dart_option(DART_ENABLE_SIMD - "Build DART with all SIMD instructions on the current local machine" ON) + "Build DART with all SIMD instructions on the current local machine" OFF) dart_option(DART_BUILD_GUI_OSG "Build osgDart library" ON) dart_option(DART_BUILD_DARTPY "Build dartpy" ON) dart_option(DART_BUILD_PROFILE "Build DART with profiling options" OFF) From 814628a858e9d50bc6664edb15dacf64f8c4f4fe Mon Sep 17 00:00:00 2001 From: Jeongseok Lee Date: Sat, 6 Jul 2024 00:15:12 -0700 Subject: [PATCH 30/41] [docker] Update DART version to 6.15 --- .devcontainer/Dockerfile | 2 +- .github/workflows/cache_docker.yml | 24 +++++++++---------- .github/workflows/ci_ubuntu.yml | 2 +- .../Dockerfile.manylinux_2_28_aarch64 | 2 +- .../Dockerfile.manylinux_2_28_aarch64-min | 0 .../Dockerfile.manylinux_2_28_ppc64le | 2 +- .../Dockerfile.manylinux_2_28_ppc64le-min | 0 .../Dockerfile.manylinux_2_28_s390x | 2 +- .../Dockerfile.manylinux_2_28_s390x-min | 0 .../Dockerfile.manylinux_2_28_x86_64 | 0 docker/dev/{v6.14 => v6.15}/Dockerfile.tracy | 0 .../{v6.14 => v6.15}/Dockerfile.ubuntu.jammy | 0 .../{v6.14 => v6.15}/Dockerfile.ubuntu.noble | 0 .../Dockerfile.ubuntu.oracular | 0 pyproject.toml | 8 +++---- scripts/run | 4 ++-- 16 files changed, 23 insertions(+), 23 deletions(-) rename docker/dev/{v6.14 => v6.15}/Dockerfile.manylinux_2_28_aarch64 (88%) rename docker/dev/{v6.14 => v6.15}/Dockerfile.manylinux_2_28_aarch64-min (100%) rename docker/dev/{v6.14 => v6.15}/Dockerfile.manylinux_2_28_ppc64le (88%) rename docker/dev/{v6.14 => v6.15}/Dockerfile.manylinux_2_28_ppc64le-min (100%) rename docker/dev/{v6.14 => v6.15}/Dockerfile.manylinux_2_28_s390x (88%) rename docker/dev/{v6.14 => v6.15}/Dockerfile.manylinux_2_28_s390x-min (100%) rename docker/dev/{v6.14 => v6.15}/Dockerfile.manylinux_2_28_x86_64 (100%) rename docker/dev/{v6.14 => v6.15}/Dockerfile.tracy (100%) rename docker/dev/{v6.14 => v6.15}/Dockerfile.ubuntu.jammy (100%) rename docker/dev/{v6.14 => v6.15}/Dockerfile.ubuntu.noble (100%) rename docker/dev/{v6.14 => v6.15}/Dockerfile.ubuntu.oracular (100%) diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index b38c5678b9bfc..42c7ca8beaa72 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -1,2 +1,2 @@ -FROM jslee02/dart-dev:ubuntu-jammy-v6.14 +FROM jslee02/dart-dev:ubuntu-jammy-v6.15 diff --git a/.github/workflows/cache_docker.yml b/.github/workflows/cache_docker.yml index a5559ce8db0ef..010458491792e 100644 --- a/.github/workflows/cache_docker.yml +++ b/.github/workflows/cache_docker.yml @@ -30,7 +30,7 @@ jobs: fail-fast: false matrix: distro: [jammy, noble, oracular] - dart_version: [v6.14] + dart_version: [v6.15] platforms: ["linux/amd64,linux/arm64,linux/ppc64le,linux/s390x"] build_min: [OFF] env: @@ -82,28 +82,28 @@ jobs: base_image: [quay.io/pypa/manylinux_2_28_x86_64] image: [manylinux_2_28_x86_64] platforms: ["linux/amd64"] - dart_version: [v6.14] + dart_version: [v6.15] experimental: [false] include: - dockerfile: Dockerfile.manylinux_2_28_aarch64-min base_image: quay.io/pypa/manylinux_2_28_aarch64 image: manylinux_2_28_aarch64-min platforms: "linux/arm64" - dart_version: v6.14 + dart_version: v6.15 experimental: false - dockerfile: Dockerfile.manylinux_2_28_ppc64le-min base_image: quay.io/pypa/manylinux_2_28_ppc64le image: manylinux_2_28_ppc64le-min platforms: "linux/ppc64le" - dart_version: v6.14 + dart_version: v6.15 experimental: false - dockerfile: Dockerfile.manylinux_2_28_s390x-min base_image: quay.io/pypa/manylinux_2_28_s390x image: manylinux_2_28_s390x-min platforms: "linux/s390x" - dart_version: v6.14 + dart_version: v6.15 experimental: false steps: # https://github.com/marketplace/actions/docker-setup-qemu @@ -141,24 +141,24 @@ jobs: fail-fast: false matrix: dockerfile: [Dockerfile.manylinux_2_28_aarch64] - base_image: ["jslee02/dart-dev:manylinux_2_28_aarch64-min-v6.14"] + base_image: ["jslee02/dart-dev:manylinux_2_28_aarch64-min-v6.15"] image: [manylinux_2_28_aarch64] platforms: ["linux/arm64"] - dart_version: [v6.14] + dart_version: [v6.15] experimental: [false] include: - dockerfile: Dockerfile.manylinux_2_28_ppc64le - base_image: jslee02/dart-dev:manylinux_2_28_ppc64le-min-v6.14 + base_image: jslee02/dart-dev:manylinux_2_28_ppc64le-min-v6.15 image: manylinux_2_28_ppc64le platforms: "linux/ppc64le" - dart_version: v6.14 + dart_version: v6.15 experimental: false - dockerfile: Dockerfile.manylinux_2_28_s390x - base_image: jslee02/dart-dev:manylinux_2_28_s390x-min-v6.14 + base_image: jslee02/dart-dev:manylinux_2_28_s390x-min-v6.15 image: manylinux_2_28_s390x platforms: "linux/s390x" - dart_version: v6.14 + dart_version: v6.15 experimental: false steps: # https://github.com/marketplace/actions/docker-setup-qemu @@ -193,7 +193,7 @@ jobs: strategy: fail-fast: false matrix: - dart_version: [v6.14] + dart_version: [v6.15] build_min: [ON] env: OS_VERSION: tracy diff --git a/.github/workflows/ci_ubuntu.yml b/.github/workflows/ci_ubuntu.yml index 0040d27fbd8e0..01215318b4e1e 100644 --- a/.github/workflows/ci_ubuntu.yml +++ b/.github/workflows/ci_ubuntu.yml @@ -46,7 +46,7 @@ jobs: env: # Hosted on: https://hub.docker.com/repository/docker/jslee02/dart-dev DART_DEV_IMAGE: jslee02/dart-dev - DOCKER_TAG: ${{ matrix.os }}-v6.14 + DOCKER_TAG: ${{ matrix.os }}-v6.15 PLATFORM: linux/amd64 COMPILER: gcc BUILD_TYPE: ${{ matrix.build_type }} diff --git a/docker/dev/v6.14/Dockerfile.manylinux_2_28_aarch64 b/docker/dev/v6.15/Dockerfile.manylinux_2_28_aarch64 similarity index 88% rename from docker/dev/v6.14/Dockerfile.manylinux_2_28_aarch64 rename to docker/dev/v6.15/Dockerfile.manylinux_2_28_aarch64 index 15e8cf44071b0..600bedb083c2b 100644 --- a/docker/dev/v6.14/Dockerfile.manylinux_2_28_aarch64 +++ b/docker/dev/v6.15/Dockerfile.manylinux_2_28_aarch64 @@ -1,4 +1,4 @@ -ARG BASE_IMAGE=jslee02/dart-dev:manylinux_2_28_aarch64-min-v6.14 +ARG BASE_IMAGE=jslee02/dart-dev:manylinux_2_28_aarch64-min-v6.15 FROM $BASE_IMAGE ARG NUM_CORES=14 diff --git a/docker/dev/v6.14/Dockerfile.manylinux_2_28_aarch64-min b/docker/dev/v6.15/Dockerfile.manylinux_2_28_aarch64-min similarity index 100% rename from docker/dev/v6.14/Dockerfile.manylinux_2_28_aarch64-min rename to docker/dev/v6.15/Dockerfile.manylinux_2_28_aarch64-min diff --git a/docker/dev/v6.14/Dockerfile.manylinux_2_28_ppc64le b/docker/dev/v6.15/Dockerfile.manylinux_2_28_ppc64le similarity index 88% rename from docker/dev/v6.14/Dockerfile.manylinux_2_28_ppc64le rename to docker/dev/v6.15/Dockerfile.manylinux_2_28_ppc64le index 58e180c7b096c..f8ee36cb8bf4c 100644 --- a/docker/dev/v6.14/Dockerfile.manylinux_2_28_ppc64le +++ b/docker/dev/v6.15/Dockerfile.manylinux_2_28_ppc64le @@ -1,4 +1,4 @@ -ARG BASE_IMAGE=jslee02/dart-dev:manylinux_2_28_ppc64le-min-v6.14 +ARG BASE_IMAGE=jslee02/dart-dev:manylinux_2_28_ppc64le-min-v6.15 FROM $BASE_IMAGE ARG NUM_CORES=14 diff --git a/docker/dev/v6.14/Dockerfile.manylinux_2_28_ppc64le-min b/docker/dev/v6.15/Dockerfile.manylinux_2_28_ppc64le-min similarity index 100% rename from docker/dev/v6.14/Dockerfile.manylinux_2_28_ppc64le-min rename to docker/dev/v6.15/Dockerfile.manylinux_2_28_ppc64le-min diff --git a/docker/dev/v6.14/Dockerfile.manylinux_2_28_s390x b/docker/dev/v6.15/Dockerfile.manylinux_2_28_s390x similarity index 88% rename from docker/dev/v6.14/Dockerfile.manylinux_2_28_s390x rename to docker/dev/v6.15/Dockerfile.manylinux_2_28_s390x index a3b5648d5127b..503c686bb6ce5 100644 --- a/docker/dev/v6.14/Dockerfile.manylinux_2_28_s390x +++ b/docker/dev/v6.15/Dockerfile.manylinux_2_28_s390x @@ -1,4 +1,4 @@ -ARG BASE_IMAGE=jslee02/dart-dev:manylinux_2_28_s390x-min-v6.14 +ARG BASE_IMAGE=jslee02/dart-dev:manylinux_2_28_s390x-min-v6.15 FROM $BASE_IMAGE ARG NUM_CORES=14 diff --git a/docker/dev/v6.14/Dockerfile.manylinux_2_28_s390x-min b/docker/dev/v6.15/Dockerfile.manylinux_2_28_s390x-min similarity index 100% rename from docker/dev/v6.14/Dockerfile.manylinux_2_28_s390x-min rename to docker/dev/v6.15/Dockerfile.manylinux_2_28_s390x-min diff --git a/docker/dev/v6.14/Dockerfile.manylinux_2_28_x86_64 b/docker/dev/v6.15/Dockerfile.manylinux_2_28_x86_64 similarity index 100% rename from docker/dev/v6.14/Dockerfile.manylinux_2_28_x86_64 rename to docker/dev/v6.15/Dockerfile.manylinux_2_28_x86_64 diff --git a/docker/dev/v6.14/Dockerfile.tracy b/docker/dev/v6.15/Dockerfile.tracy similarity index 100% rename from docker/dev/v6.14/Dockerfile.tracy rename to docker/dev/v6.15/Dockerfile.tracy diff --git a/docker/dev/v6.14/Dockerfile.ubuntu.jammy b/docker/dev/v6.15/Dockerfile.ubuntu.jammy similarity index 100% rename from docker/dev/v6.14/Dockerfile.ubuntu.jammy rename to docker/dev/v6.15/Dockerfile.ubuntu.jammy diff --git a/docker/dev/v6.14/Dockerfile.ubuntu.noble b/docker/dev/v6.15/Dockerfile.ubuntu.noble similarity index 100% rename from docker/dev/v6.14/Dockerfile.ubuntu.noble rename to docker/dev/v6.15/Dockerfile.ubuntu.noble diff --git a/docker/dev/v6.14/Dockerfile.ubuntu.oracular b/docker/dev/v6.15/Dockerfile.ubuntu.oracular similarity index 100% rename from docker/dev/v6.14/Dockerfile.ubuntu.oracular rename to docker/dev/v6.15/Dockerfile.ubuntu.oracular diff --git a/pyproject.toml b/pyproject.toml index 0c4477b105981..25798b898e1d1 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -33,10 +33,10 @@ testpaths = ["tests"] # https://cibuildwheel.readthedocs.io/en/stable/options/#before-all [tool.cibuildwheel] -manylinux-x86_64-image = "jslee02/dart-dev:manylinux_2_28_x86_64-v6.14" -manylinux-aarch64-image = "jslee02/dart-dev:manylinux_2_28_aarch64-v6.14" -manylinux-pypy_x86_64-image = "jslee02/dart-dev:manylinux_2_28_x86_64-v6.14" -manylinux-pypy_aarch64-image = "jslee02/dart-dev:manylinux_2_28_aarch64-v6.14" +manylinux-x86_64-image = "jslee02/dart-dev:manylinux_2_28_x86_64-v6.15" +manylinux-aarch64-image = "jslee02/dart-dev:manylinux_2_28_aarch64-v6.15" +manylinux-pypy_x86_64-image = "jslee02/dart-dev:manylinux_2_28_x86_64-v6.15" +manylinux-pypy_aarch64-image = "jslee02/dart-dev:manylinux_2_28_aarch64-v6.15" test-requires = "pytest" test-command = "pytest {project}/python/tests" # https://cibuildwheel.readthedocs.io/en/stable/options/#build-skip diff --git a/scripts/run b/scripts/run index 8f89ef33bbdf0..80c68545b485c 100755 --- a/scripts/run +++ b/scripts/run @@ -7,7 +7,7 @@ script_path="$( )" os=ubuntu-focal -dart_version=v6.14 +dart_version=v6.15 build_dir_prefix=.build/ project_dir=/opt/dart/ cleanup_command="" @@ -34,7 +34,7 @@ help() { Options: -o OS version. Available : {ubuntu-bionic, ubuntu-focal (default), ubuntu-impish} - -v DART version. Available : {v6.14 (default)} + -v DART version. Available : {v6.15 (default)} -c Clean build. Empty the build directory before building. -j Number of cores to use for build. Use -j 1 to disable parallel build. Single core will be used if this option is not specified. --dev Use Docker image for development rather than release image. From 50adcf25f21d6d3d3962ca6d84023fa395bffc01 Mon Sep 17 00:00:00 2001 From: Jeongseok Lee Date: Sat, 6 Jul 2024 00:34:48 -0700 Subject: [PATCH 31/41] [ci] Use noble as default --- .github/workflows/ci_ubuntu.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci_ubuntu.yml b/.github/workflows/ci_ubuntu.yml index 01215318b4e1e..83bd6b22ba0d8 100644 --- a/.github/workflows/ci_ubuntu.yml +++ b/.github/workflows/ci_ubuntu.yml @@ -37,7 +37,7 @@ jobs: enable_simd: [ON] include: # For code coverage report to Codecov - - os: ubuntu-jammy + - os: ubuntu-noble build_type: Debug codecov: ON check_format: ON From 58a8aeae31f855e7eed8509fd49c87a1950f58b6 Mon Sep 17 00:00:00 2001 From: Jeongseok Lee Date: Sat, 6 Jul 2024 09:23:21 -0700 Subject: [PATCH 32/41] [ci] Add oracular job --- .github/workflows/ci_ubuntu.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci_ubuntu.yml b/.github/workflows/ci_ubuntu.yml index 83bd6b22ba0d8..c4733c42b084c 100644 --- a/.github/workflows/ci_ubuntu.yml +++ b/.github/workflows/ci_ubuntu.yml @@ -29,7 +29,7 @@ jobs: fail-fast: false matrix: # Supported LTS versions - os: [ubuntu-jammy, ubuntu-noble] + os: [ubuntu-jammy, ubuntu-noble, ubuntu-oracular] build_type: [Release] codecov: [OFF] check_format: [OFF] From 654a883fd669880ae26491bac15392f3d6d546a3 Mon Sep 17 00:00:00 2001 From: Jeongseok Lee Date: Sun, 7 Jul 2024 12:54:21 -0700 Subject: [PATCH 33/41] [ci] Use jammy for codecov --- .github/workflows/ci_ubuntu.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci_ubuntu.yml b/.github/workflows/ci_ubuntu.yml index c4733c42b084c..34084e0fc82be 100644 --- a/.github/workflows/ci_ubuntu.yml +++ b/.github/workflows/ci_ubuntu.yml @@ -37,7 +37,7 @@ jobs: enable_simd: [ON] include: # For code coverage report to Codecov - - os: ubuntu-noble + - os: ubuntu-jammy build_type: Debug codecov: ON check_format: ON From 094010ec9d229049219f75071606ec5667058006 Mon Sep 17 00:00:00 2001 From: Jeongseok Lee Date: Sun, 7 Jul 2024 15:20:17 -0700 Subject: [PATCH 34/41] Set DART_BUILD_DARTPY=OFF by default --- CMakeLists.txt | 2 +- scripts/build.sh | 1 + setup.py | 1 + 3 files changed, 3 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 84c9c1c7b0fee..ca875fc385ca4 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -87,7 +87,7 @@ endif() dart_option(DART_ENABLE_SIMD "Build DART with all SIMD instructions on the current local machine" OFF) dart_option(DART_BUILD_GUI_OSG "Build osgDart library" ON) -dart_option(DART_BUILD_DARTPY "Build dartpy" ON) +dart_option(DART_BUILD_DARTPY "Build dartpy" OFF) dart_option(DART_BUILD_PROFILE "Build DART with profiling options" OFF) dart_option(DART_CODECOV "Turn on codecov support" OFF) dart_option(DART_FAST_DEBUG "Add -O1 option for DEBUG mode build" OFF) diff --git a/scripts/build.sh b/scripts/build.sh index 69aefb22688d9..ecd3b11f507a2 100755 --- a/scripts/build.sh +++ b/scripts/build.sh @@ -192,6 +192,7 @@ cmake \ -DDART_TREAT_WARNINGS_AS_ERRORS=ON \ -DDART_CODECOV=$CODECOV \ -DDART_ENABLE_SIMD=$ENABLE_SIMD \ + -DDART_BUILD_DARTPY=$BUILD_DARTPY \ ${install_prefix_option} \ ${cmake_args} diff --git a/setup.py b/setup.py index d9a9f8c49eced..242c2a5b140b3 100644 --- a/setup.py +++ b/setup.py @@ -71,6 +71,7 @@ def build_extension(self, ext: CMakeExtension) -> None: f"-DPYTHON_EXECUTABLE={sys.executable}", f"-DCMAKE_BUILD_TYPE={cfg}", # not used on MSVC, but no harm f"-DBUILD_SHARED_LIBS=OFF", + f"-DDART_BUILD_DARTPY=ON", f"-DDART_ENABLE_SIMD=OFF", f"-DDART_BUILD_WHEELS=ON", f"-DDART_TREAT_WARNINGS_AS_ERRORS=OFF", From 5a849d18a3f74f5b568a9c421304091c550f59d6 Mon Sep 17 00:00:00 2001 From: Jeongseok Lee Date: Sun, 7 Jul 2024 20:15:30 -0700 Subject: [PATCH 35/41] [py] Remove OpenCL settings in setup.py --- setup.py | 16 ---------------- 1 file changed, 16 deletions(-) diff --git a/setup.py b/setup.py index 242c2a5b140b3..0940f8f8f1b13 100644 --- a/setup.py +++ b/setup.py @@ -136,22 +136,6 @@ def build_extension(self, ext: CMakeExtension) -> None: "-DCMAKE_OSX_ARCHITECTURES={}".format(";".join(archs)) ) - # Get the location of Homebrew prefix and specify the location of OpenCL headers for macOS - homebrew_prefix = ( - subprocess.check_output(["brew", "--prefix"]).decode().strip() - ) - opencl_headers_dir = ( - f"{homebrew_prefix}/opt/opencl-headers/share/cmake/OpenCLHeaders" - ) - opencl_headerscpp_dir = f"{homebrew_prefix}/opt/opencl-clhpp-headers/share/cmake/OpenCLHeadersCpp" - cmake_args.extend( - [ - f"-DOpenCLHeaders_DIR={opencl_headers_dir}", - f"-DOpenCLHeadersCpp_DIR={opencl_headerscpp_dir}", - f"-DCMAKE_PREFIX_PATH={homebrew_prefix}", - ] - ) - print(f"[DEBUG] cmake_args: {cmake_args}") # Set CMAKE_BUILD_PARALLEL_LEVEL to control the parallel build level From 4651fb619f80d8b90b8a7b320a6cd4613b1ad8fc Mon Sep 17 00:00:00 2001 From: Henrique Antonio Lustosa Ribeiro Silva Date: Sat, 13 Jul 2024 14:32:56 -0300 Subject: [PATCH 36/41] Fix in solution --- dart/collision/ode/OdeCollisionDetector.cpp | 49 ++++++++++++--------- 1 file changed, 29 insertions(+), 20 deletions(-) diff --git a/dart/collision/ode/OdeCollisionDetector.cpp b/dart/collision/ode/OdeCollisionDetector.cpp index 9008bfe277c0d..fe0ddfe453eb4 100644 --- a/dart/collision/ode/OdeCollisionDetector.cpp +++ b/dart/collision/ode/OdeCollisionDetector.cpp @@ -49,7 +49,7 @@ #include #include -#include +#include namespace dart { namespace collision { @@ -82,7 +82,7 @@ struct obj_pair_hash { } }; -using ContactManifold = std::unordered_map,obj_pair_hash>; +using ContactManifold = std::unordered_map,obj_pair_hash>; ContactManifold pastContacts; struct OdeCollisionCallbackData @@ -103,11 +103,9 @@ struct OdeCollisionCallbackData /// result. std::size_t numContacts; - std::unordered_set hits; - OdeCollisionCallbackData( const CollisionOption& option, CollisionResult* result) - : option(option), result(result), done(false), numContacts(0u), hits{{}} + : option(option), result(result), done(false), numContacts(0u) { // Do nothing } @@ -179,9 +177,19 @@ bool OdeCollisionDetector::collide( dSpaceCollide(odeGroup->getOdeSpaceId(), &data, CollisionCallback); for (auto& pair : pastContacts) { - if (data.hits.find(pair.first) == data.hits.end()) { + auto obj1 = pair.first.first; + auto obj2 = pair.first.second; + bool clear = true; + for (const auto& cont : result->getContacts()) { + if ((obj1 == cont.collisionObject1 && obj2 == cont.collisionObject2) || +(obj1 == cont.collisionObject1 && obj2 == cont.collisionObject2) ) { + clear = false; + break; + } + } + if (clear) { pair.second.clear(); - } + } } return data.numContacts > 0; @@ -310,7 +318,6 @@ void CollisionCallback(void* data, dGeomID o1, dGeomID o2) if (result) { reportContacts(numc, odeResult, collObj1, collObj2, option, *result); - cdData->hits.insert(std::make_pair(collObj1, collObj2)); } } @@ -333,25 +340,21 @@ void reportContacts( result.addContact(convertContact(contactGeoms[0], b1, b2, option)); return; } - + std::cout << "numContacts: " << numContacts << "\n"; for (auto i = 0; i < numContacts; ++i) { result.addContact(convertContact(contactGeoms[i], b1, b2, option)); } - const auto pair = std::make_pair(std::move(b1), std::move(b2)); - auto it = pastContacts.find(pair); - if(it == pastContacts.end()) { - pastContacts[pair] = std::vector{}; - it = pastContacts.find(pair); - } - + const auto pair = std::make_pair(b1, b2); auto& pastContacsVec = pastContacts[pair]; auto missing = 3 - numContacts; auto results_vec_copy = result.getContacts(); - for (const auto& past_cont : pastContacsVec) { + // for (const auto& past_cont : pastContacsVec) { + for (auto it = pastContacsVec.rbegin(); it != pastContacsVec.rend(); ++it) { if (missing <= 0) break; + auto past_cont = *it; for (const auto& curr_cont : results_vec_copy) { auto dist_v = past_cont.point - curr_cont.point; const auto dist_m = (dist_v.transpose() * dist_v).coeff(0,0); @@ -365,11 +368,17 @@ void reportContacts( } } for(const auto& item : results_vec_copy) { - pastContacsVec.push_back(item); + if ((pair.first == item.collisionObject1 && pair.second == item.collisionObject2) || + (pair.first == item.collisionObject2 && pair.second == item.collisionObject1)) { + pastContacsVec.push_back(item); + } } - if(pastContacsVec.size() > 10) { - pastContacsVec = std::vector(pastContacsVec.begin() + pastContacsVec.size() - 10, pastContacsVec.end()); + const auto size = pastContacsVec.size(); + if(size > 5) { + // std::cout << "srhinking from size: " << size << "\n"; + pastContacsVec.erase(pastContacsVec.begin(), pastContacsVec.end() - 5); + // std::cout << "New size: " << pastContacsVec.size() << "\n"; } } From 44bc4dbbb3e98fac99392adcba764f74b4b407f7 Mon Sep 17 00:00:00 2001 From: Henrique Antonio Lustosa Ribeiro Silva Date: Sat, 13 Jul 2024 14:46:39 -0300 Subject: [PATCH 37/41] Remove couts --- dart/collision/ode/OdeCollisionDetector.cpp | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/dart/collision/ode/OdeCollisionDetector.cpp b/dart/collision/ode/OdeCollisionDetector.cpp index fe0ddfe453eb4..081510c915dc5 100644 --- a/dart/collision/ode/OdeCollisionDetector.cpp +++ b/dart/collision/ode/OdeCollisionDetector.cpp @@ -340,7 +340,7 @@ void reportContacts( result.addContact(convertContact(contactGeoms[0], b1, b2, option)); return; } - std::cout << "numContacts: " << numContacts << "\n"; + for (auto i = 0; i < numContacts; ++i) { result.addContact(convertContact(contactGeoms[i], b1, b2, option)); } @@ -376,9 +376,7 @@ void reportContacts( const auto size = pastContacsVec.size(); if(size > 5) { - // std::cout << "srhinking from size: " << size << "\n"; pastContacsVec.erase(pastContacsVec.begin(), pastContacsVec.end() - 5); - // std::cout << "New size: " << pastContacsVec.size() << "\n"; } } From 1026f549cceeb39412346885154b37c56ca528fd Mon Sep 17 00:00:00 2001 From: Henrique Antonio Lustosa Ribeiro Silva Date: Sat, 13 Jul 2024 15:15:22 -0300 Subject: [PATCH 38/41] I think I fixed it --- dart/collision/ode/OdeCollisionDetector.cpp | 56 ++++++++++++++------- 1 file changed, 39 insertions(+), 17 deletions(-) diff --git a/dart/collision/ode/OdeCollisionDetector.cpp b/dart/collision/ode/OdeCollisionDetector.cpp index 081510c915dc5..a694a923b570e 100644 --- a/dart/collision/ode/OdeCollisionDetector.cpp +++ b/dart/collision/ode/OdeCollisionDetector.cpp @@ -33,6 +33,7 @@ #include "dart/collision/ode/OdeCollisionDetector.hpp" #include "dart/collision/CollisionFilter.hpp" +#include "dart/collision/Contact.hpp" #include "dart/collision/ode/OdeCollisionGroup.hpp" #include "dart/collision/ode/OdeCollisionObject.hpp" #include "dart/collision/ode/OdeTypes.hpp" @@ -50,6 +51,7 @@ #include #include #include +#include namespace dart { namespace collision { @@ -72,18 +74,34 @@ Contact convertContact( OdeCollisionObject* b2, const CollisionOption& option); -using CollObjPair = std::pair; -struct obj_pair_hash { - size_t operator()(const CollObjPair& p) const throw() { - auto less = std::min(p.first, p.second); - auto more = std::max(p.first, p.second); - auto h = std::hash{}; - return h(less) ^ h(more); - } +using CollObjPair = std::pair; + +struct ContactHistoryItem { + CollObjPair pair; + std::deque history; + ContactHistoryItem() = delete; }; -using ContactManifold = std::unordered_map,obj_pair_hash>; -ContactManifold pastContacts; +// using ContactManifold = std::unordered_map,obj_pair_hash>; +std::vector pastContacts; + +CollObjPair MakeNewPair(CollisionObject* o1, CollisionObject* o2) +{ + return std::make_pair(std::min(o1,o2), std::max(o1, o2)); +} + +std::deque& FindPairInHist(const CollObjPair& pair) +{ + for(auto& item : pastContacts) { + if(pair.first == item.pair.first && pair.second == item.pair.second) { + return item.history; + } + } + auto newItem = ContactHistoryItem{pair, std::deque()}; + pastContacts.push_back(newItem); + + return pastContacts.back().history; +} struct OdeCollisionCallbackData { @@ -177,8 +195,8 @@ bool OdeCollisionDetector::collide( dSpaceCollide(odeGroup->getOdeSpaceId(), &data, CollisionCallback); for (auto& pair : pastContacts) { - auto obj1 = pair.first.first; - auto obj2 = pair.first.second; + auto obj1 = pair.pair.first; + auto obj2 = pair.pair.second; bool clear = true; for (const auto& cont : result->getContacts()) { if ((obj1 == cont.collisionObject1 && obj2 == cont.collisionObject2) || @@ -188,7 +206,7 @@ bool OdeCollisionDetector::collide( } } if (clear) { - pair.second.clear(); + pair.history.clear(); } } @@ -345,9 +363,9 @@ void reportContacts( result.addContact(convertContact(contactGeoms[i], b1, b2, option)); } - const auto pair = std::make_pair(b1, b2); + const auto pair = MakeNewPair(b1, b2); - auto& pastContacsVec = pastContacts[pair]; + auto& pastContacsVec = FindPairInHist(pair); auto missing = 3 - numContacts; auto results_vec_copy = result.getContacts(); @@ -356,6 +374,10 @@ void reportContacts( if (missing <= 0) break; auto past_cont = *it; for (const auto& curr_cont : results_vec_copy) { + const auto res_pair = MakeNewPair(curr_cont.collisionObject1, curr_cont.collisionObject2); + if(res_pair != pair) { + continue; + } auto dist_v = past_cont.point - curr_cont.point; const auto dist_m = (dist_v.transpose() * dist_v).coeff(0,0); if (dist_m < 0.001) { @@ -368,8 +390,8 @@ void reportContacts( } } for(const auto& item : results_vec_copy) { - if ((pair.first == item.collisionObject1 && pair.second == item.collisionObject2) || - (pair.first == item.collisionObject2 && pair.second == item.collisionObject1)) { + const auto res_pair = MakeNewPair(item.collisionObject1, item.collisionObject2); + if (res_pair == pair) { pastContacsVec.push_back(item); } } From 2312d16323b3680b927226652cb10757c7a14828 Mon Sep 17 00:00:00 2001 From: Henrique Antonio Lustosa Ribeiro Silva Date: Sun, 14 Jul 2024 10:22:16 -0300 Subject: [PATCH 39/41] Another fix in solution --- dart/collision/ode/OdeCollisionDetector.cpp | 43 +++++++++++++-------- 1 file changed, 27 insertions(+), 16 deletions(-) diff --git a/dart/collision/ode/OdeCollisionDetector.cpp b/dart/collision/ode/OdeCollisionDetector.cpp index a694a923b570e..21bfbb65c665d 100644 --- a/dart/collision/ode/OdeCollisionDetector.cpp +++ b/dart/collision/ode/OdeCollisionDetector.cpp @@ -194,19 +194,21 @@ bool OdeCollisionDetector::collide( dSpaceCollide(odeGroup->getOdeSpaceId(), &data, CollisionCallback); - for (auto& pair : pastContacts) { - auto obj1 = pair.pair.first; - auto obj2 = pair.pair.second; + for (auto& past_contact : pastContacts) { bool clear = true; - for (const auto& cont : result->getContacts()) { - if ((obj1 == cont.collisionObject1 && obj2 == cont.collisionObject2) || -(obj1 == cont.collisionObject1 && obj2 == cont.collisionObject2) ) { - clear = false; - break; - } + for (const auto& curr_result : result->getContacts()) { + auto current_pair = MakeNewPair(curr_result.collisionObject1, curr_result.collisionObject2); + if (past_contact.pair == current_pair) { + clear = false; + break; + } } if (clear) { - pair.history.clear(); + // std::cout << "Cleaning history of pair " + // << past_contact.pair.first + // << past_contact.pair.second + // << "\n"; + past_contact.history.clear(); } } @@ -363,13 +365,19 @@ void reportContacts( result.addContact(convertContact(contactGeoms[i], b1, b2, option)); } - const auto pair = MakeNewPair(b1, b2); + auto missing = 3 - numContacts; + if (missing <= 0) { + // std::cout << "----------------------------------------\n"; + return; + } + const auto pair = MakeNewPair(b1, b2); auto& pastContacsVec = FindPairInHist(pair); - auto missing = 3 - numContacts; auto results_vec_copy = result.getContacts(); - // for (const auto& past_cont : pastContacsVec) { + // std::cout << "Num contacts found for" + // "(" << pair.first << "," << pair.second << ") : " << numContacts << "\n"; + // std::cout << "History size: " << pastContacsVec.size() << "\n"; for (auto it = pastContacsVec.rbegin(); it != pastContacsVec.rend(); ++it) { if (missing <= 0) break; auto past_cont = *it; @@ -380,7 +388,7 @@ void reportContacts( } auto dist_v = past_cont.point - curr_cont.point; const auto dist_m = (dist_v.transpose() * dist_v).coeff(0,0); - if (dist_m < 0.001) { + if (dist_m < 0.01) { continue; } else { @@ -393,13 +401,16 @@ void reportContacts( const auto res_pair = MakeNewPair(item.collisionObject1, item.collisionObject2); if (res_pair == pair) { pastContacsVec.push_back(item); + // std::cout << "Adding New pair to history - now of size: " << + // FindPairInHist(res_pair).size() << "\n"; } } const auto size = pastContacsVec.size(); - if(size > 5) { - pastContacsVec.erase(pastContacsVec.begin(), pastContacsVec.end() - 5); + if(size > 11) { + pastContacsVec.erase(pastContacsVec.begin(), pastContacsVec.end() - 5); } + // std::cout << "----------------------------------------\n"; } From a22138654294c5cdf5310f56be5b7db8d956ec10 Mon Sep 17 00:00:00 2001 From: Henrique Antonio Lustosa Ribeiro Silva Date: Tue, 23 Jul 2024 08:02:38 -0300 Subject: [PATCH 40/41] Clang-format --- dart/collision/ode/OdeCollisionDetector.cpp | 125 +++++++++----------- tests/integration/test_Collision.cpp | 4 +- tests/regression/test_Issue1654.cpp | 47 ++++---- 3 files changed, 83 insertions(+), 93 deletions(-) diff --git a/dart/collision/ode/OdeCollisionDetector.cpp b/dart/collision/ode/OdeCollisionDetector.cpp index 21bfbb65c665d..027e8513a806d 100644 --- a/dart/collision/ode/OdeCollisionDetector.cpp +++ b/dart/collision/ode/OdeCollisionDetector.cpp @@ -49,8 +49,9 @@ #include "dart/dynamics/SphereShape.hpp" #include -#include + #include +#include #include namespace dart { @@ -74,33 +75,35 @@ Contact convertContact( OdeCollisionObject* b2, const CollisionOption& option); -using CollObjPair = std::pair; +using CollObjPair = std::pair; -struct ContactHistoryItem { - CollObjPair pair; - std::deque history; - ContactHistoryItem() = delete; +struct ContactHistoryItem +{ + CollObjPair pair; + std::deque history; + ContactHistoryItem() = delete; }; -// using ContactManifold = std::unordered_map,obj_pair_hash>; +// using ContactManifold = std::unordered_map,obj_pair_hash>; std::vector pastContacts; CollObjPair MakeNewPair(CollisionObject* o1, CollisionObject* o2) { - return std::make_pair(std::min(o1,o2), std::max(o1, o2)); + return std::make_pair(std::min(o1, o2), std::max(o1, o2)); } -std::deque& FindPairInHist(const CollObjPair& pair) +std::deque& FindPairInHist(const CollObjPair& pair) { - for(auto& item : pastContacts) { - if(pair.first == item.pair.first && pair.second == item.pair.second) { - return item.history; - } + for (auto& item : pastContacts) { + if (pair.first == item.pair.first && pair.second == item.pair.second) { + return item.history; } - auto newItem = ContactHistoryItem{pair, std::deque()}; - pastContacts.push_back(newItem); + } + auto newItem = ContactHistoryItem{pair, std::deque()}; + pastContacts.push_back(newItem); - return pastContacts.back().history; + return pastContacts.back().history; } struct OdeCollisionCallbackData @@ -191,25 +194,22 @@ bool OdeCollisionDetector::collide( OdeCollisionCallbackData data(option, result); data.contactGeoms = contactCollisions; - + dSpaceCollide(odeGroup->getOdeSpaceId(), &data, CollisionCallback); for (auto& past_contact : pastContacts) { - bool clear = true; - for (const auto& curr_result : result->getContacts()) { - auto current_pair = MakeNewPair(curr_result.collisionObject1, curr_result.collisionObject2); - if (past_contact.pair == current_pair) { - clear = false; - break; - } - } - if (clear) { - // std::cout << "Cleaning history of pair " - // << past_contact.pair.first - // << past_contact.pair.second - // << "\n"; - past_contact.history.clear(); + bool clear = true; + for (const auto& curr_result : result->getContacts()) { + auto current_pair = MakeNewPair( + curr_result.collisionObject1, curr_result.collisionObject2); + if (past_contact.pair == current_pair) { + clear = false; + break; } + } + if (clear) { + past_contact.history.clear(); + } } return data.numContacts > 0; @@ -339,7 +339,6 @@ void CollisionCallback(void* data, dGeomID o1, dGeomID o2) if (result) { reportContacts(numc, odeResult, collObj1, collObj2, option, *result); } - } //============================================================================== @@ -353,7 +352,7 @@ void reportContacts( { if (0u == numContacts) return; - + // For binary check, return after adding the first contact point to the result // without the checkings of repeatidity and co-linearity. if (1u == option.maxNumContacts) { @@ -362,58 +361,52 @@ void reportContacts( } for (auto i = 0; i < numContacts; ++i) { - result.addContact(convertContact(contactGeoms[i], b1, b2, option)); + result.addContact(convertContact(contactGeoms[i], b1, b2, option)); } auto missing = 3 - numContacts; if (missing <= 0) { - // std::cout << "----------------------------------------\n"; - return; + return; } const auto pair = MakeNewPair(b1, b2); auto& pastContacsVec = FindPairInHist(pair); auto results_vec_copy = result.getContacts(); - // std::cout << "Num contacts found for" - // "(" << pair.first << "," << pair.second << ") : " << numContacts << "\n"; - // std::cout << "History size: " << pastContacsVec.size() << "\n"; for (auto it = pastContacsVec.rbegin(); it != pastContacsVec.rend(); ++it) { - if (missing <= 0) break; - auto past_cont = *it; - for (const auto& curr_cont : results_vec_copy) { - const auto res_pair = MakeNewPair(curr_cont.collisionObject1, curr_cont.collisionObject2); - if(res_pair != pair) { - continue; - } - auto dist_v = past_cont.point - curr_cont.point; - const auto dist_m = (dist_v.transpose() * dist_v).coeff(0,0); - if (dist_m < 0.01) { - continue; - } - else { - --missing; - result.addContact(past_cont); - } + if (missing <= 0) + break; + auto past_cont = *it; + for (const auto& curr_cont : results_vec_copy) { + const auto res_pair + = MakeNewPair(curr_cont.collisionObject1, curr_cont.collisionObject2); + if (res_pair != pair) { + continue; } - } - for(const auto& item : results_vec_copy) { - const auto res_pair = MakeNewPair(item.collisionObject1, item.collisionObject2); - if (res_pair == pair) { - pastContacsVec.push_back(item); - // std::cout << "Adding New pair to history - now of size: " << - // FindPairInHist(res_pair).size() << "\n"; + auto dist_v = past_cont.point - curr_cont.point; + const auto dist_m = (dist_v.transpose() * dist_v).coeff(0, 0); + if (dist_m < 0.01) { + continue; + } else { + --missing; + result.addContact(past_cont); } + } + } + for (const auto& item : results_vec_copy) { + const auto res_pair + = MakeNewPair(item.collisionObject1, item.collisionObject2); + if (res_pair == pair) { + pastContacsVec.push_back(item); + } } const auto size = pastContacsVec.size(); - if(size > 11) { - pastContacsVec.erase(pastContacsVec.begin(), pastContacsVec.end() - 5); + if (size > 11) { + pastContacsVec.erase(pastContacsVec.begin(), pastContacsVec.end() - 5); } - // std::cout << "----------------------------------------\n"; } - //============================================================================== Contact convertContact( const dContactGeom& odeContact, diff --git a/tests/integration/test_Collision.cpp b/tests/integration/test_Collision.cpp index 3a6be4f2c9c69..553b9a26ffd96 100644 --- a/tests/integration/test_Collision.cpp +++ b/tests/integration/test_Collision.cpp @@ -483,8 +483,8 @@ void testSphereSphere( // TODO(JS): BulletCollisionDetector includes a bug related to this. // (see #876) #if HAVE_BULLET || HAVE_ODE - if (cd->getType() != BulletCollisionDetector::getStaticType() && - cd->getType() != OdeCollisionDetector::getStaticType()) + if (cd->getType() != BulletCollisionDetector::getStaticType() + && cd->getType() != OdeCollisionDetector::getStaticType()) #endif { EXPECT_EQ(result.getNumContacts(), 1u); diff --git a/tests/regression/test_Issue1654.cpp b/tests/regression/test_Issue1654.cpp index ef428c206b6b4..0bf5cea2a5103 100644 --- a/tests/regression/test_Issue1654.cpp +++ b/tests/regression/test_Issue1654.cpp @@ -30,28 +30,33 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include -#include +#include + +#include + +#include + +#include + #include #include -#include + #include #include #include #include #include #include -#include -#include +#include #include -#include +#include using namespace dart; -class CapsuleTest: public testing::Test, - public testing::WithParamInterface +class CapsuleTest : public testing::Test, + public testing::WithParamInterface { }; TEST_P(CapsuleTest, CapsuleCollision) @@ -61,17 +66,13 @@ TEST_P(CapsuleTest, CapsuleCollision) auto world = dart::simulation::World::create(); - if (strcmp(GetParam(), "bullet") == 0) - { + if (strcmp(GetParam(), "bullet") == 0) { world->getConstraintSolver()->setCollisionDetector( dart::collision::BulletCollisionDetector::create()); - } - else if (strcmp(GetParam(), "ode") == 0) - { + } else if (strcmp(GetParam(), "ode") == 0) { world->getConstraintSolver()->setCollisionDetector( dart::collision::OdeCollisionDetector::create()); - } - else { + } else { ASSERT_TRUE(false); } @@ -79,7 +80,7 @@ TEST_P(CapsuleTest, CapsuleCollision) ground->setMobile(false); world->addSkeleton(ground); - ::osg::ref_ptr node + ::osg::ref_ptr node = new gui::osg::RealTimeWorldNode(world); auto skeleton = dart::dynamics::Skeleton::create("test"); @@ -103,22 +104,18 @@ TEST_P(CapsuleTest, CapsuleCollision) inertia.setMass(1.0); inertia.setMoment(capsuleNode->getShape()->computeInertia(inertia.getMass())); bn->setInertia(inertia); - // std::cout << "Inertia: " << bn->getBodyNodeProperties().mInertia.getMoment() + // std::cout << "Inertia: " << + // bn->getBodyNodeProperties().mInertia.getMoment() // << std::endl; world->addSkeleton(skeleton); const double tolerance = 0.05; - for (int i = 1; i < 50000; ++i) - { + for (int i = 1; i < 50000; ++i) { world->step(); auto capsulePos = bn->getWorldTransform().translation(); - // std::cout << i << ": " << capsulePos.transpose() << std::endl; ASSERT_GT(capsulePos.z(), capsuleRadius - tolerance); } } -INSTANTIATE_TEST_CASE_P( - CollisionEngine, - CapsuleTest, - testing::Values("ode")); - // testing::Values("bullet", "ode")); +INSTANTIATE_TEST_CASE_P(CollisionEngine, CapsuleTest, testing::Values("ode")); +// testing::Values("bullet", "ode")); From aee3429f6bd5b1769b5a848f8b3c86d1a182d2e7 Mon Sep 17 00:00:00 2001 From: Henrique Antonio Lustosa Ribeiro Silva Date: Tue, 23 Jul 2024 14:45:03 -0300 Subject: [PATCH 41/41] Fix test --- tests/integration/test_Collision.cpp | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/tests/integration/test_Collision.cpp b/tests/integration/test_Collision.cpp index 553b9a26ffd96..ad8d35a91d540 100644 --- a/tests/integration/test_Collision.cpp +++ b/tests/integration/test_Collision.cpp @@ -482,11 +482,10 @@ void testSphereSphere( EXPECT_TRUE(group->collide(option, &result)); // TODO(JS): BulletCollisionDetector includes a bug related to this. // (see #876) -#if HAVE_BULLET || HAVE_ODE - if (cd->getType() != BulletCollisionDetector::getStaticType() - && cd->getType() != OdeCollisionDetector::getStaticType()) -#endif - { + + constexpr auto hasOde = (HAVE_ODE == 1); + constexpr auto hasBullet = (HAVE_BULLET == 1); + if constexpr (!hasOde && !hasBullet) { EXPECT_EQ(result.getNumContacts(), 1u); } for (auto i = 0u; i < result.getNumContacts(); ++i) {