oneDAL
oneDAL copied to clipboard
Update dependency fmt to v8.1.1
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| fmt | http_archive | minor | 8.0.1 -> 8.1.1 |
Release Notes
fmtlib/fmt
v8.1.1
-
Restored ABI compatibility with version 8.0.x (
#​2695 <https://github.com/fmtlib/fmt/issues/2695>,#​2696 <https://github.com/fmtlib/fmt/pull/2696>). Thanks@saraedum (Julian Rüth) <https://github.com/saraedum>_. -
Fixed chrono formatting on big endian systems (
#​2698 <https://github.com/fmtlib/fmt/issues/2698>,#​2699 <https://github.com/fmtlib/fmt/pull/2699>). Thanks@phprus (Vladislav Shchapov) <https://github.com/phprus>_ and@xvitaly (Vitaly Zaitsev) <https://github.com/xvitaly>_. -
Fixed a linkage error with mingw (
#​2691 <https://github.com/fmtlib/fmt/issues/2691>,#​2692 <https://github.com/fmtlib/fmt/pull/2692>). Thanks@rbberger (Richard Berger) <https://github.com/rbberger>_.
v8.1.0
-
Optimized chrono formatting (
#​2500 <https://github.com/fmtlib/fmt/pull/2500>,#​2537 <https://github.com/fmtlib/fmt/pull/2537>,#​2541 <https://github.com/fmtlib/fmt/issues/2541>,#​2544 <https://github.com/fmtlib/fmt/pull/2544>,#​2550 <https://github.com/fmtlib/fmt/pull/2550>,#​2551 <https://github.com/fmtlib/fmt/pull/2551>,#​2576 <https://github.com/fmtlib/fmt/pull/2576>,#​2577 <https://github.com/fmtlib/fmt/issues/2577>,#​2586 <https://github.com/fmtlib/fmt/pull/2586>,#​2591 <https://github.com/fmtlib/fmt/pull/2591>,#​2594 <https://github.com/fmtlib/fmt/pull/2594>,#​2602 <https://github.com/fmtlib/fmt/pull/2602>,#​2617 <https://github.com/fmtlib/fmt/pull/2617>,#​2628 <https://github.com/fmtlib/fmt/issues/2628>,#​2633 <https://github.com/fmtlib/fmt/pull/2633>,#​2670 <https://github.com/fmtlib/fmt/issues/2670>,#​2671 <https://github.com/fmtlib/fmt/pull/2671>_).Processing of some specifiers such as
%zand%Yis now up to 10-20 times faster, for example on GCC 11 with libstdc++::
Benchmark Before After
FMTFormatter_z 261 ns 26.3 ns FMTFormatterCompile_z 246 ns 11.6 ns FMTFormatter_Y 263 ns 26.1 ns FMTFormatterCompile_Y 244 ns 10.5 ns
Thanks
@phprus (Vladislav Shchapov) <https://github.com/phprus>_ and@toughengineer (Pavel Novikov) <https://github.com/toughengineer>_. -
Implemented subsecond formatting for chrono durations (
#​2623 <https://github.com/fmtlib/fmt/pull/2623>_). For example (godbolt <https://godbolt.org/z/es7vWTETe>__):.. code:: c++
#include <fmt/chrono.h>
int main() { fmt::print("{:%S}", std::chrono::milliseconds(1234)); }
prints "01.234".
Thanks
@matrackif <https://github.com/matrackif>_. -
Fixed handling of precision 0 when formatting chrono durations (
#​2587 <https://github.com/fmtlib/fmt/issues/2587>,#​2588 <https://github.com/fmtlib/fmt/pull/2588>). Thanks@lukester1975 <https://github.com/lukester1975>_. -
Fixed an overflow on invalid inputs in the
tmformatter (#​2564 <https://github.com/fmtlib/fmt/pull/2564>). Thanks@phprus (Vladislav Shchapov) <https://github.com/phprus>. -
Added
fmt::group_digitsthat formats integers with a non-localized digit separator (comma) for groups of three digits. For example (godbolt <https://godbolt.org/z/TxGxG9Poq>__):.. code:: c++
#include <fmt/format.h>
int main() { fmt::print("{} dollars", fmt::group_digits(
1000000)); }prints "1,000,000 dollars".
-
Added support for faint, conceal, reverse and blink text styles (
#​2394 <https://github.com/fmtlib/fmt/pull/2394>_):https://user-images.githubusercontent.com/576385/147710227-c68f5317-f8fa-42c3-9123-7c4ba3c398cb.mp4
Thanks
@benit8 (Benoît Lormeau) <https://github.com/benit8>_ and@data-man (Dmitry Atamanov) <https://github.com/data-man>_. -
Added experimental support for compile-time floating point formatting (
#​2426 <https://github.com/fmtlib/fmt/pull/2426>,#​2470 <https://github.com/fmtlib/fmt/pull/2470>). It is currently limited to the header-only mode. Thanks@alexezeder (Alexey Ochapov) <https://github.com/alexezeder>_. -
Added UDL-based named argument support to compile-time format string checks (
#​2640 <https://github.com/fmtlib/fmt/issues/2640>,#​2649 <https://github.com/fmtlib/fmt/pull/2649>). For example (godbolt <https://godbolt.org/z/ohGbbvonv>__):.. code:: c++
#include <fmt/format.h>
int main() { using namespace fmt::literals; fmt::print("{answer:s}", "answer"_a=42); }
gives a compile-time error on compilers with C++20
constevaland non-type template parameter support (gcc 10+) becausesis not a valid format specifier for an integer.Thanks
@alexezeder (Alexey Ochapov) <https://github.com/alexezeder>_. -
Implemented escaping of string range elements. For example (
godbolt <https://godbolt.org/z/rKvM1vKf3>__):.. code:: c++
#include <fmt/ranges.h> #include
int main() { fmt::print("{}", std::vectorstd::string{"\naan"}); }
is now printed as::
["\naan"]
instead of::
[" aan"]
-
Added an experimental
?specifier for escaping strings. (#​2674 <https://github.com/fmtlib/fmt/pull/2674>). Thanks@BRevzin (Barry Revzin) <https://github.com/BRevzin>. -
Switched to JSON-like representation of maps and sets for consistency with Python's
str.format. For example (godbolt <https://godbolt.org/z/seKjoY9W5>__):.. code:: c++
#include <fmt/ranges.h> #include
int main() { fmt::print("{}", std::map<std::string, int>{{"answer", 42}}); }
is now printed as::
{"answer": 42}
-
Extended
fmt::jointo support C++20-only ranges (#​2549 <https://github.com/fmtlib/fmt/pull/2549>). Thanks@BRevzin (Barry Revzin) <https://github.com/BRevzin>. -
Optimized handling of non-const-iterable ranges and implemented initial support for non-const-formattable types.
-
Disabled implicit conversions of scoped enums to integers that was accidentally introduced in earlier versions (
#​1841 <https://github.com/fmtlib/fmt/pull/1841>_). -
Deprecated implicit conversion of
[const] signed char*and[const] unsigned char*to C strings. -
Deprecated
_format, a legacy UDL-based format API (#​2646 <https://github.com/fmtlib/fmt/pull/2646>). Thanks@alexezeder (Alexey Ochapov) <https://github.com/alexezeder>. -
Marked
format,formatted_sizeandto_stringas[[nodiscard]](#​2612 <https://github.com/fmtlib/fmt/pull/2612>).@0x8000-0000 (Florin Iucha) <https://github.com/0x8000-0000>. -
Added missing diagnostic when trying to format function and member pointers as well as objects convertible to pointers which is explicitly disallowed (
#​2598 <https://github.com/fmtlib/fmt/issues/2598>,#​2609 <https://github.com/fmtlib/fmt/pull/2609>,#​2610 <https://github.com/fmtlib/fmt/pull/2610>). Thanks@AlexGuteniev (Alex Guteniev) <https://github.com/AlexGuteniev>. -
Optimized writing to a contiguous buffer with
format_to_n(#​2489 <https://github.com/fmtlib/fmt/pull/2489>). Thanks@Roman-Koshelev <https://github.com/Roman-Koshelev>. -
Optimized writing to non-
charbuffers (#​2477 <https://github.com/fmtlib/fmt/pull/2477>). Thanks@Roman-Koshelev <https://github.com/Roman-Koshelev>. -
Decimal point is now localized when using the
Lspecifier. -
Improved floating point formatter implementation (
#​2498 <https://github.com/fmtlib/fmt/pull/2498>,#​2499 <https://github.com/fmtlib/fmt/pull/2499>). Thanks@Roman-Koshelev <https://github.com/Roman-Koshelev>_. -
Fixed handling of very large precision in fixed format (
#​2616 <https://github.com/fmtlib/fmt/pull/2616>_). -
Made a table of cached powers used in FP formatting static (
#​2509 <https://github.com/fmtlib/fmt/pull/2509>). Thanks@jk-jeon (Junekey Jeon) <https://github.com/jk-jeon>. -
Resolved a lookup ambiguity with C++20 format-related functions due to ADL (
#​2639 <https://github.com/fmtlib/fmt/issues/2639>,#​2641 <https://github.com/fmtlib/fmt/pull/2641>). Thanks@mkurdej (Marek Kurdej) <https://github.com/mkurdej>_. -
Removed unnecessary inline namespace qualification (
#​2642 <https://github.com/fmtlib/fmt/issues/2642>,#​2643 <https://github.com/fmtlib/fmt/pull/2643>). Thanks@mkurdej (Marek Kurdej) <https://github.com/mkurdej>_. -
Implemented argument forwarding in
format_to_n(#​2462 <https://github.com/fmtlib/fmt/issues/2462>,#​2463 <https://github.com/fmtlib/fmt/pull/2463>). Thanks@owent (WenTao Ou) <https://github.com/owent>_. -
Fixed handling of implicit conversions in
fmt::to_stringand format string compilation (#​2565 <https://github.com/fmtlib/fmt/issues/2565>_). -
Changed the default access mode of files created by
fmt::output_fileto-rw-r--r--for consistency withfopen(#​2530 <https://github.com/fmtlib/fmt/issues/2530>_). -
Make
fmt::ostream::flushpublic (#​2435 <https://github.com/fmtlib/fmt/issues/2435>_). -
Improved C++14/17 attribute detection (
#​2615 <https://github.com/fmtlib/fmt/pull/2615>). Thanks@AlexGuteniev (Alex Guteniev) <https://github.com/AlexGuteniev>. -
Improved
constevaldetection for MSVC (#​2559 <https://github.com/fmtlib/fmt/pull/2559>). Thanks@DanielaE (Daniela Engert) <https://github.com/DanielaE>. -
Improved documentation (
#​2406 <https://github.com/fmtlib/fmt/issues/2406>,#​2446 <https://github.com/fmtlib/fmt/pull/2446>,#​2493 <https://github.com/fmtlib/fmt/issues/2493>,#​2513 <https://github.com/fmtlib/fmt/issues/2513>,#​2515 <https://github.com/fmtlib/fmt/pull/2515>,#​2522 <https://github.com/fmtlib/fmt/issues/2522>,#​2562 <https://github.com/fmtlib/fmt/pull/2562>,#​2575 <https://github.com/fmtlib/fmt/pull/2575>,#​2606 <https://github.com/fmtlib/fmt/pull/2606>,#​2620 <https://github.com/fmtlib/fmt/pull/2620>,#​2676 <https://github.com/fmtlib/fmt/issues/2676>). Thanks@sobolevn (Nikita Sobolev) <https://github.com/sobolevn>,@UnePierre (Max FERGER) <https://github.com/UnePierre>,@zhsj <https://github.com/zhsj>,@phprus (Vladislav Shchapov) <https://github.com/phprus>,@ericcurtin (Eric Curtin) <https://github.com/ericcurtin>,@Lounarok <https://github.com/Lounarok>_. -
Improved fuzzers and added a fuzzer for chrono timepoint formatting (
#​2461 <https://github.com/fmtlib/fmt/pull/2461>,#​2469 <https://github.com/fmtlib/fmt/pull/2469>).@pauldreik (Paul Dreik) <https://github.com/pauldreik>_, -
Added the
FMT_SYSTEM_HEADERSCMake option setting which marks {fmt}'s headers as system. It can be used to suppress warnings (#​2644 <https://github.com/fmtlib/fmt/issues/2644>,#​2651 <https://github.com/fmtlib/fmt/pull/2651>). Thanks@alexezeder (Alexey Ochapov) <https://github.com/alexezeder>_. -
Added the Bazel build system support (
#​2505 <https://github.com/fmtlib/fmt/pull/2505>,#​2516 <https://github.com/fmtlib/fmt/pull/2516>). Thanks@Vertexwahn <https://github.com/Vertexwahn>_. -
Improved build configuration and tests (
#​2437 <https://github.com/fmtlib/fmt/issues/2437>,#​2558 <https://github.com/fmtlib/fmt/pull/2558>,#​2648 <https://github.com/fmtlib/fmt/pull/2648>,#​2650 <https://github.com/fmtlib/fmt/pull/2650>,#​2663 <https://github.com/fmtlib/fmt/pull/2663>,#​2677 <https://github.com/fmtlib/fmt/pull/2677>). Thanks@DanielaE (Daniela Engert) <https://github.com/DanielaE>,@alexezeder (Alexey Ochapov) <https://github.com/alexezeder>,@phprus (Vladislav Shchapov) <https://github.com/phprus>_. -
Fixed various warnings and compilation issues (
#​2353 <https://github.com/fmtlib/fmt/pull/2353>,#​2356 <https://github.com/fmtlib/fmt/pull/2356>,#​2399 <https://github.com/fmtlib/fmt/pull/2399>,#​2408 <https://github.com/fmtlib/fmt/issues/2408>,#​2414 <https://github.com/fmtlib/fmt/pull/2414>,#​2427 <https://github.com/fmtlib/fmt/pull/2427>,#​2432 <https://github.com/fmtlib/fmt/pull/2432>,#​2442 <https://github.com/fmtlib/fmt/pull/2442>,#​2434 <https://github.com/fmtlib/fmt/pull/2434>,#​2439 <https://github.com/fmtlib/fmt/issues/2439>,#​2447 <https://github.com/fmtlib/fmt/pull/2447>,#​2450 <https://github.com/fmtlib/fmt/pull/2450>,#​2455 <https://github.com/fmtlib/fmt/issues/2455>,#​2465 <https://github.com/fmtlib/fmt/issues/2465>,#​2472 <https://github.com/fmtlib/fmt/issues/2472>,#​2474 <https://github.com/fmtlib/fmt/issues/2474>,#​2476 <https://github.com/fmtlib/fmt/pull/2476>,#​2478 <https://github.com/fmtlib/fmt/issues/2478>,#​2479 <https://github.com/fmtlib/fmt/issues/2479>,#​2481 <https://github.com/fmtlib/fmt/issues/2481>,#​2482 <https://github.com/fmtlib/fmt/pull/2482>,#​2483 <https://github.com/fmtlib/fmt/pull/2483>,#​2490 <https://github.com/fmtlib/fmt/issues/2490>,#​2491 <https://github.com/fmtlib/fmt/pull/2491>,#​2510 <https://github.com/fmtlib/fmt/pull/2510>,#​2518 <https://github.com/fmtlib/fmt/pull/2518>,#​2528 <https://github.com/fmtlib/fmt/issues/2528>,#​2529 <https://github.com/fmtlib/fmt/pull/2529>,#​2539 <https://github.com/fmtlib/fmt/pull/2539>,#​2540 <https://github.com/fmtlib/fmt/issues/2540>,#​2545 <https://github.com/fmtlib/fmt/pull/2545>,#​2555 <https://github.com/fmtlib/fmt/pull/2555>,#​2557 <https://github.com/fmtlib/fmt/issues/2557>,#​2570 <https://github.com/fmtlib/fmt/issues/2570>,#​2573 <https://github.com/fmtlib/fmt/pull/2573>,#​2582 <https://github.com/fmtlib/fmt/pull/2582>,#​2605 <https://github.com/fmtlib/fmt/issues/2605>,#​2611 <https://github.com/fmtlib/fmt/pull/2611>,#​2647 <https://github.com/fmtlib/fmt/pull/2647>,#​2627 <https://github.com/fmtlib/fmt/issues/2627>,#​2630 <https://github.com/fmtlib/fmt/pull/2630>,#​2635 <https://github.com/fmtlib/fmt/issues/2635>,#​2638 <https://github.com/fmtlib/fmt/issues/2638>,#​2653 <https://github.com/fmtlib/fmt/issues/2653>,#​2654 <https://github.com/fmtlib/fmt/issues/2654>,#​2661 <https://github.com/fmtlib/fmt/issues/2661>,#​2664 <https://github.com/fmtlib/fmt/pull/2664>,#​2684 <https://github.com/fmtlib/fmt/pull/2684>). Thanks@DanielaE (Daniela Engert) <https://github.com/DanielaE>,@mwinterb <https://github.com/mwinterb>,@cdacamar (Cameron DaCamara) <https://github.com/cdacamar>,@TrebledJ (Johnathan) <https://github.com/TrebledJ>,@bodomartin (brm) <https://github.com/bodomartin>,@cquammen (Cory Quammen) <https://github.com/cquammen>,@white238 (Chris White) <https://github.com/white238>,@mmarkeloff (Max) <https://github.com/mmarkeloff>,@palacaze (Pierre-Antoine Lacaze) <https://github.com/palacaze>,@jcelerier (Jean-Michaël Celerier) <https://github.com/jcelerier>,@mborn-adi (Mathias Born) <https://github.com/mborn-adi>,@BrukerJWD (Jonathan W) <https://github.com/BrukerJWD>,@spyridon97 (Spiros Tsalikis) <https://github.com/spyridon97>,@phprus (Vladislav Shchapov) <https://github.com/phprus>,@oliverlee (Oliver Lee) <https://github.com/oliverlee>,@joshessman-llnl (Josh Essman) <https://github.com/joshessman-llnl>,@akohlmey (Axel Kohlmeyer) <https://github.com/akohlmey>,@timkalu <https://github.com/timkalu>,@olupton (Olli Lupton) <https://github.com/olupton>,@Acretock <https://github.com/Acretock>,@alexezeder (Alexey Ochapov) <https://github.com/alexezeder>,@andrewcorrigan (Andrew Corrigan) <https://github.com/andrewcorrigan>,@lucpelletier <https://github.com/lucpelletier>,@HazardyKnusperkeks (Björn Schäpers) <https://github.com/HazardyKnusperkeks>.
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.
- [ ] If you want to rebase/retry this PR, click this checkbox.
This PR has been generated by Mend Renovate. View repository job log here.