What's Changed
🪲 Bug fixes
- Move
AccountSettingsaccess inCollectionScreenViewModeloff main thread by @rfc2822 in #2217 PushDistributorManagerTest: fix mockking by @rfc2822 in #2215- Update calendar color generation to use RGB format by @rfc2822 in #2221
- Create collection: treat 207 Multi-Status as error by @rfc2822 in #2223
- Fix
UnsupportedOperationExceptionwhen parsing inline attachment in JtxICalObject by @rfc2822 in #2275 - Work around ical4j/ical4j#880 with
TemporalAdapterCompatby @rfc2822 in #2280 - Gracefully handle ical4j property and Task toString() exceptions by @rfc2822 in #2279
- Avoid NullPointerException when VTIMEZONE is missing STANDARD/DAYLIGHT by @cketti in #2285
🛠️ Refactoring
- Move account/user data handling into
synctoolsby @rfc2822 in #2218 - Migrate
DavCollectionRepositoryto Ktor by @rfc2822 in #2224 - Update imports to use
synctoolsinstead ofvcard4androidby @rfc2822 in #2228 - Update bitfire-synctools and refactor vCard generation to use
StringWriterby @rfc2822 in #2241 - Update bitfire-synctools and replace direct
ContactvCard parsing/generating by refactored methods by @rfc2822 in #2242 - Update bitfire-synctools and use new RawContactHandler/Builder by @rfc2822 in #2243
- Move contact group membership and unknown property support to synctools by @rfc2822 in #2244
- Integrate synctools as gradle submodule by @rfc2822 in #2250
- [synctools tasks rewrite] Add RecurrenceFieldsHandler by @sunkup in #2274
⚙️ CI/CD
✏️ Other changes
- Unify copyright notice in synctools by @rfc2822 in #2251
- Translations update from Hosted Weblate by @weblate in #2287
Full Changelog: v4.5.12-ose...v4.5.13-rc.1-ose