Commit Graph

19199 Commits

Author SHA1 Message Date
Roeland Jago Douma 15b0e4d922
Merge pull request #25240 from nextcloud/enh/noid/re-use-fetched-dependencies
Re-use fetched dependencies in lib/base.php
2021-01-21 08:54:05 +01:00
Julius Härtl 349b65eff3
Merge pull request #25236 from nextcloud/mkdir-explicit-chmod
explicitly set permissions on newly created folders
2021-01-21 07:56:10 +01:00
Nextcloud bot 054783e385
[tx-robot] updated from transifex 2021-01-21 02:20:36 +00:00
Morris Jobke d84e1f1951
Re-use fetched dependencies in lib/base.php
Reduces calls to DI container by reusing already fetched dependencies.

For status.php it went from 355 to 344.

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2021-01-20 21:55:16 +01:00
Morris Jobke 5b0e69828f
Apps folder is defacto in root folder and not above
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2021-01-20 21:22:39 +01:00
Robin Appelman d182043e83
explicitly set permissions on newly created folders
this works around any `umask` that might be set and limiting the folder permissions

Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-01-20 17:15:57 +01:00
Morris Jobke 4c81f5c4ad
Merge pull request #25212 from nextcloud/enh/preview-markdown
Enhance markdown file preview rendering
2021-01-20 15:02:41 +01:00
Morris Jobke 01f013661a
Fix typo in comment
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2021-01-20 15:02:32 +01:00
Morris Jobke 6129a85187
Merge pull request #25224 from nextcloud/bugfix/24600/fix-saving-user-credentials
Update handling of user credentials
2021-01-20 14:59:30 +01:00
Julius Härtl aed1fde6fd
Enhance markdown file preview rendering
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2021-01-20 11:07:55 +01:00
Roeland Jago Douma fcbbcacab4 Also load CA properly in integrity check
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-01-20 10:57:41 +01:00
Roeland Jago Douma d751fedffb phpsec lib can't parse multiple certs in one go
So we have to split it manually and do it ourselves

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-01-20 10:57:41 +01:00
Roeland Jago Douma 3d61adc908
Drop authtoken_version_index
The index was used when deleting old tokens. On top of that the index is
of course not that great since the version is either 1 or 2.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-01-20 09:34:41 +01:00
Joas Schilling 6c1e294edd
Compare and store the login name via the event
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-01-20 08:50:17 +01:00
Roeland Jago Douma 6d4afca7ac Add support for webp
Including handling in OC_Image
But also a preview provider

Of course only works if your php actually supports webp

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-01-19 20:17:10 +01:00
Robin Appelman fdc8635afb
extend ILDAPProvider to allow reading arbitrairy ldap attributes for users
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-01-19 16:33:58 +01:00
Roeland Jago Douma 0893bba369
Merge pull request #25153 from nextcloud/bugfix/noid/force-signature-verification-on-occ
Force signature verification of apps on occ
2021-01-19 09:35:52 +01:00
Nextcloud bot 91864aeb40
[tx-robot] updated from transifex 2021-01-19 02:20:43 +00:00
Joas Schilling 847aa08ebd
Don't log keys on checkSignature
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-01-18 16:09:06 +01:00
Joas Schilling 76c7356af9
Only use alphanumeric chars for mysql password
/ and + can cause problems with other tools that you might want to run on your Nextcloud database.

Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-01-18 12:03:52 +01:00
Joas Schilling 90c3013d40
Cleanup the constructor
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-01-18 11:32:50 +01:00
Joas Schilling f319660f60
Force run the verification of the signature on occ
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-01-18 11:32:50 +01:00
Nextcloud bot 6d291c3c19
[tx-robot] updated from transifex 2021-01-18 02:19:28 +00:00
Nextcloud bot 1907cc197d
[tx-robot] updated from transifex 2021-01-17 02:19:53 +00:00
Jasper Knockaert 40fde94b4d
fix even more brackets
Signed-off-by: Jasper Knockaert jasper@knockaert.nl
2021-01-16 14:49:53 +01:00
Jasper Knockaert 252d1ae512
fix brakcets 2021-01-16 14:38:19 +01:00
Jasper Knockaert f9a0380eb1
consolidation of boolean expression 2021-01-16 14:33:44 +01:00
Joas Schilling eafd281800
Merge pull request #25138 from gouttegd/fix25137
Fix comparison of PHP versions
2021-01-15 15:18:25 +01:00
Morris Jobke bcb52d64f0
Merge pull request #25141 from nextcloud/bugfix/noid/add-a-hint-about-priority
Add a hint about the direction of priority
2021-01-15 09:46:37 +01:00
Joas Schilling b8acf2fe69
Add a hint about the direction of priority
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-01-15 08:34:24 +01:00
Damien Goutte-Gattat bedd9acf78 Fix comparison of PHP versions
Use the builtin function `version_compare` to check an app's
compatibility with the available PHP version, instead of reusing
the `OC\App\CompareVersion::isCompatible` method which is intended
to compare Nextcloud versions. PHP version strings do not always
necessarily follow the simple Major.Minor.Patch format used by
Nextcloud and therefore cannot be properly compared by that method.

Signed-off-by: Damien Goutte-Gattat <dgouttegattat@incenp.org>
2021-01-14 23:03:20 +00:00
Christoph Wurst b9287f9780
Merge pull request #25091 from nextcloud/enhancement/ocp-db-exception-abstraction
Add our own DB exception abstraction
2021-01-14 12:27:23 +01:00
blizzz f9ab7575e7
Merge pull request #25036 from nextcloud/fix/noid/limitied-allowed-items-db-in_2
respect DB restrictions on number of arguments in statements and queries
2021-01-14 11:36:42 +01:00
Nextcloud bot 6cf9c88596
[tx-robot] updated from transifex 2021-01-13 02:20:19 +00:00
Christoph Wurst 2c9cdc1cdb
Add our own DB exception abstraction
Right now our API exports the Doctrine/dbal exception. As we've seen
with the dbal 3 upgrade, the leakage of 3rdparty types is problematic as
a dependency update means lots of work in apps, due to the direct
dependency of what Nextcloud ships. This breaks this dependency so that
apps only need to depend on our public API. That API can then be vendor
(db lib) agnostic and we can work around future deprecations/removals in
dbal more easily.

Right now the type of exception thrown is transported as "reason". For
the more popular types of errors we can extend the new exception class
and allow apps to catch specific errors only. Right now they have to
catch-check-rethrow. This is not ideal, but better than the dependnecy
on dbal.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-01-12 16:38:23 +01:00
blizzz 3447ea4955
Merge pull request #25089 from nextcloud/enhancement/ocp-db-types
Add our own db column types via the public API
2021-01-12 15:24:15 +01:00
Roeland Jago Douma e44f275cfe
Merge pull request #25088 from nextcloud/fix/allow_app_updates_again
Allow installing/updating of apps again
2021-01-12 14:34:21 +01:00
Christoph Wurst d4e6463eb2
Add our own constants for db column types
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-01-12 14:09:13 +01:00
Roeland Jago Douma 41c80d6c19
Fix option in the client code itself as well
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-01-12 12:36:21 +01:00
Roeland Jago Douma 9b58a027e3
Allow installing/updating of apps again
The Guzzle API changed. We shall now use sink

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-01-12 10:51:41 +01:00
Johannes Leuker ac88bcbd5f Add 'allow Symlinks' as an option to config.php
Signed-off-by: Johannes Leuker <j.leuker@hosting.de>
2021-01-12 10:38:39 +01:00
Nextcloud bot c8cbb73c05
[tx-robot] updated from transifex 2021-01-12 02:19:49 +00:00
blizzz 7cdc7adf59
Merge pull request #25038 from nextcloud/bugfix/noid/install-mysql8-with-php8
Don't try a transaction for the migrator on MySQL
2021-01-11 18:07:11 +01:00
Roeland Jago Douma fdd111924f
Merge pull request #25039 from nextcloud/fix/libxml-use-internal-errors-deprecated
Only use libxml_disable_entity_loader on php older than 8
2021-01-11 16:14:38 +01:00
Morris Jobke 8f614acade
Merge pull request #25034 from nextcloud/bugfix/noid/load-authentication-for-app-upgrades
Make sure to do priority app upgrades first
2021-01-11 14:44:10 +01:00
Morris Jobke 5ed673e5eb
Merge pull request #25073 from nextcloud/psalm/24521/remove-unneeded-casts
Remove unneeded casts that were found by Psalm
2021-01-11 14:15:16 +01:00
Arthur Schiwon f9484d15cb
DB: warn on parameter number constraints
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-01-11 13:43:34 +01:00
Roeland Jago Douma 683685b72c
Merge pull request #25070 from nextcloud/feature/noid/card-ros-definitions
Deck Rich-Object-String definitions for deck boards and cards
2021-01-11 13:31:21 +01:00
Morris Jobke 24d436cb60
Remove unneeded casts that were found by Psalm
In preparation of the update of Psalm from 4.2.1 to 4.3.1+ (see https://github.com/nextcloud/server/pull/24521)

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2021-01-11 13:14:41 +01:00
Christoph Wurst c3cb288268
Bump scssphp/scssphp from 1.0.3 to 1.4.0
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-01-11 12:41:25 +01:00
Joas Schilling 078ecac188
Deck Rich-Object-String definitions for deck boards and cards
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-01-11 12:03:13 +01:00
Nextcloud bot ca93c9708c
[tx-robot] updated from transifex 2021-01-11 02:19:52 +00:00
Nextcloud bot b137ac468f
[tx-robot] updated from transifex 2021-01-09 02:21:37 +00:00
Christoph Wurst f8efab7c85
Only use libxml_disable_entity_loader on php older than 8
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-01-08 16:33:46 +01:00
Joas Schilling 3cdfe7b0f4
Don't try a transaction for the migrator on MySQL
As per https://dev.mysql.com/doc/refman/8.0/en/implicit-commit.html
CREATE TABLE statements automatically commit always. The only reason
this worked in the past was that PHPs PDO connection didn't check the
actual state on commit, but only checked their internal state.
But in PHP8 this was fixed:
https://github.com/php/php-src/blob/PHP-8.0/UPGRADING#L446-L450
So now commit() fails because the internal PDO connection implicitly
commited already.

Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-01-08 16:25:40 +01:00
Christoph Wurst 81302f78e5
Merge pull request #24948 from nextcloud/dependabot/composer/doctrine/dbal-3.0.0
Bump doctrine/dbal from 2.12.0 to 3.0.0
2021-01-08 14:58:43 +01:00
Morris Jobke aeb32e1bc8
Merge pull request #22992 from nextcloud/password-urlencode
allow authenticating using urlencoded passwords
2021-01-08 14:34:01 +01:00
Julius Härtl f31edf1544
Make sure to do priority app upgrades first
Otherwise those apps might not be loaded when the others app migrations
are running. The previous loading of authentication apps in the upgrade
step never worked as it just returns in maintenance mode

Signed-off-by: Julius Härtl <jus@bitgrid.net>
2021-01-08 12:27:54 +01:00
Morris Jobke dc00c8ac31
Remove "primary" option from schema builder argument $options as it is not used anymore and triggers an exception
See 138eb85234 (diff-300f55366adb50a32a40882ebdc95c163b141f64cba5f45f20bda04a907b3eb3L82)

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2021-01-08 11:45:19 +01:00
Christoph Wurst 8b64e92b92
Bump doctrine/dbal from 2.12.0 to 3.0.0
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-01-08 11:45:19 +01:00
Roeland Jago Douma d13f2d984f
Merge pull request #25015 from nextcloud/fix/no-double-intl-polyfill
Replace patchwork/utf8 with symfony-polyfill-*
2021-01-08 08:25:31 +01:00
Roeland Jago Douma 645e3e6d7e
Merge pull request #25021 from nextcloud/enhancement/occ-install-exception-trace
Print an exception trace for setup exceptions
2021-01-08 08:22:50 +01:00
Nextcloud bot 94188370e7
[tx-robot] updated from transifex 2021-01-08 02:22:30 +00:00
Morris Jobke 1e3c071aa5
Merge pull request #24892 from nextcloud/fix/use-symfony-dispatcher-correctly
Use the Symfony dispatcher correctly
2021-01-07 21:42:44 +01:00
Christoph Wurst 287c26bda3
Replace patchwork/utf8 with symfony-polyfill-*
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-01-07 21:22:41 +01:00
Morris Jobke 171373a944
Merge pull request #24989 from nextcloud/scanner-ignore-non-readable
ignore files that have no read permissions during scanning
2021-01-07 21:10:53 +01:00
Morris Jobke d0ac76a77c
Add more previous exceptions to database setup code
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2021-01-07 21:04:11 +01:00
Roeland Jago Douma 4f52e83695
Merge pull request #24934 from nextcloud/max_file_uploads
Remove useless ini_set calls
2021-01-07 20:15:13 +01:00
Christoph Wurst f1921364d6
Print an exception trace for setup exceptions
Right now any setup error will just result in the exception message
being printed. In some cases this doesn't give any insights into what
went wrong. This adds some dedicated logic to print the exception trace
and any previous exceptions to the CLI.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-01-07 20:11:25 +01:00
Carlos Ferreira bc1b5d7892
Remove useless ini_set functions 2021-01-07 15:24:49 +01:00
Roeland Jago Douma 317118ef79
Catch throwable instead of exception
The error that gets thrown can also be a type error etc. So we should
properly catch the Throwable.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-01-07 14:32:26 +01:00
Roeland Jago Douma f552f23e43
Merge pull request #25003 from nextcloud/psalm/noid/phpdoc-fix-return-type
Fix return types for Archive::getStream
2021-01-07 13:31:24 +01:00
Morris Jobke 59ae722087
Fix warning in PHP 8 about optional parameter before mandatory one
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2021-01-07 12:43:56 +01:00
Morris Jobke a39bd18654
Fix return types for Archive::getStream
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2021-01-07 12:38:41 +01:00
Robin Appelman c374bbf14d
allow authenticating using urlencoded passwords
this allows authenticating with passwords that contain non ascii-characters in contexts that otherwise do not allow it (http basic)

Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-01-07 10:43:43 +01:00
Robin Appelman 205386b24e
ignore files that have no read permissions during scanning
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-01-06 17:27:31 +01:00
Roeland Jago Douma ed1dcd3651
Set the JSCombiner cache if needed
Found while debugging a customer setup. They had to flush their Redis.
Hence the info was no longer there. Since they also used S3 this meant
requesting the files over and over on template render. Which on S3 is
not cheap.

Now we just write it back if we can't get it from the cache in the first
place. So that the next run has it cached properly again.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-01-06 16:15:17 +01:00
Roeland Jago Douma ad3735ba27
Merge pull request #24317 from SMillerDev/app_password_command
App password command
2021-01-06 15:35:39 +01:00
Christoph Wurst 85454ac456
Use the Symfony dispatcher correctly
* Event object as first arg (otherwise there is a notice in the logs)
* `dispatch` MUST return the event object

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-01-05 16:00:42 +01:00
Sean Molenaar 40595f3ee0
Command: Add app password generation
Signed-off-by: Sean Molenaar <sean@seanmolenaar.eu>
2021-01-05 13:05:17 +01:00
Jasper Knockaert 81e3ae4753
avoid fread on directories and unencrypted files
Reworking the logic in order to first check the filecache and only then reading the fileheader.
This in order to solve #21578.
2021-01-05 11:14:49 +01:00
Julius Härtl 98560c80ea
Properly handle result when copying with failure and throw in tests
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2021-01-05 09:20:35 +01:00
Nextcloud bot 364b29b1e9
[tx-robot] updated from transifex 2021-01-05 02:21:26 +00:00
Christoph Wurst 969d4312e2
Merge pull request #24907 from nextcloud/fix/license-headers-21-II
Update license headers
2021-01-04 11:06:30 +01:00
Nextcloud bot 0cecd54909
[tx-robot] updated from transifex 2021-01-03 02:20:55 +00:00
Nextcloud bot 25fd32cb5c
[tx-robot] updated from transifex 2021-01-01 02:21:03 +00:00
Nextcloud bot d57153940b
[tx-robot] updated from transifex 2020-12-31 02:27:04 +00:00
Christoph Wurst 9ce3ea3368
Update license headers
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-12-30 14:07:05 +01:00
Nextcloud bot f9941347e2
[tx-robot] updated from transifex 2020-12-30 02:19:06 +00:00
Robin Appelman 8501cf9b5c
dont apply encryption wrapper for root mount
the `shouldEncrypt` already disables encryption for anything thats not in the users data folder,
however the encryption wrapper being applied anyway on the root folder breaks groupfolders

Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-12-29 12:29:23 +01:00
Roeland Jago Douma c9fcf5f6b1
Merge pull request #24874 from nextcloud/enh/exception_logging
Avoid huge exception argument logging
2020-12-29 11:38:27 +01:00
Roeland Jago Douma 179de95f81
Avoid huge exception argument logging
In some cases it might happen that you have an argument that deep down
somewhere has an array with a lot of entries (think thousands). Now
before we would just happily print them all. Which would fill the log.

Now it will just print the first 5. And add a line that there are N
more.

If you are on debug level we will still print them all.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-12-29 10:50:53 +01:00
Christoph Wurst 73c7d0dc81
Bump icewind/streams from 0.7.1 to 0.7.2
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-12-29 09:07:36 +01:00
Nextcloud bot 083f3d2373
[tx-robot] updated from transifex 2020-12-29 02:19:50 +00:00
Roeland Jago Douma bb411c75c6
Move to single share event. Just emit more if needed
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-12-23 11:05:29 +01:00
Maxence Lange 874a1a4c43
cs fix
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2020-12-23 11:00:47 +01:00
Maxence Lange 85783e45e9
+ShareDeletedEvent
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2020-12-23 11:00:45 +01:00
Roeland Jago Douma adc4f1a811
Merge pull request #22916 from J0WI/unifiy-links-to-php.net
Unify links to php.net
2020-12-22 09:53:31 +01:00
Julius Härtl 5094e29ebd
Merge pull request #24594 from kofemann/dcache 2020-12-22 09:26:07 +01:00
Nextcloud bot 8e9af2bb56
[tx-robot] updated from transifex 2020-12-22 02:19:06 +00:00
Tigran Mkrtchyan 4f2dc18f58 storage: update IStorage#file_put_contents docs to match usage
The current phpdoc of IStorage#file_put_contents doesnt corresponds to
it's actual usage in code, e.g.

Signed-off-by: Tigran Mkrtchyan <tigran.mkrtchyan@desy.de>
2020-12-21 19:04:18 +01:00
Roeland Jago Douma 4f0fae8f00
Actually set the TTL on redis set
Else well the keys remain for ever and ever.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-12-21 13:33:16 +01:00
Julius Härtl fbbb48fcc2
Merge pull request #24730 from J0WI/fix-trusted-ipv6
Fix IPv6 localhost regex
2020-12-21 09:59:31 +01:00
Roeland Jago Douma 4973f9b952
Merge pull request #24715 from nextcloud/bug/noid/limit-get-incomplete-to-1
Limit getIncomplete query to one row
2020-12-21 09:15:10 +01:00
Nextcloud bot dc426f1e21
[tx-robot] updated from transifex 2020-12-20 02:19:27 +00:00
Christoph Wurst f37e150d1c
Merge pull request #24702 from nextcloud/enhancement/well-known-handler-api
Add well known handlers API
2020-12-18 13:34:04 +01:00
Roeland Jago Douma 6228cbe852
Merge pull request #24737 from nextcloud/fix/23544/unset_parameter
Also unset the other possible unused paramters
2020-12-18 08:38:45 +01:00
Nextcloud bot de7c54c6ba
[tx-robot] updated from transifex 2020-12-18 02:20:09 +00:00
Roeland Jago Douma 484f52bb4d
Also unset the other possible unused paramters
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-12-16 20:31:30 +01:00
Christoph Wurst d89a75be0b
Update all license headers for Nextcloud 21
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-12-16 18:48:22 +01:00
J0WI 331f30f085 Fix IPv6 localhost regex
Signed-off-by: J0WI <J0WI@users.noreply.github.com>
2020-12-16 14:37:56 +01:00
Christoph Wurst 6995223b1e
Add well known handlers API
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-12-16 13:13:05 +01:00
Christoph Wurst 820f9f4f63
Merge pull request #24629 from nextcloud/enh/noid/optional-before-required
Make $vars and $secureRandom required.
2020-12-16 12:43:06 +01:00
Roeland Jago Douma 1d4c8961ef
Merge pull request #24659 from nextcloud/enh/noid/dav-honour-sharing.maxAutocompleteResults
dav principal search to honour sharing.maxAutocompleteResults setting
2020-12-16 10:47:32 +01:00
Roeland Jago Douma 7a77493038
Merge pull request #24706 from nextcloud/bugfix/noid/log-error-on-setting-custom-headers-on-no-content-responses
Log an error when setting a custom header on "Not Modified" responses
2020-12-16 10:28:09 +01:00
James Letendre 45a02ee30c Fix failing tests
Signed-off-by: James Letendre <james.letendre@gmail.com>
2020-12-15 19:06:06 -05:00
James Letendre ad95e51cbe Add web identity provider to S3 connection chain
Signed-off-by: James Letendre <james.letendre@gmail.com>
2020-12-15 16:37:46 -05:00
Daniel Kesselberg e0e76bb784
Limit getIncomplete query to one row
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2020-12-15 21:42:26 +01:00
Julius Härtl a4b5312729 Do not include non-required scripts on the upgrade page
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-12-15 21:14:07 +01:00
Julius Härtl 2bedfbd4b0
Merge pull request #24488 from zzkt/patch-1 2020-12-15 15:19:40 +01:00
Julius Härtl d37034f161
Merge pull request #24683 from doc75/federation_confidentiality 2020-12-15 14:35:50 +01:00
Arthur Schiwon d8ad4ef6b5
use a consistent default value for sharing.maxAutocompleteResults
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-12-15 11:53:39 +01:00
Joas Schilling 329ffa257e
Log an error when setting a custom header on "Not Modified" responses
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-12-15 11:24:15 +01:00
Nextcloud bot 1f6537075b
[tx-robot] updated from transifex 2020-12-15 02:22:11 +00:00
James Letendre 5b756a9fb0 Replace defaultProvider with explicit calls to exclude user home directory lookup
Signed-off-by: James Letendre <james.letendre@gmail.com>
2020-12-14 16:22:41 -05:00
James Letendre 85aa77539b Resolves #24699, Support ES2 and ECS instance providers for S3 buckets
Signed-off-by: James Letendre <james.letendre@gmail.com>
2020-12-14 12:55:46 -05:00
Julius Härtl b56d7f9f4e
Merge pull request #23017 from nextcloud/enh/distinguish-users 2020-12-14 16:54:47 +01:00
Joas Schilling 39bee7948d
Merge pull request #24631 from nextcloud/bugfix/noid/prevent-select-asterix-and-specifics
Prevent * and other things in the same query for Oracle
2020-12-14 14:31:15 +01:00
Julius Härtl 131fcac91e
Show unique displayname context in the sharing input
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-12-14 11:14:59 +01:00
Joas Schilling 5828f3c4f9
Prevent * and other things in the same query for Oracle
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-12-14 09:35:50 +01:00
Roeland Jago Douma 99a6665888
Merge pull request #24679 from nextcloud/tcitworld-patch-1
Update comment to reflect current CSP policy
2020-12-14 09:11:15 +01:00
Roeland Jago Douma b2ef004969
Merge pull request #24663 from nextcloud/sanitizers
Add sanitizers for JSON output
2020-12-14 09:11:01 +01:00
Guillaume Virlet 83491c6c58 [Fix #24682]: ensure federation cloud id is retruned if FN property not found
Signed-off-by: Guillaume Virlet <github@virlet.org>
2020-12-13 13:57:41 +01:00
Thomas Citharel 71cf92697c
Update comment to reflect current CSP policy
JS unsafe-eval was removed a long time ago in https://github.com/nextcloud/server/pull/11028
2020-12-12 21:11:42 +01:00
Nextcloud bot 949ae6389b
[tx-robot] updated from transifex 2020-12-12 02:18:46 +00:00
Lukas Reschke 8a8aa4f7dc Add sanitizers for JSON output
Those functions set proper content-types that prevent rendering of
data. Therefore it's safe to mark them as sanitizers.

Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2020-12-11 21:23:11 +00:00
nik gaffney 794cc3d803 repair text/org MIME types
Signed-off-by: nik gaffney <nik@fo.am>
2020-12-11 18:21:33 +01:00
Roeland Jago Douma 582ce5a6ad
Merge pull request #24416 from nextcloud/fix/app-store-check-php-compat
Check php compatibility of app store app releases
2020-12-10 21:42:58 +01:00
Daniel Kesselberg 8ebd31d686
Make $vars and $secureRandom required.
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2020-12-10 17:06:32 +01:00
Roeland Jago Douma ccd5ca5476
Merge pull request #23044 from nextcloud/migration-10.5
Handle owncloud migration to latest release
2020-12-10 14:32:13 +01:00
Roeland Jago Douma 3c693db0ca
Merge pull request #24605 from nextcloud/enh/share-deck
Add deck share provider support
2020-12-10 14:30:08 +01:00
Nextcloud bot 5fc20e8862
[tx-robot] updated from transifex 2020-12-10 02:20:14 +00:00
Julius Härtl c4ea37b8a1
Address minor comments
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-12-09 15:51:41 +01:00
Julius Härtl 36ffad5ba7
Make sure the migrations table schema is always checked
Signed-off-by: Julius Härtl <jus@bitgrid.net>

Revert "Make sure the migrations table schema is always checked"

This reverts commit 258955ef738a52d9da2ac2fe59466e6093d7e9bc.

Set current vendor during upgrade and perform migrations table change if needed

Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-12-09 15:24:03 +01:00
Julius Härtl 20949d7f48
Properly migrate from new owncloud avatar location
as the files are not scanned we cannot use the OCP\Files api

Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-12-09 15:23:29 +01:00
Julius Härtl c770d33717
Add internal DECK_USER type to allow unsharing for individual users
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-12-09 13:20:24 +01:00
Julius Härtl f3150f29a7
Introduce deck share type to ShareAPIController
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-12-09 13:20:24 +01:00
Julius Härtl f2f3ad733f
Dummy general share checks for deck
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-12-09 13:20:23 +01:00
Julius Härtl e906138d8d
Let sharees endpoint properly handle deck shares
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-12-09 13:20:23 +01:00
Julius Härtl fcc0d35895
Add share type for deck
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-12-09 13:20:23 +01:00
Julius Härtl fdea545415
Allow apps to register their share providers from outside
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-12-09 13:20:23 +01:00
Julius Härtl 4ef148a781
Dump autoloader
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-12-09 12:14:16 +01:00
Julius Härtl 9fe94f282f
Readd repair steps that are relevant when migrating from ownCloud
This reverts commit d9b1492e03.

Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-12-09 12:13:35 +01:00
Julius Härtl 2607ac3fb2
Allow major/minor match for owncloud version
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-12-09 12:13:33 +01:00
Julius Härtl f5501ca276
Avoid checking for brute force protection capabilities when upgrading
This might happen a releases that doesn't have this table yet

Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-12-09 12:13:33 +01:00
Julius Härtl 7518f67f33
Drop fk constraints on locks table
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-12-09 12:13:32 +01:00
Joas Schilling c8e0f3015f
Merge pull request #24398 from nextcloud/fix/do-not-update-incompatible-app
Do not update incompatible apps
2020-12-09 09:28:25 +01:00
Joas Schilling 13a1eb6494
Merge pull request #24598 from nextcloud/techdebt/noid/wrap-the-exception-to-make-debuggin-easier
Make debugging migration exceptions easier
2020-12-08 17:10:20 +01:00
Joas Schilling 86a3b7e7bf
Merge pull request #24486 from nextcloud/feature/noid/phone-number-validation
Phone number validation and search
2020-12-08 17:05:38 +01:00
Joas Schilling 13a438b322
Fix PHP code style
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-12-08 13:08:47 +01:00
Roeland Jago Douma fda6ffc866
Merge pull request #23780 from nextcloud/enh/ci/php8
PHP8 CI
2020-12-08 09:39:45 +01:00
Nextcloud bot 7e784afa65
[tx-robot] updated from transifex 2020-12-08 02:20:20 +00:00
Joas Schilling 354c5ff024
Add a repairstep to validate the phone numbers
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-12-07 20:35:54 +01:00
Joas Schilling c1f28f8d35
Make debugging migration exceptions easier
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-12-07 19:35:01 +01:00
Tigran Mkrtchyan f3513f3fe4 files: Local#writeStream should use it's own file_put_contents
The OC\Files\Storage\Local#writeStream use system provided file_put_contents.
However, it overrides file_put_contents, thus expects that the default behaviour
can be different.

Use Local#file_put_contents in writeStream to benefit from class specific functionality.

Signed-off-by: Tigran Mkrtchyan <tigran.mkrtchyan@desy.de>
2020-12-07 18:11:40 +01:00
Roeland Jago Douma 7f61535a1a
GD images
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-12-07 15:44:04 +01:00
Roeland Jago Douma c02e6fcae2
fix appconfig tests
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-12-07 15:44:04 +01:00
Roeland Jago Douma 0e10d8cb7c
Fix locking logic
The comparrison on php8 return true while <php8 it is false.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-12-07 15:44:04 +01:00
Joas Schilling f648635758
Make the throwing optional, so background tasks don't break
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-12-07 14:19:38 +01:00
Joas Schilling 46b073d7ce
Add a config for default region of phone numbers
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-12-07 14:19:38 +01:00
Joas Schilling 9e04e6f99a
Also translate the phone number when coming in via the accounts manager API directly
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-12-07 14:19:38 +01:00
Joas Schilling fe9c46e595
Add an endpoint to search for accounts based on phone number
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-12-07 14:19:37 +01:00
Joas Schilling eaba155a09
Add a database table for the accounts data so we can search it better
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-12-07 14:19:37 +01:00
Joas Schilling da9462b482
Make code strict
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-12-07 14:19:37 +01:00
Nextcloud bot eab710c2fd
[tx-robot] updated from transifex 2020-12-07 02:20:42 +00:00
Nextcloud bot e41e2fe003
[tx-robot] updated from transifex 2020-12-06 02:19:28 +00:00
Nextcloud bot 9a6569d4f2
[tx-robot] updated from transifex 2020-12-05 02:18:50 +00:00
Christoph Wurst cbb34af53f
Do not update incompatible apps
Previously there was no (platform) dependency check for an app that was
installed before. So Nextcloud happily upgraded an app that now requires
a php version newer than the current one. Which means in the lucky case
you see a failing upgrade due to the language incompatibility, or in the
unlucky case you see unexpected errors later in production.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-12-04 17:05:22 +01:00
Christoph Wurst 24237f1a34
Check php compatibility of app store app releases
Apps might increase the minimum php version requirement, in which case
an update could break the app or even the whole instance. We must not
install those releases, or better, don't even show them for
update/installation. This extends the app fetcher code to filter out the
releases that are not installable.

The filter respects minimum and maximum requirements. E.g. apps that are
still only released for php7.3 won't show up for php7.4 instances. This
behavior is new but if an app lists an explicit version requirement,
then we ought to repect that.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-12-04 16:52:31 +01:00
Roeland Jago Douma f0862dcfaa
Merge pull request #24552 from nextcloud/enh/remember_me_is_not_app_password
Remember me is not an app_password
2020-12-04 16:35:44 +01:00
Morris Jobke 0d7819eb6c
Merge pull request #24550 from nextcloud/enh/fix/new_session_id_if_decrypt_fails
Generate a new session id if the decrypting the session data fails
2020-12-04 12:52:59 +01:00
Morris Jobke 5cc348ae72
Fix typo
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-12-04 12:51:45 +01:00
Roeland Jago Douma 48b4b83b5a
Remember me is not an app_password
While technically they are stored the same. This session variable is
used to indicate that a user is using an app password to authenticate.
Like from a client. Or when having it generated automatically.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-12-04 12:40:28 +01:00
Roeland Jago Douma 858f623081
Generate a new session id if the decrypting the session data fails
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-12-04 11:42:40 +01:00
Vincent Petry 9b3361ce87
Don't log params of imagecreatefromstring
To prevent flooding the log with actual image data.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2020-12-04 09:30:20 +01:00
Christoph Wurst 32ded877dc
Merge pull request #24474 from nextcloud/enhancement/unified-search-result-attributes
Allow unified search results to have attributes
2020-12-04 08:42:15 +01:00
Nextcloud bot 3f88dbd259
[tx-robot] updated from transifex 2020-12-04 02:19:19 +00:00
Christoph Wurst cc92d5a293
Allow unified search results to have attributes
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-12-03 18:24:33 +01:00
Roeland Jago Douma c9cd633665
Fix the download of multiple files from the webUI
needed a setupFS call

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-12-03 13:20:01 +01:00
Joas Schilling 64bc7c79e8
Merge pull request #24498 from nextcloud/enhancement/nextcloud-log-normalizer
Replace abandoned log normalizer with our fork
2020-12-03 11:04:49 +01:00
Julius Härtl 04d67d558e
Also handle legacy cipher support when encryption is disabled but an old master key is present
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-12-03 09:47:05 +01:00
Christoph Wurst 244c53dea1
Replace abandoned log normalizer with our fork
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-12-03 09:44:25 +01:00
Morris Jobke 4d64ec9944
Merge pull request #24519 from nextcloud/fix/bug/emailtemplate
Fix vsprint parameter
2020-12-03 09:13:58 +01:00
Christoph Wurst fbc06d39c7
Merge pull request #24429 from nextcloud/3rdparty/closure
[3rdparty] Migrate to Opis/Closure
2020-12-03 08:44:53 +01:00
Roeland Jago Douma 3d315ec64f
Fix vsprint parameter
%2\$; is not valid. On php7 this is just ignored but on php8 it gives an
error. %2\$s; works.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-12-03 08:25:11 +01:00
Nextcloud bot 0dcc227a6b
[tx-robot] updated from transifex 2020-12-03 02:19:51 +00:00
Roeland Jago Douma 04c037ebfd
[3rdparty] Migrate to Opis/Closure
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-12-02 20:16:57 +01:00
Roeland Jago Douma 6f4d3edb5e
Merge pull request #24113 from nextcloud/extend-cache-events
extend cache events
2020-12-02 19:48:20 +01:00
Christoph Wurst 4deff37a3c
Merge pull request #23278 from nextcloud/enh/noid/user-limits
Allow subscription to indicate that a userlimit is reached
2020-12-02 18:22:13 +01:00
Morris Jobke e580f91143
Merge pull request #23257 from aler9/patch-32bit-filesize-master
Fix file size computation on 32bit platforms
2020-12-02 16:22:24 +01:00
Morris Jobke 32f6bdf067
Merge pull request #24396 from nextcloud/dont-use-system-composer
dont use system composer for autoload checker
2020-12-02 16:15:55 +01:00
Roeland Jago Douma d69407963c
Merge pull request #24500 from nextcloud/bugfix/noid/log_query_no_crash
Prevent log_query to mess up regular execution flow
2020-12-02 16:15:26 +01:00
Robin Appelman aef1cdba03
code style and dispatchTyped
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-12-02 16:15:02 +01:00
Morris Jobke c0a05c0412
Add notification for user limit
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-12-02 15:20:03 +01:00
Morris Jobke d87705a894
Allow subscription to indicate that a userlimit is reached
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-12-02 15:20:03 +01:00
Vincent Petry a50bcdabcc
Prevent log_query to mess up regular execution flow
When the "log_query" debug config parameter is set, SQL queries are
logged. However, if an error occurs when converting the values to
string, it will abort the request.

This fix catches the error and continues instead.

Also added handler for DateTime value which is already known to cause
aborts here.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2020-12-02 14:10:35 +01:00
aler9 ac0c7a8fe0 Fix file size computation on 32bit platforms
Signed-off-by: aler9 <46489434+aler9@users.noreply.github.com>
2020-12-02 12:05:14 +01:00
Nextcloud bot 7ceb98f63b
[tx-robot] updated from transifex 2020-12-01 02:19:46 +00:00
Christoph Wurst 9a3cc099db
Merge pull request #24414 from nextcloud/techdebt/remove-update-php
Remove the deprecated update.php
2020-11-30 12:11:03 +01:00
Morris Jobke 83a75c670b
Replace static call to Share::unshare with ShareManager->deleteShare in tests
And then cleanup all the code that is dead then...

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-11-30 09:51:18 +01:00
Morris Jobke 6564a95160
Remove now unused methods in Share.php due to the reduced code complexity in Share::getItems
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-11-29 23:28:16 +01:00
Morris Jobke 10e5ae5e18
Remove unused method Share Helper::generateTarget
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-11-29 22:52:52 +01:00
Morris Jobke a125d8aaa1
Reduce code complexity in Share::getItems by tracing all remaining callers
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-11-29 22:30:09 +01:00
Morris Jobke 596df8fc6f
Remove unused Share::getItemSharedWithBySource()
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-11-29 22:24:12 +01:00
Christoph Wurst fd649afb1f
Remove the deprecated update.php
* It was documented as deprecated.
* The app code checker warned about it
* It's been three years

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-11-27 13:02:59 +01:00
Robin Appelman 7956cef622
rebuild autoloader scripts with 2.0.7
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-11-26 15:49:03 +01:00
Robin Appelman 88f35d52d2
rename cache event to follow new naming standards
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-11-26 15:39:46 +01:00
Robin Appelman 23fb497ff5
extend cache events
- adds cache remove event
- expose storage id in event
- emit events during cache move

Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-11-26 15:22:03 +01:00
Christoph Wurst 7dd39a91ee
Remove dead method \OC\Updater::checkAppUpgrade
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-11-26 14:48:41 +01:00
Christoph Wurst 54e3beba16
Merge pull request #24319 from nextcloud/techdebt/noid/streamline-user-creation-and-deletion-events
Streamline user creation and deletion events
2020-11-26 14:09:54 +01:00
Roeland Jago Douma 2172432420
Merge pull request #23912 from nextcloud/objectstore-copy
use in objectstore copy
2020-11-25 16:09:26 +01:00
Arthur Schiwon 9cfa8a6c44
send expected format of cloud id
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-11-24 23:14:43 +01:00
blizzz 5d03b5c5dd
Merge pull request #24162 from nextcloud/fix/noid/fedshares-displaynamez
set the display name of federated sharees from addressbook
2020-11-24 17:23:37 +01:00
blizzz 6156a49f6e
Merge pull request #24341 from nextcloud/fix/sharing-enforce-expire-checkbox
Fix the config key on the sharing expire checkbox
2020-11-24 15:49:49 +01:00
Robin Appelman 9d4848e863
use in objectstore copy
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-11-24 15:16:58 +01:00
Christoph Wurst 2526c5e042
Fix the config key on the sharing expire checkbox
We don't use `shareapi_internal_enforce_expire_date` anywhere.
`shareapi_enforce_internal_expire_date` is the one we want.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-11-24 14:17:41 +01:00
Roeland Jago Douma d4fd61b7c6
Merge pull request #24324 from nextcloud/td/psalm/backgroundjob_job
Fix the OCP\BackgroundJob\Job to make it compatible with  its interface
2020-11-24 13:16:12 +01:00
Arthur Schiwon 16a78f535a
set the display name of federated sharees from addressbook
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-11-24 11:30:11 +01:00
Roeland Jago Douma c2c539a754
Merge pull request #24323 from nextcloud/fix/comments-tab-missing
Fix reverse registration and missing comments tab
2020-11-24 09:34:50 +01:00
Roeland Jago Douma 82d3f50b78
Fix the OCP\BackgroundJob\Job to make it compatible with its interface
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-11-24 09:33:49 +01:00
Roeland Jago Douma 8ac9767881
Merge pull request #24312 from nextcloud/bugfix/noid/fix-router-alias
Add proper alias for internal router class
2020-11-24 08:43:29 +01:00
Christoph Wurst decc5c844b
Fix reverse registration and missing comments tab
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-11-24 08:28:19 +01:00
Julius Härtl d9708ebece
Add proper alias for internal router class
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-11-24 08:01:39 +01:00
Morris Jobke f4c1512bb7
Fix typo in @deprecated PHPDoc tag
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-11-24 00:13:09 +01:00
Morris Jobke 9bf76d2bad
Streamline user creation and deletion events
CreateUserEvent was the only one that didn't matched the naming scheme of BeforePASTTENSEEvent and PASTTENSEEvent. The event wasn't used at all so this just removes it again as there is BeforeUserCreatedEvent that is also available since 18.

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-11-23 23:59:52 +01:00
Lukas Reschke a5d4d3d4cc
Add IRequest taint sources
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2020-11-22 23:04:43 +01:00
Morris Jobke 9a0428835f
Merge pull request #24267 from nextcloud/techdebt/noid/auto-wire-encryption-app-view-dependent
Auto-wire remaining encryption app services that depend on View
2020-11-22 22:33:53 +01:00
Roeland Jago Douma 032de4f333
Merge pull request #24269 from nextcloud/taint-specialize
Mark getAppPath as specialized taint
2020-11-22 13:39:46 +01:00
Lukas Reschke d25ca1976b Mark getAppPath as specialized taint
Should remove some false positives.

https://psalm.dev/docs/security_analysis/avoiding_false_positives/

Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2020-11-21 01:15:15 +00:00
Lukas Reschke 98ddfdd1e8 Mark cleanAppId as sanitizer for include
Should remove a bunch of false positive code scanning results.

Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2020-11-21 00:57:25 +00:00
Morris Jobke e606c0eef4
Allow View to be used via DI
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-11-21 00:18:59 +01:00
Morris Jobke db3a3bee37
Merge pull request #24064 from nextcloud/techdebt/noid/auto-wire-encryption-app
Auto-wire as much as possible in the encryption app
2020-11-21 00:04:54 +01:00
Morris Jobke 6811274cfd
Merge pull request #24246 from LukasReschke/add-taint-flow-analysis
Add Psalm Security Analysis
2020-11-21 00:04:37 +01:00
Morris Jobke 5be18215fb
Auto-wire as much as possible in the encryption app
Also cleans up only non-classname services in the server container

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-11-20 23:13:22 +01:00
Lukas Reschke 47ac8e0028
Add Psalm Taint Flow Analysis
This adds the Psalm Security Analysis, as described at
https://psalm.dev/docs/security_analysis/

It also adds a plugin for adding input into AppFramework.

The results can be viewed in the GitHub Security tab at
https://github.com/nextcloud/server/security/code-scanning

**Q&A:**

Q: Why do you not use the shipped Psalm version?
A: I do a lot of changes to the Psalm Taint behaviour. Using released
versions is not gonna get us the results we want.

Q: How do I improve false positives?
A: https://psalm.dev/docs/security_analysis/avoiding_false_positives/

Q: How do I add custom sources?
A: https://psalm.dev/docs/security_analysis/custom_taint_sources/

Q: We should run this on apps!
A: Yes.

Q: What will change in Psalm?
A: Quite some of the PHP core functions are not yet marked to propagate
the taint. This leads to results where the taint flow is lost. That's
something that I am currently working on.

Q: Why is the plugin MIT licensed?
A: Because its the first of its kind (based on GitHub Code Search) and
I want other people to copy it if they want to. Security is for all :)

Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2020-11-20 23:12:00 +01:00
Carlos Ferreira a42eb05a35
Simple typo in comments 2020-11-20 20:01:28 +01:00
Morris Jobke 691409cdec
Merge pull request #24062 from nextcloud/revert-24060-revert-24039-faster-installation
Revert "Revert "Installation goes brrrr""
2020-11-20 15:02:51 +01:00
Roeland Jago Douma b71803802c
Harden EncryptionLegacyCipher a bit
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-11-20 09:52:55 +01:00
Morris Jobke 1b613c84e9
Merge pull request #24007 from nextcloud/select-distinct-multiple
allow selecting multiple columns with SELECT DISTINCT
2020-11-19 22:39:01 +01:00
Morris Jobke c2510ecae9
Merge pull request #24103 from nextcloud/bugfix/noid/groupfolder-share-object-storage
Only check path for being accessible when the storage is a object home
2020-11-19 22:37:28 +01:00
Morris Jobke 650ffc587f
Merge pull request #24164 from nextcloud/fix/lazy-app-registration
Allow lazy app registration
2020-11-19 22:35:09 +01:00
Roeland Jago Douma 1e111b2ad2
Fix DataResponse typehints
We use this already in several places where we just pass strings or
numbers.
This all works because we just convert it to a json response in the end.
So better to have the typehints reflect this.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-11-19 20:34:42 +01:00
Roeland Jago Douma d602aa1825
Merge pull request #24135 from medical-cloud/fix/23357-nextcloud-logo-in-email-notifications-is-misaligned-in-version-20
Fix nextcloud logo in email notifications misalignment
2020-11-19 10:48:18 +01:00
Christoph Wurst ecbc7f62be
Merge pull request #24207 from nextcloud/bugfix/noid/missing-level-psrlogged
missing level in ScopedPsrLogger
2020-11-19 08:38:05 +01:00
Nextcloud bot c773cee305
[tx-robot] updated from transifex 2020-11-19 02:20:10 +00:00
medcloud 87ec4a0da3 Fix #23357
Signed-off-by: medcloud <42641918+medcloud@users.noreply.github.com>
2020-11-18 22:29:02 +01:00
Maxence Lange a0d9b15a80 missing level
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2020-11-18 18:30:07 -01:00
Roeland Jago Douma 66013f906d
Merge pull request #24189 from nextcloud/enh/csp/frame-ancestors
Set frame-ancestors to none if none are filled
2020-11-18 11:29:28 +01:00
Roeland Jago Douma 9163790b7c
Set frame-ancestors to none if none are filled
frame-ancestors doesn't fall back to default-src. So when we apply a
very restricted CSP we should make sure to set it to 'none' and not
leave it empty.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-11-18 10:13:36 +01:00
Christoph Wurst 3cf39c573f
Allow lazy app registration
During app installation we run migration steps. Those steps may use
services the app registers or classes from composer. Hence we have to
make sure the app runs through the registration.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-11-18 08:48:45 +01:00
Roeland Jago Douma 72a9c35be3
Remove some IRouter methods
This is not the end. IRouter needs to burn.
But it is a start.

🎵 we didn't start the fire 🎵

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-11-17 14:08:20 +01:00
Joas Schilling a8cb8e21c1
Add types to function builder
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-16 19:46:24 +01:00
Joas Schilling 9a3ce2f71f
Don't drop the table anymore when we create it again
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-16 19:34:38 +01:00
Robin Appelman a61a757b85
allow selecting multiple columns with SELECT DISTINCT
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-11-16 15:45:17 +01:00
Roeland Jago Douma 426dc68b45
Merge pull request #24069 from nextcloud/fix-default-internal-expiration-date
Fix default internal expiration date
2020-11-16 14:13:56 +01:00
Christoph Wurst d0f738fd59
Merge pull request #24112 from nextcloud/bugfix/24099/setup-fs-before-query-storage-in-settings
Set up FS before querying storage info in settings
2020-11-16 11:46:22 +01:00
Daniel Calviño Sánchez bcf0a69af4 Fix default internal expiration date
The default expiration date for internal shares was set from the default
link expiration date instead of the internal one.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2020-11-16 08:54:18 +01:00
Joas Schilling 91a3e439cb
Don't throw on SHOW VERSION query
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-16 08:43:48 +01:00
Nextcloud bot 569c615383
[tx-robot] updated from transifex 2020-11-14 02:19:36 +00:00
Vincent Petry 2143f2bb82
Set up FS before querying storage info in settings
The personal info section of the personal settings is querying the
storage quota information. For this it requires the FS to be setup which
is not always guaranteed.

This fixes an issue where refreshing the settings page would cause it to
fail after Redis caches are full. It is likely that when Redis cache is
populated, some code path is initializing the FS, so it works so far.
But when the cache is populated, that code path is skipped so the FS is
not guaranteed to be setup...

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2020-11-13 17:06:37 +01:00
Julius Härtl d665981447
Only check path for being accessible when the storage is a object home
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-11-13 13:48:32 +01:00
Julius Härtl 81070c753b
Merge pull request #24053 from nextcloud/bugfix/noid/fix-user-status-for-oracle 2020-11-12 21:43:31 +01:00
Roeland Jago Douma 51a02c8009
ReflectionParamter::getClass is deprecated
In php8 this starts throwing warnings. And since we use it quite often
we flood the log. This moves it to getType which does the same. Only non
deprecated now.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-11-11 20:42:14 +01:00
Joas Schilling d7b5d4cb58
Revert "Revert "Installation goes brrrr"" 2020-11-11 20:12:13 +01:00
Christoph Wurst d36155620c
Revert "Installation goes brrrr" 2020-11-11 17:40:12 +01:00
Morris Jobke c27ed22488
Dump autoloader
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-11-11 16:49:37 +01:00
Joas Schilling 77713ab454
Don't create a schema to check if the migrations table exists
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-11 11:45:00 +01:00
Joas Schilling dde0e73c6b
Reduce the number of schemas we generate when we just run all migrations anyway
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-11 11:45:00 +01:00
Joas Schilling 7f45f90789
Only update the schema when we install anyway
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-11 11:40:51 +01:00
Julius Härtl 61496d3482
Merge pull request #24041 from nextcloud/techdebt/noid/remove-oc_hooks-for-group-management
Remove old OC_Hook for OC_Group events
2020-11-11 11:17:31 +01:00
Joas Schilling e39d657e24
Merge pull request #23882 from nextcloud/tests/oracle
Run unit tests against oracle
2020-11-11 10:05:24 +01:00
Nextcloud bot 0ee4f43048
[tx-robot] updated from transifex 2020-11-11 02:20:12 +00:00
Morris Jobke e187c1d778
Remove old OC_Hook for OC_Group events
Those mappings exist and we will remove the first ones (labeled as `old`):

old: `\OC_Hook::listen('OC_Group', 'pre_createGroup', array('run' => true, 'gid' => $gid));`
since OC 8 (owncloud/core#12618): `$groupManager->listen('\OC\Group', 'preCreate', function ($gid) { ... });`
since NC 17 (#18350): `OCP\Group\Events\BeforeGroupCreatedEvent`

old: `\OC_Hook::emit('OC_User', 'post_createGroup', array('gid' => $gid->getGID()));`
since OC 8 (owncloud/core#12618): `$groupManager->listen('\OC\Group', 'postCreate', function (\OC\Group\Group $gid) { ... });`
since NC 17 (#18350): `OCP\Group\Events\GroupCreatedEvent`

old: `\OC_Hook::emit('OC_Group', 'pre_deleteGroup', array('run' => true, 'gid' => $group->getGID()));`
since OC 8 (owncloud/core#12618): `$groupManager->listen('\OC\Group', 'preDelete', function (\OC\Group\Group $group) { ... });`
since NC 17 (#18350): `OCP\Group\Events\BeforeGroupDeletedEvent`

old: `\OC_Hook::emit('OC_User', 'post_deleteGroup', array('gid' => $group->getGID()));`
since OC 8 (owncloud/core#12618): `$groupManager->listen('\OC\Group', 'postDelete', function (\OC\Group\Group $group) { ... });`
since NC 17 (#18350): `OCP\Group\Events\GroupDeletedEvent`

old: `\OC_Hook::emit('OC_Group', 'pre_addToGroup', array('run' => true, 'uid' => $user->getUID(), 'gid' => $group->getGID()));`
since OC 8 (owncloud/core#12618): `$groupManager->listen('\OC\Group', 'preAddUser', function (\OC\Group\Group $group, \OC\User\User $user) { ... });`
since NC 17 (#18350): `OCP\Group\Events\BeforeUserAddedEvent`

old: `\OC_Hook::emit('OC_Group', 'post_addToGroup', array('uid' => $user->getUID(), 'gid' => $group->getGID()));`
since OC 8 (owncloud/core#12618): `$groupManager->listen('\OC\Group', 'postAddUser', function (\OC\Group\Group $group, \OC\User\User $user) { ... });`
since NC 17 (#18350): `OCP\Group\Events\UserAddedEvent`

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-11-10 21:58:44 +01:00
Joas Schilling d5df033ede
Create primary keys on all tables and add a command to create the afterwards
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-10 15:36:27 +01:00
Joas Schilling 5b5aebbf66
Replace the credentials table with one that can have empty user
Primary key columns on Oracle can not have empty strings

Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-10 15:36:27 +01:00
Joas Schilling fbda2d1d25
Don't try to update on NotNullConstraintViolationException, only on unique or foreign key
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-10 15:36:27 +01:00
Joas Schilling 1aa9c9164d
Fix comparing the empty string for global credentials
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-10 15:36:26 +01:00
Joas Schilling cffad62771
Empty string is returned as null, but empty string in file cache is the root and exists
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-10 15:35:43 +01:00
Joas Schilling ecbb066dec
Make sure columns with an empty default are nullable for Oracle
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-10 15:35:16 +01:00
Morris Jobke f23c2162ad
Merge pull request #23993 from nextcloud/bugfix/noid/close-cursors
Don't leave cursors open
2020-11-10 15:15:03 +01:00
Christoph Wurst 979b291a36
Show the full trace of an exception
Because often we catch the exception at some point and then the trace is
misleading. What's really interesting is the trace of the *previous*
exception.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-11-10 10:35:08 +01:00
Morris Jobke 4686deb298
Merge pull request #23999 from nextcloud/fix/old-legacy-scripts
Remove old legacy scripts references
2020-11-09 16:58:40 +01:00
Roeland Jago Douma 2b7ea590e1
Merge pull request #23994 from nextcloud/fix/comment_search
Update comment search to initFS
2020-11-09 15:52:01 +01:00
Joas Schilling 8027dcbc6f
Don't leave cursors open when tests fail
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-09 12:28:17 +01:00
John Molakvoæ 3bacb4780b
Removed config.js 2020-11-09 12:23:51 +01:00
John Molakvoæ 72545ffd07
Merge pull request #23937 from nextcloud/bugfix/noid/files-ocdb
Use query builder instead of OC_DB in OC\Files\*
2020-11-09 11:58:36 +01:00
Morris Jobke f02bab1425
Merge pull request #23976 from nextcloud/enh/reduce_getAppPath_and_autoload_reg
Reduce the getAppPath and autoloader calls
2020-11-09 11:10:33 +01:00
Morris Jobke 28464f71a2
Merge pull request #23982 from nextcloud/fix/quota-storage-getsize
Make sure root storage is valid before checking its size
2020-11-09 11:03:25 +01:00
Morris Jobke 005a132938
Merge pull request #23741 from Ashod/lock-leak
Unlock when promoting to exclusive lock fails
2020-11-09 11:00:46 +01:00
Morris Jobke 2f70a25076
Merge pull request #23978 from nextcloud/enh/query_servercontainer_first
First query the server container
2020-11-09 10:58:26 +01:00
Roeland Jago Douma d1c53981eb
Update comment search to initFS
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-11-09 09:52:23 +01:00
Joas Schilling c07720de77
Use query builder instead of OC_DB in OC\Files\*
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-09 09:05:15 +01:00
John Molakvoæ (skjnldsv) 6a453ac184
Make sure root storage is valid before checking its size
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2020-11-09 08:49:30 +01:00
Nextcloud bot f5be2c722a
[tx-robot] updated from transifex 2020-11-09 02:18:51 +00:00
Roeland Jago Douma 889bb44b42
First query the server container
When the servercontainer wants to obtain something changes are very high
this is something from the server container. Esp on setups with a lot of
shares this can change quite a bit as it avoid a needless check on the
strpos OCA\\ etc.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-11-07 17:51:41 +01:00
Roeland Jago Douma d8637c62e0
Reduce the getAppPath and autoloader calls
The getAppPath will always return the same data for the same appId. It
is actually already cached. However we do some cleanup of the appId
(again). Same for the autoloading it is actually already checked.

This just removes the unneeded calls. Which can add up if you have a lot
of incomming shares.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-11-07 17:24:41 +01:00
Roeland Jago Douma a5fa9604ba
Merge pull request #23923 from nextcloud/bugfix/oci/fix-greatest-order-for-oracle
Fix greatest/least order for oracle
2020-11-07 16:55:13 +01:00
Ashod Nakashian a66fb45c0b Unlock when promoting to exclusive lock fails
In certain cases changeLock to EXCLUSIVE fails
and throws LockedException. This leaves the
file locked as SHARED in file_put_contents,
which prevents retrying (because on second
call file_put_contents takes another SHARED
lock on the same file, and changeLock doesn't
allow more than a single SHARED lock to promote
to EXCLUSIVE).

To avoid this case, we catch the LockedException
and unlock before re-throwing.

Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2020-11-07 10:31:26 -05:00
Joas Schilling d9e471771a
Update parameters
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-07 14:06:03 +01:00
John Molakvoæ d25e5366b8
Merge pull request #23934 from nextcloud/enh/avoid_scss_compile 2020-11-07 10:11:50 +01:00
Morris Jobke 1a30e4d28f
Merge pull request #23821 from nextcloud/td/enh/no_fs_setup_by_default
Do not setup the default FS on normal routes
2020-11-06 23:03:09 +01:00
Morris Jobke cab80e685b
Merge pull request #23942 from nextcloud/techdebt/cookie-lax-php7.3
Remove the cookie paths for php<7.3
2020-11-06 22:42:20 +01:00
Morris Jobke 1da559f5e9
Merge pull request #23938 from nextcloud/bugfix/oci/sharing-ocdb
Replace some usages of OC_DB in OC\Share\* with query builder
2020-11-06 22:41:20 +01:00
Morris Jobke 659ea6ad79
Merge pull request #23851 from nextcloud/enh/read_env_only_once
Read the env variables only once
2020-11-06 22:35:00 +01:00
Morris Jobke fb5d1b40e4
Merge pull request #23943 from nextcloud/bugfix/oci/fix-ilike-on-oracle
Fix iLike() falsely turning escaped % and _ into wildcards
2020-11-06 22:27:30 +01:00
Morris Jobke 9981ffd784
Merge pull request #23922 from nextcloud/bugfix/noid/fix-query-type-detection
Improve query type detection
2020-11-06 22:18:14 +01:00
Morris Jobke 63f996408b
Merge pull request #23928 from nextcloud/bugfix/oci/dont-leave-stray-cursors-on-mimetype-update
Fix repair mimetype step to not leave stray cursors
2020-11-06 22:09:44 +01:00
Morris Jobke b70cf435a7
Merge pull request #23940 from nextcloud/enh/skip_already_loaded_apps
Skip already loaded apps in loadApps
2020-11-06 21:58:44 +01:00
Morris Jobke 3f88ab8252
Merge pull request #23929 from nextcloud/techdebt/noid/deprecate-prepare-and-execute-audited-as-they-leak-cursors
Deprecate OC_DB::prepare and OC_DB::executeAudited as they leak cursors
2020-11-06 16:24:29 +01:00
Joas Schilling cb8bef1f37
Fix iLike() falsely turning escaped % and _ into wildcards
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-06 16:22:13 +01:00
Morris Jobke 9e2ced609e
Merge pull request #23932 from nextcloud/enh/s3/do_not_check_bucket_exists_on_every_request
Allow config to specify the bucket exists
2020-11-06 16:13:20 +01:00
Christoph Wurst 7e2c3a820e
Remove the cookie paths for php<7.3
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-11-06 15:57:17 +01:00
Roeland Jago Douma 0dece78617
Skip already loaded apps in loadApps
Otherwise you might end up calling a lot of functions unneeded.
And while the individual calls are cheap if you multiply them by 20k
they still get somewhat expensive.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-11-06 14:56:06 +01:00
Joas Schilling ad8b848444
Replace some usages of OC_DB in OC\Share\* with query builder
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-06 13:02:14 +01:00
Joas Schilling 3aaf2fabb1
Make sure Oracle always casts everything in the best way
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-06 12:13:22 +01:00
Joas Schilling 4b125d4402
Use Query builder function
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-06 12:13:22 +01:00
Joas Schilling 3c027bd0cf
Fix order of GREATEST for Oracle
As per https://docs.oracle.com/cd/B19306_01/server.102/b14200/functions060.htm
Oracle uses the first value to cast the rest or the values.
So when the first value is a plain int, instead of doing the math,
it will cast the expression to int and continue with a potential 0.

Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-06 12:13:22 +01:00
Julius Härtl 3f4fb9dc89
Merge pull request #23921 from nextcloud/techdebt/oci/fix-casting-to-integer
Fix casting to integer on Oracle
2020-11-06 11:39:48 +01:00
Roeland Jago Douma cd849db8be
Avoid SCSS compilation if not needed
Now we do on each template load a compile with the SCSS variables to see
if they changed or not. However there is no real reason for this if the
variables didn't change.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-11-06 11:31:36 +01:00
Roeland Jago Douma 65141d4864
Allow config to specify the bucket exists
In the 99% case the bucket is just always there. And if it is not the
read/write will fail hard anyways. Esp on big instances the Objectstore
is not always fast and this can save a few hundered ms of each request
that acess the objectstore.

In short it is adding

'verify_bucket_exists' => false

To the S3 config part

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-11-06 11:08:38 +01:00
Joas Schilling a847aea19c
Deprecate OC_DB::prepare and OC_DB::executeAudited as they leak cursors
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-06 10:37:37 +01:00
Joas Schilling da1c2bdfe6
Fix repair mimetype step to not leave stray cursors
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-06 10:33:59 +01:00
Roeland Jago Douma 48d843858d
Do not setup the default FS on normal routes
This should help with load times hopefully. Only initialize the FS if we
actually ned it.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-11-06 09:03:32 +01:00
Joas Schilling 3d2f71cfa9
Improve query type detection
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-06 08:38:56 +01:00
Joas Schilling cfc35fa49a
Fix casting to integer on Oracle
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-06 08:38:08 +01:00
Roeland Jago Douma e93823cba0
Bearer must be in the start of the auth header
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-11-06 08:32:50 +01:00
Morris Jobke 0247f22c83
Merge pull request #23887 from ecsecta/fix_23797
Do not emit UserCreatedEvent twice
2020-11-05 22:58:30 +01:00
Roeland Jago Douma 12e2b74872
Merge pull request #23901 from nextcloud/techdebt/noid/deprecate-old-usermanager-events
Deprecate old user manager events for user creation
2020-11-05 09:37:07 +01:00
Tobias Assmann a79d7c0be0 fix: also remove use statement of UserCreatedEvent
Signed-off-by: Tobias Assmann <tobias.assmann@ecsec.de>
2020-11-05 08:53:20 +01:00
Morris Jobke 645e1c55b8
Merge pull request #23819 from nextcloud/td/routing/move_things_around
Cleanup routing
2020-11-04 22:16:13 +01:00
Morris Jobke c3969d9493
Merge pull request #23792 from nextcloud/techdebt/noid/group-unread-comment-count-query
Add a function to get the unread count for multiple objects in one go
2020-11-04 21:45:44 +01:00
Morris Jobke fd3d7c394a
Deprecate old user manager events for user creation
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-11-04 21:19:16 +01:00
Joas Schilling ede7510854
Add a function to get the unread count for multiple objects in one go
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-04 11:01:21 +01:00
Morris Jobke 83c60496a9
Document the behaviour inline
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-11-04 10:13:15 +01:00
Tobias Assmann ded2acc966 fix: no more translation from postCreateUser hook to UserCreatedEvent anymore, as event is already emitted in user manager
Signed-off-by: Tobias Assmann <tobias.assmann@ecsec.de>
2020-11-04 09:18:35 +01:00
Morris Jobke 8d02ee9ac7
Merge pull request #21693 from nextcloud/fix/noid/import-certificates-only-by-system
Improve CertificateManager to not be user context dependent
2020-11-03 21:48:37 +01:00
Julius Härtl f49630f48c
Replace prefix in executeUpdate
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-11-03 11:03:02 +01:00
Morris Jobke 1c496a5a35
Add a background job that checks for potential user imported SSL certificates and shows a warning in the admin settings
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-11-03 10:06:33 +01:00
Roeland Jago Douma e25a7137cc
Cleanup route registration logic
This was a bunch of cylic things being called.
This is an attempt to clean this all up. If an app provides an array of
routes. We just parse them and hand them back.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-11-03 09:39:49 +01:00
Roeland Jago Douma 54b9f639a6
Always return the default path if we can
Just check in the certifcate manager. So every part of the system that
request the certificatebundle gets the defaullt one (the 99% case) if we
can.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-11-03 00:13:01 +01:00
Morris Jobke dc479aae2d
Improve CertificateManager to not be user context dependent
* removes the ability for users to import their own certificates (for external storage)
* reliably returns the same certificate bundles system wide (and not depending on the user context and available sessions)

The user specific certificates were broken in some cases anyways, as they are only loaded if the specific user is logged in and thus causing unexpected behavior for background jobs and other non-user triggered code paths.

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-11-03 00:13:01 +01:00
Roeland Jago Douma 17ffe46d0b
Read the env variables only once
We read config.php an awefull lot of times. So it only makes sense to
kill this as much as wel can.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-11-02 21:37:09 +01:00
Morris Jobke 2d67cb9510
Merge pull request #23839 from nextcloud/fix/noid/avatar-status
No need to check if there is an avatar available, because it is gener…
2020-11-02 19:07:57 +01:00
Morris Jobke 7debc6e0b6
No need to check if there is an avatar available, because it is generated on the fly nowadays
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-11-02 15:39:45 +01:00
Roeland Jago Douma 441a3434f3
Move localecache to array
It seems the DS Set in the polyfill implementation is a lot less
efficient than normal arrays. (A LOT!).
So for now use a stupid normal array.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-11-02 15:02:04 +01:00
Roeland Jago Douma ff08b10a89
Merge pull request #23822 from nextcloud/enh/parse_localse_only_once
Only parse the locales ones
2020-11-02 12:24:38 +01:00
John Molakvoæ a3e4094792
Merge pull request #23827 from nextcloud/td/cleanup/ocsresponse
Remove deprecated OCSResponse
2020-11-02 10:00:19 +01:00
Roeland Jago Douma fa6a790859
Remove deprecated OCSResponse
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-11-01 14:12:27 +01:00
Nextcloud bot b1620344f3
[tx-robot] updated from transifex 2020-11-01 02:18:23 +00:00
John Molakvoæ 25a1df9c7e
Merge pull request #22373 from nextcloud/fix-example-usage-for-mailer
Fix example usage
2020-10-31 15:58:29 +01:00
Roeland Jago Douma 6e377a9daf
Only parse the locales ones
Before we'd go over the entire list for each translation (so each app)
we'd use translation for. This means we'd also go over thise locale list
(currently containing 750 entries) * apps so often this added up to ~20k
calls.

now we just dump the locales in a set once and then check if the entry
is there.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-10-31 15:25:19 +01:00
Roeland Jago Douma 5396e98d2d
Merge pull request #23764 from nextcloud/3rdparty/doctrine/dbal/2.12.0
[3rdparty] Bump doctrine/dbal to 2.12.0
2020-10-31 08:47:18 +01:00
Nextcloud bot ffda62b421
[tx-robot] updated from transifex 2020-10-31 02:18:47 +00:00
Roeland Jago Douma fe46149560
Psalm fixes
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-10-30 19:27:53 +01:00
Roeland Jago Douma 28be188fbc
Update internal connection class
executeUpdate is deprecated in favor of executeStatement.
We overwrote the old one hence the prefix was no longer replaced.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-10-30 19:27:53 +01:00
Morris Jobke f438ee40a4
Revert "[Automated] Update psalm-baseline.xml" 2020-10-30 10:36:46 +01:00
Morris Jobke 1654826e83
Merge pull request #23742 from nextcloud/enhancement/eventdispatcher-typed-listener-callable
Type the event dispatcher listener callables with Psalm
2020-10-30 09:54:48 +01:00
Morris Jobke 54888587cd
Merge pull request #23786 from nextcloud-pr-bot/automated/noid/psalm-baseline-update
[Automated] Update psalm-baseline.xml
2020-10-30 08:14:37 +01:00
Nextcloud-PR-Bot ac8a5ca18c Update psalm baseline
Signed-off-by: GitHub <noreply@github.com>
2020-10-30 04:18:38 +00:00
Morris Jobke f12e7e0e95
Fetch the logger and system config once for all query builder instances
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-10-29 22:35:06 +01:00
Robin Appelman de7026f6e4
use file name instead of path in 'not allowed to share' message
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-10-29 16:43:21 +01:00
Morris Jobke 7ed11b6dfa
Merge pull request #23765 from nextcloud/techdebt/noid/sudadmin-events-into-typed-events
Add typed events for adding and removing a subadmin
2020-10-29 11:18:01 +01:00
Morris Jobke e5cd4ead04
Merge pull request #23766 from nextcloud/techdebt/noid/remove-unused-private-emitters
Remove unused private ForwardEmitter and LegacyEmitter
2020-10-29 10:03:36 +01:00
Morris Jobke 3076eb4e9b
Merge pull request #23767 from nextcloud/techdebt/noid/add-deprecated-tag-to-all-methods
Add deprecated tag also to methods of deprecated classes - OC\\Hooks\\Emitter namespace
2020-10-29 09:03:52 +01:00
Morris Jobke 5fab33ddc5
Merge pull request #23770 from nextcloud/techdebt/noid/remove-deprecated-isection
Remove ISection in favor of IIconSection
2020-10-29 09:00:57 +01:00
Morris Jobke b9de133e16
Merge pull request #23771 from nextcloud/techdebt/noid/remove-deprecated-inotifystorage-listen
Remove deprecated INotifyStorage::listen
2020-10-29 08:58:15 +01:00
Morris Jobke 1d8b954a22
Merge pull request #23768 from nextcloud/techdebt/noid/deprecate-ocp-util-emitHook-and-connectHook
Deprecate OCP\Util::connectHook and emitHook
2020-10-29 08:47:21 +01:00
Nextcloud bot f576374fe6
[tx-robot] updated from transifex 2020-10-29 02:19:13 +00:00
Morris Jobke b8ed997238
Remove ISection in favor of IIconSection
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-10-28 23:05:00 +01:00
Morris Jobke 32e4a61cac
Remove deprecated INotifyStorage::listen
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-10-28 23:02:25 +01:00
Morris Jobke 8218ae4274
Deprecate OCP\Util::connectHook and emitHook
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-10-28 22:30:24 +01:00
Morris Jobke 704fb2dbf2
Add deprecated tag also to methods of deprecated classes - OC\\Hooks\\Emitter namespace
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-10-28 22:27:27 +01:00
Morris Jobke 6e35457fcc
Remove unused private ForwardEmitter and LegacyEmitter
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-10-28 22:23:39 +01:00
Morris Jobke e4f53ff91b
Add typed events for adding and removing a subadmin
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-10-28 21:55:08 +01:00
Christoph Wurst b5f75ccdd8
Merge pull request #23746 from nextcloud/enhancement/iusermanager-callforseenusers-typed-closure
Type the \OCP\IUserManager::callForSeenUsers closure with Psalm
2020-10-28 20:05:53 +01:00
Christoph Wurst 7e72866811
Type the \OCP\IUserManager::callForSeenUsers closure with Psalm
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-10-28 19:21:00 +01:00
blizzz 6b2cf46125
Merge pull request #23752 from nextcloud/fix/noid/wfe-ux-errors
inform the user when flow config data exceeds thresholds
2020-10-28 16:05:35 +01:00
Arthur Schiwon 1eb86e46fd
inform the user when flow config data exceeds thresholds
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-10-28 14:07:14 +01:00
Morris Jobke ad3063a77b
Merge pull request #23744 from nextcloud/enhancement/appframework-initialstate-typed-closure
Type the \OCP\AppFramework\Services\IInitialState::provideLazyInitial…
2020-10-28 14:03:34 +01:00
Christoph Wurst e8e13c845c
Type the \OCP\AppFramework\Services\IInitialState::provideLazyInitialState closure with Psalm
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-10-28 09:04:15 +01:00
Christoph Wurst a2206b8cfb
Type the \OCP\IUserManager::callForAllUsers closure with Psalm
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-10-28 08:58:38 +01:00
Christoph Wurst 469ba175ce
Type the event dispatcher listener callables with Psalm
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-10-28 08:54:24 +01:00
Roeland Jago Douma cf1af5b83b
Merge pull request #23496 from lynn-stephenson/fix/related-key-issue
Fixes related key issue.
2020-10-27 20:23:07 +01:00
Roeland Jago Douma eadce7fadd
Merge pull request #23601 from nextcloud/techdebt/noid/comments-manager-improvements
Comments manager improvements/extensions needed by Talk
2020-10-27 19:57:55 +01:00
Roeland Jago Douma 7949854837
Merge pull request #23712 from nextcloud/enh/noid/add-size-to-file-obj-definition
Add optional size field for the file obj
2020-10-27 19:51:31 +01:00
kesselb 54f2d9b524
Merge pull request #23722 from nextcloud/fix/noid/use-correct-l10n-module
Use lib instead if core as l10n module in OC_Files
2020-10-27 17:28:13 +01:00
Christoph Wurst a79ed0653b
Deprecate \OCP\EventDispatcher\IEventDispatcher::dispatch
As discussed in
https://help.nextcloud.com/t/deprecation-of-ieventdispatcher-dispatch/95381

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-10-27 15:43:07 +01:00
Morris Jobke fc403135d1
Use lib instead if core as l10n module in OC_Files
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-10-27 15:37:57 +01:00
Vincent Petry f7fd8d520d
Add optional size field for the file obj
Add optional size field for the file rich object definition.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2020-10-27 11:48:41 +01:00
Nextcloud bot ae54ae6c9b
[tx-robot] updated from transifex 2020-10-27 02:18:34 +00:00
Christoph Wurst 9976e47035
Merge pull request #23602 from nextcloud/fix/appconfig_update_null
Fix updates of NULL appconfig values
2020-10-23 10:43:26 +02:00
Morris Jobke 2ba34cba2c
Merge pull request #23608 from nextcloud/enh/23482/forward-error-message
Add more details if extract fails
2020-10-22 12:51:47 +02:00
Joas Schilling da3d384426
Fix missing since
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-10-22 12:02:48 +02:00
Joas Schilling 1f1244fdcc
Fix PHP CS
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-10-22 11:00:54 +02:00
Joas Schilling 8600e51df5
Fix manager creation and testing
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-10-22 10:54:03 +02:00
Daniel Kesselberg d11de8c8e7
Add more details if extract fails.
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2020-10-22 10:15:46 +02:00
Joas Schilling c1834bac7d
Only use index of mount point when it is there
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-10-21 13:37:56 +02:00
Joas Schilling 2dd50b4adc
Fix return type
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-10-21 11:02:05 +02:00
Joas Schilling 4b8fec49e7
Add return description
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-10-21 10:05:51 +02:00
Roeland Jago Douma db82d27239
Fix updates of NULL appconfig values
The comparisson of NULL is a bit special.
So we need to handle this a tad beter else it might not replace NULL
values. or allow you to set NULL values on updates.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-10-21 10:04:06 +02:00
Joas Schilling 6400221fba
Less magic
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-10-21 09:47:40 +02:00
Joas Schilling d462439a63
Get the last comment date for a list of actors (to allow sorting mention suggestions e.g.)
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-10-21 09:18:51 +02:00
Joas Schilling 89651c5233
Allow to search on multiple objects with one query
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-10-21 09:16:42 +02:00
Joas Schilling 326640462b
Add methods to get the number of comments and last comment since a date
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-10-21 09:15:38 +02:00
Joas Schilling 2cc35cc65d
Include an option to also include the lastKnownCommentId object
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-10-21 09:08:48 +02:00
John Molakvoæ 766590d204
Merge pull request #23173 from nextcloud/feat/comments-sidebar-vue 2020-10-20 20:46:21 +02:00
John Molakvoæ (skjnldsv) 6cd7549509
Bump @nextcloud/vue to 3.0.0
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
2020-10-20 18:02:45 +02:00
Joas Schilling f2541e7a8b
Use auto-wiring on most outer level
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-10-20 17:43:50 +02:00
Joas Schilling 4bc821edd9
PSR logger for accounts
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-10-20 17:41:47 +02:00
John Molakvoæ (skjnldsv) 3e1916080a
Add ICommentsManager::load method
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2020-10-20 14:39:28 +02:00
John Molakvoæ (skjnldsv) e7f5516b4d
Init vue comments tab
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2020-10-20 13:58:06 +02:00
Roeland Jago Douma ffd76d05c9
Merge pull request #23374 from nextcloud/bugfix/noid/app-fetch-retry
Only retry fetching app store data once every 5 minutes in case it fails
2020-10-20 09:21:51 +02:00
Nextcloud bot f116595b3f
[tx-robot] updated from transifex 2020-10-20 02:18:38 +00:00
Morris Jobke 09501e1710
Merge pull request #23508 from nextcloud/fix/23355/iuser-expected-null-given
fixes potential passing of null to getUserGroupIds
2020-10-16 14:57:54 +02:00
Morris Jobke 4bf891f605
Merge pull request #23478 from nextcloud/fix/21059/fix-deadlock-in-scsscacher
Clear cached app config while waiting for the SCSSCache lock to return
2020-10-16 14:56:43 +02:00
Julius Härtl 4512c73293
Only retry fetching app store data once every 5 minutes in case it fails
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-10-16 14:32:58 +02:00
Morris Jobke cce716f9f3
Clear cached app config while waiting for the SCSSCache to finish processing the file
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-10-16 13:28:00 +02:00
Arthur Schiwon fd23614c08
fixes potential passing of null to getUserGroupIds
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-10-16 12:29:35 +02:00
Morris Jobke 9273436534
SCSSCacher - Lock should not be removed
This is within the failed lock acquiring branch. So the lock is free by another process and should not be removed because the cached file (that was created by the process having the lock) appeared on the filesystem.

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-10-16 10:02:18 +02:00
Morris Jobke 2456969b41
Merge pull request #23490 from nextcloud/debug/noid/log-statements-for-scss-locking
Provide log statements for SCSS cache
2020-10-16 09:48:09 +02:00
lynn-stephenson 648b60fa0e
Derive encryption key & MAC key from a single key.
Signed-off-by: lynn-stephenson <lynn.stephenson@protonmail.com>
2020-10-15 21:23:24 -08:00
Morris Jobke e5fe3426c3
Provide log statements for SCSS cache
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-10-16 00:09:11 +02:00
Christoph Wurst b47a2730c0
Type the authentication listeners
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-10-15 16:43:21 +02:00
Christoph Wurst e646d7d5a9
Add psalm types for the event dispatcher
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-10-15 16:23:26 +02:00
Christoph Wurst 65fb50f9fb
Add psalm types for the migration schema closure
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-10-15 10:58:51 +02:00
Christoph Wurst f464ef050b
Fix type errors detected by Psalm
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-10-14 15:40:12 +02:00
Christoph Wurst f9f20b63f4
Annotate IContainer so Psalm knows what resove and query return
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-10-14 12:29:26 +02:00
Nextcloud bot 42fcc74b67
[tx-robot] updated from transifex 2020-10-14 02:18:46 +00:00
Morris Jobke a70f283734
Merge pull request #23409 from nextcloud/fix/cache-entry-array-access
The file cache entry is array accessible
2020-10-13 17:54:21 +02:00
Christoph Wurst b2de9a6f9e
The encryption decrypt position can be int or string
The public API said string, internally we treated it as int. In reality
both are used. Let's reflect that in the documented argument type.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-10-13 10:51:22 +02:00
Christoph Wurst 0da89c0fa1
The file cache entry is array accessible
… so let's make this part of our API. We use it as array already.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-10-13 10:47:00 +02:00
Joas Schilling 349da3395a
Merge pull request #23382 from nextcloud/techdebt/noid/psr-logger-in-authentication
Use PSR logger in authentication
2020-10-13 09:45:11 +02:00
Nextcloud bot 85570abc9a
[tx-robot] updated from transifex 2020-10-13 02:18:40 +00:00
Joas Schilling 49ff48fcd3
Use PSR logger in authentication
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-10-12 22:07:04 +02:00
Morris Jobke 14af2246f3
Merge pull request #23378 from R0Wi/bugfix/registration_typo
Fix typo 'shared'
2020-10-12 20:04:33 +02:00
Christoph Wurst ccfe6a9fa5
Add Psalm type for the bootstrap registration context
This can potentially catch a few bugs with wrong class strings.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-10-12 15:16:16 +02:00
Robin Windey 6a1f8fb3be
Fix typo 'shared' 2020-10-12 14:19:41 +02:00
Christoph Wurst 2664c7f75f
Type some of the core mappers
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-10-12 11:10:09 +02:00
Christoph Wurst a1b351036c
Add template typing to the QBMapper
The QBMapper is kind of a generic type, though this concept does not
exist in php. Hence you have a lot of type coercion in subtypes (mappers
in the individual apps) because you suddenly don't expect an Entity[]
but your specific type.

Luckily Psalm lets us type those. Then in the subclass you can
psalm-implement the mapper with a concrete type and psalm will do all
the magic to ensure types are used correctly.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-10-12 11:10:08 +02:00
Roeland Jago Douma 049d5b3a4b
Merge pull request #23249 from nextcloud/techdebt/server-container-cleanup
Server container cleanup
2020-10-09 09:19:41 +02:00