Skip to content

Commit bd242f3

Browse files
committed
Merge branch 'master' into stable
2 parents 218b837 + 8f49ead commit bd242f3

261 files changed

Lines changed: 22447 additions & 20541 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/dependabot-approve-merge.yml

Lines changed: 18 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,13 @@
33
# https://github.com/nextcloud/.github
44
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
55
#
6-
# SPDX-FileCopyrightText: 2021-2024 Nextcloud GmbH and Nextcloud contributors
6+
# SPDX-FileCopyrightText: Nextcloud GmbH and Nextcloud contributors
77
# SPDX-License-Identifier: MIT
88

9-
name: Dependabot
9+
name: Auto approve Dependabot PRs
1010

1111
on:
12-
pull_request_target:
12+
pull_request_target: # zizmor: ignore[dangerous-triggers]
1313
branches:
1414
- main
1515
- master
@@ -24,11 +24,13 @@ concurrency:
2424

2525
jobs:
2626
auto-approve-merge:
27-
if: github.actor == 'dependabot[bot]' || github.actor == 'renovate[bot]'
27+
if: github.event.pull_request.user.login == 'dependabot[bot]' || github.event.pull_request.user.login == 'renovate[bot]'
2828
runs-on: ubuntu-latest-low
2929
permissions:
3030
# for hmarr/auto-approve-action to approve PRs
3131
pull-requests: write
32+
# for alexwilson/enable-github-automerge-action to approve PRs
33+
contents: write
3234

3335
steps:
3436
- name: Disabled on forks
@@ -37,13 +39,20 @@ jobs:
3739
echo 'Can not approve PRs from forks'
3840
exit 1
3941
42+
- uses: mdecoleman/pr-branch-name@55795d86b4566d300d237883103f052125cc7508 # v3.0.0
43+
id: branchname
44+
with:
45+
repo-token: ${{ secrets.GITHUB_TOKEN }}
46+
4047
# GitHub actions bot approve
41-
- uses: hmarr/auto-approve-action@b40d6c9ed2fa10c9a2749eca7eb004418a705501 # v2
48+
- uses: hmarr/auto-approve-action@f0939ea97e9205ef24d872e76833fa908a770363 # v4.0.0
49+
if: startsWith(steps.branchname.outputs.branch, 'dependabot/')
4250
with:
4351
github-token: ${{ secrets.GITHUB_TOKEN }}
4452

45-
# Nextcloud bot approve and merge request
46-
- uses: ahmadnassri/action-dependabot-auto-merge@45fc124d949b19b6b8bf6645b6c9d55f4f9ac61a # v2
53+
# Enable GitHub auto merge
54+
- name: Auto merge
55+
uses: alexwilson/enable-github-automerge-action@56e3117d1ae1540309dc8f7a9f2825bc3c5f06ff # v2.0.0
56+
if: startsWith(steps.branchname.outputs.branch, 'dependabot/')
4757
with:
48-
target: minor
49-
github-token: ${{ secrets.DEPENDABOT_AUTOMERGE_TOKEN }}
58+
github-token: ${{ secrets.GITHUB_TOKEN }}

.github/workflows/dependency-review.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,4 +17,4 @@ jobs:
1717
- name: 'Checkout Repository'
1818
uses: actions/checkout@v3
1919
- name: 'Dependency Review'
20-
uses: actions/dependency-review-action@v3
20+
uses: actions/dependency-review-action@v4

.github/workflows/issues.yml

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -8,16 +8,6 @@ env:
88
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
99

1010
jobs:
11-
assign_one_project:
12-
runs-on: ubuntu-latest
13-
name: Assign to One Project
14-
steps:
15-
- name: Assign new issues and pull requests to project 1 Backlog
16-
uses: srggrs/assign-one-project-github-action@1.2.0
17-
with:
18-
project: 'https://github.com/nextcloud/bookmarks/projects/1'
19-
column_name: 'Backlog'
20-
2111
first_comment:
2212
runs-on: ubuntu-latest
2313
name: Add first comment

