Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Required preCICE version in the preCICE configuration file #2004

Open
MakisH opened this issue Apr 18, 2024 · 2 comments
Open

Required preCICE version in the preCICE configuration file #2004

MakisH opened this issue Apr 18, 2024 · 2 comments
Labels
configuration Related to the preCICE configuration usability This issue will make preCICE easier for non-expert users

Comments

@MakisH
Copy link
Member

MakisH commented Apr 18, 2024

At the moment, when a user tries to use a preCICE v2 configuration file with preCICE v3 (or the reverse), they will just get errors regarding unknown configuration tags.

Since we keep the config compatible in the same preCICE major version, but then also often change it with each major version, I think it would be very helpful to add a <precice-version major="3"> tag, which we could then check and throw a proper error.

We could even extend that to something like <precice-version major="3" minor="5"> to signify that a feature mentioned in this config requires preCICE v3, but at least v3.5.

Retrospectively, we could implement a simple error message that looks for old keywords and complains that This configuration file was probably made for preCICE v1, but you are using preCICE v3.2.0.

Questions:

  • Would something like this be helpful?
  • Would adding such a tag be feasible?
  • Would adding such a heuristic for older versions be feasible?
@BenjaminRodenberg
Copy link
Member

There are often rather ranges of compatible versions. To some degree this is covered by semantic versioning already, but one might also need <precice-version major="3" min-minor="5"> or <precice-version min-major="3" max-major="4">. I think this is not so relevant, if we only offer major version here, but if we also allow the user to specify minor versions, this might be over restrictive.

@MakisH
Copy link
Member Author

MakisH commented Apr 23, 2024

As I wrote already, I only intended to have a minor as implied min-minor:

We could even extend that to something like <precice-version major="3" minor="5"> to signify that a feature mentioned in this config requires preCICE v3, but at least v3.5.

Do you have any examples of a config that stops being valid during a major version? That would be something we currently don't allow.

@fsimonis fsimonis added the configuration Related to the preCICE configuration label Apr 25, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
configuration Related to the preCICE configuration usability This issue will make preCICE easier for non-expert users
Projects
Status: No status
Development

No branches or pull requests

3 participants