Compare commits

..

988 Commits

Author SHA1 Message Date
Bjoern Schiessle d8253d64a2 fix url
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2017-10-17 11:31:46 +02:00
Lukas Reschke cf82aa3f30 Merge pull request #5992 from nextcloud/stable10-bump-version
[stable10] Update version
2017-08-06 20:24:49 +02:00
Lukas Reschke 75f26b2c86 Update version
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2017-08-05 20:12:09 +02:00
Morris Jobke c03b880abf Merge pull request #5885 from nextcloud/10-5871
[stable10] Enable postgres on drone again
2017-07-26 22:32:17 +02:00
Morris Jobke 7f1eadc5fe Enable postgres on drone again
* use proper password

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-07-26 14:21:45 +02:00
Lukas Reschke 8b490e8a5c Merge pull request #5729 from nextcloud/bump-stable10-version
10.0.6RC1
2017-07-17 08:19:50 +02:00
Lukas Reschke 0f434e109d 10.0.6RC1
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2017-07-16 11:15:10 +02:00
Morris Jobke 32d6c24dde Merge pull request #5732 from nextcloud/stable10-fix-drone
[stable10] fix drone for 0.7
2017-07-16 11:11:23 +02:00
Morris Jobke 65eeaa11d7 Add redis support to our CI jobs
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-07-16 10:38:16 +02:00
Morris Jobke 1ec32eeb78 Add branch limitation
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-07-14 13:08:42 +02:00
Morris Jobke 103b2f14f9 Fix drone
Fix service container host name
check current folder
Fix more hostnames

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-07-14 13:05:11 +02:00
Morris Jobke e674ace72d Merge pull request #4802 from nextcloud/stable10-backport-4800
[stable10] SSL menu is now shown for files_external
2017-05-11 09:06:01 -05:00
Morris Jobke cf82590c8e SSL menu is now shown for files_external
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-05-10 16:11:37 -05:00
Roeland Jago Douma 07421b8218 Merge pull request #4460 from nextcloud/backport-4457-fix-storage-info-with-wrong-casing-10
[stable10] Fix the storage info and other checks when the user has wrong casing
2017-04-24 19:56:58 +02:00
Morris Jobke d606d3eb0b Merge pull request #4475 from nextcloud/backport-4473-10
[stable10] Add unit tests for mounts of delete users
2017-04-24 13:19:34 -03:00
Robin Appelman b884c25950 filter out oc_mounts results from non existing users
Signed-off-by: Robin Appelman <robin@icewind.nl>
2017-04-24 16:50:38 +02:00
Joas Schilling 3bfc1404b8 Add unit tests for mounts of delete users
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-04-24 16:48:21 +02:00
Joas Schilling 2f312bc01b Fix the storage info and other checks when the user has wrong casing
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-04-24 10:46:07 +02:00
Lukas Reschke 0bd0635ee2 Merge pull request #4420 from nextcloud/stable10-final-version
[stable10] Increase version to final 10.0.5
2017-04-21 19:16:11 +02:00
Lukas Reschke 766eb76285 Increase version to final 10.0.5
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2017-04-21 12:13:28 +02:00
Lukas Reschke d1b390a28f 10.0.5 RC2
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2017-04-18 11:09:51 +02:00
Joas Schilling ab0d4144d3 Merge pull request #4239 from nextcloud/4094-stable10
[stable10] Fix LDAP description
2017-04-06 14:18:55 +02:00
Marius Blüm be05ef9e1c Fix LDAP description
Signed-off-by: Marius Blüm <marius@lineone.io>
2017-04-06 10:30:49 +02:00
Morris Jobke 0a8a9ee200 Merge pull request #4231 from nextcloud/stable10-increase-version
[stable10] Increase to 10.0.5 RC1
2017-04-06 00:31:17 -05:00
Morris Jobke 0693536a8c Merge pull request #4227 from nextcloud/stable10-error-messages
[Stable10] error messages
2017-04-05 21:33:15 -05:00
Lukas Reschke 84dabd4f79 [stable10] Increase to 10.0.5 RC1
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2017-04-05 23:29:27 +02:00
Lukas Reschke 1f00bddc04 Replace unecessary unescaped prints with print
There's no need to have those unescaped from what I can see.

Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2017-04-05 23:14:45 +02:00
Lukas Reschke 1252eede01 Remove verbose error message
There's no need to have this included in the error message.

Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2017-04-05 23:14:41 +02:00
Joas Schilling b0ab3b628a Merge pull request #4168 from nextcloud/backport-4166-invalid-int-for-transparency-on-calendars-10
[stable10] Make sure transparency is an integer when saving a calendar
2017-04-03 11:00:28 +02:00
Joas Schilling 7bdd16261d Make sure transparency is an integer when saving a calendar
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-03-30 18:03:20 +02:00
Nextcloud bot e558816b84 [tx-robot] updated from transifex 2017-03-26 01:07:21 +00:00
Nextcloud bot 31cdd74258 [tx-robot] updated from transifex 2017-03-25 01:08:03 +00:00
Nextcloud bot b1461017da [tx-robot] updated from transifex 2017-03-24 01:08:21 +00:00
Nextcloud bot f30b428265 [tx-robot] updated from transifex 2017-03-23 01:08:13 +00:00
Nextcloud bot 350fa735e9 [tx-robot] updated from transifex 2017-03-22 21:14:24 +00:00
Nextcloud bot 374653f46b [tx-robot] updated from transifex 2017-03-22 01:08:12 +00:00
Lukas Reschke 8ba57b5973 Merge pull request #3970 from nextcloud/stable10-fix-branding
[stable10] Fix branding and show Nextcloud
2017-03-21 13:55:17 +01:00
Lukas Reschke 13fbd9b3c5 [stable10] Fix branding
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2017-03-21 12:23:33 +01:00
Nextcloud bot 8aba8f7dfb [tx-robot] updated from transifex 2017-03-21 01:08:34 +00:00
Nextcloud bot b352f338bb [tx-robot] updated from transifex 2017-03-20 01:08:00 +00:00
Nextcloud bot f842dec263 [tx-robot] updated from transifex 2017-03-19 01:08:37 +00:00
Nextcloud bot d7647177c3 [tx-robot] updated from transifex 2017-03-18 01:08:09 +00:00
Nextcloud bot baa0028638 [tx-robot] updated from transifex 2017-03-17 01:08:00 +00:00
Nextcloud bot 6123ad2ea9 [tx-robot] updated from transifex 2017-03-16 01:07:56 +00:00
Nextcloud bot d81fc00268 [tx-robot] updated from transifex 2017-03-15 01:08:07 +00:00
Nextcloud bot a6b82badd1 [tx-robot] updated from transifex 2017-03-14 01:08:04 +00:00
Nextcloud bot 3a5a8a9f3f [tx-robot] updated from transifex 2017-03-13 01:08:37 +00:00
Nextcloud bot f4417f14ab [tx-robot] updated from transifex 2017-03-12 01:08:24 +00:00
Nextcloud bot b66ac3a5e1 [tx-robot] updated from transifex 2017-03-11 01:08:07 +00:00
Nextcloud bot 8f7af2f4ac [tx-robot] updated from transifex 2017-03-10 01:08:21 +00:00
Nextcloud bot 8c6ceca3bd [tx-robot] updated from transifex 2017-03-09 01:08:06 +00:00
Nextcloud bot 670a6946b0 [tx-robot] updated from transifex 2017-03-08 01:08:04 +00:00
Nextcloud bot 9442eb8014 [tx-robot] updated from transifex 2017-03-07 01:07:57 +00:00
Nextcloud bot 1e5021deb1 [tx-robot] updated from transifex 2017-03-06 01:08:16 +00:00
Nextcloud bot b85e943ce1 [tx-robot] updated from transifex 2017-03-04 01:07:59 +00:00
Nextcloud bot 8257050adc [tx-robot] updated from transifex 2017-03-03 01:08:04 +00:00
Nextcloud bot adfa249110 [tx-robot] updated from transifex 2017-03-02 16:49:11 +00:00
Nextcloud bot cc08a058c5 [tx-robot] updated from transifex 2017-03-02 01:07:49 +00:00
Joas Schilling 4cd5d8975c Merge pull request #3664 from nextcloud/fix-typo-in-footer
[stable10] Fix typo in advertisment footer
2017-03-01 13:20:03 +01:00
Joas Schilling 37509d1824 Fix typo in advertisment footer
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-03-01 09:48:47 +01:00
Nextcloud bot 453e52d553 [tx-robot] updated from transifex 2017-03-01 01:08:00 +00:00
Nextcloud bot b55fcc2b9c [tx-robot] updated from transifex 2017-02-28 01:08:13 +00:00
Nextcloud bot be63ff0821 [tx-robot] updated from transifex 2017-02-27 01:20:09 +00:00
Lukas Reschke 4520f350a0 10.0.4
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2017-02-26 19:41:45 +01:00
Nextcloud bot e5150a27fb [tx-robot] updated from transifex 2017-02-26 01:24:31 +00:00
Nextcloud bot fb0565de9a [tx-robot] updated from transifex 2017-02-25 01:25:28 +00:00
Nextcloud bot 95645fc1d3 [tx-robot] updated from transifex 2017-02-24 01:21:57 +00:00
Nextcloud bot 7a6619596d [tx-robot] updated from transifex 2017-02-23 01:19:09 +00:00
Nextcloud bot 3a2b030d21 [tx-robot] updated from transifex 2017-02-22 01:12:44 +00:00
Lukas Reschke 81405147c0 Merge pull request #3561 from nextcloud/fix-misleading-wording-stable10
[stable10] Fix misleading wording: searching is affected, not user access.
2017-02-21 21:38:35 +01:00
Arthur Schiwon b2eab32060 Fix misleading wording: searching is affected, not user access.
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2017-02-21 12:04:51 +01:00
Nextcloud bot 08437ae0f8 [tx-robot] updated from transifex 2017-02-21 01:09:05 +00:00
Nextcloud bot c4d3c5afce [tx-robot] updated from transifex 2017-02-20 01:07:54 +00:00
Nextcloud bot 8ec56ebe9d [tx-robot] updated from transifex 2017-02-19 01:07:54 +00:00
Nextcloud bot 0311976831 [tx-robot] updated from transifex 2017-02-18 01:08:42 +00:00
Nextcloud bot 07bbd5d4a4 [tx-robot] updated from transifex 2017-02-17 01:08:15 +00:00
Lukas Reschke b05312a699 v10.0.4
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2017-02-17 01:45:28 +01:00
Nextcloud bot b17636dc94 [tx-robot] updated from transifex 2017-02-16 01:08:01 +00:00
Nextcloud bot 335b8901cb [tx-robot] updated from transifex 2017-02-15 01:07:46 +00:00
Nextcloud bot ff591d5a64 [tx-robot] updated from transifex 2017-02-14 01:07:39 +00:00
Roeland Jago Douma b3e42a6609 Merge pull request #3441 from nextcloud/backport-oc-26963-10
[stable10] Make sure invalid images don't flood the log file
2017-02-13 10:14:54 +01:00
Lukas Reschke 02cccc1fcf Merge pull request #3446 from nextcloud/stable10-add-integration-tests-for-dav
[stable10] Add integration tests for legacy DAV endpoints
2017-02-13 10:11:34 +01:00
Nextcloud bot ee2bd31f65 [tx-robot] updated from transifex 2017-02-13 01:07:28 +00:00
Nextcloud bot 31a8461ff3 [tx-robot] updated from transifex 2017-02-12 01:07:44 +00:00
Nextcloud bot 28624ee644 [tx-robot] updated from transifex 2017-02-11 01:07:44 +00:00
Victor Dubiniuk 111ca17d67 Check if color exists in palette before using it
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2017-02-10 16:29:04 +01:00
Lukas Reschke f123f925da Add integration tests for legacy DAV endpoints
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2017-02-10 16:20:33 +01:00
Joas Schilling 6f0e38ac72 Make sure invalid images don't flood the log file
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-02-10 13:46:22 +01:00
Lukas Reschke d0e40976f3 Merge pull request #3435 from nextcloud/stable10-increase-version
Increase version to 10.0.4 RC1
2017-02-10 12:53:42 +01:00
Lukas Reschke 7fc2901c85 Merge pull request #3432 from nextcloud/backport-34030-fix-ios-client-detection-10
[stable10] Fix detection of the new iOS app
2017-02-10 11:51:18 +01:00
Björn Schießle 6b55af03a4 Merge pull request #3427 from nextcloud/stable10-set-vendor-during-install
[stable10] Set vendor during install
2017-02-10 11:47:10 +01:00
Lukas Reschke 260ea2fd27 Increase version to 10.0.4 RC1
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2017-02-10 11:01:21 +01:00
Joas Schilling 8b9f0ac56e Fix detection of the new iOS app
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-02-10 10:18:33 +01:00
Morris Jobke 2b405e5098 Set vendor during install
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-02-09 23:56:58 -06:00
Nextcloud bot d13f1d80a3 [tx-robot] updated from transifex 2017-02-10 01:07:19 +00:00
Morris Jobke b2c8e22429 Merge pull request #3404 from nextcloud/fix-welcome.txt
replace ownCloud with Nextcloud
2017-02-08 21:00:58 -06:00
Nextcloud bot 3e3021d658 [tx-robot] updated from transifex 2017-02-09 01:07:28 +00:00
Bjoern Schiessle 7c53ae3435 fix some integration tests
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2017-02-08 17:39:03 +01:00
Bjoern Schiessle 6177891ecd replace ownCloud with Nextcloud
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2017-02-08 15:14:17 +01:00
Nextcloud bot 137a80db0e [tx-robot] updated from transifex 2017-02-08 01:07:26 +00:00
Morris Jobke 3f00f32d45 Merge pull request #3398 from nextcloud/backport-3359-fix-sharing-app-description-10
[stable10] Fix Sharing app description
2017-02-07 10:47:48 -06:00
Joas Schilling 63eb2e6067 Fix Sharing app description
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-02-07 14:36:27 +01:00
Nextcloud bot bf0e26ae0f [tx-robot] updated from transifex 2017-02-07 01:09:12 +00:00
Nextcloud bot 90169090ec [tx-robot] updated from transifex 2017-02-06 01:07:21 +00:00
Nextcloud bot f2b7edc99f [tx-robot] updated from transifex 2017-02-05 01:07:21 +00:00
Nextcloud bot 33d59737d0 [tx-robot] updated from transifex 2017-02-04 01:07:37 +00:00
Nextcloud bot e114647653 [tx-robot] updated from transifex 2017-02-03 01:07:38 +00:00
Nextcloud bot b03e604a92 [tx-robot] updated from transifex 2017-02-02 01:07:22 +00:00
Nextcloud bot 84f8a97c3a [tx-robot] updated from transifex 2017-02-01 01:07:15 +00:00
Nextcloud bot 12df63a29f [tx-robot] updated from transifex 2017-01-31 01:07:22 +00:00
Nextcloud bot dee84d0cf5 [tx-robot] updated from transifex 2017-01-30 01:07:30 +00:00
Nextcloud bot 45358e2c98 [tx-robot] updated from transifex 2017-01-29 01:07:11 +00:00
Nextcloud bot c5405c4a14 [tx-robot] updated from transifex 2017-01-28 01:07:18 +00:00
Nextcloud bot 0e9b23e8ee [tx-robot] updated from transifex 2017-01-27 01:07:39 +00:00
Nextcloud bot c029f508f4 [tx-robot] updated from transifex 2017-01-26 01:07:37 +00:00
Nextcloud bot 0092f1b868 [tx-robot] updated from transifex 2017-01-25 01:10:19 +00:00
Nextcloud bot 64f43d298c [tx-robot] updated from transifex 2017-01-24 01:07:35 +00:00
Nextcloud bot b1ba56032c [tx-robot] updated from transifex 2017-01-23 00:17:57 +00:00
Nextcloud bot 4a2600ae44 [tx-robot] updated from transifex 2017-01-22 01:08:09 +00:00
Nextcloud bot 976246ddf6 [tx-robot] updated from transifex 2017-01-21 01:08:03 +00:00
Nextcloud bot 0afb19abc5 [tx-robot] updated from transifex 2017-01-20 01:07:57 +00:00
Nextcloud bot a575343f9d [tx-robot] updated from transifex 2017-01-18 01:07:55 +00:00
Nextcloud bot 28cfbb475c [tx-robot] updated from transifex 2017-01-17 01:08:12 +00:00
Nextcloud bot 9a7eb86080 [tx-robot] updated from transifex 2017-01-16 01:16:09 +00:00
Lukas Reschke 4aa1c4ad04 Bump to 10.0.3
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2017-01-15 16:50:09 +01:00
Nextcloud bot f88395969d [tx-robot] updated from transifex 2017-01-12 01:08:01 +00:00
Nextcloud bot 300e5d6184 [tx-robot] updated from transifex 2017-01-11 15:20:39 +00:00
Roeland Jago Douma 0317dfd188 Merge pull request #2995 from nextcloud/stable10-10.0.3-rc1
Increase version to 10.0.3 RC1
2017-01-10 07:55:22 +01:00
Lukas Reschke 0465ad2897 Increase version to 10.0.3 RC1
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2017-01-09 21:15:31 +01:00
Roeland Jago Douma 1f2bb5dd9f Merge pull request #2989 from nextcloud/backport-2933-dont-link-to-oc-forum-10
[stable10] Don't link to the oC forum
2017-01-09 19:36:48 +01:00
Joas Schilling 4d05a83e79 Don't link to the oC forum
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-01-09 14:59:38 +01:00
Nextcloud bot f8db9102e7 [tx-robot] updated from transifex 2017-01-09 08:25:16 +00:00
Nextcloud bot 9b0cbe3efb [tx-robot] updated from transifex 2017-01-05 13:10:10 +00:00
Nextcloud bot 084e66f8c0 [tx-robot] updated from transifex 2017-01-04 12:09:59 +00:00
Nextcloud bot 7d541831e0 [tx-robot] updated from transifex 2017-01-03 01:08:04 +00:00
Nextcloud bot d5e35b8348 [tx-robot] updated from transifex 2017-01-02 01:07:49 +00:00
Nextcloud bot 11560f7856 [tx-robot] updated from transifex 2017-01-01 01:07:46 +00:00
Nextcloud bot ced9bcaf0d [tx-robot] updated from transifex 2016-12-31 01:08:52 +00:00
Christoph Wurst b9b147c3e0 Merge pull request #2884 from nextcloud/stable10-version
Update version to 9.1.3
2016-12-30 14:38:41 +01:00
Nextcloud bot 3a22ccffa6 [tx-robot] updated from transifex 2016-12-30 01:07:44 +00:00
Lukas Reschke 549662202f Update version to 9.1.3
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2016-12-29 16:33:24 +01:00
Nextcloud bot a85bc92767 [tx-robot] updated from transifex 2016-12-29 01:08:17 +00:00
Nextcloud bot af1f24c1d8 [tx-robot] updated from transifex 2016-12-28 01:07:58 +00:00
Nextcloud bot 00e4917034 [tx-robot] updated from transifex 2016-12-27 01:07:56 +00:00
Nextcloud bot d03ad887ee [tx-robot] updated from transifex 2016-12-26 01:10:13 +00:00
Roeland Jago Douma fa6f216cd8 Merge pull request #2826 from nextcloud/stable10-2659
[stable10] Fix overwriting parameter
2016-12-22 15:08:58 +01:00
Roeland Jago Douma f55b0e64f0 Fix overwriting parameter
Fixes #2641

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2016-12-22 14:05:26 +01:00
Lukas Reschke 9b4fe215ed Merge pull request #2810 from nextcloud/stable10-2757
[stable10] Also check in cron for old php version
2016-12-22 10:08:58 +01:00
Nextcloud bot 374e1c63c5 [tx-robot] updated from transifex 2016-12-22 01:07:36 +00:00
Roeland Jago Douma 5c9dcbbec0 Also check in cron for old php version
Fixes #2756

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2016-12-21 20:36:22 +01:00
John Molakvoæ f95d432b76 Merge pull request #2755 from nextcloud/fix-2731-stable10
make sure that header is always positioned at the top
2016-12-21 11:30:05 +01:00
Nextcloud bot fd317e5ce0 [tx-robot] updated from transifex 2016-12-21 01:07:26 +00:00
Morris Jobke b97baa4c8a Merge pull request #2794 from nextcloud/stable10-update-drone-images
[stable10] update drone images to latest version
2016-12-21 01:09:55 +01:00
Morris Jobke 403f7a47f8 [stable10] update drone images to latest version
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2016-12-20 23:35:40 +01:00
Nextcloud bot eb6df7b07d [tx-robot] updated from transifex 2016-12-20 12:02:40 +00:00
Bjoern Schiessle 2024f67dce make sure that header is always positioned at the top 2016-12-19 14:50:44 +01:00
Roeland Jago Douma c8d391a6a7 Merge pull request #2702 from nextcloud/enoch85-patch-1
[10] Do not connect to database before creating it
2016-12-16 16:09:16 +01:00
Lukas Reschke d739dfb8cb Merge pull request #2464 from nextcloud/backport-1973-dont-disable-shipped-apps-but-throw-instead
[stable10] Throw an exception when a shipped app was not replaced before the update
2016-12-16 13:29:25 +01:00
Lukas Reschke 0d72a894ab Merge pull request #2697 from nextcloud/shared-scanner-unmasked-10
[10] use unmasked permissions in shared scanner
2016-12-16 13:14:39 +01:00
Roeland Jago Douma 1b0155cef2 Merge pull request #2462 from nextcloud/stable10-1513
[stable10] Return ETag and OC-ETag in case of a move (#25683)
2016-12-16 08:16:50 +01:00
Joas Schilling 23521c5227 Do not connect to database before creating it
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-12-15 18:28:46 +01:00
Robin Appelman 1afeb83f7f Add integration tests for uploading files to a permission limited share
Signed-off-by: Robin Appelman <robin@icewind.nl>
2016-12-15 16:01:34 +01:00
Robin Appelman 24396e4fa3 use unmasked permissions in shared scanner
Signed-off-by: Robin Appelman <robin@icewind.nl>
2016-12-15 16:01:30 +01:00
Roeland Jago Douma 9ed3f66147 Merge pull request #2684 from nextcloud/add-tests-for-legacy-caldav-stable10
[stable10] Perform CalDAV and CardDAV tests against old endpoint
2016-12-15 10:54:04 +01:00
Lukas Reschke f823024416 Add test execution against legacy DAV backend
Since the tests to quite hugely rely on sync tokens being present I also included those in the legacy backend.
2016-12-15 02:42:40 +01:00
Morris Jobke 7732c497fd Merge pull request #2667 from nextcloud/backport-2070-use-correct-l10n-for-settings-menu
[stable10] Get correct L10N for Settings Manager
2016-12-14 11:36:23 -06:00
Joas Schilling 54b081226b Get correct L10N for Settings Manager
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-12-14 12:30:05 +01:00
Morris Jobke 9ff733c9a9 Merge pull request #2592 from nextcloud/backport-1268
Lower the role name before using it
2016-12-12 18:48:07 -06:00
Nextcloud bot a7b44f2a7c [tx-robot] updated from transifex 2016-12-12 01:07:25 +00:00
Nextcloud bot eb55cd02eb [tx-robot] updated from transifex 2016-12-11 01:07:24 +00:00
Nextcloud bot faff30c227 [tx-robot] updated from transifex 2016-12-10 01:07:22 +00:00
Joas Schilling d84234da13 Lower the role name before using it
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-12-09 16:50:37 +01:00
Morris Jobke e56501420d Merge pull request #2591 from nextcloud/backport-1268
Use proper ALTER ROLE syntax
2016-12-09 16:30:10 +01:00
Roeland Jago Douma 113a743b91 Use proper ALTER ROLE syntax
Fixes #1260

See https://www.postgresql.org/docs/9.0/static/sql-alterrole.html
2016-12-09 16:04:17 +01:00
Lukas Reschke 6849d7235e 10.0.2
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2016-12-09 11:04:36 +01:00
blizzz 29bb1cedc6 Merge pull request #2562 from nextcloud/backport-2561-save-timezone-on-login
[stable10] Save the timezone on login again
2016-12-09 10:40:38 +01:00
Nextcloud bot d379adb9f8 [tx-robot] updated from transifex 2016-12-09 01:07:25 +00:00
Joas Schilling 5fb1bd01ff Save the timezone on login again
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-12-08 10:53:50 +01:00
Nextcloud bot d9655a1f6d [tx-robot] updated from transifex 2016-12-08 01:07:33 +00:00
Lukas Reschke e74fb43271 v10.0.2 RC2
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2016-12-07 15:46:24 +01:00
Nextcloud bot 84f03c1882 [tx-robot] updated from transifex 2016-12-07 01:07:53 +00:00
Morris Jobke a314d50367 Merge pull request #2525 from nextcloud/stable10-2521
[stable10] Document updater channel & check for correct PHP version in updater
2016-12-06 12:58:35 +01:00
Morris Jobke 5fd960b370 Document updater channel & check for correct PHP version in updater
* see https://github.com/nextcloud/updater/issues/53

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2016-12-06 11:22:00 +01:00
Roeland Jago Douma fcb7a1e458 Merge pull request #2522 from nextcloud/show-old-php-info
[stable10] Show info in updater if running PHP < 5.6
2016-12-06 08:40:10 +01:00
Nextcloud bot 5850424c0c [tx-robot] updated from transifex 2016-12-06 01:07:26 +00:00
Morris Jobke 035be23f72 Show info in updater if running PHP < 5.6
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2016-12-06 00:06:16 +01:00
Lukas Reschke 8a65b56a03 Merge pull request #2465 from nextcloud/backport-1972-invalid-files-from-scanner
[stable10] Make sure we don't scan files that can not be accessed
2016-12-05 23:28:54 +01:00
Lukas Reschke 24357e0543 Merge pull request #2517 from nextcloud/stable10-rc-1
10.0.2 RC1
2016-12-05 22:20:36 +01:00
Lukas Reschke dc60194b1c 10.0.2 RC1
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2016-12-05 21:48:10 +01:00
Christoph Wurst e4550006d2 Merge pull request #2503 from nextcloud/fix-1764-enter-on-share-mail-input
Send the share link by mail on pressing enter instead of reloading th…
2016-12-05 15:10:32 +01:00
Joas Schilling 7bd4eb7c5b Send the share link by mail on pressing enter instead of reloading the page
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-12-05 11:26:53 +01:00
Nextcloud bot 63f805826b [tx-robot] updated from transifex 2016-12-05 01:07:48 +00:00
Nextcloud bot bd6c00ee26 [tx-robot] updated from transifex 2016-12-04 01:07:38 +00:00
Lukas Reschke cf752bea22 Merge pull request #2485 from nextcloud/shared-storage-mask-10
[10] 	apply permissions mask for shared storage
2016-12-03 23:35:40 +01:00
Nextcloud bot c20532c01e [tx-robot] updated from transifex 2016-12-03 01:07:34 +00:00
Roeland Jago Douma 4994110890 Merge pull request #2489 from nextcloud/update-cache-success-10
[10] only update the cache if the storage operation succeeds
2016-12-02 20:06:44 +01:00
Robin Appelman d84f88b041 only update the cache if the storage operation succeeds
Signed-off-by: Robin Appelman <robin@icewind.nl>
2016-12-02 18:56:11 +01:00
Robin Appelman b8d0975a0a update test
Signed-off-by: Robin Appelman <robin@icewind.nl>
2016-12-02 18:04:40 +01:00
Robin Appelman 2dd97bb52d apply permissions mask for shared storage
Signed-off-by: Robin Appelman <robin@icewind.nl>
2016-12-02 18:02:34 +01:00
Joas Schilling eefd45875e Make sure we don't scan files that can not be accessed
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-12-02 11:14:00 +01:00
Joas Schilling 6c1278c1cc Merge pull request #2463 from nextcloud/stable10-2306
[stable10] Don't log the user password in case something goes wrong
2016-12-02 10:47:45 +01:00
Morris Jobke ed71ecc2b2 Merge pull request #2452 from nextcloud/stable10-1826
[stable10] Fix post_unshareFromSelf hook parameter format
2016-12-02 10:41:57 +01:00
Morris Jobke 8f8250caf4 Merge pull request #2460 from nextcloud/stable10-2010
[stable10] Fixed disappearing of share info in file view
2016-12-02 10:39:55 +01:00
Morris Jobke 8eb39667bb Merge pull request #2454 from nextcloud/stable10-1872
[stable10] Fix misleading SSL/TLS SMTP email configuration
2016-12-02 10:38:51 +01:00
Morris Jobke 37aa1da951 Merge pull request #2456 from nextcloud/stable10-1658
[stable10] Default to empty string
2016-12-02 10:38:07 +01:00
Morris Jobke a61c69db8c Merge pull request #2451 from nextcloud/stable10-2410
[stable10] Fix missing text for downloads on mobile
2016-12-02 10:37:25 +01:00
Joas Schilling d74af7f317 Merge pull request #2459 from nextcloud/stable10-2084
[stable10] Fixes files_drop when avatars are disabled
2016-12-02 10:21:11 +01:00
Joas Schilling 3060fc8597 Show all in one message
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-12-02 10:09:14 +01:00
Jan-Christoph Borchardt 4aa30464df add explanatory text of what to do on app version error
Signed-off-by: Jan-Christoph Borchardt <hey@jancborchardt.net>
2016-12-02 10:08:47 +01:00
Joas Schilling 27d5142b1c Throw an exception when a shipped app was not replaced before the update
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-12-02 10:07:15 +01:00
Roeland Jago Douma 1d5049acbe Merge pull request #2457 from nextcloud/stable10-1712
[stable10] Tear down FS between cron jobs (#26223)
2016-12-02 08:16:24 +01:00
Roeland Jago Douma 7be6326852 Merge pull request #2449 from nextcloud/stable10-1745
[stable10] fix typo
2016-12-02 08:14:47 +01:00
Nextcloud bot 0a10dadef6 [tx-robot] updated from transifex 2016-12-02 01:07:43 +00:00
Joas Schilling 366df29340 Don't log the user password in case something goes wrong
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-12-02 01:41:04 +01:00
Thomas Müller 5f0625ff54 Return ETag and OC-ETag in case of a move (#25683)
Downstreaming of https://github.com/owncloud/core/pull/25683

Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2016-12-02 01:29:35 +01:00
Michael Jobst 86ef7c8185 Fixed disappearing of share info in file view 2016-12-02 01:21:09 +01:00
Roeland Jago Douma c6c1bd1e19 Fixes files_drop when avatars are disabled
Fixes: #2080

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2016-12-02 01:16:33 +01:00
Vincent Petry 4543590da1 [master] Tear down FS between cron jobs (#26223)
Because some cron jobs do not always properly clean up their FS usage
and others might not clean up before setting up the FS, this could
cause potential side effects.

To make sure we exclude side effects, we tear down the FS between cron
jobs.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2016-12-02 01:12:05 +01:00
Lukas Reschke 5efb7ed043 Default to empty string
Otherwise `null` is returned which leads to a ton of similar error messages if the log condition setting is enabled.:

```
{"reqId":"3wVBarnDfOV3qkI1bVCU","remoteAddr":"89.98.78.41","app":"PHP","message":"hash_equals(): Expected user_string to be a string, null given at \/var\/www\/html\/lib\/private\/Log.php#275","level":3,"time":"2016-10-07T14:22:15+00:00","method":"PROPFIND","url":"\/remote.php\/webdav\/","user":"icewind"}
```
2016-12-02 01:09:04 +01:00
Joas Schilling ff7cb2f16a Fix misleading SSL/TLS SMTP email configuration
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-12-02 01:05:54 +01:00
Vincent Petry f07c209cb9 Fix post_unshareFromSelf hook parameter format
When unsharing from self in a group share situation, the share items
passed to the post_unshareFromSelf hook were using the wrong format in
which the attribute names (ex: "share_type") have non camel-case format.

This fix makes sure that in group sharing case we use the correct
format. It looks like the code was already producing it but in
array_merge it was not using it and adding the unprocessed one.
2016-12-02 00:50:32 +01:00
Morris Jobke f39a308527 Fix missing text for downloads on mobile
* fixes #2362

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2016-12-02 00:47:11 +01:00
Thomas Citharel 1700224b62 fix typo
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2016-12-02 00:36:57 +01:00
Morris Jobke 1c4a1b8807 Merge pull request #2445 from nextcloud/stable10-detect-also-a-400-status
[stable10] Catch status code 400
2016-12-01 22:56:39 +01:00
Roeland Jago Douma c0f5f0a029 Merge pull request #2438 from nextcloud/stable10-dont-allow-subfolders-for-write-only-shares
[stable10] On write-only shares do not allow to specify subfolders
2016-12-01 20:19:52 +01:00
Lukas Reschke 461b277742 [stable10] Catch status code 400
In case the server returns a statuscode 400 we should also gracefully return to the home directory.

Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2016-12-01 19:15:19 +01:00
Lukas Reschke d012965053 Merge pull request #2440 from nextcloud/stable10-optimize-createParentDirectories
[stable10] Prevent endless loop in \OC\Files\View::createParentDirect…
2016-12-01 19:02:31 +01:00
Lukas Reschke 072794d78d [stable10] Prevent endless loop in \OC\Files\View::createParentDirectories
\OC\Files\View::createParentDirectories was previously prone to an endless loop. If a path such as /foo/existingfile.txt/bar/foo was passed and existingfile.txt existed in foo the loop was never left and running until the PHP process timed out.

This commit changes the logic to a foreach loop over an array and additionally additional error handling using is_file.

Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2016-12-01 16:53:26 +01:00
Lukas Reschke 4045c7be73 [stable10] On write-only shares do not allow to specify subfolders
In case of a write-only share we should not allow to specify a subfolder as this is unexpected behaviour.

Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2016-12-01 16:12:25 +01:00
Nextcloud bot db2206450f [tx-robot] updated from transifex 2016-12-01 01:07:24 +00:00
Nextcloud bot 7a32bd49d8 [tx-robot] updated from transifex 2016-11-30 14:18:15 +00:00
Nextcloud bot 1e818369a7 [tx-robot] updated from transifex 2016-11-30 01:07:24 +00:00
Nextcloud bot 823f480c83 [tx-robot] updated from transifex 2016-11-29 17:57:54 +00:00
Nextcloud bot cb910bfacc [tx-robot] updated from transifex 2016-11-29 17:03:32 +00:00
Nextcloud bot 506196af6c [tx-robot] updated from transifex 2016-11-29 01:06:54 +00:00
Nextcloud bot 74072d75d5 [tx-robot] updated from transifex 2016-11-28 09:52:03 +00:00
Nextcloud bot d1b0300d45 [tx-robot] updated from transifex 2016-11-28 09:31:09 +00:00
Nextcloud bot feefc9ed0b [tx-robot] updated from transifex 2016-11-28 01:07:09 +00:00
Nextcloud bot 30c4f46d2a [tx-robot] updated from transifex 2016-11-27 01:07:19 +00:00
Nextcloud bot 14a003eb32 [tx-robot] updated from transifex 2016-11-26 01:07:06 +00:00
Lukas Reschke eefc8ce961 Merge pull request #2320 from nextcloud/fix-getFileSizeViaCOM-regression
[stable10] Fix get file size via com regression
2016-11-24 22:21:42 +01:00
Morris Jobke 28eed678e0 Fix regressiong from #2048
* fixes https://github.com/nextcloud/server/pull/2048#issuecomment-262826162

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2016-11-24 20:54:33 +01:00
Morris Jobke f7a505ded6 Merge pull request #2291 from nextcloud/stable10-imagescale-fix
[stable10] Workaround for PHP bug when calling imagescale
2016-11-24 12:02:36 +01:00
Joas Schilling f7388575a8 Merge pull request #2295 from nextcloud/backport-2137-phpunit4-compatibility
Add a wrapper to allow phpunit4 to run the code again
2016-11-24 10:00:09 +01:00
Joas Schilling ac5a6b2d30 Add a magic wrapper from hell to allow phpunit4 to run the code again
Remove this once phpunit 5 is the lowest supported version, by reverting:
https://github.com/nextcloud/server/pull/2137

Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-11-24 09:11:47 +01:00
Julius Haertl c96bbd4953 Workaround for PHP bug when calling imagescale
Signed-off-by: Julius Haertl <jus@bitgrid.net>
2016-11-23 21:54:55 +01:00
Nextcloud bot fee91b1073 [tx-robot] updated from transifex 2016-11-22 01:07:03 +00:00
Nextcloud bot c688613f5f [tx-robot] updated from transifex 2016-11-21 01:07:05 +00:00
Nextcloud bot cd358b049d [tx-robot] updated from transifex 2016-11-20 01:06:51 +00:00
Nextcloud bot 34d879bc14 [tx-robot] updated from transifex 2016-11-19 01:06:51 +00:00
Nextcloud bot 34f07f2bdd [tx-robot] updated from transifex 2016-11-18 01:07:13 +00:00
Morris Jobke 9386e5b232 Merge pull request #2121 from nextcloud/stable10_2100
[Stable10] Fixes not allowed increasing of link share permissions
2016-11-17 18:55:40 +01:00
Morris Jobke 915334a44b Merge pull request #2186 from nextcloud/stable10-2122
[stable10] Hack to prevent warning for read-only wrapper in public links
2016-11-17 18:34:53 +01:00
Morris Jobke 14709ca7f7 Merge pull request #2185 from nextcloud/stable10-icons-audio-video-off
[stable10] add icons for audio mute and video off
2016-11-17 17:41:14 +01:00
Morris Jobke fcb6386b04 only use one kind of hack for the storage wrappers of the sharing code
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2016-11-17 17:00:56 +01:00
Vincent Petry db8b66c546 Hack to prevent warning for read-only wrapper in public links
Storage wrappers should normally always be registered inside a presetup
hook. However in the public link scenario this is not possible and
there is currently no good alternative with the current architecture.

Instead of logging a warning every time, this fix prevents the warning
to be shown but also adds a FIXME in the code for the future. This is
ok because this app is already using private/internal APIs at the
moment and should be reworked properly in the future.
2016-11-17 17:00:49 +01:00
Jan-Christoph Borchardt 32773b4b5e add icons for audio mute and video off
Signed-off-by: Jan-Christoph Borchardt <hey@jancborchardt.net>
2016-11-17 16:49:09 +01:00
Nextcloud bot 2600bb2dbb [tx-robot] updated from transifex 2016-11-17 01:07:09 +00:00
Morris Jobke 4d0037c461 Merge pull request #2091 from nextcloud/fix_1862
Do not request node when creating a user-group share
2016-11-17 00:42:50 +01:00
Roeland Jago Douma e9c41b25a0 Merge pull request #2142 from nextcloud/stable10-icon-background
[stable10] add dark background fade to icons to make them visible on light backgrounds
2016-11-17 00:01:48 +01:00
Roeland Jago Douma d2ea6f6d5c Merge pull request #2155 from nextcloud/stable10-federated-cloud-id
[stable10] specify Federated Cloud ID syntax
2016-11-16 16:14:34 +01:00
Jan-Christoph Borchardt fadc25134d specify Federated Cloud ID syntax
Signed-off-by: Jan-Christoph Borchardt <hey@jancborchardt.net>
2016-11-16 11:57:13 +01:00
Jan-Christoph Borchardt 9789d4985a add dark background fade to icons to make them visible on light backgrounds
Signed-off-by: Jan-Christoph Borchardt <hey@jancborchardt.net>
2016-11-15 17:50:39 +01:00
Roeland Jago Douma 5039b37570 Fix tests
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2016-11-15 09:41:59 +01:00
Roeland Jago Douma 8315891418 [Stable10] Fixes not allowed increasing of link share permissions
Backport of #2100

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2016-11-15 09:17:02 +01:00
Nextcloud bot 46a6cbadfc [tx-robot] updated from transifex 2016-11-15 01:07:12 +00:00
Roeland Jago Douma ba0f899cb2 Merge pull request #2118 from nextcloud/stable10-add-bruteforce-check-to-person-endpoint
[stable10] Add bruteforce checker to Person.php
2016-11-14 18:10:23 +01:00
Lukas Reschke 6afad44091 Add bruteforce checker to Person.php
Also check for attempts on this endpoint

Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2016-11-14 15:28:53 +01:00
Nextcloud bot 3acfc4e9cd [tx-robot] updated from transifex 2016-11-14 01:07:13 +00:00
Nextcloud bot 9cffa6bebb [tx-robot] updated from transifex 2016-11-13 01:07:17 +00:00
Nextcloud bot 4e3e2f5f48 [tx-robot] updated from transifex 2016-11-12 01:07:18 +00:00
Roeland Jago Douma b6284d1664 Fixes retargeting a share of a deleted source
Fixes #1862

We tried to construct the actual node. While this node was no longer
available. This work around makes sure that we don't try to do this.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2016-11-11 10:35:04 +01:00
Joas Schilling 84222b58ee Merge pull request #2078 from nextcloud/jospoortvliet-patch-1
[Stable 10] Fix Nextcloud vs oldCloud wording
2016-11-11 08:38:29 +01:00
Nextcloud bot a043e14730 [tx-robot] updated from transifex 2016-11-11 01:07:25 +00:00
Jos Poortvliet 40eae55bce Update sharedialogview.js
Fix Nextcloud vs oldCloud wording
2016-11-10 17:22:01 +01:00
Nextcloud bot da7d4e4ae8 [tx-robot] updated from transifex 2016-11-10 01:07:22 +00:00
Morris Jobke 17b1a720fa Merge pull request #2059 from nextcloud/backport-2058-better-error-message-for-installation-error
[stable10] Use a better error message and point the users to the support channels
2016-11-09 14:00:58 +01:00
Joas Schilling 9e2e29aa10 Correctly catch the "soft errors" now
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-11-09 10:31:43 +01:00
Joas Schilling ef917ee9c8 Use a better error message and point the users to the support channels
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-11-09 09:20:55 +01:00
Joas Schilling 825a403f9c Fix help link
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-11-09 09:19:31 +01:00
Roeland Jago Douma 909b5dc76b Merge pull request #2056 from nextcloud/stable10-fix-public-button
[stable10] fix button on public upload page
2016-11-09 08:13:45 +01:00
Jan-Christoph Borchardt c463380ef2 fix button on public upload page
Signed-off-by: Jan-Christoph Borchardt <hey@jancborchardt.net>
2016-11-08 22:53:47 +01:00
Roeland Jago Douma 66fac19c41 Merge pull request #2041 from nextcloud/backport-2036-2040
[stable10] Fix the push state + Apply firefox workaroud to svg filters
2016-11-08 20:14:59 +01:00
Morris Jobke 9071fd57d5 Merge pull request #2048 from nextcloud/stable10-update-containers
[stable10] Update containers to latest version
2016-11-08 14:37:20 +01:00
Morris Jobke 3f457943b0 Remove unneeded Windows logic
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2016-11-08 12:29:25 +01:00
Morris Jobke b718693842 Activate APCu on PHP 7
Fix an issue with APCus inc and dec methods on PHP 7

see https://github.com/krakjoe/apcu/issues/183#issuecomment-244038221 for details

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2016-11-08 12:29:25 +01:00
Morris Jobke dfcf27b207 Update containers to latest version
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2016-11-08 12:29:19 +01:00
Julius Haertl c6af725600 Apply firefox workaroud to svg filters
Signed-off-by: Julius Haertl <jus@bitgrid.net>
2016-11-08 09:54:57 +01:00
Nextcloud bot 5c61a6b351 [tx-robot] updated from transifex 2016-11-08 01:07:05 +00:00
Joas Schilling 709f10aa5d Fix the push state
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-11-08 00:15:07 +01:00
Nextcloud bot 7f3a13c968 [tx-robot] updated from transifex 2016-11-07 01:07:10 +00:00
Roeland Jago Douma 70772a6f56 Merge pull request #2025 from nextcloud/stable10-backport-2018
[stable10] Workaround for disappearing app icons for Firefox before version 51
2016-11-06 20:18:38 +01:00
Nextcloud bot b7aa793750 [tx-robot] updated from transifex 2016-11-06 01:07:57 +00:00
Julius Haertl 6e1dd1c57f Workaround for disappearing app icons for Firefox before version 51
Signed-off-by: Julius Haertl <jus@bitgrid.net>
2016-11-05 19:22:13 +01:00
Nextcloud bot 75691d43af [tx-robot] updated from transifex 2016-11-05 01:07:21 +00:00
Nextcloud bot eb97592588 [tx-robot] updated from transifex 2016-11-04 01:07:13 +00:00
Nextcloud bot 7f03ed55a8 [tx-robot] updated from transifex 2016-11-03 01:07:16 +00:00
Nextcloud bot 2603e28aec [tx-robot] updated from transifex 2016-11-02 01:07:16 +00:00
Nextcloud bot 8d6ed8d95e [tx-robot] updated from transifex 2016-11-01 01:07:05 +00:00
Nextcloud bot f59e13a8f6 [tx-robot] updated from transifex 2016-10-31 01:07:02 +00:00
Nextcloud bot f621a17df1 [tx-robot] updated from transifex 2016-10-30 00:07:03 +00:00
Nextcloud bot dc2ea1b295 [tx-robot] updated from transifex 2016-10-29 00:07:21 +00:00
Nextcloud bot aba0dbc75e [tx-robot] updated from transifex 2016-10-28 00:07:18 +00:00
Nextcloud bot a96b9d5b0b [tx-robot] updated from transifex 2016-10-27 00:07:13 +00:00
Nextcloud bot 5ae4db3fb0 [tx-robot] updated from transifex 2016-10-26 00:07:18 +00:00
Lukas Reschke def13c5186 Merge pull request #1912 from nextcloud/stable10-backport-1911
[stable10] Fix malformed attribute in files app
2016-10-25 21:29:03 +02:00
Vincent Petry f8922ff365 Fix malformed attribute in files app 2016-10-25 17:34:02 +02:00
Nextcloud bot 8a46c2f0f1 [tx-robot] updated from transifex 2016-10-25 09:36:17 +00:00
Roeland Jago Douma 4a51be5a42 Merge pull request #1899 from nextcloud/stable10-php-7.1.0-check
[stable10] console.php also needs a PHP 7.1 check
2016-10-25 10:15:26 +02:00
Morris Jobke 0cf4f302c2 console.php also needs a PHP 7.1 check
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2016-10-25 09:19:23 +02:00
Roeland Jago Douma 672c7f4e97 Merge pull request #1870 from nextcloud/do-not-allow-sharee-enumeration-via-email-option
Do not allow sharee enumeration via email option
2016-10-24 11:35:17 +02:00
Joas Schilling f0f62aa055 Do not allow sharee enumeration via email option
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-10-24 10:30:59 +02:00
Roeland Jago Douma 4db595181d Merge pull request #1847 from nextcloud/backport-1164-avatar-files-accesscontrol-fixes
[stable10] Avatar fixes for access-control app
2016-10-21 21:32:10 +02:00
Morris Jobke 08804b851e Merge pull request #1845 from nextcloud/backport-1822-restore-overwritten-services-after-errors
[stable10] Restore overwritten services after errors
2016-10-21 18:56:41 +02:00
Morris Jobke a88f7d8182 Merge pull request #1844 from nextcloud/backport-1812-allow-to-dismiss-the-code-integrity-warning
[stable10] Allow to dismiss the code integrity warning
2016-10-21 18:08:02 +02:00
Joas Schilling 116d17be86 The red box already makes clear it's an error
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-10-21 11:14:26 +02:00
Joas Schilling fd445cc2db Check the mimetype before reading the content and catch exception
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-10-21 11:13:59 +02:00
Joas Schilling d17424f173 Restore all services when a tests failed/finished for better testcase isolation
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-10-21 10:58:59 +02:00
Joas Schilling a2a998c567 Make sure all tests use the TestCase method to overwrite services
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-10-21 10:58:51 +02:00
Joas Schilling 9e0c5ff6af Allow to dismiss the code integrity warning
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-10-21 10:56:19 +02:00
Morris Jobke 43ff99f4fa Merge pull request #1818 from nextcloud/stable10-fullscreen-icon
[stable10] add fullscreen icon
2016-10-20 16:42:40 +02:00
Jan-Christoph Borchardt 4aaf0d5ff2 add fullscreen icon
Signed-off-by: Jan-Christoph Borchardt <hey@jancborchardt.net>
2016-10-20 13:26:26 +02:00
Roeland Jago Douma ac23deefec Merge pull request #1772 from nextcloud/backport-1771-fix-issue-loading-checks-from-cache
[stable10] Do not reset the list after adding cached entries
2016-10-19 19:44:26 +02:00
Morris Jobke ebc8b73c85 Merge pull request #1798 from nextcloud/backport-1740-numeric-quota
[stable10] Make sure we only use numbers as length
2016-10-19 17:03:07 +02:00
Joas Schilling 1a104df189 Make sure we only use numbers as length
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-10-19 11:41:37 +02:00
Roeland Jago Douma 09fbe32d48 Merge pull request #1769 from nextcloud/backport-1766-force-uid-casing-on-transfer-ownership
[stable10] Make sure the UID is correctly cased
2016-10-19 11:18:44 +02:00
Nextcloud bot 51300d3689 [tx-robot] updated from transifex 2016-10-18 00:06:58 +00:00
Joas Schilling 88a19eaa84 Fix older php and phpunit version
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-10-17 15:45:28 +02:00
Joas Schilling 3a619e3e19 Do not reset the list after adding cached entries
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-10-17 15:44:16 +02:00
Joas Schilling dacd51cd25 Make sure the UID is correctly cased
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-10-17 14:31:28 +02:00
Joas Schilling e3a6bc01bb Merge pull request #1758 from nextcloud/stable10-backport-1756
[stable10] Filepicker styling
2016-10-17 13:44:35 +02:00
Nextcloud bot 9a73dc633f [tx-robot] updated from transifex 2016-10-17 00:07:01 +00:00
Nextcloud bot b778503caf [tx-robot] updated from transifex 2016-10-16 00:07:02 +00:00
Nextcloud bot 259e3c2e44 [tx-robot] updated from transifex 2016-10-15 00:07:02 +00:00
Robin Appelman 3f1b3dd9d2 filepicker styling
Signed-off-by: Robin Appelman <robin@icewind.nl>
2016-10-14 19:15:28 +02:00
Robin Appelman 862c4a854a use mimetype icons in filepicker if there is no preview
Signed-off-by: Robin Appelman <robin@icewind.nl>
2016-10-14 18:59:53 +02:00
Nextcloud bot 00ec62e69b [tx-robot] updated from transifex 2016-10-14 00:07:07 +00:00
Nextcloud bot 9cff86ebc8 [tx-robot] updated from transifex 2016-10-13 00:07:19 +00:00
blizzz 40bf26fe3c Merge pull request #1723 from nextcloud/fix-1251-stable10-alt2
[stable10] make AvatarManager use LazyRootFolder, fixes #1251
2016-10-12 15:16:13 +02:00
Arthur Schiwon 6a2e51b4d9 make AvatarManager use LazyRootFolder, fixes #1251
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2016-10-12 14:08:12 +02:00
Joas Schilling b4ef49744b Merge pull request #1717 from nextcloud/stable10-backport-1580
[stable10] Unset user PHOTO before setting new one in OCA\DAV\CardDAV\Converter:…
2016-10-12 13:13:35 +02:00
Joas Schilling a9f4210d25 Merge pull request #1714 from nextcloud/stable10_1713
[stable10] fix issue #1482 - mail invites through v1 webdav
2016-10-12 13:13:04 +02:00
Olivier Mehani 99f7315ed5 Unset user PHOTO before setting new one in OCA\DAV\CardDAV\Converter::updateCard (#26243)
Signed-off-by: Olivier Mehani <shtrom@ssji.net>

#26242
2016-10-12 10:49:06 +02:00
Claudemir Todo Bom 5d55162ee5 fix issue #1482 - mail invites through v1 webdav
Signed-off-by: Claudemir Todo Bom <claudemir@todobom.com>
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2016-10-12 10:13:13 +02:00
Nextcloud bot 1e60c5a164 [tx-robot] updated from transifex 2016-10-12 00:08:23 +00:00
Roeland Jago Douma 8574a5a51b Merge pull request #1685 from nextcloud/backport-1683-installing-app-with-code-checker
[stable10] Add app name to the call
2016-10-11 16:32:45 +02:00
Roeland Jago Douma 46a1705d39 Merge pull request #1686 from nextcloud/backport-1638-allow-cross-repository-execution
[stable10] Allow to call the files even when you are in another instance atm
2016-10-11 15:22:42 +02:00
Roeland Jago Douma 1bdc4d7fef Merge pull request #1688 from nextcloud/backport-1586-fix-multi-translation-names-and-descriptions
[stable10] Fix multi translation names and descriptions
2016-10-11 14:28:37 +02:00
Roeland Jago Douma c7e40d00a0 Merge pull request #1694 from nextcloud/stable10-backport-1679
[stable10] Improve user list rendering perf by not resorting after every add (#2…
2016-10-11 14:26:05 +02:00
Roeland Jago Douma 29b4611bef Merge pull request #1697 from nextcloud/stable10-backport-1644
[stable10] Set proper web title for apple
2016-10-11 14:22:38 +02:00
blizzz cd282faac0 Merge pull request #1695 from nextcloud/backport-1558-remove-notifications-upon-user-deletion
[stable10] Remove notifications upon user deletion
2016-10-11 13:15:05 +02:00
Roeland Jago Douma 27703caa09 Set proper web title for apple
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2016-10-11 10:53:00 +02:00
Joas Schilling 6b703e97ce Only trigger postDelete hooks when the user was deleted...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-10-11 10:45:39 +02:00
Joas Schilling 9107573020 Make sure that comments, notifications and preferences are deleted
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-10-11 10:45:09 +02:00
Joas Schilling 1fcd7848c6 Remove notifications upon user deletion
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-10-11 10:41:41 +02:00
Vincent Petry 706317a715 Improve user list rendering perf by not resorting after every add (#26282)
The call to UserList.add() was wrong and was passing "user.lastLogin"
as the sort argument which would cause the list to be resorted over and
over again for every added item after loading the next page of users.
2016-10-11 10:40:49 +02:00
Joas Schilling d831156d78 Better search functionality
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-10-11 10:39:25 +02:00
Joas Schilling 7ce29c6eef Fix authors that have a mail or homepage
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-10-11 10:39:21 +02:00
Joas Schilling 7d0d38348f Fallback from "de" to "de_DE" and the other way around
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-10-11 09:52:28 +02:00
Joas Schilling 96ed4fe15e Fix displaying and searching with multiple authors
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-10-11 09:52:14 +02:00
Joas Schilling 8ba5b9722b Allow multiple names and description
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-10-11 09:52:06 +02:00
Joas Schilling 53de74fe82 Allow to call the files even when you are in another instance atm
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-10-11 09:45:05 +02:00
Joas Schilling eba5e3c9e7 Add app name to the call
Regression from 69b063f4c6

Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-10-11 09:43:04 +02:00
Nextcloud bot a27633b140 [tx-robot] updated from transifex 2016-10-11 00:07:00 +00:00
Joas Schilling 72ede569e7 Merge pull request #1645 from nextcloud/stable10-backport-1595
[stable10] Use proper casing of username in avatar filesystem setup
2016-10-10 10:00:02 +02:00
Morris Jobke 466ebf8974 Merge pull request #1654 from nextcloud/backport-1643-stable10
[stable10] cache loginName2UserName and cover the method with unit tests
2016-10-10 09:15:25 +02:00
Roeland Jago Douma 1090c77f80 Merge pull request #1646 from nextcloud/stable10-backport-1562
[stable10] log version number in each log line
2016-10-10 08:29:39 +02:00
Nextcloud bot 4ff2f3ac46 [tx-robot] updated from transifex 2016-10-10 00:07:04 +00:00
Nextcloud bot 3fee65d643 [tx-robot] updated from transifex 2016-10-09 00:06:56 +00:00
Nextcloud bot e6cb73d70d [tx-robot] updated from transifex 2016-10-08 00:06:59 +00:00
Arthur Schiwon 0898cfce98 make tests php 5.4 / phpunit 4.8 compatible
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2016-10-07 16:11:24 +02:00
Arthur Schiwon 005d264d60 Backport of #1643 to stable10
get rid of test warnings

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>

cache loginName2UserName and cover the method with unit tests

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>

adjust tests

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2016-10-07 13:51:36 +02:00
Joas Schilling 6fa841c181 Merge pull request #1649 from nextcloud/stable10-backport-1633
[stable10] Update root certificate list
2016-10-07 13:29:21 +02:00
Lukas Reschke 31dee3605f Update root certificate list
Syncs with the newest certificate list by Mozilla.

Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2016-10-07 10:59:40 +02:00
Morris Jobke 6374593099 log version number in each log line
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2016-10-07 10:09:37 +02:00
Morris Jobke e4ece33e80 Use proper casing of username in avatar filesystem setup
* before you could request an avatar for User instead of user
  which sets up the filesystem for that user twice causing
  the sharing codes collision detection to detect a lot of
  collisions

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2016-10-07 09:57:41 +02:00
Nextcloud bot 04d0daed12 [tx-robot] updated from transifex 2016-10-07 00:07:12 +00:00
Morris Jobke 3aab8f8a80 Merge pull request #1637 from nextcloud/backport-1636-fix-synjob-class-name
[stable10] Fix SyncJob class name in info.xml
2016-10-06 12:45:42 +02:00
Joas Schilling e811dea771 Fix SyncJob class name in info.xml
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-10-06 10:59:03 +02:00
Lukas Reschke bbde2f9b11 Merge pull request #1619 from nextcloud/backport-1617-update-notification-readable-version
[stable10] Update notification readable version (10.0.1 instead of 9.1.1.5)
2016-10-06 09:17:47 +02:00
Nextcloud bot 6ed029057b [tx-robot] updated from transifex 2016-10-05 00:07:04 +00:00
Joas Schilling 875a3f4b28 Use new URL schema
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-10-04 13:02:05 +02:00
Joas Schilling 87cc0231a8 Use the readable version for notifications
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-10-04 12:56:27 +02:00
Nextcloud bot 530a72493b [tx-robot] updated from transifex 2016-10-04 00:07:03 +00:00
Roeland Jago Douma 3b92dc452c Merge pull request #1461 from nextcloud/stable9.1-fed-share-retry-upstream
[upstream] [stable10] Fix fed share test call to return proper result
2016-10-03 15:33:34 +02:00
Roeland Jago Douma ea5b522329 Merge pull request #1574 from nextcloud/backport-1408-chunk-calendar-objects-query
[stable10] Chunk events/contacts when getting them
2016-10-03 12:17:04 +02:00
Nextcloud bot ed98fae8fb [tx-robot] updated from transifex 2016-10-03 00:12:53 +00:00
Nextcloud bot 6fcc190f5d [tx-robot] updated from transifex 2016-10-02 00:16:32 +00:00
Nextcloud bot 7dc0de8cb1 [tx-robot] updated from transifex 2016-10-01 00:08:30 +00:00
Nextcloud bot 64e3167dcc [tx-robot] updated from transifex 2016-09-30 00:08:19 +00:00
Joas Schilling 884e538575 Close cursors 2016-09-29 14:33:56 +02:00
Joas Schilling 5b8c7768b1 Chunk if you have too many contacts 2016-09-29 14:33:44 +02:00
Joas Schilling 33c39f7b27 Chunk if you have too many events 2016-09-29 14:33:31 +02:00
blizzz e60d5d08e0 Merge pull request #1478 from nextcloud/backport-1469-hide-tags-and-cry
Hide the tags input field when it's empty
2016-09-29 13:23:40 +02:00
Nextcloud bot 550fb8ce53 [tx-robot] updated from transifex 2016-09-29 00:07:14 +00:00
Lukas Reschke 3102afacd2 Merge pull request #1479 from nextcloud/stable10-backport-1188
[stable10] redirect to default app after solving the 2FA challenge
2016-09-28 23:15:42 +02:00
Lukas Reschke 766abeeae6 Merge pull request #1536 from nextcloud/backport-1489-ocs-status-code-when-app-is-disabled
[stable10] Return 404 on v2.php when the app is disabled
2016-09-28 23:02:43 +02:00
Morris Jobke bf0dfa997f Merge pull request #1526 from nextcloud/more-error-handling-in-copyr-stable10
[stable10] Graceful error handling and logging
2016-09-28 22:40:56 +02:00
Morris Jobke 3e93dbd404 Merge pull request #1522 from nextcloud/stable9.1-3f53730159d94bbc2b53129a4c750f5bab40a26e
[stable10] Fix mimetype detection inside hidden folders (#26138) (#2…
2016-09-28 22:03:02 +02:00
Morris Jobke 7841f9775f Merge pull request #1515 from nextcloud/stable9.1-fed-share-retry
[stable10] Fix fed share test call to return proper result
2016-09-28 22:02:29 +02:00
Morris Jobke 1a1ec21943 Merge pull request #1548 from nextcloud/stable9.1-d887671424e6a5980401f552f163062003afce94
[stable10] Change the minimum log level to fatal (#26213)
2016-09-28 22:01:58 +02:00
Morris Jobke 43aa114169 Merge pull request #1533 from nextcloud/stable10-redo-1517
[stable10] Only use realpath for real directories (#26060)
2016-09-28 22:01:29 +02:00
Lukas Reschke 12ec1d1e3e Make it 10.0.1 2016-09-28 15:23:39 +02:00
Lukas Reschke 51249f7dde Merge pull request #1555 from nextcloud/updatestate-can-be-empty-stable10
[stable10] UpdateState is empty if no update is available
2016-09-28 13:03:22 +02:00
Lukas Reschke 98df88950f UpdateState is empty if no update is available
This leads to log messages such as "Undefined index: updaterEnabled at /media/psf/nextcloud/apps/updatenotification/lib/Controller/AdminController.php#116".
2016-09-28 12:30:35 +02:00
Nextcloud bot ad9b154700 [tx-robot] updated from transifex 2016-09-28 00:10:27 +00:00
Juan Pablo Villafañez 6fd3974c8b [stable9.1] Change the minimum log level to fatal (#26213)
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2016-09-27 18:40:13 +02:00
Björn Schießle c6cf5f40af Merge pull request #1544 from nextcloud/backport-1543-increase-component-length
[stable10] Increase the max length for components
2016-09-27 18:01:52 +02:00
Joas Schilling db24cdcd92 Increase the max length for components 2016-09-27 17:07:43 +02:00
Lukas Reschke 6bd15bcea6 Make it 10.0.1 RC4 2016-09-27 16:37:15 +02:00
Lukas Reschke c26fa854e7 Make it 10.0.1 RC3 2016-09-27 16:07:40 +02:00
Lukas Reschke 713eb790b1 Merge pull request #1541 from nextcloud/backport-1540-switch-for-autoupdater-control
[stable10] Switch for autoupdater control
2016-09-27 16:06:50 +02:00
Joas Schilling 4077f7141f Use the same URL everywhere
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-09-27 15:00:16 +02:00
Joas Schilling 7d910437fd Respect updater kill switch and fall back to download button
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-09-27 14:59:23 +02:00
Joas Schilling 0fac5146bd Return the autoupdater value from the server
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-09-27 14:58:57 +02:00
Marius Blüm cb2da786e2 Merge pull request #1528 from nextcloud/stable10-backport-1406
[stable10] Fix folder drag glitch in Firefox
2016-09-27 14:37:22 +02:00
Joas Schilling 2f01c97e97 Request a valid resource
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-09-27 11:50:46 +02:00
Joas Schilling bbbad09383 Return 404 on v2.php when the app is disabled
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-09-27 11:13:13 +02:00
Nextcloud bot 0a683682b2 [tx-robot] updated from transifex 2016-09-27 00:09:53 +00:00
Vincent Petry 4cbdf51ddb Only use realpath for real directories (#26060)
In some cross-local-storage use cases, the Local storage is
instantiated with "/" as data directory. In such cases, calling
realpath() would cause PHP warnings when open_basedir is set.

This fix bypasses the realpath() call when dealing with a root storage.

Downstreaming of https://github.com/owncloud/core/pull/26060

Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2016-09-27 00:15:27 +02:00
Morris Jobke 9b0fca35ba Merge pull request #1532 from nextcloud/revert-1517-stable9.1-fix-openbasedir-realpath-warning
Revert "[stable10] Only use realpath for real directories (#26060)"
2016-09-27 00:12:48 +02:00
Morris Jobke 85d7b90b24 Revert "[stable10] Only use realpath for real directories (#26060)" 2016-09-27 00:12:23 +02:00
Morris Jobke ffaa2512f3 Merge pull request #1517 from nextcloud/stable9.1-fix-openbasedir-realpath-warning
[stable10] Only use realpath for real directories (#26060)
2016-09-27 00:11:42 +02:00
Lukas Reschke 0cc4d5d556 Make it 10.0.1 RC2 2016-09-26 22:30:30 +02:00
Lukas Reschke 9486dbb385 Merge pull request #1500 from nextcloud/stable10-backport-1499
[stable10] Add repair step and revert "Open updater" button
2016-09-26 22:28:53 +02:00
Morris Jobke 78c7ff9acc Fix folder drag glitch in Firefox
issue:
* drag'n'drop a folder into the files app in Firefox
* the highlight stays there because Firefox doesn't trigger the drop event for folders

solution:
* behave like the drop event if the dragover event isn't fired for 100ms (only applied in Firefox)
2016-09-26 17:44:01 +02:00
Morris Jobke a39d5ca37d write channel to config file when changed
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2016-09-26 13:48:05 +02:00
Morris Jobke 341c3567a2 Revert "Fix tests"
This reverts commit a44c1c748c.

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2016-09-26 13:47:58 +02:00
Lukas Reschke 2ecf5722ec Graceful error handling and logging
Right now a failed "copyr" will result in the error log being spammed with not really helpful error messages. Also situations such as `$dir` returning `false` are not really caught.

This adds more error handling and logging to make debugging such situations easier.

Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2016-09-26 12:25:45 +02:00
Thomas Müller fca4098fac [stable9.1] Fix mimetype detection inside hidden folders (#26138) (#26151)
Downstreaming of https://github.com/owncloud/core/pull/26151

Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2016-09-26 11:33:13 +02:00
Vincent Petry 7535d3e391 Only use realpath for real directories (#26060)
In some cross-local-storage use cases, the Local storage is
instantiated with "/" as data directory. In such cases, calling
realpath() would cause PHP warnings when open_basedir is set.

This fix bypasses the realpath() call when dealing with a root storage.

Downstreaming of https://github.com/owncloud/core/pull/26060

Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2016-09-26 11:22:46 +02:00
Vincent Petry 335fcb1a43 Fix fed share test call to return proper result
Fixes an issue where retrying a previously failed federated share would
not properly reset the availability flag because the return value was
undefined instead of "true".

Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2016-09-26 11:17:57 +02:00
Nextcloud bot e0dd6768be [tx-robot] updated from transifex 2016-09-26 08:10:50 +00:00
Nextcloud bot f230070eda [tx-robot] updated from transifex 2016-09-26 00:09:49 +00:00
Nextcloud bot 15d7b8c2f1 [tx-robot] updated from transifex 2016-09-25 00:09:47 +00:00
Nextcloud bot 60c2ae7fc0 [tx-robot] updated from transifex 2016-09-24 00:09:51 +00:00
Morris Jobke 038a03540f Add repair step to remove .step file after update
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2016-09-23 13:49:40 +02:00
Morris Jobke 680e5cae5d Revert "Show an update button instead of the updater"
This reverts commit 202ae42506.

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2016-09-23 13:49:15 +02:00
Nextcloud bot c6e770959f [tx-robot] updated from transifex 2016-09-23 00:09:51 +00:00
Nextcloud bot 28ad84cc19 [tx-robot] updated from transifex 2016-09-22 00:11:39 +00:00
Lukas Reschke 40076b28bb Merge pull request #1484 from nextcloud/stable10-video-icons
[stable10] add audio and video icons
2016-09-22 01:16:28 +02:00
Jan-Christoph Borchardt 2a5cd3abfc add icon-more-white 2016-09-22 00:58:51 +02:00
Jan-Christoph Borchardt ec3e6aaca3 add proper classes for white audio and video icons 2016-09-22 00:58:40 +02:00
Jan-Christoph Borchardt c79c32eb0a add audio and video icons 2016-09-22 00:58:28 +02:00
Christoph Wurst b824706ec5 check same URL in unit tests 2016-09-21 12:57:43 +02:00
Christoph Wurst 8c82628622 redirect to default app after solving the 2FA challenge 2016-09-21 12:57:37 +02:00
Jan-Christoph Borchardt 923890ea74 fix sidebar tab headers margin 2016-09-21 11:32:17 +02:00
Jan-Christoph Borchardt fa912b43ae proper padding for Tags action 2016-09-21 11:31:30 +02:00
Joas Schilling 96dc2feb1e Add viewbox to icons 2016-09-21 11:31:18 +02:00
Joas Schilling 781feb9ff7 Add a handle for the tags label 2016-09-21 11:30:15 +02:00
Joas Schilling 7745b1ac29 Hide the tags input field when it's empty 2016-09-21 11:30:02 +02:00
Lukas Reschke bbe8f4ed0d Change version to 10.0.1 final 2016-09-21 10:39:28 +02:00
Nextcloud bot b5e9ecf764 [tx-robot] updated from transifex 2016-09-21 00:09:46 +00:00
Vincent Petry 960a8a76a9 Fix fed share test call to return proper result
Fixes an issue where retrying a previously failed federated share would
not properly reset the availability flag because the return value was
undefined instead of "true".
2016-09-20 13:54:44 +02:00
Nextcloud bot 804dfd1d59 [tx-robot] updated from transifex 2016-09-20 00:09:44 +00:00
Nextcloud bot 0a0079e89c [tx-robot] updated from transifex 2016-09-19 00:09:39 +00:00
Nextcloud bot 466a219cd7 [tx-robot] updated from transifex 2016-09-18 00:09:33 +00:00
Nextcloud bot 568b4d9a5d [tx-robot] updated from transifex 2016-09-17 00:10:20 +00:00
Nextcloud bot da66933891 [tx-robot] updated from transifex 2016-09-16 00:09:40 +00:00
Nextcloud bot f23ae4de2f [tx-robot] updated from transifex 2016-09-15 00:12:44 +00:00
Lukas Reschke 908cbcea83 Correct version string to 9.1.1.0 2016-09-14 20:00:48 +02:00
Lukas Reschke 8d1a592b27 Change version to 10.0.1 RC1 2016-09-14 19:17:48 +02:00
Morris Jobke fe7c777a75 Merge pull request #1402 from nextcloud/stable10-backport-1399
[stable10] Move Travis tests to DroneCI
2016-09-14 09:36:29 +02:00
Lukas Reschke 8ff4d95ae8 Move Travis tests to DroneCI
Should give us some quicker test execution speed as we're not limited by Travis

Explicitly invoke with "bash"

Install instance already

Use newest litmus container
2016-09-14 08:19:12 +02:00
Nextcloud bot 79d31198c9 [tx-robot] updated from transifex 2016-09-14 00:10:39 +00:00
Morris Jobke 1f0bd6f289 Merge pull request #1397 from nextcloud/stable10-backport-1338
[stable10] Opening the trashbin causes errors in log for files without preview
2016-09-13 21:39:29 +02:00
Morris Jobke 222f04b131 add actual check if mysql is up already 2016-09-13 20:47:17 +02:00
Morris Jobke 9ca848c317 Opening the trashbin causes errors in log for files without preview
* put a file without a generated preview in the trashbin
  (e.g. a *.docx file)
* open the trashbin
* following errors will show up in the nextcloud.log:
	- filesize(): stat failed for ...
	- fopen(...): failed to open stream: No such file or directory at ...
	- fread() expects parameter 1 to be resource, boolean given at ...
	- fclose() expects parameter 1 to be resource, boolean given at ...
	- imagecreatefromstring(): Empty string or invalid image at ...

This is because the preview code tries to load an SVG image, which
is obviously only text.

The fix simply handles this before the loading happens and the web UI
keeps showing the default mimetype icon.
2016-09-13 20:18:09 +02:00
Roeland Jago Douma 318ea301c3 Merge pull request #1379 from nextcloud/stable10-backport-711
stable10 backport: Apply password policy on user creation
2016-09-13 19:35:35 +02:00
Roeland Jago Douma 43bff15359 Merge pull request #1394 from nextcloud/fix-share-notification-10
Fix MissingMandatoryParametersException for share notifications
2016-09-13 19:26:43 +02:00
Roeland Jago Douma 14ea159670 Merge pull request #1391 from nextcloud/stable10-backport-1376
[stable10] Allow increasing permissions for share owner
2016-09-13 15:43:24 +02:00
Joas Schilling 107b418815 Fix MissingMandatoryParametersException for share notifications
The routing system is non-forgiving
2016-09-13 14:09:34 +02:00
Morris Jobke d7faff0b0d Merge pull request #1367 from nextcloud/trash-detect-correct-mimetype-stable10
[stable10] deleted files, fix mimetype detection
2016-09-13 11:50:26 +02:00
Vincent Petry 4c177ce6af Allow increasing permissions for share owner
In some cases, the owner of the share is also recipient through a group
share. The owner must still be able to increase permissions in that
situation.
2016-09-13 11:39:22 +02:00
Morris Jobke 0f7090a2f4 Merge pull request #1389 from nextcloud/stable10-improve-ci-speed
[stable10] clone depth of 1 and execute integration tests first
2016-09-13 11:34:40 +02:00
Morris Jobke 9b60657a5c clone depth of 1 and execute integration tests first
* specify git image
2016-09-13 10:52:41 +02:00
Morris Jobke b5710d0d7f Merge pull request #1387 from nextcloud/better-mentions-10
[stable10] Try to mention 3 people that will leave comments
2016-09-13 10:41:41 +02:00
Morris Jobke 179cdfd39d add nextcloud-bot to userBlacklist 2016-09-13 10:35:56 +02:00
Joas Schilling 70db3173cd Try to mention 3 people that will leave comments 2016-09-13 10:35:45 +02:00
Morris Jobke 8cb1bc5560 Merge pull request #1382 from nextcloud/stable10-backport-1380
[stable10] update drone.yml to 0.5
2016-09-13 02:37:58 +02:00
Nextcloud bot 7c3934d3e6 [tx-robot] updated from transifex 2016-09-13 00:11:26 +00:00
Morris Jobke 9d0bd91b93 update drone.yml to 0.5 2016-09-13 02:07:19 +02:00
michag86 5fc59a1515 Apply password policy on user creation 2016-09-12 22:45:46 +02:00
Bjoern Schiessle a6b661bd68 detect the correct mimetype of the files in the trashbin, therefore we have to check the filename without the appended timestamp 2016-09-12 11:47:57 +02:00
Nextcloud bot 3d0a7c49cc [tx-robot] updated from transifex 2016-09-12 00:09:41 +00:00
Nextcloud bot 37d6cf6f6c [tx-robot] updated from transifex 2016-09-11 00:09:20 +00:00
Roeland Jago Douma c40e598d55 Merge pull request #1345 from nextcloud/small-encryption-improvement-stable10
[stable10] skip shared files, if files get decrypted only for a specific user
2016-09-10 14:46:48 +02:00
Nextcloud bot 3ba03a69fd [tx-robot] updated from transifex 2016-09-10 00:09:25 +00:00
Roeland Jago Douma 70231dcccf Merge pull request #1343 from nextcloud/stable10-throw-exceptions-not-printable
[stable10] Don't print exception message in HTML
2016-09-09 15:23:55 +02:00
Morris Jobke 3270da0890 Merge pull request #1340 from nextcloud/stable10-limit-possible-image-mimetypes
[stable10] Filter more mimetypes
2016-09-09 15:12:26 +02:00
Bjoern Schiessle 7d183a28d2 skip shared files, if files get decrypted only for a specific user we shouldn't touch files owned by a different user. 2016-09-09 14:55:46 +02:00
Lukas Reschke 7350e13113 Don't print exception message in HTML
The exception message is potentially influenced by user input and could thus be confusing (e.g. somebody could try to open a file like "Please send a mail to support@foo.com", and then the message would include that string.

It is thus reasonable to not show the exception message by default. Also for the browser view I added an `exit()` at the end, as otherwise the XML exception would be attached.
2016-09-09 14:16:17 +02:00
Lukas Reschke 68ab8325c7 Filter more mimetypes
There's no need to allow more than those defined mimetypes for images.
2016-09-09 12:36:28 +02:00
Roeland Jago Douma b9100da2e8 Merge pull request #1331 from nextcloud/osx-problems-stable10
[stable10] Fix OS X and OVH problems
2016-09-09 08:19:40 +02:00
Nextcloud bot de921ccd98 [tx-robot] updated from transifex 2016-09-09 00:09:38 +00:00
Lukas Reschke 2ae08d6fc2 Match only for actual session cookie
OVH has implemented load balancing in a very questionable way where the reverse proxy actually internally adds some cookies which would trigger a security exception. To work around this, this change only checks for the session cookie.
2016-09-08 21:07:05 +02:00
Lukas Reschke 1914e7082a Add exemptions for incompatible UAs
Some user agents are notorious and don't really properly follow HTTP
 specifications. For those, have an automated opt-out. Since the protection
for remote.php is applied in base.php as starting point we need to opt out
here.
2016-09-08 21:06:57 +02:00
Morris Jobke 520bfa872b Merge pull request #1324 from nextcloud/backport-1323-show-download-button-for-updates-atm
[stable10] Show an download button instead of the updater
2016-09-08 15:41:45 +02:00
Morris Jobke 72fed6e8b8 Merge pull request #1322 from nextcloud/backport-1225-allow-to-validate-password-policy
Allow to validate the password_policy app
2016-09-08 15:36:03 +02:00
Morris Jobke 30a24b49f5 Merge pull request #1327 from nextcloud/set-quota-non-int-10
[10] fix setting quota to default or unlimited
2016-09-08 15:32:42 +02:00
Morris Jobke 8e5b2ce3b3 Merge pull request #1316 from nextcloud/backport-1311-add-docs-for-workflows
[stable10] Add a docs link when given
2016-09-08 14:08:52 +02:00
Roeland Jago Douma cfcadaea36 Merge pull request #1319 from nextcloud/backport-1243-fix-detection-of-file-types-a-bit
[stable10] Fix detection of file types a bit
2016-09-08 13:45:23 +02:00
Robin Appelman 38a0492c64 fix setting quota to default or unlimited 2016-09-08 12:58:42 +02:00
Joas Schilling 280a452055 Change updater URL 2016-09-08 12:29:37 +02:00
Morris Jobke a9184287e6 Merge pull request #1320 from nextcloud/backport-1301-fix-required-permissions-for-webdav-move-and-copy
[stable10] Fix required permissions for webdav move and copy
2016-09-08 12:13:18 +02:00
Joas Schilling a44c1c748c Fix tests 2016-09-08 11:14:17 +02:00
Joas Schilling 292b95462e Show an update button instead of the updater 2016-09-08 11:02:10 +02:00
Joas Schilling 69b063f4c6 Allow to validate the password_policy app 2016-09-08 09:56:48 +02:00
Joas Schilling 2e407732ba Fix tests 2016-09-08 09:33:10 +02:00
Joas Schilling 42b9eed5dc UPDATE permissions qualify for renaming a node 2016-09-08 09:33:01 +02:00
Joas Schilling 14299e44e2 Only require CREATE permissions when the file does not exist yet 2016-09-08 09:32:51 +02:00
Joas Schilling 5996983e28 Make mimetype also work for READ and DELETE operations 2016-09-08 09:21:26 +02:00
Joas Schilling d3a1fbd9eb Better detection of mimetypes while uploading a zip on a mac 2016-09-08 09:21:00 +02:00
Joas Schilling 810f99c1c9 Correctly remove the charset from finfo mimetype 2016-09-08 09:20:34 +02:00
Joas Schilling 9de17c3785 Add a docs link when given 2016-09-08 08:57:54 +02:00
Nextcloud bot 8c4e5a923a [tx-robot] updated from transifex 2016-09-08 00:10:28 +00:00
Marius Blüm d2c2f02cc2 Merge pull request #1312 from nextcloud/stable10-backport-1307
[stable10] Fix update notification
2016-09-07 23:44:17 +02:00
Morris Jobke 17dc2c344f fix tests 2016-09-07 19:58:20 +02:00
Morris Jobke 12d077065c Fix updater URL 2016-09-07 19:08:34 +02:00
Morris Jobke 86bbea9b8c Fix layout of success message and text 2016-09-07 19:08:25 +02:00
Morris Jobke e83cb0bf56 Merge pull request #1305 from nextcloud/backport-1287-correctly-remove-admin-stuff
[stable10] Correctly remove admin sections and settings
2016-09-07 16:58:08 +02:00
Roeland Jago Douma 7c49ab4bb0 Merge pull request #1288 from nextcloud/backport-1284-allow-status.php-before-install
[stable10] Allow to call status.php before the instance is installed
2016-09-07 16:27:10 +02:00
Joas Schilling 28b00c5bea Correctly remove admin sections and settings 2016-09-07 14:37:48 +02:00
Morris Jobke 2880a08747 Merge pull request #1299 from nextcloud/stable10-backport-1235
[stable10] Move navigation entries without order to the end
2016-09-07 13:41:22 +02:00
Joas Schilling 27f7416519 Move navigation entries without order to the end 2016-09-07 10:52:21 +02:00
Roeland Jago Douma 8324b6492d Merge pull request #1294 from nextcloud/stable10-backport-1292
[stable10] Add icon for the theming app
2016-09-07 10:20:30 +02:00
Felix Epp a28f000610 Add icon for the theming app 2016-09-07 08:34:01 +02:00
Nextcloud bot 9bd40755ef [tx-robot] updated from transifex 2016-09-07 00:09:32 +00:00
Joas Schilling c01fd540be Also fix "occ status" 2016-09-06 16:09:50 +02:00
Joas Schilling 1131140e69 Don't throw 500 when not installed 2016-09-06 16:09:36 +02:00
Joas Schilling 0a2b5b75de Allow to call status.php before the instance is installed 2016-09-06 16:08:02 +02:00
Roeland Jago Douma e97bb2ccc5 Merge pull request #1280 from nextcloud/backport-1272-theming-info-capabilities
[stable10] Add theming information to capabilities for the client
2016-09-06 15:01:08 +02:00
Joas Schilling 9ac95be358 No background and logo in 10 2016-09-06 11:22:01 +02:00
Joas Schilling b626f710c1 php 5.4 and 5.5 compatibility 2016-09-06 11:19:08 +02:00
Joas Schilling ebaa49f76d Add image URLs and tests 2016-09-06 11:10:27 +02:00
Joas Schilling 9f98cfceb4 Add theming information to capabilities for the client 2016-09-06 11:10:15 +02:00
Nextcloud bot e9d0520788 [tx-robot] updated from transifex 2016-09-06 00:09:25 +00:00
Nextcloud bot 1193d8d1b4 [tx-robot] updated from transifex 2016-09-05 00:09:16 +00:00
Nextcloud bot c5f2917e1a [tx-robot] updated from transifex 2016-09-04 00:09:28 +00:00
Nextcloud bot d928d47fb6 [tx-robot] updated from transifex 2016-09-03 00:09:30 +00:00
Nextcloud bot 4849538c70 [tx-robot] updated from transifex 2016-09-02 00:09:17 +00:00
Roeland Jago Douma 1b4cbba376 Merge pull request #1231 from nextcloud/backport-1224-do-not-allow-linebreak-in-paths
[stable10] Do not allow linebreaks and null bytes in paths
2016-09-01 14:07:10 +02:00
Joas Schilling df50e967db Add PhantomJS to gitignore 2016-09-01 12:45:38 +02:00
Joas Schilling c3ae21fef2 Also prevent null byte character 2016-09-01 12:45:31 +02:00
Joas Schilling ed0f0db5fa Filter out %0A from paths 2016-09-01 12:45:19 +02:00
Nextcloud bot e6c8c33b03 [tx-robot] updated from transifex 2016-09-01 00:09:31 +00:00
Roeland Jago Douma 62c89213f4 Merge pull request #1181 from nextcloud/backport-870-oracle-support
[stable10] Fix oracle support of external storage app
2016-08-31 15:15:07 +02:00
Roeland Jago Douma 5fae9e2bbe Merge pull request #1207 from nextcloud/backport-1190-addressbook-correctly-handle-multi-values
[stable10] Correctly handle multi-values when converting VCards to array
2016-08-31 15:08:18 +02:00
Roeland Jago Douma 782c3138c9 Merge pull request #1200 from nextcloud/stable9.1-usermountcache-orphanedshare
[stable10] Prevent error with orphaned shares when updating user mount cache
2016-08-31 15:07:40 +02:00
Roeland Jago Douma e39cf78c52 Merge pull request #1206 from nextcloud/stable9.1-integration_tests_local_external_storage
[Stable10] integration tests local external storage
2016-08-31 13:54:24 +02:00
Roeland Jago Douma 50f40d9889 Merge pull request #1209 from nextcloud/fix-vendor-in-php-warning
Fix vendor name in PHP version warning
2016-08-31 13:54:07 +02:00
Joas Schilling dcebcbc9c6 Fix vendor name in PHP version warning 2016-08-31 12:28:10 +02:00
Joas Schilling 1c61e749ab Add a unit test for all the magic 2016-08-31 12:07:19 +02:00
Joas Schilling 25e9d67d52 Correctly handle multi-values when converting VCards to array 2016-08-31 12:07:10 +02:00
Sergio Bertolín a5b9dc8c08 Changed enabled/disabled app in provisioning api tests 2016-08-31 11:43:00 +02:00
Sergio Bertolín 8293735108 External storage was not enabled and content was not deleted before scenarios
Conflicts:
	build/integration/features/bootstrap/BasicStructure.php
	build/integration/run.sh
2016-08-31 11:41:29 +02:00
Sergio Bertolín 0ec695e2d7 Added local_storage folder 2016-08-31 11:41:25 +02:00
Sergio Bertolin bf4415c1f6 Run as current user
Conflicts:
	build/integration/run.sh
2016-08-31 11:41:18 +02:00
Sergio Bertolin 6b9a7d3ad9 Removed extra context added needed option and remove storage after external storage scenarios
Conflicts:
	build/integration/features/bootstrap/BasicStructure.php
	build/integration/run.sh
2016-08-31 11:41:13 +02:00
Sergio Bertolin d318c90ef7 Added feature and context, not working yet, option to allow sharing needs to be added 2016-08-31 11:41:07 +02:00
Sergio Bertolín 884c7a6b6b Creating the folder when the tests run
Conflicts:
	build/integration/features/bootstrap/BasicStructure.php
	build/integration/run.sh
2016-08-31 11:40:28 +02:00
Vincent Petry e8a014be34 Add integration test for sharing with group, then user in group
Add integration test for the use case where a group share exists and
then the same owner creates a direct share to a user in that group.
2016-08-31 11:40:14 +02:00
Lukas Reschke c4bfdb3cab Merge pull request #1183 from nextcloud/backport-529-cross-vendor-up-and-downgrades
[stable10] Allow downgrades of maintenance accross vendors
2016-08-30 19:54:20 +02:00
Vincent Petry 6d1ccefc90 Added closeCursor in SharedMount numeric id 2016-08-30 19:47:16 +02:00
Vincent Petry c4f303d19c Prevent error with orphaned shares when updating user mount cache 2016-08-30 19:45:22 +02:00
Lukas Reschke fe3e7629e2 Merge pull request #1191 from nextcloud/stable10-share-allowspaceinremote
[stable10] Allow space for federated share id search
2016-08-30 15:37:07 +02:00
Morris Jobke 3d43680d6e Merge pull request #1184 from nextcloud/backport-1089-allow-to-prevent-previews
[stable10] Check if the file isReadable() before sending a (cached) preview
2016-08-30 13:31:07 +02:00
Roeland Jago Douma a2a17fc5d7 Merge pull request #1186 from nextcloud/stable10-backport1178
[stable10] Theming: Show loading spinner while uploading files
2016-08-30 13:02:14 +02:00
Vincent Petry 102d4dc1af Allow space for federated share id search 2016-08-30 12:57:23 +02:00
Julius Haertl 6ce976e7f0 Theming: Show loading spinner while uploading files 2016-08-30 10:28:57 +02:00
Joas Schilling 061aad5fe3 Check if the file isReadable() before sending a (cached) preview 2016-08-30 10:24:01 +02:00
Joas Schilling 7d54d03e40 Allow downgrades of maintenance accross vendors 2016-08-30 10:19:40 +02:00
Joas Schilling b4a2f93ec8 Fix oracle support of external storage app 2016-08-30 10:08:49 +02:00
Joas Schilling f8a45b9e08 Merge pull request #1174 from nextcloud/backport-1128
[stable10] Users page lazy multiselect group dropdowns
2016-08-30 10:04:28 +02:00
Morris Jobke f4d4e3f55f Merge pull request #1179 from nextcloud/stable10_us_25675
[stable10] Added integration test (#25675)
2016-08-30 09:48:17 +02:00
Lukas Reschke 351d01510d Merge pull request #1176 from nextcloud/backport-1145-10
[stable10] DAV: Return data-fingerprint always when asked
2016-08-30 08:41:45 +02:00
Thomas Müller bc3c4ebd2d [stable9.1] Added integration test (#25675)
* [stable9.1] Added integration test

* A shared storage is never a home storage - fixes #25582
2016-08-30 08:32:12 +02:00
blizzz 7e2c4b80d2 Merge pull request #1140 from nextcloud/backport-1132-prevent-parse-error-on-editing-an-html-comment
[stable10] Prevent parse error on editing an HTML comment
2016-08-30 00:14:34 +02:00
Markus Goetz 4685ca9154 [master] DAV: Return data-fingerprint always when asked (#25482)
For owncloud/client#5056
Users can configure arbitrary subfolders for syncing, therefore we should
always return it when asked for.
The sync client makes sure to not always ask for it to save bandwidth.
2016-08-29 23:59:57 +02:00
Vincent Petry 3a0a84e1ea Backport of Users page lazy multiselect group dropdowns #1128 to stable10
Users page lazy multiselect group dropdowns

Instead of pre-rendering all multiselects with lots of group entries,
the current groups are now displayed as simple labels.
Behind the labels there is a pencil icon like for other fields.
When clicking the pencil icon, the dropdown will be spawned and will
open itself.
Upon closing of the dropdown, the label comes back with the updated
selection and the dropdown is destroyed.

Extra non-available groups also in list

Fix group sorting in user list group selection
2016-08-29 23:46:28 +02:00
Lukas Reschke dbc860e6f7 Merge pull request #1159 from nextcloud/stable9.1-27a5be96f108d4ab2b91bcd765433e1646ba9bf2
[9.1] Before a user is getting scanned the database connection is re-…
2016-08-29 21:39:55 +02:00
Lukas Reschke 0a1b1d57a7 Merge pull request #1157 from nextcloud/stable9.1-init-filesconfig
Make sure file list files config always exists
2016-08-29 21:39:44 +02:00
Roeland Jago Douma deadbf7567 Merge pull request #1156 from nextcloud/stable9.1-db60e65409e7c6d4f1bde5062af53fbad6e8b412
[stable9.1] Fix issues where some user settings cannot be loaded when…
2016-08-29 20:33:10 +02:00
Joas Schilling 167cea0b09 Merge pull request #1126 from nextcloud/stable10-theming-performance
[stable10] theming performance
2016-08-29 15:44:19 +02:00
Vincent Petry db420e54a1 [9.1] Before a user is getting scanned the database connection is re-establ… 2016-08-29 15:22:29 +02:00
Vincent Petry 006e9e8b42 Make sure file list files config always exists
Initialize files config with defaults in case none was passed
2016-08-29 15:20:48 +02:00
Thomas Müller f6ee9340c2 [stable9.1] Fix issues where some user settings cannot be loaded when the user id differs in case sensitivity - fixes #25684 (#25686) 2016-08-29 15:19:00 +02:00
Joas Schilling 42425bb910 Prevent parse error on editing an HTML comment 2016-08-29 14:26:40 +02:00
Lukas Reschke 49da5267a9 Use temporary file as cache 2016-08-29 12:19:02 +02:00
Lukas Reschke d4d90a0b84 Increase theming performance
1. Set proper caching headers (`Pragma: cache`)
2. Resize image proportionally to a max size of 1920px
3. Store images with progressive mode

This resizes a previous 2.8 MB picture to 300kb and makes it rendering going down from 11 seconds to less than 1 here. And future requests won't have to download the file newly.
2016-08-29 12:18:57 +02:00
Raghu Nayyar af515a615d Merge pull request #1104 from nextcloud/stable10-backport-dont-read-server-variable
[stable10] Remove reading PATH_INFO from server variable
2016-08-28 10:31:51 +02:00
Lukas Reschke 4fb2810add Remove reading PATH_INFO from server variable
Having two code paths for this is unreliable and can lead to bugs. Also, in some cases Apache isn't setting the PATH_INFO variable when mod_rewrite is used.

Fixes https://github.com/nextcloud/server/issues/983
2016-08-27 22:16:30 +02:00
Lukas Reschke 25ed51743a Merge pull request #902 from nextcloud/stable10-787
[stable10] Files external settings polish
2016-08-26 14:58:46 +02:00
Lukas Reschke 977c49ae6d Merge pull request #1081 from nextcloud/backport-660-config-path-from-env
[stable10] Allow the config dir to be specified via the enviroment
2016-08-26 14:56:31 +02:00
Damjan Georgievski a076a0d17a SetupController should use \OC::$configDir too 2016-08-26 12:31:57 +02:00
Damjan Georgievski cc8b508987 introduce NEXTCLOUD_CONFIG_DIR env variable (see #300)
nextcloud by default uses the `/config/` directory in the source/application tree for its config file(s).
with this commit that directory can be overridden by the `NEXTCLOUD_CONFIG_DIR` environment variable.

in uwsgi, you would use the option `--env "NEXTCLOUD_CONFIG_DIR=/tmp/nx-config/"`
in apache `SetENV …`
and the cli command can be run with: `NEXTCLOUD_CONFIG_DIR=/tmp/nx-config ./occ` (or just use `export` once in the
shell).

NEXTCLOUD_CONFIG_DIR can be supplied with or without the trailing slash (`/`), but in all cases `$configDir` will have
it automatically added if needed.

The other changes are several occurrences of `OC::$SERVERROOT . '/config'` to `OC::$configDir`.
2016-08-26 12:31:43 +02:00
Lukas Reschke c8d90cca29 Merge pull request #1074 from nextcloud/backport-1050
Backport of fix internal links in security & setup warnings #1050
2016-08-26 09:39:46 +02:00
Arthur Schiwon b4b175537d Backport of fix internal links in security & setup warnings #1050
fix internal links in security & setup warnings, resolves #1048

adjust js tests
2016-08-26 00:25:50 +02:00
Lukas Reschke 678fce3c18 Merge pull request #1045 from nextcloud/add-cache-buster-to-icons-css
[stable10] Add cachebuster to icons.css
2016-08-25 05:57:41 +02:00
Lukas Reschke 72939ba69e Merge pull request #1043 from nextcloud/increase-version-to-final
Increase version to 10.0 final
2016-08-25 05:45:36 +02:00
Lukas Reschke 24d030a656 Add cachebuster to icons.css 2016-08-24 20:58:52 +02:00
Lukas Reschke cc35699dcb Increase version to 10.0 final 2016-08-24 20:30:43 +02:00
Roeland Jago Douma 43ce8b13c1 Merge pull request #1034 from nextcloud/stable10_1033
[Stable10] Fix theming autoloader magic
2016-08-24 14:17:51 +02:00
Roeland Jago Douma b59f5fc725 Require a ThemingDefaults class again 2016-08-24 13:25:26 +02:00
Roeland Jago Douma a046725321 Dark autoloader magic for ThemingDefaults 2016-08-24 13:25:16 +02:00
Roeland Jago Douma 95fb14f5b0 Merge pull request #1029 from nextcloud/stable10_1013
[Stable10] Do not error on NotFoundException
2016-08-24 09:30:27 +02:00
Roeland Jago Douma 4528bdabe7 Do not error on NotFoundException
Since this exception can be thrown when a shared file is in the
trashbin there is no need to spam the log like crazy.

Fixes #938
2016-08-24 08:17:28 +02:00
Lukas Reschke 2ca5186c94 Merge pull request #993 from nextcloud/stable10-965
[stable10] Fix hidden files handling
2016-08-23 22:16:17 +02:00
Lukas Reschke 805fc22276 Merge pull request #1008 from nextcloud/shared-storage-non-recursive-10
[10] Fix shared storage recursive setup
2016-08-23 22:15:21 +02:00
Lukas Reschke e5eff3c244 Merge pull request #1022 from nextcloud/backport-1005
[stable10] Do not error on maxUploadChange
2016-08-23 15:44:00 +02:00
Robin Appelman fa980af53c prevent infinite recursion while getting storage from mount 2016-08-23 13:59:01 +02:00
Roeland Jago Douma 94b84f2d1e Merge pull request #1021 from nextcloud/stable10-1017
Cache registered autoloaders
2016-08-23 12:24:36 +02:00
Roeland Jago Douma d2718b38ff Backport of Do not error on maxUploadChange #1005 to stable10
Do not error on maxUploadChange

The new admin page broke the updating of the max upload size. This is
due to very old code there.

* Now update is done in the background using js
* Added proper route+controller to update

Fixes #994

put file handling into a section again
2016-08-23 11:39:44 +02:00
Lukas Reschke 1c01728514 Cache registered autoloaders
This saves more than 20ms (!) on every request, the previous problem was that `\OC_App::registerAutoloading` calls `\OC\AppFramework\App::buildAppNamespace` which parses the appinfo.xml. Since that was also called multiple times (e.g. on cloud.nextcloud.com over 200 times) that had a significant performance impact. Also on simple PROPFIND requests.

https://blackfire.io/profiles/compare/65a53e6e-7f35-4974-b559-4c81abd01c3b/graph shows the difference nicely.
2016-08-23 11:21:42 +02:00
Lukas Reschke f4bb803564 Merge pull request #1009 from nextcloud/backport-995
[stable10] Backport Workflow section + hidden empty sections #995 to stabble10
2016-08-23 11:20:13 +02:00
Joas Schilling 2d3c29c66a Merge pull request #1019 from nextcloud/stable10_956
[Stable10] When using permalinks don't error out if file id can't be found
2016-08-23 11:13:02 +02:00
Roeland Jago Douma 53a3ec2f18 When requesting a permalink to an invalid file redirect
We need to do the redirect to update address bar.
2016-08-23 08:15:05 +02:00
Roeland Jago Douma ac9f75e1d9 When using permalinks don't error out if file id can't be found
Fixes #952

* Use only the index route (since it went to showFile anyways)
* Fix tests
* Use getUserFolder to force init of users mounts
2016-08-23 08:15:00 +02:00
Arthur Schiwon ff2f5ecbf7 Backport Workflow section + hidden empty sections #995 to stabble10
add section to worklfowengine

enlist only registered sections that also have settings registered to

adjust test

Move admin settings to workflow section

fix wrong var name

Save the container with the app's namespace so we can resolve it
2016-08-22 16:37:48 +02:00
Roeland Jago Douma 18f694b19f Merge pull request #1012 from nextcloud/hide_tryLogin_params
[stable10] hide parameters of tryLogin when logging
2016-08-22 15:59:32 +02:00
Roeland Jago Douma e9e54f057a Merge pull request #1010 from nextcloud/backport-1006
[stable10] fixes registering of theming settings where server return OC_Defaults
2016-08-22 15:08:56 +02:00
Arthur Schiwon fa29ba1fce hide parameters of tryLogin when logging 2016-08-22 14:33:23 +02:00
Lukas Reschke cc80df9e8e Merge pull request #1001 from nextcloud/backport-969-allow-to-validate-operations
[stable10] Allow to validate operations
2016-08-22 13:43:17 +02:00
Arthur Schiwon 0f3513afff fixes registering of theming settings where server return OC_Defaults instead of ThemingDefaults 2016-08-22 13:24:08 +02:00
Robin Appelman 58b810a547 handle failed shares 2016-08-22 12:41:16 +02:00
Robin Appelman f4e89c15bf Lazy init shared storage 2016-08-22 12:41:12 +02:00
Robin Appelman 89d4684ef1 reuse existing root id 2016-08-22 12:41:08 +02:00
Robin Appelman a1fd9d275f Allow jail wrappers to lazily initialize the source storage 2016-08-22 12:41:04 +02:00
Robin Appelman 2a2f1b9a00 Allow storage wrappers to lazily initialize the source storage 2016-08-22 12:40:16 +02:00
blizzz 379260732c Merge pull request #918 from nextcloud/stable10_891
[Stable10] [OC] Fix unmerged shares repair targetdecision
2016-08-22 12:09:27 +02:00
Marius Blüm 7bb91f15b8 Merge pull request #1003 from nextcloud/backport-978-add-feedback-for-password-change
[stable10] Add feedback for password change
2016-08-22 12:08:41 +02:00
Roeland Jago Douma efc480460b Merge pull request #1002 from nextcloud/stable10_966
[Stable10] Make e-mail icon visible
2016-08-22 11:41:53 +02:00
Jack Davis f05cd64458 25532_issue_password_update_notification_updated (#25756)
* Password Update Notification

Added an IF ELSE statement to ensure that feedback is provided to the
user on successfully updating a user password in settings.

* Password Update Success Message

Updated the password update success message
2016-08-22 09:51:44 +02:00
Roeland Jago Douma f220e499c5 Make e-mail icon visible
Fixes #996

* Make mail icon visible
* Opacity to .5
* Add tooltip
2016-08-22 09:15:01 +02:00
Joas Schilling 4377d99662 Validate the operation 2016-08-22 09:03:47 +02:00
Joas Schilling 85813c42f9 System tags are not sharing but workflow 2016-08-22 09:01:00 +02:00
Vincent Petry a1f1d2c9e8 Fix hidden files handling
Hidden files (dot files) are now always rendered in the DOM to make
sure that all file operations and selection still work as expected.

Their visibility is now toggled on CSS level.
2016-08-20 18:48:29 +02:00
Roeland Jago Douma d2afda0f04 Merge pull request #981 from nextcloud/stable10-backport-federation-icon
[stable10] Update federation and update notification icon
2016-08-19 20:40:32 +02:00
Morris Jobke 418eec83e0 use simple bell as update notification icon 2016-08-19 14:00:18 +02:00
Morris Jobke 71fa7a20af Change federation icon to the share icon 2016-08-19 13:53:14 +02:00
Julius Härtl a12ea5197b Merge pull request #972 from nextcloud/stable10-backport-971
[stable10] Fix loading of ThemingDefaults
2016-08-19 13:34:32 +02:00
Marius Blüm c41bd47c0d Merge pull request #973 from nextcloud/stable10-959
[stable10] Update mimetypes
2016-08-19 13:13:50 +02:00
Roeland Jago Douma 1f473c11a1 Merge pull request #966 from nextcloud/stable9-1-link-share
[stable10] In cases where the server dictates the link share expirat…
2016-08-19 12:39:17 +02:00
Lukas Reschke 289964a477 Merge pull request #961 from nextcloud/fix-caldavtester-stable10
[stable10] Move over to new CalDAVTester repo (#25859)
2016-08-19 12:16:33 +02:00
Roeland Jago Douma 2ab26f3667 Update mimetypes 2016-08-19 11:35:52 +02:00
Julius Haertl fe15940233 Fix loading of ThemingDefaults 2016-08-19 11:29:58 +02:00
Thomas Müller 24f35f9076 [stable9.1] In cases where the server dictates the link share expiration the date is not updated on consequitive changes and enable/disable actions 2016-08-19 10:28:22 +02:00
Thomas Müller 0298760c1b Move over to new CalDAVTester repo (#25859)
* Move over to new caldac tester repo

* no run.py anymore
2016-08-19 10:19:58 +02:00
Marius Blüm 7f486705e0 Merge pull request #957 from nextcloud/stable10_fix_948
[Stable10] Nextcloud is being updated. Not ownCloud
2016-08-19 09:39:09 +02:00
Roeland Jago Douma a2b6d4d923 Nextcloud is being updated. Not ownCloud
Fixes #948
2016-08-19 08:36:17 +02:00
Robin Appelman e286e0492a fix error when not logged in 2016-08-18 23:37:34 +02:00
Robin Appelman bead6c9307 change remote cloud naming to Nextcloud 2016-08-18 23:37:16 +02:00
Robin Appelman 42f14ab5a9 dont register personal files_external setting if it's empty 2016-08-18 23:37:04 +02:00
Roeland Jago Douma df5a1e2a30 Merge pull request #939 from nextcloud/stable10-backport-937
[stable10] SVG defintions always take the first one
2016-08-18 19:21:28 +02:00
Morris Jobke 0f926e03bd Merge pull request #926 from nextcloud/backport-925-use-util-methods
[stable10] Load the Template class in case it's not loaded
2016-08-18 16:38:55 +02:00
Roeland Jago Douma c07090ef6e SVG defintions always take the first one
* Move filter definition out
2016-08-18 16:29:05 +02:00
Morris Jobke f68d5d1071 Merge pull request #935 from nextcloud/stable10-add-cachebusters
[Stable10] add cachebusters
2016-08-18 15:49:44 +02:00
Roeland Jago Douma 99a39ad209 Merge pull request #932 from nextcloud/backport-930-check-isset-require
[stable10] Fix "Undefined index" when the values do not exist
2016-08-18 14:16:31 +02:00
Lukas Reschke e014ec548d Add cachebuster to apps.css 2016-08-18 12:46:07 +02:00
Lukas Reschke d8aba95322 Add cachebuster to apps.css 2016-08-18 12:46:03 +02:00
Lukas Reschke d639fee237 Add cachebuster to styles.css 2016-08-18 12:45:59 +02:00
Lukas Reschke d6c31b4107 Add cachebuster to right navigation 2016-08-18 12:45:56 +02:00
Lukas Reschke 95fca9abad Add cache buster to left menu bar 2016-08-18 12:45:52 +02:00
Lukas Reschke 9ef16cea89 Add cache buster to logo 2016-08-18 12:45:49 +02:00
Lukas Reschke 3ac524c420 Merge pull request #904 from nextcloud/backport-903-allow-disable-comments
[stable10] Revert "Always add activities for comments to the stream"
2016-08-18 12:06:11 +02:00
Joas Schilling 91fbf815f9 Fix "Undefined index" when the values do not exist 2016-08-18 12:03:10 +02:00
Joas Schilling 93a3b7bb18 Load the Template class in case it's not loaded 2016-08-18 12:01:59 +02:00
Roeland Jago Douma 5b6b9ad1ff Merge pull request #921 from nextcloud/backport-867-notification-primary-action-always-first
[stable10] Make sure the primary action is always the first one
2016-08-18 10:39:27 +02:00
Joas Schilling 1927c28b9f Merge pull request #910 from nextcloud/stable10_864
[Stable10] Ensure the user exists before calling a method on it
2016-08-18 09:30:47 +02:00
Joas Schilling e1ec3964c8 Make sure the primary action is always the first one 2016-08-18 09:27:14 +02:00
Lukas Reschke 34ee64c853 Merge pull request #915 from nextcloud/stable10-backport-914
add viewBox to app icon for proper scaling in Firefox
2016-08-17 19:45:19 +02:00
Vincent Petry 11e9ce669a Improve regexp to detect duplicate folders when repairing unmerged shares 2016-08-17 19:39:08 +02:00
Vincent Petry c1ad88a777 Fix unmerged shares repair with mixed group and direct shares
Whenever a group share is created after a direct share, the stime order
needs to be properly considered in the repair routine, considering that
the direct user share is appended to the $subShares array and breaking
its order.
2016-08-17 19:38:33 +02:00
Vincent Petry 837dc0b336 Improve file_target finding logic when repairing unmerged shares
Pick the most recent subshare that has no parenthesis from duplication
which should match whichever name the user picked last. If all
subshares have duplicate parenthesis names, use the least recent group
share's target instead.
2016-08-17 19:38:19 +02:00
Morris Jobke 6d43860457 add viewBox to app icon for proper scaling in Firefox 2016-08-17 18:39:50 +02:00
Marius Blüm 76f19c0775 Merge pull request #913 from nextcloud/increase-version-to-rc1
[stable10] Increase version to 10.0 RC1
2016-08-17 18:07:14 +02:00
Lukas Reschke 398596b3eb Merge pull request #912 from nextcloud/stable10-backport-905
Stable10 backport 905
2016-08-17 17:54:07 +02:00
Lukas Reschke 18bfa83d20 Increase version to 10.0 RC1
Let's get ready for that ;-)
2016-08-17 17:02:41 +02:00
Morris Jobke b3cc9c6998 Fix null reference in IE 2016-08-17 16:27:18 +02:00
Morris Jobke 6f48494b08 Empty tags are not allowed for image and feColorMatrix in IE11 and below 2016-08-17 16:27:12 +02:00
Roeland Jago Douma a3c5aefc96 Add viewBox to app icons
If we don't add a viewbox a lot of browsers will just say NOPE!!! when
we ask them to scale.
2016-08-17 16:27:04 +02:00
Roeland Jago Douma ed950eb861 Remove hack 2016-08-17 16:24:31 +02:00
Morris Jobke b8d4baacdc Introduce weird hack for Firefox
* everything is 4 times as big (doubled width and doubled height)
2016-08-17 16:24:27 +02:00
Roeland Jago Douma 57c09bbba4 Filter can't be named invert in FF 2016-08-17 16:24:20 +02:00
Lukas Reschke f3336e93b8 Merge pull request #907 from nextcloud/nfd-default-10
[uc][10] Disable NFD encoding wrapper by default
2016-08-17 16:24:12 +02:00
Jörn Friedrich Dreyer 29565ec423 use $userId instead of $user 2016-08-17 15:51:36 +02:00
Thomas Müller 63fc5b601d Ensure the user exists before calling a method on it - fixes #24751 2016-08-17 15:51:19 +02:00
Morris Jobke 582250e55c Merge pull request #909 from nextcloud/stable10-backport-l10n
[stable10][tx-robot] updated from transifex
2016-08-17 15:44:22 +02:00
Nextcloud bot 4470ab36bb [tx-robot] updated from transifex 2016-08-17 13:32:21 +00:00
Vincent Petry 3c2de97ab1 Disable NFD encoding wrapper by default
Seems I forgot to set it back to false after testing.
Will give a performance boost for all storages.
2016-08-17 14:45:18 +02:00
Joas Schilling f900861485 Revert "Always add activities for comments to the stream"
This reverts commit 48c41b888c
2016-08-17 13:33:53 +02:00
Morris Jobke 263c73c685 Fix casing of external storage app 2016-08-17 13:22:28 +02:00
Morris Jobke 8ffbe757d2 layout refinements 2016-08-17 13:22:17 +02:00
Robin Appelman cc422e556b hide files external in personal settings if it's empty 2016-08-17 13:22:09 +02:00
Robin Appelman d2edd38155 don't show dependency info if we cant create new mounts 2016-08-17 13:21:59 +02:00
Robin Appelman d429f472c3 hide global credentials in personal when a user cant add mounts 2016-08-17 13:21:47 +02:00
Julius Härtl 29e45dd5ba Merge pull request #897 from nextcloud/stable10-backport-834
[stable10] Use darker colors for app icons in app management
2016-08-17 11:12:01 +02:00
Lukas Reschke f9b4a6ae61 Merge pull request #896 from nextcloud/backport-890-quota-unlimited-via-api
[stable10] Allow to retrieve the quota itself via the provisioning api
2016-08-17 10:45:06 +02:00
Raghu Nayyar ff65e0cf9b Fixes image preview when fetched from the store. 2016-08-17 09:58:17 +02:00
Raghu Nayyar c76f60e733 Adds opacity to image container. 2016-08-17 09:58:13 +02:00
Raghu Nayyar bbd764399f Removes uneeded styles. 2016-08-17 09:58:09 +02:00
Raghu Nayyar e96e652f72 Uses javascript to invert the SVGs. 2016-08-17 09:58:04 +02:00
Joas Schilling 7d700fa806 Fix constant name, copy-pasterino 2016-08-17 09:42:13 +02:00
Joas Schilling 670bbc65c8 Allow to retrieve the quota itself via the provisioning api 2016-08-17 09:42:09 +02:00
Lukas Reschke a2942c3e94 Merge pull request #894 from nextcloud/stable10-implement_712
[Stable10] Backport 796
2016-08-17 09:39:35 +02:00
Lukas Reschke 1f177aa105 Use getMockBuilder instead of createMock 2016-08-16 21:36:59 +02:00
Lukas Reschke 6ed721dde3 Rename class reference
File has been renamed only on master
2016-08-16 21:28:26 +02:00
Arthur Schiwon f4aa676cb0 adjust tests to latest changes 2016-08-16 21:11:29 +02:00
Arthur Schiwon c5fdee2678 for new we cannot have nested settings, default module is only appended if available 2016-08-16 21:11:25 +02:00
Arthur Schiwon 8ef08e46e8 add missing encryption modules to settings 2016-08-16 21:11:17 +02:00
Arthur Schiwon 4d505b72de fix missing parameters in sharing settings page 2016-08-16 21:11:10 +02:00
Arthur Schiwon e6116627b6 final db indexes 2016-08-16 21:11:06 +02:00
Arthur Schiwon eed879ab3e adopt to Controller constructor changes 2016-08-16 21:11:01 +02:00
Arthur Schiwon 6e37a007b9 check registered sections and settings after an app got updated to garbage collect orphaned classes 2016-08-16 21:10:57 +02:00
Arthur Schiwon 1e62bd3d92 attempt to remove section and settings entries when an app got disabled 2016-08-16 21:10:54 +02:00
Lukas Reschke 436e6c1078 Use MockBuilder instead of createMock
CI uses an older PHPUnit
2016-08-16 21:10:47 +02:00
Lukas Reschke 687f5bee94 Add unit tests 2016-08-16 21:10:41 +02:00
Arthur Schiwon 1ebbcdcc96 satisfy dependencies for files_external 2016-08-16 21:10:37 +02:00
Arthur Schiwon 57295ee35f simplify encryption manager fetching in DIContainer 2016-08-16 21:10:27 +02:00
Arthur Schiwon 9111b52fef move mail settings and file handling to additional ones, thus files_external gets its own section 2016-08-16 21:10:21 +02:00
Arthur Schiwon 2d66b16e34 change federatedfilesharing css class to followupsection to reduce whitespace 2016-08-16 21:10:17 +02:00
Arthur Schiwon 0c904c8de7 move systemstags to sharign section, drop collaboration section 2016-08-16 21:10:13 +02:00
Arthur Schiwon c93453e878 make updatenotification settings appear as if it is part of the version part in server settings 2016-08-16 21:10:09 +02:00
Arthur Schiwon d056f575c9 change casing in section display names 2016-08-16 21:10:04 +02:00
Arthur Schiwon ef4452e3c3 mark current section 2016-08-16 21:10:00 +02:00
Arthur Schiwon fe29483a9d fix theming tests 2016-08-16 21:09:54 +02:00
Arthur Schiwon 6fa34e334f added some missed diagnosis output 2016-08-16 21:09:50 +02:00
Arthur Schiwon cd08307bb8 rename remaining occurences of OCA/Theming/Template 2016-08-16 21:09:46 +02:00
Bjoern Schiessle 4132319bae rename "Tenmplate" to "ThemingDefaults" to make the auto loader happy" 2016-08-16 21:09:41 +02:00
Arthur Schiwon a5ba5bb19f register app autoload instead of loading apps 2016-08-16 21:09:36 +02:00
Lukas Reschke 3ad89a76b5 Resolve conflict 2016-08-16 21:09:31 +02:00
Lukas Reschke df3b708cec Add since tags to class 2016-08-16 21:09:26 +02:00
Lukas Reschke c4b35dceb0 Add missing since annotations 2016-08-16 21:09:22 +02:00
Arthur Schiwon 40778560be adjust systemtags app 2016-08-16 21:09:08 +02:00
Arthur Schiwon 63efdb35df adjust federation app 2016-08-16 21:08:41 +02:00
Arthur Schiwon 0c86f69626 superfluous 2016-08-16 21:08:22 +02:00
Arthur Schiwon ea419a29c2 adjust files app, and integrate files_external into that section 2016-08-16 21:08:16 +02:00
Arthur Schiwon 3ae0a380ae adjust Theming app 2016-08-16 21:07:09 +02:00
Arthur Schiwon 6a35c7d124 superfluous 2016-08-16 21:06:51 +02:00
Arthur Schiwon 10249f48f1 make sure shipped apps also setup their admin settings on a fresh install 2016-08-16 21:06:45 +02:00
Arthur Schiwon 09573dbbba adjust files_external 2016-08-16 21:06:38 +02:00
Arthur Schiwon 94c3d614da adjust federatedfilesharing 2016-08-16 21:06:16 +02:00
Arthur Schiwon e37db63e47 rename IAdmin to ISettings, the interface is not bound to a specific settings scope 2016-08-16 21:05:54 +02:00
Arthur Schiwon c956901949 fixes, improvements, and another app:
* setupSettings now also triggered on enable
* fixes detection of present admin section or settings in the DB
* add update routine in such cases
* encryption app migrated
2016-08-16 21:05:38 +02:00
Arthur Schiwon d7bbebb8f5 fix registration of admin settings and section on app install 2016-08-16 21:05:19 +02:00
Arthur Schiwon 2e9794f53e more admin page splitup improvements
* bump version to ensure tables are created
* make updatenotification app use settings api
* change IAdmin::render() to getForm() and change return type from Template to TemplateResponse
* adjust User_LDAP accordingly, as well as built-in forms
* add IDateTimeFormatter to AppFramework/DependencyInjection/DIContainer.php. This is important so that \OC::$server->query() is able to resolve the
constructor parameters. We should ensure that all OCP/* stuff that is available from \OC::$server is available here. Kudos to @LukasReschke
* make sure apps that have settings info in their info.xml are loaded before triggering adding the settings setup method
2016-08-16 21:05:11 +02:00
Arthur Schiwon a548902d5f Fallback for legacy settings. They are placed into Additional Settings 2016-08-16 21:04:41 +02:00
Arthur Schiwon bbb086f0d2 remove mistakenly added file 2016-08-16 21:04:34 +02:00
Arthur Schiwon 9e39c4155a fix duplicated db index name 2016-08-16 21:04:29 +02:00
Arthur Schiwon d01689037d Initial work on Apps page split:
* interfaces for the Admin settings (IAdmin) and section (ISection)
* SettingsManager service
* example setup with LDAP app
2016-08-16 21:04:22 +02:00
Lukas Reschke 737591f239 Merge pull request #858 from nextcloud/stable10-when-logged-in-then-just-redirect-to-redirected-page
[stable10] when logged in then just redirect to redirected page
2016-08-16 18:13:24 +02:00
Björn Schießle 9250ffdaa1 Merge pull request #887 from nextcloud/stable10_855
[Stable10] Add files drop capability for clients
2016-08-16 11:38:51 +02:00
Marius Blüm e3daa8e3ce Merge pull request #872 from nextcloud/move-apps-stable10
[stable10] move apps between 'Language' and 'Session' in personal settings
2016-08-16 11:26:13 +02:00
Lukas Reschke 716adb8462 Merge pull request #884 from nextcloud/stable10-use-proper-test-execution
[stable10] Use proper casing
2016-08-15 21:50:38 +02:00
Roeland Jago Douma f1d4341dd7 Add files drop capability for clients 2016-08-15 21:29:03 +02:00
Roeland Jago Douma a8ba573ba9 We have to mock the is_uploaded_file in the OC\Core\Controller namespace 2016-08-15 20:09:48 +02:00
Roeland Jago Douma b860fa7125 Fix mock call in AvatarControllerTest 2016-08-15 20:09:37 +02:00
Lukas Reschke 5e9c7d3ff3 Use generated URL 2016-08-15 19:26:24 +02:00
Lukas Reschke 81467f7c4e Fix CheckSetupController tests 2016-08-15 17:55:36 +02:00
Lukas Reschke ab9a8ce952 Fix tests for LoginController 2016-08-15 17:52:54 +02:00
Lukas Reschke 349f5e4a60 Fix template test 2016-08-15 17:48:58 +02:00
Lukas Reschke 18388a01f5 Add reference to current user 2016-08-15 17:48:55 +02:00
Lukas Reschke db34a8c861 Use proper casing 2016-08-15 17:48:45 +02:00
Roeland Jago Douma b6f0a06725 Merge pull request #875 from nextcloud/stable10_composer_files
Recreate the composer autoloader files
2016-08-15 14:52:00 +02:00
Roeland Jago Douma 17d0988a83 Recreate the composer autoloader files
* Adds missing files (so they are statically loaded)
2016-08-15 13:38:22 +02:00
Bjoern Schiessle a3cb247d88 move apps between 'Language' and 'Session' in personal settings 2016-08-15 12:06:19 +02:00
Lukas Reschke 9ac6b83687 Use createMock instead of deprecated getMock 2016-08-13 21:04:16 +02:00
Lukas Reschke be1e64486f Redirect users when already logged-in on login form 2016-08-13 21:04:10 +02:00
Lukas Reschke 3b27a2a412 Merge pull request #833 from nextcloud/stable10-backport-819
[stable10] Theming support for apps
2016-08-11 11:24:06 +02:00
Julius Haertl 0b838b8eef Theming: Add OCA.Theming Js for app interaction 2016-08-10 18:46:39 +02:00
Julius Haertl 5bf85b727b Add css classes to allow app developers using the theming colors 2016-08-10 18:46:28 +02:00
Lukas Reschke 550c5ee7c4 Merge pull request #811 from nextcloud/shared-cachethepropagatorinstance-stable10
Store the shared propagator instance
2016-08-10 17:24:44 +02:00
Lukas Reschke f3a3953ca3 Merge pull request #809 from nextcloud/skip_expiry_for_users_that_never_logged_in-stable10
Skip version and trash expiry for users that never logged in
2016-08-10 16:31:19 +02:00
Lukas Reschke 93677b2ca3 Merge pull request #817 from nextcloud/jail-root-stable10
[stable10] getJailedPath expects $path to have a trailing /
2016-08-10 16:04:13 +02:00
Lukas Reschke 5e7973b869 Merge pull request #822 from nextcloud/shared-storage-lazy-numeric-id-10
[10] get shared storage storage id without setting up the storage
2016-08-10 16:03:21 +02:00
Lukas Reschke 72d31ac074 Merge pull request #825 from nextcloud/add-warning-for-php7.1-stable10
[stable10] Nextcloud is not compatible with PHP 7.1
2016-08-10 16:02:58 +02:00
Lukas Reschke c79f885031 Merge pull request #821 from nextcloud/stable10_806
[Stable10] Token polish
2016-08-10 16:00:25 +02:00
Björn Schießle 4128c9986c Merge pull request #823 from nextcloud/stable10_807
[Stable10] OCSController requires DataResponse
2016-08-10 15:26:23 +02:00
Lukas Reschke f629bb88cb [stable10] Nextcloud is not compatible with PHP 7.1
Make the code fail hard before people update and then experience some half-broken stuff. See also https://github.com/nextcloud/docker-ci/issues/10
2016-08-10 14:29:51 +02:00
Roeland Jago Douma a54f9c6aef OCSController requires DataResponse
The OCS Controller requires a DataResponse object to be returned.
This means that all error handling will have to be done via exceptions
thrown and handling in the middleware.
2016-08-10 13:09:01 +02:00
Robin Appelman 5321a8728e get shared storage storage id without setting up the storage 2016-08-10 13:05:32 +02:00
Björn Schießle 5d11b5b278 Merge pull request #815 from nextcloud/fix-undefined-offset-in-login-controller-stable10
[stable10] Add missing array element
2016-08-10 12:50:22 +02:00
Morris Jobke 728631f1eb add more margin to right of the icon 2016-08-10 12:16:03 +02:00
Roeland Jago Douma 0727f4e372 Add sliding animation 2016-08-10 12:15:53 +02:00
Roeland Jago Douma 79b7ff3bf8 Add clipboardjs for token 2016-08-10 12:14:37 +02:00
Roeland Jago Douma 806f9b80f1 Always show delete icon for new tokens
* Always show delete icon
* Hide form if the new icon is deleted
2016-08-10 12:14:26 +02:00
Roeland Jago Douma 7d5578dd06 Add note password is only shown once 2016-08-10 12:14:16 +02:00
Thomas Müller 2e0e2064e8 Adding test case for getPathById including a jailed cache where root is just empty 2016-08-10 11:29:11 +02:00
Thomas Müller 0253300e2a getJailedPath expects $path to have a trailing / - fixes #25464 2016-08-10 11:29:02 +02:00
Thomas Müller 67534dfba0 [stable9.1] Add missing array element - fixes #25714 2016-08-10 11:13:53 +02:00
Vincent Petry 5edd5100fe Store the shared propagator instance
This instead of recreating it for every call.
2016-08-10 10:59:56 +02:00
Jörn Friedrich Dreyer 73de15fb08 Skip version and trash expiry for users that never logged in 2016-08-10 10:54:02 +02:00
Morris Jobke 0475315dd4 Merge pull request #805 from nextcloud/stable10_799
[Stable10] Open exiration date picker directly on toggle
2016-08-10 10:41:56 +02:00
Roeland Jago Douma d569d8ed88 Open exiration date picker directly on toggle 2016-08-10 08:23:26 +02:00
Roeland Jago Douma c591776afd Merge pull request #804 from nextcloud/10-admin_php_smtp_casing
[stable10] Admin setting PHP and SMTP casing
2016-08-10 08:20:11 +02:00
Lukas Reschke 94d9d52de2 Merge pull request #743 from nextcloud/fix_smb_attributes-10
[10] Fix file permissions for SMB (read-only folders will be writeable
2016-08-10 00:23:17 +02:00
Lukas Reschke 6888dee06c Merge pull request #803 from nextcloud/use-correct-version
Use correct version
2016-08-10 00:14:46 +02:00
Roeland Jago Douma 232b1f4417 Admin setting PHP and SMTP casing 2016-08-09 23:46:11 +02:00
Lukas Reschke 808a82dd6c Use correct version
Fixes https://github.com/nextcloud/server/issues/800, other apps such as fileaccesscontrol and workflow already have the correct version.
2016-08-09 23:02:42 +02:00
Roeland Jago Douma 4bab962cca Merge pull request #798 from nextcloud/stable10_781
[Stable10] Remove AGPL title
2016-08-09 21:54:07 +02:00
Roeland Jago Douma cb2e535565 Merge pull request #794 from nextcloud/stable10_780
[Stable10] Add clipboard action to Personal Settings Fed Cloud Id
2016-08-09 20:47:47 +02:00
Björn Schießle e7e81e9e76 Merge pull request #795 from nextcloud/stable10-backport-786
[stable10] log class name, ID only is hard to debug
2016-08-09 20:33:17 +02:00
Björn Schießle 044f2734af Merge pull request #792 from nextcloud/stable10_789
[Stable10] Padding of federated server
2016-08-09 19:34:05 +02:00
Roeland Jago Douma f3ae93ddd7 Remove AGPL title 2016-08-09 19:24:53 +02:00
Jörn Friedrich Dreyer 9b760aafa1 log class name, ID only is hard to debug 2016-08-09 16:19:06 +02:00
Roeland Jago Douma b5f32a055f Add clipboard action to Personal Settings Fed Cloud Id 2016-08-09 16:18:44 +02:00
Roeland Jago Douma 8fc5f6bcd0 Padding of federated server 2016-08-09 16:14:26 +02:00
Björn Schießle 289704f13d Merge pull request #788 from nextcloud/stable10-federation-error-messages
[stable10] improve federation error messages
2016-08-09 15:50:33 +02:00
Roeland Jago Douma 3914861b90 Merge pull request #785 from nextcloud/stable10_779
[Stable10] Make 'Add to your website' toggleable
2016-08-09 15:47:52 +02:00
Bjoern Schiessle d61c49a0b0 improve federation error messages 2016-08-09 14:36:30 +02:00
Roeland Jago Douma 1d6448beb1 Make 'Add to your website' toggleable 2016-08-09 14:16:32 +02:00
Björn Schießle 25a72c8099 Merge pull request #776 from nextcloud/workflow-cleanup-stable10
[stable10] Workflow cleanup
2016-08-09 12:36:03 +02:00
Joas Schilling 7637c2e366 Allow a description for workflow sections 2016-08-09 11:33:04 +02:00
Joas Schilling ae1a41f05b Add placeholder to the name field 2016-08-09 11:32:57 +02:00
Joas Schilling 1f527576a4 Rename operations and checks 2016-08-09 11:32:50 +02:00
Joas Schilling 99494925fe Highlight the check row on hover 2016-08-09 11:32:42 +02:00
Joas Schilling 47a3700973 Add some space between the rule groups 2016-08-09 11:32:32 +02:00
Roeland Jago Douma 63c8011a15 Merge pull request #773 from nextcloud/stable10-fix-systemtags-icon
[stable10] Add black version of system tags icon
2016-08-08 21:35:19 +02:00
Bugsbane 0174579fb5 Add black version of system tags icon
Includes PNG (16x16px) and SVG (scoured) versions in black, to be uniform with the other icon files.
2016-08-08 20:23:50 +02:00
Roeland Jago Douma 167e248177 Merge pull request #738 from nextcloud/increment-versions
[stable10] Increment the versions and adjust the capitilization
2016-08-08 18:26:30 +02:00
Roeland Jago Douma 5332ec4a27 Fix intergration test for admin_audit 2016-08-08 16:48:10 +02:00
Joas Schilling 924b0ac060 Disable by default 2016-08-08 16:48:00 +02:00
Joas Schilling f910837722 More casing 2016-08-08 16:48:00 +02:00
Joas Schilling 7b3974501e Increment the versions and adjust the capitilization 2016-08-08 16:48:00 +02:00
Björn Schießle 7321baa108 Merge pull request #713 from nextcloud/stable10_474
[Stable 10] Group shares with same source and target
2016-08-08 10:55:26 +02:00
Morris Jobke 65dd174655 Merge pull request #756 from nextcloud/twofactor-isset-10
[10] Check if an app provide two-factor-auth providers before we try to use them
2016-08-08 09:15:13 +02:00
Roeland Jago Douma f5bd7a3dd6 Disable buggy test for now 2016-08-07 14:05:54 +02:00
Marius Blüm eb9d0b4664 Merge pull request #757 from nextcloud/nextcloud-version-check-10
[10] Translate the server version for nextcloud
2016-08-07 09:08:49 +02:00
Joas Schilling 9bc13eb7eb Translate the server version for nextcloud 2016-08-06 10:42:26 +02:00
Robin Appelman e9310f750c Check if an app provide two-factor-auth providers before we try to use them 2016-08-06 10:30:36 +02:00
blizzz 0e808a45b8 Merge pull request #748 from nextcloud/stable10-backport-name-changes
[stable10] correct name
2016-08-05 15:42:40 +02:00
Daniel Hansson 61b3796ea5 ownCloud -> Nextcloud 2016-08-05 14:37:43 +02:00
blizzz 6bbcbb22e9 Correct name in Console Application.php
see changes :)
2016-08-05 14:37:32 +02:00
Julius Härtl efe8f7d136 Merge pull request #705 from nextcloud/backport-408-psr4-for-theming
[stable10] Theming input validation
2016-08-05 11:51:42 +02:00
Juan Pablo Villafañez 91c6c451f4 Fix file permissions for SMB (read-only folders will be writeable) (#25301)
* Fix file permissions for SMB (read-only folders will be writeable)

* Read-only folders won't be deletable

* Added comment for the read-only behaviour for folders
2016-08-05 10:23:50 +02:00
Vincent Petry e75a0a44c6 Make share target consistent when grouping group share with user share
In some situations, a group share is created before a user share, and
the recipient renamed the received share before the latter is created.
In this situation, the "file_target" was already modified and the second
created share must align to the already renamed share.

To achieve this, the MountProvider now groups only by "item_source"
value and sorts by share time. This makes it so that the least recent
share is selected as super-share and its "file_target" value is then
adjusted in all grouped shares.

This fixes the issue where this situation would have different
"file_target" values resulting in two shared folders appearing instead
of one.
2016-08-04 19:50:16 +02:00
Vincent Petry 56e9f7cdf9 Add integration tests for double shares with rename in between 2016-08-04 19:50:16 +02:00
Vincent Petry 21907c4f3e Fix RepairUnmergedShares to not skip valid repair cases
The repair step was a bit overeager to skip repairing so it missed the
case where a group share exists without subshares but with an
additional direct user share.
2016-08-04 19:50:16 +02:00
Vincent Petry 3a86dd1d1a Adjust repair version check for unmerged shares 2016-08-04 19:50:16 +02:00
Vincent Petry bee0a8f32a Group incoming shares for resharing in JS 2016-08-04 19:50:16 +02:00
Vincent Petry 2ab799f674 Added more tests for sharing's MountProvider 2016-08-04 19:50:16 +02:00
Vincent Petry 6638e1857a Add repair step for unmerged shares (WIP) 2016-08-04 19:50:16 +02:00
Vincent Petry 3e8b787dd1 Improved share grouping readability + fixed test 2016-08-04 19:50:16 +02:00
Vincent Petry c5095e760e Add integration tests for merging received shares 2016-08-04 19:50:16 +02:00
Roeland Jago Douma 39ebf120c2 Group shares with same source and target
Fixes #24575

Note that this is a very limited solution and eventually we want smarter
merging!
2016-08-04 19:49:27 +02:00
Bernhard Posselt f4f43dddf5 Merge pull request #733 from nextcloud/fix-724-stable10
Backport Stable 10: Fix #724 by using step instead of job
2016-08-04 16:23:53 +02:00
Lukas Reschke c707150dd6 Merge pull request #731 from nextcloud/stable10-add-new-apps-as-official
[stable10] Add new apps as official
2016-08-04 16:09:38 +02:00
Bernhard Posselt 5e24c6b5fd fix #724 by using step instead of job 2016-08-04 14:52:38 +02:00
Joas Schilling 4d5df58378 Merge pull request #727 from jurgenhaas/patch-2
Backport of #718
2016-08-04 14:45:28 +02:00
Joas Schilling 4bb277aee9 Order alphabetically and deduplicate the shipped.json 2016-08-04 14:42:44 +02:00
Lukas Reschke 66f6a91ade [stable10] Add new apps as official 2016-08-04 14:28:24 +02:00
Joas Schilling 713e201074 Merge pull request #602 from nextcloud/backport-workflow-engine
🚧 [WIP] Backport workflow engine 🚧
2016-08-04 14:20:14 +02:00
Jürgen Haas 2037ff1f2f Backport of #718
Backporting https://github.com/nextcloud/server/pull/718 to stable10
2016-08-04 09:14:40 +02:00
Björn Schießle d896d42931 Merge pull request #706 from nextcloud/backport-637-prevent-delete-update-on-group-shares
[stable10] Do not allow to delete/update group shares as a group member
2016-08-03 14:52:49 +02:00
Joas Schilling fc7bd03822 Add access control and automated tagging as shipped 2016-08-03 14:50:53 +02:00
Joas Schilling 8d23405602 Ooops 2016-08-03 14:44:18 +02:00
Joas Schilling 065763f117 No multi support, less magic 2016-08-03 14:44:08 +02:00
Joas Schilling 7d71535f57 Allow to define the operation 2016-08-03 14:44:01 +02:00
Joas Schilling c12c083eba Tags need to be loaded before 2016-08-03 14:43:52 +02:00
Joas Schilling cc719c9bb7 Translate the errors 2016-08-03 14:43:44 +02:00
Joas Schilling 66fd216d3a Load the timezones via select2 2016-08-03 14:43:35 +02:00
Morris Jobke e978c39b13 add a UI to render proper time picker 2016-08-03 14:43:26 +02:00
Joas Schilling f1869cd183 Add request time 2016-08-03 14:43:14 +02:00
Joas Schilling af3eaa86ac Add remote address 2016-08-03 14:42:55 +02:00
Joas Schilling 01d269bb4d Add Request URL 2016-08-03 14:42:48 +02:00
Joas Schilling 45c74cdc5a User agent check 2016-08-03 14:40:40 +02:00
Joas Schilling d146df5820 Add file mime type 2016-08-03 14:40:29 +02:00
Joas Schilling 627f24396c Add file size as check 2016-08-03 14:40:20 +02:00
Joas Schilling 7b87935cb9 Add system tag check 2016-08-03 14:40:12 +02:00
Joas Schilling 7b73c0f5a2 Add the systemtag js files 2016-08-03 14:40:03 +02:00
Joas Schilling df3ca567ad Make sure each plugin is only added once 2016-08-03 14:39:56 +02:00
Morris Jobke c425a677b2 Add workflowengine to check-code call 2016-08-03 14:35:54 +02:00
Roeland Jago Douma e2c4f4f9aa Add intergration test 2016-08-03 09:17:57 +02:00
Joas Schilling 7289cb5ec0 Do not allow to delete/update group shares as a group member 2016-08-03 09:17:50 +02:00
Joas Schilling 3d3614d233 Validate the input of the theming options 2016-08-03 09:15:00 +02:00
Joas Schilling 16b2d2d935 Fix tests 2016-08-03 09:14:52 +02:00
Joas Schilling eac3b8d992 Update routes.php 2016-08-03 09:14:44 +02:00
Joas Schilling 02773efe4f Remove useless check 2016-08-03 09:14:34 +02:00
Joas Schilling 08ea343adb Use the methods on the Response object 2016-08-03 09:14:24 +02:00
Joas Schilling d248fbde92 Use public API preferable 2016-08-03 09:14:15 +02:00
Joas Schilling 8bf034ffbf Move classes to PSR-4 2016-08-03 09:14:04 +02:00
Julius Härtl 482a725a8b [stable10] Change app menu to white background with dark icons (#665)
* Change app menu to white

* adjust opacity of icons in apps and user menu

* Move to svg filter on app menu to support IE9+

* fix shading of apps icon in app menu

* Fix wrong preserveAspectRatio at app menu icons

* Apply inverted app icon style to newly installed icons
2016-08-02 19:18:00 +02:00
Jan-Christoph Borchardt 16358381cc Merge pull request #696 from nextcloud/stable10-backport-shake-login
[stable10] Shake the login fields if password is wrong
2016-08-02 15:33:33 +02:00
Morris Jobke 1ae21d1e33 Rebranded to Nextcloud for the occ command line tool (#692) 2016-08-02 10:14:19 +02:00
Morris Jobke c0f2207016 Shake the login fields if password is wrong 2016-08-01 22:03:56 +02:00
Jan-Christoph Borchardt 80470093dd Merge pull request #683 from nextcloud/stable10-fix-theming-logo
[stable10] fix missing semicolon to fix themed logo on log in page
2016-08-01 21:01:51 +02:00
Morris Jobke 481418ff40 Merge pull request #593 from nextcloud/ldap-avoidneedlesssetemailonlogin-stable10
[stable10] Prevent setting email and triggering events at login time (#25554)
2016-08-01 18:22:20 +02:00
Morris Jobke a60fd5b34a Merge pull request #668 from nextcloud/stable10-video-container-size
[stable10] up the minimum size of the public share video a bit, use 16/9 ratio
2016-08-01 18:17:40 +02:00
Jan-Christoph Borchardt a32d9bbc6e fix missing semicolon to fix themed logo on log in page 2016-08-01 18:16:32 +02:00
Morris Jobke ab18c72400 Merge pull request #667 from thelinuxfr/stable10
[Stable10] Transifex Owncloud > Nextcloud
2016-07-30 09:58:53 +02:00
Frédéric LIETART f7170b39ea Transifex Owncloud > Nextcloud
Change transifex link Owncloud > Nextcloud
2016-07-29 23:35:45 +02:00
Jan-Christoph Borchardt 0d5b8f3293 up the minimum size of the public share video a bit, use 16/9 ratio, fix #603 2016-07-29 23:35:18 +02:00
Morris Jobke 558a8a62a4 Merge pull request #654 from nextcloud/add-quotaplugin-v2-stable10
[stable10] Add quotaplugin v2 stable10
2016-07-29 14:10:57 +02:00
Thomas Müller f944a8861a Adding quota plugin to new dav endpoint (#25615)
* Adding quota plugin to new dav endpoint

* Added integrated test failing in old endpoint

* Added 0B quota test
2016-07-29 12:31:56 +02:00
Björn Schießle 6301f75cb0 Merge pull request #639 from nextcloud/theming-firstrunwizard-stable10
[stable10] apply theme to the firstrunwizard
2016-07-29 11:37:25 +02:00
Morris Jobke eee791ad56 Merge pull request #641 from nextcloud/backport-566-stable10
[stable10] revert to old setup connection logic
2016-07-29 08:59:36 +02:00
Robin Appelman de8bb68325 revert to old setup connection logic 2016-07-29 00:41:12 +02:00
Morris Jobke 51be4bf2f0 Merge pull request #618 from nextcloud/backport-519-stable10
Backport LDAPProvider to Nextcloud 10
2016-07-28 23:13:21 +02:00
Morris Jobke 94f4e1009c Merge pull request #610 from nextcloud/no-missing-preview-10
[10] Don't try to load previews when we know there is none
2016-07-28 17:48:42 +02:00
Bjoern Schiessle 35acbd6279 fix background id selector for the first run wizard 2016-07-28 17:44:23 +02:00
Bjoern Schiessle 39f88c74f9 fix unit tests 2016-07-28 17:44:01 +02:00
Bjoern Schiessle 6aede49ea1 re-use background color from theme in the firstrunwizard 2016-07-28 17:43:52 +02:00
Bjoern Schiessle 39712d1adc apply theme to the firstrunwizard 2016-07-28 17:43:45 +02:00
Björn Schießle b28e6a7938 Merge pull request #635 from nextcloud/stable10-backport-415
[stable10] Colorize checkboxes depending on theming color
2016-07-28 17:41:20 +02:00
Morris Jobke 2830b80042 Merge pull request #619 from nextcloud/backport-494-systemtags-management
[stable10] Add a simple Admin UI to manage systemtags
2016-07-28 17:02:22 +02:00
Morris Jobke 0a14cd4d60 Merge pull request #628 from nextcloud/stable10-backport-612
[stable10] libxml - compare against loaded version
2016-07-28 16:56:55 +02:00
Julius Haertl 4eb85f10a9 Theming: Cleanup and remove opacity from checkbox/radiobutton 2016-07-28 16:18:51 +02:00
Julius Haertl 1f3e55bc86 Theming: Generate colorized radio buttons dynamically 2016-07-28 16:18:50 +02:00
Julius Haertl b7024b454f Theming: Colorize radio buttons and append new styles on preview 2016-07-28 16:18:50 +02:00
Julius Haertl aa4e133443 Theming: Clean up css generation and fix tests 2016-07-28 16:18:50 +02:00
Julius Haertl 49ef99474f Theming: Colorize checkboxes depending on luminance 2016-07-28 16:18:47 +02:00
Julius Haertl 5c12c8cb02 Theming: Preview for colorized checkboxes 2016-07-28 16:17:53 +02:00
Morris Jobke b1830b74fe Merge pull request #622 from nextcloud/stable10-fix-searchbox-background
[stable10] fix searchbox background
2016-07-28 16:14:09 +02:00
Joas Schilling f814ef6ea7 Add L10N support 2016-07-28 16:13:43 +02:00
Roeland Jago Douma e184e4ad75 Merge pull request #609 from nextcloud/stable10_606
Support subdir in the OCS v2 endpoint
2016-07-28 14:23:40 +02:00
Morris Jobke 1913419520 libxml - compare against loaded version
* if the compiled in version is older than the loaded version Nextcloud doesn't work
* uses the loaded libxml version to check against

fixes #205
2016-07-28 14:11:32 +02:00
Roeland Jago Douma 6990a4e550 Support subdir in the OCS v2 endpoint
We should check against the ending substring since people could
run their nextcloud in a subfolder.

* Added test
2016-07-28 13:12:01 +02:00
Morris Jobke 77c18e4ec2 Merge pull request #614 from nextcloud/stable10-ns-server-contributing.md
[stable10] change core to server - backport of #533
2016-07-28 11:08:59 +02:00
Joas Schilling cba370634f Add a simple Admin UI to manage systemtags 2016-07-28 10:37:48 +02:00
root aa02f518ad Backport LDAPProvider to Nextcloud 10
New LDAPProvider for user_ldap

final changes

comments amended

Nextcloud license header for new files
2016-07-28 10:20:38 +02:00
Morris Jobke c9b4a2b4cc Fix unit tests 2016-07-28 10:08:36 +02:00
Jan-Christoph Borchardt 12a35e46ce also adjust log in background color in theme 2016-07-28 10:08:02 +02:00
Jan-Christoph Borchardt 88560096d4 fix searchbox overlapping on mobile 2016-07-28 10:07:57 +02:00
Olivier Paroz dbafc183da change core to server 2016-07-28 09:22:59 +02:00
Robin Appelman 05b6850a9e fix js test 2016-07-27 16:38:07 +02:00
Robin Appelman b9dfc1674c only load sidebar previews when we know it's available 2016-07-27 16:38:03 +02:00
Robin Appelman 276383ebf5 dont load filelist previews if we know we dont have one 2016-07-27 16:37:59 +02:00
Robin Appelman 76b2cffb08 add dav property to check if a file has a preview available 2016-07-27 16:37:56 +02:00
Morris Jobke 1fc7248dae Merge pull request #591 from nextcloud/fixing-undefined-OfflineUser-composeAndStoreDisplayName-stable10
[stable10] Fix undefined OfflineUser::composeAndStoreDisplayName()
2016-07-27 15:25:31 +02:00
Morris Jobke 0e816a65b5 Merge pull request #580 from nextcloud/backport-550-stable10
[stable10] fix autoloading in LPAP integration tests, resolves #544
2016-07-27 14:55:26 +02:00
Björn Schießle b0f23598e1 Merge pull request #599 from nextcloud/fix-defaultapp-master-stable10
Redirect to default page after login
2016-07-27 14:30:56 +02:00
Morris Jobke 8e0e85c631 Fix loading icon for workflowengine 2016-07-27 14:13:18 +02:00
Joas Schilling 2a4a1278fa Allow DI of the workflow manager by the OCP interface 2016-07-27 14:13:08 +02:00
Joas Schilling ec8ec17cf4 Allow to reuse the template 2016-07-27 14:12:47 +02:00
Joas Schilling 0ebc3bbc9f Fix default value of operator 2016-07-27 14:12:39 +02:00
Joas Schilling 34f46c8e7f Fix morris comments 2016-07-27 14:12:28 +02:00
Joas Schilling 6a21289378 Remove php side of check registration 2016-07-27 14:12:19 +02:00
Joas Schilling 155e4ced3f Generate the checks list in JS 2016-07-27 14:12:12 +02:00
Morris Jobke 01ec62e3d2 fix enabled apps tests 2016-07-27 14:11:53 +02:00
Morris Jobke b2e4a8c0d3 fix unit tests 2016-07-27 14:11:46 +02:00
Joas Schilling 80eeedc005 Add app to provisioning output 2016-07-27 14:11:36 +02:00
Morris Jobke 497954ca34 Move template to workflowengine app 2016-07-27 14:11:14 +02:00
Morris Jobke 6eabcf134f create an operation based on the correct model 2016-07-27 14:10:55 +02:00
Morris Jobke bc6c05afb6 Add workflowengine 2016-07-27 14:10:43 +02:00
Morris Jobke df3cacdc50 Merge pull request #588 from nextcloud/stable10-app-icons
[stable10] Add app icons for Comments and Tags
2016-07-27 13:03:51 +02:00
Bjoern Schiessle 7c476e4fa2 Redirect to default page after login 2016-07-27 12:14:13 +02:00
Vincent Petry b9266e7141 Prevent setting email and triggering events at login time (#25554)
Whenever an LDAP user also has an email address defined in LDAP, the
LDAP code will try and update the email address of the locally known
user. This happens at login time or every time the user's LDAP
attributes are processed.

There is code listening to the email setting hook which updates the
system address book, which also will trigger FS setup due to avatars
and other things.

This fix only sets the email address when really necessary.
2016-07-27 11:32:10 +02:00
Thomas Müller ac5987a017 [stable9.1] Fix undefined OfflineUser::composeAndStoreDisplayName() - fixes #23248 2016-07-27 11:21:26 +02:00
Marius Blüm 4b96e3a93e Add icon for tags app 2016-07-27 11:10:52 +02:00
Marius Blüm 24d3164abe Add icon for comments app 2016-07-27 11:09:32 +02:00
Björn Schießle cb10ca5c23 Merge pull request #569 from nextcloud/stable10-fix-theme-logo-position
[stable10] fix theme logo position
2016-07-27 10:21:45 +02:00
Arthur Schiwon 1013fac447 fix autoloading in LPAP integration tests, resolves #544 2016-07-26 21:06:29 +02:00
Julius Haertl db755d7236 Theming: Fix preview and center alignment of logo 2016-07-26 13:24:41 +02:00
Lukas Reschke 9281b008c5 Adjust tests 2016-07-26 13:24:34 +02:00
Jos Poortvliet a8616f68b5 Update header.css
make the logo look good on the login page
2016-07-26 13:24:28 +02:00
Jos Poortvliet 148cb09e00 Update themingcontroller.php 2016-07-26 13:24:08 +02:00
Morris Jobke 010a8b49f3 Merge pull request #562 from nextcloud/stable10-backport-557
[stable10] Add proper scope to files external CSS
2016-07-26 12:06:49 +02:00
Morris Jobke d5e783d2bd Add proper scope to files external CSS
* for select2
2016-07-26 09:20:40 +02:00
Morris Jobke 4c45d0fcd3 Merge pull request #551 from nextcloud/stable10-backport-547
[stable10] Fix error message while restoring all files
2016-07-25 16:08:14 +02:00
Morris Jobke edc15db3bd Fix error message while restoring all files
* use $_POST['files'] only of ssinlge files are restored
* fixes #528
2016-07-25 12:57:18 +02:00
Morris Jobke d181301699 Merge pull request #508 from nextcloud/stable10_ocs_appframework_xml
[Stable10] AppFramework do not get default response
2016-07-25 12:52:13 +02:00
Morris Jobke 750644aa15 Merge pull request #548 from nextcloud/backport-530-theming-autoloading
[stable10] Make sure we try to autoload the class
2016-07-25 11:10:01 +02:00
Joas Schilling 28dffaa32f Make sure we try to autoload the class 2016-07-25 09:42:28 +02:00
Morris Jobke 3a212651d2 Merge pull request #513 from nextcloud/backport-505-license-mailmap
[stable10] license and mailmap backports
2016-07-22 12:58:31 +02:00
Morris Jobke 09812c60ec Merge pull request #515 from nextcloud/run-le-script-10
[stable10] Run the license script
2016-07-22 12:58:19 +02:00
Joas Schilling 23b205ed48 Run the license script 2016-07-22 11:40:41 +02:00
Roeland Jago Douma a08e201d19 Fix e-mail in mailmap 2016-07-22 11:20:57 +02:00
Joas Schilling 2d5a854f45 Fix more mailmap entries 2016-07-22 11:20:57 +02:00
Bjoern Schiessle d3a11e9cf1 only search the license header for @copyright statements 2016-07-22 11:20:57 +02:00
Joas Schilling 3f4db2d02b Fix the license script 2016-07-22 11:20:54 +02:00
Roeland Douma 49a4654150 Merge pull request #512 from nextcloud/backport-496-doc-fix-10
[stable10] Make the changes from doc fix persistant
2016-07-22 11:12:19 +02:00
Joas Schilling 413968d4ba FIx typo 2016-07-22 09:54:03 +02:00
Joas Schilling f4fbdbabee Change the app name 2016-07-22 09:24:59 +02:00
Joas Schilling c8c78fd981 Make the changes from https://github.com/nextcloud/documentation/commit/6ccd2c5678b85d35a8673d784bef5c6c89e7ecb9 persistant 2016-07-22 09:23:50 +02:00
Roeland Jago Douma 2abd83212e AppFramework do not get default response
The OCSResponse differs from other responses in that it defaults to
XML. However we fell back to json by default.

This makes sure that if nothing is set we don't pass anything.
Which defaults then to the controllers default (which is often 'json')
but in the case of the OCSResponse 'xml'.
2016-07-21 20:32:48 +02:00
Morris Jobke b4c7eb5326 Merge pull request #495 from nextcloud/fix-layout-public-upload-stable10
[stable10] move closing div to the right place
2016-07-21 19:50:42 +02:00
Bjoern Schiessle f98bc936d7 move closing div to the right place 2016-07-21 11:30:37 +02:00
Morris Jobke d8b9672ad8 Merge pull request #485 from nextcloud/stable10-reenable-help-section
[Stable10] reenable help section
2016-07-21 09:18:50 +02:00
Morris Jobke db5a709885 Merge pull request #487 from nextcloud/stable10-link-proper
[stable10] Properly link to nextcloud
2016-07-21 09:18:10 +02:00
Morris Jobke cb08ab7c00 Merge pull request #489 from nextcloud/stable10-brand-to-nextcloud
[stable10] Use proper branding
2016-07-21 09:17:22 +02:00
Lukas Reschke 0caeb31d83 Use proper branding
Stable9 has this already
2016-07-21 02:21:28 +02:00
Lukas Reschke 10f3178215 [master] Properly link to nextcloud 2016-07-21 02:15:37 +02:00
Lukas Reschke ed21916999 Add proper links 2016-07-21 02:11:34 +02:00
Lukas Reschke 305534225e Revert "Remove "Help" link from personal sidebar"
This reverts commit deef15a3c7.
2016-07-21 02:11:30 +02:00
Lukas Reschke decfd1ab59 Link to proper clients 2016-07-21 01:57:03 +02:00
Lukas Reschke d4f9a69a72 Port 2d37341 to stable10 2016-07-21 01:46:11 +02:00
Lukas Reschke fb006181ad Add ownCloud cert 2016-07-21 01:35:23 +02:00
Lukas Reschke 96c2b0de66 Use proper certificates
Ports https://github.com/nextcloud/server/commit/bcf693539be82e872ba4d6cceb1f430a4bb841d9
2016-07-21 01:35:19 +02:00
14412 changed files with 795276 additions and 1432248 deletions
+3
View File
@@ -0,0 +1,3 @@
{
"directory": "core/vendor"
}
-91
View File
@@ -1,91 +0,0 @@
FROM ubuntu:noble
ARG DEBIAN_FRONTEND=noninteractive
# PHP
RUN apt-get update -y && \
apt install -y apache2 vim software-properties-common sudo nano gnupg2 wget curl git \
lsb-release ca-certificates apt-transport-https && \
add-apt-repository ppa:ondrej/php -y && \
apt-get update -y
RUN apt-get install --no-install-recommends -y \
php8.4 \
php8.4-common \
php8.4-gd \
php8.4-zip \
php8.4-curl \
php8.4-xml \
php8.4-xmlrpc \
php8.4-mbstring \
php8.4-sqlite \
php8.4-xdebug \
php8.4-pgsql \
php8.4-intl \
php8.4-imagick \
php8.4-gmp \
php8.4-apcu \
php8.4-bcmath \
php8.4-redis \
php8.4-soap \
php8.4-imap \
php8.4-opcache \
php8.4-cli \
php8.4-dev \
libmagickcore-6.q16-7-extra \
lsof \
make \
unzip
# Composer
RUN curl -sS https://getcomposer.org/installer -o /tmp/composer-setup.php && \
curl -sS https://composer.github.io/installer.sig -o /tmp/composer-setup.sig && \
php -r "if (hash_file('sha384', '/tmp/composer-setup.php') !== trim(file_get_contents('/tmp/composer-setup.sig'))) { echo 'Composer installation failed, invalid hash'; exit(1); }" && \
php /tmp/composer-setup.php --install-dir=/usr/local/bin --filename=composer && \
rm /tmp/composer-setup.php /tmp/composer-setup.sig
RUN echo "xdebug.remote_enable = 1" >> /etc/php/8.4/cli/conf.d/20-xdebug.ini && \
echo "xdebug.remote_autostart = 1" >> /etc/php/8.4/cli/conf.d/20-xdebug.ini && \
echo "apc.enable_cli=1" >> /etc/php/8.4/cli/conf.d/20-apcu.ini
# Autostart XDebug for apache
RUN { \
echo "xdebug.mode=debug"; \
echo "xdebug.start_with_request=yes"; \
} >> /etc/php/8.4/apache2/conf.d/20-xdebug.ini
# Increase PHP memory limit to 512mb
RUN sed -i 's/memory_limit = .*/memory_limit = 512M/' /etc/php/8.4/apache2/php.ini
# Docker CLI only (for controlling host Docker via socket)
RUN install -m 0755 -d /etc/apt/keyrings && \
curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc && \
chmod a+r /etc/apt/keyrings/docker.asc && \
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | \
tee /etc/apt/sources.list.d/docker.list > /dev/null && \
apt-get update -y && \
apt-get install -y docker-ce-cli && \
ln -s /var/run/docker-host.sock /var/run/docker.sock
# Dedicated DevContainer user runs Apache
ENV APACHE_RUN_USER=devcontainer
ENV APACHE_RUN_GROUP=devcontainer
# Delete any existing user/group with UID/GID 1000 first
RUN (getent passwd 1000 && userdel -r $(getent passwd 1000 | cut -d: -f1)) || true && \
(getent group 1000 && groupdel $(getent group 1000 | cut -d: -f1)) || true && \
groupadd -g 1000 ${APACHE_RUN_GROUP} && \
useradd -u 1000 -g 1000 -ms /bin/bash ${APACHE_RUN_USER} && \
adduser ${APACHE_RUN_USER} sudo && \
echo '%sudo ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers && \
sed -ri "s/^export APACHE_RUN_USER=.*$/export APACHE_RUN_USER=${APACHE_RUN_USER}/" "/etc/apache2/envvars" && \
sed -ri "s/^export APACHE_RUN_GROUP=.*$/export APACHE_RUN_GROUP=${APACHE_RUN_GROUP}/" "/etc/apache2/envvars"
USER devcontainer
# NVM
RUN curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash
RUN bash --login -i -c 'source /home/devcontainer/.bashrc && nvm install 22'
WORKDIR /var/www/html
-2
View File
@@ -1,2 +0,0 @@
SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors
SPDX-License-Identifier: AGPL-3.0-or-later
-76
View File
@@ -1,76 +0,0 @@
<!--
- SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors
- SPDX-License-Identifier: AGPL-3.0-or-later
-->
# Nextcloud DevContainer
## Usage
Make sure you have the [VSCode DevContainer](https://code.visualstudio.com/docs/devcontainers/containers) extensions installed. If you open the project, VSCode will ask you if you want to open it inside of the DevContainer. If that's not the case, use <kbd>F1</kbd>&rarr;*Dev Containers: Open Folder in Container*.
Alternatively open the project directly in [GitHub Codespaces](https://github.com/codespaces/new?hide_repo_select=true&ref=master&repo=60243197&skip_quickstart=true).
That's already it. Everything else will be configured automatically by the Containers startup routine.
## Credentials
On first start the Container installs and configures Nextcloud with the following credentials:
**Nextcloud Admin Login**
Username: `admin` <br>
Password: `admin`
**Postgres credentials**
Username: `postgres` <br>
Password: `postgres` <br>
Database: `postgres`
## Services
The following services will be started:
| Service | Local port | Description |
|---------|------------|-------------|
| Nextcloud (served via Apache) | `80` | The main application |
| Mailhog | `8025` | SMTP email delivery for testing |
| Adminer | `8080` | Database viewer. Use credentials from above and connect to `localhost` to get access to the NC database |
## Permissions
The container runs with the user `devcontainer` who is also running the Apache2 process. All mounted source files have
proper permissions so that this user can access everything which is inside the current workspace. If you need to
get root permissions for whatever reason, use `sudo su` or `sudo <command>` (for example `sudo service apache2 restart`).
Everything else (like building the application, adjusting files, ...) should be done as `devcontainer` user.
## NodeJs and NVM
The container comes with [`nvm`](https://github.com/nvm-sh/nvm) and Node 16 installed. This should be sufficient to
build Nextcloud Core sources via `make`. If you need a different Node Version (for example for
app development), you can easily switch between different versions by running:
```bash
# Install and use Node 14
nvm install 14
nvm use 14
# Check version
node -v
# Switch back to Node 16
nvm use 16
# Check version
node -v
```
Note that `nvm` is only installed for the user `devcontainer` and won't work out of the box for
any other user.
## Debugging
The Apache webserver is already configured to automatically try to connect to a debugger process
listening on port `9003`. To start the VSCode debugger process, use the delivered debug profile `Listen for XDebug`.
After you started the VSCode debugger, just navigate to the appropriate Nextcloud URL to get your
debug hits.
-26
View File
@@ -1,26 +0,0 @@
<?php
/**
* SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
$codespaceName = getenv('CODESPACE_NAME');
$codespaceDomain = getenv('GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN');
$CONFIG = [
'mail_from_address' => 'no-reply',
'mail_smtpmode' => 'smtp',
'mail_sendmailmode' => 'smtp',
'mail_domain' => 'example.com',
'mail_smtphost' => 'localhost',
'mail_smtpport' => '1025',
'memcache.local' => '\OC\Memcache\APCu',
];
if(is_string($codespaceName) && !empty($codespaceName) && is_string($codespaceDomain) && !empty($codespaceDomain)) {
$host = $codespaceName . '-80.' . $codespaceDomain;
$CONFIG['overwritehost'] = $host;
$CONFIG['overwrite.cli.url'] = 'https://' . $host;
$CONFIG['overwriteprotocol'] = 'https';
$CONFIG['trusted_domains'] = [ $host ];
}
-28
View File
@@ -1,28 +0,0 @@
{
"name": "NextcloudServer",
"dockerComposeFile": "docker-compose.yml",
"service": "nextclouddev",
"postCreateCommand": ".devcontainer/setup.sh",
"postStartCommand": ".devcontainer/postStart.sh",
"forwardPorts": [
80,
8080,
8025
],
"customizations": {
"vscode": {
"extensions": [
"felixfbecker.php-debug",
"felixfbecker.php-intellisense",
"ms-azuretools.vscode-docker",
"xdebug.php-debug",
"donjayamanne.githistory"
],
"settings": {
"php.suggest.basic": false
}
}
},
"workspaceFolder": "/var/www/html",
"remoteUser": "devcontainer"
}
-2
View File
@@ -1,2 +0,0 @@
SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors
SPDX-License-Identifier: AGPL-3.0-or-later
-37
View File
@@ -1,37 +0,0 @@
# SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: AGPL-3.0-or-later
services:
nextclouddev:
build: .
volumes:
- .:/workspace:cached
- /var/run/docker.sock:/var/run/docker-host.sock
- ..:/var/www/html
command: /var/www/html/.devcontainer/entrypoint.sh
ports:
- 80:80
- 8080:8080
- 8025:8025
db:
image: postgres
restart: always
environment:
POSTGRES_PASSWORD: postgres
PGDATA: /data/postgres
volumes:
- db:/data/postgres
network_mode: service:nextclouddev
adminer:
image: adminer
restart: always
network_mode: service:nextclouddev
mailhog:
image: mailhog/mailhog
restart: always
network_mode: service:nextclouddev
volumes:
db:
-8
View File
@@ -1,8 +0,0 @@
#!/bin/bash
#
# SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: AGPL-3.0-or-later
#
sudo service apache2 start
while sleep 1000; do :; done
-14
View File
@@ -1,14 +0,0 @@
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "Listen for Xdebug",
"type": "php",
"request": "launch",
"port": 9003
}
]
}
-2
View File
@@ -1,2 +0,0 @@
SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors
SPDX-License-Identifier: AGPL-3.0-or-later
-13
View File
@@ -1,13 +0,0 @@
#!/bin/bash
#
# SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: AGPL-3.0-or-later
#
# Set git safe.directory
git config --global --add safe.directory /var/www/html
git config --global --add safe.directory /var/www/html/3rdparty
# Ensure devcontainer user has access to docker socket
if [ -S /var/run/docker.sock ]; then
sudo chmod 666 /var/run/docker.sock
fi
-33
View File
@@ -1,33 +0,0 @@
#!/bin/bash
#
# SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: AGPL-3.0-or-later
#
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )/../" >/dev/null 2>&1 && pwd )"
cd $DIR/
git submodule update --init
# Codespace config
cp .devcontainer/codespace.config.php config/codespace.config.php
# VSCode debugger profile
mkdir -p .vscode && cp .devcontainer/launch.json .vscode/launch.json
# Onetime installation setup
if [[ ! $(sudo -u ${APACHE_RUN_USER} php occ status) =~ installed:[[:space:]]*true ]]; then
echo "Running NC installation"
sudo -u ${APACHE_RUN_USER} php occ maintenance:install \
--verbose \
--database=pgsql \
--database-name=postgres \
--database-host=127.0.0.1 \
--database-port=5432 \
--database-user=postgres \
--database-pass=postgres \
--admin-user admin \
--admin-pass admin
fi
sudo service apache2 restart
+271
View File
@@ -0,0 +1,271 @@
pipeline:
clone:
image: plugins/git
depth: 1
jsunit:
image: nextcloudci/jsunit:jsunit-5
commands:
- ./autotest-js.sh
when:
matrix:
TESTS: jsunit
nodb-php5.4:
image: nextcloudci/php5.4:php5.4-5
commands:
- NOCOVERAGE=true TEST_SELECTION=NODB ./autotest.sh sqlite
when:
matrix:
DB: NODB
PHP: 5.4
nodb-php5.5:
image: nextcloudci/php5.5:php5.5-5
commands:
- NOCOVERAGE=true TEST_SELECTION=NODB ./autotest.sh sqlite
when:
matrix:
DB: NODB
PHP: 5.5
app-check-code:
image: nextcloudci/php7.0:php7.0-7
commands:
- ./occ app:check-code admin_audit
- ./occ app:check-code comments
- ./occ app:check-code federation
- ./occ app:check-code workflowengine
when:
matrix:
TESTS: app-check-code
syntax-php5.4:
image: nextcloudci/php5.4:php5.4-5
commands:
- composer install
- ./lib/composer/bin/parallel-lint --exclude lib/composer/jakub-onderka/ --exclude 3rdparty/symfony/polyfill-php70/Resources/stubs/ --exclude 3rdparty/patchwork/utf8/src/Patchwork/Utf8/Bootup/ --exclude 3rdparty/paragonie/random_compat/lib/ --exclude lib/composer/composer/autoload_static.php --exclude 3rdparty/composer/autoload_static.php .
when:
matrix:
TESTS: syntax-php5.4
syntax-php5.5:
image: nextcloudci/php5.5:php5.5-5
commands:
- composer install
- ./lib/composer/bin/parallel-lint --exclude lib/composer/jakub-onderka/ --exclude 3rdparty/symfony/polyfill-php70/Resources/stubs/ --exclude 3rdparty/patchwork/utf8/src/Patchwork/Utf8/Bootup/ --exclude 3rdparty/paragonie/random_compat/lib/ --exclude lib/composer/composer/autoload_static.php --exclude 3rdparty/composer/autoload_static.php .
when:
matrix:
TESTS: syntax-php5.5
syntax-php5.6:
image: nextcloudci/php5.6:php5.6-7
commands:
- composer install
- ./lib/composer/bin/parallel-lint --exclude lib/composer/jakub-onderka/ --exclude 3rdparty/symfony/polyfill-php70/Resources/stubs/ --exclude 3rdparty/patchwork/utf8/src/Patchwork/Utf8/Bootup/ --exclude 3rdparty/paragonie/random_compat/lib/ --exclude lib/composer/composer/autoload_static.php --exclude 3rdparty/composer/autoload_static.php .
when:
matrix:
TESTS: syntax-php5.6
syntax-php7.0:
image: nextcloudci/php7.0:php7.0-7
commands:
- composer install
- ./lib/composer/bin/parallel-lint --exclude lib/composer/jakub-onderka/ --exclude 3rdparty/symfony/polyfill-php70/Resources/stubs/ --exclude 3rdparty/patchwork/utf8/src/Patchwork/Utf8/Bootup/ --exclude 3rdparty/paragonie/random_compat/lib/ --exclude lib/composer/composer/autoload_static.php --exclude 3rdparty/composer/autoload_static.php .
when:
matrix:
TESTS: syntax-php7.0
litmus-v1:
image: nextcloudci/litmus-php7.0:litmus-php7.0-4
commands:
- bash tests/travis/install.sh sqlite
- bash apps/dav/tests/travis/litmus-v1/script.sh
when:
matrix:
TESTS: litmus-v1
litmus-v2:
image: nextcloudci/litmus-php7.0:litmus-php7.0-4
commands:
- bash tests/travis/install.sh sqlite
- bash apps/dav/tests/travis/litmus-v2/script.sh
when:
matrix:
TESTS: litmus-v2
caldavtester-new-endpoint:
image: nextcloudci/litmus-php7.0:litmus-php7.0-4
commands:
- bash tests/travis/install.sh sqlite
- bash apps/dav/tests/travis/caldav/install.sh
- bash apps/dav/tests/travis/caldav/script-new-endpoint.sh
when:
matrix:
TESTS: caldavtester-new-endpoint
caldavtester-old-endpoint:
image: nextcloudci/litmus-php7.0:litmus-php7.0-4
commands:
- bash tests/travis/install.sh sqlite
- bash apps/dav/tests/travis/caldav/install.sh
- bash apps/dav/tests/travis/caldav/script-old-endpoint.sh
when:
matrix:
TESTS: caldavtester-old-endpoint
carddavtester-new-endpoint:
image: nextcloudci/litmus-php7.0:litmus-php7.0-4
commands:
- bash tests/travis/install.sh sqlite
- bash apps/dav/tests/travis/carddav/install.sh
- bash apps/dav/tests/travis/carddav/script-new-endpoint.sh
when:
matrix:
TESTS: carddavtester-new-endpoint
carddavtester-old-endpoint:
image: nextcloudci/litmus-php7.0:litmus-php7.0-4
commands:
- bash tests/travis/install.sh sqlite
- bash apps/dav/tests/travis/carddav/install.sh
- bash apps/dav/tests/travis/carddav/script-old-endpoint.sh
when:
matrix:
TESTS: carddavtester-old-endpoint
nodb-php5.6:
image: nextcloudci/php5.6:php5.6-7
commands:
- NOCOVERAGE=true TEST_SELECTION=NODB ./autotest.sh sqlite
when:
matrix:
DB: NODB
PHP: 5.6
nodb-php7.0:
image: nextcloudci/php7.0:php7.0-7
commands:
- NOCOVERAGE=true TEST_SELECTION=NODB ./autotest.sh sqlite
when:
matrix:
DB: NODB
PHP: "7.0"
sqlite-php5.4:
image: nextcloudci/php5.4:php5.4-5
commands:
- NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh sqlite
when:
matrix:
DB: sqlite
PHP: 5.4
sqlite-php5.5:
image: nextcloudci/php5.5:php5.5-5
commands:
- NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh sqlite
when:
matrix:
DB: sqlite
PHP: 5.5
sqlite-php5.6:
image: nextcloudci/php5.6:php5.6-7
commands:
- NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh sqlite
when:
matrix:
DB: sqlite
PHP: 5.6
sqlite-php7.0:
image: nextcloudci/php7.0:php7.0-7
commands:
- NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh sqlite
when:
matrix:
DB: sqlite
PHP: "7.0"
mysql-php5.6:
image: nextcloudci/php5.6:php5.6-7
commands:
- sleep 15 # gives the database enough time to initialize
- NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh mysql
when:
matrix:
DB: mysql
PHP: 5.6
postgres-php5.6:
image: nextcloudci/php5.6:php5.6-7
commands:
- sleep 10 # gives the database enough time to initialize
- NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh pgsql
when:
matrix:
DB: postgres
PHP: 5.6
integration:
image: nextcloudci/php7.0:php7.0-7
commands:
- ./occ maintenance:install --admin-pass=admin
- cd build/integration
- ./run.sh
when:
matrix:
TESTS: integration
matrix:
include:
- TESTS: integration
- TESTS: jsunit
- TESTS: app-check-code
- TESTS: syntax-php5.4
- TESTS: syntax-php5.5
- TESTS: syntax-php5.6
- TESTS: syntax-php7.0
- TESTS: litmus-v1
- TESTS: litmus-v2
- TESTS: caldavtester-old-endpoint
- TESTS: caldavtester-new-endpoint
- TESTS: carddavtester-new-endpoint
- TESTS: carddavtester-old-endpoint
- DB: NODB
PHP: 5.4
ENABLE_REDIS: true
- DB: NODB
PHP: 5.5
ENABLE_REDIS: true
- DB: NODB
PHP: 5.6
ENABLE_REDIS: true
- DB: NODB
PHP: 7.0
ENABLE_REDIS: true
- DB: sqlite
PHP: 5.4
ENABLE_REDIS: true
- DB: sqlite
PHP: 5.5
ENABLE_REDIS: true
- DB: sqlite
PHP: 5.6
ENABLE_REDIS: true
- DB: sqlite
PHP: 7.0
ENABLE_REDIS: true
- DB: mysql
PHP: 5.6
ENABLE_REDIS: true
- DB: postgres
PHP: 5.6
ENABLE_REDIS: true
services:
cache:
image: redis
when:
matrix:
ENABLE_REDIS: true
postgres:
image: postgres
environment:
- POSTGRES_USER=oc_autotest
- POSTGRES_PASSWORD=owncloud
when:
matrix:
DB: postgres
mysql:
image: mysql
environment:
- MYSQL_ROOT_PASSWORD=owncloud
- MYSQL_USER=oc_autotest
- MYSQL_PASSWORD=owncloud
- MYSQL_DATABASE=oc_autotest
when:
matrix:
DB: mysql
branches: [ master, stable* ]
-36
View File
@@ -1,36 +0,0 @@
# https://editorconfig.org
# SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: AGPL-3.0-or-later
root = true
[*]
charset = utf-8
end_of_line = lf
indent_size = 4
indent_style = tab
insert_final_newline = true
trim_trailing_whitespace = true
[*.yml]
indent_size = 2
indent_style = space
[*.md]
trim_trailing_whitespace = false
[*.svg]
insert_final_newline = false
[package*.json]
indent_size = 2
indent_style = space
[build/psalm-baseline.xml]
indent_size = 2
indent_style = space
[config/*config.php]
indent_size = 2
indent_style = space
-3
View File
@@ -1,3 +0,0 @@
watch_file lib/versioncheck.php
watch_file package.json
use flake
-25
View File
@@ -1,25 +0,0 @@
# .git-blame-ignore-revs
# SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: AGPL-3.0-or-later
# Format control structures
caff1023ea72bb2ea94130e18a2a6e2ccf819e5f
# Update to coding-standard 1.1.1
aa5f037af71c915424c6dcfd5ad2dc82797dc0d6
# Update to coding-standard 1.2.3
af6de04e9e141466dc229e444ff3f146f4a34765
0bd284cb81b6866338aaaa67aa1d81ef9bfbb2ab
8af7ecb2576071f170ecbb0aa2311b26581e40e2
# Update to coding-standard 1.3.1
9836e9b16484582d309c8437ab46d82e34956941
# Automated refactorings
49dd79eabb2b8902559a7a4e8f8fcad54f46b604
# @nextcloud/vue import paths
b06f5ba4c47450f355a8903c1a93ac68e8c6cfc2
# Update to coding-standard 1.4.0
5981b7eb512aa411f51cad541d01c5c6e93476f0
# Migrate `and` `or` operators to logical `&&` `||` operators
660f3f6fd1ae5539b8f74bfa48859d1b9f1e6abf
# Migrate to ESLint v9 enforced code style
91f3b6b4ee60e0f8bb6e21f92d5bc52e4cebe657
-6
View File
@@ -1,6 +0,0 @@
# SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: AGPL-3.0-or-later
/dist/* binary
/package-lock.json merge=binary
/core/css/*.css* binary
/.devcontainer/*.sh text eol=lf
-111
View File
@@ -1,111 +0,0 @@
# Fallback owners for code review - ensure all PRs have someone assigned for review.
# (the last match will used so this is only used if there is no more specific code owner below)
# Backend
# is the first and gets everything to make things easier from matching syntax
* @nextcloud/server-backend
# Frontend
# this will override the backend code owners if needed
/__mocks__ @nextcloud/server-frontend
/__tests__ @nextcloud/server-frontend
/dist @nextcloud/server-frontend
/cypress @nextcloud/server-frontend
**/css @nextcloud/server-frontend
**/js @nextcloud/server-frontend
**/src @nextcloud/server-frontend
*.js @nextcloud/server-frontend
*.cjs @nextcloud/server-frontend
*.mjs @nextcloud/server-frontend
*.ts @nextcloud/server-frontend
# dependency management
package.json @nextcloud/server-dependabot @nextcloud/server-frontend
package-lock.json @nextcloud/server-dependabot
# App maintainers
/apps/admin_audit/appinfo/info.xml @luka-nextcloud @blizzz
/apps/cloud_federation_api/appinfo/info.xml @nfebe @mejo-
/apps/comments/appinfo/info.xml @edward-ly @sorbaugh
/apps/contactsinteraction/appinfo/info.xml @kesselb @SebastianKrupinski
/apps/contactsinteraction/lib @kesselb @SebastianKrupinski
/apps/contactsinteraction/tests @kesselb @SebastianKrupinski
/apps/dashboard/appinfo/info.xml @julien-nc @juliusknorr
/apps/dav/lib/CalDAV @ChristophWurst @SebastianKrupinski @tcitworld
/apps/dav/lib/CardDAV @hamza221 @SebastianKrupinski
/apps/dav/tests/unit/CalDAV @ChristophWurst @SebastianKrupinski @tcitworld
/apps/dav/tests/unit/CardDAV @hamza221 @SebastianKrupinski
/apps/encryption/appinfo/info.xml @come-nc @icewind1991
/apps/federatedfilesharing/appinfo/info.xml @icewind1991 @danxuliu
/apps/federation/appinfo/info.xml @nfebe @sorbaugh
/apps/files/appinfo/info.xml @skjnldsv @ArtificialOwl @come-nc @artonge @icewind1991 @szaimen @susnux @nfebe
/apps/files_external/appinfo/info.xml @icewind1991 @artonge
/apps/files_reminders/appinfo/info.xml @skjnldsv @sorbaugh
/apps/files_sharing/appinfo/info.xml @skjnldsv @come-nc
/apps/files_trashbin/appinfo/info.xml @icewind1991 @sorbaugh
/apps/files_versions/appinfo/info.xml @artonge @icewind1991
/apps/oauth2/appinfo/info.xml @julien-nc @ChristophWurst
/apps/provisioning_api/appinfo/info.xml @provokateurin @nickvergessen
/apps/settings/appinfo/info.xml @JuliaKirschenheuter @sorbaugh
/apps/sharebymail/appinfo/info.xml @Altahrim @skjnldsv
/apps/systemtags/appinfo/info.xml @Antreesy @marcelklehr
/apps/theming/appinfo/info.xml @skjnldsv @juliusknorr
/apps/twofactor_backupcodes/appinfo/info.xml @miaulalala @ChristophWurst
/apps/updatenotification/appinfo/info.xml @JuliaKirschenheuter @sorbaugh
/apps/user_ldap/appinfo/info.xml @come-nc @blizzz
/apps/user_status/appinfo/info.xml @Antreesy @nickvergessen
/apps/weather_status/appinfo/info.xml @julien-nc @juliusknorr
/apps/webhook_listeners/appinfo/info.xml @come-nc @julien-nc
/apps/workflowengine/appinfo/info.xml @blizzz @juliusknorr
# Files frontend expertise
/apps/files/src* @skjnldsv @nextcloud/server-frontend
/apps/files_external/src* @skjnldsv @nextcloud/server-frontend
/apps/files_reminders/src* @skjnldsv @nextcloud/server-frontend
/apps/files_sharing/src/actions* @skjnldsv @nextcloud/server-frontend
/apps/files_trashbin/src* @skjnldsv @nextcloud/server-frontend
# Security team
/build/psalm-baseline-security.xml @nickvergessen @nextcloud/server-backend
/resources/codesigning @mgallien @miaulalala @nickvergessen
/resources/config/ca-bundle.crt @miaulalala @nickvergessen
# Two-Factor Authentication
# https://github.com/nextcloud/wg-two-factor-authentication#members
**/TwoFactorAuth @ChristophWurst @miaulalala @nickvergessen
/apps/twofactor_backupcodes @ChristophWurst @miaulalala @nickvergessen
/core/templates/twofactor* @ChristophWurst @miaulalala @nickvergessen
# Limit login to IP
# Watch login routes for https://github.com/nextcloud/limit_login_to_ip
/core/routes.php @Altahrim @nextcloud/server-backend
# OpenAPI
openapi*.json @provokateurin @nextcloud/server-backend
ResponseDefinitions.php @provokateurin @nextcloud/server-backend
# Talk team
/lib/private/Comments @nickvergessen @nextcloud/talk-backend
/lib/private/Federation @nickvergessen @nextcloud/talk-backend @nextcloud/server-backend
/lib/private/Talk @nickvergessen @nextcloud/talk-backend
/lib/public/Comments @nickvergessen @nextcloud/talk-backend
/lib/public/Federation @nickvergessen @nextcloud/talk-backend @nextcloud/server-backend
/lib/public/OCM @nickvergessen @nextcloud/talk-backend @nextcloud/server-backend
/lib/public/Talk @nickvergessen @nextcloud/talk-backend
/lib/public/UserStatus @nickvergessen @nextcloud/talk-backend
*/Notifications/* @nickvergessen @nextcloud/talk-backend
# Groupware team
/build/integration/dav_features/caldav.feature @ChristophWurst @SebastianKrupinski @tcitworld
/build/integration/dav_features/carddav.feature @hamza221 @SebastianKrupinski
/lib/private/Calendar @ChristophWurst @SebastianKrupinski @tcitworld
/lib/private/Contacts @hamza221 @SebastianKrupinski
/lib/public/Calendar @ChristophWurst @SebastianKrupinski @tcitworld
/lib/public/Contacts @hamza221 @SebastianKrupinski
# Desktop client teamn
/apps/dav/lib/Connector/Sabre/BlockLegacyClientPlugin.php @nextcloud/desktop
# Personal interest
*/Activity/* @nickvergessen @nextcloud/server-backend
/apps/workflowengine/lib @nickvergessen @blizzz
-79
View File
@@ -1,79 +0,0 @@
<!--
- SPDX-FileCopyrightText: 2016 Nextcloud GmbH and Nextcloud contributors
- SPDX-License-Identifier: AGPL-3.0-or-later
-->
## Submitting issues
If you have questions about how to install or use Nextcloud, please direct these to our [forum][forum]. We are also available on [IRC][irc] (unofficial).
### Short version
* The [**issue templates can be found here**][templates] but be aware of the different repositories! See list below. Please always use an issue template when reporting issues.
### Guidelines
* Please search the existing issues first, it's likely that your issue was already reported or even fixed.
- Go to one of the repositories, click "issues" and type any word in the top search/command bar.
- You can also filter by appending e. g. "state:open" to the search string.
- More info on [search syntax within github](https://help.github.com/articles/searching-issues)
* This repository ([server](https://github.com/nextcloud/server/issues)) is *only* for issues within the Nextcloud Server code. This also includes the apps: files, encryption, external storage, sharing, deleted files, versions, LDAP, and WebDAV Auth
* __SECURITY__: Report any potential security bug to us via [our HackerOne page](https://hackerone.com/nextcloud) following our [security policy](https://nextcloud.com/security/) instead of filing an issue in our bug tracker.
* The issues in other components should be reported in their respective repositories: You will find them in our [GitHub Organization](https://github.com/nextcloud/)
* Report the issue using one of our [templates][templates], they include all the information we need to track down the issue.
Help us to maximize the effort we can spend fixing issues and adding new features, by not reporting duplicate issues.
[templates]: ./ISSUE_TEMPLATE
[forum]: https://help.nextcloud.com/
[irc]: https://web.libera.chat/#nextcloud
## Contributing to Source Code
Thanks for wanting to contribute source code to Nextcloud. That's great!
Please read the [Developer Manuals][devmanual] to learn how to create your first application or how to test the Nextcloud code with PHPUnit.
### Conventional Commits
Please use [Conventional Commits](https://www.conventionalcommits.org) for your commit messages. This helps maintain clarity and consistency across the project, making it easier to understand changes and automate versioning.
```
feat(files_sharing): allow sharing with contacts
```
### Tests
In order to constantly increase the quality of our software we can no longer accept pull request which submit un-tested code.
It is a must have that changed and added code segments are unit tested.
In some areas unit testing is hard (aka almost impossible) as of today - in these areas refactoring WHILE fixing a bug is encouraged to enable unit testing.
### Sign your work
We use the Developer Certificate of Origin (DCO) as an additional safeguard
for the Nextcloud project. This is a well established and widely used
mechanism to assure contributors have confirmed their right to license
their contribution under the project's license.
Please read [contribute/developer-certificate-of-origin][dcofile].
If you can certify it, then just add a line to every git commit message:
```
Signed-off-by: Random J Developer <random@developer.example.org>
```
Use your real name (sorry, no pseudonyms or anonymous contributions).
If you set your `user.name` and `user.email` git configs, you can sign your
commit automatically with `git commit -s`. You can also use git [aliases](https://git-scm.com/book/tr/v2/Git-Basics-Git-Aliases)
like `git config --global alias.ci 'commit -s'`. Now you can commit with
`git ci` and the commit will be signed.
### Apply a license
In case you are not sure how to add or update the license header correctly please have a look at [contribute/HowToApplyALicense.md][applyalicense]
[devmanual]: https://docs.nextcloud.com/server/latest/developer_manual/
[dcofile]: https://github.com/nextcloud/server/blob/master/contribute/developer-certificate-of-origin
[applyalicense]: https://github.com/nextcloud/server/blob/master/contribute/HowToApplyALicense.md
## Translations
Please submit translations via [Transifex][transifex].
[transifex]: https://www.transifex.com/nextcloud
-3
View File
@@ -1,3 +0,0 @@
# SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: AGPL-3.0-or-later
custom: https://nextcloud.com/include/
-212
View File
@@ -1,212 +0,0 @@
# SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: AGPL-3.0-or-later
name: "🐛 Bug report: Nextcloud Server"
description: "Submit a report and help us improve Nextcloud Server"
title: "[Bug]: "
labels: ["bug", "0. Needs triage"]
type: "Bug"
body:
- type: markdown
attributes:
value: |
### 👍 Thank you for contributing to our project!
Please note this is a **free and open-source** project. Most people take on their own time to help you, so please, be patient.
You can obtain [Enterprise support](https://nextcloud.com/support/) if you run Nextcloud Server in a mission critical environment.
- type: markdown
attributes:
value: |
### 🚨 SECURITY INFO
If you are reporting a security concern, please report it via [our HackerOne page](https://hackerone.com/nextcloud) instead and review our [security policy](https://nextcloud.com/security/).
This allows us to coordinate the fix and release without potentially exposing all Nextcloud servers and users in the meantime.
It also may qualify your report for a bug bounty reward.
Thank you for helping make Nextcloud more secure!
- type: checkboxes
id: before-posting
attributes:
label: "⚠️ This issue respects the following points: ⚠️"
description: All conditions are **required**. Your issue can be closed if these are checked incorrectly.
options:
- label: This is a **bug**, not a question or a configuration/webserver/proxy issue.
required: true
- label: This issue is **not** already reported on [Github](https://github.com/nextcloud/server/issues?q=is%3Aopen+is%3Aissue+label%3Abug) OR [Nextcloud Community Forum](https://help.nextcloud.com/) _(I've searched it)_.
required: true
- label: Nextcloud Server **is** up to date. See [Maintenance and Release Schedule](https://github.com/nextcloud/server/wiki/Maintenance-and-Release-Schedule) for supported versions.
required: true
- label: I agree to follow Nextcloud's [Code of Conduct](https://nextcloud.com/contribute/code-of-conduct/).
required: true
- type: textarea
id: bug-description
attributes:
label: Bug description
description: |
Provide a description of the bug you're experiencing.
Don't just expect someone will guess what your specific problem is and provide full details.
validations:
required: true
- type: textarea
id: reproduce
attributes:
label: Steps to reproduce
description: |
Describe the steps to reproduce the bug.
The better your description is _(go 'here', click 'there'...)_ the fastest you'll get an _(accurate)_ answer.
value: |
1.
2.
3.
validations:
required: true
- type: textarea
id: expected-behavior
attributes:
label: Expected behavior
description: Describe what you expected to happen instead.
validations:
required: true
- type: dropdown
id: nextcloud-version
attributes:
label: Nextcloud Server version
description: |
Select Nextcloud Server version.
_Versions not listed here are not maintained and not supported anymore_
options:
- "30"
- "31"
- "32"
- "master"
validations:
required: true
- type: dropdown
id: system
attributes:
label: Operating system
description: |
Select operating system where Nextcloud Server is installed.
_Describe in the "Additional info" section if you chose "Other"._
options:
- "Debian/Ubuntu"
- "RHEL/CentOS"
- "Other"
- type: dropdown
id: php
attributes:
label: PHP engine version
description: |
Select PHP engine version serving Nextcloud Server.
_Describe in the "Additional info" section if you chose "Other"._
options:
- "PHP 8.4"
- "PHP 8.3"
- "PHP 8.2"
- "PHP 8.1"
- "Other"
- type: dropdown
id: webserver
attributes:
label: Web server
description: |
Select Webserver serving Nextcloud Server.
_Describe in the "Additional info" section if you chose "Other"._
options:
- "Apache (supported)"
- "Nginx"
- "Other"
- type: dropdown
id: database
attributes:
label: Database engine version
description: |
Select Database engine serving Nextcloud Server.
_Describe in the "Additional info" section if you chose "Other"._
options:
- "MySQL"
- "MariaDB"
- "PostgreSQL"
- "SQlite"
- "Oracle"
- "Other"
- type: dropdown
id: fresh
attributes:
label: Is this bug present after an update or on a fresh install?
description: |
Select if bug is present after an update or on a fresh install.
options:
- "Updated from a MINOR version (ex. 32.0.1 to 32.0.2)"
- "Upgraded to a MAJOR version (ex. 31 to 32)"
- "Fresh Nextcloud Server install"
- type: dropdown
id: encryption
attributes:
label: Are you using the Nextcloud Server Encryption module?
description: Select if encryption is Enabled on your Nextcloud Server.
options:
- "Encryption is Enabled"
- "Encryption is Disabled"
- type: checkboxes
id: users
attributes:
label: What user-backends are you using?
description: |
Select **all** user-backends Enabled on your Nextcloud Server.
_Describe in the "Additional info" section if you chose "Other"._
options:
- label: "Default user-backend _(database)_"
- label: "LDAP/ Active Directory"
- label: "SSO - SAML"
- label: "Other"
- type: textarea
id: configs
attributes:
label: Configuration report
description: |
Provide information about your configuration.
To get this information, execute one of the following commands on the CLI:
```shell
sudo -u www-data php occ config:list system
php occ config:list system
./occ config:list system
```
> NOTE: This will be automatically formatted into code for better readability.
render: json
- type: textarea
id: apps
attributes:
label: List of activated Apps
description: |
Provide information about your apps.
To get this information, execute one of the following commands on the CLI:
```shell
sudo -u www-data php occ app:list
php occ app:list
./occ app:list
```
> NOTE: This will be automatically formatted into code for better readability.
render: shell
- type: textarea
id: nextcloud-signingstatus
attributes:
label: Nextcloud Signing status
description: |
Provide Nextcloud Signing status.
First, login as Admin user into your Nextcloud, then access this URL:
```shell
https://yournextcloud.tld/index.php/settings/integrity/failed
```
> NOTE: This will be automatically formatted into code for better readability.
render: shell
- type: textarea
id: nextcloud-log
attributes:
label: Nextcloud Logs
description: |
Provide relevant Nextcloud log entries (e.g. from the time period you reproduced the problem).
Copy full individual entries from `data/nextcloud.log` or use `Copy raw entry` from `/settings/admin/logging` section:
> NOTE: This will be automatically formatted into code for better readability.
render: json
- type: textarea
id: additional-info
attributes:
label: Additional info
description: Any additional information related to the issue (ex. browser console errors, software versions).
-50
View File
@@ -1,50 +0,0 @@
---
name: 🚀 Feature request
about: Suggest an idea for this project
labels: enhancement, 0. Needs triage
type: "Enhancement"
---
<!--
Thanks for reporting issues back to Nextcloud!
Note: This is the **issue tracker of Nextcloud**, please do NOT use this to get answers to your questions or get help for fixing your installation. This is a place to report bugs to developers, after your server has been debugged. You can find help debugging your system on our home user forums: https://help.nextcloud.com or, if you use Nextcloud in a large organization, ask our engineers on https://portal.nextcloud.com. See also https://nextcloud.com/support for support options.
Nextcloud is an open source project backed by Nextcloud GmbH. Most of our volunteers are home users and thus primarily care about issues that affect home users. Our paid engineers prioritize issues of our customers. If you are neither a home user nor a customer, consider paying somebody to fix your issue, do it yourself or become a customer.
Guidelines for submitting issues:
* Please search the existing issues first, it's likely that your issue was already reported or even fixed.
- Go to https://github.com/nextcloud and type any word in the top search/command bar. You probably see something like "We couldnt find any repositories matching ..." then click "Issues" in the left navigation.
- You can also filter by appending e. g. "state:open" to the search string.
- More info on search syntax within github: https://help.github.com/articles/searching-issues
* This repository https://github.com/nextcloud/server/issues is *only* for issues within the Nextcloud Server code. This also includes the apps: files, encryption, external storage, sharing, deleted files, versions, LDAP, and WebDAV Auth
* SECURITY: Report any potential security bug to us via our HackerOne page (https://hackerone.com/nextcloud) following our security policy (https://nextcloud.com/security/) instead of filing an issue in our bug tracker.
* The issues in other components should be reported in their respective repositories: You will find them in our GitHub Organization (https://github.com/nextcloud/)
-->
<!--- Please keep this note for other contributors -->
### How to use GitHub
* Please use the 👍 [reaction](https://blog.github.com/2016-03-10-add-reactions-to-pull-requests-issues-and-comments/) to show that you are interested into the same feature.
* Please don't comment if you have no relevant information to add. It's just extra noise for everyone subscribed to this issue.
* Subscribe to receive notifications on status change and new comments.
**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
**Describe the solution you'd like**
A clear and concise description of what you want to happen.
**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.
**Additional context**
Add any other context or screenshots about the feature request here.
@@ -1,2 +0,0 @@
SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors
SPDX-License-Identifier: AGPL-3.0-or-later
-12
View File
@@ -1,12 +0,0 @@
# SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: AGPL-3.0-or-later
contact_links:
- name: 🚨 Report a security or privacy issue
url: https://hackerone.com/nextcloud
about: Report security and privacy related issues privately to the Nextcloud team, so we can coordinate the fix and release without potentially exposing all Nextcloud servers and users in the meantime.
- name: ❓ Community Support and Help
url: https://help.nextcloud.com/
about: Configuration, webserver/proxy or performance issues and other questions
- name: 💼 Nextcloud Enterprise
url: https://portal.nextcloud.com/
about: If you are a Nextcloud Enterprise customer, or need Professional support, so it can be resolved directly by our dedicated engineers more quickly
-7
View File
@@ -1,7 +0,0 @@
# SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: AGPL-3.0-or-later
name: "CodeQL config"
paths-ignore:
- dist
-5
View File
@@ -1,5 +0,0 @@
# SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: AGPL-3.0-or-later
firstPRMergeComment: >
Thanks for your first pull request and welcome to the community!
Feel free to keep them coming! If you are looking for issues to tackle then have a look at this selection: https://github.com/nextcloud/server/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22
-145
View File
@@ -1,145 +0,0 @@
# SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: AGPL-3.0-or-later
version: 2
updates:
# GitHub Actions
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: monthly
timezone: Europe/Paris
groups:
github-actions:
patterns:
- "*"
labels:
- "3. to review"
- "feature: dependencies"
# Main composer (linting, testing, openapi)
- package-ecosystem: composer
directories:
- "/"
- "/build/integration"
- "/vendor-bin/cs-fixer"
- "/vendor-bin/openapi-extractor"
- "/vendor-bin/phpunit"
- "/vendor-bin/psalm"
- "/vendor-bin/rector"
schedule:
interval: weekly
day: saturday
time: "03:00"
timezone: Europe/Paris
labels:
- "3. to review"
- "feature: dependencies"
# Main master npm frontend dependencies
- package-ecosystem: npm
directories:
- "/"
- "/build/frontend"
- "/build/frontend-legacy"
schedule:
interval: weekly
day: saturday
time: "03:00"
timezone: Europe/Paris
open-pull-requests-limit: 20
labels:
- "3. to review"
- "feature: dependencies"
# Disable automatic rebasing because without a build CI will likely fail anyway
rebase-strategy: "disabled"
# Latest stable release
# Composer dependencies for linting and testing
- package-ecosystem: composer
target-branch: stable32
directories:
- "/"
- "/build/integration"
- "/vendor-bin/cs-fixer"
- "/vendor-bin/openapi-extractor"
- "/vendor-bin/phpunit"
- "/vendor-bin/psalm"
schedule:
interval: weekly
day: saturday
time: "03:30"
timezone: Europe/Paris
labels:
- "3. to review"
- "feature: dependencies"
ignore:
# only patch updates on stable branches
- dependency-name: "*"
update-types: ["version-update:semver-major", "version-update:semver-minor"]
# Latest stable branch
# frontend dependencies
- package-ecosystem: npm
target-branch: stable32
directory: "/"
schedule:
interval: weekly
day: saturday
time: "03:30"
timezone: Europe/Paris
open-pull-requests-limit: 20
labels:
- "3. to review"
- "feature: dependencies"
# Disable automatic rebasing because without a build CI will likely fail anyway
rebase-strategy: "disabled"
ignore:
# no major updates on stable branches
- dependency-name: "*"
update-types: ["version-update:semver-major"]
# Older stable releases
# Composer dependencies for linting and testing
- package-ecosystem: composer
target-branch: stable31
directories:
- "/"
- "/build/integration"
- "/vendor-bin/cs-fixer"
- "/vendor-bin/openapi-extractor"
- "/vendor-bin/phpunit"
- "/vendor-bin/psalm"
schedule:
interval: weekly
day: saturday
time: "04:00"
timezone: Europe/Paris
labels:
- "3. to review"
- "feature: dependencies"
ignore:
# only patch updates on stable branches
- dependency-name: "*"
update-types: ["version-update:semver-major", "version-update:semver-minor"]
# frontend dependencies
- package-ecosystem: npm
target-branch: stable31
directory: "/"
schedule:
interval: weekly
day: saturday
time: "04:00"
timezone: Europe/Paris
open-pull-requests-limit: 20
labels:
- "3. to review"
- "feature: dependencies"
# Disable automatic rebasing because without a build CI will likely fail anyway
rebase-strategy: "disabled"
ignore:
# no major updates on stable branches
- dependency-name: "*"
update-types: ["version-update:semver-major"]
-25
View File
@@ -1,25 +0,0 @@
<!--
- 🚨 SECURITY INFO
-
- Before sending a pull request that fixes a security issue please report it via our HackerOne page (https://hackerone.com/nextcloud) following our security policy (https://nextcloud.com/security/). This allows us to coordinate the fix and release without potentially exposing all Nextcloud servers and users in the meantime.
-->
* Resolves: # <!-- related github issue -->
## Summary
## TODO
- [ ] ...
## Checklist
- Code is [properly formatted](https://docs.nextcloud.com/server/latest/developer_manual/digging_deeper/continuous_integration.html#linting)
- [Sign-off message](https://github.com/src-d/guide/blob/master/developer-community/fix-DCO.md) is added to all commits
- [ ] Tests ([unit](https://docs.nextcloud.com/server/latest/developer_manual/app_development/tutorial.html#unit-tests), [integration](https://docs.nextcloud.com/server/latest/developer_manual/app_development/tutorial.html#integration-tests), api and/or acceptance) are included
- [ ] Screenshots before/after for front-end changes
- [ ] Documentation ([manuals](https://github.com/nextcloud/documentation/) or wiki) has been updated or is not required
- [ ] [Backports requested](https://github.com/nextcloud/backportbot/#usage) where applicable (ex: critical bugfixes)
- [ ] [Labels added](https://github.com/nextcloud/server/labels) where applicable (ex: bug/enhancement, `3. to review`, feature component)
- [ ] [Milestone added](https://github.com/nextcloud/server/milestones) for target branch/version (ex: 32.x for `stable32`)
-2
View File
@@ -1,2 +0,0 @@
SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors
SPDX-License-Identifier: AGPL-3.0-or-later
-126
View File
@@ -1,126 +0,0 @@
# SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: Code checkers
on:
pull_request:
permissions:
contents: read
concurrency:
group: autocheckers-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
changes:
runs-on: ubuntu-latest-low
outputs:
src: ${{ steps.changes.outputs.src }}
steps:
- uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2
id: changes
continue-on-error: true
with:
filters: |
src:
- '.github/workflows/**'
- '3rdparty/**'
- '**/appinfo/**'
- '**/lib/**'
- '**/templates/**'
- 'vendor/**'
- 'vendor-bin/**'
- 'composer.json'
- 'composer.lock'
- '**.php'
- build/autoloaderchecker.sh
autoloader:
runs-on: ubuntu-latest
needs: changes
if: needs.changes.outputs.src != 'false'
strategy:
matrix:
php-versions: ['8.2']
name: PHP checkers
steps:
- name: Checkout server
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 #v2.35.4
with:
php-version: ${{ matrix.php-versions }}
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite
coverage: none
ini-file: development
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Check auto loaders
run: bash ./build/autoloaderchecker.sh
autocheckers:
runs-on: ubuntu-latest-low
strategy:
matrix:
php-versions: ['8.2']
name: Translation and Files checkers
steps:
- name: Checkout server
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 #v2.35.4
with:
php-version: ${{ matrix.php-versions }}
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite
coverage: none
ini-file: development
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Check translations are JSON decodeable
run: php ./build/translation-checker.php
- name: Check translations do not contain triple dot but ellipsis
run: php ./build/triple-dot-checker.php
- name: Check .htaccess does not contain invalid changes
run: php ./build/htaccess-checker.php
- name: Check that all and only expected files are included
run: php ./build/files-checker.php
- name: Check that all shipped apps are linted by psalm
run: sh ./build/psalm-checker.sh
summary:
permissions:
contents: none
runs-on: ubuntu-latest-low
needs: [changes, autoloader, autocheckers]
if: always()
name: autocheckers-summary
steps:
- name: Summary status
run: if ${{ needs.autocheckers.result != 'success' || (needs.changes.outputs.src != 'false' && needs.autoloader.result != 'success') }}; then exit 1; fi
-49
View File
@@ -1,49 +0,0 @@
# This workflow is provided via the organization template repository
#
# https://github.com/nextcloud/.github
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
#
# SPDX-FileCopyrightText: 2022-2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: Block merges for EOL
on: pull_request
permissions:
contents: read
concurrency:
group: block-merge-eol-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
block-merges-eol:
name: Block merges for EOL branches
# Only run on stableXX branches
if: startsWith( github.base_ref, 'stable')
runs-on: ubuntu-latest-low
steps:
- name: Set server major version environment
uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1
with:
github-token: ${{secrets.GITHUB_TOKEN}}
script: |
const regex = /^stable(\d+)$/
const baseRef = context.payload.pull_request.base.ref
const match = baseRef.match(regex)
if (match) {
console.log('Setting server_major to ' + match[1]);
core.exportVariable('server_major', match[1]);
console.log('Setting current_month to ' + (new Date()).toISOString().substr(0, 7));
core.exportVariable('current_month', (new Date()).toISOString().substr(0, 7));
}
- name: Checking if server ${{ env.server_major }} is EOL
if: ${{ env.server_major != '' }}
run: |
curl -s https://raw.githubusercontent.com/nextcloud-releases/updater_server/production/config/major_versions.json \
| jq '.["${{ env.server_major }}"]["eol"] // "9999-99" | . >= "${{ env.current_month }}"' \
| grep -q true
-57
View File
@@ -1,57 +0,0 @@
# This workflow is provided via the organization template repository
#
# https://github.com/nextcloud/.github
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
#
# SPDX-FileCopyrightText: 2022-2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: Block merges during freezes
on:
pull_request:
types: [opened, ready_for_review, reopened, synchronize]
permissions:
contents: read
concurrency:
group: block-merge-freeze-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
block-merges-during-freeze:
name: Block merges during freezes
if: github.event.pull_request.draft == false
runs-on: ubuntu-latest-low
steps:
- name: Register server reference to fallback to master branch
uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1
with:
github-token: ${{secrets.GITHUB_TOKEN}}
script: |
const baseRef = context.payload.pull_request.base.ref
if (baseRef === 'main' || baseRef === 'master') {
core.exportVariable('server_ref', 'master');
console.log('Setting server_ref to master');
} else {
const regex = /^stable(\d+)$/
const match = baseRef.match(regex)
if (match) {
core.exportVariable('server_ref', match[0]);
console.log('Setting server_ref to ' + match[0]);
} else {
console.log('Not based on master/main/stable*, so skipping freeze check');
}
}
- name: Download version.php from ${{ env.server_ref }}
if: ${{ env.server_ref != '' }}
run: curl 'https://raw.githubusercontent.com/nextcloud/server/${{ env.server_ref }}/version.php' --output version.php
- name: Run check
if: ${{ env.server_ref != '' }}
run: cat version.php | grep 'OC_VersionString' | grep -i -v 'RC'
@@ -1,79 +0,0 @@
# SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: Block merging with outdated 3rdparty/
on:
pull_request:
types: [opened, ready_for_review, reopened, synchronize]
permissions:
contents: read
concurrency:
group: block-outdated-3rdparty-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
block-outdated-3rdparty:
name: Block merging with outdated 3rdparty/
runs-on: ubuntu-latest-low
steps:
- name: Check requirement
uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2
id: changes
continue-on-error: true
with:
filters: |
src:
- '3rdparty'
- 'version.php'
- name: Checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: 3rdparty commit hash on current branch
id: actual
run: |
echo "commit=$(git submodule status | grep ' 3rdparty' | egrep -o '[a-f0-9]{40}')" >> "$GITHUB_OUTPUT"
- name: Register server reference to fallback to master branch
uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1
with:
github-token: ${{secrets.GITHUB_TOKEN}}
script: |
const baseRef = context.payload.pull_request.base.ref
if (baseRef === 'main' || baseRef === 'master') {
core.exportVariable('server_ref', 'master');
console.log('Setting server_ref to master');
} else {
const regex = /^stable(\d+)$/
const match = baseRef.match(regex)
if (match) {
core.exportVariable('server_ref', match[0]);
console.log('Setting server_ref to ' + match[0]);
} else {
console.log('Not based on master/main/stable*, so skipping outdated 3rdparty check');
}
}
- name: Last 3rdparty commit on target branch
if: ${{ env.server_ref != '' }}
id: target
run: |
echo "commit=$(git ls-remote https://github.com/nextcloud/3rdparty refs/heads/${{ env.server_ref }} | awk '{ print $1}')" >> "$GITHUB_OUTPUT"
- name: Compare if 3rdparty commits are different
if: ${{ env.server_ref != '' }}
run: |
echo '3rdparty/ seems to not point to the last commit of the dedicated branch:'
echo 'Branch has: ${{ steps.actual.outputs.commit }}'
echo '${{ env.server_ref }} has: ${{ steps.target.outputs.commit }}'
- name: Fail if 3rdparty commits are different
if: ${{ env.server_ref != '' && steps.changes.outputs.src != 'false' && steps.actual.outputs.commit != steps.target.outputs.commit }}
run: |
exit 1
@@ -1,36 +0,0 @@
# This workflow is provided via the organization template repository
#
# https://github.com/nextcloud/.github
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
#
# SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: Block unconventional commits
on:
pull_request:
types: [opened, ready_for_review, reopened, synchronize]
permissions:
contents: read
concurrency:
group: block-unconventional-commits-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
block-unconventional-commits:
name: Block unconventional commits
runs-on: ubuntu-latest-low
steps:
- name: Checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- uses: webiny/action-conventional-commits@8bc41ff4e7d423d56fa4905f6ff79209a78776c7 # v1.3.0
with:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
-49
View File
@@ -1,49 +0,0 @@
# SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: AGPL-3.0-or-later
name: "CodeQL Advanced"
on:
push:
branches: [ "master", "stable*" ]
pull_request:
branches: [ "master", "stable*" ]
schedule:
- cron: '28 18 * * 1'
jobs:
analyze:
name: Analyze (${{ matrix.language }})
runs-on: ubuntu-latest
permissions:
# required for all workflows
security-events: write
# required to fetch internal or private CodeQL packs
packages: read
strategy:
fail-fast: false
matrix:
include:
- language: actions
build-mode: none
- language: javascript-typescript
build-mode: none
steps:
- name: Checkout repository
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Initialize CodeQL
uses: github/codeql-action/init@5d5cd550d3e189c569da8f16ea8de2d821c9bf7a # v3.31.2
with:
languages: ${{ matrix.language }}
build-mode: ${{ matrix.build-mode }}
config-file: ./.github/codeql-config.yml
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@5d5cd550d3e189c569da8f16ea8de2d821c9bf7a # v3.31.2
with:
category: "/language:${{matrix.language}}"
-222
View File
@@ -1,222 +0,0 @@
# This workflow is provided via the organization template repository
#
# https://github.com/nextcloud/.github
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
#
# SPDX-FileCopyrightText: 2021-2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: Compile Command
on:
issue_comment:
types: [created]
permissions:
contents: read
jobs:
init:
runs-on: ubuntu-latest
# On pull requests and if the comment starts with `/compile`
if: github.event.issue.pull_request != '' && startsWith(github.event.comment.body, '/compile')
outputs:
git_path: ${{ steps.git-path.outputs.path }}
arg1: ${{ steps.command.outputs.arg1 }}
arg2: ${{ steps.command.outputs.arg2 }}
head_ref: ${{ steps.comment-branch.outputs.head_ref }}
base_ref: ${{ steps.comment-branch.outputs.base_ref }}
steps:
- name: Get repository from pull request comment
uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1
id: get-repository
with:
github-token: ${{secrets.GITHUB_TOKEN}}
script: |
const pull = await github.rest.pulls.get({
owner: context.repo.owner,
repo: context.repo.repo,
pull_number: context.issue.number
});
const repositoryName = pull.data.head?.repo?.full_name
console.log(repositoryName)
return repositoryName
- name: Disabled on forks
if: ${{ fromJSON(steps.get-repository.outputs.result) != github.repository }}
run: |
echo 'Can not execute /compile on forks'
exit 1
- name: Check actor permission
uses: skjnldsv/check-actor-permission@69e92a3c4711150929bca9fcf34448c5bf5526e7 # v2
with:
require: write
- name: Add reaction on start
uses: peter-evans/create-or-update-comment@71345be0265236311c031f5c7866368bd1eff043 # v4.0.0
with:
token: ${{ secrets.COMMAND_BOT_PAT }}
repository: ${{ github.event.repository.full_name }}
comment-id: ${{ github.event.comment.id }}
reactions: '+1'
- name: Parse command
uses: skjnldsv/parse-command-comment@5c955203c52424151e6d0e58fb9de8a9f6a605a1 # v2
id: command
# Init path depending on which command is run
- name: Init path
id: git-path
run: |
if ${{ startsWith(steps.command.outputs.arg1, '/') }}; then
echo "path=${{steps.command.outputs.arg1}}" >> $GITHUB_OUTPUT
else
echo "path=${{steps.command.outputs.arg2}}" >> $GITHUB_OUTPUT
fi
- name: Init branch
uses: xt0rted/pull-request-comment-branch@e8b8daa837e8ea7331c0003c9c316a64c6d8b0b1 # v3.0.0
id: comment-branch
- name: Add reaction on failure
uses: peter-evans/create-or-update-comment@71345be0265236311c031f5c7866368bd1eff043 # v4.0.0
if: failure()
with:
token: ${{ secrets.COMMAND_BOT_PAT }}
repository: ${{ github.event.repository.full_name }}
comment-id: ${{ github.event.comment.id }}
reactions: '-1'
process:
runs-on: ubuntu-latest
needs: init
steps:
- name: Restore cached git repository
uses: buildjet/cache@3e70d19e31d6a8030aeddf6ed8dbe601f94d09f4 # v4.0.2
with:
path: .git
key: git-repo
- name: Checkout ${{ needs.init.outputs.head_ref }}
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
# Needed to allow force push later
persist-credentials: true
token: ${{ secrets.COMMAND_BOT_PAT }}
fetch-depth: 0
ref: ${{ needs.init.outputs.head_ref }}
- name: Setup git
run: |
git config --local user.email 'nextcloud-command@users.noreply.github.com'
git config --local user.name 'nextcloud-command'
- name: Read package.json node and npm engines version
uses: skjnldsv/read-package-engines-version-actions@06d6baf7d8f41934ab630e97d9e6c0bc9c9ac5e4 # v3
id: package-engines-versions
with:
fallbackNode: '^20'
fallbackNpm: '^10'
- name: Set up node ${{ steps.package-engines-versions.outputs.nodeVersion }}
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
with:
node-version: ${{ steps.package-engines-versions.outputs.nodeVersion }}
cache: npm
- name: Set up npm ${{ steps.package-engines-versions.outputs.npmVersion }}
run: npm i -g 'npm@${{ steps.package-engines-versions.outputs.npmVersion }}'
- name: Rebase to ${{ needs.init.outputs.base_ref }}
if: ${{ contains(needs.init.outputs.arg1, 'rebase') }}
run: |
git fetch origin '${{ needs.init.outputs.base_ref }}:${{ needs.init.outputs.base_ref }}'
# Start the rebase
git rebase 'origin/${{ needs.init.outputs.base_ref }}' || {
# Handle rebase conflicts in a loop
while [ -d .git/rebase-merge ] || [ -d .git/rebase-apply ]; do
echo "Handling rebase conflict..."
# Remove and checkout /dist and /js folders from the base branch
if [ -d "dist" ]; then
rm -rf dist
git checkout origin/${{ needs.init.outputs.base_ref }} -- dist/ 2>/dev/null || echo "No dist folder in base branch"
fi
if [ -d "js" ]; then
rm -rf js
git checkout origin/${{ needs.init.outputs.base_ref }} -- js/ 2>/dev/null || echo "No js folder in base branch"
fi
# Stage all changes
git add .
# Check if there are any changes after resolving conflicts
if git diff --cached --quiet; then
echo "No changes after conflict resolution, skipping commit"
git rebase --skip
else
echo "Changes found, continuing rebase without editing commit message"
git -c core.editor=true rebase --continue
fi
# Break if rebase is complete
if [ ! -d .git/rebase-merge ] && [ ! -d .git/rebase-apply ]; then
break
fi
done
}
- name: Install dependencies & build
env:
CYPRESS_INSTALL_BINARY: 0
PUPPETEER_SKIP_DOWNLOAD: true
run: |
npm ci
npm run build --if-present
- name: Commit default
if: ${{ !contains(needs.init.outputs.arg1, 'fixup') && !contains(needs.init.outputs.arg1, 'amend') }}
run: |
git add '${{ github.workspace }}${{ needs.init.outputs.git_path }}'
git commit --signoff -m 'chore(assets): Recompile assets'
- name: Commit fixup
if: ${{ contains(needs.init.outputs.arg1, 'fixup') }}
run: |
git add '${{ github.workspace }}${{ needs.init.outputs.git_path }}'
git commit --fixup=HEAD --signoff
- name: Commit amend
if: ${{ contains(needs.init.outputs.arg1, 'amend') }}
run: |
git add '${{ github.workspace }}${{ needs.init.outputs.git_path }}'
git commit --amend --no-edit --signoff
# Remove any [skip ci] from the amended commit
git commit --amend -m "$(git log -1 --format='%B' | sed '/\[skip ci\]/d')"
- name: Push normally
if: ${{ !contains(needs.init.outputs.arg1, 'rebase') && !contains(needs.init.outputs.arg1, 'amend') }}
env:
HEAD_REF: ${{ needs.init.outputs.head_ref }}
run: git push origin "$HEAD_REF"
- name: Force push
if: ${{ contains(needs.init.outputs.arg1, 'rebase') || contains(needs.init.outputs.arg1, 'amend') }}
env:
HEAD_REF: ${{ needs.init.outputs.head_ref }}
run: git push --force-with-lease origin "$HEAD_REF"
- name: Add reaction on failure
uses: peter-evans/create-or-update-comment@71345be0265236311c031f5c7866368bd1eff043 # v4.0.0
if: failure()
with:
token: ${{ secrets.COMMAND_BOT_PAT }}
repository: ${{ github.event.repository.full_name }}
comment-id: ${{ github.event.comment.id }}
reactions: '-1'
-100
View File
@@ -1,100 +0,0 @@
# SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: Update 3rdparty command
on:
issue_comment:
types: created
permissions:
contents: read
jobs:
rebase:
runs-on: ubuntu-latest
permissions:
contents: none
# On pull requests and if the comment starts with `/update-3rdparty`
if: github.event.issue.pull_request != '' && startsWith(github.event.comment.body, '/update-3rdparty')
steps:
- name: Add reaction on start
uses: peter-evans/create-or-update-comment@71345be0265236311c031f5c7866368bd1eff043 # v3.0.1
with:
token: ${{ secrets.COMMAND_BOT_PAT }}
repository: ${{ github.event.repository.full_name }}
comment-id: ${{ github.event.comment.id }}
reactions: '+1'
- name: Disabled on forks
if: ${{ github.event.pull_request.head.repo.full_name != github.repository }}
run: |
echo 'Can not execute /update-3rdparty on forks'
exit 1
- name: Init branch
uses: xt0rted/pull-request-comment-branch@e8b8daa837e8ea7331c0003c9c316a64c6d8b0b1 # v1
id: comment-branch
- name: Checkout ${{ steps.comment-branch.outputs.head_ref }}
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
fetch-depth: 0
token: ${{ secrets.COMMAND_BOT_PAT }}
ref: ${{ steps.comment-branch.outputs.head_ref }}
- name: Register server reference to fallback to master branch
uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1
with:
github-token: ${{secrets.GITHUB_TOKEN}}
script: |
const baseRef = context.payload.pull_request.base.ref
if (baseRef === 'main' || baseRef === 'master') {
core.exportVariable('server_ref', 'master');
console.log('Setting server_ref to master');
} else {
const regex = /^stable(\d+)$/
const match = baseRef.match(regex)
if (match) {
core.exportVariable('server_ref', match[0]);
console.log('Setting server_ref to ' + match[0]);
} else {
console.log('Not based on master/main/stable*, so skipping pull 3rdparty command');
}
}
- name: Setup git
run: |
git config --local user.email 'nextcloud-command@users.noreply.github.com'
git config --local user.name 'nextcloud-command'
- name: Add reaction on failure
uses: peter-evans/create-or-update-comment@71345be0265236311c031f5c7866368bd1eff043 # v3.0.1
if: ${{ env.server_ref == '' }}
with:
token: ${{ secrets.COMMAND_BOT_PAT }}
repository: ${{ github.event.repository.full_name }}
comment-id: ${{ github.event.comment.id }}
reactions: '-1'
- name: Pull 3rdparty
if: ${{ env.server_ref != '' }}
run: git submodule foreach 'if [ "$sm_path" == "3rdparty" ]; then git pull origin '"'"'${{ env.server_ref }}'"'"'; fi'
- name: Commit and push changes
if: ${{ env.server_ref != '' }}
run: |
git add 3rdparty
git commit -s -m 'Update submodule 3rdparty to latest ${{ env.server_ref }}'
git push
- name: Add reaction on failure
uses: peter-evans/create-or-update-comment@71345be0265236311c031f5c7866368bd1eff043 # v3.0.1
if: failure()
with:
token: ${{ secrets.COMMAND_BOT_PAT }}
repository: ${{ github.event.repository.full_name }}
comment-id: ${{ github.event.comment.id }}
reactions: '-1'
-240
View File
@@ -1,240 +0,0 @@
# This workflow is provided via the organization template repository
#
# https://github.com/nextcloud/.github
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
#
# SPDX-FileCopyrightText: 2023-2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: Cypress
on: pull_request
concurrency:
group: cypress-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
env:
# Adjust APP_NAME if your repository name is different
APP_NAME: ${{ github.event.repository.name }}
# This represents the server branch to checkout.
# Usually it's the base branch of the PR, but for pushes it's the branch itself.
# e.g. 'main', 'stable27' or 'feature/my-feature'
# n.b. server will use head_ref, as we want to test the PR branch.
BRANCH: ${{ github.head_ref || github.ref_name }}
permissions:
contents: read
jobs:
init:
runs-on: ubuntu-latest
outputs:
nodeVersion: ${{ steps.versions.outputs.nodeVersion }}
npmVersion: ${{ steps.versions.outputs.npmVersion }}
env:
# We'll install cypress in the cypress job
CYPRESS_INSTALL_BINARY: 0
PUPPETEER_SKIP_DOWNLOAD: true
steps:
- name: Disabled on forks
if: ${{ github.event.pull_request.head.repo.full_name != github.repository }}
run: |
echo 'Can not run cypress on forks'
exit 1
- name: Checkout server
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
# We need to checkout submodules for 3rdparty
submodules: true
- name: Check composer.json
id: check_composer
uses: andstor/file-existence-action@076e0072799f4942c8bc574a82233e1e4d13e9d6 # v3.0.0
with:
files: "composer.json"
- name: Install composer dependencies
if: steps.check_composer.outputs.files_exists == 'true'
run: composer install --no-dev
- name: Read package.json node and npm engines version
uses: skjnldsv/read-package-engines-version-actions@06d6baf7d8f41934ab630e97d9e6c0bc9c9ac5e4 # v3
id: versions
with:
fallbackNode: "^20"
fallbackNpm: "^10"
- name: Set up node ${{ steps.versions.outputs.nodeVersion }}
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
with:
node-version: ${{ steps.versions.outputs.nodeVersion }}
- name: Set up npm ${{ steps.versions.outputs.npmVersion }}
run: npm i -g 'npm@${{ steps.versions.outputs.npmVersion }}'
- name: Install node dependencies & build app
run: |
npm ci
TESTING=true npm run build --if-present
- name: Show cypress version
run: npm run cypress:version
- name: Save context
uses: buildjet/cache/save@3e70d19e31d6a8030aeddf6ed8dbe601f94d09f4 # v4.0.2
with:
key: cypress-context-${{ github.run_id }}
path: ./
cypress:
runs-on: ubuntu-latest
needs: init
strategy:
fail-fast: false
matrix:
# Run multiple copies of the current job in parallel
# Please increase the number or runners as your tests suite grows (0 based index for e2e tests)
containers: ['setup', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
# Hack as strategy.job-total includes the "setup" and GitHub does not allow math expressions
# Always align this number with the total of e2e runners (max. index + 1)
total-containers: [10]
services:
mysql:
# Only start mysql if we are running the setup tests
image: ${{matrix.containers == 'setup' && 'ghcr.io/nextcloud/continuous-integration-mysql-8.4:latest' || ''}}
ports:
- '3306/tcp'
env:
MYSQL_ROOT_PASSWORD: rootpassword
MYSQL_USER: oc_autotest
MYSQL_PASSWORD: nextcloud
MYSQL_DATABASE: oc_autotest
options: --health-cmd="mysqladmin ping" --health-interval 5s --health-timeout 2s --health-retries 10
mariadb:
# Only start mariadb if we are running the setup tests
image: ${{matrix.containers == 'setup' && 'mariadb:11.4' || ''}}
ports:
- '3306/tcp'
env:
MYSQL_ROOT_PASSWORD: rootpassword
MYSQL_USER: oc_autotest
MYSQL_PASSWORD: nextcloud
MYSQL_DATABASE: oc_autotest
options: --health-cmd="mariadb-admin ping" --health-interval 5s --health-timeout 2s --health-retries 5
postgres:
# Only start postgres if we are running the setup tests
image: ${{matrix.containers == 'setup' && 'ghcr.io/nextcloud/continuous-integration-postgres-17:latest' || ''}}
ports:
- '5432/tcp'
env:
POSTGRES_USER: root
POSTGRES_PASSWORD: rootpassword
POSTGRES_DB: nextcloud
options: --mount type=tmpfs,destination=/var/lib/postgresql/data --health-cmd pg_isready --health-interval 5s --health-timeout 2s --health-retries 5
oracle:
# Only start oracle if we are running the setup tests
image: ${{matrix.containers == 'setup' && 'ghcr.io/gvenzl/oracle-free:23' || ''}}
ports:
- '1521'
env:
ORACLE_PASSWORD: oracle
options: --health-cmd healthcheck.sh --health-interval 20s --health-timeout 10s --health-retries 10
name: runner ${{ matrix.containers }}
steps:
- name: Restore context
uses: buildjet/cache/restore@3e70d19e31d6a8030aeddf6ed8dbe601f94d09f4 # v4.0.2
with:
fail-on-cache-miss: true
key: cypress-context-${{ github.run_id }}
path: ./
- name: Set up node ${{ needs.init.outputs.nodeVersion }}
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
with:
node-version: ${{ needs.init.outputs.nodeVersion }}
- name: Set up npm ${{ needs.init.outputs.npmVersion }}
run: npm i -g 'npm@${{ needs.init.outputs.npmVersion }}'
- name: Install cypress
run: ./node_modules/cypress/bin/cypress install
- name: Run ${{ matrix.containers == 'component' && 'component' || 'E2E' }} cypress tests
uses: cypress-io/github-action@b8ba51a856ba5f4c15cf39007636d4ab04f23e3c # v6.10.2
with:
# We already installed the dependencies in the init job
install: false
component: ${{ matrix.containers == 'component' }}
group: ${{ matrix.use-cypress-cloud && matrix.containers == 'component' && 'Run component' || matrix.use-cypress-cloud && 'Run E2E' || '' }}
# cypress env
ci-build-id: ${{ matrix.use-cypress-cloud && format('{0}-{1}', github.sha, github.run_number) || '' }}
tag: ${{ matrix.use-cypress-cloud && github.event_name || '' }}
env:
# Needs to be prefixed with CYPRESS_
CYPRESS_BRANCH: ${{ env.BRANCH }}
# https://github.com/cypress-io/github-action/issues/124
COMMIT_INFO_MESSAGE: ${{ github.event.pull_request.title }}
# Needed for some specific code workarounds
TESTING: true
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
CYPRESS_RECORD_KEY: ${{ secrets.CYPRESS_RECORD_KEY }}
SPLIT: ${{ matrix.total-containers }}
SPLIT_INDEX: ${{ matrix.containers == 'component' && 0 || matrix.containers }}
SPLIT_RANDOM_SEED: ${{ github.run_id }}
SETUP_TESTING: ${{ matrix.containers == 'setup' && 'true' || '' }}
- name: Upload snapshots and videos
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
if: always()
with:
name: snapshots_videos_${{ matrix.containers }}
path: |
cypress/snapshots
cypress/videos
- name: Show logs
if: failure() && matrix.containers != 'component'
run: |
for id in $(docker ps -aq); do
docker container inspect "$id" --format '=== Logs for container {{.Name}} ==='
docker logs "$id" >> nextcloud.log
done
echo '=== Nextcloud server logs ==='
docker exec nextcloud-e2e-test-server_${{ env.APP_NAME }} cat data/nextcloud.log
- name: Create data dir archive
if: failure() && matrix.containers != 'component'
run: docker exec nextcloud-e2e-test-server_${{ env.APP_NAME }} tar -cvjf - data > data.tar
- name: Upload data dir archive
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
if: failure() && matrix.containers != 'component'
with:
name: nc_data_${{ matrix.containers }}
path: data.tar
summary:
runs-on: ubuntu-latest-low
needs: [init, cypress]
if: always()
name: cypress-summary
steps:
- name: Summary status
run: if ${{ needs.init.result != 'success' || ( needs.cypress.result != 'success' && needs.cypress.result != 'skipped' ) }}; then exit 1; fi
@@ -1,49 +0,0 @@
# This workflow is provided via the organization template repository
#
# https://github.com/nextcloud/.github
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
#
# SPDX-FileCopyrightText: 2021-2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: Dependabot
on:
pull_request_target: # zizmor: ignore[dangerous-triggers]
branches:
- main
- master
- stable*
permissions:
contents: read
concurrency:
group: dependabot-approve-merge-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
auto-approve-merge:
if: github.event.pull_request.user.login == 'dependabot[bot]' || github.event.pull_request.user.login == 'renovate[bot]'
runs-on: ubuntu-latest-low
permissions:
# for hmarr/auto-approve-action to approve PRs
pull-requests: write
steps:
- name: Disabled on forks
if: ${{ github.event.pull_request.head.repo.full_name != github.repository }}
run: |
echo 'Can not approve PRs from forks'
exit 1
# GitHub actions bot approve
- uses: hmarr/auto-approve-action@b40d6c9ed2fa10c9a2749eca7eb004418a705501 # v2
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
# Nextcloud bot approve and merge request
- uses: ahmadnassri/action-dependabot-auto-merge@45fc124d949b19b6b8bf6645b6c9d55f4f9ac61a # v2
with:
target: minor
github-token: ${{ secrets.DEPENDABOT_AUTOMERGE_TOKEN }}
-131
View File
@@ -1,131 +0,0 @@
# SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: PHPUnit files_external FTP
on:
pull_request:
schedule:
- cron: "5 2 * * *"
permissions:
contents: read
concurrency:
group: files-external-ftp-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
changes:
runs-on: ubuntu-latest-low
outputs:
src: ${{ steps.changes.outputs.src}}
steps:
- uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2
id: changes
continue-on-error: true
with:
filters: |
src:
- '.github/workflows/**'
- '3rdparty/**'
- 'apps/files_external/**'
- 'vendor/**'
- 'vendor-bin/**'
- 'composer.json'
- 'composer.lock'
- '**.php'
files-external-ftp:
runs-on: ubuntu-latest
needs: changes
if: ${{ github.repository_owner != 'nextcloud-gmbh' && needs.changes.outputs.src != 'false' }}
strategy:
fail-fast: false
matrix:
php-versions: ['8.2', '8.4']
ftpd: ['proftpd', 'vsftpd', 'pure-ftpd']
include:
- php-versions: '8.2'
coverage: ${{ github.event_name != 'pull_request' }}
name: php${{ matrix.php-versions }}-${{ matrix.ftpd }}
steps:
- name: Checkout server
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
submodules: true
- name: Set up ftpd
run: |
sudo mkdir /tmp/ftp
sudo chmod -R 0777 /tmp/ftp
if [[ "${{ matrix.ftpd }}" == 'proftpd' ]]; then echo '$6$Q7V2n3q2GRVv5YeQ$/AhLu07H76Asojy7bxGXMY1caKLAbp5Vt82LOZYMkD/8uDzyMAEXwk0c1Bdz1DkBsk2Vh/9SF130mOPavRGMo.' > /tmp/secret.txt; fi
if [[ "${{ matrix.ftpd }}" == 'proftpd' ]]; then echo 'FTP_ROOT=/home/test' > $GITHUB_ENV; fi
if [[ "${{ matrix.ftpd }}" == 'proftpd' ]]; then docker run --name ftp -d --net host -e PASV_ADDRESS=127.0.0.1 -e FTPUSER_NAME=test -v /tmp/secret.txt:/run/secrets/ftp-user-password-secret -v /tmp/ftp:/home/test instantlinux/proftpd; fi
if [[ "${{ matrix.ftpd }}" == 'vsftpd' ]]; then docker run --name ftp -d --net host -e FTP_USER=test -e FTP_PASS=test -e PASV_ADDRESS=127.0.0.1 -v /tmp/ftp:/home/vsftpd/test fauria/vsftpd; fi
if [[ "${{ matrix.ftpd }}" == 'pure-ftpd' ]]; then docker run --name ftp -d --net host -e "PUBLICHOST=localhost" -e FTP_USER_NAME=test -e FTP_USER_PASS=test -e FTP_USER_HOME=/home/test -v /tmp/ftp:/home/test -v /tmp/ftp:/etc/pure-ftpd/passwd stilliard/pure-ftpd; fi
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 #v2.35.4
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, redis, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite
coverage: ${{ matrix.coverage && 'xdebug' || 'none' }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Set up Nextcloud
run: |
composer install
mkdir data
./occ maintenance:install --verbose --database=sqlite --database-name=nextcloud --database-host=127.0.0.1 --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass password
./occ app:enable --force files_external
echo "<?php return ['run' => true,'host' => 'localhost','user' => 'test','password' => 'test', 'root' => '${{ env.FTP_ROOT }}'];" > apps/files_external/tests/config.ftp.php
- name: smoketest ftp
run: |
php -r 'var_dump(file_put_contents("ftp://test:test@localhost${{ env.FTP_ROOT }}/ftp.txt", "asd"));'
php -r 'var_dump(file_get_contents("ftp://test:test@localhost${{ env.FTP_ROOT }}/ftp.txt"));'
php -r 'var_dump(mkdir("ftp://test:test@localhost${{ env.FTP_ROOT }}/asdads"));'
ls -l /tmp/ftp
[ -f /tmp/ftp/ftp.txt ]
- name: PHPUnit
run: composer run test:files_external -- \
apps/files_external/tests/Storage/FtpTest.php \
--log-junit junit.xml \
${{ matrix.coverage && '--coverage-clover ./clover.xml' || '' }}
- name: Upload code coverage
if: ${{ !cancelled() && matrix.coverage }}
uses: codecov/codecov-action@fdcc8476540edceab3de004e990f80d881c6cc00 # v5.5.0
with:
files: ./clover.xml
flags: phpunit-files-external-ftp
- name: Upload test results
if: ${{ !cancelled() }}
uses: codecov/test-results-action@47f89e9acb64b76debcd5ea40642d25a4adced9f # v1.1.1
with:
flags: phpunit-files-external-ftp
- name: ftpd logs
if: always()
run: |
docker logs ftp
ftp-summary:
runs-on: ubuntu-latest-low
needs: [changes, files-external-ftp]
if: always()
steps:
- name: Summary status
run: if ${{ needs.changes.outputs.src != 'false' && needs.files-external-ftp.result != 'success' }}; then exit 1; fi
-213
View File
@@ -1,213 +0,0 @@
# SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: PHPUnit files_external S3
on:
pull_request:
schedule:
- cron: "5 2 * * *"
permissions:
contents: read
concurrency:
group: files-external-s3-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
changes:
runs-on: ubuntu-latest-low
outputs:
src: ${{ steps.changes.outputs.src}}
steps:
- uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2
id: changes
continue-on-error: true
with:
filters: |
src:
- '.github/workflows/**'
- '3rdparty/**'
- 'apps/files_external/**'
- 'vendor/**'
- 'vendor-bin/**'
- 'composer.json'
- 'composer.lock'
- '**.php'
files-external-s3-minio:
runs-on: ubuntu-latest
needs: changes
if: ${{ github.repository_owner != 'nextcloud-gmbh' && needs.changes.outputs.src != 'false' }}
strategy:
fail-fast: false
matrix:
php-versions: ['8.2', '8.4']
include:
- php-versions: '8.3'
coverage: ${{ github.event_name != 'pull_request' }}
name: php${{ matrix.php-versions }}-s3-minio
services:
minio:
image: bitnami/minio@sha256:50cec18ac4184af4671a78aedd5554942c8ae105d51a465fa82037949046da01 # v2025.4.22
env:
MINIO_ROOT_USER: nextcloud
MINIO_ROOT_PASSWORD: bWluaW8tc2VjcmV0LWtleS1uZXh0Y2xvdWQ=
MINIO_DEFAULT_BUCKETS: nextcloud
ports:
- '9000:9000'
steps:
- name: Checkout server
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 #v2.35.4
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, redis, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite
coverage: ${{ matrix.coverage && 'xdebug' || 'none' }}
ini-file: development
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Set up Nextcloud
env:
OBJECT_STORE_KEY: nextcloud
OBJECT_STORE_SECRET: bWluaW8tc2VjcmV0LWtleS1uZXh0Y2xvdWQ=
run: |
composer install
./occ maintenance:install --verbose --database=sqlite --database-name=nextcloud --database-host=127.0.0.1 --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass password
./occ app:enable --force files_external
echo "<?php return ['run' => true, 'minio' => true, 'secret' => 'actually-not-secret', 'passwordsalt' => 'actually-not-secret', 'hostname' => 'localhost','key' => '$OBJECT_STORE_KEY','secret' => '$OBJECT_STORE_SECRET', 'bucket' => 'bucket', 'port' => 9000, 'use_ssl' => false, 'autocreate' => true, 'use_path_style' => true];" > apps/files_external/tests/config.amazons3.php
- name: Wait for S3
run: |
curl -f -m 1 --retry-connrefused --retry 10 --retry-delay 10 http://localhost:9000/minio/health/ready
- name: PHPUnit
run: |
composer run test:files_external -- \
--group S3 \
--log-junit junit.xml \
apps/files_external/tests/Storage \
${{ matrix.coverage && '--coverage-clover ./clover.xml' || '' }}
- name: Upload code coverage
if: ${{ !cancelled() && matrix.coverage }}
uses: codecov/codecov-action@fdcc8476540edceab3de004e990f80d881c6cc00 # v5.5.0
with:
files: ./clover.xml
flags: phpunit-files-external-s3
- name: Upload test results
if: ${{ !cancelled() }}
uses: codecov/test-results-action@47f89e9acb64b76debcd5ea40642d25a4adced9f # v1.1.1
with:
flags: phpunit-files-external-s3
- name: Nextcloud logs
if: always()
run: |
cat data/nextcloud.log
- name: S3 logs
if: always()
run: |
docker ps -a
docker ps -aq | while read container ; do IMAGE=$(docker inspect --format='{{.Config.Image}}' $container); echo $IMAGE; docker logs $container; echo "\n\n" ; done
files-external-s3-localstack:
runs-on: ubuntu-latest
needs: changes
if: ${{ github.repository_owner != 'nextcloud-gmbh' && needs.changes.outputs.src != 'false' }}
strategy:
matrix:
php-versions: ['8.2', '8.4']
include:
- php-versions: '8.3'
coverage: ${{ github.event_name != 'pull_request' }}
name: php${{ matrix.php-versions }}-s3-localstack
services:
localstack:
env:
SERVICES: s3
DEBUG: 1
image: localstack/localstack@sha256:9d4253786e0effe974d77fe3c390358391a56090a4fff83b4600d8a64404d95d # v4.5.0
ports:
- "4566:4566"
steps:
- name: Checkout server
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 #v2.35.4
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, redis, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite
coverage: ${{ matrix.coverage && 'xdebug' || 'none' }}
ini-file: development
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Set up Nextcloud
run: |
composer install
./occ maintenance:install --verbose --database=sqlite --database-name=nextcloud --database-host=127.0.0.1 --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass password
./occ app:enable --force files_external
echo "<?php return ['run' => true, 'localstack' => true, 'hostname' => 'localhost','key' => 'ignored','secret' => 'ignored', 'bucket' => 'bucket', 'port' => 4566, 'use_ssl' => false, 'autocreate' => true, 'use_path_style' => true];" > apps/files_external/tests/config.amazons3.php
- name: PHPUnit
run: |
composer run test:files_external -- \
--group S3 \
--log-junit junit.xml \
apps/files_external/tests/Storage \
${{ matrix.coverage && '--coverage-clover ./clover.xml' || '' }}
- name: Upload code coverage
if: ${{ !cancelled() && matrix.coverage }}
uses: codecov/codecov-action@fdcc8476540edceab3de004e990f80d881c6cc00 # v5.5.0
with:
files: ./clover.xml
flags: phpunit-files-external-s3
- name: Upload test results
if: ${{ !cancelled() }}
uses: codecov/test-results-action@47f89e9acb64b76debcd5ea40642d25a4adced9f # v1.1.1
with:
flags: phpunit-files-external-s3
- name: S3 logs
if: always()
run: |
docker ps -a
docker ps -aq | while read container ; do IMAGE=$(docker inspect --format='{{.Config.Image}}' $container); echo $IMAGE; docker logs $container; echo "\n\n" ; done
s3-external-summary:
runs-on: ubuntu-latest-low
needs: [changes, files-external-s3-minio, files-external-s3-localstack]
if: always()
steps:
- name: Summary status
run: if ${{ needs.changes.outputs.src != 'false' && (needs.files-external-s3-minio.result != 'success' || needs.files-external-s3-localstack.result != 'success') }}; then exit 1; fi
-121
View File
@@ -1,121 +0,0 @@
# SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: PHPUnit files_external sFTP
on:
pull_request:
schedule:
- cron: "5 2 * * *"
permissions:
contents: read
concurrency:
group: files-external-sftp-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
changes:
runs-on: ubuntu-latest-low
outputs:
src: ${{ steps.changes.outputs.src}}
steps:
- uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2
id: changes
continue-on-error: true
with:
filters: |
src:
- '.github/workflows/**'
- '3rdparty/**'
- 'apps/files_external/**'
- 'vendor/**'
- 'vendor-bin/**'
- 'composer.json'
- 'composer.lock'
- '**.php'
files-external-sftp:
runs-on: ubuntu-latest
needs: changes
if: ${{ github.repository_owner != 'nextcloud-gmbh' && needs.changes.outputs.src != 'false' }}
strategy:
fail-fast: false
matrix:
php-versions: ['8.2', '8.4']
sftpd: ['openssh']
include:
- php-versions: '8.2'
coverage: ${{ github.event_name != 'pull_request' }}
name: php${{ matrix.php-versions }}-${{ matrix.sftpd }}
steps:
- name: Checkout server
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
submodules: true
- name: Set up sftpd
run: |
sudo mkdir /tmp/sftp
sudo chown -R 0777 /tmp/sftp
if [[ '${{ matrix.sftpd }}' == 'openssh' ]]; then docker run -p 2222:22 --name sftp -d -v /tmp/sftp:/home/test atmoz/sftp 'test:test:::data'; fi
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 #v2.35.4
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, redis, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite
coverage: ${{ matrix.coverage && 'xdebug' || 'none' }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Set up Nextcloud
run: |
composer install
mkdir data
./occ maintenance:install --verbose --database=sqlite --database-name=nextcloud --database-host=127.0.0.1 --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass password
./occ app:enable --force files_external
echo "<?php return ['run' => true, 'host' => 'localhost:2222','user' => 'test','password' => 'test', 'root' => 'data'];" > apps/files_external/tests/config.sftp.php
- name: PHPUnit
run: composer run test:files_external -- \
apps/files_external/tests/Storage/SftpTest.php \
apps/files_external/tests/Storage/SFTP_KeyTest.php \
--log-junit junit.xml \
${{ matrix.coverage && '--coverage-clover ./clover.xml' || '' }}
- name: Upload code coverage
if: ${{ !cancelled() && matrix.coverage }}
uses: codecov/codecov-action@fdcc8476540edceab3de004e990f80d881c6cc00 # v5.5.0
with:
files: ./clover.xml
flags: phpunit-files-external-sftp
- name: Upload test results
if: ${{ !cancelled() }}
uses: codecov/test-results-action@47f89e9acb64b76debcd5ea40642d25a4adced9f # v1.1.1
with:
flags: phpunit-files-external-sftp
- name: sftpd logs
if: always()
run: |
ls -l /tmp/sftp
docker logs sftp
sftp-summary:
runs-on: ubuntu-latest-low
needs: [changes, files-external-sftp]
if: always()
steps:
- name: Summary status
run: if ${{ needs.changes.outputs.src != 'false' && needs.files-external-sftp.result != 'success' }}; then exit 1; fi
@@ -1,118 +0,0 @@
# SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: Samba Kerberos SSO
on:
pull_request:
schedule:
- cron: "5 2 * * *"
permissions:
contents: read
concurrency:
group: files-external-smb-kerberos-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
changes:
runs-on: ubuntu-latest-low
outputs:
src: ${{ steps.changes.outputs.src}}
steps:
- uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2
id: changes
continue-on-error: true
with:
filters: |
src:
- '.github/workflows/**'
- '3rdparty/**'
- 'apps/files_external/**'
- 'vendor/**'
- 'vendor-bin/**'
- 'composer.json'
- 'composer.lock'
- '**.php'
files-external-smb-kerberos:
runs-on: ubuntu-latest
needs: changes
if: ${{ github.repository_owner != 'nextcloud-gmbh' && needs.changes.outputs.src != 'false' }}
name: smb-kerberos-sso
steps:
- name: Checkout server
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
submodules: true
- name: Checkout user_saml
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
repository: nextcloud/user_saml
path: apps/user_saml
- name: Install user_saml
run: |
cd apps/user_saml
composer i
cd ../..
- name: Pull images
run: |
docker pull ghcr.io/icewind1991/samba-krb-test-dc
docker pull ghcr.io/icewind1991/samba-krb-test-apache-gssapi:8.4
docker pull ghcr.io/icewind1991/samba-krb-test-client
docker tag ghcr.io/icewind1991/samba-krb-test-dc icewind1991/samba-krb-test-dc
docker tag ghcr.io/icewind1991/samba-krb-test-apache-gssapi:8.4 icewind1991/samba-krb-test-apache-gssapi
docker tag ghcr.io/icewind1991/samba-krb-test-client icewind1991/samba-krb-test-client
- name: Setup AD-DC
run: |
DC_IP=$(apps/files_external/tests/sso-setup/start-dc.sh)
sleep 1
apps/files_external/tests/sso-setup/start-apache.sh $DC_IP $PWD
echo "DC_IP=$DC_IP" >> $GITHUB_ENV
- name: Set up Nextcloud
run: |
apps/files_external/tests/sso-setup/setup-sso-nc.sh
- name: Test SSO
run: |
apps/files_external/tests/sso-setup/test-sso-smb.sh ${{ env.DC_IP }}
- name: Show logs DC
if: always()
run: |
docker logs dc
echo "------------"
docker exec dc cat /var/log/samba/log.samba
- name: Show logs Apache
if: always()
run: |
docker logs apache
- name: Show logs
if: always()
run: |
FILEPATH=$(docker exec --user 33 apache ./occ log:file | grep "Log file:" | cut -d' ' -f3)
echo "$FILEPATH:"
docker exec --user 33 apache cat $FILEPATH
sftp-summary:
runs-on: ubuntu-latest-low
needs: [changes, files-external-smb-kerberos]
if: always()
steps:
- name: Summary status
run: if ${{ needs.changes.outputs.src != 'false' && needs.files-external-smb-kerberos.result != 'success' }}; then exit 1; fi
-121
View File
@@ -1,121 +0,0 @@
# SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: PHPUnit files_external SMB
on:
pull_request:
schedule:
- cron: "5 2 * * *"
permissions:
contents: read
concurrency:
group: files-external-smb-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
changes:
runs-on: ubuntu-latest-low
outputs:
src: ${{ steps.changes.outputs.src}}
steps:
- uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2
id: changes
continue-on-error: true
with:
filters: |
src:
- '.github/workflows/**'
- '3rdparty/**'
- 'apps/files_external/**'
- 'vendor/**'
- 'vendor-bin/**'
- 'composer.json'
- 'composer.lock'
- '**.php'
files-external-smb:
runs-on: ubuntu-latest
needs: changes
if: ${{ github.repository_owner != 'nextcloud-gmbh' && needs.changes.outputs.src != 'false' }}
strategy:
fail-fast: false
matrix:
include:
- php-versions: '8.2'
coverage: ${{ github.event_name != 'pull_request' }}
name: php${{ matrix.php-versions }}-smb
services:
samba:
image: ghcr.io/nextcloud/continuous-integration-samba:latest # zizmor: ignore[unpinned-images]
ports:
- 445:445
steps:
- name: Checkout server
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 #v2.35.4
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, redis, session, simplexml, xmlreader, xmlwriter, zip, zlib, smbclient, sqlite, pdo_sqlite
coverage: ${{ matrix.coverage && 'xdebug' || 'none' }}
ini-file: development
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Set up smbclient
# This is needed as icewind/smb php library for notify
run: sudo apt-get install -y smbclient
- name: Set up Nextcloud
run: |
composer install
./occ maintenance:install --verbose --database=sqlite --database-name=nextcloud --database-host=127.0.0.1 --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass password
./occ config:system:set --value true --type boolean allow_local_remote_servers
./occ app:enable --force files_external
echo "<?php return ['run'=>true, 'host'=>'localhost', 'user'=>'test', 'password'=>'test', 'root'=>'', 'share'=>'public'];" > apps/files_external/tests/config.smb.php
- name: Wait for smb
run: |
apps/files_external/tests/env/wait-for-connection 127.0.0.1 445 60
- name: PHPUnit
run: composer run test:files_external -- \
apps/files_external/tests/Storage/SmbTest.php \
--log-junit junit.xml \
${{ matrix.coverage && '--coverage-clover ./clover.xml' || '' }}
- name: Upload code coverage
if: ${{ !cancelled() && matrix.coverage }}
uses: codecov/codecov-action@fdcc8476540edceab3de004e990f80d881c6cc00 # v5.5.0
with:
files: ./clover.xml
flags: phpunit-files-external-smb
- name: Upload test results
if: ${{ !cancelled() }}
uses: codecov/test-results-action@47f89e9acb64b76debcd5ea40642d25a4adced9f # v1.1.1
with:
flags: phpunit-files-external-smb
files-external-smb-summary:
runs-on: ubuntu-latest-low
needs: [changes, files-external-smb]
if: always()
steps:
- name: Summary status
run: if ${{ needs.changes.outputs.src != 'false' && needs.files-external-smb.result != 'success' }}; then exit 1; fi
-119
View File
@@ -1,119 +0,0 @@
# SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: PHPUnit files_external WebDAV
on:
pull_request:
schedule:
- cron: "5 2 * * *"
permissions:
contents: read
concurrency:
group: files-external-webdav-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
changes:
runs-on: ubuntu-latest-low
outputs:
src: ${{ steps.changes.outputs.src}}
steps:
- uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2
id: changes
continue-on-error: true
with:
filters: |
src:
- '.github/workflows/**'
- '3rdparty/**'
- 'apps/files_external/**'
- 'vendor/**'
- 'vendor-bin/**'
- 'composer.json'
- 'composer.lock'
- '**.php'
files-external-webdav-apache:
runs-on: ubuntu-latest
needs: changes
if: ${{ github.repository_owner != 'nextcloud-gmbh' && needs.changes.outputs.src != 'false' }}
strategy:
fail-fast: false
matrix:
php-versions: ['8.3', '8.4']
include:
- php-versions: '8.2'
coverage: ${{ github.event_name != 'pull_request' }}
name: php${{ matrix.php-versions }}-webdav
services:
apache:
image: ghcr.io/nextcloud/continuous-integration-webdav-apache:latest # zizmor: ignore[unpinned-images]
ports:
- 8081:80
steps:
- name: Checkout server
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 #v2.35.4
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, redis, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite
coverage: ${{ matrix.coverage && 'xdebug' || 'none' }}
ini-file: development
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Set up Nextcloud
run: |
composer install
./occ maintenance:install --verbose --database=sqlite --database-name=nextcloud --database-host=127.0.0.1 --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass password
./occ config:system:set --value true --type boolean allow_local_remote_servers
./occ app:enable --force files_external
echo "<?php return ['run' => true, 'host' => 'localhost:8081/webdav/', 'user' => 'test', 'password'=>'pass', 'root' => '', 'wait' => 0];" > apps/files_external/tests/config.webdav.php
- name: Wait for WebDAV
run: |
sleep 5
curl -f -m 1 --retry-connrefused --retry 10 --retry-delay 10 http://test:pass@localhost:8081/webdav/
- name: PHPUnit
run: composer run test:files_external -- \
apps/files_external/tests/Storage/WebdavTest.php \
--log-junit junit.xml \
${{ matrix.coverage && '--coverage-clover ./clover.xml' || '' }}
- name: Upload code coverage
if: ${{ !cancelled() && matrix.coverage }}
uses: codecov/codecov-action@fdcc8476540edceab3de004e990f80d881c6cc00 # v5.5.0
with:
files: ./clover.xml
flags: phpunit-files-external-webdav
- name: Upload test results
if: ${{ !cancelled() }}
uses: codecov/test-results-action@47f89e9acb64b76debcd5ea40642d25a4adced9f # v1.1.1
with:
flags: phpunit-files-external-webdav
files-external-webdav-summary:
runs-on: ubuntu-latest-low
needs: [changes, files-external-webdav-apache]
if: always()
steps:
- name: Summary status
run: if ${{ needs.changes.outputs.src != 'false' && needs.files-external-webdav-apache.result != 'success' }}; then exit 1; fi
-107
View File
@@ -1,107 +0,0 @@
# SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: PHPUnit files_external generic
on:
pull_request:
schedule:
- cron: "5 2 * * *"
permissions:
contents: read
concurrency:
group: files-external-generic-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
changes:
runs-on: ubuntu-latest-low
outputs:
src: ${{ steps.changes.outputs.src}}
steps:
- uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2
id: changes
continue-on-error: true
with:
filters: |
src:
- '.github/workflows/**'
- '3rdparty/**'
- 'apps/files_external/**'
- 'vendor/**'
- 'vendor-bin/**'
- 'composer.json'
- 'composer.lock'
files-external-generic:
runs-on: ubuntu-latest
needs: changes
if: ${{ github.repository_owner != 'nextcloud-gmbh' && needs.changes.outputs.src != 'false' }}
strategy:
fail-fast: false
matrix:
php-versions: ['8.3', '8.4']
include:
- php-versions: '8.2'
coverage: ${{ github.event_name != 'pull_request' }}
name: php${{ matrix.php-versions }}-generic
steps:
- name: Checkout server
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 #v2.35.4
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, redis, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite
coverage: ${{ matrix.coverage && 'xdebug' || 'none' }}
ini-file: development
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Set up Nextcloud
env:
OBJECT_STORE_KEY: nextcloud
OBJECT_STORE_SECRET: bWluaW8tc2VjcmV0LWtleS1uZXh0Y2xvdWQ=
run: |
composer install
./occ maintenance:install --verbose --database=sqlite --database-name=nextcloud --database-host=127.0.0.1 --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass password
./occ app:enable --force files_external
- name: PHPUnit
run: composer run test:files_external -- \
--log-junit junit.xml \
${{ matrix.coverage && '--coverage-clover ./clover.xml' || '' }}
- name: Upload code coverage
if: ${{ !cancelled() && matrix.coverage }}
uses: codecov/codecov-action@fdcc8476540edceab3de004e990f80d881c6cc00 # v5.5.0
with:
files: ./clover.xml
flags: phpunit-files-external-generic
- name: Upload test results
if: ${{ !cancelled() }}
uses: codecov/test-results-action@47f89e9acb64b76debcd5ea40642d25a4adced9f # v1.1.1
with:
flags: phpunit-files-external-generic
files-external-summary:
runs-on: ubuntu-latest-low
needs: [changes, files-external-generic ]
if: always()
steps:
- name: Summary status
run: if ${{ needs.changes.outputs.src != 'false' && needs.files-external-generic.result != 'success' }}; then exit 1; fi
-36
View File
@@ -1,36 +0,0 @@
# This workflow is provided via the organization template repository
#
# https://github.com/nextcloud/.github
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
#
# SPDX-FileCopyrightText: 2021-2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: Block fixup and squash commits
on:
pull_request:
types: [opened, ready_for_review, reopened, synchronize]
permissions:
contents: read
concurrency:
group: fixup-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
commit-message-check:
if: github.event.pull_request.draft == false
permissions:
pull-requests: write
name: Block fixup and squash commits
runs-on: ubuntu-latest-low
steps:
- name: Run check
uses: skjnldsv/block-fixup-merge-action@c138ea99e45e186567b64cf065ce90f7158c236a # v2
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
@@ -1,103 +0,0 @@
# SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: Generate changelog on release
on:
release:
types: [published]
permissions:
contents: write
jobs:
changelog_generate:
runs-on: ubuntu-latest
# Only allowed to be run on nextcloud-releases repositories
if: ${{ github.repository_owner == 'nextcloud-releases' }}
steps:
- name: Check actor permission
uses: skjnldsv/check-actor-permission@69e92a3c4711150929bca9fcf34448c5bf5526e7 # v3.0
with:
require: write
- name: Checkout github_helper
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
repository: nextcloud/github_helper
path: github_helper
- name: Checkout server
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
path: server
fetch-depth: 0
- name: Get previous tag
shell: bash
run: |
cd server
# Print all tags
git log --decorate --oneline | egrep 'tag: ' | sed -r 's/^.+tag: ([^,\)]+)[,\)].+$/\1/g'
# Get the current tag
TAGS=$(git log --decorate --oneline | egrep 'tag: ' | sed -r 's/^.+tag: ([^,\)]+)[,\)].+$/\1/g')
CURRENT_TAG=$(echo "$TAGS" | head -n 1)
# If current tag is the first beta, we use the previous major RC1
if echo "$CURRENT_TAG" | grep -q 'beta1'; then
MAJOR=$(echo "$CURRENT_TAG" | sed -E 's/^v([0-9]+).*/\1/')
PREV=$((MAJOR - 1))
PREVIOUS_TAG="v${PREV}.0.0rc1"
# Get the previous tag - filter pre-releases only if current tag is stable
elif echo "$CURRENT_TAG" | grep -q 'rc\|beta\|alpha'; then
# Current tag is pre-release, don't filter
PREVIOUS_TAG=$(echo "$TAGS" | sed -n '2p')
else
# Current tag is stable, filter out pre-releases
PREVIOUS_TAG=$(echo "$TAGS" | grep -v 'rc\|beta\|alpha' | sed -n '2p')
fi
echo "CURRENT_TAG=$CURRENT_TAG" >> $GITHUB_ENV
echo "PREVIOUS_TAG=$PREVIOUS_TAG" >> $GITHUB_ENV
# Since this action only runs on nextcloud-releases, ignoring is okay
- name: Verify current tag # zizmor: ignore[template-injection]
run: |
if [ "${{ github.ref_name }}" != "${{ env.CURRENT_TAG }}" ]; then
echo "Current tag does not match the release tag. Exiting."
exit 1
fi
- name: Set up php 8.2
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 # v2.35.4
with:
php-version: 8.2
coverage: none
ini-file: development
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Set credentials
run: |
echo '{"username": "github-actions"}' > github_helper/credentials.json
# Since this action only runs on nextcloud-releases, ignoring is okay
- name: Generate changelog between ${{ env.PREVIOUS_TAG }} and ${{ github.ref_name }} # zizmor: ignore[template-injection]
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
cd github_helper/changelog
composer install
php index.php generate:changelog --no-bots --format=forum server ${{ env.PREVIOUS_TAG }} ${{ github.ref_name }} > changelog.md
# Since this action only runs on nextcloud-releases, ignoring is okay
- name: Set changelog to release # zizmor: ignore[template-injection]
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
cd server
gh release edit ${{ github.ref_name }} --notes-file "../github_helper/changelog/changelog.md" --title "${{ github.ref_name }}"
-128
View File
@@ -1,128 +0,0 @@
# SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: DAV integration tests
on:
pull_request:
permissions:
contents: read
concurrency:
group: integration-caldav-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
changes:
runs-on: ubuntu-latest-low
outputs:
src: ${{ steps.changes.outputs.src}}
steps:
- uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2
id: changes
continue-on-error: true
with:
filters: |
src:
- '.github/workflows/**'
- '3rdparty/**'
- '**/*.php'
- '**/lib/**'
- '**/tests/**'
- '**/vendor-bin/**'
- 'build/integration/**'
- '.php-cs-fixer.dist.php'
- 'composer.json'
- 'composer.lock'
integration-caldav:
runs-on: ubuntu-latest
needs: changes
if: needs.changes.outputs.src != 'false' && github.repository_owner != 'nextcloud-gmbh'
strategy:
fail-fast: false
matrix:
php-versions: ['8.2']
endpoint: ['old', 'new']
service: ['CalDAV', 'CardDAV']
name: ${{ matrix.service }} (${{ matrix.endpoint }} endpoint) php${{ matrix.php-versions }}
steps:
- name: Checkout server
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 #v2.35.4
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, redis, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite
coverage: 'none'
ini-file: development
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Set up Python
uses: LizardByte/actions/actions/setup_python@bff0a193747a3ac7930a665fc1d4b23eba583b99 # v2025.814.40518
with:
python-version: '2.7'
- name: Set up CalDAVTester
run: |
git clone --depth=1 https://github.com/apple/ccs-caldavtester.git CalDAVTester
git clone --depth=1 https://github.com/apple/ccs-pycalendar.git pycalendar
- name: Set up Nextcloud
run: |
mkdir data
./occ maintenance:install --verbose --database=sqlite --database-name=nextcloud --database-host=127.0.0.1 --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass admin
# disable the trashbin, so recurrent deletion of the same object works
./occ config:app:set dav calendarRetentionObligation --value=0
# Prepare users
OC_PASS=user01 ./occ user:add --password-from-env user01
OC_PASS=user02 ./occ user:add --password-from-env user02
# Prepare calendars
./occ dav:create-calendar user01 calendar
./occ dav:create-calendar user01 shared
./occ dav:create-calendar user02 calendar
# Prepare address books
./occ dav:create-addressbook user01 addressbook
./occ dav:create-addressbook user02 addressbook
- name: Run Nextcloud
run: |
php -S localhost:8888 &
- name: Run CalDAVTester
run: |
cp "apps/dav/tests/testsuits/caldavtest/serverinfo-${{ matrix.endpoint }}${{ matrix.endpoint == 'old' && (matrix.service == 'CardDAV' && '-carddav' || '-caldav') || '' }}-endpoint.xml" "apps/dav/tests/testsuits/caldavtest/serverinfo.xml"
pushd CalDAVTester
PYTHONPATH="../pycalendar/src" python testcaldav.py --print-details-onfail --basedir "../apps/dav/tests/testsuits/caldavtest" -o cdt.txt \
"${{ matrix.service }}/current-user-principal.xml" \
"${{ matrix.service }}/sync-report.xml" \
${{ matrix.endpoint == 'new' && format('{0}/sharing-{1}.xml', matrix.service, matrix.service == 'CalDAV' && 'calendars' || 'addressbooks') || ';' }}
popd
- name: Print Nextcloud logs
if: always()
run: |
cat data/nextcloud.log
caldav-integration-summary:
permissions:
contents: none
runs-on: ubuntu-latest-low
needs: [changes, integration-caldav]
if: always()
steps:
- name: Summary status
run: if ${{ needs.changes.outputs.src != 'false' && needs.integration-caldav.result != 'success' }}; then exit 1; fi
-115
View File
@@ -1,115 +0,0 @@
# SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: Litmus integration tests
on:
pull_request:
permissions:
contents: read
concurrency:
group: integration-litmus-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
changes:
runs-on: ubuntu-latest-low
outputs:
src: ${{ steps.changes.outputs.src}}
steps:
- uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2
id: changes
continue-on-error: true
with:
filters: |
src:
- '.github/workflows/**'
- '3rdparty/**'
- '**/*.php'
- '**/lib/**'
- '**/tests/**'
- '**/vendor-bin/**'
- 'build/integration/**'
- '.php-cs-fixer.dist.php'
- 'composer.json'
- 'composer.lock'
integration-litmus:
runs-on: ubuntu-latest
needs: changes
if: needs.changes.outputs.src != 'false' && github.repository_owner != 'nextcloud-gmbh'
strategy:
fail-fast: false
matrix:
php-versions: ['8.2']
endpoint: ['webdav', 'dav']
name: Litmus WebDAV ${{ matrix.endpoint }}
steps:
- name: Checkout server
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 #v2.35.4
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, redis, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite
coverage: 'none'
ini-file: development
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Set up Nextcloud
run: |
mkdir data
./occ maintenance:install \
--verbose \
--database=sqlite \
--database-name=nextcloud \
--database-user=root \
--database-pass=rootpassword \
--admin-user admin \
--admin-pass admin
./occ config:system:set trusted_domains 2 --value=host.docker.internal:8080
- name: Run Nextcloud
run: |
php -S 0.0.0.0:8080 &
- name: Run Litmus test
run: |
docker run \
--rm \
--add-host=host.docker.internal:host-gateway \
ghcr.io/nextcloud/continuous-integration-litmus-php8.3:latest \
bash -c '\
cd /tmp/litmus/litmus-0.13;
make URL=http://host.docker.internal:8080/remote.php/${{ matrix.endpoint }}${{ matrix.endpoint == 'dav' && '/files/admin' || ''}} CREDS="admin admin" TESTS="basic copymove props largefile" check;
status=$?;
cat debug.log;
exit $status;'
- name: Print Nextcloud logs
if: always()
run: cat data/nextcloud.log
integration-litmus-summary:
permissions:
contents: none
runs-on: ubuntu-latest-low
needs: [changes, integration-litmus]
if: always()
steps:
- name: Summary status
run: if ${{ needs.changes.outputs.src != 'false' && needs.integration-litmus.result != 'success' }}; then exit 1; fi
@@ -1,122 +0,0 @@
# SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: S3 primary storage integration tests
on:
pull_request:
permissions:
contents: read
concurrency:
group: integration-s3-primary-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
changes:
runs-on: ubuntu-latest-low
outputs:
src: ${{ steps.changes.outputs.src}}
steps:
- uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2
id: changes
continue-on-error: true
with:
filters: |
src:
- '.github/workflows/**'
- '3rdparty/**'
- '**/*.php'
- '**/lib/**'
- '**/tests/**'
- '**/vendor-bin/**'
- 'build/integration/**'
- '.php-cs-fixer.dist.php'
- 'composer.json'
- 'composer.lock'
integration-s3-primary:
runs-on: ubuntu-latest
needs: changes
if: needs.changes.outputs.src != 'false' && github.repository_owner != 'nextcloud-gmbh'
strategy:
fail-fast: false
matrix:
php-versions: ['8.2']
key: ['objectstore', 'objectstore_multibucket']
name: php${{ matrix.php-versions }}-${{ matrix.key }}-minio
services:
redis:
image: ghcr.io/nextcloud/continuous-integration-redis:latest # zizmor: ignore[unpinned-images]
options: --health-cmd="redis-cli ping" --health-interval=10s --health-timeout=5s --health-retries=3
ports:
- 6379:6379/tcp
minio:
image: bitnami/minio@sha256:50cec18ac4184af4671a78aedd5554942c8ae105d51a465fa82037949046da01 # v2025.4.22
env:
MINIO_ROOT_USER: nextcloud
MINIO_ROOT_PASSWORD: bWluaW8tc2VjcmV0LWtleS1uZXh0Y2xvdWQ=
MINIO_DEFAULT_BUCKETS: nextcloud
ports:
- "9000:9000"
steps:
- name: Checkout server
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 #v2.35.4
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, redis, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite
coverage: 'none'
ini-file: development
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Wait for S3
run: |
sleep 10
curl -f -m 1 --retry-connrefused --retry 10 --retry-delay 10 http://localhost:9000/minio/health/ready
- name: Set up Nextcloud
run: |
mkdir data
echo '<?php $CONFIG=["${{ matrix.key }}" => ["class" => "OC\Files\ObjectStore\S3", "arguments" => ["bucket" => "nextcloud", "autocreate" => true, "key" => "nextcloud", "secret" => "bWluaW8tc2VjcmV0LWtleS1uZXh0Y2xvdWQ=", "hostname" => "localhost", "port" => 9000, "use_ssl" => false, "use_path_style" => true, "uploadPartSize" => 52428800]]];' > config/config.php
echo '<?php $CONFIG=["redis" => ["host" => "localhost", "port" => 6379], "memcache.local" => "\OC\Memcache\Redis", "memcache.distributed" => "\OC\Memcache\Redis"];' > config/redis.config.php
./occ maintenance:install --verbose --database=sqlite --database-name=nextcloud --database-host=127.0.0.1 --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass admin
php -f index.php
- name: Integration
run: |
cd build/integration
bash run.sh --tags "~@failure-s3" dav_features/webdav-related.feature
- name: S3 logs
if: always()
run: |
cat data/nextcloud.log
docker ps -a
docker ps -aq | while read container ; do IMAGE=$(docker inspect --format='{{.Config.Image}}' $container); echo $IMAGE; docker logs $container; echo "\n\n" ; done
s3-primary-integration-summary:
permissions:
contents: none
runs-on: ubuntu-latest-low
needs: [changes, integration-s3-primary]
if: always()
steps:
- name: Summary status
run: if ${{ needs.changes.outputs.src != 'false' && needs.integration-s3-primary.result != 'success' }}; then exit 1; fi
-185
View File
@@ -1,185 +0,0 @@
# SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: Integration sqlite
on:
pull_request:
push:
branches:
- main
- master
- stable*
permissions:
contents: read
concurrency:
group: integration-sqlite-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
changes:
runs-on: ubuntu-latest-low
outputs:
src: ${{ steps.changes.outputs.src}}
steps:
- uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2
id: changes
continue-on-error: true
with:
filters: |
src:
- '.github/workflows/**'
- '3rdparty/**'
- '**/*.php'
- '**/lib/**'
- '**/tests/**'
- '**/vendor-bin/**'
- 'build/integration/**'
- '.php-cs-fixer.dist.php'
- 'composer.json'
- 'composer.lock'
- 'core/shipped.json'
integration-sqlite:
runs-on: ubuntu-latest
needs: changes
if: needs.changes.outputs.src != 'false'
strategy:
fail-fast: false
matrix:
test-suite:
- 'capabilities_features'
- 'collaboration_features'
- 'comments_features'
- 'dav_features'
- 'features'
- 'federation_features'
- '--tags ~@large files_features'
- 'filesdrop_features'
- 'file_conversions'
- 'openldap_features'
- 'openldap_numerical_features'
- 'ldap_features'
- 'remoteapi_features'
- 'routing_features'
- 'setup_features'
- 'sharees_features'
- 'sharing_features'
- 'theming_features'
- 'videoverification_features'
php-versions: ['8.4']
spreed-versions: ['main']
activity-versions: ['master']
services:
redis:
image: ghcr.io/nextcloud/continuous-integration-redis:latest # zizmor: ignore[unpinned-images]
options: --health-cmd="redis-cli ping" --health-interval=10s --health-timeout=5s --health-retries=3
ports:
- 6379:6379/tcp
openldap:
image: ghcr.io/nextcloud/continuous-integration-openldap:openldap-8 # zizmor: ignore[unpinned-images]
ports:
- 389:389
- 636:636
env:
SLAPD_DOMAIN: nextcloud.ci
SLAPD_ORGANIZATION: Nextcloud
SLAPD_PASSWORD: admin
SLAPD_ADDITIONAL_MODULES: memberof
steps:
- name: Checkout server
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
submodules: true
- name: Checkout Talk app
if: ${{ matrix.test-suite == 'videoverification_features' }}
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
repository: nextcloud/spreed
path: apps/spreed
ref: ${{ matrix.spreed-versions }}
- name: Checkout Activity app
if: ${{ matrix.test-suite == 'sharing_features' }}
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
repository: nextcloud/activity
path: apps/activity
ref: ${{ matrix.activity-versions }}
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 #v2.35.4
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, imagick, intl, json, ldap, libxml, mbstring, openssl, pcntl, posix, redis, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite
coverage: none
ini-file: development
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Set up production dependencies
run: composer i --no-dev
- name: Set up behat dependencies
working-directory: build/integration
run: composer i
- name: Set up Talk dependencies
if: ${{ matrix.test-suite == 'videoverification_features' }}
working-directory: apps/spreed
run: composer i --no-dev
- name: Set up Nextcloud
run: |
mkdir data
./occ maintenance:install --verbose ${{ contains(matrix.test-suite,'ldap') && '--data-dir=/dev/shm/nc_int' || '' }} --database=sqlite --database-name=nextcloud --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass admin
./occ config:system:set hashing_default_password --value=true --type=boolean
- name: Configure caching
if: ${{ contains(matrix.test-suite,'ldap') }}
run: |
./occ config:system:set redis host --value=localhost
./occ config:system:set redis port --value=6379 --type=integer
./occ config:system:set redis timeout --value=0 --type=integer
./occ config:system:set memcache.local --value='\OC\Memcache\Redis'
./occ config:system:set memcache.distributed --value='\OC\Memcache\Redis'
- name: Run integration
working-directory: build/integration
env:
LDAP_HOST: localhost
run: bash run.sh ${{ matrix.test-suite }} no-tail-log
- name: Print logs
if: always()
run: |
cat $(./occ log:file |grep "Log file"|cut -d" " -f3)
docker ps -a
docker ps -aq | while read container ; do IMAGE=$(docker inspect --format='{{.Config.Image}}' $container); echo $IMAGE; docker logs $container; echo "\n\n" ; done
summary:
permissions:
contents: none
runs-on: ubuntu-latest-low
needs: [changes, integration-sqlite]
if: always()
name: integration-sqlite-summary
steps:
- name: Summary status
run: if ${{ needs.changes.outputs.src != 'false' && needs.integration-sqlite.result != 'success' }}; then exit 1; fi
-100
View File
@@ -1,100 +0,0 @@
# This workflow is provided via the organization template repository
#
# https://github.com/nextcloud/.github
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
#
# SPDX-FileCopyrightText: 2021-2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: Lint eslint
on: pull_request
permissions:
contents: read
concurrency:
group: lint-eslint-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
changes:
runs-on: ubuntu-latest-low
permissions:
contents: read
pull-requests: read
outputs:
src: ${{ steps.changes.outputs.src}}
steps:
- uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2
id: changes
continue-on-error: true
with:
filters: |
src:
- '.github/workflows/**'
- '**/src/**'
- '**/appinfo/info.xml'
- 'package.json'
- 'package-lock.json'
- 'tsconfig.json'
- '.eslintrc.*'
- '.eslintignore'
- '**.js'
- '**.ts'
- '**.vue'
lint:
runs-on: ubuntu-latest
needs: changes
if: needs.changes.outputs.src != 'false'
name: NPM lint
steps:
- name: Checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Read package.json node and npm engines version
uses: skjnldsv/read-package-engines-version-actions@06d6baf7d8f41934ab630e97d9e6c0bc9c9ac5e4 # v3
id: versions
with:
fallbackNode: '^20'
fallbackNpm: '^10'
- name: Set up node ${{ steps.versions.outputs.nodeVersion }}
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
with:
node-version: ${{ steps.versions.outputs.nodeVersion }}
- name: Set up npm ${{ steps.versions.outputs.npmVersion }}
run: npm i -g 'npm@${{ steps.versions.outputs.npmVersion }}'
- name: Install dependencies
env:
CYPRESS_INSTALL_BINARY: 0
PUPPETEER_SKIP_DOWNLOAD: true
run: npm ci
- name: Lint
run: npm run lint
summary:
permissions:
contents: none
runs-on: ubuntu-latest-low
needs: [changes, lint]
if: always()
# This is the summary, we just avoid to rename it so that branch protection rules still match
name: eslint
steps:
- name: Summary status
run: if ${{ needs.changes.outputs.src != 'false' && needs.lint.result != 'success' }}; then exit 1; fi
-84
View File
@@ -1,84 +0,0 @@
# This workflow is provided via the organization template repository
#
# https://github.com/nextcloud/.github
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
#
# SPDX-FileCopyrightText: 2021-2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: Lint php-cs
on: pull_request
permissions:
contents: read
concurrency:
group: lint-php-cs-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
changes:
runs-on: ubuntu-latest-low
outputs:
src: ${{ steps.changes.outputs.src}}
steps:
- uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2
id: changes
continue-on-error: true
with:
filters: |
src:
- '.github/workflows/**'
- '3rdparty/**'
- '**/lib/**'
- '**/tests/**'
- '**/vendor-bin/**'
- '.php-cs-fixer.dist.php'
- 'composer.json'
- 'composer.lock'
- '**.php'
lint:
runs-on: ubuntu-latest
name: PHP CS fixer lint
steps:
- name: Checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Set up php8.1
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 # v2.35.4
with:
php-version: 8.1
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite
coverage: none
ini-file: development
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Install dependencies
run: composer i
- name: Lint
run: composer run cs:check || ( echo 'Please run `composer run cs:fix` to format your code' && exit 1 )
summary:
permissions:
contents: none
runs-on: ubuntu-latest-low
needs: [changes, lint]
if: always()
# This is the summary, we just avoid to rename it so that branch protection rules still match
name: php-cs
steps:
- name: Summary status
run: if ${{ needs.changes.outputs.src != 'false' && needs.lint.result != 'success' }}; then exit 1; fi
-84
View File
@@ -1,84 +0,0 @@
# This workflow is provided via the organization template repository
#
# https://github.com/nextcloud/.github
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
#
# SPDX-FileCopyrightText: 2021-2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: Lint php
on: pull_request
permissions:
contents: read
concurrency:
group: lint-php-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
changes:
runs-on: ubuntu-latest-low
outputs:
src: ${{ steps.changes.outputs.src}}
steps:
- uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2
id: changes
continue-on-error: true
with:
filters: |
src:
- '.github/workflows/**'
- '3rdparty/**'
- '**/lib/**'
- '**/tests/**'
- '**/vendor-bin/**'
- '.php-cs-fixer.dist.php'
- 'composer.json'
- 'composer.lock'
- '**.php'
lint:
runs-on: ubuntu-latest
needs: changes
if: needs.changes.outputs.src != 'false'
strategy:
matrix:
php-versions: [ '8.2', '8.3', '8.4' ]
name: php-lint
steps:
- name: Checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 # v2.35.4
with:
php-version: ${{ matrix.php-versions }}
coverage: none
ini-file: development
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Lint
run: composer run lint
summary:
permissions:
contents: none
runs-on: ubuntu-latest-low
needs: [changes, lint]
if: always()
name: php-lint-summary
steps:
- name: Summary status
run: if ${{ needs.changes.outputs.src != 'false' && needs.lint.result != 'success' }}; then exit 1; fi
-53
View File
@@ -1,53 +0,0 @@
# This workflow is provided via the organization template repository
#
# https://github.com/nextcloud/.github
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
#
# SPDX-FileCopyrightText: 2021-2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: Lint stylelint
on: pull_request
permissions:
contents: read
concurrency:
group: lint-stylelint-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
lint:
runs-on: ubuntu-latest
name: stylelint
steps:
- name: Checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Read package.json node and npm engines version
uses: skjnldsv/read-package-engines-version-actions@06d6baf7d8f41934ab630e97d9e6c0bc9c9ac5e4 # v3
id: versions
with:
fallbackNode: '^20'
fallbackNpm: '^10'
- name: Set up node ${{ steps.versions.outputs.nodeVersion }}
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
with:
node-version: ${{ steps.versions.outputs.nodeVersion }}
- name: Set up npm ${{ steps.versions.outputs.npmVersion }}
run: npm i -g 'npm@${{ steps.versions.outputs.npmVersion }}'
- name: Install dependencies
env:
CYPRESS_INSTALL_BINARY: 0
run: npm ci
- name: Lint
run: npm run stylelint
-159
View File
@@ -1,159 +0,0 @@
# This workflow is provided via the organization template repository
#
# https://github.com/nextcloud/.github
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
#
# SPDX-FileCopyrightText: 2023-2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: Node tests
on:
pull_request:
schedule:
- cron: "5 2 * * *"
permissions:
contents: read
concurrency:
group: node-tests-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
changes:
runs-on: ubuntu-latest-low
permissions:
contents: read
pull-requests: read
outputs:
src: ${{ steps.changes.outputs.src}}
steps:
- uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2
id: changes
continue-on-error: true
with:
filters: |
src:
- '.github/workflows/**'
- '**/__tests__/**'
- '**/__mocks__/**'
- 'apps/*/src/**'
- 'apps/*/appinfo/info.xml'
- 'core/src/**'
- 'package.json'
- 'package-lock.json'
- 'tsconfig.json'
- '**.js'
- '**.ts'
- '**.vue'
versions:
runs-on: ubuntu-latest-low
needs: changes
if: ${{ github.repository_owner != 'nextcloud-gmbh' && needs.changes.outputs.src != 'false' }}
outputs:
nodeVersion: ${{ steps.versions.outputs.nodeVersion }}
npmVersion: ${{ steps.versions.outputs.npmVersion }}
steps:
- name: Checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Read package.json node and npm engines version
uses: skjnldsv/read-package-engines-version-actions@06d6baf7d8f41934ab630e97d9e6c0bc9c9ac5e4 # v3
id: versions
with:
fallbackNode: '^20'
fallbackNpm: '^10'
test:
runs-on: ubuntu-latest
needs: [versions, changes]
if: ${{ needs.versions.result != 'failure' && needs.changes.outputs.src != 'false' }}
env:
CYPRESS_INSTALL_BINARY: 0
PUPPETEER_SKIP_DOWNLOAD: true
steps:
- name: Checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Set up node ${{ needs.versions.outputs.nodeVersion }}
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
with:
node-version: ${{ needs.versions.outputs.nodeVersion }}
- name: Set up npm ${{ needs.versions.outputs.npmVersion }}
run: npm i -g 'npm@${{ needs.versions.outputs.npmVersion }}'
- name: Install dependencies & build
run: |
npm ci
npm run build --if-present
- name: Test and process coverage
run: npm run test:coverage --if-present
- name: Collect coverage
uses: codecov/codecov-action@fdcc8476540edceab3de004e990f80d881c6cc00 # v5.5.0
with:
files: ./coverage/lcov.info
- name: Upload test results
if: ${{ !cancelled() }}
uses: codecov/test-results-action@47f89e9acb64b76debcd5ea40642d25a4adced9f # v1.1.1
handlebars:
runs-on: ubuntu-latest
needs: [versions, changes]
if: ${{ needs.versions.result != 'failure' && needs.changes.outputs.src != 'false' }}
env:
CYPRESS_INSTALL_BINARY: 0
PUPPETEER_SKIP_DOWNLOAD: true
steps:
- name: Checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Set up node ${{ needs.versions.outputs.nodeVersion }}
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
with:
node-version: ${{ needs.versions.outputs.nodeVersion }}
- name: Set up npm ${{ needs.versions.outputs.npmVersion }}
run: npm i -g 'npm@${{ needs.versions.outputs.npmVersion }}'
- name: Install dependencies
run: npm ci
- name: Run compile
run: ./build/compile-handlebars-templates.sh
summary:
permissions:
contents: none
runs-on: ubuntu-latest-low
needs: [changes, test, handlebars]
if: always()
name: node-test-summary
steps:
- name: Summary status
run: if ${{ needs.changes.outputs.src != 'false' && (needs.test.result != 'success' || needs.handlebars.result != 'success') }}; then exit 1; fi
-110
View File
@@ -1,110 +0,0 @@
# This workflow is provided via the organization template repository
#
# https://github.com/nextcloud/.github
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
#
# SPDX-FileCopyrightText: 2021-2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: Node
on: pull_request
permissions:
contents: read
concurrency:
group: node-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
changes:
runs-on: ubuntu-latest-low
permissions:
contents: read
pull-requests: read
outputs:
src: ${{ steps.changes.outputs.src}}
steps:
- uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2
id: changes
continue-on-error: true
with:
filters: |
src:
- '.github/workflows/**'
- '**/src/**'
- '**/appinfo/info.xml'
- 'package.json'
- 'package-lock.json'
- 'tsconfig.json'
- '**.js'
- '**.ts'
- '**.vue'
- 'core/css/*'
- 'core/img/**'
- 'version.php'
build:
runs-on: ubuntu-latest
needs: changes
if: needs.changes.outputs.src != 'false'
name: NPM build
steps:
- name: Checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Read package.json node and npm engines version
uses: skjnldsv/read-package-engines-version-actions@06d6baf7d8f41934ab630e97d9e6c0bc9c9ac5e4 # v3
id: versions
with:
fallbackNode: '^20'
fallbackNpm: '^10'
- name: Set up node ${{ steps.versions.outputs.nodeVersion }}
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
with:
node-version: ${{ steps.versions.outputs.nodeVersion }}
- name: Set up npm ${{ steps.versions.outputs.npmVersion }}
run: npm i -g 'npm@${{ steps.versions.outputs.npmVersion }}'
- name: Install dependencies & build
env:
CYPRESS_INSTALL_BINARY: 0
PUPPETEER_SKIP_DOWNLOAD: true
run: |
npm ci
npm run build --if-present
- name: Check webpack build changes
run: |
bash -c "[[ ! \"`git status --porcelain `\" ]] || (echo 'Please recompile and commit the assets, see the section \"Show changes on failure\" for details' && exit 1)"
- name: Show changes on failure
if: failure()
run: |
git status
git --no-pager diff
exit 1 # make it red to grab attention
summary:
permissions:
contents: none
runs-on: ubuntu-latest-low
needs: [changes, build]
if: always()
# This is the summary, we just avoid to rename it so that branch protection rules still match
name: node
steps:
- name: Summary status
run: if ${{ needs.changes.outputs.src != 'false' && needs.build.result != 'success' }}; then exit 1; fi
-81
View File
@@ -1,81 +0,0 @@
# This workflow is provided via the organization template repository
#
# https://github.com/nextcloud/.github
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
#
# SPDX-FileCopyrightText: 2023-2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: Npm audit fix and compile
on:
workflow_dispatch:
schedule:
# At 2:30 on Sundays
- cron: '30 2 * * 0'
permissions:
contents: read
jobs:
build:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
branches: ['main', 'master', 'stable32', 'stable31', 'stable30']
name: npm-audit-fix-${{ matrix.branches }}
steps:
- name: Checkout
id: checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
ref: ${{ matrix.branches }}
continue-on-error: true
- name: Read package.json node and npm engines version
uses: skjnldsv/read-package-engines-version-actions@06d6baf7d8f41934ab630e97d9e6c0bc9c9ac5e4 # v3
id: versions
with:
fallbackNode: '^20'
fallbackNpm: '^10'
- name: Set up node ${{ steps.versions.outputs.nodeVersion }}
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
with:
node-version: ${{ steps.versions.outputs.nodeVersion }}
- name: Set up npm ${{ steps.versions.outputs.npmVersion }}
run: npm i -g 'npm@${{ steps.versions.outputs.npmVersion }}'
- name: Fix npm audit
id: npm-audit
uses: nextcloud-libraries/npm-audit-action@1b1728b2b4a7a78d69de65608efcf4db0e3e42d0 # v0.2.0
- name: Run npm ci and npm run build
if: steps.checkout.outcome == 'success'
env:
CYPRESS_INSTALL_BINARY: 0
run: |
npm ci
npm run build --if-present
- name: Create Pull Request
if: steps.checkout.outcome == 'success'
uses: peter-evans/create-pull-request@271a8d0340265f705b14b6d32b9829c1cb33d45e # v7.0.8
with:
token: ${{ secrets.COMMAND_BOT_PAT }}
commit-message: 'fix(deps): Fix npm audit'
committer: GitHub <noreply@github.com>
author: nextcloud-command <nextcloud-command@users.noreply.github.com>
signoff: true
branch: automated/noid/${{ matrix.branches }}-fix-npm-audit
title: '[${{ matrix.branches }}] Fix npm audit'
body: ${{ steps.npm-audit.outputs.markdown }}
labels: |
dependencies
3. to review
-138
View File
@@ -1,138 +0,0 @@
# SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: Object storage azure
on:
pull_request:
schedule:
- cron: "15 2 * * *"
permissions:
contents: read
concurrency:
group: object-storage-azure-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
changes:
runs-on: ubuntu-latest-low
outputs:
src: ${{ steps.changes.outputs.src}}
steps:
- uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2
id: changes
continue-on-error: true
with:
filters: |
src:
- '.github/workflows/**'
- '3rdparty/**'
- '**/appinfo/**'
- '**/lib/**'
- '**/templates/**'
- '**/tests/**'
- 'vendor/**'
- 'vendor-bin/**'
- '.php-cs-fixer.dist.php'
- 'composer.json'
- 'composer.lock'
- '**.php'
azure-primary-tests:
runs-on: ubuntu-latest
needs: changes
if: ${{ github.repository_owner != 'nextcloud-gmbh' && needs.changes.outputs.src != 'false' }}
strategy:
fail-fast: false
matrix:
php-versions: ['8.2', '8.3']
include:
- php-versions: '8.4'
coverage: true
name: php${{ matrix.php-versions }}-azure
services:
azurite:
image: mcr.microsoft.com/azure-storage/azurite@sha256:0a47e12e3693483cef5c71f35468b91d751611f172d2f97414e9c69113b106d9 # v3.34.0
env:
AZURITE_ACCOUNTS: nextcloud:bmV4dGNsb3Vk
ports:
- 10000:10000
options: --health-cmd="nc 127.0.0.1 10000 -z" --health-interval=1s --health-retries=30
cache:
image: ghcr.io/nextcloud/continuous-integration-redis:latest # zizmor: ignore[unpinned-images]
ports:
- 6379:6379/tcp
options: --health-cmd="redis-cli ping" --health-interval=10s --health-timeout=5s --health-retries=3
steps:
- name: Checkout server
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 #v2.35.4
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, redis, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite
coverage: ${{ matrix.coverage && 'xdebug' || 'none' }}
ini-file: development
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Set up Nextcloud
env:
OBJECT_STORE: azure
OBJECT_STORE_KEY: nextcloud
OBJECT_STORE_SECRET: bmV4dGNsb3Vk
run: |
composer install
cp tests/redis.config.php config/
cp tests/preseed-config.php config/config.php
./occ maintenance:install --verbose --database=sqlite --database-name=nextcloud --database-host=127.0.0.1 --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass password
php -f tests/enable_all.php
- name: PHPUnit
env:
OBJECT_STORE: azure
OBJECT_STORE_KEY: nextcloud
OBJECT_STORE_SECRET: bmV4dGNsb3Vk
run: composer run test -- --group PRIMARY-azure --log-junit junit.xml ${{ matrix.coverage && '--coverage-clover ./clover.xml' || '' }}
- name: Upload code coverage
if: ${{ !cancelled() && matrix.coverage }}
uses: codecov/codecov-action@fdcc8476540edceab3de004e990f80d881c6cc00 # v5.5.0
with:
files: ./clover.xml
flags: phpunit-azure
- name: Upload test results
if: ${{ !cancelled() }}
uses: codecov/test-results-action@47f89e9acb64b76debcd5ea40642d25a4adced9f # v1.1.1
with:
flags: phpunit-azure
- name: Azurite logs
if: always()
run: |
docker ps -a
docker ps -aq | while read container ; do IMAGE=$(docker inspect --format='{{.Config.Image}}' $container); echo $IMAGE; docker logs $container; echo "\n\n" ; done
azure-primary-summary:
runs-on: ubuntu-latest-low
needs: [changes, azure-primary-tests]
if: always()
steps:
- name: Summary status
run: if ${{ needs.changes.outputs.src != 'false' && needs.azure-primary-tests.result != 'success' }}; then exit 1; fi
-144
View File
@@ -1,144 +0,0 @@
# SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: Object storage S3
on:
pull_request:
schedule:
- cron: "15 2 * * *"
permissions:
contents: read
concurrency:
group: object-storage-s3-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
changes:
runs-on: ubuntu-latest-low
outputs:
src: ${{ steps.changes.outputs.src}}
steps:
- uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2
id: changes
continue-on-error: true
with:
filters: |
src:
- '.github/workflows/**'
- '3rdparty/**'
- '**/appinfo/**'
- '**/lib/**'
- '**/templates/**'
- '**/tests/**'
- 'vendor/**'
- 'vendor-bin/**'
- '.php-cs-fixer.dist.php'
- 'composer.json'
- 'composer.lock'
- '**.php'
s3-primary-tests-minio:
runs-on: ubuntu-latest
needs: changes
if: ${{ github.repository_owner != 'nextcloud-gmbh' && needs.changes.outputs.src != 'false' }}
strategy:
fail-fast: false
matrix:
php-versions: ['8.2']
include:
- php-versions: '8.3'
coverage: true
name: php${{ matrix.php-versions }}-s3
services:
cache:
image: ghcr.io/nextcloud/continuous-integration-redis:latest # zizmor: ignore[unpinned-images]
ports:
- 6379:6379/tcp
options: --health-cmd="redis-cli ping" --health-interval=10s --health-timeout=5s --health-retries=3
minio:
image: bitnami/minio@sha256:50cec18ac4184af4671a78aedd5554942c8ae105d51a465fa82037949046da01 # v2025.4.22
env:
MINIO_ROOT_USER: nextcloud
MINIO_ROOT_PASSWORD: bWluaW8tc2VjcmV0LWtleS1uZXh0Y2xvdWQ=
MINIO_DEFAULT_BUCKETS: nextcloud
ports:
- "9000:9000"
steps:
- name: Checkout server
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 #v2.35.4
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, redis, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite
coverage: ${{ matrix.coverage && 'xdebug' || 'none' }}
ini-file: development
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Set up Nextcloud
env:
OBJECT_STORE: s3
OBJECT_STORE_KEY: nextcloud
OBJECT_STORE_SECRET: bWluaW8tc2VjcmV0LWtleS1uZXh0Y2xvdWQ=
run: |
composer install
cp tests/redis.config.php config/
cp tests/preseed-config.php config/config.php
./occ maintenance:install --verbose --database=sqlite --database-name=nextcloud --database-host=127.0.0.1 --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass password
php -f tests/enable_all.php
- name: Wait for S3
run: |
sleep 10
curl -f -m 1 --retry-connrefused --retry 10 --retry-delay 10 http://localhost:9000/minio/health/ready
- name: PHPUnit
env:
OBJECT_STORE: s3
OBJECT_STORE_KEY: nextcloud
OBJECT_STORE_SECRET: bWluaW8tc2VjcmV0LWtleS1uZXh0Y2xvdWQ=
run: composer run test -- --group PRIMARY-s3 --log-junit junit.xml ${{ matrix.coverage && '--coverage-clover ./clover.xml' || '' }}
- name: Upload code coverage
if: ${{ !cancelled() && matrix.coverage }}
uses: codecov/codecov-action@fdcc8476540edceab3de004e990f80d881c6cc00 # v5.5.0
with:
files: ./clover.xml
flags: phpunit-s3
- name: Upload test results
if: ${{ !cancelled() }}
uses: codecov/test-results-action@47f89e9acb64b76debcd5ea40642d25a4adced9f # v1.1.1
with:
flags: phpunit-s3
- name: S3 logs
if: always()
run: |
docker ps -a
docker ps -aq | while read container ; do IMAGE=$(docker inspect --format='{{.Config.Image}}' $container); echo $IMAGE; docker logs $container; echo "\n\n" ; done
s3-primary-summary:
runs-on: ubuntu-latest-low
needs: [changes,s3-primary-tests-minio]
if: always()
steps:
- name: Summary status
run: if ${{ needs.changes.outputs.src != 'false' && needs.s3-primary-tests-minio.result != 'success' }}; then exit 1; fi
-134
View File
@@ -1,134 +0,0 @@
# SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: Object storage Swift
on:
pull_request:
schedule:
- cron: "15 2 * * *"
permissions:
contents: read
concurrency:
group: object-storage-swift-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
changes:
runs-on: ubuntu-latest-low
outputs:
src: ${{ steps.changes.outputs.src}}
steps:
- uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2
id: changes
continue-on-error: true
with:
filters: |
src:
- '.github/workflows/**'
- '3rdparty/**'
- '**/appinfo/**'
- '**/lib/**'
- '**/templates/**'
- '**/tests/**'
- 'vendor/**'
- 'vendor-bin/**'
- '.php-cs-fixer.dist.php'
- 'composer.json'
- 'composer.lock'
- '**.php'
swift-primary-tests:
runs-on: ubuntu-latest
needs: changes
if: ${{ github.repository_owner != 'nextcloud-gmbh' && needs.changes.outputs.src != 'false' }}
strategy:
fail-fast: false
matrix:
php-versions: ['8.2']
include:
- php-versions: '8.3'
coverage: true
name: php${{ matrix.php-versions }}-swift
services:
cache:
image: ghcr.io/nextcloud/continuous-integration-redis:latest # zizmor: ignore[unpinned-images]
ports:
- 6379:6379/tcp
options: --health-cmd="redis-cli ping" --health-interval=10s --health-timeout=5s --health-retries=3
swift:
image: ghcr.io/cscfi/docker-keystone-swift@sha256:e8b1ec21120ab9adc6ac6a2b98785fd273676439a8633fe898e37f2aea7e0712
ports:
- 5000:5000
- 8080:8080
steps:
- name: Checkout server
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 #v2.35.4
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, redis, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite
coverage: ${{ matrix.coverage && 'xdebug' || 'none' }}
ini-file: development
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Set up Nextcloud
env:
OBJECT_STORE: swift
OBJECT_STORE_SECRET: veryfast
run: |
composer install
cp tests/redis.config.php config/
cp tests/preseed-config.php config/config.php
./occ maintenance:install --verbose --database=sqlite --database-name=nextcloud --database-host=127.0.0.1 --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass password
php -f tests/enable_all.php
- name: PHPUnit
env:
OBJECT_STORE: swift
OBJECT_STORE_SECRET: veryfast
run: composer run test -- --group PRIMARY-swift --log-junit junit.xml ${{ matrix.coverage && '--coverage-clover ./clover.xml' || '' }}
- name: Upload code coverage
if: ${{ !cancelled() && matrix.coverage }}
uses: codecov/codecov-action@fdcc8476540edceab3de004e990f80d881c6cc00 # v5.5.0
with:
files: ./clover.xml
flags: phpunit-swift
- name: Upload test results
if: ${{ !cancelled() }}
uses: codecov/test-results-action@47f89e9acb64b76debcd5ea40642d25a4adced9f # v1.1.1
with:
flags: phpunit-swift
- name: Swift logs
if: always()
run: |
docker ps -a
docker ps -aq | while read container ; do IMAGE=$(docker inspect --format='{{.Config.Image}}' $container); echo $IMAGE; docker logs $container; echo "\n\n" ; done
swift-primary-summary:
runs-on: ubuntu-latest-low
needs: [changes,swift-primary-tests]
if: always()
steps:
- name: Summary status
run: if ${{ needs.changes.outputs.src != 'false' && needs.swift-primary-tests.result != 'success' }}; then exit 1; fi
-47
View File
@@ -1,47 +0,0 @@
# This workflow is provided via the organization template repository
#
# https://github.com/nextcloud/.github
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
#
# SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-FileCopyrightText: 2024 Arthur Schiwon <blizzz@arthur-schiwon.de>
# SPDX-License-Identifier: MIT
name: OpenAPI
on: pull_request
permissions:
contents: read
concurrency:
group: openapi-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
openapi:
runs-on: ubuntu-latest
if: ${{ github.repository_owner != 'nextcloud-gmbh' }}
steps:
- name: Checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Set up php
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 # v2.35.4
with:
php-version: '8.2'
extensions: ctype, curl, dom, fileinfo, gd, json, libxml, mbstring, openssl, pcntl, pdo, posix, session, simplexml, xml, xmlreader, xmlwriter, zip, zlib
coverage: none
ini-file: development
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Set up dependencies
run: composer i
- name: OpenAPI checker
run: build/openapi-checker.sh
-127
View File
@@ -1,127 +0,0 @@
# SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: Performance testing
on:
pull_request:
permissions:
contents: read
concurrency:
group: performance-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
performance-testing:
runs-on: ubuntu-latest
if: ${{ github.repository_owner != 'nextcloud-gmbh' }}
permissions:
pull-requests: write
strategy:
fail-fast: false
matrix:
php-versions: ['8.2']
name: performance-${{ matrix.php-versions }}
steps:
- name: Disabled on forks
if: ${{ github.event.pull_request.head.repo.full_name != github.repository }}
run: |
echo 'Can not run performance tests on forks'
exit 1
- name: Checkout server before PR
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
submodules: true
ref: ${{ github.event.pull_request.base.ref }}
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 # v2.35.4
with:
php-version: ${{ matrix.php-versions }}
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, redis, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Set up Nextcloud
run: |
mkdir data
./occ maintenance:install --verbose --database=sqlite --database-name=nextcloud --database-host=127.0.0.1 --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass password
php -S localhost:8080 &
- name: Apply blueprint
uses: icewind1991/blueprint@00504403f76cb2a09efd0d16793575055e6f63cb # v0.1.2
with:
blueprint: tests/blueprints/basic.toml
ref: ${{ github.event.pull_request.head.ref }}
- name: Run before measurements
uses: nextcloud/profiler@6801ee10fc80f10b444388fb6ca9b36ad8a2ea83
with:
run: |
curl -s -X PROPFIND -u test:test http://localhost:8080/remote.php/dav/files/test
curl -s -u test:test http://localhost:8080/remote.php/dav/files/test/test.txt
curl -s -X PROPFIND -u test:test http://localhost:8080/remote.php/dav/files/test/many_files
curl -s -u test:test -T README.md http://localhost:8080/remote.php/dav/files/test/new_file.txt
curl -s -u test:test -X DELETE http://localhost:8080/remote.php/dav/files/test/new_file.txt
output: before.json
profiler-branch: master
- name: Apply PR # zizmor: ignore[template-injection]
run: |
git remote add pr '${{ github.event.pull_request.head.repo.clone_url }}'
git fetch pr '${{ github.event.pull_request.head.ref }}'
git checkout -b 'pr/${{ github.event.pull_request.head.ref }}'
git submodule update
./occ upgrade
- name: Run after measurements
id: compare
uses: nextcloud/profiler@6801ee10fc80f10b444388fb6ca9b36ad8a2ea83
with:
run: |
curl -s -X PROPFIND -u test:test http://localhost:8080/remote.php/dav/files/test
curl -s -u test:test http://localhost:8080/remote.php/dav/files/test/test.txt
curl -s -X PROPFIND -u test:test http://localhost:8080/remote.php/dav/files/test/many_files
curl -s -u test:test -T README.md http://localhost:8080/remote.php/dav/files/test/new_file.txt
curl -s -u test:test -X DELETE http://localhost:8080/remote.php/dav/files/test/new_file.txt
output: after.json
profiler-branch: master
compare-with: before.json
- name: Upload profiles
if: always()
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02
with:
name: profiles
path: |
before.json
after.json
- uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7
if: failure() && steps.compare.outcome == 'failure'
with:
github-token: ${{secrets.GITHUB_TOKEN}}
script: |
let comment = `Possible performance regression detected\n`;
comment += `<details><summary>Show Output</summary>
\`\`\`
${{ steps.compare.outputs.compare }}
\`\`\`
</details>`;
github.rest.issues.createComment({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
body: comment
})
-71
View File
@@ -1,71 +0,0 @@
# SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: PHPUnit 32bits
on:
pull_request:
paths:
- "version.php"
- ".github/workflows/phpunit-32bits.yml"
- "tests/phpunit-autotest.xml"
- "lib/private/Snowflake/*"
workflow_dispatch:
schedule:
- cron: "15 1 * * 1-6"
permissions:
contents: read
concurrency:
group: phpunit-32bits-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
phpunit-32bits:
runs-on: ubuntu-latest
if: ${{ github.repository_owner != 'nextcloud-gmbh' }}
container: shivammathur/node:latest-i386
strategy:
fail-fast: false
matrix:
php-versions: ["8.2", "8.3", "8.4"]
steps:
- name: Checkout server
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
submodules: true
- name: Install tools
run: |
sudo apt-get update
sudo apt-get install -y ffmpeg imagemagick libmagickcore-6.q16-3-extra
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 #v2.35.4
with:
php-version: ${{ matrix.php-versions }}
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, imagick, intl, json, libxml, mbstring, openssl, pcntl, posix, redis, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite, apcu, ldap
coverage: none
ini-file: development
ini-values: apc.enabled=on, apc.enable_cli=on, disable_functions= # https://github.com/shivammathur/setup-php/discussions/573
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Set up dependencies
run: composer i
- name: Set up Nextcloud
env:
DB_PORT: 4444
run: |
mkdir data
./occ maintenance:install --verbose --database=sqlite --database-name=nextcloud --database-host=127.0.0.1 --database-port=$DB_PORT --database-user=autotest --database-pass=rootpassword --admin-user admin --admin-pass admin
php -f tests/enable_all.php
- name: PHPUnit
run: composer run test -- --exclude-group PRIMARY-azure --exclude-group PRIMARY-s3 --exclude-group PRIMARY-swift --exclude-group Memcached --exclude-group Redis --exclude-group RoutingWeirdness
-155
View File
@@ -1,155 +0,0 @@
# This workflow is provided via the organization template repository
#
# https://github.com/nextcloud/.github
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
#
# SPDX-FileCopyrightText: 2023-2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: PHPUnit MariaDB
on:
pull_request:
schedule:
- cron: "5 2 * * *"
permissions:
contents: read
concurrency:
group: phpunit-mariadb-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
changes:
runs-on: ubuntu-latest-low
permissions:
contents: read
pull-requests: read
outputs:
src: ${{ steps.changes.outputs.src}}
steps:
- uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2
id: changes
continue-on-error: true
with:
filters: |
src:
- '.github/workflows/**'
- '3rdparty/**'
- '**/appinfo/**'
- '**/lib/**'
- '**/templates/**'
- '**/tests/**'
- 'vendor/**'
- 'vendor-bin/**'
- '.php-cs-fixer.dist.php'
- 'composer.json'
- 'composer.lock'
- '**.php'
phpunit-mariadb:
runs-on: ubuntu-latest
needs: changes
if: needs.changes.outputs.src != 'false'
strategy:
fail-fast: false
matrix:
php-versions: ['8.2']
mariadb-versions: ['10.3', '10.6', '10.11', '11.4', '11.8']
include:
- php-versions: '8.3'
mariadb-versions: '10.11'
coverage: ${{ github.event_name != 'pull_request' }}
- php-versions: '8.4'
mariadb-versions: '11.8'
name: MariaDB ${{ matrix.mariadb-versions }} (PHP ${{ matrix.php-versions }}) - database tests
services:
cache:
image: ghcr.io/nextcloud/continuous-integration-redis:latest # zizmor: ignore[unpinned-images]
ports:
- 6379:6379/tcp
options: --health-cmd="redis-cli ping" --health-interval=10s --health-timeout=5s --health-retries=3
mariadb:
image: mariadb:${{ matrix.mariadb-versions }}
ports:
- 4444:3306/tcp
env:
MYSQL_ROOT_PASSWORD: rootpassword
MYSQL_USER: oc_autotest
MYSQL_PASSWORD: nextcloud
MYSQL_DATABASE: oc_autotest
options: --health-cmd="${{ matrix.mariadb-versions <= 10.4 && 'mysqladmin' || 'mariadb-admin'}} ping" --health-interval 5s --health-timeout 2s --health-retries 5
steps:
- name: Checkout server
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 # v2.35.4
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, redis, session, simplexml, xmlreader, xmlwriter, zip, zlib, mysql, pdo_mysql
coverage: ${{ matrix.coverage && 'xdebug' || 'none' }}
ini-file: development
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Set up dependencies
run: composer i
- name: Enable ONLY_FULL_GROUP_BY MariaDB option
run: |
echo "SET GLOBAL sql_mode=(SELECT CONCAT(@@sql_mode,',ONLY_FULL_GROUP_BY'));" | mysql -h 127.0.0.1 -P 4444 -u root -prootpassword
echo 'SELECT @@sql_mode;' | mysql -h 127.0.0.1 -P 4444 -u root -prootpassword
- name: Set up Nextcloud
env:
DB_PORT: 4444
run: |
mkdir data
cp tests/redis.config.php config/
cp tests/preseed-config.php config/config.php
./occ maintenance:install --verbose --database=mysql --database-name=nextcloud --database-host=127.0.0.1 --database-port=$DB_PORT --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass admin
php -f tests/enable_all.php
- name: PHPUnit
run: composer run test:db -- --log-junit junit.xml ${{ matrix.coverage && '--coverage-clover ./clover.db.xml' || '' }}
- name: Upload db code coverage
if: ${{ !cancelled() && matrix.coverage }}
uses: codecov/codecov-action@fdcc8476540edceab3de004e990f80d881c6cc00 # v5.5.0
with:
files: ./clover.db.xml
flags: phpunit-mariadb
- name: Upload test results
if: ${{ !cancelled() }}
uses: codecov/test-results-action@47f89e9acb64b76debcd5ea40642d25a4adced9f # v1.1.1
with:
flags: phpunit-mariadb
summary:
permissions:
contents: none
runs-on: ubuntu-latest-low
needs: [changes, phpunit-mariadb]
if: always()
name: phpunit-mariadb-summary
steps:
- name: Summary status
run: if ${{ needs.changes.outputs.src != 'false' && needs.phpunit-mariadb.result != 'success' }}; then exit 1; fi
-134
View File
@@ -1,134 +0,0 @@
# This workflow is provided via the organization template repository
#
# https://github.com/nextcloud/.github
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
#
# SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: PHPUnit memcached
on:
pull_request:
schedule:
- cron: "5 2 * * *"
permissions:
contents: read
concurrency:
group: phpunit-memcached-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
changes:
runs-on: ubuntu-latest-low
outputs:
src: ${{ steps.changes.outputs.src}}
steps:
- uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2
id: changes
continue-on-error: true
with:
filters: |
src:
- '.github/workflows/**'
- '3rdparty/**'
- '**/appinfo/**'
- '**/lib/**'
- '**/templates/**'
- '**/tests/**'
- 'vendor/**'
- 'vendor-bin/**'
- '.php-cs-fixer.dist.php'
- 'composer.json'
- 'composer.lock'
- '**.php'
phpunit-memcached:
runs-on: ubuntu-latest
needs: changes
if: needs.changes.outputs.src != 'false'
strategy:
fail-fast: false
matrix:
php-versions: ['8.3', '8.4']
include:
- php-versions: '8.2'
coverage: ${{ github.event_name != 'pull_request' }}
name: Memcached (PHP ${{ matrix.php-versions }})
services:
memcached:
image: ghcr.io/nextcloud/continuous-integration-redis:latest # zizmor: ignore[unpinned-images]
ports:
- 11212:11212/tcp
- 11212:11212/udp
steps:
- name: Checkout server
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 #v2.35.4
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, memcached, openssl, pcntl, posix, redis, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite
coverage: ${{ matrix.coverage && 'xdebug' || 'none' }}
ini-file: development
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Set up dependencies
run: composer i
- name: Set up Nextcloud
run: |
mkdir data
cp tests/preseed-config.php config/config.php
./occ maintenance:install --verbose --database=sqlite --database-name=nextcloud --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass admin
php -f tests/enable_all.php
- name: PHPUnit memcached tests
run: composer run test -- --group Memcache --group Memcached --log-junit junit.xml ${{ matrix.coverage && '--coverage-clover ./clover.xml' || '' }}
- name: Upload code coverage
if: ${{ !cancelled() && matrix.coverage }}
uses: codecov/codecov-action@fdcc8476540edceab3de004e990f80d881c6cc00 # v5.5.0
with:
files: ./clover.xml
flags: phpunit-memcached
- name: Upload test results
if: ${{ !cancelled() }}
uses: codecov/test-results-action@47f89e9acb64b76debcd5ea40642d25a4adced9f # v1.1.1
with:
flags: phpunit-memcached
- name: Print logs
if: always()
run: |
cat data/nextcloud.log
summary:
permissions:
contents: none
runs-on: ubuntu-latest-low
needs: [changes, phpunit-memcached]
if: always()
name: phpunit-memcached-summary
steps:
- name: Summary status
run: if ${{ needs.changes.outputs.src != 'false' && needs.phpunit-memcached.result != 'success' }}; then exit 1; fi
@@ -1,192 +0,0 @@
# This workflow is provided via the organization template repository
#
# https://github.com/nextcloud/.github
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
#
# SPDX-FileCopyrightText: 2022-2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: PHPUnit sharding
on:
pull_request:
schedule:
- cron: "5 2 * * *"
permissions:
contents: read
concurrency:
group: phpunit-mysql-sharding-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
changes:
runs-on: ubuntu-latest-low
outputs:
src: ${{ steps.changes.outputs.src }}
steps:
- uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2
id: changes
continue-on-error: true
with:
filters: |
src:
- '.github/workflows/**'
- '3rdparty/**'
- '**/appinfo/**'
- '**/lib/**'
- '**/templates/**'
- '**/tests/**'
- 'vendor/**'
- 'vendor-bin/**'
- '.php-cs-fixer.dist.php'
- 'composer.json'
- 'composer.lock'
- '**.php'
phpunit-mysql:
runs-on: ubuntu-latest
needs: changes
if: needs.changes.outputs.src != 'false'
strategy:
fail-fast: false
matrix:
php-versions: ['8.2']
mysql-versions: ['8.4']
name: Sharding - MySQL ${{ matrix.mysql-versions }} (PHP ${{ matrix.php-versions }}) - database tests
services:
cache:
image: ghcr.io/nextcloud/continuous-integration-redis:latest # zizmor: ignore[unpinned-images]
ports:
- 6379:6379/tcp
options: --health-cmd="redis-cli ping" --health-interval=10s --health-timeout=5s --health-retries=3
mysql:
image: ghcr.io/nextcloud/continuous-integration-mysql-${{ matrix.mysql-versions }}:latest # zizmor: ignore[unpinned-images]
ports:
- 4444:3306/tcp
env:
MYSQL_ROOT_PASSWORD: rootpassword
MYSQL_USER: oc_autotest
MYSQL_PASSWORD: nextcloud
MYSQL_DATABASE: oc_autotest
options: --health-cmd="mysqladmin ping" --health-interval 5s --health-timeout 2s --health-retries 10
shard1:
image: ghcr.io/nextcloud/continuous-integration-mysql-${{ matrix.mysql-versions }}:latest # zizmor: ignore[unpinned-images]
ports:
- 5001:3306/tcp
env:
MYSQL_ROOT_PASSWORD: rootpassword
MYSQL_USER: oc_autotest
MYSQL_PASSWORD: nextcloud
MYSQL_DATABASE: nextcloud
options: --health-cmd="mysqladmin ping" --health-interval 5s --health-timeout 2s --health-retries 10
shard2:
image: ghcr.io/nextcloud/continuous-integration-mysql-${{ matrix.mysql-versions }}:latest # zizmor: ignore[unpinned-images]
ports:
- 5002:3306/tcp
env:
MYSQL_ROOT_PASSWORD: rootpassword
MYSQL_USER: oc_autotest
MYSQL_PASSWORD: nextcloud
MYSQL_DATABASE: nextcloud
options: --health-cmd="mysqladmin ping" --health-interval 5s --health-timeout 2s --health-retries 10
shard3:
image: ghcr.io/nextcloud/continuous-integration-mysql-${{ matrix.mysql-versions }}:latest # zizmor: ignore[unpinned-images]
ports:
- 5003:3306/tcp
env:
MYSQL_ROOT_PASSWORD: rootpassword
MYSQL_USER: oc_autotest
MYSQL_PASSWORD: nextcloud
MYSQL_DATABASE: nextcloud
options: --health-cmd="mysqladmin ping" --health-interval 5s --health-timeout 2s --health-retries 10
shard4:
image: ghcr.io/nextcloud/continuous-integration-mysql-${{ matrix.mysql-versions }}:latest # zizmor: ignore[unpinned-images]
ports:
- 5004:3306/tcp
env:
MYSQL_ROOT_PASSWORD: rootpassword
MYSQL_USER: oc_autotest
MYSQL_PASSWORD: nextcloud
MYSQL_DATABASE: nextcloud
options: --health-cmd="mysqladmin ping" --health-interval 5s --health-timeout 2s --health-retries 10
steps:
- name: Checkout server
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 #v2.35.4
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, redis, session, simplexml, xmlreader, xmlwriter, zip, zlib, mysql, pdo_mysql
coverage: ${{ matrix.coverage && 'xdebug' || 'none' }}
ini-file: development
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Set up dependencies
run: composer i
- name: Enable ONLY_FULL_GROUP_BY MySQL option
run: |
echo "SET GLOBAL sql_mode=(SELECT CONCAT(@@sql_mode,',ONLY_FULL_GROUP_BY'));" | mysql -h 127.0.0.1 -P 4444 -u root -prootpassword
echo "SELECT @@sql_mode;" | mysql -h 127.0.0.1 -P 4444 -u root -prootpassword
- name: Set up Nextcloud
env:
DB_PORT: 4444
SHARDING: 1
run: |
mkdir data
cp tests/redis.config.php config/
cp tests/preseed-config.php config/config.php
./occ maintenance:install --verbose --database=mysql --database-name=nextcloud --database-host=127.0.0.1 --database-port=$DB_PORT --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass admin
php -f tests/enable_all.php
- name: PHPUnit
run: composer run test:db -- --log-junit junit.xml ${{ matrix.coverage && '--coverage-clover ./clover.db.xml' || '' }}
- name: Upload db code coverage
if: ${{ !cancelled() && matrix.coverage }}
uses: codecov/codecov-action@fdcc8476540edceab3de004e990f80d881c6cc00 # v5.5.0
with:
files: ./clover.db.xml
flags: phpunit-mysql
- name: Upload test results
if: ${{ !cancelled() }}
uses: codecov/test-results-action@47f89e9acb64b76debcd5ea40642d25a4adced9f # v1.1.1
with:
flags: phpunit-mysql
- name: Print logs
if: always()
run: |
cat data/nextcloud.log
summary:
permissions:
contents: none
runs-on: ubuntu-latest-low
needs: [changes, phpunit-mysql]
if: always()
name: phpunit-mysql-summary
steps:
- name: Summary status
run: if ${{ needs.changes.outputs.src != 'false' && needs.phpunit-mysql.result != 'success' }}; then exit 1; fi
-160
View File
@@ -1,160 +0,0 @@
# This workflow is provided via the organization template repository
#
# https://github.com/nextcloud/.github
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
#
# SPDX-FileCopyrightText: 2022-2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: PHPUnit mysql
on:
pull_request:
schedule:
- cron: "5 2 * * *"
permissions:
contents: read
concurrency:
group: phpunit-mysql-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
changes:
runs-on: ubuntu-latest-low
permissions:
contents: read
pull-requests: read
outputs:
src: ${{ steps.changes.outputs.src }}
steps:
- uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2
id: changes
continue-on-error: true
with:
filters: |
src:
- '.github/workflows/**'
- '3rdparty/**'
- '**/appinfo/**'
- '**/lib/**'
- '**/templates/**'
- '**/tests/**'
- 'vendor/**'
- 'vendor-bin/**'
- '.php-cs-fixer.dist.php'
- 'composer.json'
- 'composer.lock'
- '**.php'
phpunit-mysql:
runs-on: ubuntu-latest
needs: changes
if: needs.changes.outputs.src != 'false'
strategy:
fail-fast: false
matrix:
php-versions: ['8.2']
mysql-versions: ['8.0', '8.4']
include:
- mysql-versions: '8.0'
php-versions: '8.3'
coverage: ${{ github.event_name != 'pull_request' }}
- mysql-versions: '8.4'
php-versions: '8.4'
name: MySQL ${{ matrix.mysql-versions }} (PHP ${{ matrix.php-versions }}) - database tests
services:
cache:
image: ghcr.io/nextcloud/continuous-integration-redis:latest # zizmor: ignore[unpinned-images]
ports:
- 6379:6379/tcp
options: --health-cmd="redis-cli ping" --health-interval=10s --health-timeout=5s --health-retries=3
mysql:
image: ghcr.io/nextcloud/continuous-integration-mysql-${{ matrix.mysql-versions }}:latest # zizmor: ignore[unpinned-images]
ports:
- 4444:3306/tcp
env:
MYSQL_ROOT_PASSWORD: rootpassword
MYSQL_USER: oc_autotest
MYSQL_PASSWORD: nextcloud
MYSQL_DATABASE: oc_autotest
options: --health-cmd="mysqladmin ping" --health-interval 5s --health-timeout 2s --health-retries 10
steps:
- name: Checkout server
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 # v2.35.4
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, redis, session, simplexml, xmlreader, xmlwriter, zip, zlib, mysql, pdo_mysql
coverage: ${{ matrix.coverage && 'xdebug' || 'none' }}
ini-file: development
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Set up dependencies
run: composer i
- name: Enable ONLY_FULL_GROUP_BY MySQL option
run: |
echo "SET GLOBAL sql_mode=(SELECT CONCAT(@@sql_mode,',ONLY_FULL_GROUP_BY'));" | mysql -h 127.0.0.1 -P 4444 -u root -prootpassword
echo "SELECT @@sql_mode;" | mysql -h 127.0.0.1 -P 4444 -u root -prootpassword
- name: Set up Nextcloud
env:
DB_PORT: 4444
run: |
mkdir data
cp tests/redis.config.php config/
cp tests/preseed-config.php config/config.php
./occ maintenance:install --verbose --database=mysql --database-name=nextcloud --database-host=127.0.0.1 --database-port=$DB_PORT --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass admin
php -f tests/enable_all.php
- name: PHPUnit
run: composer run test:db -- --log-junit junit.xml ${{ matrix.coverage && '--coverage-clover ./clover.db.xml' || '' }}
- name: Upload db code coverage
if: ${{ !cancelled() && matrix.coverage }}
uses: codecov/codecov-action@fdcc8476540edceab3de004e990f80d881c6cc00 # v5.5.0
with:
files: ./clover.db.xml
flags: phpunit-mysql
- name: Upload test results
if: ${{ !cancelled() }}
uses: codecov/test-results-action@47f89e9acb64b76debcd5ea40642d25a4adced9f # v1.1.1
with:
flags: phpunit-mysql
- name: Print logs
if: always()
run: |
cat data/nextcloud.log
summary:
permissions:
contents: none
runs-on: ubuntu-latest-low
needs: [changes, phpunit-mysql]
if: always()
name: phpunit-mysql-summary
steps:
- name: Summary status
run: if ${{ needs.changes.outputs.src != 'false' && needs.phpunit-mysql.result != 'success' }}; then exit 1; fi
-140
View File
@@ -1,140 +0,0 @@
# This workflow is provided via the organization template repository
#
# https://github.com/nextcloud/.github
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
#
# SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
#
# This is the testsuite running all non-database agnostic unit tests
name: PHPUnit nodb
on:
pull_request:
schedule:
- cron: "5 2 * * *"
permissions:
contents: read
concurrency:
group: phpunit-nodb-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
changes:
runs-on: ubuntu-latest-low
outputs:
src: ${{ steps.changes.outputs.src }}
steps:
- uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2
id: changes
continue-on-error: true
with:
filters: |
src:
- '.github/workflows/**'
- '3rdparty/**'
- '**/appinfo/**'
- '**/lib/**'
- '**/templates/**'
- '**/tests/**'
- 'resources/**'
- 'vendor/**'
- 'vendor-bin/**'
- '.php-cs-fixer.dist.php'
- 'composer.json'
- 'composer.lock'
- '**.php'
phpunit-nodb:
runs-on: ubuntu-latest
needs: changes
if: needs.changes.outputs.src != 'false'
strategy:
fail-fast: false
matrix:
php-versions: ['8.3', '8.4']
include:
- php-versions: '8.2'
coverage: ${{ github.event_name != 'pull_request' }}
name: No DB unit tests (PHP ${{ matrix.php-versions }})
services:
cache:
image: ghcr.io/nextcloud/continuous-integration-redis:latest # zizmor: ignore[unpinned-images]
ports:
- 6379:6379/tcp
options: --health-cmd="redis-cli ping" --health-interval=10s --health-timeout=5s --health-retries=3
steps:
- name: Checkout server
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 #v2.35.4
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, imagick, intl, json, libxml, mbstring, openssl, pcntl, posix, redis, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite
coverage: ${{ matrix.coverage && 'xdebug' || 'none' }}
ini-file: development
# Required for tests that use pcntl
ini-values: disable_functions=""
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Set up dependencies
run: composer i
- name: Set up Nextcloud
run: |
mkdir data
cp tests/redis.config.php config/
cp tests/preseed-config.php config/config.php
./occ maintenance:install --verbose --database=sqlite --database-name=nextcloud --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass admin
php -f tests/enable_all.php
- name: PHPUnit nodb testsuite
run: composer run test -- --exclude-group DB --exclude-group SLOWDB --log-junit junit.xml ${{ matrix.coverage && '--coverage-clover ./clover.nodb.xml' || '' }}
- name: Upload nodb code coverage
if: ${{ !cancelled() && matrix.coverage }}
uses: codecov/codecov-action@fdcc8476540edceab3de004e990f80d881c6cc00 # v5.5.0
with:
files: ./clover.nodb.xml
flags: phpunit-nodb
- name: Upload test results
if: ${{ !cancelled() }}
uses: codecov/test-results-action@47f89e9acb64b76debcd5ea40642d25a4adced9f # v1.1.1
with:
flags: phpunit-nodb
- name: Print logs
if: always()
run: |
cat data/nextcloud.log
summary:
permissions:
contents: none
runs-on: ubuntu-latest-low
needs: [changes, phpunit-nodb]
if: always()
name: phpunit-nodb-summary
steps:
- name: Summary status
run: if ${{ needs.changes.outputs.src != 'false' && needs.phpunit-nodb.result != 'success' }}; then exit 1; fi
@@ -1,124 +0,0 @@
# SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: PHPUnit primary object store
on:
pull_request:
schedule:
- cron: "15 2 * * *"
permissions:
contents: read
concurrency:
group: phpunit-object-store-primary-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
changes:
runs-on: ubuntu-latest-low
outputs:
src: ${{ steps.changes.outputs.src}}
steps:
- uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2
id: changes
continue-on-error: true
with:
filters: |
src:
- '.github/workflows/**'
- '3rdparty/**'
- '**/appinfo/**'
- '**/lib/**'
- '**/templates/**'
- '**/tests/**'
- 'vendor/**'
- 'vendor-bin/**'
- '.php-cs-fixer.dist.php'
- 'composer.json'
- 'composer.lock'
- '**.php'
object-store-primary-tests-minio:
runs-on: ubuntu-latest
needs: changes
if: ${{ github.repository_owner != 'nextcloud-gmbh' && needs.changes.outputs.src != 'false' }}
strategy:
fail-fast: false
matrix:
php-versions: ['8.2']
key: ['s3', 's3-multibucket']
name: php${{ matrix.php-versions }}-${{ matrix.key }}-minio
services:
cache:
image: ghcr.io/nextcloud/continuous-integration-redis:latest # zizmor: ignore[unpinned-images]
ports:
- 6379:6379/tcp
options: --health-cmd="redis-cli ping" --health-interval=10s --health-timeout=5s --health-retries=3
minio:
image: bitnami/minio@sha256:50cec18ac4184af4671a78aedd5554942c8ae105d51a465fa82037949046da01 # v2025.4.22
env:
MINIO_ROOT_USER: nextcloud
MINIO_ROOT_PASSWORD: bWluaW8tc2VjcmV0LWtleS1uZXh0Y2xvdWQ=
MINIO_DEFAULT_BUCKETS: nextcloud
ports:
- "9000:9000"
steps:
- name: Checkout server
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 #v2.35.4
with:
php-version: ${{ matrix.php-versions }}
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, redis, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Set up Nextcloud
env:
OBJECT_STORE: ${{ matrix.key }}
OBJECT_STORE_KEY: nextcloud
OBJECT_STORE_SECRET: bWluaW8tc2VjcmV0LWtleS1uZXh0Y2xvdWQ=
run: |
composer install
cp tests/redis.config.php config/
cp tests/preseed-config.php config/config.php
./occ maintenance:install --verbose --database=sqlite --database-name=nextcloud --database-host=127.0.0.1 --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass password
php -f tests/enable_all.php
- name: Wait for S3
run: |
sleep 10
curl -f -m 1 --retry-connrefused --retry 10 --retry-delay 10 http://localhost:9000/minio/health/ready
- name: PHPUnit
run: composer run test:db
- name: S3 logs
if: always()
run: |
cat data/nextcloud.log
docker ps -a
docker ps -aq | while read container ; do IMAGE=$(docker inspect --format='{{.Config.Image}}' $container); echo $IMAGE; docker logs $container; echo "\n\n" ; done
object-store-primary-summary:
runs-on: ubuntu-latest-low
needs: [changes,object-store-primary-tests-minio]
if: always()
steps:
- name: Summary status
run: if ${{ needs.changes.outputs.src != 'false' && needs.object-store-primary-tests-minio.result != 'success' }}; then exit 1; fi
-163
View File
@@ -1,163 +0,0 @@
# This workflow is provided via the organization template repository
#
# https://github.com/nextcloud/.github
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
#
# SPDX-FileCopyrightText: 2022-2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: PHPUnit OCI
on:
pull_request:
schedule:
- cron: "5 2 * * *"
permissions:
contents: read
concurrency:
group: phpunit-oci-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
changes:
runs-on: ubuntu-latest-low
permissions:
contents: read
pull-requests: read
outputs:
src: ${{ steps.changes.outputs.src }}
steps:
- uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2
id: changes
continue-on-error: true
with:
filters: |
src:
- '.github/workflows/**'
- '3rdparty/**'
- '**/appinfo/**'
- '**/lib/**'
- '**/templates/**'
- '**/tests/**'
- 'vendor/**'
- 'vendor-bin/**'
- '.php-cs-fixer.dist.php'
- 'composer.json'
- 'composer.lock'
- '**.php'
phpunit-oci:
runs-on: ubuntu-latest
needs: changes
if: ${{ needs.changes.outputs.src != 'false' && github.repository_owner != 'nextcloud-gmbh' }}
strategy:
fail-fast: false
matrix:
include:
- oracle-versions: '11'
php-versions: '8.2'
- oracle-versions: '18'
php-versions: '8.2'
coverage: ${{ github.event_name != 'pull_request' }}
- oracle-versions: '21'
php-versions: '8.2'
- oracle-versions: '23'
php-versions: '8.3'
- oracle-versions: '23'
php-versions: '8.4'
name: Oracle ${{ matrix.oracle-versions }} (PHP ${{ matrix.php-versions }}) - database tests
services:
cache:
image: ghcr.io/nextcloud/continuous-integration-redis:latest # zizmor: ignore[unpinned-images]
ports:
- 6379:6379/tcp
options: --health-cmd="redis-cli ping" --health-interval=10s --health-timeout=5s --health-retries=3
oracle:
image: ghcr.io/gvenzl/oracle-${{ matrix.oracle-versions < 23 && 'xe' || 'free' }}:${{ matrix.oracle-versions }}
# Provide passwords and other environment variables to container
env:
ORACLE_PASSWORD: oracle
# Forward Oracle port
ports:
- 1521:1521
# Provide healthcheck script options for startup
options: >-
--health-cmd healthcheck.sh
--health-interval 20s
--health-timeout 10s
--health-retries 10
steps:
- name: Checkout server
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 # v2.35.4
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, redis, session, simplexml, xmlreader, xmlwriter, zip, zlib, oci8
coverage: ${{ matrix.coverage && 'xdebug' || 'none' }}
ini-file: development
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Set up dependencies
run: composer i
- name: Set up Nextcloud
run: |
mkdir data
cp tests/redis.config.php config/
cp tests/preseed-config.php config/config.php
./occ maintenance:install --verbose --database=oci --database-name=${{ matrix.oracle-versions < 23 && 'XE' || 'FREE' }} --database-host=127.0.0.1 --database-port=1521 --database-user=system --database-pass=oracle --admin-user admin --admin-pass admin
php -f tests/enable_all.php
- name: PHPUnit
run: composer run test:db -- --log-junit junit.xml ${{ matrix.coverage && '--coverage-clover ./clover.db.xml' || '' }}
- name: Upload db code coverage
if: ${{ !cancelled() && matrix.coverage }}
uses: codecov/codecov-action@fdcc8476540edceab3de004e990f80d881c6cc00 # v5.5.0
with:
files: ./clover.db.xml
flags: phpunit-oci
- name: Upload test results
if: ${{ !cancelled() }}
uses: codecov/test-results-action@47f89e9acb64b76debcd5ea40642d25a4adced9f # v1.1.1
with:
flags: phpunit-oci
- name: Run repair steps
run: |
./occ maintenance:repair --include-expensive
summary:
permissions:
contents: none
runs-on: ubuntu-latest-low
needs: [changes, phpunit-oci]
if: always()
name: phpunit-oci-summary
steps:
- name: Summary status
run: if ${{ needs.changes.outputs.src != 'false' && needs.phpunit-oci.result != 'success' }}; then exit 1; fi
-159
View File
@@ -1,159 +0,0 @@
# This workflow is provided via the organization template repository
#
# https://github.com/nextcloud/.github
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
#
# SPDX-FileCopyrightText: 2022-2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: PHPUnit PostgreSQL
on:
pull_request:
schedule:
- cron: "5 2 * * *"
permissions:
contents: read
concurrency:
group: phpunit-pgsql-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
changes:
runs-on: ubuntu-latest-low
permissions:
contents: read
pull-requests: read
outputs:
src: ${{ steps.changes.outputs.src }}
steps:
- uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2
id: changes
continue-on-error: true
with:
filters: |
src:
- '.github/workflows/**'
- '3rdparty/**'
- '**/appinfo/**'
- '**/lib/**'
- '**/templates/**'
- '**/tests/**'
- 'vendor/**'
- 'vendor-bin/**'
- '.php-cs-fixer.dist.php'
- 'composer.json'
- 'composer.lock'
- '**.php'
phpunit-pgsql:
runs-on: ubuntu-latest
needs: changes
if: needs.changes.outputs.src != 'false'
strategy:
fail-fast: false
matrix:
php-versions: ['8.2']
# To keep the matrix smaller we ignore PostgreSQL versions in between as we already test the minimum and the maximum
postgres-versions: ['14', '18']
include:
- php-versions: '8.3'
postgres-versions: '18'
coverage: ${{ github.event_name != 'pull_request' }}
- php-versions: '8.4'
postgres-versions: '18'
name: PostgreSQL ${{ matrix.postgres-versions }} (PHP ${{ matrix.php-versions }}) - database tests
services:
cache:
image: ghcr.io/nextcloud/continuous-integration-redis:latest # zizmor: ignore[unpinned-images]
ports:
- 6379:6379/tcp
options: --health-cmd="redis-cli ping" --health-interval=10s --health-timeout=5s --health-retries=3
postgres:
image: ghcr.io/nextcloud/continuous-integration-postgres-${{ matrix.postgres-versions }}:latest # zizmor: ignore[unpinned-images]
ports:
- 4444:5432/tcp
env:
POSTGRES_USER: root
POSTGRES_PASSWORD: rootpassword
POSTGRES_DB: nextcloud
options: --mount type=tmpfs,destination=/var/lib/postgresql --health-cmd pg_isready --health-interval 5s --health-timeout 2s --health-retries 5
steps:
- name: Checkout server
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 # v2.35.4
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, redis, session, simplexml, xmlreader, xmlwriter, zip, zlib, pgsql, pdo_pgsql
coverage: ${{ matrix.coverage && 'xdebug' || 'none' }}
ini-file: development
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Set up dependencies
run: composer i
- name: Set up Nextcloud
env:
DB_PORT: 4444
run: |
mkdir data
cp tests/redis.config.php config/
cp tests/preseed-config.php config/config.php
./occ maintenance:install --verbose --database=pgsql --database-name=nextcloud --database-host=127.0.0.1 --database-port=$DB_PORT --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass admin
php -f tests/enable_all.php
- name: PHPUnit database tests
run: composer run test:db -- --log-junit junit.xml ${{ matrix.coverage && '--coverage-clover ./clover.db.xml' || '' }}
- name: Upload db code coverage
if: ${{ !cancelled() && matrix.coverage }}
uses: codecov/codecov-action@fdcc8476540edceab3de004e990f80d881c6cc00 # v5.5.0
with:
files: ./clover.db.xml
flags: phpunit-postgres
- name: Upload test results
if: ${{ !cancelled() }}
uses: codecov/test-results-action@47f89e9acb64b76debcd5ea40642d25a4adced9f # v1.1.1
with:
flags: phpunit-postgres
- name: Run repair steps
run: |
./occ maintenance:repair --include-expensive
- name: Print logs
if: always()
run: |
cat data/nextcloud.log
summary:
permissions:
contents: none
runs-on: ubuntu-latest-low
needs: [changes, phpunit-pgsql]
if: always()
name: phpunit-pgsql-summary
steps:
- name: Summary status
run: if ${{ needs.changes.outputs.src != 'false' && needs.phpunit-pgsql.result != 'success' }}; then exit 1; fi
-141
View File
@@ -1,141 +0,0 @@
# This workflow is provided via the organization template repository
#
# https://github.com/nextcloud/.github
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
#
# SPDX-FileCopyrightText: 2022-2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: PHPUnit SQLite
on:
pull_request:
schedule:
- cron: "5 2 * * *"
permissions:
contents: read
concurrency:
group: phpunit-sqlite-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
changes:
runs-on: ubuntu-latest-low
permissions:
contents: read
pull-requests: read
outputs:
src: ${{ steps.changes.outputs.src }}
steps:
- uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2
id: changes
continue-on-error: true
with:
filters: |
src:
- '.github/workflows/**'
- '3rdparty/**'
- '**/appinfo/**'
- '**/lib/**'
- '**/templates/**'
- '**/tests/**'
- 'vendor/**'
- 'vendor-bin/**'
- '.php-cs-fixer.dist.php'
- 'composer.json'
- 'composer.lock'
- '**.php'
phpunit-sqlite:
runs-on: ubuntu-latest
needs: changes
if: needs.changes.outputs.src != 'false'
strategy:
fail-fast: false
matrix:
php-versions: ['8.3', '8.4']
include:
- php-versions: '8.2'
coverage: ${{ github.event_name != 'pull_request' }}
name: SQLite (PHP ${{ matrix.php-versions }})
services:
cache:
image: ghcr.io/nextcloud/continuous-integration-redis:latest # zizmor: ignore[unpinned-images]
ports:
- 6379:6379/tcp
options: --health-cmd="redis-cli ping" --health-interval=10s --health-timeout=5s --health-retries=3
steps:
- name: Checkout server
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 # v2.35.4
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, redis, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite
coverage: ${{ matrix.coverage && 'xdebug' || 'none' }}
ini-file: development
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Set up dependencies
run: composer i
- name: Set up Nextcloud
run: |
mkdir data
cp tests/redis.config.php config/
cp tests/preseed-config.php config/config.php
./occ maintenance:install --verbose --database=sqlite --database-name=nextcloud --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass admin
php -f tests/enable_all.php
- name: Nextcloud debug information
run: ./occ app:list && echo "======= System config =======" && ./occ config:list system
- name: PHPUnit database tests
run: composer run test:db -- --log-junit junit.xml ${{ matrix.coverage && '--coverage-clover ./clover.db.xml' || '' }}
- name: Upload db code coverage
if: ${{ !cancelled() && matrix.coverage }}
uses: codecov/codecov-action@fdcc8476540edceab3de004e990f80d881c6cc00 # v5.5.0
with:
files: ./clover.db.xml
flags: phpunit-sqlite
- name: Upload test results
if: ${{ !cancelled() }}
uses: codecov/test-results-action@47f89e9acb64b76debcd5ea40642d25a4adced9f # v1.1.1
with:
flags: phpunit-sqlite
- name: Print logs
if: always()
run: |
cat data/nextcloud.log
summary:
permissions:
contents: none
runs-on: ubuntu-latest-low
needs: [changes, phpunit-sqlite]
if: always()
name: phpunit-sqlite-summary
steps:
- name: Summary status
run: if ${{ needs.changes.outputs.src != 'false' && needs.phpunit-sqlite.result != 'success' }}; then exit 1; fi
-55
View File
@@ -1,55 +0,0 @@
# This workflow is provided via the organization template repository
#
# https://github.com/nextcloud/.github
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
# SPDX-FileCopyrightText: 2023-2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-FileCopyrightText: 2023 Marcel Klehr <mklehr@gmx.net>
# SPDX-FileCopyrightText: 2023 Joas Schilling <213943+nickvergessen@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 Daniel Kesselberg <mail@danielkesselberg.de>
# SPDX-FileCopyrightText: 2023 Florian Steffens <florian.steffens@nextcloud.com>
# SPDX-License-Identifier: MIT
name: 'Ask for feedback on PRs'
on:
schedule:
- cron: '30 1 * * *'
permissions:
contents: read
pull-requests: write
jobs:
pr-feedback:
if: ${{ github.repository_owner == 'nextcloud' }}
runs-on: ubuntu-latest
steps:
- name: The get-github-handles-from-website action
uses: marcelklehr/get-github-handles-from-website-action@06b2239db0a48fe1484ba0bfd966a3ab81a08308 # v1.0.1
id: scrape
with:
website: 'https://nextcloud.com/team/'
- name: Get blocklist
id: blocklist
run: |
blocklist=$(curl https://raw.githubusercontent.com/nextcloud/.github/master/non-community-usernames.txt | paste -s -d, -)
echo "blocklist=$blocklist" >> "$GITHUB_OUTPUT"
- uses: nextcloud/pr-feedback-action@1883b38a033fb16f576875e0cf45f98b857655c4 # main
with:
feedback-message: |
Hello there,
Thank you so much for taking the time and effort to create a pull request to our Nextcloud project.
We hope that the review process is going smooth and is helpful for you. We want to ensure your pull request is reviewed to your satisfaction. If you have a moment, our community management team would very much appreciate your feedback on your experience with this PR review process.
Your feedback is valuable to us as we continuously strive to improve our community developer experience. Please take a moment to complete our short survey by clicking on the following link: https://cloud.nextcloud.com/apps/forms/s/i9Ago4EQRZ7TWxjfmeEpPkf6
Thank you for contributing to Nextcloud and we hope to hear from you soon!
(If you believe you should not receive this message, you can add yourself to the [blocklist](https://github.com/nextcloud/.github/blob/master/non-community-usernames.txt).)
days-before-feedback: 14
start-date: '2024-04-30'
exempt-authors: '${{ steps.blocklist.outputs.blocklist }},${{ steps.scrape.outputs.users }}'
exempt-bots: true
-27
View File
@@ -1,27 +0,0 @@
# This workflow is provided via the organization template repository
#
# https://github.com/nextcloud/.github
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
# SPDX-FileCopyrightText: 2022 Free Software Foundation Europe e.V. <https://fsfe.org>
#
# SPDX-License-Identifier: CC0-1.0
name: REUSE Compliance Check
on: [pull_request]
permissions:
contents: read
jobs:
reuse-compliance-check:
runs-on: ubuntu-latest-low
steps:
- name: Checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: REUSE Compliance Check
uses: fsfe/reuse-action@bb774aa972c2a89ff34781233d275075cbddf542 # v5.0.0
-37
View File
@@ -1,37 +0,0 @@
# SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: Close stale issues
on:
workflow_dispatch:
schedule:
- cron: "0 0 * * *"
permissions:
contents: read
jobs:
stale:
runs-on: ubuntu-latest
if: ${{ github.repository_owner != 'nextcloud-gmbh' }}
permissions:
issues: write
steps:
- uses: actions/stale@3a9db7e6a41a89f618792c92c0e97cc736e1b13f # v9
with:
repo-token: ${{ secrets.COMMAND_BOT_PAT }}
stale-issue-message: >
This issue has been automatically marked as stale because it has not had
recent activity and seems to be missing some essential information.
It will be closed if no further activity occurs. Thank you
for your contributions.
stale-issue-label: 'stale'
only-labels: 'needs info'
exempt-issue-labels: '1. to develop,2. developing,3. to review,4. to release,security'
days-before-stale: 30
days-before-close: 14
# debug-only: true
-146
View File
@@ -1,146 +0,0 @@
# SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: Psalm static code analysis
on:
pull_request:
push:
branches:
- main
- master
- stable*
paths:
- '.github/workflows/static-code-analysis.yml'
- '**.php'
permissions:
contents: read
concurrency:
group: static-code-analysis-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
static-code-analysis:
runs-on: ubuntu-latest
if: ${{ github.event_name != 'push' && github.repository_owner != 'nextcloud-gmbh' }}
steps:
- name: Checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8
with:
persist-credentials: false
submodules: true
- name: Set up php
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 #v2.35.4
with:
php-version: '8.2'
extensions: apcu,ctype,curl,dom,fileinfo,ftp,gd,imagick,intl,json,ldap,mbstring,openssl,pdo_sqlite,posix,sqlite,xml,zip
coverage: none
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Composer install
run: composer i
- name: Psalm
run: composer run psalm -- --threads=1 --monochrome --no-progress --output-format=github --update-baseline
- name: Show potential changes in Psalm baseline
if: always()
run: git diff --exit-code -- . ':!lib/composer'
static-code-analysis-security:
runs-on: ubuntu-latest
if: ${{ github.repository_owner != 'nextcloud-gmbh' }}
steps:
- name: Checkout code
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8
with:
persist-credentials: false
submodules: true
- name: Set up php
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 #v2.35.4
with:
php-version: '8.2'
extensions: ctype,curl,dom,fileinfo,ftp,gd,imagick,intl,json,ldap,mbstring,openssl,pdo_sqlite,posix,sqlite,xml,zip
coverage: none
- name: Composer install
run: composer i
- name: Psalm taint analysis
run: composer run psalm:security -- --threads=1 --monochrome --no-progress --output-format=github --update-baseline --report=results.sarif
- name: Show potential changes in Psalm baseline
if: always()
run: git diff --exit-code -- . ':!lib/composer'
- name: Upload Security Analysis results to GitHub
if: always()
uses: github/codeql-action/upload-sarif@51f77329afa6477de8c49fc9c7046c15b9a4e79d # v3
with:
sarif_file: results.sarif
static-code-analysis-ocp:
runs-on: ubuntu-latest
if: ${{ github.event_name != 'push' && github.repository_owner != 'nextcloud-gmbh' }}
steps:
- name: Checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8
with:
persist-credentials: false
submodules: true
- name: Set up php
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 #v2.35.4
with:
php-version: '8.2'
extensions: ctype,curl,dom,fileinfo,gd,imagick,intl,json,mbstring,openssl,pdo_sqlite,posix,sqlite,xml,zip
coverage: none
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Composer install
run: composer i
- name: Psalm
run: composer run psalm:ocp -- --threads=1 --monochrome --no-progress --output-format=github --update-baseline
- name: Show potential changes in Psalm baseline
if: always()
run: git diff --exit-code -- . ':!lib/composer'
static-code-analysis-ncu:
runs-on: ubuntu-latest
if: ${{ github.event_name != 'push' && github.repository_owner != 'nextcloud-gmbh' }}
steps:
- name: Checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8
with:
persist-credentials: false
submodules: true
- name: Set up php
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 #v2.35.4
with:
php-version: '8.2'
extensions: ctype,curl,dom,fileinfo,gd,imagick,intl,json,mbstring,openssl,pdo_sqlite,posix,sqlite,xml,zip
coverage: none
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Composer install
run: composer i
- name: Psalm
run: composer run psalm:ncu -- --threads=1 --monochrome --no-progress --output-format=github
@@ -1,49 +0,0 @@
# SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: Update CA certificate bundle
on:
workflow_dispatch:
schedule:
- cron: "5 2 * * *"
permissions:
contents: read
jobs:
update-ca-certificate-bundle:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
branches: ['master', 'stable32', 'stable31', 'stable30', 'stable29', 'stable28', 'stable27', 'stable26', 'stable25', 'stable24', 'stable23', 'stable22']
name: update-ca-certificate-bundle-${{ matrix.branches }}
steps:
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
ref: ${{ matrix.branches }}
submodules: true
- name: Download CA certificate bundle from curl
run: curl --etag-compare build/ca-bundle-etag.txt --etag-save build/ca-bundle-etag.txt --output resources/config/ca-bundle.crt https://curl.se/ca/cacert.pem
- name: Create Pull Request
uses: peter-evans/create-pull-request@271a8d0340265f705b14b6d32b9829c1cb33d45e
with:
token: ${{ secrets.COMMAND_BOT_PAT }}
commit-message: 'fix(security): Update CA certificate bundle'
committer: GitHub <noreply@github.com>
author: nextcloud-command <nextcloud-command@users.noreply.github.com>
signoff: true
branch: 'automated/noid/${{ matrix.branches }}-update-ca-cert-bundle'
title: '[${{ matrix.branches }}] fix(security): Update CA certificate bundle'
body: |
Auto-generated update of CA certificate bundle from [https://curl.se/docs/caextract.html](https://curl.se/docs/caextract.html)
labels: |
dependencies
3. to review
reviewers: ChristophWurst, miaulalala, nickvergessen
@@ -1,52 +0,0 @@
# SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: Update code signing revocation list
on:
workflow_dispatch:
schedule:
- cron: "5 2 * * *"
permissions:
contents: read
jobs:
update-code-signing-crl:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
branches: ['master', 'stable32', 'stable31', 'stable30', 'stable29', 'stable28', 'stable27', 'stable26', 'stable25', 'stable24', 'stable23', 'stable22']
name: update-code-signing-crl-${{ matrix.branches }}
steps:
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
ref: ${{ matrix.branches }}
submodules: true
- name: Download CRL file from Appstore repository
run: curl --output resources/codesigning/root.crl https://raw.githubusercontent.com/nextcloud/appstore/master/nextcloudappstore/certificate/nextcloud.crl
- name: Verify CRL is from CRT
run: openssl crl -verify -in resources/codesigning/root.crl -CAfile resources/codesigning/root.crt -noout
- name: Create Pull Request
uses: peter-evans/create-pull-request@271a8d0340265f705b14b6d32b9829c1cb33d45e
with:
token: ${{ secrets.COMMAND_BOT_PAT }}
commit-message: 'fix(security): Update code signing revocation list'
committer: GitHub <noreply@github.com>
author: nextcloud-command <nextcloud-command@users.noreply.github.com>
signoff: true
branch: 'automated/noid/${{ matrix.branches }}-update-code-signing-crl'
title: '[${{ matrix.branches }}] fix(security): Update code signing revocation list'
body: |
Auto-generated update of code signing revocation list from [Appstore](https://github.com/nextcloud/appstore/commits/master/nextcloudappstore/certificate/nextcloud.crl)
labels: |
dependencies
3. to review
reviewers: mgallien, miaulalala, nickvergessen
@@ -1,128 +0,0 @@
# SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: Update min supported desktop version
on:
workflow_dispatch:
schedule:
- cron: "0 0 * * 1"
permissions:
contents: read
jobs:
update-minimum-supported-desktop-version:
runs-on: ubuntu-latest-low
steps:
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
submodules: true
- name: Download desktop client version file from 5 years ago
id: download
run: |
# Create a temporary directory for the downloaded file
mkdir -p tmp
# Download the version file from the provided URL
VERSION_FILE_URL="https://github.com/nextcloud/desktop/raw/@%7B5.years.ago%7D/VERSION.cmake"
# Download the file using curl
curl -s -L "$VERSION_FILE_URL" -o tmp/VERSION.cmake
if [ ! -f "tmp/VERSION.cmake" ]; then
echo "Failed to download VERSION.cmake file"
exit 1
fi
echo "VERSION_FILE=tmp/VERSION.cmake" >> $GITHUB_OUTPUT
echo "Downloaded version file to tmp/VERSION.cmake"
- name: Extract version info
id: extract-version
run: |
# Path to the downloaded version file
VERSION_FILE="${{ steps.download.outputs.VERSION_FILE }}"
# Extract major, minor, patch versions
MAJOR=$(grep "VERSION_MAJOR" $VERSION_FILE | grep -o '[0-9]\+')
MINOR=$(grep "VERSION_MINOR" $VERSION_FILE | grep -o '[0-9]\+')
PATCH=$(grep "VERSION_PATCH" $VERSION_FILE | grep -o '[0-9]\+')
# Construct the version string
VERSION="$MAJOR.$MINOR.$PATCH"
# Validate format: xx.xx.xx where each x is a digit
if ! [[ "$VERSION" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
echo "Error: Extracted version '$VERSION' does not match required format (xx.xx.xx)"
exit 1
fi
rm -rf tmp
echo "VERSION=$VERSION" >> $GITHUB_OUTPUT
echo "Extracted Version: $VERSION"
- name: Update files with new version ${{ steps.extract-version.outputs.VERSION }}
id: update-files
run: |
VERSION="${{ steps.extract-version.outputs.VERSION }}"
# Define the files to update
DAV_FILE="apps/dav/lib/Connector/Sabre/BlockLegacyClientPlugin.php"
CONFIG_FILE="config/config.sample.php"
# Check if files exist
if [ ! -f "$DAV_FILE" ]; then
echo "Error: DAV file not found at $DAV_FILE"
exit 1
fi
if [ ! -f "$CONFIG_FILE" ]; then
echo "Error: Config file not found at $CONFIG_FILE"
exit 1
fi
# Update the DAV file - replace the version in the specific line
sed -i "s/\('minimum\.supported\.desktop\.version', '\)[0-9]\+\.[0-9]\+\.[0-9]\+'/\1$VERSION'/g" "$DAV_FILE"
echo "Updated $DAV_FILE"
# Update the config sample file
PREV_VERSION=$(grep "'minimum.supported.desktop.version'" "$CONFIG_FILE" | grep -o '[0-9]\+\.[0-9]\+\.[0-9]\+')
sed -i "s/Defaults to \`\`$PREV_VERSION\`\`/Defaults to \`\`$VERSION\`\`/" "$CONFIG_FILE"
sed -i "s/'minimum\.supported\.desktop\.version' => '[0-9]\+\.[0-9]\+\.[0-9]\+'/'minimum.supported.desktop.version' => '$VERSION'/g" "$CONFIG_FILE"
echo "Updated $CONFIG_FILE"
# Check if any changes were made
if [ -n "$(git diff "$DAV_FILE" "$CONFIG_FILE")" ]; then
echo "CHANGES_MADE=true" >> $GITHUB_OUTPUT
echo "Changes were made to the files"
git diff "$DAV_FILE" "$CONFIG_FILE"
else
echo "CHANGES_MADE=false" >> $GITHUB_OUTPUT
echo "No changes were needed (versions might already be up to date)"
fi
- name: Create Pull Request
uses: peter-evans/create-pull-request@271a8d0340265f705b14b6d32b9829c1cb33d45e
if: steps.update-files.outputs.CHANGES_MADE == 'true'
with:
token: ${{ secrets.COMMAND_BOT_PAT }}
commit-message: "chore: Update minimum supported desktop version"
committer: GitHub <noreply@github.com>
author: nextcloud-command <nextcloud-command@users.noreply.github.com>
signoff: true
branch: "automated/noid/${{ matrix.branches }}-update-min-supported-desktop-version"
title: "chore: Update minimum supported desktop version to ${{ steps.extract-version.outputs.VERSION }}"
base: "master"
body: |
Auto-generated update of the minimum supported desktop version using last supported version.
https://github.com/nextcloud/desktop/blob/@%7B5.years.ago%7D/VERSION.cmake
labels: |
client: 💻 desktop
automated
3. to review
reviewers: '@nextcloud/desktop'
@@ -1,69 +0,0 @@
# SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: Update PRs titles on stable branches
on:
pull_request:
types: [opened, edited]
branches:
- "stable*"
concurrency:
group: stable-pr-title-${{ github.event.pull_request.number }}
cancel-in-progress: true
jobs:
update-pr-title:
runs-on: ubuntu-latest-low
permissions:
pull-requests: write
contents: read
steps:
- name: Wait for potential title edits
run: sleep 15
- name: Get PR details and update title
uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
script: |
const { data: pr } = await github.rest.pulls.get({
owner: context.repo.owner,
repo: context.repo.repo,
pull_number: context.issue.number,
});
const baseBranch = pr.base.ref;
const currentTitle = pr.title;
// Check if this is a stable branch
// Should not happen as we only trigger on stable* branches 🤷‍♀️
if (!baseBranch.startsWith('stable')) {
console.log(`Not a stable branch: ${baseBranch}`);
return;
}
const prefix = `[${baseBranch}]`;
// Check if title already has the correct prefix and no other stable tags
const correctTagRegex = new RegExp(`^\\[${baseBranch}\\]\\s*`);
const hasOtherStableTags = /\[stable[\d.]*\]/.test(currentTitle.replace(correctTagRegex, ''));
if (correctTagRegex.test(currentTitle) && !hasOtherStableTags) {
console.log(`Title already has correct prefix only: ${currentTitle}`);
return;
}
// Remove all stable tags and add the correct one
const cleanTitle = currentTitle.replace(/\[stable[\d.]*\]\s*/g, '').trim();
const newTitle = `${prefix} ${cleanTitle}`;
console.log(`Updating title from: "${currentTitle}" to: "${newTitle}"`);
await github.rest.pulls.update({
owner: context.repo.owner,
repo: context.repo.repo,
pull_number: context.issue.number,
title: newTitle,
});
+9 -61
View File
@@ -1,52 +1,32 @@
# SPDX-FileCopyrightText: 2016-2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-FileCopyrightText: 2011-2016 ownCloud contributors
# SPDX-FileCopyrightText: 2010 ownCloud contributors
# SPDX-License-Identifier: AGPL-3.0-only
# the default generated dir + db file
/data
/owncloud
/config/config.php
/config/*.config.php
/config/mimetype*.json
/config/mount.php
/apps/inc.php
/assets
/.htaccess
node_modules/
/translationfiles
/translationtool.phar
# ignore all apps except core ones
/apps*/*
!/apps/cloud_federation_api
!/apps/comments
!/apps/contactsinteraction
!/apps/dashboard
!/apps/dav
!/apps/files
!/apps/federation
!/apps/federatedfilesharing
!/apps/sharebymail
!/apps/encryption
!/apps/files_external
!/apps/files_reminders
!/apps/files_sharing
!/apps/files_trashbin
!/apps/files_versions
!/apps/lookup_server_connector
!/apps/user_ldap
!/apps/oauth2
!/apps/profile
!/apps/provisioning_api
!/apps/settings
!/apps/systemtags
!/apps/testing
!/apps/admin_audit
!/apps/updatenotification
!/apps/theming
!/apps/twofactor_backupcodes
!/apps/user_status
!/apps/weather_status
!/apps/webhook_listeners
!/apps/workflowengine
/apps/files_external/3rdparty/irodsphp/PHPUnitTest
/apps/files_external/3rdparty/irodsphp/web
@@ -55,14 +35,13 @@ node_modules/
/apps/files_external/3rdparty/irodsphp/prods/test*
/apps/files_external/tests/config.*.php
# ignore themes except the example and the README
/themes/*
!/themes/example
!/themes/README
# Love to people that develop the updater
/updater
# just sane ignores
.*.sw[po]
*.bak
@@ -78,8 +57,6 @@ CVS/*
.svn/*
RCS/*
*.backup*
.php_cs.cache
.php-cs-fixer.cache
# kdevelop
.kdev
@@ -93,17 +70,13 @@ RCS/*
.project
.settings
# netbeans
# netbeans
nbproject
# phpStorm
.idea
*.iml
# vscode
.vscode
*.code-workspace
# geany
*.geany
@@ -116,7 +89,7 @@ nbproject
# ack(-grep)
.ackrc
# Mac OS
.DS_Store
@@ -127,11 +100,12 @@ nbproject
# Tests
/tests/phpunit.xml
# Node Modules
/build/node_modules/
# nodejs
/build/bin
/build/lib/
/build/integration/output/
/build/integration/phpserver.log
/build/jsdocs/
/npm-debug.log
/PhantomJS_*
@@ -144,38 +118,12 @@ Vagrantfile
# Tests - auto-generated files
/data-autotest
/results.sarif
/tests/.phpunit.cache
/tests/.phpunit.result.cache
/tests/coverage*
/tests/css
/tests/karma-coverage
/tests/autoconfig*
/tests/autotest*
/tests/data/lorem-copy.txt
/tests/data/testimage-copy.png
/tests/ui-regression/out/
/tests/ui-regression/node_modules/
/tests/ui-regression/package-lock.json
/config/config-autotest-backup.php
/config/autoconfig.php
clover.xml
/coverage
# Tests - dependencies
tests/acceptance/vendor/
composer.phar
/lib/composer/bin
/lib/composer/bamarni
/vendor-bin/**/vendor
./.htaccess
core/js/mimetypelist.js
# Tests - cypress
cypress/downloads
cypress/snapshots
cypress/videos
/.direnv
-3
View File
@@ -1,6 +1,3 @@
# SPDX-FileCopyrightText: 2016 Nextcloud GmbH and Nextcloud contributors
# SPDX-FileCopyrightText: 2016 ownCloud, Inc.
# SPDX-License-Identifier: AGPL-3.0-only
[submodule "3rdparty"]
path = 3rdparty
url = https://github.com/nextcloud/3rdparty.git
+37 -84
View File
@@ -7,115 +7,68 @@
<IfModule mod_proxy_fcgi.c>
SetEnvIfNoCase Authorization "(.+)" HTTP_AUTHORIZATION=$1
</IfModule>
<IfModule mod_lsapi.c>
SetEnvIfNoCase ^Authorization$ "(.+)" XAUTHORIZATION=$1
RequestHeader set XAuthorization %{XAUTHORIZATION}e env=XAUTHORIZATION
</IfModule>
</IfModule>
<IfModule mod_env.c>
# Add security and privacy related headers
# Avoid doubled headers by unsetting headers in "onsuccess" table,
# then add headers to "always" table: https://github.com/nextcloud/server/pull/19002
<If "%{REQUEST_URI} =~ m#/login$#">
# Only on the login page we need any Origin or Referer header set.
Header onsuccess unset Referrer-Policy
Header always set Referrer-Policy "same-origin"
</If>
<Else>
Header onsuccess unset Referrer-Policy
Header always set Referrer-Policy "no-referrer"
</Else>
Header onsuccess unset X-Content-Type-Options
Header always set X-Content-Type-Options "nosniff"
Header onsuccess unset X-Frame-Options
Header always set X-Frame-Options "SAMEORIGIN"
Header onsuccess unset X-Permitted-Cross-Domain-Policies
Header always set X-Permitted-Cross-Domain-Policies "none"
Header onsuccess unset X-Robots-Tag
Header always set X-Robots-Tag "noindex, nofollow"
Header set X-Content-Type-Options "nosniff"
Header set X-XSS-Protection "1; mode=block"
Header set X-Robots-Tag "none"
Header set X-Frame-Options "SAMEORIGIN"
Header set X-Download-Options "noopen"
Header set X-Permitted-Cross-Domain-Policies "none"
SetEnv modHeadersAvailable true
</IfModule>
# Add cache control for static resources
<FilesMatch "\.(css|js|mjs|svg|gif|png|jpg|webp|ico|wasm|tflite)$">
<If "%{QUERY_STRING} =~ /(^|&)v=/">
Header set Cache-Control "max-age=15778463, immutable"
</If>
<Else>
Header set Cache-Control "max-age=15778463"
</Else>
</FilesMatch>
# Let browsers cache OTF and WOFF files for a week
<FilesMatch "\.(otf|woff2?)$">
Header set Cache-Control "max-age=604800"
# Add cache control for CSS and JS files
<FilesMatch "\.(css|js)$">
Header set Cache-Control "max-age=7200, public"
</FilesMatch>
</IfModule>
<IfModule mod_php.c>
<IfModule mod_php5.c>
php_value upload_max_filesize 513M
php_value post_max_size 513M
php_value memory_limit 512M
php_value mbstring.func_overload 0
php_value always_populate_raw_post_data -1
php_value default_charset 'UTF-8'
php_value output_buffering 0
<IfModule mod_env.c>
SetEnv htaccessWorking true
</IfModule>
</IfModule>
<IfModule mod_mime.c>
AddType image/svg+xml svg svgz
AddType application/wasm wasm
AddEncoding gzip svgz
# Serve ESM javascript files (.mjs) with correct mime type
AddType text/javascript js mjs
<IfModule mod_php7.c>
php_value upload_max_filesize 513M
php_value post_max_size 513M
php_value memory_limit 512M
php_value mbstring.func_overload 0
php_value default_charset 'UTF-8'
php_value output_buffering 0
<IfModule mod_env.c>
SetEnv htaccessWorking true
</IfModule>
</IfModule>
<IfModule mod_dir.c>
DirectoryIndex index.php index.html
</IfModule>
<IfModule pagespeed_module>
ModPagespeed Off
</IfModule>
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} DavClnt
RewriteRule ^$ /remote.php/webdav/ [L,R=302]
RewriteRule .* - [env=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteRule ^\.well-known/host-meta /public.php?service=host-meta [QSA,L]
RewriteRule ^\.well-known/host-meta\.json /public.php?service=host-meta-json [QSA,L]
RewriteRule ^\.well-known/carddav /remote.php/dav/ [R=301,L]
RewriteRule ^\.well-known/caldav /remote.php/dav/ [R=301,L]
RewriteRule ^remote/(.*) remote.php [QSA,L]
RewriteRule ^(?:build|tests|config|lib|3rdparty|templates)/.* - [R=404,L]
RewriteRule ^\.well-known/(?!acme-challenge|pki-validation) /index.php [QSA,L]
RewriteRule ^ocm-provider/?$ index.php [QSA,L]
RewriteRule ^(?:\.(?!well-known)|autotest|occ|issue|indie|db_|console).* - [R=404,L]
RewriteCond %{REQUEST_URI} !^/.well-known/acme-challenge/.*
RewriteRule ^(?:\.|autotest|occ|issue|indie|db_|console).* - [R=404,L]
</IfModule>
# Clients like xDavv5 on Android, or Cyberduck, use chunked requests.
# When FastCGI or FPM is used with apache, requests arrive to Nextcloud without any content.
# This leads to the creation of empty files.
# The following directive will force the problematic requests to be buffered before being forwarded to Nextcloud.
# This way, the "Transfer-Encoding" header is removed, the "Content-Length" header is set, and the request content is proxied to Nextcloud.
# Here are more information about the issue:
# - https://docs.cyberduck.io/mountainduck/issues/fastcgi/
# - https://docs.nextcloud.com/server/latest/admin_manual/issues/general_troubleshooting.html#troubleshooting-webdav
<IfModule mod_setenvif.c>
SetEnvIfNoCase Transfer-Encoding "chunked" proxy-sendcl=1
<IfModule mod_mime.c>
AddType image/svg+xml svg svgz
AddEncoding gzip svgz
</IfModule>
# Apache disabled the sending of the server-side content-length header
# in their 2.4.59 patch updated which breaks some use-cases in Nextcloud.
# Setting ap_trust_cgilike_cl allows to bring back the usual behaviour.
# See https://bz.apache.org/bugzilla/show_bug.cgi?id=68973
<IfModule mod_env.c>
SetEnv ap_trust_cgilike_cl
<IfModule mod_dir.c>
DirectoryIndex index.php index.html
</IfModule>
AddDefaultCharset utf-8
Options -Indexes
<IfModule pagespeed_module>
ModPagespeed Off
</IfModule>
-2
View File
@@ -1,2 +0,0 @@
SPDX-FileCopyrightText: 2014 ownCloud, Inc.
SPDX-License-Identifier: AGPL-3.0-only
+2 -6
View File
@@ -1,5 +1,4 @@
{
"esversion": 11,
"camelcase": true,
"eqeqeq": true,
"immed": true,
@@ -12,10 +11,10 @@
"maxparams": 5,
"curly": true,
"jquery": true,
"maxlen": 120,
"indent": 4,
"browser": true,
"laxbreak": true,
"asi": true,
"globals": {
"console": true,
"it": true,
@@ -29,10 +28,7 @@
"_": true,
"OC": true,
"OCA": true,
"OCP": true,
"t": true,
"n": true,
"escapeHTML": true,
"Promise": true
"n": true
}
}
+2
View File
@@ -0,0 +1,2 @@
pattern = "(?i):shipit:|:\\+1:|LGTM|👍"
self_approval_off = true
+10 -26
View File
@@ -63,8 +63,8 @@ Christian Berendt <berendt@b1-systems.de>
Christian Kampka <christian@kampka.net>
Christian Koch <koch.chris@gmail.com>
Christian Reiner <github@christian-reiner.info> Christian Reiner <arkascha@balder.site>
Christoph Wurst <christoph@winzerhof-wurst.at> Christoph Wurst <ChristophWurst@users.noreply.github.com>
Christoph Wurst <christoph@winzerhof-wurst.at> Christoph Wurst <christoph@owncloud.com>
Christoph Wurst <christoph@owncloud.com> Christoph Wurst <ChristophWurst@users.noreply.github.com>
Christoph Wurst <christoph@owncloud.com> Christoph Wurst <christoph@winzerhof-wurst.at>
Christopher Bunn <b11.chris@gmail.com>
Christopher Schäpers <kondou@ts.unde.re> Christopher <kondou@ts.unde.re>
Christopher Schäpers <kondou@ts.unde.re> kondou <kondou@ts.unde.re>
@@ -82,7 +82,6 @@ Dan Callahan <dan.callahan@gmail.com>
Dan Jones <dan@danneh.org>
Daniel <daniel@mars.(none)>
Daniel Hansson <enoch85@gmail.com>
Daniel Kesselberg <mail@danielkesselberg.de> kesselb <mail@danielkesselberg.de>
Daniel Köb <daniel.koeb@peony.at>
Daniel Molkentin <daniel@molkentin.de>
Daniele E. Domenichelli <daniele.domenichelli@gmail.com>
@@ -101,7 +100,6 @@ derkostka <sebastian.kostka@gmail.com>
Diederik de Haas <diederik@cknow.org>
Dominik Schmidt <dev@dominik-schmidt.de>
Donald Buczek <buczek@molgen.mpg.de>
Donquixote <marjunebatac@gmail.com> Donquixote <marjunebatac@gmailcom>
Doug Neiner <doug@pixelgraphics.us>
drarko <drarko@users.noreply.github.com>
dratini0 <dratini0@gmail.com>
@@ -142,13 +140,12 @@ ganomi <ganomi@gmail.com>
Gaël Beaudoin <gaboo@home.gaboo.org>
geez0x1 <geez0x1@users.noreply.github.com>
gekmihesg <markus@gekmihesg.de>
Georg Ehrke <oc.list@georgehrke.com> Georg Ehrke <dev@georgswebsite.de>
Georg Ehrke <oc.list@georgehrke.com> Georg Ehrke <developer@georgehrke.com>
Georg Ehrke <oc.list@georgehrke.com> Georg Ehrke <georg.stefan.germany@googlemail.com>
Georg Ehrke <oc.list@georgehrke.com> Georg Ehrke <ownclouddev@georgswebsite.de>
Georg Ehrke <oc.list@georgehrke.com> Georg Ehrke <devgeorg@ownCloud.com>
Georg Ehrke <oc.list@georgehrke.com> Georg Ehrke <georg@ownCloud.com>
Georg Ehrke <oc.list@georgehrke.com> Georg Ehrke <georg@owncloud.com>
Georg Ehrke <georg@owncloud.com> Georg Ehrke <dev@georgswebsite.de>
Georg Ehrke <georg@owncloud.com> Georg Ehrke <developer@georgehrke.com>
Georg Ehrke <georg@owncloud.com> Georg Ehrke <georg.stefan.germany@googlemail.com>
Georg Ehrke <georg@owncloud.com> Georg Ehrke <ownclouddev@georgswebsite.de>
Georg Ehrke <georg@owncloud.com> Georg Ehrke <devgeorg@ownCloud.com>
Georg Ehrke <georg@owncloud.com> Georg Ehrke <georg@ownCloud.com>
Golnaz Nilieh <g382nilieh@gmail.com>
Grundik <grundik@ololo.cc>
Guillaume AMAT <guillaume.amat@informatique-libre.com>
@@ -165,7 +162,6 @@ ideaship <ideaship@users.noreply.github.com>
Ignacio Daniel Rostagno <ignaciorostagno@vijona.com.ar>
infoneo <infoneo@yahoo.pl>
Insanemal <insanemal@gmail.com>
Tobias Perschon <tobias@perschon.at> Tobias Perschon <tofuSCHNITZEL@users.noreply.github.com>
Tobias Ramforth <tobias@ramforth.com> Tobias Ramforth <tobias.ramforth@udo.edu>
Tobias Ramforth <tobias@ramforth.com> irgsmirx <tobias.ramforth@udo.edu>
Isaac Rosenberg <irosenb7@gmail.com>
@@ -187,7 +183,6 @@ Jesús Macias <jmacias@solidgear.es> Jesus Macias <jmacias@full-on-net.com>
jknockaert <jasper@knockaert.nl>
Joan <aseques@gmail.com>
Joar Wandborg <git@wandborg.com>
Joas Schilling <coding@schilljs.com> Joas Schilling <213943+nickvergessen@users.noreply.github.com>
Joas Schilling <coding@schilljs.com> Joas Schilling <nickvergessen@gmx.de>
Joas Schilling <coding@schilljs.com> Joas Schilling <nickvergessen@owncloud.com>
joel hansson <joel.hansson@gmail.com>
@@ -215,7 +210,6 @@ Lennart Rosam <lennart.rosam@medien-systempartner.de>
Sebastian Döll <sebastian.doell@libasys.de> libasys <sebastian.doell@libasys.de>
Lode Hoste <zillode@zillode.be>
lolozere <laurent@chedanne.pro>
Louis Chemineau <louis@chmn.me> Louis Chemineau <6653109+artonge@users.noreply.github.com>
Lorenzo M. Catucci <lorenzo@sancho.ccd.uniroma2.it>
Lukas Reschke <lukas@statuscode.ch> Lukas Reschke <lukas@owncloud.com>
Lukas Reschke <lukas@statuscode.ch> Lukas Reschke <lukas@owncloud.org>
@@ -252,7 +246,6 @@ Michael Monreal <michael.monreal@gmail.com>
Michael Roitzsch <reactorcontrol@icloud.com>
michag86 <micha_g@arcor.de>
Michiel de Jong <michiel@unhosted.org> Michiel@unhosted <michiel@unhosted.org>
Micke Nordin <kano@sunet.se> Mikael Nordin <mickenordin@users.noreply.github.com>
Miguel Prokop <miguel.prokop@vtu.com>
miicha <pfitzner@physik.hu-berlin.de>
Miquel Rodríguez Telep / Michael Rodríguez-Torrent <miquel@designunbound.co.uk>
@@ -322,8 +315,6 @@ Robin McCorkell <robin@mccorkell.me.uk> Robin McCorkell <rmccorkell@owncloud.com
Rodrigo Hjort <rodrigo.hjort@gmail.com>
Roeland Jago Douma <roeland@famdouma.nl> Roeland Jago Douma <rullzer@owncloud.com>
Roeland Jago Douma <roeland@famdouma.nl> Roeland Douma <rullzer@users.noreply.github.com>
Roeland Jago Douma <roeland@famdouma.nl> Roeland Jago Douma <rullzer@users.noreply.github.com>
Roger Szabo <roger.szabo@web.de> root <roger.szabo@web.de>
rok <brejktru@gmail.com>
Roland Hager <roland.hager@tu-berlin.de>
Roland van Laar <roland@micite.net>
@@ -342,7 +333,6 @@ Sander <brantje@gmail.com>
Sandro Knauß <bugs@sandroknauss.de> Sandro <hefee@taurin.(none)>
Sascha Schmidt <realriot@realriot.de>
Sascha Schneider <development@suntsu.org>
Sascha Wiswedel <sascha.wiswedel@nextcloud.com> Sascha Wiswedel <wiswedel@users.noreply.github.com>
scambra <sergio@entrecables.com>
scolebrook <scolebrook@mac.com>
Scott Arciszewski <scott@arciszewski.me>
@@ -361,8 +351,6 @@ Simon Birnbach <simon@simon-birnbach.de>
Simon Könnecke <simonkoennecke@gmail.com>
Simon Whittaker <simon@swbh.net>
Sjors van der Pluijm <sjors@desjors.nl> Sjors van der Pluijm <sjors@youngguns.nl>
John Molakvoæ <skjnldsv@protonmail.com> John Molakvoæ <skjnldsv@users.noreply.github.com>
John Molakvoæ <skjnldsv@protonmail.com> John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
st3so <st3so@server.fake>
Stefan <mu.stefan@googlemail.com>
Stefan Göckeritz <admin@s-goecker.de>
@@ -385,8 +373,6 @@ tbelau666 <thomas.belau@gmx.de>
TheSFReader <TheSFReader@gmail.com>
Thibaut GRIDEL <tgridel@free.fr>
thomas <thomas@thomas-VirtualBox.(none)>
Thomas Citharel <nextcloud@tcit.fr> Thomas Citharel <tcit@tcit.fr>
Thomas Citharel <nextcloud@tcit.fr> Thomas Citharel <github@tcit.fr>
Thomas Müller <thomas.mueller@tmit.eu> Thomas Mueller <thomas.mueller@tmit.eu>
Thomas Müller <thomas.mueller@tmit.eu> Thomas Müller <DeepDiver1975@users.noreply.github.com>
Thomas Olsen <tol@tanghus>
@@ -412,10 +398,8 @@ Victor Dubiniuk <dubiniuk@owncloud.com> Victor Dubiniuk <victor.dubiniuk@gmail.c
Victor Dubiniuk <dubiniuk@owncloud.com> VicDeo <dubiniuk@owncloud.com>
Victor Dubiniuk <dubiniuk@owncloud.com> VicDeo <victor.dubiniuk@gmail.com>
Vincent Cloutier <vincent1cloutier@gmail.com>
Vincent Petry <vincent@nextcloud.com> Vincent Petry <PVince81@yahoo.fr>
Vincent Petry <vincent@nextcloud.com> Vincent Petry <vincent@vvortex.site>
Vincent Petry <vincent@nextcloud.com> Vincent Petry <pvince81@owncloud.com>
Vinicius Cubas Brand <vinicius@eita.org.br> Vinicius Cubas Brand <viniciuscb@gmail.com>
Vincent Petry <pvince81@owncloud.com> Vincent Petry <PVince81@yahoo.fr>
Vincent Petry <pvince81@owncloud.com> Vincent Petry <vincent@vvortex.site>
Vitaly Kuznetsov <vitty@altlinux.ru>
Vladimir Sapronov <vladimir.sapronov@gmail.com>
Volkan Gezer <volkangezer@gmail.com> Volkan Gezer <wakeup@users.noreply.github.com>
+30
View File
@@ -0,0 +1,30 @@
{
"maxReviewers": 3,
"numFilesToCheck": 5,
"alwaysNotifyForPaths": [
{
"name": "nickvergessen",
"files": [
"lib/private/Activity/**",
"lib/private/Notification/**",
"lib/public/Activity/**",
"lib/public/Notification/**"
]
},
{
"name": "Xenopathic",
"files": [
"apps/files_external/**"
]
}
],
"userBlacklist": [
"DeepDiver1975",
"nextcloud-bot",
"owncloud-bot",
"PVince81",
"scrutinizer-auto-fixer",
"th3fallen",
"zander"
]
}
-1
View File
@@ -1 +0,0 @@
**/*.spec.js
-40
View File
@@ -1,40 +0,0 @@
<?php
declare(strict_types=1);
/**
* SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
require_once './vendor-bin/cs-fixer/vendor/autoload.php';
use Nextcloud\CodingStandard\Config;
use PhpCsFixer\Runner\Parallel\ParallelConfigFactory;
$config = new Config();
$config
->setParallelConfig(ParallelConfigFactory::detect())
->getFinder()
->in(__DIR__)
->exclude([
'3rdparty',
'build/stubs',
'composer',
])
;
$ignoredEntries = shell_exec('git status --porcelain --ignored ' . escapeshellarg(__DIR__));
$ignoredEntries = explode("\n", $ignoredEntries);
$ignoredEntries = array_filter($ignoredEntries, static fn (string $line) => str_starts_with($line, '!! '));
$ignoredEntries = array_map(static fn (string $line) => substr($line, 3), $ignoredEntries);
$ignoredEntries = array_values($ignoredEntries);
foreach ($ignoredEntries as $ignoredEntry) {
if (str_ends_with($ignoredEntry, '/')) {
$config->getFinder()->exclude($ignoredEntry);
} else {
$config->getFinder()->notPath($ignoredEntry);
}
}
return $config;
-19
View File
@@ -1,19 +0,0 @@
# See https://pre-commit.com for more information
# See https://pre-commit.com/hooks.html for more hooks
# SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: AGPL-3.0-or-later
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.3.0
hooks:
- id: end-of-file-fixer
- id: check-yaml
- id: check-added-large-files
- repo: https://github.com/nextcloud/pre-commit-php.git
rev: 1.5.1
hooks:
- id: php-lint
- id: php-cs-fixer
files: \.(php)$
exclude: ^(config|data|composer|lib\/composer)
args: []
+27
View File
@@ -0,0 +1,27 @@
before_commands:
- 'git submodule update --init --recursive'
filter:
excluded_paths:
- '3rdparty/*'
- 'apps/*/3rdparty/*'
- 'apps/*/vendor/*'
- 'l10n/*'
- 'core/l10n/*'
- 'apps/*/l10n/*'
- 'apps/*/tests/*'
- 'lib/l10n/*'
- 'core/vendor/*'
- 'core/js/tests/lib/*.js'
- 'core/js/tests/specs/*.js'
- 'core/js/jquery-showpassword.js'
- 'core/js/jquery-tipsy.js'
- 'core/js/placeholders.js'
- 'settings/l10n/*'
- 'tests/*'
- 'build/*'
- 'lib/composer/*'
imports:
- javascript
- php
-195
View File
@@ -1,195 +0,0 @@
[main]
host = https://www.transifex.com
lang_map = fi_FI: fi, hu_HU: hu, nb_NO: nb, sk_SK: sk, th_TH: th, ja_JP: ja, bg_BG: bg, cs_CZ: cs
[o:nextcloud:p:nextcloud:r:admin_audit]
file_filter = translationfiles/<lang>/admin_audit.po
source_file = translationfiles/templates/admin_audit.pot
source_lang = en
type = PO
[o:nextcloud:p:nextcloud:r:cloud_federation_api]
file_filter = translationfiles/<lang>/cloud_federation_api.po
source_file = translationfiles/templates/cloud_federation_api.pot
source_lang = en
type = PO
[o:nextcloud:p:nextcloud:r:comments]
file_filter = translationfiles/<lang>/comments.po
source_file = translationfiles/templates/comments.pot
source_lang = en
type = PO
[o:nextcloud:p:nextcloud:r:contactsinteraction]
file_filter = translationfiles/<lang>/contactsinteraction.po
source_file = translationfiles/templates/contactsinteraction.pot
source_lang = en
type = PO
[o:nextcloud:p:nextcloud:r:core]
file_filter = translationfiles/<lang>/core.po
source_file = translationfiles/templates/core.pot
source_lang = en
type = PO
[o:nextcloud:p:nextcloud:r:dashboard-shipped-with-server]
file_filter = translationfiles/<lang>/dashboard.po
source_file = translationfiles/templates/dashboard.pot
source_lang = en
type = PO
[o:nextcloud:p:nextcloud:r:dav]
file_filter = translationfiles/<lang>/dav.po
source_file = translationfiles/templates/dav.pot
source_lang = en
type = PO
[o:nextcloud:p:nextcloud:r:federatedfilesharing]
file_filter = translationfiles/<lang>/federatedfilesharing.po
source_file = translationfiles/templates/federatedfilesharing.pot
source_lang = en
type = PO
[o:nextcloud:p:nextcloud:r:federation]
file_filter = translationfiles/<lang>/federation.po
source_file = translationfiles/templates/federation.pot
source_lang = en
type = PO
[o:nextcloud:p:nextcloud:r:files]
file_filter = translationfiles/<lang>/files.po
source_file = translationfiles/templates/files.pot
source_lang = en
type = PO
[o:nextcloud:p:nextcloud:r:files_encryption]
file_filter = translationfiles/<lang>/encryption.po
source_file = translationfiles/templates/encryption.pot
source_lang = en
type = PO
[o:nextcloud:p:nextcloud:r:files_external]
file_filter = translationfiles/<lang>/files_external.po
source_file = translationfiles/templates/files_external.pot
source_lang = en
type = PO
[o:nextcloud:p:nextcloud:r:files_reminders]
file_filter = translationfiles/<lang>/files_reminders.po
source_file = translationfiles/templates/files_reminders.pot
source_lang = en
type = PO
[o:nextcloud:p:nextcloud:r:files_sharing]
file_filter = translationfiles/<lang>/files_sharing.po
source_file = translationfiles/templates/files_sharing.pot
source_lang = en
type = PO
[o:nextcloud:p:nextcloud:r:files_trashbin]
file_filter = translationfiles/<lang>/files_trashbin.po
source_file = translationfiles/templates/files_trashbin.pot
source_lang = en
type = PO
[o:nextcloud:p:nextcloud:r:files_versions]
file_filter = translationfiles/<lang>/files_versions.po
source_file = translationfiles/templates/files_versions.pot
source_lang = en
type = PO
[o:nextcloud:p:nextcloud:r:lib]
file_filter = translationfiles/<lang>/lib.po
source_file = translationfiles/templates/lib.pot
source_lang = en
type = PO
[o:nextcloud:p:nextcloud:r:lookup_server_connector]
file_filter = translationfiles/<lang>/lookup_server_connector.po
source_file = translationfiles/templates/lookup_server_connector.pot
source_lang = en
type = PO
[o:nextcloud:p:nextcloud:r:oauth2]
file_filter = translationfiles/<lang>/oauth2.po
source_file = translationfiles/templates/oauth2.pot
source_lang = en
type = PO
[o:nextcloud:p:nextcloud:r:profile]
file_filter = translationfiles/<lang>/profile.po
source_file = translationfiles/templates/profile.pot
source_lang = en
type = PO
[o:nextcloud:p:nextcloud:r:provisioning_api]
file_filter = translationfiles/<lang>/provisioning_api.po
source_file = translationfiles/templates/provisioning_api.pot
source_lang = en
type = PO
[o:nextcloud:p:nextcloud:r:settings-1]
file_filter = translationfiles/<lang>/settings.po
source_file = translationfiles/templates/settings.pot
source_lang = en
type = PO
[o:nextcloud:p:nextcloud:r:sharebymail]
file_filter = translationfiles/<lang>/sharebymail.po
source_file = translationfiles/templates/sharebymail.pot
source_lang = en
type = PO
[o:nextcloud:p:nextcloud:r:systemtags]
file_filter = translationfiles/<lang>/systemtags.po
source_file = translationfiles/templates/systemtags.pot
source_lang = en
type = PO
[o:nextcloud:p:nextcloud:r:theming]
file_filter = translationfiles/<lang>/theming.po
source_file = translationfiles/templates/theming.pot
source_lang = en
type = PO
[o:nextcloud:p:nextcloud:r:twofactor_backupcodes]
file_filter = translationfiles/<lang>/twofactor_backupcodes.po
source_file = translationfiles/templates/twofactor_backupcodes.pot
source_lang = en
type = PO
[o:nextcloud:p:nextcloud:r:updatenotification]
file_filter = translationfiles/<lang>/updatenotification.po
source_file = translationfiles/templates/updatenotification.pot
source_lang = en
type = PO
[o:nextcloud:p:nextcloud:r:user_ldap]
file_filter = translationfiles/<lang>/user_ldap.po
source_file = translationfiles/templates/user_ldap.pot
source_lang = en
type = PO
[o:nextcloud:p:nextcloud:r:user_status]
file_filter = translationfiles/<lang>/user_status.po
source_file = translationfiles/templates/user_status.pot
source_lang = en
type = PO
[o:nextcloud:p:nextcloud:r:weather_status]
file_filter = translationfiles/<lang>/weather_status.po
source_file = translationfiles/templates/weather_status.pot
source_lang = en
type = PO
[o:nextcloud:p:nextcloud:r:webhook_listeners]
file_filter = translationfiles/<lang>/webhook_listeners.po
source_file = translationfiles/templates/webhook_listeners.pot
source_lang = en
type = PO
[o:nextcloud:p:nextcloud:r:workflowengine]
file_filter = translationfiles/<lang>/workflowengine.po
source_file = translationfiles/templates/workflowengine.pot
source_lang = en
type = PO
+4 -6
View File
@@ -1,9 +1,7 @@
; SPDX-FileCopyrightText: 2016-2024 Nextcloud GmbH and Nextcloud contributors
; SPDX-FileCopyrightText: 2014-2016 ownCloud, Inc.
; SPDX-License-Identifier: AGPL-3.0-only
;
; NOTE: PHP caches this file for 300 seconds by default
;
upload_max_filesize=513M
post_max_size=513M
memory_limit=512M
mbstring.func_overload=0
always_populate_raw_post_data=-1
default_charset='UTF-8'
output_buffering=0
+53 -471
View File
@@ -1,637 +1,219 @@
<!--
- SPDX-FileCopyrightText: 2016-2024 Nextcloud GmbH and Nextcloud contributors
- SPDX-FileCopyrightText: 2016 ownCloud, Inc.
- SPDX-License-Identifier: AGPL-3.0-or-later
-->
# Authors
Nextcloud is written by:
- AW-UC <git@a-wesemann.de>
- Aaron Ball <nullspoon@oper.io>
- Aaron Wood <aaronjwood@gmail.com>
- Abijeet <abijeetpatro@gmail.com>
- Adam Blakey <adam@blakey.family>
- Achim Königs <garfonso@tratschtante.de>
- Adam Williamson <awilliam@redhat.com>
- Administrator "Administrator@WINDOWS-2012"
- Adrian Brzezinski <adrian.brzezinski@eo.pl>
- Akhil <akhil.potukuchi@gmail.com>
- Akhil <akhil@e.email>
- Akhil Potukuchi <akhil.potukuchi@gmail.com>
- Alan Meeson <alan@carefullycalculated.co.uk>
- Administrator <Administrator@WINDOWS-2012>
- Aldo "xoen" Giambelluca <xoen@xoen.org>
- Alecks Gates <alecks.g@gmail.com>
- Alejandro Varela <epma01@gmail.com>
- Alexander A. Klimov <grandmaster@al2klimov.de>
- Alexandre Salomé <alexandre.salome@gmail.com>
- Alex Harpin <development@landsofshadow.co.uk>
- Alex Weirig <alex.weirig@technolink.lu>
- Alexander Bergolth <leo@strike.wu.ac.at>
- Alexander F <32201363+alx-tuilmenau@users.noreply.github.com>
- Allan Nordhøy <epost@anotheragency.no>
- Anderson Luiz Alves <alacn1@gmail.com>
- Andreas Fischer <bantu@owncloud.com>
- Andreas Pflug <dev@admin4.org>
- Andrew Brown <andrew@casabrown.com>
- Andrey Borysenko <andrey.borysenko@nextcloud.com>
- André Gaul <gaul@web-yard.de>
- Andy Xheli <axheli@axtsolutions.com>
- Anna Larch <anna@nextcloud.com>
- Anna Larch <anna.larch@gmx.net>
- Anupam Kumar <kyteinsky@gmail.com>
- ArcticFall <23174635+ArcticFall@users.noreply.github.com>
- Ardinis <Ardinis@users.noreply.github.com>
- Ari Selseng <ari@selseng.net>
- Arne Hamann <kontakt+github@arne.email>
- Arne Hamann <github@arne.email>
- Artem Kochnev <MrJeos@gmail.com>
- Artem Sidorenko <artem@posteo.de>
- Arthur Schiwon <blizzz@arthur-schiwon.de>
- Artur Neumann <artur@jankaritech.com>
- Artur Neumann <info@individual-it.net>
- Ashod Nakashian <ashod.nakashian@collabora.co.uk>
- Asier Iturralde Sarasola <asier.iturralde@gmail.com>
- Axel Helmert <axel.helmert@luka.de>
- Azul <azul@riseup.net>
- Bart Visscher <bartv@thisnet.nl>
- Bartek Przybylski <bart.p.pl@gmail.com>
- Bastien Durel <bastien@durel.org>
- Bastien Ho <bastienho@urbancube.fr>
- Benjamin Diele <benjamin@diele.be>
- Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
- Benjamin Liles <benliles@arch.tamu.edu>
- Bennet Becker <bbecker@pks.mpg.de>
- Bennet Becker <dev@bennet.cc>
- Bernard Spil <Sp1l@users.noreply.github.com>
- Bernd Rederlechner <Bernd.Rederlechner@t-systems.com>
- Bernd Stellwag <burned@zerties.org>
- Bernhard Ostertag <bernieo.code@gmx.de>
- Bernhard Posselt <dev@bernhard-posselt.com>
- Bernhard Reiter <ockham@raz.or.at>
- Bill McGonigle <bill-github.com@bfccomputing.com>
- Daniel Niccoli <daniel.niccoli@gmail.com>
- Birk Borkason <daniel.niccoli@gmail.com>
- Bjoern Schiessle <bjoern@schiessle.org>
- Björn Schießle <bjoern@schiessle.org>
- Bjørn Forsman <bjorn.forsman@gmail.com>
- Blaok <i@blaok.me>
- Boris Rybalkin <ribalkin@gmail.com>
- Borjan Tchakaloff <borjan@tchakaloff.fr>
- Brad Rubenstein <brad@wbr.tech>
- Brandon Kirsch <brandonkirsch@github.com>
- Branko Kokanovic <branko@kokanovic.org>
- Brice Maron <brice@bmaron.net>
- Byron Marohn <combustible@live.com>
- CRA Yoshihito Nakatani <yoshihito.nakatani@craftsman-software.com>
- Carl Csaposs <carl@csaposs.com>
- Carl Schwan <carl@carlschwan.eu>
- Carla Schroder <carla@owncloud.com>
- Carlos Cerrillo <ccerrillo@gmail.com>
- Carlos Ferreira <carlos@reendex.com>
- Carsten Wiedmann <carsten_sttgt@gmx.de>
- Chih-Hsuan Yen <yan12125@gmail.com>
- Christian <16852529+cviereck@users.noreply.github.com>
- Carlos Damken <carlos@damken.com>
- Christian Berendt <berendt@b1-systems.de>
- Christian Jürges <christian@eqipe.ch>
- Christian Kampka <christian@kampka.net>
- Christian Oliff <christianoliff@yahoo.com>
- Christian Weiske <cweiske@cweiske.de>
- Christoph Schaefer "christophł@wolkesicher.de"
- Christoph Seitz <christoph.seitz@posteo.de>
- Christoph Wickert <cwickert@suse.de>
- Christoph Wurst <christoph@winzerhof-wurst.at>
- Christopher Bartz <bartz@dkrz.de>
- Christopher Ng <chrng8@gmail.com>
- Christoph Schaefer <christophł@wolkesicher.de>
- Christoph Wurst <christoph@owncloud.com>
- Christopher Schäpers <kondou@ts.unde.re>
- Christopher T. Johnson <ctjctj@gmail.com>
- Clark Tomlinson <fallen013@gmail.com>
- Claas Augner <github@caugner.de>
- Claus-Justus Heine <himself@claus-justus-heine.de>
- Clement Wong <git@clement.hk>
- Cornelius Kölbel <cornelius.koelbel@netknights.it>
- Cthulhux <git@tuxproject.de>
- Cyrille Bollu <cyrpub@bollu.be>
- Cédric Neukom <github@webguy.ch>
- Côme Chilliet <91878298+come-nc@users.noreply.github.com>
- Côme Chilliet <come.chilliet@nextcloud.com>
- Damjan Georgievski <gdamjan@gmail.com>
- Dan Callahan <dan.callahan@gmail.com>
- Daniel <mail@danielkesselberg.de>
- Daniel Calviño Sánchez <danxuliu@gmail.com>
- Daniel Hansson <daniel@techandme.se>
- Craig Morrissey <craig@owncloud.com>
- Dan Bartram <daneybartram@gmail.com>
- Daniel Hansson <enoch85@gmail.com>
- Daniel Jagszent <daniel@jagszent.de>
- Daniel Kesselberg <mail@danielkesselberg.de>
- Daniel Rudolf <github.com@daniel-rudolf.de>
- Daniel Rudolf <nextcloud.com@daniel-rudolf.de>
- Daniel Schneider <daniel@schneidoa.de>
- Daniel Teichmann <daniel.teichmann@das-netzwerkteam.de>
- Dariusz Olszewski <starypatyk@users.noreply.github.com>
- David <37280718+yeyulantu@users.noreply.github.com>
- Daniel Molkentin <daniel@molkentin.de>
- Daniel Tosello <tosello.daniel@gmail.com>
- David Prévot <taffit@debian.org>
- David Toledo <dtoledo@solidgear.es>
- Denis Mosolov <denismosolov@gmail.com>
- Derek <derek.kelly27@gmail.com>
- Dominik Schmidt <dev@dominik-schmidt.de>
- Donquixote <marjunebatac@gmail.com>
- Dries Mys <dries.mys@my-dreams.be>
- EWouters <6179932+EWouters@users.noreply.github.com>
- Elijah Martin-Merrill <elijah@nyp-itsours.com>
- Ember 'n0emis' Keske <git@n0emis.eu>
- Eric Masseran <rico.masseran@gmail.com>
- Erik van Velzen <erik@evanv.nl>
- Evgeny Golyshev <eugulixes@gmail.com>
- Ezhil Shanmugham <ezhil930@gmail.com>
- Fabian Dreßler <nudelsalat@clouz.de>
- Fabien Potencier <fabien@symfony.com>
- Fabrizio Steiner <fabrizio.steiner@gmail.com>
- Faraz Samapoor <f.samapoor@gmail.com>
- Felix Epp <work@felixepp.de>
- Felix Heidecke <felix@heidecke.me>
- Fabian Henze <flyser42@gmx.de>
- Faruk Uzun <farukuzun@collabora.com>
- Felix Böhm <felixboehm@gmx.de>
- Felix Moeller <mail@felixmoeller.de>
- Felix Nieuwenhuizen <felix@tdlrali.com>
- Felix Nüsse <Felix.nuesse@t-online.de>
- Felix Rupp <github@felixrupp.com>
- Ferdinand Thiessen <opensource@fthiessen.de>
- Ferdinand Thiessen <rpm@fthiessen.de>
- Filis Futsarov <filisko@users.noreply.github.com>
- Florent <florent@coppint.com>
- Florian Schunk <florian.schunk@rwth-aachen.de>
- Florian Preinstorfer <nblock@archlinux.us>
- Florian Pritz <bluewind@xinu.at>
- Florin Peter <github@florin-peter.de>
- Fon E. Noel NFEBE <opensource@nfebe.com>
- Frank Isemann <frank@isemann.name>
- Francesco Rovelli <francesco.rovelli@gmail.com>
- Frank Karlitschek <frank@karlitschek.de>
- François Freitag <mail@franek.fr>
- François Kubler <francois@kubler.org>
- François Ménabé <francois.menabe@gmail.com>
- Frederic Werner <frederic-github@werner-net.work>
- Frédéric Fortier <frederic.fortier@oronospolytechnique.com>
- Gary Kim <gary@garykim.dev>
- Georg Ehrke <oc.list@georgehrke.com>
- Git'Fellow <12234510+solracsf@users.noreply.github.com>
- Git'Fellow <carlos@reendex.com>
- Glandos <bugs-github@antipoul.fr>
- GrayFix <grayfix@gmail.com>
- Greta Doci <gretadoci@gmail.com>
- GretaD <gretadoci@gmail.com>
- Grigorii K. Shartsev <me@shgk.me>
- Guillaume COMPAGNON <gcompagnon@outlook.com>
- Guillaume Colson <guillaume.colson@univ-lorraine.fr>
- Guillaume Virlet <github@virlet.org>
- Gadzy <dev@gadzy.fr>
- Georg Ehrke <georg@owncloud.com>
- Guillaume AMAT <guillaume.amat@informatique-libre.com>
- Hasso Tepper <hasso@zone.ee>
- Hemanth Kumar Veeranki <hems.india1997@gmail.com>
- Hendrik Leppelsack <hendrik@leppelsack.de>
- Hinrich Mahler <22366557+Bibo-Joshi@users.noreply.github.com>
- Hinrich Mahler <nextcloud@mahlerhome.de>
- Holger Hees <holger.hees@gmail.com>
- HouraisanNEET <HouraisanNEET@users.noreply.github.com>
- Ilja Neumann <ineumann@owncloud.com>
- Ilya Apasov <apasov@users.noreply.github.com>
- Immanuel Pasanec <immanuel.pasanec@compaso.de>
- Hugo Gonzalez Labrador <hglavra@gmail.com>
- Individual IT Services <info@individual-it.net>
- Informatyka Boguslawski sp. z o.o. sp.k., http://www.ib.pl/
- Iscle <albertiscle9@gmail.com>
- J0WI <J0WI@users.noreply.github.com>
- Jaakko Salo <jaakkos@gmail.com>
- Jacob Neplokh <me@jacobneplokh.com>
- Jake Nabasny <jake@nabasny.com>
- Jakob Sack <mail@jakobsack.de>
- Jakub Onderka <ahoj@jakubonderka.cz>
- James Guo <i@ze3kr.com>
- James Letendre <James.Letendre@gmail.com>
- Jan C. Borchardt <hey@jancborchardt.net>
- Jan Messer <jan@mtec-studios.ch>
- Jan-Christoph Borchardt <hey@jancborchardt.net>
- Jan-Philipp Litza <jpl@plutex.de>
- Jan-Philipp Litza <jplitza@users.noreply.github.com>
- JanBartels <j.bartels@arcor.de>
- Janis Köhr <janis.koehr@novatec-gmbh.de>
- Janis Köhr <janiskoehr@icloud.com>
- Jared Boone <jared.boone@gmail.com>
- Jarkko Lehtoranta <devel@jlranta.com>
- Jasper Weyne <jasperweyne@gmail.com>
- Jarrett <JetUni@users.noreply.github.com>
- Jean-Louis Dupond <jean-louis@dupond.be>
- Jens-Christian Fischer <jens-christian.fischer@switch.ch>
- Jesús Macias <jmacias@solidgear.es>
- Joachim Bauch <bauch@struktur.de>
- Joachim Sokolowski <github@sokolowski.org>
- Joas Schilling <coding@schilljs.com>
- Joel S <joel.devbox@protonmail.com>
- Johan Björk <johanimon@gmail.com>
- Johannes Ernst <jernst@indiecomputing.com>
- Johannes Leuker <j.leuker@hosting.de>
- Johannes Merkel <mail@johannesgge.de>
- Johannes Riedel <joeried@users.noreply.github.com>
- Johannes Riedel <johannes@johannes-riedel.de>
- Johannes Schlichenmaier <johannes@schlichenmaier.info>
- Johannes Willnecker <johannes@willnecker.com>
- John Molakvoæ <skjnldsv@protonmail.com>
- Jonas <jonas@freesources.org>
- Jonas Heinrich <heinrich@synyx.de>
- Jonas Meurer <jonas@freesources.org>
- Jonas Rittershofer <jotoeri@users.noreply.github.com>
- Jonny007-MKD <1-23-4-5@web.de>
- Jos Poortvliet <jos@opensuse.org>
- Jose Quinteiro <github@quinteiro.org>
- Josh Richards <josh.t.richards@gmail.com>
- Joshua Trees <me@jtrees.io>
- Juan Pablo Villafáñez <jvillafanez@solidgear.es>
- Julien Lutran <julien.lutran@corp.ovh.com>
- Julien Veyssier <eneiluj@posteo.net>
- Julien Veyssier <julien-nc@posteo.net>
- Julius Haertl <jus@bitgrid.net>
- Julius Härtl <jus@bitgrid.net>
- Jérôme Herbinet <33763786+Jerome-Herbinet@users.noreply.github.com>
- Jörn Friedrich Dreyer <jfd@butonic.de>
- KB7777 <k.burkowski@gmail.com>
- Kamil Domanski <kdomanski@kdemail.net>
- Kareem <yemkareems@gmail.com>
- Karel Hink <info@karelhink.cz>
- Kate Döen <kate.doeen@nextcloud.com>
- Kawohl <john@owncloud.com>
- Kenneth Newwood <kenneth@newwood.name>
- Kevin Lanni <therealklanni@gmail.com>
- Kevin Ndung'u <kevgathuku@gmail.com>
- Kevin Niehage <k.niehage@syseleven.de>
- Kim Brose <kim.brose@rwth-aachen.de>
- Kirill Popov <kirill.s.popov@gmail.com>
- Klaas Freitag <freitag@owncloud.com>
- Knut Ahlers <knut@ahlers.me>
- Ko- <k.stoffelen@cs.ru.nl>
- Konrad Abicht <hi@inspirito.de>
- Konrad Bucheli <kb@open.ch>
- Kristof Provost <github@sigsegv.be>
- Kyle Fazzari <kyrofa@ubuntu.com>
- Lars <winnetou+github@catolic.de>
- Lars Knickrehm <mail@lars-sh.de>
- Laurens Post <Crote@users.noreply.github.com>
- Laurens Post <lkpost@scept.re>
- Lauris Binde <laurisb@users.noreply.github.com>
- Lee Garrett <lgarrett@rocketjump.eu>
- Lennart Rosam <hello@takuto.de>
- Lennart Rosam <lennart.rosam@medien-systempartner.de>
- Leon Klingele <git@leonklingele.de>
- Leon Klingele <leon@struktur.de>
- Liam Dennehy <liam@wiemax.net>
- Liam JACK <liamjack@users.noreply.github.com>
- Lionel Elie Mamane <lionel@mamane.lu>
- Loki3000 <github@labcms.ru>
- Leonardo Diez <leio10@users.noreply.github.com>
- Lorenzo M. Catucci <lorenzo@sancho.ccd.uniroma2.it>
- Lorenzo Tanganelli <35271287+tanganellilore@users.noreply.github.com>
- Louis <6653109+artonge@users.noreply.github.com>
- Louis Chemineau <louis@chmn.me>
- Loïc Hermann <loic.hermann@sciam.fr>
- Lucas Azevedo <lhs_azevedo@hotmail.com>
- Luka Trovic <luka@nextcloud.com>
- Lukas Reschke <lukas@statuscode.ch>
- Lukas Stabe <lukas@stabe.de>
- Luke Policinski <lpolicinski@gmail.com>
- Magnus Walbeck <mw@mwalbeck.org>
- Maksim Sukharev <antreesy.web@gmail.com>
- Marc Hefter <marchefter@gmail.com>
- Marc Hefter <marchefter@march42.net>
- Marcel Klehr <mklehr@gmx.net>
- Marcel Müller <marcel-mueller@gmx.de>
- Marcel Müller <marcel.mueller@nextcloud.com>
- Marcel Waldvogel <marcel.waldvogel@uni-konstanz.de>
- Marco Ambrosini <marcoambrosini@pm.me>
- Marco Ziech <marco@ziech.net>
- Marin Treselj <marin@pixelipo.com>
- Mario Danic <mario@lovelyhq.com>
- Lyonel Vincent <lyonel@ezix.org>
- Manish Bisht <manish.bisht490@gmail.com>
- Mario Kolling <mario.kolling@serpro.gov.br>
- Marius Blüm <marius@lineone.io>
- Marius David Wieschollek <git.public@mdns.eu>
- Markus Goetz <markus@woboq.com>
- Markus Staab <markus.staab@redaxo.de>
- Markus Zeller <git@markuszeller.com>
- MartB <mart.b@outlook.de>
- Martin Brugnara <martin@0x6d62.eu>
- Martin Konrad <info@martin-konrad.net>
- Martin Konrad <konrad@frib.msu.edu>
- Martin Mattel <martin.mattel@diemattels.at>
- Marvin Thomas Rabe <mrabe@marvinrabe.de>
- Masaki Kawabata Neto <masaki.kawabata@gmail.com>
- MasterOfDeath <rinat.gumirov@mail.ru>
- Matthew Setter <matthew@matthewsetter.com>
- Matthieu Gallien <matthieu.gallien@nextcloud.com>
- Mattia Narducci <mattianarducci1@gmail.com>
- Max <max@nextcloud.com>
- Max Kovalenko <mxss1998@yandex.ru>
- Max Kunzelmann <maxdev@posteo.de>
- Maxence Lange <maxence@artificial-owl.com>
- Maxence Lange <maxence@nextcloud.com>
- Maxence Lange <maxence@pontapreta.net>
- Maxime Besson <maxime.besson@worteks.com>
- Maximilian Martin <maximilian_martin@gmx.de>
- Maxopoly <max@dermax.org>
- MichaIng <28480705+MichaIng@users.noreply.github.com>
- MichaIng <micha@dietpi.com>
- Michael Gapczynski <GapczynskiM@gmail.com>
- Michael Göhler <somebody.here@gmx.de>
- Michael Jobst <mjobst+github@tecratech.de>
- Michael Jobst <mjobst@necls.com>
- Michael Kuhn <github@ikkoku.de>
- Michael Kuhn <michael@ikkoku.de>
- Michael Letzgus <www@chronos.michael-letzgus.de>
- Michael Kuhn <suraia@ikkoku.de>
- Michael Roitzsch <reactorcontrol@icloud.com>
- Michael Weimann <mail@michael-weimann.eu>
- Michael Zamot <michael@zamot.io>
- Michał Węgrzynek <michal.wegrzynek@malloc.com.pl>
- Michiel de Jong <michiel@unhosted.org>
- Micke Nordin <kano@sunet.se>
- Mickey Knox <mickey@netfreaks.org>
- Michael Roth <michael.roth@rz.uni-augsburg.de>
- Michael U <mdusher@users.noreply.github.com>
- Miguel Prokop <miguel.prokop@vtu.com>
- Mikael Hammarin <mikael@try2.se>
- Mikael Saarinen <mikaels@iki.fi>
- Mikhail Sazanov <m@sazanof.ru>
- Mitar <mitar.git@tnode.com>
- Mohammed Abdellatif <m.latief@gmail.com>
- Morris Jobke <hey@morrisjobke.de>
- Mátyás Jani <jzombi@gmail.com>
- nacho <nacho@ownyourbits.com>
- Naoto Kobayashi <naoto.kobayashi4c@gmail.com>
- Nazar Mokrynskyi <nazar@mokrynskyi.com>
- Nick Sweeting <git@sweeting.me>
- Nicolai Ehemann <en@enlightened.de>
- Nicolas Grekas <nicolas.grekas@gmail.com>
- Nicolas SIMIDE <2083596+dems54@users.noreply.github.com>
- Nils <git@to.nilsschnabel.de>
- Nils Wittenbrink <nilswittenbrink@web.de>
- Nina Pypchenko <22447785+nina-py@users.noreply.github.com>
- Nmz <nemesiz@nmz.lt>
- NoSleep82 <52562874+NoSleep82@users.noreply.github.com>
- Noveen Sachdeva <noveen.sachdeva@research.iiit.ac.in>
- Ole Ostergaard <ole.c.ostergaard@gmail.com>
- Ole Ostergaard <ole.ostergaard@knime.com>
- Normal Ra <normalraw@gmail.com>
- Oliver Gasser <oliver.gasser@gmail.com>
- Oliver Kohl D.Sc. <oliver@kohl.bz>
- Oliver Wegner <void1976@gmail.com>
- Olivier Paroz <github@oparoz.com>
- Olivier Paroz <owncloud@interfasys.ch>
- Orzu Ionut <orzu.ionut@gmail.com>
- Otto Sabart <ottosabart@seberm.com>
- Owen Winkler <a_github@midnightcircus.com>
- Pascal de Bruijn <pmjdebruijn@pcode.nl>
- Patrick Paysant <patrick.paysant@linagora.com>
- Patrik Kernstock <info@pkern.at>
- Pauli Järvinen <pauli.jarvinen@gmail.com>
- Pavel Krasikov <klonishe@gmail.com>
- Pawel Boguslawski <pawel.boguslawski@ib.pl>
- Patrick Paysant <ppaysant@linagora.com>
- Pellaeon Lin <nfsmwlin@gmail.com>
- Peter Kubica <peter@kubica.ch>
- Petre T <petre.tudor@dorkfarm.com>
- Petr Svoboda <weits666@gmail.com>
- Phiber2000 <phiber2000@gmx.de>
- Phil Davis <phil.davis@inf.org>
- Philip Gatzka <philip.gatzka@mailbox.org>
- Philipp Kapfer <philipp.kapfer@gmx.at>
- Philipp Schaffrath <github@philipp.schaffrath.email>
- Philipp Staiger <philipp@staiger.it>
- Philippe Jung <phil.jung@free.fr>
- Pierre Jochem <pierrejochem@msn.com>
- Pierre Ozoux <pierre@ozoux.net>
- Pierre Rudloff <contact@rudloff.pro>
- Piotr Filiciak <piotr@filiciak.pl>
- Piotr M <mrow4a@yahoo.com>
- Piotr Mrowczynski <mrow4a@yahoo.com>
- Piotr Mrowczynski <piotr@owncloud.com>
- Piotr Mrówczyński <mrow4a@yahoo.com>
- Pytal <24800714+Pytal@users.noreply.github.com>
- Qingping Hou <dave2008713@gmail.com>
- Raghu Nayyar <hey@raghunayyar.com>
- Raghu Nayyar <me@iraghu.com>
- Ralph Krimmel <rkrimme1@gwdg.de>
- Ramiro Aparicio <rapariciog@gmail.com>
- Randolph Carter <RandolphCarter@fantasymail.de>
- Rayn0r <andrew@ilpss8.myfirewall.org>
- RealRancor <Fisch.666@gmx.de>
- RealRancor <fisch.666@gmx.de>
- Rello <Rello@users.noreply.github.com>
- Remco Brenninkmeijer <requist1@starmail.nl>
- Retidurc Silvernight <retidurc@silvernight.social>
- Richard Steinmetz <richard@steinmetz.cloud>
- Richard de Boer <github@tubul.net>
- Rid <rid@cylo.io>
- Rinat Gumirov <rinat.gumirov@mail.ru>
- Robert Dailey <rcdailey@gmail.com>
- Renaud Fortier <Renaud.Fortier@fsaa.ulaval.ca>
- Robin Appelman <robin@icewind.nl>
- Robin McCorkell <robin@mccorkell.me.uk>
- Robin Müller <coder-hugo@users.noreply.github.com>
- Roeland Jago Douma <roeland@famdouma.nl>
- Roger Szabo <roger.szabo@web.de>
- Roland Tapken <roland@bitarbeiter.net>
- Romain Rivière <lecoyote@lecoyote.org>
- Roman Geber <rgeber@owncloudapps.com>
- Roman Kreisel <mail@romankreisel.de>
- Ross Nicoll <jrn@jrn.me.uk>
- Rsplwe <i@rsplwe.com>
- Ruben Homs <ruben@homs.codes>
- RussellAult <RussellAult@users.noreply.github.com>
- Rémy Jacquin <remy@remyj.fr>
- S. Cat <33800996+sparrowjack63@users.noreply.github.com>
- SA <stephen@mthosting.net>
- Sascha Sambale <mastixmc@gmail.com>
- Sam Bull <aa6bs0@sambull.org>
- Sam Tuke <mail@samtuke.com>
- Sam Tuke <samtuke@owncloud.com>
- Samuel <faust64@gmail.com>
- Samuel CHEMLA <chemla.samuel@gmail.com>
- Sander Ruitenbeek <s.ruitenbeek@getgoing.nl>
- Sander Ruitenbeek <sander@grids.be>
- Sandro Lutz <sandro.lutz@temparus.ch>
- Sanpi <sanpi@homecomputing.fr>
- Sascha Wiswedel <sascha.wiswedel@nextcloud.com>
- Scott Dutton <exussum12@users.noreply.github.com>
- Scott Dutton <scott@exussum.co.uk>
- Scott Shambarger <devel@shambarger.net>
- Sander <brantje@gmail.com>
- Sean Comeau <sean@ftlnetworks.ca>
- Sean Molenaar <sean@seanmolenaar.eu>
- Sebastian Döll <sebastian.doell@libasys.de>
- Sebastian Steinmetz <462714+steiny2k@users.noreply.github.com>
- Sebastian Steinmetz <me@sebastiansteinmetz.ch>
- Sebastian Wessalowski <sebastian@wessalowski.org>
- Semih Serhat Karakaya <karakayasemi@itu.edu.tr>
- Senorsen <senorsen.zhang@gmail.com>
- Serge Martin <edb@sigluy.net>
- Sergej Nikolaev <kinolaev@gmail.com>
- Sergej Pupykin <pupykin.s@gmail.com>
- Sergey Shliakhov <husband.sergey@gmail.com>
- Sergio Bertolin <sbertolin@solidgear.es>
- Sergio Bertolín <sbertolin@solidgear.es>
- Serhii Shliakhov <shlyakhov.up@gmail.com>
- Sijmen Schoon <me@sijmenschoon.nl>
- Simon Könnecke <simonkoennecke@gmail.com>
- Simon L <szaimen@e.mail.de>
- Simon Leiner <simon@leiner.me>
- Simon Spannagel <simonspa@kth.se>
- Simounet <contact@simounet.net>
- Sjors van der Pluijm <sjors@desjors.nl>
- Stanimir Bozhilov <stanimir.bozhilov.1998@gmail.com>
- Stanimir Bozhilov <stanimir@audriga.com>
- Stefan <Stefan.Schilling@EXXETA.com>
- Stefan Herbrechtsmeier <stefan@herbrechtsmeier.net>
- Stefan Rado <owncloud@sradonia.net>
- Stefan Schneider <stefan.schneider@squareweave.com.au>
- Stefan Weiberg <sweiberg@suse.com>
- Stefan Weil <sw@weilnetz.de>
- Steffen Lindner <mail@steffen-lindner.de>
- Stephan Müller <mail@stephanmueller.eu>
- Stephan Orbaugh <stephan.orbaugh@nextcloud.com>
- Stephan Peijnik <speijnik@anexia-it.com>
- Stephen Cuppett <steve@cuppett.com>
- Steven Bühner <buehner@me.com>
- Sujith H <sharidasan@owncloud.com>
- Sujith Haridasan <Sujith_Haridasan@mentor.com>
- Sujith Haridasan <sujith.h@gmail.com>
- Sven Strickroth <email@cs-ware.de>
- Sylvain <git@sylvain.dev>
- Sylvia van Os <sylvia@hackerchick.me>
- Tekhnee <info@tekhnee.org>
- Temtaime <temtaime@gmail.com>
- TheSFReader <TheSFReader@gmail.com>
- Thibaut GRIDEL <tgridel@free.fr>
- Thomas Citharel <nextcloud@tcit.fr>
- Thomas Ebert <thomas.ebert@usability.de>
- Thomas Citharel <tcit@tcit.fr>
- Thomas Müller <thomas.mueller@tmit.eu>
- Thomas Pulzer <t.pulzer@kniel.de>
- Thomas Tanghus <thomas@tanghus.net>
- Tiago Flores <tiago.flores@yahoo.com.br>
- Tigran Mkrtchyan <tigran.mkrtchyan@desy.de>
- Tim Dettrick <t.dettrick@uq.edu.au>
- Tim Obert <tobert@w-commerce.de>
- Tim Terhorst <mynamewastaken+gitlab@gmail.com>
- TimObert <tobert@w-commerce.de>
- Timo Förster <tfoerster@webfoersterei.de>
- Tobia De Koninck <LEDfan@users.noreply.github.com>
- Tobia De Koninck <tobia@ledfan.be>
- Tobias Assmann <tobias.assmann@ecsec.de>
- Tobias Kaminsky <tobias@kaminsky.me>
- Tobias Perschon <tobias@perschon.at>
- Tom Grant <TomG736@users.noreply.github.com>
- Tom Needham <tom@owncloud.com>
- Tomasz Grobelny <tomasz@grobelny.net>
- Tomasz Paluszkiewicz <tomasz.paluszkiewicz@gmail.com>
- Tor Lillqvist <tml@collabora.com>
- UmbrellaCodr <umbrella@biohazard.cc>
- Unknown <anpz.asutp@gmail.com>
- Unpublished <unpublished@gmx.net>
- Valdnet <47037905+Valdnet@users.noreply.github.com>
- Vanessa Pertsch <vanessa.pertsch@nextcloud.com>
- Varun Patil <radialapps@gmail.com>
- Varun Patil <varunpatil@ucla.edu>
- Torben Dannhauer <torben@dannhauer.de>
- Victor Dubiniuk <dubiniuk@owncloud.com>
- Viktor Szépe <viktor@szepe.net>
- Vincent Chan <plus.vincchan@gmail.com>
- Vincent Cloutier <vincent1cloutier@gmail.com>
- Vincent Petry <pvince81@owncloud.com>
- Vincent Petry <vincent@nextcloud.com>
- Vincent Van Houtte <vvh@aplusv.be>
- Vinicius Cubas Brand <vinicius@eita.org.br>
- Vitor Mattos <vitor@php.rio>
- Vlastimil Pecinka <pecinka@email.cz>
- Volkan Gezer <volkangezer@gmail.com>
- Volker <skydiablo@gmx.net>
- William <william.hak57@gmail.com>
- William Pain <pain.william@gmail.com>
- Xheni Myrtaj <myrtajxheni@gmail.com>
- Xheni Myrtaj <xheni@protonmail.com>
- Xuanwo <xuanwo@yunify.com>
- ZitronePlus <tobiasscharf92@gmail.com>
- acsfer <12234510+acsfer@users.noreply.github.com>
- acsfer <carlos@reendex.com>
- adrien <adrien.waksberg@believedigital.com>
- alanmeeson <alan@carefullycalculated.co.uk>
- aler9 <46489434+aler9@users.noreply.github.com>
- alexweirig <alex.weirig@technolink.lu>
- b108@volgograd "b108@volgograd"
- bbx-github <53237674+bbx-github@users.noreply.github.com>
- bladewing <lukas@ifflaender-family.de>
- bline <scottbeck@gmail.com>
- blizzz <blizzz@arthur-schiwon.de>
- brad2014 <brad2014@users.noreply.github.com>
- brumsel <brumsel@losecatcher.de>
- cahogan <caitlin.hogan@swiftsolar.com>
- call-me-matt <nextcloud@matthiasheinisch.de>
- castillo92 <37965565+castillo92@users.noreply.github.com>
- cetra3 <peter@parashift.com.au>
- cmeh <cmeh@users.noreply.github.com>
- comradekingu <epost@anotheragency.no>
- dartcafe <github@dartcafe.de>
- dampfklon <me@dampfklon.de>
- davidgumberg <davidnoizgumberg@gmail.com>
- davitol <dtoledo@solidgear.es>
- dems54 <2083596+dems54@users.noreply.github.com>
- duritong <peter.meier+github@immerda.ch>
- derkostka <sebastian.kostka@gmail.com>
- eduardo <eduardo@vnexu.net>
- eleith <online+github@eleith.com>
- enoch <lanxenet@hotmail.com>
- essys <essys@users.noreply.github.com>
- exner104 <59639860+exner104@users.noreply.github.com>
- fabian <fabian@web2.0-apps.de>
- felixboehm <felix@webhippie.de>
- fenn-cs <fenn25.fn@gmail.com>
- fnuesse <felix.nuesse@t-online.de>
- fnuesse <fnuesse@techfak.uni-bielefeld.de>
- greta <gretadoci@gmail.com>
- Hector Valcarcel <hmvalcarcel@gmail.com>
- goodkiller <markopraakli@gmail.com>
- helix84 <helix84@centrum.sk>
- hkjolhede <hkjolhede@gmail.com>
- hoellen <dev@hoellen.eu>
- hosting.de, Johannes Leuker <developers@hosting.de>
- howardZa <33491519+howardZa@users.noreply.github.com>
- ideaship <ideaship@users.noreply.github.com>
- j-ed <juergen@eisfair.org>
- j3l11234 <297259024@qq.com>
- jaltek <jaltek@mailbox.org>
- jknockaert <jasper@knockaert.nl>
- jld3103 <jld3103yt@gmail.com>
- josh4trunks <joshruehlig@gmail.com>
- julia.kirschenheuter <julia.kirschenheuter@nextcloud.com>
- karakayasemi <karakayasemi@itu.edu.tr>
- kevin147147 <kevintamool@gmail.com>
- korelstar <korelstar@users.noreply.github.com>
- leith abdulla <online-nextcloud@eleith.com>
- lui87kw <lukas.ifflaender@uni-wuerzburg.de>
- luz paz <luzpaz@github.com>
- luz paz <luzpaz@pm.me>
- lynn-stephenson <lynn.stephenson@protonmail.com>
- macjohnny <estebanmarin@gmx.ch>
- marco44 <cousinmarc@gmail.com>
- martin-rueegg <martin.rueegg@metaworx.ch>
- martin.mattel@diemattels.at <martin.mattel@diemattels.at>
- martink-p <47943787+martink-p@users.noreply.github.com>
- matt <34400929+call-me-matt@users.noreply.github.com>
- medcloud <42641918+medcloud@users.noreply.github.com>
- michaelletzgus <michaelletzgus@users.noreply.github.com>
- michag86 <micha_g@arcor.de>
- michag86 <michag86@arcor.de>
- mmccarn <mmccarn-github@mmsionline.us>
- nhirokinet <nhirokinet@nhiroki.net>
- nik gaffney <nik@fo.am>
- nishiki <nishiki@yaegashi.fr>
- noiob <8197071+noiob@users.noreply.github.com>
- noveens <noveen.sachdeva@research.iiit.ac.in>
- npmbuildbot[bot] "npmbuildbot[bot]@users.noreply.github.com"
- onehappycat <one.happy.cat@gmx.com>
- phisch <git@philippschaffrath.de>
- pjft <pjft@users.noreply.github.com>
- plumbeo <plumbeo@users.noreply.github.com>
- rakekniven <2069590+rakekniven@users.noreply.github.com>
- rakekniven <mark.ziegler@rakekniven.de>
- raul <raul@nextcloud.com>
- robottod <83244577+robottod@users.noreply.github.com>
- root "root@oc.(none)"
- root <root@localhost.localdomain>
- rubo77 <github@r.z11.de>
- sammo2828 <sammo2828@gmail.com>
- oparoz <owncloud@interfasys.ch>
- root <root@oc.(none)>
- scambra <sergio@entrecables.com>
- scolebrook <scolebrook@mac.com>
- shkdee <louis.traynard@m4x.org>
- simonspa <1677436+simonspa@users.noreply.github.com>
- smichel17 <git@smichel.me>
- sodimel <corentin@244466666.xyz>
- ste101 <stephan_bauer@gmx.de>
- sualko <klaus@jsxc.org>
- szaimen <szaimen@e.mail.de>
- tbartenstein <tbartenstein@users.noreply.github.com>
- tbelau666 <thomas.belau@gmx.de>
- TechnicalSuwako <suwako@076.moe>
- tgrant <tom.grant760@gmail.com>
- timm2k <timm2k@gmx.de>
- tux-rampage <tux-rampage@users.noreply.github.com>
- unclejamal3000 <andreas.pramhaas@posteo.de>
- v1r0x <vinzenz.rosenkranz@gmail.com>
- voxsim "Simon Vocella"
- waleczny <michal@walczak.xyz>
- zorn-v <zorn7@yandex.ru>
- zulan <git@zulan.net>
- Łukasz Buśko <busko.lukasz@pm.me>
- Nextcloud GmbH
- ownCloud GmbH
- ownCloud, Inc.
- voxsim <Simon Vocella>
With help from many libraries and frameworks including:
Open Collaboration Services
-8
View File
@@ -1,8 +0,0 @@
<!--
- SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors
- SPDX-License-Identifier: AGPL-3.0-or-later
-->
Changelog
=========
The change log is at [https://nextcloud.com/changelog/](https://nextcloud.com/changelog/).

Some files were not shown because too many files have changed in this diff Show More