From 1f815e43d7e31befd888304d9c82dfef967e4351 Mon Sep 17 00:00:00 2001 From: Henrique Ferrolho Date: Mon, 4 Nov 2024 08:41:47 +0000 Subject: [PATCH 01/11] Pass `vis` to `Animation` call --- src/animate.jl | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/animate.jl b/src/animate.jl index 36bc885..dc32676 100644 --- a/src/animate.jl +++ b/src/animate.jl @@ -1,5 +1,5 @@ """ - animate(vis::MechanismVisualizer, + animate(mvis::MechanismVisualizer, times::Vector{Float64}, configurations::Vector{Vector{Float64}}; fps::Float64=60, realtimerate::Float64=1.) @@ -7,14 +7,14 @@ Animate the given mechanism passing through a time-coded series of configurations by linearly interpolating the configuration vectors. """ -function animate(vis::MechanismVisualizer, +function animate(mvis::MechanismVisualizer, times::Vector{Float64}, configurations::AbstractVector{<:AbstractVector{Float64}}; fps::Float64 = 60., realtimerate::Float64 = 1.) @assert fps > 0 @assert 0 < realtimerate < Inf - state = vis.state + state = mvis.state interpolated_configurations = interpolate((times,), configurations, Gridded(Linear())) t0, tf = first(times), last(times) framenum = 0 @@ -24,19 +24,19 @@ function animate(vis::MechanismVisualizer, q = interpolated_configurations(t) set_configuration!(state, q) rbd.normalize_configuration!(state) - _render_state!(vis) + _render_state!(mvis) framenum += 1 t == tf && break end max_rate = fps end function MeshCat.Animation(mvis::MechanismVisualizer, - times::AbstractVector{<:Real}, - configurations::AbstractVector{<:AbstractVector{<:Real}}; - fps::Integer=30) + times::AbstractVector{<:Real}, + configurations::AbstractVector{<:AbstractVector{<:Real}}; + fps::Integer=30) @assert axes(times) == axes(configurations) interpolated_configurations = interpolate((times,), configurations, Gridded(Linear())) - animation = Animation() + animation = Animation(mvis.visualizer["/meshcat"]) num_frames = floor(Int, (times[end] - first(times)) * fps) for frame in 0 : num_frames time = first(times) + frame / fps From aae3c9ac2a0ad0f07292102e37274e8b8c5b779f Mon Sep 17 00:00:00 2001 From: Henrique Ferrolho Date: Mon, 4 Nov 2024 13:27:03 +0000 Subject: [PATCH 02/11] Use just `mvis.visualizer` --- Project.toml | 8 ++++---- examples/demo.ipynb | 25 ++++++++++--------------- examples/interactive_manipulation.ipynb | 15 ++++----------- src/animate.jl | 20 ++++++++++---------- 4 files changed, 28 insertions(+), 40 deletions(-) diff --git a/Project.toml b/Project.toml index 6b9d121..f6ceb45 100644 --- a/Project.toml +++ b/Project.toml @@ -1,6 +1,6 @@ name = "MeshCatMechanisms" uuid = "6ad125db-dd91-5488-b820-c1df6aab299d" -version = "0.9.0" +version = "0.9.1" [deps] ColorTypes = "3da002f7-5984-5a60-b8a6-cbb66c0b333f" @@ -15,14 +15,14 @@ OrderedCollections = "bac558e1-5e72-5ebc-8fee-abe8a469f55d" RigidBodyDynamics = "366cf18f-59d5-5db9-a4de-86a9f6786172" [compat] -ColorTypes = "0.7, 0.8, 0.9, 0.10, 0.11" +ColorTypes = "0.7, 0.8, 0.9, 0.10, 0.11, 0.12" CoordinateTransformations = "0.5, 0.6" GeometryBasics = "0.4" InteractBase = "0.8, 0.9, 0.10" -Interpolations = "0.9, 0.10, 0.11, 0.12, 0.13, 0.14" +Interpolations = "0.9, 0.10, 0.11, 0.12, 0.13, 0.14, 0.15" LoopThrottle = "0.1" MechanismGeometries = "0.7" -MeshCat = "0.13, 0.14, 0.15, 0.16" +MeshCat = "0.13, 0.14, 0.15, 0.16, 1" NBInclude = "1, 2" OrderedCollections = "1" RigidBodyDynamics = "2" diff --git a/examples/demo.ipynb b/examples/demo.ipynb index 6ab79a2..7e4cfa9 100644 --- a/examples/demo.ipynb +++ b/examples/demo.ipynb @@ -147,14 +147,16 @@ "metadata": {}, "outputs": [], "source": [ + "Pkg.activate(temp=true)\n", + "Pkg.add(\"ValkyrieRobot\")\n", "using ValkyrieRobot\n", "\n", "val = Valkyrie();\n", "delete!(vis)\n", - "mvis = MechanismVisualizer(\n", - " val.mechanism, \n", - " URDFVisuals(ValkyrieRobot.urdfpath(), package_path=[dirname(dirname(ValkyrieRobot.urdfpath()))]),\n", - " vis);" + "urdfvisuals = URDFVisuals(\n", + " ValkyrieRobot.urdfpath(),\n", + " package_path=[dirname(dirname(ValkyrieRobot.urdfpath()))])\n", + "mvis = MechanismVisualizer(val.mechanism, urdfvisuals, vis);" ] }, { @@ -201,13 +203,6 @@ "set_configuration!(vis, [0.5]) \n", "render(vis)" ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] } ], "metadata": { @@ -216,17 +211,17 @@ "lastKernelId": null }, "kernelspec": { - "display_name": "Julia 1.3.1", + "display_name": "Julia 1.11.1", "language": "julia", - "name": "julia-1.3" + "name": "julia-1.11" }, "language_info": { "file_extension": ".jl", "mimetype": "application/julia", "name": "julia", - "version": "1.3.1" + "version": "1.11.1" } }, "nbformat": 4, - "nbformat_minor": 2 + "nbformat_minor": 4 } diff --git a/examples/interactive_manipulation.ipynb b/examples/interactive_manipulation.ipynb index ac784b4..54e9606 100644 --- a/examples/interactive_manipulation.ipynb +++ b/examples/interactive_manipulation.ipynb @@ -138,13 +138,6 @@ " set_configuration!(mvis, configuration(x))\n", "end" ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] } ], "metadata": { @@ -153,17 +146,17 @@ "lastKernelId": "7e34dd28-a64c-4428-9bea-63befbdea05d" }, "kernelspec": { - "display_name": "Julia 1.3.1", + "display_name": "Julia 1.11.1", "language": "julia", - "name": "julia-1.3" + "name": "julia-1.11" }, "language_info": { "file_extension": ".jl", "mimetype": "application/julia", "name": "julia", - "version": "1.3.1" + "version": "1.11.1" } }, "nbformat": 4, - "nbformat_minor": 2 + "nbformat_minor": 4 } diff --git a/src/animate.jl b/src/animate.jl index dc32676..f5a9e21 100644 --- a/src/animate.jl +++ b/src/animate.jl @@ -10,7 +10,7 @@ configurations by linearly interpolating the configuration vectors. function animate(mvis::MechanismVisualizer, times::Vector{Float64}, configurations::AbstractVector{<:AbstractVector{Float64}}; - fps::Float64 = 60., realtimerate::Float64 = 1.) + fps::Float64=60.0, realtimerate::Float64=1.0) @assert fps > 0 @assert 0 < realtimerate < Inf @@ -36,12 +36,12 @@ function MeshCat.Animation(mvis::MechanismVisualizer, fps::Integer=30) @assert axes(times) == axes(configurations) interpolated_configurations = interpolate((times,), configurations, Gridded(Linear())) - animation = Animation(mvis.visualizer["/meshcat"]) + animation = Animation(mvis.visualizer) num_frames = floor(Int, (times[end] - first(times)) * fps) - for frame in 0 : num_frames + for frame in 0:num_frames time = first(times) + frame / fps - let mvis = mvis, interpolated_configurations = interpolated_configurations, time=time - atframe(animation, frame) do + let mvis = mvis, interpolated_configurations = interpolated_configurations, time = time + atframe(animation, frame) do set_configuration!(mvis, interpolated_configurations(time)) end end @@ -53,11 +53,11 @@ MeshCat.setanimation!(mvis::MechanismVisualizer, args...; kw...) = setanimation!(visualizer(mvis), args...; kw...) function MeshCat.setanimation!(mvis::MechanismVisualizer, - times::AbstractVector{<:Real}, - configurations::AbstractVector{<:AbstractVector{<:Real}}; - fps::Integer=30, - play::Bool=true, - repetitions::Integer=1) + times::AbstractVector{<:Real}, + configurations::AbstractVector{<:AbstractVector{<:Real}}; + fps::Integer=30, + play::Bool=true, + repetitions::Integer=1) Base.depwarn(""" `setanimation!(mvis, times, configurations; ..)` is deprecated. Instead, you can construct an `Animation` and then call `setanimation!` with the result. From 3ac9885f5d270cc514a22f26ee2f2cdd91c41871 Mon Sep 17 00:00:00 2001 From: Henrique Ferrolho Date: Mon, 4 Nov 2024 13:31:15 +0000 Subject: [PATCH 03/11] Update ci.yml to add Julia 1.10 (LTS) --- .github/workflows/ci.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b1aa8b6..7343876 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -4,6 +4,7 @@ on: branches: - master pull_request: + jobs: test: name: Julia ${{ matrix.version }} - ${{ matrix.os }} - ${{ matrix.arch }} - ${{ github.event_name }} @@ -13,6 +14,7 @@ jobs: matrix: version: - '1.6' + - '1.10' - '1' os: - ubuntu-latest @@ -20,6 +22,10 @@ jobs: - windows-latest arch: - x64 + include: + - os: macOS-latest + arch: arm64 + version: 1 steps: - uses: actions/checkout@v3 - uses: julia-actions/setup-julia@v1 From baf0c32cafd85f0e929e28d0bceb7e54fc5a5f01 Mon Sep 17 00:00:00 2001 From: Henrique Ferrolho Date: Wed, 6 Nov 2024 14:19:04 +0000 Subject: [PATCH 04/11] Drop support for MeshCat < v1.0 --- Project.toml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Project.toml b/Project.toml index f6ceb45..df9b0d0 100644 --- a/Project.toml +++ b/Project.toml @@ -22,7 +22,7 @@ InteractBase = "0.8, 0.9, 0.10" Interpolations = "0.9, 0.10, 0.11, 0.12, 0.13, 0.14, 0.15" LoopThrottle = "0.1" MechanismGeometries = "0.7" -MeshCat = "0.13, 0.14, 0.15, 0.16, 1" +MeshCat = "1" NBInclude = "1, 2" OrderedCollections = "1" RigidBodyDynamics = "2" @@ -37,5 +37,8 @@ StaticArrays = "90137ffa-7385-5640-81b9-e52037218182" Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40" ValkyrieRobot = "c74b26e8-f247-5d24-b013-c11a2bbd97c6" +[sources] +MeshCat = {rev = "rd/drop-cassette", url = "https://github.com/rdeits/MeshCat.jl.git"} + [targets] test = ["StaticArrays", "Pkg", "NBInclude", "Test", "ValkyrieRobot", "Random"] From e759b6bf4dfd058296b32288312b53e129309e7f Mon Sep 17 00:00:00 2001 From: Henrique Ferrolho Date: Fri, 8 Nov 2024 08:24:45 +0000 Subject: [PATCH 05/11] Remove temporary source for MeshCat.jl --- Project.toml | 3 --- 1 file changed, 3 deletions(-) diff --git a/Project.toml b/Project.toml index df9b0d0..5de9e8e 100644 --- a/Project.toml +++ b/Project.toml @@ -37,8 +37,5 @@ StaticArrays = "90137ffa-7385-5640-81b9-e52037218182" Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40" ValkyrieRobot = "c74b26e8-f247-5d24-b013-c11a2bbd97c6" -[sources] -MeshCat = {rev = "rd/drop-cassette", url = "https://github.com/rdeits/MeshCat.jl.git"} - [targets] test = ["StaticArrays", "Pkg", "NBInclude", "Test", "ValkyrieRobot", "Random"] From 4484ec8fe4f12daa5deefbd4a2c8b4ce70975539 Mon Sep 17 00:00:00 2001 From: Henrique Ferrolho Date: Fri, 8 Nov 2024 13:41:33 +0000 Subject: [PATCH 06/11] Bump ValkyrieRobot.jl dep --- Project.toml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Project.toml b/Project.toml index 5de9e8e..9a9a057 100644 --- a/Project.toml +++ b/Project.toml @@ -14,6 +14,9 @@ MeshCat = "283c5d60-a78f-5afe-a0af-af636b173e11" OrderedCollections = "bac558e1-5e72-5ebc-8fee-abe8a469f55d" RigidBodyDynamics = "366cf18f-59d5-5db9-a4de-86a9f6786172" +[sources] +ValkyrieRobot = {rev = "hf/dev", url = "https://github.com/ferrolho/ValkyrieRobot.jl.git"} + [compat] ColorTypes = "0.7, 0.8, 0.9, 0.10, 0.11, 0.12" CoordinateTransformations = "0.5, 0.6" @@ -26,7 +29,7 @@ MeshCat = "1" NBInclude = "1, 2" OrderedCollections = "1" RigidBodyDynamics = "2" -ValkyrieRobot = "0.2.1" +ValkyrieRobot = "0.2.2" julia = "1.6" [extras] From 3b71a9e948ebebb99731374e0d7b5b0668e006c1 Mon Sep 17 00:00:00 2001 From: Henrique Ferrolho Date: Wed, 4 Dec 2024 08:28:49 +0000 Subject: [PATCH 07/11] Update version of GitHub actions in CI.yml --- .github/workflows/{ci.yml => CI.yml} | 8 ++++---- .github/workflows/CompatHelper.yml | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) rename .github/workflows/{ci.yml => CI.yml} (85%) diff --git a/.github/workflows/ci.yml b/.github/workflows/CI.yml similarity index 85% rename from .github/workflows/ci.yml rename to .github/workflows/CI.yml index 7343876..c2bacab 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/CI.yml @@ -27,17 +27,17 @@ jobs: arch: arm64 version: 1 steps: - - uses: actions/checkout@v3 - - uses: julia-actions/setup-julia@v1 + - uses: actions/checkout@v4 + - uses: julia-actions/setup-julia@v2 with: version: ${{ matrix.version }} arch: ${{ matrix.arch }} - - uses: julia-actions/cache@v1 + - uses: julia-actions/cache@v2 - uses: julia-actions/julia-buildpkg@v1 - uses: julia-actions/julia-runtest@v1 with: prefix: ${{ matrix.prefix }} - uses: julia-actions/julia-processcoverage@v1 - - uses: codecov/codecov-action@v1 + - uses: codecov/codecov-action@v2 with: file: lcov.info diff --git a/.github/workflows/CompatHelper.yml b/.github/workflows/CompatHelper.yml index 7a9c79f..5f42779 100644 --- a/.github/workflows/CompatHelper.yml +++ b/.github/workflows/CompatHelper.yml @@ -15,7 +15,7 @@ jobs: run: which julia continue-on-error: true - name: Install Julia, but only if it is not already available in the PATH - uses: julia-actions/setup-julia@v1 + uses: julia-actions/setup-julia@v2 with: version: '1' arch: ${{ runner.arch }} From 0b218edef5c25692983bd661b5072fc51a35e952 Mon Sep 17 00:00:00 2001 From: Henrique Ferrolho Date: Wed, 4 Dec 2024 14:07:26 +0000 Subject: [PATCH 08/11] Bump compat version for GeometryBasics --- Project.toml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Project.toml b/Project.toml index 9a9a057..587086d 100644 --- a/Project.toml +++ b/Project.toml @@ -20,7 +20,7 @@ ValkyrieRobot = {rev = "hf/dev", url = "https://github.com/ferrolho/ValkyrieRobo [compat] ColorTypes = "0.7, 0.8, 0.9, 0.10, 0.11, 0.12" CoordinateTransformations = "0.5, 0.6" -GeometryBasics = "0.4" +GeometryBasics = "0.4, 0.5" InteractBase = "0.8, 0.9, 0.10" Interpolations = "0.9, 0.10, 0.11, 0.12, 0.13, 0.14, 0.15" LoopThrottle = "0.1" @@ -29,7 +29,7 @@ MeshCat = "1" NBInclude = "1, 2" OrderedCollections = "1" RigidBodyDynamics = "2" -ValkyrieRobot = "0.2.2" +ValkyrieRobot = "0.2" julia = "1.6" [extras] From 261345d32ab7fc278778257c5dfbb75e00427e04 Mon Sep 17 00:00:00 2001 From: Henrique Ferrolho Date: Wed, 4 Dec 2024 14:35:38 +0000 Subject: [PATCH 09/11] Bump compat version for MechanismGeometries --- Project.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Project.toml b/Project.toml index 587086d..4a58dba 100644 --- a/Project.toml +++ b/Project.toml @@ -24,7 +24,7 @@ GeometryBasics = "0.4, 0.5" InteractBase = "0.8, 0.9, 0.10" Interpolations = "0.9, 0.10, 0.11, 0.12, 0.13, 0.14, 0.15" LoopThrottle = "0.1" -MechanismGeometries = "0.7" +MechanismGeometries = "0.7, 0.8" MeshCat = "1" NBInclude = "1, 2" OrderedCollections = "1" From 5bacfb3867a7f13ae46a58ba7e9944470ac0e210 Mon Sep 17 00:00:00 2001 From: Henrique Ferrolho Date: Thu, 5 Dec 2024 09:23:12 +0000 Subject: [PATCH 10/11] Remove ValkyrieRobot dep from the Project.toml --- Project.toml | 7 +--- examples/demo.ipynb | 52 +++++++++++++++++++++++-- examples/interactive_manipulation.ipynb | 4 +- test/runtests.jl | 8 +++- 4 files changed, 58 insertions(+), 13 deletions(-) diff --git a/Project.toml b/Project.toml index 4a58dba..ed90e60 100644 --- a/Project.toml +++ b/Project.toml @@ -14,9 +14,6 @@ MeshCat = "283c5d60-a78f-5afe-a0af-af636b173e11" OrderedCollections = "bac558e1-5e72-5ebc-8fee-abe8a469f55d" RigidBodyDynamics = "366cf18f-59d5-5db9-a4de-86a9f6786172" -[sources] -ValkyrieRobot = {rev = "hf/dev", url = "https://github.com/ferrolho/ValkyrieRobot.jl.git"} - [compat] ColorTypes = "0.7, 0.8, 0.9, 0.10, 0.11, 0.12" CoordinateTransformations = "0.5, 0.6" @@ -29,7 +26,6 @@ MeshCat = "1" NBInclude = "1, 2" OrderedCollections = "1" RigidBodyDynamics = "2" -ValkyrieRobot = "0.2" julia = "1.6" [extras] @@ -38,7 +34,6 @@ Pkg = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f" Random = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c" StaticArrays = "90137ffa-7385-5640-81b9-e52037218182" Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40" -ValkyrieRobot = "c74b26e8-f247-5d24-b013-c11a2bbd97c6" [targets] -test = ["StaticArrays", "Pkg", "NBInclude", "Test", "ValkyrieRobot", "Random"] +test = ["StaticArrays", "Pkg", "NBInclude", "Test", "Random"] diff --git a/examples/demo.ipynb b/examples/demo.ipynb index 7e4cfa9..dc57d20 100644 --- a/examples/demo.ipynb +++ b/examples/demo.ipynb @@ -16,9 +16,10 @@ "metadata": {}, "outputs": [], "source": [ + "using CoordinateTransformations: Translation\n", "using MeshCat\n", - "using RigidBodyDynamics\n", - "using MeshCatMechanisms" + "using MeshCatMechanisms\n", + "using RigidBodyDynamics" ] }, { @@ -141,6 +142,13 @@ "Try clicking \"Animation\" -> \"default\" -> \"play\" again in the MeshCat window. You should see the arm animation repeat, and the point and triad you've added will move as well. " ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Now let's try loading a more complex robot like NASA's Valkyrie (a humanoid robot)." + ] + }, { "cell_type": "code", "execution_count": null, @@ -159,6 +167,13 @@ "mvis = MechanismVisualizer(val.mechanism, urdfvisuals, vis);" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Let's change the configuration from all zeros to a \"nominal\" configuration." + ] + }, { "cell_type": "code", "execution_count": null, @@ -182,11 +197,40 @@ " set_configuration!(state, val.basejoint, [1; 0; 0; 0; 0; 0; 1.025])\n", " nothing\n", "end\n", + "\n", "state = MechanismState(val.mechanism)\n", "initialize!(state, val)\n", + "\n", "set_configuration!(mvis, configuration(state))" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We can also visualise the inertias of the robot's individual linkages as a set of ellipsoids.\n", + "\n", + "The snippet below adds this visual representation to the 3D viewer, side-by-side with the actual robot." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "mvis = MechanismVisualizer(val.mechanism, Skeleton(), vis[:val_inertia])\n", + "set_configuration!(mvis, configuration(state))\n", + "settransform!(vis[:val_inertia], Translation(0, 2, 0))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "---" + ] + }, { "cell_type": "code", "execution_count": null, @@ -211,7 +255,7 @@ "lastKernelId": null }, "kernelspec": { - "display_name": "Julia 1.11.1", + "display_name": "Julia 1.11.2", "language": "julia", "name": "julia-1.11" }, @@ -219,7 +263,7 @@ "file_extension": ".jl", "mimetype": "application/julia", "name": "julia", - "version": "1.11.1" + "version": "1.11.2" } }, "nbformat": 4, diff --git a/examples/interactive_manipulation.ipynb b/examples/interactive_manipulation.ipynb index 54e9606..328e39b 100644 --- a/examples/interactive_manipulation.ipynb +++ b/examples/interactive_manipulation.ipynb @@ -146,7 +146,7 @@ "lastKernelId": "7e34dd28-a64c-4428-9bea-63befbdea05d" }, "kernelspec": { - "display_name": "Julia 1.11.1", + "display_name": "Julia 1.11.2", "language": "julia", "name": "julia-1.11" }, @@ -154,7 +154,7 @@ "file_extension": ".jl", "mimetype": "application/julia", "name": "julia", - "version": "1.11.1" + "version": "1.11.2" } }, "nbformat": 4, diff --git a/test/runtests.jl b/test/runtests.jl index eed172f..cc79fd1 100644 --- a/test/runtests.jl +++ b/test/runtests.jl @@ -4,10 +4,16 @@ using MeshCatMechanisms using RigidBodyDynamics using RigidBodyDynamics.OdeIntegrators using CoordinateTransformations: Translation -using ValkyrieRobot using NBInclude using StaticArrays +import Pkg +Pkg.activate(temp=true) +# Can be replaced by simply `Pkg.add(ValkyrieRobot)` when this PR +# gets merged: https://github.com/tkoolen/ValkyrieRobot.jl/pull/13 +Pkg.add(url="https://github.com/ferrolho/ValkyrieRobot.jl", rev="hf/dev") +using ValkyrieRobot + vis = Visualizer() @testset "MeshCatMechanisms" begin From 69fcb864bff56c138263c919d3c2742d3db865ee Mon Sep 17 00:00:00 2001 From: Henrique Ferrolho Date: Thu, 5 Dec 2024 09:29:18 +0000 Subject: [PATCH 11/11] Bump Julia version compat from 1.6 to 1.9 --- .github/workflows/CI.yml | 2 +- Project.toml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index c2bacab..e12fba6 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -13,7 +13,7 @@ jobs: fail-fast: false matrix: version: - - '1.6' + - '1.9' - '1.10' - '1' os: diff --git a/Project.toml b/Project.toml index ed90e60..c89ddf7 100644 --- a/Project.toml +++ b/Project.toml @@ -1,6 +1,6 @@ name = "MeshCatMechanisms" uuid = "6ad125db-dd91-5488-b820-c1df6aab299d" -version = "0.9.1" +version = "0.10.0" [deps] ColorTypes = "3da002f7-5984-5a60-b8a6-cbb66c0b333f" @@ -26,7 +26,7 @@ MeshCat = "1" NBInclude = "1, 2" OrderedCollections = "1" RigidBodyDynamics = "2" -julia = "1.6" +julia = "1.9" [extras] NBInclude = "0db19996-df87-5ea3-a455-e3a50d440464"