*-sys crate name conflicts


#1

I’d like to create an FFI binding crate for a popular C library, let’s call it “libwhatever”. But somebody else has already registered a crate named “whatever-sys”. His crate hasn’t been updated for 2.5 years, had its most recent release yanked, has no Rusty wrapper crate, and its git repository only has activity from a single day. He also hasn’t reponded to my attempts to contact him. If I were working on anything other than FFI bindings, I would simply come up with a different cute name to use. But FFI crates have a pretty clear naming convention. What is the best way to resolve FFI naming conflicts? Is there any better option than picking a different name like “cwhatever-sys” or “asomers-whatever-sys” or “libwhatever-sys”?


#3

lol. That’s another idea, though there’s not yet any precedent for it that I can find. If anything, there’s the opposite. real is a completely empty crate :frowning: .

https://crates.io/crates/real


#6

I would try the following ways at contacting, and if all fail then ask the crates team (maybe you’ve already tried many of these):

  • email them (can look in git commits if they don’t publish their email publicly)
  • message them on this forum if they have an account
  • opening up an issue in their repository about releasing ownership
  • wait some number of weeks (3?), if there’s no response then contact the crates team, but also notify the crate owner and link them to where you’re asking for ownership

Sometimes people don’t reply one way, but other methods make them feel more urgency to. I’ve seen it happen with at least one crate


#7

Has the crates team ever done that before? I once made such a request to the RubyGems team, but they basically never pull gems without the author’s permission.


#8

No, we have not. Or at least, none that I’m aware of.


#9

The original author replied through the second contact channel I tried, and the problem is now resolved. No need to involve the crates team or pick a new naming convention. Thanks for all the input!