Skip to content

1486 Modernizations and minor fixes in core C++ library #1487

Open
reneSchm wants to merge 8 commits intomainfrom
1486-spring-clang-tidying
Open

1486 Modernizations and minor fixes in core C++ library #1487
reneSchm wants to merge 8 commits intomainfrom
1486-spring-clang-tidying

Conversation

@reneSchm
Copy link
Member

@reneSchm reneSchm commented Feb 6, 2026

Changes and Information

Please briefly list the changes (main added features, changed items, or corrected bugs) made:

  • Replace is_expression_valid clauses using the requires keyword.
  • Replace several SFINAE constructions with concepts or if constexpr constructions.
  • Update some includes and include guards.

If need be, add additional information and what the reviewer should look out for in particular:

  • This PR actively avoids making feature changes.
  • Changes are (mostly) restricted to cpp/memilio.
  • Most changes were implemented as recommended by clang-tidy, with occasional manual improvements.
  • Updates to index.h are already included in 1460.
  • parameter_set.h could potentially use a partial restructure, so changes to it in this PR are minimal.

Merge Request - Guideline Checklist

Please check our git workflow. Use the draft feature if the Pull Request is not yet ready to review.

Checks by code author

  • Every addressed issue is linked (use the "Closes #ISSUE" keyword below)
  • New code adheres to coding guidelines
  • No large data files have been added (files should in sum not exceed 100 KB, avoid PDFs, Word docs, etc.)
  • Tests are added for new functionality and a local test run was successful (with and without OpenMP)
  • Appropriate documentation within the code (Doxygen) for new functionality has been added in the code
  • Appropriate external documentation (ReadTheDocs) for new functionality has been added to the online documentation
  • Proper attention to licenses, especially no new third-party software with conflicting license has been added
  • (For ABM development) Checked benchmark results and ran and posted a local test above from before and after development to ensure performance is monitored.

Checks by code reviewer(s)

  • Corresponding issue(s) is/are linked and addressed
  • Code is clean of development artifacts (no deactivated or commented code lines, no debugging printouts, etc.)
  • Appropriate unit tests have been added, CI passes, code coverage and performance is acceptable (did not decrease)
  • No large data files added in the whole history of commits(files should in sum not exceed 100 KB, avoid PDFs, Word docs, etc.)
  • On merge, add 2-5 lines with the changes (main added features, changed items, or corrected bugs) to the merge-commit-message. This can be taken from the briefly-list-the-changes above (best case) or the separate commit messages (worst case).

Closes #1486

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Spring clang-tidying

1 participant