Releases¶
See Nessie Server upgrade notes for supported upgrade paths.
0.53.1 Release (March 24, 2023)¶
See Release information on GitHub.
- New storage: add “batch write” facade (#6385)
- Persist: replace
updateObj()
withupsertObj()
(#6384) - Import: print total duration (#6383)
- IntelliJ: exclude more directories from indexing (#6374)
- Import: Eager prefetching of commits during finalization (#6378)
- New storage:
Persist.updateObj()
must respect index-size limits (#6377) - Import: use updated commit as new parent (#6376)
- Nessie Import: Respect commit import batch size (new model) (#6375)
- Nessie Import: Print durations, double row size printed to console (#6370)
0.53.0 Release (March 23, 2023)¶
See Release information on GitHub.
- Import: paint dots also during the finalize phase (#6366)
- Use relocated protobuf runtime (#6355)
- Build/publishing: Proper Gradle module metadata for shadow-jars (#6361)
- Intellij: exclude
/.mvn
+/ui/node_modules
(#6364) - Support annotation-based configuration in “old server” tests (#6356)
- Mongo/storage: use
replaceOne
instead offindAndReplaceOne
(#6363) - Compatibility-test: allow adapter-configuration via system properties (#6353)
- Compatibility-tests: require Nessie >= 0.42.0, cleanup code (#6352)
- CI: Bump newer-java-version WF from 19 to 20 (#6348)
- Properly return
ParamConverterProvider
errors as HTTP/400 (#6346) - Remove InstantParamConverterProvider (#6341)
- Update release notes template, remove “Docker Hub” (#6339)
- Build: Fix Jackson-annotations configuration for build-plugins int-test (#6337)
- Nit: Remove unnecessary null-check (#6344)
0.52.3 Release (March 20, 2023)¶
See Release information on GitHub.
- Ninja: fix release WF
- Ninja: fix release WF
- Fix release WF (#6334)
- New storage: fix writetamp collision in C* integration tests (#6332)
- Use positive repo erase confirmation codes. (#6317)
- Forbid special ASCII chars in content keys (#6313)
- GH WF: Remove
concurrency
from PR jobs (#6314) - Replace Docker Hub with ghcr.io (#6305)
- Fix param examples for getSeveralContents() (#6302)
- Fix labeler config (#6303)
- Workaround UI issues in ghcr.io + quay.io (#6299)
- Fix docker-sync WF typo (#6296)
- GH WF to sync container repositories (#6295)
- Content-tool: Add command to create missing namespaces (#6280)
- Ensure parent namespace(s) for commited content objects exist (#6246)
- Core reorg: use
api/
andintegrations/
directories (#6288) - Add ACKNOWLEDGEMENTS.md (#6289)
- Allow some integration tests to be executed on macOS (#6266)
- Build/CI: Allow renovate to update the Maven wrapper (#6286)
- Update the Docker image section of main README.md (#6267)
- Ignore jEnv .java-version file (#6268)
- Use JvmTestSuite + JacocoReport (#6231)
- Content-generator tool changes for ‘Ensure parent namespace(s) for commited content objects exist’ PR (#6265)
- Test changes for ‘Ensure parent namespace(s) for commited content objects exist’ PR (#6263)
- CLI tool cheanges for ‘Ensure parent namespace(s) for commited content objects exist’ PR (#6264)
- compatiblity-tests: Extracted test changes for namespace-validation (#6261)
- Fix maven group id in docs (#6259)
- Add helper functions to
Namespace
andContentKey()
(#6256) - Let ITs against Nessie/Quarkus send back stack traces (#6257)
- Replace
Key
withContentKey
(#6242) - New DynamoDB storage - do not pull in the Apache HTTP client (#6243)
- Add missing Gradle build scan for last check (#6254)
- Fix
AbstractDatabaseAdapter.removeKeyCollisionsForNamespaces
(#6253) - Fix wrong parameter validation override (#6241)
- Nit: remove mentions of dependabot (#6239)
- New Nessie storage model (#5641)
0.52.2 Release (March 20, 2023)¶
See Release information on GitHub.
- Ninja: fix release WF
- Fix release WF (#6334)
- New storage: fix writetamp collision in C* integration tests (#6332)
- Use positive repo erase confirmation codes. (#6317)
- Forbid special ASCII chars in content keys (#6313)
- GH WF: Remove
concurrency
from PR jobs (#6314) - Replace Docker Hub with ghcr.io (#6305)
- Fix param examples for getSeveralContents() (#6302)
- Fix labeler config (#6303)
- Workaround UI issues in ghcr.io + quay.io (#6299)
- Fix docker-sync WF typo (#6296)
- GH WF to sync container repositories (#6295)
- Content-tool: Add command to create missing namespaces (#6280)
- Ensure parent namespace(s) for commited content objects exist (#6246)
- Core reorg: use
api/
andintegrations/
directories (#6288) - Add ACKNOWLEDGEMENTS.md (#6289)
- Allow some integration tests to be executed on macOS (#6266)
- Build/CI: Allow renovate to update the Maven wrapper (#6286)
- Update the Docker image section of main README.md (#6267)
- Ignore jEnv .java-version file (#6268)
- Use JvmTestSuite + JacocoReport (#6231)
- Content-generator tool changes for ‘Ensure parent namespace(s) for commited content objects exist’ PR (#6265)
- Test changes for ‘Ensure parent namespace(s) for commited content objects exist’ PR (#6263)
- CLI tool cheanges for ‘Ensure parent namespace(s) for commited content objects exist’ PR (#6264)
- compatiblity-tests: Extracted test changes for namespace-validation (#6261)
- Fix maven group id in docs (#6259)
- Add helper functions to
Namespace
andContentKey()
(#6256) - Let ITs against Nessie/Quarkus send back stack traces (#6257)
- Replace
Key
withContentKey
(#6242) - New DynamoDB storage - do not pull in the Apache HTTP client (#6243)
- Add missing Gradle build scan for last check (#6254)
- Fix
AbstractDatabaseAdapter.removeKeyCollisionsForNamespaces
(#6253) - Fix wrong parameter validation override (#6241)
- Nit: remove mentions of dependabot (#6239)
- New Nessie storage model (#5641)
0.52.1 Release (March 20, 2023)¶
See Release information on GitHub.
- Fix release WF (#6334)
- New storage: fix writetamp collision in C* integration tests (#6332)
- Use positive repo erase confirmation codes. (#6317)
- Forbid special ASCII chars in content keys (#6313)
- GH WF: Remove
concurrency
from PR jobs (#6314) - Replace Docker Hub with ghcr.io (#6305)
- Fix param examples for getSeveralContents() (#6302)
- Fix labeler config (#6303)
- Workaround UI issues in ghcr.io + quay.io (#6299)
- Fix docker-sync WF typo (#6296)
- GH WF to sync container repositories (#6295)
- Content-tool: Add command to create missing namespaces (#6280)
- Ensure parent namespace(s) for commited content objects exist (#6246)
- Core reorg: use
api/
andintegrations/
directories (#6288) - Add ACKNOWLEDGEMENTS.md (#6289)
- Allow some integration tests to be executed on macOS (#6266)
- Build/CI: Allow renovate to update the Maven wrapper (#6286)
- Update the Docker image section of main README.md (#6267)
- Ignore jEnv .java-version file (#6268)
- Use JvmTestSuite + JacocoReport (#6231)
- Content-generator tool changes for ‘Ensure parent namespace(s) for commited content objects exist’ PR (#6265)
- Test changes for ‘Ensure parent namespace(s) for commited content objects exist’ PR (#6263)
- CLI tool cheanges for ‘Ensure parent namespace(s) for commited content objects exist’ PR (#6264)
- compatiblity-tests: Extracted test changes for namespace-validation (#6261)
- Fix maven group id in docs (#6259)
- Add helper functions to
Namespace
andContentKey()
(#6256) - Let ITs against Nessie/Quarkus send back stack traces (#6257)
- Replace
Key
withContentKey
(#6242) - New DynamoDB storage - do not pull in the Apache HTTP client (#6243)
- Add missing Gradle build scan for last check (#6254)
- Fix
AbstractDatabaseAdapter.removeKeyCollisionsForNamespaces
(#6253) - Fix wrong parameter validation override (#6241)
- Nit: remove mentions of dependabot (#6239)
- New Nessie storage model (#5641)
0.52.0 Release (March 20, 2023)¶
See Release information on GitHub.
- New storage: fix writetamp collision in C* integration tests (#6332)
- Use positive repo erase confirmation codes. (#6317)
- Forbid special ASCII chars in content keys (#6313)
- GH WF: Remove
concurrency
from PR jobs (#6314) - Replace Docker Hub with ghcr.io (#6305)
- Fix param examples for getSeveralContents() (#6302)
- Fix labeler config (#6303)
- Workaround UI issues in ghcr.io + quay.io (#6299)
- Fix docker-sync WF typo (#6296)
- GH WF to sync container repositories (#6295)
- Content-tool: Add command to create missing namespaces (#6280)
- Ensure parent namespace(s) for commited content objects exist (#6246)
- Core reorg: use
api/
andintegrations/
directories (#6288) - Add ACKNOWLEDGEMENTS.md (#6289)
- Allow some integration tests to be executed on macOS (#6266)
- Build/CI: Allow renovate to update the Maven wrapper (#6286)
- Update the Docker image section of main README.md (#6267)
- Ignore jEnv .java-version file (#6268)
- Use JvmTestSuite + JacocoReport (#6231)
- Content-generator tool changes for ‘Ensure parent namespace(s) for commited content objects exist’ PR (#6265)
- Test changes for ‘Ensure parent namespace(s) for commited content objects exist’ PR (#6263)
- CLI tool cheanges for ‘Ensure parent namespace(s) for commited content objects exist’ PR (#6264)
- compatiblity-tests: Extracted test changes for namespace-validation (#6261)
- Fix maven group id in docs (#6259)
- Add helper functions to
Namespace
andContentKey()
(#6256) - Let ITs against Nessie/Quarkus send back stack traces (#6257)
- Replace
Key
withContentKey
(#6242) - New DynamoDB storage - do not pull in the Apache HTTP client (#6243)
- Add missing Gradle build scan for last check (#6254)
- Fix
AbstractDatabaseAdapter.removeKeyCollisionsForNamespaces
(#6253) - Fix wrong parameter validation override (#6241)
- Nit: remove mentions of dependabot (#6239)
- New Nessie storage model (#5641)
0.51.1 Release (March 07, 2023)¶
See Release information on GitHub.
- DOCS PR for Maven group-ID refactoring (#6207)
- Properly sign pom-relocations (#6236)
- Allow tests to customize Nessie REST API URI resolution. (#6234)
- build/nit: Remove superfluous settings (#6232)
- Add SwaggerHub badge to README (#6233)
- Make V2 ref path-param parsing independent of
Reference
(#6224) - Add tests to validate that API v1 responses do not have v2 attributes. (#6222)
- Fix codecov-n-builds (#6230)
- V2 REST declares wrong response types in OpenAPI spec (#6211)
- Fix native images after recent rocksdb version bump (#6216)
- Symlink gradle-wrapper.jar, unignore gradle-wrapper.jar (#6219)
- upgrade GH WFs to ubuntu-22.04 (#6206)
- Maven group-ID refactoring (#6197)
- Fix:
Content.Type
is a string (#6202) - Git ignore
__pycache__
(#6201) - Compatibility tests code cleanup (#6198)
- Site: Update community page with updated chat information (#6192)
- Move Nessie speecific build code into this build (#6196)
- Nit: javadoc (#6193)
- Gradle 8 adoption for NesQuEIT (#6166)
- mac-CI: Workaround for brew-upgrade issue (#6184)
0.51.0 Release (March 06, 2023)¶
See Release information on GitHub.
- Allow tests to customize Nessie REST API URI resolution. (#6234)
- build/nit: Remove superfluous settings (#6232)
- Add SwaggerHub badge to README (#6233)
- Make V2 ref path-param parsing independent of
Reference
(#6224) - Add tests to validate that API v1 responses do not have v2 attributes. (#6222)
- Fix codecov-n-builds (#6230)
- V2 REST declares wrong response types in OpenAPI spec (#6211)
- Fix native images after recent rocksdb version bump (#6216)
- Symlink gradle-wrapper.jar, unignore gradle-wrapper.jar (#6219)
- upgrade GH WFs to ubuntu-22.04 (#6206)
- Maven group-ID refactoring (#6197)
- Fix:
Content.Type
is a string (#6202) - Git ignore
__pycache__
(#6201) - Compatibility tests code cleanup (#6198)
- Site: Update community page with updated chat information (#6192)
- Move Nessie speecific build code into this build (#6196)
- Nit: javadoc (#6193)
- Gradle 8 adoption for NesQuEIT (#6166)
- mac-CI: Workaround for brew-upgrade issue (#6184)
0.50.0 Release (February 24, 2023)¶
See Release information on GitHub.
- Strip jakarta.* annotations for Java 8 (#6172)
- Fix Nessie GH URL in docs (#6167)
- Refactor advanced configuration (#6159)
- Site: Update community links CI and README.md CI (#6165)
- Redesign telemetry support in Helm chart (#6153)
- Disable versioned-transfer ITs in macOS CI (#6164)
- Remove rocksdb.dbPath from Helm chart values (#6149)
- Fix console log level setting in Helm charts (#6158)
- Minor fixes to the build-push-images.sh script (#6155)
- mac-os/win CI - add retry for steps that regularly timeout/hang (#6152)
- Add missing jakarta.* annotations (#6150)
- Disable intTest using containers/podman for macOS CI (#6148)
- Improve nessie-ui build a little bit (#6147)
- Bump npm from 7.24.2 to 9.4.2 and nodejs from 16.14.2 to 18.4.1 (#6145)
- Rename jobs for mac+win GH workflows (#6143)
- Allow all GH WFs to become “required checks” (#6131)
- Label
model
changes withpr-integrations
(#6132) - GH workflow to smoke test Docker images (#6127)
- Fix typo in release notes (#6129)
- PR Auto labeler (#6128)
- Fix renovate configuration (#6124)
0.49.0 Release (February 17, 2023)¶
See Release information on GitHub.
- Update GH WFs to publish Java images for many platforms (#6110)
- GH uploaded artifacts retention (#6115)
- Test: Update the validation to unblock query-engine-integration-tests (#6117)
- GH workflows: prevent running a bunch of stuff on forks (#6116)
- Revert changes to Chart.yaml maintainers section (#6113)
- Fail test discovery in MultiEnvTestEngine if no environments are defined (#6108)
- Disable :nessie-compatibility-common tests on macOS (#6106)
- Disable NPM tests on Windows (#6107)
- Simplify Quarkus build configuration (#6103)
- Automatically generate Helm chart documentation (#6095)
- Add Jakarta’s ws-rs to
javax.ws.rs.*
(#6067) - Add Jakarta’s validation constraints to
javax.validation.constraints.*
(#6096) - Add Jakarta’s
@Inject
tojavax.Inject
(#6093) - Add Jakarta’s
@RequestScoped
tojavax.enterprise.context.RequestScoped
(#6092) - Add Jakarta’s
@Nullable
tojavax.annotation.Nullable
(#6088) - Add Jakarta’s
@Nonnull
tojavax.annotation.Nonnull
(#6066) - Ability to configure PVC selector labels (#6074)
- Gatling simulation for a mixed workload (#6068)
- Split ws-rs-api implementors into javax and jakarta (#6065)
- Add API v2 test for commit parents (#6073)
- Nit: replace Jetbrains not-null annotation import (#6072)
- CI: Fix PR integrations workflow (#6071)
- Make Nessie build with
javax.*
andjakarta.*
dependencies (#6064) - Remove
@ThreadSafe
annotation, nojakarta.*
counterpart (#6063) - Remove
@CheckForNull
annotation, nojakarta.*
counterpart (#6062) - Tests: let tests in nessie-compatibility-common use soft-assertions (#6061)
0.48.2 Release (February 08, 2023)¶
See Release information on GitHub.
- Fix dependencies in :nessie-compatibility-common (#6055)
- fix website link in README (#6056)
- Nit: rename build utility function to
buildForJava11
(#6053) - Reenable JVM monitoring in native images (#6052)
- Cleanup InmemoryStore after tests (#6048)
- Cleanup README.md badges (#6051)
- CI: Prevent OOM/GCLocker-issue in tests / disable Micrometer JVM-Metrics for tests (#6050)
- Clear in-memory database-adapter between REST-tests in Quarkus (#6049)
0.48.1 Release (February 06, 2023)¶
See Release information on GitHub.
- Release-WF: Fix openapi yaml attachment (#6040)
0.48.0 Release (February 06, 2023)¶
See Release information on GitHub.
- Produce NessieBadRequestException when paging is not available (#6020)
- Quarkus builds: modernize & simplify (#6019)
- Expose definitive Nessie API version to tests (#6021)
- CI: Gradle cache read-only for snapshot publication workflow (#6018)
- REST v2: return parent commit IDs in
CommitMeta.getParentCommitHashes
(#6001) - REST API v2: get-multiple-namespaces w/ option for direct children (#6010)
- Quarkus-nit: build script cleanup (#6016)
- Refactor API v2 reference resolution logic into a utility class (#6012)
- Quarkus: make
QuarkusBuild
not caching (#6015) - Add missing explicit rename-table test (#6008)
- Do not memoize CommitMeta.properties, it is derived (#6006)
- CI: Do not cache Python stuff (#6004)
- Add support for API v2 to the compatibility test framework (#6000)
- Add java client-based test for Entry.getContentId() (#5996)
- UI: Sort properties in commit details view (#5987)
- Allow retrieval of
Content
withget-entries
for API v2 (#5985) - CI: fix helm-testing action refs (#6005)
- CI: Helm testing (#6003)
- Revert “Make
QuarkusBuild
cacheable” (#5997) - Nessie client doc improvements (#5992)
- Add effective-reference to get-entries, diff and modify-namespace responses (#5984)
- Build: Fix task dependency warnings for code coverage (#5990)
- Let content-generator use REST API v2 (#5948)
- REST API v2 : Let ‘get-content(s)’ return the reference (#5947)
- Minor convenience methods
getElementsArray()
toContentKey
+Namespace
(#5983) - Nit: Prevent java compilation warning (#5978)
- Re-make Gatling sims debuggable after the move to Gradle (#5972)
- Gatling Simulations - error out Nessie actions by default (#5971)
- Helm: Add storage class for RockDB PVC (#5981)
- Fix
MathAbsoluteNegative
inNonTransactionalDatabaseAdapter
(#5979) - Make
QuarkusBuild
cacheable (#5974) - Add
@JsonView
really everywhere (#5965) - Add PVC for RocksDB in Nessie Helm chart (#5952)
- Let Gatling simulations use Nessie API v2 (#5970)
- Build: Make
QuarkusGenerateCode
tasks cacheable (#5973) - Nit:
var
->val
in quarkus builds (#5975) - Remove usage of deprecated
StreamingUtil
(#5954) - Nit: typo (#5951)
- Add
@JsonView
everywhere (#5953) - REST v2: Correct namespace key evaluation for delete + get-multiple namespaces (#5946)
- Minor: immutables contstructors for
Branch
+Tag
+Detached
(#5944) - Replace use of unpaged
get()
when listing references from SQL extensions (#5950) - Add utility method
CommitResponse.toAddedContentsMap()
(#5945) - Minor Namespace.isEmpty() optimization (#5943)
- Use the Smallrye OpenAPI Gradle plugin (#5936)
- Add
.scalafmt.conf
for IntelliJ (#5942) - Update merge “no hashes” error message (#5938)
- Separate version catalog for
buildSrc/
(#5935) - Re-add batched access checks & replace
j.s.AccessControlException
(#5930) - Move Jersey test dependencies to where they belong to (#5933)
- Refactor Service/REST/API testing (#5924)
- Unify
*ApiImplWithAuthorization
and “base”*ApiImpl
classes (#5927) - REST v2 - fetch HEAD if hashOnRef is not specified (#5921)
- Prepare protocol independent pagination support for diff, get entries, commit log, get all refs (#5901)
- Just rename test classes (#5920)
- DatabaseAdapterExtension: configure database-adapter via a nested test class’ parent context (#5919)
- Bump Spark to 3.1.3/3.2.3/3.3.1 (#5909)
- CI/Win: exclude UI tests (#5908)
0.47.1 Release (January 20, 2023)¶
See Release information on GitHub.
- Fix Jacoco reporting in Nessie Quarkus projects (#5902)
- Return latest state of deleted reference (#5905)
- Disable JVM monitoring in native images (#5903)
0.47.0 Release (January 18, 2023)¶
See Release information on GitHub.
- Use custom CDI extension for injecting Principals (#5883)
- Update V2 commit-response to include generated content-IDs (#5880)
- Add content-ID to REST API v2 entries endpoint (#5879)
- Gatling: properly prefer
sim.duration.seconds
oversim.commits
(#5847) - Spark extensions tests - no CID for new content & common-ancestor (#5877)
- Content generator: no CID for new content, properly use expectedContent+CID for existing (#5876)
- Deltalake: no CID for new content, properly use expectedContent+CID for existing (#5875)
- Quarkus & JAX-RS tests - no CID for new content & common-ancestor (#5874)
- Do not expose junit-jupiter-engine via test artifacts (#5870)
- Gatling: allow running the Gatling simulations against an external Nessie (#5848)
- Testing: unify container start retry mechanism (#5844)
- Testing/benchmarking: fix configuration for persist-bench via system properties (#5843)
- Add macOS + Windows build check badges to README.md (#5849)
- Use REST API v2 in Gatling simulations (#5846)
- Testing: use full Quarkus listen-URL instead of just the port (#5845)
- GH WF: simplify some steps (#5869)
0.46.7 Release (January 12, 2023)¶
See Release information on GitHub.
- Expose Nessie API version to custom client builders in tests (#5839)
0.46.5 Release (January 12, 2023)¶
See Release information on GitHub.
- CI: Fix jobs.if condition for mac+win workflows (#5840)
- nessie-quarkus-cli/jacoco: use a fresh jacoco data file (#5833)
- CI: cross-check macOS + Windows (#5705)
- Validate runtime parameters in service implementations. (#5828)
- Testcontainers: retry container launch (#5831)
- Test/CI: Introduce test parallelism constraints for test tasks (#5824)
- Actually assign
main
in AbstractContentGeneratorTest (#5830) - Exclude compatibility tests from code-coverage (#5826)
- Disable Deltalog integration tests on Windows (#5825)
- Disable Deltalog integration tests on macOS (#5822)
- Disable tests on projects using testcontainers on Windows (#5817)
- Disable quarkus-jacoco on
:nessie-quarkus-cli
(#5820) - Fix newline when testing under Windows (#5814)
- model/test: Platform independent line separator (#5815)
- Testing: add logging for projects using testcontainers (#5813)
- Testing: allow
test.log.level
in compatibility tests (#5812) - Nit: compatibility-tests: remove wrong comment (#5816)
- Disable tests on Windows that have strict time requirements (#5807)
- Disable compatibility tests on Mac (#5805)
- GC/Tests: Ignore schema-less base-uri-test on Windows (#5804)
- Prevent using the Minio Extension on non-Linux OS (#5803)
- Proper Path handling in GC tool CLI (#5799)
- Make LocalMongoResource a bit more resilient (#5802)
- Testcontainers: increase number of start attempts from 1 to 5 (#5801)
- Disable Quarkus dev services for tests (#5800)
- Proper Path handling in IcebergContentToFiles (#5798)
- Proper Path handling in TestNessieIcebergViews (#5797)
- Fix ZIP importer handle leak (#5796)
- CI: Fix results-upload for PRs (#5795)
- CI: Remove deprecated
::set-output
(#5794) - Nit: Suppress ClassCanBeStatic warnings (#5793)
0.46.3 Release (January 06, 2023)¶
See Release information on GitHub.
- Remove grep -v from the HISTORY.rst generation script (#5778)
- Fix MultiEnvTestFilter to pass inner test classes (#5775)
- Make OlderNessieServersExtension inject Nessie URIs (#5770)
- Remove duplicate startHash call in
HttpGetCommitLog
(#5756)
0.46.2 Release (December 28, 2022)¶
See Release information on GitHub.
- Add validation annotations to backend service interfaces (#5740)
- Docs: Update README.md for 0.46.0 release (#5734)
0.46.0 Release (December 20, 2022)¶
See Release information on GitHub.
- Make generated OpenAPI type names more readable (#5732)
- Add serialized form tests for
CommitMeta
v2 (#5731) - Add v2 attributes to
CommitMeta
(#5706) - CI: No duplicate checkstyle task runs (#5703)
- Allow publishing Gradle build scans from CI (#5701)
- Remove legacy Spark extensions (#5704)
- Fix flaky TestKeyGenerator (#5702)
- Support merge/transplant message overrides (#5686)
- Add common ancestor commit in merge tests (#5696)
- Add global test timeout for versioned/persist/ (#5690)
- Add DeleteContent command (#4773)
- Expose updated reference data in java client APIs (#5670)
- Fix OpenAPI docs for the required “expected hash” parameters (#5665)
- Expose MergeBehavior to java clients (#5682)
- Expose
CommitResponse
in java client API (#5673) - Migrate
FetchOption
to themodel
package (#5667) - Add README.md to model (#5668)
- Use API v2 in GC CLI (#5660)
- Add pagination params to the Diff API v2 (#5452)
- Replace deprecated native build parameters (#5662)
- Move Graal/native registration to nessie-quarkus-common (#5661)
- Increase gradle memory in integration tests (#5654)
- Remove unused Jaeger properties (#5647)
- Validate ID for explicitly created Namespaces (#5644)
- Gradle: no longer run test classes concurrently (#5653)
- Nit: remove TODO (#5652)
- Fix GetReferenceParams description for API v2 (#5639)
- Import: move repo-setup part to nessie-versioned-transfer (#5640)
- Export using reference/commit-log scanning (#5635)
- Switch nessie-client to use OpenTelemetry (#5607)
- Version-store tests: use proper Put operations (#5614)
- DatabaseAdapter/identify-heads-and-forks: Allow commit-log scanning (#5638)
- Version-store tests: Adjust test to currently undetected transplant conflict (#5613)
- DatabaseAdapterExtension: Allow adapter-configurations on fields (#5637)
- Export: store exporting Nessie version and show during import (#5636)
- Adopt REST tests to stricter validations (#5612)
- PersistVersionStore: expose missing additional-parents (#5633)
- Export/import: explicit tests for exporter/importer implementations (#5631)
- DatabaseAdapter/identifyHeadsAndForks: Don’t return
NO_ANCESTOR
as fork point (#5632) - Export/import: remove unused functionality from BatchWriter (#5630)
- Rely on new
NessieVersion
in CLI tools (#5629) - Allow
-
as a reference name in v2 REST paths (#5618) - Export/import: move file related code to separate package (#5628)
- Use soft-assertions in jaxrs-tests (#5610)
- Adopt versioned-tests to not set cid for “new”
Content
; minor refactoring for merge/transplant (#5611) - Deprecate commit lists in merge-results (#5599)
- Add Nessie version into nessie-model.jar (#5609)
- Minor verstion-store commit-log test refactoring (#5604)
- Minor merge test enhancements (#5603)
- Add “diff test” with a key “in between” (#5602)
- Add a some test cases for “reference not found” scenarios (#5601)
- Factory methods for EntriesResponse.Entry + DiffResponse.Entry + MergeResult.KeyDetails (#5600)
- Add expected content to v2 REST update namespace (#5598)
- Switch to OpenTelemetry in Nessie Quarkus server (#5605)
- Minor code clean-up in client-side Namespace operations (#5594)
- Fix v2 URL path mapping for getReferenceByName (#5596)
- Add REST API v2 (#5004)
- Fix
@Parameter
annotations inDiffParams
(#5589) - Build UI against Nessie API v1 from 0.45.0 (#5587)
0.45.0 Release (November 29, 2022)¶
See Release information on GitHub.
- Fix OpenAPI spec for DiffApi (#5584)
- Content generator: allow functional key patterns and more (#5575)
- CI: auto-destruct spawned Nessie Quarkus runner JVM (#5583)
- Scala/Gradle: keep Scala compiler alive, bump Scala 2.13 to 2.13.10 (#5576)
- Fix BaseExceptionMapper’s NPE when an Exception’s message is null (#5563)
- Add RefreshContent command (#5551)
- Fix erasing repo descriptions (#5557)
- Perftest: allow passing system properties to launched Nessie (#5556)
- Transfer: completely abstract
DatbaseAdapter
from core export/import (#5555) - Remove dependency to database-adapter type from
ImportResult
(#5553) - Deprecate
VersionStore.getRefLog()
(#5554) - Nessie export/import: update abstraction for file-typed stuff (#5545)
- Nessie CLI: rename
call()
tocallWithDatabaseAdapter()
(#5540) - Nessie import: check export version (#5543)
- Nessie CLI: Update wording for in-memory warning (#5542)
- Nessie/Quarkus: use
Instance<DatabaseAdapter>
(#5541) - Update verification code for Nessie CLI erase-erpository (#5539)
- Add content-info Quarkus CLI command (#5501)
- Reduce memory pressure during Quarkus CLI integration tests. (#5530)
- Bump+change Quarkus builder image to Mandrel + 22.3 (#5526)
- renovate: put python back on weekly schedule (#5519)
- Docs: Update Spark Python/Java API docs (#5517)
- Fix latest Nessie and Iceberg versions in side docs (#5499)
- Refactor Nessie-Jax-RS extension a little bit (#5486)
- renovate: fix fileMatch regexp (#5489)
- fix renovate python requirements file pattern (#5481)
- Proper put-update-operation for namespace-update (#5484)
- Move tests from o.p.jaxrs to o.p.jaxrs.tests (#5483)
- Fix a few checkstyle warnings (#5482)
- Update protobuf plugin to 0.9.1 (#5457)
- Documentation accommodating new version format of Iceberg and Nessie artifacts (#5371)
- Pull
ProtobufHelperPlugin
fromgradle-build-plugins
(#5456) - Refactor some test code to soft-assertions (#5446)
- Move Merge/Transplant classes to the api.v1.params package (#5435)
- Move old API classes into the api.v1 package (#5419)
- Move some tests from db-adapter test code to verstion-store test code (#5445)
- Support method-level NessieApiVersions annotations (#5436)
- Introduce multi-version API test framework (#5420)
- Extract service-side interfaces for RefLog and Namespace services (#5418)
- Extract common java client builder code (#5411)
- Extract service-side interfaces for client-facing services (#5412)
- Remove OpenAPI spec properties from build script. (#5413)
- Build UI against Nessie API v1 from 0.44.0 (#5408)
- Refactor TestAuthorizationRules (#5399)
- Java 11 HttpClient (#5280)
- Testing/nit: Logging for :nessie-s3minio ITs (#5398)
- Add non-trivial tests for assign branch/tag operations (#5395)
- Fix version in the Nessie Helm Chart (#5392)
- Extract a multi-env test engine into a module. (#5339)
- Move Nessie Client construction into a JUnit5 extension (#5370)
- Record next development version (#5387)
- GH workflows: Add missing
cache-read-only: true
(#5385) - GH create release WF: next version not properly recorded (#5386)
0.44.0 Release (October 18, 2022)¶
See Release information on GitHub.
- Ninja: fix create-release WF
- Ninja: fix GH env reference
- Update README mentioning Iceberg 1.0 (#5384)
- Add Dan + Vladimir to devs list (#5381)
- GH release WF: default to “minor” version bump (#5380)
- GH release WF: Fix wrong task name (#5379)
- Automatically update release text files (#5377)
- GH release WF - fix log exclusion + log filter for rel-notes (#5378)
- Nessie GC: Docs (#5209)
- Nessie GC: Command line tool (#5227)
- Nessie GC: Iceberg functionality (#5207)
- Avoid direct dependency on iceberg-bundled-guava (#5366)
- quarkus-server tests use dynamic port from env (#5352)
- Fix missing placeholder for Preconditons.checkState (#5360)
- fix GH workflows still mentioning maven (#5353)
- Remove httpClient param from AbstractRest.init (#5354)
- Update pretty-ms to 8.x (#5341)
- DynamoDB related test changes (#5338)
- Split unsquashed merge tests into dedicated test methods (#5328)
- Update testing-library-react to 13.x (#5334)
- Bump actions/checkout from v3 to v3.1.0 (#5335)
- Update material-ui to mui 5.x.x (#5326)
- nessie-client/test: compress responses for all relevant HTTP methods (#5323)
- Fix micrometer path replacement patterns (#5321)
- Renovate: labels for java/javascript/python (#5318)
- Revert protobuf to 3.21.6 (#5317)
- Renovate: limit to 2 PRs per hour (#5319)
- Isolate http-level test from java client-level tests (#5314)
- Skip newer-java workflow on forks (#5294)
- Nessie client tests: Replace JDK’s HTTP server w/ Jetty (#5285)
- Move internal classes of the Nessie HTTP client (#5286)
- GH/WF: Use
temurin
instead of ‘zulu` (#5289) - Nessie-client tests: do not compile w/ older Jackson versions (#5287)
- Test Nessie client with Java 8 (#5284)
- Integrate Jackson-version tests into Gradle build (#5279)
- Migrate to Gradle version catalogs (#5167)
- Unify Postgres container version declaration for tests
- Migrate from dependabot to renovate (#5166)
- Testing pre-requisites for Nessie GC: Two S3 testing projects (#5142)
- Fix iceberg verison on web site (#5222)
- Java 19 testing (#5221)
- Automatic patch releases (#5214)
- Unsupport 0.30.x versions (#5212)
- WF: Remove Maven part (#5213)
- Nessie GC: JDBC Live-Set-Repository (#5208)
- Allow Hadoop Spark config in tests (#5206)
- Nessie GC: mark & sweep (
gc-base
module only) (#5144) - Slight build scripts change for Java11+ target compat (#5203)
- Fix test failure caused by #5147 (#5204)
- No longer write ref-log entries for commit/merge/transplant (#5147)
- Schedule dependabot for npm + pip less frequently (#5201)
0.43.0 Release (September 15, 2022)¶
Rolling upgrades from versions before 0.40.0 are not supported!
- Prepare for Nessie GC
- Nessie export/import functionality
- Use Graal 22.2-java17 for native images
- Several test and build improvements
0.42.0 Release (August 26, 2022)¶
Rolling upgrades from versions before 0.40.0 are not supported!
- Key list creation fixes
- Pluggable content types
0.41.0 Release (August 5, 2022)¶
Rolling upgrades from versions before 0.40.0 are not supported!
- Do not persist and expose attached content metadata
- Fix issue when looking up key in an open-addressing-key-list
0.40.3 Release (August 1, 2022)¶
Rolling upgrades from versions before 0.40.0 are not supported!
- Remove Quarkus-BOM dependency from non-Quarkus projects
0.40.2 Release (August 1, 2022)¶
Rolling upgrades from versions before 0.40.0 are not supported!
- Dependency issues fixed
0.40.1 Release (July 25, 2022)¶
Rolling upgrades from versions before 0.40.0 are not supported!
- Fix key-lists issue resulting in server-errors (
ArrayIndexOutOfBoundsException
)
0.40.0 Release (July 22, 2022)¶
Rolling upgrades from earlier versions are not supported!
- Support Spark 3.1 (Scala 2.12), Spark 3.2 (Scala 2.12 + 2.13), Spark 3.3 (Scala 2.12 + 2.13)
- Support Iceberg 0.14.0
- Nessie Spark SQL extensions: handle timestamps w/ time-zones
- Nessie Spark SQL extensions: fix handling of
USE
d references forCREATE/ASSIGN BRANCH/TAG
- Detailed merge/transplant result to allow inspection of conflicts
- Merge/transplant optionally allow “force-keep” & “force-merge” of conflicting content-keys
- Iceberg table metadata stored in Nessie
- Improvements to REST error handling
- Performance improvements when there are many content-keys
- Hard limit on content-key length (max 20 elements, total 500 characters)
- Prevent (accidental) deletion of default branch
- Improved usage of automatic paging via
NessieApi
- Improvements to Nessie server health checks
- Add rolling-upgrade test suite in regular CI
- Daily testing against Java 17 + newer
- Switched to Java 17 in native images
- Build switched from Maven to Gradle
0.30.0 Release (May 13, 2022)¶
- Add commit-ID to KeyListEntry when writing new key-lists
- Do not process old key-lists when retrieving values
- Helm: Fix k8s version detection in ingress template
- Database-adapter: commit optimizations
- Remove the configurable default for the configurable values for getDefaultMaxKeyListSize
- Dynamo/Mongo/TX: use bulk/batch requests where possible
0.29.0 Release (May 5, 2022)¶
- Spark SQL: Configure ref.hash for NessieCatalog only when explicitly requested
- Escape all column names in SQL DML+DDL statements
- Use hashOnRef when fetching Namespaces
- Helm: Add ingress support for Kubernetes >=1.22
- Fix CockroachDB transaction-retry behavior
0.28.0 Release (April 26, 2022)¶
- Generate unique content IDs for explicitly created namespaces
- Fix patterns for metrics
- Various test improvements (CI + build)
- Various minor code fixes (fixes for errorprone warnings)
0.27.0 Release (April 14, 2022)¶
- Support for Namespace properties
- Make NessieContentGenerator extensible
0.26.0 Release (April 12, 2022)¶
Rolling upgrades from an older Nessie release to 0.26.0 or newer are not supported.
- Remove global state for Iceberg tables + views
- Internal optimizations in database adapters, version store and API endpoints
- Change ‘marker’ character to indicate
.
in namespace/table identifiers from ASCII 0 to\u001D
- Opt-in to force-merge or not merge specific content keys (also for transplant)
- Squash merged and transplanted commits by default (with opt-out)
0.25.0 Release (April 6, 2022)¶
- Nessie Quarkus Server can use Postgres as its backend database
- Explicitly define behavior of multiple commit-operations in a commit
- Load correct view metadata for a given ref
0.24.0 Release (March 31, 2022)¶
- Prevent explicit creation of empty namespaces
- Add content-id to
BatchAccessChecker.canReadContentKey()
0.23.1 Release (March 23, 2022)¶
- Support Namespaces
- CI “perf tests” improvements
- SQL Extension: Fix Create reference from a hash on non-default reference
- Enhance authorization checks
- Support custom annotations on Nessie Helm service
0.23.0 Release (March 23, 2022)¶
(not properly released)
0.22.0 Release (March 11, 2022)¶
- Improve performance of
getValues
- Global-log compaction
- Store-level maintenance CLI
- Reduce number of tags for micrometer
- Grafana Dashboard for Nessie service
- Add new commands to generate-content tool
0.21.2 Release (March 2, 2022)¶
- Fix serialization issue
0.21.1 Release (March 2, 2022)¶
- (no user visible changes)
0.21.0 Release (March 1, 2022)¶
- Add tracing to database-adapter internals
- Introduce compatibility and upgrade tests
- Refactor StreamingUtil class
- Support for Spark 3.1 + 3.2.1 in Nessie SQL extensions
- Proper usage of commit-id in Spark SQL extensions
- Add DELETE_DEFAULT_BRANCH access check
0.20.1 Release (February 17, 2022)¶
- (no user visible changes)
0.20.0 Release (February 16, 2022)¶
- Enable metrics for MongoDB by default
- Make try-loop-state configurable and add metrics
- Reorganize routes in UI
- Improve error reporting in Nessie Java client
- Various test improvements
0.19.0 Release (February 7, 2022)¶
- Reads using “detached” commit-ids w/o specifying a branch or tag name
- Bump Nessie client version in Nessie Spark-Extensions
- Support for Iceberg views (experimental)
- Diff endpoint supports named-references + commit-on-reference as well
- Add filtering for ref-log
- Rework and simplification of the Nessie UI code
0.18.0 Release (January 13, 2022)¶
- Add reflog support
- Uses commit-timestamp “now” for merged/transplanted commits
- Add new reflog command to the CLI
- Add support for Python 3.10
- Drop support for Python 3.6
0.17.0 Release (December 08, 2021)¶
- Rename ‘query_expression’ query param to ‘filter’
- Rename ‘max’ query param to ‘maxRecords’
- Rename ‘fetchAdditionalInfo’ query param to ‘fetch’ for better extensibility
0.16.0 Release (December 03, 2021)¶
- Mark optional fields as @Nullable / add validation for required fields in param classes
- Add CEL-filter to get-all-references
- Fix NPE for unchanged operation for fetching commit log with additional metadata
- Allow CEL-filtering on optional operations in get-commit-log
0.15.1 Release (December 01, 2021)¶
- Fix wrongly placed validation annotation
0.15.0 Release (December 01, 2021)¶
- Enhance commit log to optionally return original commit operations
- Optionally return commits ahead/behind, HEAD commit-meta, commit count, common ancestor for named references
- Add missing REST endpoint to retrieve diff between two references
- Web UI improvements
0.14.0 Release (November 12, 2021)¶
- Updated
IcebergTable
to track more information - UI dependencies cleanup
- OpenAPI/REST API cleanup (breaking change)
0.12.1 Release (November 3, 2021)¶
- Test code improvements
- Swagger examples fixes
- Web UI improvements
- Faster local builds w/
./mvnw -Dquickly
0.12.0 Release (October 25, 2021)¶
- Specialize and document Nessie exceptions
- Adopt Helm chart with new Nessie server settings
- Bump to GraalVM 21.3
0.11.0 Release (October 20, 2021)¶
- Various doc + site improvements
- Fix Nessie’s representation of global and on-reference state (Iceberg tables)
- Fix CLI log -n option
- Spark SQL extension improvements
0.10.1 Release (October 8, 2021)¶
- Spark SQL extension changes
- Various (Open)API and client (Java, Python) implementation changes to prepare for better backwards compatibility.
- JUnit extension based test support against different database/store types and configurations
- Unified version-store implementations into a part w/ the Nessie logic and a tier implementing database access (MongoDB, DynamoDB, RocksDB, PostgreSQL).
- Remove JGit
0.9.2 Release (August 26, 2021)¶
- Cleanup & fixes to OpenAPI examples, for Swagger UI
- Update Deltalake client to use version 1.0.0
- Drop Deltalake support for Spark 2
- Remove Hive-Metastore bridge
- Preparations for backwards-compatible Client-API
- Spark SQL Extensions: Introduce
IF NOT EXISTS
forCREATE BRANCH
/CREATE TAG
- Spark SQL Extensions: Updates to work with Iceberg 0.12.0
0.9.0 Release (August 9, 2021)¶
- Support for the upcoming Iceberg
0.12.0
release for both Spark 3.0 + 3.1 - Add docs for Nessie’s metadata authorization
- Add SPI for Nessie authorization with Reference implementation
- Create Helm chart for Nessie
0.8.3 Release (July 19, 2021)¶
- Fix issue in spark sql extensions
- Python CLI: Fix ser/de of DeltaLakeTable when listing contents
0.8.2 Release (July 15, 2021)¶
- Add JAX-RS server implementation based on Glassfish/Jersey/Weld for integration testing in Iceberg
- REST-API change: only accept named-references
- REST-API change: support time-travel on named-references
- REST-API change: Server-side commit range filtering
- OpenAPI: more explicit constraints on parameters
- OpenAPI: include OpenAPI yaml+json files in nessie-model artifact
- Remove already deprecated methods from ContentsApi
- Commit-log filtering on all fields of CommitMeta
- Use “Common Expression Language” for commit-log and entries filtering
- Spark-extensions for Iceberg
- Prepare for multi-tenancy
- Gatling support + simulations
- Python CLI: Fix ser/de of DeltaLakeTable when listing contents
0.7.0 Release (June 15, 2021)¶
- Server-side filtering improvements for entries-listing and log-listing
- Distinguish between author & committer in the Python CLI
- Allow setting author when committing via Python CLI
- Loosen pins for client install on Python cli
- Fix edge case when merging using in memory + jgit stores
- Gradle plugin improvements
- (Development) change to Google Code Style, add spotless plugin
- (CI) Add OWASP Dependency Check
0.6.1 Release (May 25, 2021)¶
- Gradle plugin improvements
0.6.0 Release (May 12, 2021)¶
- TreeApi.createReference() + commitMultipleOperations() return commit information
- Iceberg GC actions and a process to execute GC algorithm
0.5.1 Release (April 9, 2021)¶
- Fix Gradle plugin (non-deterministic order of dependencies causing failures)
- Fix Web-UI
0.5.0 Release (April 8, 2021)¶
- Iceberg table GC support
- Consistency fixes under high load
- Breaking changes to the backend to support richer commit metadata and data types
- Performance, metrics and tracing improvements
- Gradle plugin improvement for incremental builds
0.4.0 Release (March 8, 2020)¶
- rename base package to org.projectnessie
- NessieClient is now an interface and some easier builders
- initial implementation of GC algorithm
- major refactor of tiered classes for better modularity and extensibility
- observability improvements including better DynamoDB metrics and opentracing support for the client
0.3.0 Release (December 30, 2020)¶
- 118 commits since 0.2.1
- Replace jax-rs client with one based on HttpURLConnection
- Update Quarkus to 1.10.5
- Improvements to Server including better UI routing, validation checks on inputs etc
- Various improvements to python client and cli. Including python3.9 support
0.2.1 Release (October 30, 2020)¶
- Fix missing dateutil requirement for pynessie install
- Address path discovery in Gradle plugin (for testing in external integrations)
0.2.0 Release (October 29, 2020)¶
- Update Nessie CLI commands to better match
git
syntax - Update REST Apis to be more consistent and better
- Add support for merge & cherry-pick in DynamoDB storage backend
- Add WebUI
- Introduce new DynamoDB optimizations to support faster log and entry retrieval
- Update to Quarkus 1.9.1
- Expose the new Store interface for low level storage implementations
- Introduce Quarkus Gradle runner plugin for easier third-party testing (e.g. Iceberg)
- Enable swagger-ui by default in Nessie service
0.1.0 Release (October 1, 2020)¶
- Initial release