Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [platform-dev] Recent API Removal breaks clients



On Fri, Sep 18, 2020 at 10:27 AM Wim Jongman <wim.jongman@xxxxxxxxx> wrote:
Yes, we should add them as well. It is also about the thousands of consumers that we don't know.

Consumers should follow the mailing-lists of projects they strongly rely on. The API changes are notified on the relevant mailing-lists, they are also noted in the migration guide. People who rely strongly on X (Eclipse Platform in that case) and don't follow the project activity nor contribute enough to bring their trouble when the API is proposed for removal and thus mitigate the removal just do it wrong.
It shouldn't be up to committers to pay more effort for adopters who don't follow the project well enough...

And I really don't think that leaving three lines in Platform will cause Eclipse to collapse under its own weight. Java has never removed a deprecated method or an API class. AFAICT, they are fine :)

3 lines here, 3 lines there...; in the end, API removal sums up to thousands of lines over years and really decreases maintenance effort for the project itself, which is an important goal for the project sustainability, unless all adopters bring more manpower to face the growth of features while still maintaining undesired code.

For JFace Assert, the deprecation is now 7 years old, and the alternative API to use has been available for 15 years.
For platform.getJobManager(), the deprecation is now 6 years old, and the alternative API to use has been available for 15 years.
It just looks like consumers of those outdated APIs just don't maintain their code property if they're still using it. It's not really Platform that's too blame because it was documented, left as it for 6-7 years with an alternative already existing for 8 more years.
So just update your code to use what was recommended for 6 years, and then you'll have 15 years old backward compatibility and ? years forward compatibility for these pieces of code.


Back to the top