Commit Graph

80772 Commits (9311cb15c72650c6397ff7144472a3fd6a6f6c1b)
 

Author SHA1 Message Date
Ferdinand Thiessen 9311cb15c7
chore: compile assets
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-07-22 12:50:36 +07:00
Ferdinand Thiessen 7c96d1318a
fix(settings): translate pronounce account property
Template string is not working.
Additionally migrate to Typescript and directly import `t` method.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-07-22 12:42:36 +07:00
Ferdinand Thiessen 99405662da
Merge pull request #54030 from nextcloud/backport/54019/stable31
[stable31] fix(settings): verify source of app-discover media
2025-07-22 03:48:37 +07:00
Nextcloud bot 9589c6e5b4
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-07-22 00:12:37 +07:00
Ferdinand Thiessen 579ae09d6d fix(settings): verify source of app-discover media
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-07-21 16:58:35 +07:00
Joas Schilling 98c89e38de
Merge pull request #54023 from nextcloud/chore-gw-codeowners-31
[stable31] update groupware code owners
2025-07-21 14:38:56 +07:00
Daniel Kesselberg 63b1d1cd06
chore(codeowners): add codeowners for calendar and contacts impl
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-07-21 14:33:46 +07:00
Daniel Kesselberg 963ca4bfc9
chore(codeowners): add codeowners for calendar and contacts api
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-07-21 14:33:01 +07:00
Daniel c2f14f44cb
Merge pull request #53838 from nextcloud/backport/53814/stable31
[stable31] fix(imip): set charset for imip attachment
2025-07-20 23:22:58 +07:00
Nextcloud bot 9504d388c4
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-07-20 00:12:58 +07:00
Nextcloud bot 49e7975020
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-07-19 00:12:30 +07:00
Nextcloud bot 53ae06a980
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-07-18 00:14:04 +07:00
Ferdinand Thiessen 5022fb27d5
Merge pull request #53999 from nextcloud/backport/53979/stable31
[stable31] fix(files_sharing): ensure share folder exists in the settings
2025-07-18 00:19:02 +07:00
Ferdinand Thiessen be3f0e7ce9 fix(files_sharing): ensure share folder exists in the settings
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-07-17 21:16:51 +07:00
Daniel 8dd2620c64
Merge pull request #53973 from nextcloud/backport/53972/stable31
[stable31] fix(federation): respect sharing.federation.allowSelfSignedCertificat…
2025-07-17 14:52:21 +07:00
Daniel Calviño Sánchez 15f71b507a
Merge pull request #53990 from nextcloud/backport/53964/stable31
[stable31] fix: Fix clearing unified search when modal is closed
2025-07-17 14:51:30 +07:00
nextcloud-command 4e133196d8 chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-07-17 11:46:56 +07:00
Daniel Calviño Sánchez 0f03afad4c fix: Fix clearing unified search when modal is closed
The unified search modal was intended to be cleared when closed.
However, "UnifiedSearchModal" did not emit "update:query" when its
internal query value ("searchQuery") changed, so "UnifiedSearch.query"
was kept as an empty string. When the modal was closed "update:query"
was emitted with an empty string, which should have cleared
"UnifiedSearch.query" and that, in turn, should have cleared the modal.
However as "UnifiedSearch.query" was already an empty string the watcher
that updates "UnifiedSearchModal.searchQuery" from "UnifiedSearch.query"
was not triggered and the modal was not cleared.

