Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package kcalendarcore for openSUSE:Factory 
checked in at 2022-10-11 17:59:38
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kcalendarcore (Old)
 and      /work/SRC/openSUSE:Factory/.kcalendarcore.new.2275 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "kcalendarcore"

Tue Oct 11 17:59:38 2022 rev:37 rq:1008975 version:5.99.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/kcalendarcore/kcalendarcore.changes      
2022-09-13 15:09:47.460710493 +0200
+++ /work/SRC/openSUSE:Factory/.kcalendarcore.new.2275/kcalendarcore.changes    
2022-10-11 18:01:13.821665848 +0200
@@ -1,0 +2,12 @@
+Sat Oct  1 15:55:30 UTC 2022 - Christophe Giboudeaux <[email protected]>
+
+- Update to 5.99.0
+  * New feature release
+  * For more details please see:
+  * https://kde.org/announcements/frameworks/5/5.99.0
+- Changes since 5.98.0:
+  * Add Qt6 windows CI support
+  * .gitlab-ci.yml: enable static builds
+  * Use dtStart as the default for dtRecurrence
+
+-------------------------------------------------------------------

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

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

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

Other differences:
------------------
++++++ kcalendarcore.spec ++++++
--- /var/tmp/diff_new_pack.sH0kjf/_old  2022-10-11 18:01:14.273666579 +0200
+++ /var/tmp/diff_new_pack.sH0kjf/_new  2022-10-11 18:01:14.277666585 +0200
@@ -16,14 +16,14 @@
 #
 
 
-%define _tar_path 5.98
+%define _tar_path 5.99
 # Full KF5 version (e.g. 5.33.0)
 %{!?_kf5_version: %global _kf5_version %{version}}
 # Last major and minor KF5 version (e.g. 5.33)
 %{!?_kf5_bugfix_version: %define _kf5_bugfix_version %(echo %{_kf5_version} | 
awk -F. '{print $1"."$2}')}
 %bcond_without released
 Name:           kcalendarcore
-Version:        5.98.0
+Version:        5.99.0
 Release:        0
 Summary:        Library to access and handle calendar data
 License:        LGPL-2.0-or-later


++++++ kcalendarcore-5.98.0.tar.xz -> kcalendarcore-5.99.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kcalendarcore-5.98.0/.gitlab-ci.yml 
new/kcalendarcore-5.99.0/.gitlab-ci.yml
--- old/kcalendarcore-5.98.0/.gitlab-ci.yml     2022-09-05 11:22:50.000000000 
+0200
+++ new/kcalendarcore-5.99.0/.gitlab-ci.yml     2022-10-01 15:13:05.000000000 
+0200
@@ -3,9 +3,12 @@
 
 include:
   - 
https://invent.kde.org/sysadmin/ci-utilities/raw/master/gitlab-templates/linux.yml
+  - 
https://invent.kde.org/sysadmin/ci-utilities/raw/master/gitlab-templates/linux-static.yml
   - 
https://invent.kde.org/sysadmin/ci-utilities/raw/master/gitlab-templates/android.yml
   - 
https://invent.kde.org/sysadmin/ci-utilities/raw/master/gitlab-templates/freebsd.yml
   - 
https://invent.kde.org/sysadmin/ci-utilities/raw/master/gitlab-templates/linux-qt6.yml
   - 
https://invent.kde.org/sysadmin/ci-utilities/raw/master/gitlab-templates/android-qt6.yml
   - 
https://invent.kde.org/sysadmin/ci-utilities/raw/master/gitlab-templates/windows.yml
+  - 
https://invent.kde.org/sysadmin/ci-utilities/raw/master/gitlab-templates/windows-static.yml
   - 
https://invent.kde.org/sysadmin/ci-utilities/raw/master/gitlab-templates/freebsd-qt6.yml
+  - 
https://invent.kde.org/sysadmin/ci-utilities/raw/master/gitlab-templates/windows-qt6.yml
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kcalendarcore-5.98.0/CMakeLists.txt 
new/kcalendarcore-5.99.0/CMakeLists.txt
--- old/kcalendarcore-5.98.0/CMakeLists.txt     2022-09-05 11:22:50.000000000 
+0200
+++ new/kcalendarcore-5.99.0/CMakeLists.txt     2022-10-01 15:13:05.000000000 
+0200
@@ -1,11 +1,11 @@
 cmake_minimum_required(VERSION 3.16)
-set(KF_VERSION "5.98.0") # handled by release scripts
+set(KF_VERSION "5.99.0") # handled by release scripts
 
 project(KCalendarCore VERSION ${KF_VERSION})
 
 # ECM setup
 include(FeatureSummary)
-find_package(ECM 5.98.0  NO_MODULE)
+find_package(ECM 5.99.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-5.98.0/src/CMakeLists.txt 
new/kcalendarcore-5.99.0/src/CMakeLists.txt
--- old/kcalendarcore-5.98.0/src/CMakeLists.txt 2022-09-05 11:22:50.000000000 
+0200
+++ new/kcalendarcore-5.99.0/src/CMakeLists.txt 2022-10-01 15:13:05.000000000 
+0200
@@ -124,7 +124,7 @@
     LibIcal
 )
 
-install(TARGETS KF5CalendarCore EXPORT KF5CalendarCoreTargets 
${KF5_INSTALL_TARGETS_DEFAULT_ARGS})
+install(TARGETS KF5CalendarCore EXPORT KF5CalendarCoreTargets 
${KF_INSTALL_TARGETS_DEFAULT_ARGS})
 
 ########### Generate Headers ###############
 set(kcalendarcore_headers
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kcalendarcore-5.98.0/src/calendar.cpp 
new/kcalendarcore-5.99.0/src/calendar.cpp
--- old/kcalendarcore-5.98.0/src/calendar.cpp   2022-09-05 11:22:50.000000000 
+0200
+++ new/kcalendarcore-5.99.0/src/calendar.cpp   2022-10-01 15:13:05.000000000 
+0200
@@ -868,7 +868,7 @@
 
     const QString uid = incidence->uid();
 
-    for (const Incidence::Ptr &i : qAsConst(d->mIncidenceRelations[uid])) {
+    for (const Incidence::Ptr &i : std::as_const(d->mIncidenceRelations[uid])) 
{
         if (!d->mOrphanUids.contains(i->uid())) {
             d->mOrphans.insert(uid, i);
             d->mOrphanUids.insert(i->uid(), i);
@@ -1016,7 +1016,7 @@
 {
     if (modified != d->mModified || d->mNewObserver) {
         d->mNewObserver = false;
-        for (CalendarObserver *observer : qAsConst(d->mObservers)) {
+        for (CalendarObserver *observer : std::as_const(d->mObservers)) {
             observer->calendarModified(modified, this);
         }
         d->mModified = modified;
@@ -1071,7 +1071,7 @@
         return;
     }
 
-    for (CalendarObserver *observer : qAsConst(d->mObservers)) {
+    for (CalendarObserver *observer : std::as_const(d->mObservers)) {
         observer->calendarIncidenceAdded(incidence);
     }
 
@@ -1095,7 +1095,7 @@
         return;
     }
 
-    for (CalendarObserver *observer : qAsConst(d->mObservers)) {
+    for (CalendarObserver *observer : std::as_const(d->mObservers)) {
         observer->calendarIncidenceChanged(incidence);
     }
 }
@@ -1110,7 +1110,7 @@
         return;
     }
 
-    for (CalendarObserver *observer : qAsConst(d->mObservers)) {
+    for (CalendarObserver *observer : std::as_const(d->mObservers)) {
         observer->calendarIncidenceAboutToBeDeleted(incidence);
     }
 }
@@ -1125,7 +1125,7 @@
         return;
     }
 
-    for (CalendarObserver *observer : qAsConst(d->mObservers)) {
+    for (CalendarObserver *observer : std::as_const(d->mObservers)) {
         observer->calendarIncidenceDeleted(incidence, this);
     }
 }
@@ -1140,7 +1140,7 @@
         return;
     }
 
-    for (CalendarObserver *observer : qAsConst(d->mObservers)) {
+    for (CalendarObserver *observer : std::as_const(d->mObservers)) {
         observer->calendarIncidenceAdditionCanceled(incidence);
     }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kcalendarcore-5.98.0/src/freebusy.cpp 
new/kcalendarcore-5.99.0/src/freebusy.cpp
--- old/kcalendarcore-5.98.0/src/freebusy.cpp   2022-09-05 11:22:50.000000000 
+0200
+++ new/kcalendarcore-5.99.0/src/freebusy.cpp   2022-10-01 15:13:05.000000000 
+0200
@@ -221,7 +221,7 @@
 
     Q_D(const FreeBusy);
     res.reserve(d->mBusyPeriods.count());
-    for (const FreeBusyPeriod &p : qAsConst(d->mBusyPeriods)) {
+    for (const FreeBusyPeriod &p : std::as_const(d->mBusyPeriods)) {
         res << p;
     }
 
@@ -244,7 +244,7 @@
 {
     Q_D(FreeBusy);
     d->mBusyPeriods.reserve(d->mBusyPeriods.count() + list.count());
-    for (const Period &p : qAsConst(list)) {
+    for (const Period &p : std::as_const(list)) {
         d->mBusyPeriods << FreeBusyPeriod(p);
     }
     sortList();
@@ -298,7 +298,7 @@
         update();
         d->mDtEnd = d->mDtEnd.toTimeZone(oldZone);
         d->mDtEnd.setTimeZone(newZone);
-        for (FreeBusyPeriod p : qAsConst(d->mBusyPeriods)) {
+        for (FreeBusyPeriod p : std::as_const(d->mBusyPeriods)) {
             p.shiftTimes(oldZone, newZone);
         }
         setFieldDirty(FieldDtEnd);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kcalendarcore-5.98.0/src/icalformat.cpp 
new/kcalendarcore-5.99.0/src/icalformat.cpp
--- old/kcalendarcore-5.98.0/src/icalformat.cpp 2022-09-05 11:22:50.000000000 
+0200
+++ new/kcalendarcore-5.99.0/src/icalformat.cpp 2022-10-01 15:13:05.000000000 
+0200
@@ -302,7 +302,7 @@
         // this will export a calendar having only timezone definitions
         tzUsedList = cal->d->mTimeZones;
     }
-    for (const auto &qtz : qAsConst(tzUsedList)) {
+    for (const auto &qtz : std::as_const(tzUsedList)) {
         if (qtz != QTimeZone::utc()) {
             icaltimezone *tz = 
ICalTimeZoneParser::icaltimezoneFromQTimeZone(qtz, earliestTz[qtz]);
             if (!tz) {
@@ -356,7 +356,7 @@
     ICalTimeZoneParser::updateTzEarliestDate(incidence, &earliestTzDt);
 
     // time zones
-    for (const auto &qtz : qAsConst(tzUsedList)) {
+    for (const auto &qtz : std::as_const(tzUsedList)) {
         if (qtz != QTimeZone::utc()) {
             icaltimezone *tz = 
ICalTimeZoneParser::icaltimezoneFromQTimeZone(qtz, earliestTzDt[qtz]);
             if (!tz) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kcalendarcore-5.98.0/src/icalformat_p.cpp 
new/kcalendarcore-5.99.0/src/icalformat_p.cpp
--- old/kcalendarcore-5.98.0/src/icalformat_p.cpp       2022-09-05 
11:22:50.000000000 +0200
+++ new/kcalendarcore-5.99.0/src/icalformat_p.cpp       2022-10-01 
15:13:05.000000000 +0200
@@ -2933,7 +2933,7 @@
         TimeZoneEarliestDate earliestTz;
         ICalTimeZoneParser::updateTzEarliestDate(incidence, &earliestTz);
 
-        for (const auto &qtz : qAsConst(zones)) {
+        for (const auto &qtz : std::as_const(zones)) {
             icaltimezone *icaltz = 
ICalTimeZoneParser::icaltimezoneFromQTimeZone(qtz, earliestTz[qtz]);
             if (!icaltz) {
                 qCritical() << "bad time zone";
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kcalendarcore-5.98.0/src/incidence.cpp 
new/kcalendarcore-5.99.0/src/incidence.cpp
--- old/kcalendarcore-5.98.0/src/incidence.cpp  2022-09-05 11:22:50.000000000 
+0200
+++ new/kcalendarcore-5.99.0/src/incidence.cpp  2022-10-01 15:13:05.000000000 
+0200
@@ -107,7 +107,7 @@
     // We need to really duplicate the objects stored therein, otherwise 
deleting
     // i will also delete all attachments from this object (setAutoDelete...)
     mAlarms.reserve(other.mAlarms.count());
-    for (const Alarm::Ptr &alarm : qAsConst(other.mAlarms)) {
+    for (const Alarm::Ptr &alarm : std::as_const(other.mAlarms)) {
         Alarm::Ptr b(new Alarm(*alarm.data()));
         b->setParent(q);
         mAlarms.append(b);
@@ -167,7 +167,7 @@
     // Alarm has a raw incidence pointer, so we must set it to 0
     // so Alarm doesn't use it after Incidence is destroyed
     Q_D(const Incidence);
-    for (const Alarm::Ptr &alarm : qAsConst(d->mAlarms)) {
+    for (const Alarm::Ptr &alarm : std::as_const(d->mAlarms)) {
         alarm->setParent(nullptr);
     }
     delete d->mRecurrence;
@@ -757,7 +757,7 @@
 {
     Q_D(const Incidence);
     Attachment::List attachments;
-    for (const Attachment &attachment : qAsConst(d->mAttachments)) {
+    for (const Attachment &attachment : std::as_const(d->mAttachments)) {
         if (attachment.mimeType() == mime) {
             attachments.append(attachment);
         }
@@ -1219,15 +1219,15 @@
         out << d->mRecurrence;
     }
 
-    for (const Attachment &attachment : qAsConst(d->mAttachments)) {
+    for (const Attachment &attachment : std::as_const(d->mAttachments)) {
         out << attachment;
     }
 
-    for (const Alarm::Ptr &alarm : qAsConst(d->mAlarms)) {
+    for (const Alarm::Ptr &alarm : std::as_const(d->mAlarms)) {
         out << alarm;
     }
 
-    for (const Conference &conf : qAsConst(d->mConferences)) {
+    for (const Conference &conf : std::as_const(d->mConferences)) {
         out << conf;
     }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kcalendarcore-5.98.0/src/incidencebase.cpp 
new/kcalendarcore-5.99.0/src/incidencebase.cpp
--- old/kcalendarcore-5.98.0/src/incidencebase.cpp      2022-09-05 
11:22:50.000000000 +0200
+++ new/kcalendarcore-5.99.0/src/incidencebase.cpp      2022-10-01 
15:13:05.000000000 +0200
@@ -524,7 +524,7 @@
     if (!d_ptr->mUpdateGroupLevel) {
         d_ptr->mUpdatedPending = true;
         const auto rid = recurrenceId();
-        for (IncidenceObserver *o : qAsConst(d_ptr->mObservers)) {
+        for (IncidenceObserver *o : std::as_const(d_ptr->mObservers)) {
             o->incidenceUpdate(uid(), rid);
         }
     }
@@ -536,7 +536,7 @@
         d_ptr->mUpdatedPending = true;
     } else {
         const auto rid = recurrenceId();
-        for (IncidenceObserver *o : qAsConst(d_ptr->mObservers)) {
+        for (IncidenceObserver *o : std::as_const(d_ptr->mObservers)) {
             o->incidenceUpdated(uid(), rid);
         }
     }
@@ -635,7 +635,7 @@
     out << i->organizer() << i->d_ptr->mUid << i->d_ptr->mDuration << 
i->d_ptr->mAllDay << i->d_ptr->mHasDuration << i->d_ptr->mComments << 
i->d_ptr->mContacts
         << (qint32)i->d_ptr->mAttendees.count() << i->d_ptr->mUrl;
 
-    for (const Attendee &attendee : qAsConst(i->d_ptr->mAttendees)) {
+    for (const Attendee &attendee : std::as_const(i->d_ptr->mAttendees)) {
         out << attendee;
     }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kcalendarcore-5.98.0/src/occurrenceiterator.cpp 
new/kcalendarcore-5.99.0/src/occurrenceiterator.cpp
--- old/kcalendarcore-5.98.0/src/occurrenceiterator.cpp 2022-09-05 
11:22:50.000000000 +0200
+++ new/kcalendarcore-5.99.0/src/occurrenceiterator.cpp 2022-10-01 
15:13:05.000000000 +0200
@@ -104,7 +104,7 @@
 
     void setupIterator(const Calendar &calendar, const Incidence::List 
&incidences)
     {
-        for (const Incidence::Ptr &inc : qAsConst(incidences)) {
+        for (const Incidence::Ptr &inc : std::as_const(incidences)) {
             if (inc->hasRecurrenceId()) {
                 continue;
             }
@@ -124,7 +124,7 @@
                 qint64 offset(0);
                 qint64 lastOffset(0);
                 QDateTime occurrenceStartDate;
-                for (const auto &recurrenceId : qAsConst(occurrences)) {
+                for (const auto &recurrenceId : std::as_const(occurrences)) {
                     occurrenceStartDate = recurrenceId;
 
                     bool resetIncidence = false;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kcalendarcore-5.98.0/src/recurrence.cpp 
new/kcalendarcore-5.99.0/src/recurrence.cpp
--- old/kcalendarcore-5.98.0/src/recurrence.cpp 2022-09-05 11:22:50.000000000 
+0200
+++ new/kcalendarcore-5.99.0/src/recurrence.cpp 2022-10-01 15:13:05.000000000 
+0200
@@ -1147,7 +1147,7 @@
         }
 
         QDateTime kdt(startDateTime());
-        for (const auto &date : qAsConst(d->mRDates)) {
+        for (const auto &date : std::as_const(d->mRDates)) {
             kdt.setDate(date);
             if (kdt > nextDT) {
                 dates << kdt;
@@ -1156,7 +1156,7 @@
         }
 
         // Add the next occurrences from all RRULEs.
-        for (const auto &rule : qAsConst(d->mRRules)) {
+        for (const auto &rule : std::as_const(d->mRRules)) {
             QDateTime dt = rule->getNextDate(nextDT);
             if (dt.isValid()) {
                 dates << dt;
@@ -1174,7 +1174,7 @@
         if (!std::binary_search(d->mExDates.constBegin(), 
d->mExDates.constEnd(), nextDT.date())
             && !std::binary_search(d->mExDateTimes.constBegin(), 
d->mExDateTimes.constEnd(), nextDT)) {
             bool allowed = true;
-            for (const auto &rule : qAsConst(d->mExRules)) {
+            for (const auto &rule : std::as_const(d->mExRules)) {
                 allowed = allowed && !rule->recursAt(nextDT);
             }
             if (allowed) {
@@ -1217,7 +1217,7 @@
         }
 
         QDateTime kdt(startDateTime());
-        for (const auto &date : qAsConst(d->mRDates)) {
+        for (const auto &date : std::as_const(d->mRDates)) {
             kdt.setDate(date);
             if (kdt < prevDT) {
                 dates << kdt;
@@ -1226,7 +1226,7 @@
         }
 
         // Add the previous occurrences from all RRULEs.
-        for (const auto &rule : qAsConst(d->mRRules)) {
+        for (const auto &rule : std::as_const(d->mRRules)) {
             QDateTime dt = rule->getPreviousDate(prevDT);
             if (dt.isValid()) {
                 dates << dt;
@@ -1244,7 +1244,7 @@
         if (!std::binary_search(d->mExDates.constBegin(), 
d->mExDates.constEnd(), prevDT.date())
             && !std::binary_search(d->mExDateTimes.constBegin(), 
d->mExDateTimes.constEnd(), prevDT)) {
             bool allowed = true;
-            for (const auto &rule : qAsConst(d->mExRules)) {
+            for (const auto &rule : std::as_const(d->mExRules)) {
                 allowed = allowed && !rule->recursAt(prevDT);
             }
             if (allowed) {
@@ -1526,11 +1526,11 @@
     serializeQDateTimeAsKDateTime(out, r->d->mStartDateTime);
     out << r->d->mCachedType << r->d->mAllDay << r->d->mRecurReadOnly << 
r->d->mExDates << (qint32)r->d->mExRules.count() << 
(qint32)r->d->mRRules.count();
 
-    for (RecurrenceRule *rule : qAsConst(r->d->mExRules)) {
+    for (RecurrenceRule *rule : std::as_const(r->d->mExRules)) {
         out << rule;
     }
 
-    for (RecurrenceRule *rule : qAsConst(r->d->mRRules)) {
+    for (RecurrenceRule *rule : std::as_const(r->d->mRRules)) {
         out << rule;
     }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kcalendarcore-5.98.0/src/todo.cpp 
new/kcalendarcore-5.99.0/src/todo.cpp
--- old/kcalendarcore-5.98.0/src/todo.cpp       2022-09-05 11:22:50.000000000 
+0200
+++ new/kcalendarcore-5.99.0/src/todo.cpp       2022-10-01 15:13:05.000000000 
+0200
@@ -453,7 +453,14 @@
 QDateTime Todo::dtRecurrence() const
 {
     Q_D(const Todo);
-    return d->dtRecurrence().isValid() ? d->dtRecurrence() : d->dtDue();
+    auto dt = d->dtRecurrence();
+    if (!dt.isValid()) {
+        dt = IncidenceBase::dtStart();
+    }
+    if (!dt.isValid()) {
+        dt = d->dtDue();
+    }
+    return dt;
 }
 
 bool Todo::recursOn(const QDate &date, const QTimeZone &timeZone) const
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kcalendarcore-5.98.0/src/todo.h 
new/kcalendarcore-5.99.0/src/todo.h
--- old/kcalendarcore-5.98.0/src/todo.h 2022-09-05 11:22:50.000000000 +0200
+++ new/kcalendarcore-5.99.0/src/todo.h 2022-10-01 15:13:05.000000000 +0200
@@ -260,14 +260,21 @@
     void setAllDay(bool allDay) override;
 
     /**
-      Sets the due date/time of the current occurrence if recurrent.
+      Identify the earliest uncompleted occurrence of a recurring Todo.
 
-      @param dt is the
+      @param dt Normally, the start date-time of the occurrence.
+        For backwards compatibility, if the Todo does not have a @c dtStart()
+        then pass the occurrence's due date-time.
     */
     void setDtRecurrence(const QDateTime &dt);
 
     /**
-      Returns the due date/time of the current occurrence if recurrent.
+      Returns an identifier for the earliest uncompleted occurrence of a
+      recurring Todo.
+
+      @note
+      Do not rely on the returned value to determine whether the Todo is
+      completed; use @c isCompleted() instead.
     */
     Q_REQUIRED_RESULT QDateTime dtRecurrence() const;
 

Reply via email to