Compare commits

..

702 Commits

Author SHA1 Message Date
Roeland Jago Douma b9d5e72be9 Merge pull request #14950 from nextcloud/version/noid/15.0.6
15.0.6
2019-04-04 09:19:13 +01:00
Nextcloud bot b190f0eed3 [tx-robot] updated from transifex 2019-04-04 00:13:32 +00:00
Morris Jobke 4cdcb2f35c 15.0.6
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-04-03 17:33:17 +01:00
Nextcloud bot b1ed447dd7 [tx-robot] updated from transifex 2019-04-03 00:13:45 +00:00
Nextcloud bot 1410f39efc [tx-robot] updated from transifex 2019-04-02 00:13:48 +00:00
Morris Jobke b856d4a66c Merge pull request #14924 from nextcloud/backport/14914/stable15
[stable15] Fix hidden file display in grid view
2019-04-01 12:01:27 +02:00
Julius Härtl e27831c2df Fix hidden file display in grid view
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2019-04-01 08:58:15 +00:00
Nextcloud bot 9f3158a098 [tx-robot] updated from transifex 2019-04-01 00:14:07 +00:00
Nextcloud bot 3bdb48f204 [tx-robot] updated from transifex 2019-03-31 01:12:53 +00:00
Nextcloud bot 5acb5ccad8 [tx-robot] updated from transifex 2019-03-30 01:13:44 +00:00
Roeland Jago Douma 446e289e44 Merge pull request #14909 from nextcloud/version/rc/15.0.6rc1
15.0.6 RC 1
2019-03-29 15:53:07 +01:00
Roeland Jago Douma 265973896e 15.0.6 RC 1
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-03-29 13:33:12 +01:00
Roeland Jago Douma e953ea47ea Merge pull request #14891 from nextcloud/stable15-14886
[stable15] Fix opening folders from different file lists
2019-03-29 13:32:01 +01:00
Nextcloud bot aafedb9728 [tx-robot] updated from transifex 2019-03-29 01:12:59 +00:00
Julius Härtl 8ac03c67a7 Fix opening folders from different file lists
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2019-03-28 09:24:47 +01:00
Roeland Jago Douma f4cc549e86 Merge pull request #14867 from nextcloud/backport/14628/stable15
[stable15] Fix plural rule detection for languages
2019-03-28 08:52:53 +01:00
Nextcloud bot 528d5299c7 [tx-robot] updated from transifex 2019-03-28 01:13:33 +00:00
Roeland Jago Douma c89fe858d0 Merge pull request #14865 from nextcloud/backport/14603/stable15
[stable15] Show a setup warning in case S3 object storage is used as primary storage
2019-03-27 19:50:40 +01:00
Morris Jobke cfbcb2c174 Fix unneeded doc link to unrelated resource
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-03-27 13:34:36 +01:00
Morris Jobke 689b7c19de Show a setup warning in case S3 object storage is used as primary storage
* checks for at least 50 GB of free space

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-03-27 13:34:36 +01:00
Morris Jobke 7b2332421b Fix behaviour of plural default rule
* undefined and empty string should trigger the default plural form

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-03-27 13:33:44 +01:00
Joas Schilling 156419af80 Rename the variable aswell
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-03-27 13:33:44 +01:00
Joas Schilling b9684ee0d3 Fix plural rule detection for languages
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-03-27 13:33:44 +01:00
Nextcloud bot c1fa96596a [tx-robot] updated from transifex 2019-03-27 12:06:38 +00:00
Roeland Jago Douma bbb0a62295 Merge pull request #14882 from nextcloud/backport/stable15/fix_translations
[stable15] Fix translations of settings
2019-03-27 12:52:42 +01:00
Roeland Jago Douma 8217ec3da5 [stable15] Fix translations of settings
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-03-27 12:52:21 +01:00
Morris Jobke c7a1e6c65e Merge pull request #14859 from nextcloud/backport/14853/stable15
[stable15] Make regions translatable
2019-03-26 17:44:55 +01:00
Morris Jobke 087fa7f395 Merge pull request #14857 from nextcloud/backport/14398/stable15
[stable15] Add setup check for missing UTF8MB4 on mysql
2019-03-26 17:20:38 +01:00
Morris Jobke 31fb0896a0 Add setup check for missing UTF8MB4 on mysql
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-03-26 14:56:24 +01:00
Morris Jobke be8a82ecba Merge pull request #14855 from nextcloud/backport/14583/remove-g+-federation
[stable15] Remove Google+ federation usersettings
2019-03-26 14:16:11 +01:00
Morris Jobke 986fec3f19 Merge pull request #14854 from nextcloud/backport/14790/fix-setup-checks-15
[stable15] Fix setup checks for ocm/ocs-provider
2019-03-26 13:41:53 +01:00
Morris Jobke 501545923f Make regions translatable
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-03-26 11:09:36 +00:00
Marius Blüm fc7ac08565 Remove G+ CSS rule (Feedback from Joas)
Signed-off-by: Marius Blüm <marius@lineone.io>
2019-03-26 11:53:20 +01:00
Marius Blüm 9c7a6c2c53 Remove G+ code from Federated Files Sharing-usersettings
Signed-off-by: Marius Blüm <marius@lineone.io>
2019-03-26 11:52:15 +01:00
Marius Blüm 89c0d879bc Remove G+ icon from Federated Files Sharing-usersettings
Signed-off-by: Marius Blüm <marius@lineone.io>
2019-03-26 11:51:58 +01:00
Morris Jobke 4e3e42eb23 Fix setup checks for ocm/ocs-provider
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-03-26 11:47:32 +01:00
Nextcloud bot bca4a9ecbb [tx-robot] updated from transifex 2019-03-26 10:41:42 +00:00
Roeland Jago Douma 280bf92f4c Merge pull request #14840 from nextcloud/backport/14838/stable15
[stable15] Fix placeholder in disable message
2019-03-26 07:50:38 +01:00
Joas Schilling d19355b25a Fix placeholder in disable message
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-03-25 16:01:33 +00:00
Morris Jobke 085741a795 Merge pull request #14795 from nextcloud/backport/14058/stable15
[stable15] Avoid replacement by user object
2019-03-22 01:26:16 +01:00
Vlastimil Pecinka 7cab488c6f Store user object later in the code
Signed-off-by: Vlastimil Pecinka <pecinka@email.cz>
2019-03-21 21:37:41 +00:00
Morris Jobke 2e30a5d107 Merge pull request #14781 from nextcloud/backport/14778/stable15
[stable15] Fix user creation using LDAP Plugin
2019-03-21 13:53:55 +01:00
Vinicius Cubas Brand 79b7f12a79 LDAP plugin: force createUser to return new user's DN
LDAP plugins must change the createUser method to return the DN, as we
need this to update the cache.

Signed-off-by: Vinicius Cubas Brand <viniciuscb@gmail.com>
2019-03-21 10:33:04 +00:00
Vinicius Cubas Brand 7d6a7ab351 Cache cleaning when subadmin adds user to group
This commit fix an error happening when the subadmin tries to create an
user, adding him/her to the group s/he is subadmin of, using a LDAP
User/Group plugin.

This just forces the cache to be reset after an user is added to a
group.

Signed-off-by: Vinicius Cubas Brand <viniciuscb@gmail.com>
2019-03-21 10:33:03 +00:00
Vinicius Cubas Brand 20b0817e5c fix user creation using LDAP Plugin
Signed-off-by: Vinicius Cubas Brand <viniciuscb@gmail.com>
2019-03-21 10:33:03 +00:00
Nextcloud bot 2c7f1fd001 [tx-robot] updated from transifex 2019-03-21 01:14:06 +00:00
Morris Jobke a5cbe94878 Merge pull request #14762 from nextcloud/backport/14674/stable15
[stable15] [app:files] Use current directory for hashing.
2019-03-20 22:30:38 +01:00
Morris Jobke 6fffd09a7c Merge pull request #14759 from nextcloud/backport/14691/stable15
[stable15] always allow moving mountpoints inside the same mountpoint
2019-03-20 16:41:14 +01:00
Morris Jobke 8781a77d37 Merge pull request #14709 from HuemerGroup/groupname_like_username-allow_share_with_both
groupname like username - allow share with both
2019-03-20 16:32:53 +01:00
Morris Jobke 38beea8642 Update lib/private/Share20/Manager.php
tabulator change

Co-Authored-By: aignerat <46312655+aignerat@users.noreply.github.com>
2019-03-20 12:51:26 +01:00
Morris Jobke 2a3645a5a8 Update lib/private/Share20/Manager.php
fixed tabulator

Co-Authored-By: aignerat <46312655+aignerat@users.noreply.github.com>
2019-03-20 12:50:48 +01:00
Evilham fad5424165 [app:files] Use current directory for hashing.
This fixes collisions that were causing uploads to break in a very
terrible way.

Kudos to @kesselb for finding the problematic place and to
@hottwister for the proposed solution.

Fixes #10527.
2019-03-20 10:21:21 +00:00
Robin Appelman 9b6ead8abf always allow moving mountpoints inside the same mountpoint
even if that mountpoint isn't normally a valid target for moving mounts into

Signed-off-by: Robin Appelman <robin@icewind.nl>
2019-03-20 09:59:17 +00:00
Roeland Jago Douma d211d5ef57 Merge pull request #14749 from nextcloud/backport/14744/stable15
[stable15] Always register the Notifier
2019-03-20 10:05:45 +01:00
Christoph Wurst fa779fe75c Merge pull request #14751 from nextcloud/backport/14747/stable15
[stable15] Fix getting the access list on external storage
2019-03-20 09:19:31 +01:00
Nextcloud bot ce619b07ae [tx-robot] updated from transifex 2019-03-20 01:12:57 +00:00
Roeland Jago Douma 086f41b0bc Fix getting the access list on external storage
If a file is on external storage there is no owner. WHich means we can't
check. So just return an empty array then.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-03-19 17:44:32 +00:00
Joas Schilling b0938d7d0d Always register the Notifier
... so background jobs without a user can prepare push notifications

Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-03-19 15:43:38 +00:00
Nextcloud bot 3c76c0ce11 [tx-robot] updated from transifex 2019-03-19 01:12:52 +00:00
Morris Jobke da7579c2e3 Merge pull request #14716 from Faldon/update_document_version
Updated documentation go.php to 15 and adjusted copyright year.
2019-03-18 17:23:52 +01:00
Roeland Jago Douma 3f559dd3ec Merge pull request #14696 from nextcloud/backport/13401/stable15
[stable15] improve lookup server behaviour
2019-03-18 10:07:15 +01:00
Morris Jobke ee6426024d Fix missing $config dependency in RetryJob
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-03-18 08:34:15 +01:00
Daniel Kesselberg 6e56160123 Fix Undefined property: OCA\LookupServerConnector\UpdateLookupServer::$config
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2019-03-18 08:33:58 +01:00
Nextcloud bot 590ea7c5fb [tx-robot] updated from transifex 2019-03-18 01:12:37 +00:00
Bjoern Schiessle edbe99d44e increase timespan between each retry
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2019-03-17 20:39:41 +01:00
Bjoern Schiessle 23c57b22cb improve lookup server behaviour
Don't try to connect to the lookup server if the lookup server was disabled
by the admin or an empty lookup server URL was given

Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2019-03-17 20:39:40 +01:00
Nextcloud bot cec3fd4dcf [tx-robot] updated from transifex 2019-03-17 01:13:33 +00:00
Nextcloud bot d33cec3d7d [tx-robot] updated from transifex 2019-03-16 01:12:43 +00:00
Thomas Pulzer 7233c0e797 Updated documentation go.php to 15 and adjusted copyright year.
Signed-off-by: Thomas Pulzer <t.pulzer@thesecretgamer.de>
2019-03-15 21:54:31 +01:00
Morris Jobke ab492adb9a Merge pull request #14699 from nextcloud/backport/14693/stable15
[stable15] dont try to restore a trashbin item to a readonly target
2019-03-15 10:56:31 +01:00
Morris Jobke b42e4b19ee Merge pull request #14700 from nextcloud/backport/14690/stable15
[stable15] throw a proper error if rename fails in dav
2019-03-15 10:53:40 +01:00
Morris Jobke 7cf35f4a56 Merge pull request #14697 from nextcloud/backport/14687/stable15
[stable15] add an integration test that ensures deletion of LDAP users
2019-03-15 10:49:20 +01:00
Christian Aigner cde8a2896d groupname like username - allow share with both
Signed-off-by: Christian Aigner <christian.aigner@huemer-it.com>
2019-03-15 10:18:27 +01:00
Nextcloud bot 9ebf78a88d [tx-robot] updated from transifex 2019-03-15 01:15:29 +00:00
Roeland Jago Douma d9119c0c64 Merge pull request #14694 from nextcloud/backport/14684/stable15
[stable15] handle long etags from dav external storage
2019-03-15 01:29:57 +01:00
Morris Jobke d734a4ba7b Merge pull request #14672 from nextcloud/backport/14640/disable-failing-tests
[stable15] Disable fragile tests
2019-03-15 00:25:06 +01:00
Robin Appelman 19a3ac67a7 throw a proper error if rename fails in dav
Signed-off-by: Robin Appelman <robin@icewind.nl>
2019-03-14 19:28:58 +00:00
Robin Appelman 7b1b161280 dont try to restore a trashbin item to a readonly target
Signed-off-by: Robin Appelman <robin@icewind.nl>
2019-03-14 19:27:29 +00:00
Arthur Schiwon 91b3080b3e add an integration test that ensures deletion of LDAP users
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2019-03-14 17:36:10 +00:00
Robin Appelman 54b14946b4 handle long etags from dav external storage
we can only store etags up to 40 characters long in the database, so when we get an etag that's longer we simply hash it to bring down the length

Signed-off-by: Robin Appelman <robin@icewind.nl>
2019-03-14 16:19:09 +00:00
Nextcloud bot 92634ec842 [tx-robot] updated from transifex 2019-03-14 16:08:44 +00:00
Morris Jobke 06c80c77c2 Add time between SMB test runs and properly log full changeset
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-03-14 16:43:19 +01:00
Morris Jobke 7e48b4ebb2 Disable failing files app test - act 4
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-03-14 16:31:42 +01:00
Morris Jobke 10ac33919e Disable failing files app test - act 3
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-03-14 16:24:20 +01:00
Morris Jobke 7bc7f55c02 Disable failing app management test
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-03-14 16:21:48 +01:00
Morris Jobke 9d965fa9eb Disable failing comments app test - act 2
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-03-14 13:45:36 +01:00
Morris Jobke 354e0f94a5 Disable failing files app test - act 2
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-03-14 13:44:41 +01:00
Morris Jobke f216e9913a Merge pull request #14677 from nextcloud/backport/14670/stable15
[stable15] Use SCSS variables since CSS vars are not loaded on public pages
2019-03-14 10:08:27 +01:00
Julius Härtl 1d5149aff6 Use SCSS variables since CSS vars are not loaded on public pages
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2019-03-14 07:52:10 +00:00
Morris Jobke 6ff4371348 Wait up to 10 seconds for incoming changes from SMB notifier
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-03-13 22:18:16 +01:00
Morris Jobke 75ccff42dc Disable fragile user acceptance tests
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-03-13 22:18:13 +01:00
Morris Jobke a63c719949 Disable failing login test
* tests/acceptance/features/login.feature:15
<details><summary>Show full log</summary>

```
  Scenario: log in with valid user and invalid password once fixed by admin # /drone/src/github.com/nextcloud/server/tests/acceptance/features/login.feature:15
    Given I act as John                                                     # ActorContext::iActAs()
    And I can not log in with user user0 and password 654231                # LoginPageContext::iCanNotLogInWithUserAndPassword()
    When I act as Jane                                                      # ActorContext::iActAs()
    And I am logged in as the admin                                         # LoginPageContext::iAmLoggedInAsTheAdmin()
    And I open the User settings                                            # SettingsMenuContext::iOpenTheUserSettings()
    And I set the password for user0 to 654321                              # UsersSettingsContext::iSetTheFieldForUserTo()
    And I act as John                                                       # ActorContext::iActAs()
    And I log in with user user0 and password 654321                        # LoginPageContext::iLogInWithUserAndPassword()
    Then I see that the current page is the Files app                       # FilesAppContext::iSeeThatTheCurrentPageIsTheFilesApp()
      Failed asserting that 'http://acceptance-login/index.php/login?user=user0' starts with "http://acceptance-login/index.php/apps/files/".

```
</details>

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-03-13 22:18:10 +01:00
Morris Jobke a2669cb93f Disable failing comments test
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-03-13 22:18:06 +01:00
Morris Jobke dc58f13962 Disable failing files app test
Fails with:

 * tests/acceptance/features/app-files.feature:90
<details><summary>Show full log</summary>

```
  Scenario: show favorites                                            # /drone/src/github.com/nextcloud/server/tests/acceptance/features/app-files.feature:90
    Given I am logged in                                              # LoginPageContext::iAmLoggedIn()
    And I mark "welcome.txt" as favorite                              # FileListContext::iMarkAsFavorite()
    When I open the "Favorites" section                               # AppNavigationContext::iOpenTheSection()
    Then I see that the current section is "Favorites"                # AppNavigationContext::iSeeThatTheCurrentSectionIs()
    Then I see that the file list contains a file named "welcome.txt" # FileListContext::iSeeThatTheFileListContainsAFileNamed()
      Row for file welcome.txt in file list could not be found after 100 seconds (NoSuchElementException)
```
</details>

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-03-13 22:18:02 +01:00
Morris Jobke a609a98c28 Disable failing apps management test
Fails with:

 * tests/acceptance/features/apps.feature:66
<details><summary>Show full log</summary>

```
  Scenario: Show section from app store                       # /drone/src/github.com/nextcloud/server/tests/acceptance/features/apps.feature:66
    Given I act as Jane                                       # ActorContext::iActAs()
    And I am logged in as the admin                           # LoginPageContext::iAmLoggedInAsTheAdmin()
    And I open the Apps management                            # SettingsMenuContext::iOpenTheAppsManagement()
    And I see that the current section is "Your apps"         # AppNavigationContext::iSeeThatTheCurrentSectionIs()
    When I open the "Files" section                           # AppNavigationContext::iOpenTheSection()
      Files section item in App Navigation could not be found after 100 seconds (NoSuchElementException)
    Then I see that there some apps listed from the app store # AppsManagementContext::iSeeThatThereSomeAppsListedFromTheAppStore()
    And I see that the current section is "Files"             # AppNavigationContext::iSeeThatTheCurrentSectionIs()

```
</details>

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-03-13 22:17:59 +01:00
Morris Jobke 8ae75731ad Disable failing files tag test
Fails with:

 * tests/acceptance/features/app-files-tags.feature:42
<details><summary>Show full log</summary>

```
  Scenario: add tags using the dropdown in the details view                                 # /drone/src/github.com/nextcloud/server/tests/acceptance/features/app-files-tags.feature:42
    Given I am logged in as the admin                                                       # LoginPageContext::iAmLoggedInAsTheAdmin()
    And I visit the settings page                                                           # SettingsMenuContext::iVisitTheSettingsPage()
    And I open the "Tag management" section                                                 # AppNavigationContext::iOpenTheSection()
    And I see that the button to select tags is shown                                       # SettingsContext::iSeeThatTheButtonToSelectTagsIsShown()
    And I create the tag "tag1" in the settings                                             # SettingsContext::iCreateTheTagInTheSettings()
    And I create the tag "tag2" in the settings                                             # SettingsContext::iCreateTheTagInTheSettings()
    And I create the tag "tag3" in the settings                                             # SettingsContext::iCreateTheTagInTheSettings()
    And I create the tag "tag4" in the settings                                             # SettingsContext::iCreateTheTagInTheSettings()
    And I see that the dropdown for tags in the settings eventually contains the tag "tag1" # SettingsContext::iSeeThatTheDropdownForTagsInTheSettingsEventuallyContainsTheTag()
    And I see that the dropdown for tags in the settings eventually contains the tag "tag2" # SettingsContext::iSeeThatTheDropdownForTagsInTheSettingsEventuallyContainsTheTag()
    And I see that the dropdown for tags in the settings eventually contains the tag "tag3" # SettingsContext::iSeeThatTheDropdownForTagsInTheSettingsEventuallyContainsTheTag()
    And I see that the dropdown for tags in the settings eventually contains the tag "tag4" # SettingsContext::iSeeThatTheDropdownForTagsInTheSettingsEventuallyContainsTheTag()
    And I log out                                                                           # SettingsMenuContext::iLogOut()
    And I am logged in                                                                      # LoginPageContext::iAmLoggedIn()
    And I open the details view for "welcome.txt"                                           # FileListContext::iOpenTheDetailsViewFor()
    And I open the input field for tags in the details view                                 # FilesAppContext::iOpenTheInputFieldForTagsInTheDetailsView()
    When I check the tag "tag2" in the dropdown for tags in the details view                # FilesAppContext::iCheckTheTagInTheDropdownForTagsInTheDetailsView()
    And I check the tag "tag4" in the dropdown for tags in the details view                 # FilesAppContext::iCheckTheTagInTheDropdownForTagsInTheDetailsView()
    Then I see that the tag "tag2" in the dropdown for tags in the details view is checked  # FilesAppContext::iSeeThatTheTagInTheDropdownForTagsInTheDetailsViewIsChecked()
    And I see that the tag "tag4" in the dropdown for tags in the details view is checked   # FilesAppContext::iSeeThatTheTagInTheDropdownForTagsInTheDetailsViewIsChecked()
    And I see that the input field for tags in the details view contains the tag "tag2"     # FilesAppContext::iSeeThatTheInputFieldForTagsInTheDetailsViewContainsTheTag()
      Failed asserting that false is true.
    And I see that the input field for tags in the details view contains the tag "tag4"     # FilesAppContext::iSeeThatTheInputFieldForTagsInTheDetailsViewContainsTheTag()

```
</details>

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-03-13 22:17:52 +01:00
Morris Jobke b242dad3fa Disable failing federated sharing tests
Fails with:

 * build/integration/federation_features/federated.feature:183
 * build/integration/federation_features/federated.feature:232
 * build/integration/federation_features/federated.feature:247
 * build/integration/federation_features/federated.feature:263
