Compare commits

..

827 Commits

Author SHA1 Message Date
Roeland Jago Douma 24c47a5c66 Merge pull request #21802 from nextcloud/version/18.0.7/final
18.0.7 final
2020-07-15 20:51:02 +02:00
Nextcloud bot c427296602 [tx-robot] updated from transifex 2020-07-15 02:19:57 +00:00
Nextcloud bot 68d4f97d33 [tx-robot] updated from transifex 2020-07-14 02:17:39 +00:00
Roeland Jago Douma 7efb070ffe 18.0.7 final
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-07-13 10:48:52 +02:00
Nextcloud bot 8569f32973 [tx-robot] updated from transifex 2020-07-13 02:17:25 +00:00
Nextcloud bot 26947b8c7b [tx-robot] updated from transifex 2020-07-12 02:17:07 +00:00
Nextcloud bot d0b8a30db0 [tx-robot] updated from transifex 2020-07-11 02:17:37 +00:00
Nextcloud bot 74311c33e3 [tx-robot] updated from transifex 2020-07-10 02:17:12 +00:00
Roeland Jago Douma 9661e73ef5 Merge pull request #21700 from nextcloud/version/18.0.7/RC1
18.0.7 RC1
2020-07-09 21:36:30 +02:00
Roeland Jago Douma 637fc70c81 Merge pull request #21781 from nextcloud/backport/21778/stable18
[stable18] Set the moment locale even earlier
2020-07-09 21:34:21 +02:00
Roeland Jago Douma 5e1e125e9c Merge pull request #21773 from nextcloud/backport/21489/stable18
[stable18] Use the correct mountpoint to calculate
2020-07-09 20:37:38 +02:00
Christoph Wurst 9201890a8b Set the moment locale even earlier
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-07-09 20:22:21 +02:00
Robin Appelman 498a1d0293 better cleanup in share tests
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-07-09 12:33:29 +00:00
Robin Appelman cc35da4d28 ensure home storage is initialized on first setup
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-07-09 12:33:29 +00:00
Robin Appelman 2eb61b4111 ensure mounts are scanned during tests
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-07-09 12:33:29 +00:00
Daniel Calviño Sánchez 52aa0ef3da Add more integration tests for resharing permissions
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2020-07-09 12:33:28 +00:00
Roeland Jago Douma bb9da25772 Use the correct mountpoint to calculate
If we use the owners mount point this results in null. And then the rest
of the checks get called with null. Which doesn't work.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-07-09 12:33:26 +00:00
Nextcloud bot 84ac834a34 [tx-robot] updated from transifex 2020-07-09 02:17:54 +00:00
Roeland Jago Douma e496366fea Merge pull request #21752 from nextcloud/backport/21706/stable18
[stable18] Add a clear message why you could end up there
2020-07-08 20:12:34 +02:00
Joas Schilling 421f52301d Add a clear message why you could end up there
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-07-08 13:11:19 +00:00
Morris Jobke 778cb33576 Merge pull request #21499 from lmamane/stable18-21285-oneliner
fix #21285 as oneliner
2020-07-08 13:04:58 +02:00
Nextcloud bot cb5d3b2903 [tx-robot] updated from transifex 2020-07-08 02:17:16 +00:00
Nextcloud bot 272a6dbf45 [tx-robot] updated from transifex 2020-07-07 02:16:50 +00:00
Morris Jobke 52167ddc39 Merge pull request #21575 from nextcloud/backport/21379/stable18
[stable18] Fix share permission checkboxes enabled when permissions can not be set
2020-07-06 23:00:38 +02:00
Morris Jobke 5aa6134d6c Merge pull request #21702 from nextcloud/backport/18895/stable18
[stable18] Changes the Birthday calendar color to slightly brighter one
2020-07-06 14:37:15 +02:00
Morris Jobke 2d1fbabfc5 Merge pull request #21343 from nextcloud/backport/21252/stable18
[stable18] update icewind/smb to 3.2.5
2020-07-06 13:40:32 +02:00
Morris Jobke 55e1d1c5dc Fix unit tests from #18895
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-07-06 13:33:44 +02:00
Georg Ehrke 9fdc4cc343 Changes the Birthday calendar color to slightly brighter one
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2020-07-06 11:23:05 +00:00
Roeland Jago Douma dde7908e8a 18.0.7 RC1
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-07-06 13:17:44 +02:00
Roeland Jago Douma 01669bdc86 Merge pull request #21670 from nextcloud/revert-21096-backport/21090/stable18
Revert "[stable18] Do not read certificate bundle from data dir by default"
2020-07-06 10:38:48 +02:00
Nextcloud bot cfbc566fb9 [tx-robot] updated from transifex 2020-07-06 02:16:27 +00:00
Roeland Jago Douma c9eede0acf Merge pull request #21388 from nextcloud/backport/21380/stable18
[stable18] Increase timeout of the appstore requests
2020-07-04 08:55:18 +02:00
Nextcloud bot 1cc8cb5391 [tx-robot] updated from transifex 2020-07-04 02:16:34 +00:00
Roeland Jago Douma f3cb2a8208 Revert "[stable18] Do not read certificate bundle from data dir by default" 2020-07-03 14:21:28 +02:00
Joas Schilling b5a64321f5 Increase timeout of the appstore requests
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-07-03 10:10:07 +02:00
Roeland Jago Douma 68fdcc03bf Merge pull request #21661 from timm2k/patch-1
Manual backport of "Check if debugMode is defined before using it" #21657
2020-07-03 08:34:50 +02:00
timm2k 21b66783d7 Manual backport of "Check if debugMode is defined before using it" #21657 2020-07-03 08:15:40 +02:00
Nextcloud bot b44a9ea10d [tx-robot] updated from transifex 2020-07-03 02:17:29 +00:00
Morris Jobke f9cc07feef Merge pull request #21572 from nextcloud/backport/21558/stable18
[stable18] relax permissions mask check for detecting part file rename
2020-07-02 23:50:50 +02:00
Morris Jobke 073b702f91 Merge pull request #21585 from nextcloud/backport/21530/stable18
[stable18] Remove rescanDelay from directory mtime
2020-07-02 23:34:09 +02:00
Roeland Jago Douma 464b9fbe09 Merge pull request #21551 from nextcloud/backport/21535/stable18
[stable18] Fix language in share notes email for users
2020-07-02 21:00:45 +02:00
kesselb 41a33b0425 Merge pull request #21654 from nextcloud/backport/21653/stable18
[stable18] Fix IPv6 remote addresses from X_FORWARDED_FOR headers before validating
2020-07-02 20:36:25 +02:00
Joas Schilling 8cba764b59 Fix IPv6 remote addresses from X_FORWARDED_FOR headers before validating
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-07-02 10:09:45 +00:00
Joas Schilling 2d2b41300a Merge pull request #21539 from nextcloud/backport/21452/stable18
[stable18] Fix autocomplete for LDAP with `shareapi_only_share_with_group_members` on
2020-07-01 10:13:34 +02:00
Nextcloud bot dcc2938429 [tx-robot] updated from transifex 2020-07-01 02:16:32 +00:00
Nextcloud bot d317833986 [tx-robot] updated from transifex 2020-06-30 02:16:29 +00:00
Nextcloud bot 0f161e73ef [tx-robot] updated from transifex 2020-06-29 02:16:54 +00:00
Nextcloud bot c399121b06 [tx-robot] updated from transifex 2020-06-28 02:16:28 +00:00
Nextcloud bot 9b69d5445f [tx-robot] updated from transifex 2020-06-27 02:17:00 +00:00
Daniel Calviño Sánchez 820d121f03 Fix share permission checkboxes enabled when permissions can not be set
A sharee can reshare a file and set the edit, create, delete and share
permissions of the reshare only if the received share has edit, create,
delete and share permissions, or if they were revoked in the received
share after being set in the reshare. Therefore, the permission
checkboxes in the share menu should be enabled only if the user can set
them (otherwise trying to check them will lead to an error).

Note that "sharePermissions" has all the permissions if the file is not
a reshare but a file owned by the user.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
2020-06-26 13:36:49 +00:00
Julius Härtl b0a8781cef Remove rescanDelay from directory mtime
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-06-25 14:54:17 +00:00
Nextcloud bot 3bd4447b3f [tx-robot] updated from transifex 2020-06-25 02:17:00 +00:00
blizzz d7d063d00e Merge pull request #21569 from nextcloud/backport/21564/stable18
[stable18] fix obsolete usage of OCdialogs
2020-06-24 22:43:57 +02:00
Daniel Calviño Sánchez 047b5407d6 Add acceptance test for disabling create permission after sharing
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2020-06-24 19:24:58 +00:00
Daniel Calviño Sánchez a3f1bb70bd Add acceptance test for sharing a folder without create permission
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2020-06-24 19:24:58 +00:00
Daniel Calviño Sánchez 47222e9ad4 Add acceptance test for sharing a file without edit permission
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2020-06-24 19:24:57 +00:00
Daniel Calviño Sánchez b2b02ff353 Generalize functions to get locators for share permission checkboxes
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2020-06-24 19:24:57 +00:00
Robin Appelman a2ebe6d30e relax permissions mask check for detecting part file rename
with files drop uploads the original file name isn't always used for the '.ocTransferId' source path

Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-06-24 19:08:42 +00:00
Arthur Schiwon 939eb7dd99 fix obsolete usage of OCdialogs
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-06-24 17:03:33 +00:00
Joas Schilling 3a59ea88a8 Merge pull request #21543 from nextcloud/backport/21417/stable18
[stable18] Fix modal support for vue apps and dark theme
2020-06-24 13:32:44 +02:00
Joas Schilling 70cf8bd7fc Fix language in share notes email for users
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-06-24 09:10:55 +02:00
Nextcloud bot 60ed9a1c53 [tx-robot] updated from transifex 2020-06-24 02:17:03 +00:00
Joas Schilling 0d86989706 Fix unit tests
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-06-23 14:55:26 +02:00
Joas Schilling 3495f4c0c1 Fix PHP CS
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-06-23 14:55:26 +02:00
Joas Schilling 00ec9e71e9 Add another test for exact matching of a user in group restriction
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-06-23 14:55:26 +02:00
Joas Schilling 1e3748f672 Move back to IGroupManager::displayNamesInGroup()
The problem is that despite it's name IGroup::searchDisplayName()
only searches by userid and this is less fixable than changing back to this method here

Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-06-23 14:55:26 +02:00
Joas Schilling 85f9f55e6e Rebuild JS files
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-06-23 14:25:37 +02:00
Joas Schilling 74d61a6605 Darker background for dark mode
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-06-23 14:22:57 +02:00
Joas Schilling 62f99f9248 Make the confirm dialog modal by default
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-06-23 14:22:48 +02:00
Joas Schilling 9fa2d007c1 Fix modal support for vue apps
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-06-23 14:21:43 +02:00
Nextcloud bot 9e960a3665 [tx-robot] updated from transifex 2020-06-23 02:17:29 +00:00
Roeland Jago Douma 779f45de9c Merge pull request #21448 from nextcloud/backport/21406/stable18
[stable18] Disable Client-Side Monitoring on AWS storage
2020-06-22 16:28:59 +02:00
Roeland Jago Douma a367147d8e Merge pull request #21522 from nextcloud/backport/21478/stable18
[stable18] Clarify that the email is always shared within the instance
2020-06-22 11:03:58 +02:00
Joas Schilling bb0f4325d5 Clarify that the email is always shared within the instance
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-06-22 06:52:00 +00:00
Roeland Jago Douma 2cfb7172a0 Merge pull request #21486 from nextcloud/backport/21482/stable18
[stable18] Don't log Keys
2020-06-21 09:19:25 +02:00
Roeland Jago Douma cc2ca7c372 Merge pull request #21494 from nextcloud/backport/21492/stable18
[stable18] acceptence tests shall specify which branch to pick when cloning apps
2020-06-21 09:15:56 +02:00
Nextcloud bot 5e1338484c [tx-robot] updated from transifex 2020-06-21 02:16:25 +00:00
Roeland Jago Douma d24009dc20 Merge pull request #21496 from nextcloud/backport/21483/stable18
[stable18] Give up after 10 seconds in SCSS timeout
2020-06-20 16:00:47 +02:00
Lionel Elie Mamane c173602f88 adapt testGetLoginCredentialsInvalidTokenLoginCredentials() unit test to uid != loginname
Signed-off-by: Lionel Elie Mamane <lionel@mamane.lu>
2020-06-20 11:52:42 +02:00
Lionel Elie Mamane 80973cd60b Return correct loginname in credentials,
even when token is invalid or has no password.

Returning the uid as loginname is wrong, and leads to problems when
these differ. E.g. the getapppassword API was creating app token with
the uid as loginname. In a scenario with external authentication (such
as LDAP), these tokens were then invalidated next time their underlying
password was checked, and systematically ceased to function.

Signed-off-by: Lionel Elie Mamane <lionel@mamane.lu>
2020-06-20 11:52:42 +02:00
Nextcloud bot cf4572227e [tx-robot] updated from transifex 2020-06-20 02:16:56 +00:00
Roeland Jago Douma 5d57876047 Give up after 10 seconds in SCSS timeout
Else we keep idling for ages which leads to bad UX

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-06-19 19:29:58 +00:00
Arthur Schiwon a71701f2e7 acceptence tests shall specify which branch to pick when cloning apps
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-06-19 21:13:09 +02:00
Joas Schilling f5ee7736d9 Don't log Keys
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-06-19 13:13:35 +00:00
Roeland Jago Douma 5e0c5a0a83 Merge pull request #21381 from nextcloud/backport/20447/stable18
[stable18] Increase max-height on button in welcome email template
2020-06-19 13:22:58 +02:00
Roeland Jago Douma 9049ba07c0 Merge pull request #21471 from nextcloud/backport/21416/stable18
[stable18] Clean up auth tokens when user is deleted
2020-06-19 09:54:45 +02:00
Nextcloud bot 43f3936a34 [tx-robot] updated from transifex 2020-06-19 02:16:45 +00:00
Christoph Wurst 8e3d47a215 Clean up auth tokens when user is deleted
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-06-18 13:32:24 +00:00
Morris Jobke 11b3619dbd Fix tests
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-06-18 15:04:05 +02:00
Nextcloud bot a02a22b423 [tx-robot] updated from transifex 2020-06-18 02:16:54 +00:00
Christoph Wurst 5fdcb5a1e3 Disable Client-Side Monitoring on AWS storage
The S3 client enables this by default and then tries to read
`.aws/config`. This causes `open_basedir` restriction related error for
some setups. So this patch disables the CSM because it's most likely
unused anyway.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-06-17 09:02:20 +00:00
Nextcloud bot eb3c473059 [tx-robot] updated from transifex 2020-06-17 02:16:02 +00:00
Nextcloud bot 3546ce316d [tx-robot] updated from transifex 2020-06-16 02:16:23 +00:00
Nextcloud bot 2dd53c2f63 [tx-robot] updated from transifex 2020-06-15 02:16:15 +00:00
Nextcloud bot 4941258631 [tx-robot] updated from transifex 2020-06-14 02:16:09 +00:00
Liam JACK 597a04acb5 Fix #13287 - Increase max-height on button in welcome email template
Signed-off-by: Liam JACK <liamjack@users.noreply.github.com>
2020-06-12 11:18:29 +00:00
Roeland Jago Douma 3c3008aab8 Merge pull request #21355 from nextcloud/backport/21347/stable18
[stable18] Pass the proper share permissions to the create share call
2020-06-11 15:16:29 +02:00
Roeland Jago Douma 9c6d301b96 Pass the proper share permissions to the create share call
Fixes #21188

This way we do not run into the share permission issue

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-06-11 11:59:29 +02:00
Nextcloud bot 09029d3481 [tx-robot] updated from transifex 2020-06-11 02:16:08 +00:00
Nextcloud bot de8a8f3663 [tx-robot] updated from transifex 2020-06-10 02:16:25 +00:00
Roeland Jago Douma 93e419ea19 Merge pull request #21334 from nextcloud/backport/21318/stable18
[stable18] clear LDAP cache after user deletion
2020-06-09 19:29:37 +02:00
Robin Appelman 4bfbed0972 update icewind/smb to 3.2.5
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-06-09 14:55:09 +02:00
Arthur Schiwon 39a78f79d2 clear LDAP cache after user deletion
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-06-09 08:25:42 +00:00
Roeland Jago Douma 3658cdfc6f Merge pull request #21309 from nextcloud/backport/21198/stable18
[stable18] Only use background fade if nextcloud blue is set
2020-06-09 09:50:01 +02:00
Roeland Jago Douma dbb46a72b1 Merge pull request #21310 from nextcloud/version/18.0.6
18.0.6
2020-06-09 09:21:48 +02:00
Roeland Jago Douma 149d471616 Merge pull request #21306 from nextcloud/fix/stable18/sidebar-tabs-update
Init fileinfo for all tabs
2020-06-09 09:21:13 +02:00
Nextcloud bot 4b567bfcf9 [tx-robot] updated from transifex 2020-06-09 02:16:14 +00:00
Julius Härtl 414a3ae4e9 Only use background fade if nextcloud blue is set
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-06-08 11:47:58 +00:00
Roeland Jago Douma 46a7a3914a 18.0.6
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-06-08 13:42:16 +02:00
John Molakvoæ (skjnldsv) 366ee97fbd Init fileinfo for all tabs
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
2020-06-08 11:03:49 +00:00
Nextcloud bot af42b7bc76 [tx-robot] updated from transifex 2020-06-08 02:16:14 +00:00
Nextcloud bot 708bd38d6c [tx-robot] updated from transifex 2020-06-07 02:16:08 +00:00
Roeland Jago Douma 789adb9fa9 Merge pull request #21129 from nextcloud/backport/21123/stable18
[stable18] simplify getGroups, fixing wrong chunking logic
2020-06-06 09:45:58 +02:00
Roeland Jago Douma 3d1273d2f2 Merge pull request #21160 from nextcloud/backport/21152/stable18
[stable18] [stable18] Fix password changes in link and mail shares
2020-06-06 09:35:02 +02:00
Roeland Jago Douma 0a79de3652 Merge pull request #21211 from nextcloud/backport/20938/stable18
[stable18] Fix the Talk verification
2020-06-06 09:33:37 +02:00
Nextcloud bot b07978f18e [tx-robot] updated from transifex 2020-06-06 02:16:17 +00:00
Roeland Jago Douma bcdc6c5580 Merge pull request #21248 from nextcloud/backport/21229/stable18
[stable18] Fix empty event UUID reminder notifications
2020-06-05 13:39:04 +02:00
Thomas Citharel bff012a2b2 Fix empty event UUID reminder notifications
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-05 07:07:51 +00:00
Nextcloud bot d1f40575f9 [tx-robot] updated from transifex 2020-06-05 02:16:55 +00:00
Roeland Jago Douma 4ad03e1955 Merge pull request #21230 from nextcloud/backport/20427/stable18
[stable18] Fix password reset saying Admin changed my password when reset from login page
2020-06-04 19:02:36 +02:00
Roeland Jago Douma 871df8d4b0 Merge pull request #21227 from nextcloud/backport/21199/stable18
[stable18] Prevent harder to share your root
2020-06-04 19:02:10 +02:00
Thomas Citharel b210ed6990 Use \OC::$CLI instead of PHP_SAPI
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-04 11:34:33 +02:00
Thomas Citharel 6c2cde3d0c Fix password reset saying Admin changed my password when reset from
login page

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-04 11:16:39 +02:00
Joas Schilling f97a61aa14 Prevent harder to share your root
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-06-04 09:03:54 +00:00
Roeland Jago Douma 857b09e068 Merge pull request #21201 from nextcloud/backport/21181/stable18
[stable18] Do not only catch Exceptions but any Throwable during rmt share delete
2020-06-04 10:59:26 +02:00
Roeland Jago Douma 52cc0c7bb4 Merge pull request #21184 from nextcloud/version/18.0.5/final
18.0.5
2020-06-04 08:26:16 +02:00
Nextcloud bot d1e606aebd [tx-robot] updated from transifex 2020-06-04 02:16:35 +00:00
Daniel Calviño Sánchez 1d7cc2e356 Restore previous state when failing to change video verification state
When video verification can not be enabled or disabled the previous
state is set again in the JavaScript share object. This ensures that the
UI will not reflect a misleading state.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
2020-06-03 14:18:33 +00:00
Christoph Wurst d41e5778a0 Fix the Talk verification
When enabling or disabling Talk verification in mail shares the server
expects also a new password to be set. As we always just update one
property at a time this means the Talk verification was impossible to
activate or deactivate. With this patch, we send the talk option AND the
new password. If there is no new password, the Talk option is disabled
(in mail shares; in link shares it is possible to enable or disable the
video verification without changing the password).

When we finally have descriptive text on ActionCheckbox'es we should
definitely add some explanatory text for the user. Right now this is as
good as it gets.

We'll have to backport to 18.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-06-03 13:55:35 +00:00
Christoph Wurst fab0888fb2 Do not only catch Exceptions but any Throwable during rmt share delete
When a remote share is deleted, we notify the remove instance. This may
trigger various error conditions, which we want to catch in order to
avoid undeletable shares. The try-catch, however, did only capture
exceptions, so things like TypeErrors were not caught and caused the
process to fail hard.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-06-03 09:15:55 +00:00
Nextcloud bot 7e8803ba9f [tx-robot] updated from transifex 2020-06-03 02:16:28 +00:00
Roeland Jago Douma c754706112 18.0.5
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-06-02 09:31:16 +02:00
Nextcloud bot db16e67e05 [tx-robot] updated from transifex 2020-06-02 02:16:11 +00:00
Nextcloud bot 802de535c6 [tx-robot] updated from transifex 2020-06-01 02:16:10 +00:00
Nextcloud bot bdff0fad1f [tx-robot] updated from transifex 2020-05-31 02:16:28 +00:00
Nextcloud bot 556a9e88f0 [tx-robot] updated from transifex 2020-05-30 02:16:15 +00:00
Daniel Calviño Sánchez 7566aa9c86 Add integration tests for video verification
Enabling the "send password by Talk" property of shares require that
Talk is installed and enabled, so the Drone step that runs them has to
first clone the Talk repository.

When the integration tests are run on a local development instance,
however, it is not guaranteed that Talk is installed. Due to this the
"@Talk" tag was added, which ensures that any feature or scenario marked
with it will first check if Talk is installed and, if not, skip the
scenario (instead of failing).

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2020-05-29 19:38:28 +00:00
Daniel Calviño Sánchez 7039cde7ee Add integration tests for creating and updating a mail share
In most cases, when a mail share is created or updated an e-mail is sent
to the sharee, which is done by connecting to the SMTP server set in the
configuration. If the server can not be contacted then the creation or
update of the mail share fails.

To make possible to test mail shares without using a real SMTP server a
fake one has been added. The original script, which is MIT licensed, was
based on inetd, so it was slightly modified to run on its own.

In order to use it from the integration tests the "Given dummy mail
server is listening" step has to be called in the scenarios in which the
mail server is needed.

For now that is the only available step; things like checking the sent
mails, while possible (as the script can log the mails to certain file),
have not been added yet.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2020-05-29 19:38:28 +00:00
Daniel Calviño Sánchez e8d0b18f0b Generalize integration test steps to download last share
Note that the "last link share can be downloaded" step was kept as it
tests the "url" property specific of link shares.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2020-05-29 19:38:28 +00:00
Daniel Calviño Sánchez 01320f04d0 Remove unused variables
The step names were adjusted accordingly.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2020-05-29 19:38:28 +00:00
Daniel Calviño Sánchez fb271d6b81 Fix disabling send password by Talk without new password in mail shares
When "send password by Talk" was disabled in a mail share it was
possible to keep the same password as before, as it does not pose any
security issue (unlike keeping it when "send password by Talk" is
enabled, as in that case the password was already disclosed by mail).

However, if a mail share is updated but the password is not set again
only the hashed password will be available. In that case it would not
make sense to send the password by mail, so now the password must be
changed when disabling "send password by Talk".

Note that, even if explicitly setting the same password again along with
the "send password by Talk" property would work, this was also prevented
for simplicity.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2020-05-29 19:38:28 +00:00
Daniel Calviño Sánchez 6e19f53173 Fix enabling send password by Talk with same password in mail shares
When "send password by Talk" is enabled in a mail share a new password
must be also set. However, when the passwords of the original and the
new share were compared it was not taken into account that the original
password is now hashed, while the new one is not (unless no new password
was sent, in which case the password of the original share was set in
the new share by the controller, but that was already prevented due to
both passwords being literally the same), so it was possible to set the
same password again.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2020-05-29 19:38:28 +00:00
Daniel Calviño Sánchez 57663d19f1 Fix enabling send password by Talk with empty password in link shares
When "send password by Talk" is enabled in a link share now a non empty
password is enforced.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2020-05-29 19:38:28 +00:00
Daniel Calviño Sánchez 73f1ea99ac Fix creating a mail share with a password
When a mail share was created with a password the given password was not
hashed, so it was not possible to open the share with that password.
Moreover, if passwords were enforced the given password was ignored and
a new one was set (although in this case it was hashed so it worked as
expected). Now the given password is properly hashed and not overriden.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2020-05-29 19:38:28 +00:00
Daniel Calviño Sánchez 65023a742a Extend mail shares unit tests to check the password and mail template
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2020-05-29 19:38:28 +00:00
Morris Jobke 29fea4fc57 Merge pull request #21159 from nextcloud/revert-21152-backport/21143/stable18
Revert "[stable18] Fix password changes in link and mail shares"
2020-05-29 21:36:10 +02:00
Morris Jobke 555108dc65 Revert "[stable18] Fix password changes in link and mail shares" 2020-05-29 21:35:57 +02:00
Morris Jobke c31b2d6ce1 Merge pull request #21152 from nextcloud/backport/21143/stable18
[stable18] Fix password changes in link and mail shares
2020-05-29 21:34:52 +02:00
Daniel Calviño Sánchez b5ffa2ea3d Add integration tests for video verification
Enabling the "send password by Talk" property of shares require that
Talk is installed and enabled, so the Drone step that runs them has to
first clone the Talk repository.

