Skip to content

Releases: projectnessie/nessie

Nessie 0.83.2

23 May 17:50
Compare
Choose a tag to compare

Nessie 0.83.2 release

Try it

The attached nessie-quarkus-0.83.2-runner.jar is a standalone uber-jar file that runs on Java 17 or newer and it is also available via Maven Central. Download and run it (requires Java 17):

wget https://github.com/projectnessie/nessie/releases/download/nessie-0.83.2/nessie-quarkus-0.83.2-runner.jar
java -jar nessie-quarkus-0.83.2-runner.jar

Nessie GC tool is attached as nessie-gc-0.83.2.jar, which is a standalone uber-jar file that runs on Java 11 or newer. Shell completion can be generated from the tool, check its help command. Nessie GC tool is also available as a Docker image: docker run --rm ghcr.io/projectnessie/nessie-gc:0.83.2 --help.

Nessie Server Admin tool is attached as nessie-server-admin-tool-0.83.2-runner.jar, which is a standalone uber-jar file that runs on Java 17 or newer. Shell completion can be generated from the tool, check its help command. Nessie Server Admin tool is also available as a Docker image: docker run --rm ghcr.io/projectnessie/nessie-server-admin:0.83.2 --help.

The attached nessie-helm-0.83.2.tgz is a packaged Helm chart, which can be downloaded and installed via Helm. There is also the Nessie Helm chart repo, which can be added and used to install the Nessie Helm chart.

Changelog

Highlights

  • New Nessie CLI tool + REPL, replacing the old Python based CLI, based on Java.
    SQL-ish syntax, built-in online HELP command, auto-completion of commands, keywords
    and reference names, syntax highlighting, paging of long results, command history.
  • Nessie now includes built-in support for MariaDB, with full compatibility with MySQL servers. New
    users wishing to try MariaDB (or MySQL) should:
    1. Specify the new configuration property: nessie.version.store.persist.jdbc.datasource=mariadb;
    2. Provide all the MariaDB (or MySQL) connection details using quarkus.datasource.mariadb.*
      configuration properties.
  • The Nessie GC tool is now also compatible with MariaDB and MySQL (using the MariaDB connector).
  • The Nessie Server Admin tool is now also compatible with MariaDB and MySQL (using the MariaDB
    connector).

Upgrade notes

  • Due to the newly-introduced support for MariaDB, existing PostgreSQL users can continue to use
    their current JDBC configuration, but are encouraged to update it as follows:
    1. Specify the new configuration property:
      nessie.version.store.persist.jdbc.datasource=postgresql;
    2. Migrate any property under quarkus.datasource.* to quarkus.datasource.postgresql.*. Support
      for the old quarkus.datasource.* properties will be removed in a future release.
  • For the same reason, the Nessie Helm chart has been updated. The old postgres section is now
    called jdbc. Existing Helm chart configurations should be updated accordingly, e.g.
    postgres.jdbcUrl now becomes jdbc.jdbcUrl. Although the old postgres section is still
    honored, it won't be supported in future releases. The right datasource will be chosen based on
    the jdbcUrl contents.

Breaking changes

  • nessie-quarkus-cli, the low-level tool to for example export/import Nessie repositories, has been renamed
    to nessie-server-admin-tool.

New Features

  • More verbose exceptions from Nessie GC.

Full Changelog (minus renovate commits):

