Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
305 commits
Select commit Hold shift + click to select a range
e98e595
Merge pull request #2653 from nextcloud/renovate/main-rollup-rollup-l…
AndyScherzinger May 15, 2026
e0ed9ec
Merge pull request #2655 from nextcloud/renovate/main-dompurify-3.x
AndyScherzinger May 15, 2026
1b6538b
Merge pull request #2654 from nextcloud/renovate/main-shivammathur-se…
AndyScherzinger May 15, 2026
31046ff
Merge pull request #2589 from nextcloud/automated/noid/main-update-ne…
github-actions[bot] May 15, 2026
c49b596
chore: Sync lock file
AndyScherzinger May 15, 2026
36815fa
Merge pull request #2662 from nextcloud/chore/noid/lockSync
AndyScherzinger May 15, 2026
47478a1
chore(deps): update dependency cypress to ^15.15.0
renovate[bot] May 15, 2026
427496f
Merge pull request #2657 from nextcloud/renovate/main-cypress
AndyScherzinger May 15, 2026
57cb72e
fix(l10n): Update translations from Transifex
nextcloud-bot May 16, 2026
c9891b1
chore(dev-deps): Bump nextcloud/ocp package
nextcloud-command May 17, 2026
bee2681
chore(deps): bump @nextcloud/vue from 8.38.0 to 8.39.0
AndyScherzinger May 17, 2026
84b5287
Merge pull request #2665 from nextcloud/chore/noid/ncVue8390
AndyScherzinger May 17, 2026
ab9b966
fix: handle first option select
luka-nextcloud May 7, 2026
0e15209
Merge pull request #2582 from nextcloud/fix-first-option-select
luka-nextcloud May 18, 2026
3bd8c6b
fix: Use UnknownActivityException
enjeck May 18, 2026
09dee45
feat: Add copy action to row
AndyScherzinger Apr 11, 2026
fcd0a00
feat: Add delete action to row
AndyScherzinger Apr 11, 2026
7fd7ad2
test: Update row action tests
AndyScherzinger Apr 11, 2026
17328b1
feat(row-action): Add menu visibility per row based on permissions
AndyScherzinger May 15, 2026
025dcc2
style(widget): Properly align delete/save buttons at start/end for em…
AndyScherzinger May 15, 2026
009d6f7
fix(RowService): allow public share row operations without breaking a…
AndyScherzinger May 18, 2026
6b74803
fix(dialog): Add t/translation import
AndyScherzinger May 18, 2026
6cec622
fix(editing): Show edit only when edit permission is present
AndyScherzinger May 18, 2026
bf11f2c
fix(test): Harden test's check on close
AndyScherzinger May 18, 2026
0d8b61c
Merge pull request #2663 from nextcloud/automated/noid/main-update-ne…
github-actions[bot] May 18, 2026
19d4a6b
fix(l10n): Update translations from Transifex
nextcloud-bot May 19, 2026
b44b1e0
chore(CI): Adjust testing matrix for Nextcloud 34 on main
nickvergessen May 15, 2026
4227cc4
Merge pull request #2666 from nextcloud/activity-provider
AndyScherzinger May 19, 2026
d429c49
style(icons): icons should be outline-variant where possible, tab ico…
AndyScherzinger May 18, 2026
98a7df1
Merge pull request #2672 from nextcloud/style/noid/oputlineIcon_and_T…
AndyScherzinger May 19, 2026
94255b6
Merge pull request #2456 from nextcloud/feat/noid/row-actions
enjeck May 19, 2026
7488471
fix(deps): update dependency dompurify to ^3.4.5
renovate[bot] May 19, 2026
fa4bdd7
fix(deps): update tiptap to ^3.23.2
renovate[bot] May 19, 2026
d9ba70f
fix(deps): update dependency @nextcloud/axios to ^2.6.0
renovate[bot] May 19, 2026
bbbd4f4
Merge pull request #2566 from nextcloud/renovate/main-nextcloud-axios…
AndyScherzinger May 19, 2026
79e5fcd
Merge pull request #2656 from nextcloud/renovate/main-tiptap
AndyScherzinger May 19, 2026
b414d8f
Merge pull request #2673 from nextcloud/renovate/main-dompurify-3.x
AndyScherzinger May 19, 2026
3290a64
Merge pull request #2652 from nextcloud/update-main-target-versions
blizzz May 19, 2026
dbbc03c
feat(deps): Add Nextcloud 35 support
nickvergessen May 15, 2026
1e7d1ca
fix(l10n): Update translations from Transifex
nextcloud-bot May 20, 2026
56c5973
Merge pull request #2651 from nextcloud/update-main-version
blizzz May 20, 2026
e17e494
style(dark-mode): Fix monochrome icon coloring for activities
AndyScherzinger May 20, 2026
270398a
fix(deps): update tiptap to ^3.23.4
renovate[bot] May 20, 2026
79b67f9
chore(deps): update dependency @playwright/test to ^1.60.0
renovate[bot] May 20, 2026
6abcb46
Merge pull request #2676 from nextcloud/renovate/main-tiptap
AndyScherzinger May 20, 2026
0be43ee
Merge pull request #2674 from nextcloud/renovate/main-playwright-mono…
AndyScherzinger May 20, 2026
9e2a0ba
fix(l10n): Update translations from Transifex
nextcloud-bot May 21, 2026
a355178
Merge pull request #2675 from nextcloud/style/noid/activitiesDarkMode…
AndyScherzinger May 21, 2026
8e3999c
fix(l10n): Update translations from Transifex
nextcloud-bot May 22, 2026
6350a80
fix(l10n): Update translations from Transifex
nextcloud-bot May 23, 2026
0328140
chore(dev-deps): Bump nextcloud/ocp package
nextcloud-command May 24, 2026
5d34dbd
Merge pull request #2683 from nextcloud/automated/noid/main-update-ne…
github-actions[bot] May 24, 2026
e00844e
fix(deps): update dependency @nextcloud/dialogs to ^7.4.0
renovate[bot] May 20, 2026
ecc3dd9
Merge pull request #2678 from nextcloud/renovate/main-nextcloud-dialo…
AndyScherzinger May 24, 2026
b79dc5d
chore(deps): update dependency nextcloud/coding-standard to ^v1.5.0
renovate[bot] May 20, 2026
807254b
fix(l10n): Update translations from Transifex
nextcloud-bot May 26, 2026
25fc7b7
fix(l10n): Update translations from Transifex
nextcloud-bot May 27, 2026
2905e62
fix: Avoid saving whitespace titles
enjeck May 28, 2026
1765829
fix(workflows): update server versions to include stable34 in matrix …
enjeck May 28, 2026
56b50ba
style(PHP): adapt to updated code style rules
blizzz May 28, 2026
b859770
Merge pull request #2677 from nextcloud/renovate/main-nextcloud-codin…
blizzz May 28, 2026
492cdba
Merge pull request #2685 from nextcloud/workflows-stable34
blizzz May 28, 2026
633aa08
fix: Prevent editing when clicking on links in TableCellLink
enjeck May 9, 2026
582fc65
fix: smartpicker fix row actions and action button z-index
benjaminfrueh May 20, 2026
d5eff8e
Merge pull request #2679 from nextcloud/fix/smart-picker-embed
enjeck May 29, 2026
8cd0c3c
Merge pull request #2587 from nextcloud/link-avoid-edit
enjeck May 29, 2026
fd4622c
check for filter user
samin-z May 20, 2026
b0ebcb2
Merge pull request #2688 from nextcloud/fix/public-view-filter
samin-z May 29, 2026
10b4b22
fix(l10n): Update translations from Transifex
nextcloud-bot May 31, 2026
ce63419
fix(l10n): Update translations from Transifex
nextcloud-bot Jun 1, 2026
51f9ba1
release: v2.2.0
enjeck May 14, 2026
f3bf6e3
chore: Update changelog
enjeck Jun 2, 2026
1f70d49
Merge pull request #2646 from nextcloud/release/2.1.2
enjeck Jun 2, 2026
f47b4c4
Merge pull request #2684 from nextcloud/fix-title-whitespace
enjeck Jun 2, 2026
d9c7377
fix(l10n): Update translations from Transifex
nextcloud-bot Jun 6, 2026
34a8e4d
fix: flaky Playwright tests
enjeck May 29, 2026
0de0b39
fix: component test
enjeck Jun 6, 2026
a88013f
Merge pull request #2689 from nextcloud/flaky-tests
enjeck Jun 6, 2026
8670ee1
docs: Update agent info
AndyScherzinger Jun 6, 2026
3ff9f48
Merge pull request #2704 from nextcloud/docs/noid/agents-info
AndyScherzinger Jun 6, 2026
b66b36b
fix(deps): update dependency dompurify to ^3.4.7
renovate[bot] Jun 6, 2026
ea12902
Merge pull request #2703 from nextcloud/renovate/main-dompurify-3.x
enjeck Jun 7, 2026
dd71922
fix(deps): update tiptap to ^3.24.0
renovate[bot] Jun 5, 2026
d4698d3
fix(playwright): enhance timeout settings and loading checks for CI e…
enjeck Jun 7, 2026
3da7b6c
Merge pull request #2695 from nextcloud/renovate/main-tiptap
enjeck Jun 7, 2026
2fac9ac
chore(deps): update cypress to ^15.16.0
renovate[bot] Jun 7, 2026
737b266
fix: update selector for existing table import to improve reliability
enjeck Jun 7, 2026
ca4b997
Merge pull request #2708 from nextcloud/renovate/main-cypress
enjeck Jun 7, 2026
6bdd3c2
fix(deps): update dependency @material-symbols/svg-400 to ^0.44.10
renovate[bot] Jun 3, 2026
a7d1744
enh: update max-version to NC 35
enjeck Jun 7, 2026
733cbcd
fix(deps): Fix npm audit
nextcloud-command Jun 7, 2026
4ab1878
Merge pull request #2568 from nextcloud/automated/noid/main-fix-npm-a…
enjeck Jun 7, 2026
fdbe43f
Merge pull request #2694 from nextcloud/renovate/main-material-symbol…
enjeck Jun 7, 2026
8a06fec
Merge pull request #2710 from nextcloud/nc-35
AndyScherzinger Jun 7, 2026
6a2aa05
Revert "fix: Adjust date formatting"
samuelx12 May 7, 2026
ac9ef1f
Revert "Enhancement: Apply user's timezone to meta fields (alternativ…
samuelx12 May 7, 2026
ef95f65
Revert "Enhancement: Apply user's timezone to meta fields"
samuelx12 May 7, 2026
f7385d9
Merge pull request #2583 from samuelx12/revert/datetime-utc-changes
enjeck Jun 7, 2026
720cdcc
fix: cache shared view permission lookups
enjeck May 9, 2026
e65561f
fix: optimize permission handling by removing unnecessary cloning
enjeck Jun 7, 2026
fcac687
ci(ai-policy): Add AI policy check
AndyScherzinger Jun 8, 2026
98621f5
Merge pull request #2712 from nextcloud/ci/noid/ai-policy-check
AndyScherzinger Jun 8, 2026
84caa49
fix: Chunk IN clause to <1000 items for oracle compatibility
AndyScherzinger Jun 8, 2026
8018bac
fix: use max possible value and avoid using array_merge in a loop
blizzz Jun 8, 2026
b37f358
docs(agents): Update oracle 1K IN-clause limit and solution approach
AndyScherzinger Jun 8, 2026
e003740
Merge pull request #2713 from nextcloud/fix/noid/oracleInClauseFix
blizzz Jun 9, 2026
0d9d53b
fix(l10n): Update translations from Transifex
nextcloud-bot Jun 10, 2026
0b40bd0
fix(l10n): Update translations from Transifex
nextcloud-bot Jun 11, 2026
54bcf99
fix(l10n): Update translations from Transifex
nextcloud-bot Jun 12, 2026
4b5fc0c
fix(l10n): Update translations from Transifex
nextcloud-bot Jun 13, 2026
67608e9
fix(l10n): Update translations from Transifex
nextcloud-bot Jun 14, 2026
25d5b18
fix(deps): update tiptap to ^3.26.0
renovate[bot] Jun 13, 2026
500c912
fix(workflows): update PHP version from 8.2 to 8.3 in CI configurations
enjeck Jun 15, 2026
a7c91da
Merge pull request #2722 from nextcloud/renovate/main-tiptap
enjeck Jun 15, 2026
b245195
fix(deps): Fix npm audit
nextcloud-command Jun 14, 2026
0002797
chore(deps): update dependency @rollup/rollup-linux-x64-gnu to ^4.61.1
renovate[bot] Jun 13, 2026
1d7779a
fix(deps): update dependency @material-symbols/svg-400 to ^0.44.12
renovate[bot] Jun 13, 2026
13909ae
Merge pull request #2724 from nextcloud/automated/noid/main-fix-npm-a…
enjeck Jun 15, 2026
b0f1c5b
fix(deps): update dependency dompurify to ^3.4.8
renovate[bot] Jun 13, 2026
53af326
Merge pull request #2721 from nextcloud/renovate/main-rollup-rollup-l…
enjeck Jun 15, 2026
8a6ed7d
docs(AI): Adjust git commit strategy as per org policy
nickvergessen Jun 12, 2026
a657188
chore(deps): update dependency vite to ^7.3.5
renovate[bot] Jun 15, 2026
461ab35
Merge pull request #2720 from nextcloud/renovate/main-dompurify-3.x
enjeck Jun 15, 2026
1376898
Merge pull request #2719 from nextcloud/renovate/main-material-symbol…
enjeck Jun 15, 2026
f2485a5
fix: cypress import test
enjeck Jun 15, 2026
7dd7fe8
Merge pull request #2717 from nextcloud/docs/noid/agents-commits
enjeck Jun 15, 2026
476b984
Merge pull request #2718 from nextcloud/renovate/main-vite-7.x
enjeck Jun 15, 2026
7c3f273
Merge pull request #2586 from nextcloud/cache-permissions
enjeck Jun 15, 2026
d24bd89
feature(Analytics) Normalize Tables analytics datasource values
Rello Apr 30, 2026
21ce9c5
feat(Analytics): make the Count-column translated
Rello Apr 30, 2026
28788c6
Fix Add 'does-not-contain' condition to Row2Mapper
taiebot May 18, 2026
4b4882d
Merge pull request #2671 from taiebot/Fix-filter-multi
enjeck Jun 15, 2026
995365f
build: bump PHP requirement for deps to at least 8.2
blizzz May 11, 2026
c6535f1
fix: update license to AGPL-3.0-or-later in composer.json
enjeck Jun 16, 2026
858f3b9
Merge pull request #2594 from nextcloud/fix/deps-min-php82
enjeck Jun 16, 2026
fa1dbdf
chore(deps): update dependency dompurify to v3.4.9 [security]
renovate[bot] Jun 16, 2026
3a7cbd3
Update AnalyticsDatasourceTest.php
Rello Jun 16, 2026
4715ff6
Merge pull request #2725 from nextcloud/renovate/main-npm-dompurify-v…
enjeck Jun 16, 2026
3e6c523
feat: add relation column type
Koc Apr 29, 2026
dc51a8f
feat: add relation column type (tests WIP)
Koc Jun 6, 2026
1bd767b
fix: update base query count for integration tests
enjeck Jun 16, 2026
c6912b7
Perf: Do not recreate Cell entity just for formatting value
Koc Dec 28, 2025
7b1b385
Merge pull request #2248 from nextcloud/feature/add-relations-column-…
enjeck Jun 16, 2026
c10ceef
fix(l10n): Update translations from Transifex
nextcloud-bot Jun 17, 2026
f417b76
Merge pull request #2554 from nextcloud/feature/anayltics-datasource
enjeck Jun 17, 2026
cabf6a7
Fix: update wording for relation column label selection prompts
Koc Jun 17, 2026
9f4f14d
Merge pull request #2729 from nextcloud/feature/adjust-wording-for-re…
rakekniven Jun 17, 2026
41864ce
chore(deps): update shivammathur/setup-php digest to f3e473d
renovate[bot] Jun 17, 2026
1dbddba
chore(deps): update actions/checkout action to v6.0.3
renovate[bot] Jun 17, 2026
f1a88e0
chore(deps): update shivammathur/setup-php action to v2.37.2
renovate[bot] Jun 17, 2026
37c24ab
chore(deps): update cypress to ^15.17.0
renovate[bot] Jun 17, 2026
a2cc15b
chore(deps): update cypress-io/github-action action to v7.4.0
renovate[bot] Jun 17, 2026
040e00a
chore(deps): update alexwilson/enable-github-automerge-action action …
renovate[bot] Jun 17, 2026
e00595a
Merge pull request #2731 from nextcloud/renovate/main-actions-checkou…
AndyScherzinger Jun 17, 2026
be97a75
Merge pull request #2737 from nextcloud/renovate/main-alexwilson-enab…
AndyScherzinger Jun 17, 2026
3926157
Merge pull request #2732 from nextcloud/renovate/main-shivammathur-se…
AndyScherzinger Jun 17, 2026
5a54ceb
Merge pull request #2730 from nextcloud/renovate/main-shivammathur-se…
AndyScherzinger Jun 17, 2026
2016a2a
Merge pull request #2734 from nextcloud/renovate/main-cypress
AndyScherzinger Jun 17, 2026
714939c
Merge pull request #2735 from nextcloud/renovate/main-cypress-io-gith…
AndyScherzinger Jun 17, 2026
8ded153
fix(deps): update dependency dompurify to ^3.4.9
renovate[bot] Jun 17, 2026
845224e
Merge pull request #2733 from nextcloud/renovate/main-dompurify-3.x
AndyScherzinger Jun 17, 2026
641ebcf
fix(l10n): Update translations from Transifex
nextcloud-bot Jun 18, 2026
4486140
Merge pull request #2238 from nextcloud/feature/speedup-value-formatting
blizzz Jun 18, 2026
eb9701e
fix(l10n): Update translations from Transifex
nextcloud-bot Jun 19, 2026
840c880
Fix does not contains function
taiebot May 18, 2026
3adf19b
Fix adress comment run composer
taiebot Jun 16, 2026
c3ef056
Fix Update base query count in integration test
taiebot Jun 18, 2026
918de0c
chore(deps): update dependency dompurify to v3.4.11 [security]
renovate[bot] Jun 19, 2026
44837a6
Merge pull request #2670 from taiebot/Fix-does-not-contain
enjeck Jun 19, 2026
3b40f82
fix(deps): update tiptap to ^3.26.1
renovate[bot] Jun 20, 2026
d236fb7
fix(l10n): Update translations from Transifex
nextcloud-bot Jun 20, 2026
fd2f168
chore(deps): update dependency @rollup/rollup-linux-x64-gnu to ^4.62.0
renovate[bot] Jun 20, 2026
ed336cd
Merge pull request #2747 from nextcloud/renovate/main-tiptap
enjeck Jun 20, 2026
757daae
Merge pull request #2746 from nextcloud/renovate/main-npm-dompurify-v…
enjeck Jun 20, 2026
0a5106c
fix(deps): update dependency dompurify to ^3.4.10
renovate[bot] Jun 20, 2026
9b034ee
chore(deps): update playwright monorepo to ^1.61.0-beta-1781293360000
renovate[bot] Jun 20, 2026
b928d21
Fix: ensure app-menu waffle popover is closed before loading context
enjeck Jun 20, 2026
c15813a
chore(deps): update dependency cypress-vite to ^1.10.1
renovate[bot] Jun 20, 2026
27f1bbd
fix(deps): update dependency @material-symbols/svg-400 to ^0.45.1
renovate[bot] Jun 20, 2026
270d45d
fix(l10n): Update translations from Transifex
nextcloud-bot Jun 21, 2026
8215598
chore(dev-deps): Bump nextcloud/ocp package
nextcloud-command Jun 21, 2026
434490c
Merge pull request #2748 from nextcloud/renovate/main-playwright-mono…
enjeck Jun 21, 2026
823c096
Merge pull request #2753 from nextcloud/automated/noid/main-update-ne…
github-actions[bot] Jun 21, 2026
98c6325
Merge pull request #2752 from nextcloud/renovate/main-material-symbol…
enjeck Jun 21, 2026
1245ba7
Merge pull request #2751 from nextcloud/renovate/main-cypress-vite-1.x
enjeck Jun 21, 2026
7c72719
Merge pull request #2750 from nextcloud/renovate/main-dompurify-3.x
enjeck Jun 21, 2026
c96dfad
Merge pull request #2749 from nextcloud/renovate/main-rollup-rollup-l…
enjeck Jun 21, 2026
4dfa7c7
chore(deps): update dependency dompurify to v3.4.11 [security]
renovate[bot] Jun 21, 2026
6793275
fix(deps): Fix npm audit
nextcloud-command Jun 21, 2026
fc3c9fd
Merge pull request #2759 from nextcloud/renovate/main-npm-dompurify-v…
enjeck Jun 21, 2026
8a2fc14
Merge pull request #2755 from nextcloud/automated/noid/main-fix-npm-a…
enjeck Jun 21, 2026
77835ff
chore: add useBaseBranchConfig option to renovate configuration
enjeck Jun 21, 2026
04724f0
Merge pull request #2761 from nextcloud/renovate=merge
enjeck Jun 21, 2026
7ca4c2e
fix(l10n): Update translations from Transifex
nextcloud-bot Jun 24, 2026
7aac165
fix(l10n): Update translations from Transifex
nextcloud-bot Jun 25, 2026
0fb6439
docs: Update author to generic variant
AndyScherzinger Jun 26, 2026
7e11170
Merge pull request #2766 from nextcloud/docs/noid/composer-author-update
AndyScherzinger Jun 26, 2026
83e62cb
chore(deps): update dependency @playwright/test to ^1.61.0
renovate[bot] Jun 27, 2026
a644ef3
fix(l10n): Update translations from Transifex
nextcloud-bot Jun 27, 2026
cbd77cf
fix(deps): update dependency @material-symbols/svg-400 to ^0.45.2
renovate[bot] Jun 27, 2026
a45d7b2
fix(deps): update tiptap to ^3.27.1
renovate[bot] Jun 27, 2026
bf62b6c
Merge pull request #2772 from nextcloud/renovate/main-tiptap
enjeck Jun 27, 2026
68d845a
Merge pull request #2768 from nextcloud/renovate/main-playwright-mono…
enjeck Jun 27, 2026
8842221
Merge pull request #2770 from nextcloud/renovate/main-material-symbol…
enjeck Jun 27, 2026
e7ec5a3
fix(deps): update dependency dompurify to ^3.4.11
renovate[bot] Jun 27, 2026
3881392
chore(deps): update dependency @rollup/rollup-linux-x64-gnu to ^4.62.2
renovate[bot] Jun 27, 2026
1f49ff7
Fix column filter in public sharing
taiebot Jun 5, 2026
04ea3a1
Fix eslint issue
taiebot Jun 15, 2026
77976da
Fix eslint again
taiebot Jun 16, 2026
98c1d2b
Fix eslint
taiebot Jun 17, 2026
65b87b6
Merge pull request #2701 from taiebot/Fix-view-6
enjeck Jun 27, 2026
abdd39f
Merge pull request #2771 from nextcloud/renovate/main-dompurify-3.x
AndyScherzinger Jun 27, 2026
e758b2f
Merge pull request #2769 from nextcloud/renovate/main-rollup-rollup-l…
AndyScherzinger Jun 27, 2026
146c024
fix(l10n): Update translations from Transifex
nextcloud-bot Jun 28, 2026
cbeb19a
fix(l10n): Update translations from Transifex
nextcloud-bot Jun 29, 2026
59a67b8
chore(dev-deps): Bump nextcloud/ocp package
nextcloud-command Jun 29, 2026
8760e05
Merge pull request #2776 from nextcloud/automated/noid/main-update-ne…
github-actions[bot] Jun 29, 2026
4db5612
fix(l10n): Update translations from Transifex
nextcloud-bot Jun 30, 2026
56936dc
chore(deps): update actions/checkout action to v7
renovate[bot] Jul 1, 2026
11a1752
fix(l10n): Update translations from Transifex
nextcloud-bot Jul 1, 2026
e9b824f
apply remove share for users/teams/groups
samin-z Jun 16, 2026
c19356d
simplify logic
samin-z Jun 17, 2026
0396db5
update to use GroupDeletedEvent
samin-z Jun 24, 2026
87bd063
fix(l10n): Update translations from Transifex
nextcloud-bot Jul 2, 2026
f1cab95
fix(l10n): Update translations from Transifex
nextcloud-bot Jul 3, 2026
82a0493
Merge pull request #2782 from nextcloud/renovate/main-actions-checkou…
AndyScherzinger Jul 3, 2026
4a23a19
ci: Update AI policy check from org
AndyScherzinger Jul 3, 2026
4c7e79b
ci: sync workflows from org
AndyScherzinger Jul 3, 2026
c9c39c2
Merge pull request #2787 from nextcloud/ci/noid/syncWorkflows
AndyScherzinger Jul 3, 2026
ac26fed
chore(deps): update dependency @playwright/test to ^1.61.1
renovate[bot] Jul 4, 2026
4fb8592
chore(deps): update dependency cypress-vite to ^1.10.2
renovate[bot] Jul 4, 2026
f4fdd76
Merge pull request #2788 from nextcloud/renovate/main-playwright-mono…
github-actions[bot] Jul 4, 2026
0dd9127
Merge pull request #2789 from nextcloud/renovate/main-cypress-vite-1.x
github-actions[bot] Jul 4, 2026
9fa55c7
fix(l10n): Update translations from Transifex
nextcloud-bot Jul 4, 2026
c89ee11
chore(deps): update dependency vite to ^7.3.6
renovate[bot] Jul 4, 2026
6bcbec2
fix(deps): update dependency @material-symbols/svg-400 to ^0.45.4
renovate[bot] Jul 4, 2026
94b65a6
Merge pull request #2790 from nextcloud/renovate/main-vite-7.x
github-actions[bot] Jul 4, 2026
7f7f1b0
Merge pull request #2791 from nextcloud/renovate/main-material-symbol…
github-actions[bot] Jul 4, 2026
ddcf0c8
chore(deps): update dependency cypress to ^15.18.0
renovate[bot] Jul 4, 2026
4c319c1
Merge pull request #2792 from nextcloud/renovate/main-cypress
github-actions[bot] Jul 4, 2026
af6bb7e
fix(deps): Fix npm audit
nextcloud-command Jul 5, 2026
1698a5d
fix(l10n): Update translations from Transifex
nextcloud-bot Jul 6, 2026
3babd8d
Merge pull request #2728 from nextcloud/fix/1836-remove-recievers-sha…
samin-z Jul 6, 2026
8ec664e
Merge pull request #2798 from nextcloud/automated/noid/main-fix-npm-a…
blizzz Jul 6, 2026
1b2c7ba
chore(deps): update nextcloud/pr-feedback-action digest to c8c97a6
renovate[bot] Jul 6, 2026
3cc98f2
chore(deps): update cypress-io/github-action action to v7.4.1
renovate[bot] Jul 6, 2026
440962a
Merge pull request #2801 from nextcloud/renovate/main-nextcloud-pr-fe…
github-actions[bot] Jul 6, 2026
948905d
fix(l10n): Update translations from Transifex
nextcloud-bot Jul 7, 2026
0e153dd
Merge pull request #2802 from nextcloud/renovate/main-cypress-io-gith…
blizzz Jul 7, 2026
99005b7
Adjust height and z-index in ContentReferenceWidget
taiebot Jul 7, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
18 changes: 18 additions & 0 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@


