Commit graph

19747 commits

Author SHA1 Message Date
Christoph Wurst
0afe44c449 Do not print verbose info about app updates if there are none
This is cosmetical but if you have a large number of apps installed then
you'll see a wall of text during the server and app upgrade when it
tries to update each app via the app store. In may cases nothing will be
updated. For those boring cases we can hide the verbose info, but show
when occ is run with -v. Any actual update will still print a few lines.
Those are the important ones for the admin.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-11-22 02:24:59 +00:00
Vincent Petry
f0661de4e5 Normalize directory entries in Encoding wrapper
Directory entry file names are now normalized in getMetaData(),
getDirectoryContents() and opendir().

This makes the scanner work properly as it assumes pre-normalized names.

In case the names were not normalized, the scanner will now skip the
entries and display a warning when applicable.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-11-19 14:51:38 +00:00
Vincent Petry
516b10de33 Move storage encoding compatibility warning logic
The encoding check for file names is now happening the Scanner, and an
event will be emitted only if the storage doesn't contain the encoding
compatibility wrapper.

The event is listened to by the occ scan command to be able to display a
warning in case of file name mismatches when they have NFD encoding.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-11-19 14:51:38 +00:00
Vincent Petry
106950d493 Normalize file name before existence check in scanner
The scanner would not find a NFD-encoded file name in an
existing file list that is normalized.

This normalizes the file name before scanning.

Fixes issues where scanning repeatedly would make NFD files flicker in
and out of existence in the file cache.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-11-19 14:51:38 +00:00
Daniel Calviño Sánchez
8ff4870026 Allow to serve static WebAssembly and TensorFlow Lite files
Since Talk 13 (and thus Nextcloud 23) WebAssembly (.wasm) and TensorFlow
Lite (.tflite) files need to be loaded from the web server to provide
certain features (like the background blur in the WebUI).

Those files can be treated in a similar way to other static resources,
and there should not be any problem caching or compressing them.
However, as compressed TensorFlow Lite files are only ~12% smaller,
the compression directive depends on the MIME type and there is no
standard MIME type for TensorFlow Lite files it is not worth to compress
them.

Moreover, no directives to compress WebAssembly files were added either,
as it seems that they would override any other compression directives
set in the default server configuration; for reference it could be done
with something like:
<IfModule mod_deflate.c>
  <IfModule mod_filter.c>
    AddOutputFilterByType DEFLATE application/wasm
  </IfModule>
</IfModule>

Depending on the setup "application/wasm" may not be associated with
".wasm" files, so the directive was added just in case, as otherwise
browsers log a warning.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-11-17 14:11:52 +00:00
Vincent Petry
2fb31dffc6
Merge pull request #29662 from nextcloud/enhancement/calendar-search-properties-api-stable23
[stable23] Document allowed property names for calendar property searches
2021-11-17 13:14:05 +01:00
Naoto Kobayashi
acece8f4ba OC_Util::isNonUTF8Locale: fix lint error
Signed-off-by: Naoto Kobayashi <naoto.kobayashi4c@gmail.com>
2021-11-16 17:52:18 +00:00
Naoto Kobayashi
5fc031c91f OC_Util::isSetLocaleWorking: fix typo
Signed-off-by: Naoto Kobayashi <naoto.kobayashi4c@gmail.com>
2021-11-16 17:52:18 +00:00
Naoto Kobayashi
d27be604d4 OC_Util: Add fallbacks to check if current locale is UTF8
Using escapeshellcmd to get current locale causes error
if the function is disabled.

Add fallbacks to prevent the error.

Signed-off-by: Naoto Kobayashi <naoto.kobayashi4c@gmail.com>
2021-11-16 17:52:18 +00:00
Naoto Kobayashi
3b83976c98 Check whether setlocale works only after setlocale
Signed-off-by: Naoto Kobayashi <naoto.kobayashi4c@gmail.com>
2021-11-16 17:52:18 +00:00
Naoto Kobayashi
7e80182e75 Fix missing setlocale with php 8
When php version = 8, basename('§') does not bug even if LC_ALL is non-UTF-8 locale.
This cause OC_Util::isSetLocaleWorking() to skip setlocale("C.UTF-8").

