Skip to content
This repository has been archived by the owner on Jan 31, 2024. It is now read-only.

Commit

Permalink
Merge branch 'upstream-master' into cernbox
Browse files Browse the repository at this point in the history
  • Loading branch information
gmgigi96 committed Sep 25, 2023
2 parents afd6f89 + 8d8dca3 commit b6155cf
Show file tree
Hide file tree
Showing 210 changed files with 7,057 additions and 2,327 deletions.
2 changes: 1 addition & 1 deletion .drone.env
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# The test runner source for API tests
APITESTS_COMMITID=cbe945af4a97b1bafbc903ab5ac2905258f19a62
APITESTS_COMMITID=8931ee1187fa2c2a696a68a99a6c1c77919630d0
APITESTS_BRANCH=master
APITESTS_REPO_GIT_URL=https://github.com/owncloud/ocis.git
1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,6 @@ tests/ocis/tests/acceptance/work_tmp
# drone
.drone.yml


# rpm builds
revad-*
rpmbuild
Expand Down
2 changes: 2 additions & 0 deletions .hound.yml
Original file line number Diff line number Diff line change
@@ -1,2 +1,4 @@
scss:
enabled: false
jshint:
ignore_file: .hound_js_ignore
1 change: 1 addition & 0 deletions .hound_js_ignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
tests/**/*,js
340 changes: 340 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,343 @@
Changelog for reva 1.26.0 (2023-09-08)
=======================================

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

Summary
-------

* Fix #4165: Use default user tmp folder in config tests
* Fix #4113: Fix plugin's registration when reva is built with version 1.21
* Fix #4171: Fix accessing an OCM-shared resource containing spaces
* Fix #4172: Hardcode access methods for outgoing OCM shares from OC/NC
* Fix #4125: Enable projects for lightweight accounts
* Enh #4121: Expire cached users and groups entries
* Enh #4162: Disable sharing on a storage provider
* Enh #4163: Disable trashbin on a storage provider
* Enh #4164: Disable versions on a storage provider
* Enh #4084: Implementation of an app provider for Overleaf
* Enh #4114: List all the registered plugins
* Enh #4115: All required features and fixes for the OC/NC ScienceMesh apps

Details
-------

* Bugfix #4165: Use default user tmp folder in config tests

https://github.com/cs3org/reva/pull/4165

* Bugfix #4113: Fix plugin's registration when reva is built with version 1.21

With go 1.21 the logic for package initialization has changed, and the plugins were failing in
the registration. Now the registration of the plugins is deferred in the main.

https://github.com/cs3org/reva/pull/4113

* Bugfix #4171: Fix accessing an OCM-shared resource containing spaces

Fixes the access of a resource OCM-shared containing spaces, that previously was failing with
a `NotFound` error.

https://github.com/cs3org/reva/pull/4171

* Bugfix #4172: Hardcode access methods for outgoing OCM shares from OC/NC

This is a workaround until sciencemesh/nc-sciencemesh#45 is properly implemented

https://github.com/cs3org/reva/pull/4172

* Bugfix #4125: Enable projects for lightweight accounts

Enable CERNBox projects to be listed by a lightweight account

https://github.com/cs3org/reva/pull/4125

* Enhancement #4121: Expire cached users and groups entries

Entries in the rest user and group drivers do not expire. This means that old users/groups that
have been deleted are still in cache. Now an expiration of `fetch interval + 1` hours has been
set.

https://github.com/cs3org/reva/pull/4121

* Enhancement #4162: Disable sharing on a storage provider

Added a GRPC interceptor that disable sharing permissions on a storage provider.

https://github.com/cs3org/reva/pull/4162

* Enhancement #4163: Disable trashbin on a storage provider

Added a GRPC interceptor that disable the trashbin on a storage provider.

https://github.com/cs3org/reva/pull/4163

* Enhancement #4164: Disable versions on a storage provider

Added a GRPC interceptor that disable the versions on a storage provider.

https://github.com/cs3org/reva/pull/4164

* Enhancement #4084: Implementation of an app provider for Overleaf

This PR adds an app provider for Overleaf as a standalone http service.

The app provider currently consists of support for the export to Overleaf feature, which when
called returns a URL to Overleaf that prompts Overleaf to download the appropriate resource
making use of the Archiver service, and upload the files to a user's Overleaf account.

https://github.com/cs3org/reva/pull/4084

* Enhancement #4114: List all the registered plugins

https://github.com/cs3org/reva/pull/4114

* Enhancement #4115: All required features and fixes for the OC/NC ScienceMesh apps

This PR includes all necessary code in Reva to interface with the ScienceMesh apps in OC and NC

https://github.com/cs3org/reva/pull/4115


Changelog for reva 1.25.0 (2023-08-14)
=======================================

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

Summary
-------