### 🖼️ Screenshots

🏚️ Before | 🏡 After
---|---
B | A

### 🏁 Checklist

- [ ] ⛑️ Tests (unit and/or integration) are included or not needed
- [ ] 🔙 Backport requests are created or not needed: `/backport to stableX.X`
- [ ] 📅 Milestone is set
- [ ] 🌸 PR title is meaningful (if it should be in the changelog: is it meaningful to users?)

## 🤖 AI (if applicable)

- [ ] The content of this PR was partly or fully generated using AI
2 changes: 2 additions & 0 deletions .github/pull_request_template.md.license
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
SPDX-FileCopyrightText: 2026 Nextcloud GmbH and Nextcloud contributors
SPDX-License-Identifier: AGPL-3.0-or-later
172 changes: 172 additions & 0 deletions .github/workflows/ai-policy.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,172 @@
# 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: 2026 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT

name: AI Policy

on:
pull_request:
types: [opened, synchronize, reopened]
branches: [master, main]

permissions:
contents: read
# Required to add the "AI assisted" label via `gh pr edit --add-label`
pull-requests: write
# Required to create the "AI assisted" label via the REST labels endpoint
# (labels are an issues-scoped resource in the GitHub API)
issues: write

concurrency:
group: ai-policy-${{ github.head_ref || github.run_id }}
cancel-in-progress: true

