Steven,

How difficult would it be to work a way to suppress this warning message? I 
general I would argue that it's best to avoid printing warnings to the 
screen unless there is something going on to be genuinely warned about, so 
as not to confuse the end-user. Since my package 
(http://github.com/jzuhone/YT.jl) depends on SymPy, this warning is shown 
every time one does "using YT" or "import YT". It's a cosmetic issue, but 
it would still be nice to get rid of it. 

If suppressing it is doable, I'd be happy to investigate it myself and 
submit a PR. I'm not sure if this should be done in PyCall or in Julia 
itself somehow.

Best,

John Z

On Saturday, January 3, 2015 9:37:23 AM UTC-5, Steven G. Johnson wrote:
>
> You can safely ignore it.  @pyimport creates an module __anon__ (which is 
> assigned to plt in this case) that has definitions for the Python functions 
> in the Python module.   The warning is telling you that this module creates 
> its own "transpose" function instead of extending Base.transpose.  (It is a 
> warning because in many cases a module author would have intended to add a 
> new method to Base.transpose instead.)
>
> This is fine.  transpose in other modules still refers to Base.transpose, 
> and plt.transpose refers to the pylab one (== numpy transpose).
>
> --SGJ
>
> PS. By the way, I would normally import just pyplot and not pylab.  The 
> pylab module is useful in Python because it imports numpy too, and without 
> that you wouldn't have a lot of basic array functionality.  But in Julia 
> you already have the equivalent of numpy built in to Julia Base.   Also, I 
> would tend to recommend the Julia PyPlot module over manually importing 
> pyplot.  The PyPlot module adds some niceties like IJulia inline plots and 
> interactive GUI plots, whereas pylab is imported by default in 
> non-interactive mode.
>

Reply via email to