Fix it by using escapeshellcmd instead of basename.

Signed-off-by: Naoto Kobayashi <naoto.kobayashi4c@gmail.com>
2021-11-16 17:52:17 +00:00
MichaIng
077c45f173 Correct comment about OC_Defaults being used
Signed-off-by: MichaIng <micha@dietpi.com>
2021-11-16 10:36:05 +00:00
Carl Schwan
b8da11cd62 Fix core depending on theming app
This was introduced in 309354852f
to fix a bug but I can't reproduce the bug after reverting this change.

Ideally we would need to create an interface in OCP and cleanup OC_Defaults
instead of depending on OC_Defaults.

Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2021-11-16 10:36:04 +00:00
John Molakvoæ
0233cd4edb
Merge pull request #29716 from nextcloud/bump-doctrine-dbal-23 2021-11-15 19:55:18 +01:00
Joas Schilling
8b0bf9eadf
Allow NULL as well for limit, not integer only
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-11-15 18:53:42 +01:00
Christoph Wurst
bf5c89bbdd
Merge pull request #29671 from nextcloud/backport/29660/stable23
[stable23] Fix initialization of calendar search URIs
2021-11-15 09:52:24 +01:00
Joas Schilling
21f7134fe0 Fix missing token update
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-11-12 14:49:38 +00:00
Christoph Wurst
ddf6b82112 Fix initialization of calendar search URIs
They are an empty array by default. If you don't initialize then
accessing them via the setter will throw a type error.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-11-11 15:07:36 +00:00
Joas Schilling
32005be6b2 Fix updating with apps
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-11-11 13:39:22 +00:00
Christoph Wurst
0b72abb7a5
Document allowed property names for calendar property searches
For API users it looked like any properties could be searched. But it
turned out to be a hand picked list of properties that we index and then
use for the search. To prevent application errors where special props
are not found, I suggest we document the allowed values.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-11-11 11:02:48 +01:00
Nextcloud bot
70c10f09fe
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-11-10 02:24:27 +00:00
Joas Schilling
a99efca551
Merge pull request #29559 from nextcloud/feat/28139/profile-respect-user-enumeration
Respect user enumeration settings on profile
2021-11-09 23:49:01 +01:00
Joas Schilling
fa036b2001
Move common logic to share manager
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-11-09 10:10:53 +01:00
Nextcloud bot
586cc9bcbc
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-11-08 02:33:09 +00:00
Nextcloud bot
690ba0087e
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-11-07 02:22:34 +00:00
Nextcloud bot
b352bf7e97
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-11-06 02:22:41 +00:00
Vincent Petry
93fb33d863
Update lib/private/Files/Storage/Wrapper/Availability.php add void
Signed-off-by: Vincent Petry <vincent@nextcloud.com>

Co-authored-by: Carl Schwan <carl@carlschwan.eu>
2021-11-05 10:28:41 +01:00
Vincent Petry
db29fd29ee
Return false in hasUpdated when storage is not available
Technically, saying that a storage has no updates when it's not
available is correct.

This makes it possible to retrieve the cache entry for the mount point
and also to list and remove unavailable federated shares.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-11-05 09:48:52 +01:00
Nextcloud bot
7cc92fff7a
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-11-05 02:22:55 +00:00
John Molakvoæ
d6152bf98d
Fix psalm
Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
2021-11-04 10:24:13 +01:00
John Molakvoæ
7bf9382575
Merge pull request #29482 from nextcloud/feat/revamp-profile-visibility-section 2021-11-04 08:32:22 +01:00
Christoph Wurst
18e6288c89
Merge pull request #29533 from nextcloud/enhancement/get-calendars-for-principal-api
Add IManager::getCalendarsForPrincipal API
2021-11-04 07:33:49 +01:00
Christopher Ng
50a6612c1f Refine profile backend for frontend visibility requirements
- Provide metadata
  - Dynamic displayId
  - Add appId