* Fix #4032: Temporarily exclude ceph-iscsi when building revad-ceph image
* Fix #3883: Fix group request to Grappa
* Fix #3946: Filter OCM shares by path
* Fix #4016: Fix panic when closing notification service
* Fix #4061: Fixes on notifications
* Fix #3962: OCM-related compatibility fixes
* Fix #3972: Fix for #3971
* Fix #3882: Remove transfer on cancel should also remove transfer job
* Chg #4041: Clean up notifications error checking code, fix sql creation script
* Chg #3581: Remove meshdirectory http service
* Enh #4044: Added an /app/notify endpoint for logging/tracking apps
* Enh #3915: Storage drivers setup for datatx
* Enh #3891: Provide data transfer size with datatx share
* Enh #3905: Remove redundant config for invite_link_template
* Enh #4031: Dump reva config on SIGUSR1
* Enh #3954: Extend EOS metadata
* Enh #3958: Make `/sciencemesh/find-accepted-users` response
* Enh #3908: Removed support for forcelock
* Enh #4011: Improve logging of HTTP requests
* Enh #3407: Add init time logging to all services
* Enh #4030: Support multiple token strategies in auth middleware
* Enh #4015: New configuration
* Enh #3825: Notifications framework
* Enh #3969: Conditional notifications initialization
* Enh #4077: Handle target in OpenInApp response
* Enh #4073: Plugins
* Enh #3937: Manage OCM shares
* Enh #4035: Enforce/validate configuration of services

Details
-------

* Bugfix #4032: Temporarily exclude ceph-iscsi when building revad-ceph image

Due to `Package ceph-iscsi-3.6-1.el8.noarch.rpm is not signed` error when building the
revad-ceph docker image, the package `ceph-iscsi` has been excluded from the dnf update. It
will be included again once the pkg will be signed again.

https://github.com/cs3org/reva/pull/4032

* Bugfix #3883: Fix group request to Grappa

The `url.JoinPath` call was returning an url-encoded string, turning `?` into `%3`. This
caused the request to return 404.

https://github.com/cs3org/reva/pull/3883

* Bugfix #3946: Filter OCM shares by path

Fixes the bug of duplicated OCM shares returned in the share with others response.

https://github.com/cs3org/reva/pull/3946

* Bugfix #4016: Fix panic when closing notification service

If the connection to the nats server was not yet estabished, the service on close was panicking.
This has been now fixed.

https://github.com/cs3org/reva/pull/4016

* Bugfix #4061: Fixes on notifications

This is to align the code to the latest schema for notifications

https://github.com/cs3org/reva/pull/4061

* Bugfix #3962: OCM-related compatibility fixes

Following analysis of OC and NC code to access a remote share, we must expose paths and not full
URIs on the /ocm-provider endpoint. Also we fix a lookup issue with apps over OCM and update
examples.

https://github.com/cs3org/reva/pull/3962

* Bugfix #3972: Fix for #3971

Fixed panic described in #3971

https://github.com/cs3org/reva/pull/3972

* Bugfix #3882: Remove transfer on cancel should also remove transfer job

https://github.com/cs3org/reva/issues/3881
https://github.com/cs3org/reva/pull/3882

* Change #4041: Clean up notifications error checking code, fix sql creation script

https://github.com/cs3org/reva/pull/4041

* Change #3581: Remove meshdirectory http service

As of meshdirectory-web version 2.0.0, it is now implemented and deployed as a completely
separate app, independent from Reva. We removed any deprecated meshdirectory-related code
from Reva.

https://github.com/cs3org/reva/pull/3581

* Enhancement #4044: Added an /app/notify endpoint for logging/tracking apps

The new endpoint serves to probe the health state of apps such as Microsoft Office Online, and it
is expected to be called by the frontend upon successful loading of the document by the
underlying app

https://github.com/cs3org/reva/pull/4044

* Enhancement #3915: Storage drivers setup for datatx

https://github.com/cs3org/reva/issues/3914
https://github.com/cs3org/reva/pull/3915

* Enhancement #3891: Provide data transfer size with datatx share

https://github.com/cs3org/reva/issues/2104
https://github.com/cs3org/reva/pull/3891

* Enhancement #3905: Remove redundant config for invite_link_template

This is to drop invite_link_template from the OCM-related config. Now the provider_domain
and mesh_directory_url config options are both mandatory in the sciencemesh http service,
and the link is directly built out of the context.

https://github.com/cs3org/reva/pull/3905

* Enhancement #4031: Dump reva config on SIGUSR1

Add an option to the runtime to dump the configuration on a file (default to
`/tmp/reva-dump.toml` and configurable) when the process receives a SIGUSR1 signal.
Eventual errors are logged in the log.

https://github.com/cs3org/reva/pull/4031

* Enhancement #3954: Extend EOS metadata

This PR extend the EOS metadata with atime and ctime fields. This change is backwards
compatible.

https://github.com/cs3org/reva/pull/3954

* Enhancement #3958: Make `/sciencemesh/find-accepted-users` response

Consistent with delete user parameters

https://github.com/cs3org/reva/pull/3958

