重大更改策略
编辑重大更改策略
编辑Java API 客户端的源代码是从 Elasticsearch API 的正式规范生成的。这个 API 规范很大,虽然它针对数百个 Elasticsearch 测试文件进行了测试,但它可能与实际的 API 存在差异,从而导致 Java API 客户端出现问题。
修复 API 规范中的这些差异会导致 Java API 客户端中的代码更改,其中一些更改可能需要在您的应用程序中更新代码。
本节解释了如何在 Java API 客户端版本中考虑包含这些重大更改。
补丁版本中的重大更改
编辑API 规范中的一些问题是具有不正确类型的属性,例如应该为 string
的 long
,或者实际上是可选的必需属性。这些问题可能导致 Java API 客户端无法正常工作,甚至抛出异常。
当发现并解决规范问题时,可能需要在使用 Java API 客户端的应用程序中更新代码。这种重大更改被认为是可接受的,即使在补丁版本中(例如,7.17.0 → 7.17.1),因为它们为可能无法使用的 API 引入了稳定性。
小版本中的重大更改
编辑除了这些错误修复之外,API 规范也在不断改进,引入了更精确的类型定义,以提高开发人员的舒适度并消除歧义。常用 API 的规范相当成熟,因此这些更改通常发生在不太常用的 API 上。这些更改也可能导致需要更新代码的重大更改,这些更改被认为在小版本中是可以接受的(例如,8.0 → 8.1)。
主要版本中的重大更改
编辑主要版本(例如,7.x → 8.x)可能包括对 API 规范和 Java API 客户端底层框架的较大规模的重构。这些重构会经过仔细考虑,仅在它们解锁新的重要功能或新开发时才会进行。
Elasticsearch API 稳定性保证
编辑所有 Elasticsearch API 都有稳定性指标,这意味着潜在的变化。如果 API 是 stable
,则只会添加额外的非重大更改。对于 experimental
API,可以随时引入重大更改,这意味着这些更改也将反映在 Java API 客户端中。