Skip to content

Consider not throwing exceptions when deserializing unknown enum values #90

@martincostello

Description

@martincostello

Describe the feature

There have been a number of times where drift between the schema definitions and/or this library and the actual runtime behaviour of GitHub.com/GitHub Enterprise Server cause runtime failures in applications consuming the library to process webhooks. Examples include #52, #76 and #89.

To make consuming applications more resilient to natural evolution of the service over time, it would be preferable if enum deserialization is more tolerant to undefined values (this could be opt-in).

This is particularly impactful with GitHub.com as the payloads could change at any time without advance notice to the owner of an integration due to a new deployment/feature on the server. In contrast, upgrades to GitHub Enterprise Server are more predictable and can be planned for in advance as the appliance is typically upgraded through a specific decision on the part of its operators.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions