Interface SupportedVersion


public interface SupportedVersion
  • Field Details

    • SUPPORTED_ON_ALL_NODES

      static final SupportedVersion SUPPORTED_ON_ALL_NODES
    • UNDER_CONSTRUCTION

      static final SupportedVersion UNDER_CONSTRUCTION
      Types that are actively being built. These types are
      • Not returned from Elasticsearch on release builds.
      • Not included in generated documentation
      • Not tested by ErrorsForCasesWithoutExamplesTestCase subclasses. When a function supports a type it includes a test case in its subclass of AbstractFunctionTestCase. If a function does not support. them like TO_STRING then the tests won't notice. See class javadoc for instructions on adding new types, but that usually involves adding support for that type to a handful of functions. Once you've done that you should be able to remove your new type from UNDER_CONSTRUCTION and update a few error messages.

      Snapshot builds treat these as always supported so that we can write tests before actually turning on the support for the type. Mixed/multi cluster tests with older nodes have to be skipped based on capabilites, as always.

  • Method Details

    • supportedOn

      boolean supportedOn(TransportVersion version, boolean currentBuildIsSnapshot)
    • supportedLocally

      default boolean supportedLocally()
    • supportedSince

      static SupportedVersion supportedSince(TransportVersion supportedVersion)
      Types that are supported starting with the given version.

      Snapshot builds treat these as always supported, so that any existing tests using them continue to work. Otherwise, we'd have to update bwc tests to skip older versions based on a capability check, which can be error-prone and risks turning off an unrelated bwc test.