Releases: projectnessie/nessie
Nessie 0.93.1
- 61 commits since 0.92.1
- Maven Central: https://search.maven.org/search?q=g:org.projectnessie.nessie+v:0.93.1
- Docker images: https://github.com/projectnessie/nessie/pkgs/container/nessie and https://quay.io/repository/projectnessie/nessie?tab=tags
It is a multiplatform Java image (amd64, arm64, ppc64le, s390x):docker pull ghcr.io/projectnessie/nessie:0.93.1-java
- PyPI: https://pypi.org/project/pynessie/ (See pynessie)
- Helm Chart repo: https://charts.projectnessie.org/
Try it
The attached nessie-quarkus-0.93.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.93.1/nessie-quarkus-0.93.1-runner.jar
java -jar nessie-quarkus-0.93.1-runner.jar
Nessie CLI is attached as nessie-cli-0.93.1.jar
, which is a standalone uber-jar file that runs on Java 11 or newer. Nessie CLI is also available as a Docker image: docker run --rm -it ghcr.io/projectnessie/nessie-cli:0.93.1
.
Nessie GC tool is attached as nessie-gc-0.93.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.93.1 --help
.
Nessie Server Admin tool is attached as nessie-server-admin-tool-0.93.1-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.93.1 --help
.
The attached nessie-helm-0.93.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
Breaking changes
- The
throttled-retry-after
advanced configuration property was renamed from
nessie.catalog.service.s3.throttled-retry-after
to
nessie.catalog.error-handling.throttled-retry-after
. The old property name is ignored. - Helm chart: a few ADLS-specific options under
catalog.storage.adls
were incorrectly placed and
therefore effectively ignored by Nessie; if you are using ADLS, please re-check your configuration
and adjust it accordingly.
New Features
- CLI: New
REVERT CONTENT
command to update one or more tables or views to a previous state.
Changes
- Catalog: ADLS + GCS credentials are no longer sent to the client. It is considered insecure to expose the
server's credentials to clients, even if this is likely very convenient. Unless we have a secure mechanism
to provide per-client/table credentials, users have to configure object store credentials when using GCS or
ADLS via the local Iceberg configuration(s).
Fixes
- GC: Fix behavior of cutoff policy "num commits", it was 'off by one' and considered the n-th commit as non-live
vs the n-th commit as the last live one. - GC: Record failed "sweep"/"expire" runs in the repository. Before this fix, failures were reported on the console.
- GC: Fix handling of broken manifest files written by pyiceberg up to 0.6.1
- Catalog/ADLS: Don't let endpoint default to warehouse/object-store URI
- Catalog/ADLS: More informative error message if mandatory
endpoint
is missing. - Catalog/ADLS: Use a less restrictive endpoint in the 'ObjectIO.ping' function used for health checks.
Full Changelog (minus renovate commits):
- Revert "[release] release nessie-0.93.0", but keep version
- Build: fix annotation types warnings (#9148)
- CI: Use Java 21 for CI (#9140)
- Release workflow: Let helm chart publishing depend on images publishing (#9142)
- Bump undertow from 2.2.28 to 2.2.33 (#9143)
- Bump Spark 3.4 from 3.4.2 to 3.4.3 (#9144)
- Bump Scala 2.13 from 2.13.13 to 2.13.14 (#9145)
- Revert "[release] release nessie-0.93.0"
- Add an Operating System check (#9139)
- Cache invalidations: move code to
:nessie-quarkus
(#9137) - Catalog: decouple bucket name from bucket config key (#9116)
- Catalog/ADLS: change 'ping' endpoint (#9134)
- Add exception mappers to convert storage failures to Iceberg REST client exceptions (#8558)
- CLI: Nicer syntax rendering (#9119)
- CLI: Add
REVERT CONTENT
command (#9120) - Catalog: update
IcebergManifestFileReader
to handle broken manifest files (#9132) - Reference caching: update default for negative, update comments/docs (#9126)
- Catalog/ADLS: More information if manadory ADLS endpoint is missing (#9128)
- ninja: changelog
- GC: Manifest file reading with
specById
(#9131) - Site: notes on Nessie server sizing + tips (#9127)
- Catalog / GCS: minor enhancements (#9107)
- Site: dynamo db note (#9113)
- GC: Record expiry exception in repository + record stack trace as well (#9114)
- Catalog: Don't expose ADLS + GCS credentials (#9100)
- Renovate: automerge action updates (#9106)
- Catalog: Accept object-store locations w/o trailing
/
(#9098) - Catalog/ADLS: Don't let endpoint default to warehouse/object-store URI (#9102)
- Add
message
argument toObjects.requireNonNull()
(#9099) - GC: Fix behavior of cutoff policy "num commits", 'off by one' (#9096)
- Site: Fix links to nessie-bom (#9088)
Nessie 0.92.1
- 17 commits since 0.92.0
- Maven Central: https://search.maven.org/search?q=g:org.projectnessie.nessie+v:0.92.1
- Docker images: https://github.com/projectnessie/nessie/pkgs/container/nessie and https://quay.io/repository/projectnessie/nessie?tab=tags
It is a multiplatform Java image (amd64, arm64, ppc64le, s390x):docker pull ghcr.io/projectnessie/nessie:0.92.1-java
- PyPI: https://pypi.org/project/pynessie/ (See pynessie)
- Helm Chart repo: https://charts.projectnessie.org/
Try it
The attached nessie-quarkus-0.92.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.92.1/nessie-quarkus-0.92.1-runner.jar
java -jar nessie-quarkus-0.92.1-runner.jar
Nessie CLI is attached as nessie-cli-0.92.1.jar
, which is a standalone uber-jar file that runs on Java 11 or newer. Nessie CLI is also available as a Docker image: docker run --rm -it ghcr.io/projectnessie/nessie-cli:0.92.1
.
Nessie GC tool is attached as nessie-gc-0.92.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.92.1 --help
.
Nessie Server Admin tool is attached as nessie-server-admin-tool-0.92.1-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.92.1 --help
.
The attached nessie-helm-0.92.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
- Catalog: fix field-ID reassignment and last-column-id calculation
Full Changelog (minus renovate commits):
- Catalog: Fix assignment of nested fields in a table's initial schema (#9085)
- Update docs for CEL Authorization rules (#9078)
- HTTP client: consistently close streams and responses (#9082)
- HTTP client: remove hard-coded behavior for status >= 400 (#9071)
- Gradle 8.9 post updates (#9075)
- Use released Nessie image in docker-compose examples (#9070)
Nessie 0.92.0
- 98 commits since 0.91.3
- Maven Central: https://search.maven.org/search?q=g:org.projectnessie.nessie+v:0.92.0
- Docker images: https://github.com/projectnessie/nessie/pkgs/container/nessie and https://quay.io/repository/projectnessie/nessie?tab=tags
It is a multiplatform Java image (amd64, arm64, ppc64le, s390x):docker pull ghcr.io/projectnessie/nessie:0.92.0-java
- PyPI: https://pypi.org/project/pynessie/ (See pynessie)
- Helm Chart repo: https://charts.projectnessie.org/
Try it
The attached nessie-quarkus-0.92.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.92.0/nessie-quarkus-0.92.0-runner.jar
java -jar nessie-quarkus-0.92.0-runner.jar
Nessie CLI is attached as nessie-cli-0.92.0.jar
, which is a standalone uber-jar file that runs on Java 11 or newer. Nessie CLI is also available as a Docker image: docker run --rm -it ghcr.io/projectnessie/nessie-cli:0.92.0
.
Nessie GC tool is attached as nessie-gc-0.92.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.92.0 --help
.
Nessie Server Admin tool is attached as nessie-server-admin-tool-0.92.0-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.92.0 --help
.
The attached nessie-helm-0.92.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
- Catalog: The
nessie.catalog.s3.default-options.auth-mode
configuration property has been renamed
tonessie.catalog.s3.default-options.client-auth-mode
to better reflect its purpose. The old
property name is not supported anymore and must be updated in customized Helm values and/or
Quarkus configurations.
New Features
- Catalog: Exported Nessie repositories now include the contents for Nessie Catalog
- Catalog: Improve indicated health check errors
- Catalog/GCS: Support using the default application credentials
- Catalog/S3: Allow custom key+trust stores
- Catalog: Check privileges earlier
- Catalog: cleanup non-committed metadata objects
Changes
- Helm chart improvements
Fixes
- Fix potential class-loader deadlock via
Namespace.EMPTY
- Catalog: Fix double write of metadata objects to S3
- GC/ADLS: Handle
BlobNotFound
as well - Fix behavior of metadata-update/set-statistics + set-partition-statistics
- Fix duplicate OAuth interactive flows when the Nessie API compatibility filter is enabled
Full Changelog (minus renovate commits):
- Fix Iceberg REST "getting started" examples (#9065)
- HTTP client: refactor BaseHttpRequest (#9055)
- Persist: make GenericObj implement Obj (#9059)
- Remove superfluous
\
in CLI welcome message (#9066) - Make
o.p.client.http.Status
safe against unknown HTTP status codes (#9062) - Export related objects (#9034)
- Catalog S3: use DefaultCredentialsProvider if no access key configured (#8987)
- nit: fix typo in changelog (#9051)
- Compatibility filter: bypass filters when contacting the config endpoint (#9050)
- Add ability to (de)serialize generic custom
ObjType
s (#9032) - Refactor Nessie HTTP compatibility filter (#9047)
- Fix Docker Compose ports (#9046)
- Fix behavior of metadata-update/set-statistics + set-partition-statistics (#9045)
- SQL Extension SHOW LOG with AT (#8294)
- Committing operations: cleanup metadata after failures (#8889)
- Ability to identify related objects for Nessie export (#9033)
- Docs: Update REST catalog config for Trino (#9016)
- ninja: changelog
- Fix concurrency issue in flaky test
TestIceberg*Files.iceberg()
(#9039) - Allow Smallrye config sections to have no properties (#9023)
- Catalog: Improve warehouse health/readiness checks (#9036)
- Add at least some reason to
Optional.orElseThrow()
(#9037) - Nit: move EntityObj ID calculation from impl class (#9030)
- Unify obj-type namespaces (#9031)
- Fix older-client/server dependency resolution errors (#9029)
- Implement early access-checks for Iceberg REST operations (#8768)
- Export: remove ability to export a new repo using the legacy export version (#9017)
- GC/ADLS: Handle BlobNotFound (#9015)
- ninja: changelog
- Catalog/S3: Allow custom trust and key stores (#9012)
- Ninja: changelog
- Ninja: changelog updates
- Catalog/Bug: Fix double-write for S3 (#9008)
- Support using the default application credentials for google client (#9004)
- Docs: improve tabbed display of code blocks (#9006)
- Helm chart: fix advanced config examples (#9005)
- Refactor
MultiTableUpdate
(#9001) - Exclude DNS test on macOS (#9003)
- Add
for-write
query parameter to Nessie API v2 (#8993) - Move
AddressResolve
to a separate module, so it's reusable (#8992) - Add initial unit tests for
CatalogServiceImpl
(#8998) - Make address resolution more resilient (#8984)
- Add
returnNotFound
forVersionStore.getValue(s)
(#8983) - Adopt to change from Gradle 8.0 to 8.1 (#8985)
- Helm chart: don't call template if feature is disabled (#8982)
- Add
ObjectIO.deleteObjects()
(#8981) - Site: add docs on Kubernetes troubleshooting (#8966)
- Fix potential class-loader deadlock via
Namespace.EMPTY
(#8963) - Clean site directories and built-tools-IT directories during
clean
(#8969) - Fix more IJ inspections (#8962)
Nessie 0.91.3
- 32 commits since 0.91.2
- Maven Central: https://search.maven.org/search?q=g:org.projectnessie.nessie+v:0.91.3
- Docker images: https://github.com/projectnessie/nessie/pkgs/container/nessie and https://quay.io/repository/projectnessie/nessie?tab=tags
It is a multiplatform Java image (amd64, arm64, ppc64le, s390x):docker pull ghcr.io/projectnessie/nessie:0.91.3-java
- PyPI: https://pypi.org/project/pynessie/ (See pynessie)
- Helm Chart repo: https://charts.projectnessie.org/
Try it
The attached nessie-quarkus-0.91.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.91.3/nessie-quarkus-0.91.3-runner.jar
java -jar nessie-quarkus-0.91.3-runner.jar
Nessie CLI is attached as nessie-cli-0.91.3.jar
, which is a standalone uber-jar file that runs on Java 11 or newer. Nessie CLI is also available as a Docker image: docker run --rm -it ghcr.io/projectnessie/nessie-cli:0.91.3
.
Nessie GC tool is attached as nessie-gc-0.91.3.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.91.3 --help
.
Nessie Server Admin tool is attached as nessie-server-admin-tool-0.91.3-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.91.3 --help
.
The attached nessie-helm-0.91.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
Breaking changes
- The config properties for the object storage defaults for S3, GCS and ADLS have been moved under the
default-options
composite object. Inconsistent property names between the old defaults and the per-bucket
property names have been resolved.
New Features
- Nessie CLI now has its own Docker images. Running Nessie CLI is now as simple as:
docker run -it ghcr.io/projectnessie/nessie-cli
. Read more about it
here.
Fixes
- Fix console output during
CONNECT
in CLI/REPL (the bug was introduced in 0.91.1)
Full Changelog (minus renovate commits):
- Fix a bunch of IntelliJ inspections, rather nits + cosmetic (#8955)
- nit: fix typo in NessieConfigConstants (#8959)
- Site: display download options for each artifact in tabs (#8946)
- Just add comments when adding new images. (#8958)
- Nessie CLI: publish Docker images (#8935)
- Fix STDOUT in
ConnectCommand
(#8953) - Remove unused
Cloud
enum (#8951) - Fix flaky
TestCacheInvalidationSender.regularServiceNameLookups
(#8950) - Helm chart: remove build-time property quarkus.log.min-level (#8948)
- Helm chart: fix catalogStorageEnv template (#8944)
- Clarify OpenAPI doc for updateRepositoryConfig (#8945)
- Migrate default bucket options to
default-options
composite property (#8933) - Site: new placeholders for nightly version, tag and unstable suffix (#8939)
- Replace usage of
Project.extra
forPublishingHelperPlugin
+ explicitly disable Gradle config cache (#8942) - create-gh-release-notes.sh: don't include h1 title in release notes (#8938)
- Site: nicer word-break for config references (#8936)
- Site / downloads fixes + reorg (#8934)
- Follow-up of stream-to-list refactor (#8931)
- OAuth2: nit: clarify trust relationship required for impersonation (#8928)
- GH WFs: Fix comment + job parameter description (#8924)
Nessie 0.91.2
Nessie 0.91.2 release
- 10 commits since 0.91.1
- Maven Central: https://search.maven.org/search?q=g:org.projectnessie.nessie+v:0.91.2
- Docker images: https://github.com/projectnessie/nessie/pkgs/container/nessie and https://quay.io/repository/projectnessie/nessie?tab=tags
It is a multiplatform Java image (amd64, arm64, ppc64le, s390x):docker pull ghcr.io/projectnessie/nessie:0.91.2-java
- PyPI: https://pypi.org/project/pynessie/ (See pynessie)
- Helm Chart repo: https://charts.projectnessie.org/
Try it
The attached nessie-quarkus-0.91.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.91.2/nessie-quarkus-0.91.2-runner.jar
java -jar nessie-quarkus-0.91.2-runner.jar
Nessie GC tool is attached as nessie-gc-0.91.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.91.2 --help
.
Nessie Server Admin tool is attached as nessie-server-admin-tool-0.91.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.91.2 --help
.
The attached nessie-helm-0.91.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
Breaking changes
- We have improved Nessie client's support for impersonation scenarios using the token exchange
grant type. A few options starting withnessie.authentication.oauth2.token-exchange.*
were
renamed tonessie.authentication.oauth2.impersonation.*
. Check the [Nessie authentication
settings] for details. Please note that token exchange and impersonation are both considered in
beta state. Their APIs and configuration options are subject to change at any time.
Full Changelog (minus renovate commits):
Nessie 0.91.1
Nessie 0.91.1 release
- 78 commits since 0.90.4
- Maven Central: https://search.maven.org/search?q=g:org.projectnessie.nessie+v:0.91.1
- Docker images: https://github.com/projectnessie/nessie/pkgs/container/nessie and https://quay.io/repository/projectnessie/nessie?tab=tags
It is a multiplatform Java image (amd64, arm64, ppc64le, s390x):docker pull ghcr.io/projectnessie/nessie:0.91.1-java
- PyPI: https://pypi.org/project/pynessie/ (See pynessie)
- Helm Chart repo: https://charts.projectnessie.org/
Try it
The attached nessie-quarkus-0.91.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.91.1/nessie-quarkus-0.91.1-runner.jar
java -jar nessie-quarkus-0.91.1-runner.jar
Nessie GC tool is attached as nessie-gc-0.91.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.91.1 --help
.
Nessie Server Admin tool is attached as nessie-server-admin-tool-0.91.1-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.91.1 --help
.
The attached nessie-helm-0.91.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
New Features
- Nessie's metrics now support custom, user-defined tags (dimensional labels). To
define a custom tag, set thenessie.metrics.tags.<tag-name>=<tag-value>
configuration property.
Such tags are added to all metrics published by Nessie. - Readiness/health check testing the general availability of the object stores configured for the warehouses.
- Helm chart with support for Iceberg REST
Fixes
- S3 request signing, when using Iceberg REST, did not work with Iceberg (Java) before 1.5.0. Iceberg
S3 request signing before 1.5.0 works now. - Fix service-name resolution in k8s, spamming the Nessie log.
Full Changelog (minus renovate commits):
- Fix flaky tests in
:nessie-gc-iceberg-files
(#8913) - Fix patch version
- Ninja: bump sonatype timeout + bump snapshot-version for next release
- Revert release 0.91.0
- CI: split Quarkus intTest jobs (#8898)
- Site: exchange "black" Nessie (#8908)
- Fix Helm chart CI (#8900)
- NInja: changelog
- Possibly fix Java stream issuue w/ name resolution (#8899)
- Expose object store(s) availability as a readiness check (#8893)
- ADLS: advice against shared account name/key (#8895)
- Use correct IcebergView.of (#8896)
- Update nessie-IDs in returned metadata properties, simplify some code (#8879)
- Catalog/ADLS: Expose the endpoint and sas-token using the correct Iceberg properties (#8894)
- Add admin command: delete-catalog-tasks (#8869)
- TestOAuth2Authentication: fix flaky test (#8892)
- Metrics: support user-defined tags (#8890)
- Prevent console spam when connecting to a non-Iceberg-REST endpoint (#8885)
- Add the nice Nessie images (#8880)
- Add docs and docker-compose illustrating the use of a reverse proxy (#8864)
- Helm chart: support for REST Catalog (#8831)
- Docker compose: add examples with Prometheus and Grafana (#8883)
- Fix heading in index-release.md (#8881)
- Bump regsync from 0.4.7 to 0.6.1 (#8873)
- Fix test failure in
TestResolvConf
in macOS CI job (#8874) - Make S3 signing work with Iceberg before 1.5.0 (#8871)
- Relax image registry sync (#8872)
- Disable Iceberg GC by default (#8870)
- AdlsConfig: remove unused option (#8868)
- Support v2 iceberg tables with gzip (#8848)
- OAuth2 client: improve error reporting (#8861)
- Use
search
inresolv.conf
to resolve service names (#8849) - REST Catalog: disable metrics by default (#8853)
- Proper
N commits since x.y.z
in release notes (#8823) - Fix release-publish (#8822)
- Attempt to fix flaky test #8819 (#8821)
- Increase test worker heap size (#8820)
Nessie 0.90.4
Nessie 0.90.4 release
- 30 commits since 0.90.2
- Maven Central: https://search.maven.org/search?q=g:org.projectnessie.nessie+v:0.90.4
- Docker images: https://github.com/projectnessie/nessie/pkgs/container/nessie and https://quay.io/repository/projectnessie/nessie?tab=tags
It is a multiplatform Java image (amd64, arm64, ppc64le, s390x):docker pull ghcr.io/projectnessie/nessie:0.90.4-java
- PyPI: https://pypi.org/project/pynessie/ (See pynessie)
- Helm Chart repo: https://charts.projectnessie.org/
Try it
The attached nessie-quarkus-0.90.4-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.90.4/nessie-quarkus-0.90.4-runner.jar
java -jar nessie-quarkus-0.90.4-runner.jar
Nessie GC tool is attached as nessie-gc-0.90.4.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.90.4 --help
.
Nessie Server Admin tool is attached as nessie-server-admin-tool-0.90.4-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.90.4 --help
.
The attached nessie-helm-0.90.4.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
- Support for token exchange in the Nessie client has been completely redesigned. The new API and
configuration options are described in the [Nessie authentication settings]. If this feature is
enabled, each time a new access token is obtained, the client will exchange it for another one by
performing a token exchange with the authorization server. We hope that this new feature will
unlock many advanced use cases for Nessie users, such as impersonation and delegation. Please note
that token exchange is considered in beta state and both the API and configuration options are
subject to change at any time; we appreciate early feedback, comments and suggestions.
Full Changelog (minus renovate commits):
- Skip 0.90.3
- Fix compilation failure (#8817)
- Revert commits for 0.90.3 release
- JDBC: add proper support for H2 (#8751)
- Fix cache-deserialization for
UpdateableObj
(#8815) - OAuth2Client: refactor scopes (#8814)
- Token exchange: documentation enhancements (#8813)
- Token exchange: more flexible subject / actor configuration (#8812)
- OAuth2Client: integration tests for token exchange (#8810)
- Fix docker-compose files after Keycloak upgrade to 25.0 (#8804)
- HTTP client: introduce specialized HttpClientResponseException (#8806)
- OAuth2Client: internal code cleanup (#8807)
- OAuthClient: configurable subject and actor token types (#8805)
- OAuth2Client: introduce proper support for token exchange (#8803)
- OAuth2Client: don't refresh tokens using token exchange (#8790)
- Disable a test on macOS (#8799)
- Helm chart: minor improvement to JDBC section in docs (#8717)
- Nessie w/ Iceberg REST / post-release site changes (#8510)
- Ninja: fix release-create workflow issues in "create github release" job
Nessie 0.90.2
Nessie 0.90.2 release
-
185 commits since 0.83.2
- Maven Central: https://search.maven.org/search?q=g:org.projectnessie.nessie+v:0.90.2
- Docker images: https://github.com/projectnessie/nessie/pkgs/container/nessie and https://quay.io/repository/projectnessie/nessie?tab=tags
It is a multiplatform Java image (amd64, arm64, ppc64le, s390x):docker pull ghcr.io/projectnessie/nessie:0.90.2-java
- PyPI: https://pypi.org/project/pynessie/ (See pynessie)
- Helm Chart repo: https://charts.projectnessie.org/
Try it
The attached nessie-quarkus-0.90.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.90.2/nessie-quarkus-0.90.2-runner.jar
java -jar nessie-quarkus-0.90.2-runner.jar
Nessie GC tool is attached as nessie-gc-0.90.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.90.2 --help
.
Nessie Server Admin tool is attached as nessie-server-admin-tool-0.90.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.90.2 --help
.
The attached nessie-helm-0.90.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
- Nessie has got support for Iceberg REST.
- MySQL users can now configure the JDBC connection using the
quarkus.datasource.mysql.*
properties. Also, JDBC URLs can now use themysql
prefix, e.g.
jdbc:mysql://example.com:3306/my_db
.
Upgrade notes
- Helm chart: the
cassandra
section now has support for pulling credentials from a secret. The
oldcassandra.auth.username
andcassandra.auth.password
properties still work, but are now
deprecated and will be removed in a future release. Use thecassandra.secret
property instead.
New Features
- Support for Iceberg REST is in "beta" state. We appreciate early feedback, comments and suggestions.
Take a look at the Guides and Docs
on our web site projectnessie.org for more information. - CEL access check scripts now receive the variable
roles
that can be used to check whether the current
principal has a role assigned using a CEL expression like'rolename' in roles
.
Deprecations
- Support for Java 8 is officially deprecated and users are encouraged to upgrade all clients to
at least Java 11, better Java 17 or 21, if possible. Current Spark versions 3.3, 3.4 and 3.5
work with Java 11 and 17. Support for Java 8 will eventually be removed. - For JDBC version stores, the following settings, which never worked as expected, are now
deprecated and will be removed in a future release. The catalog and the schema must always be
specified explicitly in the JDBC URL.nessie.version.store.persist.jdbc.catalog
nessie.version.store.persist.jdbc.schema
Fixes
- A bug in the API compatibility filter has been discovered and fixed: when OAuth2 authentication is
being used, the filter causes the OAuth2 client to close prematurely, thus triggering unauthorized
errors. A workaround is to simply disable the filter (setnessie.enable-api-compatibility-check
tofalse
), but this is no longer necessary.
Full Changelog (minus renovate commits):
- Manually bump to 0.90.1-SNAPSHOT for next release
- Revert "[release] release nessie-0.90.1"
- Another release-publish bug
- Manually bump to 0.90.1
- Revert "[release] release nessie-0.90.0"
- Revert 0.90.0 commits
- Ninja: fix
- Revert 0.90.0 release commits
- Ninja: Fix Swaggerhub
- Prepare bump to v0.90.0 (#8792)
- Persist: introduce type-safe bulk-fetch functions (#8763)
- Persist-cache: add negative obj cache (#8762)
- Remove NessieDockerTestResourceLifecycleManager (#8788)
- Catalog tests: disable token refresh (#8786)
- OAuth2Client: fix race condition when scheduling refreshes (#8787)
- OAuth2 client: add support for RFC 8414 metadata discovery (#8789)
- Support distributed invalidation for
Persist
cache (#8463) - API compatibility filter: don't share authentication with main client (#8769)
- [Catalog] Restrict S3 signing to URIs within table base prefix (#8654)
- Persist: add
fetchObjsIfExist()
(#8761) - Refactor Backend.setupSchema to return schema info (#8753)
- Add workaround for nip.io for macOS, optimize for Linux (#8759)
- Cleanup nessie-quarkus build file (#8757)
- [Catalog] Recognize
s3a
ands3n
, behave likes3
(#8755) - Expose 'roles' in CEL access check scripts (#8752)
- Site: Add RSS+JSON feeds (#8754)
- Docs-gen: more documented types, don't expose "Java types" (#8705)
- Allow secrets in a Keystore (#8710)
- [Catalog] Secrets suppliers/managers API (#8706)
- JDBC: remove options 'catalog' and 'schema' and revisit schema creation (#8723)
- Helm chart: add support for OIDC client secret (#8750)
- Site: Clarify "Authorization" and remove confusing paragraph (#8749)
- Helm chart: fix a few property names (#8743)
- Add explicit authorization-type = CEL (#8746)
- Add
isAnonymous()
toAccessContext
(#8745) - Add a JSON view to
SmileSerialization
(#8744) - Helm chart: reload pods when configmap changes (#8725)
- Replace
:latest
with versions in docker-compose files (#8724) - Nit: fix docker-compose paths (#8722)
- Avoid invalid test names due to non-printable characters (#8721)
- Helm chart / Cassandra: add support for pulling credentials from secrets (#8716)
- Helm chart: fix wrong env var + nits (#8718)
- Helm chart: mention removal of legacy store types in 0.75.0 (#8719)
- Fix API examples for merge conflict responses (#8712)
- Prevent Quarkus warning about unindexed dependency (#8711)
- Helm chart: create ConfigMap for application.properties file (#8709)
- [Catalog] S3CredentialsResolver: remove one second from session end (#8703)
- Update URLs in ConfigChecks (#8704)
- Do not pin digests for Dockerfiles and docker-compose files (#8689)
- Strip leading
/
(only for S3) (#8681) - [Catalog] Implement paging for Iceberg REST (#8633)
- Adjust all
logback*.xml
files to new syntax (#8678) - Testing: less console log during BigTable tests (#8677)
- Helm chart: add support for JDBC catalog and schema (#8672)
- GC: fix incorrect paths when listing prefixes with ADLS (#8661)
- [Catalog] return metadata-location in object store (at least for now) (#8669)
- [Catalog] Handle
CompletionStage
from snapshot store (#8667) - [Catalog] Remove unused parameters/code (#8666)
- Deprecate support for Java 8 (#8650)
- [Catalog] Simplify tokens-uri resolution (#8649)
- [Catalog] update CHANGELOG (#8651)
- README: remove link to demos repository (#8652)
- Un-ignore SetLocation directives (#8646)
- [Catalog] remove Google projectId for S3 (#8635)
- Ninja: fix renovate config
- Renovate: more automatic merges (#8640)
- Ninja: rename snapshot-publish workflow
- [FEATURE] Nessie integration of Iceberg REST (#7043)
- Authelia tests: remove nip.io (#8632)
- Split Release workflow job into multiple, retryable jobs (#8596)
- Custom keycloak container: add function to create a bearer token (#8622)
- OAuth2 client: add integration tests with Authelia (#8618)
- Docker compose: add example with Authelia (#8619)
- Fix jaegertracing image spec (#8615)
- Fix downloads on site + publish CLI uber jar (#8595)
- Fix incremental generation of site/docs (#8591)
- Separate MariaDB and MySQL datasources (#8585)
- Clean up failed 0.83.0 + 0.83.1 releases (#8590)
- Snapshot-Publishing: job splitting for snapshot releases (#8589)
- Renovate: there's more than just
dockerfile
(#8586) - Remove deprecated
HttpClientBuilder
(#7803)
Nessie 0.83.2
Nessie 0.83.2 release
- 2 commits since 0.83.1
- Maven Central: https://search.maven.org/search?q=g:org.projectnessie.nessie+v:0.83.2
- Docker images: https://github.com/projectnessie/nessie/pkgs/container/nessie and https://quay.io/repository/projectnessie/nessie?tab=tags
It is a multiplatform Java image (amd64, arm64, ppc64le, s390x):docker pull ghcr.io/projectnessie/nessie:0.83.2-java
- PyPI: https://pypi.org/project/pynessie/ (See pynessie)
- Helm Chart repo: https://charts.projectnessie.org/
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 onlineHELP
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:- Specify the new configuration property:
nessie.version.store.persist.jdbc.datasource=mariadb
; - Provide all the MariaDB (or MySQL) connection details using
quarkus.datasource.mariadb.*
configuration properties.
- Specify the new configuration property:
- 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:- Specify the new configuration property:
nessie.version.store.persist.jdbc.datasource=postgresql
; - Migrate any property under
quarkus.datasource.*
toquarkus.datasource.postgresql.*
. Support
for the oldquarkus.datasource.*
properties will be removed in a future release.
- Specify the new configuration property:
- For the same reason, the Nessie Helm chart has been updated. The old
postgres
section is now
calledjdbc
. Existing Helm chart configurations should be updated accordingly, e.g.
postgres.jdbcUrl
now becomesjdbc.jdbcUrl
. Although the oldpostgres
section is still
honored, it won't be supported in future releases. The right datasource will be chosen based on
thejdbcUrl
contents.
Breaking changes
nessie-quarkus-cli
, the low-level tool to for example export/import Nessie repositories, has been renamed
tonessie-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
Reference
s (#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 ofubi9/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
+IcebergView
content 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
Nessie 0.82.0 release
- 13 commits since 0.81.1
- Maven Central: https://search.maven.org/search?q=g:org.projectnessie.nessie+v:0.82.0
- Docker images: https://github.com/projectnessie/nessie/pkgs/container/nessie and https://quay.io/repository/projectnessie/nessie?tab=tags
It is a multiplatform Java image (amd64, arm64, ppc64le, s390x):docker pull ghcr.io/projectnessie/nessie:0.82.0-java
- PyPI: https://pypi.org/project/pynessie/ (See pynessie)
- Helm Chart repo: https://charts.projectnessie.org/
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)