Renaming the libraries

Issue #163 new
Leopold Palomo-Avellaneda created an issue

I would like to propose to rename the libCoin to libCoin3D or libcoin3d. I know that the library has the Coin name since the end of the last century but actually, in Bitbucket, or in the repository the Coin library is also named as coin3d.

In the google group, the discuss list is coin3d and so on. The use of name coin could be a bit problematic because is too generic. Also, there are other projects that have the same name or very similar.

This change would imply some changes in CMakeList.txt and probably will break some installations but now that the CMake change is adopting it could be a good moment to implement it.

OTOH I have a pending uploading of the Coin library in Debian and this is one of the patches that I have in mind, but it would be better if upstream agree on it.

What do you think?

Comments (8)

  1. Volker Enderlein

    Although your arguments sound highly reasonable, especially as the term coin is nowadays mainly used for Bitcoin and other crypto currencies, I would try to avoid a name change of the library. Coin3D is the name of a suite that consists of Coin, Quarter, Dime, Profit, SmallChange, SoQt, SoWin, SoXt and numerous other libraries. And if you have had a look onto issue #164 you'll see numerous distributions that provide a Coin package. That's a huge burden for the maintainers to keep up with a sudden renaming. It also may lead to more confusion for the end users.

    So my 2c: Let's stick with the given name.

    Cheers Volker

  2. Leopold Palomo-Avellaneda reporter

    Well, #164 show a lot of distros but most of them derives from Debian, so if we push a change in Debian it would be replicated in the others. If you check https://repology.org/metapackage/coin3/versions you will see that mainly it's maintained by debian-science.

    I would propose to debian-science maintainers rename the sources from coin3 to coin3d and the packages from libcoin+SONAME to libcoin3d+SONAME and libcoin3d-dev for devel, etc.

    My propose was in filename not in packaging name. Currently is libCoin.so. I can kept the old name.

    Cheers

  3. Volker Enderlein

    As far as I understand the package name coin3 consists of the generic term coin and the VERSION_MAJOR number (3). So the package name for version 4.0.0 would be coin4. IIRC, the original devs chose this because one might have both major versions (2 and 3 up to now) installed that are not ABI compatible. I think the filename change may impose some action on the end user side. And that is something we would really try to avoid.

    Cheers, Volker

  4. Giampiero Gabbiani

    Hi Leopold,

    Packaging rules are distro dependent, as such they have been already splitted out in the cpack.d and any suggestion for a standardization looking at the target distro are welcome: they were thought for this, you can even propose a PR or just tell us, it would be really appreciated.

    Different thing the name of the project (Coin) and the collection of which is part (Coin3D): imho this is not ambiguous ... but maybe we should better explain in the wiki / documentation and describe better of which parts the Coin3D collection it is actually composed of.
    Under this point of view maybe it could be better to change the collection name rather then changing the name of its 'historical' core component.

    For the binary library name instead I'm missing the problem: do you have any evidence of a filename collision? If there is we should find out a solution, if not I think that we should maintain the current one.

    Regards, Giampiero

  5. Leopold Palomo-Avellaneda reporter

    Hi Giampiero,

    El 14/11/18 a les 10:52, Giampiero Gabbiani ha escrit:

    from the distro point of view, some kind of releases would be nice, specially in
    this project because there are not releases since some years ago.

    In the front end of the bitbucket (Wiki) the information is wrong then. Maybe it
    could be a good idea to change the collection name too.

    https://github.com/cran/libcoin

    https://github.com/libcoin/libcoin

    and obviously Coin3d.

    One interested things that I have learned is that the name of the project is
    very important. If you put soqt, you found it. If you put Coin3d you found it.
    If you put Coin in google you will not find the project.

    My personal point of view if that the name of the source package is much clear
    if it's coind3d (for the Coin library), also the name of the library package
    libcoin3d ... Now that have new developers, is migrating to CMake and it seems
    to have a new boost, this kind of things would help.

    However if you as upstream don't like it I will not make any change if it's not
    necessary.

    Cheers

    --

    Linux User 152692 GPG: 05F4A7A949A2D9AA
    Catalonia

  6. Giampiero Gabbiani

    Hi Leopold,

    many thanks for the links, so there is the possibility of package binaries collision with two libs ok. I agree also that some work should be done in the wiki as well.

    As for your proposal, could you reassume it in terms of:

    • coin 3d collection name (inclusive of all the components like soq,soxt sowin etc.)
    • the coin component name (and I agree with you that the binary lib name should follow it)
    • whatever else could impact with that

    so we can concretely see the pros / cons?

    Regards,
    Giampiero

  7. Leopold Palomo-Avellaneda reporter

    For my proposal, you asked me: could you reassume it in terms of;

    • coin 3d collection name (inclusive of all the components like soq,soxt sowin
      etc.)

    I don't have an strong opinion about a new name for the collection. But
    something about Inventor/Coin/ could be appropriate. In the case of coin, from
    my point of view, coind3d would fit better.

    In the case of SoQt/SoGTK without renaming the package I would propose that the
    library could have the Major version used. In the case of Qt, that in some place
    appears 5 for Qt5.

    • the coin component name (and I agree with you that the binary lib name
      should follow it)

    libCoin3D

    • whatever else could impact with that

    CMake macros will fail if you don't take care. But now it's a good moment
    because there's a transition to CMake ( IMHO ), so it could be minimized.

    Applications must be recompiled, but I think that this should not be a problem.

    pros, normalize names and make them findable easily. Also avoid future
    collisions and make the maintainer life easy

    Cons, work to do and maybe some transition problems.

    However, I would remark that more important is to make releases. Wiki, and some
    information of Coin3D collection is not clear and a bit confuse. That's for me
    the most important cons than a name change.

    Cheers,

    Leopold

    --

    Linux User 152692 GPG: 05F4A7A949A2D9AA
    Catalonia

  8. Giampiero Gabbiani

    Hi Leopold,
    as for the proposal, I agree with you that the priority now is to come to a new official release, with a wiki docs cleanup where necessary.

    For the rest it is true that keeping things as they are now exposes to a possible collision for the Coin3D core lib with one of projects you mentioned (the other one was uncommitted during the last three year), but even if we change it now we cannot avoid anyone to start a new project with the same name.

    A more concrete solution could be eventually to 'namespace' every component library with a prefix (like coin3d yes) in a similar way to what done - for example - in the boost libraries.

    In that case we would stay in a better position I agree, but this would delay the official release 4.

    So - at least for now - I would not mind about this unless strongly motivated.

    Regards
    Giampiero

  9. Log in to comment