Skip to content

Commit e93f200

Browse files
authored
Merge branch 'stable30' into nc/30/nmc/3534-remove-files-and-e2ee-folders-in-copymove_ii
2 parents c6d8561 + bb8c800 commit e93f200

File tree

7,123 files changed

+189848
-183190
lines changed

Some content is hidden

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

7,123 files changed

+189848
-183190
lines changed

.envrc

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
watch_file lib/versioncheck.php
2+
watch_file package.json
3+
use flake

.git-blame-ignore-revs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,3 +2,6 @@
22

33
# SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors
44
# SPDX-License-Identifier: AGPL-3.0-or-later
5+
6+
# Update to coding-standard 1.2.2
7+
832f79ac9388addeb2b22479c6da1ac46eea205c

.github/CODEOWNERS

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -70,8 +70,12 @@ ResponseDefinitions.php @provokateurin
7070
/lib/public/UserStatus @nickvergessen
7171

7272
# Groupware
73-
/build/integration/dav_features/caldav.feature @miaulalala @st3iny @SebastianKrupinski
74-
/build/integration/dav_features/carddav.feature @miaulalala @st3iny @SebastianKrupinski
73+
/build/integration/dav_features/caldav.feature @st3iny @SebastianKrupinski @tcitworld
74+
/build/integration/dav_features/carddav.feature @hamza221 @SebastianKrupinski
75+
/lib/private/Calendar @st3iny @SebastianKrupinski @tcitworld
76+
/lib/private/Contacts @hamza221 @SebastianKrupinski
77+
/lib/public/Calendar @st3iny @SebastianKrupinski @tcitworld
78+
/lib/public/Contacts @hamza221 @SebastianKrupinski
7579