When the integration tests are run on a local development instance,
however, it is not guaranteed that Talk is installed. Due to this the
"@Talk" tag was added, which ensures that any feature or scenario marked
with it will first check if Talk is installed and, if not, skip the
scenario (instead of failing).

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2020-05-29 16:56:56 +02:00
Daniel Calviño Sánchez f5eb93e29a Add integration tests for creating and updating a mail share
In most cases, when a mail share is created or updated an e-mail is sent
to the sharee, which is done by connecting to the SMTP server set in the
configuration. If the server can not be contacted then the creation or
update of the mail share fails.

To make possible to test mail shares without using a real SMTP server a
fake one has been added. The original script, which is MIT licensed, was
based on inetd, so it was slightly modified to run on its own.

In order to use it from the integration tests the "Given dummy mail
server is listening" step has to be called in the scenarios in which the
mail server is needed.

For now that is the only available step; things like checking the sent
mails, while possible (as the script can log the mails to certain file),
have not been added yet.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2020-05-29 15:24:53 +02:00
Daniel Calviño Sánchez c8dafceb36 Generalize integration test steps to download last share
Note that the "last link share can be downloaded" step was kept as it
tests the "url" property specific of link shares.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2020-05-29 15:23:15 +02:00
Daniel Calviño Sánchez 8349172c64 Remove unused variables
The step names were adjusted accordingly.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2020-05-29 15:21:27 +02:00
Daniel Calviño Sánchez d6f1937502 Fix disabling send password by Talk without new password in mail shares
When "send password by Talk" was disabled in a mail share it was
possible to keep the same password as before, as it does not pose any
security issue (unlike keeping it when "send password by Talk" is
enabled, as in that case the password was already disclosed by mail).

However, if a mail share is updated but the password is not set again
only the hashed password will be available. In that case it would not
make sense to send the password by mail, so now the password must be
changed when disabling "send password by Talk".

Note that, even if explicitly setting the same password again along with
the "send password by Talk" property would work, this was also prevented
for simplicity.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2020-05-29 14:42:16 +02:00
Daniel Calviño Sánchez 1c580351da Fix enabling send password by Talk with same password in mail shares
When "send password by Talk" is enabled in a mail share a new password
must be also set. However, when the passwords of the original and the
new share were compared it was not taken into account that the original
password is now hashed, while the new one is not (unless no new password
was sent, in which case the password of the original share was set in
the new share by the controller, but that was already prevented due to
both passwords being literally the same), so it was possible to set the
same password again.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2020-05-29 14:42:16 +02:00
Daniel Calviño Sánchez 26e4c292c7 Fix enabling send password by Talk with empty password in link shares
When "send password by Talk" is enabled in a link share now a non empty
password is enforced.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2020-05-29 14:42:16 +02:00
Daniel Calviño Sánchez 149d2b0013 Fix creating a mail share with a password
When a mail share was created with a password the given password was not
hashed, so it was not possible to open the share with that password.
Moreover, if passwords were enforced the given password was ignored and
a new one was set (although in this case it was hashed so it worked as
expected). Now the given password is properly hashed and not overriden.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2020-05-29 14:42:16 +02:00
Daniel Calviño Sánchez ff810f8e23 Extend mail shares unit tests to check the password and mail template
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2020-05-29 14:42:16 +02:00
Nextcloud bot bb107a1f6f [tx-robot] updated from transifex 2020-05-29 02:16:39 +00:00
Arthur Schiwon 5f1cfbc4ac simplify getGroups, fixing wrong chunking logic
pagination is taken care of properly in the search logic in Access class

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-05-28 20:12:39 +02:00
Roeland Jago Douma baa118898f Merge pull request #21061 from nextcloud/version/18.0.5/RC1
18.0.5 RC1
2020-05-28 16:38:01 +02:00
Roeland Jago Douma 876479799e Merge pull request #21109 from nextcloud/backport/19793/stable18
[stable18] Fix resharing of federated shares that were created out of links
2020-05-28 16:37:28 +02:00
Christoph Wurst 852b0ba19d Merge pull request #21127 from nextcloud/fix/make-translation-sanitization-optional-stable18
[stable18] Make the translation sanitization optional
2020-05-28 09:20:03 +02:00
Roeland Jago Douma 6e911c4ad9 Merge pull request #21132 from nextcloud/backport/20933/stable18
[stable18] Move the password confirmation form template to post
2020-05-28 08:17:01 +02:00
Nextcloud bot 8718e0776d [tx-robot] updated from transifex 2020-05-28 02:16:48 +00:00
Roeland Jago Douma b6ab18b311 Move the password confirmation form template to post
I know we use JS for this. But it triggers some false positives on
testing.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-05-27 17:58:10 +00:00
Christoph Wurst e2bc5ae74e Fix devices & sessions sanitization
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-05-27 16:17:21 +02:00
Christoph Wurst 0084483a36 Make the translation sanitization optional
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-05-27 16:05:25 +02:00
blizzz c7c7433f11 Merge pull request #21115 from nextcloud/backport/21106/stable18
[stable18] use the loginname to verify the old password in user password changes
2020-05-27 10:18:58 +02:00
Nextcloud bot fdb58f1852 [tx-robot] updated from transifex 2020-05-27 02:16:21 +00:00
Arthur Schiwon 292d8c3d9c use the loginname to verify the old password in user password changes
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-05-26 19:22:33 +00:00
Roeland Jago Douma 4aed6971fe Merge pull request #21096 from nextcloud/backport/21090/stable18
[stable18] Do not read certificate bundle from data dir by default
2020-05-26 11:44:15 +02:00
John Molakvoæ (skjnldsv) 9d422a2d9a Fix federated link sharing permissions
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
2020-05-26 11:30:09 +02:00
Julius Härtl 9a1275b5b9 Fix share update test
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-05-26 11:28:42 +02:00
Roeland Jago Douma 20c47cf7d8 Update public link share permission code
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-05-26 11:28:42 +02:00
Roeland Jago Douma 04b02572c3 Have share permissions on link shares if it is enabled
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-05-26 11:28:42 +02:00
Julius Härtl 4b7b102761 Adjust integration tests to new permissions
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-05-26 11:28:42 +02:00
Julius Härtl a8229421df Remove unneeded test since links have resharing permissions by default
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-05-26 11:28:42 +02:00
Julius Härtl 4a2ded0199 Link shares have reshare permission if outgoing federated shares are enabled
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-05-26 11:28:42 +02:00
Julius Härtl 5b74da3a87 Set proper share type when converting link shares to federated shares
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-05-26 11:28:41 +02:00
Nextcloud bot 17183f0aac [tx-robot] updated from transifex 2020-05-26 02:16:13 +00:00
Morris Jobke de1cbad0ee Merge pull request #20881 from nextcloud/backport/20841/stable18
[stable18] add locking to resolve concurent move to trashbin conflicts
2020-05-25 21:31:36 +02:00
Morris Jobke 64df6aaf85 Do not read certificate bundle from data dir by default
Before the resources/config/ca-bundle.crt was only used when the list of custom
certificates was empty and the instance was not installed. But it should also
be used when the list is empty and the instance is installed.

This is inverting the logic to stop if the instance is not installed to use the
default bundle. And it also does this when the list is empty.

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-05-25 17:53:23 +00:00
Morris Jobke 1d816add44 Merge pull request #20965 from nextcloud/backport/20033/stable18
[stable18] Enable fseek for files in S3 storage
2020-05-25 13:38:04 +02:00
Nextcloud bot 4e8f72726a [tx-robot] updated from transifex 2020-05-25 02:16:31 +00:00
Nextcloud bot f6372e3cb6 [tx-robot] updated from transifex 2020-05-24 02:16:04 +00:00
Nextcloud bot 120a7a7e23 [tx-robot] updated from transifex 2020-05-23 02:16:31 +00:00
Robin Appelman 3d3ee1bfae harden seekable http stream a bit against failures
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-05-22 15:29:43 +02:00
Nextcloud bot 588fa72207 [tx-robot] updated from transifex 2020-05-22 02:17:31 +00:00
Roeland Jago Douma 974d3cf8f5 18.0.5 RC1
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-05-21 09:36:46 +02:00
Nextcloud bot 8529fbae9b [tx-robot] updated from transifex 2020-05-21 02:17:37 +00:00
Robin Appelman 25f5a5e575 update autoloader
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-05-20 22:59:08 +02:00
Robin Appelman 136a716df0 add basic tests for s3 seeking and add some error handling if reopen return the wrong range
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-05-20 22:58:58 +02:00
Robin Appelman 8434d0af9f make seekable s3 stream generic
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-05-20 22:57:36 +02:00
Lukas Stabe 7a62514c31 Enable fseek for files in S3 storage
Signed-off-by: Lukas Stabe <lukas@stabe.de>
2020-05-20 22:57:30 +02:00
Morris Jobke c2acfb9bf5 Merge pull request #21053 from nextcloud/backport/21050/stable18
[stable18] Caching and compression for app store requests
2020-05-20 13:23:39 +02:00
Morris Jobke d26c5103e6 Compress the appstore requests by default
In test it reduced the transfered data from 5 MB to 2 MB. This should reduce the load on the appstore significantly.

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-05-20 11:18:19 +02:00
Morris Jobke f7b39e13a2 Cache appstore requests for 60 instead of 5 minutes
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-05-20 11:18:19 +02:00
Nextcloud bot d6fa810331 [tx-robot] updated from transifex 2020-05-20 02:16:38 +00:00
Roeland Jago Douma 671f4a6b88 Merge pull request #21030 from nextcloud/backport/21003/stable18
[stable18] Remove entries from locales.json incompatible with punic
2020-05-19 11:58:59 +02:00
Nextcloud bot 6090c75d90 [tx-robot] updated from transifex 2020-05-19 02:17:20 +00:00
Roeland Jago Douma f633336904 Merge pull request #20996 from nextcloud/backport/20629/stable18
[stable18] Don't load text file preview when text app is available (Fixes: #20615)
2020-05-18 12:30:13 +02:00
Daniel Kesselberg 1eead35e8d Remove entries from locales.json incompatible with punic
As reported at https://github.com/nextcloud/server/issues/20999 the list contains en_US_POSIX as locale but punic is unable to parse such a locale. If you select that locale everyone is confused.

Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2020-05-18 09:54:02 +00:00
Morris Jobke 883e519608 Merge pull request #20994 from nextcloud/backport/19540/stable18
[stable18] Fix issues with Keystone auth v3 in files_external app
2020-05-18 11:52:12 +02:00
Morris Jobke 9033d57e39 Merge pull request #20992 from nextcloud/backport/20941/stable18
[stable18] update icewind/smb to 3.2.4
2020-05-18 11:03:54 +02:00
Nextcloud bot fd4bf6fa50 [tx-robot] updated from transifex 2020-05-18 02:16:32 +00:00
Nextcloud bot ecbd06cb6b [tx-robot] updated from transifex 2020-05-17 02:17:08 +00:00
Nextcloud bot 02ccec2298 [tx-robot] updated from transifex 2020-05-16 02:17:24 +00:00
Jonas Meurer d2396de9db Don't load text file preview when text app is available (Fixes: #20615)
When opening a shared text document, the files_sharing app uses
internal preview support in case no other app to open the text file is
available.

So far, it only checks for the old files_texteditor app, not for the new
new text app. This commit fixes this by checking for both.

