Cloud add-on versioning

For Atlassian Connect/Cloud the Marketplace creates a new add-on version whenever it detects changes to the add-on descriptor. This means as a vendor you can release many version of your add-on but as long as there is no descriptor change there won’t be a new Marketplace version.

Now, the Marketplace provides a feature for customers to subscribe to version updates which is quite neat, but if you rely on the automatic versioning by the Marketplace only, it’s not very useful. So, I was thinking to manually create a new version for releases where Marketplace does not automatically generate one. This way subscribers would be automatically informed about new versions even if the descriptor is not changed.

I was wondering if this practice make sense? How do others do that? Does Atlassian have an opinion on this?

I think that there are many things to keep in mind:

  • A very small portion of customers actually “watch” for add-on changes.
  • Nowaday, customers used to SaaS expect to automagically see improvements and new features appear as they are using the product. No SaaS product ask to install updates. Atlassian does it because of possible API changes and changes to access rights.
  • You will most likely have to keep multiple versions of the API alive and make sure that a new feature doesn’t impact older version.
  • Customers may not update for a long time so you may have to keep old code for a long time or track who has not updated and communicate with them.

For all of these reasons … and probably more … I personally would stick with the automatic deployment.

Thanks for your reply Yves. I think you are right that not so many people actually do subscribe to changes. Also, that SaaS updates should happen transparently I agree with.
For the last two point I am not completely sure how the behavior is. I thought even if you manually create a new version, customers will be updated to that version automatically (as long as the descriptor didn’t change in scopes or billing model), similar to when Marketplace creates a new version automatically. That’s why I was assuming that even if I create a new version manually, for the customer it wouldn’t change anything except that watchers can now take note of actual releases of new features.

I was assuming that you wanted to change the major version through the version API. Changing the major number is pretty much the only control that you can have. I also thought, wrongly, that changing the major version would result in approval but I guess it’s not the case. Atlassian suggests to use the major version via private token before releasing to the public. Therefore it’s probably automatically updated as well.

That being said, if you change the version manually, it will have to be the major version and that may sound a little bit strange when you’re going to be at version 42 :slight_smile:

If your reason for doing so is to let your customer know about a new version, then maybe it’s better to use a different mechanism such as a mailing list. Customers that don’t want to be bothered can you unlist from it.