Here is an update to spdlog 1.13.0.

Version 1.13.0

Release Notes

Enhancements

- Qt Sink: Allow for darker colors for light backgrounds (#2817). Thanks to 
@krawq.
- Set CMAKE_BUILD_TYPE only for single-config generators (#2839). Thanks to 
@moritz-h.
- Provide spdlog_header_only in build directory export (#2846). Thanks to 
@robertmaynard.
- Add SPDLOG_TO_VERSION to compare spdlog version (#2853). Thanks to @kegechen.
- Support async_overflow_policy::discard_new (#2876). Thanks to @walkerlala.
- Make syslog_sink.h's syslog_prio_from_level protected (#2918). Thanks to 
@shannonbooth.
- Fix OS availability check of pthread_threadid_np for iOS (#2897). Thanks to 
@lowdesertpunk.
- Add .git-blame-ignore-revs to ignore clang-format related commits (#2899). 
Thanks to @lowdesertpunk.
- Match SPDLOG_CONSTEXPR_FUNC to FMT_CONSTEXPR (#2901). Thanks to @kkraus14.

Bug Fixes

- Check fd_ is not nullptr in file_helper to prevent possible crash if disk is 
full (#2972).
- Fix encoding issue in qt_sinks (#2862). Thanks to @neothenil and @tt4g .
- Fix wrong thread_id (TID) in systemd_sink.h (#2919). Thanks to @M010.
- Update example.cpp to fix the vector issue in bin_example (#2963). Thanks to 
@zhuzhzh.
- Fix MSVC compile flag for no exceptions (#2974). Thanks to @Programicus.
- Fix bug in circular_q::size() (#2820).
- Fix link to fmt license file (#2967).

Maintenance

- Added and updated various tests for circular_q.
- Removed obsolete part from CMake configuration files (#2871). Thanks to 
@albert-github.
- Removed policy_max from cmake_minimum_required(..).
- Updated clang-format to google style and updated various formatting scripts.
- Bumped catch2


Index: devel/spdlog/Makefile
===================================================================
RCS file: /cvs/ports/devel/spdlog/Makefile,v
retrieving revision 1.3
diff -u -p -u -p -r1.3 Makefile
--- devel/spdlog/Makefile       2 Sep 2023 19:03:37 -0000       1.3
+++ devel/spdlog/Makefile       20 Apr 2024 01:46:44 -0000
@@ -2,23 +2,26 @@ COMMENT =     fast C++ logging library
 
 GH_ACCOUNT =   gabime
 GH_PROJECT =   spdlog
-GH_TAGNAME =   v1.12.0
+GH_TAGNAME =   v1.13.0
 CATEGORIES =   devel
 
-SHARED_LIBS =  spdlog  1.0
+SHARED_LIBS =  spdlog  1.1
 
 # MIT
 PERMIT_PACKAGE =       Yes
 
-WANTLIB =      ${COMPILER_LIBCXX} m
+WANTLIB =      ${COMPILER_LIBCXX} fmt m
 
 MODULES =      devel/cmake
 
+LIB_DEPENDS += devel/fmt>=10.2.1
+
 # C++11
 COMPILER =     base-clang ports-gcc
 
 CONFIGURE_ARGS+=-DSPDLOG_BUILD_BENCH=OFF \
-               -DSPDLOG_BUILD_SHARED=ON
+               -DSPDLOG_BUILD_SHARED=ON \
+               -DSPDLOG_FMT_EXTERNAL=ON
 
 NO_TEST =      Yes
 
Index: devel/spdlog/distinfo
===================================================================
RCS file: /cvs/ports/devel/spdlog/distinfo,v
retrieving revision 1.2
diff -u -p -u -p -r1.2 distinfo
--- devel/spdlog/distinfo       2 Sep 2023 19:03:37 -0000       1.2
+++ devel/spdlog/distinfo       20 Apr 2024 01:46:44 -0000
@@ -1,2 +1,2 @@
-SHA256 (spdlog-1.12.0.tar.gz) = Tczy0Q9BDB4v6v+Jlmv8SaGrsp728IJGM1sRDgAeCak=
-SIZE (spdlog-1.12.0.tar.gz) = 251037
+SHA256 (spdlog-1.13.0.tar.gz) = U08u4aTcvrIiSYVu37K+dqHPT3CKILCsLtCQ7iTP28k=
+SIZE (spdlog-1.13.0.tar.gz) = 264003
Index: devel/spdlog/pkg/PLIST
===================================================================
RCS file: /cvs/ports/devel/spdlog/pkg/PLIST,v
retrieving revision 1.3
diff -u -p -u -p -r1.3 PLIST
--- devel/spdlog/pkg/PLIST      2 Sep 2023 19:03:37 -0000       1.3
+++ devel/spdlog/pkg/PLIST      20 Apr 2024 01:46:44 -0000
@@ -39,22 +39,6 @@ include/spdlog/details/udp_client.h
 include/spdlog/details/windows_include.h
 include/spdlog/fmt/
 include/spdlog/fmt/bin_to_hex.h
-include/spdlog/fmt/bundled/
-include/spdlog/fmt/bundled/args.h
-include/spdlog/fmt/bundled/chrono.h
-include/spdlog/fmt/bundled/color.h
-include/spdlog/fmt/bundled/compile.h
-include/spdlog/fmt/bundled/core.h
-include/spdlog/fmt/bundled/fmt.license.rst
-include/spdlog/fmt/bundled/format-inl.h
-include/spdlog/fmt/bundled/format.h
-include/spdlog/fmt/bundled/locale.h
-include/spdlog/fmt/bundled/os.h
-include/spdlog/fmt/bundled/ostream.h
-include/spdlog/fmt/bundled/printf.h
-include/spdlog/fmt/bundled/ranges.h
-include/spdlog/fmt/bundled/std.h
-include/spdlog/fmt/bundled/xchar.h
 include/spdlog/fmt/chrono.h
 include/spdlog/fmt/compile.h
 include/spdlog/fmt/fmt.h


And adjustments for some of the downstream ports that use
spdlog as a dependency.


Index: devel/coeurl/Makefile
===================================================================
RCS file: /cvs/ports/devel/coeurl/Makefile,v
retrieving revision 1.7
diff -u -p -u -p -r1.7 Makefile
--- devel/coeurl/Makefile       21 Sep 2023 09:49:50 -0000      1.7
+++ devel/coeurl/Makefile       20 Apr 2024 02:07:11 -0000
@@ -4,6 +4,7 @@ CATEGORIES =    devel
 V =            v0.3.0
 DISTNAME =     coeurl-${V}
 PKGNAME =      ${DISTNAME:S/v//}
+REVISION =     0
 
 SHARED_LIBS +=  coeurl                    0.1 # 0.2.0
 
@@ -12,15 +13,15 @@ SITES =             https://nheko.im/nheko-reborn/c
 # MIT
 PERMIT_PACKAGE =       Yes
 
-WANTLIB += ${COMPILER_LIBCXX} curl event_core event_pthreads m
+WANTLIB += ${COMPILER_LIBCXX} curl event_core event_pthreads fmt spdlog
 
 MODULES =      devel/meson
 
 # C++17
 COMPILER =     base-clang ports-gcc
 
-BUILD_DEPENDS =        devel/spdlog
 LIB_DEPENDS =  devel/libevent2 \
+               devel/spdlog \
                net/curl
 
 # Run-time dependency doctest found: NO (tried pkgconfig and cmake)
Index: devel/coeurl/patches/patch-lib_client_cpp
===================================================================
RCS file: devel/coeurl/patches/patch-lib_client_cpp
diff -N devel/coeurl/patches/patch-lib_client_cpp
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ devel/coeurl/patches/patch-lib_client_cpp   20 Apr 2024 02:07:11 -0000
@@ -0,0 +1,23 @@
+Fix build with fmt10
+https://nheko.im/nheko-reborn/coeurl/-/commit/831e2ee8e9cf08ea1ee9736cde8370f9d0312abc
+
+Index: lib/client.cpp
+--- lib/client.cpp.orig
++++ lib/client.cpp
+@@ -6,6 +6,7 @@
+ #include <thread>
+ 
+ #include "coeurl/request.hpp"
++#include "coeurl/errors.hpp"
+ 
+ namespace coeurl {
+ std::shared_ptr<spdlog::logger> Client::log = 
spdlog::null_logger_mt("coeurl_null");
+@@ -352,7 +353,7 @@ void Client::remove_request(Request *r) {
+         long http_code;
+         curl_easy_getinfo(req->easy, CURLINFO_RESPONSE_CODE, &http_code);
+ 
+-        Client::log->trace("DONE: {} => {} ({}) http: {}", req->url_, 
req->curl_error, req->error, http_code);
++        Client::log->trace("DONE: {} => {} ({}) http: {}", req->url_, 
coeurl::to_string(req->curl_error), req->error, http_code);
+ 
+         if (req->on_complete_)
+             req->on_complete_(*req.get());
Index: net/nheko/Makefile
===================================================================
RCS file: /cvs/ports/net/nheko/Makefile,v
retrieving revision 1.11
diff -u -p -u -p -r1.11 Makefile
--- net/nheko/Makefile  24 Dec 2023 09:09:53 -0000      1.11
+++ net/nheko/Makefile  20 Apr 2024 02:07:11 -0000
@@ -3,7 +3,7 @@ COMMENT =       desktop client for Matrix usin
 GH_ACCOUNT =   Nheko-Reborn
 GH_PROJECT =   nheko
 GH_TAGNAME =   v0.11.3
-REVISION =     0
+REVISION =     1
 
 CATEGORIES=    net
 
@@ -13,7 +13,7 @@ PERMIT_PACKAGE=       Yes
 WANTLIB += ${COMPILER_LIBCXX} Qt5Concurrent Qt5Core Qt5DBus Qt5Gui
 WANTLIB += Qt5Multimedia Qt5Network Qt5Qml Qt5QmlModels Qt5Quick
 WANTLIB += Qt5QuickControls2 Qt5QuickWidgets Qt5Svg Qt5Widgets
-WANTLIB += c cmark coeurl crypto glib-2.0 gobject-2.0 gstbase-1.0
+WANTLIB += c cmark coeurl crypto fmt glib-2.0 gobject-2.0 gstbase-1.0
 WANTLIB += gstreamer-1.0 gstsdp-1.0 gstwebrtc-1.0 intl lmdb m
 WANTLIB += matrix_client olm qt5keychain spdlog ssl xcb xcb-ewmh
 
Index: net/nheko/patches/patch-src_Cache_cpp
===================================================================
RCS file: /cvs/ports/net/nheko/patches/patch-src_Cache_cpp,v
retrieving revision 1.1
diff -u -p -u -p -r1.1 patch-src_Cache_cpp
--- net/nheko/patches/patch-src_Cache_cpp       23 Feb 2023 09:14:06 -0000      
1.1
+++ net/nheko/patches/patch-src_Cache_cpp       20 Apr 2024 02:07:11 -0000
@@ -1,5 +1,7 @@
-"Fruquent lag due to db sync" https://github.com/Nheko-Reborn/nheko/issues/1355
-Backout d8669ccf3d4429e44caa87e2592b3bc3afa4e41c
+- "Fruquent lag due to db sync" 
https://github.com/Nheko-Reborn/nheko/issues/1355
+  Backout d8669ccf3d4429e44caa87e2592b3bc3afa4e41c
+- Fix build against fmt10
+  e89e65dc17020772eb057414b4f0c5d6f4ad98d0
 
 Index: src/Cache.cpp
 --- src/Cache.cpp.orig
@@ -13,3 +15,12 @@ Index: src/Cache.cpp
      } catch (const lmdb::error &e) {
          if (e.code() != MDB_VERSION_MISMATCH && e.code() != MDB_INVALID) {
              throw std::runtime_error("LMDB initialization failed" + 
std::string(e.what()));
+@@ -438,7 +438,7 @@ Cache::loadSecretsFromStore(
+                 if (job->error() && job->error() != 
QKeychain::Error::EntryNotFound) {
+                     nhlog::db()->error("Restoring secret '{}' failed ({}): 
{}",
+                                        name.toStdString(),
+-                                       job->error(),
++                                       static_cast<int>(job->error()),
+                                        job->errorString().toStdString());
+ 
+                     fatalSecretError();
Index: net/nheko/patches/patch-src_ChatPage_cpp
===================================================================
RCS file: /cvs/ports/net/nheko/patches/patch-src_ChatPage_cpp,v
retrieving revision 1.1
diff -u -p -u -p -r1.1 patch-src_ChatPage_cpp
--- net/nheko/patches/patch-src_ChatPage_cpp    23 Feb 2023 09:14:06 -0000      
1.1
+++ net/nheko/patches/patch-src_ChatPage_cpp    20 Apr 2024 02:07:11 -0000
@@ -1,6 +1,18 @@
+Fix build with fmt 10.1.0
+871e403f6799df48cfbbe08eba56d473a0c34216
+
 Index: src/ChatPage.cpp
 --- src/ChatPage.cpp.orig
 +++ src/ChatPage.cpp
+@@ -1248,7 +1248,7 @@ ChatPage::getBackupVersion()
+                       nhlog::crypto()->info("Our backup key {} does not match 
the one "
+                                             "used in the online backup {}",
+                                             pubkey,
+-                                            auth_data["public_key"]);
++                                            
auth_data["public_key"].get<std::string>());
+                       cache::client()->deleteBackupVersion();
+                       return;
+                   }
 @@ -1664,7 +1664,7 @@ ChatPage::isRoomActive(const QString &room_id)
  void
  ChatPage::removeAllNotifications()
Index: net/nheko/patches/patch-src_encryption_DeviceVerificationFlow_cpp
===================================================================
RCS file: net/nheko/patches/patch-src_encryption_DeviceVerificationFlow_cpp
diff -N net/nheko/patches/patch-src_encryption_DeviceVerificationFlow_cpp
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ net/nheko/patches/patch-src_encryption_DeviceVerificationFlow_cpp   20 Apr 
2024 02:07:11 -0000
@@ -0,0 +1,15 @@
+Fix build against fmt10
+e89e65dc17020772eb057414b4f0c5d6f4ad98d0
+
+Index: src/encryption/DeviceVerificationFlow.cpp
+--- src/encryption/DeviceVerificationFlow.cpp.orig
++++ src/encryption/DeviceVerificationFlow.cpp
+@@ -39,7 +39,7 @@ DeviceVerificationFlow::DeviceVerificationFlow(QObject
+   , deviceIds(std::move(deviceIds_))
+   , model_(model)
+ {
+-    nhlog::crypto()->debug("CREATING NEW FLOW, {}, {}", flow_type, (void 
*)this);
++    nhlog::crypto()->debug("CREATING NEW FLOW, {}, {}", 
static_cast<int>(flow_type), (void *)this);
+     if (deviceIds.size() == 1)
+         deviceId = deviceIds.front();
+ 
Index: net/nheko/patches/patch-src_timeline_InputBar_cpp
===================================================================
RCS file: net/nheko/patches/patch-src_timeline_InputBar_cpp
diff -N net/nheko/patches/patch-src_timeline_InputBar_cpp
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ net/nheko/patches/patch-src_timeline_InputBar_cpp   20 Apr 2024 02:07:11 
-0000
@@ -0,0 +1,25 @@
+Fix build against fmt10
+e89e65dc17020772eb057414b4f0c5d6f4ad98d0
+
+Index: src/timeline/InputBar.cpp
+--- src/timeline/InputBar.cpp.orig
++++ src/timeline/InputBar.cpp
+@@ -948,14 +948,15 @@ MediaUpload::MediaUpload(std::unique_ptr<QIODevice> so
+                 this,
+                 [mediaPlayer](QMediaPlayer::Error error) {
+                     nhlog::ui()->debug("Media player error {} and errorStr 
{}",
+-                                       error,
++                                       static_cast<int>(error),
+                                        
mediaPlayer->errorString().toStdString());
+                 });
+         connect(mediaPlayer,
+                 &QMediaPlayer::mediaStatusChanged,
+                 [mediaPlayer](QMediaPlayer::MediaStatus status) {
+-                    nhlog::ui()->debug(
+-                      "Media player status {} and error {}", status, 
mediaPlayer->error());
++                    nhlog::ui()->debug("Media player status {} and error {}",
++                                       static_cast<int>(status),
++                                       
static_cast<int>(mediaPlayer->error()));
+                 });
+         connect(mediaPlayer,
+                 qOverload<const QString &, const QVariant 
&>(&QMediaPlayer::metaDataChanged),
Index: net/nheko/patches/patch-src_ui_MxcMediaProxy_cpp
===================================================================
RCS file: net/nheko/patches/patch-src_ui_MxcMediaProxy_cpp
diff -N net/nheko/patches/patch-src_ui_MxcMediaProxy_cpp
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ net/nheko/patches/patch-src_ui_MxcMediaProxy_cpp    20 Apr 2024 02:07:11 
-0000
@@ -0,0 +1,22 @@
+Fix build against fmt10
+e89e65dc17020772eb057414b4f0c5d6f4ad98d0
+
+Index: src/ui/MxcMediaProxy.cpp
+--- src/ui/MxcMediaProxy.cpp.orig
++++ src/ui/MxcMediaProxy.cpp
+@@ -37,11 +37,13 @@ MxcMediaProxy::MxcMediaProxy(QObject *parent)
+             qOverload<QMediaPlayer::Error>(&MxcMediaProxy::error),
+             [this](QMediaPlayer::Error error) {
+                 nhlog::ui()->info("Media player error {} and errorStr {}",
+-                                  error,
++                                  static_cast<int>(error),
+                                   this->errorString().toStdString());
+             });
+     connect(this, &MxcMediaProxy::mediaStatusChanged, 
[this](QMediaPlayer::MediaStatus status) {
+-        nhlog::ui()->info("Media player status {} and error {}", status, 
this->error());
++        nhlog::ui()->info("Media player status {} and error {}",
++                          static_cast<int>(status),
++                          static_cast<int>(this->error()));
+     });
+     connect(this,
+             qOverload<const QString &, const QVariant 
&>(&MxcMediaProxy::metaDataChanged),

Reply via email to