jobs:
check-ai-trailers:
runs-on: ubuntu-latest-low
steps:
- name: Collect PR commit messages
id: collect
env:
GH_TOKEN: ${{ secrets.COMMAND_BOT_PAT }}
COMMITS_URL: ${{ github.event.pull_request.commits_url }}
run: |
set -euo pipefail
gh api ${COMMITS_URL} | jq -r '.[] | .commit.message' > /tmp/pr_commits.txt
echo "--- PR commit messages ---"
cat /tmp/pr_commits.txt
echo "--------------------------"

- name: Define shared agent detection patterns
run: |
set -euo pipefail

# Email addresses known to be used by coding agents.
# These should never appear in Signed-off-by because the DCO can only be attested by a human.
EMAIL_PATTERN="copilot@github\.com\
|noreply@anthropic\.com\
|devin@cognition\.ai\
|devin@cognition-labs\.com\
|aider@aider\.chat\
|noreply@aider\.chat\
|codex@openai\.com\
|cursor@anysphere\.com\
|windsurf@codeium\.com\
|codeium@codeium\.com\
|amazon-q@amazon\.com\
|codewhisperer@amazon\.com\
|gemini-code-assist@google\.com\
|openhands@all-hands\.dev\
|swe-agent@princeton\.edu"

# Strip embedded whitespace (used above only for readability)
EMAIL_PATTERN=$(echo "$EMAIL_PATTERN" | tr -d ' \n')
echo "AGENT_EMAIL_PATTERN=${EMAIL_PATTERN}" >> "$GITHUB_ENV"

