Octopus Server API versions & related components - Compatibility Table
Firstly, thanks for working on and improving upon an already great product. Now to the feedback at hand, I am currently investigating making use of the .NET Octopus.Client within a project to manage the octopus deploy server. As part of that investigation I was trying to gain a better grasp of the compatibility of the various Octopus Deploy (OD) server versions and the related components. That led me to the current page, https://octopus.com/docs/api-and-integration/compatibility which though useful at first glance, it was not clearly defined upon further investigation. Since I'm looking to use the Octopus.Client component let's example some questions for reference:
If we look at the column it shows three rows with 3.3 -> Latest corresponding to multiple different server versions within the "Octopus Server" column. My question here becomes, is 3.3 only compatible with server 3.3 or 3.4 or 3.5 -> 2018.2.
Also, it is not clearly defined as to what those compatibility limitations are at first glance. E.g Is the backwards compatibility cut-off due to the introduction of breaking changes? Are forward facing changes in the API always a super-set of previous API versions, I guess this would be more easily interpreted/digested if octopus was following semantic versioning but that isn't the case since the introduction of "Year.X" based versioning scheme in 2018.
This is especially relevant when one considers versoin "4.30.7 ➜ latest" of the Octopus.Client which corresponds of the "2018.2 ➜ 2018.12" of Octopus Server. Should one then interpret this to mean that 4.30.7 would only be compatible with "2018.2 ➜ 2018.12" or would that also include previous server versions such as 3.4 since the "latest" designation on "3.3 ➜ latest" would naturally include 4.30.7.
- Given above ppint, exactly what does the "latest" designation mean within the following "3.3 -> latest", for instance, does it mean that the latest version will always support any version of octopus server beginning form 3.2 all the way up to 2019.1 (current version)? I ask simply because it is present on all of the version ranges for all the "related components".
The addition of the "* Partial forwards compatibility" section was very helpful and would suggest that maybe some additional sections similar to that would go a long way in answering some of the above questions I've expressed. I'm fairly that I am not the first person to ask for clarification on the compatibility table and it's unintentional confusion.
Lastly, it would be beneficial if this feedback feature also incorporated the capability to upload images, this would go a long to supplementing the questions/feedback provided and providing additional context to the topic at hand.