The following sections list the changes in reva 1.3.0 relevant to reva users. The changes are ordered by importance.
The appprovider service used to directly pass the stat request to the storage provider bypassing the gateway, which resulted in errors while handling share children as they are resolved in the gateway path.
https://github.com/cs3org/reva/pull/1140
The shared folder logic in the gateway storageprovider was not allowing file up and downloads for single file shares. We now check if the reference is actually a file to determine if up / download should be allowed.
https://github.com/cs3org/reva/pull/1170
When renaming a file we updating the name attribute on the wrong node, causing the path construction to use the wrong name. This fixes the litmus move_coll test.
https://github.com/cs3org/reva/pull/1177
We now ignore the no data available
error when removing a non existing metadata attribute,
which is ok because we are trying to delete it anyway.
https://github.com/cs3org/reva/issues/1178 https://github.com/cs3org/reva/pull/1179
Etags have to be enclosed in quotes “. Return correct etags on OCIS-Storage.
https://github.com/owncloud/product/issues/237 https://github.com/cs3org/reva/pull/1232
The gateway is no longer ignoring permissions errors. It will now check the status for
rpc.Code_CODE_PERMISSION_DENIED
codes and report them properly using
status.NewPermissionDenied
or status.NewInternal
instead of reusing the original
response status.
https://github.com/cs3org/reva/pull/1210
We now treat EPERM errors, which occur, eg. when acl checks fail and return a permission denied error.
https://github.com/cs3org/reva/pull/1183
The storageprovider is no longer ignoring permissions errors. It will now report them
properly using status.NewPermissionDenied(...)
instead of status.NewInternal(...)
https://github.com/cs3org/reva/pull/1206
The ocdav api is no longer ignoring permissions errors. It will now check the status for
rpc.Code_CODE_PERMISSION_DENIED
codes and report them properly using
http.StatusForbidden
instead of http.StatusInternalServerError
https://github.com/cs3org/reva/pull/1207
The ocs list shares endpoint may need to fetch the displayname for multiple different users. We are now caching the lookup fo 60 seconds to save redundant RPCs to the users service.
https://github.com/cs3org/reva/pull/1161
https://github.com/cs3org/reva/pull/1216 https://github.com/cs3org/reva/pull/1218
We now allow using the userid and the username when accessing the users home on the /dev/files
endpoint.
https://github.com/cs3org/reva/pull/1205
Previously, in case of nested packages, we just had a link pointing to the child package. Now we copy the nested package’s documentation to the parent itself to make it easier for devs.
https://github.com/cs3org/reva/pull/1131
We are now checking grant permissions in the ocis storage driver.
https://github.com/cs3org/reva/pull/1213
We are now checking grant permissions in the owncloud storage driver.
https://github.com/cs3org/reva/pull/1202
https://github.com/cs3org/reva/pull/1228
This PR adds the functionality to maintain the same inode across various versions of a file by returning the inode of the version folder which remains constant. It requires extra metadata operations so a flag is provided to disable it.
https://github.com/cs3org/reva/pull/1174.
We hardcode the home path for all users to /home. This forbids redirecting requests for different users to multiple storage providers. This PR provides the option to map the home directories of different users using user attributes.
https://github.com/cs3org/reva/pull/1142
This update extends Mentix to export a Prometheus SD file specific to the Blackbox Exporter which will be used for initial health monitoring. Usually, Prometheus requires its targets to only consist of the target’s hostname; the BBE though expects a full URL here. This makes exporting two distinct files necessary.
https://github.com/cs3org/reva/pull/1190
Represents the CS3 datatx module in the gateway.
https://github.com/cs3org/reva/pull/1229
To support the metadata storage we allow setting the owner of the root node so that subsequent requests with that owner can be used to manage the storage.
https://github.com/cs3org/reva/pull/1225
We added tree time accounting to the ocis storage driver which is modeled after eos synctime
accounting.
It can be enabled using the new treetime_accounting
option, which defaults to false
The
tmtime
is stored in an extended attribute user.ocis.tmtime
. The treetime accounting is
enabled for nodes which have the user.ocis.propagation
extended attribute set to "1"
.
Currently, propagation is in sync.
https://github.com/cs3org/reva/pull/1180
We create references for accepted shares in the shares directory, but these aren’t updated when the original resource is modified. This PR adds the functionality to generate the etag for the shares directory and correspondingly, the home directory, based on the actual resources which the references point to, enabling the sync functionality.
https://github.com/cs3org/reva/pull/1208