v1.24.0
Changelog for reva 1.24.0 (2023-05-11)
The following sections list the changes in reva 1.24.0 relevant to
reva users. The changes are ordered by importance.
Summary
- Fix #3805: Apps: fixed viewMode resolution
- Fix #3771: Fix files sharing capabilities
- Fix #3749: Fix persisting updates of received shares in json driver
- Fix #3723: Fix revad docker images by enabling CGO
- Fix #3765: Fix create version folder in EOS driver
- Fix #3786: Fix listing directory for a read-only shares for EOS storage driver
- Fix #3787: Fix application flag for EOS binary
- Fix #3780: Fix Makefile error on Ubuntu
- Fix #3873: Fix parsing of grappa response
- Fix #3794: Fix unshare for EOS storage driver
- Fix #3838: Fix upload in a single file share for lightweight accounts
- Fix #3878: Fix creator/initiator in public and user shares
- Fix #3813: Fix propfind URL for OCM shares
- Fix #3770: Fixed default protocol on ocm-share-create
- Fix #3852: Pass remote share id and shared secret in OCM call
- Fix #3859: Fix inconsistency between data transfer protocol naming
- Enh #3847: Update data transfers for current OCM shares implementation
- Enh #3869: Datatx tutorial
- Enh #3762: Denial and Resharing Default capabilities
- Enh #3717: Disable sharing on low level paths
- Enh #3766: Download file revisions
- Enh #3733: Add support for static linking
- Enh #3778: Add support to tag eos traffic
- Enh #3868: Implement historical way of constructing OCM WebDAV URL
- Enh #3719: Skip computing groups when fetching all groups from grappa
- Enh #3783: Updated OCM tutorial
- Enh #3750: New metadata flags
- Enh #3839: Support multiple issuer in OIDC auth driver
- Enh #3772: New OCM discovery endpoint
- Enh #3619: Tests for invitation manager SQL driver
- Enh #3757: Support OCM v1.0 schema
- Enh #3695: Create OCM share from sciencemesh service
- Enh #3722: List only valid OCM tokens
- Enh #3821: Revamp user/group drivers and fix user type
- Enh #3724: Send invitation link from mesh directory
- Enh #3824: Serverless Services
Details
-
Bugfix #3805: Apps: fixed viewMode resolution
Currently, the viewMode passed on /app/open is taken without validating the actual user's
permissions. This PR fixes this. -
Bugfix #3771: Fix files sharing capabilities
A bug was preventing setting some capabilities (ResharingDefault and DenyAccess) for files
sharing from the configuration file -
Bugfix #3749: Fix persisting updates of received shares in json driver
-
Bugfix #3723: Fix revad docker images by enabling CGO
-
Bugfix #3765: Fix create version folder in EOS driver
In a read only share, a stat could fail, beacause the EOS storage driver was not able to create the
version folder for a file in case this did not exist. This fixes this bug impersonating the owner
of the file when creating the version folder. -
Bugfix #3786: Fix listing directory for a read-only shares for EOS storage driver
In a read-only share, while listing a folder, for resources not having a version folder, the
returned resource id was wrongly the one of the original file, instead of the version folder.
This behavior has been fixed, where the version folder is always created on behalf of the
resource owner. -
Bugfix #3787: Fix application flag for EOS binary
-
Bugfix #3780: Fix Makefile error on Ubuntu
I've fixed Makefile using sh which is defaulted to dash in ubuntu, dash doesn't support
[[ ... ]]
syntax and Makefile would throw/bin/sh: 1: [[: not found
errors. -
Bugfix #3873: Fix parsing of grappa response
-
Bugfix #3794: Fix unshare for EOS storage driver
In the EOS storage driver, the remove acl operation was a no-op. After removing a share, the
recipient of the share was still able to operate on the shared resource. Now this has been fixed,
removing correctly the ACL from the shared resource. -
Bugfix #3838: Fix upload in a single file share for lightweight accounts
-
Bugfix #3878: Fix creator/initiator in public and user shares
-
Bugfix #3813: Fix propfind URL for OCM shares
-
Bugfix #3770: Fixed default protocol on ocm-share-create
-
Bugfix #3852: Pass remote share id and shared secret in OCM call
-
Bugfix #3859: Fix inconsistency between data transfer protocol naming
-
Enhancement #3847: Update data transfers for current OCM shares implementation
-
Enhancement #3869: Datatx tutorial
-
Enhancement #3762: Denial and Resharing Default capabilities
-
Enhancement #3717: Disable sharing on low level paths
Sharing can be disable in the user share provider for some paths, but the storage provider was
still sending the sharing permissions for those paths. This adds a config option in the storage
provider,minimum_allowed_path_level_for_share
, to disable sharing permissions for
resources up to a defined path level. -
Enhancement #3766: Download file revisions
Currently it is only possible to restore a file version, replacing the actual file with the
selected version. This allows an user to download a version file, without touching/replacing
the last version of the file -
Enhancement #3733: Add support for static linking
We've added support for compiling reva with static linking enabled. It's possible to do so with
theSTATIC
flag:make revad STATIC=true
-
Enhancement #3778: Add support to tag eos traffic
We've added support to tag eos traffic
-
Enhancement #3868: Implement historical way of constructing OCM WebDAV URL
Expose the expected WebDAV endpoint for OCM by OC10 and Nextcloud as described in
cs3org/OCM-API#70 (comment) to allow reva
providers to participate to mesh. -
Enhancement #3719: Skip computing groups when fetching all groups from grappa
-
Enhancement #3783: Updated OCM tutorial
The OCM tutorial in the doc was missing the example on how to access the received resources. Now
the tutorial contains all the steps to access a received resource using the WebDAV protocol. -
Enhancement #3750: New metadata flags
Several new flags, like site infrastructure and service status, are now gathered and exposed
by Mentix. -
Enhancement #3839: Support multiple issuer in OIDC auth driver
The OIDC auth driver supports now multiple issuers. Users of external providers are then
mapped to a local user by a mapping files. Only the main issuer (defined in the config with
issuer
) and the ones defined in the mapping are allowed for the verification of the OIDC
token. -
Enhancement #3772: New OCM discovery endpoint
This PR implements the new OCM v1.1 specifications for the /ocm-provider endpoint.
-
Enhancement #3619: Tests for invitation manager SQL driver
-
Enhancement #3757: Support OCM v1.0 schema
Following cs3org/cs3apis#206, we add the fields to ensure backwards compatibility with OCM
v1.0. However, if theprotocol.options
undocumented object is not empty, we bail out for
now. Supporting interoperability with OCM v1.0 implementations (notably Nextcloud 25) may
come in the future if the undocumented options are fully reverse engineered. This is reflected
in the unit tests as well.Also, added viewMode to webapp protocol options (cs3org/cs3apis#207) and adapted all SQL
code and unit tests. -
Enhancement #3695: Create OCM share from sciencemesh service
-
Enhancement #3722: List only valid OCM tokens
-
Enhancement #3821: Revamp user/group drivers and fix user type
For lightweight accounts
- Fix the user type for lightweight accounts, using the source field to differentiate between a
primary and lw account * Remove all the code with manual parsing of the json returned by the CERN
provider * Introduce pagination forGetMembers
method in the group driver * Reduced network
transfer size by requesting only needed fields forGetMembers
method
- Fix the user type for lightweight accounts, using the source field to differentiate between a
-
Enhancement #3724: Send invitation link from mesh directory
When generating and listing OCM tokens
To enhance user expirience, instead of only sending the token, we send directly the URL for
accepting the invitation workflow. -
Enhancement #3824: Serverless Services
New type of service (along with http and grpc) which does not have a listening server. Useful for
the notifications service and others in the future.