# API changes report for Elasticsearch

**URL:** https://discuss.elastic.co/t/api-changes-report-for-elasticsearch/102647
**Category:** Elasticsearch
**Created:** [October 4, 2017, 6:05am UTC](https://discuss.elastic.co/t/api-changes-report-for-elasticsearch/102647 "2017-10-04T06:05:32Z")
**Posts on this page:** 6
**Page:** 1

<div class="post-metadata">

### Author: ![lvc](https://avatars.discourse-cdn.com/v4/letter/l/8edcca/32.png) [@lvc](https://discuss.elastic.co/u/lvc)
#### Post date: [October 4, 2017, 6:05am UTC](https://discuss.elastic.co/t/api-changes-report-for-elasticsearch/102647/1 "2017-10-04T06:05:32Z")

</div>

Hi,

I'd like to share my results on API changes analysis for the library: [https://abi-laboratory.pro/java/tracker/timeline/elasticsearch/](https://abi-laboratory.pro/java/tracker/timeline/elasticsearch/)

The report is generated by the [https://github.com/lvc/japi-compliance-checker](https://github.com/lvc/japi-compliance-checker) tool for jars found at [http://central.maven.org/maven2/org/elasticsearch/elasticsearch/](http://central.maven.org/maven2/org/elasticsearch/elasticsearch/) according to [https://wiki.eclipse.org/Evolving\_Java-based\_APIs\_2](https://wiki.eclipse.org/Evolving_Java-based_APIs_2).

Thank you.

![elasticsearch-2](https://us1.discourse-cdn.com/elastic/original/3X/d/b/db468ba1380e5613e39e861a4f6b2b5e715585c1.png)

 ![elasticsearch-1](https://us1.discourse-cdn.com/elastic/original/3X/9/a/9adf355c6f478ff5dd5b0cb47d3a68a271de7324.png)

---

<div class="post-metadata">

### Author: ![warkolm](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/warkolm/32/39224_2.png) [@warkolm](https://discuss.elastic.co/u/warkolm)
#### Post date: [October 4, 2017, 6:25am UTC](https://discuss.elastic.co/t/api-changes-report-for-elasticsearch/102647/2 "2017-10-04T06:25:54Z")

</div>

Thanks for sharing this, I will circulate it internally with the devs 🙂

---

<div class="post-metadata">

### Author: ![s1monw](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/s1monw/32/3637_2.png) [@s1monw](https://discuss.elastic.co/u/s1monw)
#### Post date: [October 4, 2017, 7:09am UTC](https://discuss.elastic.co/t/api-changes-report-for-elasticsearch/102647/3 "2017-10-04T07:09:24Z")

</div>

> [@lvc](#):
>
> I'd like to share my results on API changes analysis for the library: [API/ABI changes review for Elasticsearch](https://abi-laboratory.pro/java/tracker/timeline/elasticsearch/)

I think these results are highly misleading. The codebase the analysis is run on is a server codebase which has only a very small amount of publicly facing APIs. Those are mainly Client APIs which make a very small percentage of the codebase. Our primary API is rest and with the added REST client and the upcoming removal of the transport client we will further reduce the public API facing footprint. I am not sure that there is any takeaways from this rather than we are having major changes in major releases and almost non changes in bugfix releases.

---

<div class="post-metadata">

### Author: ![nik9000](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/nik9000/32/44947_2.png) [@nik9000](https://discuss.elastic.co/u/nik9000)
#### Post date: [October 4, 2017, 4:50pm UTC](https://discuss.elastic.co/t/api-changes-report-for-elasticsearch/102647/4 "2017-10-04T16:50:09Z")

</div>

Like Simon said, I think this is more useful for people working on Elasticsearch then it is for folks working with Elasticsearch because I think it includes all the internal APIs.

I think it'd be useful for Java users if we had a jar for the high level REST client rather than depending on Elasticsearch core and we generated the report for that jar. And we do want to do that, we just haven't got to it because it is a lot of work to decouple all the things.

It'd also be the useful if we had a plugin API jar. We don't and that is even further away from happening. At this point we don't consider any of the plugin interfaces set in stone though. So I _expect_ them to change in minor releases. At least for a while. I've been saying for a few years now that a real, semvered plugin API is at least two years away. It still is, I think.

I think it'd be useful to point it at the low level rest client right now but that is about the only part of Elasticsearch that'd give reasonable results.

---

<div class="post-metadata">

### Author: ![lvc](https://avatars.discourse-cdn.com/v4/letter/l/8edcca/32.png) [@lvc](https://discuss.elastic.co/u/lvc)
#### Post date: [October 5, 2017, 7:35am UTC](https://discuss.elastic.co/t/api-changes-report-for-elasticsearch/102647/5 "2017-10-05T07:35:48Z")

</div>

Hi,

Thank you for the review. I've added report for the REST jars here: [https://abi-laboratory.pro/java/tracker/timeline/elasticsearch-rest-client/](https://abi-laboratory.pro/java/tracker/timeline/elasticsearch-rest-client/)

![elasticsearch-rest-client-1](https://us1.discourse-cdn.com/elastic/original/3X/1/1/11bbabbcd42eeae50d0c11747d00b58f362d1506.png)  
 ![elasticsearch-rest-client-2](https://us1.discourse-cdn.com/elastic/original/3X/d/e/deba11c7a883d0f2895ea845dab593b981dab0d3.png)

---

<div class="post-metadata">

### Author: ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)
#### Post date: [November 2, 2017, 7:36am UTC](https://discuss.elastic.co/t/api-changes-report-for-elasticsearch/102647/6 "2017-11-02T07:36:31Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
