CyberSource / cybersource-rest-client-dotnetstandard

.NET Standard client library for the CyberSource REST API
7 stars 20 forks source link

CyberSource team does not follow Semantic Versioning Standards and breaks clients with each release change. #86

Open bleepzter opened 4 months ago

bleepzter commented 4 months ago

Upgrading CyberSource.Rest.Client.NetStandard from version 0.0.1.30 to version 0.0.1.33 introduces many breaking changes. Example can be seen with the following classes:

Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierCard -> changed to TmsEmbeddedInstrumentIdentifierCard

Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierBankAccount -> changed to TmsEmbeddedInstrumentIdentifierBankAccount

and so many others....

Please follow standard Semantic Versioning practices described here: https://semver.org/. Major -> release -> incompatible change Minor -> release -> added functionality in a backwards compatible manner!!! Patch -> release -> added bug fixes in backwards compatible manner!!!

You are producing releases with Minor and Patch and Build version changes which means that you should not have any client compatibility issues with your code. And if you do - please communicate with your customers the breaking changes and provide a change log. Also provide documentation for how long you plan to support the old version until its phased out.