diff --git a/CHANGELOG.md b/CHANGELOG.md index 3ed32497b0..fa8d971d44 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,309 @@ +Changelog for reva 1.5.0 (2021-01-12) +======================================= + +The following sections list the changes in reva 1.5.0 relevant to +reva users. The changes are ordered by importance. + +Summary +------- + + * Fix #1385: Run changelog check only if there are changes in the code + * Fix #1333: Delete sdk unit tests + * Fix #1342: Dav endpoint routing to home storage when request is remote.php/dav/files + * Fix #1338: Fix fd leaks + * Fix #1343: Fix ocis move + * Fix #551: Fix purging deleted files with the ocis storage + * Fix #863: Fix dav api for trashbin + * Fix #204: Fix the ocs share with me response + * Fix #1351: Fix xattr.Remove error check for macOS + * Fix #1320: Do not panic on remote.php/dav/files/ + * Fix #1379: Make Jaeger agent usable + * Fix #1331: Fix capabilities response for multiple client versions + * Fix #1281: When sharing via ocs look up user by username + * Fix #1334: Handle removal of public shares by token or ID + * Chg #990: Replace the user uuid with the username in ocs share responses + * Enh #1350: Add auth protocol based on user agent + * Enh #1362: Mark 'store-dev-release' CI step as failed on 4XX/5XX errors + * Enh #1364: Remove expired Link on Get + * Enh #1340: Add cache to store UID to UserID mapping in EOS + * Enh #1154: Add support for the protobuf interface to eos metadata + * Enh #1154: Merge-rebase from master 10/11/2020 + * Enh #1359: Add cache for calculated etags for home and shares directory + * Enh #1321: Add support for multiple data transfer protocols + * Enh #1324: Log expected errors with debug level + * Enh #1351: Map errtypes to status + * Enh #1347: Support property to enable health checking on a service + * Enh #1332: Add import support to Mentix + * Enh #1371: Use self-hosted Drone CI + * Enh #1354: Map bad request and unimplement to http status codes + * Enh #929: Include share types in ocs propfind responses + * Enh #1328: Add CLI commands for public shares + * Enh #1388: Support range header in GET requests + * Enh #1361: Remove expired Link on Access + * Enh #1386: Docker image for cs3org/revad:VERSION-eos + * Enh #1368: Calculate and expose actual file permission set + +Details +------- + + * Bugfix #1385: Run changelog check only if there are changes in the code + + https://github.com/cs3org/reva/pull/1385 + + * Bugfix #1333: Delete sdk unit tests + + These depend on a remote server running reva and thus fail in case of version mismatches. + + https://github.com/cs3org/reva/pull/1333 + + * Bugfix #1342: Dav endpoint routing to home storage when request is remote.php/dav/files + + There was a regression in which we were not routing correctly to the right storage depending on + the url. + + https://github.com/cs3org/reva/pull/1342 + + * Bugfix #1338: Fix fd leaks + + There were some left over open file descriptors on simple.go. + + https://github.com/cs3org/reva/pull/1338 + + * Bugfix #1343: Fix ocis move + + Use the old node id to build the target path for xattr updates. + + https://github.com/owncloud/ocis/issues/975 + https://github.com/cs3org/reva/pull/1343 + + * Bugfix #551: Fix purging deleted files with the ocis storage + + The ocis storage could load the owner information of a deleted file. This caused the storage to + not be able to purge deleted files. + + https://github.com/owncloud/ocis/issues/551 + + * Bugfix #863: Fix dav api for trashbin + + The api was comparing the requested username to the userid. + + https://github.com/owncloud/ocis/issues/863 + + * Bugfix #204: Fix the ocs share with me response + + The path of the files shared with me was incorrect. + + https://github.com/owncloud/product/issues/204 + https://github.com/cs3org/reva/pull/1346 + + * Bugfix #1351: Fix xattr.Remove error check for macOS + + Previously, we checked the xattr.Remove error only for linux systems. Now macOS is checked + also + + https://github.com/cs3org/reva/pull/1351 + + * Bugfix #1320: Do not panic on remote.php/dav/files/ + + Currently requests to /remote.php/dav/files/ result in panics since we cannot longer strip + the user + destination from the url. This fixes the server response code and adds an error body to + the response. + + https://github.com/cs3org/reva/pull/1320 + + * Bugfix #1379: Make Jaeger agent usable + + Previously, you could not use tracing with jaeger agent because the tracing connector is + always used instead of the tracing endpoint. + + This PR removes the defaults for collector and tracing endpoint. + + https://github.com/cs3org/reva/pull/1379 + + * Bugfix #1331: Fix capabilities response for multiple client versions + + https://github.com/cs3org/reva/pull/1331 + + * Bugfix #1281: When sharing via ocs look up user by username + + The ocs api returns usernames when listing share recipients, so the lookup when creating the + share needs to search the usernames and not the userid. + + https://github.com/cs3org/reva/pull/1281 + + * Bugfix #1334: Handle removal of public shares by token or ID + + Previously different drivers handled removing public shares using different means, either + the token or the ID. Now, both the drivers support both these methods. + + https://github.com/cs3org/reva/pull/1334 + + * Change #990: Replace the user uuid with the username in ocs share responses + + The ocs api should not send the users uuid. Replaced the uuid with the username. + + https://github.com/owncloud/ocis/issues/990 + https://github.com/cs3org/reva/pull/1375 + + * Enhancement #1350: Add auth protocol based on user agent + + Previously, all available credential challenges are given to the client, for example, basic + auth, bearer token, etc ... Different clients have different priorities to use one method or + another, and before it was not possible to force a client to use one method without having a side + effect on other clients. + + This PR adds the functionality to target a specific auth protocol based on the user agent HTTP + header. + + https://github.com/cs3org/reva/pull/1350 + + * Enhancement #1362: Mark 'store-dev-release' CI step as failed on 4XX/5XX errors + + Prevent the errors while storing new 'daily' releases from going unnoticed on the CI. + + https://github.com/cs3org/reva/pull/1362 + + * Enhancement #1364: Remove expired Link on Get + + There is the scenario in which a public link has expired but ListPublicLink has not run, + accessing a technically expired public share is still possible. + + https://github.com/cs3org/reva/pull/1364 + + * Enhancement #1340: Add cache to store UID to UserID mapping in EOS + + Previously, we used to send an RPC to the user provider service for every lookup of user IDs from + the UID stored in EOS. This PR adds an in-memory lock-protected cache to store this mapping. + + https://github.com/cs3org/reva/pull/1340 + + * Enhancement #1154: Add support for the protobuf interface to eos metadata + + https://github.com/cs3org/reva/pull/1154 + + * Enhancement #1154: Merge-rebase from master 10/11/2020 + + https://github.com/cs3org/reva/pull/1154 + + * Enhancement #1359: Add cache for calculated etags for home and shares directory + + Since we store the references in the shares directory instead of actual resources, we need to + calculate the etag on every list/stat call. This is rather expensive so adding a cache would + help to a great extent with regard to the performance. + + https://github.com/cs3org/reva/pull/1359 + + * Enhancement #1321: Add support for multiple data transfer protocols + + Previously, we had to configure which data transfer protocol to use in the dataprovider + service. A previous PR added the functionality to redirect requests to different handlers + based on the request method but that would lead to conflicts if multiple protocols don't + support mutually exclusive sets of requests. This PR adds the functionality to have multiple + such handlers simultaneously and the client can choose which protocol to use. + + https://github.com/cs3org/reva/pull/1321 + https://github.com/cs3org/reva/pull/1285/ + + * Enhancement #1324: Log expected errors with debug level + + While trying to download a non existing file and reading a non existing attribute are + technically an error they are to be expected and nothing an admin can or even should act upon. + + https://github.com/cs3org/reva/pull/1324 + + * Enhancement #1351: Map errtypes to status + + When mapping errtypes to grpc statuses we now also map bad request and not implemented / + unsupported cases in the gateway storageprovider. + + https://github.com/cs3org/reva/pull/1351 + + * Enhancement #1347: Support property to enable health checking on a service + + This update introduces a new service property called `ENABLE_HEALTH_CHECKS` that must be + explicitly set to `true` if a service should be checked for its health status. This allows us to + only enable these checks for partner sites only, skipping vendor sites. + + https://github.com/cs3org/reva/pull/1347 + + * Enhancement #1332: Add import support to Mentix + + This update adds import support to Mentix, transforming it into a **Mesh Entity Exchanger**. + To properly support vendor site management, a new connector that works on a local file has been + added as well. + + https://github.com/cs3org/reva/pull/1332 + + * Enhancement #1371: Use self-hosted Drone CI + + Previously, we used the drone cloud to run the CI for the project. Due to unexpected and sudden + stop of the service for the cs3org we decided to self-host it. + + https://github.com/cs3org/reva/pull/1371 + + * Enhancement #1354: Map bad request and unimplement to http status codes + + We now return a 400 bad request when a grpc call fails with an invalid argument status and a 501 not + implemented when it fails with an unimplemented status. This prevents 500 errors when a user + tries to add resources to the Share folder or a storage does not implement an action. + + https://github.com/cs3org/reva/pull/1354 + + * Enhancement #929: Include share types in ocs propfind responses + + Added the share types to the ocs propfind response when a resource has been shared. + + https://github.com/owncloud/ocis/issues/929 + https://github.com/cs3org/reva/pull/1329 + + * Enhancement #1328: Add CLI commands for public shares + + https://github.com/cs3org/reva/pull/1328 + + * Enhancement #1388: Support range header in GET requests + + To allow resuming a download we now support GET requests with a range header. + + https://github.com/owncloud/ocis-reva/issues/12 + https://github.com/cs3org/reva/pull/1388 + + * Enhancement #1361: Remove expired Link on Access + + Since there is no background jobs scheduled to wipe out expired resources, for the time being + public links are going to be removed on a "on demand" basis, meaning whenever there is an API call + that access the list of shares for a given resource, we will check whether the share is expired + and delete it if so. + + https://github.com/cs3org/reva/pull/1361 + + * Enhancement #1386: Docker image for cs3org/revad:VERSION-eos + + Based on eos:c8_4.8.15 (Centos8, version 4.8.15). To be used when the Reva daemon needs IPC + with xrootd/eos via stdin/out. + + https://github.com/cs3org/reva/pull/1386 + https://github.com/cs3org/reva/pull/1389 + + * Enhancement #1368: Calculate and expose actual file permission set + + Instead of hardcoding the permissions set for every file and folder to ListContainer:true, + CreateContainer:true and always reporting the hardcoded string WCKDNVR for the WebDAV + permissions we now aggregate the actual cs3 resource permission set in the storage drivers and + correctly map them to ocs permissions and webdav permissions using a common role struct that + encapsulates the mapping logic. + + https://github.com/owncloud/ocis/issues/552 + https://github.com/owncloud/ocis/issues/762 + https://github.com/owncloud/ocis/issues/763 + https://github.com/owncloud/ocis/issues/893 + https://github.com/owncloud/ocis/issues/1126 + https://github.com/owncloud/ocis-reva/issues/47 + https://github.com/owncloud/ocis-reva/issues/315 + https://github.com/owncloud/ocis-reva/issues/316 + https://github.com/owncloud/product/issues/270 + https://github.com/cs3org/reva/pull/1368 + + Changelog for reva 1.4.0 (2020-11-17) ======================================= diff --git a/RELEASE_DATE b/RELEASE_DATE index 9ba9437075..e0d49ce2fa 100644 --- a/RELEASE_DATE +++ b/RELEASE_DATE @@ -1 +1 @@ -2020-11-17 \ No newline at end of file +2021-01-12 \ No newline at end of file diff --git a/VERSION b/VERSION index e21e727f96..3e1ad720b1 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.4.0 \ No newline at end of file +1.5.0 \ No newline at end of file diff --git a/changelog/unreleased/auth-by-user-agent.md b/changelog/1.5.0_2021-01-12/auth-by-user-agent.md similarity index 100% rename from changelog/unreleased/auth-by-user-agent.md rename to changelog/1.5.0_2021-01-12/auth-by-user-agent.md diff --git a/changelog/unreleased/changelog-fix.md b/changelog/1.5.0_2021-01-12/changelog-fix.md similarity index 100% rename from changelog/unreleased/changelog-fix.md rename to changelog/1.5.0_2021-01-12/changelog-fix.md diff --git a/changelog/unreleased/ci-fail-on-daily-upload.md b/changelog/1.5.0_2021-01-12/ci-fail-on-daily-upload.md similarity index 100% rename from changelog/unreleased/ci-fail-on-daily-upload.md rename to changelog/1.5.0_2021-01-12/ci-fail-on-daily-upload.md diff --git a/changelog/unreleased/delete-public-link-on-get-operations.md b/changelog/1.5.0_2021-01-12/delete-public-link-on-get-operations.md similarity index 100% rename from changelog/unreleased/delete-public-link-on-get-operations.md rename to changelog/1.5.0_2021-01-12/delete-public-link-on-get-operations.md diff --git a/changelog/unreleased/delete-sdk-tests.md b/changelog/1.5.0_2021-01-12/delete-sdk-tests.md similarity index 100% rename from changelog/unreleased/delete-sdk-tests.md rename to changelog/1.5.0_2021-01-12/delete-sdk-tests.md diff --git a/changelog/unreleased/eos-user-cache.md b/changelog/1.5.0_2021-01-12/eos-user-cache.md similarity index 100% rename from changelog/unreleased/eos-user-cache.md rename to changelog/1.5.0_2021-01-12/eos-user-cache.md diff --git a/changelog/unreleased/eosclientgrpc.md b/changelog/1.5.0_2021-01-12/eosclientgrpc.md similarity index 100% rename from changelog/unreleased/eosclientgrpc.md rename to changelog/1.5.0_2021-01-12/eosclientgrpc.md diff --git a/changelog/unreleased/fab-merge.md b/changelog/1.5.0_2021-01-12/fab-merge.md similarity index 100% rename from changelog/unreleased/fab-merge.md rename to changelog/1.5.0_2021-01-12/fab-merge.md diff --git a/changelog/unreleased/fix-files-home-redirect.md b/changelog/1.5.0_2021-01-12/fix-files-home-redirect.md similarity index 100% rename from changelog/unreleased/fix-files-home-redirect.md rename to changelog/1.5.0_2021-01-12/fix-files-home-redirect.md diff --git a/changelog/unreleased/fix-more-fd-leaks.md b/changelog/1.5.0_2021-01-12/fix-more-fd-leaks.md similarity index 100% rename from changelog/unreleased/fix-more-fd-leaks.md rename to changelog/1.5.0_2021-01-12/fix-more-fd-leaks.md diff --git a/changelog/unreleased/fix-ocis-move.md b/changelog/1.5.0_2021-01-12/fix-ocis-move.md similarity index 100% rename from changelog/unreleased/fix-ocis-move.md rename to changelog/1.5.0_2021-01-12/fix-ocis-move.md diff --git a/changelog/unreleased/fix-ocis-storage-purge.md b/changelog/1.5.0_2021-01-12/fix-ocis-storage-purge.md similarity index 100% rename from changelog/unreleased/fix-ocis-storage-purge.md rename to changelog/1.5.0_2021-01-12/fix-ocis-storage-purge.md diff --git a/changelog/unreleased/fix-ocis-trashbin.md b/changelog/1.5.0_2021-01-12/fix-ocis-trashbin.md similarity index 100% rename from changelog/unreleased/fix-ocis-trashbin.md rename to changelog/1.5.0_2021-01-12/fix-ocis-trashbin.md diff --git a/changelog/unreleased/fix-ocs-share-api.md b/changelog/1.5.0_2021-01-12/fix-ocs-share-api.md similarity index 100% rename from changelog/unreleased/fix-ocs-share-api.md rename to changelog/1.5.0_2021-01-12/fix-ocs-share-api.md diff --git a/changelog/unreleased/fix-xattr-error-darwin.md b/changelog/1.5.0_2021-01-12/fix-xattr-error-darwin.md similarity index 100% rename from changelog/unreleased/fix-xattr-error-darwin.md rename to changelog/1.5.0_2021-01-12/fix-xattr-error-darwin.md diff --git a/changelog/unreleased/gateway-etag-cache.md b/changelog/1.5.0_2021-01-12/gateway-etag-cache.md similarity index 100% rename from changelog/unreleased/gateway-etag-cache.md rename to changelog/1.5.0_2021-01-12/gateway-etag-cache.md diff --git a/changelog/unreleased/handle-invalid-webdav-listing.md b/changelog/1.5.0_2021-01-12/handle-invalid-webdav-listing.md similarity index 100% rename from changelog/unreleased/handle-invalid-webdav-listing.md rename to changelog/1.5.0_2021-01-12/handle-invalid-webdav-listing.md diff --git a/changelog/unreleased/http-datatx.md b/changelog/1.5.0_2021-01-12/http-datatx.md similarity index 100% rename from changelog/unreleased/http-datatx.md rename to changelog/1.5.0_2021-01-12/http-datatx.md diff --git a/changelog/unreleased/log-expected-errors-with-debug-level.md b/changelog/1.5.0_2021-01-12/log-expected-errors-with-debug-level.md similarity index 100% rename from changelog/unreleased/log-expected-errors-with-debug-level.md rename to changelog/1.5.0_2021-01-12/log-expected-errors-with-debug-level.md diff --git a/changelog/unreleased/make-jaeger-agent-usable.md b/changelog/1.5.0_2021-01-12/make-jaeger-agent-usable.md similarity index 100% rename from changelog/unreleased/make-jaeger-agent-usable.md rename to changelog/1.5.0_2021-01-12/make-jaeger-agent-usable.md diff --git a/changelog/unreleased/map-errtypes-to-status-and-back.md b/changelog/1.5.0_2021-01-12/map-errtypes-to-status-and-back.md similarity index 100% rename from changelog/unreleased/map-errtypes-to-status-and-back.md rename to changelog/1.5.0_2021-01-12/map-errtypes-to-status-and-back.md diff --git a/changelog/unreleased/mentix-checks.md b/changelog/1.5.0_2021-01-12/mentix-checks.md similarity index 100% rename from changelog/unreleased/mentix-checks.md rename to changelog/1.5.0_2021-01-12/mentix-checks.md diff --git a/changelog/unreleased/mentix-import.md b/changelog/1.5.0_2021-01-12/mentix-import.md similarity index 100% rename from changelog/unreleased/mentix-import.md rename to changelog/1.5.0_2021-01-12/mentix-import.md diff --git a/changelog/unreleased/new-drone-ci.md b/changelog/1.5.0_2021-01-12/new-drone-ci.md similarity index 100% rename from changelog/unreleased/new-drone-ci.md rename to changelog/1.5.0_2021-01-12/new-drone-ci.md diff --git a/changelog/unreleased/ocdav-handle-bad-request.md b/changelog/1.5.0_2021-01-12/ocdav-handle-bad-request.md similarity index 100% rename from changelog/unreleased/ocdav-handle-bad-request.md rename to changelog/1.5.0_2021-01-12/ocdav-handle-bad-request.md diff --git a/changelog/unreleased/ocis-ocs-share-types.md b/changelog/1.5.0_2021-01-12/ocis-ocs-share-types.md similarity index 100% rename from changelog/unreleased/ocis-ocs-share-types.md rename to changelog/1.5.0_2021-01-12/ocis-ocs-share-types.md diff --git a/changelog/unreleased/ocs-capabilities.md b/changelog/1.5.0_2021-01-12/ocs-capabilities.md similarity index 100% rename from changelog/unreleased/ocs-capabilities.md rename to changelog/1.5.0_2021-01-12/ocs-capabilities.md diff --git a/changelog/unreleased/ocs-lookup-user-by-username.md b/changelog/1.5.0_2021-01-12/ocs-lookup-user-by-username.md similarity index 100% rename from changelog/unreleased/ocs-lookup-user-by-username.md rename to changelog/1.5.0_2021-01-12/ocs-lookup-user-by-username.md diff --git a/changelog/unreleased/ocs-share-api-userid.md b/changelog/1.5.0_2021-01-12/ocs-share-api-userid.md similarity index 100% rename from changelog/unreleased/ocs-share-api-userid.md rename to changelog/1.5.0_2021-01-12/ocs-share-api-userid.md diff --git a/changelog/unreleased/public-shares-cli.md b/changelog/1.5.0_2021-01-12/public-shares-cli.md similarity index 100% rename from changelog/unreleased/public-shares-cli.md rename to changelog/1.5.0_2021-01-12/public-shares-cli.md diff --git a/changelog/unreleased/range-requests.md b/changelog/1.5.0_2021-01-12/range-requests.md similarity index 100% rename from changelog/unreleased/range-requests.md rename to changelog/1.5.0_2021-01-12/range-requests.md diff --git a/changelog/unreleased/remove-public-share-fix.md b/changelog/1.5.0_2021-01-12/remove-public-share-fix.md similarity index 100% rename from changelog/unreleased/remove-public-share-fix.md rename to changelog/1.5.0_2021-01-12/remove-public-share-fix.md diff --git a/changelog/unreleased/remove-public-shares-on-list.md b/changelog/1.5.0_2021-01-12/remove-public-shares-on-list.md similarity index 100% rename from changelog/unreleased/remove-public-shares-on-list.md rename to changelog/1.5.0_2021-01-12/remove-public-shares-on-list.md diff --git a/changelog/unreleased/revad-eos-docker-image.md b/changelog/1.5.0_2021-01-12/revad-eos-docker-image.md similarity index 100% rename from changelog/unreleased/revad-eos-docker-image.md rename to changelog/1.5.0_2021-01-12/revad-eos-docker-image.md diff --git a/changelog/unreleased/share-permissions-and-resource-permissions.md b/changelog/1.5.0_2021-01-12/share-permissions-and-resource-permissions.md similarity index 100% rename from changelog/unreleased/share-permissions-and-resource-permissions.md rename to changelog/1.5.0_2021-01-12/share-permissions-and-resource-permissions.md diff --git a/changelog/NOTE.md b/changelog/NOTE.md index 19d09b7e49..d18ff1f7df 100644 --- a/changelog/NOTE.md +++ b/changelog/NOTE.md @@ -1,198 +1,306 @@ -Changelog for reva 1.4.0 (2020-11-17) +Changelog for reva 1.5.0 (2021-01-12) ======================================= -The following sections list the changes in reva 1.4.0 relevant to +The following sections list the changes in reva 1.5.0 relevant to reva users. The changes are ordered by importance. Summary ------- - * Fix #1316: Fix listing shares for nonexisting path - * Fix #1274: Let the gateway filter invalid references - * Fix #1269: Handle more eos errors - * Fix #1297: Check the err and the response status code - * Fix #1260: Fix file descriptor leak on ocdav put handler - * Fix #1253: Upload file to storage provider after assembling chunks - * Fix #1264: Fix etag propagation in ocis driver - * Fix #1255: Check current node when iterating over path segments - * Fix #1265: Stop setting propagation xattr on new files - * Fix #260: Filter share with me requests - * Fix #1317: Prevent nil pointer when listing shares - * Fix #1259: Fix propfind response code on forbidden files - * Fix #1294: Fix error type in read node when file was not found - * Fix #1258: Update share grants on share update - * Enh #1257: Add a test user to all sites - * Enh #1234: Resolve a WOPI bridge appProviderURL by extracting its redirect - * Enh #1239: Add logic for finding groups to user provider service - * Enh #1280: Add a Reva SDK - * Enh #1237: Setup of grpc transfer service and cli - * Enh #1224: Add SQL driver for share manager - * Enh #1285: Refactor the uploading files workflow from various clients - * Enh #1233: Add support for custom CodiMD mimetype + * Fix #1385: Run changelog check only if there are changes in the code + * Fix #1333: Delete sdk unit tests + * Fix #1342: Dav endpoint routing to home storage when request is remote.php/dav/files + * Fix #1338: Fix fd leaks + * Fix #1343: Fix ocis move + * Fix #551: Fix purging deleted files with the ocis storage + * Fix #863: Fix dav api for trashbin + * Fix #204: Fix the ocs share with me response + * Fix #1351: Fix xattr.Remove error check for macOS + * Fix #1320: Do not panic on remote.php/dav/files/ + * Fix #1379: Make Jaeger agent usable + * Fix #1331: Fix capabilities response for multiple client versions + * Fix #1281: When sharing via ocs look up user by username + * Fix #1334: Handle removal of public shares by token or ID + * Chg #990: Replace the user uuid with the username in ocs share responses + * Enh #1350: Add auth protocol based on user agent + * Enh #1362: Mark 'store-dev-release' CI step as failed on 4XX/5XX errors + * Enh #1364: Remove expired Link on Get + * Enh #1340: Add cache to store UID to UserID mapping in EOS + * Enh #1154: Add support for the protobuf interface to eos metadata + * Enh #1154: Merge-rebase from master 10/11/2020 + * Enh #1359: Add cache for calculated etags for home and shares directory + * Enh #1321: Add support for multiple data transfer protocols + * Enh #1324: Log expected errors with debug level + * Enh #1351: Map errtypes to status + * Enh #1347: Support property to enable health checking on a service + * Enh #1332: Add import support to Mentix + * Enh #1371: Use self-hosted Drone CI + * Enh #1354: Map bad request and unimplement to http status codes + * Enh #929: Include share types in ocs propfind responses + * Enh #1328: Add CLI commands for public shares + * Enh #1388: Support range header in GET requests + * Enh #1361: Remove expired Link on Access + * Enh #1386: Docker image for cs3org/revad:VERSION-eos + * Enh #1368: Calculate and expose actual file permission set Details ------- - * Bugfix #1316: Fix listing shares for nonexisting path + * Bugfix #1385: Run changelog check only if there are changes in the code - When trying to list shares for a not existing file or folder the ocs sharing implementation no - longer responds with the wrong status code and broken xml. + https://github.com/cs3org/reva/pull/1385 - https://github.com/cs3org/reva/pull/1316 + * Bugfix #1333: Delete sdk unit tests - * Bugfix #1274: Let the gateway filter invalid references + These depend on a remote server running reva and thus fail in case of version mismatches. - We now filter deleted and unshared entries from the response when listing the shares folder of a - user. + https://github.com/cs3org/reva/pull/1333 - https://github.com/cs3org/reva/pull/1274 + * Bugfix #1342: Dav endpoint routing to home storage when request is remote.php/dav/files - * Bugfix #1269: Handle more eos errors + There was a regression in which we were not routing correctly to the right storage depending on + the url. - We now treat E2BIG, EACCES as a permission error, which occur, eg. when acl checks fail and - return a permission denied error. + https://github.com/cs3org/reva/pull/1342 - https://github.com/cs3org/reva/pull/1269 + * Bugfix #1338: Fix fd leaks - * Bugfix #1297: Check the err and the response status code + There were some left over open file descriptors on simple.go. - The publicfile handler needs to check the response status code to return proper not pound and - permission errors in the webdav api. + https://github.com/cs3org/reva/pull/1338 - https://github.com/cs3org/reva/pull/1297 + * Bugfix #1343: Fix ocis move - * Bugfix #1260: Fix file descriptor leak on ocdav put handler + Use the old node id to build the target path for xattr updates. - File descriptors on the ocdav service, especially on the put handler was leaking http - connections. This PR addresses this. + https://github.com/owncloud/ocis/issues/975 + https://github.com/cs3org/reva/pull/1343 - https://github.com/cs3org/reva/pull/1260 + * Bugfix #551: Fix purging deleted files with the ocis storage - * Bugfix #1253: Upload file to storage provider after assembling chunks + The ocis storage could load the owner information of a deleted file. This caused the storage to + not be able to purge deleted files. - In the PUT handler for chunked uploads in ocdav, we store the individual chunks in temporary - file but do not write the assembled file to storage. This PR fixes that. + https://github.com/owncloud/ocis/issues/551 - https://github.com/cs3org/reva/pull/1253 + * Bugfix #863: Fix dav api for trashbin - * Bugfix #1264: Fix etag propagation in ocis driver + The api was comparing the requested username to the userid. - We now use a new synctime timestamp instead of trying to read the mtime to avoid race conditions - when the stat request happens too quickly. + https://github.com/owncloud/ocis/issues/863 - https://github.com/owncloud/product/issues/249 - https://github.com/cs3org/reva/pull/1264 + * Bugfix #204: Fix the ocs share with me response - * Bugfix #1255: Check current node when iterating over path segments + The path of the files shared with me was incorrect. - When checking permissions we were always checking the leaf instead of using the current node - while iterating over path segments. + https://github.com/owncloud/product/issues/204 + https://github.com/cs3org/reva/pull/1346 - https://github.com/cs3org/reva/pull/1255 + * Bugfix #1351: Fix xattr.Remove error check for macOS - * Bugfix #1265: Stop setting propagation xattr on new files + Previously, we checked the xattr.Remove error only for linux systems. Now macOS is checked + also - We no longer set the propagation flag on a file because it is only evaluated for folders anyway. + https://github.com/cs3org/reva/pull/1351 - https://github.com/cs3org/reva/pull/1265 + * Bugfix #1320: Do not panic on remote.php/dav/files/ - * Bugfix #260: Filter share with me requests + Currently requests to /remote.php/dav/files/ result in panics since we cannot longer strip + the user + destination from the url. This fixes the server response code and adds an error body to + the response. - The OCS API now properly filters share with me requests by path and by share status (pending, - accepted, rejected, all) + https://github.com/cs3org/reva/pull/1320 - https://github.com/owncloud/ocis-reva/issues/260 - https://github.com/owncloud/ocis-reva/issues/311 - https://github.com/cs3org/reva/pull/1301 + * Bugfix #1379: Make Jaeger agent usable - * Bugfix #1317: Prevent nil pointer when listing shares + Previously, you could not use tracing with jaeger agent because the tracing connector is + always used instead of the tracing endpoint. - We now handle cases where the grpc connection failed correctly by no longer trying to access the - response status. + This PR removes the defaults for collector and tracing endpoint. - https://github.com/cs3org/reva/pull/1317 + https://github.com/cs3org/reva/pull/1379 - * Bugfix #1259: Fix propfind response code on forbidden files + * Bugfix #1331: Fix capabilities response for multiple client versions - When executing a propfind to a resource owned by another user the service would respond with a - HTTP 403. In ownCloud 10 the response was HTTP 207. This change sets the response code to HTTP 207 - to stay backwards compatible. + https://github.com/cs3org/reva/pull/1331 - https://github.com/cs3org/reva/pull/1259 + * Bugfix #1281: When sharing via ocs look up user by username - * Bugfix #1294: Fix error type in read node when file was not found + The ocs api returns usernames when listing share recipients, so the lookup when creating the + share needs to search the usernames and not the userid. - The method ReadNode in the ocis storage didn't return the error type NotFound when a file was not - found. + https://github.com/cs3org/reva/pull/1281 - https://github.com/cs3org/reva/pull/1294 + * Bugfix #1334: Handle removal of public shares by token or ID - * Bugfix #1258: Update share grants on share update + Previously different drivers handled removing public shares using different means, either + the token or the ID. Now, both the drivers support both these methods. - When a share was updated the share information in the share manager was updated but the grants - set by the storage provider were not. + https://github.com/cs3org/reva/pull/1334 - https://github.com/cs3org/reva/pull/1258 + * Change #990: Replace the user uuid with the username in ocs share responses - * Enhancement #1257: Add a test user to all sites + The ocs api should not send the users uuid. Replaced the uuid with the username. - For health monitoring of all mesh sites, we need a special user account that is present on every - site. This PR adds such a user to each users-*.json file so that every site will have the same test - user credentials. + https://github.com/owncloud/ocis/issues/990 + https://github.com/cs3org/reva/pull/1375 - https://github.com/cs3org/reva/pull/1257 + * Enhancement #1350: Add auth protocol based on user agent - * Enhancement #1234: Resolve a WOPI bridge appProviderURL by extracting its redirect + Previously, all available credential challenges are given to the client, for example, basic + auth, bearer token, etc ... Different clients have different priorities to use one method or + another, and before it was not possible to force a client to use one method without having a side + effect on other clients. - Applications served by the WOPI bridge (CodiMD for the time being) require an extra - redirection as the WOPI bridge itself behaves like a user app. This change returns to the client - the redirected URL from the WOPI bridge, which is the real application URL. + This PR adds the functionality to target a specific auth protocol based on the user agent HTTP + header. - https://github.com/cs3org/reva/pull/1234 + https://github.com/cs3org/reva/pull/1350 - * Enhancement #1239: Add logic for finding groups to user provider service + * Enhancement #1362: Mark 'store-dev-release' CI step as failed on 4XX/5XX errors - To create shares with user groups, the functionality for searching for these based on a pattern - is needed. This PR adds that. + Prevent the errors while storing new 'daily' releases from going unnoticed on the CI. - https://github.com/cs3org/reva/pull/1239 + https://github.com/cs3org/reva/pull/1362 - * Enhancement #1280: Add a Reva SDK + * Enhancement #1364: Remove expired Link on Get - A Reva SDK has been added to make working with a remote Reva instance much easier by offering a - high-level API that hides all the underlying details of the CS3API. + There is the scenario in which a public link has expired but ListPublicLink has not run, + accessing a technically expired public share is still possible. - https://github.com/cs3org/reva/pull/1280 + https://github.com/cs3org/reva/pull/1364 - * Enhancement #1237: Setup of grpc transfer service and cli + * Enhancement #1340: Add cache to store UID to UserID mapping in EOS - The grpc transfer service and cli for it. + Previously, we used to send an RPC to the user provider service for every lookup of user IDs from + the UID stored in EOS. This PR adds an in-memory lock-protected cache to store this mapping. - https://github.com/cs3org/reva/pull/1237 + https://github.com/cs3org/reva/pull/1340 - * Enhancement #1224: Add SQL driver for share manager + * Enhancement #1154: Add support for the protobuf interface to eos metadata - This PR adds an SQL driver for the shares manager which expects a schema equivalent to the one - used in production for CERNBox. + https://github.com/cs3org/reva/pull/1154 - https://github.com/cs3org/reva/pull/1224 + * Enhancement #1154: Merge-rebase from master 10/11/2020 - * Enhancement #1285: Refactor the uploading files workflow from various clients + https://github.com/cs3org/reva/pull/1154 - Previously, we were implementing the tus client logic in the ocdav service, leading to - restricting the whole of tus logic to the internal services. This PR refactors that workflow to - accept incoming requests following the tus protocol while using simpler transmission - internally. + * Enhancement #1359: Add cache for calculated etags for home and shares directory - https://github.com/cs3org/reva/pull/1285 - https://github.com/cs3org/reva/pull/1314 + Since we store the references in the shares directory instead of actual resources, we need to + calculate the etag on every list/stat call. This is rather expensive so adding a cache would + help to a great extent with regard to the performance. - * Enhancement #1233: Add support for custom CodiMD mimetype + https://github.com/cs3org/reva/pull/1359 - The new mimetype is associated with the `.zmd` file extension. The corresponding - configuration is associated with the storageprovider. + * Enhancement #1321: Add support for multiple data transfer protocols - https://github.com/cs3org/reva/pull/1233 - https://github.com/cs3org/reva/pull/1284 + Previously, we had to configure which data transfer protocol to use in the dataprovider + service. A previous PR added the functionality to redirect requests to different handlers + based on the request method but that would lead to conflicts if multiple protocols don't + support mutually exclusive sets of requests. This PR adds the functionality to have multiple + such handlers simultaneously and the client can choose which protocol to use. + + https://github.com/cs3org/reva/pull/1321 + https://github.com/cs3org/reva/pull/1285/ + + * Enhancement #1324: Log expected errors with debug level + + While trying to download a non existing file and reading a non existing attribute are + technically an error they are to be expected and nothing an admin can or even should act upon. + + https://github.com/cs3org/reva/pull/1324 + + * Enhancement #1351: Map errtypes to status + + When mapping errtypes to grpc statuses we now also map bad request and not implemented / + unsupported cases in the gateway storageprovider. + + https://github.com/cs3org/reva/pull/1351 + + * Enhancement #1347: Support property to enable health checking on a service + + This update introduces a new service property called `ENABLE_HEALTH_CHECKS` that must be + explicitly set to `true` if a service should be checked for its health status. This allows us to + only enable these checks for partner sites only, skipping vendor sites. + + https://github.com/cs3org/reva/pull/1347 + + * Enhancement #1332: Add import support to Mentix + + This update adds import support to Mentix, transforming it into a **Mesh Entity Exchanger**. + To properly support vendor site management, a new connector that works on a local file has been + added as well. + + https://github.com/cs3org/reva/pull/1332 + + * Enhancement #1371: Use self-hosted Drone CI + + Previously, we used the drone cloud to run the CI for the project. Due to unexpected and sudden + stop of the service for the cs3org we decided to self-host it. + + https://github.com/cs3org/reva/pull/1371 + + * Enhancement #1354: Map bad request and unimplement to http status codes + + We now return a 400 bad request when a grpc call fails with an invalid argument status and a 501 not + implemented when it fails with an unimplemented status. This prevents 500 errors when a user + tries to add resources to the Share folder or a storage does not implement an action. + + https://github.com/cs3org/reva/pull/1354 + + * Enhancement #929: Include share types in ocs propfind responses + + Added the share types to the ocs propfind response when a resource has been shared. + + https://github.com/owncloud/ocis/issues/929 + https://github.com/cs3org/reva/pull/1329 + + * Enhancement #1328: Add CLI commands for public shares + + https://github.com/cs3org/reva/pull/1328 + + * Enhancement #1388: Support range header in GET requests + + To allow resuming a download we now support GET requests with a range header. + + https://github.com/owncloud/ocis-reva/issues/12 + https://github.com/cs3org/reva/pull/1388 + + * Enhancement #1361: Remove expired Link on Access + + Since there is no background jobs scheduled to wipe out expired resources, for the time being + public links are going to be removed on a "on demand" basis, meaning whenever there is an API call + that access the list of shares for a given resource, we will check whether the share is expired + and delete it if so. + + https://github.com/cs3org/reva/pull/1361 + + * Enhancement #1386: Docker image for cs3org/revad:VERSION-eos + + Based on eos:c8_4.8.15 (Centos8, version 4.8.15). To be used when the Reva daemon needs IPC + with xrootd/eos via stdin/out. + + https://github.com/cs3org/reva/pull/1386 + https://github.com/cs3org/reva/pull/1389 + + * Enhancement #1368: Calculate and expose actual file permission set + + Instead of hardcoding the permissions set for every file and folder to ListContainer:true, + CreateContainer:true and always reporting the hardcoded string WCKDNVR for the WebDAV + permissions we now aggregate the actual cs3 resource permission set in the storage drivers and + correctly map them to ocs permissions and webdav permissions using a common role struct that + encapsulates the mapping logic. + + https://github.com/owncloud/ocis/issues/552 + https://github.com/owncloud/ocis/issues/762 + https://github.com/owncloud/ocis/issues/763 + https://github.com/owncloud/ocis/issues/893 + https://github.com/owncloud/ocis/issues/1126 + https://github.com/owncloud/ocis-reva/issues/47 + https://github.com/owncloud/ocis-reva/issues/315 + https://github.com/owncloud/ocis-reva/issues/316 + https://github.com/owncloud/product/issues/270 + https://github.com/cs3org/reva/pull/1368 diff --git a/docs/content/en/docs/changelog/1.5.0/_index.md b/docs/content/en/docs/changelog/1.5.0/_index.md new file mode 100644 index 0000000000..1460283b36 --- /dev/null +++ b/docs/content/en/docs/changelog/1.5.0/_index.md @@ -0,0 +1,315 @@ + +--- +title: "v1.5.0" +linkTitle: "v1.5.0" +weight: 40 +description: > + Changelog for Reva v1.5.0 (2021-01-12) +--- + +Changelog for reva 1.5.0 (2021-01-12) +======================================= + +The following sections list the changes in reva 1.5.0 relevant to +reva users. The changes are ordered by importance. + +Summary +------- + + * Fix #1385: Run changelog check only if there are changes in the code + * Fix #1333: Delete sdk unit tests + * Fix #1342: Dav endpoint routing to home storage when request is remote.php/dav/files + * Fix #1338: Fix fd leaks + * Fix #1343: Fix ocis move + * Fix #551: Fix purging deleted files with the ocis storage + * Fix #863: Fix dav api for trashbin + * Fix #204: Fix the ocs share with me response + * Fix #1351: Fix xattr.Remove error check for macOS + * Fix #1320: Do not panic on remote.php/dav/files/ + * Fix #1379: Make Jaeger agent usable + * Fix #1331: Fix capabilities response for multiple client versions + * Fix #1281: When sharing via ocs look up user by username + * Fix #1334: Handle removal of public shares by token or ID + * Chg #990: Replace the user uuid with the username in ocs share responses + * Enh #1350: Add auth protocol based on user agent + * Enh #1362: Mark 'store-dev-release' CI step as failed on 4XX/5XX errors + * Enh #1364: Remove expired Link on Get + * Enh #1340: Add cache to store UID to UserID mapping in EOS + * Enh #1154: Add support for the protobuf interface to eos metadata + * Enh #1154: Merge-rebase from master 10/11/2020 + * Enh #1359: Add cache for calculated etags for home and shares directory + * Enh #1321: Add support for multiple data transfer protocols + * Enh #1324: Log expected errors with debug level + * Enh #1351: Map errtypes to status + * Enh #1347: Support property to enable health checking on a service + * Enh #1332: Add import support to Mentix + * Enh #1371: Use self-hosted Drone CI + * Enh #1354: Map bad request and unimplement to http status codes + * Enh #929: Include share types in ocs propfind responses + * Enh #1328: Add CLI commands for public shares + * Enh #1388: Support range header in GET requests + * Enh #1361: Remove expired Link on Access + * Enh #1386: Docker image for cs3org/revad:VERSION-eos + * Enh #1368: Calculate and expose actual file permission set + +Details +------- + + * Bugfix #1385: Run changelog check only if there are changes in the code + + https://github.com/cs3org/reva/pull/1385 + + * Bugfix #1333: Delete sdk unit tests + + These depend on a remote server running reva and thus fail in case of version mismatches. + + https://github.com/cs3org/reva/pull/1333 + + * Bugfix #1342: Dav endpoint routing to home storage when request is remote.php/dav/files + + There was a regression in which we were not routing correctly to the right storage depending on + the url. + + https://github.com/cs3org/reva/pull/1342 + + * Bugfix #1338: Fix fd leaks + + There were some left over open file descriptors on simple.go. + + https://github.com/cs3org/reva/pull/1338 + + * Bugfix #1343: Fix ocis move + + Use the old node id to build the target path for xattr updates. + + https://github.com/owncloud/ocis/issues/975 + https://github.com/cs3org/reva/pull/1343 + + * Bugfix #551: Fix purging deleted files with the ocis storage + + The ocis storage could load the owner information of a deleted file. This caused the storage to + not be able to purge deleted files. + + https://github.com/owncloud/ocis/issues/551 + + * Bugfix #863: Fix dav api for trashbin + + The api was comparing the requested username to the userid. + + https://github.com/owncloud/ocis/issues/863 + + * Bugfix #204: Fix the ocs share with me response + + The path of the files shared with me was incorrect. + + https://github.com/owncloud/product/issues/204 + https://github.com/cs3org/reva/pull/1346 + + * Bugfix #1351: Fix xattr.Remove error check for macOS + + Previously, we checked the xattr.Remove error only for linux systems. Now macOS is checked + also + + https://github.com/cs3org/reva/pull/1351 + + * Bugfix #1320: Do not panic on remote.php/dav/files/ + + Currently requests to /remote.php/dav/files/ result in panics since we cannot longer strip + the user + destination from the url. This fixes the server response code and adds an error body to + the response. + + https://github.com/cs3org/reva/pull/1320 + + * Bugfix #1379: Make Jaeger agent usable + + Previously, you could not use tracing with jaeger agent because the tracing connector is + always used instead of the tracing endpoint. + + This PR removes the defaults for collector and tracing endpoint. + + https://github.com/cs3org/reva/pull/1379 + + * Bugfix #1331: Fix capabilities response for multiple client versions + + https://github.com/cs3org/reva/pull/1331 + + * Bugfix #1281: When sharing via ocs look up user by username + + The ocs api returns usernames when listing share recipients, so the lookup when creating the + share needs to search the usernames and not the userid. + + https://github.com/cs3org/reva/pull/1281 + + * Bugfix #1334: Handle removal of public shares by token or ID + + Previously different drivers handled removing public shares using different means, either + the token or the ID. Now, both the drivers support both these methods. + + https://github.com/cs3org/reva/pull/1334 + + * Change #990: Replace the user uuid with the username in ocs share responses + + The ocs api should not send the users uuid. Replaced the uuid with the username. + + https://github.com/owncloud/ocis/issues/990 + https://github.com/cs3org/reva/pull/1375 + + * Enhancement #1350: Add auth protocol based on user agent + + Previously, all available credential challenges are given to the client, for example, basic + auth, bearer token, etc ... Different clients have different priorities to use one method or + another, and before it was not possible to force a client to use one method without having a side + effect on other clients. + + This PR adds the functionality to target a specific auth protocol based on the user agent HTTP + header. + + https://github.com/cs3org/reva/pull/1350 + + * Enhancement #1362: Mark 'store-dev-release' CI step as failed on 4XX/5XX errors + + Prevent the errors while storing new 'daily' releases from going unnoticed on the CI. + + https://github.com/cs3org/reva/pull/1362 + + * Enhancement #1364: Remove expired Link on Get + + There is the scenario in which a public link has expired but ListPublicLink has not run, + accessing a technically expired public share is still possible. + + https://github.com/cs3org/reva/pull/1364 + + * Enhancement #1340: Add cache to store UID to UserID mapping in EOS + + Previously, we used to send an RPC to the user provider service for every lookup of user IDs from + the UID stored in EOS. This PR adds an in-memory lock-protected cache to store this mapping. + + https://github.com/cs3org/reva/pull/1340 + + * Enhancement #1154: Add support for the protobuf interface to eos metadata + + https://github.com/cs3org/reva/pull/1154 + + * Enhancement #1154: Merge-rebase from master 10/11/2020 + + https://github.com/cs3org/reva/pull/1154 + + * Enhancement #1359: Add cache for calculated etags for home and shares directory + + Since we store the references in the shares directory instead of actual resources, we need to + calculate the etag on every list/stat call. This is rather expensive so adding a cache would + help to a great extent with regard to the performance. + + https://github.com/cs3org/reva/pull/1359 + + * Enhancement #1321: Add support for multiple data transfer protocols + + Previously, we had to configure which data transfer protocol to use in the dataprovider + service. A previous PR added the functionality to redirect requests to different handlers + based on the request method but that would lead to conflicts if multiple protocols don't + support mutually exclusive sets of requests. This PR adds the functionality to have multiple + such handlers simultaneously and the client can choose which protocol to use. + + https://github.com/cs3org/reva/pull/1321 + https://github.com/cs3org/reva/pull/1285/ + + * Enhancement #1324: Log expected errors with debug level + + While trying to download a non existing file and reading a non existing attribute are + technically an error they are to be expected and nothing an admin can or even should act upon. + + https://github.com/cs3org/reva/pull/1324 + + * Enhancement #1351: Map errtypes to status + + When mapping errtypes to grpc statuses we now also map bad request and not implemented / + unsupported cases in the gateway storageprovider. + + https://github.com/cs3org/reva/pull/1351 + + * Enhancement #1347: Support property to enable health checking on a service + + This update introduces a new service property called `ENABLE_HEALTH_CHECKS` that must be + explicitly set to `true` if a service should be checked for its health status. This allows us to + only enable these checks for partner sites only, skipping vendor sites. + + https://github.com/cs3org/reva/pull/1347 + + * Enhancement #1332: Add import support to Mentix + + This update adds import support to Mentix, transforming it into a **Mesh Entity Exchanger**. + To properly support vendor site management, a new connector that works on a local file has been + added as well. + + https://github.com/cs3org/reva/pull/1332 + + * Enhancement #1371: Use self-hosted Drone CI + + Previously, we used the drone cloud to run the CI for the project. Due to unexpected and sudden + stop of the service for the cs3org we decided to self-host it. + + https://github.com/cs3org/reva/pull/1371 + + * Enhancement #1354: Map bad request and unimplement to http status codes + + We now return a 400 bad request when a grpc call fails with an invalid argument status and a 501 not + implemented when it fails with an unimplemented status. This prevents 500 errors when a user + tries to add resources to the Share folder or a storage does not implement an action. + + https://github.com/cs3org/reva/pull/1354 + + * Enhancement #929: Include share types in ocs propfind responses + + Added the share types to the ocs propfind response when a resource has been shared. + + https://github.com/owncloud/ocis/issues/929 + https://github.com/cs3org/reva/pull/1329 + + * Enhancement #1328: Add CLI commands for public shares + + https://github.com/cs3org/reva/pull/1328 + + * Enhancement #1388: Support range header in GET requests + + To allow resuming a download we now support GET requests with a range header. + + https://github.com/owncloud/ocis-reva/issues/12 + https://github.com/cs3org/reva/pull/1388 + + * Enhancement #1361: Remove expired Link on Access + + Since there is no background jobs scheduled to wipe out expired resources, for the time being + public links are going to be removed on a "on demand" basis, meaning whenever there is an API call + that access the list of shares for a given resource, we will check whether the share is expired + and delete it if so. + + https://github.com/cs3org/reva/pull/1361 + + * Enhancement #1386: Docker image for cs3org/revad:VERSION-eos + + Based on eos:c8_4.8.15 (Centos8, version 4.8.15). To be used when the Reva daemon needs IPC + with xrootd/eos via stdin/out. + + https://github.com/cs3org/reva/pull/1386 + https://github.com/cs3org/reva/pull/1389 + + * Enhancement #1368: Calculate and expose actual file permission set + + Instead of hardcoding the permissions set for every file and folder to ListContainer:true, + CreateContainer:true and always reporting the hardcoded string WCKDNVR for the WebDAV + permissions we now aggregate the actual cs3 resource permission set in the storage drivers and + correctly map them to ocs permissions and webdav permissions using a common role struct that + encapsulates the mapping logic. + + https://github.com/owncloud/ocis/issues/552 + https://github.com/owncloud/ocis/issues/762 + https://github.com/owncloud/ocis/issues/763 + https://github.com/owncloud/ocis/issues/893 + https://github.com/owncloud/ocis/issues/1126 + https://github.com/owncloud/ocis-reva/issues/47 + https://github.com/owncloud/ocis-reva/issues/315 + https://github.com/owncloud/ocis-reva/issues/316 + https://github.com/owncloud/product/issues/270 + https://github.com/cs3org/reva/pull/1368 + +