.github/workflows/node.yml

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -59,23 +59,31 @@ jobs:
5959
name: NPM build
6060
steps:
6161
- name: Checkout
62-
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
62+
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
63+
with:
64+
persist-credentials: false
6365

6466
- name: Read package.json node and npm engines version
6567
uses: skjnldsv/read-package-engines-version-actions@06d6baf7d8f41934ab630e97d9e6c0bc9c9ac5e4 # v3
6668
id: versions
6769
with:
68-
fallbackNode: '^20'
69-
fallbackNpm: '^10'
70+
fallbackNode: '^24'
71+
fallbackNpm: '^11.3'
7072

7173
- name: Set up node ${{ steps.versions.outputs.nodeVersion }}
72-
uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4.0.4
74+
uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6.2.0
7375
with:
7476
node-version: ${{ steps.versions.outputs.nodeVersion }}
7577

7678
- name: Set up npm ${{ steps.versions.outputs.npmVersion }}
7779
run: npm i -g 'npm@${{ steps.versions.outputs.npmVersion }}'
7880

81+
- name: Validate package-lock.json # See https://github.com/npm/cli/issues/4460
82+
run: |
83+
npm i -g npm-package-lock-add-resolved@1.1.4
84+
npm-package-lock-add-resolved
85+
git --no-pager diff --exit-code
86+
7987
- name: Install dependencies & build
8088
env:
8189
CYPRESS_INSTALL_BINARY: 0
@@ -84,7 +92,7 @@ jobs:
8492
npm ci
8593
npm run build --if-present
8694
87-
- name: Check webpack build changes
95+
- name: Check build changes
8896
run: |
8997
bash -c "[[ ! \"`git status --porcelain `\" ]] || (echo 'Please recompile and commit the assets, see the section \"Show changes on failure\" for details' && exit 1)"
9098

.github/workflows/phpunit-mariadb.yml

Lines changed: 16 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,9 @@ jobs:
3131
server-max: ${{ steps.versions.outputs.branches-max-list }}
3232
steps:
3333
- name: Checkout app
34-
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
34+
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
35+
with:
36+
persist-credentials: false
3537

3638
- name: Get version matrix
3739
id: versions
@@ -74,45 +76,50 @@ jobs:
7476
matrix:
7577
php-versions: ${{ fromJson(needs.matrix.outputs.php-version) }}
7678
server-versions: ${{ fromJson(needs.matrix.outputs.server-max) }}
77-
mariadb-versions: ['10.6', '10.11']
79+
mariadb-versions: ['10.6', '11.4']
7880

7981
name: MariaDB ${{ matrix.mariadb-versions }} PHP ${{ matrix.php-versions }} Nextcloud ${{ matrix.server-versions }}
8082

8183
services:
8284
mariadb:
83-
image: ghcr.io/nextcloud/continuous-integration-mariadb-${{ matrix.mariadb-versions }}:latest
85+
image: ghcr.io/nextcloud/continuous-integration-mariadb-${{ matrix.mariadb-versions }}:latest # zizmor: ignore[unpinned-images]
8486
ports:
8587
- 4444:3306/tcp
8688
env:
87-
MYSQL_ROOT_PASSWORD: rootpassword
88-
options: --health-cmd="mysqladmin ping" --health-interval 5s --health-timeout 2s --health-retries 5
89+
MARIADB_ROOT_PASSWORD: rootpassword
90+
options: --health-cmd="mariadb-admin ping" --health-interval 5s --health-timeout 2s --health-retries 5
8991

9092
steps:
9193
- name: Set app env
94+
if: ${{ env.APP_NAME == '' }}
9295
run: |
9396
# Split and keep last
9497
echo "APP_NAME=${GITHUB_REPOSITORY##*/}" >> $GITHUB_ENV
9598
9699
- name: Checkout server
97-
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
100+
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
98101
with:
102+
persist-credentials: false
99103
submodules: true
100104
repository: nextcloud/server
101105
ref: ${{ matrix.server-versions }}
102106

103107
- name: Checkout app
104-
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
108+
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
105109
with:
110+
persist-credentials: false
106111
path: apps/${{ env.APP_NAME }}
107112

