I'm currently working on a new crate that I plan on publishing. I've added a proc macro to generate a bunch of extra code that I need in certain situations. As I understand it, I cannot export anything other than a proc_macro from a proc_macro crate, so I've made a private sub-package.
I've currently got it set up like this:
my_lib/
Cargo.toml
my_proc_macro/
Cargo.toml
In my_lib/Cargo.toml
I have my_proc_macro = { path = "./my_proc_macro" }
.
However, I can't publish this because you can't publish a crate with a path
dependency.
So, is my only option here to publish this extra crate for the sole purpose of consuming the macro in the one lib this code already lives under?
I've done a bunch of Googling. Seen a heap of RFCs. I can't find anything concrete on how to fix this.