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
Add fmtlib dependency #1079
Add fmtlib dependency #1079
Conversation
a39eb06
to
0162836
Compare
I know we removed |
0162836
to
92a1226
Compare
Added an emoji to the release notes to signal a build dependency, see what you think (open to ideas on alternative emojis).
Added (force-pushed). |
26d8cde
to
e88c0b2
Compare
Fixup pushed to reduce fmtlib version to 9.1.0, which doesn't export errant symbols. Also included the |
Thanks for posting upstream does this comment imply we may have issues on Windows with the older version? |
As discussed offline - posted a follow-up question upstream to make sure I understand, but pretty certain we don't have a problem, especially in header-only mode. |
e88c0b2
to
720ee97
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Assuming were happy with the symbol situation, then LGTM 👍 🙏
Closes OpenAssetIO#1070. fmtlib allows for easy, safe string substitution in C++, adding advanced formatting functionality (e.g. rounding), and reducing bloat. So add as a new private build-only header-only dependency. Using header-only increases compile times, but subjectively it's not noticeable, and has the benefit of avoiding a possible public library dependency (if OpenAssetIO is built as a static library). Tweak a single existing, tested, log string to make use of libfmt, to ensure basic usage is validated. Signed-off-by: David Feltell <david.feltell@foundry.com>
f7441be
to
8fa9081
Compare
Description
Closes #1070.
fmtlib allows for easy, safe string substitution in C++, adding advanced formatting functionality (e.g. rounding), and reducing bloat.
So add as a new private build-only header-only dependency.
Using header-only increases compile times, but subjectively it's not noticeable, and has the benefit of avoiding a possible public library dependency (if OpenAssetIO is built as a static library).
Tweak a single existing, tested, log string to make use of libfmt, to ensure basic usage is validated.
Added to openassetio-build Docker image: https://github.com/OpenAssetIO/OpenAssetIO/pkgs/container/openassetio-build
[ ] I have updated all relevant user documentation.Reviewer Notes
Test Instructions