Closed remicollet closed 1 year ago
@mjsottile @ether42 for you information
I'm running into this collision as well, and I think the best solution would be to rename this one (e.g. to something like librnpsexp
or just librsexp
) . I can offer a PR to do that if you'd be ok with that.
There's also a larger question about whether the symbol names themselves should be updated to use a matching symbol prefix (that is, the C++ namespace). I think that is a distinct decision. The name clash of the library itself will prevent co-installation on the same system, even if no one program uses both libraries. @mjsottile's project exports a C API, not a C++ namespace, so there shouldn't even be a conflict if some program ends up linking to both libraries.
In light of the name conflict, I suppose the best course of action is to change our library name to something else, such as librsexp
.
Thoughts @maxirmx ?
Sorry about being the source of the name collision. Unfortunately, I'm not sure how much I can do to change it on my end - I adopted the libsexp naming convention when the project was created around 23 years ago (back when it lived on SourceForge), and I honestly have no idea how many projects have adopted it over that time period that would experience breakage if I changed it.
@mjsottile no problem, 23 years is indeed a very long time!
If rsexp
means SExp library used in RNP lets keep it private, static and not pubished :)
If we still want to publish it I suggest to name it libsexpxx
or libsexpp
to emphasize that it is C++ library as opposed to existing one
it uses namespace sexp
. We can change it to namespace rnp::sexp
, but if it is internal rnp library why we are publishing it as as separate package so fiercly ?
libsexpp
sounds good. Let's do that? Then we change the name of the repo to sexpp too.
I will do libsexpp
I've updated the repo name too sexpp in #49.
I just discover there is another project providing "libsexp"
=> https://github.com/mjsottile/sfsexp
So people won't be able to install both projects on the same computer.
I don't see any simple and good solution :(