(Note: the 0.83.1 and 0.83.0 versions failed to fully release all artifacts for technical reasons, this list of commits contains all commits for 0.83.0, 0.83.1 and 0.83.2.)

  • Ninja: fix GH release-create
  • New CLI: Post-release site updates (#8468)
  • Blog post: support for MariaDB and MySQL backends (#8577)
  • Post-release: Rename nessie-quarkus-cli to nessie-server-admin-tool in docs (#8484)
  • Nessie Server Admin Tool: add support for MariaDB and MySQL backends (#8548)
  • Helm chart: add support for MariaDB and MySQL backends (#8554)
  • Persistence: properly handle timeout-ish exceptions (#8533)
  • Renovate: merge "digest" updates automatically (#8576)
  • Nessie GC: add support for MariaDB and MySQL backends (#8545)
  • Nessie server: add support for MariaDB and MySQL backends (#8544)
  • UDF type: additional changes (#8560)
  • Tests/Scylla: Cap SMP to 1/3 of num-CPUs (#8559)
  • Testing: Centralize image resolution (#8546)
  • Always close BigTable clients (#8549)
  • Cassandra: explicitly specify statement idempotence (#8557)
  • Refactor BackendTestFactory (#8553)
  • JDBC persist: properly handle SUCCESS_NO_INFO and EXECUTE_FAILED (#8551)
  • Persistence layer: add support for MariaDB and MySQL backends (#8483)
  • Renovate: add some recommended extensions (#8534)
  • Add congocc license to NOTICE (#8540)
  • Hide namespace-validation setting in docs (#8535)
  • Nit: fix Util.isHexChar() (#8528)
  • Experimental ability to cache References (#8111)
  • Changelog / Server-Admin-Tool (#8515)
  • Nessie client: optionally disable certificate verifications (#8506)
  • Blog: Nessie Catalog announcement
  • Publish docker images of the server admin tool (#8507)
  • Verify BSD+MIT+Go+UPL+ISC license mentions in NOTICE file + expose in Nessie server, GC-tool, Admin-Tool and CLI/REPL (#8498)
  • Use ubi9/openjdk-21-runtime instead of ubi9/openjdk-21 as the base image (#8503)
  • Rename nessie-quarkus-cli to nessie-server-admin-tool (#8482)
  • Add license reports and checks (#8497)
  • Bump slf4j to 1.7.36/2.0.12 + logback to 1.3.14/1.5.6 (#6536)
  • Add GC tool help to site and enhance GC tool help (#8447)
  • Update UDF + IcebergViewcontent types (#8478)
  • Let renovate merge all google-cloud-cli Docker tag bumps (#8472)
  • New Java based Nessie CLI tool + REPL (#8348)
  • GC: more verbose error messages (#8467)
  • build-push-images.sh: remove unused "artifacts" parameter (#8464)

Nessie 0.82.0

06 May 10:59
Compare
Choose a tag to compare

Nessie 0.82.0 release

Try it

The attached nessie-quarkus-0.82.0-runner.jar is a standalone uber-jar file that runs on Java 17 or newer and it is also available via Maven Central. Download and run it (requires Java 17):

wget https://github.com/projectnessie/nessie/releases/download/nessie-0.82.0/nessie-quarkus-0.82.0-runner.jar
java -jar nessie-quarkus-0.82.0-runner.jar

Nessie GC tool is attached as nessie-gc-0.82.0.jar, which is a standalone uber-jar file that runs on Java 11 or newer. Shell completion can be generated from the tool, check its help command. Nessie GC tool is also available as a Docker image: docker run --rm ghcr.io/projectnessie/nessie-gc:0.82.0 --help.

The attached nessie-helm-0.82.0.tgz is a packaged Helm chart, which can be downloaded and installed via Helm. There is also the Nessie Helm chart repo, which can be added and used to install the Nessie Helm chart.

Changelog

Breaking changes

  • The readiness, liveness, metrics and Swagger-UI endpoints starting with /q/ have been moved from the
    HTTP port exposing the REST endpoints to a different HTTP port (9000),
    see Quarkus management interface reference docs.
    Any path starting with /q/ can be safely removed from a possibly customized configuration
    nessie.server.authentication.anonymous-paths.
  • The move of the above endpoints to the management port requires using the Nessie Helm chart for this
    release or a newer release. Also, the Helm Chart for this release will not work with older Nessie
    releases.

Full Changelog (minus renovate commits):

  • Doc-gen: trim-right before style changes (#8459)
  • Site: Fix release-workflow version bump mistakes (#8454)
  • Site: split release notes pages (#8453)
  • Move management endpoints to separate HTTP port (#8207)
  • Site: let site use wider horizontal space (#8452)
  • OAuthClient: fix AbstractFlow.isAboutToExpire (#8423)

Nessie 0.81.1

03 May 07:40
Compare
Choose a tag to compare

Nessie 0.81.1 release

Try it

The attached nessie-quarkus-0.81.1-runner.jar is a standalone uber-jar file that runs on Java 17 or newer and it is also available via Maven Central. Download and run it (requires Java 17):

wget https://github.com/projectnessie/nessie/releases/download/nessie-0.81.1/nessie-quarkus-0.81.1-runner.jar
java -jar nessie-quarkus-0.81.1-runner.jar

Nessie GC tool is attached as nessie-gc-0.81.1.jar, which is a standalone uber-jar file that runs on Java 11 or newer. Shell completion can be generated from the tool, check its help command. Nessie GC tool is also available as a Docker image: docker run --rm ghcr.io/projectnessie/nessie-gc:0.81.1 --help.

The attached nessie-helm-0.81.1.tgz is a packaged Helm chart, which can be downloaded and installed via Helm. There is also the Nessie Helm chart repo, which can be added and used to install the Nessie Helm chart.

Changelog

Fixes

  • GC: Fix handling of quoted column names in Iceberg

Full Changelog (minus renovate commits):

  • Ninja: changelog
  • Use custom class for handling storage URIs (#8420)
  • Site doc generator: respect Javadoc on type for smallrye-config (#8445)
  • Doc-gen: traverse really all supertypes (#8446)
  • Build: fix a bunch of deprecation warnings and no non-consumed apt arg (#8436)
  • Build: tackle Gradle deprecations (#8440)
  • Handle deprecation of Maven DefaultServiceLocator (#8431)
  • Nit: Eliminate deprecation warnings (#8430)
  • Build: Disable warnings about javac command line options for Java 21+ (#8432)
  • Build: Prevent log4j2 to register its MBean (#8433)
  • Build: Prevent unnecessary scala compile warning (#8437)
  • Build/Scala: replace deprecated JavaConverters with CollectionConverters (#8439)
  • Build: Remove no longer necessary Java toolchain "constraint" (#8438)

Nessie 0.81.0

01 May 06:47
Compare
Choose a tag to compare

Nessie 0.81.0 release

Try it

The attached nessie-quarkus-0.81.0-runner.jar is a standalone uber-jar file that runs on Java 17 or newer and it is also available via Maven Central. Download and run it (requires Java 17):

wget https://github.com/projectnessie/nessie/releases/download/nessie-0.81.0/nessie-quarkus-0.81.0-runner.jar
java -jar nessie-quarkus-0.81.0-runner.jar

Nessie GC tool is attached as nessie-gc-0.81.0.jar, which is a standalone uber-jar file that runs on Java 11 or newer. Shell completion can be generated from the tool, check its help command. Nessie GC tool is also available as a Docker image: docker run --rm ghcr.io/projectnessie/nessie-gc:0.81.0 --help.

The attached nessie-helm-0.81.0.tgz is a packaged Helm chart, which can be downloaded and installed via Helm. There is also the Nessie Helm chart repo, which can be added and used to install the Nessie Helm chart.

Changelog

Highlights

  • The Nessie client now supports public clients when using OAuth 2 authentication. Public clients
    are clients that do not have a client secret; they are compatible with the password,
    authorization_code, and device_code grant types. See the
    Nessie documentation
    for details.

New Features

  • The Nessie Helm chart now supports AWS profiles. There are now two ways to configure AWS
    credentials in the Helm chart:
    • Using a secret. The secret name can be set in the dynamodb.secret value.
    • Using an AWS profile (new). The profile name can be set in the dynamodb.profile value.

Full Changelog (minus renovate commits):

  • GC: Fix NPE when fetching/parsing table-metadata JSON (#8428)
  • Docs: Trino Nessie configurations (#8385)
  • OAuth2Client: refactor ResourceOwnerEmulator (#8425)
  • OAuthClient: don't call Instant.now() in serde layer (#8419)
  • ITOAuth2Client: reduce device code poll interval (#8424)
  • Update GH workflows / Gradle run steps (#8386)
  • OAuthClient: consider zero as null for refresh_expires_in field (#8415)
  • OAuthClient: minor tweaks to the token exchange flow (#8414)
  • ResourceOwnerEmulator: properly shutdown executor (#8407)
  • Simpler workaround for #8390 (#8397)
  • Fix Quarkus uber-jar (#8394)
  • Helm charts: add support for AWS profiles (#8382)
  • Let nessie-quarkus use resteasy-reactive (#8383)
  • Resolve some minor build warnings (#8380)
  • Add Amazon STS to dependencies of Nessie Core server (#8377)
  • Nessie client: fix javadoc and compiler warnings (#8376)
  • OAuth2Client: fully support public clients (#8372)
  • Site: exclude generated .md files from search index (#8374)
  • Site: exlude old releases from search index, fix released-version title and page-dir (#8368)
  • Nit: replace non-ASCII double-quote (#8369)

Nessie 0.80.0

21 Apr 07:36
Compare
Choose a tag to compare

Nessie 0.80.0 release

Try it

The attached nessie-quarkus-0.80.0-runner.jar is a standalone uber-jar file that runs on Java 17 or newer and it is also available via Maven Central. Download and run it (requires Java 17):

wget https://github.com/projectnessie/nessie/releases/download/nessie-0.80.0/nessie-quarkus-0.80.0-runner.jar
java -jar nessie-quarkus-0.80.0-runner.jar

Nessie GC tool is attached as nessie-gc-0.80.0.jar, which is a standalone uber-jar file that runs on Java 11 or newer. Shell completion can be generated from the tool, check its help command. Nessie GC tool is also available as a Docker image: docker run --rm ghcr.io/projectnessie/nessie-gc:0.80.0 --help.

The attached nessie-helm-0.80.0.tgz is a packaged Helm chart, which can be downloaded and installed via Helm. There is also the Nessie Helm chart repo, which can be added and used to install the Nessie Helm chart.

Changelog

Upgrade notes

  • GC Tool: the Nessie GC tool is not published anymore as a Unix executable file, but as a regular
    jar named nessie-gc.jar. Instead of running nessie-gc, you now run java -jar nessie-gc.jar.

New Features

  • Nessie clients can now use the Apache HTTP client, if it's available on the classpath
  • Nessie clients now return more readable error messages

Fixes

  • Helm chart: Fix incorrect OpenTelemetry variable names
  • SQL extensions: Respect comments in SQL
  • GC tool: perform commit after schema creation

Full Changelog (minus renovate commits):

  • Ninja: reorg steps in release-create GH workflow
  • Ninja: update CHANGELOG
  • Make bulk read timeout configurable in BigTablePersist (#8361)
  • Fix generates smallrye-config site docs, always add map-key (#8356)
  • Ability to cancel interactive client authentication (#8347)
  • OAuth2Client: defer initial token fetch when user interaction is required (#8354)
  • Generate server and client docs from source (#8334)
  • Update ResponseCheckFilter to return more human friendly error message (#8321)
  • Fix site docs generation on macOS (#8350)
  • OAuth2Client: refactor HTTP exchanges into separate flows (#8338)
  • Add nessie version placeholder as docker image tags (#8339)
  • Docs: align titles with metadata (#8341)
  • OAuth2Client: improve sleep/close detection (#8337)
  • Cleanup ResourceOwnerEmulator and AuthorizationCodeFlow (#8333)
  • Add Nessie GC as Docker Image section to downloads page (#8332)
  • Site: Fix link in site footer (#8327)
  • Make nessie.authentication.oauth2.client-secret optional (#8323)
  • Site rearrangement (#8318)
  • OAuth2 client config: "bark" with all check-errors (#8322)
  • Cleanup: Remove the outdated WORKFLOWS.md file (#8320)
  • OAuth2/client: doc-nit: add note about running a client in a conainer (#8324)
  • Renovate: Update package pattern (#8311)
  • Testing: add test method timeout + more verbose reporting (#8310)
  • Remove left-over micrometer-pattern (#8307)
  • CI: Mitigate still unfixed Gradle bug leading to a ConcurrentModificationException (#8297)
  • Testing/obj-storage-mock: add dummy assume-role endpoint (#8288)
  • Use new plugin ID com.gradle.develocity instead of com.gradle.enterprise (#8293)
  • Commit after schema creation for GC tool (#8290)
  • Content Generator: reorganize options using argument groups (#8284)
  • Update README.md to point to correct url (#8282)
  • Add --recursive to BulkCommittingCommand (#8271)
  • Configurable scopes in KeycloakTestResourceLifecycleManager (#8275)
  • Enforce S3 path-style access for ObjectStorageMock (#8272)
  • SQL extensions: fix whitespace not appearing in antlr exceptions (#8273)
  • Testing: Move Bucket.createHeapStorageBucket() to separate class, allow clearing it (#8268)
  • [Docs]: Fix iceberg-links on docs with latest url (#8260)
  • Object-store test containers improvements (#8258)
  • Testing/object-storage-mock: support different ADLS client upload behavior (#8256)
  • Add support for ADLS Gen2 and GCS to Object Storage Mock (#8244)
  • Remove effectively unnecessary :nessie-jaxrs module (#8247)
  • Respect comments in SQL + move code to extensions-base (#8248)
  • S3-Mock: add local heap storage (#8236)
  • Fix incorrect OpenTelemetry variable names (#8237)
  • Add Apache HTTP client, choose HTTP client by name (#8224)
  • HTTP-Client: capture beginning of unparseable error response (#8226)
  • Allow concurrent instances of GCSContainer (#8235)
  • Add GCS testcontainer + IT for Nessie-GC (#8233)
  • Bump com.google.cloud.bigdataoss:gcs-connector from hadoop3-2.2.18 to .21 (#8232)
  • CI: Remove duplicate run of :nessie-client:test (#8229)
  • Minor enhancements to MinioContainer (#8225)
  • Prevent duplicate ResponseCheckFilter (#8223)
  • CI: Unify Docker + Helm jobs, validate helm chart against local image (#8215)
  • Ninja: Fix renovate config
  • Renovate/versioning schema for Minio (#8210)
  • Add NessieClientConfigSource backed by Iceberg REST catalog properties (#8206)
  • Fix nessie-gc executable (#8205)
  • CI: Add timeouts to all jobs (#8203)
  • Bump Minio testing container (#8194)
  • Build: Allow "big" shadow-jars (#8192)

Nessie 0.79.0

12 Mar 17:41
Compare
Choose a tag to compare

Nessie 0.79.0 release

Try it

The attached nessie-quarkus-0.79.0-runner.jar is a standalone uber-jar file that runs on Java 17 or newer and it is also available via Maven Central. Download and run it (requires Java 17):

wget https://github.com/projectnessie/nessie/releases/download/nessie-0.79.0/nessie-quarkus-0.79.0-runner.jar
java -jar nessie-quarkus-0.79.0-runner.jar

Nessie GC tool is attached as nessie-gc-0.79.0, which is an executable.
(chmod 744 nessie-gc-0.79.0 after download.)
Can also be run using java -jar nessie-gc-0.79.0, because it is actually a Java archive.
Shell completion can be generated from the nessie-gc tool.
Nessie GC tool is also available as a Docker image:
docker run --rm ghcr.io/projectnessie/nessie-gc:0.79.0 --help.

The attached nessie-helm-0.79.0.tgz is a packaged Helm chart, which can be downloaded and installed via Helm.
There is also the Nessie Helm chart repo, which can be added and used to install the Nessie Helm chart.

Changelog

New Features

  • Iceberg bumped to 1.5.0

Changes

  • SQL extensions for Spark 3.2 have been removed
  • Experimental iceberg-views module has been removed

Full Changelog (minus renovate commits):

  • Remove SQL Extensions for Spark 3.2 for Iceberg 1.5+ (#7940)
  • Remove iceberg-views module for Iceberg 1.5+ (#8058)
  • Nit: minor javadoc updates in MergeKeyBehavior (#8173)
  • Simplify ConfigChecks.configCheck (#8177)

Nessie 0.78.0

07 Mar 17:27
Compare
Choose a tag to compare

Nessie 0.78.0 release

Try it

The attached nessie-quarkus-0.78.0-runner.jar is a standalone uber-jar file that runs on Java 17 or newer and it is also available via Maven Central. Download and run it (requires Java 17):

wget https://github.com/projectnessie/nessie/releases/download/nessie-0.78.0/nessie-quarkus-0.78.0-runner.jar
java -jar nessie-quarkus-0.78.0-runner.jar

Nessie GC tool is attached as nessie-gc-0.78.0, which is an executable.
(chmod 744 nessie-gc-0.78.0 after download.)
Can also be run using java -jar nessie-gc-0.78.0, because it is actually a Java archive.
Shell completion can be generated from the nessie-gc tool.
Nessie GC tool is also available as a Docker image:
docker run --rm ghcr.io/projectnessie/nessie-gc:0.78.0 --help.

The attached nessie-helm-0.78.0.tgz is a packaged Helm chart, which can be downloaded and installed via Helm.
There is also the Nessie Helm chart repo, which can be added and used to install the Nessie Helm chart.

Changelog

New Features

  • GC Tool: ability to skip creating existing tables (IF NOT EXISTS)
  • Make Authorizer pluggable
  • Helm chart: add option to set sessionAffinity on Service

Fixes

  • Handle re-added keys when creating squash commits
  • JDBC backend: infer catalog and schema if not specified

Full Changelog (minus renovate commits):

  • Ninja; update CHANGELOG.md
  • Add convenience Namespace.getParentOrEmpty() (#8170)
  • Enforce covariant return types in NessieClientBuilder hierarchy (#8164)
  • Revert meaning of @WithInitializedRepository (#8162)
  • Handle re-added keys when creating squash commits (#8160)
  • HTTP client: add request and response filters programmatically (#8154)
  • Reduce flakiness in CustomKeycloakContainer startup (#8153)
  • Docker image tool: implement local image builds (#8141)
  • JDBC backend: infer catalog and schema if not specified (#8131)
  • Bump Scala to 2.12.19 + 2.13.13 (#8125)
  • Bump Spark 3.5 to 3.5.1 (#8124)
  • APIv2: Properly throw an exception when using GetEntriesBuilder.namespaceDepth (#7563)
  • Update Iceberg version in mkdocs.yml (#8122)
  • Testing: Allow test instance @NessiePersist.configMethod (#8120)
  • Update Iceberg version in README.md (#8121)
  • Keycloak containers: close admin clients (#8118)
  • Remove unnecessary ServerAccessContext (#8114)
  • Add set of roles to AccessContext, inject AC instead of Principal (#8091)
  • Add test case for re-create table and merge (#8113)
  • Add S3 user guide section for Minio (#8102)
  • GC Tool: ability to skip creating existing tables (IF NOT EXISTS) (#8081)
  • Persist-cache: add config object (#8112)
  • Nit/noop: Remove use of anonymous StoreConfig impl (#8110)
  • Nit: correct outdated javadoc (#8107)
  • Make Authorizer pluggable (#8090)
  • Helm chart: add option to set sessionAffinity on Service (#8095)
  • Fix logging class in ConfigChecks (#8089)
  • Remove unused function in CachingPersistImpl (#8086)

Nessie 0.77.1

14 Feb 18:30
Compare
Choose a tag to compare

Nessie 0.77.1 release

Try it

The attached nessie-quarkus-0.77.1-runner.jar is a standalone uber-jar file that runs on Java 17 or newer and it is also available via Maven Central. Download and run it (requires Java 17):

wget https://github.com/projectnessie/nessie/releases/download/nessie-0.77.1/nessie-quarkus-0.77.1-runner.jar
java -jar nessie-quarkus-0.77.1-runner.jar

Nessie GC tool is attached as nessie-gc-0.77.1, which is an executable.
(chmod 744 nessie-gc-0.77.1 after download.)
Can also be run using java -jar nessie-gc-0.77.1, because it is actually a Java archive.
Shell completion can be generated from the nessie-gc tool.
Nessie GC tool is also available as a Docker image:
docker run --rm ghcr.io/projectnessie/nessie-gc:0.77.1 --help.

The attached nessie-helm-0.77.1.tgz is a packaged Helm chart, which can be downloaded and installed via Helm.
There is also the Nessie Helm chart repo, which can be added and used to install the Nessie Helm chart.

Changelog

Highlights

  • The Nessie GC tool is now published as a Docker image. See the GC Tool documentation
    page
    for more.
  • Remove synchronizing to docker.io container registry, only publish to ghcr.io and quay.io.

Upgrade notes

  • Projectnessie no longer publishes container images to docker.io/Docker Hub. Container images are
    available from ghcr.io and quay.io.

New Features

  • Add some configuration checks to highlight probably production issues
  • Publish Docker images for the GC tool

Changes

  • Disable default OIDC tenant when authentication is disabled
  • Disable OpenTelemetry SDK when no endpoint is defined

Fixes

  • Fix VersionStore panels of the Grafana dashboard

Full Changelog (minus renovate commits):

  • Fix release-publishing (#8069)

Nessie 0.76.6

26 Jan 22:33
Compare
Choose a tag to compare

Nessie 0.76.6 release

Try it

The attached nessie-quarkus-0.76.6-runner.jar is a standalone uber-jar file that runs on Java 17 or newer and it is also available via Maven Central. Download and run it (requires Java 17):

wget https://github.com/projectnessie/nessie/releases/download/nessie-0.76.6/nessie-quarkus-0.76.6-runner.jar
java -jar nessie-quarkus-0.76.6-runner.jar

Nessie GC tool is attached as nessie-gc-0.76.6, which is an executable.
(chmod 744 nessie-gc-0.76.6 after download.)
Can also be run using java -jar nessie-gc-0.76.6, because it is actually a Java archive.
Shell completion can be generated from the nessie-gc tool.

The attached nessie-helm-0.76.6.tgz is a packaged Helm chart, which can be downloaded and installed via Helm.
There is also the Nessie Helm chart repo, which can be added and used to install the Nessie Helm chart.

Changelog

Changes

  • Nessie Docker images now contain Java 21
  • Helm: Make ingressClassName configurable
  • Helm: Use auto scaling
  • Improve error message when JDBC/C* columns are missing

Full Changelog (minus renovate commits):

  • Bump Spark 3.3 from 3.3.3 to 3.3.4 (#7990)
  • Ninja: update CHANGELOG
  • Helm chart: use autoscaling/v2 (#7982)
  • Make ingressClassName configurable (#7979)
  • Coordinated Tasks: make service-impl CDI-friendly (#7974)
  • Use Java 21 in published Docker images (#7973)
  • Coordinated Tasks (#7947)
  • Build: add some more javac linting (#7965)
  • nessie-events-quarkus: remove deprecation warnings (#7964)
  • Bump Spark 3.4 from 3.4.1 to 3.4.2 (#7963)
  • Improve error message when JDBC/C* columns are missing (#7961)
  • Bump logback-classic from 1.2.12 to 1.2.13 (#7962)

Nessie 0.76.3

16 Jan 18:29
Compare
Choose a tag to compare

Nessie 0.76.3 release

Try it

The attached nessie-quarkus-0.76.3-runner.jar is a standalone uber-jar file that runs on Java 17 or newer and it is also available via Maven Central. Download and run it (requires Java 17):

wget https://github.com/projectnessie/nessie/releases/download/nessie-0.76.3/nessie-quarkus-0.76.3-runner.jar
java -jar nessie-quarkus-0.76.3-runner.jar

Nessie GC tool is attached as nessie-gc-0.76.3, which is an executable.
(chmod 744 nessie-gc-0.76.3 after download.)
Can also be run using java -jar nessie-gc-0.76.3, because it is actually a Java archive.
Shell completion can be generated from the nessie-gc tool.

The attached nessie-helm-0.76.3.tgz is a packaged Helm chart, which can be downloaded and installed via Helm.
There is also the Nessie Helm chart repo, which can be added and used to install the Nessie Helm chart.

Changelog

Highlights

  • The Nessie client supports two new authentication flows when using OAuth 2 authentication:
    the Authorization Code flow and the Device Code flow. These flows are well suited for use within
    a command line program, such as a Spark SQL shell, where a user is interacting with Nessie using a
    terminal. In these flows, the user must use their web browser to authenticate with the identity
    provider. See the
    Nessie documentation
    for details. The two new flows are enabled by the following new grant types:
    • authorization_code: enables the Authorization Code flow; this flow can only be used with
      a local shell session running on the user's machine.
    • device_code: enables the Device Code flow; this flow can be used with either a local or a
      remote shell session.
  • The Nessie client now supports endpoint discovery when using OAuth 2 authentication. If an
    identity provider supports the OpenID Connect Discovery mechanism, the Nessie client can be
    configured to use it to discover the OAuth 2 endpoints. See the
    Nessie documentation
    for details.

Upgrade notes

  • Some storage backends will require a schema upgrade:
    • JDBC: the following SQL statement must be executed on the Nessie database (please adapt the
      statement to the actual database SQL dialect):
      ALTER TABLE objs 
        ADD COLUMN obj_vers VARCHAR;
      You may drop the no longer needed x_class column.
    • Cassandra: the following CQL statement must be executed on the Nessie database and keyspace:
      ALTER TABLE <keyspace>.objs 
        ADD obj_vers text;
      You may drop the no longer needed x_class column.

New Features

  • Nessie client: the OAUTH2 authentication provider now supports programmatic configuration. See the
    Nessie documentation for details.

Fixes

  • Fix potential NPE when fetching commit log with fetch option ALL and access checks enabled.

Full Changelog (minus renovate commits):

  • Fix URL endpoint for injected NessieApi from OldNessieServer (#7958)
  • Improve test coverage in ProtoSerialization (#7943)
  • Use fluent ObjIdHasher (#7957)
  • Mention JAVA_TOOL_OPTIONS in the docs (#7952)
  • Fix "unlimited" behavior flexible cache (#7949)
  • remove unused jersey-test-framework-provider dependencies (#7946)
  • Persist: Conditional deletes + updates (#7932)
  • Fix RockDB config properties (#7942)
  • Shrink heap footprint of ObjIdGeneric (#7934)
  • Caching behavior per object type (#7931)
  • HttpClient: ability to define per-request authentication (#7928)