Skip to content

fix: treat property names as case-insensitive#1

Merged
runely merged 1 commit into
runely:mainfrom
KristjanESPERANTO:lineUpper
May 31, 2026
Merged

fix: treat property names as case-insensitive#1
runely merged 1 commit into
runely:mainfrom
KristjanESPERANTO:lineUpper

Conversation

@KristjanESPERANTO
Copy link
Copy Markdown
Contributor

The current code only matches uppercase property names. But according to RFC 5545 §3.1, property names are case-insensitive, so feeds using dtstart: or Rrule: should be handled the same way as uppercase DTSTART: or RRULE:.

This PR fixes that by normalizing property-name checks before comparing them.


Context: We are evaluating ics-filter as a dependency for MagicMirror#4168 instead of rolling our own ICS pre-filter. The general approach looks like a great fit for what we need, and I'd rather help improve a shared solution than maintain our own implementation.

Property names in ICS are case-insensitive per RFC 5545 §3.1.
@KristjanESPERANTO
Copy link
Copy Markdown
Contributor Author

@runely Did you noticed this PR? 🙂

@runely
Copy link
Copy Markdown
Owner

runely commented May 31, 2026

Sorry, haven't noticed this. This seems like a reasonable fix 👍

@runely runely merged commit 09f911f into runely:main May 31, 2026
@KristjanESPERANTO KristjanESPERANTO deleted the lineUpper branch May 31, 2026 19:16
@runely
Copy link
Copy Markdown
Owner

runely commented May 31, 2026

@KristjanESPERANTO v1.0.1 has been released with this fix included

@KristjanESPERANTO
Copy link
Copy Markdown
Contributor Author

@runely I'm guessing you're not even watching this repo, which is why you don't notice when someone opens an issue or a PR.

Thanks for the merge! 😃 I see another issue - RDATE isn't supported. I'll probably experiment with that a bit over the next few days and maybe open a PR. Or should I open an issue first and wait for your input?

@runely
Copy link
Copy Markdown
Owner

runely commented May 31, 2026

As of now I'm using this as a pre filter to limit the ics content sent into the ics parser.

But if it's needed to do initial filtering, then please open a PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants