Page MenuHomePhabricator

Make error handling for ICS parsing more robust
ClosedPublic

Authored by epriestley on Sep 8 2016, 10:49 PM.
Tags
None
Referenced Files
Unknown Object (File)
Wed, Feb 12, 6:46 AM
Unknown Object (File)
Wed, Feb 5, 6:04 PM
Unknown Object (File)
Mon, Feb 3, 11:16 AM
Unknown Object (File)
Thu, Jan 30, 1:02 PM
Unknown Object (File)
Wed, Jan 29, 9:46 AM
Unknown Object (File)
Sun, Jan 26, 11:10 PM
Unknown Object (File)
Sat, Jan 25, 2:03 PM
Unknown Object (File)
Sat, Jan 25, 2:03 PM
Subscribers
None

Details

Summary

Ref T10747. This mostly adds a bunch of test cases for the ICS format syntax errors, and fixes a couple of issues:

  • Multiple VCALENDAR sections in one .ics file is legal according to the spec.
  • Had some bugs with parsing properties with multiple parameters.
  • Tighten up the regexp for property names.
  • Show a lot more detail about what went wrong when parsing fails.
Test Plan

Ran unit tests.

Diff Detail

Repository
rPHU libphutil
Branch
ics2
Lint
Lint Passed
Unit
Tests Passed
Build Status
Buildable 13643
Build 17586: Run Core Tests
Build 17585: arc lint + arc unit

Event Timeline

epriestley retitled this revision from to Make error handling for ICS parsing more robust.
epriestley updated this object.
epriestley edited the test plan for this revision. (Show Details)
epriestley added a reviewer: chad.
chad edited edge metadata.
This revision is now accepted and ready to land.Sep 9 2016, 1:22 AM
This revision was automatically updated to reflect the committed changes.