Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package kf6-kcalendarcore for 
openSUSE:Factory checked in at 2024-04-15 20:11:43
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kf6-kcalendarcore (Old)
 and      /work/SRC/openSUSE:Factory/.kf6-kcalendarcore.new.26366 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "kf6-kcalendarcore"

Mon Apr 15 20:11:43 2024 rev:2 rq:1167169 version:6.1.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/kf6-kcalendarcore/kf6-kcalendarcore.changes      
2024-03-11 15:25:13.999222464 +0100
+++ 
/work/SRC/openSUSE:Factory/.kf6-kcalendarcore.new.26366/kf6-kcalendarcore.changes
   2024-04-15 20:14:21.767507360 +0200
@@ -1,0 +2,11 @@
+Fri Apr  5 12:52:24 UTC 2024 - Christophe Marin <[email protected]>
+
+- Update to 6.1.0
+  * New feature release
+- Changes since 6.0.0:
+  * update version for new release
+  * Fix check whether RRULE UNTIL datetime is UTC
+  * Fix conversion of date-only icaltimetype to UTC QDateTime (kde#483707)
+  * MemoryCalendar: log details about duplicate events before asserting
+
+-------------------------------------------------------------------

Old:
----
  kcalendarcore-6.0.0.tar.xz
  kcalendarcore-6.0.0.tar.xz.sig

New:
----
  kcalendarcore-6.1.0.tar.xz
  kcalendarcore-6.1.0.tar.xz.sig

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ kf6-kcalendarcore.spec ++++++
--- /var/tmp/diff_new_pack.rfSS4X/_old  2024-04-15 20:14:22.267525763 +0200
+++ /var/tmp/diff_new_pack.rfSS4X/_new  2024-04-15 20:14:22.267525763 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package kf6-kcalendarcore
 #
-# Copyright (c) 2023 SUSE LLC
+# Copyright (c) 2024 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -20,13 +20,13 @@
 
 %define sonum 6
 %define rname kcalendarcore
-# Full KF6 version (e.g. 6.0.0)
+# Full KF6 version (e.g. 6.1.0)
 %{!?_kf6_version: %global _kf6_version %{version}}
 # Last major and minor KF6 version (e.g. 6.0)
 %{!?_kf6_bugfix_version: %define _kf6_bugfix_version %(echo %{_kf6_version} | 
awk -F. '{print $1"."$2}')}
 %bcond_without released
 Name:           kf6-kcalendarcore
-Version:        6.0.0
+Version:        6.1.0
 Release:        0
 Summary:        Library to access and handle calendar data
 License:        LGPL-2.0-or-later


++++++ kcalendarcore-6.0.0.tar.xz -> kcalendarcore-6.1.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kcalendarcore-6.0.0/CMakeLists.txt 
new/kcalendarcore-6.1.0/CMakeLists.txt
--- old/kcalendarcore-6.0.0/CMakeLists.txt      2024-02-21 12:23:30.000000000 
+0100
+++ new/kcalendarcore-6.1.0/CMakeLists.txt      2024-04-05 12:54:50.000000000 
+0200
@@ -1,11 +1,11 @@
 cmake_minimum_required(VERSION 3.16)
-set(KF_VERSION "6.0.0") # handled by release scripts
+set(KF_VERSION "6.1.0") # handled by release scripts
 
 project(KCalendarCore VERSION ${KF_VERSION})
 
 # ECM setup
 include(FeatureSummary)
-find_package(ECM 6.0.0  NO_MODULE)
+find_package(ECM 6.1.0  NO_MODULE)
 set_package_properties(ECM PROPERTIES TYPE REQUIRED DESCRIPTION "Extra CMake 
Modules." URL "https://commits.kde.org/extra-cmake-modules";)
 feature_summary(WHAT REQUIRED_PACKAGES_NOT_FOUND 
FATAL_ON_MISSING_REQUIRED_PACKAGES)
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kcalendarcore-6.0.0/autotests/testicalformat.cpp 
new/kcalendarcore-6.1.0/autotests/testicalformat.cpp
--- old/kcalendarcore-6.0.0/autotests/testicalformat.cpp        2024-02-21 
12:23:30.000000000 +0100
+++ new/kcalendarcore-6.1.0/autotests/testicalformat.cpp        2024-04-05 
12:54:50.000000000 +0200
@@ -521,4 +521,35 @@
     QCOMPARE(parsedEvent->dtEnd().date(), event->dtEnd().date());
 }
 
+void ICalFormatTest::testAllDayRecurringUntil()
+{
+    const auto input = QLatin1String(
+        "BEGIN:VCALENDAR\n"
+        "VERSION:2.0\n"
+        "BEGIN:VEVENT\n"
+        "DTSTAMP:20240327T220619Z\n"
+        "CREATED:20240327T191625Z\n"
+        "UID:c89d88b9-810f-4275-9155-8eea2345386b\n"
+        "SEQUENCE:2\n"
+        "LAST-MODIFIED:20240327T220619Z\n"
+        "SUMMARY:Test\n"
+        "RRULE:FREQ=WEEKLY;UNTIL=20240401;BYDAY=WE\n"
+        "EXDATE;VALUE=DATE:20240327\n"
+        "DTSTART;VALUE=DATE:20240327\n"
+        "DTEND;VALUE=DATE:20240328\n"
+        "TRANSP:OPAQUE\n"
+        "END:VEVENT\n"
+        "END:VCALENDAR\n");
+    ICalFormat format;
+    MemoryCalendar::Ptr cal(new MemoryCalendar(QTimeZone::utc()));
+    QVERIFY(format.fromString(cal, input));
+    const auto events = cal->events();
+    QCOMPARE(events.size(), 1);
+
+    const auto event = events[0];
+    auto recurrence = event->recurrence();
+    QVERIFY(recurrence);
+    QCOMPARE(recurrence->endDate(), QDate(2024, 4, 1));
+}
+
 #include "moc_testicalformat.cpp"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kcalendarcore-6.0.0/autotests/testicalformat.h 
new/kcalendarcore-6.1.0/autotests/testicalformat.h
--- old/kcalendarcore-6.0.0/autotests/testicalformat.h  2024-02-21 
12:23:30.000000000 +0100
+++ new/kcalendarcore-6.1.0/autotests/testicalformat.h  2024-04-05 
12:54:50.000000000 +0200
@@ -32,6 +32,7 @@
     void testIcalFormat();
     void testNonTextCustomProperties();
     void testAllDaySchedulingMessage();
+    void testAllDayRecurringUntil();
 };
 
 #endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kcalendarcore-6.0.0/src/icalformat_p.cpp 
