Skip to content

tracing subscriber has a lot of default features #1258

@matklad

Description

@matklad

I see that tracing-subscriber has a lot default features. This feels a bit wrong to me: I understand that this is the crate which should be used by libraries implementing subscribers. Ie, it's an intermediate library. In this context, authors of subscribers might forget to include default-features = false, and induce deps on final consumers. See rust-lang/chalk#686 (comment) for an example of this.

I wonder if maybe this is wrong crate factoring? Maybe subscriber should be just a cfged non-default module of the tracing crate?

Super unclear about what's the best solution here, but it's definitely a problem that rust-analyzer pulls in chrono, and I need to investigate which of my dependencies done this :)

Metadata

Metadata

Assignees

No one assigned

    Labels

    crate/subscriberRelated to the `tracing-subscriber` cratemeta/breakingThis is a breaking change, and should wait until the next breaking release.

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions