diff --git a/CHANGELOG.md b/CHANGELOG.md index 168fc536a..617f4c1fd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,8 @@ +### 11.5.2 (2021-02-25) + +* Fix CalDAV sync error +* Report errors when generating recurrence dates + ### 11.5.1 (2021-02-24) * Fix 'repeat until' date diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 5ddf44e34..99d3ba75c 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -45,8 +45,8 @@ android { defaultConfig { testApplicationId = "org.tasks.test" applicationId = "org.tasks" - versionCode = 110501 - versionName = "11.5.1" + versionCode = 110502 + versionName = "11.5.2" targetSdkVersion(Versions.targetSdk) minSdkVersion(Versions.minSdk) testInstrumentationRunner = "org.tasks.TestRunner" diff --git a/app/src/main/java/com/todoroo/astrid/repeats/RepeatTaskHelper.kt b/app/src/main/java/com/todoroo/astrid/repeats/RepeatTaskHelper.kt index 6fa89679f..946a2bb66 100644 --- a/app/src/main/java/com/todoroo/astrid/repeats/RepeatTaskHelper.kt +++ b/app/src/main/java/com/todoroo/astrid/repeats/RepeatTaskHelper.kt @@ -149,8 +149,9 @@ class RepeatTaskHelper @Inject constructor( } private fun invokeRecurrence(recur: Recur, original: DateTime, startDateAsDV: Date): Long { - val nextDate = recur.getNextDate(startDateAsDV, startDateAsDV) - return buildNewDueDate(original, nextDate) + return recur.getNextDate(startDateAsDV, startDateAsDV) + ?.let { buildNewDueDate(original, it) } + ?: throw IllegalStateException("recur=$recur original=$original startDateAsDv=$startDateAsDV") } /** Compute long due date from DateValue */ diff --git a/app/src/main/java/org/tasks/caldav/property/ShareAccess.kt b/app/src/main/java/org/tasks/caldav/property/ShareAccess.kt index 06b267976..c5911eb01 100644 --- a/app/src/main/java/org/tasks/caldav/property/ShareAccess.kt +++ b/app/src/main/java/org/tasks/caldav/property/ShareAccess.kt @@ -34,9 +34,7 @@ data class ShareAccess(val access: Property.Name): Property { var eventType = parser.eventType while (!(eventType == XmlPullParser.END_TAG && parser.depth == depth)) { if (eventType == XmlPullParser.START_TAG && parser.depth == depth + 1) { - when (val name = parser.propertyName()) { - SHARED_OWNER, READ_WRITE, NOT_SHARED, READ -> result = name - } + result = parser.propertyName() } eventType = parser.next() } diff --git a/app/src/main/java/org/tasks/caldav/property/Sharee.kt b/app/src/main/java/org/tasks/caldav/property/Sharee.kt index 257da33e1..94d82e697 100644 --- a/app/src/main/java/org/tasks/caldav/property/Sharee.kt +++ b/app/src/main/java/org/tasks/caldav/property/Sharee.kt @@ -28,9 +28,10 @@ class Sharee(parser: XmlPullParser) { DavResource.HREF -> XmlUtils.readText(parser)?.let { href = it } ShareAccess.NAME -> - access = PropertyRegistry.create(ShareAccess.NAME, parser) as ShareAccess + PropertyRegistry.create(ShareAccess.NAME, parser) + ?.let { access = it as ShareAccess } COMMENT -> - comment = XmlUtils.readText(parser) + XmlUtils.readText(parser)?.let { comment = it } INVITE_ACCEPTED, INVITE_DECLINED, INVITE_NORESPONSE, INVITE_INVALID -> response = name DavResource.PROP -> diff --git a/fastlane/metadata/android/en-US/changelogs/110502.txt b/fastlane/metadata/android/en-US/changelogs/110502.txt new file mode 100644 index 000000000..3dae95d01 --- /dev/null +++ b/fastlane/metadata/android/en-US/changelogs/110502.txt @@ -0,0 +1,4 @@ +* Fix 'repeat until' date +* Fix repeat dates for UTC+13 +* F-Droid: Handle null name in Nominatim reverse geocoder +* Update translations