Skip to content

Releases: cs3org/reva

v2.27.3

27 Jan 12:59
v2.27.3
df0a61a
Compare
Choose a tag to compare

Changelog for reva 2.27.3 (2025-01-27)

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

Summary

  • Fix #5042: Fix ocis dependency
  • Enh #5051: Emit SpaceMembershipExpired event

Details

  • Bugfix #5042: Fix ocis dependency

Fix the ocm gateway connection pool. Fix ocis dependency in the reva go.mod file. Bump the ocis
version accordingly to the major version.

owncloud/ocis#10846
owncloud/ocis#10878
#5042

  • Enhancement #5051: Emit SpaceMembershipExpired event

owncloud/ocis#10919
#5051

v2.27.2

17 Jan 10:55
v2.27.2
0673197
Compare
Choose a tag to compare

Changelog for reva 2.27.2 (2025-01-17)

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

Summary

  • Fix #5043: Fix SpaceMembershipExpired unmarshal

Details

  • Bugfix #5043: Fix SpaceMembershipExpired unmarshal

SpaceMembershipExpired events can now be unmarshalled correctly

#5043

v2.27.1

09 Jan 18:46
v2.27.1
d59fea7
Compare
Choose a tag to compare

Changelog for reva 2.27.1 (2025-01-09)

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

Summary

  • Fix #5033: Fix ocm wildcards
  • Fix #5031: Allow to accepted invite after it was once deleted
  • Fix #5026: Delete Blobs when Space is deleted
  • Enh #5025: Allow wildcards in OCM domains
  • Enh #5023: Notification feature toggle
  • Enh #4990: Allow locking via ocm
  • Enh #5032: Add SendEmailsEvent

Details

  • Bugfix #5033: Fix ocm wildcards

Ocm wildcards were not working properly. We now overwrite the wildcard values with the actual
domain.

#5033

  • Bugfix #5031: Allow to accepted invite after it was once deleted

Allowed to accepted invite even after it was once deleted on the invite receiver or invite
creation side.

owncloud/ocis#10813
#5031

  • Bugfix #5026: Delete Blobs when Space is deleted

Delete all blobs of a space when the space is deleted.

#5026

  • Enhancement #5025: Allow wildcards in OCM domains

When verifiying domains, allow wildcards in the domain name. This will not work when using
verify-request-hostname

#5025

  • Enhancement #5023: Notification feature toggle

Adds a feature toggle for the notification settings.

#5023

  • Enhancement #4990: Allow locking via ocm

Implement locking endpoints so files can be locked and unlocked via ocm.

#4990

  • Enhancement #5032: Add SendEmailsEvent

Adds SendEmailsEvent that is used to trigger the sending of group emails.

#5032

v1.29.0

07 Jan 10:00
Compare
Choose a tag to compare

Changelog for reva 1.29.0 (2025-01-07)

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

Summary

  • Fix #4898: Make ACL operations work over gRPC
  • Fix #4667: Fixed permission mapping to EOS ACLs
  • Fix #4520: Do not use version folders for xattrs in EOS
  • Fix #4599: Auth: increase verbosity of oidc parsing errors
  • Fix #5006: Blocking reva on listSharedWithMe
  • Fix #4557: Fix ceph build
  • Fix #5017: No empty favs attr
  • Fix #4620: Fix ulimits for EOS container deployment
  • Fix #5015: Fixed error reporting in the EOS gRPC client
  • Fix #4931: Fixed tree metadata following fix in EOS
  • Fix #4930: Make removal of favourites work
  • Fix #4574: Fix notifications
  • Fix #4790: Ocm: fixed domain not having a protocol scheme
  • Fix #4849: Drop assumptions about user types when dealing with shares
  • Fix #4894: No certs in EOS HTTP client
  • Fix #4810: Simplified error handling
  • Fix #4973: Handle parsing of favs over gRPC
  • Fix #4901: Broken PROPFIND perms on gRPC
  • Fix #4907: Public links: return error when owner could not be resolved
  • Fix #4591: Eos: fixed error reporting for too large recycle bin listing
  • Fix #4896: Fix nilpointer error in RollbackToVersion
  • Fix #4905: PurgeDate in ListDeletedEntries was ignored
  • Fix #4939: Revert 'make home layout configurable'
  • Enh #5028: Handle empty EOS traces
  • Enh #4911: Cephfs refactoring + make home layout configurable
  • Enh #4937: @labkode steps down as project owner
  • Enh #4579: Remove domain-specific code to other repos
  • Enh #4824: Refactor Ceph code
  • Enh #4797: Refactor CI jobs and bump to latest deps
  • Enh #4934: Access to EOS via tokens over gRPC
  • Enh #4870: Only load X509 on https
  • Enh #5014: Log app when creating EOS gRPC requests
  • Enh #4892: Do not read eos user ACLs any longer
  • Enh #4720: Differentiate quota for user types in EOS
  • Enh #4863: Favourites for eos/grpc
  • Enh #5013: Updated dependencies + moved to go 1.22
  • Enh #4514: Pass lock holder metadata on uploads
  • Enh #4970: Improved logging on createHome
  • Enh #4984: Drop shadow namespaces
  • Enh #4670: Ocm: support bearer token access
  • Enh #4977: Do not use root on EOS

