-
-
Notifications
You must be signed in to change notification settings - Fork 175
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
unique identifier must be included in VEVENT, VTODO, and VJOURNAL #315
Comments
I overlooked that we already have a way to get a UID:
|
Anyways, the issue appears to be in I think this flag applies to both parsing and file generation. But then I think there's never a reason to ignore exceptions when generating a file? It certainly shouldn't be the default! |
@jacadzaca did some work on this in #390. I have suggestions of how to go about this:
@joooeey @jacadzaca do you have thoughs on this? |
This sounds good. Better than my original idea of putting the responsibility of choosing UIDs on the Regarding 3, I don't think a warning is enough in the long run. I propose making this a deprecation warning which will be an error a few versions down the line as @geier suggested here. Compatibility is crucial. |
Warnings have filters. We can use the filter to make the warning become an error as well as provide an option to allow RFC-invalid icals - switch from error to warning to mute.
|
See also: #662 |
Issue
As per RFC 5545 every VEVENT, VTODO, and VJOURNAL entry must have a unique identifier (UID). This module does not currently implement this requirement and hence produces output incompatible with RFC 5545 if the user does not manually supply an UID.
Proposed solution 1
Every time an event is initialized with
icalendar.Event()
, the UID field is added automatically and populated with a unique identifier. Then the user can still specify their own UID.The question is how to get a unique identifier. Perhaps do it similar to the example given in RFC 5545: concatenate a timestamp, a sufficiently large pseudo-random string, sequential number, and "@collective.github.io".
Proposed solution 2
Emit a warning or error if the user does not specify the UID property.
The text was updated successfully, but these errors were encountered: