Skip to content

support simModSuite 2026#534

Merged
cwsmith merged 8 commits into
developfrom
cws/simModSuite2026
Apr 22, 2026
Merged

support simModSuite 2026#534
cwsmith merged 8 commits into
developfrom
cws/simModSuite2026

Conversation

@cwsmith

@cwsmith cwsmith commented Apr 20, 2026

Copy link
Copy Markdown
Contributor

SimModSuite 2026.0-260411 replaces GM_createFromAssemblyModel() with ModelBuilder APIs. This PR makes those changes and moves and renames the header that provides the SimModSuite version to the top level dir of the repo (apf_simConfig.h -> simModSuiteConfig.h). This is a breaking change... but I don't know if anyone will care unless they are using our header to determine which SimModSuite APIs to call etc.

A couple alternatives:

  • keep apf_sim/apf_simConfig.h.in and have other packages depend on it... this seems messy as gmi_sim doesn't/shouldn't depend on apf_sim
  • drop support for SimModSuite prior to 2023 (we support 15.0.191017 and later) and use the simmetrix SimModSuiteVersion.h header - still a breaking change, but better in the long run to not rely on our own header for the same functionality

@bobpaw Thoughts?

@cwsmith cwsmith requested a review from bobpaw April 20, 2026 02:20
@cwsmith

cwsmith commented Apr 20, 2026

Copy link
Copy Markdown
Contributor Author

/runtests

@github-actions

Copy link
Copy Markdown

Build Log
Simmetrix Test Result: success
Simmetrix + CGNS Test Result: success

@bobpaw

bobpaw commented Apr 20, 2026

Copy link
Copy Markdown
Collaborator

SimModSuite 2026.0-260411 replaces GM_createFromAssemblyModel() with ModelBuilder APIs. This PR makes those changes and moves and renames the header that provides the SimModSuite version to the top level dir of the repo (apf_simConfig.h -> simModSuiteConfig.h). This is a breaking change... but I don't know if anyone will care unless they are using our header to determine which SimModSuite APIs to call etc.

Moving the file up sounds good to me. It can be a minor version bump if the apf_simConfig.h file is changed so that all it contains is #include <simModSuiteConfig.h>. Many compilers also support the #warning directive (standard since C23 [1]) that can be used to issue a deprecation notice. I suggest that the name be prefixed like other PUMI headers since neither PUMI nor Simmetrix use header subdirectories.

  • keep apf_sim/apf_simConfig.h.in and have other packages depend on it... this seems messy as gmi_sim doesn't/shouldn't depend on apf_sim

I agree with the logic here.

  • drop support for SimModSuite prior to 2023 (we support 15.0.191017 and later) and use the simmetrix SimModSuiteVersion.h header - still a breaking change, but better in the long run to not rely on our own header for the same functionality

The simModSuiteConfig.h could point to SimModSuiteVersion.h if it was found at configure time. It may also make sense to parse that file for version information instead of using the current install path heuristic. I did something similar a long time ago with the PDCurses library [2].

  1. https://en.cppreference.com/c/preprocessor/error
  2. https://github.com/bobpaw/FindPDCurses/blob/master/FindPDCurses.cmake

@bobpaw

bobpaw commented Apr 20, 2026

Copy link
Copy Markdown
Collaborator

Shouldn't this PR target develop?

@cwsmith cwsmith changed the base branch from master to develop April 20, 2026 13:19
@cwsmith

cwsmith commented Apr 20, 2026

Copy link
Copy Markdown
Contributor Author

Thank you.
pumi_ or PUMI_ prefix for the header? I'm leaning towards pumi_.

regarding use of SimModSuiteVersion.h:
To keep things simple, I'd rather just have one approach: the current extraction from the install path or directly using SimModSuiteVersion.h.

@bobpaw

bobpaw commented Apr 22, 2026

Copy link
Copy Markdown
Collaborator

Looks good. Will there be a tag/release or will you wait to bundle it with anything else?

@cwsmith

cwsmith commented Apr 22, 2026

Copy link
Copy Markdown
Contributor Author

Good point. This would be a minor version bump given that is is backward compatible. I'll push a commit to update the version but don't think we need to tag/release for this.

@cwsmith

cwsmith commented Apr 22, 2026

Copy link
Copy Markdown
Contributor Author

/runtests

@github-actions

Copy link
Copy Markdown

Build Log
Simmetrix Test Result: failure
Simmetrix + CGNS Test Result: skipped

@cwsmith

cwsmith commented Apr 22, 2026

Copy link
Copy Markdown
Contributor Author

/runtests

@github-actions

Copy link
Copy Markdown

Build Log
Simmetrix Test Result: success
Simmetrix + CGNS Test Result: success

@cwsmith cwsmith merged commit 2e5a4ef into develop Apr 22, 2026
20 of 21 checks passed
@cwsmith cwsmith deleted the cws/simModSuite2026 branch April 22, 2026 15:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants