Make events key case insensitive #17
Closed
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.
So mailgun appears to be insane and mixes their event names in upper and lowercase. 🤢
For example the event type "clicked" and "opened" are sent as "CLICKED" and "OPENED" while "delivered" and "failed" are just "delivered" and "failed".
This doesn't appear to be clear in mailgun docs or mentioned in the docs here, but the config file is case sensitive so you need the same case as the mailgun event to call the right job type:
Rather then this project trying to advise on what mailgun's current events are, and which case they should be referenced in, this PR sets a fallback event type to use a lowercase version of the event name.
So both the above config and the more natural setup below will work:
The fallback is a little ugly, but it should avoid breaking changes where people are using the uppercase, but allows others to use lowercase rather then go mad wondering why the one event doesn't work!