v1.19.0
Changelog for reva 1.19.0 (2022-06-16)
The following sections list the changes in reva 1.19.0 relevant to
reva users. The changes are ordered by importance.
Summary
- Fix #2693: Support editnew actions from MS Office
- Fix #2588: Dockerfile.revad-ceph to use the right base image
- Fix #2216: Make hardcoded HTTP "insecure" options configurable
- Fix #2860: Use
eos-all
parent image - Fix #2499: Removed check DenyGrant in resource permission
- Fix #2712: Update Dockerfile.revad.eos to not break the image
- Fix #2789: Minor fixes in cephfs and eosfs
- Fix #2285: Accept new userid idp format
- Fix #2608: Respect the tracing_service_name config variable
- Fix #2841: Refactors logger to have ctx
- Fix #2759: Made uid, gid claims parsing more robust in OIDC auth provider
- Fix #2842: Fix download action in SDK
- Fix #2555: Fix site accounts endpoints
- Fix #2675: Updates Makefile according to latest go standards
- Fix #2572: Wait for nats server on middleware start
- Chg #2596: Remove hash from public link urls
- Chg #2559: Do not encode webDAV ids to base64
- Chg #2561: Merge oidcmapping auth manager into oidc
- Enh #2698: Make capabilities endpoint public, authenticate users is present
- Enh #2813: Support custom mimetypes in the WOPI appprovider driver
- Enh #2515: Enabling tracing by default if not explicitly disabled
- Enh #160: Implement the CS3 Lock API in the EOS storage driver
- Enh #2686: Features for favorites xattrs in EOS, cache for scope expansion
- Enh #2494: Use sys ACLs for file permissions
- Enh #2522: Introduce events
- Enh #2685: Enable federated account access
- Enh #2801: Use functional options for client gRPC connections
- Enh #2921: Use standard header for checksums
- Enh #2480: Group based capabilities
- Enh #1787: Add support for HTTP TPC
- Enh #2560: Mentix PromSD extensions
- Enh #2613: Externalize custom mime types configuration for storage providers
- Enh #2163: Nextcloud-based share manager for pkg/ocm/share
- Enh #2696: Preferences driver refactor and cbox sql implementation
- Enh #2052: New CS3API datatx methods
- Enh #2738: Site accounts site-global settings
- Enh #2672: Further Site Accounts improvements
- Enh #2549: Site accounts improvements
- Enh #2488: Cephfs support keyrings with IDs
- Enh #2514: Reuse ocs role objects in other drivers
- Enh #2752: Refactor the rest user and group provider drivers
- Enh #2946: Make user share indicators read from the share provider service
Details
-
Bugfix #2693: Support editnew actions from MS Office
This fixes the incorrect behavior when creating new xlsx and pptx files, as MS Office supports
the editnew action and it must be used for newly created files instead of the normal edit action. -
Bugfix #2588: Dockerfile.revad-ceph to use the right base image
In Aug2021 https://hub.docker.com/r/ceph/daemon-base was moved to quay.ceph.io and the
builds for this image were failing for some weeks after January. -
Bugfix #2216: Make hardcoded HTTP "insecure" options configurable
HTTP "insecure" options must be configurable and default to false.
-
Bugfix #2860: Use
eos-all
parent image -
Bugfix #2499: Removed check DenyGrant in resource permission
When adding a denial permission
-
Bugfix #2712: Update Dockerfile.revad.eos to not break the image
-
Bugfix #2789: Minor fixes in cephfs and eosfs
-
Bugfix #2285: Accept new userid idp format
The format for userid idp changed and
this broke the ocmd
tutorial
This PR makes the provider authorizer interceptor accept both the old and the new string
format. -
Bugfix #2608: Respect the tracing_service_name config variable
-
Bugfix #2841: Refactors logger to have ctx
This fixes the native library loggers which are not associated with the context and thus are not
handled properly in the reva runtime. -
Bugfix #2759: Made uid, gid claims parsing more robust in OIDC auth provider
This fix makes sure the uid and gid claims are defined at init time, and that the necessary
typecasts are performed correctly when authenticating users. A comment was added that in case
the uid/gid claims are missing AND that no mapping takes place, a user entity is returned with
uid = gid = 0. -
Bugfix #2842: Fix download action in SDK
The download action was no longer working in the SDK (used by our testing probes); this PR fixes
the underlying issue. -
Bugfix #2555: Fix site accounts endpoints
This PR fixes small bugs in the site accounts endpoints.
-
Bugfix #2675: Updates Makefile according to latest go standards
Earlier, we were using go get to install packages. Now, we are using go install to install
packages -
Bugfix #2572: Wait for nats server on middleware start
Use a retry mechanism to connect to the nats server when it is not ready yet
-
Change #2596: Remove hash from public link urls
Public link urls do not contain the hash anymore, this is needed to support the ocis and web
history mode. -
Change #2559: Do not encode webDAV ids to base64
We removed the base64 encoding of the IDs and use the format ! with a
!
delimiter. As a reserved delimiter it is URL safe. The IDs will be XML and JSON encoded as
necessary. -
Change #2561: Merge oidcmapping auth manager into oidc
The oidcmapping auth manager was created as a separate package to ease testing. As it has now
been tested also as a pure OIDC auth provider without mapping, and as the code is largely
refactored, it makes sense to merge it back so to maintain a single OIDC manager. -
Enhancement #2698: Make capabilities endpoint public, authenticate users is present
-
Enhancement #2813: Support custom mimetypes in the WOPI appprovider driver
Similarly to the storage provider, also the WOPI appprovider driver now supports custom mime
types. Also fixed a small typo. -
Enhancement #2515: Enabling tracing by default if not explicitly disabled
-
Enhancement #160: Implement the CS3 Lock API in the EOS storage driver
-
Enhancement #2686: Features for favorites xattrs in EOS, cache for scope expansion
-
Enhancement #2494: Use sys ACLs for file permissions
-
Enhancement #2522: Introduce events
This will introduce events into the system. Events are a simple way to bring information from
one service to another. Readpkg/events/example
and subfolders for more information -
Enhancement #2685: Enable federated account access
-
Enhancement #2801: Use functional options for client gRPC connections
This will add more ability to configure the client side gRPC connections.
-
Enhancement #2921: Use standard header for checksums
On HEAD requests, we currently expose checksums (when available) using the
ownCloud-specific header, which is typically consumed by the sync clients.This patch adds the standard Digest header using the standard format detailed at
https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Digest. This is e.g. used
by GFAL/Rucio clients in the context of managed transfers of datasets. -
Enhancement #2480: Group based capabilities
We can now return specific capabilities for users who belong to certain configured groups.
-
Enhancement #1787: Add support for HTTP TPC
We have added support for HTTP Third Party Copy. This allows remote data transfers between
storages managed by either two different reva servers, or a reva server and a Grid
(WLCG/ESCAPE) site server.Such remote transfers are expected to be driven by
GFAL, the underlying library used by
FTS, and Rucio.In addition, the oidcmapping package has been refactored to support the standard OIDC use
cases as well when no mapping is defined. -
Enhancement #2560: Mentix PromSD extensions
The Mentix Prometheus SD scrape targets are now split into one file per service type, making
health checks configuration easier. Furthermore, the local file connector for mesh data and
the site registration endpoint have been dropped, as they aren't needed anymore. -
Enhancement #2613: Externalize custom mime types configuration for storage providers
Added ability to configure custom mime types in an external JSON file, such that it can be reused
when many storage providers are deployed at the same time. -
Enhancement #2163: Nextcloud-based share manager for pkg/ocm/share
Note that pkg/ocm/share is very similar to pkg/share, but it deals with cs3/sharing/ocm
whereas pkg/share deals with cs3/sharing/collaboration -
Enhancement #2696: Preferences driver refactor and cbox sql implementation
This PR uses the updated CS3APIs which accepts a namespace in addition to a single string key to
recognize a user preference. It also refactors the GRPC service to support multiple drivers
and adds the cbox SQL implementation. -
Enhancement #2052: New CS3API datatx methods
CS3 datatx pull model methods: PullTransfer, RetryTransfer, ListTransfers Method
CreateTransfer removed. -
Enhancement #2738: Site accounts site-global settings
This PR extends the site accounts service by adding site-global settings. These are used to
store test user credentials that are in return used by our BBE port to perform CS3API-specific
health checks. -
Enhancement #2672: Further Site Accounts improvements
Yet another PR to update the site accounts (and Mentix): New default site ID; Include service
type in alerts; Naming unified; Remove obsolete stuff. -
Enhancement #2549: Site accounts improvements
This PR improves the site accounts: - Removed/hid API key stuff - Added quick links to the main
panel - Made alert notifications mandatory -
Enhancement #2488: Cephfs support keyrings with IDs
-
Enhancement #2514: Reuse ocs role objects in other drivers
-
Enhancement #2752: Refactor the rest user and group provider drivers
We now maintain our own cache for all user and group data, and periodically refresh it. A redis
server now becomes a necessary dependency, whereas it was optional previously. -
Enhancement #2946: Make user share indicators read from the share provider service