tokio-trace is not tightly coupled to tokio, in particular, it does not depend on any of the other tokio crates. Having tokio-trace in the same repository as tokio can slow down development of both tokio-trace and the other tokio crates, as unrelated changes can cause CI build failures, branches can require complex rebases and merges, and it's necessary to build and test all of tokio on changes that only touch trace. Furthermore, it reinforces the misconception that it's _necessary_ to be using tokio to use tokio-trace. Finally, it would be nice to have separate issue trackers for tokio and tokio-trace.
I propose moving tokio-trace and tokio-trace-core to a new tokio-rs/trace repository. I think it would be valuable to preserve the git history for tokio-trace, so we should use git filter-branch to split out the trace commits from this repository.
Some necessary tasks:
tokio-trace PRs to mergegit filter-branch to extract the tokio-trace commits from this repo's git historytokio-rs/tokiotokio-rs/tokiotokio-rs/trace gitter channel?It might be worthwhile to do this _before_ cutting the next trace release, so that the repo links in the crate metadata on docs.rs and crates.io can point to the new repository.
tokio-trace is not tightly coupled to tokio, in particular, it does not depend on any of the other tokio crates.
I know some folks that I work with (and probably some others) have found it confusing that some tokio-xxx crates are usable even without the tokio runtime, or have even avoided libs because they thought they couldn't use them due to not using the tokio runtime. With the move to a separate repo, it might also help for clarification to rename to futures-trace or similar.
@cramertj
With the move to a separate repo, it might also help for clarification to rename to futures-trace or similar.
FWIW, tokio-trace also isn't tightly coupled to futures, either --- the utilities for instrumenting futures, streams, and executors with tokio-trace spans live in a separate tokio-trace-futures crate. :)
Heh, maybe just "trace", then? ;)
Sadly, it looks like there's already a trace crate on crates.io (not sure if it's actively maintained, but it looks like it sees some use).
I think for now we'll _probably_ continue using the tokio-trace name, as the library is maintained by the Tokio project, but I'll make sure to state up front that tokio-trace does not require tokio front and center in all the docs and READMEs?
@hawkw it looks to have no reverse dependencies, so may be worthwhile reaching out to the owner.
@jonhoo Yeah, it's definitely worth a shot and I'll reach out to him, just not committing to anything yet.
For what it's worth, I'm definitely open to other name suggestions, though I think there are a couple of considerations:
territory is probably not going to fly, although I like it a lot)tokio-trace is an ecosystem rather than a single crate, there are already several tokio-trace-foo crates, and as compatibility libraries are implemented, I expect to see things like tokio-trace-opentelemetry in the future. If the name of the project is too long, these crate names get awkward really fast — tokio-trace is already kind of pushing it, in my opinion. The name trace does meet both those requirements quite nicely, so if the current owner is no longer maintaining that library and is willing to transfer ownership, that would be ideal.
tracer?
tracer?
https://crates.io/crates/tracer, also apparently unmaintained though. I'll reach out to the owner of that as well.
I have tracing
As per @carllerche, the owner of trace is interested in keeping the name, so I think when we do the repository move, tokio-trace will also become tracing.
Hey folks, just wanted to let you all know that tokio-trace is now tracing, and now lives at tokio-rs/tracing. PR #1221 will remove it from this repository.
The crate formerly known as tokio-trace-core has been published to crates.io as tracing-core 0.1, and tracing 0.1 will follow shortly!
Most helpful comment
Hey folks, just wanted to let you all know that
tokio-traceis nowtracing, and now lives attokio-rs/tracing. PR #1221 will remove it from this repository.The crate formerly known as
tokio-trace-corehas been published to crates.io astracing-core0.1, andtracing0.1 will follow shortly!