Bug 419836

Summary: Events with empty UID are present in akonadi console but not showing up in the calendar
Product: [Applications] korganizer Reporter: csabi
Component: monthviewAssignee: kdepim bugs <kdepim-bugs>
Status: RESOLVED FIXED    
Severity: major CC: ach, dvratil, philippe.roubach, rasasi78, thewildotter, winter
Priority: NOR    
Version: 5.14.0   
Target Milestone: ---   
Platform: Arch Linux   
OS: Linux   
Latest Commit: Version Fixed In:
Attachments: an ics file

Description csabi 2020-04-08 10:47:12 UTC
SUMMARY


STEPS TO REPRODUCE
1. Import an ICS file which has no UID field (in my case it's an eventbrite event)
2. 
3. 

OBSERVED RESULT
event is imported, visible in other calendar clients, but missing in Korganizer.

EXPECTED RESULT
Event should be visible in Korganizer (monthly view)

SOFTWARE/OS VERSIONS
Windows: 
macOS: 
Linux/KDE Plasma: Arch Linux
(available in About System)
KDE Plasma Version: 19.12.3
KDE Frameworks Version: 
Qt Version: 

ADDITIONAL INFORMATION
Comment 1 Allen Winter 2020-04-08 13:46:30 UTC
any chance you can attach the .ics file here?
or email to me?
Comment 2 csabi 2020-04-08 14:01:48 UTC
Created attachment 127389 [details]
an ics file

Sure, it's here. (Any ICS without UID is the same I think, I report it because it's at least the second time I see this)
Comment 3 Allen Winter 2020-04-08 17:13:26 UTC
1. definitely a bad ics file and the creator should be told to fix (i.e. create UIDs)

2. Akonadi is doing the right thing

3. kcalendarcore has code to deal with missing UIDs. I need to figure out if that code is broken or if KOrganizer is to blame. I do think KOrganizer should be nice and handle missing UIDs, even if RFC non-compliant
Comment 4 csabi 2020-04-08 21:40:54 UTC
I also think it should still work even if it's not compliant, because multiple sources can create these, and they work in other calendars as nextcloud, thunderbird and the phone calendar.
Comment 5 csabi 2020-04-08 21:42:56 UTC
Also it could give a warning at import it something wrong is detected (currently it is imported but not shown).
Comment 6 John Scott 2020-05-07 19:13:48 UTC
*** Bug 378391 has been marked as a duplicate of this bug. ***
Comment 7 Achim Bohnet 2020-05-08 07:38:47 UTC
Loaded attachment with korganizer 5.14.0. 

* I see it in akonadiconsole with an RID.  In raw payload there is was no UID added.
* korganizer does not show the event at 11/12th Apr. 20
* Event is sync with NextCloud and NextCloud calender app show the event
* Apple calender synced and display the event 'properly'
* Android google calender app show the event also properly
* Thunderbird (Linux) displays the event also properly
Comment 8 Raúl 2020-09-10 16:55:05 UTC
Bumped.

Debian sid.

Kontact 5.14.1 (20.04.0)
KDE Frameworks 5.70.0
Qt 5.14.2

I can see the events on akonadiconsole but not on korganizer. I have copied the payload of a working and non-working event in some files which I can send privately to someone interested in debugging this issue.

Regards,
Comment 9 thewildotter 2021-02-09 22:35:28 UTC
(In reply to Allen Winter from comment #3)
> 1. definitely a bad ics file and the creator should be told to fix (i.e.
> create UIDs)
> 
> 2. Akonadi is doing the right thing
> 
> 3. kcalendarcore has code to deal with missing UIDs. I need to figure out if
> that code is broken or if KOrganizer is to blame. I do think KOrganizer
> should be nice and handle missing UIDs, even if RFC non-compliant

This is not just "being nice." Set the missing UID to NoUser and go on. Otherwise this import is broken and so is the whole reason (foreign invitation calendar entries) I would use KOrganizer at all.  Failure to complete any important imported calendar entries will force me to go back to manually editing my external calendar entries for inclusion into a roll-your-own file.  I understand that the initial authors of the calendar .ics data I tested did not perfectly follow the standard.  However, discarding my calendar info is not punishing them, it is punishing ME and consequently KO'ing MY use of KOrganizer.  Also, the standards need amending to recognize that event organizers will almost never have a valid UID on my system so using NoUser is fully appropriate if .ics file originators are too lazy or too worried about exposing the UID they are actually using on their system to their invitees.  I can tell you that the chances of getting the event organizers of many large upcoming events within my lifetime to fix their invites so that they are perfectly RFC compliant are not just small, they are exactly zero.  
   I was all fired up for reducing the effort to maintain my calendar.  I commissioned  the effort to install KOrganizer and was pleased when it smoothly came up.  The very first external entry attempt into the application has, however, left me depressed.  I do support open source but calendar entries must be bulletproof. One missed appointment is too many.  I have never missed one using our excellent internal roll-your-own calendar files although the delegated effort, I am told, is oppressive. This load/stress on my associates led me to give KOrganizer an audition so no one would have to meticulously transcribe all the pertinent info from a bunch of external invites and replicate them for our attendee lists.  I hope the fix is easy and prompt.  I would like to standardize on KOrganizer.  It could easily become another gold star on my list of excellent open source applications.  Otherwise, I will be commissioning a productivity enhancement for our support programs for our roll-your-own calendar files and I really would rather not since office software is not our primary focus.  Our internal calendar suite works so well with our niche enhancements that I would hesitate to sell it to any potential competitors so additional enhancements have zero chance of producing extra revenue. My main candidate for writing that code would prefer to work on our core responsibilities rather than calendaring software.  Thanks for your attention and for being an open source advocate/participant. 
PLease count my vote for expending effort in this direction.
______________
thewildotter 

Attached please find a fragment of the email supporting my lack of control over the quality of .ics file I may be needing to use for calendar entries. It had a button at the bottom which was probably targeting cloud based calendaring services which for security concerns we do not use but it did produce a (sadly UID Deficient) .ics file when pressed:
 
_____ Here is the LARGE Audience Invite ___________
Are you ready for Low Power Technologies Summit next week?
Yahoo/subscriptions

    Low Power Technologies Summit <fiercetechtelecom@theonlinexpo.com>
    To:xxxxxxxxx
    Tue, Feb 9 at 10:00 AM
    Email not displaying correctly? View in your browser.
    Low Power Technologies Summit
    	event reminder 	
    	

    Dear Bruce,

    Thank you for registering for the Low Power Technologies Summit - Virtual Event, being held on February 16-17 , 2021 beginning at 11:00AM each day. Mark your calendar now so you don't miss the event.

    This virtual event will allow attendees to interact and engage with fellow engineering professionals throughout the sessions, participate in Q&A segments with industry experts, access partner videos, webinars, and research in our Partner Content Hub, and more.
_________________________________
Comment 10 Philippe ROUBACH 2021-02-09 23:01:40 UTC
Hello

I sent a report at 2017-04-03 https://bugs.kde.org/show_bug.cgi?id=378391

see comment #6

Soon 4 years ! What does it happen ?
Comment 11 Daniel Vrátil 2023-10-14 08:29:04 UTC
This has possibly been fixed in the meanwhile, upon import the event is assigned a generated UID and I can see it KOrganizer.