Details

  • Bugfix #4898: Make ACL operations work over gRPC

    This change solves two issues: * AddACL would fail, because the current implementation of
    AddACL in the EOS gRPC client always sets msg.Recursive = true. This causes issues on the EOS
    side, because it will try running a recursive find on a file, which fails. * RemoveACL would
    fail, because it tried matching ACL rules with a uid to ACL rules with a username. This PR changes
    this approach to use an approach similar to what is used in the binary client: just set the rule
    that you want to have deleted with no permissions.

    #4898

  • Bugfix #4667: Fixed permission mapping to EOS ACLs

    This is to remove "m" and "q" flags in EOS ACLs for regular write shares (no re-sharing).

    #4667

  • Bugfix #4520: Do not use version folders for xattrs in EOS

    This was a workaround needed some time ago. We revert now to the standard behavior, xattrs are
    stored on the files.

    #4520

  • Bugfix #4599: Auth: increase verbosity of oidc parsing errors

    This is to help further debugging of auth issues. An unrelated error reporting was also fixed.

    #4599

  • Bugfix #5006: Blocking reva on listSharedWithMe

    listSharesWithMe blocked a reva thread in the case that one of the shares was not resolvable.
    This has now been fixed

    #5006

  • Bugfix #4557: Fix ceph build

    #4557

  • Bugfix #5017: No empty favs attr

    See issue #5016: we now unset the favs attr if no more favs are set

    #5017

  • Bugfix #4620: Fix ulimits for EOS container deployment

    #4620

  • Bugfix #5015: Fixed error reporting in the EOS gRPC client

    This in particular fixes the lock-related errors

    #5015

  • Bugfix #4931: Fixed tree metadata following fix in EOS

    The treecount is now populated from the EOS response.

    #4931

  • Bugfix #4930: Make removal of favourites work

    Currently, removing a folder from your favourites is broken, because the handleFavAttr
    method is only called in SetAttr, not in UnsetAttr. This change fixes this.

    #4930

  • Bugfix #4574: Fix notifications

    #4574

  • Bugfix #4790: Ocm: fixed domain not having a protocol scheme

    This PR fixes a bug in the OCM open driver that causes it to be unable to probe OCM services at the
    remote server due to the domain having an unsupported protocol scheme. in this case domain
    doesn't have a scheme and the changes in this PR add a scheme to the domain before doing the probe.

    #4790

  • Bugfix #4849: Drop assumptions about user types when dealing with shares

    We may have external accounts with regular usernames (and with null uid), therefore the
    current logic to heuristically infer the user type from a grantee's username is broken. This PR
    removes those heuristics and requires the upper level to resolve the user type.

    #4849

  • Bugfix #4894: No certs in EOS HTTP client

    Omit HTTPS cert in EOS HTTP Client, as this causes authentication issues on EOS < 5.2.28. When
    EOS receives a certificate, it will look for this cert in the gridmap file. If it is not found
    there, the whole authn flow is aborted and the user is mapped to nobody.

    #4894

  • Bugfix #4810: Simplified error handling

    Minor rewording and simplification, following cs3org/OCM-API#90 and cs3org/OCM-API#91

    #4810

  • Bugfix #4973: Handle parsing of favs over gRPC

    To store user favorites, the key user.http://owncloud.org/ns/favorite maps to a list of
    users, in the format u:username=1. Right now, extracting the "correct" user doesn't happen
    in gRPC, while it is implemented in the EOS binary client. This feature has now been moved to the
    higher-level call in eosfs.

    #4973

  • Bugfix #4901: Broken PROPFIND perms on gRPC

    When using the EOS gRPC stack, the permissions returned by PROPFIND on a folder in a project were
    erroneous because ACL permissions were being ignored. This stems from a bug in
    grpcMDResponseToFileInfo, where the SysACL attribute of the FileInfo struct was not being
    populated.

    #4901
    see:

  • Bugfix #4907: Public links: return error when owner could not be resolved

    #4907

  • Bugfix #4591: Eos: fixed error reporting for too large recycle bin listing

    EOS returns E2BIG, which internally gets converted to PermissionDenied and has to be properly
    handled in this case.

    #4591

  • Bugfix #4896: Fix nilpointer error in RollbackToVersion

    #4896

  • Bugfix #4905: PurgeDate in ListDeletedEntries was ignored

    The date range that can be passed to ListDeletedEntries was not taken into account due to a bug in
    reva: the Purgedate argument was set, which only works for PURGE requests, and not for LIST
    requests. Instead, the Listflag argument must be used. Additionally, there was a bug in the
    loop that is used to iterate over all days in the date range.

    #4905

  • Bugfix #4939: Revert 'make home layout configurable'

    Partial revert of #4911, to be re-added after more testing and configuration validation. The
    eoshome vs eos storage drivers are to be adapted.

    #4939

  • Enhancement #5028: Handle empty EOS traces

    #5028

  • Enhancement #4911: Cephfs refactoring + make home layout configurable

    #4911

  • Enhancement #4937: @labkode steps down as project owner

    Hugo (@labkode) steps down as project owner of Reva.

    #4937

  • Enhancement #4579: Remove domain-specific code to other repos

    #4579

  • Enhancement #4824: Refactor Ceph code

    #4824

  • Enhancement #4797: Refactor CI jobs and bump to latest deps

    #4797

  • Enhancement #4934: Access to EOS via tokens over gRPC

    As a guest account, accessing a file shared with you relies on a token that is generated on behalf
    of the resource owner. This method, GenerateToken, has now been implemented in the EOS gRPC
    client. Additionally, the HTTP client now takes tokens into account.

    #4934

  • Enhancement #4870: Only load X509 on https

    Currently, the EOS HTTP Client always tries to read an X509 key pair from the file system (by
    default, from /etc/grid-security/host{key,cert}.pem). This makes it harder to write unit
    tests, as these fail when this key pair is not on the file system (which is the case for the test
    pipeline as well).

    This PR introduces a fix for this problem, by only loading the X509 key pair if the scheme of the
    EOS endpoint is https. Unit tests can then create a mock HTTP endpoint, which will not trigger
    the loading of the key pair.

    #4870

  • Enhancement #5014: Log app when creating EOS gRPC requests

    #5014

  • Enhancement #4892: Do not read eos user ACLs any...

