coin3d / coin

Coin3D core library
BSD 3-Clause "New" or "Revised" License
266 stars 105 forks source link

Renaming the libraries #163

Open VolkerEnderlein opened 5 years ago

VolkerEnderlein commented 5 years ago

Original report by Leopold Palomo-Avellaneda (Bitbucket: lepalom, GitHub: lepalom).


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?

VolkerEnderlein commented 5 years ago

Original comment by Volker Enderlein (Bitbucket: VolkerEnderlein, GitHub: VolkerEnderlein).


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

VolkerEnderlein commented 5 years ago

Original comment by Leopold Palomo-Avellaneda (Bitbucket: lepalom, GitHub: lepalom).


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

VolkerEnderlein commented 5 years ago

Original comment by Volker Enderlein (Bitbucket: VolkerEnderlein, GitHub: VolkerEnderlein).


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

VolkerEnderlein commented 5 years ago

Original comment by Giampiero Gabbiani (Bitbucket: ggabbiani, GitHub: ggabbiani).


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

VolkerEnderlein commented 5 years ago

Original comment by Leopold Palomo-Avellaneda (Bitbucket: lepalom, GitHub: lepalom).


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

VolkerEnderlein commented 5 years ago

Original comment by Giampiero Gabbiani (Bitbucket: ggabbiani, GitHub: ggabbiani).


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:

so we can concretely see the pros / cons?

Regards, Giampiero

VolkerEnderlein commented 5 years ago

Original comment by Leopold Palomo-Avellaneda (Bitbucket: lepalom, GitHub: lepalom).


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

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.

libCoin3D

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

VolkerEnderlein commented 5 years ago

Original comment by Giampiero Gabbiani (Bitbucket: ggabbiani, GitHub: ggabbiani).


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