Skip to content

v1.1.1

Latest
Compare
Choose a tag to compare
@rmkonnur rmkonnur released this 23 Jan 22:49
11e03d8

Note all changes are improvements to the Java SDK usage. No changes to the API or the API schema are included in this version.

  • feat: We now provide endpoint methods for streaming byte array requests in addition to the previous methods accepting
    byte array directly.

  • chore: Bump Jackson version to latest (2.17.2)

  • feat: We no longer enforce non-null constraints for Object type properties in builders.

  • break: The SDK generator is now on major version 2. To take this upgrade without any breaks, please add the below
    configuration to your generators.yml file:

    generators:
      - name: fernapi/fern-java-sdk
        config:
          disable-required-property-builder-checks: true
  • feat: Generated builder methods now enforce non-null checks for required fields, ensuring that all required
    fields are properly validated during object construction:

    @java.lang.Override
    @JsonSetter("name")
    public NameStage name(@NotNull String name) {
        this.name = Objects.requireNonNull(name, "name must not be null");
        return this;
    }
  • chore: Bump Jackson version to latest (2.17.2)

  • feat: Public constructors can now be generated for all model types:

    generators:
      - name: fernapi/fern-java-sdk
        config:
          enable-public-constructors: true # default false
  • 5 additional updates, see more
  • fix: Fixed a bug where optional collections are not handled properly in paginated responses.

  • fix: Fixed a bug where local generation custom config doesn't pick up some values, including exception naming.

  • fix: Fixed a bug where OkHttp responses could be closed prematurely.

  • feat: Generated builder methods for optional fields can now accept null directly.

  • feat: The generator now adds a class-level @JsonInclude(JsonInclude.Include.NON_ABSENT) annotation to
    each generated type in place of the previous @JsonInclude(JsonInclude.Include.NON_EMPTY) by default. This is
    configurable in the generators.yml file:

    generators:
      - name: fernapi/fern-java-sdk
        config:
          json-include: non-empty # default non-absent