Commit Graph

1258 Commits

Author SHA1 Message Date
provokateurin
fe9e43c165 feat(preview): Expire previews
Signed-off-by: provokateurin <kate@provokateurin.de>
2026-02-10 15:35:38 +01:00
Robin Appelman
9cd337bebe Merge pull request #57745 from nextcloud/share-transfered-event
Share mount validation fixes
2026-02-09 16:46:15 +01:00
Carl Schwan
f3778bc9c7 fix(propagator): Improve lock behavior of propagator
Fix possible dead locks when running the propagator caused by two
requests updating the same amount rows in transactions.

- Lock rows always in the same deterministic order by sorting the
  path_hash first

- On all database outside of sqlite, also do first a SELECT FOR UPDATE
  to lock all the rows used in batch UPDATE calls, afterward to decrease
  the risk of two requests trying to lock the same rows

Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-02-09 12:10:56 +01:00
Robin Appelman
c49665f5cd feat: add event for tranfered shares
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-02-06 16:55:12 +01:00
Carl Schwan
c96ece0bcb refactor: Add more typing
- repairs job
- database
- redis

And remove Helpertest which was unused outside of some tests.

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2026-02-06 13:55:39 +01:00
Kate
18d5dedb29 Merge pull request #58002 from nextcloud/fix/let-user-backend-lock-fields
feat: Allow user backends to manage property permissions
2026-02-05 12:11:07 +01:00
Julius Knorr
b933156a3a Merge pull request #57914 from nextcloud/feat/extendable-propfind
feat(dav): allow extending propfind properties via event
2026-02-05 10:49:59 +01:00
Côme Chilliet
de011ee668 feat: Allow user backends to manage property permissions
Not yet reflected in the UI apart from displayname/email/avatar

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-02-03 10:22:26 +01:00
Benjamin Frueh
9d4b11587e feat(dav): allow extending propfind properties via event
Signed-off-by: Benjamin Frueh <benjamin.frueh@gmail.com>

Update lib/public/Files/Events/BeforePropfindEvent.php

Co-authored-by: Julius Knorr <jus@bitgrid.net>
Signed-off-by: Benjamin Früh <134610227+benjaminfrueh@users.noreply.github.com>

Update lib/public/Files/Events/BeforePropfindEvent.php

Co-authored-by: Julius Knorr <jus@bitgrid.net>
Signed-off-by: Benjamin Früh <134610227+benjaminfrueh@users.noreply.github.com>

refactor: rename BeforePropfindEvent to BeforeRemotePropfindEvent

Signed-off-by: Benjamin Frueh <benjamin.frueh@gmail.com>

chore: update composer autoloader for new event class

Signed-off-by: Benjamin Frueh <benjamin.frueh@gmail.com>

Update lib/public/Files/Events/BeforeRemotePropfindEvent.php

Co-authored-by: Côme Chilliet <91878298+come-nc@users.noreply.github.com>
Signed-off-by: Benjamin Früh <134610227+benjaminfrueh@users.noreply.github.com>
2026-02-02 11:45:10 +01:00
Kate
21ab477b35 Merge pull request #55474 from nextcloud/carl/missing-attributes 2026-01-28 22:55:35 +01:00
Carl Schwan
c6c11d474b Merge pull request #55649 from nextcloud/carl/on-demand-preview-migration
feat(preview): On demand preview migration
2026-01-28 22:33:48 +01:00
Carl Schwan
f81475445d refactor: Move hasAnnotationOrAttribute to MiddlewareUtils
Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-01-28 21:48:16 +01:00
Carl Schwan
6408ed0b51 feat(AppFramework): Add missing NoSameSiteCookieRequired attribute
Allow to replace the old annotation.

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2026-01-28 21:48:16 +01:00
Carl Schwan
b040fb1c73 feat(AppFramework): Add missing NoTwoFactorRequired attribute
It's in our documentation but was never implemented.

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2026-01-28 21:48:16 +01:00
Carl Schwan
ef226e9ec6 Merge pull request #57826 from nextcloud/carl/setupmanager
feat(OCP): Expose setup manager to OCP
2026-01-28 21:39:15 +01:00
Andy Scherzinger
ac2257a202 Merge pull request #57876 from nextcloud/fix/faulty-version
fix(core): adjust faulty migration version number
2026-01-28 18:56:06 +01:00
Carl Schwan
fd3878448b feat(filecache): Scale DB query created when deleting file from filecache
Instead of creating a CacheEntryRemovedEvent for each deleted files,
create a single CacheEntriesRemovedEvent which wrap multiple
CacheEntryRemovedEvent.

