PyPlot.jl
PyPlot.jl copied to clipboard
Juno: mouseover_set attribute was deprecated in Matplotlib 3.0
trafficstars
Dear all,
I have encountered a strange error message thrown by Atom (Juno) on macOS. Not sure if this is the right place because in the REPL this error is not present.
Steps to reproduce:
- install Juno package for Atom
- install PyPlot.jl and link it to already existing Anaconda installation
within Juno first execute this bit of code:
using PyPlot
fig, ax = PyPlot.subplots()
ax.plot(rand(10))
PyPlot.close()
and then:
as soon as you type ax. the following error message is thrown within Atom's error message:
Julia Client – Internal Error:
LoadError: PyError ($(Expr(:escape, :(ccall(#= ~/.julia/packages/PyCall/zqDXB/src/conversions.jl:96 =# @pysym(PyString_AsStringAndSize), Cint, (PyPtr, Ptr{Ptr{UInt8}}, Ptr{Int}), po, _ps_ptr, _ps_len))))) <class 'TypeError'>
TypeError('expected bytes, NoneType found')
in expression starting at string:1
pyerr_check at exception.jl:60 [inlined]
pyerr_check at exception.jl:64 [inlined]
_handle_error(::String) at exception.jl:81
macro expansion at exception.jl:95 [inlined]
convert(::Type{String}, ::PyCall.PyObject) at conversions.jl:96
getdoc at PyCall.jl:903 [inlined]
getdoc(::Any, ::Any) at Docs.jl:254
doc(::Base.Docs.Binding, ::Type) at docview.jl:86
doc(::Base.Docs.Binding) at docview.jl:85
top-level scope at string:1
include_string(::Module, ::String, ::String) at loading.jl:1075
and the REPL prints out this error message:
~/anaconda3/lib/python3.7/inspect.py:341: MatplotlibDeprecationWarning:
The mouseover_set attribute was deprecated in Matplotlib 3.0 and will be removed in 3.2.
Two separate issues here:
- Something is setting the
mouseover_setattribute, I'm not sure what, leading to the deprecation warning. - The PyCall code to print an error message is running into a problem (it is expecting a string but is getting a
Noneobject).
Weirdly, the error is thrown in getdoc, which is getting help — I'm guessing you are mousing over something and Juno is fetching a help string?