{"id":14484,"date":"2016-05-10T11:47:59","date_gmt":"2016-05-10T15:47:59","guid":{"rendered":"http:\/\/mjtsai.com\/blog\/?p=14484"},"modified":"2018-05-01T11:28:16","modified_gmt":"2018-05-01T15:28:16","slug":"lost-calendar-events-change-notifications-and-icloud","status":"publish","type":"post","link":"https:\/\/mjtsai.com\/blog\/2016\/05\/10\/lost-calendar-events-change-notifications-and-icloud\/","title":{"rendered":"Lost Calendar Events, Change Notifications, and iCloud"},"content":{"rendered":"<p>Google Calendar initially did not seem to be fully reliable with iOS, so I&rsquo;ve been using iCloud&rsquo;s calendar pretty much from the beginning. It worked great until about a month ago. Since then, I&rsquo;ve lost at least four calendar events, in a strange way. I would edit an event&rsquo;s title or note and see this reflected on the calendar. Then, within a day or so, the event would disappear from all my devices. The only reason I noticed this is that, because of the recent edit, it was fresh in my mind that I had an upcoming appointment.<\/p>\n<p>My first thought was that maybe I had deleted the events by mistake. The events were on a shared calendar, and my wife had subscribed to receive e-mail notifications of any changes that I made. She had an e-mail for each edit, but there were no records of the deletions. So it doesn&rsquo;t seem like I deleted them. She wouldn&rsquo;t intentionally delete my events, and if she had done so by accident I should have received notification e-mails, which I didn&rsquo;t.<\/p>\n<p>Could it be due to a client bug or error? I don&rsquo;t think so, based on my rough understanding of how CalDAV works. Plus, an accidental delete command should have generated a notification e-mail from iCloud, anyway. I use <a href=\"https:\/\/flexibits.com\/fantastical\">Fantastical<\/a> on all my devices, so I contacted Flexibits Support. I got an immediate reply, but they had not heard of problems like this and agreed that it didn&rsquo;t seem like Fantastical was responsible. Calendar clients don&rsquo;t directly add and delete shared files; they send streams of commands to the server. So even if the wrong command were sent, the server should still have sent a notification.<\/p>\n<p>Step two was that I wanted to make sure I wasn&rsquo;t missing any <em>other<\/em> calendar events, ones that were not fresh in my mind. I archive my old calendars <a href=\"http:\/\/mjtsai.com\/blog\/2016\/03\/30\/fantastical-2-2-for-mac\/\">to PDF<\/a>, so I know I have a safe copy of everything from prior years. But I certainly don&rsquo;t want to miss something that&rsquo;s coming up.<\/p>\n<p>Apple&rsquo;s tools don&rsquo;t seem to provide a good way to answer this question. Calendar does not support browsing using <a href=\"http:\/\/apple.stackexchange.com\/questions\/41798\/restoring-lion-icloud-ical-from-time-machine\">Time Machine<\/a>. The Web version of iCloud did recently add a way to <a href=\"http:\/\/mjtsai.com\/blog\/2015\/08\/17\/icloud-can-now-restore-contacts-calendars-and-reminders\/\">restore previous calendar versions<\/a>, but this is not a good fit for several reasons. First, there is no way to download or browse your calendar backups, much less compare them to find the differences. You have to overwrite your current calendar&mdash;actually <em>all<\/em> of your current calendars, <em>and<\/em> reminders. Second, restoring a backup is problematic. It warns you that &ldquo;all sharing information will be removed&rdquo; and that &ldquo;scheduled events will be cancelled and recreated, and invitations reissued.&rdquo; Plus, it wasn&rsquo;t clear to me what to do. How far back should I restore? How exactly would I find deleted events? Reapplying all the changes from the backup to now would be practically impossible, so I would actually need to restore <em>again<\/em>, from the most recent backup, and then try to recreate just the deleted events. If there were a problem with the backup or restore I could end up in a much worse situation. I didn&rsquo;t like this approach.<\/p>\n<p>A better idea seemed to be to dig into the files myself. I had backups from my Mac and could compare the files if needed. But, even better, I have been making regular Git archives of my local Calendar store, which is essentially a folder of <a href=\"http:\/\/apple.stackexchange.com\/questions\/68879\/can-i-restore-individual-ical-appointments-using-time-machine\/77354\"><tt>.ics<\/tt> files<\/a>, one per event. I was able to look through the Git logs and see which files had been deleted. They were all ones that I had edited recently. I recreated the events manually in Fantastical.<\/p>\n<p>Step three was to try to set up better logging for the future. If I could easily see a log of the changes that I had made, it would help me to notice anything missing, and I would also have a backup, of sorts, that could be used for easier manual reconstruction. iCloud&rsquo;s e-mail change notifications would make a pretty good log, but they only notify you of changes that <em>other<\/em> people make. To get a complete log of changes, I needed to create a separate Apple ID that would only be used to receive notifications. It turns out that doing this from the iCloud Web site doesn&rsquo;t work because you won&rsquo;t have access to Calendar, <a href=\"https:\/\/www.reddit.com\/r\/applehelp\/comments\/310pbp\/icloudcom_only_shows_pagesnumberskeynote_no\/\">only to the iWork apps<\/a>. I had to sign into the iCloud account from a Mac OS X installation in VMware in order to activate the Calendar features. Then I could access Calendar from the Web. (The e-mail notification option is only in the Web version, anyway.)<\/p>\n<p>At this point, I thought I was done except that, a day or so later, the notification e-mails stopped. I had not touched that iCloud account since enabling the notifications, so I know that I didn&rsquo;t change anything. However, when I logged in again I found that &ldquo;Email me shared calendar updates&rdquo; was mysteriously unchecked. I checked it again and since then the notifications have worked as desired. Fingers crossed that this continues.<\/p>\n\n<p>In conclusion, iCloud Calendar is not as reliable as I thought it was. This is probably not the type of reliability problem that would show up in Apple&rsquo;s statistics. Indeed, I did not report it to Apple because I did not know how to do so in a useful way. Contacting Apple&rsquo;s support didn&rsquo;t seem like a productive avenue, and since my Mac is more than three years old it&rsquo;s no longer covered by Apple Care, anyway. So I&rsquo;m hoping this was just a fluke that won&rsquo;t happen again. More generally, Apple seems to be trying to get rid of the notion of files, but the tools for dealing with non-file-based data are few and crude. And this all becomes more complicated when the data is shared among multiple users.<\/p>\n\n<p><a href=\"http:\/\/minutestomidnight.net\/blog\/2016\/5\/improving-apples-services-problem-with-a-single-button\">Tim Schmitz<\/a>:<\/p>\n<blockquote cite=\"http:\/\/minutestomidnight.net\/blog\/2016\/5\/improving-apples-services-problem-with-a-single-button\"><p>The details have shifted over the years, but the basic form remains the same: [Notes] Changes made on one device sometimes don&rsquo;t show up on others. The situation improved somewhat since Apple introduced CloudKit and started migrating apps to it, but problems still occur. It happened to me just recently: I added a note to the Apple Notes app on my iPhone, then switched to my Mac, where Notes was already running. No note.<\/p>\n<p>[&#8230;]<\/p>\n<p>I get where Apple&rsquo;s coming from: They want sync to feel seamless and effortless, something that happens without the user having to think about it. But the fact of the matter is, it doesn&rsquo;t work that way. Sync rarely does, because it&rsquo;s a very hard problem to solve. Apple isn&rsquo;t alone in having trouble with it by any measure. But by not giving users a way out when problems do happen, they increase the perception that Apple services don&rsquo;t work well.<\/p><\/blockquote>\n\n<p><a href=\"https:\/\/twitter.com\/atomicbird\/status\/727224657074524161\">Tom Harrington<\/a>:<\/p>\n<blockquote cite=\"https:\/\/twitter.com\/atomicbird\/status\/727224657074524161\">\n<p>iCloud backups from iOS are broken. Again.<\/p>\n<\/blockquote>\n<blockquote cite=\"https:\/\/twitter.com\/atomicbird\/status\/727545273866579970\">If you think your phone is backing up to iCloud, you should check. When it fails, it often fails silently, and for weeks at a time.<\/blockquote>\n<blockquote cite=\"https:\/\/twitter.com\/atomicbird\/status\/728281941053571073\"><a href=\"http:\/\/www.atomicbird.com\/share\/Photo-2016-05-05-11-53.jpg\">Don&rsquo;t trust<\/a> iCloud backups on your iOS devices.<\/blockquote><p><\/p>\n<p>See also: <a href=\"https:\/\/overcast.fm\/+CdTAPd4k\/1:58:07\">Siracusa&rsquo;s Pages lament<\/a>.<\/p>\n\n<p><a href=\"https:\/\/stratechery.com\/2016\/apples-organizational-crossroads\/\">Ben Thompson<\/a>:<\/p>\n<blockquote cite=\"https:\/\/stratechery.com\/2016\/apples-organizational-crossroads\/\"><p>Cloud services, meanwhile, are still less reliable than Apple&rsquo;s competition, and the integration &mdash; Apple&rsquo;s supposed strength! &mdash; with Apple&rsquo;s software is at best a source of irritation and at worst very worrisome from a security perspective: little things like constantly being prompted to enter one&rsquo;s password are not only annoying but also corrosive when it comes to what should be a healthy skepticism about sharing the keys to your life.<\/p>\n<p>The problem in all these cases is that Apple simply isn&rsquo;t set up organizationally to excel in these areas[&#8230;] The root problem in all these cases is the lack of accountability: as long as the iPhone keeps the money flowing and the captive customers coming, it doesn&rsquo;t really matter if Apple&rsquo;s services are as good as they could be. People will still use the App Store, Apple Music, and iCloud, simply because the iPhone is so good.<\/p>\n<\/blockquote>\n<p>Update (2016-05-10): <a href=\"https:\/\/twitter.com\/rustyshelf\/status\/729965946186530817\">Russell<\/a> <a href=\"https:\/\/twitter.com\/rustyshelf\/status\/729966057549500416\">Ivanovic<\/a>:<\/p>\n<blockquote cite=\"https:\/\/twitter.com\/rustyshelf\/status\/729965946186530817\"><p>Tried to sync a desktop background over iCloud Drive. On the other side: &ldquo;Can&rsquo;t open Document (null)&rdquo;. Can&rsquo;t copy the file either.<\/p><\/blockquote>\n<blockquote cite=\"https:\/\/twitter.com\/rustyshelf\/status\/729966057549500416\"><p>Deleted the PNG, added it again, same thing. Gave up and put it in DropBox, works fine.<\/p><\/blockquote>\n\n<p>Update (2016-05-11): John Chaffee informed me that <a href=\"http:\/\/www.busymac.com\/busycal\/\">BusyCal<\/a>&rsquo;s log of changes from the server could help spot deletions. BusyCal also has an automatic backup feature that can restore a single calendar and does not have to overwrite existing calendars.<\/p>\n\n<p>Update (2016-05-12): <a href=\"https:\/\/twitter.com\/hboon\/status\/730572592659075072\">Hwee-Boon Yar<\/a>:<\/p>\n<blockquote cite=\"https:\/\/twitter.com\/hboon\/status\/730572592659075072\">\n<p>I have had events that were around for a while mysteriously duplicated. When I delete one of them, both disappeared.<\/p>\n<\/blockquote>\n\n<p>Update (2018-05-01): I&rsquo;m continuing to have problems with iCloud Calendar not consistently sending e-mail change notifications.<\/p>","protected":false},"excerpt":{"rendered":"<p>Google Calendar initially did not seem to be fully reliable with iOS, so I&rsquo;ve been using iCloud&rsquo;s calendar pretty much from the beginning. It worked great until about a month ago. Since then, I&rsquo;ve lost at least four calendar events, in a strange way. I would edit an event&rsquo;s title or note and see this [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"apple_news_api_created_at":"2018-05-01T15:28:19Z","apple_news_api_id":"e0fee5d5-676f-4e44-b807-2abe6082f3bf","apple_news_api_modified_at":"2018-05-01T15:28:19Z","apple_news_api_revision":"AAAAAAAAAAD\/\/\/\/\/\/\/\/\/\/w==","apple_news_api_share_url":"https:\/\/apple.news\/A4P7l1WdvTkS4Byq-YILzvw","apple_news_coverimage":0,"apple_news_coverimage_caption":"","apple_news_is_hidden":false,"apple_news_is_paid":false,"apple_news_is_preview":false,"apple_news_is_sponsored":false,"apple_news_maturity_rating":"","apple_news_metadata":"\"\"","apple_news_pullquote":"","apple_news_pullquote_position":"","apple_news_slug":"","apple_news_sections":"\"\"","apple_news_suppress_video_url":false,"apple_news_use_image_component":false,"footnotes":""},"categories":[2],"tags":[1143,146,131,192,382,193,1016,194,377,16,31,1137,30,1199,700,472],"class_list":["post-14484","post","type-post","status-publish","format-standard","hentry","category-technology","tag-apple-software-quality","tag-backup","tag-bug","tag-busycal","tag-caldav","tag-calendar","tag-datacide","tag-fantastical","tag-git","tag-icloud","tag-ios","tag-ios-9","tag-mac","tag-mac-os-x-10-11","tag-notes","tag-pages"],"apple_news_notices":[],"_links":{"self":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts\/14484","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/comments?post=14484"}],"version-history":[{"count":6,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts\/14484\/revisions"}],"predecessor-version":[{"id":21388,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts\/14484\/revisions\/21388"}],"wp:attachment":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/media?parent=14484"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/categories?post=14484"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/tags?post=14484"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}