JuliaPy / PyPlot.jl

Plotting for Julia based on matplotlib.pyplot
https://github.com/JuliaPy/PyPlot.jl
MIT License
478 stars 88 forks source link

Juno: mouseover_set attribute was deprecated in Matplotlib 3.0 #470

Open jtschneider opened 4 years ago

jtschneider commented 4 years ago

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:

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.
stevengj commented 4 years ago

Two separate issues here:

stevengj commented 4 years ago

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?