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)