<details><summary>Show full log</summary>

```
  Scenario: Reshare a federated shared file                                                             # /drone/src/github.com/nextcloud/server/build/integration/federation_features/federated.feature:183
    Given Using server "REMOTE"                                                                         # FederationContext::usingServer()
    And user "user1" exists                                                                             # FederationContext::assureUserExists()
    And user "user2" exists                                                                             # FederationContext::assureUserExists()
    And Using server "LOCAL"                                                                            # FederationContext::usingServer()
    And user "user0" exists                                                                             # FederationContext::assureUserExists()
    And User "user0" from server "LOCAL" shares "/textfile0.txt" with user "user1" from server "REMOTE" # FederationContext::federateSharing()
    And User "user1" from server "REMOTE" accepts last pending share                                    # FederationContext::acceptLastPendingShare()
    And Using server "REMOTE"                                                                           # FederationContext::usingServer()
    And As an "user1"                                                                                   # FederationContext::asAn()
    When creating a share with                                                                          # FederationContext::creatingShare()
      | path        | /textfile0 (2).txt |
      | shareType   | 0                  |
      | shareWith   | user2              |
      | permissions | 19                 |
    Then the OCS status code should be "100"                                                            # FederationContext::theOCSStatusCodeShouldBe()
      Failed asserting that SimpleXMLElement Object &000000007d8e0d3c00000000403fd08a (
          0 => '404'
      ) matches expected '100'.
    ...
{"message":"Can not find share with ID: 8"}

  Scenario: Overwrite a federated shared folder as recipient                                             # /drone/src/github.com/nextcloud/server/build/integration/federation_features/federated.feature:232
    Given Using server "REMOTE"                                                                          # FederationContext::usingServer()
    And user "user1" exists                                                                              # FederationContext::assureUserExists()
    And user "user2" exists                                                                              # FederationContext::assureUserExists()
    And Using server "LOCAL"                                                                             # FederationContext::usingServer()
    And user "user0" exists                                                                              # FederationContext::assureUserExists()
    And User "user0" from server "LOCAL" shares "/PARENT" with user "user1" from server "REMOTE"         # FederationContext::federateSharing()
    And User "user1" from server "REMOTE" accepts last pending share                                     # FederationContext::acceptLastPendingShare()
    And Using server "REMOTE"                                                                            # FederationContext::usingServer()
    And As an "user1"                                                                                    # FederationContext::asAn()
    And User "user1" modifies text of "/textfile0.txt" with text "BLABLABLA"                             # FederationContext::modifyTextOfFile()
    When User "user1" uploads file "../../data/user1/files/textfile0.txt" to "/PARENT (2)/textfile0.txt" # FederationContext::userUploadsAFileTo()
      Client error: `PUT http://localhost:8180/remote.php/webdav/PARENT%20(2)/textfile0.txt` resulted in a `404 Not Found` response:
      <?xml version="1.0" encoding="utf-8"?>
      <d:error xmlns:d="DAV:" xmlns:s="http://sabredav.org/ns">
        <s:exception>Sabre\DA (truncated...)
       (GuzzleHttp\Exception\ClientException)
    ...
{"message":"Can not find share with ID: 10"}

  Scenario: Overwrite a federated shared file as recipient using old chunking                           # /drone/src/github.com/nextcloud/server/build/integration/federation_features/federated.feature:247
    Given Using server "REMOTE"                                                                         # FederationContext::usingServer()
    And user "user1" exists                                                                             # FederationContext::assureUserExists()
    And user "user2" exists                                                                             # FederationContext::assureUserExists()
    And Using server "LOCAL"                                                                            # FederationContext::usingServer()
    And user "user0" exists                                                                             # FederationContext::assureUserExists()
    And User "user0" from server "LOCAL" shares "/textfile0.txt" with user "user1" from server "REMOTE" # FederationContext::federateSharing()
    And User "user1" from server "REMOTE" accepts last pending share                                    # FederationContext::acceptLastPendingShare()
    And Using server "REMOTE"                                                                           # FederationContext::usingServer()
    And As an "user1"                                                                                   # FederationContext::asAn()
    And user "user1" uploads chunk file "1" of "3" with "AAAAA" to "/textfile0 (2).txt"                 # FederationContext::userUploadsChunkFileOfWithToWithChecksum()
      Client error: `PUT http://localhost:8180/remote.php/webdav/textfile0%20(2).txt-chunking-42-3-0` resulted in a `404 Not Found` response:
      <?xml version="1.0" encoding="utf-8"?>
      <d:error xmlns:d="DAV:" xmlns:s="http://sabredav.org/ns">
        <s:exception>Sabre\DA (truncated...)
       (GuzzleHttp\Exception\ClientException)
    ...
{"message":"Can not find share with ID: 11"}

  Scenario: Overwrite a federated shared folder as recipient using old chunking                  # /drone/src/github.com/nextcloud/server/build/integration/federation_features/federated.feature:263
    Given Using server "REMOTE"                                                                  # FederationContext::usingServer()
    And user "user1" exists                                                                      # FederationContext::assureUserExists()
    And user "user2" exists                                                                      # FederationContext::assureUserExists()
    And Using server "LOCAL"                                                                     # FederationContext::usingServer()
    And user "user0" exists                                                                      # FederationContext::assureUserExists()
    And User "user0" from server "LOCAL" shares "/PARENT" with user "user1" from server "REMOTE" # FederationContext::federateSharing()
    And User "user1" from server "REMOTE" accepts last pending share                             # FederationContext::acceptLastPendingShare()
    And Using server "REMOTE"                                                                    # FederationContext::usingServer()
    And As an "user1"                                                                            # FederationContext::asAn()
    And user "user1" uploads chunk file "1" of "3" with "AAAAA" to "/PARENT (2)/textfile0.txt"   # FederationContext::userUploadsChunkFileOfWithToWithChecksum()
      Client error: `PUT http://localhost:8180/remote.php/webdav/PARENT%20(2)/textfile0.txt-chunking-42-3-0` resulted in a `404 Not Found` response:
      <?xml version="1.0" encoding="utf-8"?>
      <d:error xmlns:d="DAV:" xmlns:s="http://sabredav.org/ns">
        <s:exception>Sabre\DA (truncated...)
       (GuzzleHttp\Exception\ClientException)
    ...
{"message":"Can not find share with ID: 12"}

