-
Notifications
You must be signed in to change notification settings - Fork 43
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update compat dependencies and add Julia LTS (1.10) to the CI #255
Changes from 5 commits
49c0dfd
b2af1b8
a425aff
645ab08
4a78eb4
28cf359
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change | ||||
---|---|---|---|---|---|---|
@@ -1,7 +1,7 @@ | ||||||
name = "MeshCat" | ||||||
uuid = "283c5d60-a78f-5afe-a0af-af636b173e11" | ||||||
authors = ["Robin Deits <[email protected]>"] | ||||||
version = "0.16.2" | ||||||
version = "0.16.3" | ||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Minor version bump for MeshCat.jl |
||||||
|
||||||
[deps] | ||||||
Base64 = "2a0f44e3-6c83-55bd-87e4-b1978d98bd5f" | ||||||
|
@@ -33,13 +33,13 @@ DocStringExtensions = "0.5, 0.6, 0.7, 0.8, 0.9" | |||||
FFMPEG = "0.2, 0.3, 0.4" | ||||||
GeometryBasics = "0.3, 0.4" | ||||||
HTTP = "1" | ||||||
Meshing = "0.5, 0.6" | ||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I wanted to have
Suggested change
but Meshing.jl v0.7 breaks the snippets for creating a Mesh using marching cubes. See my comment here: JuliaGeometry/Meshing.jl#99 (comment) |
||||||
MeshIO = "0.4" | ||||||
Meshing = "0.5" | ||||||
MsgPack = "1" | ||||||
Parameters = "0.10, 0.11, 0.12" | ||||||
Parameters = "0.10, 0.11, 0.12, 0.13" | ||||||
PrecompileTools = "1" | ||||||
Requires = "0.5, 1" | ||||||
Rotations = "1.3" | ||||||
Rotations = "1" | ||||||
StaticArrays = "0.10, 0.11, 0.12, 1" | ||||||
Tar = "1" | ||||||
julia = "1.6" | ||||||
|
@@ -48,8 +48,8 @@ julia = "1.6" | |||||
ColorTypes = "3da002f7-5984-5a60-b8a6-cbb66c0b333f" | ||||||
Electron = "a1bb12fb-d4d1-54b4-b10a-ee7951ef7ad3" | ||||||
FileIO = "5789e2e9-d7fb-5bc7-8068-2c6fae9b9549" | ||||||
MeshIO = "7269a6da-0436-5bbc-96c2-40638cbb6118" | ||||||
Meshing = "e6723b4c-ebff-59f1-b4b7-d97aa5274f73" | ||||||
MeshIO = "7269a6da-0436-5bbc-96c2-40638cbb6118" | ||||||
NBInclude = "0db19996-df87-5ea3-a455-e3a50d440464" | ||||||
Pkg = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f" | ||||||
Random = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c" | ||||||
|
Original file line number | Diff line number | Diff line change | ||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
@@ -1,3 +1,3 @@ | ||||||||||||||||||||||||||||||||||||||||||||
using NBInclude | ||||||||||||||||||||||||||||||||||||||||||||
@nbinclude(joinpath(@__DIR__, "..", "notebooks", "demo.ipynb")) | ||||||||||||||||||||||||||||||||||||||||||||
@nbinclude(joinpath(@__DIR__, "..", "notebooks", "animation.ipynb")) | ||||||||||||||||||||||||||||||||||||||||||||
# @nbinclude(joinpath(@__DIR__, "..", "notebooks", "animation.ipynb")) | ||||||||||||||||||||||||||||||||||||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. There is some issue with animations that I haven't figured out how to fix. Running Here is the stack trace: StacktraceMeshCat: Error During Test at /Users/henrique/git/MeshCat.jl/test/runtests.jl:12
Got exception outside of a @test
LoadError: MethodError: no method matching active_module()
You may have intended to import Base.active_module
The applicable method may be too new: running in world age 26682, while current world is 26743.
Closest candidates are:
active_module(::REPL.LineEditREPL) (method too new to be called from this world context.)
@ REPL ~/.julia/juliaup/julia-1.11.0+0.aarch64.apple.darwin14/share/julia/stdlib/v1.11/REPL/src/REPL.jl:595
active_module() (method too new to be called from this world context.)
@ REPL ~/.julia/juliaup/julia-1.11.0+0.aarch64.apple.darwin14/share/julia/stdlib/v1.11/REPL/src/REPL.jl:591
active_module(::REPL.REPLDisplay) (method too new to be called from this world context.)
@ REPL ~/.julia/juliaup/julia-1.11.0+0.aarch64.apple.darwin14/share/julia/stdlib/v1.11/REPL/src/REPL.jl:597
...
Stacktrace:
[1] #invokelatest#2
@ ./essentials.jl:1054 [inlined]
[2] invokelatest
@ ./essentials.jl:1051 [inlined]
[3] active_module
@ ./show.jl:519 [inlined]
[4] show_type_name(io::IOContext{IOBuffer}, tn::Core.TypeName)
@ Base ./show.jl:1058
[5] _show_type(io::IOContext{IOBuffer}, x::Type)
@ Base ./show.jl:973
[6] show(io::IOContext{IOBuffer}, x::Type)
@ Base ./show.jl:970
[7] show_delim_array(io::IOBuffer, itr::Tuple{DataType}, op::Char, delim::Char, cl::Char, delim_one::Bool, i1::Int64, n::Int64)
@ Base ./show.jl:1435
[8] show_delim_array
@ ./show.jl:1420 [inlined]
[9] show
@ ./show.jl:1453 [inlined]
[10] print(io::IOBuffer, x::Tuple{DataType})
@ Base ./strings/io.jl:35
[11] print_to_string(::String, ::Vararg{Any})
@ Base ./strings/io.jl:148
[12] string
@ ./strings/io.jl:189 [inlined]
[13] __overdub_generator__(world::UInt64, source::LineNumberNode, self::Type, context_type::Type, args::Tuple{DataType})
@ Cassette ~/.julia/packages/Cassette/4UsSX/src/overdub.jl:619
[14] atframe(f::Function, animation::Animation, frame::Int64)
@ MeshCat ~/git/MeshCat.jl/src/atframe.jl:100
[15] top-level scope
@ ~/git/MeshCat.jl/notebooks/animation.ipynb:In[+6]:3
[16] eval
@ ./boot.jl:430 [inlined]
[17] include_string(mapexpr::typeof(identity), mod::Module, code::String, filename::String)
@ Base ./loading.jl:2628
[18] include_string
@ ./loading.jl:2638 [inlined]
[19] my_include_string(m::Module, s::String, path::String, prev::String, softscope::Bool)
@ NBInclude ~/.julia/packages/NBInclude/pfsyO/src/NBInclude.jl:30
[20] #2
@ ~/.julia/packages/NBInclude/pfsyO/src/NBInclude.jl:93 [inlined]
[21] task_local_storage(body::NBInclude.var"#2#3"{Bool, Module, String, String, String, String}, key::Symbol, val::Bool)
@ Base ./task.jl:315
[22] nbinclude(m::Module, path::String; renumber::Bool, counters::UnitRange{Int64}, regex::Regex, anshook::typeof(identity), softscope::Bool)
@ NBInclude ~/.julia/packages/NBInclude/pfsyO/src/NBInclude.jl:92
[23] nbinclude(m::Module, path::String)
@ NBInclude ~/.julia/packages/NBInclude/pfsyO/src/NBInclude.jl:57
[24] top-level scope
@ ~/git/MeshCat.jl/test/notebook.jl:3
[25] include(fname::String)
@ Main ./sysimg.jl:38
[26] macro expansion
@ ~/git/MeshCat.jl/test/runtests.jl:16 [inlined]
[27] macro expansion
@ ~/.julia/juliaup/julia-1.11.0+0.aarch64.apple.darwin14/share/julia/stdlib/v1.11/Test/src/Test.jl:1700 [inlined]
[28] top-level scope
@ ~/git/MeshCat.jl/test/runtests.jl:16
[29] include(fname::String)
@ Main ./sysimg.jl:38
[30] top-level scope
@ none:6
[31] eval
@ ./boot.jl:430 [inlined]
[32] exec_options(opts::Base.JLOptions)
@ Base ./client.jl:296
[33] _start()
@ Base ./client.jl:531
in expression starting at /Users/henrique/git/MeshCat.jl/notebooks/animation.ipynb:In[+6]:3
in expression starting at /Users/henrique/git/MeshCat.jl/test/notebook.jl:3
caused by: MethodError: no method matching active_module()
You may have intended to import Base.active_module
The applicable method may be too new: running in world age 26682, while current world is 26743.
Closest candidates are:
active_module(::REPL.LineEditREPL) (method too new to be called from this world context.)
@ REPL ~/.julia/juliaup/julia-1.11.0+0.aarch64.apple.darwin14/share/julia/stdlib/v1.11/REPL/src/REPL.jl:595
active_module() (method too new to be called from this world context.)
@ REPL ~/.julia/juliaup/julia-1.11.0+0.aarch64.apple.darwin14/share/julia/stdlib/v1.11/REPL/src/REPL.jl:591
active_module(::REPL.REPLDisplay) (method too new to be called from this world context.)
@ REPL ~/.julia/juliaup/julia-1.11.0+0.aarch64.apple.darwin14/share/julia/stdlib/v1.11/REPL/src/REPL.jl:597
...
Stacktrace:
[1] #invokelatest#2
@ ./essentials.jl:1054 [inlined]
[2] invokelatest
@ ./essentials.jl:1051 [inlined]
[3] active_module
@ ./show.jl:519 [inlined]
[4] show_type_name(io::IOContext{IOBuffer}, tn::Core.TypeName)
@ Base ./show.jl:1058
[5] _show_type(io::IOContext{IOBuffer}, x::Type)
@ Base ./show.jl:973
[6] show(io::IOContext{IOBuffer}, x::Type)
@ Base ./show.jl:970
[7] print(io::IOContext{IOBuffer}, x::Type)
@ Base ./strings/io.jl:35
[8] print(::IOContext{IOBuffer}, ::String, ::Type, ::Vararg{Any})
@ Base ./strings/io.jl:46
[9] print_within_stacktrace(::IOContext{IOBuffer}, ::String, ::Vararg{Any}; color::Symbol, bold::Bool)
@ Base ./show.jl:0
[10] print_within_stacktrace
@ ./show.jl:2549 [inlined]
[11] show_signature_function(io::IOContext{IOBuffer}, ft::Any, demangle::Bool, fargname::String, html::Bool, qualified::Bool)
@ Base ./show.jl:2543
[12] show_tuple_as_call(out::IOBuffer, name::Symbol, sig::Type; demangle::Bool, kwargs::Nothing, argnames::Nothing, qualified::Bool, hasfirst::Bool)
@ Base ./show.jl:2577
[13] show_tuple_as_call(out::IOBuffer, name::Symbol, sig::Type)
@ Base ./show.jl:2557
[14] sprint(::Function, ::Symbol, ::Vararg{Any}; context::Nothing, sizehint::Int64)
@ Base ./strings/io.jl:114
[15] sprint
@ ./strings/io.jl:107 [inlined]
[16] verbose_lineinfo!(ci::Core.CodeInfo, sig::Type{<:Tuple})
@ Cassette ~/.julia/packages/Cassette/4UsSX/src/overdub.jl:56
[17] reflect(sigtypes::Tuple, world::UInt64)
@ Cassette ~/.julia/packages/Cassette/4UsSX/src/overdub.jl:128
[18] __overdub_generator__(world::UInt64, source::LineNumberNode, self::Type, context_type::Type, args::Tuple{DataType})
@ Cassette ~/.julia/packages/Cassette/4UsSX/src/overdub.jl:612
[19] atframe(f::Function, animation::Animation, frame::Int64)
@ MeshCat ~/git/MeshCat.jl/src/atframe.jl:100
[20] top-level scope
@ ~/git/MeshCat.jl/notebooks/animation.ipynb:In[+6]:3
[21] eval
@ ./boot.jl:430 [inlined]
[22] include_string(mapexpr::typeof(identity), mod::Module, code::String, filename::String)
@ Base ./loading.jl:2628
[23] include_string
@ ./loading.jl:2638 [inlined]
[24] my_include_string(m::Module, s::String, path::String, prev::String, softscope::Bool)
@ NBInclude ~/.julia/packages/NBInclude/pfsyO/src/NBInclude.jl:30
[25] #2
@ ~/.julia/packages/NBInclude/pfsyO/src/NBInclude.jl:93 [inlined]
[26] task_local_storage(body::NBInclude.var"#2#3"{Bool, Module, String, String, String, String}, key::Symbol, val::Bool)
@ Base ./task.jl:315
[27] nbinclude(m::Module, path::String; renumber::Bool, counters::UnitRange{Int64}, regex::Regex, anshook::typeof(identity), softscope::Bool)
@ NBInclude ~/.julia/packages/NBInclude/pfsyO/src/NBInclude.jl:92
[28] nbinclude(m::Module, path::String)
@ NBInclude ~/.julia/packages/NBInclude/pfsyO/src/NBInclude.jl:57
[29] top-level scope
@ ~/git/MeshCat.jl/test/notebook.jl:3
[30] include(fname::String)
@ Main ./sysimg.jl:38
[31] macro expansion
@ ~/git/MeshCat.jl/test/runtests.jl:16 [inlined]
[32] macro expansion
@ ~/.julia/juliaup/julia-1.11.0+0.aarch64.apple.darwin14/share/julia/stdlib/v1.11/Test/src/Test.jl:1700 [inlined]
[33] top-level scope
@ ~/git/MeshCat.jl/test/runtests.jl:16
[34] include(fname::String)
@ Main ./sysimg.jl:38
[35] top-level scope
@ none:6
[36] eval
@ ./boot.jl:430 [inlined]
[37] exec_options(opts::Base.JLOptions)
@ Base ./client.jl:296
[38] _start()
@ Base ./client.jl:531
Test Summary: | Error Total Time
MeshCat | 1 1 17.2s
ERROR: LoadError: Some tests did not pass: 0 passed, 0 failed, 1 errored, 0 broken.
in expression starting at /Users/henrique/git/MeshCat.jl/test/runtests.jl:12
ERROR: Package MeshCat errored during testing There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Uh oh. It looks like Cassette hasn't been updated in the last few years, so it may just be starting to lose compatibility with modern Julia versions (it's pretty deeply tied into the behavior of the compiler, AFAIK). That error looks like it's pointing here: https://github.com/JuliaLabs/Cassette.jl/blob/44ae68ec0943523acae7134e13849aebefa72d8e/src/overdub.jl#L619 so there's some other error that we're not seeing which triggered an error while trying to print out its error message. I wonder if this is mostly an issue with There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. It seems like we just had to wait a bit — https://github.com/JuliaLabs/Cassette.jl/releases/tag/v0.3.14 is no longer giving an error. I wonder though, since we are only using Cassette.jl for these few lines Lines 50 to 70 in 1da3802
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Okay, even though MeshCat.jl seems good now, there is a problem when using it with MeshCatMechanisms.jl. 😭 Here is a minimum working example that shows the problem: using MeshCat
using MeshCatMechanisms
using RigidBodyDynamics
urdf = joinpath(dirname(pathof(MeshCatMechanisms)), "..", "test", "urdf", "Acrobot.urdf")
robot = parse_urdf(urdf)
vis = Visualizer()
mvis = MechanismVisualizer(robot, URDFVisuals(urdf), vis)
state = MechanismState(robot, randn(2), randn(2))
t, q, v = simulate(state, 5.0)
animation = Animation(mvis, t, q)
Stacktrace
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Yeah, I think that's a good question. For context, here's the change where we added cassette: #112 . It definitely improved the usability of the animation API, but it might not be worth the complexity we've added by depending on such an invasive tool. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Agreed... As I get older I am realising that the least libraries something depends on the better. 😅 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have added a new runner for macOS on ARM.