This allow listener to optimize the query they do when multiple files
are deleted at the same time (e.g. when deleting a folder).

Signed-off-by: Carl Schwan <carl.schwan@nextclound.com>
2026-01-28 16:07:57 +01:00
Ferdinand Thiessen
45a924cafd fix(core): adjust faulty migration version number
Its Nextcloud 33 not 34.
Better fix before the release.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-01-28 14:42:22 +01:00
Misha M.-Kupriyanov
abe86a9bc2 feat(install): dispatch InstallationCompletedEvent in Setup
Integrate event dispatching into Setup class:
- Inject IEventDispatcher dependency
- Dispatch InstallationCompletedEvent after successful installation
- Add Setup tests for event integration
- Update composer autoload for new class

Signed-off-by: Misha M.-Kupriyanov <kupriyanov@strato.de>
2026-01-28 09:24:24 +01:00
Carl Schwan
0fe01de26c feat(OCP): Expose setup manager to OCP
It's used by a lot of apps so expose just the two methods that are most
of the time used, to prevent the apps to relly on private APIs.

Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-01-26 17:12:02 +01:00
Benjamin Gaussorgues
4da7137278 feat(openmetrics): add log level
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2026-01-23 16:02:04 +01:00
Ferdinand Thiessen
428e76214e chore: drop legacy WhatsNew
This feature was not used in 8 years and from frontend did not even
properly work anymore and was implemented using deprecated API.
So get rid of it.

The last version that was using a changelog from the changelog server
was Nextcloud 20.

We use the firstrunwizard nowadays for informing about Nextcloud
changes in new releases.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-01-21 23:23:10 +01:00
Andy Scherzinger
abe5499e14 Merge pull request #57498 from nextcloud/carl/rename-imountproviderargs
refactor(files): Rename IMountProviderArgs
2026-01-14 17:50:43 +01:00
Robin Appelman
ae74dbef2b Merge pull request #56499 from nextcloud/authoritative-mount-provider-files_external
Add api for authoritative mount providers and implement it for files_external
2026-01-13 16:36:33 +01:00
Carl Schwan
7b05c8f797 refactor(files): Rename IMountProviderArgs
It's not an interface so the I-prefix is inadequate.

Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-01-12 17:33:52 +01:00
Carl Schwan
6149168129 feat(preview): On demand preview migration
When requesting previews, which we don't find in oc_previews, search in
IAppData first before creating them.

Move the logic from MovepreviewJob to PreviewMigrationService and reuse
that in the Preview Generator.

At the same time rename MovePreviewJob to PreviewMigrationJob as it is a
better name.

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2026-01-12 14:20:09 +01:00
Maxence Lange
327d691c23 feat(signed-request): moving out of unstable
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2026-01-09 20:16:24 -01:00
Robin Appelman
198d500ac6 feat: add interface to mark mount providers as authoritative
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-01-09 17:53:42 +01:00
Benjamin Gaussorgues
36b0d7c189 Merge pull request #55265 from nextcloud/perf/log-slow-dns 2026-01-08 14:06:31 +01:00
Christoph Wurst
cc89a2a2b8 refactor: extract slow operation logging into trait
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2026-01-08 11:22:15 +01:00
Maxence Lange
6af64a5495 feat(ocm): event on ocm discovery and ocm request
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2026-01-07 17:54:26 -01:00
Maxence Lange
0cdd19271d Merge pull request #56047 from nextcloud/feat/ocm/handle-new-ocm-endpoint
feat(ocm): handle /.well-known/ocm
2026-01-07 13:17:06 -01:00
Joas Schilling
40b79f5af8 Merge pull request #56795 from nextcloud/feat/noid/extend-entity-to-be-snoflake-aware
feat(snowflake): extend Entity class to support snowflakes
2026-01-07 13:42:49 +01:00
Benjamin Gaussorgues
c57c4843e8 feat(openmetrics): introduce OpenMetrics exporter
Expose a `/metrics` endpoint with some basic metrics

Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2026-01-07 09:38:13 +01:00
Anna Larch
a100ede789 feat: extend Entity and adjust QBMapper to support Snowflake IDs
Signed-off-by: Anna Larch <anna@nextcloud.com>
2026-01-06 12:57:17 +01:00
Anna Larch
f546daada7 refactor: Rename Snowflake Generator and Decoder
And introduce the Snowflake DTO

