chore(deps): update dependency fmt to v12 #531
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Coming soon: The Renovate bot (GitHub App) will be renamed to Mend. PRs from Renovate will soon appear from 'Mend'. Learn more here.
This PR contains the following updates:
11.2.0
->12.0.0
Release Notes
fmtlib/fmt (fmt)
v12.0.0
Compare Source
Optimized the default floating point formatting
(#3675,
#4516). In particular, formatting a
double
with format string compilation into a stack allocated buffer ismore than 60% faster in version 12.0 compared to 11.2 according to
dtoa-benchmark:
Added
constexpr
support tofmt::format
. For example:now works at compile time provided that
std::string
supportsconstexpr
(#3403,
#4456). Thanks @msvetkin.
Added
FMT_STATIC_FORMAT
that allows formatting into a string of the exactrequired size at compile time.
For example:
compiles to just
It can be accessed as a C string with
s.c_str()
or as a string view withs.str()
.Improved C++20 module support
(#4451,
#4459,
#4476,
#4488,
#4491,
#4495).
Thanks @arBmind, @tkhyn, @Mishura4, @anonymouspc and @autoantwort.
Switched to using estimated display width in precision. For example:
prints
because
🐱
has an estimated width of 2(#4272,
#4443,
#4475).
Thanks @nikhilreddydev and @localspook.
Fix interaction between debug presentation, precision, and width for strings
(#4478). Thanks @localspook.
Implemented allocator propagation on
basic_memory_buffer
move(#4487,
#4490). Thanks @toprakmurat.
Fixed an ambiguity between
std::reference_wrapper<T>
andformat_as
formatters (#4424,
#4434). Thanks @jeremy-rifkin.
Removed the following deprecated APIs:
has_formatter
: useis_formattable
instead,basic_format_args::parse_context_type
,basic_format_args::formatter_type
and similar aliases in context types,fmt::printf
,fmt::print
that take text styles,is_*char
traits,fmt::localtime
.Deprecated wide overloads of
fmt::fprintf
andfmt::sprintf
.Improved diagnostics for the incorrect usage of
fmt::ptr
(#4453). Thanks @TobiSchluter.
Made handling of ANSI escape sequences more efficient
(#4511,
#4528).
Thanks @localspook and @Anas-Hamdane.
Fixed a buffer overflow on all emphasis flags set
(#4498). Thanks @dominicpoeschko.
Fixed an integer overflow for precision close to the max
int
value.Fixed compatibility with WASI (#4496,
#4497). Thanks @whitequark.
Fixed
back_insert_iterator
detection, preventing a fallback on slower paththat handles arbitrary iterators (#4454).
Fixed handling of invalid glibc
FILE
buffers(#4469).
Added
wchar_t
support to thestd::byte
formatter(#4479,
#4480). Thanks @phprus.
Changed component prefix from
fmt-
tofmt_
for compatibility withNSIS/CPack on Windows, e.g.
fmt-doc
changed tofmt_doc
(#4441,
#4442). Thanks @n-stein.
Added the
FMT_CUSTOM_ASSERT_FAIL
macro to simplify providing a customfmt::assert_fail
implementation (#4505).Thanks @HazardyKnusperkeks.
Switched to
FMT_THROW
on reporting format errors so that it can beoverriden by users when exceptions are disabled
(#4521). Thanks @HazardyKnusperkeks.
Improved master project detection and disabled install targets when using
{fmt} as a subproject by default (#4536).
Thanks @crueter.
Made various code improvements
(#4445,
#4448,
#4473,
#4522).
Thanks @localspook, @tchaikov and @way4sahil.
Added Conan instructions to the docs
(#4537). Thanks @uilianries.
Removed Bazel files to avoid issues with downstream packaging
(#4530). Thanks @mering.
Added more entries for generated files to
.gitignore
(#4355,
#4512).
Thanks @dinomight and @localspook.
Fixed various warnings and compilation issues
(#4447,
#4470,
#4474,
#4477,
#4471,
#4483,
#4515,
#4533,
#4534).
Thanks @dodomorandi, @localspook, @remyjette, @Tomek-Stolarczyk, @Mishura4,
@mattiasljungstrom and @FatihBAKIR.
Configuration
📅 Schedule: Branch creation - "every 1 months on the first day of the month" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.