Skip to content

deprecation warning is only printed once #22043

@fredrikekre

Description

@fredrikekre

Ref #22034 (comment), on 0.6 and master I can only produce one deprecation warning per julia session.

master and 0.6-rc2:

julia> f2(x) = 2; f4(x) = 4;

julia> @deprecate f1(x) f2(x);

julia> @deprecate f3(x) f4(x);

julia> f1(1)
WARNING: f1(x) is deprecated, use f2(x) instead.
Stacktrace:
 [1] depwarn(::String, ::Symbol) at ./deprecated.jl:64
 [2] f1(::Int64) at ./deprecated.jl:51
 [3] eval(::Module, ::Any) at ./boot.jl:235
 [4] eval_user_input(::Any, ::Base.REPL.REPLBackend) at ./REPL.jl:66
 [5] macro expansion at ./REPL.jl:97 [inlined]
 [6] (::Base.REPL.##1#2{Base.REPL.REPLBackend})() at ./event.jl:73
while loading no file, in expression starting on line 0
2

julia> f3(1) # why does this not warn?
4

And on 0.5.2:

julia> f2(x) = 2; f4(x) = 4;

julia> @deprecate f1(x) f2(x);

julia> @deprecate f3(x) f4(x);

julia> f1(1)
WARNING: f1(x) is deprecated, use f2(x) instead.
 in depwarn(::String, ::Symbol) at ./deprecated.jl:64
 in f1(::Int64) at ./deprecated.jl:50
 in eval(::Module, ::Any) at ./boot.jl:234
 in eval_user_input(::Any, ::Base.REPL.REPLBackend) at ./REPL.jl:64
 in macro expansion at ./REPL.jl:95 [inlined]
 in (::Base.REPL.##3#4{Base.REPL.REPLBackend})() at ./event.jl:68
while loading no file, in expression starting on line 0
2

julia> f3(1)
WARNING: f3(x) is deprecated, use f4(x) instead.
 in depwarn(::String, ::Symbol) at ./deprecated.jl:64
 in f3(::Int64) at ./deprecated.jl:50
 in eval(::Module, ::Any) at ./boot.jl:234
 in eval_user_input(::Any, ::Base.REPL.REPLBackend) at ./REPL.jl:64
 in macro expansion at ./REPL.jl:95 [inlined]
 in (::Base.REPL.##3#4{Base.REPL.REPLBackend})() at ./event.jl:68
while loading no file, in expression starting on line 0
4

Seems like a bad bug in these days of new releases and fixing deprecation warnings.

Metadata

Metadata

Assignees

No one assigned

    Labels

    deprecationThis change introduces or involves a deprecationdisplay and printingAesthetics and correctness of printed representations of objects.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions