Skip to content

Conversation

reneSchm
Copy link
Member

@reneSchm reneSchm commented Sep 17, 2025

Changes and Information

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

  • Reworked CLI internals to reduce compile time.
  • Add "default options" feature to the CLI, implementing a common CLI usage pattern.
  • Add a ParameterSetBuilder to simplify creating parameter sets specifically for use with the CLI.

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

  • The new StringLiteral comparision operators are currently unused. It is a leftover of a different solution for finding cli::ParameterSet members. The operators can be removed on request.

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).

@reneSchm reneSchm self-assigned this Sep 17, 2025
@reneSchm reneSchm added the class::feature A feature to be implemented for some part of the software label Sep 17, 2025
@reneSchm reneSchm added loc::backend This issue concerns the C++ backend implementation. class::improvement Cleanup that doesn't affect functionality labels Sep 17, 2025
Copy link

codecov bot commented Sep 17, 2025

Codecov Report

❌ Patch coverage is 98.28767% with 5 lines in your changes missing coverage. Please review.
✅ Project coverage is 97.24%. Comparing base (dd116d7) to head (2dc0680).

Files with missing lines Patch % Lines
cpp/memilio/io/cli.h 97.05% 5 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1377      +/-   ##
==========================================
- Coverage   97.25%   97.24%   -0.02%     
==========================================
  Files         173      174       +1     
  Lines       15203    15330     +127     
==========================================
+ Hits        14786    14907     +121     
- Misses        417      423       +6     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@HenrZu HenrZu self-requested a review September 18, 2025 07:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
class::feature A feature to be implemented for some part of the software class::improvement Cleanup that doesn't affect functionality loc::backend This issue concerns the C++ backend implementation.
Projects
Development

Successfully merging this pull request may close these issues.

1 participant