```
</details>

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-03-13 22:16:30 +01:00
Morris Jobke 684bb8608d Do not run fragile TrashbinTest
Fails with:

There was 1 failure:

1) TrashbinTest::testExpireOldFiles
Failed asserting that null is identical to 'file2.txt'.

/drone/src/github.com/nextcloud/server/apps/files_trashbin/tests/TrashbinTest.php:186

OR

1) TrashbinTest::testExpireOldFiles
Failed asserting that null is identical to 'file2.txt'.

/drone/src/github.com/nextcloud/server/apps/files_trashbin/tests/TrashbinTest.php:193

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-03-13 22:16:27 +01:00
Roeland Jago Douma cdb3602671 Merge pull request #14661 from nextcloud/backport/14656/stable15
[stable15] prevent recursion when moving a file to the trashbin
2019-03-13 21:46:42 +01:00
Robin Appelman 57471cca04 prevent recursion when moving a file to the trashbin
Signed-off-by: Robin Appelman <robin@icewind.nl>
2019-03-13 16:17:30 +00:00
Morris Jobke 1c7f091272 Merge pull request #14658 from nextcloud/backport/14644/stable15
[stable15] Remove sensitive SMB arguments from exception log
2019-03-13 17:15:25 +01:00
Morris Jobke 144cf16221 Remove sensitive SMB arguments from exception log
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-03-13 13:00:57 +00:00
Morris Jobke 42cd3876d4 Merge pull request #14597 from nextcloud/backport/14425/stable15
[stable15] Do not calculate folder size for parent that also needs proper scan, fixes #3524
2019-03-08 17:31:54 +01:00
Morris Jobke e957b0a271 Merge pull request #14591 from nextcloud/backport/14464/stable15
[stable15] resolve user and groups in nested groups first before filtering the results
2019-03-08 17:31:39 +01:00
Morris Jobke 1b53d46466 Merge pull request #14596 from nextcloud/backport/14587/stable15
[stable15] Remove Google+ from Social Sharing Bundle
2019-03-08 17:30:14 +01:00
Morris Jobke 634390a299 Merge pull request #14534 from nextcloud/backport/14502/add-activities-for-group-membership-changes
[stable15] Add activities for group membership changes
2019-03-08 10:26:01 +01:00
Morris Jobke a7a39de878 Merge pull request #14599 from nextcloud/backport/14585/stable15
[stable15] Mention Open Cloud Mesh in Federated User Settings
2019-03-08 10:25:20 +01:00
Morris Jobke a4fd78a011 Merge pull request #14601 from nextcloud/backport/14590/stable15
[stable15] Update index.php
2019-03-08 09:51:35 +01:00
paul 8e14d232d4 Update index.php
Linking to NC 15 documentation instead of NC 13
2019-03-08 08:46:30 +00:00
Marius Blüm d0fdcbbd20 Mention Open Cloud Mesh in Federated User Settings
Signed-off-by: Marius Blüm <marius@lineone.io>
2019-03-08 08:43:19 +00:00
Ari Selseng 264b4ad3a9 Avoid calculating folder size for parent that needs scan.
Signed-off-by: Ari Selseng <ari@selseng.net>
2019-03-08 08:14:33 +00:00
Marius Blüm 7fa1cfcb17 Remove Google+ from Social Sharing Bundle (2)
Signed-off-by: Marius Blüm <marius@lineone.io>
2019-03-08 08:06:52 +00:00
Marius Blüm 7cd7750140 Remove "socialsharing_googleplus" from Social Sharing Bundle
Signed-off-by: Marius Blüm <marius@lineone.io>
2019-03-08 08:06:51 +00:00
Arthur Schiwon a358c4d81f remove unused use statement
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2019-03-07 22:39:54 +01:00
Arthur Schiwon 5c21e94db8 add missing config bits to integration tests
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2019-03-07 22:39:48 +01:00
Arthur Schiwon 3ea24fa630 with LDAP server set offline, config cannot be controlled via ocs anymore
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2019-03-07 22:39:41 +01:00
Arthur Schiwon a6c0d53a3e fix nested group retrieval also for 2 other cases
and also consolidate logic in one method

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2019-03-07 22:39:25 +01:00
Roland Tapken 3384e25154 Fixed unit test: groupsMatchFilter will not be called multiple times anymore.
Signed-off-by: Roland Tapken <roland@bitarbeiter.net>
2019-03-07 22:38:15 +01:00
Roland Tapken 0a469e8f23 Reduce queries to LDAP by caching nested groups
Nested groups are now cached in a CappedMemoryCache object to reduce
queries to the LDAP backend.

Signed-off-by: Roland Tapken <roland@bitarbeiter.net>
2019-03-07 22:37:21 +01:00
Roland Tapken 0997fd999e user_ldap: really resolve nested groups
The previous patch fixed the problem only for one level of indirection
because groupsMatchFilter() had been applied on each recursive call (and
thus there would be no second level if the first level fails the check).

This new implementation replaces the recursive call with a stack that
iterates all nested groups before filtering with groupsMatchFilter().

Signed-off-by: Roland Tapken <roland@bitarbeiter.net>
2019-03-07 22:36:21 +01:00
Roland Tapken fe169b021d user_ldap: Filter groups after nexted groups
Currently groupsMatchFilter is called before nested groups are resolved.
This basicly breaks this feature since it is not possible to inherit
membership in a group from another group.

Minimal example:

  Group filter: (&(objectClass=group),(cn=nextcloud))
  Nested groups: enabled

  cn=nextcloud,ou=Nextcloud,ou=groups,dn=company,dn=local
    objectClass: group

  cn=IT,ou=groups,dn=company,dn=local
    objectClass: group
    memberOf: cn=nextcloud,ou=Nextcloud,ou=groups,dn=company,dn=local

  cn=John Doe,ou=users,dn=company,dn=local
    objectClass: person
    memberOf: cn=IT,ou=groups,dn=company,dn=local

Since 'cn=IT,ou=groups,dn=company,dn=local' doesn't match the group
filter, John wouldn't be a member of group 'nextcloud'.

This patch fixes this by filtering the groups after all nested groups
have been collected. If nested groups is disabled the result will be the
same as without this patch.

Signed-off-by: Roland Tapken <roland@bitarbeiter.net>
2019-03-07 22:36:14 +01:00
Roeland Jago Douma 95bc1a0198 Merge pull request #14580 from nextcloud/backport/14579/stable15
[stable15] Have streams of files_external in sync
2019-03-07 15:02:16 +01:00
Roeland Jago Douma f5f4673827 Have streams of files_external in sync
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-03-07 12:59:47 +01:00
Joas Schilling fee02bbcaa Fix unit tests
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-03-07 10:04:22 +01:00
Roeland Jago Douma 3de750c88c Merge pull request #14570 from nextcloud/backport/14424/stable15
[stable15] Use a tmp file for swift writes
2019-03-06 20:35:46 +01:00
Roeland Jago Douma 30e790606e Use a tmp file for swift writes
Else this leads to a seekable stream error with chunked uploads

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-03-06 14:34:15 +00:00
Morris Jobke 3acee4f1b4 Merge pull request #14416 from nextcloud/backport/14343/stable15
[stable15] Parse multiple navigation items
2019-03-06 13:16:25 +01:00
Morris Jobke 0da0ee1ce4 Merge pull request #14559 from nextcloud/backport/14553/stable15
[stable15] Clear backupcode reminder when no 2fa
2019-03-06 11:57:03 +01:00
Roeland Jago Douma 390917a9e5 Do not send notification if no active 2fa
If the job is still present we should also not fire it off if there is
not a single active 2FA provider.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-03-06 09:17:38 +00:00
Roeland Jago Douma f42309f356 Clear backupcodes reminder if no 2FA is enabled
Fixes #14125

Listen to 2FA disable event. If a provider is disabled for a user. We
check if there are no more providers. If there are no more providers we
Remove the backupcode reminder notification (if still present).

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-03-06 09:17:38 +00:00
Roeland Jago Douma 4f4dad20fa Merge pull request #14546 from nextcloud/backport/14373/stable15
[stable15] Add test for updated CA bundle
2019-03-05 19:52:35 +01:00
Daniel Kesselberg 46061d9d6b DRONE_BRANCH is the target branch. DRONE_COMMIT_REFSPEC should work.
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2019-03-05 16:14:44 +00:00
Morris Jobke d2e12d6aa7 Add test for updated CA bundle
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-03-05 16:14:44 +00:00
Morris Jobke 30e9a17790 Merge pull request #14542 from nextcloud/backport/14451/stable15
[stable15] Check if password can be changed for the users backend in OCS api
2019-03-05 16:19:22 +01:00
Julius Härtl 37ba2562cf Check if password can be changed for the users backend in OCS api
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2019-03-05 13:28:05 +00:00
Morris Jobke b88eb01798 Merge pull request #14531 from nextcloud/backport/14528/stable15
[stable15] Fix database configuration
2019-03-05 12:23:22 +01:00
Joas Schilling e828bfca1e Update autoloader
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-03-05 11:32:00 +01:00
Joas Schilling 8c67f36f98 Add activities for group membership changes
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-03-05 11:29:56 +01:00
Joas Schilling facde54bf5 Fix whitespaces
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-03-05 10:02:09 +00:00
Joas Schilling 6cc0d9fa20 Fix database configuration
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-03-05 10:02:08 +00:00
Morris Jobke 6e5a93026c Merge pull request #14517 from nextcloud/backport/13871/stable15
[stable15] dav: Fix handling of chunked WebDAV upload
2019-03-05 10:05:25 +01:00
Morris Jobke 0f95b95a24 Merge pull request #14516 from nextcloud/backport/14499/stable15
[stable15] Do not cut full color on accessibility svg color invert
2019-03-05 10:02:28 +01:00
Morris Jobke ec9e82a689 Merge pull request #14521 from nextcloud/backport/14514/stable15
[stable15] Do not just write foobar
2019-03-05 10:00:44 +01:00
Roeland Jago Douma 3d5904b5cc Do not just write foobar
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-03-04 20:26:59 +00:00
Morris Jobke b89b7ae885 Merge pull request #14512 from nextcloud/smb-3.0.2-15
update icewind/smb to 3.0.2
2019-03-04 17:45:25 +01:00
Jan-Philipp Litza 6c5c01974f dav: Fix handling of chunked WebDAV upload
When $data is null (which can happen when $request->getBodyAsStream() returns
null), the Exceptions says "copied bytes: 0, expected filesize: 0", which
sounds more like success...
2019-03-04 16:44:21 +00:00
John Molakvoæ (skjnldsv) 2ca4473e28 Do not cut full color on accessibility svg color invert
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2019-03-04 16:40:03 +00:00
Morris Jobke af15979eb9 Merge pull request #14503 from nextcloud/backport/stable15/14390
[stable15] Fix expire date change eventhandler
2019-03-04 17:35:57 +01:00
Robin Appelman 594075f841 update icewind/smb to 3.0.2
Signed-off-by: Robin Appelman <robin@icewind.nl>
2019-03-04 16:40:45 +01:00
Julius Härtl e1ef77be98 Add handler for change event of the expire date field
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2019-03-04 13:00:43 +01:00
Roeland Jago Douma 4ee9069b7e Merge pull request #14472 from felixn/stable15
Fix for issue #13319: load oc-backbone-webdav before loading versions app
2019-03-04 12:19:34 +01:00
Morris Jobke e2462626e6 Merge pull request #14497 from nextcloud/backport/14494/stable15
[stable15] Make header.feature more robust by running it on apache
2019-03-04 11:33:53 +01:00
Morris Jobke a4908e28ba Merge pull request #14495 from nextcloud/backport/14440/stable15
[stable15] Run tests that fail with "no such process" over to apache server
2019-03-04 11:32:37 +01:00
Morris Jobke 2dc7d375d2 Make header.feature more robust by running it on apache
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-03-04 10:08:54 +00:00
Morris Jobke b8b0f492f7 Run tests that fail with "no such process" over to apache server
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-03-04 09:23:18 +00:00
Morris Jobke 71b5b9678c Merge pull request #14490 from nextcloud/backport/14489/stable15
[stable15] Add accessibility translations
2019-03-03 23:24:37 +01:00
John Molakvoæ (skjnldsv) 22ff4c566f Add accessibility translations
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2019-03-03 22:23:45 +00:00
Roeland Jago Douma 1f3dfc4949 Merge pull request #14462 from nextcloud/backport/14456/stable15
[stable15] Fix a bug with smb notify having leading slash when it should not
2019-03-03 13:46:31 +01:00
Felix Nieuwenhuizen b0c0bf84f6 Fix for issue #13319: load oc-backbone-webdav before loading versions app
Signed-off-by: Felix Nieuwenhuizen <felix@tdlrali.com>
2019-03-02 15:54:20 +01:00
Ari Selseng 054637f731 Fix a bug with smb notify having leading slash when it should not
Signed-off-by: Ari Selseng <ari@selseng.net>
2019-03-01 20:04:31 +00:00
Nextcloud bot 068b754d31 [tx-robot] updated from transifex 2019-03-01 01:12:48 +00:00
Roeland Jago Douma d067cf4116 Merge pull request #14438 from nextcloud/backport/14318/stable15
[stable15] Fix referrer policy meta tags.
2019-02-28 16:13:22 +01:00
Dominik Wasielewski c60f8248fe Remove additional referrer policy meta tag.
Signed-off-by: Dominik Wasielewski <d-wasi@web.de>
2019-02-28 12:47:08 +00:00
Dominik Wasielewski 80dfe0f484 Remove unnecessary meta tags.
Signed-off-by: Dominik Wasielewski <d-wasi@web.de>
2019-02-28 12:47:08 +00:00
Morris Jobke 2184cc4970 Merge pull request #14387 from nextcloud/backport/14346/stable15
[stable15] fix(EMailTemplate): malformed HTML in some cases
2019-02-28 13:45:38 +01:00
Roeland Jago Douma 988524d6b9 Merge pull request #14414 from nextcloud/backport/13844/stable15
[stable15] Bugfix for issue 10862: Trash-bin ignores trashbin_retention_obligation
2019-02-28 09:43:17 +01:00
Morris Jobke 92d0c28de4 Merge pull request #14376 from nextcloud/backport/13514/stable15
[stable15] Fix grid toggle button on public page
2019-02-28 09:42:02 +01:00
Nextcloud bot aac2669762 [tx-robot] updated from transifex 2019-02-28 01:12:49 +00:00
Morris Jobke 5679410fef Merge pull request #14420 from nextcloud/version/noid/15.0.5
15.0.5
2019-02-27 21:36:01 +01:00
Morris Jobke 401c074010 15.0.5
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-02-27 17:27:43 +01:00
Daniel Kesselberg 8240309f08 two item => two items
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2019-02-27 15:09:32 +00:00
Daniel Kesselberg f32fd975cb Generate id for navigation item
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2019-02-27 15:09:32 +00:00
Daniel Kesselberg ee9eba54e5 Parse multiple navigation items
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2019-02-27 15:09:31 +00:00
Felix Nieuwenhuizen 0685b98e1c Fix for issue 10862: calculation of free space ignores external storage (doesn't count towards quota)
Signed-off-by: Felix Nieuwenhuizen <felix@tdlrali.com>
2019-02-27 14:56:53 +00:00
Nextcloud bot 192bb12d5b [tx-robot] updated from transifex 2019-02-27 01:12:18 +00:00
Tomasz Paluszkiewicz e690658018 changed order of methods
Signed-off-by: Tomasz Paluszkiewicz <tomasz.paluszkiewicz@gmail.com>
2019-02-26 13:42:41 +00:00
Tomasz Paluszkiewicz 22cfc5b87f fix(EMailTemplate): malformed HTML in some cases
when an addBodyListItem() is not directly followed by addBodyButton(), resulting HTML is broken

Signed-off-by: Tomasz Paluszkiewicz <tomasz.paluszkiewicz@gmail.com>
2019-02-26 13:42:40 +00:00
Nextcloud bot bb6f832ec3 [tx-robot] updated from transifex 2019-02-26 09:10:14 +00:00
Nextcloud bot 1985b88e84 [tx-robot] updated from transifex 2019-02-26 01:12:22 +00:00
John Molakvoæ (skjnldsv) 6d744ef4ee Fix grid toggle button on public page
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2019-02-25 20:20:12 +00:00
Morris Jobke a621bc2f0d Merge pull request #14370 from nextcloud/version/noid/15.0.5RC2
15.0.2 RC 2
2019-02-25 19:32:50 +01:00
Morris Jobke 82144e177d 15.0.2 RC 2
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-02-25 15:52:22 +01:00
Morris Jobke 57d59a7fa8 Merge pull request #14371 from nextcloud/backport/14369/stable15
[stable15] Use latest ca-bundle.crt from https://curl.haxx.se/docs/caextract.html
2019-02-25 15:50:37 +01:00
Daniel Kesselberg b2f099cfa7 Use latest ca-bundle.crt from https://curl.haxx.se/docs/caextract.html
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2019-02-25 11:28:51 +00:00
Morris Jobke 5d247b5da6 Merge pull request #14368 from nextcloud/backport/14325/stable15
[stable15] Always query lookup server in GS mode
2019-02-25 11:41:26 +01:00
Roeland Jago Douma 8ea0e721ed Always query lookup server in GS mode
Without the lookupserver GS is kind of useless.
If the admin places their lookup sever outside of the reachable network
that is not something we can help.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-02-25 09:24:30 +00:00
Nextcloud bot a7b322bd65 [tx-robot] updated from transifex 2019-02-25 01:12:29 +00:00
Nextcloud bot 9bc2070c59 [tx-robot] updated from transifex 2019-02-24 01:13:54 +00:00
Nextcloud bot 3832207081 [tx-robot] updated from transifex 2019-02-23 01:12:55 +00:00
Roeland Jago Douma d03dd0c087 Merge pull request #14339 from nextcloud/backport/14337/stable15
[stable15] Fix "Undefined index: user_uid" on login page
2019-02-22 14:50:14 +01:00
Roeland Jago Douma 69519252a9 Merge pull request #14340 from nextcloud/backport/14332/stable15
[stable15] Fix unsafe array access
2019-02-22 14:49:57 +01:00
Daniel Kesselberg 9caf7bbd47 Check if array element is present before access
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2019-02-22 11:53:27 +00:00
John Molakvoæ 38212f5028 Merge pull request #14331 from nextcloud/backport/14329/stable15
[stable15] Apply theme to 2FA button
2019-02-22 12:53:10 +01:00
Joas Schilling 5b22b1e6c8 Fix "Undefined index: user_uid" on login page
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-02-22 11:43:13 +00:00
Nextcloud bot b879d28f24 [tx-robot] updated from transifex 2019-02-22 01:12:21 +00:00
Julius Härtl aa7cfa09df Apply theme to button elements as well
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2019-02-21 18:14:35 +00:00
Nextcloud bot b42e3fa1b3 [tx-robot] updated from transifex 2019-02-21 01:12:14 +00:00
Morris Jobke a8d4244c53 Merge pull request #14304 from nextcloud/version/noid/15.0.5RC1
15.0.5 RC 1
2019-02-20 23:47:53 +01:00
Morris Jobke 03d1931bbb 15.0.5 RC 1
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-02-20 16:47:03 +01:00
Morris Jobke 37cb480900 Merge pull request #14312 from nextcloud/backport/14255/stable15
[stable15] Fix ocm end-point discovery discovery
2019-02-20 16:46:30 +01:00
Morris Jobke 2e76bc31a9 Add unit tests and provide better message
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-02-20 15:46:19 +01:00
Bjoern Schiessle 319a0f2e38 check ocs-provider route
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2019-02-20 15:43:15 +01:00
Bjoern Schiessle 6360f1a389 add setup check for ocm-provider route
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2019-02-20 15:42:39 +01:00
Bjoern Schiessle 2bf2633c05 make sure that the ocm end-point discovery /ocm-provider is not redirected to the index.php
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2019-02-20 15:41:38 +01:00
Bjoern Schiessle f3f8ab1a19 adjust json to match the definition
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2019-02-20 15:41:34 +01:00
Morris Jobke 52662fb928 Merge pull request #14308 from nextcloud/backport/14178/stable15
[stable15] Fix OC.getCurrentUser() on guest pages
2019-02-20 15:31:37 +01:00
Roeland Jago Douma bb26c2628d Merge pull request #14301 from nextcloud/backport/14300/stable15
[stable15] Use proper scroll container when dragging files
2019-02-20 15:27:16 +01:00
Roeland Jago Douma c9a4f010dc Merge pull request #14273 from nextcloud/backport/14210/stable15
[stable15] Fix empty file uploads to S3 (and other streaming storages)
2019-02-20 15:26:36 +01:00
Joas Schilling 2f98c873fa Fix OC.getCurrentUser() on guest pages
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-02-20 12:22:31 +00:00
Roeland Jago Douma 7cc3486229 Hanlde writestream not closing source
Fixes #14298

If a storage doesn'tclose the write stream then $isEOF is not yet set.
So we have to fallback.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-02-20 11:52:44 +01:00
Julius Härtl ce33f58459 Use proper scroll container when dragging files
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2019-02-20 10:10:32 +00:00
Roeland Jago Douma 6e110c35b0 Merge pull request #14275 from nextcloud/backport/12573/stable15
[stable15] Do not do redirect handling when loggin out
2019-02-20 08:55:30 +01:00
Roeland Jago Douma f6b4f1f3fa Merge pull request #14292 from nextcloud/backport/14264/stable15
[stable15] Set false as default for requirePNG
2019-02-20 08:22:20 +01:00
Nextcloud bot 02b3704de9 [tx-robot] updated from transifex 2019-02-20 01:12:06 +00:00
Daniel Kesselberg 30c69e6394 Set false as default for requirePNG
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2019-02-19 13:59:01 +00:00
Morris Jobke f3ed8d0c10 Merge pull request #14287 from nextcloud/backport/14279/stable15
[stable15] Fix header label visibility on open menu
2019-02-19 12:49:40 +01:00
Morris Jobke a605e12af2 Merge pull request #14288 from nextcloud/backport/14211/stable15
[stable15] Prefix $path for filename for internal file cache
2019-02-19 12:49:11 +01:00
Daniel Kesselberg bc71889657 Call headObject if file not in filecache 🙈
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2019-02-19 11:38:15 +00:00
Daniel Kesselberg db27cb20af Prefix $path for filename for internal file cache
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2019-02-19 11:38:14 +00:00
Julius Härtl 10aa80d13e Fix header label visibility on open menu
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2019-02-19 10:36:20 +00:00
Roeland Jago Douma a2cddf259c Merge pull request #14283 from nextcloud/backport/14194/stable15
[stable15] Correctly determinate the owner in case of shared external storages
2019-02-19 11:25:13 +01:00
Joas Schilling 5823cd652c Correctly determinate the owner in case of shared external storages
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-02-19 09:29:17 +00:00
Roeland Jago Douma 141ea50716 Make sure that we have a stream
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-02-19 10:16:11 +01:00
Roeland Jago Douma 6bdd9d123e Add a wrapper to determine if a file is EOF
The stream is already closed at this point. Which means feof will always
return false. We have to determine if the stream is EOF in the
preCloseCallback. And pass this info along. Then the logic works as
expected.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-02-19 10:16:11 +01:00
Roeland Jago Douma 58fd016b27 Fix empty file uploads to S3
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-02-19 10:16:11 +01:00
Roeland Jago Douma fc8745e1fe [3rdparty] Bump icewind/streams to 0.7.1
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-02-19 10:16:10 +01:00
Morris Jobke 736d4ee997 Merge pull request #14277 from nextcloud/backport/14234/stable15
[stable15] Catch Request exception in testRemoteUrl
2019-02-19 09:51:58 +01:00
Roeland Jago Douma 39cfa50539 Catch Request exception in testRemoteUrl
Else the background job fails hard if the remote has for example an
invalid certificate.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-02-19 07:05:49 +00:00
Nextcloud bot 4a0feef83d [tx-robot] updated from transifex 2019-02-19 01:12:20 +00:00
Roeland Jago Douma 78842d29b3 Do not do redirect handling when loggin out
Fixes #12568
Since the clearing of the execution context causes another reload. We
should not do the redirect_uri handling as this results in redirecting
back to the logout page on login.

This adds a simple middleware that will just check if the
ClearExecutionContext session variable is set. If that is the case it
will just redirect back to the login page.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-02-18 22:22:12 +01:00
Morris Jobke 52439a00bd Merge pull request #14268 from nextcloud/backport/14248/stable15
[stable15] Fixing phpdoc in FullTextSearch/Model/ISearchResult
2019-02-18 15:19:31 +01:00
Maxence Lange 6ada63be8e fixing phpdoc
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2019-02-18 13:30:54 +00:00
Nextcloud bot 84ab16bac4 [tx-robot] updated from transifex 2019-02-18 01:12:21 +00:00
Nextcloud bot 4651c25f17 [tx-robot] updated from transifex 2019-02-17 01:13:40 +00:00
Nextcloud bot 5eb304a69a [tx-robot] updated from transifex 2019-02-16 01:12:35 +00:00
Morris Jobke efe0b3e55c Merge pull request #14225 from nextcloud/backport/14221/stable15
[stable15] Remove trailing spaces from localized strings
2019-02-15 14:12:31 +01:00
Morris Jobke 670f1e0ddf Remove trailing spaces from localized strings
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-02-15 12:43:12 +00:00
Roeland Jago Douma 990be3b2be Merge pull request #14212 from nextcloud/backport/14035/stable15
[stable15] Fix expiration date changing
2019-02-15 09:53:45 +01:00
Nextcloud bot 2869e06d12 [tx-robot] updated from transifex 2019-02-15 01:13:02 +00:00
Morris Jobke ff1eb82d16 Merge pull request #14213 from nextcloud/backport/14197/stable15
[stable15] Fix trashbin restore translation
2019-02-14 22:44:21 +01:00
Roeland Jago Douma 220b674836 Fix trashbin restore translation
The files app doesn't have this entry.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-02-14 21:44:09 +01:00
Andrey Dyakov 37bb7e0671 Fix expiration date changing
Pass shareId to setExpirationDate()
2019-02-14 21:37:29 +01:00
Roeland Jago Douma c021b5bfc6 Merge pull request #14195 from nextcloud/backport/14185/stable15
[stable15] Fix recent files
2019-02-14 21:18:20 +01:00
Roeland Jago Douma a26a0bf75d Merge pull request #14085 from nextcloud/backport/14023/stable15
[stable15] Fix: Check if `$this->params['user']` is an array
2019-02-14 19:47:43 +01:00
Roeland Jago Douma 3aee564a07 Merge pull request #14201 from nextcloud/backport/14160/stable15
[stable15] Update CRL to contain revoked files_external_dropbox, passman & payback
2019-02-14 19:42:17 +01:00
Roeland Jago Douma cab6215e36 Merge pull request #14207 from nextcloud/backport/14177/stable15
[stable15] Fix small glitches in update notification page
2019-02-14 19:41:01 +01:00
blizzz c66070d10b Merge pull request #14203 from nextcloud/backport/14200/stable15
[stable15] ensure attribute names are lower cased
2019-02-14 16:05:29 +01:00
Morris Jobke 20582b5aac Fix border in update notification section
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-02-14 15:40:51 +01:00
Morris Jobke acf5f47076 Fix style of warning for EoL version
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-02-14 15:40:51 +01:00
Arthur Schiwon d34e021af0 ensure attribute names are lower cased
otherwise they will be skipped when the results is being formatted and the
lower-cased result keys do not match.

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2019-02-14 14:08:27 +00:00
Morris Jobke bc5ece6365 Update CRL to contain revoked files_external_dropbox, passman & payback
* see https://github.com/nextcloud/app-certificate-requests/pull/221
* see https://github.com/nextcloud/app-certificate-requests/pull/219#issuecomment-463577509

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-02-14 13:53:48 +00:00
Roeland Jago Douma 98e18ade7d Merge pull request #14187 from nextcloud/dependabot/npm_and_yarn/build/stable15/handlebars-4.1.0
[Security] Bump handlebars from 4.0.12 to 4.1.0 in /build
2019-02-14 11:47:28 +01:00
Roeland Jago Douma 8373adacd6 Filter out versions and trashbin
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-02-14 10:27:43 +00:00
Roeland Jago Douma e31c94ac64 Loop for the recent search
Else it might happen that less entries than requested are returned

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-02-14 10:27:43 +00:00
Roeland Jago Douma 092baa0e5a We need to initialize the storage else the jailed path is always null
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-02-14 10:27:42 +00:00
dependabot[bot] ea139b2203 [Security] Bump handlebars from 4.0.12 to 4.1.0 in /build
Bumps [handlebars](https://github.com/wycats/handlebars.js) from 4.0.12 to 4.1.0. **This update includes security fixes.**
- [Release notes](https://github.com/wycats/handlebars.js/releases)
- [Changelog](https://github.com/wycats/handlebars.js/blob/v4.1.0/release-notes.md)
- [Commits](https://github.com/wycats/handlebars.js/compare/v4.0.12...v4.1.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-02-14 04:04:25 +00:00
Nextcloud bot 262c5a6236 [tx-robot] updated from transifex 2019-02-14 01:12:38 +00:00
Nextcloud bot 68e5c9d258 [tx-robot] updated from transifex 2019-02-13 01:12:25 +00:00
Roeland Jago Douma 1c0c300e95 Merge pull request #14151 from nextcloud/backport/14149/stable15
[stable15] Fix the thorrtler whitelist bitmask
2019-02-12 20:11:23 +01:00
Roeland Jago Douma 096498c033 Fix the thorrtler whitelist bitmask
Before we actually didn't check each bit of the bitmask. Now we do.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-02-12 07:56:07 +00:00
Nextcloud bot 40b40c94a2 [tx-robot] updated from transifex 2019-02-12 01:12:37 +00:00
Nextcloud bot 29975fab3f [tx-robot] updated from transifex 2019-02-11 01:12:32 +00:00
Nextcloud bot d049403a82 [tx-robot] updated from transifex 2019-02-10 01:13:39 +00:00
Nextcloud bot 0cf2c7be7c [tx-robot] updated from transifex 2019-02-09 01:12:50 +00:00
Morris Jobke 6ae8e99c1b Merge pull request #13982 from nextcloud/stable15-12917-clean-code-and-fix-drop-zone-shadow
[stable15] Clean code and fix drop zone shadow
2019-02-08 09:34:04 +01:00
Joas Schilling 7fc115d0a5 Merge pull request #14101 from nextcloud/backport/14083/stable15
[stable15] Make sure the relative path is always a string
2019-02-08 08:41:41 +01:00
Nextcloud bot 8660fc3502 [tx-robot] updated from transifex 2019-02-08 01:12:50 +00:00
Joas Schilling c29520013c Fix wrong method call
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-02-07 22:40:11 +00:00
Joas Schilling 86b76bb514 Make sure the relative path is always a string
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-02-07 22:40:10 +00:00
Roeland Jago Douma 252d49dd79 Merge pull request #14094 from nextcloud/dependabot/npm_and_yarn/apps/accessibility/stable15/lodash-4.17.11
[Security] Bump lodash from 4.17.10 to 4.17.11 in /apps/accessibility
2019-02-07 22:37:14 +01:00
Roeland Jago Douma ded5c2f220 Merge pull request #14093 from nextcloud/dependabot/npm_and_yarn/apps/updatenotification/stable15/lodash-4.17.11
[Security] Bump lodash from 4.17.10 to 4.17.11 in /apps/updatenotification
2019-02-07 22:21:55 +01:00
Roeland Jago Douma c3b0e77042 Merge pull request #14095 from nextcloud/dependabot/npm_and_yarn/apps/oauth2/stable15/lodash-4.17.11
[Security] Bump lodash from 4.17.10 to 4.17.11 in /apps/oauth2
2019-02-07 21:14:47 +01:00
dependabot[bot] 4c026286e9 [Security] Bump lodash from 4.17.10 to 4.17.11 in /apps/accessibility
Bumps [lodash](https://github.com/lodash/lodash) from 4.17.10 to 4.17.11. **This update includes security fixes.**
- [Release notes](https://github.com/lodash/lodash/releases)
- [Changelog](https://github.com/lodash/lodash/blob/master/CHANGELOG)
- [Commits](https://github.com/lodash/lodash/compare/4.17.10...4.17.11)

Signed-off-by: dependabot[bot] <support@dependabot.com>
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-02-07 21:13:01 +01:00
dependabot[bot] 0576526880 [Security] Bump lodash in /apps/updatenotification
Bumps [lodash](https://github.com/lodash/lodash) from 4.17.10 to 4.17.11. **This update includes security fixes.**
- [Release notes](https://github.com/lodash/lodash/releases)
- [Changelog](https://github.com/lodash/lodash/blob/master/CHANGELOG)
- [Commits](https://github.com/lodash/lodash/compare/4.17.10...4.17.11)

Signed-off-by: dependabot[bot] <support@dependabot.com>
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-02-07 21:11:54 +01:00
dependabot[bot] 621e0aea0b [Security] Bump lodash from 4.17.10 to 4.17.11 in /apps/oauth2
Bumps [lodash](https://github.com/lodash/lodash) from 4.17.10 to 4.17.11. **This update includes security fixes.**
- [Release notes](https://github.com/lodash/lodash/releases)
- [Changelog](https://github.com/lodash/lodash/blob/master/CHANGELOG)
- [Commits](https://github.com/lodash/lodash/compare/4.17.10...4.17.11)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-02-07 19:12:36 +00:00
Morris Jobke 89c67b3e6e Merge pull request #14029 from nextcloud/backport/13954/stable15
[stable15] Show original path in trashbin
2019-02-07 16:47:23 +01:00
Morris Jobke 30171e7941 Merge pull request #13978 from nextcloud/backport/13972/stable15
[stable15] trim filename in webfrontend for windows compatibility
2019-02-07 16:47:02 +01:00
Roeland Jago Douma 386b8595b1 Merge pull request #13961 from nextcloud/backport/13945/stable15
[stable15] Show autocompletion as soon as "@" is typed
2019-02-07 16:44:37 +01:00
Morris Jobke b4a5fd5a9d Merge pull request #14068 from nextcloud/smb-3.0.1-15
[15] update icewind/smb to 3.0.1
2019-02-07 16:36:58 +01:00
William Pain 602cea074f Fix: Check if $this->params['user'] is an array
Signed-off-by: William Pain <pain.william@gmail.com>
2019-02-07 13:33:18 +00:00
Morris Jobke 81339c7e23 Merge pull request #14077 from nextcloud/version/noid/15.0.4
15.0.4
2019-02-07 11:51:08 +01:00
Morris Jobke 9fa39c74dc 15.0.4
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-02-07 11:05:46 +01:00
Morris Jobke f36a2b28af Merge pull request #14076 from nextcloud/bugfix/14022/stable15-not-working-external-storages
[stable15] Make external storages browsable again in the web UI
2019-02-07 11:05:08 +01:00
Morris Jobke ca9b9865ff Reintroduce status check for external storages
Fixes #14022

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-02-07 10:15:29 +01:00
Morris Jobke 49e161d1ad Merge pull request #14061 from nextcloud/version/noid/15.0.3
15.0.3
2019-02-06 23:55:11 +01:00
Nextcloud bot 7b1720ba5d [tx-robot] updated from transifex 2019-02-06 22:18:33 +00:00
Robin Appelman 23d4e910a8 update icewind/smb to 3.0.1
Signed-off-by: Robin Appelman <robin@icewind.nl>
2019-02-06 18:13:27 +01:00
Morris Jobke 5cd282b852 15.0.3
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-02-06 15:06:03 +01:00
Nextcloud bot 3e72cc16e7 [tx-robot] updated from transifex 2019-02-06 11:27:41 +00:00
Morris Jobke 5ffb793b71 Show original path in trashbin via extraData
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-02-05 14:12:08 +00:00
Roeland Jago Douma d629b5afdc Merge pull request #14028 from nextcloud/revert-14026-backport/13954/stable15
Revert "[stable15] Show original path in trashbin"
2019-02-05 15:10:52 +01:00
Roeland Jago Douma b6e5669949 Revert "[stable15] Show original path in trashbin" 2019-02-05 15:10:32 +01:00
John Molakvoæ bfc0a5575c Merge pull request #14026 from nextcloud/backport/13954/stable15
[stable15] Show original path in trashbin
2019-02-05 15:07:49 +01:00
Morris Jobke cba2c1fd1a Show original path in trashbin via extraData
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-02-05 13:09:15 +00:00
fnuesse 150d15ba39 Extract variable for yellow color in icons
Signed-off-by: fnuesse <felix.nuesse@t-online.de>
2019-02-01 16:21:23 +01:00
fnuesse df01d12d91 Fix drop zone shadow
Signed-off-by: fnuesse <felix.nuesse@t-online.de>
2019-02-01 16:21:23 +01:00
Daniel Calviño Sánchez 371df903d6 Unify handling of dropping one file or several files on the trash bin
When a single file was dropped on the trash bin the file information was
gotten from the original element in the file list. When several files
were dropped on the trash bin the file information was gotten from the
helper elements being dragged around. The helper element also contain
the needed file information when a single file is being dragged, so the
handling was unified to always get the file information from the helper
elements.

As the handling of several files is the same as before there is still
the issue of only deleting those files shown in the drag helper instead
of all the selected files.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2019-02-01 16:21:23 +01:00
Daniel Calviño Sánchez 66b908f9f2 Use full names instead of abbreviations in variable names
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2019-02-01 16:21:23 +01:00
Daniel Calviño Sánchez e2c4dbca51 Make code format more consistent with the rest of the file
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2019-02-01 16:21:23 +01:00
Daniel Calviño Sánchez c72e75c4c3 Replace double quotes with single quotes
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2019-02-01 16:21:23 +01:00
Daniel Calviño Sánchez 8e6cedb157 Add missing trailing ";"
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2019-02-01 16:21:23 +01:00
Daniel Calviño Sánchez 414804d534 Remove unneeded triggering of event
The "droppedOnTrash" event was being triggered when the file list was
initialized, but it should be triggered only when the user actually
drops a file on the trash bin.

Besides that, the event had no effect; only the file list handles it,
but as it was not triggered on any element it ended being triggered on
the document, and thus not handled. Moreover, even if it had been
triggered on the file list it would have been done before the handler
was set, so it would not have been handled anyway. And even if it had
been handled no data was provided, so the handler would have failed.

In conclusion, triggering the event there was not needed, and thus it
was removed.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2019-02-01 16:21:23 +01:00
Daniel Calviño Sánchez e94412e9e8 Remove duplicated variable declaration
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2019-02-01 16:21:23 +01:00
Daniel Calviño Sánchez 7b7da7b190 Remove leftover from a WIP
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2019-02-01 16:21:23 +01:00
Daniel Calviño Sánchez 1f9c881d0f Remove hack to prefetch the starred trash icon
Since 6ad7f32938 SVG icons are directly embedded in "icons-vars.css", so
the starred trash icon is now loaded along with the regular trash icon
all at once. Therefore it is not needed to explicitly prefetch it using
a hidden div.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2019-02-01 16:21:23 +01:00
Christian Aigner e4c20ae67d HBOX-297 trim in webfrontend for new files to stay compatible with windows 2019-02-01 11:13:10 +00:00
Morris Jobke 52f0633e9c Merge pull request #13976 from nextcloud/revert-13947-TrimFilenameWinCompatibility
Revert "trim filename in webfrontend for windows compatibility"
2019-02-01 12:00:01 +01:00
Morris Jobke f46a251625 Revert "trim filename in webfrontend for windows compatibility" 2019-02-01 11:59:49 +01:00
Roeland Jago Douma 3d399a56bb Merge pull request #13947 from HuemerGroup/TrimFilenameWinCompatibility
trim filename in webfrontend for windows compatibility
2019-02-01 10:43:45 +01:00
Daniel Calviño Sánchez c3ff11bb08 Show autocompletion as soon as "@" is typed
In order to show the autocompletion it was needed to type at least
another character after "@", so only the mentions that matched that
character were shown. Now the autocompletion is shown as soon as "@" is
typed, which shows all the possible mentions.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2019-01-31 19:19:31 +00:00
Christian Aigner 6637d97376 HBOX-297 trim in webfrontend for new files to stay compatible with windows 2019-01-31 15:30:20 +01:00
Morris Jobke 344c41a308 Merge pull request #13912 from nextcloud/version/noid/15.0.3RC1
15.0.3 RC 1
2019-01-31 11:08:50 +01:00
Morris Jobke 189f2fcd25 15.0.3 RC 1
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-01-31 09:15:35 +01:00
Christoph Wurst d57afb3e54 Merge pull request #13930 from nextcloud/backport/12636/stable15
[stable15] handle mail send error gracefully
2019-01-31 08:54:46 +01:00
Christoph Wurst 13eb255277 Fix typos and unused return values
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2019-01-30 19:08:20 +00:00
Bjoern Schiessle 1c88b907a3 fix typo
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2019-01-30 19:08:19 +00:00
Bjoern Schiessle 0a1e776006 log full exception
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2019-01-30 19:08:18 +00:00
Bjoern Schiessle f22465e364 handle mail send error gracefully
log the error in case a notification mail of a new share couldn't
be send to the recipient and finish the share operation successfully

Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2019-01-30 19:08:17 +00:00
Morris Jobke d34b7e594b Merge pull request #13920 from nextcloud/backport/13891/stable15
[stable15] Remove warning in case of external storage error
2019-01-30 15:34:22 +01:00
Morris Jobke 24007e706c Merge pull request #13918 from nextcloud/backport/13412/stable15
[stable15] forward error message from password policy
2019-01-30 15:25:06 +01:00
Morris Jobke 657621b980 Merge pull request #13906 from nextcloud/backport/13237/stable15
[stable15] Improve data directory write checking for NFS mounts
2019-01-30 14:28:43 +01:00
Morris Jobke 4e131ad796 Merge pull request #13915 from nextcloud/backport/13869/stable15
[stable15] Clean pending 2FA authentication on password reset
2019-01-30 14:25:17 +01:00
Morris Jobke dbdc5c4dd4 Merge pull request #13887 from nextcloud/backport/13883/stable15
[stable15] Fix dropping a folder on a folder row
2019-01-30 14:09:20 +01:00
Morris Jobke 1f52990013 Merge pull request #13905 from nextcloud/backport/13830/stable15
[stable15] Allow shared versions again in legacy backend
2019-01-30 12:01:42 +01:00
John Molakvoæ (skjnldsv) a1f8f67974 Remove warning in case of external storage error
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2019-01-30 10:56:38 +00:00
Robin Appelman 60126556be forward error message from password policy
Signed-off-by: Robin Appelman <robin@icewind.nl>
2019-01-30 10:14:55 +00:00
Roeland Jago Douma 355b0defe4 Clean pending 2FA authentication on password reset
When a password is reste we should make sure that all users are properly
logged in. Pending states should be cleared. For example a session where
the 2FA code is not entered yet should be cleared.

The token is now removed so the session will be killed the next time
this is checked (within 5 minutes).

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-01-30 10:41:09 +01:00
Roeland Jago Douma 75b5286169 Merge pull request #13904 from nextcloud/backport/13886/stable15
[stable15] add fallback for trashbin original location
2019-01-30 10:19:12 +01:00
Roeland Jago Douma 944defa58d Merge pull request #13900 from nextcloud/stable15-13897-fix-updating-the-password-of-a-link-share-when-passwords-are-enforced
[stable15] Fix updating the password of a link share when passwords are enforced
2019-01-30 09:54:12 +01:00
Robert Dailey ff4dc3b66b Improve data directory write checking for NFS mounts
If `is_writable()` fails, fall back to logic that attempts to create a file
and then checks if it exists. If this check fails, an error occurs as it
did before.

Discussion on this solution was found here:
https://help.nextcloud.com/t/write-errors-for-nfs-mount/23328

Fixes #7124

Signed-off-by: Robert Dailey <rcdailey@gmail.com>
2019-01-30 08:39:45 +00:00
Roeland Jago Douma ae826f5a2f Merge pull request #13884 from nextcloud/backport/13865/stable15
[stable15] fix paged search with multiple bases (LDAP)
2019-01-30 09:31:13 +01:00
Roeland Jago Douma a36577463d Allow shared versions again in legacy backend
To make sure that the versions in the legacy backend are shared again we
have to check the storage of a file. Since all shared files are still on
the owners storage.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-01-30 08:23:50 +00:00
Roeland Jago Douma 3a34132b06 Merge pull request #13804 from nextcloud/backport/13802/stable15
[stable15] Fix long comment in dark theme
2019-01-30 09:08:48 +01:00
Robin Appelman a6f6a3aa5d add fallback for trashbin original location
Signed-off-by: Robin Appelman <robin@icewind.nl>
2019-01-30 08:04:49 +00:00
Daniel Calviño Sánchez 9a1d8eb0e5 Fix updating the password of a link share when passwords are enforced
The password input was shown in the popup menu when passwords were not
enforced, or when they were enforced but no password was set, which
prevented updating/changing the password once set. As the password input
should be shown too when password are enforced and a password is set no
condition is needed, so now the password input is always shown.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2019-01-29 23:37:54 +01:00
Daniel Calviño Sánchez 4321e0fc6d Fix dropping a folder on a folder row
When the uploaded files have a relative path (that is, when a folder is
uploaded) it is first ensured that all the parent folders exist, which
is done by trying to create them. When a folder is created in the
currently opened folder the file list is updated and a row for the new
folder is added. However, this was done too when the folder already
existed, which caused the previous row to be removed and a new one added
to replace it.

For security reasons, some special headers need to be set in requests;
this is done automatically for jQuery by handling the "ajaxSend" event
in the document. In the case of DAV requests, if the headers are not set
the server rejects the request with "CSRF check not passed".

When a file or folder is dropped on a folder row the jQuery upload
events are chained from the initial drop event, which has the row as its
target. In order to upload the file jQuery performs a request, which
triggers the "ajaxSend" event in the row; this event then bubbles up to
the document, which is then handled by adding the special headers to the
request.

However, when a folder was dropped on a folder row that folder row was
removed when ensuring that the folder exists. The jQuery upload events
were still triggered on the row, but as it had been removed it had no
parent nodes, and thus the events did not bubble up. Due to this the
"ajaxSend" event never reached the document when triggered on the
removed row, the headers were not set, and the upload failed.

All this is simply fixed by not removing the folder row when trying to
create it if it existed already.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2019-01-29 14:46:07 +00:00
Roeland Jago Douma 95f4c21573 Merge pull request #13882 from nextcloud/backport/13866/stable15
[stable15] always use multipart uploader for s3 uploads
2019-01-29 15:17:34 +01:00
Arthur Schiwon 2b8a669d31 iterate over bases instead of doing parallel search
parallel search is not compatible with paged search, but the letter is
usually always applied.

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2019-01-29 13:25:23 +00:00
Arthur Schiwon 3494f2794d integration test: pages search scenario with multiple bases
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2019-01-29 13:25:22 +00:00
Arthur Schiwon fe1500ff36 typo
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2019-01-29 13:25:20 +00:00
Robin Appelman ff5f28a65e always use multipart uploader for s3 uploads
the multipart uploader handles non seekable streams while `upload` does not

Signed-off-by: Robin Appelman <robin@icewind.nl>
2019-01-29 10:17:07 +00:00
Roeland Jago Douma 779fd2ea9c Merge pull request #13821 from nextcloud/dependabot/npm_and_yarn/build/stable15/bower-1.8.8
[Security] Bump bower from 1.8.4 to 1.8.8 in /build
2019-01-28 13:42:16 +01:00
Morris Jobke 5820039160 Merge pull request #13852 from nextcloud/backport/13801/stable15
[stable15] Fix for high contrast theme
2019-01-28 11:13:09 +01:00
Jan-Christoph Borchardt 3f08f0066c Fix settings section divider being very visible below navigation bar
Signed-off-by: Jan-Christoph Borchardt <hey@jancborchardt.net>
2019-01-27 17:56:15 +00:00
Jan-Christoph Borchardt 8fa8f51ed5 Accessibility: Fix header icon opacity with high contrast theme
Signed-off-by: Jan-Christoph Borchardt <hey@jancborchardt.net>
2019-01-27 17:56:15 +00:00
Nextcloud bot fc0480282a [tx-robot] updated from transifex 2019-01-26 01:12:28 +00:00
dependabot[bot] bf02927c7b [Security] Bump bower from 1.8.4 to 1.8.8 in /build
Bumps [bower](https://github.com/bower/bower) from 1.8.4 to 1.8.8. **This update includes security fixes.**
- [Release notes](https://github.com/bower/bower/releases)
- [Changelog](https://github.com/bower/bower/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bower/bower/compare/v1.8.4...v1.8.8)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-01-25 11:40:45 +00:00
Nextcloud bot e4ea4061f6 [tx-robot] updated from transifex 2019-01-25 01:12:30 +00:00
Joas Schilling 87b7dd0af2 Merge the str_replacements
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-01-24 20:37:18 +00:00
Joas Schilling 63a1ef9154 Fix linear-gradient for long comments on dark-theme
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-01-24 20:37:17 +00:00
Morris Jobke d823f6fba8 Merge pull request #13792 from nextcloud/backport/13644/stable15
[stable15] ignore non existing users when retrieving details of group members
2019-01-24 19:17:22 +01:00
Morris Jobke 07ded47c22 Merge pull request #13794 from nextcloud/backport/13742/stable15
[stable15] Add icon to restore activity
2019-01-24 19:17:01 +01:00
Morris Jobke 61c2919225 Merge pull request #13793 from nextcloud/backport/13786/stable15
[stable15] Remove .css fileending from accessibility user css route
2019-01-24 19:16:07 +01:00
Roeland Jago Douma bb624724f6 Merge pull request #13761 from nextcloud/backport/15/13738
[stable15] Fix integration of social sharing into the link popover menu
2019-01-24 18:54:53 +01:00
Joas Schilling 4ab1970c43 Make the yellow favorite icon non-monochrome
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-01-24 13:46:54 +00:00
Joas Schilling d343873e7c Add icon to restore activity
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-01-24 13:46:53 +00:00
Julius Härtl 15e8a27338 Remove .css fileending from accessibility user css route
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2019-01-24 13:44:56 +00:00
Arthur Schiwon 922d35e0c3 ignore non existing users when retrieving details of group members
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2019-01-24 13:26:42 +00:00
Morris Jobke 266938da40 Merge pull request #13781 from nextcloud/backport/13772/stable15
[stable15] Show proper default locale
2019-01-24 10:59:58 +01:00
Morris Jobke c7ea554c62 Show proper default locale
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-01-24 07:32:26 +00:00
Roeland Jago Douma e6863782eb Merge pull request #13769 from nextcloud/backport/13734/stable15
[stable15] Call proper function when fetching link shares in the breadcrumb view
2019-01-24 08:07:08 +01:00
Nextcloud bot 3079a88f03 [tx-robot] updated from transifex 2019-01-24 01:12:16 +00:00
Morris Jobke effc384c33 Merge pull request #13771 from nextcloud/stable15-13217-add-acceptance-tests-for-moving-and-copying-files
[stable15] Add acceptance tests for moving and copying files
2019-01-24 00:26:02 +01:00
Daniel Calviño Sánchez d4e1e9709f Add acceptance tests for moving and copying selections to another folder
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2019-01-23 21:05:54 +01:00
Daniel Calviño Sánchez f8473f4427 Add acceptance tests for moving and copying files to another folder
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2019-01-23 21:05:54 +01:00
Julius Härtl f861c84b97 Call proper function when fetching link shares in the breadcrumb view
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2019-01-23 18:15:45 +00:00
Morris Jobke e086a5e7f9 Merge pull request #13758 from nextcloud/backport/13747/stable15
[stable15] Honor remember_login_cookie_lifetime
2019-01-23 15:31:05 +01:00
Morris Jobke 09db2bc701 Merge pull request #13740 from nextcloud/backport/13140/stable15
[stable15] Cache tokens when using swift's v2 authentication
2019-01-23 15:29:56 +01:00
Morris Jobke 51cd99d089 Merge pull request #13762 from nextcloud/backport/13730/stable15
[stable15] Respect user locale in natural sort comparator
2019-01-23 13:31:37 +01:00
Christoph Wurst 90e9877dd0 Respect user locale in natural sort comparator
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2019-01-23 11:20:19 +00:00
Julius Härtl cd79769921 Fix integration of social sharing into the link popover menu
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2019-01-23 12:07:59 +01:00
Roeland Jago Douma 4d3bb0a521 Honor remember_login_cookie_lifetime
If the remember_login_cookie_lifetime is set to 0 this means we do not
want to use remember me at all. In that case we should also not creatae
a remember me cookie and should create a proper temp token.

Further this specifies that is not 0 the remember me time should always
be larger than the session timeout. Because else the behavior is not
really defined.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-01-23 09:23:41 +00:00
Morris Jobke 703bb18fc9 Merge pull request #13744 from nextcloud/backport/13739/stable15
[stable15] cleanup shared lock if changing to exclusive lock failed
2019-01-23 08:18:06 +01:00
Nextcloud bot 34c1644714 [tx-robot] updated from transifex 2019-01-23 01:12:19 +00:00
Robin Appelman f7a4f1f128 cleanup shared lock if changing to exclusive lock failed
Signed-off-by: Robin Appelman <robin@icewind.nl>
2019-01-22 15:12:46 +00:00
Roeland Jago Douma 581d908ace Bump autoloader
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-01-22 14:37:10 +00:00
Robin Appelman 6855c1594c Cache tokens when using swift's v2 authentication
Signed-off-by: Robin Appelman <robin@icewind.nl>
2019-01-22 14:37:09 +00:00
Nextcloud bot e1f917fd4c [tx-robot] updated from transifex 2019-01-22 01:12:37 +00:00
Morris Jobke d908bf190c Merge pull request #13670 from nextcloud/backport/13660/stable15
[stable15] Fix template paramter
2019-01-21 15:56:46 +01:00
Nextcloud bot c96e47b5ad [tx-robot] updated from transifex 2019-01-21 01:12:02 +00:00
Nextcloud bot e9fae5e390 [tx-robot] updated from transifex 2019-01-20 01:12:42 +00:00
Nextcloud bot 2b577f5634 [tx-robot] updated from transifex 2019-01-19 01:12:32 +00:00
Roeland Jago Douma 16966ee5aa Fix template paramter
Else we get shown an error page instead of the correct 403.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-01-18 18:43:45 +00:00
Morris Jobke 3037e26948 Merge pull request #13665 from nextcloud/backport/13664/stable15
[stable15] Use warning background color & primary text color for setting warnings
2019-01-18 17:10:44 +01:00
Morris Jobke 5eca1921c7 Use warning background color & primary text color for setting warnings
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-01-18 12:59:33 +00:00
Joas Schilling 2c46aab893 Merge pull request #13653 from nextcloud/backport/13650/stable15
[stable15] Fix colorizeSvg with transformations that contain a comma (,)
2019-01-18 09:06:49 +01:00
Nextcloud bot af196c4495 [tx-robot] updated from transifex 2019-01-18 01:14:45 +00:00
Joas Schilling f39dacf1fb Fix colorizeSvg with transformations that contain a comma (,)
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-01-17 14:58:13 +00:00
Morris Jobke 0917637460 Merge pull request #13636 from nextcloud/backport/13634/stable15
[stable15] update URL for federation
2019-01-17 09:35:03 +01:00
Nextcloud bot 0469bb11c9 [tx-robot] updated from transifex 2019-01-17 01:12:28 +00:00
Jos Poortvliet 8ca06c96a0 update URL for federation 2019-01-16 21:43:03 +00:00
Morris Jobke 0b5aaec397 Merge pull request #13625 from nextcloud/backport/13574/stable15
[stable15] Fix app navigation flickering on hover
2019-01-16 22:07:47 +01:00
Alaa Shmalih 3f8b43f16d the bug number #13263 fixed by the xavierando user
i change the file by xaviterando done and fix
and i will do pull request to the solution becouse xavirando did pull request to him self
2019-01-16 15:30:45 +00:00
Morris Jobke 3384bb27e9 Merge pull request #13598 from nextcloud/3rdpart/stable15/pear/archive_tar-1.4.5
[stable15] [3rdparty] Bump pear/archive_tar to 1.4.5
2019-01-16 16:21:55 +01:00
Roeland Jago Douma 2f6c722482 Merge pull request #13588 from nextcloud/backport/13468/stable15
[stable15] don't close input stream when writing in encrypted file
2019-01-16 14:12:44 +01:00
Nextcloud bot 6a44943425 [tx-robot] updated from transifex 2019-01-16 01:12:46 +00:00
Roeland Jago Douma f50de2af23 Merge pull request #13609 from nextcloud/backport/13607/stable15
[stable15] Fix integer background job id type error
2019-01-15 19:54:27 +01:00
John Molakvoæ 2a8b8fc658 Merge pull request #13611 from nextcloud/stb15-settings-label-fix
Fix user settings label translation
2019-01-15 18:15:28 +01:00
John Molakvoæ (skjnldsv) f0c5e60c66 Fix user settings label translation
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2019-01-15 16:46:34 +01:00
Christoph Wurst cf2657c873 Fix integer background job id type error
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2019-01-15 14:32:00 +00:00
Roeland Jago Douma 8960ddc275 [3rdparty] Bump pear/archive_tar to 1.4.5
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-01-15 14:22:59 +01:00
Nextcloud bot 08676fd8e6 [tx-robot] updated from transifex 2019-01-15 01:12:27 +00:00
Roeland Jago Douma fea21a857b Merge pull request #13585 from nextcloud/backport/13581/stable15
[stable15] Correctly handle displaynames returned from the sharee API
2019-01-14 19:30:26 +01:00
Florian Schunk a3d9e6de39 don't close input stream when writing in encrypted file
Signed-off-by: Florian Schunk <florian.schunk@rwth-aachen.de>
2019-01-14 15:22:34 +00:00
Morris Jobke 3376e87122 Merge pull request #13582 from nextcloud/backport/13573/stable15
[stable15] Principals can be principal/user/<name> or principal/<name> from lega…
2019-01-14 15:24:04 +01:00
Morris Jobke 9159809114 Merge pull request #13575 from nextcloud/backport/13566/stable15
[stable15] Fix click app names
2019-01-14 15:22:28 +01:00
Joas Schilling 0d5f1e99f8 Correctly handle displaynames returned from the sharee API
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-01-14 14:19:39 +00:00
Joas Schilling df2132c0b1 Principals can be principal/user/<name> or principal/<name> from legacy installs
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-01-14 13:19:48 +00:00
Michael Weimann 59efe5d0e6 Fix click app names
Signed-off-by: Michael Weimann <mail@michael-weimann.eu>
2019-01-14 11:25:23 +00:00
Morris Jobke cf5a717e65 Merge pull request #13384 from nextcloud/3rdparty/broker-add-timezone-cancel-message-stable15
[stable15][3rdparty] Broker: add timezone to CANCEL messages
2019-01-14 11:29:50 +01:00
Roeland Jago Douma 412d6a4a24 Merge pull request #13036 from nextcloud/objectstore-write-exists-15
[15] upload new files in objectstore to a .part path first
2019-01-14 11:29:18 +01:00
Christoph Wurst fb9f5ad66b Merge pull request #13546 from nextcloud/fix/stable15/13520
[stable15] Add strengthify.min files
2019-01-14 09:32:28 +01:00
Nextcloud bot 457261a955 [tx-robot] updated from transifex 2019-01-14 01:12:11 +00:00
Nextcloud bot 0fdb6b4545 [tx-robot] updated from transifex 2019-01-13 01:13:03 +00:00
Roeland Jago Douma 8c772d8b8d Add strengthify.min files
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-01-12 14:25:58 +01:00
Nextcloud bot 6dfb0909fa [tx-robot] updated from transifex 2019-01-12 01:12:07 +00:00
Morris Jobke 954577b696 Merge pull request #13515 from nextcloud/version/noid/15.0.2
15.0.2
2019-01-11 16:24:44 +01:00
Morris Jobke fae060f59f 15.0.2
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-01-11 14:20:49 +01:00
Roeland Jago Douma 1b987d8518 Merge pull request #13506 from nextcloud/backport/13503/stable15
[stable15] RemoveClassifiedEventActivity: check if calendar still exists
2019-01-11 12:56:25 +01:00
Roeland Jago Douma 55d8649b04 Check for no longer existing calendars
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-01-11 10:32:15 +00:00
Nextcloud bot a1a9bb7a3a [tx-robot] updated from transifex 2019-01-11 01:12:41 +00:00
Daniel Kesselberg 7a1cbd8a61 [3rdparty] Broker: add timezone to CANCEL messages
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2019-01-10 20:09:02 +01:00
Roeland Jago Douma 42aa1cdbf3 Merge pull request #13479 from nextcloud/backport/13473/stable15
[stable15] Don't log parameters on user creation in case of error/exception
2019-01-10 19:57:01 +01:00
Morris Jobke 9325e42d3b Merge pull request #13475 from nextcloud/version/noid/15.0.1
15.0.1
2019-01-10 15:38:13 +01:00
Joas Schilling 4098eb30b4 Fix doc block
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-01-10 11:37:07 +00:00
Joas Schilling afd8be0c20 Don't log parameters on user creation in case of error/exception
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-01-10 11:37:07 +00:00
Morris Jobke 7d220a02f9 15.0.1
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-01-10 11:18:58 +01:00
Morris Jobke 6f9ec05eec Merge pull request #13469 from nextcloud/backport/13467/stable15
[stable15] Show the repair steps and repair info output in the web for better feedback
2019-01-10 10:45:05 +01:00
Morris Jobke 625ffdb6c6 Show the repair steps and repair info output in the web for better feedback
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-01-10 07:37:04 +00:00
Nextcloud bot 941a99c586 [tx-robot] updated from transifex 2019-01-10 01:12:17 +00:00
Roeland Jago Douma 0b826050f1 Merge pull request #13452 from nextcloud/version/noid/15.0.1RC2
15.0.1 RC 2
2019-01-09 20:22:42 +01:00
Morris Jobke 2917fa5ea3 15.0.1 RC 2
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-01-09 18:47:43 +01:00
Morris Jobke cf35e044ed Merge pull request #13439 from nextcloud/backport/13430-15
[stable15] Respect classification of calendar events in activity stream
2019-01-09 18:47:08 +01:00
Morris Jobke 6b1e19337f Merge pull request #13444 from nextcloud/backport/12969/stable15
[stable15] add support for boolean default
2019-01-09 18:00:13 +01:00
Joas Schilling 337146412b Prevent php info about missing index for old events
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-01-09 14:50:38 +01:00
Maxence Lange e003a77a37 add support for boolean default
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
code cleaning

Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
code cleaning

Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2019-01-09 13:01:06 +00:00
Joas Schilling dce496311d Add a repair step to remove sensitive event activity
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-01-09 13:12:55 +01:00
Joas Schilling ffb145c2d2 Correctly handle the classification of events in the activity stream
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-01-09 13:11:42 +01:00
Nextcloud bot 38a49cb8af [tx-robot] updated from transifex 2019-01-09 01:12:50 +00:00
Morris Jobke bd42f05057 Merge pull request #13425 from nextcloud/backport/13418/stable15
[stable15] HttpClient getHeader can return empty string
2019-01-08 17:01:42 +01:00
Roeland Jago Douma bc07098b49 HttpClient getHeader can return empty string
Fixes #11999

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-01-08 15:26:23 +00:00
Nextcloud bot 32db64a1ed [tx-robot] updated from transifex 2019-01-08 01:12:14 +00:00
Roeland Jago Douma 7e2092cfa1 Merge pull request #13411 from nextcloud/backport/13403/stable15
[stable15] CSP: Allow fonts to be provided in data
2019-01-07 19:25:47 +01:00
Morris Jobke dcb43600bb Merge pull request #13405 from nextcloud/backport/13402/stable15
[stable15] Use the real logger in the settings
2019-01-07 15:43:25 +01:00
Roeland Jago Douma de30c11cf3 CSP: Allow fonts to be provided in data
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-01-07 14:40:23 +00:00
John Molakvoæ d21bc0e314 Merge pull request #13404 from nextcloud/backport/13381/stable15
[stable15] Fix apps menu overlapping
2019-01-07 15:33:51 +01:00
Roeland Jago Douma 7416ce20a0 Use the real logger in the settings
Fixes #13285
The wrapper logger should not be used here. But we need the real logger.
Since this in internal we can just pass that on directly.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-01-07 12:40:36 +00:00
John Molakvoæ (skjnldsv) d472eb3e5d Fix apps menu overlapping
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2019-01-07 12:33:55 +00:00
Nextcloud bot d98b178a6d [tx-robot] updated from transifex 2019-01-07 01:12:10 +00:00
Nextcloud bot 06e634330a [tx-robot] updated from transifex 2019-01-06 01:13:16 +00:00
Roeland Jago Douma 92c84b7f8e Merge pull request #13346 from nextcloud/version/noid/15.0.1RC1
15.0.1 RC 1
2019-01-05 21:38:53 +01:00
Nextcloud bot a0d08147d9 [tx-robot] updated from transifex 2019-01-05 01:12:08 +00:00
Morris Jobke e70aeb517f 15.0.1 RC 1
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-01-04 23:58:55 +01:00
Morris Jobke b96d4a095f Merge pull request #13372 from nextcloud/backport/13138/stable15
[stable15] register and show when an LDAP user was detected as unavailable/deleted
2019-01-04 23:58:20 +01:00
Morris Jobke 9796736790 Merge pull request #13368 from nextcloud/backport/13367/stable15
[stable15] Throttle with correct metadata
2019-01-04 23:25:52 +01:00
Morris Jobke 4b32b68430 Merge pull request #13370 from nextcloud/backport/13363/stable15
[stable15] Fix loginflow with apptoken enter on iOS
2019-01-04 23:24:47 +01:00
Arthur Schiwon 03e75aea49 ensure db is pristine before starting the tests
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2019-01-04 21:48:42 +00:00
Arthur Schiwon bebec87880 LDAP: extend remnants output with "detected on" field
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2019-01-04 21:48:42 +00:00
Arthur Schiwon 55058adb2c add tests for the DUI
as they are interact with the DB they are more integraiton than unit tests

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2019-01-04 21:48:42 +00:00
Morris Jobke ffa9b5dc1b Merge pull request #13366 from nextcloud/backport/13117/stable15
[stable15] Allow URI as data for vcard PHOTO
2019-01-04 22:43:11 +01:00
Roeland Jago Douma 909fc44538 Fix loginflow with apptoken enter on iOS
It seems iOS doesn't like us to change the location. So now we submit it
to the server that geneartes the redirect.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-01-04 21:43:03 +00:00
Roeland Jago Douma d92c05e646 Throttle with correct metadata
Fixes #13202

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-01-04 21:21:46 +00:00
Morris Jobke 53b09033ae Update apps/dav/lib/CardDAV/PhotoCache.php
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>

Co-Authored-By: skjnldsv <skjnldsv@users.noreply.github.com>
2019-01-04 20:34:38 +00:00
John Molakvoæ (skjnldsv) d36f1d97f2 Log failure on parsing
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2019-01-04 20:34:38 +00:00
John Molakvoæ (skjnldsv) a47df3959c Allow URI as data for vcard PHOTO
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2019-01-04 20:34:38 +00:00
Morris Jobke ffdbe58b67 Merge pull request #13360 from nextcloud/stb15-ie11-compatibility-accessibility
Transpile arrow function for ie11 compatibility
2019-01-04 20:16:42 +01:00
Morris Jobke cf11a4585c Merge pull request #13361 from nextcloud/backport/13145/stable15
[stable15] IE fix for apps menu
2019-01-04 19:45:34 +01:00
Roeland Jago Douma 11aac9e4da Merge pull request #13357 from nextcloud/backport/13134/stable15
[stable15] returns a 404 instead of exception if app is not installed - #13088
2019-01-04 19:39:15 +01:00
John Molakvoæ (skjnldsv) 115ca20a5f IE fix for apps menu
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2019-01-04 18:30:46 +00:00
Morris Jobke aaba0adcf3 Merge pull request #13354 from BastienDurel/caldav_anon_pb
check anonymous OPTIONS requests file in root (not in subdir)
2019-01-04 19:17:03 +01:00
John Molakvoæ (skjnldsv) 914ac82d6c Transpile arrow function for ie11 compatibility
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2019-01-04 18:15:38 +01:00
Bastien Durel 625380ecf8 check anonymous OPTIONS requests file in root (not in subdir)
Signed-off-by: Bastien Durel <bastien@durel.org>
2019-01-04 17:48:04 +01:00
Julius Härtl 67ebcf8fa9 Make setup check also pass with a 501 status
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2019-01-04 16:08:52 +00:00
Maxence Lange e2d7c2fabb returns a 501 instead of exception if app is not installed - #13088
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2019-01-04 16:08:52 +00:00
Morris Jobke 2c72e44400 Merge pull request #13355 from nextcloud/backport/13286/stable15
[stable15] Re add the uploaded file list to file drops
2019-01-04 14:45:20 +01:00
Roeland Jago Douma 1392a3ff95 Merge pull request #13349 from nextcloud/backport/13172/stable15
[stable15] fix can change password check in case of encryption is enabled
2019-01-04 14:09:56 +01:00
Michael Weimann 03ca3303e4 Add compiled template
Signed-off-by: Michael Weimann <mail@michael-weimann.eu>
2019-01-04 12:22:46 +00:00
Michael Weimann 7549bd2b89 Tweak the uploaded files icon position
Signed-off-by: Michael Weimann <mail@michael-weimann.eu>
2019-01-04 12:22:46 +00:00
Michael Weimann ac28decd8c Removes lost single quote
Signed-off-by: Michael Weimann <mail@michael-weimann.eu>
2019-01-04 12:22:45 +00:00
Michael Weimann 92d30c8005 Add the file drop uploaded files element
Signed-off-by: Michael Weimann <mail@michael-weimann.eu>
2019-01-04 12:22:45 +00:00
Morris Jobke 496fe44f14 Merge pull request #13352 from nextcloud/backport/13351/stable15
[stable15] Update the CRL
2019-01-04 10:44:57 +01:00
Roeland Jago Douma 94d45c597c Update the CRL
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-01-04 09:39:55 +00:00
Bjoern Schiessle d715a28cf2 fix can change password check in case of encryption is enabled
Admin should _not_ be able to change password when:
- if an encryption module is loaded and it uses per-user keys
- if encryption is enabled but no encryption modules are loaded

Admin should be able to change the password when:
- no encryption module is loaded and encryption is disabled
- encryption module is loaded but it doesn't require per user keys

Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2019-01-04 08:54:41 +00:00
Nextcloud bot 5270f3996f [tx-robot] updated from transifex 2019-01-04 01:12:40 +00:00
blizzz 87019e0d3d Merge pull request #13335 from nextcloud/backport/13161/stable15
[stable15] Rewrite getNumberOfUnreadCommentsForFolder query
2019-01-03 18:00:16 +01:00
Roeland Jago Douma 241ec0715c Rewrite getNumberOfUnreadCommentsForFolder query
Before the joining and filtering removed unkown files. Resulting in
manual queries for all the files with no (unread) comments (the 99%).

Long story short. This will return a list of all the files in the parent
folder with their unread comment count (can be 0). But this makes sure
that the result is properly cached. In the dav handling.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-01-03 16:10:13 +00:00
Morris Jobke eaa8e7cdf2 Merge pull request #13329 from nextcloud/backport/13225/stable15
[stable15] unbundle user_external to release it via appstore
2019-01-03 13:44:37 +01:00
Roeland Jago Douma fc7f208a95 Merge pull request #13253 from nextcloud/backport/13227/stable15
[stable15] Fix opening search results for comments
2019-01-03 13:24:45 +01:00
Daniel Calviño Sánchez 5f3d6b5fbc Fix opening search results for comments
"OC.dirname" removes everything after the last "/", so a path without
slashes is returned without changes. "result.path" does not include
leading nor trailing "/", so when the path is for a file or folder in
the base folder "OC.dirname(result.path)" returns "result.path".

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2019-01-03 11:39:16 +01:00
Daniel Calviño Sánchez 43ddf715d0 Add acceptance tests for opening search results for comments
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2019-01-03 11:39:16 +01:00
Daniel Calviño Sánchez d845f2b1e3 Add acceptance tests for searching comments
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2019-01-03 11:39:13 +01:00
Roeland Jago Douma b5e844f523 Merge pull request #13328 from nextcloud/backport/13326/stable15
[stable15] Add caching headers for public previews
2019-01-03 11:32:36 +01:00
Jonas Sulzer 5c88439848 remove user_external from shipped.json
Signed-off-by: Jonas Sulzer <jonas@violoncello.ch>
2019-01-03 09:40:48 +00:00
Julius Härtl 6d830a560c Add caching headers for public previews
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2019-01-03 09:37:25 +00:00
Nextcloud bot ec05897e4e [tx-robot] updated from transifex 2019-01-03 01:11:58 +00:00
Morris Jobke f81fdd4b5c Merge pull request #13252 from nextcloud/backport/13240/stable15
[stable15] Add default values when parsing account data
2019-01-02 16:28:02 +01:00
Roeland Jago Douma 832fa63dec Merge pull request #13278 from nextcloud/backport/13086/stable15
[stable15] Fetch lastInsertId only when id null
2019-01-02 09:15:28 +01:00
Nextcloud bot eab25fc1fc [tx-robot] updated from transifex 2019-01-02 01:11:41 +00:00
Nextcloud bot 2d91e9f00d [tx-robot] updated from transifex 2019-01-01 01:11:45 +00:00
Nextcloud bot 933d0c1902 [tx-robot] updated from transifex 2018-12-31 01:11:52 +00:00
Nextcloud bot 9cc7b9b9ec [tx-robot] updated from transifex 2018-12-30 01:12:51 +00:00
Nextcloud bot 520ac7c8b1 [tx-robot] updated from transifex 2018-12-29 01:11:53 +00:00
Nextcloud bot 9e315b1ac4 [tx-robot] updated from transifex 2018-12-28 01:11:59 +00:00
Daniel Kesselberg 92938f6f00 Access id property without getter.
Some implementations typehint getId to integer but default is null.

Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2018-12-27 17:01:57 +00:00
Daniel Kesselberg 97b03745b0 Fetch lastInsertId only when id null
When id column has no autoincrement flag query for lastInsertId fails
on postgres because no value has been generated. Call lastInsertId only
if id is null.

Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2018-12-27 17:01:57 +00:00
Nextcloud bot 424fc68d4c [tx-robot] updated from transifex 2018-12-27 01:11:51 +00:00
Nextcloud bot 32eeb94692 [tx-robot] updated from transifex 2018-12-26 01:12:06 +00:00
Nextcloud bot 1accc18b8d [tx-robot] updated from transifex 2018-12-25 01:11:46 +00:00
Julius Härtl 3be77ba956 Add default values when parsing account data
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-12-24 13:19:38 +00:00
Nextcloud bot 23889c50fc [tx-robot] updated from transifex 2018-12-24 01:11:59 +00:00
Nextcloud bot 3aacf8305a [tx-robot] updated from transifex 2018-12-23 01:12:37 +00:00
Roeland Jago Douma 4da786482f Merge pull request #13215 from nextcloud/backport/13212/stable15
[stable15] Files list not rendering if user has favorites navigation unfolded
2018-12-22 12:13:02 +01:00
Roeland Jago Douma 5975f40f14 Merge pull request #13209 from nextcloud/backport/13185/stable15
[stable15] SCSS cache buster is a combination of apps/theming/scc_vars
2018-12-22 10:36:08 +01:00
Julius Härtl af149c68bf Replace ChildNode.before with custom before helper
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-12-22 10:35:38 +01:00
Nextcloud bot 925d7733ea [tx-robot] updated from transifex 2018-12-22 01:11:57 +00:00
blizzz d1490a96ee Merge pull request #13218 from nextcloud/backport/13187/stable15
[stable15] do not forgot to store the second displayname portion
2018-12-21 16:59:01 +01:00
Arthur Schiwon c1e03e2a29 do not forgot to store the second displayname portion
otherwise it causes a chain reaction of system addressbook updates

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2018-12-21 13:44:01 +00:00
Roeland Jago Douma 3538e2e25a Merge pull request #13206 from nextcloud/backport/13154/stable15
[stable15] Fix ie11 checkboxes
2018-12-21 14:21:38 +01:00
Roeland Jago Douma 77a81d00cf SCSS cache buster is a combination of apps/theming/scc_vars
Else on scss files we'd get <file>?v=<hash>?v=<hash2>
This is of course not valid. Now it becomes <file>?v=<hash>-<hash2>

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-12-21 09:33:18 +00:00
John Molakvoæ (skjnldsv) c454ce5c33 Fix ie11 checkboxes
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2018-12-21 09:18:34 +00:00
Nextcloud bot 6a618ebd8b [tx-robot] updated from transifex 2018-12-21 01:11:57 +00:00
Roeland Jago Douma 6eec2c0665 Merge pull request #13179 from nextcloud/backport/13171/stable15
[stable15] Use a case insensitive search for email
2018-12-20 20:37:38 +01:00
Roeland Jago Douma 7b09d11924 Use a case insensitive search for email
Fixes #7084
Now entering wrongly cased email (roeland@ instead of Roeland@) for
password reset etc. Will also work.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-12-20 15:19:15 +00:00
Roeland Jago Douma e17a2bdfc7 Merge pull request #13169 from nextcloud/backport/13163/stable15
[stable15] Make the footer "Get your own free account" translatable
2018-12-20 09:44:20 +01:00
Christoph Wurst c2aa9263b7 Merge pull request #13155 from nextcloud/fulltextsearc-createindex
[15.0.1] allow content provider to generate new Index
2018-12-20 09:33:27 +01:00
Michael Weimann fb02625e8e Make the footer "Get your own free account" translatable
Signed-off-by: Michael Weimann <mail@michael-weimann.eu>
2018-12-20 06:47:00 +00:00
Nextcloud bot d543678651 [tx-robot] updated from transifex 2018-12-20 01:11:55 +00:00
Maxence Lange 663f9706f7 using the createIndex from FullTextSearchManager
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2018-12-19 11:27:37 -01:00
Roeland Jago Douma f9707abc0b Merge pull request #13150 from nextcloud/backport/13116/stable15
[stable15] Only trust the X-FORWARDED-HOST header for trusted proxies
2018-12-19 12:59:20 +01:00
Maxence Lange 3c1fd5cf29 allow content provide to generate new Index
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2018-12-19 09:36:38 -01:00
John Molakvoæ fc621142bf Merge pull request #13151 from nextcloud/backport/13133/stable15
[stable15] Prevent special characters from breaking the file drop remote url
2018-12-19 11:03:12 +01:00
John Molakvoæ (skjnldsv) 8e0ebb10a4 Prevent special characters from breaking the file drop remote url
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2018-12-19 08:54:34 +00:00
Roeland Jago Douma 9f6ee5b939 Only trust the X-FORWARDED-HOST header for trusted proxies
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-12-19 08:48:18 +00:00
Nextcloud bot 140f3d2ee0 [tx-robot] updated from transifex 2018-12-19 01:11:56 +00:00
Roeland Jago Douma bc9e42a9d3 Merge pull request #13123 from nextcloud/backport/13118/stable15
[stable15] Fix SAML Client login flow on Apple devices
2018-12-18 16:31:49 +01:00
Nextcloud bot 81f1edd432 [tx-robot] updated from transifex 2018-12-18 01:11:44 +00:00
blizzz 921147c76a Merge pull request #13119 from nextcloud/backport/12693/stable15
[stable15] fix exception on LDAP mapping during login
2018-12-17 22:29:03 +01:00
Roeland Jago Douma 5350fee90d Fix SAML Client login flow on Apple devices
Because the redirect from the SAML/SSO endpoint is a POST the lax/strict
cookies are not properly send.

Note that it is not strictly requried on this endpoint as we do not need
the remember me data. Only the real session info is enough. The endpoint
is also already protected by a state token.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-12-17 13:18:32 +00:00
Roeland Jago Douma c29d11442d Merge pull request #13076 from nextcloud/stb15-ie11-compatibility-updatenotifications
[stable15] Ie11 compatibility updatenotifications
2018-12-17 13:26:10 +01:00
Arthur Schiwon a7a1be792c LDAP clear cache on config modification also when done via API or CLI
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2018-12-17 12:08:10 +00:00
Arthur Schiwon acc7eee830 run LDAP integrations tests with redis which is the recommended setup
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2018-12-17 12:08:10 +00:00
Arthur Schiwon c6b540a738 be careful with mixed return values even if it may look unsuspicious…
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2018-12-17 12:08:10 +00:00
Arthur Schiwon e3fd241aba cache users as existing after mapping
during login they might be cached as non-existing and cause an Exception
in the long run

reduces some duplication, too

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2018-12-17 12:08:10 +00:00
Nextcloud bot 3f3337af9b [tx-robot] updated from transifex 2018-12-17 01:11:42 +00:00
Nextcloud bot 3045b6aae2 [tx-robot] updated from transifex 2018-12-16 01:12:42 +00:00
Nextcloud bot da3196fdb8 [tx-robot] updated from transifex 2018-12-15 01:11:48 +00:00
John Molakvoæ (skjnldsv) a141ca42e3 Transpile arrow function for ie11 compatibility
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2018-12-14 16:41:53 +01:00
Nextcloud bot e8e61acebc [tx-robot] updated from transifex 2018-12-14 01:12:42 +00:00
Nextcloud bot d92e3bb47b [tx-robot] updated from transifex 2018-12-13 01:12:07 +00:00
Roeland Jago Douma 54111bfee9 Merge pull request #13029 from nextcloud/backport/13009/stable15
[stable15] Better activities for systemtags that are removed by CLI
2018-12-12 15:53:46 +01:00
Robin Appelman 2d2de36baf upload new files in objectstore to a .part path first
This prevent the object store and cache from getting out of sync
when an objectstore silently fails or the php process get's killed
during the upload without giving us the chance to cleanup

Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-12-12 15:31:47 +01:00
Robin Appelman fe23285e44 Add objectExists to objectstore interface
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-12-12 15:31:44 +01:00
Joas Schilling a3145dc8e2 Better activities for systemtags that are removed by CLI
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-12-12 12:38:15 +00:00
Roeland Jago Douma 474c9fb8e5 Merge pull request #13007 from nextcloud/backport/13003/stable15
[stable15] Use default cursor for disabled primary buttons
2018-12-12 13:30:11 +01:00
Nextcloud bot 4fb51850c5 [tx-robot] updated from transifex 2018-12-12 01:11:48 +00:00
Daniel Calviño Sánchez 2a06ca4dae Use default cursor for disabled primary buttons
Disabled buttons use the default cursor, but as the cursor property for
primary buttons is set after the cursor property for disabled buttons
the latter is always overridden, even if the primary button is also
disabled. Due to this it is necessary to explicitly set the default
cursor for disabled primary buttons.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-12-11 13:48:37 +00:00
Roeland Jago Douma 2c09c05f13 Merge pull request #12961 from nextcloud/stable15-drone-run-one
Only run PUSH drone runs on stable15 branch
2018-12-11 14:24:07 +01:00
Nextcloud bot 76d1364167 [tx-robot] updated from transifex 2018-12-11 01:11:57 +00:00
Roeland Jago Douma b81531dead Merge pull request #12984 from nextcloud/backport/12982/stable15
[stable15] Use strengthify.min on personal settings page
2018-12-10 20:17:39 +01:00
Roeland Jago Douma f7ed3687d2 Use strengthify.min on personal settings page
Else the CSP fails to load properly

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-12-10 18:36:27 +00:00
Roeland Jago Douma 9b41fedbd6 Merge pull request #12963 from nextcloud/change-doc-link
Change doc link for 15
2018-12-10 13:08:41 +01:00
Daniel Kesselberg a77b33759f Change doc link for 15
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2018-12-10 11:28:18 +01:00
Roeland Jago Douma 3bb46a2acc Merge pull request #12959 from nextcloud/stable15-15final
Bump to 15.0.0 final
2018-12-10 11:13:58 +01:00
Roeland Jago Douma 21101f0446 Only run PUSH drone runs on stable15 branch
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-12-10 11:11:14 +01:00
Roeland Jago Douma bd352db77d Bump to 15.0.0 final
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-12-10 10:39:04 +01:00
Nextcloud bot 303fa31b11 [tx-robot] updated from transifex 2018-12-10 01:11:48 +00:00
Nextcloud bot 9d6d39d218 [tx-robot] updated from transifex 2018-12-09 01:12:37 +00:00
Nextcloud bot eb7c17add2 [tx-robot] updated from transifex 2018-12-08 01:11:34 +00:00
Morris Jobke 922c2ba4c7 Merge pull request #12913 from nextcloud/backport/12897/stable15
[stable15] Fix unread comment icon not shown for the sharee
2018-12-07 16:11:55 +01:00
Roeland Jago Douma eaa19f891c If the parent is not cached we should request the file
Else we ignore all incomming shares. Which basically does 💥

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-12-07 14:08:09 +00:00
Daniel Calviño Sánchez 9f0272ffd9 Add acceptance tests for comments on shared files and folders
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-12-07 14:08:09 +00:00
Morris Jobke 3c4c87948e Merge pull request #12908 from nextcloud/backport/12889/stable15
[stable15] Fix logo path in non-themed instance
2018-12-07 14:46:30 +01:00
Morris Jobke 8a247d52de Fix logo path in non-themed instance
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-12-07 12:38:34 +00:00
Nextcloud bot f7ef71bef5 [tx-robot] updated from transifex 2018-12-07 01:11:51 +00:00
Morris Jobke f0abe398a8 Merge pull request #12847 from nextcloud/version/noid/15.0.0RC3
15.0.0 RC 3
2018-12-06 15:59:34 +01:00
Morris Jobke cf69bf583e 15.0.0 RC 3
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-12-06 14:48:10 +01:00
Morris Jobke 9f2d48cbe5 Merge pull request #12882 from nextcloud/3rdparty-update
Set 3rdparty to pr187
2018-12-06 14:47:41 +01:00
Morris Jobke 6dfc3d9a98 Merge pull request #12880 from nextcloud/backport/12866/stable15
[stable15] Do not show general warning on free space error
2018-12-06 14:28:05 +01:00
Joas Schilling 7c421d6103 Set 3rdparty to pr187
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-12-06 14:25:51 +01:00
Morris Jobke 6d77389fbf Add abort stub in JSUnit
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-12-06 12:21:02 +00:00
Roeland Jago Douma d500c4babf Do not show general warning on free space error
Fixes #12588
Probably needs more fixing for the other cases. But this is the quick
fix I could come up with for now.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-12-06 12:21:02 +00:00
Nextcloud bot 1f94126f59 [tx-robot] updated from transifex 2018-12-06 01:12:12 +00:00
Morris Jobke 1e906fd15c Merge pull request #12868 from nextcloud/backport/12857/stable15
[stable15] Emit write update only once on touch
2018-12-06 01:18:21 +01:00
Morris Jobke f4497bbb57 Merge pull request #12867 from nextcloud/backport/12854/stable15
[stable15] Log and continue on Dav reader failure (repair uid)
2018-12-06 01:07:28 +01:00
Morris Jobke 61c17b5078 Merge pull request #12863 from nextcloud/fix/stable15-fix-password-confirmation-ie11
[stable15] Fix password confirmation lib for ie11
2018-12-06 00:05:21 +01:00
Morris Jobke b490a46c4a Merge pull request #12861 from nextcloud/backport/12855/stable15
[stable15] Only execute query in propagateChange once
2018-12-05 23:37:00 +01:00
Roeland Jago Douma 07eb6e5716 Emit write update only once on touch
When a touch is done (i.e. when creating a new file in the node API)
The hooks contain 'write' and 'touch' (and the operation is touch as
well). This would cause a double write update. Which doesn't make sense.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-12-05 21:55:24 +00:00
John Molakvoæ (skjnldsv) 7028362604 Log and continue on Dav reader failure
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2018-12-05 21:54:50 +00:00
Morris Jobke fc6dd2d4cb Merge pull request #12836 from nextcloud/backport/12624/stable15
[stable15] Validate all rich objects
2018-12-05 22:35:47 +01:00
Morris Jobke 4b27584e49 Merge pull request #12828 from nextcloud/backport/12626/stable15
[stable15] Unshare from mail activity is missing
2018-12-05 22:33:15 +01:00
Morris Jobke 3ead16baef Merge pull request #12856 from nextcloud/backport/12814/stable15
[stable15] No user enumeration on DAV if disabled
2018-12-05 22:14:04 +01:00
Morris Jobke 0511f86c82 Merge pull request #12853 from nextcloud/backport/12824/stable15
[stable15] Add setup check for pending bigint conversion
2018-12-05 21:48:10 +01:00
Roeland Jago Douma 1656a08323 Only execute query in propagateChange once
The second execute statement should be inside the if block. Else it gets
executed twice which makes no sense.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-12-05 20:44:35 +00:00
Christoph Wurst b5702d259d Fix password confirmation lib for ie11
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2018-12-05 21:43:01 +01:00
Roeland Jago Douma cf4337ac19 No DAV user enumeration if disabled
Fixes #9058

If the option to autocomplete users is disabled. We also should not
enumerate the users on this endpoint.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-12-05 19:59:27 +00:00
Roeland Jago Douma 816e8f03bb Merge pull request #12849 from nextcloud/stb15-missing-click-apps-update
[stable15] Fix missing click event on update button
2018-12-05 20:45:09 +01:00
Joas Schilling ea33663328 Fix wrong used type
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-12-05 20:06:11 +01:00
Joas Schilling 19d693035b Validate all rich objects not only the used ones
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-12-05 20:06:09 +01:00
Morris Jobke 9838c91a5c Add setup check for pending bigint conversion
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-12-05 17:53:42 +00:00
Morris Jobke bdeaff0790 Fix bigint conversion on SQLite
* on SQLite primary keys can't be bigint - see https://stackoverflow.com/a/18835967/520507

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-12-05 17:53:42 +00:00
Morris Jobke 5322de3fec Show columns to update in CLI interface
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-12-05 17:53:42 +00:00
John Molakvoæ 11894a82e7 Merge pull request #12848 from nextcloud/stb15-whatsNew-to-button
[stable15] Make a button out of 'What's new' so it's obvious it can be clicked on
2018-12-05 16:27:08 +01:00
Julius Härtl 3f70174ebe Fix missing click event on update button
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-12-05 14:23:22 +01:00
John Molakvoæ (skjnldsv) d3561d73c0 make a button out of 'What's new' so it's obvious it can be clicked on #12757
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2018-12-05 14:17:51 +01:00
Morris Jobke 3fd14b2920 Merge pull request #12833 from nextcloud/backport/12831/stable15
[stable15] Do not update child all child shares on group share update
2018-12-05 09:33:16 +01:00
Morris Jobke 328f93f66d Merge pull request #12837 from nextcloud/backport/12821/stable15
[stable15] Add setup check for recommended PHP modules (i.e. Imagick, intl)
2018-12-05 09:29:52 +01:00
Roeland Jago Douma 13da72730c Merge pull request #12816 from nextcloud/backport/12813/stable15
[stable15] Fix the system address book
2018-12-05 08:42:00 +01:00
Nextcloud bot e77f1ea351 [tx-robot] updated from transifex 2018-12-05 01:12:05 +00:00
Morris Jobke f4b582ec44 Update casing of PHP inside method name
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-12-04 23:34:39 +00:00
Morris Jobke ec9d58b21d Add setup check for recommended PHP modules (i.e. Imagick, intl)
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-12-04 23:34:39 +00:00
Roeland Jago Douma 7bb79dc733 Do not update child all child shares on group share update
Else we overwrite the whole share for link shares. Basically breaking
them.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-12-04 21:51:20 +00:00
Morris Jobke ce5a6fb41b Merge pull request #12830 from nextcloud/backport/12819/stable15
[stable15] PHP 7.0 is end of life
2018-12-04 22:27:06 +01:00
Roeland Jago Douma d031bd0149 Merge pull request #12829 from nextcloud/backport/12823/stable15
[stable15] Fix layout of "i" in admin settings of federated sharing
2018-12-04 21:02:35 +01:00
Morris Jobke b5eac6301b PHP 7.0 is end of life
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-12-04 19:12:08 +00:00
Roeland Jago Douma 9166db69e5 Merge pull request #12825 from nextcloud/backport/12822/stable15
[stable15] PHP module is named mbstring
2018-12-04 19:51:16 +01:00
Morris Jobke 81fd9ca16a Fix layout of "i" in admin settings of federated sharing
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-12-04 18:50:50 +00:00
Joas Schilling b047d0cba0 Unshare from mail activity is missing
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-12-04 17:58:49 +00:00
Morris Jobke 31b5c17f2e PHP module is named mbstring
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-12-04 17:56:46 +00:00
Roeland Jago Douma e5d445f852 Fix the system address book
c23a66cda4 broke the system address book.
We now move the ACL rules for this special case up and all is good in
the world again.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-12-04 14:20:41 +00:00
Morris Jobke fe558f2238 Merge pull request #12811 from nextcloud/backport/12808/stable15
[stable15] Only run the AnonymousOptionsPlugion on Anonymous requests
2018-12-04 13:53:16 +01:00
Roeland Jago Douma 94864df68c Only run the AnonymousOptionsPlugion on Anonymous requests
Fixes #12744

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-12-04 12:11:14 +00:00
Roeland Jago Douma 73dc436aec Merge pull request #12805 from nextcloud/backport/12786/stable15
[stable15] Fix activatable/deactivatable 2fa provider interface typos
2018-12-04 11:43:20 +01:00
Roeland Jago Douma c358bf8d4a Merge pull request #12784 from nextcloud/backport/12762/stable15
[stable15] Polishing of various modal dialogs
2018-12-04 09:52:53 +01:00
Christoph Wurst ad61fda11c Fix activatable/deactivatable 2fa provider interface typos
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2018-12-04 08:43:35 +00:00
Nextcloud bot faf27a1f20 [tx-robot] updated from transifex 2018-12-04 01:12:16 +00:00
Jan-Christoph Borchardt e71dbb133f Fix dialogs, button position
Signed-off-by: Jan-Christoph Borchardt <hey@jancborchardt.net>
2018-12-03 06:30:58 +00:00
Nextcloud bot 00ff059ba1 [tx-robot] updated from transifex 2018-12-03 01:11:44 +00:00
Nextcloud bot decb8d6068 [tx-robot] updated from transifex 2018-12-02 01:12:48 +00:00
Nextcloud bot 2841f85954 [tx-robot] updated from transifex 2018-12-01 01:11:38 +00:00
Morris Jobke d40672296b Merge pull request #12755 from nextcloud/version/noid/15.0.0RC2
15.0.0 RC 2
2018-11-30 11:29:28 +01:00
Morris Jobke d41ec83860 15.0.0 RC 2
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-11-30 10:40:14 +01:00
Morris Jobke e15f18b100 Merge pull request #12756 from nextcloud/backport/12628/stable15
[stable15] Parse activity when a user self-unshares a file
2018-11-30 10:23:23 +01:00
Joas Schilling 9a1d936bbf Parse activity when a user self-unshares a file
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-11-30 09:15:20 +00:00
Morris Jobke 44acc9db88 Merge pull request #12746 from nextcloud/backport/12688/stable15
[stable15] Fix cannot set 0 as value on files_external through OCC command
2018-11-30 09:58:50 +01:00
Nextcloud bot 2ca2393513 [tx-robot] updated from transifex 2018-11-30 01:12:08 +00:00
Morris Jobke 96450a9e9b Merge pull request #12692 from nextcloud/storage-no-encryption-interface-15
[15] Add interface to allow storages from opting out of encryption
2018-11-29 22:01:14 +01:00
Morris Jobke 82fedb16a0 Merge pull request #12744 from nextcloud/backport/12647/stable15
[stable15] update compatible versions for cloud federation api
2018-11-29 21:53:43 +01:00
Robin Appelman 8eb4c21c0d Fix cannot set 0 as value on files_external through OCC command
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-11-29 20:46:47 +00:00
Robin Appelman e8eaaa3bd2 update compatible versions for cloud federation api
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-11-29 21:41:35 +01:00
Morris Jobke 0ecd92d70b Merge pull request #12742 from nextcloud/backport/12734/stable15
[stable15] Add check for missing .woff2 rule in Nginx via setup check
2018-11-29 21:37:53 +01:00
Roeland Jago Douma 5ae517d905 Merge pull request #12741 from nextcloud/backport/12709/stable15
[stable15] Fix the loader position and the focus state on the login button
2018-11-29 20:49:53 +01:00
Roeland Jago Douma ae9e3ddbce Merge pull request #12740 from nextcloud/backport/12732/stable15
[stable15] Polishing fixes
2018-11-29 20:21:19 +01:00
Morris Jobke 19fbff9dd1 Add check for missing .woff2 rule in Nginx via setup check
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-11-29 18:37:41 +00:00
Roeland Jago Douma cbb264552a Merge pull request #12733 from nextcloud/backport/12674/stable15
[stable15] Date title to linkshare
2018-11-29 19:37:20 +01:00
Roeland Jago Douma c602d1b751 Merge pull request #12736 from nextcloud/backport/12424/stable15
[stable15] Add pipe mode for sendmail
2018-11-29 19:36:30 +01:00
Roeland Jago Douma ca9666fadb Merge pull request #12737 from nextcloud/backport/12690/stable15
[stable15] Set Referrer-Policy also in addSecurityHeaders()
2018-11-29 19:36:15 +01:00
John Molakvoæ (skjnldsv) 294cf525e8 Fix the loader position and the focus state on the login button
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2018-11-29 17:31:27 +00:00
John Molakvoæ (skjnldsv) 869867890a Remove animation on the sidebar for accessibility purpose
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2018-11-29 17:22:09 +00:00
John Molakvoæ (skjnldsv) 626ef06ee6 Fix default filepicker style and gridview
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2018-11-29 17:22:09 +00:00
John Molakvoæ (skjnldsv) 3119b2ba01 Fix app navigation edit entry
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2018-11-29 17:22:08 +00:00
Morris Jobke 2ecb2aaeb9 Merge pull request #12731 from nextcloud/backport/12669/stable15
[stable15] Don't require Same Site Cookies on accessibility app assets
2018-11-29 18:05:06 +01:00
Morris Jobke 3cd14639ff Merge pull request #12723 from nextcloud/backport/12710/stable15
[stable15] Remove old button to submit the apppassword login
2018-11-29 17:52:34 +01:00
Peter Kraume 604cbb62ec Set Referrer-Policy also in addSecurityHeaders()
Fix: #12689
Signed-off-by: Peter Kraume <peter.kraume@gmx.de>
2018-11-29 16:48:06 +00:00
Morris Jobke 160f01305a Merge pull request #12730 from nextcloud/backport/12630/stable15
[stable15] Fix versions sidebar issues
2018-11-29 17:48:01 +01:00
Daniel Kesselberg cbff5fabe7 Add testcases for pipe mode
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2018-11-29 16:44:36 +00:00
Daniel Kesselberg 4991dfbb14 Add sendmailmode to gui
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2018-11-29 16:44:36 +00:00
Carsten Wiedmann ad0a2ee181 Apply patch from @cwiedmann but drop -oi option for pipe
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2018-11-29 16:44:36 +00:00
John Molakvoæ (skjnldsv) 6893b2fe0d Better identification of the public link shares
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2018-11-29 16:03:12 +00:00
Thomas Citharel 90051e7467 Don't require Same Site Cookies on accessibility assets
Follows https://github.com/nextcloud/server/pull/11878
2018-11-29 15:43:19 +00:00
Robin Appelman 7cdc04a793 update encryption wrapper tests
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-11-29 16:36:35 +01:00
Julius Härtl 863bf95d92 Show mimetype icon if version preview is not available
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-11-29 15:34:03 +00:00
Julius Härtl 9cfc9eb40c Fix relative timestamp in versions
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-11-29 15:34:03 +00:00
Christoph Wurst d5e0292ba2 Update autoloader classmap
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2018-11-29 16:27:53 +01:00
John Molakvoæ (skjnldsv) 6c14b57337 Fix tests
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2018-11-29 10:17:01 +00:00
John Molakvoæ (skjnldsv) b208cce889 Remove redirect page
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2018-11-29 10:17:01 +00:00
John Molakvoæ (skjnldsv) c1c0a7e392 Remove old button to submit the apppassword login
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2018-11-29 10:17:00 +00:00
John Molakvoæ ea310cbfdf Merge pull request #12718 from nextcloud/backport/12668/stable15
[stable15] add capabilities for multiple share links
2018-11-29 10:09:13 +01:00
Nextcloud bot be1b653ede [tx-robot] updated from transifex 2018-11-29 01:11:44 +00:00
Morris Jobke 68d24c829a Merge pull request #12712 from nextcloud/backport/12698/stable15
[stable15] I changed the width of the srollbar to make it a bit bigger
2018-11-28 23:06:29 +01:00
Morris Jobke 33cf14a492 Merge pull request #12713 from nextcloud/backport/12677/stable15
[stable15] Open the updater via a POST form submit instead of eval the JS code d…
2018-11-28 23:05:17 +01:00
Bjoern Schiessle 46eca11a21 add capabilities for multiple share links
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2018-11-28 21:07:16 +00:00
Roeland Jago Douma c0a8e5b208 Merge pull request #12714 from nextcloud/backport/12708/stable15
[stable15] Fix folder path containing leading slash when getting mount root by id
2018-11-28 22:02:10 +01:00
Robin Appelman 9ee94afe7e Fix folder path containing leading slash when getting mount root by id
This fixes collabora on public link shared groupfolders

Fixes https://github.com/nextcloud/groupfolders/issues/225

Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-11-28 19:07:11 +00:00
Morris Jobke 6ac882f422 Open the updater via a POST form submit instead of eval the JS code directly
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-11-28 20:04:12 +01:00
GretaD 57aa26d814 I changed the width of the srollbar to make it a bit bigger
Signed-off-by: GretaD <gretadoci@gmail.com>
2018-11-28 18:39:04 +00:00
Daniel Kesselberg a027d55efc Merge pull request #12700 from nextcloud/backport/12632/stable15
[stable15] Add acceptance tests for sharing files and folders with another user
2018-11-28 14:12:14 +01:00
Nextcloud bot 7bdfc0c3df [tx-robot] updated from transifex 2018-11-28 01:12:05 +00:00
Daniel Calviño Sánchez c6ca6b03eb Rename "FilesSharingAppContext" to "PublicShareContext"
Having both "FilesAppSharingContext" and "FilesSharingAppContext" was
confusing, so "FilesSharingAppContext" was renamed to a more descriptive
name.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-11-27 21:08:59 +00:00
Daniel Calviño Sánchez 9354de01bb Extract locators and steps for sharing in Files app to their own context
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-11-27 21:08:58 +00:00
Daniel Calviño Sánchez 65192469c8 Extract sharing related acceptance tests to their own feature files
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-11-27 21:08:58 +00:00
Daniel Calviño Sánchez 39e5493072 Add acceptance tests for folders that can not be reshared
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-11-27 21:08:58 +00:00
Daniel Calviño Sánchez 41fff0932c Add acceptance tests for resharing a folder with another user
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-11-27 21:08:58 +00:00
Daniel Calviño Sánchez e435574613 Add acceptance test for checking that the owner can see reshares
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-11-27 21:08:58 +00:00
Daniel Calviño Sánchez 976fa8487f Add acceptance test for resharing a file with another user
To reshare a file there must be at least three enabled users in the
system; although it would be possible to run the steps to create a third
user in the scenarios that need it for convenience a third enabled user
besides "admin" and "user0" was added to the default setup.

In a similar way, a new step was added too to login as a given user
name, similar to the steps to log in as "user0" and as "admin".

Finally, another actor, "Jim", was introduced for those scenarios which
should be played by three standard actors (that is, without a special
configuration like "Rubeus").

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-11-27 21:08:58 +00:00
Daniel Calviño Sánchez aa19e89645 Add acceptance tests for sharing a folder with another user
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-11-27 21:08:58 +00:00
Daniel Calviño Sánchez 6ca82176a4 Add acceptance tests for sharing a file with another user
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-11-27 21:08:58 +00:00
Daniel Kesselberg 5ea9932b59 Merge pull request #12696 from nextcloud/backport/12649/stable15
[stable15] Make acceptance tests for comments more robust
2018-11-27 22:00:21 +01:00
Daniel Calviño Sánchez ad0adaea95 Wait for the comment to be added before changing to another file
If the server is too slow, changing to a different file immediately
after sending a new comment but without waiting for the comment to be
shown for the original file could cause the new comment to be shown for
the current file instead.

This is, indeed, a bug in the comments. However, it is not possible to
test it reliably in the acceptance tests, as it depends on how fast the
server adds the message and how fast the client changes to a different
file; sometimes the test would fail and sometimes it would not.

Therefore, now it is waited for the comment to be added before changing
to another file, as in this case it can be reliably tested that changing
to a different file does not cause the comments from the previous file
to be shown in the current file (this was a different bug already fixed
and due to which this test was added in the first place).

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-11-27 16:55:32 +00:00
Daniel Calviño Sánchez 4c88b12a28 Wait for the empty content element to be shown
When the "Comments" tab is open the empty content element is always in
the DOM, although it is only shown once the message collection was
fetched and there were no messages. Due to this it is necessary to
explicitly wait for it to be shown instead of relying on the implicit
wait made to find the element; otherwise it would be found immediately
and if the collection was not fetched yet it would not be visible,
causing the test to fail.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-11-27 16:55:32 +00:00
Robin Appelman f3798a7349 Add interface to allow storages from opting out of encryption
As opposed to hard-coding a list of excluded storages

Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-11-27 16:56:48 +01:00
Roeland Jago Douma b7e195dd7f Merge pull request #12683 from nextcloud/backport/12650/stable15
[stable15] Fix count on string
2018-11-27 16:28:25 +01:00
Daniel Kesselberg d0f341b355 Add return type
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2018-11-27 13:16:26 +00:00
Daniel Kesselberg 943f2576c5 Fix count on string
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2018-11-27 13:16:26 +00:00
Nextcloud bot a2dd8d05b1 [tx-robot] updated from transifex 2018-11-27 01:11:43 +00:00
Morris Jobke ca7c56116f Merge pull request #12638 from nextcloud/backport/12556/stable15
[stable15] extend anonymous options to work on every dav url
2018-11-26 11:03:12 +01:00
Nextcloud bot d2137ff778 [tx-robot] updated from transifex 2018-11-26 01:11:31 +00:00
Nextcloud bot 9dcde5912b [tx-robot] updated from transifex 2018-11-25 01:12:25 +00:00
Nextcloud bot a9a457e542 [tx-robot] updated from transifex 2018-11-24 01:11:28 +00:00
Robin Appelman 38e115e5bf extend anonymous options to work on every dav url
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-11-23 18:05:03 +00:00
Roeland Jago Douma a1ca70bbed Merge pull request #12615 from nextcloud/backport/12592/stable15
[stable15] Fix Typo in Original English String and All Translations
2018-11-23 07:48:33 +01:00
Nextcloud bot 72b4cce30b [tx-robot] updated from transifex 2018-11-23 01:13:08 +00:00
Patrick Baber 9d3553261c fix typo in original english string and all translations
Signed-off-by: Patrick Baber <patrick@p-squared.de>
2018-11-22 22:35:13 +00:00
13199 changed files with 568360 additions and 1038348 deletions
+3
View File
@@ -0,0 +1,3 @@
{
"directory": "core/vendor"
}
+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
+1183
View File
File diff suppressed because it is too large Load Diff
-40
View File
@@ -1,40 +0,0 @@
# https://editorconfig.org
# SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: AGPL-3.0-or-later
root = true
[*]
charset = utf-8
end_of_line = lf
indent_size = 4
indent_style = tab
insert_final_newline = true
trim_trailing_whitespace = true
[*.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
-48
View File
@@ -1,48 +0,0 @@
/**
* SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
module.exports = {
globals: {
__webpack_nonce__: true,
_: true,
$: true,
dayNames: true,
escapeHTML: true,
firstDay: true,
moment: true,
oc_userconfig: true,
sinon: true,
},
plugins: [
'cypress',
],
extends: [
'@nextcloud/eslint-config/typescript',
'plugin:cypress/recommended',
],
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
-6
View File
@@ -1,6 +0,0 @@
# SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: AGPL-3.0-or-later
/dist/* binary
/package-lock.json merge=binary
/core/css/*.css* binary
/.devcontainer/*.sh text eol=lf
-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
+11 -22
View File
@@ -1,14 +1,10 @@
<!--
- 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
* The [**issue templates can be found here**][templates] but be aware of the different repositories! See list below. Please always use an issue template when reporting issues.
* The [**issue template can be found here**][template] but be aware of the different repositories! See list below. Please always use the issue template when reporting issues.
### Guidelines
* Please search the existing issues first, it's likely that your issue was already reported or even fixed.
@@ -16,16 +12,16 @@ If you have questions about how to install or use Nextcloud, please direct these
- You can also filter by appending e. g. "state:open" to the search string.
- More info on [search syntax within github](https://help.github.com/articles/searching-issues)
* This repository ([server](https://github.com/nextcloud/server/issues)) is *only* for issues within the Nextcloud Server code. This also includes the apps: files, encryption, external storage, sharing, deleted files, versions, LDAP, and WebDAV Auth
* __SECURITY__: Report any potential security bug to us via [our HackerOne page](https://hackerone.com/nextcloud) following our [security policy](https://nextcloud.com/security/) instead of filing an issue in our bug tracker.
* __SECURITY__: Report any potential security bug to us via [our HackerOne page](https://hackerone.com/nextcloud) or security@nextcloud.com following our [security policy](https://nextcloud.com/security/) instead of filing an issue in our bug tracker.
* The issues in other components should be reported in their respective repositories: You will find them in our [GitHub Organization](https://github.com/nextcloud/)
* Report the issue using one of our [templates][templates], they include all the information we need to track down the issue.
* Report the issue using our [template][template], it includes all the information we need to track down the issue.
Help us to maximize the effort we can spend fixing issues and adding new features, by not reporting duplicate issues.
[templates]: ./ISSUE_TEMPLATE
[template]: ./ISSUE_TEMPLATE.md
[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
@@ -69,7 +58,7 @@ like `git config --global alias.ci 'commit -s'`. Now you can commit with
In case you are not sure how to add or update the license header correctly please have a look at [contribute/HowToApplyALicense.md][applyalicense]
[devmanual]: https://docs.nextcloud.com/server/latest/developer_manual/
[devmanual]: https://docs.nextcloud.org/server/13/developer_manual/
[dcofile]: https://github.com/nextcloud/server/blob/master/contribute/developer-certificate-of-origin
[applyalicense]: https://github.com/nextcloud/server/blob/master/contribute/HowToApplyALicense.md
-3
View File
@@ -1,3 +0,0 @@
# SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: AGPL-3.0-or-later
custom: https://nextcloud.com/include/
+139
View File
@@ -0,0 +1,139 @@
<!--
Thanks for reporting issues back to Nextcloud! This is the issue tracker of Nextcloud, if you have any support question please check out https://nextcloud.com/support
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 help you 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, 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>
-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).
-48
View File
@@ -1,48 +0,0 @@
---
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.
@@ -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
-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
-36
View File
@@ -1,36 +0,0 @@
# This workflow is provided via the organization template repository
#
# https://github.com/nextcloud/.github
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
#
# SPDX-FileCopyrightText: 2021-2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
name: Block fixup and squash commits
on:
pull_request:
types: [opened, ready_for_review, reopened, synchronize]
permissions:
contents: read
concurrency:
group: fixup-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
commit-message-check:
if: github.event.pull_request.draft == false
permissions:
pull-requests: write
name: Block fixup and squash commits
runs-on: ubuntu-latest-low
steps:
- name: Run check
uses: skjnldsv/block-fixup-merge-action@c138ea99e45e186567b64cf065ce90f7158c236a # v2
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
-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 -37
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
@@ -11,16 +7,14 @@
/apps/inc.php
/assets
/.htaccess
/node_modules
/translationfiles
/translationtool.phar
# 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,25 +22,19 @@
!/apps/sharebymail
!/apps/encryption
!/apps/files_external
!/apps/files_reminders
!/apps/files_sharing
!/apps/files_trashbin
!/apps/files_versions
!/apps/lookup_server_connector
!/apps/user_ldap
!/apps/oauth2
!/apps/profile
!/apps/provisioning_api
!/apps/settings
!/apps/systemtags
!/apps/testing
!/apps/admin_audit
!/apps/updatenotification
!/apps/theming
!/apps/twofactor_backupcodes
!/apps/user_status
!/apps/weather_status
!/apps/webhook_listeners
!/apps/workflowengine
/apps/files_external/3rdparty/irodsphp/PHPUnitTest
/apps/files_external/3rdparty/irodsphp/web
@@ -64,9 +52,6 @@
!/themes/example
!/themes/README
# Love to people that develop the updater
/updater
# just sane ignores
.*.sw[po]
*.bak
@@ -82,8 +67,6 @@ CVS/*
.svn/*
RCS/*
*.backup*
.php_cs.cache
.php-cs-fixer.cache
# kdevelop
.kdev
@@ -106,7 +89,6 @@ nbproject
# vscode
.vscode
*.code-workspace
# geany
*.geany
@@ -138,10 +120,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,8 +133,6 @@ Vagrantfile
# Tests - auto-generated files
/data-autotest
/results.sarif
/tests/.phpunit.result.cache
/tests/coverage*
/tests/css
/tests/karma-coverage
@@ -167,20 +146,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
+41 -84
View File
@@ -7,62 +7,45 @@
<IfModule mod_proxy_fcgi.c>
SetEnvIfNoCase Authorization "(.+)" HTTP_AUTHORIZATION=$1
</IfModule>
<IfModule mod_lsapi.c>
SetEnvIfNoCase ^Authorization$ "(.+)" XAUTHORIZATION=$1
RequestHeader set XAuthorization %{XAUTHORIZATION}e env=XAUTHORIZATION
</IfModule>
</IfModule>
<IfModule mod_env.c>
# Add security and privacy related headers
# Avoid doubled headers by unsetting headers in "onsuccess" table,
# then add headers to "always" table: https://github.com/nextcloud/server/pull/19002
<If "%{REQUEST_URI} =~ m#/login$#">
# Only on the login page we need any Origin or Referer header set.
Header onsuccess unset Referrer-Policy
Header always set Referrer-Policy "same-origin"
</If>
<Else>
Header onsuccess unset Referrer-Policy
Header always set Referrer-Policy "no-referrer"
</Else>
Header onsuccess unset X-Content-Type-Options
Header always set X-Content-Type-Options "nosniff"
Header onsuccess unset X-Frame-Options
Header always set X-Frame-Options "SAMEORIGIN"
Header onsuccess unset X-Permitted-Cross-Domain-Policies
Header always set X-Permitted-Cross-Domain-Policies "none"
Header onsuccess unset X-Robots-Tag
Header always set X-Robots-Tag "noindex, nofollow"
Header onsuccess unset X-XSS-Protection
Header always set X-XSS-Protection "1; mode=block"
Header set X-Content-Type-Options "nosniff"
Header set X-XSS-Protection "1; mode=block"
Header set X-Robots-Tag "none"
Header set X-Download-Options "noopen"
Header set X-Permitted-Cross-Domain-Policies "none"
Header set Referrer-Policy "no-referrer"
SetEnv modHeadersAvailable true
</IfModule>
# Add cache control for static resources
<FilesMatch "\.(css|js|mjs|svg|gif|png|jpg|webp|ico|wasm|tflite)$">
<If "%{QUERY_STRING} =~ /(^|&)v=/">
Header set Cache-Control "max-age=15778463, immutable"
</If>
<Else>
Header set Cache-Control "max-age=15778463"
</Else>
<FilesMatch "\.(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_php5.c>
php_value upload_max_filesize 511M
php_value post_max_size 511M
php_value memory_limit 512M
php_value mbstring.func_overload 0
php_value always_populate_raw_post_data -1
php_value default_charset 'UTF-8'
php_value output_buffering 0
<IfModule mod_env.c>
SetEnv htaccessWorking true
</IfModule>
</IfModule>
<IfModule mod_php7.c>
php_value upload_max_filesize 511M
php_value post_max_size 511M
php_value memory_limit 512M
php_value mbstring.func_overload 0
php_value default_charset 'UTF-8'
php_value output_buffering 0
@@ -70,56 +53,30 @@
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]
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/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,
+4 -15
View File
@@ -63,8 +63,8 @@ Christian Berendt <berendt@b1-systems.de>
Christian Kampka <christian@kampka.net>
Christian Koch <koch.chris@gmail.com>
Christian Reiner <github@christian-reiner.info> Christian Reiner <arkascha@balder.site>
Christoph Wurst <christoph@winzerhof-wurst.at> Christoph Wurst <ChristophWurst@users.noreply.github.com>
Christoph Wurst <christoph@winzerhof-wurst.at> Christoph Wurst <christoph@owncloud.com>
Christoph Wurst <christoph@owncloud.com> Christoph Wurst <ChristophWurst@users.noreply.github.com>
Christoph Wurst <christoph@owncloud.com> Christoph Wurst <christoph@winzerhof-wurst.at>
Christopher Bunn <b11.chris@gmail.com>
Christopher Schäpers <kondou@ts.unde.re> Christopher <kondou@ts.unde.re>
Christopher Schäpers <kondou@ts.unde.re> kondou <kondou@ts.unde.re>
@@ -82,7 +82,6 @@ Dan Callahan <dan.callahan@gmail.com>
Dan Jones <dan@danneh.org>
Daniel <daniel@mars.(none)>
Daniel Hansson <enoch85@gmail.com>
Daniel Kesselberg <mail@danielkesselberg.de> kesselb <mail@danielkesselberg.de>
Daniel Köb <daniel.koeb@peony.at>
Daniel Molkentin <daniel@molkentin.de>
Daniele E. Domenichelli <daniele.domenichelli@gmail.com>
@@ -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>
@@ -187,7 +185,6 @@ Jesús Macias <jmacias@solidgear.es> Jesus Macias <jmacias@full-on-net.com>
jknockaert <jasper@knockaert.nl>
Joan <aseques@gmail.com>
Joar Wandborg <git@wandborg.com>
Joas Schilling <coding@schilljs.com> Joas Schilling <213943+nickvergessen@users.noreply.github.com>
Joas Schilling <coding@schilljs.com> Joas Schilling <nickvergessen@gmx.de>
Joas Schilling <coding@schilljs.com> Joas Schilling <nickvergessen@owncloud.com>
joel hansson <joel.hansson@gmail.com>
@@ -215,7 +212,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>
@@ -321,7 +317,6 @@ Robin McCorkell <robin@mccorkell.me.uk> Robin McCorkell <rmccorkell@owncloud.com
Rodrigo Hjort <rodrigo.hjort@gmail.com>
Roeland Jago Douma <roeland@famdouma.nl> Roeland Jago Douma <rullzer@owncloud.com>
Roeland Jago Douma <roeland@famdouma.nl> Roeland Douma <rullzer@users.noreply.github.com>
Roeland Jago Douma <roeland@famdouma.nl> Roeland Jago Douma <rullzer@users.noreply.github.com>
Roger Szabo <roger.szabo@web.de> root <roger.szabo@web.de>
rok <brejktru@gmail.com>
Roland Hager <roland.hager@tu-berlin.de>
@@ -341,7 +336,6 @@ Sander <brantje@gmail.com>
Sandro Knauß <bugs@sandroknauss.de> Sandro <hefee@taurin.(none)>
Sascha Schmidt <realriot@realriot.de>
Sascha Schneider <development@suntsu.org>
Sascha Wiswedel <sascha.wiswedel@nextcloud.com> Sascha Wiswedel <wiswedel@users.noreply.github.com>
scambra <sergio@entrecables.com>
scolebrook <scolebrook@mac.com>
Scott Arciszewski <scott@arciszewski.me>
@@ -360,8 +354,6 @@ Simon Birnbach <simon@simon-birnbach.de>
Simon Könnecke <simonkoennecke@gmail.com>
Simon Whittaker <simon@swbh.net>
Sjors van der Pluijm <sjors@desjors.nl> Sjors van der Pluijm <sjors@youngguns.nl>
John Molakvoæ <skjnldsv@protonmail.com> John Molakvoæ <skjnldsv@users.noreply.github.com>
John Molakvoæ <skjnldsv@protonmail.com> John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
st3so <st3so@server.fake>
Stefan <mu.stefan@googlemail.com>
Stefan Göckeritz <admin@s-goecker.de>
@@ -384,8 +376,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 +401,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 -3
View File
@@ -1,6 +1,6 @@
; SPDX-FileCopyrightText: 2016-2024 Nextcloud GmbH and Nextcloud contributors
; SPDX-FileCopyrightText: 2014-2016 ownCloud, Inc.
; SPDX-License-Identifier: AGPL-3.0-only
upload_max_filesize=511M
post_max_size=511M
memory_limit=512M
mbstring.func_overload=0
always_populate_raw_post_data=-1
default_charset='UTF-8'
+47 -388
View File
@@ -1,637 +1,296 @@
<!--
- 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:
- 1 Man Projects <reed@1manprojects.de>
- 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>
- 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>
- Brad Rubenstein <brad@wbr.tech>
- Brandon Kirsch <brandonkirsch@github.com>
- Branko Kokanovic <branko@kokanovic.org>
- Brent Bloxam <brent.bloxam@gmail.com>
- Brice Maron <brice@bmaron.net>
- Byron Marohn <combustible@live.com>
- CRA Yoshihito Nakatani <yoshihito.nakatani@craftsman-software.com>
- Carl Csaposs <carl@csaposs.com>
- Carl Schwan <carl@carlschwan.eu>
- Carla Schroder <carla@owncloud.com>
- Carlos Cerrillo <ccerrillo@gmail.com>
- Carlos Ferreira <carlos@reendex.com>
- Carsten Wiedmann <carsten_sttgt@gmx.de>
- Chih-Hsuan Yen <yan12125@gmail.com>
- Christian <16852529+cviereck@users.noreply.github.com>
- Carlos Damken <carlos@damken.com>
- Christian Berendt <berendt@b1-systems.de>
- Christian Jürges <christian@eqipe.ch>
- Christian Kampka <christian@kampka.net>
- Christian Oliff <christianoliff@yahoo.com>
- Christian Weiske <cweiske@cweiske.de>
- Christoph Schaefer "christophł@wolkesicher.de"
- Christoph Seitz <christoph.seitz@posteo.de>
- Christoph Wickert <cwickert@suse.de>
- Christoph Wurst <christoph@winzerhof-wurst.at>
- Christoph Wurst <christoph@owncloud.com>
- 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>
- Dan Bartram <daneybartram@gmail.com>
- 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>
- Daniel Molkentin <daniel@molkentin.de>
- Daniel Tosello <tosello.daniel@gmail.com>
- David Prévot <taffit@debian.org>
- David Toledo <dtoledo@solidgear.es>
- Denis Mosolov <denismosolov@gmail.com>
- Derek <derek.kelly27@gmail.com>
- Dominik Schmidt <dev@dominik-schmidt.de>
- Donquixote <marjunebatac@gmail.com>
- Dries Mys <dries.mys@my-dreams.be>
- EWouters <6179932+EWouters@users.noreply.github.com>
- Elijah Martin-Merrill <elijah@nyp-itsours.com>
- Ember 'n0emis' Keske <git@n0emis.eu>
- Eric Masseran <rico.masseran@gmail.com>
- Erik van Velzen <erik@evanv.nl>
- Evgeny Golyshev <eugulixes@gmail.com>
- Ezhil Shanmugham <ezhil930@gmail.com>
- Fabian Dreßler <nudelsalat@clouz.de>
- Fabien Potencier <fabien@symfony.com>
- Fabian Henze <flyser42@gmx.de>
- Fabrizio Steiner <fabrizio.steiner@gmail.com>
- Faraz Samapoor <f.samapoor@gmail.com>
- Felix A. Epp <work@felixepp.de>
- 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>
- 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>
- Gadzy <dev@gadzy.fr>
- 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>
- Joachim Bauch <bauch@struktur.de>
- Joachim Sokolowski <github@sokolowski.org>
- Joas Schilling <coding@schilljs.com>
- Joel S <joel.devbox@protonmail.com>
- Johan Björk <johanimon@gmail.com>
- Johannes Ernst <jernst@indiecomputing.com>
- Johannes Leuker <j.leuker@hosting.de>
- Johannes Merkel <mail@johannesgge.de>
- Johannes Riedel <joeried@users.noreply.github.com>
- Johannes Riedel <johannes@johannes-riedel.de>
- Johannes Schlichenmaier <johannes@schlichenmaier.info>
- Johannes Willnecker <johannes@willnecker.com>
- John Molakvoæ <skjnldsv@protonmail.com>
- Jonas <jonas@freesources.org>
- Jonas Heinrich <heinrich@synyx.de>
- Jonas Meurer <jonas@freesources.org>
- Jonas Rittershofer <jotoeri@users.noreply.github.com>
- John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
- John Molakvoæ <skjnldsv@users.noreply.github.com>
- Jonny007-MKD <1-23-4-5@web.de>
- Jos Poortvliet <jos@opensuse.org>
- Jose Quinteiro <github@quinteiro.org>
- Josh Richards <josh.t.richards@gmail.com>
- Joshua Trees <me@jtrees.io>
- Juan Pablo 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>
- Lars <winnetou+github@catolic.de>
- Lars Knickrehm <mail@lars-sh.de>
- Laurens Post <Crote@users.noreply.github.com>
- Laurens Post <lkpost@scept.re>
- Lauris Binde <laurisb@users.noreply.github.com>
- Lee Garrett <lgarrett@rocketjump.eu>
- Lennart Rosam <hello@takuto.de>
- Lennart Rosam <lennart.rosam@medien-systempartner.de>
- Leon Klingele <git@leonklingele.de>
- Leon Klingele <leon@struktur.de>
- Liam Dennehy <liam@wiemax.net>
- Liam JACK <liamjack@users.noreply.github.com>
- Lionel Elie Mamane <lionel@mamane.lu>
- Loki3000 <github@labcms.ru>
- 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>
- Lyonel Vincent <lyonel@ezix.org>
- Magnus Walbeck <mw@mwalbeck.org>
- Maksim Sukharev <antreesy.web@gmail.com>
- Marc Hefter <marchefter@gmail.com>
- Marc Hefter <marchefter@march42.net>
- Marcel Klehr <mklehr@gmx.net>
- Marcel Müller <marcel-mueller@gmx.de>
- Marcel Müller <marcel.mueller@nextcloud.com>
- Manish Bisht <manish.bisht490@gmail.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>
- 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>
- Marvin Thomas Rabe <mrabe@marvinrabe.de>
- Masaki Kawabata Neto <masaki.kawabata@gmail.com>
- MasterOfDeath <rinat.gumirov@mail.ru>
- Matthew Setter <matthew@matthewsetter.com>
- Matthieu Gallien <matthieu.gallien@nextcloud.com>
- Mattia Narducci <mattianarducci1@gmail.com>
- Max <max@nextcloud.com>
- Max Kovalenko <mxss1998@yandex.ru>
- Max Kunzelmann <maxdev@posteo.de>
- 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 Weimann <mail@michael-weimann.eu>
- Michael Zamot <michael@zamot.io>
- Michał Węgrzynek <michal.wegrzynek@malloc.com.pl>
- Michiel de Jong <michiel@unhosted.org>
- Micke Nordin <kano@sunet.se>
- Mickey Knox <mickey@netfreaks.org>
- Michael Roth <michael.roth@rz.uni-augsburg.de>
- Michael U <mdusher@users.noreply.github.com>
- Miguel Prokop <miguel.prokop@vtu.com>
- Mikael Hammarin <mikael@try2.se>
- Mikael Nordin <mickenordin@users.noreply.github.com>
- Mikael Saarinen <mikaels@iki.fi>
- Mikhail Sazanov <m@sazanof.ru>
- Miha Frangez <miha.frangez@gmail.com>
- 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 Wegner <void1976@gmail.com>
- Olivier Mehani <shtrom@ssji.net>
- 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>
- Petr Svoboda <weits666@gmail.com>
- Phiber2000 <phiber2000@gmx.de>
- Phil Davis <phil.davis@inf.org>
- Philip Gatzka <philip.gatzka@mailbox.org>
- Philipp Kapfer <philipp.kapfer@gmx.at>
- Philipp Schaffrath <github@philipp.schaffrath.email>
- Philipp Staiger <philipp@staiger.it>
- Philippe Jung <phil.jung@free.fr>
- Pierre Ozoux <pierre@ozoux.net>
- Pierre Rudloff <contact@rudloff.pro>
- Piotr Filiciak <piotr@filiciak.pl>
- Piotr M <mrow4a@yahoo.com>
- Piotr Mrowczynski <mrow4a@yahoo.com>
- Piotr Mrowczynski <piotr@owncloud.com>
- Piotr Mrówczyński <mrow4a@yahoo.com>
- Pytal <24800714+Pytal@users.noreply.github.com>
- Qingping Hou <dave2008713@gmail.com>
- Raghu Nayyar <hey@raghunayyar.com>
- Raghu Nayyar <me@iraghu.com>
- Ralph Krimmel <rkrimme1@gwdg.de>
- Ramiro Aparicio <rapariciog@gmail.com>
- Randolph Carter <RandolphCarter@fantasymail.de>
- Rayn0r <andrew@ilpss8.myfirewall.org>
- RealRancor <Fisch.666@gmx.de>
- RealRancor <fisch.666@gmx.de>
- Rello <Rello@users.noreply.github.com>
- Remco Brenninkmeijer <requist1@starmail.nl>
- Retidurc Silvernight <retidurc@silvernight.social>
- Richard Steinmetz <richard@steinmetz.cloud>
- Richard de Boer <github@tubul.net>
- Rid <rid@cylo.io>
- Rinat Gumirov <rinat.gumirov@mail.ru>
- Robert Dailey <rcdailey@gmail.com>
- Renaud Fortier <Renaud.Fortier@fsaa.ulaval.ca>
- Robert Scheck <robert@fedoraproject.org>
- Robin Appelman <robin@icewind.nl>
- Robin McCorkell <robin@mccorkell.me.uk>
- Robin Müller <coder-hugo@users.noreply.github.com>
- Roeland Jago Douma <roeland@famdouma.nl>
- Roger Szabo <roger.szabo@web.de>
- Roland Tapken <roland@bitarbeiter.net>
- Romain Rivière <lecoyote@lecoyote.org>
- Roman 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 Wiswedel <sascha.wiswedel@nextcloud.com>
- Scott Dutton <exussum12@users.noreply.github.com>
- Scott Dutton <scott@exussum.co.uk>
- Scott Shambarger <devel@shambarger.net>
- Sascha Sambale <mastixmc@gmail.com>
- Sean Comeau <sean@ftlnetworks.ca>
- Sean Molenaar <sean@seanmolenaar.eu>
- Sebastian Döll <sebastian.doell@libasys.de>
- Sebastian Steinmetz <462714+steiny2k@users.noreply.github.com>
- Sebastian Steinmetz <me@sebastiansteinmetz.ch>
- Sebastian Wessalowski <sebastian@wessalowski.org>
- Semih Serhat Karakaya <karakayasemi@itu.edu.tr>
- Senorsen <senorsen.zhang@gmail.com>
- Serge Martin <edb@sigluy.net>
- Sergej Nikolaev <kinolaev@gmail.com>
- Sergej Pupykin <pupykin.s@gmail.com>
- Sergey Shliakhov <husband.sergey@gmail.com>
- Sergio Bertolin <sbertolin@solidgear.es>
- Sergio Bertolín <sbertolin@solidgear.es>
- Serhii Shliakhov <shlyakhov.up@gmail.com>
- Sijmen Schoon <me@sijmenschoon.nl>
- Simon Könnecke <simonkoennecke@gmail.com>
- Simon L <szaimen@e.mail.de>
- Simon Leiner <simon@leiner.me>
- Simon Spannagel <simonspa@kth.se>
- Simounet <contact@simounet.net>
- Sjors van der Pluijm <sjors@desjors.nl>
- Stanimir Bozhilov <stanimir.bozhilov.1998@gmail.com>
- Stanimir Bozhilov <stanimir@audriga.com>
- Stefan <Stefan.Schilling@EXXETA.com>
- Stefan Herbrechtsmeier <stefan@herbrechtsmeier.net>
- Stefan Rado <owncloud@sradonia.net>
- Stefan Schneider <stefan.schneider@squareweave.com.au>
- Stefan Weiberg <sweiberg@suse.com>
- Stefan Weil <sw@weilnetz.de>
- Steffen Lindner <mail@steffen-lindner.de>
- Stephan Müller <mail@stephanmueller.eu>
- Stephan Orbaugh <stephan.orbaugh@nextcloud.com>
- Stephan Peijnik <speijnik@anexia-it.com>
- Stephen Cuppett <steve@cuppett.com>
- Steven Bühner <buehner@me.com>
- Sujith H <sharidasan@owncloud.com>
- Sujith Haridasan <Sujith_Haridasan@mentor.com>
- Sujith Haridasan <sujith.h@gmail.com>
- Sven Strickroth <email@cs-ware.de>
- Sylvain <git@sylvain.dev>
- Sylvia van Os <sylvia@hackerchick.me>
- Tekhnee <info@tekhnee.org>
- Temtaime <temtaime@gmail.com>
- 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>
- Torben Dannhauer <torben@dannhauer.de>
- Ujjwal Bhardwaj <ujjwalb1996@gmail.com>
- Victor Dubiniuk <dubiniuk@owncloud.com>
- Viktor Szépe <viktor@szepe.net>
- Vincent Chan <plus.vincchan@gmail.com>
- Vincent Cloutier <vincent1cloutier@gmail.com>
- Vincent Petry <pvince81@owncloud.com>
- Vincent Petry <vincent@nextcloud.com>
- Vincent Van Houtte <vvh@aplusv.be>
- Vinicius Cubas Brand <vinicius@eita.org.br>
- Vitor Mattos <vitor@php.rio>
- Vlastimil Pecinka <pecinka@email.cz>
- Volkan Gezer <volkangezer@gmail.com>
- Volker <skydiablo@gmx.net>
- William <william.hak57@gmail.com>
- William Pain <pain.william@gmail.com>
- Xheni Myrtaj <myrtajxheni@gmail.com>
- Xheni Myrtaj <xheni@protonmail.com>
- Xuanwo <xuanwo@yunify.com>
- ZitronePlus <tobiasscharf92@gmail.com>
- acsfer <12234510+acsfer@users.noreply.github.com>
- acsfer <carlos@reendex.com>
- adrien <adrien.waksberg@believedigital.com>
- alanmeeson <alan@carefullycalculated.co.uk>
- aler9 <46489434+aler9@users.noreply.github.com>
- alexweirig <alex.weirig@technolink.lu>
- b108@volgograd "b108@volgograd"
- bbx-github <53237674+bbx-github@users.noreply.github.com>
- bladewing <lukas@ifflaender-family.de>
- bline <scottbeck@gmail.com>
- blizzz <blizzz@arthur-schiwon.de>
- brad2014 <brad2014@users.noreply.github.com>
- brumsel <brumsel@losecatcher.de>
- cahogan <caitlin.hogan@swiftsolar.com>
- call-me-matt <nextcloud@matthiasheinisch.de>
- castillo92 <37965565+castillo92@users.noreply.github.com>
- cetra3 <peter@parashift.com.au>
- cmeh <cmeh@users.noreply.github.com>
- comradekingu <epost@anotheragency.no>
- coderkun <olli@coderkun.de>
- 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>
- iamfool <praveenraonp@gmail.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>
- justin-sleep <justin@quarterfull.com>
- karakayasemi <karakayasemi@itu.edu.tr>
- kevin147147 <kevintamool@gmail.com>
- korelstar <korelstar@users.noreply.github.com>
- leith abdulla <online-nextcloud@eleith.com>
- lui87kw <lukas.ifflaender@uni-wuerzburg.de>
- luz paz <luzpaz@github.com>
- luz paz <luzpaz@pm.me>
- lynn-stephenson <lynn.stephenson@protonmail.com>
- macjohnny <estebanmarin@gmx.ch>
- marco44 <cousinmarc@gmail.com>
- martin-rueegg <martin.rueegg@metaworx.ch>
- martin.mattel@diemattels.at <martin.mattel@diemattels.at>
- martink-p <47943787+martink-p@users.noreply.github.com>
- matt <34400929+call-me-matt@users.noreply.github.com>
- medcloud <42641918+medcloud@users.noreply.github.com>
- michaelletzgus <michaelletzgus@users.noreply.github.com>
- michag86 <micha_g@arcor.de>
- michag86 <michag86@arcor.de>
- mmccarn <mmccarn-github@mmsionline.us>
- nhirokinet <nhirokinet@nhiroki.net>
- nik gaffney <nik@fo.am>
- nishiki <nishiki@yaegashi.fr>
- noiob <8197071+noiob@users.noreply.github.com>
- noveens <noveen.sachdeva@research.iiit.ac.in>
- npmbuildbot[bot] "npmbuildbot[bot]@users.noreply.github.com"
- onehappycat <one.happy.cat@gmx.com>
- 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>
- 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>
- vkuimov "vkuimov@nextcloud"
- 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