As "UnifiedSearch.query" is now updated with the value of
"UnifiedSearchModal.searchQuery" the latter can not be trimmed when
updated from the former, as that would in turn also trim
"UnifiedSearchModal.searchQuery" and prevent to search for anything with
spaces at the beginning or end (even if those trailing spaces are just
temporary while writing something like "searched value").

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-07-17 11:41:21 +07:00
Daniel Kesselberg 7a4887953d fix(federation): respect sharing.federation.allowSelfSignedCertificates for address book sync
The configuration option, to accept self-signed certificates, is now also used when syncing address books.

Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-07-17 12:29:56 +07:00
Nextcloud bot 6a4f6e26c3
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-07-17 00:12:16 +07:00
Joas Schilling 1df845457b
Merge pull request #53961 from nextcloud/automated/noid/stable31-update-ca-cert-bundle
[stable31] fix(security): Update CA certificate bundle
2025-07-16 06:44:26 +07:00
nextcloud-command 12dbf89d8d fix(security): Update CA certificate bundle
Signed-off-by: GitHub <noreply@github.com>
2025-07-16 02:45:00 +07:00
Kate be84f82fa7
Merge pull request #53837 from nextcloud/backport/53112/stable31 2025-07-16 02:16:37 +07:00
Nextcloud bot f58887ef8d
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-07-16 00:12:18 +07:00
Kent Delante f8cce08595 fix(files_trashbin): Expire trashbin items when space is needed
Signed-off-by: Kent Delante <kent.delante@proton.me>
2025-07-16 08:00:28 +07:00
John Molakvoæ 5a18e66ba8
Merge pull request #53939 from nextcloud/chore/s31-deps-nextcloud-vue-8-28
[stable31] chore(deps): update `@nextcloud/vue` to v8.28.0
2025-07-15 13:02:54 +07:00
nextcloud-command b76a5bcbbc chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-07-15 09:11:26 +07:00
Ferdinand Thiessen ec263a328a
test: adjust test code for updated `@nextcloud/vue` version
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-07-14 22:29:03 +07:00
Ferdinand Thiessen 3e365aaa51
chore(deps): update `@nextcloud/vue` to v8.28.0
- update `@nextcloud/l10n` to v3.4.0
- update `@nextcloud/moment` to v1.3.5

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-07-14 22:27:45 +07:00
Daniel Kesselberg 8dafde1fb9 fix(imip): set charset for imip attachment
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-07-14 15:43:42 +07:00
Hamza 0d8eb3959f
Merge pull request #53916 from nextcloud/backport/53855/stable31
[stable31] fix: hide rename action in trashbin
2025-07-14 10:43:24 +07:00
Joas Schilling 02eb875b1f
Merge pull request #53921 from nextcloud/backport/53857/stable31
[stable31] fix(theming): Correctly generate CSS for font themes
2025-07-14 08:48:28 +07:00
Andy Scherzinger 3771f1c63e
Merge pull request #53817 from nextcloud/backport/53429/stable31
[stable31] feat(settings): simplify OPcache checks
2025-07-14 08:44:59 +07:00
Nextcloud bot a9ce915191
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-07-14 00:12:02 +07:00
MichaIng d10a87f85f feat(settings): simplify OPcache checks
For the overall OPcache size check, we currently compare used memory with free memory. However, `opcache.memory_consumption` is split into `used_memory`, `free_memory` and `wasted_memory`. When cached files change on disk, old entries are not replaced or removed, but remain as wasted memory, until the cache is actually full, and if their percentage is above `opcache.max_wasted_percentage`, which is 5% by default. When this happens, the engine is restarted, resetting the cache completely, like a `opcache_reset()` call.

As long as we do not consider wasted cache, recommendations based on free memory can be false. To solve this, we could count wasted memory as free memory, if it is above `opcache.max_wasted_percentage`, as the engine will be restarted as soon as needed, freeing up this wasted space. On the other hand, wasted memory below the threshold permanently blocks the OPcache, which supports counting it as used memory. Depending on the situation, instead of raising OPcache size, it could be also advised to reduce `opcache.max_wasted_percentage`. But too frequent cache resets break its purpose as well.

In my opinion, the matter is too complex to consider wasted cache correctly, and do precise recommendations, but we should focus on reducing false positives instead. What we know for sure is: if the cache is full (`$status['cache_full'] === true`), and the limit for cached keys has not been reached, the OPcache was too small to maintain free space, with wasted memory below the configured threshold, where it consumes memory permanently. Recommending to raise the OPcache size in this case, is hence as accurate as it gets. Even if 5% wasted cache could be freed, 95% used memory is still above the previous threshold for the setup check warning. And if `opcache.max_wasted_percentage` is above 5%, then the admin must have decided to change the default, deciding that system memory consumption has lower priority than preventing OPcache engine restarts.

`cache_full` can be true as well if the limit for cached keys has been reached, hence we need to merge both checks. In this case `num_cached_keys` equals `max_cached_keys` exactly, hence it is easy to differentiale whether `opcache.max_accelerated_files` or `opcache.memory_consumption` needs to be raised to address the `cache_full` state.

