API backward compatibility
Hello,
I'm working with a customer in the CLM upgrade. Currently they are in 5.0.2 and they will upgrade to 6.0.3 sometime soon.
One of the main concerns is about the API backward compatibility. They have developed some advisors using the Java API and they also have developed some reports using the REST API.
The question is: where can I find details about the API backward compatibility?
Is the Java API in version 5.0.2 fully compatible with the Java API in 6.0.3?
What about the REST API?
About the OSLC API my understanding is that nothing changed from 5.0.2 to 6.0.3. Is this correct?
Thanks!
Accepted answer
In general we understand backwards compatibility the compatibility of a newer (higher) version to an older (lower) version, I think.
In general, if all versions would be fully compatible, there would never be progress so that makes no sense.
Observations with the APIs and forward compatibility of extensions (developed for older versions to be deployed in newer versions) I have made are described here https://rsjazz.wordpress.com/2013/07/09/new-version-and-now-experiences-with-sdk-and-plain-java-api-across-tool-versions/
Usually new features are added. Old API usually works, but not always and it is a good idea to test and you might have to incoporate API changes. 6.x has a lot of additional features, but it did not break the Java APIs as far as I am aware.
Comments
Thanks Ralph. I also find another post in your blog (https://rsjazz.wordpress.com/2016/11/07/the-rtc-sdk-is-about-to-change-in-6-0-3/) which helps understand the changes in the RTC SDK for 6.0.3.
What about the REST and OSLC APIs? I did not find any information about changes in these two for version 6.X.
Regards.
One other answer
My understanding is that the design goal is for the OSLC APIs to be backward compatible (i.e. calls continue to work in later releases), and for the Java APIs documented in the "Plain Java Client Libraries API" on the RTC all-downloads page to be backward compatible. Also, the RTC scm command line with the -json flag specified is intended to be backward compatible.