* Enhancement #3908: Removed support for forcelock

This workaround is not needed any longer, see also the wopiserver.

https://github.com/cs3org/reva/pull/3908

* Enhancement #4011: Improve logging of HTTP requests

Added request and response headers and removed redundant URL from the "http" messages

https://github.com/cs3org/reva/pull/4011

* Enhancement #3407: Add init time logging to all services

https://github.com/cs3org/reva/pull/3407

* Enhancement #4030: Support multiple token strategies in auth middleware

Different HTTP services can in general support different token strategies for validating the
reva token. In this context, without updating every single client a mono process deployment
will never work. Now the HTTP auth middleware accepts in its configuration a token strategy
chain, allowing to provide the reva token in multiple places (bearer auth, header).

https://github.com/cs3org/reva/pull/4030

* Enhancement #4015: New configuration

Allow multiple driverts of the same service to be in the same toml config. Add a `vars` section to
contain common parameters addressable using templates in the configuration of the different
drivers. Support templating to reference values of other parameters in the configuration.
Assign random ports to services where the address is not specified.

https://github.com/cs3org/reva/pull/4015

* Enhancement #3825: Notifications framework

Adds a notifications framework to Reva.

The new notifications service communicates with the rest of reva using NATS. It provides
helper functions to register new notifications and to send them.

Notification templates are provided in the configuration files for each service, and they are
registered into the notifications service on initialization.

https://github.com/cs3org/reva/pull/3825

* Enhancement #3969: Conditional notifications initialization

Notification helpers in services will not try to initalize if there is no specific
configuration.

https://github.com/cs3org/reva/pull/3969

* Enhancement #4077: Handle target in OpenInApp response

This PR adds the OpenInApp.target and AppProviderInfo.action properties to the respective
responses (/app/open and /app/list), to support different app integrations. In addition,
the archiver was extended to use the name of the file/folder as opposed to "download", and to
include a query parameter to override the archive type, as it will be used in an upcoming app.

https://github.com/cs3org/reva/pull/4077

* Enhancement #4073: Plugins

Adds a plugin system for allowing the creation of external plugins for different plugable
components in reva, for example grpc drivers, http services and middlewares.

https://github.com/cs3org/reva/pull/4073

* Enhancement #3937: Manage OCM shares

Implements the following item regarding OCM: - update of OCM shares in both grpc and ocs layer,
allowing an user to update permissions and expiration of the share - deletion of OCM shares in
both grpc and ocs layer - accept/reject of received OCM shares - remove accepted remote users

https://github.com/cs3org/reva/pull/3937

* Enhancement #4035: Enforce/validate configuration of services

Every driver can now specify some validation rules on the configuration. If the validation
rules are not respected, reva will bail out on startup with a clear error.

https://github.com/cs3org/reva/pull/4035


Changelog for reva 1.24.0 (2023-05-11)
=======================================

Expand Down
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ GIT_COMMIT ?= `git rev-parse --short HEAD`
VERSION ?= `git describe --always`
GO_VERSION ?= `go version | awk '{print $$3}'`
BUILD_DATE = `date +%FT%T%z`
BUILD_FLAGS = "`[[ -z "$(STATIC)" ]] && echo "" || echo "-extldflags=-static"` -X main.gitCommit=$(GIT_COMMIT) -X main.version=$(VERSION) -X main.goVersion=$(GO_VERSION) -X main.buildDate=$(BUILD_DATE)" -trimpath
BUILD_FLAGS = "`[[ -z "$(STATIC)" ]] && echo "" || echo "-extldflags=-static"` -X github.com/cs3org/reva/cmd/revad.gitCommit=$(GIT_COMMIT) -X github.com/cs3org/reva/cmd/revad.version=$(VERSION) -X github.com/cs3org/reva/cmd/revad.goVersion=$(GO_VERSION) -X github.com/cs3org/reva/cmd/revad.buildDate=$(BUILD_DATE)"

.PHONY: revad
revad:
Expand Down
2 changes: 1 addition & 1 deletion RELEASE_DATE
Original file line number Diff line number Diff line change
@@ -1 +1 @@
2023-05-11
2023-09-08
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
1.24.0
1.26.0
6 changes: 6 additions & 0 deletions changelog/1.25.0_2023-08-14/extend-eos-meta.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
Enhancement: Extend EOS metadata

This PR extend the EOS metadata with atime and ctime fields.
This change is backwards compatible.

https://github.com/cs3org/reva/pull/3954
File renamed without changes.
File renamed without changes.
File renamed without changes.
7 changes: 7 additions & 0 deletions changelog/1.26.0_2023-09-08/expiration-grappa-entries.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
Enhancement: Expire cached users and groups entries

Entries in the rest user and group drivers do not expire.
This means that old users/groups that have been deleted are still in cache.
Now an expiration of `fetch interval + 1` hours has been set.

https://github.com/cs3org/reva/pull/4121
Loading

0 comments on commit b6155cf

Please sign in to comment.