Highlights
A feature + bug-fix release. Drop-in replacement for 14.1.5.
New
- Set an expiration date when creating a share.
doShare/doShareAsyncgained an optionalLocalDate expireDateparameter (issue #76). The existing overloads are unchanged, so this is fully backwards compatible.
Fixes
- Empty results no longer crash JSON parsing. The OCS API serializes empty collections as
[]instead of{}, which previously threw aMismatchedInputException(e.g. when listing users or groups on an empty result). Empty collections now parse correctly (issue #112). - File uploads work on non-standard ports. Preemptive authentication now uses the configured port, so servers reachable on a non-standard port (e.g. behind a reverse proxy) no longer issue an auth challenge that a streamed upload could not retry (issue #112).
Testing / CI
- Integration tests can now auto-provision a throw-away Nextcloud server via Testcontainers when Docker is available, and run on every push and pull request in GitHub Actions. The full suite passes against a clean Nextcloud 31.
Requires Java 11+.