Commit Graph

228 Commits

Author SHA1 Message Date
Joas Schilling 1ca075a113
Correctly handle users with numeric user ids
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-07-09 14:22:10 +02:00
Michael Weimann 9bd48e7c0d Adds an info if the maintenance mode is already enabled/disabled.
Signed-off-by: Michael Weimann <mail@michael-weimann.eu>
2018-07-01 20:56:27 +02:00
Johannes Ernst 0a65e62f29
Added a logger for systemd/journald
Added a unit test

Signed-off-by: Johannes Ernst <jernst@indiecomputing.com>
2018-06-29 10:37:45 +02:00
Joas Schilling 826ea8c3f9
Use the correct Base class
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-06-27 14:17:00 +02:00
Morris Jobke 9444a3fad1
Merge pull request #9632 from nextcloud/enhancement/stateful-2fa-providers
Stateful 2fa providers
2018-06-25 15:49:58 +02:00
Joas Schilling 6eb2653897
Use ellipsis instead of triple dot
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-06-22 11:08:26 +02:00
Christoph Wurst 13d93f5b25
Make 2FA providers stateful
This adds persistence to the Nextcloud server 2FA logic so that the server
knows which 2FA providers are enabled for a specific user at any time, even
when the provider is not available.

The `IStatefulProvider` interface was added as tagging interface for providers
that are compatible with this new API.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2018-06-20 08:30:26 +02:00
Morris Jobke 18e9631810
Wait for cron to finish before running upgrade command
* fixes #9562

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-06-19 14:22:45 +02:00
Roeland Jago Douma 2f59f389d2
Add parent index to share table
Fixes #9327

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-06-03 13:36:02 +02:00
Robin Appelman b40629ac8c
Add human readable description to migration steps
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-05-30 21:28:05 +02:00
Roeland Jago Douma 80cc8d0028
Emit event when running ./occ db:add-missing-indices
This allows apps to listen to this event in order to also update
indecies there.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-05-24 18:03:10 +02:00
Joas Schilling f772b7b4dd
Add autocomplete to migration commands
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-05-03 16:52:56 +02:00
Morris Jobke 058f8123e6
Set the default log rotate size to 100 MB
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-04-11 00:27:51 +02:00
Morris Jobke 514de5dfa1
Use isInstalled of AppManger instead of reimplement it
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-03-21 11:34:18 +01:00
Bjoern Schiessle 9259b8a90e
s/ownCloud/Nextcloud
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2018-03-01 17:49:53 +01:00
Bjoern Schiessle 31397debaf
fix check and improve error message
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2018-03-01 17:49:20 +01:00
Joas Schilling 5080080a36
Anything but true means it failed
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-03-01 17:30:59 +01:00
Morris Jobke 67a76b00e8
Merge pull request #6481 from nextcloud/occ-app-install-enable
add enable flag to occ app:install
2018-02-26 17:49:37 +01:00
sualko 84f6477ce5
enable app by default after occ app:install
Signed-off-by: Klaus Herberth <klaus@jsxc.org>
2018-02-26 16:34:52 +01:00
sualko 323eb2e8ba
add enable flag to occ app:install (fix #5834)
Signed-off-by: Klaus Herberth <klaus@jsxc.org>
2018-02-26 16:34:52 +01:00
Alecks Gates 3be2c558a5 Add mtime and storage_mtime to db:convert-filecache-bigint 2018-02-17 09:27:25 -06:00
Joas Schilling 211212f4b3
App manager is not needed anymore
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-02-16 17:13:36 +01:00
Joas Schilling 17a26dfcc1
Validate the info.xml against the appstore schema file
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-02-16 10:23:51 +01:00
Morris Jobke 236086c457
Merge pull request #8335 from nextcloud/remove-unused-import
Remove unused import statements
2018-02-14 22:23:07 +01:00
Morris Jobke d3d045dd5c
Remove unused import statements
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-02-14 16:55:43 +01:00
Morris Jobke 954da26e26
Use non aliased method instead
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-02-13 21:48:24 +01:00
Morris Jobke eb51f06a3b
Use ::class statement instead of string
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-01-29 12:03:47 +01:00
Morris Jobke a661f043e1
Remove unneeded semicolon and parentheses
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-01-26 23:46:40 +01:00
Morris Jobke c1e4f9f305
Use type casting instead of *val() method
It should be up to 6x faster

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-01-26 11:35:42 +01:00
Joas Schilling c2b1bd92d6
Merge pull request #8063 from nextcloud/inline-value
Return value immediately instead of assigning to a one-time variable
2018-01-26 10:15:39 +01:00
Morris Jobke 0a56d2185e
Return value immediately instead of assigning to a one-time variable
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-01-26 00:02:03 +01:00
Morris Jobke 55ef34b23b
Implements are not needed because they are already done by base class
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-01-25 22:42:24 +01:00
blizzz c7d9e5fd63
Merge pull request #7354 from nextcloud/refacor-update-page-print
Refactor method to check if update is needed
2018-01-22 22:50:05 +01:00
Morris Jobke c70927eaa0
Remove not needed 3rdparty app disabling during upgrade for PHP 5.x
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-01-19 14:00:27 +01:00
Joas Schilling 4a5282ba21
Fix the type hints of migrations and correctly inject the wrapped schema into migrations
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-01-17 11:37:36 +01:00
Morris Jobke 82869b6d81
Fix case when overwrite URL is empty during setup
Found while testing strict typing for PHP 7+.

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-01-15 11:15:38 +01:00
Roeland Jago Douma e294323df2
Merge pull request #7517 from nextcloud/add-index-to-share-table
Add index to share_with column in the share table
2017-12-18 22:23:53 +01:00
Roeland Jago Douma a84d11de7b
Merge pull request #7531 from nextcloud/ldap/createdistributed
don't use deprecated method for requesting memcache
2017-12-18 22:08:32 +01:00
Bjoern Schiessle 41ee23a054
make occ command more generic
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2017-12-18 21:14:45 +01:00
Bjoern Schiessle fda98ee917
add occ command to add a index to share_with at the share table
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2017-12-18 21:14:45 +01:00
Morris Jobke d2d73f1ce8
Also replace all other occurences
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-12-18 20:57:11 +01:00
Roeland Jago Douma d6e74fe375
Use injected AppManager
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2017-12-18 20:26:44 +01:00
Morris Jobke f22e02cd79
Refactor method to check if update is needed
There was only one call, that actually needed the parameter to be set to true. So this change moved the print of the page to that location and replaces all other occurences with a direct call to the underlying OCP API.

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-11-30 16:04:07 +01:00
Morris Jobke 0e2f00ec59
Get the Installer via DI
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-11-25 12:00:57 +01:00
Morris Jobke 0eebff152a
Update license headers
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-11-06 16:56:19 +01:00
Morris Jobke dd192e5df9
Use proper DI for repair command
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-10-24 14:13:45 +02:00
Morris Jobke f884e762bc
Use appmanager instead of OC_App for check for enabled app
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-10-23 23:31:17 +02:00
Joas Schilling 6acf1d9524
Also update the activity table with this
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-10-13 11:46:50 +02:00
Joas Schilling e2ec6b33ea
Add a command to manually migrate to big ints
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-10-13 11:42:15 +02:00
Joas Schilling d5c2b98207
Fix missing "unsigned" on integer columns
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-09-19 20:09:10 +02:00
Thomas Ebert 93d539b0cf Add mimetype support for .URL (Windows) and .webloc (macOS) files. Update places/link svg. Add filetype/link icon. Add repair step for mime types.
Signed-off-by: Thomas Ebert <thomas.ebert@te-online.net>
2017-08-31 16:53:07 +02:00
Joas Schilling f877096a28
Fix typo in template for migration generation
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-08-09 11:01:08 +02:00
Morris Jobke c40352c030 Merge pull request #5816 from nextcloud/fix-oracle
Fix oracle
2017-08-02 20:54:58 +02:00
Joas Schilling 3b648645f4
Allow to specify the table space on occ
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-08-02 09:48:15 +02:00
Morris Jobke cd02b2205e Use public methods for OC_App::isShipped
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-08-01 18:57:00 +02:00
sualko 7720e19e10 add namespace
Signed-off-by: sualko <klaus@jsxc.org>
2017-07-26 15:24:24 +02:00
sualko 3e62a25155 add occ app:install command
Signed-off-by: Klaus Herberth <klaus@jsxc.org>
2017-07-26 14:35:42 +02:00
Joas Schilling b729cc2a02
Add *lob support for all tables
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-07-25 12:49:15 +02:00
Joas Schilling 087138f228
use template placeholders instead of html
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-07-25 12:49:15 +02:00
Joas Schilling e023899078
Always order by all values, to make sure all entries are copied correctly
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-07-25 12:49:15 +02:00
Joas Schilling 1b7c1ad5c0
Only migrate to the current state
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-07-25 12:49:15 +02:00
Joas Schilling 10d7cbb71f
Use order by to avoid problems when chunking finds a same item again...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-07-25 12:49:12 +02:00
Joas Schilling 0a0dbbdf15
Remove generate change script which doesnt work with migrations anymore
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-07-25 12:47:39 +02:00
Joas Schilling 3fedfe67b9
Use default connection parameters for utf8 4byte support
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-07-25 12:47:39 +02:00
Joas Schilling 42ed7a18cc
Skip migrations table because it was already done when creating the schema
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-07-25 12:47:39 +02:00
Joas Schilling 1d56b52761
Use migrations on convert
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-07-25 12:47:39 +02:00
Joas Schilling 9307aaee49
Core is converted, so this is dead code
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-07-25 12:47:39 +02:00
Joas Schilling f6c48b1548
Add a script to generate a migration from database.xml
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-07-25 12:45:38 +02:00
Lukas Reschke 3d2600b039
Add Phan plugin to check for SQL injections
This adds a phan plugin which checks for SQL injections on code using our QueryBuilder, while it isn't perfect it should already catch most potential issues.

As always, static analysis will sometimes have false positives and this is also here the case. So in some cases the analyzer just doesn't know if something is potential user input or not, thus I had to add some `@suppress SqlInjectionChecker` in front of those potential injections.

The Phan plugin hasn't the most awesome code but it works and I also added a file with test cases.

Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2017-07-20 22:48:13 +02:00
Joas Schilling 0f275b1550
Only create the migration directory when necessary
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-07-06 09:58:39 +02:00
Joas Schilling 3b267b165f Check the migration files for table, column and index length errors
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-07-05 13:02:16 +02:00
Joas Schilling 5d9d1b1cb5 Allow to check the schema in pre and post as well
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-07-05 13:01:19 +02:00
Joas Schilling 817783e4c7 Add a version to migrations, so parallel legacy branches can also have migrations
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-07-05 13:01:19 +02:00
Joas Schilling df6b839b23 Add author and copyright
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-07-05 13:01:19 +02:00
Joas Schilling 8c39e66619 Do not allow to go back on productive systems
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-07-05 13:01:19 +02:00
Joas Schilling 194ef1a171 Adjust the code to use our interface and abstract
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-07-05 13:01:19 +02:00
Joas Schilling 15eec7b83c Start migrations
Fixme:
- Install and update of apps
- No revert on live systems (debug only)
- Service adjustment to our interface
- Loading via autoloader

Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-07-05 13:01:19 +02:00
Julius Härtl 2e47210d6f Add command to apply updates to custom themes
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2017-07-05 12:38:07 +02:00
Joas Schilling eebd2811dc
Version and dependency are now required
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-05-22 09:54:44 +02:00
Morris Jobke 6dea5e6aad Implement skip checkers and log the currently tested app
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-05-16 16:18:02 -05:00
Joas Schilling f920dfe09b
Skip the code checking for now
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-05-16 16:17:56 +02:00
Joas Schilling 31bb65fa36
Check the name length of database items
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-05-16 16:16:11 +02:00
Joas Schilling 93fc7fcdbe
Check the syntax of the language file
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-05-16 16:16:07 +02:00
Morris Jobke caa0ae94e8 Proper logging for appstore updates
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-05-11 13:35:17 -05:00
Thomas Müller 43427e26d7
Add console command to migrate the charset 2017-04-28 09:35:36 +02:00
Morris Jobke aa10cca61b
Do not disable 3rdparty apps on occ upgrade
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-04-27 18:11:33 -03:00
Morris Jobke c54a59d51e
Remove unused use statements
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-04-22 19:23:31 -05:00
Morris Jobke 5b4adf66e5
Move OC_Defaults to OCP\Defaults
* currently there are two ways to access default values:
  OCP\Defaults or OC_Defaults (which is extended by
  OCA\Theming\ThemingDefaults)
* our code used a mixture of both of them, which made
  it hard to work on theme values
* this extended the public interface with the missing
  methods and uses them everywhere to only rely on the
  public interface

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-04-09 21:43:01 -05:00
Joas Schilling 75eee315a3
Use false because null crashes the cache
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-03-26 22:43:19 +02:00
Joas Schilling 2961c735e3
Make sure blob columns are correctly converted as parameters
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-03-26 17:11:57 +02:00
Morris Jobke 8a4466f9ae
Improve error message of charset convert script and behaviour
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-03-23 15:36:22 -06:00
Morris Jobke 3329f44a76
Address comments
* fix URL to documentation
* improve logic of UTF8mb4 check
* fix connection parameter creation - it's done already in ConnectionFactory::createConnectionParams
* remove unused attributes of MDB2SchemaReader

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-03-21 16:42:42 -06:00
Morris Jobke 713f684a8b
Adding tests for 4 byte unicode characters
* success on SQLite and Postgres
* failure on MySQL due to the limited charset that only supports up to 3 bytes

Add config option to update charset of mysql to utf8mb4

* fully optional
* requires additional options set in the database

only disable unicode test on mysql

Fixing ctor call

Adding docker based unit test execution for mysql utf8mb4

Add mysqlmb4 test configuration to Jenkinsfile

fix collation on utf8mb4

Properly setup charset and collation in the doctrine connection

Allow files containing 4-byte chars in case the database supports it

During setup of a mysql database we try to detect if charset 'utf8mb4' can be used

Fix mysql settings

Add console command to migrate the charset

Set ROW_FORMAT before setting collation to mb4

Also select tables with wrong collation

Faster MySQL docker

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-03-21 16:42:12 -06:00
Morris Jobke 8b670b41f1 Merge pull request #3952 from nextcloud/downstream-27209
Log files:scan exception, add InterruptedException
2017-03-20 03:22:58 -06:00
Vincent Petry b8a8f43fce
Log files:scan exception, add InterruptedException
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-03-20 02:24:28 -06:00
Morris Jobke daa7e11095 Merge pull request #3947 from nextcloud/downstream-27323
Disable empty password for user::resetpassword command using CLI
2017-03-20 01:53:28 -06:00
Sujith H a860ee3a45
Disable empty password for user::resetpassword command using CLI
Fixes issue: https://github.com/owncloud/core/issues/25206

Signed-off-by: Sujith H <sharidasan@owncloud.com>
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-03-20 00:01:12 -06:00
Morris Jobke 0f2ee20885
ownC -> Nextc
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-03-19 22:02:21 -06:00
Matthew Setter d4058b73c2
Update the occ:encrypt-all prompt
The message isn't as clear, nor as succinct, as it could be.
Given that, this commit seeks to address both those points.
This commit was prompted by https://github.com/owncloud/documentation/pull/2835.

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-03-19 22:02:14 -06:00
Morris Jobke edd55b0ea9
Use SystemConfig instead of AllConfig for DB stuff
* preparation for followup PRs to clean up the DB bootstrapping

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-03-19 15:53:49 -06:00