Skip to content

v1.3.0

Compare
Choose a tag to compare
@labkode labkode released this 08 Oct 12:26
· 1530 commits to master since this release

Changelog for reva 1.3.0 (2020-10-08)

The following sections list the changes in reva 1.3.0 relevant to
reva users. The changes are ordered by importance.

Summary

  • Fix #1140: Call the gateway stat method from appprovider
  • Fix #1170: Up and download of file shares
  • Fix #1177: Fix ocis move
  • Fix #1178: Fix litmus failing on ocis storage
  • Fix #237: Fix missing quotes on OCIS-Storage
  • Fix #1210: No longer swallow permissions errors in the gateway
  • Fix #1183: Handle eos EPERM as permission denied
  • Fix #1206: No longer swallow permissions errors
  • Fix #1207: No longer swallow permissions errors in ocdav
  • Fix #1161: Cache display names in ocs service
  • Fix #1216: Add error handling for invalid references
  • Enh #1205: Allow using the username when accessing the users home
  • Enh #1131: Use updated cato to display nested package config in parent docs
  • Enh #1213: Check permissions in ocis driver
  • Enh #1202: Check permissions in owncloud driver
  • Enh #1228: Add GRPC stubs for CreateSymlink method
  • Enh #1174: Add logic in EOS FS for maintaining same inode across file versions
  • Enh #1142: Functionality to map home directory to different storage providers
  • Enh #1190: Add Blackbox Exporter support to Mentix
  • Enh #1229: New gateway datatx service
  • Enh #1225: Allow setting the owner when using the ocis driver
  • Enh #1180: Introduce ocis driver treetime accounting
  • Enh #1208: Calculate etags on-the-fly for shares directory and home folder

Details

  • Bugfix #1140: Call the gateway stat method from appprovider

    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.

    #1140

  • Bugfix #1170: Up and download of file shares

    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.

    #1170

  • Bugfix #1177: Fix ocis move

    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.

    #1177

  • Bugfix #1178: Fix litmus failing on ocis storage

    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.

    #1178
    #1179

  • Bugfix #237: Fix missing quotes on OCIS-Storage

    Etags have to be enclosed in quotes ". Return correct etags on OCIS-Storage.

    owncloud/product#237
    #1232

  • Bugfix #1210: No longer swallow permissions errors in the gateway

    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.

    #1210

  • Bugfix #1183: Handle eos EPERM as permission denied

    We now treat EPERM errors, which occur, eg. when acl checks fail and return a permission denied
    error.

    #1183

  • Bugfix #1206: No longer swallow permissions errors

    The storageprovider is no longer ignoring permissions errors. It will now report them
    properly using status.NewPermissionDenied(...) instead of status.NewInternal(...)

    #1206

  • Bugfix #1207: No longer swallow permissions errors in ocdav

    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

    #1207

  • Bugfix #1161: Cache display names in ocs service

    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.

    #1161

  • Bugfix #1216: Add error handling for invalid references

    #1216
    #1218

  • Enhancement #1205: Allow using the username when accessing the users home

    We now allow using the userid and the username when accessing the users home on the /dev/files
    endpoint.

    #1205

  • Enhancement #1131: Use updated cato to display nested package config in parent docs

    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.

    #1131

  • Enhancement #1213: Check permissions in ocis driver

    We are now checking grant permissions in the ocis storage driver.

    #1213

  • Enhancement #1202: Check permissions in owncloud driver

    We are now checking grant permissions in the owncloud storage driver.

    #1202

  • Enhancement #1228: Add GRPC stubs for CreateSymlink method

    #1228

  • Enhancement #1174: Add logic in EOS FS for maintaining same inode across file versions

    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.

    #1174.

  • Enhancement #1142: Functionality to map home directory to different storage providers

    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.

    #1142

  • Enhancement #1190: Add Blackbox Exporter support to Mentix

    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.

    #1190

  • Enhancement #1229: New gateway datatx service

    Represents the CS3 datatx module in the gateway.

    #1229

  • Enhancement #1225: Allow setting the owner when using the ocis driver

    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.

    #1225

  • Enhancement #1180: Introduce ocis driver treetime accounting

    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.

    #1180

  • Enhancement #1208: Calculate etags on-the-fly for shares directory and home folder

    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.

    #1208