new/kcalendarcore-6.1.0/src/icalformat_p.cpp
--- old/kcalendarcore-6.0.0/src/icalformat_p.cpp        2024-02-21 
12:23:30.000000000 +0100
+++ new/kcalendarcore-6.1.0/src/icalformat_p.cpp        2024-04-05 
12:54:50.000000000 +0200
@@ -2390,6 +2390,9 @@
 {
     //  qCDebug(KCALCORE_LOG);
     //  _dumpIcaltime( t );
+    if (t.is_date) {
+        return QDateTime(QDate(t.year, t.month, t.day), QTime(), utc ? 
QTimeZone::UTC : QTimeZone::LocalTime);
+    }
 
     QTimeZone timeZone;
     if (icaltime_is_utc(t) || t.zone == icaltimezone_get_utc_timezone()) {
@@ -2417,10 +2420,7 @@
         }
         // If Time zone is still invalid, we will use LocalTime as TimeSpec.
     }
-    QTime resultTime;
-    if (!t.is_date) {
-        resultTime = QTime(t.hour, t.minute, t.second);
-    }
+    QTime resultTime(t.hour, t.minute, t.second);
     QDateTime result;
     if (timeZone.isValid()) {
         result = QDateTime(QDate(t.year, t.month, t.day), resultTime, 
timeZone);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kcalendarcore-6.0.0/src/icaltimezones.cpp 
new/kcalendarcore-6.1.0/src/icaltimezones.cpp
--- old/kcalendarcore-6.0.0/src/icaltimezones.cpp       2024-02-21 
12:23:30.000000000 +0100
+++ new/kcalendarcore-6.1.0/src/icaltimezones.cpp       2024-04-05 
12:54:50.000000000 +0200
@@ -629,9 +629,9 @@
                 r.setStartDt(utcStart);
                 // The end date time specified in an RRULE must be in UTC.
                 // We can not guarantee correctness if this is not the case.
-                if (r.duration() == 0 && r.endDt().timeSpec() != Qt::UTC) {
-                  qCWarning(KCALCORE_LOG) << "UNTIL in RRULE must be specified 
in UTC";
-                  break;
+                if (r.duration() == 0 && r.endDt().timeZone() != 
QTimeZone::utc()) {
+                    qCWarning(KCALCORE_LOG) << "UNTIL in RRULE must be 
specified in UTC";
+                    break;
                 }
                 const auto dts = r.timesInInterval(utcStart, maxTime);
                 for (int i = 0, end = dts.count(); i < end; ++i) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kcalendarcore-6.0.0/src/memorycalendar.cpp 
new/kcalendarcore-6.1.0/src/memorycalendar.cpp
--- old/kcalendarcore-6.0.0/src/memorycalendar.cpp      2024-02-21 
12:23:30.000000000 +0100
+++ new/kcalendarcore-6.1.0/src/memorycalendar.cpp      2024-04-05 
12:54:50.000000000 +0200
@@ -285,11 +285,16 @@
         }
 
     } else {
-#ifndef NDEBUG
         // if we already have an to-do with this UID, it must be the same 
incidence,
         // otherwise something's really broken
-        Q_ASSERT(mIncidences[type].value(uid) == incidence);
-#endif
+        qCWarning(KCALCORE_LOG) << "Calendar already contains an incidence of 
type" << type << "with UID" << uid << ", not inserting it again";
+        const auto existing = mIncidences[type].value(uid);
+        if (existing != incidence) {
+            qCWarning(KCALCORE_LOG) << "The new incidence is not the same as 
the existing incidence!";
+            qCWarning(KCALCORE_LOG) << "The existing incidence is summary=" << 
existing->summary() << ", start=" << existing->dtStart();
+            qCWarning(KCALCORE_LOG) << "The new incidence is summary=" << 
incidence->summary() << ", start=" << incidence->dtStart();
+        }
+        Q_ASSERT(existing == incidence);
     }
 }
 //@endcond

Reply via email to