Signed-off-by: Jonas Meurer <jonas@freesources.org>
2020-05-15 17:48:57 +00:00
Robin Appelman 5d38e80cf0 update icewind/smb to 3.2.4
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-05-15 17:21:00 +02:00
Julien Lutran 1a990b9487 Fix issues with Keystone auth v3 in files_external app
Signed-off-by: Julien Lutran <julien.lutran@corp.ovh.com>
2020-05-15 15:19:36 +00:00
Roeland Jago Douma 62950e9f9b Merge pull request #20955 from nextcloud/httpcache-18
[stable18] Proxy server could cache http response when it is not private
2020-05-15 08:18:49 +02:00
Roeland Jago Douma afce3d8339 Merge pull request #20975 from nextcloud/dependabot/npm_and_yarn/build/stable18/handlebars-4.6.0
[Security] Bump handlebars from 4.5.3 to 4.6.0 in /build
2020-05-15 08:12:14 +02:00
Nextcloud bot c485215ca4 [tx-robot] updated from transifex 2020-05-15 02:17:29 +00:00
dependabot-preview[bot] b80214b344 [Security] Bump handlebars from 4.5.3 to 4.6.0 in /build
Bumps [handlebars](https://github.com/wycats/handlebars.js) from 4.5.3 to 4.6.0. **This update includes a security fix.**
- [Release notes](https://github.com/wycats/handlebars.js/releases)
- [Changelog](https://github.com/handlebars-lang/handlebars.js/blob/master/release-notes.md)
- [Commits](https://github.com/wycats/handlebars.js/compare/v4.5.3...v4.6.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-05-14 12:56:41 +00:00
Nextcloud bot 4004cbc305 [tx-robot] updated from transifex 2020-05-14 02:16:48 +00:00
Clement Wong 43351ecd29 Fix http cache test
Signed-off-by: Clement Wong <git@clement.hk>
2020-05-13 14:40:18 +02:00
Clement Wong 33e1a04601 Proxy server could cache http response when it is not private
Signed-off-by: Clement Wong <git@clement.hk>
2020-05-13 14:40:02 +02:00
Nextcloud bot b93b71dcb1 [tx-robot] updated from transifex 2020-05-13 02:16:36 +00:00
Morris Jobke de4a71c915 Merge pull request #20574 from nextcloud/backport/16035/stable18
[stable18] dont show remote and email options if we have an exact match for local user email
2020-05-12 21:05:58 +02:00
Robin Appelman e26c055fb4 dont show remote and email options if we have an exact match for local user email
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-05-12 16:30:48 +02:00
Morris Jobke 72b5775436 Merge pull request #20802 from nextcloud/backport/19124/stable18
[stable18] Exclude groups from sharing: Skip delete groups
2020-05-12 14:21:37 +02:00
Roeland Jago Douma 3142054de6 Merge pull request #20877 from nextcloud/backport/20719/stable18
[stable18] Fix languages empty array
2020-05-12 13:41:09 +02:00
Nextcloud bot 1046d4b145 [tx-robot] updated from transifex 2020-05-12 02:16:21 +00:00
Roeland Jago Douma 30a7c4fb6e Merge pull request #20924 from nextcloud/backport/20915/stable18
[stable18] Use random_bytes
2020-05-11 21:00:28 +02:00
Roeland Jago Douma 394ca6f7ce Merge pull request #20774 from nextcloud/backport/19743/stable18
[stable18] dont try to update storage mtime if we can't get the mtime
2020-05-11 16:43:47 +02:00
GretaD d8338275c8 Fix languages empty array
Signed-off-by: GretaD <gretadoci@gmail.com>
2020-05-11 15:04:01 +02:00
Roeland Jago Douma b02a79b327 Use random_bytes
Since we don't care if it is human readbale.
The code is backwards compatible with the old format.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-05-11 12:24:59 +00:00
Roeland Jago Douma a30b0e125c Merge pull request #20747 from nextcloud/backport/20718/stable18
[stable18] Add a wrapper to fall back to the share owner on public shares
2020-05-11 13:14:17 +02:00
Nextcloud bot 7727e0d4b8 [tx-robot] updated from transifex 2020-05-11 02:16:21 +00:00
Nextcloud bot 8077ff1142 [tx-robot] updated from transifex 2020-05-10 02:16:11 +00:00
Roeland Jago Douma 14cf345801 Merge pull request #20886 from nextcloud/backport/20853/stable18
[stable18] Fix color-text-maxcontrast not passing WCAG AA
2020-05-09 09:53:14 +02:00
Nextcloud bot 7456d67df0 [tx-robot] updated from transifex 2020-05-09 02:16:46 +00:00
Jan-Christoph Borchardt bc3f1cab9c Fix color-text-maxcontrast not passing WCAG AA
Signed-off-by: Jan-Christoph Borchardt <hey@jancborchardt.net>
2020-05-09 01:10:33 +00:00
Robin Appelman c04fc3a732 add locking to resolve concurent move to trashbin conflicts
uses a lock to prevent two requests from moving a file to the trashbin concurrently
(causing sql duplicate key errors)

Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-05-08 11:29:50 +00:00
Nextcloud bot d460f4fc5a [tx-robot] updated from transifex 2020-05-08 02:16:16 +00:00
Nextcloud bot 88bad0fe68 [tx-robot] updated from transifex 2020-05-07 02:16:24 +00:00
Morris Jobke e2543697ab Merge pull request #20805 from nextcloud/backport/20640/stable18
[stable18] Correctly hide table headers in filepicker
2020-05-06 11:48:38 +02:00
John Molakvoæ 7a8db43e46 Merge pull request #20830 from nextcloud/backport/20825/stable18 2020-05-06 09:03:01 +02:00
Nextcloud bot 12e67a306c [tx-robot] updated from transifex 2020-05-06 02:16:39 +00:00
John Molakvoæ (skjnldsv) 1c2ba4891d Fix filtering our owner & current user from shares
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
2020-05-05 16:27:33 +00:00
Nextcloud bot 6b96fe9be5 [tx-robot] updated from transifex 2020-05-05 02:16:25 +00:00
Morris Jobke 2212315d30 Merge pull request #20808 from nextcloud/backport/20807/stable18
[stable18] clarified trash bin retention by storage shortage override in config.sample.php
2020-05-04 14:07:47 +02:00
Sascha Wiswedel c9fa25c18a clarified trash bin retention by storage shortage override
Signed-off-by: Sascha Wiswedel <sascha.wiswedel@nextcloud.com>
2020-05-04 11:40:07 +00:00
Raimund Schlüßler 9f9bdf8b43 Correctly hide table headers in filepicker
Signed-off-by: Raimund Schlüßler <raimund.schluessler@mailbox.org>
2020-05-04 09:52:54 +00:00
Daniel Kesselberg 55a237611e Ignore delete groups
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2020-05-04 08:05:24 +00:00
Nextcloud bot bacd9c4e6b [tx-robot] updated from transifex 2020-05-04 02:16:28 +00:00
Nextcloud bot b7b6d0e573 [tx-robot] updated from transifex 2020-05-03 02:16:25 +00:00
Nextcloud bot e96858d98b [tx-robot] updated from transifex 2020-05-02 02:16:43 +00:00
Robin Appelman 3998f94ec0 dont try to update storage mtime if we can't get the mtime
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-05-01 16:22:50 +00:00
Roeland Jago Douma de43edca3b Merge pull request #20763 from nextcloud/backport/20710/stable18
[stable18] Fix Argon2 options checks
2020-05-01 14:43:26 +02:00
Roeland Jago Douma 78dbf5df85 Merge pull request #20635 from nextcloud/backport/20587/stable18
[stable18] Allow specifying a default expiration date
2020-05-01 13:03:41 +02:00
MichaIng e5f1523577 Fix Argon2 options checks
The minimum for memory cost is 8 KiB per thread. Threads must be checked and set first to allow checking against the correct memory cost mimimum.
Options are now applied the following way:
- If config.php contains the setting with an integer higher or equal to the minimum, it is applied.
- If config.php contains the setting with an integer lower than the minimum, the minimum is applied.
- If config.php does not contain the setting or with no integer value, the PHP default is applied.

Signed-off-by: MichaIng <micha@dietpi.com>
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-05-01 09:37:24 +00:00
Roeland Jago Douma d3b95177dd Fix owner on publicownerwrapper
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-05-01 11:21:36 +02:00
Roeland Jago Douma 7b0819c511 Allow specifying a default expiration date
This overrides the max expiration date.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-05-01 09:14:25 +02:00
Roeland Jago Douma cfd6f0b6fb Merge pull request #20740 from nextcloud/backport/20262/stable18
[stable18] Allow to navigate to others with access from the sidebar
2020-05-01 09:08:59 +02:00
Roeland Jago Douma acf9b2fa0d Merge pull request #20750 from nextcloud/backport/20744/stable18
[stable18] Fix public layout header title & description
2020-05-01 09:07:26 +02:00
Nextcloud bot e8976b8e34 [tx-robot] updated from transifex 2020-05-01 02:16:58 +00:00
John Molakvoæ (skjnldsv) 8436c1c280 Fix public layout header title & description
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2020-04-30 19:21:53 +02:00
Roeland Jago Douma 81642dfb9d Add a wrapper to fall back to the share owner on public shares
Else it might happen that we setup a storage that has no real owner and
activities do boom etc (looking at you groupfolders and external
storages!).

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-04-30 12:43:14 +00:00
Roeland Jago Douma 5d8c24009c Allow to navigate to others with access from the sidebar
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
2020-04-30 08:28:37 +00:00
Nextcloud bot f5da6c8f7a [tx-robot] updated from transifex 2020-04-30 02:17:21 +00:00
Morris Jobke 277a97ccd8 Merge pull request #20647 from nextcloud/backport/19002/stable18
[stable18] Fix security header setting in .htaccess by adding 'onsuccess unset'
2020-04-29 14:59:04 +02:00
Roeland Jago Douma b569f3c2c6 Merge pull request #20680 from nextcloud/backport/20632/stable18
[stable18] Only catch anonymous OPTIONS for Office
2020-04-29 10:09:49 +02:00
Nextcloud bot 988c562fe4 [tx-robot] updated from transifex 2020-04-29 02:17:05 +00:00
blizzz 37cd976405 Merge pull request #20701 from nextcloud/backport/20676/stable18
[stable18] Don't remove last user in ldap group when limit is -1
2020-04-28 20:43:49 +02:00
Morris Jobke 6eaf873bf7 Merge pull request #20703 from nextcloud/backport/20636/stable18
[stable18] Add tests for update notification controller for non-default updater …
2020-04-28 17:03:46 +02:00
Morris Jobke bab82ccea1 Add tests for update notification controller for non-default updater server URL
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-04-28 14:21:01 +00:00
Clement Wong 78571eb0c2 Don't remove last user in ldap group when limit is -1
Signed-off-by: Clement Wong <git@clement.hk>
2020-04-28 13:10:04 +02:00
Roeland Jago Douma c8973c662e Merge pull request #20682 from nextcloud/backport/20650/stable18
[stable18] Adhere to EMailTemplate interface in constructor call.
2020-04-28 11:30:49 +02:00
Nextcloud bot 82898e60fe [tx-robot] updated from transifex 2020-04-28 02:16:32 +00:00
Tekhnee 7c1abc54db Adhere to EMailTemplate interface in constructor call.
Email creation appears to have been refactored lately but it looks like custom template-based emails were left out.

Signed-off-by: Tekhnee <info@tekhnee.org>
2020-04-27 09:12:40 +00:00
Julius Härtl 4f44e39718 Only catch anonymous OPTIONS for Office
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-04-27 08:40:14 +00:00
Nextcloud bot 4e98587e05 [tx-robot] updated from transifex 2020-04-27 02:16:23 +00:00
Nextcloud bot 19e9d28fbd [tx-robot] updated from transifex 2020-04-26 02:16:22 +00:00
zertrin 814f19ae67 Fix security header setting in .htaccess by adding 'onsuccess unset'
The headers might already be set by the system administrator at the http server
level (apache or nginx) for some or all virtualhosts.

Using "always set" in the .htaccess of Nextcloud leads to the situation where
the headers might be set twice (once in the default 'onsuccess' table and once
in the 'always' table)! Which leads to warnings in the admin area.

Adding "onsuccess unset" solves the problem, and forces the header in
the 'onsucess' table to be unset, and the header in the 'always' table to be set.

NOTE: with this change, Nextcloud overrides whatever the system administrator
might have already set

See github issues #16893 #16476 #16938 #18017 and discussion in PR #19002

Signed-off-by: zertrin <zertrin@gmail.com>
2020-04-25 18:02:48 +00:00
Nextcloud bot 12ca86d8e2 [tx-robot] updated from transifex 2020-04-25 02:16:13 +00:00
Morris Jobke ddd7a8dba5 Merge pull request #20578 from nextcloud/backport/20449/stable18
[stable18] Array offset error due to empty file versions array
2020-04-24 14:44:21 +02:00
Nextcloud bot 7fe5c516b5 [tx-robot] updated from transifex 2020-04-24 02:28:07 +00:00
Morris Jobke 4bcbeffeb6 Merge pull request #20588 from nextcloud/backport/20564/stable18
[stable18] Set fileInfo correctly for LegacyTabs
2020-04-23 14:37:08 +02:00
Morris Jobke 62bfd9d945 Merge pull request #20596 from nextcloud/backport/20575/stable18
[stable18] Fix Sharing recommendation user display
2020-04-23 14:36:40 +02:00
Morris Jobke 9076ae8692 Merge pull request #20602 from nextcloud/backport/20595/stable18
[stable18] Fix IE11 upload fallback methods
2020-04-23 10:35:40 +02:00
Nextcloud bot 517a04612d [tx-robot] updated from transifex 2020-04-23 02:17:05 +00:00
John Molakvoæ (skjnldsv) 42e30b577f Fix IE11 upload fallback methods
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2020-04-22 20:09:06 +00:00
Roeland Jago Douma 1a1848c402 Merge pull request #20580 from nextcloud/version/18.0.4/final
18.0.4
2020-04-22 21:21:59 +02:00
John Molakvoæ (skjnldsv) b990b010fa Fix Sharing recommendation user display
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
2020-04-22 13:08:47 +00:00
Nextcloud bot 1e3698c8cf [tx-robot] updated from transifex 2020-04-22 02:17:16 +00:00
Christoph Seitz 185f867bf8 Set fileInfo correctly for LegacyTabs
Watch for changes of the fileInfo prop and propagate it to,
the underlying component.

Fixes #20106.

Signed-off-by: Christoph Seitz <christoph.seitz@posteo.de>
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
2020-04-21 13:04:07 +00:00
Roeland Jago Douma 2a496e155d 18.0.4
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-04-21 10:49:19 +02:00
Liam JACK d2dae7ccf6 Fix #19066 - Array offset error due to empty file versions array
Signed-off-by: Liam JACK <liamjack@users.noreply.github.com>
2020-04-21 08:46:52 +00:00
Nextcloud bot 2cf8fab366 [tx-robot] updated from transifex 2020-04-21 02:16:49 +00:00
Roeland Jago Douma 8730bc2b8d Merge pull request #20545 from nextcloud/version/18.0.4/RC2
18.0.4 RC2
2020-04-20 22:23:58 +02:00
Roeland Jago Douma fc09807ae6 Merge pull request #20512 from nextcloud/backport/20246/stable18
[stable18] Provide the proper language to the mailer
2020-04-20 20:31:30 +02:00
Roeland Jago Douma 1e29d6923d Merge pull request #20530 from nextcloud/backport/stable18/fix/allow_edit_admin_user
[18] Allow to edit admin user
2020-04-20 20:06:25 +02:00
Nextcloud bot e8f69b45eb [tx-robot] updated from transifex 2020-04-20 02:16:22 +00:00
Nextcloud bot c45c64a5c2 [tx-robot] updated from transifex 2020-04-19 02:16:19 +00:00
Daniel Kesselberg 792a642ca5 Allow to edit admin user
Signed-off-by: GretaD <gretadoci@gmail.com>
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>

(cherry picked from commit d17c58eeec)
2020-04-18 15:39:13 +02:00
John Molakvoæ b5a1621eba Merge pull request #20548 from nextcloud/backport/20470/stable18
[stable18] Fix jsunit tests
2020-04-18 14:56:05 +02:00
Roeland Jago Douma 7550043371 Provide the proper language to the mailer
Else we can't properly translate the footer in the recipients e-mail
language.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-04-18 11:37:05 +02:00
Daniel Kesselberg 1d6fefd67e Fix jsunit tests
JSUnit tests are failing for some reason. It seems to be related to a new karma-coverage version published a few hours ago.

Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2020-04-18 09:36:13 +00:00
Roeland Jago Douma 8b3e3752f2 Merge pull request #20531 from nextcloud/backport/20529/stable18
[stable18] Update list of multiple properties
2020-04-18 11:23:36 +02:00
Roeland Jago Douma 0bb032b168 18.0.4 RC2
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-04-18 11:11:42 +02:00
Nextcloud bot 46149ab80b [tx-robot] updated from transifex 2020-04-18 02:16:37 +00:00
Roeland Jago Douma cd782737cb Merge pull request #20405 from nextcloud/backport/20363/stable18
[stable18] update icewind/smb to 3.2.3
2020-04-17 13:45:25 +02:00
John Molakvoæ (skjnldsv) 8f160bf02a Update list of multiple properties
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2020-04-17 13:02:21 +02:00
Nextcloud bot 0856745a47 [tx-robot] updated from transifex 2020-04-17 02:16:39 +00:00
John Molakvoæ 5779b1264c Merge pull request #20516 from nextcloud/backport/20505/stable18
[stable18] do not advertise nulled userId for for systemwide credentials
2020-04-16 21:30:04 +02:00
Arthur Schiwon 249d3a828c fix credentialsManager documentation and ensure userId to be used as string
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-04-16 09:54:49 +00:00
Arthur Schiwon a544996910 add DB tests for credentials manager
these are actually expected to FAIL, because NULL as a userid is not
allowed in the schema, but documented to be used on the source

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-04-16 09:54:49 +00:00
Nextcloud bot 73ef2f3e86 [tx-robot] updated from transifex 2020-04-16 02:17:41 +00:00
Roeland Jago Douma 6571190030 Merge pull request #20456 from nextcloud/version/18.0.4/RC1
18.0.4 RC1
2020-04-15 20:26:03 +02:00
Roeland Jago Douma 65c6680e86 Merge pull request #20483 from nextcloud/backport/19936/stable18
[stable18] Handle unset owner in sharing
2020-04-15 20:20:29 +02:00
Roeland Jago Douma ae2b5a38ea Merge pull request #20493 from nextcloud/backport/20361/stable18
[stable18] Close the streams in `writeStream` even when there is an exception
2020-04-15 20:19:12 +02:00
John Molakvoæ 41ef012804 Merge pull request #20495 from nextcloud/backport/20401/stable18
[stable18] Fix absolute redirect
2020-04-15 15:23:12 +02:00
John Molakvoæ (skjnldsv) 8d72a2adef Fix absolute redirect
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2020-04-15 09:30:10 +00:00
Robin Appelman adf88bb418 Close the streams in writeStream even when there is an exception
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-04-15 08:49:53 +00:00
Morris Jobke 7d412b5733 Merge pull request #20485 from nextcloud/backport/20474/stable18
[stable18] Update root.crl due to revocation of spgverein.crt
2020-04-15 08:30:24 +02:00
Nextcloud bot 6ccdbd912c [tx-robot] updated from transifex 2020-04-15 02:17:23 +00:00
Roeland Jago Douma 4742458c2f Merge pull request #20471 from nextcloud/backport/20469/stable18
[stable18] Properly display share error messages
2020-04-14 20:56:12 +02:00
Morris Jobke fada22e328 Update root.crl due to revocation of spgverein.crt
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-04-14 18:40:01 +00:00
Joas Schilling a717b38576 Handle unset owner in sharing
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-04-14 18:37:12 +00:00
Morris Jobke 276a650d0f Merge pull request #20163 from nextcloud/backport/19782/stable18
[stable18] Use global used space in quota wrappen when external storage is included
2020-04-14 14:08:20 +02:00
Morris Jobke 69960c860a Merge pull request #20102 from nextcloud/backport/18679/stable18
[stable18] fix OCA\DAV\CalDAV\CalDavBackend search $options
2020-04-14 14:02:53 +02:00
Roeland Jago Douma 34fc46251f Merge pull request #20282 from nextcloud/backport/19180/stable18
[stable18] Check for empty authorization headers for office requests
2020-04-14 11:37:44 +02:00
John Molakvoæ (skjnldsv) 620409df01 Properly display share error messages
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
2020-04-14 09:35:35 +00:00
Roeland Jago Douma 734c1a4649 Merge pull request #20334 from nextcloud/backport/20284/stable18
[stable18] Properly catch NoUserException during upload cleanup
2020-04-14 10:59:24 +02:00
Nextcloud bot b6e3512ab5 [tx-robot] updated from transifex 2020-04-14 02:16:59 +00:00
Roeland Jago Douma c6ea250411 Merge pull request #20420 from nextcloud/backport/19952/translate-web-standards
[18] Use a normal string to translate.
2020-04-13 20:11:14 +02:00
Roeland Jago Douma 4b6ee6f8f1 18.0.4 RC1
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-04-13 13:18:24 +02:00
Roeland Jago Douma e7c21e7472 Merge pull request #20433 from nextcloud/backport/20035/stable18
[stable18] Make sure group management works with all types of group names
2020-04-13 12:50:59 +02:00
Nextcloud bot 1d27b80ac3 [tx-robot] updated from transifex 2020-04-13 02:19:54 +00:00
Nextcloud bot c07f860ff9 [tx-robot] updated from transifex 2020-04-12 03:09:26 +00:00
Julius Härtl ed3aba1561 Add tests for encoded group id
Signed-off-by: Julius Härtl <jus@bitgrid.net>
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
2020-04-11 07:31:52 +00:00
Julius Härtl 73cfc8dff9 Make sure the group id parameter gets properly encoded when used in URLs
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-04-11 07:21:51 +00:00
Julius Härtl b97a3061ca Make the groupId url encoded
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-04-11 07:21:51 +00:00
Nextcloud bot b5aa8d0b0b [tx-robot] updated from transifex 2020-04-11 02:18:47 +00:00
Roeland Jago Douma d68e2efb9d Merge pull request #20407 from nextcloud/backport/19435/stable18
[stable18] Add text restore after restore icon
2020-04-10 15:57:48 +02:00
npmbuildbot[bot] 5516f0f7e4 Compile assets
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
2020-04-10 10:19:40 +00:00
Daniel Kesselberg e217aa2743 Use a normal string to translate.
Somehow the multi line strings are still a problem for t.

Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2020-04-10 12:08:58 +02:00
GretaD 6d0ed575c4 Add text restore after restore icon
Signed-off-by: GretaD <gretadoci@gmail.com>
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
2020-04-10 09:52:11 +00:00
Robin Appelman c9696edb74 update icewind/smb to 3.2.3
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-04-10 11:30:11 +02:00
John Molakvoæ 3d24b56ba5 Merge pull request #20387 from nextcloud/backport/20376/fix/tags-ellipsis
[stable18] Fix systemtags overflow
2020-04-10 08:37:07 +02:00
Roeland Jago Douma 994ecd7152 Merge pull request #20382 from nextcloud/backport/20355/fix/comments/clear-input/19585
[stable18] Clear comment on successful post
2020-04-10 08:36:14 +02:00
Roeland Jago Douma 000d62a4a5 Merge pull request #20366 from nextcloud/backport/20360/stable18
[stable18] Try to use the display name of file transfers
2020-04-10 08:35:21 +02:00
Nextcloud bot 8f90f4d89a [tx-robot] updated from transifex 2020-04-10 02:18:34 +00:00
John Molakvoæ (skjnldsv) d9b72bf571 Fix systemtags overflow
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
2020-04-09 13:33:39 +00:00
John Molakvoæ (skjnldsv) 4bbcc0f0af Clear comment on successful post
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
2020-04-09 11:58:09 +00:00
Nextcloud bot 9b9dc6d644 [tx-robot] updated from transifex 2020-04-09 02:18:36 +00:00
Joas Schilling 69faf60bd5 Show the displayname instead of the user id
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-04-08 17:38:14 +00:00
Joas Schilling ed4927a266 Try to use the display name of file transfers
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-04-08 17:38:14 +00:00
Roeland Jago Douma e2b96a150f Merge pull request #20335 from nextcloud/backport/19655/stable18
[stable18] Catch NotFoundException when getting the user folder
2020-04-08 16:45:02 +02:00
Nextcloud bot 014616ea7d [tx-robot] updated from transifex 2020-04-08 02:18:55 +00:00
Nextcloud bot 877f3a1f12 [tx-robot] updated from transifex 2020-04-07 02:18:20 +00:00
Julius Härtl 7c71cf6622 Catch NotFoundException when getting the user folder
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-04-06 16:51:52 +00:00
Julius Härtl ab699661ce Properly hint exceptions thrown by getUserFolder
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-04-06 16:47:55 +00:00
Julius Härtl 1db2efe805 Catch NoUserException when running the upload cleanup as cronjob
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-04-06 16:47:54 +00:00
Nextcloud bot 0401c350e6 [tx-robot] updated from transifex 2020-04-06 02:18:13 +00:00
Nextcloud bot 33ee579031 [tx-robot] updated from transifex 2020-04-05 02:18:13 +00:00
Roeland Jago Douma 1fda7cef88 Merge pull request #20296 from nextcloud/backport/20293/stable18
[stable18] fixes the return type of BeforeUserLoggedInEvent
2020-04-04 21:35:55 +02:00
Roeland Jago Douma f817cd831a Merge pull request #20175 from nextcloud/backport/20123/stable18
[stable18] Bugfix - Prevent PHP Warning for count on null on LDAP
2020-04-04 10:36:57 +02:00
Roeland Jago Douma 4261cfb132 Merge pull request #20158 from nextcloud/backport/19930/stable18
[stable18] Add app config to disable user flows
2020-04-04 10:34:49 +02:00
Roeland Jago Douma b54b5a503e Merge pull request #20155 from nextcloud/backport/20117/stable18
[stable18] Close updatenotification channel selector on click outside
2020-04-04 10:34:11 +02:00
Roeland Jago Douma 28bac958fa Merge pull request #20148 from nextcloud/backport/19986/stable18
[stable18] RefreshWebcalService: randomly generate calendar-object uri
2020-04-04 10:33:46 +02:00
Nextcloud bot 4d9fa0213b [tx-robot] updated from transifex 2020-04-04 02:18:00 +00:00
Arthur Schiwon a93704c9cb fixes the return type of BeforeUserLoggedInEvent
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-04-03 19:30:37 +00:00
Nextcloud bot 3df6adb63d [tx-robot] updated from transifex 2020-04-03 12:08:26 +00:00
Julius Härtl ce8f194a2a Check for empty authorization headers for office requests and allow anonymous option on the whole tree
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-04-03 09:58:25 +00:00
Roeland Jago Douma 3c7e708ffd Merge pull request #20274 from nextcloud/fix/19127/ldap-silence-deprecation-stable18
silence LDAP deprecation logs in NC 18
2020-04-02 20:24:09 +02:00
Roeland Jago Douma ae08c56855 Merge pull request #20258 from nextcloud/backport/19781/stable18
[stable18] Dont always use the current users quota when calculating storage info
2020-04-02 19:22:31 +02:00
Arthur Schiwon 9359d8b0a4 silence LDAP deprecation logs in NC 18
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-04-02 16:51:12 +02:00
Robin Appelman bd5a8f7efb Dont always use the current users quota when calculating storage info
instead pass the quota as parameter.

Without this fix, when 'quota_include_external_storage' is enabled, the
webui will show the quota configured for the admin for every user
instead of the users quota

Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-04-01 12:26:29 +00:00
Roeland Jago Douma a9db39170a Merge pull request #20202 from nextcloud/backport/19978/stable18
[stable18] Actually check if the owner is not null
2020-04-01 09:50:03 +02:00
John Molakvoæ b2c616cc60 Merge pull request #20238 from nextcloud/backport/20234/stable18
[stable18] Remove Acrobat logo from PDF filetype icon
2020-03-31 12:09:50 +02:00
Jan-Christoph Borchardt 0f6f4cb178 Remove Acrobat logo from PDF filetype icon
Signed-off-by: Jan-Christoph Borchardt <hey@jancborchardt.net>
2020-03-31 06:49:36 +00:00
Nextcloud bot a1bc7891c5 [tx-robot] updated from transifex 2020-03-31 02:19:13 +00:00
Nextcloud bot 78ec3680c2 [tx-robot] updated from transifex 2020-03-30 02:18:44 +00:00
Nextcloud bot 63d9341844 [tx-robot] updated from transifex 2020-03-29 02:20:24 +00:00
Nextcloud bot 7ffe3b3465 [tx-robot] updated from transifex 2020-03-28 02:18:25 +00:00
Roeland Jago Douma 874c468c02 Actually check if the owner is not null
Else this can error out on storages that do not have an owner (e.g.
groupfolders).

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-03-27 13:51:47 +00:00
Roeland Jago Douma 918c64a200 Merge pull request #20195 from nextcloud/bump-version-18.0.3
Bump version on stable18
2020-03-27 10:25:06 +01:00
Joas Schilling 831d2536e8 Bump version on stable18
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-03-27 08:14:13 +01:00
Nextcloud bot 91a39ec03d [tx-robot] updated from transifex 2020-03-27 02:18:30 +00:00
Philipp Staiger 4b88ec9c93 single squashed commit for bug fix
Signed-off-by: Philipp Staiger <philipp@staiger.it>
2020-03-26 10:30:50 +00:00
Christoph Wurst 73bfc3af61 Merge pull request #20166 from nextcloud/backport/20127/stable18
[stable18] Check the user on remote wipe
2020-03-26 09:46:54 +01:00
Nextcloud bot a2dcf2c85b [tx-robot] updated from transifex 2020-03-26 02:18:44 +00:00
Joas Schilling 5aa47e5549 Check the user on remote wipe
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-03-25 15:50:12 +00:00
Roeland Jago Douma 87a91e6a4d Merge pull request #20161 from nextcloud/backport/20150/stable18
[stable18] Auto accept group shares for users added to a group
2020-03-25 15:49:05 +01:00
Robin Appelman 41a839a63d Use global used space in quota wrappen when external storage is included
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-03-25 13:18:59 +00:00
Roeland Jago Douma 87dac804f6 Auto accept group shares for users added to a group
In case auto accepting is enabled (the default). Users that are newly
added to a group should not have to accept those shares.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-03-25 12:06:39 +00:00
Julius Härtl aeff8a84f1 Add app config to disable user flows
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-03-25 10:46:08 +00:00
Gary Kim 493cc4c435 Close updatenotification channel selector on click outside
While the vue-click-outside package was set up and
imported, it wasn't being used yet.

This commit sets up to use vue-click-outside
on the channel selector in updatenotification

Signed-off-by: Gary Kim <gary@garykim.dev>
2020-03-25 18:27:12 +08:00
Georg Ehrke a2622e6e89 RefreshWebcalService: randomly generate calendar-object uri
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2020-03-25 07:13:01 +00:00
Roeland Jago Douma 1fd49180ec Merge pull request #20144 from nextcloud/backport/stable18/18818
[stable18] change quota design
2020-03-25 08:12:50 +01:00
Roeland Jago Douma 1ed78e6710 Merge pull request #20136 from nextcloud/backport/20019/stable18
[stable18] Fix language multiselect action
2020-03-25 08:12:31 +01:00
Nextcloud bot bf88c3d9d6 [tx-robot] updated from transifex 2020-03-25 02:18:37 +00:00
GretaD 281f52a747 Backport of 18818
Signed-off-by: GretaD <gretadoci@gmail.com>
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
2020-03-24 20:22:37 +00:00
Roeland Jago Douma e9a9646a46 Merge pull request #20140 from nextcloud/backport/20128/stable18
[stable18] Remove admin_notifications since it is obsolete since Nextcloud 14
2020-03-24 20:16:10 +01:00
Julius Härtl 6e7a833016 Remove admin_notifications since it is obsolete since Nextcloud 14
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-03-24 13:56:18 +00:00
GretaD 25766ff34e Fix language multiselect action
Signed-off-by: GretaD <gretadoci@gmail.com>
2020-03-24 10:52:19 +00:00
Nextcloud bot 5f8319677b [tx-robot] updated from transifex 2020-03-24 02:18:54 +00:00
Roeland Jago Douma 4ea22abfb6 Merge pull request #20104 from nextcloud/backport/20042/stable18
[stable18] fix dav browser error page not styled
2020-03-23 20:59:14 +01:00
Arthur Schiwon 45e96c0c64 use core templates for displaying dav errors in the browser
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-03-23 08:45:36 +00:00
Arthur Schiwon f11283ac4b fix dav browser error page not styled
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-03-23 08:45:36 +00:00
Nextcloud bot f886e7c848 [tx-robot] updated from transifex 2020-03-23 02:19:13 +00:00
Thomas Citharel 8d7411d5a0 Add check that DateTime parameters are of correct type
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-03-22 18:40:31 +00:00
Thomas Citharel 6598691a1d Add extra test case to exclude by timerange
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-03-22 18:40:31 +00:00
dartcafe 29a6a19709 Added test testSearch
Signed-off-by: dartcafe <github@dartcafe.de>
2020-03-22 18:40:31 +00:00
dartcafe 46932e06dc fix OCA\DAV\CalDAV\CalDavBackend search $options
Signed-off-by: dartcafe <github@dartcafe.de>
2020-03-22 18:40:31 +00:00
Roeland Jago Douma e7a2c7b1b9 Merge pull request #20046 from nextcloud/backport/20039/stable18
[stable18] fixes auto-detecting UUID attributes
2020-03-22 14:22:58 +01:00
Nextcloud bot 881c36f5c6 [tx-robot] updated from transifex 2020-03-22 02:18:46 +00:00
Roeland Jago Douma 3c7312a8ff Merge pull request #20044 from nextcloud/backport/20032/stable18
[stable18] Allow the video player on the hide download
2020-03-21 08:25:09 +01:00
Roeland Jago Douma b9e8251100 Merge pull request #20051 from nextcloud/backport/20049/stable18
[stable18] Force compatible dependency versions in acceptance tests
2020-03-21 08:23:28 +01:00
Roeland Jago Douma 8f51c630f0 Merge pull request #20060 from nextcloud/backport/20057/stable18
[stable18] Adjust acceptance tests to incoming shares being accepted by default
2020-03-21 08:10:38 +01:00
Nextcloud bot 51073eb941 [tx-robot] updated from transifex 2020-03-21 02:19:13 +00:00
Daniel Calviño Sánchez 2b42fbe63f Add acceptance test for accepting an incoming share
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2020-03-20 20:24:56 +00:00
Daniel Calviño Sánchez ba67eddabe Fix timeout capping
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2020-03-20 20:24:56 +00:00
Daniel Calviño Sánchez 4147595188 Revert (partially) "Accept incoming shares in acceptance tests"
This reverts commit f402e23448.

Since eb4c42d3d1 now shares are accepted
by default, so no notification is shown to accept them.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2020-03-20 20:24:56 +00:00
Daniel Calviño Sánchez 988c633246 Force compatible dependency versions in acceptance tests
behat/mink 1.8 and behat/mink-selenium2-driver 1.4 introduced behaviour
changes that broke the acceptance tests. Until the tests are updated to
work with the newer versions the last known versions are forced.

Note that some acceptance tests still fail after enforcing the
compatible versions, although that is caused by changes in the Nextcloud
server itself.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2020-03-20 14:49:55 +00:00
Arthur Schiwon 29495f0c6d fixes auto-detecting UUID attributes
the continue (and later the early return) avoided proper looping over the
attribute candidates.

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-03-20 10:07:54 +00:00
Joas Schilling 184155555b Allow the video player on the hide download
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-03-20 08:06:51 +00:00
Nextcloud bot ee5ed6a3ed [tx-robot] updated from transifex 2020-03-20 02:18:30 +00:00
Robin Appelman 1e302f0637 Merge pull request #20030 from nextcloud/backport/19242/stable18
[stable18] Handle long dav property paths by hashing them
2020-03-19 15:02:21 +00:00
Robin Appelman 41ae68a74a rebuild autoloader
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-03-19 12:44:25 +00:00
Robin Appelman 20e27c7fc5 fix tests
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-03-19 12:44:24 +00:00
Robin Appelman 3602a35972 remove the detour trough node and work with path directly
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-03-19 12:44:24 +00:00
Robin Appelman b641bb4601 use INode instead of Node for custom properties
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-03-19 12:44:24 +00:00
Robin Appelman 006bcda31a handle long property paths to hasing paths >250 chars
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-03-19 12:44:24 +00:00
Robin Appelman 0de4d35818 remove unused code
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-03-19 12:44:24 +00:00
Robin Appelman 60f300db0b test custom properties backend against real database
test behaviour not implementation

Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-03-19 12:44:23 +00:00
Robin Appelman b3fd76689a merge the two almost identical custom property backends
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-03-19 12:44:23 +00:00
Nextcloud bot 8a82c4fe77 [tx-robot] updated from transifex 2020-03-19 02:20:13 +00:00
Roeland Jago Douma b3b896dd96 Merge pull request #20016 from nextcloud/backport/19981/stable18
[stable18] Update the target when it isempty after sharing
2020-03-18 20:58:50 +01:00
blizzz 0e9178295a Merge pull request #20021 from nextcloud/backport/19932/stable18
[stable18] remove the requirement that everything that looks like a placeholder …
2020-03-18 18:20:03 +01:00
Robin Appelman bd201879ca remove the requirement that everything that looks like a placeholder is substituted
While maybe not common, `$` is a valid option in config fields

Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-03-18 16:11:27 +00:00
Roeland Jago Douma 5c984d958d Update the target when it isempty after sharing
Hooks that listen to it (audit log) benefit from having the target
properly set.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-03-18 12:38:00 +00:00
Roeland Jago Douma 5e184c58e2 Merge pull request #20008 from nextcloud/backport/19964/stable18
[stable18] Fix invalid instantiation of TemplateResponse if client not found
2020-03-18 13:36:10 +01:00
Joas Schilling 2c1de970bb Merge pull request #19999 from nextcloud/backport/19987/stable18
[stable18] Only do regular polling of storage statistics if session_keepalive is enabled
2020-03-18 12:49:40 +01:00
Nextcloud bot 711c0a0417 [tx-robot] updated from transifex 2020-03-18 02:21:17 +00:00
Roeland Jago Douma 6d0c8fc13b Merge pull request #20001 from nextcloud/backport/19989/stable18
[stable18] Fix single "ScopeContext" passed to "setScopes"
2020-03-17 21:27:02 +01:00
Daniel Kesselberg 280444b82f Fix invalid instantiation of TemplateResponse if client not found
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2020-03-17 18:39:32 +00:00
Roeland Jago Douma 4ce142202b Merge pull request #19998 from nextcloud/backport/19995/stable18
[stable18] Default value of lookupServerEnabled should be the same everywhere
2020-03-17 18:27:22 +01:00
Roeland Jago Douma 6f5a389f0f Merge pull request #19966 from nextcloud/backport/19954/stable18
[stable18] fix safari useragent for versions with 3 digits
2020-03-17 15:10:21 +01:00
Daniel Calviño Sánchez 2106e6ce04 Fix single "ScopeContext" passed to "setScopes"
"setScopes" expects an array, but a single "ScopeContext" was being
passed instead.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2020-03-17 14:09:58 +00:00
Julius Härtl dca0f7e760 Only do regular polling of storage statistics if session_keepalive is enabled
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-03-17 14:08:22 +00:00
Georg Ehrke 8143cf5fa3 Default value of lookupServerEnabled should be the same everywhere
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2020-03-17 14:07:39 +00:00
Roeland Jago Douma d5a8507359 Merge pull request #19982 from nextcloud/backport/19698/stable18
[stable18] Fix default action for deleted shares
2020-03-17 15:07:29 +01:00
Nextcloud bot ef515358ef [tx-robot] updated from transifex 2020-03-17 02:18:53 +00:00
GretaD 045314990e Fix default action for deleted shares
Signed-off-by: GretaD <gretadoci@gmail.com>
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
2020-03-16 13:33:29 +00:00
Nextcloud bot 34e590935a [tx-robot] updated from transifex 2020-03-16 02:21:20 +00:00
Roeland Jago Douma 97eb9c7543 Merge pull request #19933 from nextcloud/backport/19907/stable18
[stable18] Don't allow anchors and queries in remote urls
2020-03-15 13:39:01 +01:00
Pavel Krasikov cb45891538 fix safari useragent for versions with 3 digits
Signed-off-by: Pavel Krasikov <klonishe@gmail.com>
2020-03-15 12:16:49 +00:00
Roeland Jago Douma 7b5f56b216 Merge pull request #19940 from nextcloud/backport/19931/stable18
[stable18] fix external storage controller tests
2020-03-15 13:08:05 +01:00
Nextcloud bot 80852f9f66 [tx-robot] updated from transifex 2020-03-15 02:19:25 +00:00
Roeland Jago Douma de0784441d Merge pull request #19945 from nextcloud/dependabot/npm_and_yarn/stable18/acorn-6.4.1
[Security] Bump acorn from 6.3.0 to 6.4.1
2020-03-14 12:37:25 +01:00
Roeland Jago Douma c5f57984ac Merge pull request #19950 from nextcloud/backport/19937/stable18
[stable18] properly set 'hide_download' as integer
2020-03-14 12:36:49 +01:00
Robin Appelman 86dd724e10 properly set 'hide_download' as integer
the database field is a smallint, not a boolean.

fixes postgresql tests

Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-03-14 08:19:49 +00:00
Nextcloud bot c24a30e0d7 [tx-robot] updated from transifex 2020-03-14 02:18:14 +00:00
dependabot-preview[bot] 2f94a2c880 [Security] Bump acorn from 6.3.0 to 6.4.1
Bumps [acorn](https://github.com/acornjs/acorn) from 6.3.0 to 6.4.1. **This update includes a security fix.**
- [Release notes](https://github.com/acornjs/acorn/releases)
- [Commits](https://github.com/acornjs/acorn/compare/6.3.0...6.4.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-13 21:39:01 +00:00
Robin Appelman d54eca93b2 fix external storage controller tests
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-03-13 18:45:54 +00:00
Joas Schilling eb105e7eb4 Fix willReturnOnConsecutiveCalls
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-03-13 14:53:09 +00:00
Joas Schilling 8bae6937f8 Don't allow anchors and queries in remote urls
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-03-13 14:53:09 +00:00
Roeland Jago Douma 17722835c0 Merge pull request #19924 from nextcloud/backport/19910/stable18
[stable18] Do not use the instance name as user part of from mail addresses
2020-03-13 15:51:13 +01:00
Roeland Jago Douma caf68bd68b Merge pull request #19921 from nextcloud/backport/19914/stable18
[stable18] Properly respect hide download on sharebymail
2020-03-13 13:40:10 +01:00
Roeland Jago Douma 68169ac2f8 Merge pull request #19922 from nextcloud/backport/19915/stable18
[stable18] Use placeholder values for password fields in external storage webui
2020-03-13 13:39:44 +01:00
John Molakvoæ 97e7fdb6c6 Merge pull request #19897 from nextcloud/backport/19777/stable18
[stable18] Properly emit Viewer event on files and files_sharing
2020-03-13 11:55:52 +01:00
Julius Härtl 856b7a210e Do not use the instance name as user part of from mail addresses
This will cause issues since the theming name can contain characters
that are not allowed in the local part of the mail address (like spaces)

Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-03-13 10:48:51 +00:00
Joas Schilling cbdff5c816 Merge pull request #19886 from nextcloud/backport/19861/stable18
[stable18] Don't break when one remote share is down
2020-03-13 11:27:08 +01:00
Robin Appelman ca9272d147 Use placeholder values for password fields in external storage webui
This prevents the password from being sent to the webui.

While an admin will always be able to retrieve the passwords (as they
can do arbitrairy code execution by design) this prevents casual
password snooping

Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-03-13 09:56:03 +00:00
Roeland Jago Douma 7a1a3c7e75 Properly respect hide download on sharebymail
fixes #19484

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-03-13 09:17:56 +00:00
Roeland Jago Douma 16e0908fb7 Merge pull request #19916 from nextcloud/backport/19888/stable18
[stable18] Get correct mimetype on objectstores
2020-03-13 09:40:36 +01:00
Nextcloud bot f367168e8a [tx-robot] updated from transifex 2020-03-13 02:18:29 +00:00
Roeland Jago Douma ebba16a219 Get correct mimetype on objectstores
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-03-12 18:59:58 +00:00
Roeland Jago Douma b54fdae062 Merge pull request #19882 from nextcloud/backport/18555/stable18
[stable18]  Allow to edit admin/own user in the user management
2020-03-12 10:57:54 +01:00
Roeland Jago Douma 126ad3332a Merge pull request #19879 from nextcloud/backport/19173/stable18
[stable18] Use contacts name on federated activities
2020-03-12 10:28:35 +01:00
Roeland Jago Douma d9f3ed390a Merge pull request #19884 from nextcloud/backport/19704/stable18
[stable18] Fix hostname in Apple configuration profile
2020-03-12 10:27:44 +01:00
John Molakvoæ (skjnldsv) c4f1389289 Use dispatchTyped
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2020-03-12 07:48:20 +00:00
John Molakvoæ (skjnldsv) f74876eb3c Properly emit Viewer event on files and files_sharing
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2020-03-12 07:48:19 +00:00
John Molakvoæ (skjnldsv) 1125f1767c Fix import order and formatting
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2020-03-12 07:48:19 +00:00
Nextcloud bot b258e2f541 [tx-robot] updated from transifex 2020-03-12 02:19:13 +00:00
Roeland Jago Douma 93cae9d2d1 Merge pull request #19864 from nextcloud/version/18.0.2/final
18.0.2
2020-03-11 15:19:48 +01:00
Joas Schilling e96bb6c8bc Don't break when one remote share is down
getFileInfo can also return false

Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-03-11 08:38:14 +00:00
Nils Wittenbrink fb3cf8ca28 Fix test
Signed-off-by: Nils Wittenbrink <nilswittenbrink@web.de>
2020-03-11 08:31:47 +00:00
Nils Wittenbrink 372a3ddd50 Fix hostname given in Apple config file
Signed-off-by: Nils Wittenbrink <nilswittenbrink@web.de>
2020-03-11 08:31:46 +00:00
Julius Härtl e8a069e3dd Bump bundles
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-03-11 09:02:32 +01:00
Julius Härtl c3c3d218d5 Fix row height and display name input
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-03-11 09:01:35 +01:00
Julius Härtl 0e53b6983e Allow to edit admin/own user in the user management
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-03-11 09:01:27 +01:00
Nextcloud bot 9f8ca72feb [tx-robot] updated from transifex 2020-03-11 02:19:15 +00:00
Joas Schilling d2687d69ab Fix unit tests
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-03-10 19:32:05 +00:00
Joas Schilling 26568fa08b Unify the code a bit
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-03-10 19:32:05 +00:00
Joas Schilling 33b048dd1c Use contacts name on federated activities
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-03-10 19:32:05 +00:00
Nextcloud bot 06dd4affeb [tx-robot] updated from transifex 2020-03-10 02:18:22 +00:00
Roeland Jago Douma 048888be87 18.0.2
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-03-09 19:44:43 +01:00
Roeland Jago Douma 5f0b766cea Merge pull request #19833 from nextcloud/version/18.0.2/RC2
18.0.2 RC2
2020-03-09 15:44:18 +01:00
Roeland Jago Douma f3f56a97ea Merge pull request #19824 from nextcloud/backport/19763/stable18
[stable18] Fix "Error loading the shares list TypeError: "this is undefined"" fo…
2020-03-09 09:59:03 +01:00
Roeland Jago Douma a88da0c41f Merge pull request #19830 from nextcloud/backport/19815/stable18
[stable18] Prevent self-xss via invalid mysql user name on install screen
2020-03-09 09:03:57 +01:00
Roeland Jago Douma 7c98f98527 Merge pull request #19803 from nextcloud/backport/stable18/19769
[stable18] Fix avatar in file list for users with an @ in the uid
2020-03-09 09:03:15 +01:00
Nextcloud bot da96dee368 [tx-robot] updated from transifex 2020-03-09 02:18:17 +00:00
Nextcloud bot 7017055915 [tx-robot] updated from transifex 2020-03-08 02:18:37 +00:00
Roeland Jago Douma c53282f208 Merge pull request #19802 from nextcloud/backport/19440/stable18
[stable18] Fix filename and popover menu misalignment
2020-03-07 14:32:20 +01:00
Roeland Jago Douma 07a6266359 Merge pull request #19800 from nextcloud/backport/19721/stable18
[stable18] Fix regex for office documents
2020-03-07 14:31:53 +01:00
Roeland Jago Douma 70433a6a34 18.0.2 RC2
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-03-07 14:25:48 +01:00
Joas Schilling d056f7e110 Prevent self-xss via invalid mysql user name on install screen
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-03-07 13:21:09 +00:00
Nextcloud bot 54b6484f70 [tx-robot] updated from transifex 2020-03-07 02:18:06 +00:00
Joas Schilling ecef8abf65 Fix "Error loading the shares list TypeError: "this is undefined"" for conversation shares
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-03-06 16:58:32 +01:00
Julius Härtl ee56fb2438 Bump bundles
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-03-06 08:14:21 +01:00
Julius Härtl 3bc782cb0e Fix regex to not take email uids as federated ids
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-03-06 08:12:15 +01:00
GretaD 7dec977d48 Fix filename and popover menu misalignment
Signed-off-by: GretaD <gretadoci@gmail.com>
2020-03-06 07:04:18 +00:00
Nextcloud bot 0a897708d6 [tx-robot] updated from transifex 2020-03-06 02:18:33 +00:00
Daniel Kesselberg 6df5250288 Fix regex for office documents
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
2020-03-05 21:55:23 +00:00
Roeland Jago Douma e79aa2050c Merge pull request #19732 from nextcloud/version/18.0.2/RC1
18.0.2 RC1
2020-03-05 19:26:08 +01:00
Roeland Jago Douma ef3f48124b 18.0.2 RC1
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-03-05 15:35:19 +01:00
Roeland Jago Douma 8d88db3173 Merge pull request #19784 from nextcloud/backport/19392/stable18
[stable18] Introduce a default refresh rate app setting for calendar subscriptions
2020-03-05 14:31:52 +01:00
Thomas Citharel 4e4cff2052 Introduce a default refresh rate app setting for calendar subscriptions
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-03-05 08:20:10 +00:00
Roeland Jago Douma 89b795565c Merge pull request #19767 from nextcloud/backport/stable18/19533
[stable18] Various user settings fixes
2020-03-05 09:00:26 +01:00
Roeland Jago Douma 6d15db42db Merge pull request #19573 from nextcloud/backport/19398/stable18
[stable18] Move RefreshWebcalJob logic to a proper service so that it may be called independently
2020-03-05 08:59:57 +01:00
Roeland Jago Douma 56b46a8198 Merge pull request #19773 from nextcloud/backport/19764/stable18
[stable18] Do not allow transfer ownership when the user isn't the owner
2020-03-05 08:59:19 +01:00
Nextcloud bot d31c6d61af [tx-robot] updated from transifex 2020-03-05 02:18:29 +00:00
Gary Kim 00dd295c09 Do not allow transfer ownership when the user isn't the owner
Signed-off-by: Gary Kim <gary@garykim.dev>
2020-03-04 14:05:58 +08:00
Nextcloud bot 8607a9871c [tx-robot] updated from transifex 2020-03-04 02:18:01 +00:00
Roeland Jago Douma 5077b9318e Merge pull request #19744 from nextcloud/backport/19742/stable18
[stable18] Add message for DoesNotExistException
2020-03-03 20:23:49 +01:00
Roeland Jago Douma b126ccfcd8 Merge pull request #19762 from nextcloud/backport/stable18/19755-translate-tags
Fetch translate for Tags from files app
2020-03-03 16:17:37 +01:00
Julius Härtl 20074f62ad Bump bundles
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-03-03 15:56:38 +01:00
Julius Härtl 8584636dd7 Also fix actions overlay in editing and new user rows
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-03-03 15:54:58 +01:00
Julius Härtl 3d3a2f1f6d Properly position popovermenu for user actions
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-03-03 15:54:58 +01:00
Julius Härtl 74e704691c Add tooltip to storage location
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-03-03 15:54:57 +01:00
Julius Härtl e59d7ae35e Do not overlay single select boxes over userActions
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-03-03 15:54:57 +01:00
Julius Härtl f2cd93584f Show user/displayname when backend does not offer saving
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-03-03 15:54:57 +01:00
Julius Härtl c4a8887dca Give columns a bit more space and fix overlaying issues
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-03-03 15:54:57 +01:00
Julius Härtl 607f1166f1 Remove unused userlist table styles
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-03-03 15:54:57 +01:00
Roeland Jago Douma 77d28e0f04 Merge pull request #19639 from nextcloud/backport/19252/stable18
[stable18] Hash event UID to make sure it's not too long for PushProvider notifications
2020-03-03 15:34:49 +01:00
Daniel Kesselberg bdb92df479 Fetch translate for Tags from files app
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
2020-03-03 12:38:15 +00:00
Nextcloud bot 534e96d130 [tx-robot] updated from transifex 2020-03-03 02:18:31 +00:00
Daniel Kesselberg 6d04819868 Add message for DoesNotExistException
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2020-03-02 15:20:38 +00:00
Roeland Jago Douma 80169b836a Merge pull request #19702 from nextcloud/feature/revive-send-welcome-email-toggle-stable18
[stable18] Revive the "send email to new users" toggle for the user form
2020-03-02 10:49:44 +01:00
Roeland Jago Douma 2b3bb179e5 Merge pull request #19729 from nextcloud/backport/19699/stable18
[stable18] Allow single file downloads so the video player works again
2020-03-02 09:29:54 +01:00
Joas Schilling 75cb63beea Allow single file downloads so the video player works again
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-03-02 07:06:24 +00:00
Nextcloud bot 725f6c2640 [tx-robot] updated from transifex 2020-03-02 02:18:02 +00:00
Roeland Jago Douma e4c4792a98 Merge pull request #19690 from nextcloud/backport/19676/stable18
[stable18] Theme search results
2020-03-01 16:15:28 +01:00
Roeland Jago Douma ba6e44746f Merge pull request #19715 from nextcloud/backport/19707/stable18
[stable18] Fix non-centered no javascript message
2020-03-01 16:10:57 +01:00
Nextcloud bot f16322d492 [tx-robot] updated from transifex 2020-03-01 02:18:46 +00:00
Gary Kim 6c59808ecd Fix non-centered no javascript message
Signed-off-by: Gary Kim <gary@garykim.dev>
2020-02-29 10:30:08 +00:00
Nextcloud bot 85372d307f [tx-robot] updated from transifex 2020-02-29 02:18:40 +00:00
Roeland Jago Douma fcb64dfd53 Merge pull request #19696 from nextcloud/backport/19694/stable18
[stable18] Also cache avatars when it's not allowed
2020-02-28 17:28:01 +01:00
Christoph Wurst 2377b79b96 Revive the "send email to new users" toggle for the user form
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-02-28 17:23:31 +01:00
Joas Schilling 7aac01d3f9 Also cache avatars when it's not allowed
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-02-28 11:29:04 +00:00
Roeland Jago Douma 21ebb07d44 Merge pull request #19628 from nextcloud/backport/19621/stable18
[stable18] Make sure that the transfer details are present in the database during the cron run
2020-02-28 09:44:03 +01:00
Roeland Jago Douma 86fa14694a Merge pull request #19624 from nextcloud/backport/19549/stable18
[stable18] remove noise from detectUuid and cache results
2020-02-28 09:43:46 +01:00
Joas Schilling 51036340e9 Theme search results
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-02-28 07:50:19 +00:00
Nextcloud bot e0d36ded05 [tx-robot] updated from transifex 2020-02-28 02:18:47 +00:00
Nextcloud bot 739387bc19 [tx-robot] updated from transifex 2020-02-27 02:18:47 +00:00
Nextcloud bot b5ba74aed5 [tx-robot] updated from transifex 2020-02-26 02:18:31 +00:00
Roeland Jago Douma 0b71df0ed0 Merge pull request #19636 from nextcloud/backport/19634/stable18
[stable18] Correctly trim long cyrillic note
2020-02-25 20:31:09 +01:00
Thomas Citharel 1aba55aa61 Hash event UID to make sure it's not too long for PushProvider
notifications

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-02-25 16:05:34 +00:00
Joas Schilling 396af5a234 Correctly trim long cyrillic note
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-02-25 13:50:22 +00:00
Joas Schilling 4790564cd1 Merge pull request #19630 from nextcloud/backport/19619/stable18
[stable18] Fix hover state color of drag-n-drop with theming and dark mode
2020-02-25 10:42:36 +01:00
Joas Schilling ad940fdbee Fix hover state color of drag-n-drop with theming and dark mode
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-02-25 07:43:59 +00:00
Nextcloud bot 6ad2248be0 [tx-robot] updated from transifex 2020-02-25 02:19:34 +00:00
Julius Härtl a606888f50 Make sure that the transfer entry is present in the database
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-02-24 19:39:55 +00:00
Arthur Schiwon b6d8e7c3fd remove noise from detectUuid and cache results
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-02-24 19:04:58 +00:00
Roeland Jago Douma 8006bb982c Merge pull request #19610 from nextcloud/backport/19478/stable18
[stable18] Change the route generation of AuthPublicShareController.php
2020-02-24 19:59:45 +01:00
John Molakvoæ 38ea4d2d19 Merge pull request #19607 from nextcloud/backport/19566/stable18
[stable18] FIx logging in accessibility controller
2020-02-24 11:25:24 +01:00
Christoph Wurst 13b36371e6 Merge pull request #19612 from nextcloud/stable18-19547-missing-translation-tab
Replace tab character with space
2020-02-24 07:10:04 +01:00
Nextcloud bot 8308321fe1 [tx-robot] updated from transifex 2020-02-24 02:19:27 +00:00
Daniel Kesselberg 661e744d39 Replace tab character with space
Otherwise the translation is missing. Also I don't see the reason for the tab character.

Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
2020-02-23 15:58:49 +00:00
TimObert c24b698bc7 Fix requested changes
Signed-off-by: Tim Obert <tobert@w-commerce.de>
2020-02-23 15:45:40 +00:00
Tim Obert 1e81fc2dbe Change the route generation of AuthPublicShareController.php and adjust the routes for file sharing
Signed-off-by: Tim Obert <tobert@w-commerce.de>
2020-02-23 15:45:40 +00:00
Roeland Jago Douma 51d75fc7ae Merge pull request #19591 from nextcloud/backport/19528/stable18
[stable18] Strip of users home path from share api message
2020-02-23 11:39:54 +01:00
Joas Schilling c97df156b2 FIx logging in accessibility controller
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-02-23 09:29:14 +00:00
Nextcloud bot 84730be28b [tx-robot] updated from transifex 2020-02-23 02:19:39 +00:00
Joas Schilling 8d5c51730b Strip of users home path from share api message
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-02-22 20:26:27 +00:00
Nextcloud bot c383452b22 [tx-robot] updated from transifex 2020-02-22 02:18:53 +00:00
Christoph Wurst 3728ddd8a2 Merge pull request #19522 from nextcloud/backport/19449/stable18
[stable18] Allow to overwrite the path on the cache event
2020-02-21 17:45:25 +01:00
Christoph Wurst 7181de9c96 Merge pull request #19574 from nextcloud/backport/19511/stable18
[stable18] Make sure the secondary view registered for systemtags has an id
2020-02-21 17:44:26 +01:00
Julius Härtl ca3a3e32ca Bump bundles
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-02-21 11:19:24 +00:00
Julius Härtl f38386c77c Make sure the secondary view registered for systemtags has an id
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-02-21 11:19:24 +00:00
Thomas Citharel 9891055957 Move RefreshWebcalJob logic to a proper service so that it may be called
independently

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-02-21 11:18:19 +00:00
Nextcloud bot 054dbf9b07 [tx-robot] updated from transifex 2020-02-21 02:19:21 +00:00
Nextcloud bot 3738cd9b93 [tx-robot] updated from transifex 2020-02-20 02:18:52 +00:00
blizzz 41fd0aaa26 Merge pull request #19516 from nextcloud/backport/19510/stable18
[stable18] Continue with next foreach iteration
2020-02-19 10:01:30 +01:00
Nextcloud bot f2c3926f99 [tx-robot] updated from transifex 2020-02-19 02:18:23 +00:00
Nextcloud bot 67af95981d [tx-robot] updated from transifex 2020-02-18 02:18:33 +00:00
Joas Schilling 67fbacee59 Allow to overwrite the path on the cache event
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-02-17 16:42:16 +00:00
Joas Schilling 1e62541a15 Merge pull request #19481 from nextcloud/backport/19477/stable18
[stable18] Reduce flow logging at INFO level, move to DEBUG
2020-02-17 12:48:16 +01:00
Joas Schilling 1bc2b113ca Merge pull request #19470 from nextcloud/backport/19465/stable18
[stable18] when we receive intentional empty whats new info, do not try to show it
2020-02-17 12:40:28 +01:00
Julius Härtl fa43d766e8 Continue with next foreach iteration
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-02-17 11:00:13 +00:00
Nextcloud bot 91f4237eb7 [tx-robot] updated from transifex 2020-02-17 02:18:17 +00:00
Nextcloud bot 2655a11691 [tx-robot] updated from transifex 2020-02-16 02:18:32 +00:00
Nextcloud bot e092141b6e [tx-robot] updated from transifex 2020-02-15 02:18:19 +00:00
Julius Härtl e56441d6c5 Reduce flow logging at INFO level
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-02-14 13:22:10 +00:00
Arthur Schiwon cb1c0d7221 when we receive intentional empty whats new info, do not try to show it
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-02-14 09:08:03 +00:00
Nextcloud bot 1185289509 [tx-robot] updated from transifex 2020-02-14 02:18:19 +00:00
Roeland Jago Douma 0bc3ac4066 Merge pull request #19451 from nextcloud/backport/19424/stable18
[stable18] Don't create invalid users
2020-02-13 20:31:16 +01:00
Roeland Jago Douma 6c1d939447 Merge pull request #19441 from nextcloud/backport/19431/stable18
[stable18] Show proper file name when fetching details fails
2020-02-13 12:38:07 +01:00
Joas Schilling 20748e1f4d Don't create invalid users
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-02-13 09:15:14 +00:00
Nextcloud bot d51e493a30 [tx-robot] updated from transifex 2020-02-13 02:19:36 +00:00
Julius Härtl 535b60bfed Show proper file name when fetching details fails
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-02-12 19:27:26 +00:00
Roeland Jago Douma 6954d3a50c Merge pull request #19439 from nextcloud/backport/19430/stable18
[stable18] disable timeout on app install via cli
2020-02-12 20:25:16 +01:00
Roeland Jago Douma f6bd5afd03 Merge pull request #19422 from nextcloud/version/18.0.1/final
18.0.1 final
2020-02-12 19:27:44 +01:00
Arthur Schiwon 53fb638ac6 disable timeout on app install via cli
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-02-12 16:34:58 +00:00
Roeland Jago Douma a95027b028 Merge pull request #19428 from nextcloud/backport/19423/stable18
[stable18] Allow to serve static mp4 directly
2020-02-12 14:27:27 +01:00
Julius Härtl 022ced65b6 Allow to serve static mp4 directly
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-02-12 11:59:30 +00:00
Roeland Jago Douma e5963abf7b Merge pull request #19420 from nextcloud/backport/19417/stable18
[stable18] Allow to serve static webm directly
2020-02-12 11:28:34 +01:00
Roeland Jago Douma 7c2d9d495a 18.0.1 final
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-02-12 10:15:52 +01:00
Roeland Jago Douma 4bb32a4626 Allow to serve static webm directly
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-02-12 09:14:10 +00:00
Nextcloud bot 1e70f72957 [tx-robot] updated from transifex 2020-02-12 02:18:28 +00:00
Nextcloud bot 41b23e2d00 [tx-robot] updated from transifex 2020-02-11 02:18:43 +00:00
Roeland Jago Douma 72d4e1cd9a Merge pull request #19397 from nextcloud/version/18.0.1/RC3
18.0.1 RC3
2020-02-10 19:41:41 +01:00
Roeland Jago Douma ff451186e9 Merge pull request #19396 from nextcloud/backport/18904/stable18
[stable18] Log Flow activity
2020-02-10 19:40:57 +01:00
Roeland Jago Douma 2e447f4ef3 18.0.1 RC3
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-02-10 15:19:13 +01:00
Arthur Schiwon 501e1aadd5 always require a message paramter for data logging
also ensure it plays well with current log reader

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-02-10 14:11:05 +00:00
Arthur Schiwon 02c0a8fbed log Flow activity
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-02-10 14:11:05 +00:00
blizzz fa8b998b62 Merge pull request #19360 from nextcloud/backport/19349/stable18
[stable18] Prevent archieved download on secure view
2020-02-10 09:32:35 +01:00
Nextcloud bot 23d321f4f1 [tx-robot] updated from transifex 2020-02-10 02:18:09 +00:00
Nextcloud bot f6963f3936 [tx-robot] updated from transifex 2020-02-09 02:19:28 +00:00
Joas Schilling 6db47f7a6e Prevent archieved download on secure view
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-02-08 09:19:43 +00:00
Nextcloud bot edafd81a20 [tx-robot] updated from transifex 2020-02-08 02:18:31 +00:00
Roeland Jago Douma e27e61feee Merge pull request #19342 from nextcloud/version/18.0.1/RC2
18.0.1 RC2
2020-02-07 12:33:43 +01:00
Roeland Jago Douma 6c8f70e180 Merge pull request #19340 from nextcloud/backport/17077/stable18
[stable18] Disable link shares of disabled users
2020-02-07 11:53:27 +01:00
Roeland Jago Douma d58b45072a 18.0.1 RC2
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-02-07 10:08:21 +01:00
Roeland Jago Douma bf6a7a8e3a Disable link shares of disabled users
Fixes #10869

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-02-07 08:14:48 +00:00
Roeland Jago Douma 976db32a93 Merge pull request #19326 from nextcloud/backport/19303/stable18
[stable18] Fix occ maintenance:install database connect failure
2020-02-07 09:11:58 +01:00
Roeland Jago Douma 8e35ea0e1f Merge pull request #19332 from nextcloud/backport/18926/stable18
[stable18] Array access on int will fail on php7.4
2020-02-07 09:10:25 +01:00
Nextcloud bot e161be8e2a [tx-robot] updated from transifex 2020-02-07 07:32:43 +00:00
Roeland Jago Douma 9dbc4df10d Merge pull request #19330 from nextcloud/backport/19320/stable18
[stable18] Fix event type
2020-02-07 08:04:15 +01:00
Roeland Jago Douma a16975b810 Merge pull request #19334 from nextcloud/backport/19178/stable18
[stable18] Make sure the default share provider does not execute for other things
2020-02-07 07:49:42 +01:00
Joas Schilling 2c6921e6b8 Make sure the default share provider does not execute for other things
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-02-06 20:56:24 +00:00
Daniel Kesselberg 2b11da251e Use strpos to check that @ is the first char
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2020-02-06 20:32:23 +00:00
Daniel Kesselberg 2a5ae7ab48 Add test to trigger "Trying to access array offset on value of type int"
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2020-02-06 20:32:23 +00:00
Joas Schilling 81352411be Fix event type
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-02-06 19:32:02 +00:00
Joas Schilling 686686b2e2 Correctly append the port to the host so it's written to the config correctly
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-02-06 18:37:52 +00:00
Joas Schilling 65dcda3aa1 Split the exception handling so install errors don't log as setup errors
More gebuging

Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-02-06 18:37:52 +00:00
Joas Schilling 3f70e74573 Check the new connection on setup like with PostgreSQL and Oracle
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-02-06 18:37:52 +00:00
Joas Schilling 0e8b48e6c6 Only provide the auth method for MySQL 8.0+ to not break MariaDB
Provide the auth method for MySQL 8.0+

Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-02-06 18:37:52 +00:00
blizzz 8e02d45d4d Merge pull request #19315 from nextcloud/backport/19312/stable18
[stable18] do not overwrite global user auth credentials with empty values
2020-02-06 19:25:17 +01:00
Arthur Schiwon 00548d7729 do not overwrite global user auth credentials with empty values
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-02-06 09:49:45 +00:00
Roeland Jago Douma c31e27af02 Merge pull request #19267 from nextcloud/version/18.0.1/RC1
18.0.1 RC1
2020-02-06 08:56:00 +01:00
Roeland Jago Douma ea6e4cb033 Merge pull request #19308 from nextcloud/backport/19219/stable18
[stable18] Fix display of DTEND for multi-day all-day event
2020-02-05 22:22:12 +01:00
Roeland Jago Douma b08b8103da 18.0.1 RC1
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-02-05 21:10:51 +01:00
Roeland Jago Douma 9fd015353c Merge pull request #19089 from nextcloud/backport/18929/enh/sidebar/promise
[stable18] Allow to await the sidebar
2020-02-05 21:08:32 +01:00
Georg Ehrke befa7f4913 Fix display of DTEND for multi-day all-day event
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2020-02-05 19:55:03 +00:00
John Molakvoæ (skjnldsv) b074be1b1d Close handling
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
2020-02-05 19:12:27 +00:00
John Molakvoæ (skjnldsv) f4d298cc03 Allow to await the sidebar
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2020-02-05 20:09:20 +01:00
John Molakvoæ 6e876fad65 Merge pull request #19302 from nextcloud/backport/19165/stable18
[stable18] Fix data Apache2 .htaccess typo
2020-02-05 14:39:47 +01:00
Simounet e5dd55c935 Fix data Apache2 .htaccess typo
Signed-off-by: Simounet <contact@simounet.net>
2020-02-05 11:33:26 +00:00
Roeland Jago Douma 062d9dadcb Merge pull request #19297 from nextcloud/backport/19246/stable18
[stable18] Keep the modification time during decryptFile
2020-02-05 07:39:14 +01:00
Roeland Jago Douma 7b0f1baa86 Merge pull request #19292 from nextcloud/backport/19203/stable18
[stable18] Allow respecting PASSWORD_DEFAULT
2020-02-05 07:35:49 +01:00
John Molakvoæ 7bc14ae1df Merge pull request #19271 from nextcloud/backport/19238/stable18
[stable18] Center Buttons
2020-02-04 21:55:28 +01:00
sammo2828 b0c359ccd2 Keep the modification time during decryptFile 2020-02-04 14:55:59 +00:00
Roeland Jago Douma dfe200bd4e Merge pull request #19228 from nextcloud/backport/19215/stable18
[stable18] WebcalRefreshJob: Fix reading refresh rate
2020-02-04 15:49:37 +01:00
Roeland Jago Douma 9687febed7 Allow selecting the hashing algorithm
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-02-04 10:32:42 +00:00
Roeland Jago Douma 9bd4322558 Merge pull request #19291 from nextcloud/backport/stable18/19275
[stable18] owner transfer multiselect fixes
2020-02-04 10:58:59 +01:00
Julius Härtl f0aca462c6 Bump bundles
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-02-04 09:41:37 +01:00
Julius Härtl a1248780bc Make sure that minSearchStringLength is taken into account
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-02-04 09:40:15 +01:00
Julius Härtl 0bad752282 Fix issue when selecting an entry, the multiselect input was not closed
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-02-04 09:40:08 +01:00
Roeland Jago Douma fd1de43fa5 Merge pull request #19283 from nextcloud/backport/19281/stable18
[stable18] for the DB ot pick an index specify the object_type
2020-02-04 08:48:42 +01:00
Arthur Schiwon 2b82c353c8 for the DB ot pick an index specify the object_type
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-02-03 20:24:32 +00:00
Roeland Jago Douma 344ac9c694 Merge pull request #19278 from nextcloud/backport/19276/stable18
[stable18] Use proper andwhere clause
2020-02-03 21:23:52 +01:00
Roeland Jago Douma b784162761 Merge pull request #19279 from nextcloud/backport/19233/stable18
[stable18] Add move (and firstlogin) option to transferownership service
2020-02-03 21:06:42 +01:00
Roeland Jago Douma 38735c2bd0 Allow specifying this is the first login
On firstlogin we allow non empty target folders. So that for guest
transfers the user sees the same UI.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-02-03 15:00:03 +00:00
Tobia De Koninck c3092fda9a Catch \Error in Transfer::restoreShares
This makes the command more fault tolerant. An \Error can happen when
e.g. the owner of a share is null.
If we don't catch this, the restore process will stop in an unknown
state.

Signed-off-by: Tobia De Koninck <LEDfan@users.noreply.github.com>
2020-02-03 15:00:03 +00:00
Tobia De Koninck 6cc23b170a Prevent transferring data to user which never loggedin
Signed-off-by: Tobia De Koninck <LEDfan@users.noreply.github.com>
2020-02-03 15:00:03 +00:00
Tobia De Koninck 0b33aefc86 Add option to transfer-ownership to move data
This will move the home folder of own user to another user. Only allowed
if that other user's home folder is empty.
Can be used as workaround to rename users.

Signed-off-by: Tobia De Koninck <LEDfan@users.noreply.github.com>
2020-02-03 15:00:03 +00:00
Roeland Jago Douma be01ff127f Merge pull request #19269 from nextcloud/backport/19241/stable18
[stable18] Make sure to catch php errors during job execution
2020-02-03 15:56:35 +01:00
Roeland Jago Douma ef49138bfa Merge pull request #19277 from nextcloud/backport/19268/stable18
[stable18] Use the l10n from settings
2020-02-03 15:56:08 +01:00
Roeland Jago Douma c680ebbc15 Use proper andwhere clause
Fixes #19248

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-02-03 13:16:49 +00:00
Daniel Kesselberg dea1213589 Update test to pass l10n instead of factory
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2020-02-03 11:57:04 +00:00
Roeland Jago Douma fc7a4147c0 Use the l10n from settings
Fixes #19261

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-02-03 11:57:04 +00:00
Marc Michalsky 8fafb40dc9 Update guest.css 2020-02-03 09:11:59 +00:00
Marc Michalsky 4958ae5fd4 Center Buttons
Since Version 18.0.0 the Registration button of the [registration app](https://github.com/pellaeon/registration) is not centered anymore.
2020-02-03 09:11:59 +00:00
Daniel Kesselberg 5ce0b44960 Make sure to catch php errors during job execution
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2020-02-03 08:55:22 +00:00
Georg Ehrke da7bbb4454 RefreshWebcalJob: Fix reading subscription from database leading to ignored refreshRate
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2020-01-31 07:19:06 +00:00
Georg Ehrke c0429095bc JobList: Typecast last_run to integer
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2020-01-31 07:19:06 +00:00
Roeland Jago Douma 297debef34 Merge pull request #19212 from nextcloud/backport/19125/bugfix/noid/tab-id
[stable18] Give the sharing tab a unique id so it also opens properly on other languages
2020-01-30 22:10:03 +01:00
Roeland Jago Douma 20efce99c8 Merge pull request #19206 from nextcloud/backport/19179/stable18
[stable18] Fix query selector for inverted icons
2020-01-30 22:09:25 +01:00
Roeland Jago Douma 42adde5132 Merge pull request #19207 from nextcloud/backport/19176/stable18
[stable18] Do not encode contacts menu mailto links
2020-01-30 22:07:59 +01:00
John Molakvoæ (skjnldsv) 4cfb5eac02 Fix legacy tabs
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2020-01-30 10:32:32 +01:00
John Molakvoæ (skjnldsv) 8fc29440f4 Bump @nextcloud/vue
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2020-01-30 10:30:42 +01:00
Christoph Wurst 8aecb95aa4 Do not encode contacts menu mailto links
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-01-30 08:46:09 +00:00
Julius Härtl b0edd76af5 Give the sharing tab a unique id so it also opens properly on other languages
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-01-30 09:41:52 +01:00
Joas Schilling 157db55602 Fix query selector for inverted icons
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-01-30 08:34:14 +00:00
Roeland Jago Douma 560f3a55f0 Merge pull request #19189 from nextcloud/backport/19054/stable18
[stable18] Use themed favicon-fb
2020-01-29 14:13:22 +01:00
blizzz 1050cc2322 Merge pull request #19190 from nextcloud/backport/19186/stable18
[stable18] Fix "Call to undefined method OCA\\WorkflowEngine\\Entity\\File::t()"
2020-01-29 14:02:18 +01:00
Joas Schilling 13068ba3c5 Fix "Call to undefined method OCA\\WorkflowEngine\\Entity\\File::t()"
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-01-29 09:44:34 +00:00
Julius Härtl 80773f2f15 Use themed favicon-fb
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-01-29 08:39:58 +00:00
Roeland Jago Douma 3cc69aa901 Merge pull request #19166 from nextcloud/backport/19116/stable18
[stable18] apps can have polyamorous relationships with bundles
2020-01-27 20:09:34 +01:00
npmbuildbot[bot] c6f2faf1c1 Compile assets
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
2020-01-27 16:23:47 +00:00
Arthur Schiwon 9bff2e7f03 apps can have polyamorous relationships with bundles
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-01-27 17:16:20 +01:00
Roeland Jago Douma c99c969d55 Merge pull request #19149 from nextcloud/backport/19115/stable18
[stable18] Use the target for file notifications
2020-01-27 11:07:49 +01:00
Roeland Jago Douma bfdfeb460b Merge pull request #19150 from nextcloud/backport/19120/stable18
[stable18] Use correct appid for talk
2020-01-27 09:34:15 +01:00
Roeland Jago Douma a77eaff83f Merge pull request #19153 from nextcloud/backport/19105/stable18
[stable18] add hub bundle for easy installation on upgraded instances
2020-01-27 09:25:34 +01:00
Arthur Schiwon a68533e5a6 add hub bundle for easy post-installation
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-01-27 07:21:09 +00:00
Roeland Jago Douma 327a814a42 Use correct appid for talk
Else it won't show up of course...

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-01-26 21:17:23 +01:00
Roeland Jago Douma 2d0a038642 Use the target for file notifications
The node is not yet accessible if you did not accept the share yet.
So trying to get it results in an acception.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-01-26 19:44:44 +00:00
Roeland Jago Douma 4f087d7af6 Merge pull request #19117 from nextcloud/backport/19109/stable18
[stable18] Adjust filelist color handling to new dark theme value
2020-01-26 20:37:45 +01:00
Roeland Jago Douma 81e787822a Merge pull request #19121 from nextcloud/backport/19113/stable18
[stable18] Do not invert avatar colors when dark theme is enabled
2020-01-26 20:37:23 +01:00
Roeland Jago Douma 6a99ffac03 Merge pull request #19119 from nextcloud/backport/19111/stable18
[stable18] New file menu needs to be above the filelist header
2020-01-26 20:36:55 +01:00
Roeland Jago Douma f5b72fb80e Merge pull request #19118 from nextcloud/legacy_event_log
[stable18] Reduce legacy event log level to debug
2020-01-26 20:36:32 +01:00
Marco Ambrosini ea798ff2d2 Do not invert avatar colors when dark theme is enabled
Signed-off-by: Marco Ambrosini <marcoambrosini@pm.me>
2020-01-24 14:12:55 +00:00
Julius Härtl 37f961a664 New file menu needs to be above the filelist header
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-01-24 12:31:06 +00:00
Julius Härtl 77797b4910 Adjust filelist color handling to new dark theme value
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-01-24 12:11:50 +00:00
Roeland Jago Douma 673fd35a8f Merge pull request #19108 from nextcloud/backport/18913/stable18
[stable18] fix multiselect actions for files
2020-01-24 11:10:55 +01:00
Roeland Jago Douma 98e4ebfe3c Merge pull request #19094 from nextcloud/backport/19023/stable18
[stable18] expose Argon2 options (as we did for bcrypt)
2020-01-24 10:11:11 +01:00
Julius Härtl 3b8c58d516 Make sure the whole file list header is sticky and properly stacks to other headers
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-01-24 09:09:16 +00:00
GretaD 8ffe43c574 fix multiselect actions for files
Signed-off-by: GretaD <gretadoci@gmail.com>
2020-01-24 09:09:16 +00:00
Arthur Schiwon 8f30ff3cc6 extended documentation
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-01-23 10:48:42 +00:00
Arthur Schiwon 9a7e7c3d42 ignore values that undershoot the minimum, go with default
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-01-23 10:48:42 +00:00
blizzz e186fecd16 use getSystemValueInt
Co-Authored-By: kesselb <mail@danielkesselberg.de>

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-01-23 10:48:42 +00:00
Arthur Schiwon 42756b4655 expose Argon2 options (as we did for bcrypt)
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-01-23 10:48:42 +00:00
Joas Schilling c9d852ade2 Merge pull request #19060 from nextcloud/backport/19053/stable18
[stable18] Fix loaded controller check
2020-01-22 09:45:50 +01:00
Joas Schilling f215d2f8c9 Fix loaded controller check
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-01-21 19:13:39 +00:00
Roeland Jago Douma 986ad0a497 Merge pull request #19025 from nextcloud/backport/19017/stable18
[stable18] Increase the timeout for app downloads
2020-01-21 11:55:38 +01:00
Joas Schilling f52c9d759f Adjust unit test for #19017
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-01-21 08:45:58 +01:00
Joas Schilling 2450706582 Increase the timeout for app downloads
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-01-20 20:41:42 +00:00
Roeland Jago Douma df4a7b3b28 Merge pull request #18982 from nextcloud/dependabot/npm_and_yarn/stable18/style-loader-1.1.3
Bump style-loader from 1.1.2 to 1.1.3
2020-01-20 10:59:49 +01:00
dependabot-preview[bot] 40c8bafc93 Bump style-loader from 1.1.2 to 1.1.3
Bumps [style-loader](https://github.com/webpack-contrib/style-loader) from 1.1.2 to 1.1.3.
- [Release notes](https://github.com/webpack-contrib/style-loader/releases)
- [Changelog](https://github.com/webpack-contrib/style-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/style-loader/compare/v1.1.2...v1.1.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-19 02:14:13 +00:00
MichaIng fbf93de67a Reduce legacy event log level to debug
This is to reduce log flooding on info log level, which is currently expected tue to deprecated event use in many apps and core: https://github.com/nextcloud/server/issues/18331
This information is helpful for developers only, hence should be sufficient as debug log. Especially due to the extremely high frequency this log can happen, this currently practically forces admins to disable info logs, which conflicts with other needs.

Signed-off-by: MichaIng <micha@dietpi.com>
2020-01-18 18:09:10 +01:00
John Molakvoæ 357e8b76e8 Merge pull request #18961 from nextcloud/backport/18939/stable18
[stable18] Fix cursor on disabled contenteditable divs
2020-01-18 08:40:43 +01:00
Daniel Calviño Sánchez c3a649c755 Fix cursor on disabled contenteditable divs
The cursor should be a default cursor, as the text cursor implies that
text can be introduced.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2020-01-17 15:39:32 +00:00
Roeland Jago Douma 905d07a850 Bump version
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-01-17 14:45:28 +01:00
Roeland Jago Douma fe6fdfe50d Merge pull request #18953 from nextcloud/enhancement/18-apps-18
[stable18] Add new recommended 18 apps
2020-01-17 14:05:20 +01:00
Roeland Jago Douma 8c229684d7 Fix width and icon
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
2020-01-17 12:14:33 +00:00
Christoph Wurst f012f0a353 Add new recommended 18 apps
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-01-17 11:52:52 +01:00
Roeland Jago Douma 32b00cee4f Merge pull request #18950 from nextcloud/backport/18764/stable18
[stable18] Prevent duplicate entries in file sidebar
2020-01-17 02:36:29 +01:00
Roeland Jago Douma df2c2d48cc Merge pull request #18948 from nextcloud/backport-18940
[stable18] Make the share accept process optional
2020-01-17 02:36:02 +01:00
Gary Kim b2b7587f54 Prevent duplicate entries in file sidebar
Signed-off-by: Gary Kim <gary@garykim.dev>
2020-01-17 02:29:17 +01:00
Roeland Jago Douma dae2fdaae2 Merge pull request #18947 from nextcloud/backport-18455
[stable18] fix userlist alignment
2020-01-17 02:00:46 +01:00
Julius Härtl 381d15850b Bump bundles
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-01-17 01:37:53 +01:00
Julius Härtl 5919bd97d5 Make auto accepting the default and provide setting to enforce the share acceptance process
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-01-17 01:35:18 +01:00
Julius Härtl 035fe3db7b Remove global share accepter since auto-accepting is the default
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-01-17 01:35:12 +01:00
Roeland Jago Douma d92500178f Merge pull request #18945 from nextcloud/backport/18803/stable18
[stable18] Only allow navigation to a folder if you have access
2020-01-17 00:19:14 +01:00
Roeland Jago Douma fe9f53259d Merge pull request #18944 from nextcloud/backport/18898/stable18
[stable18] Fix max width on 2FA pages
2020-01-17 00:06:09 +01:00
Julius Härtl 39a28b4bfb Bump bundles
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-01-16 23:40:32 +01:00
Julius Härtl dc36724f78 Fix indentation
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-01-16 23:34:31 +01:00
Julius Härtl a416baa946 Fix eslint errors in settings
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-01-16 23:34:26 +01:00
GretaD be497b3bce fix indentation and 3 dot menu
Signed-off-by: GretaD <gretadoci@gmail.com>
2020-01-16 23:34:21 +01:00
GretaD 77cf9dfbe7 fix popover menu overlapping
Signed-off-by: GretaD <gretadoci@gmail.com>
2020-01-16 23:33:56 +01:00
GretaD c089cb21e7 make actionButton sticky
Signed-off-by: GretaD <gretadoci@gmail.com>
2020-01-16 23:33:48 +01:00
GretaD 2ecb952156 add close button
Signed-off-by: GretaD <gretadoci@gmail.com>
2020-01-16 23:33:40 +01:00
GretaD 1818ef9ef8 fix new user table
Signed-off-by: GretaD <gretadoci@gmail.com>
2020-01-16 23:33:34 +01:00
GretaD 20303281f0 fix userlist alignment
Signed-off-by: GretaD <gretadoci@gmail.com>
2020-01-16 23:33:26 +01:00
Roeland Jago Douma 827cfc8ede Only allow navigation to a folder if you have access
Fixes #18716

If you can delete the share then you have access yourself to that shares
location.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-01-16 22:03:05 +01:00
Christoph Wurst 1072b70210 Fix max width on 2FA pages
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-01-16 20:57:21 +00:00
Roeland Jago Douma 9e6c37c3c6 Merge pull request #18934 from nextcloud/backport/18927/stable18
[stable18] Fix Sidebar legacy FileInfoModel requirement
2020-01-16 21:53:50 +01:00
Roeland Jago Douma fa43738b61 Merge pull request #18930 from nextcloud/backport/18925/stable18
[stable18] Add color background hover css variable
2020-01-16 20:03:27 +01:00
John Molakvoæ (skjnldsv) 986ac005e0 Fix Sidebar legacy FileInfoModel requirement
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2020-01-16 16:12:55 +00:00
Marco Ambrosini 62591b2e8b Add color background hover css variable
Signed-off-by: Marco Ambrosini <marcoambrosini@pm.me>
2020-01-16 14:29:59 +00:00
Roeland Jago Douma 2495570889 Merge pull request #18919 from nextcloud/backport/18894/stable18
[stable18] Do not save on update, use submit
2020-01-16 09:14:57 +01:00
Roeland Jago Douma a4906451e2 Merge pull request #18918 from nextcloud/backport/18910/stable18
[stable18] Listen to the right even for auto share accept
2020-01-16 01:26:31 +01:00
John Molakvoæ (skjnldsv) 5829f21b19 Do not save on update, use submit
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
2020-01-16 01:06:45 +01:00
Roeland Jago Douma e30c533644 Merge pull request #18911 from nextcloud/backport/18732/enh-sidebar
Backport/18732/enh sidebar
2020-01-16 00:30:04 +01:00
Roeland Jago Douma 90f5e066c3 Listen to the right even for auto share accept
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-01-15 23:12:09 +00:00
Roeland Jago Douma bcb8ce3e07 Merge pull request #18901 from nextcloud/backport/18873/stable18
[stable18] Install page design fixes
2020-01-15 18:12:02 +01:00
John Molakvoæ (skjnldsv) 3b6a1254cf Close after click
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2020-01-15 17:51:25 +01:00
Julius Härtl 03de502f1f Only show tag selector if tags are set
Signed-off-by: Julius Härtl <jus@bitgrid.net>
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
2020-01-15 17:47:53 +01:00
Julius Härtl fac588297d Do not show sidebar on rename (fixes #18613)
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-01-15 17:47:53 +01:00
Julius Härtl 940b73280d Properly set current file info when switching the details view
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-01-15 17:47:53 +01:00
Roeland Jago Douma 1a5e67a270 Merge pull request #18908 from nextcloud/backport/18799/stable18
[stable18] Do not show link shares in inherited list
2020-01-15 17:41:19 +01:00
Roeland Jago Douma 6a60a01e4f Merge pull request #18906 from nextcloud/backport/18892/stable18
[stable18] Proper text previews
2020-01-15 17:25:07 +01:00
Roeland Jago Douma 7d205402ea Merge pull request #18909 from nextcloud/backport/18859/stable18-add-password-protected-by-talk-option-to-shares
[stable18] Add "Password protected by Talk" option to shares
2020-01-15 17:24:39 +01:00
Roeland Jago Douma 7a79e95254 Merge pull request #18878 from nextcloud/backport/18805/stable18
[stable18] Check if file already exists during file creation
2020-01-15 12:24:06 +01:00
Daniel Calviño Sánchez 408f7ae133 Add "Password protected by Talk" option to shares
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2020-01-15 11:12:48 +01:00
Roeland Jago Douma 9321364587 Don't show link shares hash in inherited share list
This adds no value at all. Just showing the text "(Shared link)" now.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-01-15 10:07:26 +00:00
Roeland Jago Douma dda212a48e Proper text previews
Fixes #17828

* Modified the preview provider to provider smaller fonts for the
  previes (so it is not so screaming)
* Modified the sidebar to show plain text and markdown files full size.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-01-15 10:53:08 +01:00
Roeland Jago Douma 4a05982983 Merge pull request #18879 from nextcloud/backport/18862/stable18
[stable18] Register with potentially updated namespace
2020-01-15 07:26:19 +01:00
Roeland Jago Douma 900acafa88 Merge pull request #18882 from nextcloud/backport/17717/stable18
[stable18] relax strict getHome behaviour for LDAP users in a shadow state
2020-01-15 07:25:54 +01:00
Jan-Christoph Borchardt eba07843f5 Remove outdated centering code for database switcher on install page
Signed-off-by: Jan-Christoph Borchardt <hey@jancborchardt.net>
2020-01-15 06:25:50 +00:00
Jan-Christoph Borchardt 0915c6223d Add explanatory bit for recommended apps, fix #18631
Signed-off-by: Jan-Christoph Borchardt <hey@jancborchardt.net>
2020-01-15 06:25:50 +00:00
Roeland Jago Douma b75d4c08dc Merge pull request #18881 from nextcloud/backport/18869/stable18
[stable18] Create hover color variable
2020-01-14 23:37:48 +01:00
Arthur Schiwon 1aa91f649f ensure that only valid group members are returned
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-01-14 08:58:18 +00:00
Arthur Schiwon 8cf4e6107f remove superfluous tests
- user_ldap is not exposed to public api, it is always behind ldap_proxy
- this is too much for a unit test
- integration tests cover userExists implicitly

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-01-14 08:58:18 +00:00
Arthur Schiwon ad41056865 adjust tests
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-01-14 08:58:18 +00:00
Arthur Schiwon b7a6a9d4a2 decouple userExists from userExistsOnLDAP check
allows to mark users as offline right away, avoids a gap of being not a
user and causing weird side effects

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-01-14 08:58:18 +00:00
Arthur Schiwon dcd5b15443 relax strict getHome behaviour for LDAP users in a shadow state
* simplifies deletion process
* less strange behaviour when looking up home storage (as long as it is local)
* thus could enable transfer ownerships after user went invisible on ldap

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-01-14 08:58:18 +00:00
Marco Ambrosini e4dd609b67 Create hover color variable
Signed-off-by: Marco Ambrosini <marcoambrosini@pm.me>
2020-01-14 08:50:21 +00:00
Joas Schilling c7470648b7 Allow to force register the namespace
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-01-14 07:38:00 +00:00
Joas Schilling 5750612ca2 Register the namespace after reading the new file
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-01-14 07:38:00 +00:00
Julius Härtl 14f6030140 CHeck if file already exists during file creation
Signed-off-by: Julius Härtl <jus@bitgrid.net>
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-01-14 07:35:31 +00:00
Roeland Jago Douma 3085e2e8b2 Merge pull request #18847 from nextcloud/backport/18786/stable18
[stable18] AppFetcher: Distinguish between fileName and endpointName
2020-01-13 14:13:10 +01:00
Roeland Jago Douma 084b342c84 Merge pull request #18822 from nextcloud/backport/18804/stable18
[stable18] Fix webdav url
2020-01-12 22:18:51 +01:00
Roeland Jago Douma 5641871d97 Merge pull request #18849 from nextcloud/dependabot/npm_and_yarn/stable18/babel/polyfill-7.8.0
Dependabot/npm and yarn/stable18/babel/polyfill 7.8.0
2020-01-12 22:15:03 +01:00
Georg Ehrke 889933b353 AppFetcher: Distinguish between fileName and endpointName
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2020-01-12 20:10:07 +00:00
Roeland Jago Douma 8b4b3e19bb Merge pull request #18835 from nextcloud/dependabot/npm_and_yarn/stable18/nextcloud/event-bus-1.1.2
Bump @nextcloud/event-bus from 1.0.0 to 1.1.2
2020-01-12 21:07:27 +01:00
dependabot-preview[bot] 1d63af5d95 Bump @nextcloud/event-bus from 1.0.0 to 1.1.2
Bumps [@nextcloud/event-bus](https://github.com/nextcloud/nextcloud-event-bus) from 1.0.0 to 1.1.2.
- [Release notes](https://github.com/nextcloud/nextcloud-event-bus/releases)
- [Changelog](https://github.com/nextcloud/nextcloud-event-bus/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nextcloud/nextcloud-event-bus/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
2020-01-12 18:46:33 +00:00
dependabot-preview[bot] d49923c880 Bump @babel/polyfill from 7.7.0 to 7.8.0
Bumps [@babel/polyfill](https://github.com/babel/babel) from 7.7.0 to 7.8.0.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/compare/v7.7.0...v7.8.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-12 18:43:29 +00:00
Roeland Jago Douma 457e7c2a7d Merge pull request #18834 from nextcloud/dependabot/npm_and_yarn/stable18/nextcloud/auth-1.2.1
Bump @nextcloud/auth from 1.1.0 to 1.2.1
2020-01-12 19:41:34 +01:00
dependabot-preview[bot] fd243ff5c4 Bump @nextcloud/auth from 1.1.0 to 1.2.1
Bumps [@nextcloud/auth](https://github.com/nextcloud/nextcloud-auth) from 1.1.0 to 1.2.1.
- [Release notes](https://github.com/nextcloud/nextcloud-auth/releases)
- [Changelog](https://github.com/nextcloud/nextcloud-auth/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nextcloud/nextcloud-auth/compare/v1.1.0...v1.2.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
2020-01-12 13:13:33 +00:00
Roeland Jago Douma dffd76d4ee Merge pull request #18833 from nextcloud/dependabot/npm_and_yarn/stable18/nextcloud/l10n-1.0.1
Bump @nextcloud/l10n from 1.0.0 to 1.0.1
2020-01-12 13:56:47 +01:00
dependabot-preview[bot] 4606ec5ed6 Bump @nextcloud/l10n from 1.0.0 to 1.0.1
Bumps [@nextcloud/l10n](https://github.com/nextcloud/nextcloud-l10n) from 1.0.0 to 1.0.1.
- [Release notes](https://github.com/nextcloud/nextcloud-l10n/releases)
- [Changelog](https://github.com/nextcloud/nextcloud-l10n/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nextcloud/nextcloud-l10n/compare/v1.0.0...v1.0.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
2020-01-12 07:59:33 +00:00
Roeland Jago Douma 787aa98b8a Merge pull request #18826 from nextcloud/backport/18819/stable18
[stable18] Limit the size of the container on guest pages
2020-01-12 08:55:44 +01:00
Roeland Jago Douma 4506868dd4 Merge pull request #18825 from nextcloud/backport/18806/stable18
[stable18] Set the contactsmenu height without min calculation
2020-01-12 08:54:44 +01:00
Roeland Jago Douma 26e2fc3368 Merge pull request #18824 from nextcloud/backport/18817/stable18
[stable18] Narrow error button styling scope
2020-01-12 08:54:24 +01:00
Roeland Jago Douma 7c6dbd12c5 Merge pull request #18811 from nextcloud/dependabot/npm_and_yarn/stable18/nextcloud/initial-state-1.1.0
Bump @nextcloud/initial-state from 1.0.0 to 1.1.0
2020-01-12 08:53:40 +01:00
dependabot-preview[bot] 0271f5e95c Bump @nextcloud/initial-state from 1.0.0 to 1.1.0
Bumps [@nextcloud/initial-state](https://github.com/nextcloud/nextcloud-initial-state) from 1.0.0 to 1.1.0.
- [Release notes](https://github.com/nextcloud/nextcloud-initial-state/releases)
- [Changelog](https://github.com/nextcloud/nextcloud-initial-state/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nextcloud/nextcloud-initial-state/compare/v1.0.0...v1.1.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
2020-01-11 09:24:05 +00:00
John Molakvoæ ffabd58d2f Bump nextcloud-vue from 0.12.8 to 0.12.9 (#18808)
Bump nextcloud-vue from 0.12.8 to 0.12.9
2020-01-11 10:18:16 +01:00
John Molakvoæ 164ff8335a Bump handlebars from 4.5.3 to 4.6.0 (#18810)
Bump handlebars from 4.5.3 to 4.6.0
2020-01-11 10:18:03 +01:00
Julius Härtl 13a6d52cef Limit the size of the container on guest pages
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-01-11 07:23:58 +00:00
Julius Härtl 73be85e0b0 Set the contactsmenu height without min calculation
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-01-11 07:20:26 +00:00
Julius Härtl 74db98cc69 Narrow error button styling scope
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-01-11 07:19:44 +00:00
dependabot-preview[bot] a9e3253de0 Bump nextcloud-vue from 0.12.8 to 0.12.9
Bumps [nextcloud-vue](https://github.com/nextcloud/nextcloud-vue) from 0.12.8 to 0.12.9.
- [Release notes](https://github.com/nextcloud/nextcloud-vue/releases)
- [Commits](https://github.com/nextcloud/nextcloud-vue/compare/v0.12.8...v0.12.9)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
2020-01-10 18:39:17 +00:00
dependabot-preview[bot] c2ff14bcf1 Bump handlebars from 4.5.3 to 4.6.0
Bumps [handlebars](https://github.com/wycats/handlebars.js) from 4.5.3 to 4.6.0.
- [Release notes](https://github.com/wycats/handlebars.js/releases)
- [Changelog](https://github.com/wycats/handlebars.js/blob/master/release-notes.md)
- [Commits](https://github.com/wycats/handlebars.js/compare/v4.5.3...v4.6.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
2020-01-10 18:39:06 +00:00
John Molakvoæ 687715c877 Bump underscore from 1.9.1 to 1.9.2 (#18812)
Bump underscore from 1.9.1 to 1.9.2
2020-01-10 19:18:32 +01:00
John Molakvoæ (skjnldsv) e71bc1d212 Fix webdav url
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2020-01-10 18:12:24 +00:00
John Molakvoæ 7dc36156c2 Fix sharing note placeholder (#18771)
Fix sharing note placeholder
2020-01-10 15:48:30 +01:00
dependabot-preview[bot] dca6dbb387 Bump underscore from 1.9.1 to 1.9.2
Bumps [underscore](https://github.com/jashkenas/underscore) from 1.9.1 to 1.9.2.
- [Release notes](https://github.com/jashkenas/underscore/releases)
- [Commits](https://github.com/jashkenas/underscore/compare/1.9.1...1.9.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-10 14:29:46 +00:00
Roeland Jago Douma bdebfc5558 Merge pull request #18797 from nextcloud/backport/18752/stable18
[stable18] Fix contacts menu sizing
2020-01-10 12:45:38 +01:00
Roeland Jago Douma dc95fc25e2 Merge pull request #18796 from nextcloud/backport/18783/stable18
[stable18] Init OCA.Files.Sidebar right away
2020-01-10 09:44:47 +01:00
Roeland Jago Douma 3b68153718 Merge pull request #18770 from nextcloud/backport/18738/stable18
[stable18] Clean up 2FA provider registry when a user is deleted
2020-01-10 09:44:14 +01:00
Roeland Jago Douma eb014fb0a1 Merge pull request #18795 from nextcloud/backport/18773/transfer-padding
[stable18] Add more padding in transfer ownership
2020-01-10 09:28:14 +01:00
John Molakvoæ 7d9b728ee5 Add placeholder
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
2020-01-10 08:19:20 +00:00
Julius Härtl ca17989d0f Fix contacts menu sizing
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-01-10 07:07:27 +00:00
John Molakvoæ (skjnldsv) b219d5b68d Init OCA.Files.Sidebar right away
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
2020-01-10 06:54:17 +00:00
Roeland Jago Douma 6adea4c208 Merge pull request #18791 from nextcloud/backport/18780/stable18
[stable18] Tell Safari to watch out for changes of filter
2020-01-10 07:52:27 +01:00
Roeland Jago Douma c7f47e4dda Merge pull request #18790 from nextcloud/backport/18777/stable18
[stable18] Set direct login after password reset
2020-01-10 07:51:34 +01:00
Gary Kim 4f8e3cfced Add more padding in transfer ownership
Signed-off-by: Gary Kim <gary@garykim.dev>
2020-01-10 12:03:46 +08:00
Georg Ehrke 5d10bff7e8 Tell Safari to watch out for changes of filter aka attempt no. 1 to fix #18779
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2020-01-09 19:02:44 +00:00
Julius Härtl 1b7c5fa6a3 Set direct login after password reset
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-01-09 19:02:17 +00:00
Roeland Jago Douma f2575ccdb5 Merge pull request #18784 from nextcloud/backport/18774/stable18
[stable18] make the mime type checker for flow available to regular users
2020-01-09 20:00:07 +01:00
Roeland Jago Douma 95079dfe05 Merge pull request #18769 from nextcloud/backport/18757/stable18
[stable18] Combine exact and other matches for transfer ownership
2020-01-09 16:30:49 +01:00
Arthur Schiwon 029999049c make the mime type checker for flow available to regular users
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-01-09 15:30:47 +00:00
Roeland Jago Douma 18315f44b8 Merge pull request #18772 from nextcloud/backport/18766/stable18
[stable18] Filter disabled operations out of the rule list
2020-01-09 16:30:05 +01:00
Julius Härtl 8827c22973 Bump bundles
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-01-09 11:12:20 +00:00
Julius Härtl a7d1ce3adc Fallback to proper default values
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-01-09 11:12:19 +00:00
Julius Härtl 837d3ea4f9 Filter disabled operations out of the rule list
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-01-09 11:12:19 +00:00
John Molakvoæ (skjnldsv) 1a948d713f Fix sharing note placeholder
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2020-01-09 11:51:03 +01:00
Christoph Wurst 7768cbb19e Clean up 2FA provider registry when a user is deleted
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-01-09 10:35:04 +00:00
Christoph Wurst 15665616f4 Combine exact and other matches for transfer ownership
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-01-09 10:08:22 +00:00
Roeland Jago Douma 5fdac43d5b Merge pull request #18639 from nextcloud/version/18/rc2
18 RC 2
2020-01-09 08:39:53 +01:00
Roeland Jago Douma abd4bf1f27 18 RC 2
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-01-09 08:12:53 +01:00
12897 changed files with 491140 additions and 909156 deletions
+15
View File
@@ -0,0 +1,15 @@
codecov:
branch: master
ci:
- drone.nextcloud.com
- !scrutinizer-ci.com
coverage:
precision: 2
round: down
range: "70...100"
status:
project: off
patch: off
comment: off
-89
View File
@@ -1,89 +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
RUN apt-get install --no-install-recommends -y \
php8.3 \
php8.3-common \
php8.3-gd \
php8.3-zip \
php8.3-curl \
php8.3-xml \
php8.3-xmlrpc \
php8.3-mbstring \
php8.3-sqlite \
php8.3-xdebug \
php8.3-pgsql \
php8.3-intl \
php8.3-imagick \
php8.3-gmp \
php8.3-apcu \
php8.3-bcmath \
php8.3-redis \
php8.3-soap \
php8.3-imap \
php8.3-opcache \
php8.3-cli \
php8.3-dev \
libmagickcore-6.q16-7-extra \
curl \
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.3/cli/conf.d/20-xdebug.ini && \
echo "xdebug.remote_autostart = 1" >> /etc/php/8.3/cli/conf.d/20-xdebug.ini && \
echo "apc.enable_cli=1" >> /etc/php/8.3/cli/conf.d/20-apcu.ini
# Autostart XDebug for apache
RUN { \
echo "xdebug.mode=debug"; \
echo "xdebug.start_with_request=yes"; \
} >> /etc/php/8.3/apache2/conf.d/20-xdebug.ini
# Increase PHP memory limit to 512mb
RUN sed -i 's/memory_limit = .*/memory_limit = 512M/' /etc/php/8.3/apache2/php.ini
# Docker
RUN apt-get -y install \
apt-transport-https \
ca-certificates \
curl \
gnupg-agent \
software-properties-common && \
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add - && \
add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable" && \
apt-get update -y && \
apt-get install -y docker-ce docker-ce-cli containerd.io && \
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
RUN useradd -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 16'
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
-38
View File
@@ -1,38 +0,0 @@
# SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: AGPL-3.0-or-later
version: '3'
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
-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
#
# Set git safe.directory
git config --global --add safe.directory /var/www/html
git config --global --add safe.directory /var/www/html/3rdparty
-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
+2329
View File
File diff suppressed because it is too large Load Diff
-26
View File
@@ -1,8 +1,5 @@
# https://editorconfig.org
# SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: AGPL-3.0-or-later
root = true
[*]
@@ -13,28 +10,5 @@ indent_style = tab
insert_final_newline = true
trim_trailing_whitespace = true
[*.feature]
indent_size = 2
indent_style = space
[*.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
-14
View File
@@ -1,14 +0,0 @@
# SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: AGPL-3.0-or-later
# Ignoring folders for eslint
node_modules/
3rdparty/
**/vendor/
**/l10n/
**/js/*
*.config.js
tests/lib/
apps-extra
# TODO: remove when comments files is not using handlebar templates anymore
apps/comments/src/templates.js
+6 -37
View File
@@ -1,48 +1,17 @@
/**
* SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
module.exports = {
globals: {
__webpack_nonce__: true,
__webpack_public_path__: true,
_: true,
$: true,
dayNames: true,
escapeHTML: true,
firstDay: true,
moment: true,
escapeHTML: true,
oc_userconfig: true,
sinon: true,
dayNames: true,
firstDay: true
},
plugins: [
'cypress',
],
extends: [
'@nextcloud/eslint-config/typescript',
'plugin:cypress/recommended',
],
extends: ['nextcloud'],
rules: {
'no-tabs': 'warn',
// TODO: make sure we fix this as this is bad vue coding style.
// Use proper sync modifier
'vue/no-mutating-props': 'warn',
'vue/custom-event-name-casing': ['error', 'kebab-case', {
// allows custom xxxx:xxx events formats
ignores: ['/^[a-z]+(?:-[a-z]+)*:[a-z]+(?:-[a-z]+)*$/u'],
}],
},
settings: {
jsdoc: {
mode: 'typescript',
},
},
overrides: [
// Allow any in tests
{
files: ['**/*.spec.ts'],
rules: {
'@typescript-eslint/no-explicit-any': 'warn',
},
}
],
}
}
-17
View File
@@ -1,17 +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
+24 -6
View File
@@ -1,6 +1,24 @@
# 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
/core/js/dist/*.js binary
/core/js/dist/*.js.map binary
/apps/accessibility/js/accessibility.js binary
/apps/accessibility/js/accessibility.js.map binary
/apps/comments/js/*.js binary
/apps/comments/js/*.js.map binary
/apps/files/js/dist/*.js binary
/apps/files/js/dist/*.js.map binary
/apps/files_sharing/js/dist/*.js binary
/apps/files_sharing/js/dist/*.js.map binary
/apps/files_versions/js/files_versions.js binary
/apps/files_versions/js/files_versions.js.map binary
/apps/oauth2/js/oauth2.js binary
/apps/oauth2/js/oauth2.js.map binary
/apps/settings/js/vue* binary
/apps/systemtags/js/systemtags.js binary
/apps/systemtags/js/systemtags.js.map binary
/apps/twofactor_backupcodes/js/*.js binary
/apps/twofactor_backupcodes/js/*.js.map binary
/apps/updatenotification/js/updatenotification.js binary
/apps/updatenotification/js/updatenotification.js.map binary
/apps/workflowengine/js/*.js binary
/apps/workflowengine/js/*.js.map binary
-78
View File
@@ -1,80 +1,2 @@
# App maintainers
/apps/admin_audit/appinfo/info.xml @luka-nextcloud @blizzz
/apps/cloud_federation_api/appinfo/info.xml @mejo-
/apps/comments/appinfo/info.xml @edward-ly @Pytal
/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 @st3iny @SebastianKrupinski @tcitworld
/apps/dav/lib/CardDAV @hamza221 @SebastianKrupinski
/apps/dav/tests/unit/CalDAV @st3iny @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
/apps/files/appinfo/info.xml @skjnldsv @Pytal @ArtificialOwl @come-nc @artonge @icewind1991 @szaimen @susnux @nfebe
/apps/files_external/appinfo/info.xml @icewind1991 @artonge
/apps/files_reminders/appinfo/info.xml @Pytal
/apps/files_sharing/appinfo/info.xml @skjnldsv @come-nc
/apps/files_trashbin/appinfo/info.xml @Pytal @icewind1991
/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 @Pytal @JuliaKirschenheuter
/apps/sharebymail/appinfo/info.xml @Altahrim
/apps/systemtags/appinfo/info.xml @Antreesy @marcelklehr
/apps/theming/appinfo/info.xml @skjnldsv @juliusknorr
/apps/twofactor_backupcodes/appinfo/info.xml @st3iny @miaulalala @ChristophWurst
/apps/updatenotification/appinfo/info.xml @Pytal @JuliaKirschenheuter
/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
# Frontend expertise
/apps/files/src* @skjnldsv
/apps/files_external/src* @skjnldsv
/apps/files_reminders/src* @skjnldsv
/apps/files_sharing/src/actions* @skjnldsv
/apps/files_trashbin/src* @skjnldsv
# Security team
/build/psalm-baseline-security.xml @nickvergessen
/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 @st3iny
/apps/twofactor_backupcodes @ChristophWurst @miaulalala @nickvergessen @st3iny
/core/templates/twofactor* @ChristophWurst @miaulalala @nickvergessen @st3iny
# Limit login to IP
# Watch login routes for https://github.com/nextcloud/limit_login_to_ip
/core/routes.php @Altahrim
# OpenAPI
openapi*.json @provokateurin
ResponseDefinitions.php @provokateurin
# Talk team
/lib/private/Comments @nickvergessen
/lib/private/Federation @nickvergessen
/lib/private/Talk @nickvergessen
/lib/public/Comments @nickvergessen
/lib/public/Federation @nickvergessen
/lib/public/OCM @nickvergessen
/lib/public/Talk @nickvergessen
/lib/public/UserStatus @nickvergessen
# Groupware
/build/integration/dav_features/caldav.feature @st3iny @SebastianKrupinski
/build/integration/dav_features/carddav.feature @st3iny @SebastianKrupinski
# Personal interest
*/Activity/* @nickvergessen
*/Notifications/* @nickvergessen
/lib/private/Profiler @CarlSchwan
/lib/public/Profiler @CarlSchwan
+6 -17
View File
@@ -1,10 +1,6 @@
<!--
- 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).
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].
### Short version
@@ -25,7 +21,7 @@ Help us to maximize the effort we can spend fixing issues and adding new feature
[templates]: ./ISSUE_TEMPLATE
[forum]: https://help.nextcloud.com/
[irc]: https://web.libera.chat/#nextcloud
[irc]: https://webchat.freenode.net/?channels=nextcloud
## Contributing to Source Code
@@ -33,13 +29,6 @@ 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.
@@ -48,16 +37,16 @@ In some areas unit testing is hard (aka almost impossible) as of today - in thes
### Sign your work
We use the Developer Certificate of Origin (DCO) as an additional safeguard
We use the Developer Certificate of Origin (DCO) as a 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>
```
````
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
+2 -3
View File
@@ -1,3 +1,2 @@
# SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: AGPL-3.0-or-later
custom: https://nextcloud.com/include/
# You can add one username per supported platform and one custom link
custom: https://www.bountysource.com/teams/nextcloud
-211
View File
@@ -1,211 +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"]
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:
- "29"
- "30"
- "31"
- "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).
+148
View File
@@ -0,0 +1,148 @@
---
name: Bug report
about: Help us improving by reporting a bug
labels: bug, 0. Needs triage
---
<!--
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.
This is the bug tracker for the Server component. Find other components at https://github.com/nextcloud/
For reporting potential security issues please see https://nextcloud.com/security/
To make it possible for us to deal with the bug please fill out below information carefully.
You can also use the Issue Template application to prefill most of the required information: https://apps.nextcloud.com/apps/issuetemplate
If you are a customer and are using Nextcloud Enterprise, please submit your issue directly in the Nextcloud Portal https://portal.nextcloud.com so it gets resolved more quickly by our dedicated engineers.
Note that 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.
-->
### Steps to reproduce
1.
2.
3.
### Expected behaviour
Tell us what should happen
### Actual behaviour
Tell us what happens instead
### Server configuration
**Operating system:**
**Web server:**
**Database:**
**PHP version:**
**Nextcloud version:** (see Nextcloud admin page)
**Updated from an older Nextcloud/ownCloud or fresh install:**
**Where did you install Nextcloud from:**
**Signing status:**
<details>
<summary>Signing status</summary>
```
Login as admin user into your Nextcloud and access
http://example.com/index.php/settings/integrity/failed
paste the results here.
```
</details>
**List of activated apps:**
<details>
<summary>App list</summary>
```
If you have access to your command line run e.g.:
sudo -u www-data php occ app:list
from within your Nextcloud installation folder
```
</details>
**Nextcloud configuration:**
<details>
<summary>Config report</summary>
```
If you have access to your command line run e.g.:
sudo -u www-data php occ config:list system
from within your Nextcloud installation folder
or
Insert your config.php content here.
Make sure to remove all sensitive content such as passwords. (e.g. database password, passwordsalt, secret, smtp password, …)
```
</details>
**Are you using external storage, if yes which one:** local/smb/sftp/...
**Are you using encryption:** yes/no
**Are you using an external user-backend, if yes which one:** LDAP/ActiveDirectory/Webdav/...
#### LDAP configuration (delete this part if not used)
<details>
<summary>LDAP config</summary>
```
With access to your command line run e.g.:
sudo -u www-data php occ ldap:show-config
from within your Nextcloud installation folder
Without access to your command line download the data/owncloud.db to your local
computer or access your SQL server remotely and run the select query:
SELECT * FROM `oc_appconfig` WHERE `appid` = 'user_ldap';
Eventually replace sensitive data as the name/IP-address of your LDAP server or groups.
```
</details>
### Client configuration
**Browser:**
**Operating system:**
### Logs
#### Web server error log
<details>
<summary>Web server error log</summary>
```
Insert your webserver log here
```
</details>
#### Nextcloud log (data/nextcloud.log)
<details>
<summary>Nextcloud log</summary>
```
Insert your Nextcloud log here
```
</details>
#### Browser log
<details>
<summary>Browser log</summary>
```
Insert your browser log here, this could for example include:
a) The javascript console log
b) The network log
c) ...
```
</details>
+35 -48
View File
@@ -1,48 +1,35 @@
---
name: 🚀 Feature request
about: Suggest an idea for this project
labels: enhancement, 0. Needs triage
---
<!--
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.
---
name: Feature request
about: Suggest an idea for this project
labels: enhancement, 0. Needs triage
---
<!--
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.
This is the bug tracker for the Server component. Find other components at https://github.com/nextcloud/
For reporting potential security issues please see https://nextcloud.com/security/
To make it possible for us to best accommodate your use case, please fill out the information below carefully.
You can also use the Issue Template application to prefill most of the required information: https://apps.nextcloud.com/apps/issuetemplate
If you are a customer and are using Nextcloud Enterprise, please submit your issue directly in the Nextcloud Portal https://portal.nextcloud.com so it gets resolved more quickly by our dedicated engineers.
Note that 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.
-->
**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
+2 -2
View File
@@ -1,5 +1,5 @@
# 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
Most developers hang out on IRC. So join \#nextcloud-dev on Freenode for a chat!
-243
View File
@@ -1,243 +0,0 @@
# SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: AGPL-3.0-or-later
version: 2
updates:
# Linting and coding style
- package-ecosystem: composer
directory: "/"
schedule:
interval: weekly
day: saturday
time: "03:00"
timezone: Europe/Paris
labels:
- "3. to review"
- "feature: dependencies"
reviewers:
- "nextcloud/server-dependabot"
# cs-fixer
- package-ecosystem: composer
directory: "/vendor-bin/cs-fixer"
schedule:
interval: weekly
day: saturday
time: "04:10"
timezone: Europe/Copenhagen
labels:
- "3. to review"
- "feature: dependencies"
reviewers:
- "nextcloud/server-dependabot"
# openapi-extractor
- package-ecosystem: composer
directory: "/vendor-bin/openapi-extractor"
schedule:
interval: weekly
day: saturday
time: "04:20"
timezone: Europe/Brussels
labels:
- "3. to review"
- "feature: dependencies"
reviewers:
- "nextcloud/server-dependabot"
- "provokateurin"
# psalm
- package-ecosystem: composer
directory: "/vendor-bin/psalm"
schedule:
interval: weekly
day: saturday
time: "04:30"
timezone: Europe/Madrid
labels:
- "3. to review"
- "feature: dependencies"
reviewers:
- "nextcloud/server-dependabot"
# phpunit
- package-ecosystem: composer
directory: "/vendor-bin/phpunit"
schedule:
interval: weekly
day: saturday
time: "04:40"
timezone: Europe/Madrid
labels:
- "3. to review"
- "feature: dependencies"
reviewers:
- "nextcloud/server-dependabot"
# Main master npm
- package-ecosystem: npm
directory: "/"
schedule:
interval: weekly
day: saturday
time: "03:00"
timezone: Europe/Paris
open-pull-requests-limit: 10
labels:
- "3. to review"
- "feature: dependencies"
reviewers:
- "nextcloud/server-dependabot"
# Disable automatic rebasing because without a build CI will likely fail anyway
rebase-strategy: "disabled"
# Testing master npm
- package-ecosystem: npm
directory: "/build"
schedule:
interval: weekly
day: saturday
time: "03:00"
timezone: Europe/Paris
labels:
- "3. to review"
- "feature: dependencies"
# Testing master composer
- package-ecosystem: composer
directory: "/build/integration"
schedule:
interval: weekly
day: saturday
time: "03:00"
timezone: Europe/Paris
labels:
- "3. to review"
- "feature: dependencies"
- package-ecosystem: npm
directory: "/"
schedule:
interval: weekly
day: saturday
time: "03:00"
timezone: Europe/Paris
target-branch: stable29
labels:
- "3. to review"
- "feature: dependencies"
reviewers:
- "nextcloud/server-dependabot"
ignore:
- dependency-name: "*"
update-types: ["version-update:semver-major", "version-update:semver-minor"]
# Disable automatic rebasing because without a build CI will likely fail anyway
rebase-strategy: "disabled"
- package-ecosystem: npm
directory: "/"
schedule:
interval: weekly
day: saturday
time: "03:00"
timezone: Europe/Paris
target-branch: stable30
labels:
- "3. to review"
- "feature: dependencies"
reviewers:
- "nextcloud/server-dependabot"
ignore:
- dependency-name: "*"
update-types: ["version-update:semver-major", "version-update:semver-minor"]
# Disable automatic rebasing because without a build CI will likely fail anyway
rebase-strategy: "disabled"
- package-ecosystem: npm
directory: "/"
schedule:
interval: weekly
day: saturday
time: "03:00"
timezone: Europe/Paris
target-branch: stable31
labels:
- "3. to review"
- "feature: dependencies"
reviewers:
- "nextcloud/server-dependabot"
ignore:
- dependency-name: "*"
update-types: ["version-update:semver-major", "version-update:semver-minor"]
# Disable automatic rebasing because without a build CI will likely fail anyway
rebase-strategy: "disabled"
- package-ecosystem: composer
directory: "/build/integration"
schedule:
interval: weekly
day: saturday
time: "03:00"
timezone: Europe/Paris
target-branch: stable29
labels:
- "3. to review"
- "feature: dependencies"
reviewers:
- "nextcloud/server-dependabot"
ignore:
# ignore all GitHub linguist patch updates
- dependency-name: "*"
update-types: ["version-update:semver-major", "version-update:semver-minor", "version-update:semver-patch"]
- package-ecosystem: composer
directory: "/build/integration"
schedule:
interval: weekly
day: saturday
time: "03:00"
timezone: Europe/Paris
target-branch: stable30
labels:
- "3. to review"
- "feature: dependencies"
reviewers:
- "nextcloud/server-dependabot"
ignore:
# ignore all GitHub linguist patch updates
- dependency-name: "*"
update-types: ["version-update:semver-major", "version-update:semver-minor", "version-update:semver-patch"]
- package-ecosystem: composer
directory: "/build/integration"
schedule:
interval: weekly
day: saturday
time: "03:00"
timezone: Europe/Paris
target-branch: stable31
labels:
- "3. to review"
- "feature: dependencies"
reviewers:
- "nextcloud/server-dependabot"
ignore:
# ignore all GitHub linguist patch updates
- dependency-name: "*"
update-types: ["version-update:semver-major", "version-update:semver-minor", "version-update:semver-patch"]
# GitHub Actions
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: monthly
timezone: Europe/Paris
groups:
github-actions:
patterns:
- "*"
labels:
- "3. to review"
- "feature: dependencies"
reviewers:
- "nextcloud/server-dependabot"
-23
View File
@@ -1,23 +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)
-2
View File
@@ -1,2 +0,0 @@
SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors
SPDX-License-Identifier: AGPL-3.0-or-later
+33
View File
@@ -0,0 +1,33 @@
# We wait 1 months to check
daysUntilStale: 30
# If no answer after two weeks, we close
daysUntilClose: 14
# Only issues that requires info from the op
onlyLabels:
- "needs info"
# Only if issues that are not triaged
exemptLabels:
- "1. to develop"
- "2. developing"
- "3. to review"
- "4. to release"
- security
# Label to use when marking as stale
staleLabel: stale
# Comment to post when marking as stale. Set to `false` to disable
markComment: >
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.
# Limit the number of actions per hour, from 1-30. Default is 30
limitPerRun: 30
# Limit to only `issues` or `pulls`
only: issues
-98
View File
@@ -1,98 +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'
autocheckers:
runs-on: ubuntu-latest
needs: changes
if: needs.changes.outputs.src != 'false'
strategy:
matrix:
php-versions: ['8.1']
name: PHP checkers
steps:
- name: Checkout server
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 #v2.32.0
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: Set up dependencies
run: composer i
- name: Check auto loaders
run: bash ./build/autoloaderchecker.sh
- 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
summary:
permissions:
contents: none
runs-on: ubuntu-latest-low
needs: [changes, autocheckers]
if: always()
name: autocheckers-summary
steps:
- name: Summary status
run: if ${{ needs.changes.outputs.src != 'false' && needs.autocheckers.result != 'success' }}; then exit 1; fi
-40
View File
@@ -1,40 +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
run: |
# retrieve version number from branch reference
server_major=$(echo "${{ github.base_ref }}" | sed -En 's/stable//p')
echo "server_major=$server_major" >> $GITHUB_ENV
echo "current_month=$(date +%Y-%m)" >> $GITHUB_ENV
- name: Checking if ${{ env.server_major }} is EOL
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
-35
View File
@@ -1,35 +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: Download version.php from ${{ github.base_ref }}
run: curl 'https://raw.githubusercontent.com/nextcloud/server/${{ github.base_ref }}/version.php' --output version.php
- name: Run check
run: cat version.php | grep 'OC_VersionString' | grep -i -v 'RC'
@@ -1,55 +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@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- 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: Last 3rdparty commit on target branch
id: target
run: |
echo "commit=$(git ls-remote https://github.com/nextcloud/3rdparty refs/heads/${{ github.base_ref }} | awk '{ print $1}')" >> "$GITHUB_OUTPUT"
- name: Compare if 3rdparty commits are different
run: |
echo '3rdparty/ seems to not point to the last commit of the dedicated branch:'
echo 'Branch has: ${{ steps.actual.outputs.commit }}'
echo '${{ github.base_ref }} has: ${{ steps.target.outputs.commit }}'
- name: Fail if 3rdparty commits are different
if: ${{ steps.changes.outputs.src != 'false' && steps.actual.outputs.commit != steps.target.outputs.commit }}
run: |
exit 1
@@ -1,34 +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@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- uses: webiny/action-conventional-commits@8bc41ff4e7d423d56fa4905f6ff79209a78776c7 # v1.3.0
with:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
-180
View File
@@ -1,180 +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]
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@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
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@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.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 }}'
git rebase 'origin/${{ needs.init.outputs.base_ref }}'
- 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') }}
run: git push origin '${{ needs.init.outputs.head_ref }}'
- name: Force push
if: ${{ contains(needs.init.outputs.arg1, 'rebase') || contains(needs.init.outputs.arg1, 'amend') }}
run: git push --force origin '${{ needs.init.outputs.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'
@@ -1,68 +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@11bd71901bbe5b1630ceea73d27597364c9af683
with:
fetch-depth: 0
token: ${{ secrets.COMMAND_BOT_PAT }}
ref: ${{ steps.comment-branch.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: Pull 3rdparty
run: git submodule foreach 'if [ "$sm_path" == "3rdparty" ]; then git pull origin '"'"'${{ github.event.issue.pull_request.base.ref }}'"'"'; fi'
- name: Commit and push changes
run: |
git add 3rdparty
git commit -s -m 'Update submodule 3rdparty to latest ${{ github.event.issue.pull_request.base.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'
-186
View File
@@ -1,186 +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 }}
# Server requires head_ref instead of base_ref, as we want to test the PR branch
BRANCH: ${{ github.head_ref || github.ref_name }}
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@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
# 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@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.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@v4
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: ["component", '0', '1', '2', '3', '4', '5', '6', '7']
# Hack as strategy.job-total includes the component and GitHub does not allow math expressions
# Always align this number with the total of e2e runners (max. index + 1)
total-containers: [8]
name: runner ${{ matrix.containers }}
steps:
- name: Restore context
uses: buildjet/cache/restore@v4
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@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.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@7271bed2a170d73c0b08939cd192db51a1c46c50 # v6.7.10
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 }}
- name: Upload snapshots and videos
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0
if: always()
with:
name: snapshots_videos_${{ matrix.containers }}
path: |
cypress/snapshots
cypress/videos
- name: Extract NC logs
if: failure() && matrix.containers != 'component'
run: docker logs nextcloud-cypress-tests_${{ env.APP_NAME }} > nextcloud.log
- name: Upload NC logs
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0
if: failure() && matrix.containers != 'component'
with:
name: nc_logs_${{ matrix.containers }}
path: nextcloud.log
- name: Create data dir archive
if: failure() && matrix.containers != 'component'
run: docker exec nextcloud-cypress-tests_${{ env.APP_NAME }} tar -cvjf - data > data.tar
- name: Upload data dir archive
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0
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:
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.actor == 'dependabot[bot]' || github.actor == '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 }}
-121
View File
@@ -1,121 +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 * * *"
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:
# do not stop on another job's failure
fail-fast: false
matrix:
php-versions: ['8.1', '8.4']
ftpd: ['proftpd', 'vsftpd', 'pure-ftpd']
include:
- php-versions: '8.1'
coverage: ${{ github.event_name != 'pull_request' }}
name: php${{ matrix.php-versions }}-${{ matrix.ftpd }}
steps:
- name: Checkout server
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
with:
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@9e72090525849c5e82e596468b86eb55e9cc5401 #v2.32.0
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 \
${{ matrix.coverage && ' --coverage-clover ./clover.xml' || '' }}
- name: Upload code coverage
if: ${{ !cancelled() && matrix.coverage }}
uses: codecov/codecov-action@v5.3.1
with:
files: ./clover.xml
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
-187
View File
@@ -1,187 +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 * * *"
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:
matrix:
php-versions: ['8.1', '8.2', '8.3', '8.4']
include:
- php-versions: '8.2'
coverage: ${{ github.event_name != 'pull_request' }}
name: php${{ matrix.php-versions }}-s3
services:
minio:
image: bitnami/minio
env:
MINIO_ROOT_USER: nextcloud
MINIO_ROOT_PASSWORD: bWluaW8tc2VjcmV0LWtleS1uZXh0Y2xvdWQ=
MINIO_DEFAULT_BUCKETS: nextcloud
ports:
- '9000:9000'
steps:
- name: Checkout server
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 #v2.32.0
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, '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: |
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:files_external -- \
apps/files_external/tests/Storage/Amazons3Test.php \
apps/files_external/tests/Storage/VersionedAmazonS3Test.php \
${{ matrix.coverage && ' --coverage-clover ./clover.xml' || '' }}
- name: Upload code coverage
if: ${{ !cancelled() && matrix.coverage }}
uses: codecov/codecov-action@v5.3.1
with:
files: ./clover.xml
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
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.1', '8.2', '8.3']
include:
- php-versions: '8.3'
coverage: true
name: php${{ matrix.php-versions }}-s3
services:
localstack:
env:
SERVICES: s3
DEBUG: 1
image: localstack/localstack
ports:
- "4566:4566"
steps:
- name: Checkout server
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 #v2.32.0
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,'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 -- \
apps/files_external/tests/Storage/Amazons3Test.php \
apps/files_external/tests/Storage/VersionedAmazonS3Test.php \
${{ matrix.coverage && ' --coverage-clover ./clover.xml' || '' }}
- name: Upload code coverage
if: ${{ !cancelled() && matrix.coverage }}
uses: codecov/codecov-action@v5.3.1
with:
files: ./clover.xml
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
-111
View File
@@ -1,111 +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 * * *"
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:
# do not stop on another job's failure
fail-fast: false
matrix:
php-versions: ['8.1', '8.4']
sftpd: ['openssh']
include:
- php-versions: '8.1'
coverage: ${{ github.event_name != 'pull_request' }}
name: php${{ matrix.php-versions }}-${{ matrix.sftpd }}
steps:
- name: Checkout server
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
with:
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@9e72090525849c5e82e596468b86eb55e9cc5401 #v2.32.0
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 \
${{ matrix.coverage && ' --coverage-clover ./clover.xml' || '' }}
- name: Upload code coverage
if: ${{ !cancelled() && matrix.coverage }}
uses: codecov/codecov-action@v5.3.1
with:
files: ./clover.xml
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,101 +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 * * *"
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@11bd71901bbe5b1630ceea73d27597364c9af683
with:
submodules: true
- name: Checkout user_saml
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
with:
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
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 icewind1991/samba-krb-test-apache
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
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
-110
View File
@@ -1,110 +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 * * *"
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:
matrix:
php-versions: ['8.1']
include:
- php-versions: '8.1'
coverage: ${{ github.event_name != 'pull_request' }}
name: php${{ matrix.php-versions }}-smb
services:
samba:
image: ghcr.io/nextcloud/continuous-integration-samba:latest
ports:
- 445:445
steps:
- name: Checkout server
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 #v2.32.0
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 -- --verbose \
apps/files_external/tests/Storage/SmbTest.php \
${{ matrix.coverage && ' --coverage-clover ./clover.xml' || '' }}
- name: Upload code coverage
if: ${{ !cancelled() && matrix.coverage }}
uses: codecov/codecov-action@13ce06bfc6bbe3ecf90edbbf1bc32fe5978ca1d3 # v4.1.1
with:
files: ./clover.xml
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
-107
View File
@@ -1,107 +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 * * *"
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:
matrix:
php-versions: ['8.1', '8.2', '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
ports:
- 8081:80
steps:
- name: Checkout server
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 #v2.32.0
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 -- --verbose \
apps/files_external/tests/Storage/WebdavTest.php \
${{ matrix.coverage && ' --coverage-clover ./clover.xml' || '' }}
- name: Upload code coverage
if: ${{ !cancelled() && matrix.coverage }}
uses: codecov/codecov-action@13ce06bfc6bbe3ecf90edbbf1bc32fe5978ca1d3 # v4.1.1
with:
files: ./clover.xml
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
-95
View File
@@ -1,95 +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 * * *"
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:
matrix:
php-versions: ['8.1', '8.2', '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@11bd71901bbe5b1630ceea73d27597364c9af683
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 #v2.32.0
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 -- \
${{ matrix.coverage && ' --coverage-clover ./clover.xml' || '' }}
- name: Upload code coverage
if: ${{ !cancelled() && matrix.coverage }}
uses: codecov/codecov-action@v5.3.1
with:
files: ./clover.xml
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
+4 -27
View File
@@ -1,36 +1,13 @@
# 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
on: pull_request
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
name: Pull request checks
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
runs-on: ubuntu-latest
steps:
- name: Run check
uses: skjnldsv/block-fixup-merge-action@c138ea99e45e186567b64cf065ce90f7158c236a # v2
uses: xt0rted/block-autosquash-commits-action@master
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
-125
View File
@@ -1,125 +0,0 @@
# SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: DAV integration tests
on:
pull_request:
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:
# do not stop on another job's failure
fail-fast: false
matrix:
php-versions: ['8.1']
endpoint: ['old', 'new']
service: ['CalDAV', 'CardDAV']
name: ${{ matrix.service }} (${{ matrix.endpoint }} endpoint) php${{ matrix.php-versions }}
steps:
- name: Checkout server
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 #v2.32.0
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/setup-python-action@master
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
-112
View File
@@ -1,112 +0,0 @@
# SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: Litmus integration tests
on:
pull_request:
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:
# do not stop on another job's failure
fail-fast: false
matrix:
php-versions: ['8.1']
endpoint: ['webdav', 'dav']
name: Litmus WebDAV ${{ matrix.endpoint }}
steps:
- name: Checkout server
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 #v2.32.0
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,119 +0,0 @@
# SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: S3 primary storage integration tests
on:
pull_request:
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:
# do not stop on another job's failure
fail-fast: false
matrix:
php-versions: ['8.1']
key: ['objectstore', 'objectstore_multibucket']
name: php${{ matrix.php-versions }}-${{ matrix.key }}-minio
services:
redis:
image: ghcr.io/nextcloud/continuous-integration-redis:latest
options: --health-cmd="redis-cli ping" --health-interval=10s --health-timeout=5s --health-retries=3
ports:
- 6379:6379/tcp
minio:
image: bitnami/minio
env:
MINIO_ROOT_USER: nextcloud
MINIO_ROOT_PASSWORD: bWluaW8tc2VjcmV0LWtleS1uZXh0Y2xvdWQ=
MINIO_DEFAULT_BUCKETS: nextcloud
ports:
- "9000:9000"
steps:
- name: Checkout server
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 #v2.32.0
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
-170
View File
@@ -1,170 +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'
- 'setup_features'
- 'sharees_features'
- 'sharing_features'
- 'videoverification_features'
php-versions: ['8.1']
spreed-versions: ['main']
services:
redis:
image: ghcr.io/nextcloud/continuous-integration-redis:latest
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-7
ports:
- 389:389
env:
SLAPD_DOMAIN: nextcloud.ci
SLAPD_ORGANIZATION: Nextcloud
SLAPD_PASSWORD: admin
SLAPD_ADDITIONAL_MODULES: memberof
steps:
- name: Checkout server
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
submodules: true
- name: Checkout Talk app
if: ${{ matrix.test-suite == 'videoverification_features' }}
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
repository: nextcloud/spreed
path: apps/spreed
ref: ${{ matrix.spreed-versions }}
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 #v2.32.0
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 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
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
-95
View File
@@ -1,95 +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
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@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- 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@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v3
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
-82
View File
@@ -1,82 +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@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Set up php8.1
uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 #v2.32.0
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
-82
View File
@@ -1,82 +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.1', '8.2', '8.3', '8.4' ]
name: php-lint
steps:
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 #v2.32.0
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
-51
View File
@@ -1,51 +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@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- 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@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.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
-173
View File
@@ -1,173 +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
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@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- 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@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Set up node ${{ needs.versions.outputs.nodeVersion }}
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.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@13ce06bfc6bbe3ecf90edbbf1bc32fe5978ca1d3 # v4.3.1
with:
files: ./coverage/lcov.info
jsunit:
runs-on: ubuntu-latest
needs: [versions, changes]
if: ${{ needs.versions.result != 'failure' && needs.changes.outputs.src != 'false' }}
env:
CYPRESS_INSTALL_BINARY: 0
steps:
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Set up node ${{ needs.versions.outputs.nodeVersion }}
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.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: Test
run: npm run test:jsunit
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@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Set up node ${{ needs.versions.outputs.nodeVersion }}
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.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, jsunit, handlebars]
if: always()
name: node-test-summary
steps:
- name: Summary status
run: if ${{ needs.changes.outputs.src != 'false' && (needs.test.result != 'success' || needs.jsunit.result != 'success' || needs.handlebars.result != 'success') }}; then exit 1; fi
-105
View File
@@ -1,105 +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
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@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- 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@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v3
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
-75
View File
@@ -1,75 +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'
jobs:
build:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
branches: ['main', 'master', 'stable31', 'stable30', 'stable29']
name: npm-audit-fix-${{ matrix.branches }}
steps:
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
ref: ${{ matrix.branches }}
- 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@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v3
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@2a60bd2e79cc77f2cc4d9a3fe40f1a69896f3a87 # v0.1.0
- name: Run npm ci and npm run build
if: always()
env:
CYPRESS_INSTALL_BINARY: 0
run: |
npm ci
npm run build --if-present
- name: Create Pull Request
if: always()
uses: peter-evans/create-pull-request@67ccf781d68cd99b580ae25a5c18a1cc84ffff1f # v7.0.6
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
-127
View File
@@ -1,127 +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 * * *"
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:
matrix:
php-versions: ['8.1', '8.2']
include:
- php-versions: '8.3'
coverage: true
name: php${{ matrix.php-versions }}-azure
services:
azurite:
image: mcr.microsoft.com/azure-storage/azurite
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
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@11bd71901bbe5b1630ceea73d27597364c9af683
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 #v2.32.0
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 | grep -i -C9999 error && echo "Error during app setup" && exit 1 || exit 0
- name: PHPUnit
env:
OBJECT_STORE: azure
OBJECT_STORE_KEY: nextcloud
OBJECT_STORE_SECRET: bmV4dGNsb3Vk
run: composer run test -- --group PRIMARY-azure ${{ matrix.coverage && ' --coverage-clover ./clover.xml' || '' }}
- name: Upload code coverage
if: ${{ !cancelled() && matrix.coverage }}
uses: codecov/codecov-action@v5.3.1
with:
files: ./clover.xml
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
-133
View File
@@ -1,133 +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 * * *"
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:
matrix:
php-versions: ['8.1', '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
ports:
- 6379:6379/tcp
options: --health-cmd="redis-cli ping" --health-interval=10s --health-timeout=5s --health-retries=3
minio:
image: bitnami/minio
env:
MINIO_ROOT_USER: nextcloud
MINIO_ROOT_PASSWORD: bWluaW8tc2VjcmV0LWtleS1uZXh0Y2xvdWQ=
MINIO_DEFAULT_BUCKETS: nextcloud
ports:
- "9000:9000"
steps:
- name: Checkout server
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 #v2.32.0
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 | grep -i -C9999 error && echo "Error during app setup" && exit 1 || exit 0
- 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 ${{ matrix.coverage && ' --coverage-clover ./clover.xml' || '' }}
- name: Upload code coverage
if: ${{ !cancelled() && matrix.coverage }}
uses: codecov/codecov-action@v5.3.1
with:
files: ./clover.xml
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
-123
View File
@@ -1,123 +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 * * *"
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:
matrix:
php-versions: ['8.1', '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
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
ports:
- 5000:5000
- 8080:8080
steps:
- name: Checkout server
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 #v2.32.0
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 | grep -i -C9999 error && echo "Error during app setup" && exit 1 || exit 0
- name: PHPUnit
env:
OBJECT_STORE: swift
OBJECT_STORE_SECRET: veryfast
run: composer run test -- --group PRIMARY-swift ${{ matrix.coverage && ' --coverage-clover ./clover.xml' || '' }}
- name: Upload code coverage
if: ${{ !cancelled() && matrix.coverage }}
uses: codecov/codecov-action@v5.3.1
with:
files: ./clover.xml
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
-45
View File
@@ -1,45 +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@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Set up php
uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 #v2.32.0
with:
php-version: '8.1'
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
-120
View File
@@ -1,120 +0,0 @@
# SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: Performance testing
on:
pull_request:
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' }}
strategy:
fail-fast: false
matrix:
php-versions: ['8.1']
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@11bd71901bbe5b1630ceea73d27597364c9af683
with:
submodules: true
ref: ${{ github.event.pull_request.base.ref }}
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 #v2.32.0
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@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
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@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08
with:
name: profiles
path: |
before.json
after.json
- uses: actions/github-script@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
})
-66
View File
@@ -1,66 +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'
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:
matrix:
php-versions: ['8.1','8.3']
steps:
- name: Checkout server
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
with:
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@9e72090525849c5e82e596468b86eb55e9cc5401 #v2.32.0
with:
php-version: ${{ matrix.php-versions }}
extensions: ctype, curl, dom, fileinfo, gd, imagick, intl, json, mbstring, openssl, pdo_sqlite, posix, sqlite, xml, zip, apcu
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 Nextcloud
env:
DB_PORT: 4444
run: |
composer install
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 index.php
- name: PHPUnit
run: composer run test -- --exclude-group PRIMARY-azure,PRIMARY-s3,PRIMARY-swift,Memcached,Redis,RoutingWeirdness
-144
View File
@@ -1,144 +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
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:
matrix:
php-versions: ['8.1']
mariadb-versions: ['10.3', '10.6', '10.11', '11.4']
include:
- php-versions: '8.3'
mariadb-versions: '10.11'
coverage: ${{ github.event_name != 'pull_request' }}
- php-versions: '8.4'
mariadb-versions: '11.4'
name: MariaDB ${{ matrix.mariadb-versions }} (PHP ${{ matrix.php-versions }}) - database tests
services:
cache:
image: ghcr.io/nextcloud/continuous-integration-redis:latest
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@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 #v2.32.0
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 | grep -i -C9999 error && echo "Error during app setup" && exit 1 || exit 0
- name: PHPUnit
run: composer run test:db ${{ matrix.coverage && ' -- --coverage-clover ./clover.db.xml' || '' }}
- name: Upload db code coverage
if: ${{ !cancelled() && matrix.coverage }}
uses: codecov/codecov-action@v5.3.1
with:
files: ./clover.db.xml
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
-126
View File
@@ -1,126 +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:
matrix:
php-versions: ['8.1', '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
ports:
- 11212:11212/tcp
- 11212:11212/udp
steps:
- name: Checkout server
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 #v2.32.0
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 | grep -i -C9999 error && echo "Error during app setup" && exit 1 || exit 0
- name: PHPUnit memcached tests
run: composer run test -- --group Memcache,Memcached ${{ matrix.coverage && '--coverage-clover ./clover.xml' || '' }}
- name: Upload code coverage
if: ${{ !cancelled() && matrix.coverage }}
uses: codecov/codecov-action@v5.3.1
with:
files: ./clover.xml
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,184 +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:
matrix:
php-versions: ['8.1']
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
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
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
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
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
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
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@11bd71901bbe5b1630ceea73d27597364c9af683
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 #v2.32.0
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 | grep -i -C9999 error && echo "Error during app setup" && exit 1 || exit 0
- name: PHPUnit
run: composer run test:db ${{ matrix.coverage && ' -- --coverage-clover ./clover.db.xml' || '' }}
- name: Upload db code coverage
if: ${{ !cancelled() && matrix.coverage }}
uses: codecov/codecov-action@v5.3.1
with:
files: ./clover.db.xml
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
-149
View File
@@ -1,149 +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
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:
matrix:
php-versions: ['8.1']
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
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
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@11bd71901bbe5b1630ceea73d27597364c9af683
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 #v2.32.0
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 | grep -i -C9999 error && echo "Error during app setup" && exit 1 || exit 0
- name: PHPUnit
run: composer run test:db ${{ matrix.coverage && ' -- --coverage-clover ./clover.db.xml' || '' }}
- name: Upload db code coverage
if: ${{ !cancelled() && matrix.coverage }}
uses: codecov/codecov-action@v5.3.1
with:
files: ./clover.db.xml
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
-131
View File
@@ -1,131 +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/**'
- '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:
matrix:
php-versions: ['8.1', '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
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@11bd71901bbe5b1630ceea73d27597364c9af683
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 #v2.32.0
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 | grep -i -C9999 error && echo "Error during app setup" && exit 1 || exit 0
- name: PHPUnit nodb testsuite
run: composer run test -- --exclude-group DB,SLOWDB ${{ matrix.coverage && ' --coverage-clover ./clover.nodb.xml' || '' }}
- name: Upload nodb code coverage
if: ${{ !cancelled() && matrix.coverage }}
uses: codecov/codecov-action@v5.3.1
with:
files: ./clover.nodb.xml
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,121 +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 * * *"
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:
# do not stop on another job's failure
fail-fast: false
matrix:
php-versions: ['8.1']
key: ['s3', 's3-multibucket']
name: php${{ matrix.php-versions }}-${{ matrix.key }}-minio
services:
cache:
image: ghcr.io/nextcloud/continuous-integration-redis:latest
ports:
- 6379:6379/tcp
options: --health-cmd="redis-cli ping" --health-interval=10s --health-timeout=5s --health-retries=3
minio:
image: bitnami/minio
env:
MINIO_ROOT_USER: nextcloud
MINIO_ROOT_PASSWORD: bWluaW8tc2VjcmV0LWtleS1uZXh0Y2xvdWQ=
MINIO_DEFAULT_BUCKETS: nextcloud
ports:
- "9000:9000"
steps:
- name: Checkout server
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 #v2.32.0
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 | grep -i -C9999 error && echo "Error during app setup" && exit 1 || exit 0
- 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
-153
View File
@@ -1,153 +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
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.1'
- oracle-versions: '18'
php-versions: '8.1'
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
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@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 #v2.32.0
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 | grep -i -C9999 error && echo "Error during app setup" && exit 1 || exit 0
- name: PHPUnit
run: composer run test:db ${{ matrix.coverage && ' -- --coverage-clover ./clover.db.xml' || '' }}
- name: Upload db code coverage
if: ${{ !cancelled() && matrix.coverage }}
uses: codecov/codecov-action@v5.3.1
with:
files: ./clover.db.xml
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
-148
View File
@@ -1,148 +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
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:
matrix:
php-versions: ['8.1']
# To keep the matrix smaller we ignore PostgreSQL versions in between as we already test the minimum and the maximum
postgres-versions: ['13', '17']
include:
- php-versions: '8.3'
postgres-versions: '17'
coverage: ${{ github.event_name != 'pull_request' }}
- php-versions: '8.4'
postgres-versions: '17'
name: PostgreSQL ${{ matrix.postgres-versions }} (PHP ${{ matrix.php-versions }}) - database tests
services:
cache:
image: ghcr.io/nextcloud/continuous-integration-redis:latest
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
ports:
- 4444: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
steps:
- name: Checkout server
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 #v2.32.0
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 | grep -i -C9999 error && echo "Error during app setup" && exit 1 || exit 0
- name: PHPUnit database tests
run: composer run test:db ${{ matrix.coverage && ' -- --coverage-clover ./clover.db.xml' || '' }}
- name: Upload db code coverage
if: ${{ !cancelled() && matrix.coverage }}
uses: codecov/codecov-action@v5.3.1
with:
files: ./clover.db.xml
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
-130
View File
@@ -1,130 +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
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:
matrix:
php-versions: ['8.2', '8.3', '8.4']
include:
- php-versions: '8.1'
coverage: ${{ github.event_name != 'pull_request' }}
name: SQLite (PHP ${{ matrix.php-versions }})
services:
cache:
image: ghcr.io/nextcloud/continuous-integration-redis:latest
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@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 #v2.32.0
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 | grep -i -C9999 error && echo "Error during app setup" && exit 1 || exit 0
- name: Nextcloud debug information
run: ./occ app:list && echo "======= System config =======" && ./occ config:list system
- name: PHPUnit database tests
run: composer run test:db ${{ matrix.coverage && ' -- --coverage-clover ./clover.db.xml' || '' }}
- name: Upload db code coverage
if: ${{ !cancelled() && matrix.coverage }}
uses: codecov/codecov-action@v5.3.1
with:
files: ./clover.db.xml
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
-50
View File
@@ -1,50 +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 * * *'
jobs:
pr-feedback:
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: marcelklehr/pr-feedback-action@1883b38a033fb16f576875e0cf45f98b857655c4
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 }},nextcloud-command,nextcloud-android-bot'
exempt-bots: true
-22
View File
@@ -1,22 +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]
jobs:
reuse-compliance-check:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: REUSE Compliance Check
uses: fsfe/reuse-action@bb774aa972c2a89ff34781233d275075cbddf542 # v5.0.0
-34
View File
@@ -1,34 +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 * * *"
jobs:
stale:
runs-on: ubuntu-latest
if: ${{ github.repository_owner != 'nextcloud-gmbh' }}
permissions:
issues: write
steps:
- uses: actions/stale@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
-139
View File
@@ -1,139 +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'
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@11bd71901bbe5b1630ceea73d27597364c9af683
with:
submodules: true
- name: Set up php
uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 #v2.32.0
with:
php-version: '8.1'
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@11bd71901bbe5b1630ceea73d27597364c9af683
with:
submodules: true
- name: Set up php
uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 #v2.32.0
with:
php-version: '8.1'
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@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@11bd71901bbe5b1630ceea73d27597364c9af683
with:
submodules: true
- name: Set up php
uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 #v2.32.0
with:
php-version: '8.1'
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@11bd71901bbe5b1630ceea73d27597364c9af683
with:
submodules: true
- name: Set up php
uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 #v2.32.0
with:
php-version: '8.1'
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,45 +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 * * *"
jobs:
update-ca-certificate-bundle:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
branches: ['master', 'stable31', 'stable30', 'stable29', 'stable28', 'stable27', 'stable26', 'stable25', 'stable24', 'stable23', 'stable22']
name: update-ca-certificate-bundle-${{ matrix.branches }}
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
with:
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@67ccf781d68cd99b580ae25a5c18a1cc84ffff1f
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,48 +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 * * *"
jobs:
update-code-signing-crl:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
branches: ['master', 'stable30', 'stable29', 'stable28', 'stable27', 'stable26', 'stable25', 'stable24', 'stable23', 'stable22']
name: update-code-signing-crl-${{ matrix.branches }}
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
with:
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@67ccf781d68cd99b580ae25a5c18a1cc84ffff1f
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
+3 -34
View File
@@ -1,7 +1,3 @@
# 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
/config/config.php
@@ -17,10 +13,9 @@
# ignore all apps except core ones
/apps*/*
!/apps/accessibility
!/apps/cloud_federation_api
!/apps/comments
!/apps/contactsinteraction
!/apps/dashboard
!/apps/dav
!/apps/files
!/apps/federation
@@ -28,14 +23,12 @@
!/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
@@ -44,9 +37,6 @@
!/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
@@ -64,9 +54,6 @@
!/themes/example
!/themes/README
# Love to people that develop the updater
/updater
# just sane ignores
.*.sw[po]
*.bak
@@ -82,8 +69,6 @@ CVS/*
.svn/*
RCS/*
*.backup*
.php_cs.cache
.php-cs-fixer.cache
# kdevelop
.kdev
@@ -106,7 +91,6 @@ nbproject
# vscode
.vscode
*.code-workspace
# geany
*.geany
@@ -138,10 +122,9 @@ nbproject
/build/bin
/build/lib/
/build/jsdocs/
/build/integration/output/
/build/integration/phpserver.log
/npm-debug.log
/PhantomJS_*
/build/package-lock.json
# puphpet
puphpet
@@ -152,7 +135,6 @@ Vagrantfile
# Tests - auto-generated files
/data-autotest
/results.sarif
/tests/.phpunit.result.cache
/tests/coverage*
/tests/css
@@ -167,20 +149,7 @@ Vagrantfile
/config/config-autotest-backup.php
/config/autoconfig.php
clover.xml
/coverage
# Tests - dependencies
tests/acceptance/composer.lock
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
-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
+26 -65
View File
@@ -7,30 +7,22 @@
<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 Referrer-Policy
Header always set Referrer-Policy "no-referrer"
Header onsuccess unset X-Content-Type-Options
Header always set X-Content-Type-Options "nosniff"
Header onsuccess unset X-Download-Options
Header always set X-Download-Options "noopen"
Header onsuccess unset X-Frame-Options
Header always set X-Frame-Options "SAMEORIGIN"
@@ -38,7 +30,7 @@
Header always set X-Permitted-Cross-Domain-Policies "none"
Header onsuccess unset X-Robots-Tag
Header always set X-Robots-Tag "noindex, nofollow"
Header always set X-Robots-Tag "none"
Header onsuccess unset X-XSS-Protection
Header always set X-XSS-Protection "1; mode=block"
@@ -47,22 +39,16 @@
</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 "\.(css|js|svg|gif)$">
Header set Cache-Control "max-age=15778463"
</FilesMatch>
# Let browsers cache OTF and WOFF files for a week
<FilesMatch "\.(otf|woff2?)$">
# Let browsers cache WOFF files for a week
<FilesMatch "\.woff2?$">
Header set Cache-Control "max-age=604800"
</FilesMatch>
</IfModule>
<IfModule mod_php.c>
<IfModule mod_php7.c>
php_value mbstring.func_overload 0
php_value default_charset 'UTF-8'
php_value output_buffering 0
@@ -70,56 +56,31 @@
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>
<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/webfinger /public.php?service=webfinger [QSA,L]
RewriteRule ^\.well-known/nodeinfo /public.php?service=nodeinfo [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|pki-validation)/.*
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
+1 -2
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,
+3 -10
View File
@@ -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>
@@ -165,7 +164,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>
@@ -215,7 +213,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>
@@ -360,8 +357,7 @@ 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>
John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com> John Molakvoæ <skjnldsv@users.noreply.github.com>
st3so <st3so@server.fake>
Stefan <mu.stefan@googlemail.com>
Stefan Göckeritz <admin@s-goecker.de>
@@ -384,8 +380,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>
@@ -411,9 +405,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>
Vincent Petry <pvince81@owncloud.com> Vincent Petry <PVince81@yahoo.fr>
Vincent Petry <pvince81@owncloud.com> Vincent Petry <vincent@vvortex.site>
Vinicius Cubas Brand <vinicius@eita.org.br> Vinicius Cubas Brand <viniciuscb@gmail.com>
Vitaly Kuznetsov <vitty@altlinux.ru>
Vladimir Sapronov <vladimir.sapronov@gmail.com>
-1
View File
@@ -1 +0,0 @@
**/*.spec.js
-37
View File
@@ -1,37 +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()
->exclude('config')
->exclude('3rdparty')
->exclude('build/stubs')
->exclude('composer')
->in(__DIR__);
$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: []
-344
View File
File diff suppressed because one or more lines are too long
-3
View File
@@ -1,6 +1,3 @@
# SPDX-FileCopyrightText: 2016-2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-FileCopyrightText: 2016 ownCloud, Inc.
# SPDX-License-Identifier: AGPL-3.0-only
before_commands:
- 'git submodule update --init --recursive'
+98 -158
View File
@@ -1,195 +1,135 @@
[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
host = https://www.transifex.com
lang_map = bg_BG: bg, cs_CZ: cs, fi_FI: fi, hu_HU: hu, nb_NO: nb, sk_SK: sk, th_TH: th, ja_JP: ja
[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]
[nextcloud.core]
file_filter = translationfiles/<lang>/core.po
source_file = translationfiles/templates/core.pot
source_lang = en
type = PO
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]
[nextcloud.files]
file_filter = translationfiles/<lang>/files.po
source_file = translationfiles/templates/files.pot
source_lang = en
type = PO
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]
[nextcloud.settings-1]
file_filter = translationfiles/<lang>/settings.po
source_file = translationfiles/templates/settings.pot
source_lang = en
type = PO
type = PO
[o:nextcloud:p:nextcloud:r:sharebymail]
file_filter = translationfiles/<lang>/sharebymail.po
source_file = translationfiles/templates/sharebymail.pot
[nextcloud.lib]
file_filter = translationfiles/<lang>/lib.po
source_file = translationfiles/templates/lib.pot
source_lang = en
type = PO
type = PO
[o:nextcloud:p:nextcloud:r:systemtags]
file_filter = translationfiles/<lang>/systemtags.po
source_file = translationfiles/templates/systemtags.pot
[nextcloud.dav]
file_filter = translationfiles/<lang>/dav.po
source_file = translationfiles/templates/dav.pot
source_lang = en
type = PO
type = PO
[o:nextcloud:p:nextcloud:r:theming]
file_filter = translationfiles/<lang>/theming.po
source_file = translationfiles/templates/theming.pot
[nextcloud.files_encryption]
file_filter = translationfiles/<lang>/encryption.po
source_file = translationfiles/templates/encryption.pot
source_lang = en
type = PO
type = PO
[o:nextcloud:p:nextcloud:r:twofactor_backupcodes]
file_filter = translationfiles/<lang>/twofactor_backupcodes.po
source_file = translationfiles/templates/twofactor_backupcodes.pot
[nextcloud.files_external]
file_filter = translationfiles/<lang>/files_external.po
source_file = translationfiles/templates/files_external.pot
source_lang = en
type = PO
type = PO
[o:nextcloud:p:nextcloud:r:updatenotification]
file_filter = translationfiles/<lang>/updatenotification.po
source_file = translationfiles/templates/updatenotification.pot
[nextcloud.files_sharing]
file_filter = translationfiles/<lang>/files_sharing.po
source_file = translationfiles/templates/files_sharing.pot
source_lang = en
type = PO
type = PO
[o:nextcloud:p:nextcloud:r:user_ldap]
[nextcloud.files_trashbin]
file_filter = translationfiles/<lang>/files_trashbin.po
source_file = translationfiles/templates/files_trashbin.pot
source_lang = en
type = PO
[nextcloud.files_versions]
file_filter = translationfiles/<lang>/files_versions.po
source_file = translationfiles/templates/files_versions.pot
source_lang = en
type = PO
[nextcloud.user_ldap]
file_filter = translationfiles/<lang>/user_ldap.po
source_file = translationfiles/templates/user_ldap.pot
source_lang = en
type = PO
type = PO
[o:nextcloud:p:nextcloud:r:user_status]
file_filter = translationfiles/<lang>/user_status.po
source_file = translationfiles/templates/user_status.pot
[nextcloud.comments]
file_filter = translationfiles/<lang>/comments.po
source_file = translationfiles/templates/comments.pot
source_lang = en
type = PO
type = PO
[o:nextcloud:p:nextcloud:r:weather_status]
file_filter = translationfiles/<lang>/weather_status.po
source_file = translationfiles/templates/weather_status.pot
[nextcloud.federatedfilesharing]
file_filter = translationfiles/<lang>/federatedfilesharing.po
source_file = translationfiles/templates/federatedfilesharing.pot
source_lang = en
type = PO
type = PO
[o:nextcloud:p:nextcloud:r:webhook_listeners]
file_filter = translationfiles/<lang>/webhook_listeners.po
source_file = translationfiles/templates/webhook_listeners.pot
[nextcloud.federation]
file_filter = translationfiles/<lang>/federation.po
source_file = translationfiles/templates/federation.pot
source_lang = en
type = PO
type = PO
[o:nextcloud:p:nextcloud:r:workflowengine]
[nextcloud.oauth2]
file_filter = translationfiles/<lang>/oauth2.po
source_file = translationfiles/templates/oauth2.pot
source_lang = en
type = PO
[nextcloud.sharebymail]
file_filter = translationfiles/<lang>/sharebymail.po
source_file = translationfiles/templates/sharebymail.pot
source_lang = en
type = PO
[nextcloud.systemtags]
file_filter = translationfiles/<lang>/systemtags.po
source_file = translationfiles/templates/systemtags.pot
source_lang = en
type = PO
[nextcloud.updatenotification]
file_filter = translationfiles/<lang>/updatenotification.po
source_file = translationfiles/templates/updatenotification.pot
source_lang = en
type = PO
[nextcloud.theming]
file_filter = translationfiles/<lang>/theming.po
source_file = translationfiles/templates/theming.pot
source_lang = en
type = PO
[nextcloud.twofactor_backupcodes]
file_filter = translationfiles/<lang>/twofactor_backupcodes.po
source_file = translationfiles/templates/twofactor_backupcodes.pot
source_lang = en
type = PO
[nextcloud.workflowengine]
file_filter = translationfiles/<lang>/workflowengine.po
source_file = translationfiles/templates/workflowengine.pot
source_lang = en
type = PO
type = PO
[nextcloud.accessibility]
file_filter = translationfiles/<lang>/accessibility.po
source_file = translationfiles/templates/accessibility.pot
source_lang = en
type = PO
-3
View File
@@ -1,6 +1,3 @@
; SPDX-FileCopyrightText: 2016-2024 Nextcloud GmbH and Nextcloud contributors
; SPDX-FileCopyrightText: 2014-2016 ownCloud, Inc.
; SPDX-License-Identifier: AGPL-3.0-only
mbstring.func_overload=0
always_populate_raw_post_data=-1
default_charset='UTF-8'
+31 -284
View File
@@ -1,76 +1,40 @@
<!--
- 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>
- 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>
- Alexey Pyltsyn <lex61rus@gmail.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>
- Andrius <andrius.kulbis@ktu.lt>
- 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>
- 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>
@@ -79,14 +43,9 @@
- 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>
- Christian Berendt <berendt@b1-systems.de>
- Christian Jürges <christian@eqipe.ch>
@@ -98,114 +57,59 @@
- Christoph Wickert <cwickert@suse.de>
- Christoph Wurst <christoph@winzerhof-wurst.at>
- Christopher Bartz <bartz@dkrz.de>
- Christopher Ng <chrng8@gmail.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>
- 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>
- 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>
- Estelle Poulin <dev@inspiredby.es>
- 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>
- 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>
- Florin Peter <github@florin-peter.de>
- Fon E. Noel NFEBE <opensource@nfebe.com>
- Flávio Gomes da Silva Lisboa <flavio.lisboa@serpro.gov.br>
- Frank Isemann <frank@isemann.name>
- 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>
- 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>
- 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>
- Jean-Louis Dupond <jean-louis@dupond.be>
- Jens-Christian Fischer <jens-christian.fischer@switch.ch>
- Jesús Macias <jmacias@solidgear.es>
@@ -215,46 +119,29 @@
- 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 Koenig <mail@jokoenig.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>
- John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
- Jonas Sulzer <jonas@violoncello.ch>
- 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 Villafañez <jvillafanez@solidgear.es>
- Juan Pablo Villafáñez <jvillafanez@solidgear.es>
- 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>
- Jürgen Haas <juergen@paragon-es.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>
@@ -262,46 +149,29 @@
- 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>
- 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>
- Manish Bisht <manish.bisht490@gmail.com>
- 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>
- Mario Kolling <mario.kolling@serpro.gov.br>
- Marius Blüm <marius@lineone.io>
- Marius David Wieschollek <git.public@mdns.eu>
- Mark Berezovsky <xpnf@yandex.ru>
- 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 <github@diemattels.at>
- Martin Konrad <info@martin-konrad.net>
- Martin Konrad <konrad@frib.msu.edu>
- Martin Mattel <martin.mattel@diemattels.at>
@@ -309,89 +179,55 @@
- 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>
- Max Schmit <maxschm@hotmail.com>
- 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 Roitzsch <reactorcontrol@icloud.com>
- Michael Roth <michael.roth@rz.uni-augsburg.de>
- 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>
- Miguel Prokop <miguel.prokop@vtu.com>
- Mikael Hammarin <mikael@try2.se>
- Mikael Nordin <mickenordin@users.noreply.github.com>
- 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>
- Oliver Gasser <oliver.gasser@gmail.com>
- Oliver Kohl D.Sc. <oliver@kohl.bz>
- Oliver Salzburg <oliver.salzburg@gmail.com>
- Oliver Wegner <void1976@gmail.com>
- Olivier Paroz <github@oparoz.com>
- Olivier Paroz <owncloud@interfasys.ch>
- Orzu Ionut <orzu.ionut@gmail.com>
- Owen Winkler <a_github@midnightcircus.com>
- Pascal de Bruijn <pmjdebruijn@pcode.nl>
- Patrick Paysant <patrick.paysant@linagora.com>
- Patrick Paysant <ppaysant@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>
- Pellaeon Lin <nfsmwlin@gmail.com>
- Peter Kubica <peter@kubica.ch>
- Petre T <petre.tudor@dorkfarm.com>
- 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 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>
- Ralph Krimmel <rkrimme1@gwdg.de>
- Ramiro Aparicio <rapariciog@gmail.com>
- Randolph Carter <RandolphCarter@fantasymail.de>
@@ -400,10 +236,7 @@
- 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>
- Renaud Fortier <Renaud.Fortier@fsaa.ulaval.ca>
- Rinat Gumirov <rinat.gumirov@mail.ru>
- Robert Dailey <rcdailey@gmail.com>
- Robin Appelman <robin@icewind.nl>
@@ -415,28 +248,21 @@
- Romain Rivière <lecoyote@lecoyote.org>
- 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 <brantje@gmail.com>
- Sander Ruitenbeek <sander@grids.be>
- Sandro Lutz <sandro.lutz@temparus.ch>
- Sanpi <sanpi@homecomputing.fr>
- Sascha Sambale <mastixmc@gmail.com>
- Sascha Wiswedel <sascha.wiswedel@nextcloud.com>
- Scott Dutton <exussum12@users.noreply.github.com>
- Scott Dutton <scott@exussum.co.uk>
- Scott Shambarger <devel@shambarger.net>
- 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>
@@ -445,193 +271,114 @@
- 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 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>
- Thibault Coupin <thibault.coupin@gmail.com>
- Thibaut GRIDEL <tgridel@free.fr>
- Thomas Citharel <nextcloud@tcit.fr>
- Thomas Citharel <tcit@tcit.fr>
- Thomas Ebert <thomas.ebert@usability.de>
- 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 Brunner <tobias@tobru.ch>
- 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>
- Victor Dubiniuk <dubiniuk@owncloud.com>
- Viktor Szépe <viktor@szepe.net>
- Vincent Chan <plus.vincchan@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>
- coderkun <olli@coderkun.de>
- comradekingu <epost@anotheragency.no>
- dartcafe <github@dartcafe.de>
- davidgumberg <davidnoizgumberg@gmail.com>
- davitol <dtoledo@solidgear.es>
- dems54 <2083596+dems54@users.noreply.github.com>
- derkostka <sebastian.kostka@gmail.com>
- duritong <peter.meier+github@immerda.ch>
- 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>
- 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>
- labor4 <schreibtisch@labor4.ch>
- 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>
- oparoz <owncloud@interfasys.ch>
- 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>
- 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>
- sidey79 <s.butzek@gmx.de>
- sualko <klaus@jsxc.org>
- szaimen <szaimen@e.mail.de>
- tbartenstein <tbartenstein@users.noreply.github.com>
- tbelau666 <thomas.belau@gmx.de>
- tgrant <tom.grant760@gmail.com>
- timm2k <timm2k@gmx.de>
- tux-rampage <tux-rampage@users.noreply.github.com>
- 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.
With help from many libraries and frameworks including:
Open Collaboration Services
+1 -5
View File
@@ -1,8 +1,4 @@
<!--
- 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/).
The change log is at [https://nextcloud.com/changelog/](https://nextcloud.com/changelog/).
-4
View File
@@ -1,7 +1,3 @@
<!--
- SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors
- SPDX-License-Identifier: AGPL-3.0-or-later
-->
In the Nextcloud community, participants from all over the world come together to create Free Software for a free internet. This is made possible by the support, hard work and enthusiasm of thousands of people, including those who create and use Nextcloud software.
Our code of conduct offers some guidance to ensure Nextcloud participants can cooperate effectively in a positive and inspiring atmosphere, and to explain how together we can strengthen and support each other.
+9 -10
View File
@@ -1,16 +1,15 @@
<!--
- SPDX-FileCopyrightText: 2016-2024 Nextcloud GmbH and Nextcloud contributors
- SPDX-FileCopyrightText: 2011-2016 ownCloud, Inc.
- SPDX-License-Identifier: AGPL-3.0-or-later
-->
Files in Nextcloud are licensed under the Affero General Public License version 3,
the text of which can be found in `COPYING`, or any later version of the AGPL,
the text of which can be found in COPYING, or any later version of the AGPL,
unless otherwise noted.
For licensing of components please see the respective SPDX headers of the shipped
files in the `dist` folder.
Licensing of components:
* jQuery: MIT / GPL
* HTTP: 3 clause BSD
* MDB2: BSD style custom
* User: AGPL
* XML/RPC: MIT / PHP
* Elementary filetype icons: GPL v3+
All unmodified files from these and other sources retain their original copyright
and license notices: see the relevant individual files.
Attribution information for Nextcloud is contained in the `AUTHORS` file.
Attribution information for Nextcloud is contained in the AUTHORS file.
-28
View File
@@ -1,28 +0,0 @@
<!--
- SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors
- SPDX-License-Identifier: AGPL-3.0-or-later
-->
# Nextcloud Design contribution guidelines
## 👋 Welcome
At Nextcloud we want to make sure to have everything in place to enable designers to contribute making our apps universally accessible and easy to use.
## 🚢 How to contribute design
We have a dedicated page with more in-detail guidelines on our website:
https://nextcloud.com/design/
**TL;DR**
1. Check out open [issues](https://github.com/nextcloud/server/issues) here on GitHub (we label them with `design`)
2. Make sure create publicly accessible assets
3. Add your contributions to an issue and we promise we will review your contribution carefully and foster discussions
[This issue](https://github.com/nextcloud/desktop/issues/877) has examples of other apps, some simple mockups, and specifications about the design. In the discussions in the comments there are updates to the design as well.
[This pull request](https://github.com/nextcloud/desktop/pull/1565) by a developer has the implementation of that issue, the changes they made, and more design discussions and adjustments.
**We encourage you to:**
- Get in touch with the team by joining our [public Talk channel](https://cloud.nextcloud.com/call/gqff69i8)

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