Read more

v2.27.0

12 Dec 12:25
v2.27.0
Compare
Choose a tag to compare

Changelog for reva 2.27.0 (2024-12-12)

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

Summary

  • Fix #4985: Drop unneeded session locks
  • Fix #5000: Fix ceph build
  • Fix #4989: Deleting OCM share also updates storageprovider
  • Enh #4998: Emit event when an ocm share is received
  • Enh #4996: Get rid of some cases of unstructured logging

Details

  • Bugfix #4985: Drop unneeded session locks

We no longer lock session metadada files, as they are already written atomically.

#4985

  • Bugfix #5000: Fix ceph build

#5000

  • Bugfix #4989: Deleting OCM share also updates storageprovider

When remvoving an OCM share we're now also removing the related grant from the storage
provider.

owncloud/ocis#10262
#4989

  • Enhancement #4998: Emit event when an ocm share is received

owncloud/ocis#10718
#4998

  • Enhancement #4996: Get rid of some cases of unstructured logging

#4996

v2.26.8

04 Dec 15:27
v2.26.8
bddf9f0
Compare
Choose a tag to compare

Changelog for reva 2.26.8 (2024-12-04)

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

Summary

  • Fix #4983: Delete stale shares in the jsoncs3 share manager
  • Fix #4963: Fix name and displayName in an ocm
  • Fix #4968: Jsoncs3 cache fixes
  • Fix #4928: Propagate lock in PROPPATCH
  • Fix #4971: Use manager to list shares
  • Enh #4978: We added more trace spans in decomposedfs
  • Enh #4921: Polish propagation related code

Details

  • Bugfix #4983: Delete stale shares in the jsoncs3 share manager

The jsoncs3 share manager now properly deletes all references to removed shares and shares
that belong to a space that was deleted

#4983
#4975

  • Bugfix #4963: Fix name and displayName in an ocm

Fixed name and displayName in an ocm PROPFIND response

owncloud/ocis#10582
#4963

  • Bugfix #4968: Jsoncs3 cache fixes

The jsoncs3 share manager now retries persisting if the file already existed and picks up the
etag of the upload response in all cases.

#4968
#4532

  • Bugfix #4928: Propagate lock in PROPPATCH

Clients using locking (ie. Windows) could not create/copy files over webdav as file seemed to
be locked.

#4928

  • Bugfix #4971: Use manager to list shares

When updating a received share the usershareprovider now uses the share manager directly to
list received shares instead of going through the gateway again.