In practice, this change relaxes the checks: the respective limit needs to be reached 100% instead of 90%, to trigger a warning, eliminating also false alarms if a large share of the cache is consumed by wasted memory, which would be automatically freed once cache is 100% full.

Additionally, the recommendation for raising `opcache.max_accelerated_files` now says "a value higher than `max_cached_keys`", instead of "higher than `opcache.max_accelerated_files`". The actual limit, reflected by `max_cached_keys` from `opcache_get_status()`, [is a next higher value from a set of prime numbers](https://www.php.net/manual/en/opcache.configuration.php#ini.opcache.max-accelerated-files). E.g. if `opcache.max_accelerated_files` is set to 10,000 (PHP default), the effective limit is 16,229 OPcache keys. Recommending "higher than 10000" could hence lead to a settings change without effect. For an effective change, the new value needs to be "higher than 16229" instead, which is what the setup check will show in this situation, with this change applied.

Signed-off-by: MichaIng <micha@dietpi.com>
2025-07-13 22:51:17 +07:00
Ferdinand Thiessen 315a1d0f24
Merge pull request #53796 from nextcloud/backport/53788/stable31
[stable31] fix(profile): add max width for the user actions
2025-07-13 13:53:04 +07:00
Nextcloud bot 8d4f0a62ae
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-07-13 00:12:06 +07:00
Nextcloud bot 42aba84c3a
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-07-12 00:12:05 +07:00
nfebe 5acf36f17d fix(theming): Correctly generate CSS for font themes
Fixes a regression from dropping the SCSS compiler that broke
font themes like OpenDyslexic. The old code relied on the SCSS
compiler to automatically correct the order of the CSS rules,
ensuring the @font-face declaration was always valid.
The server now correctly generates the `@font-face` rule at
the top level of the stylesheet, fixing the previously invalid nested CSS.

Introduced in : f1448fcf07

Signed-off-by: nfebe <fenn25.fn@gmail.com>
2025-07-11 19:49:14 +07:00
nextcloud-command 740c803351 chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-07-11 16:07:35 +07:00
Hamza bb48b4b5ae fix: adapt rename action tests to check for parent permissions
Signed-off-by: Hamza <hamzamahjoubi221@gmail.com>
2025-07-11 17:24:15 +07:00
skjnldsv ce15c53c69 fix(files): allow renaming if parent allow creating
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-07-11 14:41:47 +07:00
Hamza e167dc1dd7 fix: hide rename action is trashbin
Signed-off-by: Hamza <hamzamahjoubi221@gmail.com>
2025-07-11 14:41:47 +07:00
Kate 6fe42f9423
Merge pull request #53858 from nextcloud/backport/53840/stable31 2025-07-11 15:33:36 +07:00
Daniel Calviño Sánchez 3f03fedb12
Merge pull request #53902 from nextcloud/backport/53501/stable31
[stable31] fix: Fix theming for disabled accounts
2025-07-11 12:52:12 +07:00
Kate eb2f30911e
Merge pull request #53907 from nextcloud/backport/53887/stable31 2025-07-11 10:10:16 +07:00
Kate 20b41645e6
Merge pull request #53843 from nextcloud/backport/53109/stable31 2025-07-11 09:08:52 +07:00
skjnldsv 523fb38678 fix: force lowercase emails
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-07-11 09:05:47 +07:00
Daniel Calviño Sánchez ac6b07356d fix: Fix theming for disabled accounts
The Theming app injects the stylesheets for the different themes in the
"<header>" element of the page, and those stylesheets are then loaded by
the browser from a "Controller" (a plain "Controller", not an
"OCSController"). The stylesheets, in turn, may also get some images
(like the background) also from the "Controller".

When handling a request to "index.php" it is checked whether the user is
logged in and, if not, a login is tried. A disabled user is explicitly
seen as not logged in, so a login is always tried in that case, but
disabled users are also explicitly prevented to log in, so the login
also fails. Due to that trying to get any of the themed stylesheets or
images with a disabled account (to be able to show the "Account
disabled" error page) fails with an HTTP status 401.

To solve that, and to avoid touching this basic logic as much as
possible, the login exception is now ignored (if the user is disabled)
for some specific requests to the Theming app.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-07-11 02:54:16 +07:00
Daniel Calviño Sánchez ce8baf75c6 fix: Throw specific LoginException when the user is disabled
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-07-11 02:50:58 +07:00