Crate pre-publication review

It's finally time for me to start figuring out how the Cargo ecosystem works from the publishing side. What changes should I make to bring this up to best-practices before I formally publish it?

I also have a few specific questions:

  • What licenses are recommended for open-source crates?
  • Do I have the dependencies specified correctly? uuid is required to compile the proc macro binary, and the generated code produces some typenum types.
  • Is prefixing the crate name with someone else's crate socially acceptable, or should I pick a different name?

Any comments about the implementation are also welcome.

I'd recommend going through here and adding the appropriate fields.

The typical license is MIT OR Apache 2.0, simply because that's what Rust itself uses.

(as a side note, you should probably configure your Git to commit with your Github username).

1 Like

Though an email isn't required the common format here is Author <name@host.com>. Just e seems a bit terse.

authors = ["e"]

Likely you'll also want to add at least a crate description and keywords so that potential users can find your crate.

Dependencies look fine to me.

It's fairly common to do this if a crate provides an extension to another crate, say in the case of serde there's serde-json and so on. I don't think they necessarily need to have the same author.

1 Like