|
|
|
|
|
by circular_logic
2376 days ago
|
|
Glad to see that Shopify has better API versioning on their mind. When I used there API a few years ago, it was one of the worst APIs to depend on.
To the point, we had to architect our system to alert us for unannounced breaking API changes so we could fix and replay the JSON back. - Moving JSON fields in and out of nestings didn't seem to be counted as a breaking change. - Changes were rarely announced, and there was never a changelog as to what had changed (they look to have started one starting 2018 [1]) - When we contacted support about a brake, they would often be surprised. - Often the only sign there would be a change would be that new fields would start to show up before a larger change. All this would happen every few months. Reading this article I can start to see the reasons why this was happening. [1] https://developers.shopify.com/changelog?filter=all |
|
This has led me to taking the drastic step of making _every_ property nullable. It's gross and feels bad to use, but at least it prevents JSON parse operations from crashing applications when a value is unexpectedly null.
[0]: https://github.com/nozzlegear/shopifysharp