108113
- name: Set up php ${{ matrix.php-versions }}
109-
uses: shivammathur/setup-php@c541c155eee45413f5b09a52248675b1a2575231 # v2.31.1
114+
uses: shivammathur/setup-php@44454db4f0199b8b9685a5d763dc37cbf79108e1 # v2.36.0
110115
with:
111116
php-version: ${{ matrix.php-versions }}
112117
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
113118
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, session, simplexml, xmlreader, xmlwriter, zip, zlib, mysql, pdo_mysql
114119
coverage: none
115120
ini-file: development
121+
# Temporary workaround for missing pcntl_* in PHP 8.3
122+
ini-values: disable_functions=
116123
env:
117124
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
118125

@@ -132,7 +139,7 @@ jobs:
132139
if: steps.check_composer.outputs.files_exists == 'true'
133140
working-directory: apps/${{ env.APP_NAME }}
134141
run: |
135-
composer remove nextcloud/ocp --dev
142+
composer remove nextcloud/ocp --dev --no-scripts
136143
composer i
137144
138145
- name: Set up Nextcloud

.github/workflows/phpunit-mysql.yml

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,9 @@ jobs:
3030
matrix: ${{ steps.versions.outputs.sparse-matrix }}
3131
steps:
3232
- name: Checkout app
33-
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
33+
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
34+
with:
35+
persist-credentials: false
3436

3537
- name: Get version matrix
3638
id: versions
@@ -78,7 +80,7 @@ jobs:
7880

7981
services:
8082
mysql:
81-
image: ghcr.io/nextcloud/continuous-integration-mysql-${{ matrix.mysql-versions }}:latest
83+
image: ghcr.io/nextcloud/continuous-integration-mysql-${{ matrix.mysql-versions }}:latest # zizmor: ignore[unpinned-images]
8284
ports:
8385
- 4444:3306/tcp
8486
env:
@@ -87,30 +89,35 @@ jobs:
8789

8890
steps:
8991
- name: Set app env
92+
if: ${{ env.APP_NAME == '' }}
9093
run: |
9194
# Split and keep last
9295
echo "APP_NAME=${GITHUB_REPOSITORY##*/}" >> $GITHUB_ENV
9396
9497
- name: Checkout server
95-
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
98+
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
9699
with:
100+
persist-credentials: false
97101
submodules: true
98102
repository: nextcloud/server
99103
ref: ${{ matrix.server-versions }}
100104

101105
- name: Checkout app
102-
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
106+
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
103107
with:
108+
persist-credentials: false
104109
path: apps/${{ env.APP_NAME }}
105110

106111
- name: Set up php ${{ matrix.php-versions }}
107-
uses: shivammathur/setup-php@c541c155eee45413f5b09a52248675b1a2575231 # v2.31.1
112+
uses: shivammathur/setup-php@44454db4f0199b8b9685a5d763dc37cbf79108e1 # v2.36.0
108113
with:
109114
php-version: ${{ matrix.php-versions }}
110115
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
111116
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, session, simplexml, xmlreader, xmlwriter, zip, zlib, mysql, pdo_mysql
112117
coverage: none
113118
ini-file: development
119+
# Temporary workaround for missing pcntl_* in PHP 8.3
120+
ini-values: disable_functions=
114121
env:
115122
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
116123

@@ -130,7 +137,7 @@ jobs:
130137
if: steps.check_composer.outputs.files_exists == 'true'
131138
working-directory: apps/${{ env.APP_NAME }}
132139
run: |
133-
composer remove nextcloud/ocp --dev
140+
composer remove nextcloud/ocp --dev --no-scripts
134141
composer i
135142
136143
- name: Set up Nextcloud

.github/workflows/phpunit-pgsql.yml

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,9 @@ jobs:
3131
server-max: ${{ steps.versions.outputs.branches-max-list }}
3232
steps:
3333
- name: Checkout app
34-
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
34+
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
35+
with:
36+
persist-credentials: false
3537

3638
- name: Get version matrix
3739
id: versions
@@ -79,7 +81,7 @@ jobs:
7981