#4971

  • Enhancement #4978: We added more trace spans in decomposedfs

#4978

  • Enhancement #4921: Polish propagation related code

We polished some corner cases for propagation that reduce log messages in normal operation.

#4921

v2.26.7

20 Nov 12:47
v2.26.7
c486f05
Compare
Choose a tag to compare

Changelog for reva 2.26.7 (2024-11-20)

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

Summary

  • Fix #4964: Fix a wrong error code when approvider creates a new file

Details

  • Bugfix #4964: Fix a wrong error code when approvider creates a new file

We fixed a problem where the approvider would return a 500 error instead of 403 when trying to
create a new file in a read-only share.

#4964

v2.26.6

19 Nov 14:25
v2.26.6
4f31fd9
Compare
Choose a tag to compare

Changelog for reva 2.26.6 (2024-11-19)

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

Summary

  • Fix #4955: Allow small clock skew in reva token validation
  • Fix #4929: Fix flaky posixfs integration tests
  • Fix #4953: Avoid gateway panics
  • Fix #4959: Fix missing file touched event
  • Fix #4933: Fix federated sharing when using an external identity provider
  • Fix #4935: Enable datatx log
  • Fix #4936: Do not delete mlock files
  • Fix #4954: Prevent a panic when logging an error
  • Fix #4956: Improve posixfs error handling and logging
  • Fix #4951: Pass the initialized logger down the stack

Details

  • Bugfix #4955: Allow small clock skew in reva token validation

Allow for a small clock skew (3 seconds by default) when validating reva tokens as the different
services might be running on different machines.

#4952
#4955

  • Bugfix #4929: Fix flaky posixfs integration tests

We fixed a problem with the posixfs integration tests where the in-memory id cache sometimes
hadn't caught up with the cleanup between test runs leading to flaky failures.

#4929

  • Bugfix #4953: Avoid gateway panics

The gateway would panic if there is a missing user in the context. Now it errors instead.

#4953

  • Bugfix #4959: Fix missing file touched event

We have fixed an issue where the file touched event was not being triggered when an office
document was created.

owncloud/ocis#8950
#4959

  • Bugfix #4933: Fix federated sharing when using an external identity provider

We fixes and issue that caused federated sharing to fail when the identity provider url did not
match the federation provider url.

#4933

  • Bugfix #4935: Enable datatx log

We now pass a properly initialized logger to the datatx implementations, allowing the tus
handler to log with the same level as the rest of reva.

#4935

  • Bugfix #4936: Do not delete mlock files

To prevent stale NFS file handles we no longer delete empty mlock files after updating the
metadata.

#4936
#4924

  • Bugfix #4954: Prevent a panic when logging an error

We fixed a panic when constructing a path failed to get the parent for a node.

#4954

  • Bugfix #4956: Improve posixfs error handling and logging

We improved error handling and logging in the posixfs storage driver.

#4956

  • Bugfix #4951: Pass the initialized logger down the stack

We now make the initialized logger available to grpc services and storage drivers, which
allows for easier and more uniform logging.

#4951

v2.26.5

12 Nov 16:22
v2.26.5
37c97fe
Compare
Choose a tag to compare

Changelog for reva 2.26.5 (2024-11-12)

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

Summary

  • Fix #4926: Make etag always match content on downloads
  • Fix #4920: Return correct status codes for simple uploads
  • Fix #4924: Fix sync propagation
  • Fix #4916: Improve posixfs stability and performance

Details

  • Bugfix #4926: Make etag always match content on downloads

We added an openReaderfunc to the Download interface to give drivers a way to guarantee that the
reader matches the etag returned in a previous GetMD call.

#4926
#4923

  • Bugfix #4920: Return correct status codes for simple uploads

Decomposedfs now returns the correct precondition failed status code when the etag does not
match. This allows the jsoncs3 share managers optimistic locking to handle concurrent writes
correctly

#4920

  • Bugfix #4924: Fix sync propagation

Fixes the defers in the sync propagation.

#4924

  • Bugfix #4916: Improve posixfs stability and performance

The posixfs storage driver saw a number of bugfixes and optimizations.

#4916

v2.26.4

07 Nov 11:33
v2.26.4
71b6998
Compare
Choose a tag to compare

Changelog for reva 2.26.4 (2024-11-07)

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

Summary

  • Fix #4917: Fix 0-byte file uploads
  • Fix #4918: Fix app templates

Details

  • Bugfix #4917: Fix 0-byte file uploads

We fixed an issue where 0-byte files upload did not return the Location header.

owncloud/ocis#10469
#4917

  • Bugfix #4918: Fix app templates

We fixed the app templates by using the product name of the providerinfo instead of the provider
name.

#4918