Jazz Forum Welcome to the Jazz Community Forum Connect and collaborate with IBM Engineering experts and users

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!

0 votes


Accepted answer

Permanent link

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.

Andre Gusmao selected this answer as the correct answer

1 vote

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

Permanent link

 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.


But note that this is the design goal ... the reality may vary, so real experience from someone like Ralph is a more accurate statement on the current state of affairs.

All other API's are "buyer beware" ... they are not gratuitously changed, but if new functionality requires a change to the API, that change will be made.  This includes non-OSLC REST/HTTP APIs, Java APIs not document in the "Plain Java Client Libraries API", and the RTC scm command line without the -json flag.



1 vote

Your answer

Register or log in to post your answer.

Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.

Search context
Follow this question

By Email: 

Once you sign in you will be able to subscribe for any updates here.

By RSS:

Answers
Answers and Comments
Question details
× 10,938
× 479
× 411

Question asked: Jun 02 '17, 10:58 a.m.

Question was seen: 3,868 times

Last updated: Jun 03 '17, 6:22 p.m.

Confirmation Cancel Confirm