Repository navigation
Closed
Description
see agenda
Prerequisites
- bump web [full-ci] chore: bump web to v7.1.1 #2998
- bump reva
- create RC tag https://github.com/opencloud-eu/opencloud/releases/tag/v7.0.0-rc.0
- create RC instance + monitoring @ScharfViktor https://cloud.talos.opencloud.rocks -> use demo users
- update introductionVersion
- add new production version
- provide feature list
Breaking change
- Rolling 6.1.0 doesn't start if opensearch backend contains previously created index #2715 need confirm update from 4.0.7 -> 7.1.0 (
opencloud search index --all-spaces) @schweigisito @butonic
QA Phase
-
testing new features @ScharfViktor
-
Compatibility test between 4.0.7 and 7.0.0 with decomposed fs @ScharfViktor
-
Compatibility test between 4.0.7 and 7.0.0 with posix fs @ScharfViktor
-
- STORAGE_USERS_DRIVER=posix
- 75vu's, 60m
- 750vu's, 60m
- decomposed
- 75vu's, 60m
- 750vu's, 60m
- STORAGE_USERS_DRIVER=posix
-
Documentation test
- Review documentation @Svanvith
- Verify all new features documented @Svanvith @Heiko-Pohl @tbsbdr
- Create upgrade documentation @Heiko-Pohl Upgrade process from 4.0.x to 7.0.x docs#863
- Check installation guides https://docs.opencloud.eu/docs/admin/getting-started
- Check user documentation german language @jnweiger
-
e2e tests with different storage
-
decomposedautomated see opencloud CI need run with [decomposed] tag -
decomposeds3@ScharfViktor test inhetzner object storetested with s3 storage localy -
posixautomated see opencloud CI -
posixwatch_fs enabled automated see opencloud CI -> still flaky -
cephfsagains helm chars @schweigisito @butonic
-
-
Different deployments methods
- e2e tests against opencloud-charts @saw-jan
- docker use https://github.com/opencloud-eu/qa/blob/main/.github/ISSUE_TEMPLATE/docker-compose_test_plan_template.md @ScharfViktor @saw-jan
- binary do the testing bare-metal - smoke test @ScharfViktor
-
different clients
-
check docs german translation
- german translations desktop at 100% @jnweiger
- check web german translation @ScharfViktor - set [localization-de] tag to PR
Collected bugs - need confirmatory in the final version
Issues seen in opencloud:
- decomposed fs. 500 when user tries to delete group from space #2799
- Migrating space membership to share manager fails for disabled spaces #2819
- Untranslated activity #2833
- Untranslated space description #2835
Issues seen in Web UI:
Issues seen in Desktop Client:
Issues seen in Android:
Issues seen in opencloud-compose:
in Ios
After QA Phase ( IT releated )
-
bump version in
pkg/version.go -
Run CI
-
create final tag
v7.2.0 -
observe CI Run on tag
-
Merge Release branch into
main -
Create
stable-7.2branch- web repo https://github.com/opencloud-eu/web/tree/stable-7.1
- opencloud https://github.com/opencloud-eu/opencloud/tree/stable-7.2
- opencloud-compose https://github.com/opencloud-eu/opencloud-compose/tree/stable-7.2
- reva https://github.com/opencloud-eu/reva/tree/stable-2.46
- opencloud-charts @micbar
-
publish release notes to the docs @ScharfViktor publish release note 7.0.2 and 4.0.8 docs#984
After QA Phase ( Marketing / Product / Sales related )
-
notify marketing that the release is ready @tbsbdr
-
announce in the public matrix channel
-
press information
-
Webinar DE & EN @AnneGo137
-
Website ergänzen
-
Flyer update
-
Sales presentation
Activity
v-scharf commentedon May 20, 2026
Feature List
JammingBen commentedon May 20, 2026
Now I'm irritated. Is this for the final production release, or just the RC? Because
bump webis checked, but Web7.0.1is not intended to be the final stable version. It was just for the rolling release I thought? Stable Web will be7.0.2.fschade commentedon May 21, 2026
Performance tests (🟢)
Host
💡 PVE Version 9.1.14 (Kernel: 7.0.2-4-pve)
🖥️ Operating System: debian
🌟 Version: 13
📦 Container Type: Unprivileged
🆔 Container ID: 113
🏠 Hostname: debian
💾 Disk Size: 50 GB
🧠 CPU Cores: 8
🛠️ RAM Size: 16384 MiB
🌉 Bridge: vmbr0
📡 IPv4: dhcp
📡 IPv6: auto
🗂️ FUSE Support: yes
📦 Nesting: Enabled
📦 Keyctl: Enabled
🎮 GPU Passthrough: no
💡 Timezone: Europe/Berlin
🔍 Verbose Mode: no
Versions
ENV
cdperf/.env
cdperf/setup
export SEED_USERS_TOTAL=750cdperf/setup_60m_75_vu
cdperf/setup_60m_750_vu
oc/.env_decompostfs
oc/.env_posixfs
Results
DecomposedFS
4.0.0 - 75VU - 60m
7.2.0 - 75VU - 60m
4.0.0 - 750VU - 60m
7.2.0 - 750VU - 60m
PosixFS
4.0.0 - 75VU - 60m
7.2.0 - 75VU - 60m
4.0.0 - 750VU - 60m
7.0.0 - 750VU - 60m
Findings
In 7.2.0, we have many logs like this.
nats: slow consumer, messages dropped on connection [63] for subscription on "main-queue"In 7.2.0, we have many logs like this.
{"level":"error","service":"storage-users","host.name":"debian","pkg":"rgrpc","traceid":"f42f1d14ec84608c0c31692e5579bc73","error":"error: not found: record not found in cache","record":"/root/opencloud/data/opencloud/storage/users/users/762425e6-d694-4be0-a80c-98c9c153cb10/perftestuser113-bqkxxacixg-iteration-1-renamed","time":"2026-06-17T23:07:31+02:00","message":"could not get spaceID and nodeID from cache"}In 7.2.0, we have many logs like this.
{"level":"error","service":"storage-users","host.name":"debian","pkg":"rgrpc","traceid":"29f862e9372a9abbbe82c46b8e3bf5ae","error":"error: not found: record not found in cache","record":"OJXW65A=.N5YGK3TDNRXXKZA=.MRQXIYI=.N5YGK3TDNRXXKZA=.ON2G64TBM5SQ====.OVZWK4TT.OVZWK4TT.GIZDSMBVGVRDELJSGQ3TGLJUHE2WMLLBHE2DELJYGFSGKODEGZSTEOLDHE======.OBSXEZTUMVZXI5LTMVZDEMZZFVXXM6LPMJ3GI3LQOMWWS5DFOJQXI2LPNYWTELLSMVXGC3LFMQ======.ONWWC3DMFZ5GS4A=","time":"2026-06-17T23:15:48+02:00","message":"could not get spaceID and nodeID from cache"}In 7.2.0, we have many logs like this.
{"level":"debug","message":"error: not found: no shares found by id:opaque_id:\"409388ff-506e-4bfc-a876-c14121296b66:053c6968-87e6-4ef7-ab19-adea3c6601ed:c4f28b4c-060f-4ef1-b9d2-b3f720791c32\"","code":"CODE_NOT_FOUND","time":"2026-06-17T23:09:07+02:00","message":"isPublicShare received unexpected status"}In 7.2.0, we have many logs like this.
{"level":"error","service":"clientlog","error":"unexpected status code while getting resource: CODE_NOT_FOUND","event":{"Type":"events.ContainerCreated","ID":"e434fc4e-982c-413d-afbb-0ad8aed838f8","TraceParent":"00-bfc8620b7237870c35233ef407fd8b2c-bdc60056cb01417b-00","InitiatorID":"","Event":{"SpaceOwner":{"idp":"https://10.42.10.168:9200","opaque_id":"19a70226-2955-4f3f-a30e-5307b48dfd5b","type":1},"Executant":{"idp":"https://10.42.10.168:9200","opaque_id":"19a70226-2955-4f3f-a30e-5307b48dfd5b","type":1},"Ref":{"resource_id":{"storage_id":"409388ff-506e-4bfc-a876-c14121296b66","opaque_id":"6989709a-7e78-4899-9717-fa4f074e475e","space_id":"6989709a-7e78-4899-9717-fa4f074e475e"},"path":"./bidxnpwrou"},"ParentID":null,"Owner":null,"Timestamp":{"seconds":1781730423,"nanos":808831885},"ImpersonatingUser":null}},"time":"2026-06-17T23:10:54+02:00","message":"error gathering members for event"}Conclusion
nats: slow consumer, messages dropped on connection [63] for subscription on "main-queue"got fixed by #2974.All other debug loggs mentioned above are timing related, the clientlog error was gone too in my latest run.
as soon as #2974 is merged i can give green light 🟢
edernunez61 commentedon May 22, 2026
Most of these features are not new.....
v-scharf commentedon May 22, 2026
check german translation:
RUN_LOCALIZATION_TEST_FOR_LANG=de pnpm test:e2e:cucumber tests/e2e/cucumber/features/a11y/smoke.featureNote:
that is no issue: in this case we have no user, so the language setting comes from the browser. If the system language is English, the public link will be in English
micbar commentedon May 22, 2026
Correct. This is a production release which makes all features since 4.0.0 available for production. It contains all rolling releases since then.
So it is not new to the community but to the customers.
edernunez61 commentedon May 22, 2026
@micbar The release notes describe it as rolling, not production, can you clarify?
edernunez61 commentedon May 22, 2026
Actually yes, the last prod release was 4 days ago. 7.0.0 can't possibly be production, can it?
micbar commentedon May 22, 2026
Production will be 7.0.1 or 7.1.0
[-]Production release 7.0.0[/-][+]Production release 7.1.0[/+]saw-jan commentedon May 25, 2026
While running keycloak web e2e tests, I get this error in helm chart deployment: (https://github.com/opencloud-eu/opencloud-charts/pull/230)
User is not logged out after the admin has deleted the user sessions.
Probably a setup issue.
opencloud:
7.0.0keycloak:
26.6.1CC @ScharfViktor @butonic
[UPDATE]
FYI, the issue was due to the cert error.
2026-05-26 11:23:36,398 WARN [org.keycloak.services] (executor-thread-36) KC-SERVICES0057: Logout for client 'web' failed: javax.net.ssl.SSLHandshakeException: (certificate_unknown) PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested targetAnd can be fixed by the following env for dev/test environment with http enabled:
saw-jan commentedon May 26, 2026
But I can confirm that the following steps works (manually):
https://github.com/opencloud-eu/web/blob/adb8ff34e4f8a41962e755d18871347e066a3ce9/tests/e2e/cucumber/features/keycloak/smoke.feature#L76-L82
v-scharf commentedon May 26, 2026
Compatibility testing using
COMPOSE_FILE=docker-compose.yml:weboffice/collabora.yml:traefik/opencloud.yml:traefik/collabora.yml:search/tika.ymlbetween
4.0.7on https://github.com/opencloud-eu/opencloud-compose/tree/stable-4.0 and7.0.0-rc.0on https://github.com/opencloud-eu/opencloud-compose/tree/mainSteps:
docker run --rm -it --entrypoint /bin/sh -v opencloud-compose_opencloud-config:/etc/opencloud opencloudeu/opencloud-rolling:7.0.0-rc.0opencloud init --diffcd /etc/opencloud && patch < opencloud.config.patchOC_DOCKER_TAG=7.0.0-rc.0 docker compose up -dposix_fs
Check that all data is exist:
personal space:
project space:
users/groups:
search:
settings:
decomposed:
add
STORAGE_USERS_DRIVER: decomposedto docker-compose.yml fileCheck that all data is exist:
personal space:
project space:
users/groups:
settings:
v-scharf commentedon May 27, 2026
Opencloud-compose setup:
https://github.com/opencloud-eu/qa/blob/main/.github/ISSUE_TEMPLATE/docker-compose_test_plan_template.md
go to https://github.com/opencloud-eu/qa/tree/main/tests
run
OC_BASE_URL=https://cloud.opencloud.test pnpm exec playwright test --project=apiusing nginx
[-]Production release 7.1.0[/-][+]Production release 7.1.1[/+]JAKuhr commentedon Jun 2, 2026
desktop-3.0.3 is already checked, but was released about 6 month ago.
A version bump to include updated translations would be nice for the production release.
opencloud-eu/desktop#922
[-]Production release 7.1.1[/-][+]Production release 7.2.0[/+]tbsbdr commentedon Jun 8, 2026
@ScharfViktor do we have proper tests for OCM? If not, it would be great if you come up with a plan how to test it was it should be stable. currently we are on 1.2. iirc - (maybe Jürgen or JankariTech could help) cc @micbar @dragotin
v-scharf commentedon Jun 8, 2026
we have quite good coverage api-tests and e2e-tests
so I think we do not need to carry out manual testing
micbar commentedon Jun 8, 2026
Let me clarify:
We are currently testing OCM between OC and OC
schweigisito commentedon Jun 15, 2026
Done.
kulmann commentedon Jun 17, 2026
It will still take some time to release a new desktop client version. The OpenVFS feature is not yet in shape for a new desktop release. Since the latest release - although 6 months old - is compatible with the upcoming production release I think this is fine.
JAKuhr commentedon Jun 17, 2026
Wouldn't it be possible to release a new version (e.g., 3.0.4) based on the 3.0.3 codebase that includes at least the completed or revised translations? A lot has happened over the last six months, and the German translation in version 3.0.3 for instance, contains countless shortcomings.
tbsbdr commentedon Jun 23, 2026
Release Notes draft
(hint to upgrade guide)
Breaking Changes
New settings required for the "sharing" service
With OpenCloud 7.2 the "sharing" service needs a service account and secret to be configured. Please follow the steps outlined in the Upgrade Guide to achieve that.
Share-Manager migraton: First startup may take a few minutes
When upgrading from a release before 7.x, the first container startup may take a few minutes before all Spaces are available.
Background: Share-Manager migration
OpenCloud 7.0.0 changes the way how space memberships are managed in the backend. When upgrading from a previous release the "sharing" service will automatically run a migration task to convert existing space memberships to the new mechanism. Depending on the number of spaces and space members this task can take up to a few minutes. During that time the member listing of spaces might be incorrect. Also it is not possible to change space memberships or create/delete spaces while the task is running. When the loglevel of the sharing service is set to info (OC_LOG_LEVEL=info or SHARING_LOG_LEVEL=info) the task will report progress of the migration via the logfile.
New OpenSearch index schema (v2) for the search service
Note: This is only applicable to setups using the "opensearch" search engine with OpenCloud and does not affect setups using the default "bleve" search engine, as e.g. the standard docker compose setups do.
With OpenCloud 7.x.x the search service now uses a new OpenSearch index schema (v2), adding two fields: Content (with term vectors, for faster highlighting via the fast vector highlighter) and Favorites (for searching/filtering by favorites).
Since OpenSearch mappings are immutable, the existing index can't be migrated in place. On startup the service detects the mismatch and refuses to start ("manual action required").
Required action when upgrading an OpenSearch deployment:
SEARCH_ENGINE_OPEN_SEARCH_RESOURCE_INDEX_NAME).opencloud search index --all-spaces --force-rescanHighlights
📝 New, Easy to Learn Markdown Editor
Format content without learning Markdown syntax
The new Markdown Editor combines the simplicity of slash commands with the flexibility of Markdown. Slash commands make formatting accessible to everyone as it helps also non-technical users to discover Markdown capabilities without needing to learn syntax first.
Lightweight portable and reusable format
Markdown provides a lightweight, portable format with no vendor lock-in. Its simple nature makes content easier to version, maintain and convert into PDFs, knowledge bases and other formats. For many workflows Markdown offers a simpler and more durable alternative to heavyweight office formats.
Interchange format between humans and AI
As AI becomes a core part of daily work, Markdown is emerging as a natural interchange format between humans and AI. Its simple structure allows both users and AI systems to create content easily.
⭐ Favorites Feature
The new Favorites feature makes it easy to find important and frequently used files. Marked files are visible across all personal and shared spaces and can be accessed at any time with a single click.
All favorites are collected centrally on a dedicated page, providing a quick overview of relevant content. Whether in list view or grid view, users can efficiently access their most important files without having to search for them. Server-side Favorites are available in the Web and will be available in one of the next releases of the mobile clients as well.
🖼️ Photo Roll in the Preview App
The new Photo Roll feature makes navigating image collections significantly easier. While viewing an image, the previous and next images are displayed as previews, allowing users to orient themselves more quickly and browse through their photos with ease.
🖼️ Faster Preview App
The Preview App has been optimized for significantly better performance when browsing large photo folders. Instead of requesting all images in full resolution only the currently viewed image is loaded in high quality. Images in the Photo Roll are loaded as small thumbnails and only for items currently visible within the viewport.
Additional images are loaded dynamically while scrolling, and pending image requests are canceled as soon as they are no longer needed, particularly on slow or unstable connections.
🎬 Support for MOV Video Files (Preview)
OpenCloud now supports previewing MOV video files. You can store MOV files in your file system and view them directly in the interface without converting them first.
🧭 Improved Breadcrumb Navigation
Navigating deep folder structures is now faster and more direct. The breadcrumb navigation allows users to jump to higher-level folders with just a few clicks, eliminating the need to step back through each folder individually.
⌨️ Keyboard Shortcuts for Global Search
The global search bar can now be focused using keyboard shortcuts (
sor/). When focused, the search input field is visually highlighted, making the active state easier to recognize.➕ Floating Action Button for “Create or Upload”
The “Create or Upload” button in the Files App is now implemented as a Floating Action Button (FAB). Available actions open in a dropdown menu or bottom drawer. The button is disabled or hidden when the user does not have write permissions.
📱 Consistent Context Actions on Mobile
Contextual actions on mobile devices now open consistently in a bottom drawer. This follows familiar iOS and Android interaction patterns making the UI feel familiar.