7680
# Personal interest
7781
*/Activity/* @nickvergessen

.github/workflows/autocheckers.yml

Lines changed: 32 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ jobs:
3737
- 'composer.lock'
3838
- '**.php'
3939
40-
autocheckers:
40+
autoloader:
4141
runs-on: ubuntu-latest
4242

4343
needs: changes
@@ -51,12 +51,13 @@ jobs:
5151

5252
steps:
5353
- name: Checkout server
54-
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
54+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
5555
with:
56+
persist-credentials: false
5657
submodules: true
5758

5859
- name: Set up php ${{ matrix.php-versions }}
59-
uses: shivammathur/setup-php@c541c155eee45413f5b09a52248675b1a2575231 #v2.31.1
60+
uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 #v2.32.0
6061
with:
6162
php-version: ${{ matrix.php-versions }}
6263
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite
@@ -71,6 +72,32 @@ jobs:
7172
- name: Check auto loaders
7273
run: bash ./build/autoloaderchecker.sh
7374

75+
autocheckers:
76+
runs-on: ubuntu-latest-low
77+
78+
strategy:
79+
matrix:
80+
php-versions: ['8.1']
81+
82+
name: Translation and Files checkers
83+
84+
steps:
85+
- name: Checkout server
86+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
87+
with:
88+
persist-credentials: false
89+
submodules: true
90+
91+
- name: Set up php ${{ matrix.php-versions }}
92+
uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 #v2.32.0
93+
with:
94+
php-version: ${{ matrix.php-versions }}
95+
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite
96+
coverage: none
97+
ini-file: development
98+
env:
99+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
100+
74101
- name: Check translations are JSON decodeable
75102
run: php ./build/translation-checker.php
76103

@@ -87,12 +114,12 @@ jobs:
87114
permissions:
88115
contents: none
89116
runs-on: ubuntu-latest-low
90-
needs: [changes, autocheckers]
117+
needs: [changes, autoloader, autocheckers]
91118

92119
if: always()
93120

94121
name: autocheckers-summary
95122

96123
steps:
97124
- name: Summary status
98-
run: if ${{ needs.changes.outputs.src != 'false' && needs.autocheckers.result != 'success' }}; then exit 1; fi
125+
run: if ${{ needs.autocheckers.result != 'success' || (needs.changes.outputs.src != 'false' && needs.autoloader.result != 'success') }}; then exit 1; fi

.github/workflows/block-merge-eol.yml

Lines changed: 16 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -27,13 +27,22 @@ jobs:
2727

2828
steps:
2929
- name: Set server major version environment
30-
run: |
31-
# retrieve version number from branch reference
32-
server_major=$(echo "${{ github.base_ref }}" | sed -En 's/stable//p')
33-
echo "server_major=$server_major" >> $GITHUB_ENV
34-
echo "current_month=$(date +%Y-%m)" >> $GITHUB_ENV
35-
36-
- name: Checking if ${{ env.server_major }} is EOL
30+
uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1
31+
with:
32+
github-token: ${{secrets.GITHUB_TOKEN}}
33+
script: |
34+
const regex = /^stable(\d+)$/
35+
const baseRef = context.payload.pull_request.base.ref
36+
const match = baseRef.match(regex)
37+
if (match) {
38+
console.log('Setting server_major to ' + match[1]);
39+
core.exportVariable('server_major', match[1]);
40+
console.log('Setting current_month to ' + (new Date()).toISOString().substr(0, 7));
41+
core.exportVariable('current_month', (new Date()).toISOString().substr(0, 7));
42+
}
43+
44+
- name: Checking if server ${{ env.server_major }} is EOL
45+
if: ${{ env.server_major != '' }}
3746
run: |
3847
curl -s https://raw.githubusercontent.com/nextcloud-releases/updater_server/production/config/major_versions.json \
3948
| jq '.["${{ env.server_major }}"]["eol"] // "9999-99" | . >= "${{ env.current_month }}"' \

.github/workflows/block-merge-freeze.yml

Lines changed: 24 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,30 @@ jobs:
2828
runs-on: ubuntu-latest-low
2929

3030
steps:
31-
- name: Download version.php from ${{ github.base_ref }}
32-
run: curl 'https://raw.githubusercontent.com/nextcloud/server/${{ github.base_ref }}/version.php' --output version.php
31+
- name: Register server reference to fallback to master branch
32+
uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1
33+
with:
34+
github-token: ${{secrets.GITHUB_TOKEN}}
35+
script: |
36+
const baseRef = context.payload.pull_request.base.ref
37+
if (baseRef === 'main' || baseRef === 'master') {
38+
core.exportVariable('server_ref', 'master');
39+
console.log('Setting server_ref to master');
40+
} else {
41+
const regex = /^stable(\d+)$/
42+
const match = baseRef.match(regex)
43+
if (match) {
44+
core.exportVariable('server_ref', match[0]);
45+
console.log('Setting server_ref to ' + match[0]);
46+
} else {
47+
console.log('Not based on master/main/stable*, so skipping freeze check');
48+
}
49+
}
50+
51+
- name: Download version.php from ${{ env.server_ref }}
52+
if: ${{ env.server_ref != '' }}
53+
run: curl 'https://raw.githubusercontent.com/nextcloud/server/${{ env.server_ref }}/version.php' --output version.php
3354

3455
- name: Run check
56+
if: ${{ env.server_ref != '' }}
3557
run: cat version.php | grep 'OC_VersionString' | grep -i -v 'RC'

.github/workflows/block-outdated-3rdparty.yml

Lines changed: 28 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -31,25 +31,49 @@ jobs:
3131
- 'version.php'
3232
3333
- name: Checkout
34-
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
34+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
35+
with:
36+
persist-credentials: false
3537

3638
- name: 3rdparty commit hash on current branch
3739
id: actual
3840
run: |
3941
echo "commit=$(git submodule status | grep ' 3rdparty' | egrep -o '[a-f0-9]{40}')" >> "$GITHUB_OUTPUT"
4042
43+
- name: Register server reference to fallback to master branch
44+
uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1
45+
with:
46+
github-token: ${{secrets.GITHUB_TOKEN}}
47+
script: |
48+
const baseRef = context.payload.pull_request.base.ref
49+
if (baseRef === 'main' || baseRef === 'master') {
50+
core.exportVariable('server_ref', 'master');
51+
console.log('Setting server_ref to master');
52+
} else {
53+
const regex = /^stable(\d+)$/
54+
const match = baseRef.match(regex)
55+
if (match) {
56+
core.exportVariable('server_ref', match[0]);
57+
console.log('Setting server_ref to ' + match[0]);
58+
} else {
59+
console.log('Not based on master/main/stable*, so skipping outdated 3rdparty check');
60+
}
61+
}
62+
4163
- name: Last 3rdparty commit on target branch
64+
if: ${{ env.server_ref != '' }}
4265
id: target
4366
run: |
44-
echo "commit=$(git ls-remote https://github.com/nextcloud/3rdparty refs/heads/${{ github.base_ref }} | awk '{ print $1}')" >> "$GITHUB_OUTPUT"
67+
echo "commit=$(git ls-remote https://github.com/nextcloud/3rdparty refs/heads/${{ env.server_ref }} | awk '{ print $1}')" >> "$GITHUB_OUTPUT"
4568
4669
- name: Compare if 3rdparty commits are different
70+
if: ${{ env.server_ref != '' }}
4771
run: |
4872
echo '3rdparty/ seems to not point to the last commit of the dedicated branch:'
4973
echo 'Branch has: ${{ steps.actual.outputs.commit }}'
50-
echo '${{ github.base_ref }} has: ${{ steps.target.outputs.commit }}'
74+
echo '${{ env.server_ref }} has: ${{ steps.target.outputs.commit }}'
5175
5276
- name: Fail if 3rdparty commits are different
53-
if: ${{ steps.changes.outputs.src != 'false' && steps.actual.outputs.commit != steps.target.outputs.commit }}
77+
if: ${{ env.server_ref != '' && steps.changes.outputs.src != 'false' && steps.actual.outputs.commit != steps.target.outputs.commit }}
5478
run: |
5579
exit 1

.github/workflows/block-unconventional-commits.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,9 @@ jobs:
2727

2828
steps:
2929
- name: Checkout
30-
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
30+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
31+
with:
32+
persist-credentials: false
3133

3234
- uses: webiny/action-conventional-commits@8bc41ff4e7d423d56fa4905f6ff79209a78776c7 # v1.3.0
3335
with:

.github/workflows/command-compile.yml

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@ on:
1111
issue_comment:
1212
types: [created]
1313

14+
permissions:
15+
contents: read
16+
1417
jobs:
1518
init:
1619
runs-on: ubuntu-latest
@@ -76,7 +79,7 @@ jobs:
7679
fi
7780
7881
- name: Init branch
79-
uses: xt0rted/pull-request-comment-branch@d97294d304604fa98a2600a6e2f916a84b596dc7 # v1
82+
uses: xt0rted/pull-request-comment-branch@e8b8daa837e8ea7331c0003c9c316a64c6d8b0b1 # v3.0.0
8083
id: comment-branch
8184

8285
- name: Add reaction on failure
@@ -86,22 +89,24 @@ jobs:
8689
token: ${{ secrets.COMMAND_BOT_PAT }}
8790
repository: ${{ github.event.repository.full_name }}
8891
comment-id: ${{ github.event.comment.id }}
89-
reactions: "-1"
92+
reactions: '-1'
9093

9194
process:
9295
runs-on: ubuntu-latest
9396
needs: init
9497

9598
steps:
9699
- name: Restore cached git repository
97-
uses: buildjet/cache@e376f15c6ec6dc595375c78633174c7e5f92dc0e # v3
100+
uses: buildjet/cache@3e70d19e31d6a8030aeddf6ed8dbe601f94d09f4 # v4.0.2
98101
with:
99102
path: .git
100103
key: git-repo
101104

102105
- name: Checkout ${{ needs.init.outputs.head_ref }}
103-
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
106+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
104107
with:
108+
# Needed to allow force push later
109+
persist-credentials: true
105110
token: ${{ secrets.COMMAND_BOT_PAT }}
106111
fetch-depth: 0
107112
ref: ${{ needs.init.outputs.head_ref }}
@@ -119,7 +124,7 @@ jobs:
119124
fallbackNpm: '^10'
120125

121126
- name: Set up node ${{ steps.package-engines-versions.outputs.nodeVersion }}
122-
uses: actions/setup-node@1e60f620b9541d16bece96c5465dc8ee9832be0b # v3
127+
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
123128
with:
124129
node-version: ${{ steps.package-engines-versions.outputs.nodeVersion }}
125130
cache: npm
@@ -176,4 +181,4 @@ jobs:
176181
token: ${{ secrets.COMMAND_BOT_PAT }}
177182
repository: ${{ github.event.repository.full_name }}
178183
comment-id: ${{ github.event.comment.id }}
179-
reactions: "-1"
184+
reactions: '-1'

.github/workflows/command-pull-3rdparty.yml

Lines changed: 36 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -34,28 +34,60 @@ jobs:
3434
exit 1
3535
3636
- name: Init branch
37-
uses: xt0rted/pull-request-comment-branch@d97294d304604fa98a2600a6e2f916a84b596dc7 # v1
37+
uses: xt0rted/pull-request-comment-branch@e8b8daa837e8ea7331c0003c9c316a64c6d8b0b1 # v1
3838
id: comment-branch
3939

4040
- name: Checkout ${{ steps.comment-branch.outputs.head_ref }}
41-
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
41+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
4242
with:
43+
persist-credentials: false
4344
fetch-depth: 0
4445
token: ${{ secrets.COMMAND_BOT_PAT }}
4546
ref: ${{ steps.comment-branch.outputs.head_ref }}
4647

48+
- name: Register server reference to fallback to master branch
49+
uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1
50+
with:
51+
github-token: ${{secrets.GITHUB_TOKEN}}
52+
script: |
53+
const baseRef = context.payload.pull_request.base.ref
54+
if (baseRef === 'main' || baseRef === 'master') {
55+
core.exportVariable('server_ref', 'master');
56+
console.log('Setting server_ref to master');
57+
} else {
58+
const regex = /^stable(\d+)$/
59+
const match = baseRef.match(regex)
60+
if (match) {
61+
core.exportVariable('server_ref', match[0]);
62+
console.log('Setting server_ref to ' + match[0]);
63+
} else {
64+
console.log('Not based on master/main/stable*, so skipping pull 3rdparty command');
65+
}
66+
}
67+
4768
- name: Setup git
4869
run: |
4970
git config --local user.email 'nextcloud-command@users.noreply.github.com'
5071
git config --local user.name 'nextcloud-command'
5172
73+
- name: Add reaction on failure
74+
uses: peter-evans/create-or-update-comment@71345be0265236311c031f5c7866368bd1eff043 # v3.0.1
75+
if: ${{ env.server_ref == '' }}
76+
with:
77+
token: ${{ secrets.COMMAND_BOT_PAT }}
78+
repository: ${{ github.event.repository.full_name }}
79+
comment-id: ${{ github.event.comment.id }}
80+
reactions: '-1'
81+
5282
- name: Pull 3rdparty
53-
run: git submodule foreach 'if [ "$sm_path" == "3rdparty" ]; then git pull origin '"'"'${{ github.event.issue.pull_request.base.ref }}'"'"'; fi'
83+
if: ${{ env.server_ref != '' }}
84+
run: git submodule foreach 'if [ "$sm_path" == "3rdparty" ]; then git pull origin '"'"'${{ env.server_ref }}'"'"'; fi'
5485

5586
- name: Commit and push changes
87+
if: ${{ env.server_ref != '' }}
5688
run: |
5789
git add 3rdparty
58-
git commit -s -m 'Update submodule 3rdparty to latest ${{ github.event.issue.pull_request.base.ref }}'
90+
git commit -s -m 'Update submodule 3rdparty to latest ${{ env.server_ref }}'
5991
git push
6092
6193
- name: Add reaction on failure

0 commit comments

Comments
 (0)