# Display-name prefixes used by known coding agents (shared by Signed-off-by and Co-Authored-By checks)
# shellcheck disable=SC2016
echo 'AGENT_NAMES=GitHub Copilot|Claude( [A-Za-z0-9. -]+)?|Devin( AI)?|aider( \(.*\))?|OpenAI Codex|Cursor( AI)?|Windsurf|Amazon Q|CodeWhisperer|Gemini Code Assist|OpenHands|SWE-agent|AutoCodeRover|Tabnine' >> "$GITHUB_ENV"

- name: Check for AI-assistant / Assisted-by trailers
id: ai_trailers
run: |
set -euo pipefail
AI_ASSISTED=false
if grep -qiE '^(AI-assistant|Assisted-by|AI-Assisted-By):' /tmp/pr_commits.txt; then
AI_ASSISTED=true
echo "Found AI-assistant/Assisted-by/AI-Assisted-By trailer(s):"
grep -iE '^(AI-assistant|Assisted-by|AI-Assisted-By):' /tmp/pr_commits.txt
fi
echo "ai_assisted=${AI_ASSISTED}" >> "$GITHUB_OUTPUT"

- name: Check for coding-agent Signed-off-by trailers
id: agent_signoff
run: |
set -euo pipefail

EMAIL_HITS=$(grep -iE "^Signed-off-by:.*<(${AGENT_EMAIL_PATTERN})>" /tmp/pr_commits.txt 2>/dev/null || true)
NAME_HITS=$(grep -iE "^Signed-off-by: *(${AGENT_NAMES}) *[<(]" /tmp/pr_commits.txt 2>/dev/null || true)

AGENT_LINES=$(printf '%s\n%s' "$EMAIL_HITS" "$NAME_HITS" | sort -u | sed '/^[[:space:]]*$/d')

AGENT_SIGNOFF=false
if [ -n "$AGENT_LINES" ]; then
AGENT_SIGNOFF=true
fi

echo "agent_signoff=${AGENT_SIGNOFF}" >> "$GITHUB_OUTPUT"
{
echo "agent_lines<<AGENT_EOF"
echo "${AGENT_LINES}"
echo "AGENT_EOF"
} >> "$GITHUB_OUTPUT"

- name: Check for coding-agent Co-Authored-By trailers
id: co_authored
run: |
set -euo pipefail

EMAIL_HITS=$(grep -iE "^Co-Authored-By:.*<(${AGENT_EMAIL_PATTERN})>" /tmp/pr_commits.txt 2>/dev/null || true)
NAME_HITS=$(grep -iE "^Co-Authored-By: *(${AGENT_NAMES}) *[<(]" /tmp/pr_commits.txt 2>/dev/null || true)

CO_AUTHORED=false
if [ -n "$EMAIL_HITS" ] || [ -n "$NAME_HITS" ]; then
CO_AUTHORED=true
echo "Found coding-agent Co-Authored-By trailer(s):"
printf '%s\n%s' "$EMAIL_HITS" "$NAME_HITS" | sort -u | sed '/^[[:space:]]*$/d'
fi

echo "co_authored=${CO_AUTHORED}" >> "$GITHUB_OUTPUT"

- name: Create 'AI assisted' label if absent
if: steps.ai_trailers.outputs.ai_assisted == 'true' || steps.agent_signoff.outputs.agent_signoff == 'true' || steps.co_authored.outputs.co_authored == 'true'
env:
GH_TOKEN: ${{ secrets.COMMAND_BOT_PAT }}
run: |
gh api "repos/${{ github.repository }}/labels" \
--method POST \
-f name="AI assisted" \
-f color="d93f0b" \
-f description="This PR contains AI-assisted commits" \
2>/dev/null || true

- name: Label PR as AI assisted
if: steps.ai_trailers.outputs.ai_assisted == 'true' || steps.agent_signoff.outputs.agent_signoff == 'true' || steps.co_authored.outputs.co_authored == 'true'
env:
GH_TOKEN: ${{ secrets.COMMAND_BOT_PAT }}
run: |
gh api "repos/${{ github.repository }}/issues/${{ github.event.pull_request.number }}/labels" \
--method POST \
-f "labels[]=AI assisted"
echo "Added 'AI assisted' label to PR #${{ github.event.pull_request.number }}"

- name: Fail on coding-agent Signed-off-by
if: steps.agent_signoff.outputs.agent_signoff == 'true'
env:
AGENT_LINES: ${{ steps.agent_signoff.outputs.agent_lines }}
AGENTS_MD_URL: https://github.com/${{ github.repository }}/blob/${{ github.base_ref }}/AGENTS.md
run: |
echo "::error title=Coding-agent sign-off detected::A Signed-off-by trailer from a known coding agent was found in one or more commits."
echo ""
echo "Offending trailer(s):"
echo "${AGENT_LINES}"
echo ""
echo "The 'Signed-off-by' trailer represents the Developer Certificate of Origin (DCO)"
echo "and must only be attested by a human contributor."
echo "Please amend the affected commit(s) to remove the coding-agent sign-off"
echo "and replace it with an 'Assisted-by' trailer, for example:"
echo ""
echo " Assisted-by: Claude Code:claude-sonnet-4-6"
echo ""
echo "References:"
echo " • AGENTS.md (this repository)"
echo " ${AGENTS_MD_URL}"
echo " • AI Contribution Policy"
echo " https://github.com/nextcloud/.github/blob/master/AI_POLICY.md"
echo " • Contribution Guidelines"
echo " https://github.com/nextcloud/.github/blob/master/CONTRIBUTING.md"
exit 1
18 changes: 9 additions & 9 deletions .github/workflows/app-upgrade-mysql.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ jobs:
src: ${{ steps.changes.outputs.src}}

steps:
- uses: dorny/paths-filter@7267a8516b6f92bdb098633497bad573efdbf271 # v2.12.0
- uses: dorny/paths-filter@fbd0ab8f3e69293af611ebaee6363fc25e6d187d # v4.0.1
id: changes
continue-on-error: true
with:
Expand All @@ -46,8 +46,8 @@ jobs:

strategy:
matrix:
php-versions: ['8.2']
server-versions: ['master']
php-versions: ['8.3']
server-versions: ['stable34', 'master']

services:
mysql:
Expand All @@ -65,7 +65,7 @@ jobs:
echo "APP_NAME=${GITHUB_REPOSITORY##*/}" >> $GITHUB_ENV

- name: Checkout server
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false
submodules: true
Expand All @@ -78,23 +78,23 @@ jobs:
echo "text_app_ref=$text_app_ref" >> $GITHUB_ENV

- name: Checkout text app
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false
repository: nextcloud/text
path: apps/text
ref: ${{ env.text_app_ref }}

- name: Checkout viewer app
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false
repository: nextcloud/viewer
path: apps/viewer
ref: ${{ matrix.server-versions }}

- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@accd6127cb78bee3e8082180cb391013d204ef9f # v2
uses: shivammathur/setup-php@f3e473d116dcccaddc5834248c87452386958240 # v2
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
Expand All @@ -120,7 +120,7 @@ jobs:
./occ app:enable --force ${{ env.APP_NAME }}

- name: Checkout app
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false
path: apps/${{ env.APP_NAME }}
Expand All @@ -135,7 +135,7 @@ jobs:
./occ app:list

- name: Upload nextcloud logs
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
if: always()
with:
name: nextcloud.log
Expand Down
17 changes: 9 additions & 8 deletions .github/workflows/appstore-build-publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ jobs:
echo "APP_VERSION=${GITHUB_REF##*/}" >> $GITHUB_ENV

- name: Checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false
path: ${{ env.APP_NAME }}
Expand Down Expand Up @@ -71,9 +71,10 @@ jobs:
- name: Set up node ${{ steps.versions.outputs.nodeVersion }}
# Skip if no package.json
if: ${{ steps.versions.outputs.nodeVersion }}
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: ${{ steps.versions.outputs.nodeVersion }}
package-manager-cache: false

- name: Set up npm ${{ steps.versions.outputs.npmVersion }}
# Skip if no package.json
Expand All @@ -87,7 +88,7 @@ jobs:
filename: ${{ env.APP_NAME }}/appinfo/info.xml

- name: Set up php ${{ steps.php-versions.outputs.php-min }}
uses: shivammathur/setup-php@accd6127cb78bee3e8082180cb391013d204ef9f # v2.37.0
uses: shivammathur/setup-php@f3e473d116dcccaddc5834248c87452386958240 # 2.37.2
with:
php-version: ${{ steps.php-versions.outputs.php-min }}
coverage: none
Expand Down Expand Up @@ -156,7 +157,7 @@ jobs:
unzip nextcloud.zip

- name: Checkout server master fallback
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
if: ${{ steps.server-download.outcome != 'success' }}
with:
persist-credentials: false
Expand All @@ -172,7 +173,7 @@ jobs:
tar -xvf ${{ env.APP_NAME }}.tar.gz
cd ../../../
# Setting up keys
echo '${{ secrets.APP_PRIVATE_KEY }}' > ${{ env.APP_NAME }}.key # zizmor: ignore[secrets-outside-env]
echo '${{ secrets.APP_PRIVATE_KEY }}' > ${{ env.APP_NAME }}.key
wget --quiet "https://github.com/nextcloud/app-certificate-requests/raw/master/${{ env.APP_NAME }}/${{ env.APP_NAME }}.crt"
# Signing
php nextcloud/occ integrity:sign-app --privateKey=../${{ env.APP_NAME }}.key --certificate=../${{ env.APP_NAME }}.crt --path=../${{ env.APP_NAME }}/build/artifacts/${{ env.APP_NAME }}
Expand All @@ -181,7 +182,7 @@ jobs:
tar -zcvf ${{ env.APP_NAME }}.tar.gz ${{ env.APP_NAME }}

- name: Attach tarball to github release
uses: svenstaro/upload-release-action@29e53e917877a24fad85510ded594ab3c9ca12de # v2.11.5
uses: svenstaro/upload-release-action@29e53e917877a24fad85510ded594ab3c9ca12de # 2.11.5
id: attach_to_release
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
Expand All @@ -194,6 +195,6 @@ jobs:
uses: nextcloud-releases/nextcloud-appstore-push-action@a011fe619bcf6e77ddebc96f9908e1af4071b9c1 # v1.0.3
with:
app_name: ${{ env.APP_NAME }}
appstore_token: ${{ secrets.APPSTORE_TOKEN }} # zizmor: ignore[secrets-outside-env]
appstore_token: ${{ secrets.APPSTORE_TOKEN }}
download_url: ${{ steps.attach_to_release.outputs.browser_download_url }}
app_private_key: ${{ secrets.APP_PRIVATE_KEY }} # zizmor: ignore[secrets-outside-env]
app_private_key: ${{ secrets.APP_PRIVATE_KEY }}
8 changes: 4 additions & 4 deletions .github/workflows/cypress-component.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,12 +24,12 @@ jobs:

steps:
- name: Checkout app
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false

- name: Set up node from version file
uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6.2.0
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
cache: 'npm'
cache-dependency-path: package-lock.json
Expand All @@ -45,15 +45,15 @@ jobs:
run: npm run tests:component

- name: Upload test failure screenshots
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
if: failure()
with:
name: cypress-component-screenshots-node${{ matrix.node-version }}
path: cypress/screenshots/
retention-days: 5

- name: Upload test videos
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
if: failure()
with:
name: cypress-component-videos-node${{ matrix.node-version }}
Expand Down
Loading
Loading