8082
services:
8183
postgres:
82-
image: ghcr.io/nextcloud/continuous-integration-postgres-14:latest
84+
image: ghcr.io/nextcloud/continuous-integration-postgres-16:latest # zizmor: ignore[unpinned-images]
8385
ports:
8486
- 4444:5432/tcp
8587
env:
@@ -90,30 +92,35 @@ jobs:
9092

9193
steps:
9294
- name: Set app env
95+
if: ${{ env.APP_NAME == '' }}
9396
run: |
9497
# Split and keep last
9598
echo "APP_NAME=${GITHUB_REPOSITORY##*/}" >> $GITHUB_ENV
9699
97100
- name: Checkout server
98-
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
101+
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
99102
with:
103+
persist-credentials: false
100104
submodules: true
101105
repository: nextcloud/server
102106
ref: ${{ matrix.server-versions }}
103107

104108
- name: Checkout app
105-
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
109+
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
106110
with:
111+
persist-credentials: false
107112
path: apps/${{ env.APP_NAME }}
108113

109114
- name: Set up php ${{ matrix.php-versions }}
110-
uses: shivammathur/setup-php@c541c155eee45413f5b09a52248675b1a2575231 # v2.31.1
115+
uses: shivammathur/setup-php@44454db4f0199b8b9685a5d763dc37cbf79108e1 # v2.36.0
111116
with:
112117
php-version: ${{ matrix.php-versions }}
113118
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
114119
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, session, simplexml, xmlreader, xmlwriter, zip, zlib, pgsql, pdo_pgsql
115120
coverage: none
116121
ini-file: development
122+
# Temporary workaround for missing pcntl_* in PHP 8.3
123+
ini-values: disable_functions=
117124
env:
118125
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
119126

@@ -128,7 +135,7 @@ jobs:
128135
if: steps.check_composer.outputs.files_exists == 'true'
129136
working-directory: apps/${{ env.APP_NAME }}
130137
run: |
131-
composer remove nextcloud/ocp --dev
138+
composer remove nextcloud/ocp --dev --no-scripts
132139
composer i
133140
134141
- name: Set up Nextcloud

.github/workflows/phpunit-sqlite.yml

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,9 @@ jobs:
3131
server-max: ${{ steps.versions.outputs.branches-max-list }}
3232
steps:
3333
- name: Checkout app
34-
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
34+
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
35+
with:
36+
persist-credentials: false
3537

3638
- name: Get version matrix
3739
id: versions
@@ -79,30 +81,35 @@ jobs:
7981

8082
steps:
8183
- name: Set app env
84+
if: ${{ env.APP_NAME == '' }}
8285
run: |
8386
# Split and keep last
8487
echo "APP_NAME=${GITHUB_REPOSITORY##*/}" >> $GITHUB_ENV
8588
8689
- name: Checkout server
87-
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
90+
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
8891
with:
92+
persist-credentials: false
8993
submodules: true
9094
repository: nextcloud/server
9195
ref: ${{ matrix.server-versions }}
9296

9397
- name: Checkout app
94-
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
98+
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
9599
with:
100+
persist-credentials: false
96101
path: apps/${{ env.APP_NAME }}
97102

98103
- name: Set up php ${{ matrix.php-versions }}
99-
uses: shivammathur/setup-php@c541c155eee45413f5b09a52248675b1a2575231 # v2.31.1
104+
uses: shivammathur/setup-php@44454db4f0199b8b9685a5d763dc37cbf79108e1 # v2.36.0
100105
with:
101106
php-version: ${{ matrix.php-versions }}
102107
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
103108
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite
104109
coverage: none
105110
ini-file: development
111+
# Temporary workaround for missing pcntl_* in PHP 8.3
112+
ini-values: disable_functions=
106113
env:
107114
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
108115

@@ -117,7 +124,7 @@ jobs:
117124
if: steps.check_composer.outputs.files_exists == 'true'
118125
working-directory: apps/${{ env.APP_NAME }}
119126
run: |
120-
composer remove nextcloud/ocp --dev
127+
composer remove nextcloud/ocp --dev --no-scripts
121128
composer i
122129
123130
- name: Set up Nextcloud

0 commit comments

Comments
 (0)