Skip to content

API: moving logging to opt-in (disabled by default) #5398

@neutrinoceros

Description

@neutrinoceros

For a while now, I've been feeling that as a library, yt shouldn't behave like it's an final application and have a logger. I've been mitigating its downsides by reducing its noise level and making it easier to disable it, but I'm aware some devs have strong feelings about this logger and don't want its alias (aka mylog) to be renamed, so I haven't even tried suggesting we should drop it altogether.

In #5397 however, it came to my attention that the whole logging system isn't thread-safe. This means that it'll get in the way of the important work we'll have to do (sooner or later) to support this Python flavor, since it might become the default, maybe even the only one available in the future. So, with all that said, I would like to propose that the default logging level be adjusted from logging.INFO to "disabled" (aka any int value above logging.CRITICAL).
There's probably no good way to make such a change progressively though (emitting deprecation warnings to all users who don't explicitly configure the logging level is a non starter to me), and it might be considered breaking, so I think this could only happen as part of a yt 5.0 release. Thoughts ?

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions