diff --git a/.woodpecker.env b/.woodpecker.env index 7e1abc2b0..d212f9037 100644 --- a/.woodpecker.env +++ b/.woodpecker.env @@ -1,4 +1,4 @@ # The test runner source for UI tests -WEB_COMMITID=d5f9ddb7878c20ca6db54b6f097e611c996de728 +WEB_COMMITID=980964ccafe81cba6742cead151ac2d61408dae3 WEB_BRANCH=main diff --git a/.woodpecker.star b/.woodpecker.star index 5dc647caf..3d34d29ff 100644 --- a/.woodpecker.star +++ b/.woodpecker.star @@ -1550,6 +1550,7 @@ def e2eTestPipeline(ctx): "PLAYWRIGHT_BROWSERS_PATH": "%s/%s" % (dirs["base"], ".playwright"), "BROWSER": "chromium", "REPORT_TRACING": params["reportTracing"], + "SLOW_MO": "500", }, "commands": [ "cd %s/tests/e2e" % dirs["web"], diff --git a/go.mod b/go.mod index a98653c0b..3b0fdeaa2 100644 --- a/go.mod +++ b/go.mod @@ -65,7 +65,7 @@ require ( github.com/open-policy-agent/opa v1.12.3 github.com/opencloud-eu/icap-client v0.0.0-20250930132611-28a2afe62d89 github.com/opencloud-eu/libre-graph-api-go v1.0.8-0.20250724122329-41ba6b191e76 - github.com/opencloud-eu/reva/v2 v2.41.1-0.20260120144836-2769c3c07a19 + github.com/opencloud-eu/reva/v2 v2.42.0 github.com/opensearch-project/opensearch-go/v4 v4.6.0 github.com/orcaman/concurrent-map v1.0.0 github.com/pkg/errors v0.9.1 diff --git a/go.sum b/go.sum index 0cb9537dc..6f6eb39b5 100644 --- a/go.sum +++ b/go.sum @@ -969,8 +969,8 @@ github.com/opencloud-eu/inotifywaitgo v0.0.0-20251111171128-a390bae3c5e9 h1:dIft github.com/opencloud-eu/inotifywaitgo v0.0.0-20251111171128-a390bae3c5e9/go.mod h1:JWyDC6H+5oZRdUJUgKuaye+8Ph5hEs6HVzVoPKzWSGI= github.com/opencloud-eu/libre-graph-api-go v1.0.8-0.20250724122329-41ba6b191e76 h1:vD/EdfDUrv4omSFjrinT8Mvf+8D7f9g4vgQ2oiDrVUI= github.com/opencloud-eu/libre-graph-api-go v1.0.8-0.20250724122329-41ba6b191e76/go.mod h1:pzatilMEHZFT3qV7C/X3MqOa3NlRQuYhlRhZTL+hN6Q= -github.com/opencloud-eu/reva/v2 v2.41.1-0.20260120144836-2769c3c07a19 h1:8loHHe7FYd7zgIcGTlbHwre+bU/AAwREEYVd4SWM9/s= -github.com/opencloud-eu/reva/v2 v2.41.1-0.20260120144836-2769c3c07a19/go.mod h1:pv+w23JG0/qJweZbTzNNev//YEvlUML1L/2iXgKGkkg= +github.com/opencloud-eu/reva/v2 v2.42.0 h1:CWlXbNqUSduQ5Afi6XoegoJ/zyV0Vx5UoPKAZZmEAq4= +github.com/opencloud-eu/reva/v2 v2.42.0/go.mod h1:pv+w23JG0/qJweZbTzNNev//YEvlUML1L/2iXgKGkkg= github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U= github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM= github.com/opencontainers/image-spec v1.1.1 h1:y0fUlFfIZhPF1W537XOLg0/fcx6zcHCJwooC2xJA040= diff --git a/vendor/github.com/opencloud-eu/reva/v2/internal/http/services/owncloud/ocdav/copy.go b/vendor/github.com/opencloud-eu/reva/v2/internal/http/services/owncloud/ocdav/copy.go index 5019a0e2d..163c7c7ed 100644 --- a/vendor/github.com/opencloud-eu/reva/v2/internal/http/services/owncloud/ocdav/copy.go +++ b/vendor/github.com/opencloud-eu/reva/v2/internal/http/services/owncloud/ocdav/copy.go @@ -517,13 +517,15 @@ func (s *svc) executeSpacesCopy(ctx context.Context, w http.ResponseWriter, sele return err } defer httpDownloadRes.Body.Close() - if httpDownloadRes.StatusCode == http.StatusForbidden { - w.WriteHeader(http.StatusForbidden) - b, err := errors.Marshal(http.StatusForbidden, http.StatusText(http.StatusForbidden), "", strconv.Itoa(http.StatusForbidden)) + switch httpDownloadRes.StatusCode { + case http.StatusForbidden, http.StatusTooEarly: + w.WriteHeader(httpDownloadRes.StatusCode) + b, err := errors.Marshal(http.StatusForbidden, http.StatusText(httpDownloadRes.StatusCode), "", strconv.Itoa(httpDownloadRes.StatusCode)) errors.HandleWebdavError(log, w, b, err) return nil - } - if httpDownloadRes.StatusCode != http.StatusOK { + case http.StatusOK: + // ok + default: return fmt.Errorf("status code %d", httpDownloadRes.StatusCode) } diff --git a/vendor/github.com/opencloud-eu/reva/v2/pkg/rhttp/datatx/utils/download/download.go b/vendor/github.com/opencloud-eu/reva/v2/pkg/rhttp/datatx/utils/download/download.go index 41ebd3022..80218f944 100644 --- a/vendor/github.com/opencloud-eu/reva/v2/pkg/rhttp/datatx/utils/download/download.go +++ b/vendor/github.com/opencloud-eu/reva/v2/pkg/rhttp/datatx/utils/download/download.go @@ -275,6 +275,9 @@ func handleError(w http.ResponseWriter, log *zerolog.Logger, err error, action s case errtypes.Aborted: log.Debug().Err(err).Str("action", action).Msg("etags do not match") w.WriteHeader(http.StatusPreconditionFailed) + case errtypes.TooEarly: + log.Debug().Err(err).Str("action", action).Msg("file is still being processed") + w.WriteHeader(http.StatusTooEarly) default: log.Error().Err(err).Str("action", action).Msg("unexpected error") w.WriteHeader(http.StatusInternalServerError) diff --git a/vendor/github.com/opencloud-eu/reva/v2/pkg/storage/pkg/decomposedfs/decomposedfs.go b/vendor/github.com/opencloud-eu/reva/v2/pkg/storage/pkg/decomposedfs/decomposedfs.go index aa6a210ee..81532b35d 100644 --- a/vendor/github.com/opencloud-eu/reva/v2/pkg/storage/pkg/decomposedfs/decomposedfs.go +++ b/vendor/github.com/opencloud-eu/reva/v2/pkg/storage/pkg/decomposedfs/decomposedfs.go @@ -1089,6 +1089,10 @@ func (fs *Decomposedfs) Download(ctx context.Context, ref *provider.Reference, o return nil, nil, err } + if n.IsProcessing(ctx) { + return nil, nil, errtypes.TooEarly("file is still being processed") + } + rp, err := fs.p.AssemblePermissions(ctx, n) switch { case err != nil: diff --git a/vendor/modules.txt b/vendor/modules.txt index fa58b9476..f9e313f48 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -1376,7 +1376,7 @@ github.com/opencloud-eu/icap-client # github.com/opencloud-eu/libre-graph-api-go v1.0.8-0.20250724122329-41ba6b191e76 ## explicit; go 1.18 github.com/opencloud-eu/libre-graph-api-go -# github.com/opencloud-eu/reva/v2 v2.41.1-0.20260120144836-2769c3c07a19 +# github.com/opencloud-eu/reva/v2 v2.42.0 ## explicit; go 1.24.1 github.com/opencloud-eu/reva/v2/cmd/revad/internal/grace github.com/opencloud-eu/reva/v2/cmd/revad/runtime