[PR #16007] Upgrade fmt to 11.0.2 #30804

Open
opened 2026-01-31 09:43:05 +00:00 by claunia · 0 comments
Owner

Original Pull Request: https://github.com/microsoft/terminal/pull/16007

State: closed
Merged: Yes


Between fmt 7.1.3 and 11.0.2 a lot has happened. wchar_t support is
now more limited and implicit conversions don't work anymore.

Furthermore, even the non-FMT_COMPILE API is now compile-time checked
and so it fails to work in our UI code which passes hstring format
strings which aren't implicitly convertible to the expected type.
fmt::runtime was introduced for this but it also fails to work for
hstring parameters. To solve this, a new RS_fmt macro was added
to abstract the added std::wstring_view casting away.

Finally, some additional changes to reduce stringstream usage
have been made, whenever format_to, etc., is available.
This mostly affects ActionArgs.cpp.

Closes #16000

Validation Steps Performed

  • Compiles
  • Settings page opens
**Original Pull Request:** https://github.com/microsoft/terminal/pull/16007 **State:** closed **Merged:** Yes --- Between fmt 7.1.3 and 11.0.2 a lot has happened. `wchar_t` support is now more limited and implicit conversions don't work anymore. Furthermore, even the non-`FMT_COMPILE` API is now compile-time checked and so it fails to work in our UI code which passes `hstring` format strings which aren't implicitly convertible to the expected type. `fmt::runtime` was introduced for this but it also fails to work for `hstring` parameters. To solve this, a new `RS_fmt` macro was added to abstract the added `std::wstring_view` casting away. Finally, some additional changes to reduce `stringstream` usage have been made, whenever `format_to`, etc., is available. This mostly affects `ActionArgs.cpp`. Closes #16000 ## Validation Steps Performed * Compiles ✅ * Settings page opens ✅
claunia added the pull-request label 2026-01-31 09:43:05 +00:00
Sign in to join this conversation.
No Label pull-request
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#30804