Commit Graph

16046 Commits (796eec596229bc0413670e44aa703a9894ccc8d5)

Author SHA1 Message Date
Marcel Klehr 611d83aa6a fix: Fix psalm issues
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-07-15 09:15:16 +07:00
Marcel Klehr 3eef614769 feat(IFileAccess#getMounts): Add new method to retrieve all distinct mounts
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-07-15 09:15:16 +07:00
Marcel Klehr 845b78086b feat(IFileAccess#getByAncestorInStorage): Add new method to retrieve all files in a mount
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-07-15 09:15:16 +07:00
John Molakvoæ 2b50d9b2c5
Revert "perf(base): Stop setting up the FS for every basic auth request" 2025-07-11 17:07:44 +07:00
John Molakvoæ 6f0255d82a
Merge pull request #53141 from nextcloud/perf/files/setup-fs-basic-auth-request 2025-07-11 15:25:10 +07:00
John Molakvoæ 1bc1902476
Merge pull request #53887 from nextcloud/fix/lower-email-case 2025-07-11 09:03:05 +07:00
Joas Schilling 7ac4eb2a4a
Merge pull request #53896 from nextcloud/feat/talk-9679/threads
feat(comments): Allow to filter by topmost parent id
2025-07-10 21:22:10 +07:00
Daniel Calviño Sánchez d4e9a8ac33
Merge pull request #53501 from nextcloud/fix-theming-for-disabled-accounts
fix: Fix theming for disabled accounts
2025-07-10 20:47:48 +07:00
Daniel Calviño Sánchez 4fcadd630b fix: Throw specific LoginException when the user is disabled
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-07-10 15:09:25 +07:00
Kate 034246a1a9
Merge pull request #53893 from nextcloud/fix/cleanup-loadapp-calls 2025-07-10 15:06:05 +07:00
Côme Chilliet c0b31d1e2d
Merge pull request #53892 from nextcloud/fix/cleanup-getinstallpath
fix: Move getInstallPath to Installer class
2025-07-10 13:10:19 +07:00
Joas Schilling 6600c1ad86
feat(comments): Allow to filter by topmost parent id
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-07-10 12:58:46 +07:00
Côme Chilliet 7127ac4b43
fix: Replace OC_App::loadApp calls by IAppManager
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-07-10 11:40:27 +07:00
Côme Chilliet edf096a09f
chore: Check if apps directory is really writable in Installer
...rather than checkServer.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-07-10 11:31:59 +07:00
Côme Chilliet 12c0cfc977
fix: Move getInstallPath to Installer class
This method does not need a public API for now, it’s only used
 internally.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-07-10 09:39:58 +07:00
skjnldsv 027471b146 fix: force lowercase emails
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-07-10 09:10:01 +07:00
skjnldsv 51a2125020 fix(systemtags): case-insensitive search & prevent duplicates
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-07-09 19:28:20 +07:00
Ferdinand Thiessen 5b96cca038 chore(Http\Client): fix linting issues
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-07-09 14:42:58 +07:00
Kate 3da74810b5
Merge pull request #53537 from nextcloud/fix/cleanup-dependencyanalyser 2025-07-09 13:16:55 +07:00
Lukas Schaefer 8fc9a5d322
Merge pull request #53763 from nextcloud/feat/task/analyze-image
feat(TaskProcessing): Add AnalyzeImage TaskType
2025-07-08 11:10:45 +07:00
Côme Chilliet 1f5e232314
chore: Move info parsing related method from OC_App to InfoParser
Also fix the tests

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-07-08 15:57:05 +07:00
Côme Chilliet fb4e580109
chore: Cleanup DependencyAnalyzer and InfoParser
Also fix support for database dependency with attributes in the info.xml

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-07-08 15:51:59 +07:00
Lukas Schaefer 4731ecf4d4
Merge branch 'master' into feat/task/analyze-image 2025-07-08 08:35:04 +07:00
Côme Chilliet 2346a528ba
fix: Tidy up middleware registration code and scope them to application container
This make sure that all middlewares get a logger scoped to the
 application id, among other things.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-07-08 13:32:16 +07:00
Côme Chilliet 580328507f
fix: Do not use deprecated IServerContainer in EventDispatcher
This caused a call to logger too soon in init phase

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-07-08 13:32:15 +07:00
Côme Chilliet 3dd4ba854f
fix: Add back ContainerInterface service to DIContainer
Otherwise it gets resolved to \OC::$server.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-07-08 13:32:15 +07:00
Côme Chilliet 2240acec7f
fix: Put back ScopedPsrLogger service
Cannot use an alias for this one, as it depends upon LoggerInterface so
 that creates an infinite loop.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-07-08 13:32:15 +07:00
Côme Chilliet bbe766b07a
fix: Make sure Request class can be dependency injected to fix SameSiteCookieMiddleware injection
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-07-08 13:32:14 +07:00
Côme Chilliet ab310ce938
fix: Fix issues and tests in DIContainer and friends
Some tests related to MiddlewareDispatcher are still failing.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-07-08 13:32:14 +07:00
Côme Chilliet 9913bdda90
chore: Cleanup DIContainer class
Also removed deprecated tag from the class as this class will not be
 removed, only the interface IAppContainer and associated methods should
 be removed.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-07-08 13:32:12 +07:00
Côme Chilliet 12ceeacb0e
fix: Use default share folder of the user on share accept
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-07-08 13:24:37 +07:00
provokateurin 90705520c7
chore: Remove unused \OC\Cache\CappedMemoryCache
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-07-08 11:39:33 +07:00
provokateurin 0d8f983c71
chore: Remove unused \OC\Cache\File
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-07-08 11:39:17 +07:00
provokateurin 57191d451f
refactor(Server): Deprecate \OCP\ICache service and replace it with a distributed cache
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-07-08 11:38:59 +07:00
Julien Veyssier 2da3f450fa
feat(TaskProcessing): add agency audio-to-audio task type
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2025-07-07 15:29:55 +07:00
Marcel Klehr 58a37108da
Merge pull request #53759 from nextcloud/enh/noid/taskpro-audio-chat
[TaskProcessing] Add audio-to-audio chat task type
2025-07-07 14:31:04 +07:00
Ferdinand Thiessen 47e77f27c3
chore(AccountManager): adjust code style for cs-fixer
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-07-07 12:18:57 +07:00
Stephan Orbaugh 4dcb282a47
Merge pull request #53109 from TechnicalSuwako/master
fix(settings): change Mastodon only URI to webfinger
2025-07-07 12:02:11 +07:00
Julien Veyssier af059cbf61
feat(TaskProcessing): add audio-to-audio chat task type
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2025-07-07 11:39:47 +07:00
Andy Scherzinger 0c087ece4c
Merge pull request #53740 from nextcloud/fix/properly-fail-on-invalid-json
Properly fail on invalid json
2025-07-03 18:00:28 +07:00
Lukas Schaefer 20a779e4aa
feat: support multiple images
Signed-off-by: Lukas Schaefer <lukas@lschaefer.xyz>
2025-07-03 11:01:10 +07:00
Côme Chilliet 4427050f84 fix(encryption): Correctly handle file opening and copying failures
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-07-03 15:19:34 +07:00
Ferdinand Thiessen ffdc2c73e4
fix(l10n): our default language is American English so adjust the spelling
For British English we have the `en-GB` translations, so the default
should be American English which spells it `organization` not `organisation`.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-07-03 13:05:43 +07:00
Jana Peper 603522a59c test: fix tests
Signed-off-by: Jana Peper <jana.peper@nextcloud.com>
2025-07-03 10:25:19 +07:00
Jana Peper f8886fe27a feat: add toggle for AI guest restriction
Signed-off-by: Jana Peper <jana.peper@nextcloud.com>
2025-07-03 10:25:19 +07:00
Lukas Schaefer 3e24c40939
feat(TaskProcessing): Add AnalyzeImage TaskType
Signed-off-by: Lukas Schaefer <lukas@lschaefer.xyz>
2025-07-02 09:18:53 +07:00
Kent Delante eb58d2bb5a fix(syslog): open syslog channel on write
This fixes a bug where only one tag gets used when multiple tags have
been configured (e.g. different tags for 'syslog_tag' and 'syslog_tag_audit')

Signed-off-by: Kent Delante <kent.delante@proton.me>
2025-07-02 09:14:33 +07:00
Ferdinand Thiessen 5981b7eb51
chore: apply new CSFixer rules
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>

# Conflicts:
#	apps/settings/lib/SetupChecks/PhpOpcacheSetup.php
2025-07-01 16:26:50 +07:00
John Molakvoæ bd00b75b29
Merge pull request #53671 from nextcloud/fix/read-only-share-download 2025-07-01 15:11:06 +07:00
Côme Chilliet 79f4e0de76
fix: Only attempt to decode JSON input if it is not an empty string
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-07-01 11:24:27 +07:00
Côme Chilliet e8bc35ec0a
fix(ocs): Return a proper error on JSON decoding failures
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-07-01 10:45:31 +07:00
Côme Chilliet 87f98c88ab
chore: Rename property and type it to match its current use in Request
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-07-01 10:25:14 +07:00
Joas Schilling 60b8384e48
Merge branch 'master' into remove-x-xss-protection 2025-06-30 21:32:22 +07:00
Robin Appelman 6d0119bf8d
fix: handle dav external storage roots with spaces
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-06-30 18:01:01 +07:00
Daniel Kesselberg de54bdb06b
fix: handle ambiguous IResponse.getBody return types
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-06-30 11:50:11 +07:00
Daniel Kesselberg 3d0fb7e603
docs(http): Update return type for getBody
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-06-30 11:50:10 +07:00
Côme Chilliet f4b780bfea
fix(encryption): Pass an IUser and not a string to getUpdate
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-06-30 10:28:49 +07:00
Côme Chilliet 07f9d8f4c2
fix(encryption): Catch NotFoundException in ShareDeletedEvent listener
Avoids issues when a share is deleted after the node itself is already
 deleted.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-06-26 17:13:43 +07:00
skjnldsv 9806a9830c feat(files_sharing): allow viewing files with download disabled
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-06-26 11:47:53 +07:00
Daniel Kesselberg 53fb05e2d0
fix(nullcache): make get compliant with the interface
The interface defines ICacheEntry|false, thus we should not return null.

Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-06-26 09:54:48 +07:00
John Molakvoæ 280ee156bc
Merge pull request #53649 from nextcloud/security-missing-auth-error 2025-06-25 15:57:16 +07:00
Joas Schilling 06ebbb620b
Merge pull request #53669 from nextcloud/feat/noid/add-command-to-list-all-routes
feat(occ): Add commands to list all routes and match a single one
2025-06-25 09:34:52 +07:00
Joas Schilling a957e3a2c2
feat(occ): Add commands to list all routes and match a single one
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-06-25 08:19:08 +07:00
Robin Appelman 1d2b991bda fix: don't create an empty file before writing the contents in OC_Util::copyr
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-06-24 16:27:27 +07:00
Robin Appelman 8b0a3a774d fix: throw a better error if we don't get an authorization header for secutity confirmation
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-06-24 15:57:20 +07:00
Maxence Lange d860cfd1cb feat(lexicon): better numeric conversion
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2025-06-24 12:10:57 +07:00
Maxence Lange d8fc08d718 feat(lexicon): fix tests
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2025-06-24 12:10:57 +07:00
Maxence Lange 3d3c77b774 feat(lexicon): migrate keys on app update
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2025-06-24 12:10:57 +07:00
Maxence Lange d5e487078a feat(lexicon): using configmanager
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2025-06-24 12:10:57 +07:00
Maxence Lange e39ab65239 feat(lexicon): migrate config key/value
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2025-06-24 12:10:57 +07:00
Richard Steinmetz abced23a09
Merge pull request #53615 from nextcloud/fix/revive-lowercase-email
fix: revive always storing lowercased email addresses
2025-06-24 14:19:12 +07:00
Richard Steinmetz b6af06d2e0
fix: revive always storing lowercased email addresses
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2025-06-24 13:53:08 +07:00
Salvatore Martire 5fef6f1c90 fix: make rotate logs a TimedJob and run every hour
Signed-off-by: Salvatore Martire <4652631+salmart-dev@users.noreply.github.com>
2025-06-24 09:55:23 +07:00
Robin Appelman 2e1c316582 fix: remove double cache write in ObjectStoreStorage::touch
the file_put_contents already puts all of those values into the cache

Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-06-18 22:22:51 +07:00
Jana Peper 50c9852e24
feat: add ocs route to get apps enabled for current user
Signed-off-by: Jana Peper <jana.peper@nextcloud.com>
2025-06-18 17:31:20 +07:00
Kent Delante ea98e4b3f5
Merge pull request #53419 from nextcloud/leftybournes/fix/object_storage_large_uploads
fix(s3): retry failed multipart uploads with decreased concurrency
2025-06-18 21:07:06 +07:00
Ferdinand Thiessen 35a27b5fd5
fix(FilenameValidator): use `_` as default replacement for invalid chars
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-06-18 09:44:57 +07:00
Ferdinand Thiessen e11ecaa53f
Merge pull request #53516 from nextcloud/fix/fix-encryption-manager-injection
fix(encryption): Fix DI for encryption Manager class
2025-06-17 11:45:15 +07:00
Andy Scherzinger 6f2fbef490
Merge pull request #51657 from SBizienFilippiPEReN/cookie-domain
cookie_domain config option for setting cookie on a wider domain
2025-06-17 07:00:40 +07:00
Daniel Calviño Sánchez d7ae952dc8 fix(ObjectStore): Make S3 "connect_timeout" option configurable
The hardcoded connection timeout of 5 seconds may not be enough in some
cases, so now it is got from the ObjectStore arguments in Nextcloud
configuration, falling back to 5 if not set.

The connection timeout is set in seconds, but decimal precision can be
used for subsecond accuracy (for example, 4.2 for 4200 milliseconds).

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-06-16 20:17:50 +07:00
Côme Chilliet a9acaaa45f
fix(encryption): Fix DI for encryption Manager class
Only IManager was registered but the class name is used as well for DI
 in the encryption application. This was causing a crash of encryption
 command when using PHP 8.4 and lazy ghosts.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-06-16 16:35:27 +07:00
Samuel Bizien Filippi a14cade3ac feat(core): add cookie_domain config option
Signed-off-by: Samuel Bizien Filippi <samuel.bizien-filippi@finances.gouv.fr>
2025-06-16 15:33:48 +07:00
Richard Steinmetz 967b634a82
fix: properly deprecate IOCMProvider
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2025-06-16 12:20:40 +07:00
Micke Nordin e770859008 Update lib/private/Server.php
Co-authored-by: Joas Schilling <213943+nickvergessen@users.noreply.github.com>
Signed-off-by: Micke Nordin <mickenordin@users.noreply.github.com>
2025-06-16 10:33:21 +07:00
Micke Nordin 7bee91a834 fix(OCMProvider): fix dependency injection for OCMProvider
Signed-off-by: Micke Nordin <kano@sunet.se>
2025-06-16 10:33:21 +07:00
Thomas Citharel e2195a2f6d
fix(sharing): fix json decoding the list of groups excluded from sharing
json_decode() returns stdclass by default instead of an associative object, which can't be used for
array_diff or array_intersect later

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2025-06-16 08:30:31 +07:00
invario 2b58f74cc8
Fix: Remove X-XSS-Protection use, check and recommendation
Co-authored-by: John Molakvoæ <skjnldsv@users.noreply.github.com>
Signed-off-by: invario <67800603+invario@users.noreply.github.com>
2025-06-13 16:12:27 +07:00
Côme Chilliet b188fad8e8
fix(router): In debug mode, cache routes only for 3 seconds
This allows testing a newly added or changed route in your application
 without having to wait 1 hour or bump the application version.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-06-12 16:12:22 +07:00
Andy Scherzinger fc2aa7f5b5
Merge pull request #51113 from mickenordin/master
feat(OCM-invites): Implementation of invitation flow for OCM 1.1.0
2025-06-12 12:13:50 +07:00
Maxence Lange f8c64a17b1
Merge pull request #53427 from nextcloud/shard-key-hint-partition
fix: allow hinting the shard keys for joined tables
2025-06-12 09:09:50 +07:00
Micke Nordin 623f2f0240
feat(OCM-invites): Implementation of invitation flow
This patchset:
* implements the /invite-accepted endpoint
* adds capabilities and inviteAceptDialog to the discovery
* adds a FederatedInviteAcceptedEvent

https://cs3org.github.io/OCM-API/docs.html?branch=v1.1.0&repo=OCM-API&user=cs3org#/paths/~1invite-accepted/post

Co-authored-by: Anna <anna@nextcloud.com>
Co-authored-by: Côme Chilliet <come.chilliet@nextcloud.com>
Co-authored-by: Joas Schilling <213943+nickvergessen@users.noreply.github.com>
Co-authored-by: Navid Shokri <navid.pdp11@gmail.com>
Signed-off-by: Micke Nordin <kano@sunet.se>
2025-06-12 11:20:26 +07:00
Daniel e1fcd6ccfb
Merge pull request #53000 from nextcloud/fix/noid/stuck-ffmpeg
fix: unblock ffmpeg on some broken videos
2025-06-10 22:22:04 +07:00
Robin Appelman 26903926a2
fix: allow hinting the shard keys for joined tables
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-06-10 16:15:05 +07:00
Kate 1474fa3407
Merge pull request #52743 from nextcloud/bug/noid/expires-date-format 2025-06-10 14:25:05 +07:00
Kate 9faf386303
Merge pull request #52913 from nextcloud/debt/noid/use-logical-operator 2025-06-10 14:17:46 +07:00
Daniel Kesselberg 55bca1e5db fix: use logical operator instead of bitwise
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-06-10 13:55:53 +07:00
Daniel Kesselberg be587def0e fix: use correct format for expires, last-modified, and if-modified-since headers
Before: Sat, 10 May 2025 18:17:41 +0000
After: Sat, 10 May 2025 18:17:41 GMT

RFC: https://httpwg.org/specs/rfc9110.html#http.date

Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-06-10 13:15:31 +07:00
Kent Delante 06b5ce5859 fix(s3): retry failed multipart uploads with decreased concurrency
Signed-off-by: Kent Delante <kent.delante@proton.me>
2025-06-10 17:39:59 +07:00
provokateurin d11d5b765f feat(core): Add option to disable creating an admin user when installing
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-06-10 11:16:28 +07:00
provokateurin 9a121269f3 refactor(Setup): When creating a DB user don't use the admin username
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-06-10 11:16:28 +07:00
Côme Chilliet 231916d403
Merge pull request #52538 from nextcloud/feat/use-php84-lazy-objects
Use PHP 8.4 lazy ghosts for Dependency injection
2025-06-10 10:45:12 +07:00
Joas Schilling f230abeef8
fix: Run cleanByMoundId query on all shards
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-06-06 14:36:34 +07:00
Côme Chilliet 2eed6d3a89
feat: Add a configuration toggle for lazy objects in DI
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-06-05 20:51:24 +07:00
Côme Chilliet 98b2cfc416
fix: Fix several side effects of lazy ghosts
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-06-05 20:50:42 +07:00
Côme Chilliet 86ff5810d7
fix: Only use Lazy objects if PHP is 8.4 or higher
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-06-05 20:49:58 +07:00
Côme Chilliet 1bf41550d0
chore: Suppress psalm error
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-06-05 20:49:58 +07:00
Côme Chilliet 06c062bebd
feat: Use Lazy ghosts for Dependency injection
This will only work with PHP 8.4, so we’ll need to put it behind a version check later.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-06-05 20:49:38 +07:00
Côme Chilliet bb485fb733
fix: Load all partially enabled apps routes
This avoids cache issues if some apps are only enabled for some groups,
 by loading the routes from all apps enabled for anyone, not only the
 current user.
If the queried application is disabled for the current user based on
 groups, the middleware will cancel the query.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-06-05 18:06:08 +07:00
Côme Chilliet 12e7f46b30
fix: Use application ids as well as versions in the cache prefix
Avoids a corner case issue if one application was disabled and another
 one enabled with the same version, just to be safe.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-06-05 18:03:56 +07:00
Côme Chilliet a2fdeccc31
chore(tests): Adapt AppManager test to the use of searchValues
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-06-05 17:58:54 +07:00
Côme Chilliet e8370bf73a
fix: Use only enabled applications versions in the cache prefix
This makes sure the cached routes are updated after enabling a
 previously disabled application

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-06-05 17:58:54 +07:00
Côme Chilliet 0d78c60759
fix: Fix psalm issue by adding missing parameter for profiler
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-06-05 17:58:54 +07:00
Côme Chilliet 446b22ac3c
feat(router): Add fallback for legacy action and file routes
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-06-05 17:58:54 +07:00
Côme Chilliet 216da3a81c
fix: Deprecate action and actionInclude from routes and fix actionInclude
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-06-05 17:58:53 +07:00
Côme Chilliet 5c9092bc5b
fix: Use a more fitting cache key
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-06-05 17:58:53 +07:00
Côme Chilliet 01575b7d95
feat(router): Use Symfony CompiledUrlMatcherDumper to cache routes
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-06-05 17:58:53 +07:00
Côme Chilliet ee3abdd81b
feat(router): Cache routes in local cache if possible
This is not ideal because serializing the routecollection is not easy.
It seems Symfony has its own way of doing things by dumping routes to a
 PHP file, maybe that would be better, but it would mean pulling a new
 symfony dependency and maybe refactor our Router.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-06-05 17:58:46 +07:00
Côme Chilliet c85f7eacb8
fix: Throw AppNotFoundException from installer when application is not found
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-06-05 17:03:16 +07:00
Côme Chilliet bf340a576f
fix: Do not enable applications which are not installed yet
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-06-05 15:39:25 +07:00
skjnldsv e41e8de0e2 fix(dav): file drop nickname
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-06-05 09:09:17 +07:00
Joas Schilling 656dc478e5
fix(notifications): Fix check for hasNotifiers when all apps use RegistrationContext
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-06-04 06:32:26 +07:00
Julien Veyssier c4e936c6e8
Merge pull request #53205 from nextcloud/fix/noid/get-preview-force-mimetype
fix(PreviewManager): use the forced mimetype in throwIfPreviewsDisabled
2025-06-02 20:27:19 +07:00
Ferdinand Thiessen c21e189850
fix: make core application bootstrapable by coordinator
Co-authored-by: Ferdinand Thiessen <opensource@fthiessen.de>
Co-authored-by: Côme Chilliet <91878298+come-nc@users.noreply.github.com>
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-06-02 15:58:54 +07:00
Julien Veyssier c7e9f2c03d
fix(PreviewManager): use the forced mimetype in throwIfPreviewsDisabled
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2025-06-02 15:50:53 +07:00
Louis f4cb78b905
Merge pull request #52242 from nextcloud/artonge/fix/copy_subfolders_s3 2025-06-02 11:55:54 +07:00
Daniel Kesselberg c7b69931f3
fix: clear opcache after app extraction
clear opcache post app update extraction to prevent outdated files issues.

opcache.validate_timestamps=0 disables automated file modification checks.

Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-05-30 18:12:15 +07:00
Joas Schilling 89a7778f87
test: Mock ITaskManager to remove test interactions
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-05-29 12:20:20 +07:00
Joas Schilling 8b70f59015
chore(cs): Apply autofixes
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-05-29 09:18:12 +07:00
rakekniven 78bd9ad29f chore(i18n): Improved wording
Signed-off-by: rakekniven <2069590+rakekniven@users.noreply.github.com>
2025-05-29 01:09:55 +07:00
rakekniven c8da8628c3 chore(i18n): Add hint for translators
Signed-off-by: rakekniven <2069590+rakekniven@users.noreply.github.com>
2025-05-29 01:09:55 +07:00
Andrey Borysenko 7994332338
feat: add support for sensitive Declarative settings values encryption
Signed-off-by: Andrey Borysenko <andrey18106x@gmail.com>
2025-05-28 20:43:04 +07:00
Robin Appelman 5b3f4cd8fe perf: set the folder size in the same query as we create it
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-05-28 15:52:00 +07:00
Louis Chemineau 1f8b823992 fix(S3): Use original folder size during copy
This prevent having copied folders with a wrongly set size of 0KB.

- Fix https://github.com/nextcloud/server/issues/51916

Signed-off-by: Louis Chemineau <louis@chmn.me>
2025-05-28 15:52:00 +07:00
Robin Appelman 7599162c7b feat: move primary object store configuration to a single place
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-05-28 15:32:31 +07:00
Jonas f833e2d219
Merge pull request #52996 from nextcloud/fix/emit_hooks_on_copy
fix(node): emit hooks on `Node::copy()`
2025-05-28 13:49:49 +07:00
Benjamin Gaussorgues b7c46f1277
Merge pull request #53130 from nextcloud/artonge/fix/skip_blurhash_if_previews_are_disabled 2025-05-27 14:56:00 +07:00
Louis Chemineau 72bdb93b66
fix(blurhash): Skip generation the if previews are disabled.
Signed-off-by: Louis Chemineau <louis@chmn.me>
2025-05-27 12:26:42 +07:00
Jonas c952570e67
fix(node): emit hooks on `Node::copy()`
When calling `Files\Node\Node::copy()`, `Files\View::copy()` gets called,
but `Files\View::fakeRoot` is empty so the hooks are not emitted if no
path is given to `Files\View::shouldEmitHooks()`.

This results in node-related events like `NodeCopiedEvent` not being
fired when copying files via `Files\Node\Node::copy()`.

`Files\View::shouldEmitHooks()` is given a path as parameter in almost
all places except when called from the `copy()` function. This commit
changes it and passes the copy target path.

Fixes: nextcloud/collectives#1756

Signed-off-by: Jonas <jonas@freesources.org>
2025-05-27 12:14:14 +07:00
Jonas 2299ac8507
fix(FileReferenceEventListener): Invalidate cache after node was renamed
Fixes: nextcloud/collectives#1527

Signed-off-by: Jonas <jonas@freesources.org>
2025-05-27 11:27:38 +07:00
Christoph Wurst e736823fc7
fix(log): map all warnings to warn log level, notice to info
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2025-05-27 08:01:19 +07:00
諏訪子 30fc680086 fix(settings): add link check in webfinger
Signed-off-by: 諏訪子 <suwako@076.moe>
2025-05-27 10:13:13 +07:00
諏訪子 ef0729f23e fix(settings): change Mastodon only URI to webfinger
Signed-off-by: 諏訪子 <suwako@076.moe>
2025-05-25 23:52:16 +07:00
Ferdinand Thiessen e143921896
feat(IUser): add `getQuotaBytes` method to get machine readable quota
Proper replacement for deprecated `OC_Util::getUserQuota`.
Also we still use this in some cases we can now replace, moreover it
just makes sense to have a machine readable format in the API instead of
only the human readable format which is less precise.
Alings also with `getQuota` of the quota storage, which already returned
the machine readable format.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-05-22 12:50:38 +07:00
Joas Schilling ad7a050f96
fix: Revert "fix(db): Store last insert id before reconnect"
This reverts commit df94cceb7b.
There were records of some old IDs being read which is much worse

Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-05-21 07:55:42 +07:00
Arthur Schiwon bdc68989d5
fix: unbloc ffmpeg on some broken videos
Co-authored-by: Joas Schilling <coding@schilljs.com>
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2025-05-20 22:12:13 +07:00
Kate 08b9ecafe5
Merge pull request #52972 from nextcloud/fix/setupmanager/home-root-providers-register-mounts 2025-05-20 14:17:16 +07:00
Stephan Orbaugh edf21d9242
Merge pull request #52859 from Murena-SAS/dev/external-storage-previews
fix: Throw exception in PreviewManager when preview is not available
2025-05-20 13:32:45 +07:00
Akhil e537500c8e fix: Throw exception in PreviewManager when preview is not available
Signed-off-by: Akhil <akhil@e.email>
2025-05-20 13:17:40 +07:00
provokateurin ecfa58d3d7
fix(SetupManager): Include home and root providers when registering mounts
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-05-20 09:46:53 +07:00
Joas Schilling 1d8556ecc3
fix(throttler): Don't query bruteforce attempts twice
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-05-20 08:37:23 +07:00
Elizabeth Danzberger 5c7216f3fd
feat: only load template fields when requested
Signed-off-by: Elizabeth Danzberger <lizzy7128@tutanota.de>
2025-05-19 17:51:25 +07:00
Christoph Wurst 80b21cdc6e
Merge pull request #52879 from nextcloud/bug/noid/clear-dav-photo-cache
Add command to clear dav's photo cache
2025-05-19 18:10:07 +07:00
Kate 06ce2ccebe
Merge pull request #50157 from nextcloud/feat/mountmanager/emit-events 2025-05-19 17:47:31 +07:00
Kate 5ba9bc2dd6
Merge pull request #52930 from nextcloud/chore/depreate-oc-helper-ro 2025-05-19 16:36:31 +07:00
provokateurin 6818aa9b12
feat(UserMountCache): Emit events for added, removed and updated mounts
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-05-19 13:54:51 +07:00
Kate 6b4f5c567c
Merge pull request #52848 from nextcloud/fix/cleanup-servercontainer 2025-05-19 07:02:11 +07:00
Ferdinand Thiessen 22889d4f1d
chore: deprecate `OC_Helper::isReadOnlyConfigEnabled`
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-05-17 13:18:49 +07:00
Ferdinand Thiessen e2a331f53d
Merge pull request #52890 from nextcloud/chore/move-stream-copy-implementation
chore: move streamCopy implementation from `OC_Helper` to `OCP\Files`
2025-05-17 12:01:44 +07:00
Ferdinand Thiessen 3d33091d2c
chore!: remove legacy functions from `OC_Helper` deprecated before v10
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-05-16 22:57:50 +07:00
Ferdinand Thiessen bd91db8e20
chore: deprecate OC_Helper::copyr
Inline it into Installer as needed.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-05-16 17:32:45 +07:00
Ferdinand Thiessen 01db539d0a
chore: move streamCopy implementation from `OC_Helper` to `OCP\Files`
The function was already there but called the legacy version.
So moved the implementation and migrated all usages of it.
Sadly the interface was slightly different so adjusted it to be
compatible with both legacy and the OCP one.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-05-16 13:03:05 +07:00
Ferdinand Thiessen 802def31f2
chore: move implementation to non-deprecated OCP\Util from OC_Helper
Only moves the implementation where it was already existing and adds
more helpful deprecation messages.
This way we can in the future just remove the OC_Helper variants.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-05-16 10:56:58 +07:00
Côme Chilliet 2406677b40
fix: Do not use circle provider class constant
This is to avoid issues if the circles app is disabled but you still
 have circles shares in your DB

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-05-16 10:50:41 +07:00
Côme Chilliet 2419f4bebb
fix: Count on the circles application to register its share provider
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-05-16 10:49:04 +07:00
Côme Chilliet 369900e5a5
fix: Remove deprecated getters from Server that were previously removed from public interface
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-05-16 10:49:01 +07:00
Côme Chilliet 998062d342
fix: Cleanup share ProviderFactory to correctly use DI instead of deprecated getters
Ideally circles and talk should migrate to calling registerProvider and
 core would not need to use their OCA classes like currently.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-05-16 10:48:03 +07:00
Christoph Wurst 47c0786a3f
Merge pull request #52871 from AndyXheli/patch-2
fix(previews): lower log level when cached preview isn't found
2025-05-16 10:42:51 +07:00
Robin Appelman 48e94baeeb
Merge pull request #52873 from nextcloud/cache-rename-source-error
fix: improve error message when cache rename source can't be found
2025-05-15 18:34:07 +07:00
Daniel Kesselberg 3d1de793b1
refactor(dav): replace IAppData with IAppDataFactory for PhotoCache
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-05-15 18:28:45 +07:00
Kate 4aa4972550
Merge pull request #52870 from nextcloud/chore/remove-get-storage 2025-05-15 16:04:45 +07:00
Robin Appelman 5329c373cc fix: improve error message when cache rename source can't be found
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-05-15 15:06:55 +07:00
AndyXheli ecd1d5dde2
fix(previews): lower log level when cached preview isn't found
Since this PR #52221 was implemented, the log file has been flooded with warnings stating, "Cached preview not found for file; generating a new preview." This appears to be more of an informational message rather than a warning. This PR will change it from warning to debug

Original PR
#52221

Signed-off-by: AndyXheli <andyxheli@gmail.com>
2025-05-15 07:34:40 +07:00
Ferdinand Thiessen 54eaad76c0
chore!(\OCP\Files): remove deprecated static `getStorage` method
Was deprecated since Nextcloud 14 and is not used anymore.
Removing allows us to clean the OCP psalm baseline.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-05-15 14:18:28 +07:00
Ferdinand Thiessen e4ed062d68
fix(RouteParser): bail out if method name contains hashtag
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-05-15 13:57:14 +07:00
provokateurin 63ba61487b
chore(AppFramework): Remove unused RouteConfig class and migrate tests to RouteParser
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-05-15 13:57:14 +07:00
provokateurin db70ff6488
refactor(App): Remove registerRoutes method
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-05-15 13:46:14 +07:00
John Molakvoæ cac44fd924
Merge pull request #52822 from nextcloud/feat/mime-names 2025-05-15 11:41:12 +07:00
Joas Schilling a316ae1590
fix: Fix warning when crash reporter fails to get loaded
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-05-15 08:25:01 +07:00
Côme Chilliet baae99eaad
Merge pull request #52667 from nextcloud/fix/improve-init-profiling
Improve init profiling
2025-05-14 22:57:55 +07:00
John Molakvoæ (skjnldsv) 24bc1d606e
feat(core): add human readable mimes
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2025-05-14 22:55:06 +07:00
John Molakvoæ ae63945736
Merge pull request #52544 from nextcloud/chore/drop-deprecated-account-scopes 2025-05-14 22:15:01 +07:00
John Molakvoæ b3b63020c9
Merge pull request #52812 from nextcloud/chore/oc-helper-rmdirr 2025-05-14 21:53:47 +07:00
Benjamin Gaussorgues 1b72ddd8c8
Merge pull request #52684 from nextcloud/bugfix/noid/last-insert-id-when-reconnecting 2025-05-14 19:44:30 +07:00
Côme Chilliet 2cd491f491
Merge pull request #48560 from nextcloud/fix/migrate-encryption-away-from-hooks
feat(encryption): Migrate from hooks to events
2025-05-14 19:25:51 +07:00
Côme Chilliet 0c56605497
fix: Fix psalm issue and update baseline
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-05-14 19:18:31 +07:00
Ferdinand Thiessen 1b273b8c2c
chore(IAccountManager): remove deprecated visibility constants
Those constants are not used anywhere anymore and are deprecated for
more than ten versions. So its time to cleanup the interface.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-05-14 19:15:24 +07:00
Andy Scherzinger 14f79829f3
Merge pull request #52775 from nextcloud/nested-jail-root
fix unjailedroot of nested jails if there are other wrappers in between
2025-05-14 17:36:55 +07:00
Kate bfa494f247
Merge pull request #52800 from nextcloud/debt/noid/simple-file-generic-exception 2025-05-14 15:25:41 +07:00
Ferdinand Thiessen 072d4e8cba
chore: move implementation from OC legacy to OCP\Files
- move implementation to the OCP variant that called the legacy before
- add the missing deprecation notice
- add missing parameter to align both signatures
- use OCP\Files where this method is still used

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-05-14 14:55:45 +07:00
Daniel 7523c38e58
Merge pull request #52798 from nextcloud/bug/noid/log-requests-exceeding-rate-limit
fix: log requests exceeding the rate limiting
2025-05-14 14:54:57 +07:00
Ferdinand Thiessen 1c7e4a1ba6
Merge pull request #52801 from nextcloud/chore/oc-helper-filesize
chore: replace legacy OC_Helper calls with OCP\Util
2025-05-14 14:37:13 +07:00
Ferdinand Thiessen a01e85799c
Merge pull request #52802 from nextcloud/chore/oc-helper-can-exec
chore: deprecate \OC_Helper::canExecute
2025-05-14 12:45:25 +07:00
Daniel Kesselberg a53e15c971
fix: log requests exceeding the rate limiting
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-05-14 12:23:40 +07:00
Joas Schilling df94cceb7b
fix(db): Store last insert id before reconnect
During a reconnect we are losing the connection and when the
realLastInsertId call is the one triggering the reconnect, it
does not return the ID. But inside the reconnect, we were able
to save the last insert id, so calling it a second time is going
to be successful.
We can not return the result on the initial call, as we are already
way deeper in the stack performing the actual database query on
the doctrine driver.

Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-05-14 10:27:00 +07:00
Ferdinand Thiessen 1ae3fa4003
chore: replace leagcy OC_Helper calls with OCP\Util
- Replace legacy calls with OCP\Util
- Add missing deprecation notices
- Inline implementation in OCP\Util and call it from OC_Helper

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-05-14 10:18:04 +07:00
Ferdinand Thiessen 85a6b0d0eb
chore: deprecate \OC_Helper::canExecute
replace this legacy method with just the IBinaryFinder

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-05-14 09:55:14 +07:00
Côme Chilliet 2b4bfcc212 fix(log): Only log client request id if present, and at the end
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-05-14 00:35:21 +07:00
Côme Chilliet 4c25654574 feat(log): Log the request id sent with the request
This should help matching client logs with server logs, hopefully.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-05-14 00:35:21 +07:00
Côme Chilliet a86d917907 fix(encryption): Only prevent cache deletion if target is not object store in moveFromStorage
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-05-13 23:37:52 +07:00
Côme Chilliet a79b5dea7c fix(encryption): Improve Update class and event listenening
to avoid back&forth between path and Node object

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-05-13 23:37:52 +07:00
Côme Chilliet e6275f8759 fix: Preserve file id when moving from object store even if encryption wrapper is present
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-05-13 23:37:52 +07:00
Côme Chilliet 27599ef45d fix(encryption): Fix a PHP error in Encryption Util in specific situations
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-05-13 23:37:52 +07:00
Côme Chilliet 9bb0721d66 fix: Fix mtime preservation when moving a directory across storages with encryption registered
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-05-13 23:37:52 +07:00
Côme Chilliet 8779ae38a4 fix(encryption): Fix filesize for part files in Encryption wrapper
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-05-13 23:37:52 +07:00
Côme Chilliet 536ccf144c feat(encryption): Migrate from hooks to events
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-05-13 23:37:52 +07:00
Côme Chilliet fb615ef9f8
Merge pull request #52688 from nextcloud/feat/ocp-sanitize-filenames
feat(FilenameValidator): allow to sanitize filenames
2025-05-13 23:35:43 +07:00
Daniel Kesselberg 866063c198
fix: annotate possible exceptions
File.getContent can throw a GenericFileException since https://github.com/nextcloud/server/pull/37943.

Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-05-13 22:27:19 +07:00
Christoph Wurst 8c68f1eeb7
Merge pull request #52778 from nextcloud/fix/noid-check-for-properties-before-processing
fix: check if properties exist before using them
2025-05-13 18:58:16 +07:00
Robin Appelman 1e72620169 fix: fix unjailedroot of nested jails if there are other wrappers in between
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-05-13 18:29:00 +07:00
Robin Appelman 0001c22668 test: add test for nested cache jail unjailedroot
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-05-13 18:29:00 +07:00
Côme Chilliet 20c6d1a7e9
feat: Improve init a bit, and add more profiling steps
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-05-13 16:08:49 +07:00
Ferdinand Thiessen 6cf1870322
feat(FilenameValidator): allow to sanitize filenames
Share the filename sanitizing with the OCP filename validator.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-05-13 14:14:17 +07:00
Côme Chilliet 2f1c74d43f
Merge pull request #51920 from nextcloud/newfolder-race-improvements
fix: improve handling of newFolder race condition handling
2025-05-13 09:16:54 +07:00
SebastianKrupinski ebd80bc142 fix: check if properties exist before using them
Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
2025-05-12 15:44:07 +07:00
Robin Appelman 768b101a9d
Merge pull request #52706 from nextcloud/info-file-more-encryption-checks
feat: add more encryption checks to info:file
2025-05-12 13:17:26 +07:00
Robin Appelman e6bdfcd8ed
Merge pull request #52665 from nextcloud/mountpoint-mkdir-quota
fix: create mountpoint folder even if the user has a quota of 0
2025-05-12 13:17:02 +07:00
Robin Appelman b0b8159d6a
fix: throw a better error if we can't get the encrypted header size
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-05-09 22:33:45 +07:00
Robin Appelman d9c53ef748
feat: add more encryption checks to info:file
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-05-09 16:35:31 +07:00
Kate 648745d524
Merge pull request #52634 from nextcloud/perf/share20/get-all-shares-in-folder 2025-05-08 16:24:21 +07:00
provokateurin ae16a28758
perf(Share20): Add interface to query all shares in a folder without filtering by user
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-05-08 15:29:40 +07:00
Robin Appelman 99364adc1c
fix: improve handling of newFolder race condition handling
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-05-08 15:19:40 +07:00
Robin Appelman cd75876c1e fix: create mountpoint folder even if the user has a quota of 0
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-05-08 15:15:36 +07:00
Kate 7880a5c25e
Merge pull request #52375 from nextcloud/fix/noid/metadata-on-fresh-setup 2025-05-07 09:40:30 +07:00
Maxence Lange cd06b2432c
Merge pull request #52623 from nextcloud/feat/noid/get-value-type-from-lexicon
iAppConfig: getValueType() get data from lexicon if available
2025-05-07 00:04:46 +07:00
Daniel 1c2b4f2a41
Merge pull request #52586 from nextcloud/bugfix/noid/remove-sleep-from-throttler
fix(throttler): Always use the sleepDelayOrThrowOnMax instead of deprecated sleepDelay
2025-05-06 19:22:53 +07:00
Kate 87bad33496
Merge pull request #52047 from nextcloud/sub-mount-filter-no-storage 2025-05-06 15:25:23 +07:00
Kate c1a9dfd993
Merge pull request #52441 from nextcloud/scan-locked-error 2025-05-06 15:23:16 +07:00
Kate 9592390070
Merge pull request #51779 from nextcloud/object-store-filename 2025-05-06 15:21:01 +07:00
Louis 1c518a291d
Merge pull request #52360 from nextcloud/artonge/fix/use_preview_api_for_blurhash_generation 2025-05-06 14:12:50 +07:00
Edward Ly 6af7ca0a85
fix(TaskProcessing): increase task cleanup delay
Signed-off-by: Edward Ly <contact@edward.ly>
2025-05-05 11:24:13 +07:00
Maxence Lange b3f52ebbe8 feat(appconfig): getValueType() get data from lexicon if available
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2025-05-05 10:17:02 +07:00
Louis Chemineau 867be352f3
fix(blurhash): Use preview API to generate the previews
This allows to benefit from all the checks done by the preview API.
This also use the newly introduced `cacheResult` argument to limit disk usage.

Signed-off-by: Louis Chemineau <louis@chmn.me>
2025-05-05 11:13:31 +07:00
Louis Chemineau 2238548278
feat(previews): Support in memory preview request
This allows callers to use the API without increasing the disk usage.

Example: blurhash generation, where we request a preview for all uploaded pictures, but don't want to necessarily store that preview.
Signed-off-by: Louis Chemineau <louis@chmn.me>
2025-05-05 10:38:51 +07:00
Joas Schilling 7964f338dc
fix(throttler): Remove the sleep from the throttler that throws
The sleep is not adding benefit when it's being aborted with 429
in other cases anyway.

Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-05-02 11:27:29 +07:00
Louis Chemineau 5c73f2c37f
fix: Forward 'extra' argument when optimizing query
This allows DAV SEARCH queries containing optimizable comparisons on files metadata like:

```xml
				<d:or>
					<d:eq>
						<d:prop>
							<nc:metadata-photos-place />
						</d:prop>
						<d:literal>La Valette-du-Var</d:literal>
					</d:eq>
					<d:eq>
						<d:prop>
							<nc:metadata-photos-place />
						</d:prop>
						<d:literal>Évenos</d:literal>
					</d:eq>
				</d:or>
```

Signed-off-by: Louis Chemineau <louis@chmn.me>
2025-04-29 18:17:23 +07:00
Joas Schilling e7fbfa61e5
Merge pull request #52051 from Lukasdotcom/feat/text-to-speech
feat(TaskProcessing): Add TextToSpeech provider
2025-04-29 15:41:21 +07:00
Stephan Orbaugh f9b6b88d5c
Merge pull request #52479 from RobertZenz/bugfix/fix-jsresourcelocator-incorrect-parameter
fix(JSResourceLocator) fix incorrect parameter being used.
2025-04-29 09:10:51 +07:00
Kate 10a01423ec
Merge pull request #52402 from nextcloud/fix/32bit-pack 2025-04-28 21:23:17 +07:00
Joas Schilling 40e52e212a
Merge pull request #52434 from nextcloud/bugfix/52420/closure-as-default-app
fix(navigation): Fix default app entry registered as closure
2025-04-28 16:54:11 +07:00
Ferdinand Thiessen a22171507a
fix(32bit): use `PHP_INT_MAX` where needed
* Typo from https://github.com/nextcloud/server/pull/52392

`0xFFFF` is only 2 bytes, but we need either `0xFFFFFFFF` or maybe a bit
easier to read `PHP_INT_MAX`.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-04-28 12:33:58 +07:00
Robert Zenz f428e6786b fix(JSResourceLocator) fix incorrect parameter being used. 2025-04-26 15:19:55 +07:00
Lukas Schaefer 99e8849b6c
feat(TaskProcessing): Add TextToSpeech provider
Signed-off-by: Lukas Schaefer <lukas@lschaefer.xyz>
2025-04-26 00:46:23 +07:00
Robin Appelman bb4cf2830a
fix: better error message when trying to scan a folder that is already being scanned
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-04-25 18:40:03 +07:00
Joas Schilling cdfce26ea9
fix(navigation): Fix absolute URLs from default apps
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-04-25 14:49:19 +07:00
Joas Schilling 553870d30a
fix(navigation): Fix default app entry registered as closure
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-04-25 14:47:33 +07:00
Andy Scherzinger f154e60af3
Merge pull request #52424 from nextcloud/bugfix/noid/censor-more-app-configs
fix(config): Censor more app configs in system report
2025-04-25 13:03:38 +07:00
Stephan Orbaugh 258983e665
Merge pull request #51355 from AIlkiv/refactor/rollback-hook-usage
refactor: cleanup rollback hook usage
2025-04-25 11:42:20 +07:00
Joas Schilling 8524955091
fix(config): Censor more app configs in system report
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-04-25 11:01:38 +07:00
ailkiv 616716cd6a refactor: cleanup rollback hook usage
Signed-off-by: ailkiv <a.ilkiv.ye@gmail.com>
2025-04-25 08:25:11 +07:00
Andy Scherzinger 34949e4a36
Merge pull request #52079 from IONOS-Productivity/fix/s3_traffic_on_video_thumbnails
fix(previews): avoid large file downloads for remote movie storage
2025-04-24 14:44:34 +07:00