- Filter out unused parameter config properties from the existing profile config

Signed-off-by: Christopher Ng <chrng8@gmail.com>
2021-11-04 00:17:29 +00:00
Christopher Ng
eb6217f551 Better function descriptions
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2021-11-03 23:15:56 +00:00
Christopher Ng
ee1c6eefb4 Add additional check on action registrations
- Minor refactor

Signed-off-by: Christopher Ng <chrng8@gmail.com>
2021-11-03 23:15:56 +00:00
Christoph Wurst
b453fea4da
Merge pull request #29525 from nextcloud/bugfix/noid/allow-to-inject-by-public-interface
Allow to inject the trusted domain helper by public interface
2021-11-03 14:16:12 +01:00
Christoph Wurst
3ef6a099a3
Add IManager::getCalendarsForPrincipal API
The Calendar app needs to access calendars of a given principal in the
back-end. The new calendar providers were not accessible for apps before
this patch. Now they can access the ICalendar objects on demand.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-11-03 12:19:47 +01:00
Joas Schilling
de26160778
Allow to inject the trusted domain helper by public interface
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-11-03 11:06:19 +01:00
Nextcloud bot
5705af29a5
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-11-03 02:23:35 +00:00
Côme Chilliet
f90176efce
Merge pull request #29479 from nextcloud/fix/images-php-8.0
Fix image handling for PHP 8.0
2021-11-02 10:57:08 +01:00
Nextcloud bot
b15b41d731
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-11-02 02:22:15 +00:00
John Molakvoæ
44c06a9641
Merge pull request #29502 from nextcloud/revert-27378-dav-recalc-checksum 2021-11-01 13:50:52 +01:00
Robin Appelman
118c647f61
properly handle cases where cache wrappers block access
`CacheWrapper::formatCacheEntry` can return false for files that should be filtered out

Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-11-01 11:48:01 +01:00
John Molakvoæ
63d3931e80
Merge pull request #29281 from vijfhoek/master 2021-11-01 11:29:37 +01:00
John Molakvoæ
d6a26b2536
Revert "add dav plugin to trigger recalculating of checksums" 2021-11-01 11:26:17 +01:00
John Molakvoæ
e1bf5c1cd3
Merge pull request #27378 from nextcloud/dav-recalc-checksum 2021-11-01 11:25:21 +01:00
Christoph Wurst
b193f854d1
Register missing DAV app calendar provider
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-10-28 18:33:13 +02:00
Côme Chilliet
3631789651
Fix resource usages in OC_Image
This makes sure using resource or GdImage (PHP>=8) behaves the same.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2021-10-28 17:48:43 +02:00
Carl Schwan
df4e6bab69
Merge pull request #29115 from nextcloud/work/carl/correct-permissions-when-copying
Fix permissions when copying from ObjectStorage
2021-10-28 14:38:20 +02:00
Carl Schwan
bfa60aaf27
Fix permissions when copying from ObjectStorage
Make sure that when a user copy a file from a directory they don't have
all permissions to a directory where they have more permissions, the
permissions are correctly set to the one from the parent taget folder.

This was caused by the ObjectStoreStorage::copyFromStorage using
the jailed storage and cache entry instead of the unjailed one like other
storages (the local one).
Steps to reproduce

+ Use object storage
+ Create a groupfolder with one group having full permission and another one
  who can just read files.
+ With an user who is in the second group, copy a file from the groupfolder to
  the home folder of this user.
+ The file in the home folder of the user will be read only and can't be deleted
  even though it is in their home folder and they are the owner. In oc_filecache,
  the permissions stored for this file are 1 (READ)

Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2021-10-28 13:29:50 +02:00