@Chris: I agree; if warnings were typed, we could selectively activate 
them. I'm using regexes for now:

ClobberingReload.scrub_stderr(r"WARNING\: redefining constant .*\n", 
r"WARNING\: 
replacing docs for .*\n", ...) do
   ...
end



On Tuesday, September 27, 2016 at 3:43:15 PM UTC-4, Chris Rackauckas wrote:
>
> Or just a standard way to suppress warnings of a given type (say, 
> surpress("MethodDefinition")). For now, Suppressor.jl 
> <https://github.com/Ismael-VC/Suppressor.jl> does well.
>
> On Tuesday, September 27, 2016 at 12:13:00 PM UTC-7, Andrew wrote:
>>
>> It seems like a lot of people are complaining about this. Is there some 
>> way to suppress method overwritten warnings for an include() statement? 
>> Perhaps a keyword like include("foo.jl", quietly = true)?
>>
>> On Tuesday, September 27, 2016 at 1:56:27 PM UTC-4, Daniel Carrera wrote:
>>>
>>> Hello,
>>>
>>> I'm not sure when I upgraded, but I am using Julia 0.5 and now it 
>>> complains every time I redefine a method, which is basically all the time. 
>>> When I'm developing ideas I usually have a file with a script that I modify 
>>> and reload all the time:
>>>
>>> julia> include("foo.jl");
>>>
>>> ... see the results, edit file ...
>>>
>>> julia> include("foo.jl");
>>>
>>> ... see the results, edit file ...
>>> julia> include("foo.jl");
>>>
>>> ... see the results, edit file ...
>>>
>>>
>>> And so on. This is what I do most of the time. But now every time I 
>>> `include("foo.jl")` I get warnings for every method that has been redefined 
>>> (which is all of them):
>>>
>>> julia> include("foo.jl");
>>>
>>> WARNING: Method definition (::Type{Main.Line})(Float64, Float64) in 
>>> module Main at /home/daniel/Data/Science/Thesis/SI.jl:4 overwritten at 
>>> /home/daniel/Data/Science/Thesis/SI.jl:4.
>>> WARNING: Method definition (::Type{Main.Line})(Any, Any) in module Main 
>>> at /home/daniel/Data/Science/Thesis/SI.jl:4 overwritten at 
>>> /home/daniel/Data/Science/Thesis/SI.jl:4.
>>> WARNING: Method definition new_line(Any, Any, Any) in module Main at 
>>> /home/daniel/Data/Science/Thesis/SI.jl:8 overwritten at 
>>> /home/daniel/Data/Science/Thesis/SI.jl:8.
>>>
>>>
>>> Is there a way that this can be fixed? How can I recover Julia's earlier 
>>> behaviour? This is very irritating, and I don't think it makes sense for a 
>>> functional language like Julia. If I wrote a method as a variable 
>>> assignment (e.g. "foo = x -> 2*x") Julia wouldn't complain.
>>>
>>>
>>> Thanks for the help,
>>> Daniel.
>>>
>>

Reply via email to