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

Macro free dependency handling. #892

Merged
merged 2 commits into from
Feb 8, 2024
Merged

Macro free dependency handling. #892

merged 2 commits into from
Feb 8, 2024

Conversation

1uc
Copy link
Collaborator

@1uc 1uc commented Dec 13, 2023

Sketch of how we could reorganize our headers to allow each code to pick their dependencies simply by choosing which headers they include. This is similar to how pybind11 handles their convertors between Python types and say STL containers.

@1uc 1uc force-pushed the 1uc/restructure-headers branch 4 times, most recently from fa31058 to a6157a6 Compare December 13, 2023 15:21
Copy link

codecov bot commented Dec 13, 2023

Codecov Report

All modified and coverable lines are covered by tests ✅

Comparison is base (7638232) 85.96% compared to head (180ed8c) 85.96%.

Additional details and impacted files
@@           Coverage Diff           @@
##           master     #892   +/-   ##
=======================================
  Coverage   85.96%   85.96%           
=======================================
  Files          89       89           
  Lines        5870     5870           
=======================================
  Hits         5046     5046           
  Misses        824      824           

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

matz-e
matz-e previously approved these changes Dec 14, 2023
Copy link
Member

@matz-e matz-e left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Glanced at this quickly, I like it a lot :)

@1uc 1uc added the v3 Anything that needs to be resolved before `v3`. label Dec 14, 2023
@1uc
Copy link
Collaborator Author

1uc commented Dec 18, 2023

The bulk of the refactoring can already be merged, see #898.

@1uc 1uc force-pushed the 1uc/restructure-headers branch 2 times, most recently from 7c03c1c to 180ed8c Compare December 19, 2023 15:17
@1uc 1uc marked this pull request as ready for review December 19, 2023 16:04
Copy link
Member

@alkino alkino left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice improvment

In a prior commit the sources were restructured such that each optional
dependency is contained in separate files. This commit removes the
macros that controlled which dependencies are included.

To include the optional dependency Boost use:

    #include <highfive/highfive.hpp>
    #include <highfive/boost.hpp>

the order doesn't matter.
@alkino alkino merged commit 0b47bad into master Feb 8, 2024
34 checks passed
@alkino alkino deleted the 1uc/restructure-headers branch February 8, 2024 16:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
v3 Anything that needs to be resolved before `v3`.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants