We have recently implemented an API version control in our ConnectWise Forms Integration plugin. Currently, we have clients with various versions (2016.2.xxx - 2016.5.xxx). There are some versions that use different code, so we create versioned files and try to support client on every API version. OK, enough about versions..
What exactly do we think happened?
- We refactored the version control code and deployed the plugin to wordpress.org/plugins/connectwise-forms-integration
- We removed version control file version3 but somehow didn't completely removed it
- We tested the plugin but the accounts we tested didn't fall on version3, so the plugin works normally
- We downloaded the ConnectWise plugin from wordpress.org and deployed to bypronto
- Clients who have a ConnectWise version lower than 2016.3 displayed a 500 error because the code couldn't find the file for the version
Is there anything we could/should have been doing to prevent this from happening in the first place?
- Before we update the ConnectWise plugin, we should have tested (authenticate and submit form) the plugin with ConnectWise account version 2016.3 first
- We only tested the current version and version that’s lower than 2016.4. We didn’t specifically test version 2016.3
Now that we've recovered, is there anything we could/should do to prevent this from happening again?
- We should list all client accounts who have ConnectWise version match to our version control code. Right now we have codes to support ConnectWise version lower than 2016.4 and upper 2016.4, and test authenticate these accounts in the ConnectWise plugin setting.
- Try to obtain staging accounts for other versions, so we can test sending data to ConnectWise. We will contact ConnectWise support about this.