ics file validator requires CRLF DOS end of line

1,045 views
Skip to first unread message

Rolf Pedersen

unread,
Dec 24, 2017, 3:57:58 PM12/24/17
to RFox
Hi Folks,

Thanks for all the work. I'm still hammering away with RFox on Seamonkey,

ReminderFox [2.1.6] <'20171121_1851'>
Mozilla/5.0 (X11; Linux i686; rv:49.0) Gecko/20100101 Firefox/49.0
SeaMonkey/2.46 (en-US)

Günter, you might remember some of the problems I've had with my
reminders disappearing on a whim and you mentioned the large size of my
hoarder's version ics file might be a factor.

Since I'm still having the occasional issue, such as an alarm pop-up
repeatedly coming back after I dismiss it, I've gone through and done a
lot of pruning, especially a couple of repeaters, and checked the result
by making a backup and validating here: https://icalendar.org/validator.html

Mostly, it found problems with too-long lines, > 75 characters, I
believe, and I found reminders with a large description or copy/paste
into notes, which I would occasionally do.
This is what the validator referenced:
https://icalendar.org/iCalendar-RFC-5545/3-1-content-lines.html

That is no longer the problem with this validator as I removed those
events but I wonder if it is related.

The final error reported was "Lines not delimited by CRLF sequence" and
it started with the first line in the ics file. It looks like my
exported backup files use the Unix delimiter, so I did

[rolf@z68x rfox]$ unix2dos -n reminderfox_2017-12-24_1215.ics
reminderfox_2017-12-24_1215_unix2dos-CRLF.ics

That output file is just fine at https://icalendar.org/validator.html

With the goal of a smooth experience, I wonder is this a concern. Does
the calendar internally use the accepted DOS system? Should I load this
converted file now or if I need a backup or will the Unix-formatted
backups exported by ReminderFox work without issue, in case I need to
recover the calendar?

Thanks,
Rolf

gNeandr

unread,
Dec 25, 2017, 10:19:10 AM12/25/17
to rolfpe...@mindspring.com, RmF
Hi Rolf,

thanks for your detailed report.
Just checked the sources. On import an ICS file RmFX always checks for
cartridgereturn and linefeed (CRLF), if necessary converts to CR only
and splits on CR. Also is required lines are folded as described with
the RFCs.

On exporting ICS file is folding the lines as described with the RFCs
and pending on the OS each resulting line is terminated with CR or with
CRLF (with WIN only).

If you need more support I recommend to send an example ICS file to my
private mail.

Guenter

Rolf Pedersen

unread,
Dec 25, 2017, 3:05:50 PM12/25/17
to gne...@web.de, RmF
Hi Güenter,

With the unix2dos-converted ics, I did have occasion to load it and it worked initially.  Thanks for the offer of support but, right now, I'm inclined to let things ferment for a while, unless you require some detail, and I'll send an ics if something arises.  One more observation that is possibly of interest:

The file that passes at https://icalendar.org/validator.html, except for Unix newlines, failed at the following validator with "illegal character" near to an event on 20160125, probably in the google map url that was included:

http://severinghaus.org/projects/icv/

Even after unix2dos conversion, the illegal character was called out.  After removing the event in RFox, exporting with no unix2dos manipulation, that validator no longer saw that error and I'm beginning to believe the unapproved newline format is not a practical concern:


iCalendar Validator
Based on iCal4j v2.0-beta1 by Ben Fortuna

Updated on 2016-06-10. Please let me know if the update causes problems.

Having trouble with ATTENDEE or ORGANIZER? Consider removing your METHOD:PUBLISH which might be wrong and unnecessary. See RFC 2446 § 3.2.1 and RFC 5545 § 3.7.2.
URL:
File:
Snippet:
Filename:     reminderfox_2017-12-25_0554.ics
Size:     462679 bytes
Your calendar is using an invalid newline format. Make sure to use \r\n to end lines rather than just \n (RFC 2445 §4.1).
Your calendar parsed, but with errors.
Error:     Error was: LAST-MODIFIED: DATE-TIME value must be specified in UTC time
Cause:     Sorry, I couldn't get an exact cause.
If you've found a bug—say, a definitely valid iCalendar that generates errors—please check out the iCal4j bugs, forums, or feel free to contact me; minimal test cases are always appreciated!
© 2017 Steven N. Severinghaus <sns-...@severinghaus.org>
Perhaps you'd like an iCalendar syntax file for Vim to complement your valid file?



So, I guess we can say validators differ one from another. :)

Thanks,
Rolf
Reply all
Reply to author
Forward
0 new messages