Signed-off-by: Anna Larch <anna@nextcloud.com>
2026-01-06 12:57:04 +01:00
Salvatore Martire
a449af6460 feat: introduce API for partial share providers
Adds support for retrieval of shares by path

Signed-off-by: Salvatore Martire <4652631+salmart-dev@users.noreply.github.com>
2025-12-30 16:43:09 +01:00
Robin Appelman
bbabf50984 feat: add api to get users for share
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-12-22 15:34:23 +01:00
provokateurin
341fd348e6 fix(UserMountCache): Add back unique index for oc_mounts and use normal insert
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-12-15 12:26:23 +01:00
Salvatore Martire
fcdb28e4a3 feat: add IPartialMountProvider to support authoritative mounts
IMountProviders implementing this interface will be able to take
advantage of authoritative mounts.

The function `getMountsFromMountPoints` will receive the path that
the provider is asked to set-up and an array of IMountProviderArgs
providing information regarding the stored mount points and the
file cache data for the related root. The mount provider should verify
the validity of the mounts and return IMountPoints related to them.

Signed-off-by: Salvatore Martire <4652631+salmart-dev@users.noreply.github.com>
2025-12-10 16:05:27 +01:00
Daniel
b7b4a3a6d7 Merge pull request #56908 from nextcloud/feat/tasktype-ocr
feat(TaskProcessing): Add OCR TaskType
2025-12-08 17:53:00 +01:00
Marcel Klehr
3355e6a2f7 feat(TaskProcessing): Add OCR TaskType
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-12-08 17:44:37 +01:00
Andy Scherzinger
2c6d3d6f76 Merge pull request #56628 from nextcloud/carl/snowflake/jobs
feat: Port jobs table to snowflakes ids
2025-12-08 12:23:44 +01:00
Joas Schilling
594d22021a Merge pull request #56076 from nextcloud/carl/cleanup-comment
refactor(comment): Port away from deprecated event comment constant
2025-12-05 11:38:08 +01:00
Carl Schwan
3c9b937e28 refactor(comment): Port away from deprecated event comment constant
Create new events to replace deprecated CommentsEvent constant and use
them when creating CommentsEvents.

On the listener side, we can't yet use these events as deck still send
the old events.

Also fixes some issues reported by psalm level 3 on the comment app.

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-12-04 17:38:53 +01:00
Andy Scherzinger
1ef465f804 Merge pull request #56251 from nextcloud/carl/template-manager-cleanup
refactor(template-manager): Modernize template manager API
2025-12-04 17:26:53 +01:00
Carl Schwan
0e686fc6a9 feat: Port jobs table to snowflakes ids
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-12-04 17:16:12 +01:00
Louis
5bf67fd206 Merge pull request #56745 from nextcloud/artonge/feat/files_sharing/support_priority_in_template_providers
feat(files_sharing): Support priority in public template providers
2025-12-04 12:58:44 +01:00
Louis Chmn
10b82c8bf8 feat(files_sharing): Support priority in public template providers
Signed-off-by: Louis Chmn <louis@chmn.me>
2025-12-04 10:59:58 +01:00
Joas Schilling
7a5c79b0f2 Merge pull request #56629 from nextcloud/carl/autoloader-bump
chore: Bump autoloader files for new composer version
2025-12-02 16:58:01 +01:00