Create ICSParser SharedPackage#4797
Open
edulpn wants to merge 18 commits into
Open
Conversation
Contributor
6f4019e to
1738548
Compare
brindy
requested changes
May 11, 2026
Contributor
brindy
left a comment
There was a problem hiding this comment.
Overall looks good (though I'm no ICS expert).
I've one comment below, but I also spotted that there's some missing coverage in the tests, particularly in:
- Property Parser
- Recurrence Rule Parser
Have a look and see what you can do. I'm not massively precious about that though as it looks pretty well covered.
Thanks
963a794 to
69c2ff6
Compare
Contributor
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 69c2ff6. Configure here.
680dd92 to
e43381d
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Task/Issue URL: https://app.asana.com/1/137249556945/project/38424471409662/task/1214595838968782?focus=true
Tech Design URL: https://app.asana.com/1/137249556945/project/481882893211075/task/1214588849423570
CC: @dus7 @Bunn @ayoy
Description
This PR introduces a RFC 5545 ICS (iCal) parser shared package to be used by the iOS app when handling ICS file downloads.
Testing Steps
Impact and Risks
Medium: Could disrupt specific features or user flows
What could go wrong?
This package is still not used, but can impact CI test runs since the test target runs on every CI run
Quality Considerations
Notes to Reviewer
Internal references:
Definition of Done | Engineering Expectations | Tech Design Template
Note
Medium Risk
Adds a new shared Swift package and wires it into the iOS workspace/project and test scheme, which can affect CI build/test stability despite not yet being used in the app runtime.
Overview
Introduces a new
SharedPackages/ICSParserSwift package that parses RFC 5545.icsdata intoICSEventvalues, including support for basic VEVENT fields, durations, text unescaping, timezone resolution (IANA + Windows/Outlook mapping), and a subset ofRRULErecurrence intoEventKit.Hooks the package into the Xcode workspace/iOS project (as a local SwiftPM dependency) and adds
ICSParserTeststo the sharediOS Browserscheme, along with extensive fixture-based unit/integration tests and a dedicated.xctestplan.Reviewed by Cursor Bugbot for commit e43381d. Bugbot is set up for automated code reviews on this repo. Configure here.