MmgTools / mmg

open source software for bidimensional and tridimensional remeshing
http://www.mmgtools.org
Other
362 stars 117 forks source link

Develop #251

Closed mpotse closed 6 months ago

mpotse commented 6 months ago

Documentation fixes, also in mmg2d and mmgs. If the new changes in libmmg3d.h are OK I will apply these to the 2d and s versions as well.

I'm wondering if this warning "Use the MMG3D prefix: the MMG5 prefix will become obsolete." is meant for developers or for users, and if it isn't obsolete itself. Obviously both prefixes are in use and they are not exchangeable.

Algiane commented 6 months ago

Thanks!

Algiane commented 6 months ago

I realized that I haven't answered to your questions on the MMG5_ prefixes. This warning is very probably obsolete.

I initially used the MMG5 prefix because the first Mmg repository contained only mmg3d but 2 versions of it: the V4 that was already used by some partners and the V5 by others. When I created the APIs for the V5, I wanted to ensure the differentiation between the 2 versions (I think that the V4 didn't have true APIs).

Finally, we remove the sources of Mmg-4 and add the sources of Mmg2D and MmgS. As the 3 software provides the same kind of functions, it raises the need for other API prefixes without breaking the previous one and all 3D APIs functions whith MMG5_ prefix have been duplicated with the MMG3D_ one.

Now everything has been cleaned:

I am still not sure if having the major release version in the API prefix is a good idea: on one side, it will force the users to update their Mmg interfacing if we release a new major version. On the other side, it is very likely that a new major version will break the current API and that it will be the occasion to improve a lot this API and to change things that I would do differently with hindsight.

Best