Skip to content

Develop#251

Merged
Algiane merged 4 commits intoMmgTools:developfrom
mpotse:develop
Mar 7, 2024
Merged

Develop#251
Algiane merged 4 commits intoMmgTools:developfrom
mpotse:develop

Conversation

@mpotse
Copy link
Copy Markdown
Contributor

@mpotse mpotse commented Mar 7, 2024

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 Algiane added kind: enhancement enhancement to an existing feature part: documentation labels Mar 7, 2024
@Algiane Algiane merged commit 5480fae into MmgTools:develop Mar 7, 2024
@Algiane
Copy link
Copy Markdown
Member

Algiane commented Mar 7, 2024

Thanks!

@Algiane
Copy link
Copy Markdown
Member

Algiane commented Mar 8, 2024

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:

  • data structures and parameters that are common between the 3 software uses the MMG5_ prefix.
  • API functions should have a MMG< 3D | 2D | S > depending on the software
  • some MMG5_ API functions exists but they are common to the 3 software (the 3D MMG5 APIs have been removed)

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

kind: enhancement enhancement to an existing feature part: documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants