-
Notifications
You must be signed in to change notification settings - Fork 48
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
Update dependency fmt to v11 #407
Conversation
WalkthroughThe Changes
Sequence Diagram(s)sequenceDiagram
participant User
participant BuildSystem
participant fmtLibrary
User->>BuildSystem: Request to build
BuildSystem->>fmtLibrary: Download fmt version 11.0.2
fmtLibrary-->>BuildSystem: Provide files
BuildSystem-->>User: Build complete
Poem
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (invoked as PR comments)
Additionally, you can add CodeRabbit Configuration File (
|
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.
Actionable comments posted: 0
Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Files selected for processing (1)
- WORKSPACE (1 hunks)
Additional comments not posted (3)
WORKSPACE (3)
59-59
: LGTM!The
strip_prefix
aligns with the new version of thefmt
library.
61-61
: LGTM!The URL correctly points to the new version of the
fmt
library.
58-58
: Verify the SHA256 checksum.Ensure that the new SHA256 checksum matches the downloaded archive to maintain integrity.
Run the following script to verify the SHA256 checksum:
This PR contains the following updates:
10.1.1
->11.0.2
Release Notes
fmtlib/fmt (fmt)
v11.0.2
Compare Source
Fixed compatibility with non-POSIX systems
https://github.com/fmtlib/fmt/issues/405440https://github.com/fmtlib/fmt/issues/4060ues/4060).
Fixed performance regressions when using
std::back_insert_iterator
withfmt::format_to
(https://github.com/fmtlib/fmt/issues/4070).Fixed handling of
std::generator
and move-only iteratorshttps://github.com/fmtlib/fmt/issues/405340https://github.com/fmtlib/fmt/pull/4057ull/4057). Thanks @Arghnews.
Made
formatter<std::string_view>::parse
work with types convertible tostd::string_view
(https://github.com/fmtlib/fmt/issues/4036,https://github.com/fmtlib/fmt/pull/40554055). Thanks @Arghnews.
Made
volatile void*
formattablehttps://github.com/fmtlib/fmt/issues/404940https://github.com/fmtlib/fmt/pull/4056ull/4056). Thanks @Arghnews.
Made
Glib::ustring
not be confused withstd::string
https://github.com/fmtlib/fmt/issues/40524052).
Made
fmt::context
iterator compatible with STL algorithms that rely oniterator categohttps://github.com/fmtlib/fmt/issues/40794079).
v11.0.1
Compare Source
Fixed version number in the inline namespace
https://github.com/fmtlib/fmt/issues/40474047).
Fixed disabling Unicode support via CMake
https://github.com/fmtlib/fmt/issues/40514051).
Fixed deprecated
visit_format_arg
(https://github.com/fmtlib/fmt/pull/4043).Thanks @nebkat.
Fixed handling of a sign and improved the
std::complex
formaterhttps://github.com/fmtlib/fmt/pull/403440https://github.com/fmtlib/fmt/pull/4050ull/4050). Thanks @tesch1 and @phprus.
Fixed ADL issues in
fmt::printf
when using C++20https://github.com/fmtlib/fmt/pull/40424042). Thanks @toge.
Removed a redundant check in the formatter for
std::expected
https://github.com/fmtlib/fmt/pull/40404040). Thanks @phprus.
v11.0.0
Compare Source
Added
fmt/base.h
which provides a subset of the API with minimal includedependencies and enough functionality to replace all uses of the
printf
family of functions. This brings the compile time of code using {fmt} much
closer to the equivalent
printf
code as shown on the following benchmarkthat compiles 100 source files:
This gives almost 4x improvement in build speed compared to version 10.
Note that the benchmark is purely formatting code and includes. In real
projects the difference from
printf
will be smaller partly because commonstandard headers will be included in almost any translation unit (TU) anyway.
In particular, in every case except
printf
above ~1s is spent in total onincluding
<type_traits>
in all TUs.Optimized includes in other headers such as
fmt/format.h
which is nowroughly equivalent to the old
fmt/core.h
in terms of build speed.Migrated the documentation at https://fmt.dev/ from Sphinx to MkDocs.
Improved C++20 module support
https://github.com/fmtlib/fmt/issues/399039https://github.com/fmtlib/fmt/pull/3991ulhttps://github.com/fmtlib/fmt/issues/3993/ihttps://github.com/fmtlib/fmt/pull/3994ibhttps://github.com/fmtlib/fmt/pull/3997fmhttps://github.com/fmtlib/fmt/pull/3998cohttps://github.com/fmtlib/fmt/pull/4004huhttps://github.com/fmtlib/fmt/pull/4005/ghttps://github.com/fmtlib/fmt/pull/4006pshttps://github.com/fmtlib/fmt/pull/4013 hhttps://github.com/fmtlib/fmt/pull/4027
https://github.com/fmtlib/fmt/pull/4029027,
Module purview can only contain direct preprocessor code fmtlib/fmt#4029). In particular, native CMake support
for modules is now used if available. Thanks @yujincheng08 and @matt77hias.
Added an option to replace standard includes with
import std
enabled viathe
FMT_IMPORT_STD
macro (https://github.com/fmtlib/fmt/issues/3921,https://github.com/fmtlib/fmt/pull/39283928). Thanks @matt77hias.
Exported
fmt::range_format
,fmt::range_format_kind
andfmt::compiled_string
from thefmt
modulehttps://github.com/fmtlib/fmt/pull/397039https://github.com/fmtlib/fmt/pull/3999ull/3999).
Thanks @matt77hias and @yujincheng08.
Improved integration with stdio in
fmt::print
, enabling direct writesinto a C stream buffer in common cases. This may give significant
performance improvements ranging from tens of percent to 2x and eliminates dynamic memory
allocations on the buffer level. It is currently enabled for built-in and
string types with wider availability coming up in future releases.
For example, it gives ~24% improvement on a simple benchmark compiled with Apple clang
version 15.0.0 (clang-1500.1.0.2.5) and run on macOS 14.2.1:
Improved safety of
fmt::format_to
when writing to an arrayhttps://github.com/fmtlib/fmt/pull/38053805).
For example (godbolt):
no longer results in a buffer overflow. Instead the output will be truncated
and you can get the end iterator and whether truncation occurred from the
result
object. Thanks @ThePhD.Enabled Unicode support by default in MSVC, bringing it on par with other
compilers and making it unnecessary for users to enable it explicitly.
Most of {fmt} is encoding-agnostic but this prevents mojibake in places
where encoding matters such as path formatting and terminal output.
You can control the Unicode support via the CMake
FMT_UNICODE
option.Note that some {fmt} packages such as the one in vcpkg have already been
compiled with Unicode enabled.
Added a formatter for
std::expected
https://github.com/fmtlib/fmt/pull/38343834). Thanks @dominicpoeschko.
Added a formatter for
std::complex
https://github.com/fmtlib/fmt/issues/146714https://github.com/fmtlib/fmt/issues/3886uehttps://github.com/fmtlib/fmt/pull/3892mthttps://github.com/fmtlib/fmt/pull/3900ib/fmt/pull/3900). Thanks @phprus.
Added a formatter for
std::type_info
https://github.com/fmtlib/fmt/pull/39783978). Thanks @matt77hias.
Specialized
formatter
forstd::basic_string
types with custom traitsand allocatohttps://github.com/fmtlib/fmt/issues/393839https://github.com/fmtlib/fmt/pull/3943ull/3943). Thanks @dieram3.
Added formatters for
std::chrono::day
,std::chrono::month
,std::chrono::year
andstd::chrono::year_month_day
https://github.com/fmtlib/fmt/issues/375837https://github.com/fmtlib/fmt/issues/3772uehttps://github.com/fmtlib/fmt/pull/3906mthttps://github.com/fmtlib/fmt/pull/3913ib/fmt/pull/3913). For example:
prints a green day:
Thanks @zivshek.
Fixed handling of precision in
%S
(https://github.com/fmtlib/fmt/issues/3794,https://github.com/fmtlib/fmt/pull/38143814). Thanks @js324.
Added support for the
-
specifier (glibcstrftime
extension) to day ofthe month (
%d
) and week of the year (%W
,%U
,%V
) specifiershttps://github.com/fmtlib/fmt/pull/39763976). Thanks @ZaheenJ.
Fixed the scope of the
-
extension in chrono formatting so that it doesn'tapply to subsequent specifiehttps://github.com/fmtlib/fmt/issues/381138https://github.com/fmtlib/fmt/pull/3812ull/3812). Thanks @phprus.
Improved handling of
time_point::min()
https://github.com/fmtlib/fmt/issues/32823282).
Added support for character range formatting
https://github.com/fmtlib/fmt/issues/385738https://github.com/fmtlib/fmt/pull/3863ull/3863). Thanks @js324.
Added
string
anddebug_string
range formattershttps://github.com/fmtlib/fmt/pull/397339https://github.com/fmtlib/fmt/pull/4024ull/4024). Thanks @matt77hias.
Enabled ADL for
begin
andend
infmt::join
https://github.com/fmtlib/fmt/issues/381338https://github.com/fmtlib/fmt/pull/3824ull/3824). Thanks @bbolli.
Made contiguous iterator optimizations apply to
std::basic_string
iteratorshttps://github.com/fmtlib/fmt/pull/37983798). Thanks @phprus.
Added support for ranges with mutable
begin
andend
https://github.com/fmtlib/fmt/issues/375237https://github.com/fmtlib/fmt/pull/3800ulhttps://github.com/fmtlib/fmt/pull/3955mt/pull/3955). Thanks @tcbrindle and @Arghnews.
Added support for move-only iterators to
fmt::join
https://github.com/fmtlib/fmt/issues/380238https://github.com/fmtlib/fmt/pull/3946ull/3946). Thanks @Arghnews.
Moved range and iterator overloads of
fmt::join
tofmt/ranges.h
, nextto other overloads.
Fixed handling of types with
begin
returningvoid
such as Eigen matriceshttps://github.com/fmtlib/fmt/issues/383938https://github.com/fmtlib/fmt/pull/3964ull/3964). Thanks @Arghnews.
Added an
fmt::formattable
concept (https://github.com/fmtlib/fmt/pull/3974).Thanks @matt77hias.
Added support for
__float128
(https://github.com/fmtlib/fmt/issues/3494).Fixed rounding issues when formatting
long double
with fixed precisionhttps://github.com/fmtlib/fmt/issues/35393539).
Made
fmt::isnan
not trigger floating-point exception for NaN valueshttps://github.com/fmtlib/fmt/issues/394839https://github.com/fmtlib/fmt/pull/3951ull/3951). Thanks @alexdewar.
Removed dependency on
<memory>
forstd::allocator_traits
when possiblehttps://github.com/fmtlib/fmt/pull/38043804). Thanks @phprus.
Enabled compile-time checks in formatting functions that take text colors and
styles.
Deprecated wide stream overloads of
fmt::print
that take text styles.Made format string compilation work with clang 12 and later despite
only partial non-type template parameter suppohttps://github.com/fmtlib/fmt/issues/4000uehttps://github.com/fmtlib/fmt/pull/4001mt/pull/4001). Thanks @yujincheng08.
Made
fmt::iterator_buffer
's move constructornoexcept
https://github.com/fmtlib/fmt/pull/38083808). Thanks @waywardmonkeys.
Started enforcing that
formatter::format
is const for compatibilitywith
std::format
(https://github.com/fmtlib/fmt/issues/3447).Added
fmt::basic_format_arg::visit
and deprecatedfmt::visit_format_arg
.Made
fmt::basic_string_view
not constructible fromnullptr
forconsistency with
std::string_view
in C++23https://github.com/fmtlib/fmt/pull/38463846). Thanks @dalle.
Fixed
fmt::group_digits
for negative integershttps://github.com/fmtlib/fmt/issues/389138https://github.com/fmtlib/fmt/pull/3901ull/3901). Thanks @phprus.
Fixed handling of negative ids in
fmt::basic_format_args::get
https://github.com/fmtlib/fmt/pull/39453945). Thanks @marlenecota.
Improved named argument validation
https://github.com/fmtlib/fmt/issues/38173817).
Disabled copy construction/assignment for
fmt::format_arg_store
andfixed moved constructihttps://github.com/fmtlib/fmt/pull/38333833).
Thanks @ivafanas.
Worked around a locale issue in RHEL/devtoolset
https://github.com/fmtlib/fmt/issues/385838https://github.com/fmtlib/fmt/pull/3859ull/3859). Thanks @g199209.
Added RTTI detection for MSVC (https://github.com/fmtlib/fmt/pull/3821,
https://github.com/fmtlib/fmt/pull/39633963). Thanks @edo9300.
Migrated the documentation from Sphinx to MkDocs.
Improved documentation and README
https://github.com/fmtlib/fmt/issues/377537https://github.com/fmtlib/fmt/pull/3784ulhttps://github.com/fmtlib/fmt/issues/3788/ihttps://github.com/fmtlib/fmt/pull/3789ibhttps://github.com/fmtlib/fmt/pull/3793fmhttps://github.com/fmtlib/fmt/issues/3818m/https://github.com/fmtlib/fmt/pull/3820huhttps://github.com/fmtlib/fmt/pull/3822/ghttps://github.com/fmtlib/fmt/pull/3843pshttps://github.com/fmtlib/fmt/pull/3890 hhttps://github.com/fmtlib/fmt/issues/3894 https://github.com/fmtlib/fmt/pull/389589https://github.com/fmtlib/fmt/pull/3905llhttps://github.com/fmtlib/fmt/issues/3942puhttps://github.com/fmtlib/fmt/pull/4008fmt/issues/3942,
README.md: update to remove "not yet release" remarks on clang-tidy fmtlib/fmt#4008).
Thanks @zencatalyst, WolleTD, @tupaschoal, @Dobiasd, @frank-weinberg, @bbolli,
@phprus, @waywardmonkeys, @js324 and @tchaikov.
Improved CI and tests
https://github.com/fmtlib/fmt/issues/387838https://github.com/fmtlib/fmt/pull/3883ulhttps://github.com/fmtlib/fmt/issues/3897/ihttps://github.com/fmtlib/fmt/pull/3979ibhttps://github.com/fmtlib/fmt/pull/3980fmhttps://github.com/fmtlib/fmt/pull/3988cohttps://github.com/fmtlib/fmt/pull/4010huhttps://github.com/fmtlib/fmt/pull/4012/ghttps://github.com/fmtlib/fmt/pull/4038ps://github.com/Change actions/github-script from e69ef54 -> 60a0d83 fmtlib/fmt#4038).
Thanks @vgorrX, @waywardmonkeys, @tchaikov and @phprus.
Fixed buffer overflow when using format string compilation with debug format
and
std::back_insert_iterator
(https://github.com/fmtlib/fmt/issues/3795,https://github.com/fmtlib/fmt/pull/37973797). Thanks @phprus.
Improved Bazel support
https://github.com/fmtlib/fmt/pull/379237https://github.com/fmtlib/fmt/pull/3801ulhttps://github.com/fmtlib/fmt/pull/3962mthttps://github.com/fmtlib/fmt/pull/3965ib/fmt/pull/3965). Thanks @Vertexwahn.
Improved/fixed the CMake config
https://github.com/fmtlib/fmt/issues/377737https://github.com/fmtlib/fmt/pull/3783ulhttps://github.com/fmtlib/fmt/issues/3847/ihttps://github.com/fmtlib/fmt/pull/3907ib/fmt/pull/3907). Thanks @phprus and @xTachyon.
Fixed various warnings and compilation issues
https://github.com/fmtlib/fmt/issues/368536https://github.com/fmtlib/fmt/issues/3769uehttps://github.com/fmtlib/fmt/issues/3796/ihttps://github.com/fmtlib/fmt/issues/3803/fhttps://github.com/fmtlib/fmt/pull/3806fmhttps://github.com/fmtlib/fmt/pull/3807cohttps://github.com/fmtlib/fmt/issues/3809b.https://github.com/fmtlib/fmt/pull/3810/ghttps://github.com/fmtlib/fmt/issues/3830:/https://github.com/fmtlib/fmt/pull/3832 hhttps://github.com/fmtlib/fmt/issues/3835 https://github.com/fmtlib/fmt/pull/384483https://github.com/fmtlib/fmt/issues/3854/3https://github.com/fmtlib/fmt/pull/3856ishttps://github.com/fmtlib/fmt/pull/3865b/https://github.com/fmtlib/fmt/pull/3866mthttps://github.com/fmtlib/fmt/pull/3880omhttps://github.com/fmtlib/fmt/issues/3881.chttps://github.com/fmtlib/fmt/issues/3884ubhttps://github.com/fmtlib/fmt/issues/3898gihttps://github.com/fmtlib/fmt/pull/3899tphttps://github.com/fmtlib/fmt/pull/3909 https://github.com/fmtlib/fmt/pull/391799https://github.com/fmtlib/fmt/pull/3923l/https://github.com/fmtlib/fmt/pull/3924/phttps://github.com/fmtlib/fmt/issues/3925mthttps://github.com/fmtlib/fmt/pull/3930ibhttps://github.com/fmtlib/fmt/pull/3931fmhttps://github.com/fmtlib/fmt/pull/3933b.https://github.com/fmtlib/fmt/issues/3935huhttps://github.com/fmtlib/fmt/pull/3937/ghttps://github.com/fmtlib/fmt/pull/3967pshttps://github.com/fmtlib/fmt/pull/3968 https://github.com/fmtlib/fmt/pull/39727,https://github.com/fmtlib/fmt/pull/3983/3https://github.com/fmtlib/fmt/issues/3992llhttps://github.com/fmtlib/fmt/pull/3995t/https://github.com/fmtlib/fmt/pull/4009b/https://github.com/fmtlib/fmt/pull/4023mtlib/fmt/issues/3992,
Added generator expression to /utf-8 compile option fmtlib/fmt#3995,
Add FMT_FORCE_FALLBACK_FILE to force the use of fallback_file fmtlib/fmt#4009,
Suppress a bogus warning in MSVC fmtlib/fmt#4023).
Thanks @hmbj, @phprus, @res2k, @Baardi, @matt77hias, @waywardmonkeys, @hmbj,
@yakra, @prlw1, @Arghnews, @mtillmann0, @ShifftC, @eepp, @jimmy-park and
@ChristianGebhardt.
v10.2.1
Compare Source
https://github.com/fmtlib/fmt/issues/378537https://github.com/fmtlib/fmt/pull/3786ull/3786). Thanks @saraedum.
v10.2.0
Compare Source
Added support for the
%j
specifier (the number of days) forstd::chrono::duration
(https://github.com/fmtlib/fmt/issues/3643,https://github.com/fmtlib/fmt/pull/37323732). Thanks @intelfx.
Added support for the chrono suffix for days and changed
the suffix for minutes from "m" to the correct "mihttps://github.com/fmtlib/fmt/issues/3662uehttps://github.com/fmtlib/fmt/pull/3664mt/pull/3664).
For example (godbolt):
Thanks @Richardk2n.
Fixed an overflow in
std::chrono::time_point
formatting with large dateshttps://github.com/fmtlib/fmt/issues/372537https://github.com/fmtlib/fmt/pull/3727ull/3727). Thanks @cschreib.
Added a formatter for
std::source_location
https://github.com/fmtlib/fmt/pull/37303730).
For example (godbolt):
prints
Thanks @felix642.
Added a formatter for
std::bitset
https://github.com/fmtlib/fmt/pull/36603660).
For example (godbolt):
Thanks @muggenhor.
Added an experimental
nested_formatter
that provides an easy way ofapplying a formatter to one or more subobjects while automatically handling
width, fill and alignment. For example:
prints
Added the generic representation (
g
) tostd::filesystem::path
https://github.com/fmtlib/fmt/issues/371537https://github.com/fmtlib/fmt/pull/3729ull/3729). For example:
prints
"C:/foo"
on Windows.Thanks @js324.
Made
format_as
work with referenceshttps://github.com/fmtlib/fmt/pull/37393739). Thanks @tchaikov.
Fixed formatting of invalid UTF-8 with precision
https://github.com/fmtlib/fmt/issues/32843284).
Fixed an inconsistency between
fmt::to_string
andfmt::format
https://github.com/fmtlib/fmt/issues/36843684).
Disallowed unsafe uses of
fmt::styled
https://github.com/fmtlib/fmt/issues/36253625):
Pass
fmt::styled(...)
as a parameter instead.Added a null check when formatting a C string with the
s
specifierhttps://github.com/fmtlib/fmt/issues/37063706).
Disallowed the
c
specifier forbool
https://github.com/fmtlib/fmt/issues/372637https://github.com/fmtlib/fmt/pull/3734ull/3734). Thanks @js324.
Made the default formatting unlocalized in
fmt::ostream_formatter
forconsistency with the rest of the librahttps://github.com/fmtlib/fmt/issues/3460ues/3460).
Fixed localized formatting in bases other than decimal
https://github.com/fmtlib/fmt/issues/369336https://github.com/fmtlib/fmt/pull/3750ull/3750). Thanks @js324.
Fixed a performance regression in experimental
fmt::ostream::print
https://github.com/fmtlib/fmt/issues/36743674).
Added synchronization with the underlying output stream when writing to
the Windows consohttps://github.com/fmtlib/fmt/pull/3668ulhttps://github.com/fmtlib/fmt/issues/3688/ihttps://github.com/fmtlib/fmt/pull/3689ib/fmt/pull/3689).
Thanks @Roman-Koshelev and @dimztimz.
Changed to only export
format_error
when {fmt} is built as a sharedlibrahttps://github.com/fmtlib/fmt/issues/362636https://github.com/fmtlib/fmt/pull/3627ull/3627). Thanks @phprus.
Made
fmt::streamed
constexpr
.https://github.com/fmtlib/fmt/pull/36503650). Thanks @muggenhor.
Made
fmt::format_int
constexpr
https://github.com/fmtlib/fmt/issues/403140https://github.com/fmtlib/fmt/pull/4032ull/4032). Thanks @dixlorenz.
Enabled
consteval
on older versions of MSVChttps://github.com/fmtlib/fmt/pull/37573757). Thanks @phprus.
Added an option to build without
wchar_t
support on Windowshttps://github.com/fmtlib/fmt/issues/363136https://github.com/fmtlib/fmt/pull/3636ull/3636). Thanks @glebm.
Improved build and CI configuration
https://github.com/fmtlib/fmt/pull/367936https://github.com/fmtlib/fmt/issues/3701uehttps://github.com/fmtlib/fmt/pull/3702mthttps://github.com/fmtlib/fmt/pull/3749ib/fmt/pull/3749).
Thanks @jcar87, @pklima and @tchaikov.
Fixed various warnings, compilation and test issues
https://github.com/fmtlib/fmt/issues/360736https://github.com/fmtlib/fmt/pull/3610ulhttps://github.com/fmtlib/fmt/pull/3624mthttps://github.com/fmtlib/fmt/pull/3630ibhttps://github.com/fmtlib/fmt/pull/3634fmhttps://github.com/fmtlib/fmt/pull/3638cohttps://github.com/fmtlib/fmt/issues/3645b.https://github.com/fmtlib/fmt/issues/3646ithttps://github.com/fmtlib/fmt/pull/3647pshttps://github.com/fmtlib/fmt/pull/3652 hhttps://github.com/fmtlib/fmt/issues/3654 https://github.com/fmtlib/fmt/pull/366365https://github.com/fmtlib/fmt/issues/3670/3https://github.com/fmtlib/fmt/pull/3680ishttps://github.com/fmtlib/fmt/issues/3694fmhttps://github.com/fmtlib/fmt/pull/3695lihttps://github.com/fmtlib/fmt/pull/3699omhttps://github.com/fmtlib/fmt/issues/3705.chttps://github.com/fmtlib/fmt/issues/3710ubhttps://github.com/fmtlib/fmt/issues/3712gihttps://github.com/fmtlib/fmt/pull/3713tphttps://github.com/fmtlib/fmt/issues/3714 https://github.com/fmtlib/fmt/pull/3716,
https://github.com/fmtlib/fmt/pull/3723s/https://github.com/fmtlib/fmt/issues/3738ulhttps://github.com/fmtlib/fmt/issues/3740/phttps://github.com/fmtlib/fmt/pull/3741/fhttps://github.com/fmtlib/fmt/pull/3743fmhttps://github.com/fmtlib/fmt/issues/3745cohttps://github.com/fmtlib/fmt/pull/3747huhttps://github.com/fmtlib/fmt/pull/3748/ghttps://github.com/fmtlib/fmt/pull/3751tthttps://github.com/fmtlib/fmt/pull/3754 https://github.com/fmtlib/fmt/pull/37558,https://github.com/fmtlib/fmt/issues/376075https://github.com/fmtlib/fmt/pull/3762llhttps://github.com/fmtlib/fmt/issues/3763puhttps://github.com/fmtlib/fmt/pull/3764fmhttps://github.com/fmtlib/fmt/issues/3774lihttps://github.com/fmtlib/fmt/pull/3779/
format_as
converting struct totuple
no longer works fmtlib/fmt#3763,Fix wchar_t to char conversion warnings fmtlib/fmt#3764,
chrono-test failing on i386 and armhf on Ubuntu fmtlib/fmt#3774,
Consistently use
fmt::
when invokingformat_to
. fmtlib/fmt#3779).Thanks @danakj, @vinayyadav3016, @cyyever, @phprus, @qimiko, @saschasc,
@gsjaardema, @lazka, @Zhaojun-Liu, @carlsmedstad, @hotwatermorning,
@cptFracassa, @kuguma, @PeterJohnson, @H1X4Dev, @asantoni, @eltociear,
@msimberg, @tchaikov, @waywardmonkeys.
Improved documentation and README
https://github.com/fmtlib/fmt/issues/208620https://github.com/fmtlib/fmt/issues/3637uehttps://github.com/fmtlib/fmt/pull/3642mthttps://github.com/fmtlib/fmt/pull/3653ibhttps://github.com/fmtlib/fmt/pull/3655fmhttps://github.com/fmtlib/fmt/pull/3661cohttps://github.com/fmtlib/fmt/issues/3673b.https://github.com/fmtlib/fmt/pull/3677/ghttps://github.com/fmtlib/fmt/pull/3737pshttps://github.com/fmtlib/fmt/issues/3742tthttps://github.com/fmtlib/fmt/pull/3744
Fix README file table fmtlib/fmt#3744).
Thanks @idzm, @perlun, @joycebrum, @fennewald, @reinhardt1053, @GeorgeLS.
Updated CI dependencies
https://github.com/fmtlib/fmt/pull/361536https://github.com/fmtlib/fmt/pull/3622ulhttps://github.com/fmtlib/fmt/pull/3623mthttps://github.com/fmtlib/fmt/pull/3666ibhttps://github.com/fmtlib/fmt/pull/3696fmhttps://github.com/fmtlib/fmt/pull/3697cohttps://github.com/fmtlib/fmt/pull/3759huhttps://github.com/fmtlib/fmt/pull/3782/github.com/Bump actions/upload-artifact from 3.1.2 to 4.0.0 fmtlib/fmt#3782).
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, 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.
This change is