Compare commits

...

292 Commits

Author SHA1 Message Date
fenn-cs 7e208977dc WIP: Update quick share select option
`SharingEntryQuickSelect` should respond to changes and reflect the new state of shares
when updates are done in the `SharingDetailsTab`

Signed-off-by: fenn-cs <fenn25.fn@gmail.com>
2024-07-05 21:26:13 +01:00
fenn-cs 656e109d2f fix(SharingDetailsView): Prevent illegal unselection of read permissions
With the exception of "file drop" on link shares all other shares need the read permissions at least.

Signed-off-by: fenn-cs <fenn25.fn@gmail.com>
2024-07-05 15:47:48 +01:00
John Molakvoæ a98a0eb7cd Merge pull request #46307 from nextcloud/artonge/feat/improve_grid_view 2024-07-05 10:43:30 +02:00
Richard Steinmetz 5d2d582a2b Merge pull request #46295 from nextcloud/chore/remove-obsolete-function-generateVCalendar
chore(caldav): remove obsolete function
2024-07-05 07:52:32 +02:00
Pytal 915eef6429 Merge pull request #46186 from nextcloud/feat/validate-hash
feat: Add utility method to validate an IHasher hash
2024-07-04 17:45:04 -07:00
Nextcloud bot 4a8cf147eb Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-07-05 00:19:26 +00:00
Christopher Ng 48b69c53dc test: Test hash validation
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2024-07-04 17:05:50 -07:00
Christopher Ng 415edcac9b chore: More explicit splitHash typing
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2024-07-04 17:05:45 -07:00
Christopher Ng d9bf6c432e feat: Add method to validate an IHasher hash
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2024-07-04 17:05:45 -07:00
dependabot[bot] 7e8a061ab6 Merge pull request #46110 from nextcloud/dependabot/npm_and_yarn/nextcloud/calendar-availability-vue-2.2.2 2024-07-04 23:42:04 +00:00
dependabot[bot] 5fd193a54d chore(deps): bump @nextcloud/calendar-availability-vue
Bumps [@nextcloud/calendar-availability-vue](https://github.com/nextcloud/calendar-availability-vue) from 2.2.1 to 2.2.2.
- [Release notes](https://github.com/nextcloud/calendar-availability-vue/releases)
- [Changelog](https://github.com/nextcloud/calendar-availability-vue/blob/main/CHANGELOG.md)
- [Commits](https://github.com/nextcloud/calendar-availability-vue/compare/v2.2.1...v2.2.2)

---
updated-dependencies:
- dependency-name: "@nextcloud/calendar-availability-vue"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2024-07-04 23:22:33 +00:00
Richard Steinmetz a8e581ca94 Merge pull request #46193 from nextcloud/fix/limit-vcard-size
fix(carddav): limit vcard size
2024-07-05 00:08:14 +02:00
SebastianKrupinski cb6c091e08 fix(carddav): limit vcard size
Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
2024-07-04 16:42:09 -04:00
Andy Scherzinger be3a8476c6 Merge pull request #46311 from nextcloud/chore/noid/reuse-v4
ci: Bump reuse to v4.0.0
2024-07-04 22:29:57 +02:00
Andy Scherzinger 9d105e8b8b ci: Bump reuse to v4.0.0
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-07-04 22:25:48 +02:00
Louis Chemineau d30d7de56f feat(files): Refresh grid view layout
Signed-off-by: Louis Chemineau <louis@chmn.me>
2024-07-04 18:49:37 +02:00
Louis Chemineau e8790f0b89 feat(files): Display mtime in grid view
Signed-off-by: Louis Chemineau <louis@chmn.me>
2024-07-04 18:48:29 +02:00
John Molakvoæ 78c2c6d57f Merge pull request #46283 from nextcloud/chore/server-nextcloud-vue-8.13.0 2024-07-04 18:42:16 +02:00
Julius Härtl 7e663301ff Merge pull request #45353 from nextcloud/feat/excalidraw-file-support
feat: support excalidraw file
2024-07-04 17:27:38 +02:00
Hamza Mahjoubi 5e86322584 chore(deps): Bump @nextcloud/vue to v8.14.0
Signed-off-by: Hamza Mahjoubi <hamzamahjoubi221@gmail.com>
2024-07-04 16:52:56 +02:00
Daniel 8b3055ce59 Merge pull request #46276 from nextcloud/3rdparty/patch-mp3info
chore(mp3info): apply upstream patch for invalid array access
2024-07-04 14:25:18 +02:00
Joas Schilling bd7b09a709 Merge pull request #46251 from nextcloud/feat/taskprocessing-more-tasktypes
feat(TaskProcessing): Add more task types
2024-07-04 14:02:02 +02:00
Marcel Klehr 03d71e859c Merge pull request #46286 from nextcloud/fix/tp/sync-bg-job-status
fix(TaskProcessing): Set task status to running when processing via ISynchronousProvider
2024-07-04 12:53:54 +02:00
Julius Härtl f5fbe43548 fix: Adapt icon color to new default for mime icons
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2024-07-04 11:09:21 +02:00
Hoang Pham 9a2f026bd6 feat: support excalidraw file
Signed-off-by: Hoang Pham <hoangmaths96@gmail.com>
2024-07-04 11:09:21 +02:00
Daniel Kesselberg 37454eb200 feat: log file id and path when extracting the mp3 cover fails
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2024-07-04 10:55:31 +02:00
Daniel Kesselberg 949a634a26 chore(mp3info): apply upstream patch for invalid array access
Patch: wapmorgan/Mp3Info#36

Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2024-07-04 10:55:31 +02:00
John Molakvoæ 8cb0f1a3ae Merge pull request #46174 from nextcloud/fix/integrity-check
fix(IntegrityCheck): Ensure the check is run if no results are available
2024-07-04 10:39:38 +02:00
Marcel Klehr d9cf6e61c8 feat(TaskProcessing): Add more task types
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2024-07-04 10:10:23 +02:00
Marcel Klehr 1b2c8d5030 fix(TaskProcessing): Set task status to running when processing via ISynchronousProvider
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2024-07-04 10:02:36 +02:00
SebastianKrupinski 65e4d46e2c chore(caldav): remove obsolete function
Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
2024-07-04 03:39:49 -04:00
dependabot[bot] 0116a631c6 Merge pull request #45886 from nextcloud/dependabot/npm_and_yarn/mime-4.0.3 2024-07-04 01:27:14 +00:00
Nextcloud bot 6496abdb92 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-07-04 00:21:34 +00:00
dependabot[bot] d5c88769cd chore(deps-dev): bump mime from 4.0.1 to 4.0.3
Bumps [mime](https://github.com/broofa/mime) from 4.0.1 to 4.0.3.
- [Changelog](https://github.com/broofa/mime/blob/v4.0.3/CHANGELOG.md)
- [Commits](https://github.com/broofa/mime/compare/v4.0.1...v4.0.3)

---
updated-dependencies:
- dependency-name: mime
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2024-07-03 23:22:26 +00:00
Andy Scherzinger 40fb16b1c3 Merge pull request #46284 from nextcloud/bugfix/noid/fix-output-when-running-unit-tests
fix(tests): Remove output when running tests
2024-07-03 18:02:23 +02:00
Ferdinand Thiessen 599b86ac80 Merge pull request #46275 from nextcloud/check-uncompiled-styles
ci: also check for uncompiled SCSS styles
2024-07-03 17:58:15 +02:00
Joas Schilling a1d3b5f1a3 fix(tests): Remove output when running tests
Signed-off-by: Joas Schilling <coding@schilljs.com>
2024-07-03 15:51:36 +02:00
Hamza 993424fc95 Merge pull request #46273 from nextcloud/fix/make-ooo-replacement-nullable
Fix: Make out of office replacement nullable
2024-07-03 15:03:24 +02:00
Ferdinand Thiessen 98c143ec91 ci: also check for uncompiled SCSS styles
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-07-03 13:47:43 +02:00
Hamza Mahjoubi 85a3b27cf9 Fix: Make out of office replacement nullable
Signed-off-by: Hamza Mahjoubi <hamzamahjoubi221@gmail.com>
2024-07-03 12:31:53 +02:00
F. E Noel Nfebe 05bdafa0f5 Merge pull request #46068 from nextcloud/fix/guest-share-ui-update
fix(ExternalSharing): Handle template shares from external sources
2024-07-03 11:29:28 +01:00
Ferdinand Thiessen 4a3f8a2cfa Merge pull request #46201 from nextcloud/feat/update-dashboard-border-radius
Feat: update panels border radius
2024-07-03 11:50:15 +02:00
Ferdinand Thiessen 8fc498fb82 fix(IntegrityCheck): Ensure the check is run if no results are available
If there are no cached results the current implementation was also returning an empty array,
but this was the same as when there was a successful run.
So to distinguish this we return `null` if there are *no* results.
In this case we need to rerun the integrity checker.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-07-03 11:37:49 +02:00
nextcloud-command 4dad957e7f chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2024-07-03 08:13:30 +00:00
fenn-cs 483d857de0 refactor(SharingInput): Remove unused addShare
The new sharing flow since NC27 requires that users open the sharing details tab and
customize their share before creating it.

In https://github.com/nextcloud/server/pull/39472 the work of `addShare` was handed down to
`openSharingDetails` that opens the sharing details tab for the user to customize and manually
creat their share.

Signed-off-by: fenn-cs <fenn25.fn@gmail.com>
2024-07-03 09:06:47 +01:00
fenn-cs c998f5ebba fix(ExternalSharing): Handle template share from external sources
The new sharing flow requires or implies that users should edit share before creating.
External sources should not created the share IF we would upon sharing details tab on first request.

Signed-off-by: fenn-cs <fenn25.fn@gmail.com>
2024-07-03 09:06:47 +01:00
Louis acb95d5c0f Merge pull request #45982 from nextcloud/artonge/update/disable_copy_button_on_readonly_folders
fix(files): Disable buttons in copy/move dialog for non writable folders
2024-07-03 10:03:56 +02:00
Marco 829d7a90bd Merge pull request #46270 from nextcloud/feat/match-input-height-with-clickable-area
Match input height with clickable area
2024-07-03 09:55:27 +02:00
Marco Ambrosini 1f2b6b3adf feat: Match input height with clickable area
Signed-off-by: Marco Ambrosini <marcoambrosini@proton.me>
2024-07-03 09:17:23 +02:00
Joas Schilling 854f851f52 Merge pull request #46263 from nextcloud/automated/noid/master-update-ca-cert-bundle
[master] fix(security): Update CA certificate bundle
2024-07-03 08:45:14 +02:00
nextcloud-command 074d10cc09 fix(security): Update CA certificate bundle
Signed-off-by: GitHub <noreply@github.com>
2024-07-03 02:19:46 +00:00
Nextcloud bot 7f7e189624 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-07-03 00:20:11 +00:00
Ferdinand Thiessen e8c43740cc Merge pull request #45395 from nextcloud/fix/blur-chromium
fix(theming): Conitionally disable blur filter for performance
2024-07-02 22:21:40 +02:00
Marco Ambrosini 479d394a9e Feat: update panels border radius
Signed-off-by: Marco Ambrosini <marcoambrosini@proton.me>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2024-07-02 19:47:44 +00:00
Andy Scherzinger d4cb51c7bc Merge pull request #46215 from nextcloud/enh/dashboard-icon
chore: Replace dashboard icon with Material Symbols
2024-07-02 18:46:09 +02:00
Louis Chemineau d1b5657b7f fix(files): Disable buttons in copy/move dialog for non writable folders
Signed-off-by: Louis Chemineau <louis@chmn.me>
2024-07-02 17:50:19 +02:00
Ferdinand Thiessen 03064187f1 chore: Compile assets
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-07-02 17:42:29 +02:00
Ferdinand Thiessen 2d827d0ed4 feat(theming): Add checkbox for force enable / disable blurry background
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-07-02 17:31:43 +02:00
Ferdinand Thiessen 697a963243 fix(theming): Conitionally disable blur filter for performance
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-07-02 17:31:43 +02:00
Louis 9972589cad Merge pull request #45981 from nextcloud/artonge/update/nc_dialogs_v5.3.2
fix(deps): Update `@nextcloud/dialogs` to 5.3.4 to fix picking current directory
2024-07-02 17:15:08 +02:00
Robin Appelman 5f7b33fbea Merge pull request #46194 from nextcloud/schema-export-cmnd
feat: add commands for exporting current and expected database schema
2024-07-02 16:44:55 +02:00
Côme Chilliet 84699048b5 Merge pull request #46076 from nextcloud/enh/webhooks-user-id-filter
feat(webhooks): Add support for a userid filter
2024-07-02 16:29:49 +02:00
Côme Chilliet 5365882b6f fix(webhook_listeners): Use string type instead of text for event
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-07-02 14:29:25 +02:00
Robin Appelman 4f01486da0 feat: add commands for exporting current and expected database schema
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-07-02 13:45:12 +02:00
John Molakvoæ 72b6db4043 Merge pull request #45970 from nextcloud/dependabot/npm_and_yarn/multi-06a0b1b42d 2024-07-02 12:41:37 +02:00
John Molakvoæ 47f837c962 Merge pull request #46111 from nextcloud/dependabot/github_actions/github-actions-6c0d3fe959 2024-07-02 12:34:32 +02:00
Côme Chilliet 98dfa50f46 fix(webhooks_listeners): Fix SQL requests for oracle
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-07-02 12:30:49 +02:00
John Molakvoæ 5708b1d8d5 Merge pull request #46235 from nextcloud/skjnldsv-patch-1 2024-07-02 12:27:02 +02:00
John Molakvoæ 8f8cd87946 fix(dependabot): remove outdated comment
Signed-off-by: John Molakvoæ <skjnldsv@users.noreply.github.com>
2024-07-02 12:23:28 +02:00
John Molakvoæ e026e046f6 fix(dependabot): add back patch upgrades for stable branches
Signed-off-by: John Molakvoæ <skjnldsv@users.noreply.github.com>
2024-07-02 12:20:26 +02:00
Louis Chemineau d73be08884 test: Don't use @nc/axios in cypress
Signed-off-by: Louis Chemineau <louis@chmn.me>
2024-07-02 12:09:47 +02:00
Louis Chemineau 124f1aef44 fix(deps): Update @nextcloud/dialogs to 5.3.2 to fix picking current directory
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
Signed-off-by: Louis Chemineau <louis@chmn.me>
2024-07-02 12:09:47 +02:00
Côme Chilliet 7c577c98ef fix(webhook_listeners): Allow null for user_id_filter for oracle
Empty string and null are the same thing on oracle databases so we have
 to allow it.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-07-02 11:24:34 +02:00
Côme Chilliet b6aef4d235 fix(webhooks): Completed API documentation and updated openapi.json
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-07-02 11:24:34 +02:00
Côme Chilliet 8abf62715c fix(webhooks): Fix userIdFiltering for webhooks calls
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-07-02 11:24:33 +02:00
Côme Chilliet 44d707c97b feat(webhooks): Add support for a userid filter
This allows to register a userId to filter on along with the webhooks.
This webhook will then only be triggered if the given userId is the one
in session. This is more efficient than filtering by user in the event
filter because the listener is not even registered if the user id does
not match.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-07-02 11:24:33 +02:00
Daniel 0f95c6e471 Merge pull request #46185 from nextcloud/debt/noid/migrate-background-commands-to-iappconfig
refactor: simplify background commands
2024-07-02 11:21:55 +02:00
Kate 164f4a3ea3 Merge pull request #46233 from nextcloud/feat/openapi/ex_app-scope 2024-07-02 09:41:37 +02:00
provokateurin 355ef202e4 feat(OpenAPI): Add ex_app scope
Signed-off-by: provokateurin <kate@provokateurin.de>
2024-07-02 09:12:48 +02:00
provokateurin 32de958259 chore(deps): Update openapi-extractor
Signed-off-by: provokateurin <kate@provokateurin.de>
2024-07-02 09:08:04 +02:00
Nextcloud bot ee7dda5e86 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-07-02 00:19:21 +00:00
Ferdinand Thiessen 2249d7ddf5 chore: Replace dashboard icon with Material Symbols
Currently we use a circle as the dashboard icon,
1. This confuses with the circles app
2. Does not really gives information what this app does
3. Is not consistent with our app stores

So make it consistent and use the "dashboard" Material Symbol everywhere.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-07-01 23:41:29 +02:00
Daniel 92acbb0d39 Merge pull request #45766 from nextcloud/feat/ooo-replacement
Feat: Allow users to select another user as their out-of-office replacement
2024-07-01 23:25:43 +02:00
Robin Appelman 55f3e53695 Merge pull request #46169 from nextcloud/enh/support-profiler-in-occ
Support profiler in occ commands
2024-07-01 22:45:31 +02:00
F. E Noel Nfebe 5270ffc3a5 Merge pull request #45608 from nextcloud/fix-openapi-notes-share-api
docs(ShareApiController): Correct note about expiry date timezone
2024-07-01 18:22:51 +01:00
Kate 547dab4637 Merge pull request #45391 from nextcloud/feat/taskprocessingapi/next-task-endpoint 2024-07-01 19:10:12 +02:00
Arthur Schiwon 7bd215896e Merge pull request #46219 from nextcloud/fix/noid/infinit-BuildSocialSearchIndexBackgroundJob
fix(DAV): offset not applied
2024-07-01 18:37:39 +02:00
provokateurin f5ff8136ac feat(TaskProcessingApi): Add endpoint for getting the next task
Signed-off-by: provokateurin <kate@provokateurin.de>
2024-07-01 17:11:12 +02:00
Louis 0166265856 Merge pull request #46136 from nextcloud/artonge/debt/encryption_application_boot
debt(encryption): Migrate app.php to Application.php
2024-07-01 17:08:31 +02:00
Hamza Mahjoubi a9774741e8 Feat: Allow users to select another user as their out-of-office replacement
Signed-off-by: Hamza Mahjoubi <hamzamahjoubi221@gmail.com>
2024-07-01 15:10:16 +02:00
fenn-cs 6136112be1 docs(ShareApiController): Correct note about expiry date timezone
Signed-off-by: fenn-cs <fenn25.fn@gmail.com>
2024-07-01 13:53:18 +01:00
provokateurin 5aefdc399e feat(AppFramework): Add ExAppRequired attribute
Signed-off-by: provokateurin <kate@provokateurin.de>
2024-07-01 14:41:20 +02:00
Arthur Schiwon 1d3ff4337e fix(BuildSocialSearchIndexBackgroundJob): offset not applied
with more than 100 results, this job may never finish

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2024-07-01 14:31:27 +02:00
Louis Chemineau 39fd19f1d6 refactor(encryption): Migrate app.php to Application.php
Signed-off-by: Louis Chemineau <louis@chmn.me>
2024-07-01 13:45:09 +02:00
Daniel Kesselberg a773a8b915 refactor: simplify background commands
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2024-07-01 12:52:06 +02:00
Marcel Klehr beececf660 Merge pull request #46058 from nextcloud/fix/task-processing-input-validation
Fix task processing input validation
2024-07-01 12:22:07 +02:00
Julius Härtl 3b75c5b98c Merge pull request #46184 from nextcloud/fix/dav-auth-check
fix: Authorization header can be an empty string
2024-07-01 11:43:10 +02:00
Julien Veyssier 42cf03d73d fix(taskprocessing): in removeSuperfluousArrayKeys, don't try to keep input/output keys that are not in the task values
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2024-07-01 11:32:34 +02:00
Julien Veyssier 7e1dd0b25e fix(taskprocessing): input validation was dropping some optional inputs
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2024-07-01 10:37:36 +02:00
Joas Schilling 7525eddb96 Merge pull request #44876 from IONOS-Productivity/feat/reduce_available_languages_set
feat: reduce available languages per config value "reduce_to_languages"
2024-07-01 10:30:25 +02:00
Misha M.-Kupriyanov aceb4d776c feat: reduce available languages per config value "reduce_to_languages"
Example: restrict to en, de, es, fr, it' languages

./occ config:system:set reduce_to_languages 0  --value  en
./occ config:system:set reduce_to_languages 1  --value  de
./occ config:system:set reduce_to_languages 2  --value  es
./occ config:system:set reduce_to_languages 3  --value  fr
./occ config:system:set reduce_to_languages 4  --value  it

Signed-off-by: Misha M.-Kupriyanov <kupriyanov@strato.de>
2024-07-01 09:34:11 +02:00
Nextcloud bot d5b7525e1f Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-07-01 00:19:23 +00:00
Git'Fellow 1716c95c94 Merge pull request #46206 from nextcloud/updteIssTempRem27
chore: remove EOL v27 from issue template
2024-07-01 01:01:45 +02:00
Git'Fellow 2787c8f2a7 chore: Keep v28 supported PHP 8.0
Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
2024-06-30 15:23:32 +02:00
Git'Fellow b77c151f5b Merge pull request #46197 from nextcloud/setupPhpUpgrade
ci: Use the same `setup-php` version on all tests
2024-06-30 08:39:06 +02:00
Git'Fellow 9ed96d766a chore: remove EOL v27 from issue template
Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
2024-06-30 08:30:08 +02:00
Git'Fellow ad1720b6e2 ci: Use the same setup-php version on all tests 2024-06-30 08:11:14 +02:00
Nextcloud bot a7fd9c9831 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-06-30 00:19:22 +00:00
Daniel f589639822 Merge pull request #46199 from nextcloud/debt/noid/spdx-migrations-template
chore: use spdx for migrations generator
2024-06-29 18:47:30 +02:00
Ferdinand Thiessen 682faad0b3 Merge pull request #46009 from nextcloud/refactor/ajax-cron
refactor(cron): Use `IAppConfig` for cron settings and migrate ajax cron away from jQuery
2024-06-29 16:29:34 +02:00
Daniel 02983f3317 Merge pull request #46190 from nextcloud/bug/45047/skip-check-when-disk-free-space-disabled
fix(setupchecks): skip check when disk_free_space is disabled
2024-06-29 15:59:17 +02:00
Nextcloud bot 7003725782 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-06-29 00:19:43 +00:00
Daniel Kesselberg d00b8ed1f5 chore: use spdx for migrations generator
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2024-06-28 18:54:50 +02:00
Ferdinand Thiessen b901a62957 Merge pull request #46121 from nextcloud/fix/database-versions
ci: Adjust database versions to current LTS / supported versions
2024-06-28 18:26:31 +02:00
Ferdinand Thiessen 4f7907612c chore: Compile assets
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-06-28 18:00:45 +02:00
Ferdinand Thiessen 14778811b4 refactor: Use IAppConfig for setting cron type
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-06-28 18:00:39 +02:00
Ferdinand Thiessen 4d6a21a379 refactor(core): Make AJAX cron script work without jQuery
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-06-28 17:28:10 +02:00
Julius Härtl 4d6b4b71c7 fix: Authorization header can be an empty string
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2024-06-28 14:42:36 +02:00
Daniel Kesselberg fd9fd1b6fb fix(setupchecks): skip check when disk_free_space is disabled
Make it easier to discover that the check failed because disk_free_space is disabled.

Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2024-06-28 13:06:49 +02:00
Andy Scherzinger 8ec53608b0 Merge pull request #46112 from nextcloud/chore/noid/copyingReadmeHousekeeping
Reference 3rd party licenses via SPDX
2024-06-28 07:13:16 +02:00
Nextcloud bot e3f6959c60 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-06-28 00:20:40 +00:00
Ferdinand Thiessen 6601adcd6d refactor(SetupCheck): Make mariadb and mysql version variables
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-06-27 16:22:42 +02:00
Ferdinand Thiessen 6e48ca1cf8 fix(settings): Adjust SetupCheck for supported database versions
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-06-27 16:15:16 +02:00
Ferdinand Thiessen d5d180daf6 ci: Adjust database versions to current LTS / supported versions
* MySQL tests
  * Minimum 8.0 (LTS)
  * Maximum 8.4 (LTS)
  * Drop 8.3 as we now test 8.4 and 8.3 was never LTS
* MariaDB tests
  * still supported version 10.3 (no LTS but for Ubuntu 20.04 support)
  * LTS 10.6
  * LTS 10.11
  * LTS 11.4
  * Drop 10.5 is was never LTS and we test 10.3 and 10.6

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-06-27 16:15:16 +02:00
Joas Schilling 00aa8f5438 Merge pull request #46133 from nextcloud/bugfix/noid/fix-missing-protocol-on-remotes
fix(federation): Fix missing protocol on CloudID remote
2024-06-27 14:59:19 +02:00
Joas Schilling 1b49c86480 Merge pull request #45947 from nextcloud/feat/qbmapper-yield-entities
feat: Add yieldEntities wrapper for entity mapping in QBMapper
2024-06-27 14:48:26 +02:00
Simon L a184161978 Merge pull request #41609 from nextcloud/enh/in-app-search
feat: In app search
2024-06-27 13:34:05 +02:00
Arthur Schiwon ff499a6baa Merge pull request #45951 from nextcloud/chore/comments-event-legacy
chore: Move comments event handler to use proper event dispatcher
2024-06-27 12:40:06 +02:00
Côme Chilliet 9a5ab7330a feat(profiler): Add support for profiler in occ commands
Commands will appear in available profiles after the command ran.
Method is set to "occ" and URL to the command line with parameters.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-06-27 12:26:53 +02:00
Côme Chilliet 01dbb8fca2 fix(profiler): Remove bogus profiler event start
This fixes profiler event graph by removing an event start which had no
 matching end() call.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-06-27 12:25:20 +02:00
Ferdinand Thiessen 32940375da chore: Compile assets
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-06-27 12:13:18 +02:00
Ferdinand Thiessen 362c6238fc fix: Allow to reset unified search using the nextcloud:unified-search:reset event
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-06-27 12:13:14 +02:00
Ferdinand Thiessen dd3dcf3703 fix(unified-search): Also show local search on apps management
Co-authored-by: Simon L. <szaimen@e.mail.de>
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-06-27 12:13:14 +02:00
Ferdinand Thiessen e9dccef474 fix: Open unified search by pressing ctrl + F
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-06-27 12:13:14 +02:00
Ferdinand Thiessen 0885245235 refactor(styles): Make padding not a magic value
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-06-27 12:13:14 +02:00
Ferdinand Thiessen 0ff17b857b fix(UnifiedSearch): Implement design comments and focus input on open
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-06-27 12:13:14 +02:00
Marco Ambrosini 6ee965f0d9 feat: Add in-app search
Co-authored-by: Ferdinand Thiessen <opensource@fthiessen.de>
Signed-off-by: Marco Ambrosini <marcoambrosini@icloud.com>
2024-06-27 12:13:14 +02:00
Joas Schilling 280d70a5f4 fix(federation): Fix missing protocol on CloudID remote
Signed-off-by: Joas Schilling <coding@schilljs.com>
2024-06-27 11:26:08 +02:00
Benjamin Gaussorgues 2482688fa0 Merge pull request #45655 from nextcloud/feat/mysql_ignore_conflics 2024-06-27 11:19:12 +02:00
Benjamin Gaussorgues ec39228b89 Merge pull request #46059 from nextcloud/perf/remove_useless_session 2024-06-27 11:15:50 +02:00
Joas Schilling 21740fef45 Merge pull request #46158 from nextcloud/automated/noid/master-update-code-signing-crl
[master] fix(security): Update code signing revocation list
2024-06-27 10:01:46 +02:00
Ferdinand Thiessen 07180e425f Merge pull request #46143 from nextcloud/fix/45941/share-pass-label
fix(SharingEntryLink): Show enforced password input label
2024-06-27 08:36:27 +02:00
nextcloud-command f72ffa4851 chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2024-06-27 06:18:21 +00:00
fenn-cs 0c8fe406f1 fix(SharingEntryLink): Show enforced password input label
While upgrading icons in b3ec461fe8 enforced password label
icon was not correctly wrapped.

Resolves : https://github.com/nextcloud/server/issues/45941

Signed-off-by: fenn-cs <fenn25.fn@gmail.com>
2024-06-27 08:11:41 +02:00
nextcloud-command ef709786d0 fix(security): Update code signing revocation list
Signed-off-by: GitHub <noreply@github.com>
2024-06-27 02:21:39 +00:00
Nextcloud bot 7eecfd6d89 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-06-27 00:19:56 +00:00
Andy Scherzinger 0a6735c6ba docs: Reference 3rd party licenses via SPDX
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-06-26 23:55:19 +02:00
Sebastian Krupinski 380a253aab Merge pull request #46036 from nextcloud/fix/issue-46015
fix(dav): add missing database index for dav_shares
2024-06-26 15:03:02 -04:00
SebastianKrupinski ff7e2c1837 fix(dav): add missing database index for dav_shares resourceid, type and access
Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>

Co-authored-by: Richard Steinmetz <richard@steinmetz.cloud>
Signed-off-by: Sebastian Krupinski <165827823+SebastianKrupinski@users.noreply.github.com>

Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>

Co-authored-by: Richard Steinmetz <richard@steinmetz.cloud>
Signed-off-by: Sebastian Krupinski <165827823+SebastianKrupinski@users.noreply.github.com>

Co-authored-by: Richard Steinmetz <richard@steinmetz.cloud>
Signed-off-by: Sebastian Krupinski <165827823+SebastianKrupinski@users.noreply.github.com>

Co-authored-by: Richard Steinmetz <richard@steinmetz.cloud>
Signed-off-by: Sebastian Krupinski <165827823+SebastianKrupinski@users.noreply.github.com>

Co-authored-by: Daniel <mail@danielkesselberg.de>
Signed-off-by: Sebastian Krupinski <165827823+SebastianKrupinski@users.noreply.github.com>

Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
2024-06-26 14:20:36 -04:00
Daniel aa0bbd2774 Merge pull request #44893 from nextcloud/fix/issue-43115
fix(caldav): When message is a reply compare the message sender not the recipient
2024-06-26 18:58:27 +02:00
Julius Härtl 9713dd3fa9 chore: Move comments event handler to use proper event dispatcher
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2024-06-26 18:13:07 +02:00
Louis ba306950e6 Merge pull request #46097 from nextcloud/artonge/fix/dont_override_expiration_date
fix(files_sharing): Also set the expiration date timezone during validation
2024-06-26 16:40:02 +02:00
Louis 9b05759c03 Merge pull request #45977 from nextcloud/artonge/fix/update_favorite_navigation
Update favorites navigation list on folder renames
2024-06-26 14:20:30 +02:00
Marcel Klehr 1748bc5074 Merge pull request #46107 from nextcloud/feat/webhook_listeners/index-endpoint-by-uri
feat(WebhooksController): Allow querying listeners by URI
2024-06-26 14:15:54 +02:00
Louis Chemineau fc359e3097 fix(files): Update favorites navigation list on folder renames
Signed-off-by: Louis Chemineau <louis@chmn.me>
2024-06-26 13:59:43 +02:00
Louis Chemineau f5fd6c8f08 fix(files_sharing): Store the expiration date relative to the server's timezone
This is needed as we want to store the difference between the server's and the user's timezones.

Signed-off-by: Louis Chemineau <louis@chmn.me>
2024-06-26 12:49:42 +02:00
John Molakvoæ 5dcb807a98 Merge pull request #46127 from nextcloud/feat/increase-max-copy-move-concurrency-to-5 2024-06-26 09:30:27 +02:00
nextcloud-command 5a33202bcb chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2024-06-26 07:13:00 +00:00
John Molakvoæ d5b286c9d2 feat(files): increase max copy-move concurrency to 5
Signed-off-by: John Molakvoæ <skjnldsv@users.noreply.github.com>
2024-06-26 08:32:02 +02:00
Marcel Klehr 0bdecb96f3 feat(WebhooksController): Allow querying listeners by URI
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2024-06-26 07:27:40 +02:00
Nextcloud bot d0d589c661 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-06-26 00:19:48 +00:00
SebastianKrupinski d7eb509b26 fix(caldav): when message is a reply compare the message sender not the recipient
Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2024-06-25 16:43:51 -04:00
F. E Noel Nfebe f0182226d4 Merge pull request #46030 from nextcloud/fix/44961/shared-state-file-list
fix(FilesView): Update files view upon share creation/delete
2024-06-25 20:51:39 +01:00
Daniel 952271929d Merge pull request #46002 from nextcloud/debt/noid/use-new-http-client
Use guzzle for addressbook federation
2024-06-25 21:10:12 +02:00
nextcloud-command 574669697b chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2024-06-25 18:40:21 +00:00
fenn-cs f7527c3279 refactor(SharingDetailsView): Use NC logger
Signed-off-by: fenn-cs <fenn25.fn@gmail.com>
2024-06-25 18:16:48 +01:00
fenn-cs 38b5987b40 fix(FilesView): Update files view upon share creation/delete
Resolves : https://github.com/nextcloud/server/issues/44961

Signed-off-by: fenn-cs <fenn25.fn@gmail.com>
2024-06-25 18:16:48 +01:00
Richard Steinmetz 6121325310 Merge pull request #45532 from nextcloud/feat/publish-resources-room-update
feat: implement public OCP api to update resources and rooms
2024-06-25 16:48:30 +02:00
Benjamin Gaussorgues b7243681dd feat(dbal): add proper insert ignore conflict method for SQLite
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2024-06-25 16:21:01 +02:00
dependabot[bot] f7b0fa20e9 chore(deps): bump the github-actions group with 3 updates
Bumps the github-actions group with 3 updates: [actions/checkout](https://github.com/actions/checkout), [cypress-io/github-action](https://github.com/cypress-io/github-action) and [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request).


Updates `actions/checkout` from 4.1.5 to 4.1.7
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v4.1.5...692973e3d937129bcbf40652eb9f2f61becf3332)

Updates `cypress-io/github-action` from 6.7.0 to 6.7.1
- [Release notes](https://github.com/cypress-io/github-action/releases)
- [Changelog](https://github.com/cypress-io/github-action/blob/master/CHANGELOG.md)
- [Commits](https://github.com/cypress-io/github-action/compare/f88a151c986cab2e339cdbede6a5c4468bb62c17...8d3918616d8ac34caa2b49afc8b408b6a872a6f5)

Updates `peter-evans/create-pull-request` from 6.0.5 to 6.1.0
- [Release notes](https://github.com/peter-evans/create-pull-request/releases)
- [Commits](https://github.com/peter-evans/create-pull-request/compare/6d6857d36972b65feb161a90e484f2984215f83e...c5a7806660adbe173f04e3e038b0ccdcd758773c)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-actions
- dependency-name: cypress-io/github-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-actions
- dependency-name: peter-evans/create-pull-request
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-25 14:20:17 +00:00
Joas Schilling ad2fa3724d Merge pull request #46095 from nextcloud/techdebt/44770/migrate-server-notifier-to-new-exceptions
feat(notifications): Migrate server INotifiers to new exceptions
2024-06-25 16:09:38 +02:00
Joas Schilling 565809feba Merge pull request #46104 from nextcloud/build/depependabot
build(deps): disable dependabot for EOL 27
2024-06-25 16:07:52 +02:00
Arthur Schiwon 9c50516076 build(deps): disable dependabot for EOL 27
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2024-06-25 15:15:18 +02:00
Daniel Kesselberg f73c5c4aa9 chore: don't pass null to createElement
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2024-06-25 12:24:47 +02:00
Daniel Kesselberg 1fa37ed2dc refactor(dav): migrate to new http client
The request method is available since 29 and thus we can finally use the modern http client to send the report request for the addressbook sync.

Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2024-06-25 12:24:47 +02:00
Joas Schilling 8130968a35 feat(notifications): Migrate server INotifiers to new exceptions
Signed-off-by: Joas Schilling <coding@schilljs.com>
2024-06-25 11:56:24 +02:00
Anna eed6216d55 Merge pull request #46077 from nextcloud/bugfix/noid/user-status-automation
fix(userstatus): Fix user status automation in real-life scenario
2024-06-25 11:32:12 +02:00
Benjamin Gaussorgues 1e19566aa4 feat(dbal): add proper insert ignore conflict method for MySQL
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2024-06-25 11:28:37 +02:00
Côme Chilliet 9496ce6c7a Merge pull request #46079 from nextcloud/fix/well-known-checks
fix(settings): make trailing slash for caldav/carddav redirects optional
2024-06-25 10:24:01 +02:00
Benjamin Gaussorgues 369c552e41 Merge pull request #46073 from nextcloud/fix/save_global_credentials 2024-06-25 09:48:24 +02:00
Joas Schilling 2c977d2b6e fix(userstatus): Fix user status automation in real-life scenario
Order of applying:
- Out-of-office
- Availability
- Call
- Meeting
- User status

Signed-off-by: Joas Schilling <coding@schilljs.com>
2024-06-25 09:29:35 +02:00
Nextcloud bot ffa8b00bdd Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-06-25 00:19:52 +00:00
Ferdinand Thiessen 56462e9cfa Merge pull request #44931 from nextcloud/Jerome-Herbinet-better-wordings-in-new-user-modal
Better wordings in the new user modal
2024-06-25 00:52:01 +02:00
Ferdinand Thiessen 1c168da9a6 chore: Compile assets
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-06-25 00:12:56 +02:00
Jérôme Herbinet 7b13405370 fix: Better wordings in the new user modal
Co-authored-by: Jan C. Borchardt <925062+jancborchardt@users.noreply.github.com>
Co-authored-by: Pytal <24800714+Pytal@users.noreply.github.com>
Co-authored-by: Jérôme Herbinet <33763786+Jerome-Herbinet@users.noreply.github.com>
Signed-off-by: Jérôme Herbinet <33763786+Jerome-Herbinet@users.noreply.github.com>
2024-06-25 00:10:13 +02:00
Ferdinand Thiessen 3e64ad7ee7 Merge pull request #45095 from nextcloud/feat/upload-folders
feat(files): Allow to upload folders
2024-06-24 21:53:01 +02:00
Ferdinand Thiessen 7590c767a7 chore: Compile assets
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-06-24 20:05:26 +02:00
Ferdinand Thiessen 079d026d39 feat(files): Allow uploading directories
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-06-24 20:03:09 +02:00
MichaIng ea994fe8fb fix(settings): make trailing slash for caldav/carddav redirects optional
#43939 moved the CalDAV/CardDAV redirect checks from the frontend to a new backend API.

Since the backend does not send an authentication header, checking for the expected response code 207 of the DAV endpoint does not work anymore, hence the URL of the last redirect is checked instead.

This URL is expected to contain a trailing slash, which was not required before, since the DAV endpoint works properly without it (when authenticated).

While a trailing slash in the redirect does no harm, it causes many setups to throw an admin panel warning, while in fact the redirects work properly. Furthermore, the proposed "/.well-known/carddav" => "/remote.php/dav/" redirect leads to double slashes, when doing a request to "/.well-known/carddav/", which seems more wrong then right.

This change makes the trailing slash optional, hence old and adjusted setups won't throw the warning anymore, and the DAV endpoint works well in both cases.

Signed-off-by: MichaIng <micha@dietpi.com>
2024-06-24 17:52:22 +02:00
Arthur Schiwon 879eaa7681 Merge pull request #46071 from nextcloud/fix/46070/scope-error
fix(Token): add FILESYSTEM scope with SCOPE_SKIP_PASSWORD_VALIDATION
2024-06-24 15:21:28 +02:00
Benjamin Gaussorgues e93866f904 fix: allows admin to edit global credentials
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2024-06-24 15:20:44 +02:00
Julius Härtl d086f3a2bf Merge pull request #45998 from nextcloud/publicdav-fs-setup
perf: remove full filesystem setup for accessing public link share dav endpoints
2024-06-24 14:43:23 +02:00
Julius Härtl d361867e50 Merge pull request #45876 from nextcloud/fix/45715
fix: Avoid throwing errors for teams are unavailable
2024-06-24 14:27:19 +02:00
Ferdinand Thiessen 0dc0a9b472 Merge pull request #45860 from nextcloud/fix/files-handle-failed-state
fix(files): Bring back handling of failed files
2024-06-24 13:56:53 +02:00
Arthur Schiwon 895ed634af fix(Token): add FILESYSTEM scope with SCOPE_SKIP_PASSWORD_VALIDATION
The scope design requires scopes to be either not specified, or
specified explicitely. Therefore, when setting the
skip-password-validation scope for user authentication from mechanisms
like SAML, we also have to set the filesystem scope, otherwise they will
lack access to the filesystem.

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2024-06-24 13:51:15 +02:00
Ferdinand Thiessen 0bd7c76d34 chore: Compile assets
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-06-24 12:55:21 +02:00
Ferdinand Thiessen 3782142f59 refactor(files): Fix nullish operator usage and add missing code comment
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-06-24 12:53:53 +02:00
Ferdinand Thiessen d4352fe2ff fix(files): Properly handle files in failed state
When files are loaded from API the `fileid` might be set to `-1` indicating
an error on the API.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-06-24 12:52:11 +02:00
Julius Härtl d6d84e51ef fix: Avoid throwing errors for teams are unavailable
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2024-06-24 12:29:43 +02:00
dependabot[bot] c76c954f56 Merge pull request #46041 from nextcloud/dependabot/npm_and_yarn/nextcloud/eslint-config-8.4.1 2024-06-24 09:51:07 +00:00
Joas Schilling 8c944f44df Merge pull request #46062 from nextcloud/ci/noid/parallel-cs-check
feat(CI): Speed up cs:check with parallelism
2024-06-24 11:49:41 +02:00
Robin Appelman 2cf8ed905d Merge pull request #45877 from nextcloud/fix-default-cert-bundle-path
fix: don't use custom certificate bundle if no customer certificates are configured
2024-06-24 11:28:19 +02:00
Joas Schilling 2f978081ea feat(CI): Speed up cs:check with parallelism
Signed-off-by: Joas Schilling <coding@schilljs.com>
2024-06-24 10:40:15 +02:00
dependabot[bot] 2241ad824d chore(deps-dev): bump @nextcloud/eslint-config from 8.3.0 to 8.4.1
Bumps [@nextcloud/eslint-config](https://github.com/nextcloud-libraries/eslint-config) from 8.3.0 to 8.4.1.
- [Release notes](https://github.com/nextcloud-libraries/eslint-config/releases)
- [Changelog](https://github.com/nextcloud-libraries/eslint-config/blob/main/CHANGELOG.md)
- [Commits](https://github.com/nextcloud-libraries/eslint-config/compare/v8.3.0...v8.4.1)

---
updated-dependencies:
- dependency-name: "@nextcloud/eslint-config"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2024-06-24 08:38:16 +00:00
Louis 02452712a2 Merge pull request #45938 from nextcloud/do-not-log-an-error-when-connecting-to-sftp-without-a-logged-in-user
fix: Do not log an error when connecting to SFTP without a logged in user
2024-06-24 10:35:16 +02:00
Benjamin Gaussorgues 71dffd9b70 perf(session): remove useless session open
`UseSession` isn’t used in theses controllers.
Not using it should avoid a few session locks.

Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2024-06-24 10:17:05 +02:00
Ferdinand Thiessen 4680bc47c2 Merge pull request #46048 from nextcloud/automated/noid/master-update-psalm-baseline
[master] Update psalm-baseline.xml
2024-06-24 09:58:08 +02:00
Julius Härtl 637a91e767 Merge pull request #45973 from nextcloud/remove-chunking-v1
chore: remove chunking-v1
2024-06-24 09:52:18 +02:00
Julius Härtl 2fb0ca9cf7 feat: Add yieldEntities wrapper for entity mapping in QBMapper
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2024-06-24 09:15:58 +02:00
nextcloud-command 5ef451f409 chore(tests): Update psalm baseline
Signed-off-by: GitHub <noreply@github.com>
2024-06-24 02:27:17 +00:00
Nextcloud bot 4d1f9ae54e Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-06-24 00:19:33 +00:00
Ferdinand Thiessen ff92ab1fb1 Merge pull request #45929 from nextcloud/chore/update-nextcloud-files
refactor(files): Update `@nextcloud/files` to v3.5.0
2024-06-23 17:19:06 +02:00
Ferdinand Thiessen c8ec22f47b chore: Compile assets
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-06-23 16:55:37 +02:00
Ferdinand Thiessen 3ed32ffbb4 refactor: Use composable for currentView and views to make it reactive when shared with other Vue apps
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-06-23 16:53:27 +02:00
Ferdinand Thiessen dea5559d35 fix(files_trashbin): Make files view registering an init script
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-06-23 16:53:10 +02:00
Ferdinand Thiessen 81ad28f910 chore(deps): Update debounce to 2.1.0
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-06-23 16:53:10 +02:00
Ferdinand Thiessen a83f276352 refactor(files): Update @nextcloud/files to v3.5.0
* Removed now duplicated code

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-06-23 16:53:09 +02:00
Nextcloud bot 475edf24c2 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-06-23 00:19:40 +00:00
dependabot[bot] a721133128 Merge pull request #46042 from nextcloud/dependabot/composer/vendor-bin/psalm/vimeo/psalm-5.25.0 2024-06-22 08:02:41 +00:00
dependabot[bot] 67aff60ae8 chore(deps): bump vimeo/psalm from 5.24.0 to 5.25.0 in /vendor-bin/psalm
Bumps [vimeo/psalm](https://github.com/vimeo/psalm) from 5.24.0 to 5.25.0.
- [Release notes](https://github.com/vimeo/psalm/releases)
- [Commits](https://github.com/vimeo/psalm/compare/5.24.0...5.25.0)

---
updated-dependencies:
- dependency-name: vimeo/psalm
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-22 02:38:58 +00:00
Robin Appelman da8e1c192d Merge pull request #46017 from nextcloud/get-first-node-by-id-folder
fix: also use optimized getFirstNodeyIdInPath for Folder::getFirstNodeById
2024-06-21 12:27:53 +02:00
Daniel 425e2d0172 Merge pull request #45514 from nextcloud/bug/noid/fix-check-for-dark-avatar
fix: use different file name for generated dark avatars
2024-06-21 11:11:06 +02:00
Nextcloud bot f56bca3385 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-06-21 00:19:57 +00:00
Ferdinand Thiessen ef7b753816 Merge pull request #39825 from nextcloud/fix/debounce-account-properties
Increase debounce delay when saving account properties
2024-06-21 01:39:54 +02:00
Christopher Ng 620b6b9c3b fix: Increase debounce delay when saving account properties
Signed-off-by: Christopher Ng <chrng8@gmail.com>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2024-06-21 01:21:48 +02:00
Robin Appelman ffced73a71 fix: also use optimized getFirstNodeyIdInPath for Folder::getFirstNodeById
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-06-20 18:51:27 +02:00
Louis 9c4b959690 Merge pull request #45984 from nextcloud/artonge/fix/click_while_renaming
Don't trigger action when renaming
2024-06-20 17:49:51 +02:00
nextcloud-command a6de33bb13 chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2024-06-20 14:41:08 +00:00
Louis Chemineau 8e0be0a238 fix(files): Don't react to clicks when renaming
Signed-off-by: Louis Chemineau <louis@chmn.me>
2024-06-20 16:19:01 +02:00
Richard Steinmetz efe3244acf Merge pull request #45999 from nextcloud/fix/caldav/shared-calendars-activity-umlauts
fix(caldav): encode calendar URIs with umlauts for activities
2024-06-20 15:44:34 +02:00
Ferdinand Thiessen 8ac9e08f20 Merge pull request #45161 from nextcloud/fix/import-axios
fix: Do not import from `axios` but only `@nextcloud/axios`
2024-06-20 15:06:36 +02:00
julien-nc 08cf60923c Merge pull request #46003 from nextcloud/fix/noid/undeclared-context-write-task-type
Add missing ContextWrite default task type in task processing manager
2024-06-20 13:56:06 +02:00
Julien Veyssier 7e904aea92 fix(taskprocessing): missing GenerateEmoji default task type in manager::_getTaskTypes
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2024-06-20 12:56:04 +02:00
Julien Veyssier de81dac82e fix(taskprocessing): missing ContextWrite default task type in manager::_getTaskTypes
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2024-06-20 12:56:04 +02:00
Ferdinand Thiessen 7ecf447c7e chore: Compile assets
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-06-20 12:36:33 +02:00
Ferdinand Thiessen 1d0a65db93 fix: Do not import from axios but only @nextcloud/axios
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-06-20 12:34:37 +02:00
Ferdinand Thiessen c251e8f2aa Merge pull request #45207 from nextcloud/fix/webdav-aja
fix(dav): Try basic auth for ajax WebDAV requests
2024-06-20 12:28:31 +02:00
Louis bea9daee9c Merge pull request #45688 from nextcloud/artonge/fix/show_non_writable_folders
Show non writable folders during move or copy
2024-06-20 12:16:29 +02:00
Robin Appelman 7a9efcf4cc perf: remove full filesystem setup for accessing public link share dav endpoints
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-06-20 12:15:43 +02:00
Richard Steinmetz c92529053d Merge pull request #45980 from nextcloud/fix/theming/update-warning
fix(theming): properly apply warning style to update output
2024-06-20 10:58:46 +02:00
Richard Steinmetz df28c04a8f fix(caldav): encode calendar URIs with umlauts for activities
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2024-06-20 10:56:27 +02:00
Louis 392ee62981 Merge pull request #45958 from nextcloud/fix/renaming-file-version-when-number
fix(files_versions): renaming file version when its not a string
2024-06-20 09:14:57 +02:00
yemkareems a05a04c1a2 Merge pull request #45845 from nextcloud/fix/log-rename-to-use-internal-path
fix: rename split into two as before rename and after rename
2024-06-20 11:36:21 +05:30
yemkareems 2593f5f036 Merge pull request #45580 from nextcloud/fix/44933/avoid-duplicate-inserts-in-systemtag-object-mapping
fix: avoid duplicate tag inserts by checking if the mapping exists already in db
2024-06-20 10:59:38 +05:30
yemkareems eae23867f2 fix: renameParams named as renamedNodes and code changed accordingly as suggested in review comments
Signed-off-by: yemkareems <yemkareems@gmail.com>
2024-06-20 10:54:45 +05:30
yemkareems 953358fdc8 fix: rename params old path passed from before rename to after rename to have one log for rename event
Signed-off-by: yemkareems <yemkareems@gmail.com>
2024-06-20 10:54:45 +05:30
yemkareems 3e355c4db1 fix: rename logged as beforeRename and afterRename, and in both place getInternalPath is used in place of getPath to make it consistent across the logs
Signed-off-by: yemkareems <yemkareems@gmail.com>
2024-06-20 10:54:45 +05:30
Nextcloud bot f06338ca36 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-06-20 00:19:55 +00:00
nextcloud-command efe4e047fa chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2024-06-19 22:37:03 +00:00
Sanskar Soni 2aecc523c8 fix(files_versions): renaming file version when its not a string
Signed-off-by: Sanskar Soni <sanskarsoni300@gmail.com>
2024-06-20 00:31:52 +02:00
Andy Scherzinger 6a8d254425 Merge pull request #45972 from nextcloud/fix/noid/copyIcon
Update copy icon to Material Design icon and checkmark in non-bold
2024-06-19 21:46:11 +02:00
Christoph Wurst 902d77ee7d Merge pull request #45968 from nextcloud/fix/dav/limit-sync-token-created-at-updates
fix(dav): Limit number of UPDATES for sync token created_at
2024-06-19 18:04:36 +02:00
Louis Chemineau ae0106ef9e fix(files): Show non writable folders during move or copy
Signed-off-by: Louis Chemineau <louis@chmn.me>
2024-06-19 17:39:57 +02:00
John Molakvoæ 18cf61df9f Merge pull request #45963 from nextcloud/artonge/fix/openfile 2024-06-19 17:04:42 +02:00
Robin Appelman 957a00b9de chore: remove chunking-v1
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-06-19 16:57:42 +02:00
nextcloud-command 9e07720b26 chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2024-06-19 13:58:18 +00:00
Richard Steinmetz 9c930146a5 fix(theming): properly apply warning style to update output
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2024-06-19 15:50:06 +02:00
Christoph Wurst 169eedabf9 fix(dav): Limit number of UPDATES for sync token created_at
Address book and calendar sync tokens have a created_at column in 26+
and we need to assign a current timestamp to the existing data at
upgrade so the data isn't cleaned up immediately. Updating the full
table is expensive and fails on clustered setups that limit transaction
size. We don't need a timestamp for the oldest rows so we can skip
updating them.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2024-06-19 15:38:36 +02:00
nextcloud-command 59ea179dd8 chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
Signed-off-by: Louis Chemineau <louis@chmn.me>
2024-06-19 15:38:13 +02:00
Louis Chemineau f7c9ac8b54 fix(files): Rename openFileInfo to fileInfo
And check if openFile is set in the URL before opening a file.

Signed-off-by: Louis Chemineau <louis@chmn.me>
2024-06-19 15:38:13 +02:00
Andy Scherzinger 5e05a2da8c style: update copy icon to Material Design icon
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-06-19 15:31:09 +02:00
Richard Steinmetz 42fa007204 Merge pull request #45969 from nextcloud/ci/phpunit-mysql/more-retries
ci(phpunit-mysql): increase mysql health check retries
2024-06-19 14:57:06 +02:00
dependabot[bot] fe34d9ee97 chore(deps): bump ws, engine.io, socket.io-adapter and puppeteer
Bumps [ws](https://github.com/websockets/ws) to 8.17.1 and updates ancestor dependencies [ws](https://github.com/websockets/ws), [engine.io](https://github.com/socketio/engine.io), [socket.io-adapter](https://github.com/socketio/socket.io-adapter) and [puppeteer](https://github.com/puppeteer/puppeteer). These dependencies need to be updated together.


Updates `ws` from 8.16.0 to 8.17.1
- [Release notes](https://github.com/websockets/ws/releases)
- [Commits](https://github.com/websockets/ws/compare/8.16.0...8.17.1)

Updates `engine.io` from 6.5.4 to 6.5.5
- [Release notes](https://github.com/socketio/engine.io/releases)
- [Changelog](https://github.com/socketio/engine.io/blob/main/CHANGELOG.md)
- [Commits](https://github.com/socketio/engine.io/compare/6.5.4...6.5.5)

Updates `socket.io-adapter` from 2.5.4 to 2.5.5
- [Release notes](https://github.com/socketio/socket.io-adapter/releases)
- [Changelog](https://github.com/socketio/socket.io-adapter/blob/main/CHANGELOG.md)
- [Commits](https://github.com/socketio/socket.io-adapter/compare/2.5.4...2.5.5)

Updates `puppeteer` from 22.7.1 to 22.11.2
- [Release notes](https://github.com/puppeteer/puppeteer/releases)
- [Changelog](https://github.com/puppeteer/puppeteer/blob/main/release-please-config.json)
- [Commits](https://github.com/puppeteer/puppeteer/compare/puppeteer-v22.7.1...puppeteer-v22.11.2)

---
updated-dependencies:
- dependency-name: ws
  dependency-type: indirect
- dependency-name: engine.io
  dependency-type: indirect
- dependency-name: socket.io-adapter
  dependency-type: indirect
- dependency-name: puppeteer
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-19 11:48:47 +00:00
Andy Scherzinger 30babfcb2c Merge pull request #45960 from nextcloud/chore/noid/spdxBatch17
Add SPDX header - batch 17
2024-06-19 13:47:05 +02:00
yemkareems 87cd78413c fix: removed unused variable and check if tag ids are empty before starting the inserts
Signed-off-by: yemkareems <yemkareems@gmail.com>
2024-06-19 12:52:46 +02:00
yemkareems d0883b5e85 fix: filtering tags based on existing tags and doing a transaction around the select and insert
Signed-off-by: yemkareems <yemkareems@gmail.com>
2024-06-19 12:52:46 +02:00
yemkareems 8782b8724a fix: do a select in systemtag_object_mapping to see if tag exists already in db. if it does not exist alone insert the same or else do nothing
Signed-off-by: yemkareems <yemkareems@gmail.com>
2024-06-19 12:52:46 +02:00
Richard Steinmetz ddf1d3e7ac ci(phpunit-mysql): increase mysql health check retries
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2024-06-19 12:36:16 +02:00
nextcloud-command a0ef683d39 chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2024-06-19 10:22:05 +00:00
Andy Scherzinger 581c5d6c92 docs: Add REUSE compliance status badge
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-06-19 12:02:48 +02:00
Andy Scherzinger 75756e3064 ci: Add REUSE compliance check
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-06-19 12:02:48 +02:00
Andy Scherzinger ce7b331d33 chore: Add SPDX header
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-06-19 12:02:43 +02:00
Robin Appelman 441dfd6646 Merge pull request #45930 from nextcloud/repair-mimetype-expensive
fix: move repair mimetype repair step to the expensive steps
2024-06-19 11:09:15 +02:00
Richard Steinmetz ab8556872e Merge pull request #45957 from nextcloud/perf/cache-storage-stats-header
perf: Tell browsers to cache storage stats endpoint as it is cached
2024-06-19 08:10:24 +02:00
Nextcloud bot cd7530cd70 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-06-19 00:20:28 +00:00
Andy Scherzinger ee6ddb9ab0 Merge pull request #45952 from nextcloud/fix/noid/spdxLicenseIdentifier
Fix license information extracted from built assets
2024-06-18 23:32:58 +02:00
Julius Härtl 40a416ba00 perf: Tell browsers to cache storage stats endpoint as it is cached
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2024-06-18 23:00:17 +02:00
Pytal a3587175f1 Merge pull request #45685 from nextcloud/feat/emit-users-loaded
feat(settings): Emit loaded event for user management
2024-06-18 11:58:43 -07:00
nextcloud-command 68b2b84574 chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2024-06-18 18:40:31 +00:00
Christopher Ng e1e607ac8b feat(settings): Emit loaded event for user management
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2024-06-18 11:34:55 -07:00
nextcloud-command ef8937d45a chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2024-06-18 17:28:23 +02:00
Ferdinand Thiessen 493be5a0b3 chore: Remove duplicates from dep5
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-06-18 17:28:23 +02:00
Ferdinand Thiessen 52171610c8 chore: Switch order of license texts in .license files
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-06-18 17:28:23 +02:00
Ferdinand Thiessen d67eb8ce4e chore: Adjust SPDX tool to multiple line licenses instead of AND chained
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-06-18 16:55:14 +02:00
Andy Scherzinger c3208c1d56 fix: hard-wire licenses until new versions are published shipping the SPDX listed license strings
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-06-18 16:55:14 +02:00
Robin Appelman e74f71b32e feat: add setup check for needed mimetype migrations
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-06-18 14:46:19 +02:00
Ferdinand Thiessen 67a0e01382 fix(dav): Try basic auth for ajax WebDAV requests
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-06-18 10:47:11 +02:00
Daniel Calviño Sánchez 733e3f62fd fix: Do not log an error when connecting to SFTP without a logged in user
When connecting to a SFTP server from a SFTP storage the host key is
checked against the known host keys stored in a file in the data
directory of the logged in Nextcloud user. The path to the file is
(indirectly) got using "OC_App::getStorage", which logs an error if
called when there is no logged in user; this can happen, for example, if
the storage is used from a background job or a command.

Not being able to read or write the file just causes the host key check
to be skipped, but it has no other consequence. Moreover, even with
logged in users it is likely that the file can not be read either and
the check is also skipped, as the file needs to have been manually
created by an admin.

Due to all that now the path to the file is directly created using a
View rather than relying on "OC_App::getStorage" to prevent the unneeded
error from being logged.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2024-06-18 07:06:30 +02:00
Robin Appelman d9b37ac5fa fix: move repair mimetype repair step to the expensive steps
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-06-17 17:10:25 +02:00
Robin Appelman e140907123 fix: don't use custom certificate bundle if no customer certificates are configured
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-06-14 16:27:41 +02:00
Richard Steinmetz 69e0158030 feat: implement public OCP api to update resources and rooms
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2024-05-27 18:45:52 +02:00
Daniel Kesselberg 53b5cf6cbc fix: use different file name for generated dark avatars
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2024-05-26 17:32:10 +02:00
1251 changed files with 30601 additions and 14641 deletions
+2 -3
View File
@@ -86,7 +86,6 @@ body:
Select Nextcloud Server version.
_Versions not listed here are not maintained and not supported anymore_
options:
- "27"
- "28"
- "29"
- "master"
@@ -148,8 +147,8 @@ body:
description: |
Select if bug is present after an update or on a fresh install.
options:
- "Updated from a MINOR version (ex. 22.1 to 22.2)"
- "Upgraded to a MAJOR version (ex. 22 to 23)"
- "Updated from a MINOR version (ex. 28.0.1 to 28.0.2)"
- "Upgraded to a MAJOR version (ex. 28 to 29)"
- "Fresh Nextcloud Server install"
- type: dropdown
id: encryption
+2 -45
View File
@@ -100,28 +100,6 @@ updates:
- "3. to review"
- "feature: dependencies"
# Main stableXX npm
- package-ecosystem: npm
directory: "/"
schedule:
interval: weekly
day: saturday
time: "03:00"
timezone: Europe/Paris
target-branch: stable27
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"]
# Disable automatic rebasing because without a build CI will likely fail anyway
rebase-strategy: "disabled"
- package-ecosystem: npm
directory: "/"
schedule:
@@ -136,9 +114,8 @@ updates:
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"]
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"
@@ -156,31 +133,11 @@ updates:
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"]
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"
# Testing StableXX composer
- package-ecosystem: composer
directory: "/build/integration"
schedule:
interval: weekly
day: saturday
time: "03:00"
timezone: Europe/Paris
target-branch: stable27
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:
+2 -2
View File
@@ -51,12 +51,12 @@ jobs:
steps:
- name: Checkout server
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@7fdd3ece872ec7ec4c098ae5ab7637d5e0a96067 # v2
uses: shivammathur/setup-php@2e947f1f6932d141d076ca441d0e1e881775e95b #v2.31.0
with:
php-version: ${{ matrix.php-versions }}
extensions: ctype, json, mbstring
@@ -31,7 +31,7 @@ jobs:
- 'version.php'
- name: Checkout
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- name: 3rdparty commit hash on current branch
id: actual
@@ -27,7 +27,7 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- uses: webiny/action-conventional-commits@8bc41ff4e7d423d56fa4905f6ff79209a78776c7 # v1.3.0
with:
+1 -1
View File
@@ -69,7 +69,7 @@ jobs:
key: git-repo
- name: Checkout ${{ needs.init.outputs.head_ref }}
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
with:
token: ${{ secrets.COMMAND_BOT_PAT }}
fetch-depth: 0
+1 -1
View File
@@ -32,7 +32,7 @@ jobs:
id: comment-branch
- name: Checkout ${{ steps.comment-branch.outputs.head_ref }}
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
with:
fetch-depth: 0
token: ${{ secrets.COMMAND_BOT_PAT }}
+2 -2
View File
@@ -33,7 +33,7 @@ jobs:
steps:
- name: Checkout server
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
with:
# We need to checkout submodules for 3rdparty
submodules: true
@@ -110,7 +110,7 @@ jobs:
run: npm i -g 'npm@${{ needs.init.outputs.npmVersion }}'
- name: Run ${{ matrix.containers == 'component' && 'component' || 'E2E' }} cypress tests
uses: cypress-io/github-action@f88a151c986cab2e339cdbede6a5c4468bb62c17 # v6.7.0
uses: cypress-io/github-action@8d3918616d8ac34caa2b49afc8b408b6a872a6f5 # v6.7.1
with:
component: ${{ matrix.containers == 'component' }}
group: ${{ matrix.use-cypress-cloud && matrix.containers == 'component' && 'Run component' || matrix.use-cypress-cloud && 'Run E2E' || '' }}
+2 -2
View File
@@ -53,7 +53,7 @@ jobs:
steps:
- name: Checkout server
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
with:
submodules: true
@@ -68,7 +68,7 @@ jobs:
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@c5fc0d8281aba02c7fda07d3a70cc5371548067d #v2.25.2
uses: shivammathur/setup-php@2e947f1f6932d141d076ca441d0e1e881775e95b #v2.31.0
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
+4 -4
View File
@@ -60,12 +60,12 @@ jobs:
steps:
- name: Checkout server
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@4bd44f22a98a19e0950cbad5f31095157cc9621b # v2
uses: shivammathur/setup-php@2e947f1f6932d141d076ca441d0e1e881775e95b #v2.31.0
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
@@ -135,12 +135,12 @@ jobs:
steps:
- name: Checkout server
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@4bd44f22a98a19e0950cbad5f31095157cc9621b # v2
uses: shivammathur/setup-php@2e947f1f6932d141d076ca441d0e1e881775e95b #v2.31.0
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
+2 -2
View File
@@ -53,7 +53,7 @@ jobs:
steps:
- name: Checkout server
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
with:
submodules: true
@@ -64,7 +64,7 @@ jobs:
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@c5fc0d8281aba02c7fda07d3a70cc5371548067d #v2.25.2
uses: shivammathur/setup-php@2e947f1f6932d141d076ca441d0e1e881775e95b #v2.31.0
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
@@ -43,12 +43,12 @@ jobs:
steps:
- name: Checkout server
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
with:
submodules: true
- name: Checkout user_saml
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
with:
repository: nextcloud/user_saml
path: apps/user_saml
+2 -2
View File
@@ -56,12 +56,12 @@ jobs:
steps:
- name: Checkout server
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@4bd44f22a98a19e0950cbad5f31095157cc9621b # v2
uses: shivammathur/setup-php@2e947f1f6932d141d076ca441d0e1e881775e95b #v2.31.0
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
+2 -2
View File
@@ -56,12 +56,12 @@ jobs:
steps:
- name: Checkout server
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@4bd44f22a98a19e0950cbad5f31095157cc9621b # v2
uses: shivammathur/setup-php@2e947f1f6932d141d076ca441d0e1e881775e95b #v2.31.0
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
+2 -2
View File
@@ -49,12 +49,12 @@ jobs:
steps:
- name: Checkout server
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@4bd44f22a98a19e0950cbad5f31095157cc9621b # v2
uses: shivammathur/setup-php@2e947f1f6932d141d076ca441d0e1e881775e95b #v2.31.0
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
+2 -2
View File
@@ -51,12 +51,12 @@ jobs:
steps:
- name: Checkout server
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@4bd44f22a98a19e0950cbad5f31095157cc9621b # v2
uses: shivammathur/setup-php@2e947f1f6932d141d076ca441d0e1e881775e95b #v2.31.0
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
+2 -2
View File
@@ -50,12 +50,12 @@ jobs:
steps:
- name: Checkout server
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@4bd44f22a98a19e0950cbad5f31095157cc9621b # v2
uses: shivammathur/setup-php@2e947f1f6932d141d076ca441d0e1e881775e95b #v2.31.0
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
+2 -2
View File
@@ -65,12 +65,12 @@ jobs:
steps:
- name: Checkout server
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@4bd44f22a98a19e0950cbad5f31095157cc9621b # v2
uses: shivammathur/setup-php@2e947f1f6932d141d076ca441d0e1e881775e95b #v2.31.0
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
+3 -3
View File
@@ -90,20 +90,20 @@ jobs:
steps:
- name: Checkout server
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
with:
submodules: true
- name: Checkout Talk app
if: ${{ matrix.test-suite == 'videoverification_features' }}
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
with:
repository: nextcloud/spreed
path: apps/spreed
ref: ${{ matrix.spreed-versions }}
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@c5fc0d8281aba02c7fda07d3a70cc5371548067d # v2
uses: shivammathur/setup-php@2e947f1f6932d141d076ca441d0e1e881775e95b #v2.31.0
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
+1 -1
View File
@@ -53,7 +53,7 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- name: Read package.json node and npm engines version
uses: skjnldsv/read-package-engines-version-actions@06d6baf7d8f41934ab630e97d9e6c0bc9c9ac5e4 # v3
+2 -2
View File
@@ -48,10 +48,10 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- name: Set up php8.1
uses: shivammathur/setup-php@c665c7a15b5295c2488ac8a87af9cb806cd72198 # v2
uses: shivammathur/setup-php@2e947f1f6932d141d076ca441d0e1e881775e95b #v2.31.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
+2 -2
View File
@@ -53,10 +53,10 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@c665c7a15b5295c2488ac8a87af9cb806cd72198 # v2
uses: shivammathur/setup-php@2e947f1f6932d141d076ca441d0e1e881775e95b #v2.31.0
with:
php-version: ${{ matrix.php-versions }}
coverage: none
+4 -4
View File
@@ -59,7 +59,7 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- name: Read package.json node and npm engines version
uses: skjnldsv/read-package-engines-version-actions@06d6baf7d8f41934ab630e97d9e6c0bc9c9ac5e4 # v3
@@ -80,7 +80,7 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- name: Set up node ${{ needs.versions.outputs.nodeVersion }}
uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 # v4.0.2
@@ -114,7 +114,7 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- name: Set up node ${{ needs.versions.outputs.nodeVersion }}
uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 # v4.0.2
@@ -142,7 +142,7 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- name: Set up node ${{ needs.versions.outputs.nodeVersion }}
uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 # v4.0.2
+2 -1
View File
@@ -40,6 +40,7 @@ jobs:
- '**.js'
- '**.ts'
- '**.vue'
- 'core/css/*'
- 'core/img/**'
build:
@@ -51,7 +52,7 @@ jobs:
name: NPM build
steps:
- name: Checkout
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- name: Read package.json node and npm engines version
uses: skjnldsv/read-package-engines-version-actions@06d6baf7d8f41934ab630e97d9e6c0bc9c9ac5e4 # v3
+2 -2
View File
@@ -27,7 +27,7 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
with:
ref: ${{ matrix.branches }}
@@ -60,7 +60,7 @@ jobs:
- name: Create Pull Request
if: always()
uses: peter-evans/create-pull-request@6d6857d36972b65feb161a90e484f2984215f83e # v6.0.5
uses: peter-evans/create-pull-request@c5a7806660adbe173f04e3e038b0ccdcd758773c # v6.1.0
with:
token: ${{ secrets.COMMAND_BOT_PAT }}
commit-message: 'fix(deps): Fix npm audit'
+2 -2
View File
@@ -69,12 +69,12 @@ jobs:
steps:
- name: Checkout server
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@4bd44f22a98a19e0950cbad5f31095157cc9621b # v2
uses: shivammathur/setup-php@2e947f1f6932d141d076ca441d0e1e881775e95b #v2.31.0
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
+2 -2
View File
@@ -70,12 +70,12 @@ jobs:
steps:
- name: Checkout server
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@4bd44f22a98a19e0950cbad5f31095157cc9621b # v2
uses: shivammathur/setup-php@2e947f1f6932d141d076ca441d0e1e881775e95b #v2.31.0
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
+2 -2
View File
@@ -67,12 +67,12 @@ jobs:
steps:
- name: Checkout server
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@4bd44f22a98a19e0950cbad5f31095157cc9621b # v2
uses: shivammathur/setup-php@2e947f1f6932d141d076ca441d0e1e881775e95b #v2.31.0
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
+2 -2
View File
@@ -26,10 +26,10 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- name: Set up php
uses: shivammathur/setup-php@c665c7a15b5295c2488ac8a87af9cb806cd72198 # v2
uses: shivammathur/setup-php@2e947f1f6932d141d076ca441d0e1e881775e95b #v2.31.0
with:
php-version: '8.2'
extensions: ctype, curl, dom, fileinfo, gd, json, libxml, mbstring, openssl, pcntl, pdo, posix, session, simplexml, xml, xmlreader, xmlwriter, zip, zlib
+2 -2
View File
@@ -23,13 +23,13 @@ jobs:
steps:
- name: Checkout server before PR
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
with:
submodules: true
ref: ${{ github.event.pull_request.base.ref }}
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@c5fc0d8281aba02c7fda07d3a70cc5371548067d #v2.25.2
uses: shivammathur/setup-php@2e947f1f6932d141d076ca441d0e1e881775e95b #v2.31.0
with:
php-version: ${{ matrix.php-versions }}
extensions: mbstring, fileinfo, intl, sqlite, pdo_sqlite, zip, gd
+2 -2
View File
@@ -32,7 +32,7 @@ jobs:
steps:
- name: Checkout server
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
with:
submodules: true
@@ -42,7 +42,7 @@ jobs:
sudo apt-get install -y ffmpeg imagemagick libmagickcore-6.q16-3-extra
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@72ae4ccbe57f82bbe08411e84e2130bd4ba1c10f #v2.25.5
uses: shivammathur/setup-php@2e947f1f6932d141d076ca441d0e1e881775e95b #v2.31.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
+5 -5
View File
@@ -56,10 +56,10 @@ jobs:
strategy:
matrix:
php-versions: ['8.1']
mariadb-versions: ['10.3', '10.5', '10.6', '10.11']
mariadb-versions: ['10.3', '10.6', '10.11', '11.4']
include:
- php-versions: '8.3'
mariadb-versions: '10.6'
mariadb-versions: '10.11'
coverage: ${{ github.event_name != 'pull_request' }}
name: MariaDB ${{ matrix.mariadb-versions }} (PHP ${{ matrix.php-versions }}) - database tests
@@ -80,16 +80,16 @@ jobs:
MYSQL_USER: oc_autotest
MYSQL_PASSWORD: nextcloud
MYSQL_DATABASE: oc_autotest
options: --health-cmd="mysqladmin ping" --health-interval 5s --health-timeout 2s --health-retries 5
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@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@c665c7a15b5295c2488ac8a87af9cb806cd72198 # v2
uses: shivammathur/setup-php@2e947f1f6932d141d076ca441d0e1e881775e95b #v2.31.0
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
+2 -2
View File
@@ -71,12 +71,12 @@ jobs:
steps:
- name: Checkout server
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@7fdd3ece872ec7ec4c098ae5ab7637d5e0a96067 # v2
uses: shivammathur/setup-php@2e947f1f6932d141d076ca441d0e1e881775e95b #v2.31.0
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
+4 -4
View File
@@ -56,7 +56,7 @@ jobs:
strategy:
matrix:
php-versions: ['8.1']
mysql-versions: ['8.0', '8.3']
mysql-versions: ['8.0', '8.4']
include:
- mysql-versions: '8.0'
php-versions: '8.3'
@@ -80,16 +80,16 @@ jobs:
MYSQL_USER: oc_autotest
MYSQL_PASSWORD: nextcloud
MYSQL_DATABASE: oc_autotest
options: --health-cmd="mysqladmin ping" --health-interval 5s --health-timeout 2s --health-retries 5
options: --health-cmd="mysqladmin ping" --health-interval 5s --health-timeout 2s --health-retries 10
steps:
- name: Checkout server
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@4bd44f22a98a19e0950cbad5f31095157cc9621b # v2
uses: shivammathur/setup-php@2e947f1f6932d141d076ca441d0e1e881775e95b #v2.31.0
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
+2 -2
View File
@@ -73,12 +73,12 @@ jobs:
steps:
- name: Checkout server
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@7fdd3ece872ec7ec4c098ae5ab7637d5e0a96067 # v2
uses: shivammathur/setup-php@2e947f1f6932d141d076ca441d0e1e881775e95b #v2.31.0
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
+2 -2
View File
@@ -92,12 +92,12 @@ jobs:
steps:
- name: Checkout server
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@c665c7a15b5295c2488ac8a87af9cb806cd72198 # v2
uses: shivammathur/setup-php@2e947f1f6932d141d076ca441d0e1e881775e95b #v2.31.0
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
+2 -2
View File
@@ -84,12 +84,12 @@ jobs:
steps:
- name: Checkout server
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@c665c7a15b5295c2488ac8a87af9cb806cd72198 # v2
uses: shivammathur/setup-php@2e947f1f6932d141d076ca441d0e1e881775e95b #v2.31.0
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
+2 -2
View File
@@ -71,12 +71,12 @@ jobs:
steps:
- name: Checkout server
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@c665c7a15b5295c2488ac8a87af9cb806cd72198 # v2
uses: shivammathur/setup-php@2e947f1f6932d141d076ca441d0e1e881775e95b #v2.31.0
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
+22
View File
@@ -0,0 +1,22 @@
# 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@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- name: REUSE Compliance Check
uses: fsfe/reuse-action@3ae3c6bdf1257ab19397fab11fd3312144692083 # v4.0.0
+6 -6
View File
@@ -17,12 +17,12 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
with:
submodules: true
- name: Set up php
uses: shivammathur/setup-php@v2
uses: shivammathur/setup-php@2e947f1f6932d141d076ca441d0e1e881775e95b #v2.31.0
with:
php-version: '8.1'
extensions: apcu,ctype,curl,dom,fileinfo,ftp,gd,intl,json,ldap,mbstring,openssl,pdo_sqlite,posix,sqlite,xml,zip
@@ -51,12 +51,12 @@ jobs:
steps:
- name: Checkout code
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
with:
submodules: true
- name: Set up php
uses: shivammathur/setup-php@master
uses: shivammathur/setup-php@2e947f1f6932d141d076ca441d0e1e881775e95b #v2.31.0
with:
php-version: '8.1'
extensions: ctype,curl,dom,fileinfo,ftp,gd,intl,json,ldap,mbstring,openssl,pdo_sqlite,posix,sqlite,xml,zip
@@ -79,12 +79,12 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
with:
submodules: true
- name: Set up php
uses: shivammathur/setup-php@v2
uses: shivammathur/setup-php@2e947f1f6932d141d076ca441d0e1e881775e95b #v2.31.0
with:
php-version: '8.1'
extensions: ctype,curl,dom,fileinfo,gd,intl,json,mbstring,openssl,pdo_sqlite,posix,sqlite,xml,zip
+2 -2
View File
@@ -19,7 +19,7 @@ jobs:
name: update-ca-certificate-bundle-${{ matrix.branches }}
steps:
- uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
with:
ref: ${{ matrix.branches }}
submodules: true
@@ -28,7 +28,7 @@ jobs:
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@6d6857d36972b65feb161a90e484f2984215f83e
uses: peter-evans/create-pull-request@c5a7806660adbe173f04e3e038b0ccdcd758773c
with:
token: ${{ secrets.COMMAND_BOT_PAT }}
commit-message: 'fix(security): Update CA certificate bundle'
@@ -19,7 +19,7 @@ jobs:
name: update-code-signing-crl-${{ matrix.branches }}
steps:
- uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
with:
ref: ${{ matrix.branches }}
submodules: true
@@ -31,7 +31,7 @@ jobs:
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@6d6857d36972b65feb161a90e484f2984215f83e
uses: peter-evans/create-pull-request@c5a7806660adbe173f04e3e038b0ccdcd758773c
with:
token: ${{ secrets.COMMAND_BOT_PAT }}
commit-message: 'fix(security): Update code signing revocation list'
+3 -3
View File
@@ -21,13 +21,13 @@ jobs:
name: update-psalm-baseline-${{ matrix.branches }}
steps:
- uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
with:
ref: ${{ matrix.branches }}
submodules: true
- name: Set up php
uses: shivammathur/setup-php@v2
uses: shivammathur/setup-php@2e947f1f6932d141d076ca441d0e1e881775e95b #v2.31.0
with:
php-version: '8.1'
extensions: apcu,ctype,curl,dom,fileinfo,ftp,gd,intl,json,ldap,mbstring,openssl,pdo_sqlite,posix,sqlite,xml,zip
@@ -52,7 +52,7 @@ jobs:
git checkout composer.json composer.lock lib/composer
- name: Create Pull Request
uses: peter-evans/create-pull-request@6d6857d36972b65feb161a90e484f2984215f83e
uses: peter-evans/create-pull-request@c5a7806660adbe173f04e3e038b0ccdcd758773c
with:
token: ${{ secrets.COMMAND_BOT_PAT }}
commit-message: 'chore(tests): Update psalm baseline'
+2
View File
@@ -8,9 +8,11 @@ declare(strict_types=1);
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()
->ignoreVCSIgnored(true)
->exclude('config')
+15 -7
View File
File diff suppressed because one or more lines are too long
+3 -8
View File
@@ -7,14 +7,9 @@ Files in Nextcloud are licensed under the Affero General Public License version
the text of which can be found in `COPYING`, or any later version of the AGPL,
unless otherwise noted.
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+
* Material UI icons: APACHE LICENSE, VERSION 2.0
For licensing of components please see the respective SPDX headers of the shipped
files in the `dist` folder.
All unmodified files from these and other sources retain their original copyright
and license notices: see the relevant individual files.
+9
View File
@@ -0,0 +1,9 @@
Copyright (c) <year> <owner>
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+11
View File
@@ -0,0 +1,11 @@
Copyright (c) <year> <owner>.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+156
View File
@@ -0,0 +1,156 @@
Creative Commons Attribution 4.0 International
Creative Commons Corporation (“Creative Commons”) is not a law firm and does not provide legal services or legal advice. Distribution of Creative Commons public licenses does not create a lawyer-client or other relationship. Creative Commons makes its licenses and related information available on an “as-is” basis. Creative Commons gives no warranties regarding its licenses, any material licensed under their terms and conditions, or any related information. Creative Commons disclaims all liability for damages resulting from their use to the fullest extent possible.
Using Creative Commons Public Licenses
Creative Commons public licenses provide a standard set of terms and conditions that creators and other rights holders may use to share original works of authorship and other material subject to copyright and certain other rights specified in the public license below. The following considerations are for informational purposes only, are not exhaustive, and do not form part of our licenses.
Considerations for licensors: Our public licenses are intended for use by those authorized to give the public permission to use material in ways otherwise restricted by copyright and certain other rights. Our licenses are irrevocable. Licensors should read and understand the terms and conditions of the license they choose before applying it. Licensors should also secure all rights necessary before applying our licenses so that the public can reuse the material as expected. Licensors should clearly mark any material not subject to the license. This includes other CC-licensed material, or material used under an exception or limitation to copyright. More considerations for licensors.
Considerations for the public: By using one of our public licenses, a licensor grants the public permission to use the licensed material under specified terms and conditions. If the licensors permission is not necessary for any reasonfor example, because of any applicable exception or limitation to copyrightthen that use is not regulated by the license. Our licenses grant only permissions under copyright and certain other rights that a licensor has authority to grant. Use of the licensed material may still be restricted for other reasons, including because others have copyright or other rights in the material. A licensor may make special requests, such as asking that all changes be marked or described. Although not required by our licenses, you are encouraged to respect those requests where reasonable. More considerations for the public.
Creative Commons Attribution 4.0 International Public License
By exercising the Licensed Rights (defined below), You accept and agree to be bound by the terms and conditions of this Creative Commons Attribution 4.0 International Public License ("Public License"). To the extent this Public License may be interpreted as a contract, You are granted the Licensed Rights in consideration of Your acceptance of these terms and conditions, and the Licensor grants You such rights in consideration of benefits the Licensor receives from making the Licensed Material available under these terms and conditions.
Section 1 Definitions.
a. Adapted Material means material subject to Copyright and Similar Rights that is derived from or based upon the Licensed Material and in which the Licensed Material is translated, altered, arranged, transformed, or otherwise modified in a manner requiring permission under the Copyright and Similar Rights held by the Licensor. For purposes of this Public License, where the Licensed Material is a musical work, performance, or sound recording, Adapted Material is always produced where the Licensed Material is synched in timed relation with a moving image.
b. Adapter's License means the license You apply to Your Copyright and Similar Rights in Your contributions to Adapted Material in accordance with the terms and conditions of this Public License.
c. Copyright and Similar Rights means copyright and/or similar rights closely related to copyright including, without limitation, performance, broadcast, sound recording, and Sui Generis Database Rights, without regard to how the rights are labeled or categorized. For purposes of this Public License, the rights specified in Section 2(b)(1)-(2) are not Copyright and Similar Rights.
d. Effective Technological Measures means those measures that, in the absence of proper authority, may not be circumvented under laws fulfilling obligations under Article 11 of the WIPO Copyright Treaty adopted on December 20, 1996, and/or similar international agreements.
e. Exceptions and Limitations means fair use, fair dealing, and/or any other exception or limitation to Copyright and Similar Rights that applies to Your use of the Licensed Material.
f. Licensed Material means the artistic or literary work, database, or other material to which the Licensor applied this Public License.
g. Licensed Rights means the rights granted to You subject to the terms and conditions of this Public License, which are limited to all Copyright and Similar Rights that apply to Your use of the Licensed Material and that the Licensor has authority to license.
h. Licensor means the individual(s) or entity(ies) granting rights under this Public License.
i. Share means to provide material to the public by any means or process that requires permission under the Licensed Rights, such as reproduction, public display, public performance, distribution, dissemination, communication, or importation, and to make material available to the public including in ways that members of the public may access the material from a place and at a time individually chosen by them.
j. Sui Generis Database Rights means rights other than copyright resulting from Directive 96/9/EC of the European Parliament and of the Council of 11 March 1996 on the legal protection of databases, as amended and/or succeeded, as well as other essentially equivalent rights anywhere in the world.
k. You means the individual or entity exercising the Licensed Rights under this Public License. Your has a corresponding meaning.
Section 2 Scope.
a. License grant.
1. Subject to the terms and conditions of this Public License, the Licensor hereby grants You a worldwide, royalty-free, non-sublicensable, non-exclusive, irrevocable license to exercise the Licensed Rights in the Licensed Material to:
A. reproduce and Share the Licensed Material, in whole or in part; and
B. produce, reproduce, and Share Adapted Material.
2. Exceptions and Limitations. For the avoidance of doubt, where Exceptions and Limitations apply to Your use, this Public License does not apply, and You do not need to comply with its terms and conditions.
3. Term. The term of this Public License is specified in Section 6(a).
4. Media and formats; technical modifications allowed. The Licensor authorizes You to exercise the Licensed Rights in all media and formats whether now known or hereafter created, and to make technical modifications necessary to do so. The Licensor waives and/or agrees not to assert any right or authority to forbid You from making technical modifications necessary to exercise the Licensed Rights, including technical modifications necessary to circumvent Effective Technological Measures. For purposes of this Public License, simply making modifications authorized by this Section 2(a)(4) never produces Adapted Material.
5. Downstream recipients.
A. Offer from the Licensor Licensed Material. Every recipient of the Licensed Material automatically receives an offer from the Licensor to exercise the Licensed Rights under the terms and conditions of this Public License.
B. No downstream restrictions. You may not offer or impose any additional or different terms or conditions on, or apply any Effective Technological Measures to, the Licensed Material if doing so restricts exercise of the Licensed Rights by any recipient of the Licensed Material.
6. No endorsement. Nothing in this Public License constitutes or may be construed as permission to assert or imply that You are, or that Your use of the Licensed Material is, connected with, or sponsored, endorsed, or granted official status by, the Licensor or others designated to receive attribution as provided in Section 3(a)(1)(A)(i).
b. Other rights.
1. Moral rights, such as the right of integrity, are not licensed under this Public License, nor are publicity, privacy, and/or other similar personality rights; however, to the extent possible, the Licensor waives and/or agrees not to assert any such rights held by the Licensor to the limited extent necessary to allow You to exercise the Licensed Rights, but not otherwise.
2. Patent and trademark rights are not licensed under this Public License.
3. To the extent possible, the Licensor waives any right to collect royalties from You for the exercise of the Licensed Rights, whether directly or through a collecting society under any voluntary or waivable statutory or compulsory licensing scheme. In all other cases the Licensor expressly reserves any right to collect such royalties.
Section 3 License Conditions.
Your exercise of the Licensed Rights is expressly made subject to the following conditions.
a. Attribution.
1. If You Share the Licensed Material (including in modified form), You must:
A. retain the following if it is supplied by the Licensor with the Licensed Material:
i. identification of the creator(s) of the Licensed Material and any others designated to receive attribution, in any reasonable manner requested by the Licensor (including by pseudonym if designated);
ii. a copyright notice;
iii. a notice that refers to this Public License;
iv. a notice that refers to the disclaimer of warranties;
v. a URI or hyperlink to the Licensed Material to the extent reasonably practicable;
B. indicate if You modified the Licensed Material and retain an indication of any previous modifications; and
C. indicate the Licensed Material is licensed under this Public License, and include the text of, or the URI or hyperlink to, this Public License.
2. You may satisfy the conditions in Section 3(a)(1) in any reasonable manner based on the medium, means, and context in which You Share the Licensed Material. For example, it may be reasonable to satisfy the conditions by providing a URI or hyperlink to a resource that includes the required information.
3. If requested by the Licensor, You must remove any of the information required by Section 3(a)(1)(A) to the extent reasonably practicable.
4. If You Share Adapted Material You produce, the Adapter's License You apply must not prevent recipients of the Adapted Material from complying with this Public License.
Section 4 Sui Generis Database Rights.
Where the Licensed Rights include Sui Generis Database Rights that apply to Your use of the Licensed Material:
a. for the avoidance of doubt, Section 2(a)(1) grants You the right to extract, reuse, reproduce, and Share all or a substantial portion of the contents of the database;
b. if You include all or a substantial portion of the database contents in a database in which You have Sui Generis Database Rights, then the database in which You have Sui Generis Database Rights (but not its individual contents) is Adapted Material; and
c. You must comply with the conditions in Section 3(a) if You Share all or a substantial portion of the contents of the database.
For the avoidance of doubt, this Section 4 supplements and does not replace Your obligations under this Public License where the Licensed Rights include other Copyright and Similar Rights.
Section 5 Disclaimer of Warranties and Limitation of Liability.
a. Unless otherwise separately undertaken by the Licensor, to the extent possible, the Licensor offers the Licensed Material as-is and as-available, and makes no representations or warranties of any kind concerning the Licensed Material, whether express, implied, statutory, or other. This includes, without limitation, warranties of title, merchantability, fitness for a particular purpose, non-infringement, absence of latent or other defects, accuracy, or the presence or absence of errors, whether or not known or discoverable. Where disclaimers of warranties are not allowed in full or in part, this disclaimer may not apply to You.
b. To the extent possible, in no event will the Licensor be liable to You on any legal theory (including, without limitation, negligence) or otherwise for any direct, special, indirect, incidental, consequential, punitive, exemplary, or other losses, costs, expenses, or damages arising out of this Public License or use of the Licensed Material, even if the Licensor has been advised of the possibility of such losses, costs, expenses, or damages. Where a limitation of liability is not allowed in full or in part, this limitation may not apply to You.
c. The disclaimer of warranties and limitation of liability provided above shall be interpreted in a manner that, to the extent possible, most closely approximates an absolute disclaimer and waiver of all liability.
Section 6 Term and Termination.
a. This Public License applies for the term of the Copyright and Similar Rights licensed here. However, if You fail to comply with this Public License, then Your rights under this Public License terminate automatically.
b. Where Your right to use the Licensed Material has terminated under Section 6(a), it reinstates:
1. automatically as of the date the violation is cured, provided it is cured within 30 days of Your discovery of the violation; or
2. upon express reinstatement by the Licensor.
c. For the avoidance of doubt, this Section 6(b) does not affect any right the Licensor may have to seek remedies for Your violations of this Public License.
d. For the avoidance of doubt, the Licensor may also offer the Licensed Material under separate terms or conditions or stop distributing the Licensed Material at any time; however, doing so will not terminate this Public License.
e. Sections 1, 5, 6, 7, and 8 survive termination of this Public License.
Section 7 Other Terms and Conditions.
a. The Licensor shall not be bound by any additional or different terms or conditions communicated by You unless expressly agreed.
b. Any arrangements, understandings, or agreements regarding the Licensed Material not stated herein are separate from and independent of the terms and conditions of this Public License.
Section 8 Interpretation.
a. For the avoidance of doubt, this Public License does not, and shall not be interpreted to, reduce, limit, restrict, or impose conditions on any use of the Licensed Material that could lawfully be made without permission under this Public License.
b. To the extent possible, if any provision of this Public License is deemed unenforceable, it shall be automatically reformed to the minimum extent necessary to make it enforceable. If the provision cannot be reformed, it shall be severed from this Public License without affecting the enforceability of the remaining terms and conditions.
c. No term or condition of this Public License will be waived and no failure to comply consented to unless expressly agreed to by the Licensor.
d. Nothing in this Public License constitutes or may be interpreted as a limitation upon, or waiver of, any privileges and immunities that apply to the Licensor or You, including from the legal processes of any jurisdiction or authority.
Creative Commons is not a party to its public licenses. Notwithstanding, Creative Commons may elect to apply one of its public licenses to material it publishes and in those instances will be considered the “Licensor.” Except for the limited purpose of indicating that material is shared under a Creative Commons public license or as otherwise permitted by the Creative Commons policies published at creativecommons.org/policies, Creative Commons does not authorize the use of the trademark “Creative Commons” or any other trademark or logo of Creative Commons without its prior written consent including, without limitation, in connection with any unauthorized modifications to any of its public licenses or any other arrangements, understandings, or agreements concerning use of licensed material. For the avoidance of doubt, this paragraph does not form part of the public licenses.
Creative Commons may be contacted at creativecommons.org.
+8
View File
@@ -0,0 +1,8 @@
ISC License:
Copyright (c) 2004-2010 by Internet Systems Consortium, Inc. ("ISC")
Copyright (c) 1995-2003 by Internet Software Consortium
Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.
THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+373
View File
@@ -0,0 +1,373 @@
Mozilla Public License Version 2.0
==================================
1. Definitions
--------------
1.1. "Contributor"
means each individual or legal entity that creates, contributes to
the creation of, or owns Covered Software.
1.2. "Contributor Version"
means the combination of the Contributions of others (if any) used
by a Contributor and that particular Contributor's Contribution.
1.3. "Contribution"
means Covered Software of a particular Contributor.
1.4. "Covered Software"
means Source Code Form to which the initial Contributor has attached
the notice in Exhibit A, the Executable Form of such Source Code
Form, and Modifications of such Source Code Form, in each case
including portions thereof.
1.5. "Incompatible With Secondary Licenses"
means
(a) that the initial Contributor has attached the notice described
in Exhibit B to the Covered Software; or
(b) that the Covered Software was made available under the terms of
version 1.1 or earlier of the License, but not also under the
terms of a Secondary License.
1.6. "Executable Form"
means any form of the work other than Source Code Form.
1.7. "Larger Work"
means a work that combines Covered Software with other material, in
a separate file or files, that is not Covered Software.
1.8. "License"
means this document.
1.9. "Licensable"
means having the right to grant, to the maximum extent possible,
whether at the time of the initial grant or subsequently, any and
all of the rights conveyed by this License.
1.10. "Modifications"
means any of the following:
(a) any file in Source Code Form that results from an addition to,
deletion from, or modification of the contents of Covered
Software; or
(b) any new file in Source Code Form that contains any Covered
Software.
1.11. "Patent Claims" of a Contributor
means any patent claim(s), including without limitation, method,
process, and apparatus claims, in any patent Licensable by such
Contributor that would be infringed, but for the grant of the
License, by the making, using, selling, offering for sale, having
made, import, or transfer of either its Contributions or its
Contributor Version.
1.12. "Secondary License"
means either the GNU General Public License, Version 2.0, the GNU
Lesser General Public License, Version 2.1, the GNU Affero General
Public License, Version 3.0, or any later versions of those
licenses.
1.13. "Source Code Form"
means the form of the work preferred for making modifications.
1.14. "You" (or "Your")
means an individual or a legal entity exercising rights under this
License. For legal entities, "You" includes any entity that
controls, is controlled by, or is under common control with You. For
purposes of this definition, "control" means (a) the power, direct
or indirect, to cause the direction or management of such entity,
whether by contract or otherwise, or (b) ownership of more than
fifty percent (50%) of the outstanding shares or beneficial
ownership of such entity.
2. License Grants and Conditions
--------------------------------
2.1. Grants
Each Contributor hereby grants You a world-wide, royalty-free,
non-exclusive license:
(a) under intellectual property rights (other than patent or trademark)
Licensable by such Contributor to use, reproduce, make available,
modify, display, perform, distribute, and otherwise exploit its
Contributions, either on an unmodified basis, with Modifications, or
as part of a Larger Work; and
(b) under Patent Claims of such Contributor to make, use, sell, offer
for sale, have made, import, and otherwise transfer either its
Contributions or its Contributor Version.
2.2. Effective Date
The licenses granted in Section 2.1 with respect to any Contribution
become effective for each Contribution on the date the Contributor first
distributes such Contribution.
2.3. Limitations on Grant Scope
The licenses granted in this Section 2 are the only rights granted under
this License. No additional rights or licenses will be implied from the
distribution or licensing of Covered Software under this License.
Notwithstanding Section 2.1(b) above, no patent license is granted by a
Contributor:
(a) for any code that a Contributor has removed from Covered Software;
or
(b) for infringements caused by: (i) Your and any other third party's
modifications of Covered Software, or (ii) the combination of its
Contributions with other software (except as part of its Contributor
Version); or
(c) under Patent Claims infringed by Covered Software in the absence of
its Contributions.
This License does not grant any rights in the trademarks, service marks,
or logos of any Contributor (except as may be necessary to comply with
the notice requirements in Section 3.4).
2.4. Subsequent Licenses
No Contributor makes additional grants as a result of Your choice to
distribute the Covered Software under a subsequent version of this
License (see Section 10.2) or under the terms of a Secondary License (if
permitted under the terms of Section 3.3).
2.5. Representation
Each Contributor represents that the Contributor believes its
Contributions are its original creation(s) or it has sufficient rights
to grant the rights to its Contributions conveyed by this License.
2.6. Fair Use
This License is not intended to limit any rights You have under
applicable copyright doctrines of fair use, fair dealing, or other
equivalents.
2.7. Conditions
Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted
in Section 2.1.
3. Responsibilities
-------------------
3.1. Distribution of Source Form
All distribution of Covered Software in Source Code Form, including any
Modifications that You create or to which You contribute, must be under
the terms of this License. You must inform recipients that the Source
Code Form of the Covered Software is governed by the terms of this
License, and how they can obtain a copy of this License. You may not
attempt to alter or restrict the recipients' rights in the Source Code
Form.
3.2. Distribution of Executable Form
If You distribute Covered Software in Executable Form then:
(a) such Covered Software must also be made available in Source Code
Form, as described in Section 3.1, and You must inform recipients of
the Executable Form how they can obtain a copy of such Source Code
Form by reasonable means in a timely manner, at a charge no more
than the cost of distribution to the recipient; and
(b) You may distribute such Executable Form under the terms of this
License, or sublicense it under different terms, provided that the
license for the Executable Form does not attempt to limit or alter
the recipients' rights in the Source Code Form under this License.
3.3. Distribution of a Larger Work
You may create and distribute a Larger Work under terms of Your choice,
provided that You also comply with the requirements of this License for
the Covered Software. If the Larger Work is a combination of Covered
Software with a work governed by one or more Secondary Licenses, and the
Covered Software is not Incompatible With Secondary Licenses, this
License permits You to additionally distribute such Covered Software
under the terms of such Secondary License(s), so that the recipient of
the Larger Work may, at their option, further distribute the Covered
Software under the terms of either this License or such Secondary
License(s).
3.4. Notices
You may not remove or alter the substance of any license notices
(including copyright notices, patent notices, disclaimers of warranty,
or limitations of liability) contained within the Source Code Form of
the Covered Software, except that You may alter any license notices to
the extent required to remedy known factual inaccuracies.
3.5. Application of Additional Terms
You may choose to offer, and to charge a fee for, warranty, support,
indemnity or liability obligations to one or more recipients of Covered
Software. However, You may do so only on Your own behalf, and not on
behalf of any Contributor. You must make it absolutely clear that any
such warranty, support, indemnity, or liability obligation is offered by
You alone, and You hereby agree to indemnify every Contributor for any
liability incurred by such Contributor as a result of warranty, support,
indemnity or liability terms You offer. You may include additional
disclaimers of warranty and limitations of liability specific to any
jurisdiction.
4. Inability to Comply Due to Statute or Regulation
---------------------------------------------------
If it is impossible for You to comply with any of the terms of this
License with respect to some or all of the Covered Software due to
statute, judicial order, or regulation then You must: (a) comply with
the terms of this License to the maximum extent possible; and (b)
describe the limitations and the code they affect. Such description must
be placed in a text file included with all distributions of the Covered
Software under this License. Except to the extent prohibited by statute
or regulation, such description must be sufficiently detailed for a
recipient of ordinary skill to be able to understand it.
5. Termination
--------------
5.1. The rights granted under this License will terminate automatically
if You fail to comply with any of its terms. However, if You become
compliant, then the rights granted under this License from a particular
Contributor are reinstated (a) provisionally, unless and until such
Contributor explicitly and finally terminates Your grants, and (b) on an
ongoing basis, if such Contributor fails to notify You of the
non-compliance by some reasonable means prior to 60 days after You have
come back into compliance. Moreover, Your grants from a particular
Contributor are reinstated on an ongoing basis if such Contributor
notifies You of the non-compliance by some reasonable means, this is the
first time You have received notice of non-compliance with this License
from such Contributor, and You become compliant prior to 30 days after
Your receipt of the notice.
5.2. If You initiate litigation against any entity by asserting a patent
infringement claim (excluding declaratory judgment actions,
counter-claims, and cross-claims) alleging that a Contributor Version
directly or indirectly infringes any patent, then the rights granted to
You by any and all Contributors for the Covered Software under Section
2.1 of this License shall terminate.
5.3. In the event of termination under Sections 5.1 or 5.2 above, all
end user license agreements (excluding distributors and resellers) which
have been validly granted by You or Your distributors under this License
prior to termination shall survive termination.
************************************************************************
* *
* 6. Disclaimer of Warranty *
* ------------------------- *
* *
* Covered Software is provided under this License on an "as is" *
* basis, without warranty of any kind, either expressed, implied, or *
* statutory, including, without limitation, warranties that the *
* Covered Software is free of defects, merchantable, fit for a *
* particular purpose or non-infringing. The entire risk as to the *
* quality and performance of the Covered Software is with You. *
* Should any Covered Software prove defective in any respect, You *
* (not any Contributor) assume the cost of any necessary servicing, *
* repair, or correction. This disclaimer of warranty constitutes an *
* essential part of this License. No use of any Covered Software is *
* authorized under this License except under this disclaimer. *
* *
************************************************************************
************************************************************************
* *
* 7. Limitation of Liability *
* -------------------------- *
* *
* Under no circumstances and under no legal theory, whether tort *
* (including negligence), contract, or otherwise, shall any *
* Contributor, or anyone who distributes Covered Software as *
* permitted above, be liable to You for any direct, indirect, *
* special, incidental, or consequential damages of any character *
* including, without limitation, damages for lost profits, loss of *
* goodwill, work stoppage, computer failure or malfunction, or any *
* and all other commercial damages or losses, even if such party *
* shall have been informed of the possibility of such damages. This *
* limitation of liability shall not apply to liability for death or *
* personal injury resulting from such party's negligence to the *
* extent applicable law prohibits such limitation. Some *
* jurisdictions do not allow the exclusion or limitation of *
* incidental or consequential damages, so this exclusion and *
* limitation may not apply to You. *
* *
************************************************************************
8. Litigation
-------------
Any litigation relating to this License may be brought only in the
courts of a jurisdiction where the defendant maintains its principal
place of business and such litigation shall be governed by laws of that
jurisdiction, without reference to its conflict-of-law provisions.
Nothing in this Section shall prevent a party's ability to bring
cross-claims or counter-claims.
9. Miscellaneous
----------------
This License represents the complete agreement concerning the subject
matter hereof. If any provision of this License is held to be
unenforceable, such provision shall be reformed only to the extent
necessary to make it enforceable. Any law or regulation which provides
that the language of a contract shall be construed against the drafter
shall not be used to construe this License against a Contributor.
10. Versions of the License
---------------------------
10.1. New Versions
Mozilla Foundation is the license steward. Except as provided in Section
10.3, no one other than the license steward has the right to modify or
publish new versions of this License. Each version will be given a
distinguishing version number.
10.2. Effect of New Versions
You may distribute the Covered Software under the terms of the version
of the License under which You originally received the Covered Software,
or under the terms of any subsequent version published by the license
steward.
10.3. Modified Versions
If you create software not governed by this License, and you want to
create a new license for such software, you may create and use a
modified version of this License if you rename the license and remove
any references to the name of the license steward (except to note that
such modified license differs from this License).
10.4. Distributing Source Code Form that is Incompatible With Secondary
Licenses
If You choose to distribute Source Code Form that is Incompatible With
Secondary Licenses under the terms of this version of the License, the
notice described in Exhibit B of this License must be attached.
Exhibit A - Source Code Form License Notice
-------------------------------------------
This Source Code Form is subject to the terms of the Mozilla Public
License, v. 2.0. If a copy of the MPL was not distributed with this
file, You can obtain one at https://mozilla.org/MPL/2.0/.
If it is not possible or desirable to put the notice in a particular
file, then You may include the notice in a location (such as a LICENSE
file in a relevant directory) where a recipient would be likely to look
for such a notice.
You may add additional accurate notices of copyright ownership.
Exhibit B - "Incompatible With Secondary Licenses" Notice
---------------------------------------------------------
This Source Code Form is "Incompatible With Secondary Licenses", as
defined by the Mozilla Public License, v. 2.0.
+1
View File
@@ -4,6 +4,7 @@
- SPDX-License-Identifier: AGPL-3.0-or-later
-->
# Nextcloud Server ☁
[![REUSE status](https://api.reuse.software/badge/github.com/nextcloud/server)](https://api.reuse.software/info/github.com/nextcloud/server)
[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/nextcloud/server/badges/quality-score.png?b=master)](https://scrutinizer-ci.com/g/nextcloud/server/?branch=master)
[![codecov](https://codecov.io/gh/nextcloud/server/branch/master/graph/badge.svg)](https://codecov.io/gh/nextcloud/server)
[![CII Best Practices](https://bestpractices.coreinfrastructure.org/projects/209/badge)](https://bestpractices.coreinfrastructure.org/projects/209)
+8
View File
@@ -3,6 +3,14 @@
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
export default {
interceptors: {
response: {
use: () => {},
},
request: {
use: () => {},
},
},
get: async () => ({ status: 200, data: {} }),
delete: async () => ({ status: 200, data: {} }),
post: async () => ({ status: 200, data: {} }),
+1 -1
View File
@@ -2,6 +2,6 @@ OC.L10N.register(
"admin_audit",
{
"Auditing / Logging" : "Iniúchóireacht / Logáil",
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions." : "Soláthraíonn sé cumais logála do Nextcloud cosúil le logáil isteach rochtain comhaid nó gníomhartha íogaire eile."
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions." : "Soláthraíonn sé cumais logála do Nextcloud, cosúil le rochtain ar chomhaid nó gníomhartha íogaire eile a logáil."
},
"nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);");
+1 -1
View File
@@ -1,5 +1,5 @@
{ "translations": {
"Auditing / Logging" : "Iniúchóireacht / Logáil",
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions." : "Soláthraíonn sé cumais logála do Nextcloud cosúil le logáil isteach rochtain comhaid nó gníomhartha íogaire eile."
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions." : "Soláthraíonn sé cumais logála do Nextcloud, cosúil le rochtain ar chomhaid nó gníomhartha íogaire eile a logáil."
},"pluralForm" :"nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);"
}
+25 -4
View File
@@ -8,6 +8,7 @@ declare(strict_types=1);
namespace OCA\AdminAudit\Actions;
use OCP\Files\Events\Node\BeforeNodeReadEvent;
use OCP\Files\Events\Node\BeforeNodeRenamedEvent;
use OCP\Files\Events\Node\BeforeNodeWrittenEvent;
use OCP\Files\Events\Node\NodeCopiedEvent;
use OCP\Files\Events\Node\NodeCreatedEvent;
@@ -25,6 +26,8 @@ use Psr\Log\LoggerInterface;
* @package OCA\AdminAudit\Actions
*/
class Files extends Action {
private array $renamedNodes = [];
/**
* Logs file read actions
*
@@ -52,16 +55,33 @@ class Files extends Action {
/**
* Logs rename actions of files
*
* @param NodeRenamedEvent $event
* @param BeforeNodeRenamedEvent $event
*/
public function rename(NodeRenamedEvent $event): void {
public function beforeRename(BeforeNodeRenamedEvent $event): void {
try {
$source = $event->getSource();
$this->renamedNodes[$source->getId()] = $source;
} catch (InvalidPathException|NotFoundException $e) {
\OCP\Server::get(LoggerInterface::class)->error(
"Exception thrown in file rename: ".$e->getMessage(), ['app' => 'admin_audit', 'exception' => $e]
);
return;
}
}
/**
* Logs rename actions of files
*
* @param NodeRenamedEvent $event
*/
public function afterRename(NodeRenamedEvent $event): void {
try {
$target = $event->getTarget();
$originalSource = $this->renamedNodes[$target->getId()];
$params = [
'newid' => $target->getId(),
'oldpath' => mb_substr($source->getPath(), 5),
'newpath' => mb_substr($target->getPath(), 5),
'oldpath' => mb_substr($originalSource->getInternalPath(), 5),
'newpath' => mb_substr($target->getInternalPath(), 5),
];
} catch (InvalidPathException|NotFoundException $e) {
\OCP\Server::get(LoggerInterface::class)->error(
@@ -77,6 +97,7 @@ class Files extends Action {
);
}
/**
* Logs creation of files
*
+9 -1
View File
@@ -32,6 +32,7 @@ use OCP\Authentication\TwoFactorAuth\TwoFactorProviderChallengePassed;
use OCP\Console\ConsoleEvent;
use OCP\EventDispatcher\IEventDispatcher;
use OCP\Files\Events\Node\BeforeNodeReadEvent;
use OCP\Files\Events\Node\BeforeNodeRenamedEvent;
use OCP\Files\Events\Node\BeforeNodeWrittenEvent;
use OCP\Files\Events\Node\NodeCopiedEvent;
use OCP\Files\Events\Node\NodeCreatedEvent;
@@ -179,10 +180,17 @@ class Application extends App implements IBootstrap {
}
);
$eventDispatcher->addListener(
BeforeNodeRenamedEvent::class,
function (BeforeNodeRenamedEvent $event) use ($fileActions) {
$fileActions->beforeRename($event);
}
);
$eventDispatcher->addListener(
NodeRenamedEvent::class,
function (NodeRenamedEvent $event) use ($fileActions) {
$fileActions->rename($event);
$fileActions->afterRename($event);
}
);
+121 -136
View File
@@ -151,107 +151,93 @@
"basic_auth": []
}
],
"parameters": [
{
"name": "shareWith",
"in": "query",
"description": "The user who the share will be shared with",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "name",
"in": "query",
"description": "The resource name (e.g. document.odt)",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "description",
"in": "query",
"description": "Share description",
"schema": {
"type": "string",
"nullable": true
}
},
{
"name": "providerId",
"in": "query",
"description": "Resource UID on the provider side",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "owner",
"in": "query",
"description": "Provider specific UID of the user who owns the resource",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "ownerDisplayName",
"in": "query",
"description": "Display name of the user who shared the item",
"schema": {
"type": "string",
"nullable": true
}
},
{
"name": "sharedBy",
"in": "query",
"description": "Provider specific UID of the user who shared the resource",
"schema": {
"type": "string",
"nullable": true
}
},
{
"name": "sharedByDisplayName",
"in": "query",
"description": "Display name of the user who shared the resource",
"schema": {
"type": "string",
"nullable": true
}
},
{
"name": "protocol",
"in": "query",
"description": "e,.g. ['name' => 'webdav', 'options' => ['username' => 'john', 'permissions' => 31]]",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "shareType",
"in": "query",
"description": "'group' or 'user' share",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "resourceType",
"in": "query",
"description": "'file', 'calendar',...",
"required": true,
"schema": {
"type": "string"
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"shareWith",
"name",
"providerId",
"owner",
"protocol",
"shareType",
"resourceType"
],
"properties": {
"shareWith": {
"type": "string",
"description": "The user who the share will be shared with"
},
"name": {
"type": "string",
"description": "The resource name (e.g. document.odt)"
},
"description": {
"type": "string",
"nullable": true,
"description": "Share description"
},
"providerId": {
"type": "string",
"description": "Resource UID on the provider side"
},
"owner": {
"type": "string",
"description": "Provider specific UID of the user who owns the resource"
},
"ownerDisplayName": {
"type": "string",
"nullable": true,
"description": "Display name of the user who shared the item"
},
"sharedBy": {
"type": "string",
"nullable": true,
"description": "Provider specific UID of the user who shared the resource"
},
"sharedByDisplayName": {
"type": "string",
"nullable": true,
"description": "Display name of the user who shared the resource"
},
"protocol": {
"type": "object",
"description": "e,.g. ['name' => 'webdav', 'options' => ['username' => 'john', 'permissions' => 31]]",
"required": [
"name",
"options"
],
"properties": {
"name": {
"type": "array",
"items": {
"type": "string"
}
},
"options": {
"type": "object",
"additionalProperties": {
"type": "object"
}
}
}
},
"shareType": {
"type": "string",
"description": "'group' or 'user' share"
},
"resourceType": {
"type": "string",
"description": "'file', 'calendar',..."
}
}
}
}
}
],
},
"responses": {
"201": {
"description": "The notification was successfully received. The display name of the recipient might be returned in the body",
@@ -302,44 +288,43 @@
"basic_auth": []
}
],
"parameters": [
{
"name": "notificationType",
"in": "query",
"description": "Notification type, e.g. SHARE_ACCEPTED",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "resourceType",
"in": "query",
"description": "calendar, file, contact,...",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "providerId",
"in": "query",
"description": "ID of the share",
"schema": {
"type": "string",
"nullable": true
}
},
{
"name": "notification",
"in": "query",
"description": "The actual payload of the notification",
"schema": {
"type": "string",
"nullable": true
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"notificationType",
"resourceType"
],
"properties": {
"notificationType": {
"type": "string",
"description": "Notification type, e.g. SHARE_ACCEPTED"
},
"resourceType": {
"type": "string",
"description": "calendar, file, contact,..."
},
"providerId": {
"type": "string",
"nullable": true,
"description": "ID of the share"
},
"notification": {
"type": "object",
"nullable": true,
"description": "The actual payload of the notification",
"additionalProperties": {
"type": "object"
}
}
}
}
}
}
],
},
"responses": {
"201": {
"description": "The notification was successfully received",
@@ -394,4 +379,4 @@
"description": "Open-Cloud-Mesh-API"
}
]
}
}
@@ -15,8 +15,8 @@ return array(
'OCA\\Comments\\Capabilities' => $baseDir . '/../lib/Capabilities.php',
'OCA\\Comments\\Collaboration\\CommentersSorter' => $baseDir . '/../lib/Collaboration/CommentersSorter.php',
'OCA\\Comments\\Controller\\NotificationsController' => $baseDir . '/../lib/Controller/NotificationsController.php',
'OCA\\Comments\\EventHandler' => $baseDir . '/../lib/EventHandler.php',
'OCA\\Comments\\Listener\\CommentsEntityEventListener' => $baseDir . '/../lib/Listener/CommentsEntityEventListener.php',
'OCA\\Comments\\Listener\\CommentsEventListener' => $baseDir . '/../lib/Listener/CommentsEventListener.php',
'OCA\\Comments\\Listener\\LoadAdditionalScripts' => $baseDir . '/../lib/Listener/LoadAdditionalScripts.php',
'OCA\\Comments\\Listener\\LoadSidebarScripts' => $baseDir . '/../lib/Listener/LoadSidebarScripts.php',
'OCA\\Comments\\MaxAutoCompleteResultsInitialState' => $baseDir . '/../lib/MaxAutoCompleteResultsInitialState.php',
@@ -30,8 +30,8 @@ class ComposerStaticInitComments
'OCA\\Comments\\Capabilities' => __DIR__ . '/..' . '/../lib/Capabilities.php',
'OCA\\Comments\\Collaboration\\CommentersSorter' => __DIR__ . '/..' . '/../lib/Collaboration/CommentersSorter.php',
'OCA\\Comments\\Controller\\NotificationsController' => __DIR__ . '/..' . '/../lib/Controller/NotificationsController.php',
'OCA\\Comments\\EventHandler' => __DIR__ . '/..' . '/../lib/EventHandler.php',
'OCA\\Comments\\Listener\\CommentsEntityEventListener' => __DIR__ . '/..' . '/../lib/Listener/CommentsEntityEventListener.php',
'OCA\\Comments\\Listener\\CommentsEventListener' => __DIR__ . '/..' . '/../lib/Listener/CommentsEventListener.php',
'OCA\\Comments\\Listener\\LoadAdditionalScripts' => __DIR__ . '/..' . '/../lib/Listener/LoadAdditionalScripts.php',
'OCA\\Comments\\Listener\\LoadSidebarScripts' => __DIR__ . '/..' . '/../lib/Listener/LoadSidebarScripts.php',
'OCA\\Comments\\MaxAutoCompleteResultsInitialState' => __DIR__ . '/..' . '/../lib/MaxAutoCompleteResultsInitialState.php',
+7 -12
View File
@@ -5,10 +5,9 @@
*/
namespace OCA\Comments\AppInfo;
use Closure;
use OCA\Comments\Capabilities;
use OCA\Comments\EventHandler;
use OCA\Comments\Listener\CommentsEntityEventListener;
use OCA\Comments\Listener\CommentsEventListener;
use OCA\Comments\Listener\LoadAdditionalScripts;
use OCA\Comments\Listener\LoadSidebarScripts;
use OCA\Comments\MaxAutoCompleteResultsInitialState;
@@ -22,9 +21,8 @@ use OCP\AppFramework\Bootstrap\IBootContext;
use OCP\AppFramework\Bootstrap\IBootstrap;
use OCP\AppFramework\Bootstrap\IRegistrationContext;
use OCP\Comments\CommentsEntityEvent;
use OCP\Comments\ICommentsManager;
use OCP\Comments\CommentsEvent;
use OCP\ISearch;
use OCP\IServerContainer;
class Application extends App implements IBootstrap {
public const APP_ID = 'comments';
@@ -48,6 +46,11 @@ class Application extends App implements IBootstrap {
CommentsEntityEvent::class,
CommentsEntityEventListener::class
);
$context->registerEventListener(
CommentsEvent::class,
CommentsEventListener::class,
);
$context->registerSearchProvider(CommentsSearchProvider::class);
$context->registerInitialStateProvider(MaxAutoCompleteResultsInitialState::class);
@@ -56,14 +59,6 @@ class Application extends App implements IBootstrap {
}
public function boot(IBootContext $context): void {
$context->injectFn(Closure::fromCallable([$this, 'registerCommentsEventHandler']));
$context->getServerContainer()->get(ISearch::class)->registerProvider(LegacyProvider::class, ['apps' => ['files']]);
}
protected function registerCommentsEventHandler(IServerContainer $container): void {
$container->get(ICommentsManager::class)->registerEventHandler(function (): EventHandler {
return $this->getContainer()->get(EventHandler::class);
});
}
}
@@ -1,28 +1,34 @@
<?php
declare(strict_types=1);
/**
* SPDX-FileCopyrightText: 2016 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
namespace OCA\Comments;
namespace OCA\Comments\Listener;
use OCA\Comments\Activity\Listener as ActivityListener;
use OCA\Comments\Notification\Listener as NotificationListener;
use OCP\Comments\CommentsEvent;
use OCP\Comments\ICommentsEventHandler;
use OCP\EventDispatcher\Event;
use OCP\EventDispatcher\IEventListener;
/**
* Class EventHandler
*
* @package OCA\Comments
*/
class EventHandler implements ICommentsEventHandler {
/** @template-implements IEventListener<CommentsEvent|Event> */
class CommentsEventListener implements IEventListener {
public function __construct(
private ActivityListener $activityListener,
private NotificationListener $notificationListener,
) {
}
public function handle(CommentsEvent $event): void {
public function handle(Event $event): void {
if (!$event instanceof CommentsEvent) {
return;
}
if ($event->getComment()->getObjectType() !== 'files') {
// this is a 'files'-specific Handler
return;
+6 -5
View File
@@ -17,6 +17,7 @@ use OCP\L10N\IFactory;
use OCP\Notification\AlreadyProcessedException;
use OCP\Notification\INotification;
use OCP\Notification\INotifier;
use OCP\Notification\UnknownNotificationException;
class Notifier implements INotifier {
public function __construct(
@@ -52,19 +53,19 @@ class Notifier implements INotifier {
* @param INotification $notification
* @param string $languageCode The code of the language that should be used to prepare the notification
* @return INotification
* @throws \InvalidArgumentException When the notification was not prepared by a notifier
* @throws UnknownNotificationException When the notification was not prepared by a notifier
* @throws AlreadyProcessedException When the notification is not needed anymore and should be deleted
* @since 9.0.0
*/
public function prepare(INotification $notification, string $languageCode): INotification {
if ($notification->getApp() !== 'comments') {
throw new \InvalidArgumentException();
throw new UnknownNotificationException();
}
try {
$comment = $this->commentsManager->get($notification->getObjectId());
} catch (NotFoundException $e) {
// needs to be converted to InvalidArgumentException, otherwise none Notifications will be shown at all
throw new \InvalidArgumentException('Comment not found', 0, $e);
throw new UnknownNotificationException('Comment not found', 0, $e);
}
$l = $this->l10nFactory->get('comments', $languageCode);
$displayName = $comment->getActorId();
@@ -80,7 +81,7 @@ class Notifier implements INotifier {
case 'mention':
$parameters = $notification->getSubjectParameters();
if ($parameters[0] !== 'files') {
throw new \InvalidArgumentException('Unsupported comment object');
throw new UnknownNotificationException('Unsupported comment object');
}
$userFolder = $this->rootFolder->getUserFolder($notification->getUser());
$nodes = $userFolder->getById((int)$parameters[1]);
@@ -128,7 +129,7 @@ class Notifier implements INotifier {
break;
default:
throw new \InvalidArgumentException('Invalid subject');
throw new UnknownNotificationException('Invalid subject');
}
}
+1 -1
View File
@@ -43,4 +43,4 @@
},
"paths": {},
"tags": []
}
}
@@ -6,14 +6,14 @@
namespace OCA\Comments\Tests\Unit\Notification;
use OCA\Comments\Activity\Listener as ActivityListener;
use OCA\Comments\EventHandler;
use OCA\Comments\Listener\CommentsEventListener;
use OCA\Comments\Notification\Listener as NotificationListener;
use OCP\Comments\CommentsEvent;
use OCP\Comments\IComment;
use Test\TestCase;
class EventHandlerTest extends TestCase {
/** @var EventHandler */
/** @var CommentsEventListener */
protected $eventHandler;
/** @var ActivityListener|\PHPUnit\Framework\MockObject\MockObject */
@@ -33,7 +33,7 @@ class EventHandlerTest extends TestCase {
->disableOriginalConstructor()
->getMock();
$this->eventHandler = new EventHandler($this->activityListener, $this->notificationListener);
$this->eventHandler = new CommentsEventListener($this->activityListener, $this->notificationListener);
}
public function testNotFiles() {
@@ -16,7 +16,9 @@ use OCP\IL10N;
use OCP\IURLGenerator;
use OCP\IUserManager;
use OCP\L10N\IFactory;
use OCP\Notification\AlreadyProcessedException;
use OCP\Notification\INotification;
use OCP\Notification\UnknownNotificationException;
use PHPUnit\Framework\MockObject\MockObject;
use Test\TestCase;
@@ -304,7 +306,7 @@ class NotifierTest extends TestCase {
public function testPrepareDifferentApp() {
$this->expectException(\InvalidArgumentException::class);
$this->expectException(UnknownNotificationException::class);
$this->folder
->expects($this->never())
@@ -341,7 +343,7 @@ class NotifierTest extends TestCase {
public function testPrepareNotFound() {
$this->expectException(\InvalidArgumentException::class);
$this->expectException(UnknownNotificationException::class);
$this->folder
->expects($this->never())
@@ -379,7 +381,7 @@ class NotifierTest extends TestCase {
public function testPrepareDifferentSubject() {
$this->expectException(\InvalidArgumentException::class);
$this->expectException(UnknownNotificationException::class);
$displayName = 'Huraga';
@@ -436,7 +438,7 @@ class NotifierTest extends TestCase {
public function testPrepareNotFiles() {
$this->expectException(\InvalidArgumentException::class);
$this->expectException(UnknownNotificationException::class);
$displayName = 'Huraga';
@@ -494,7 +496,7 @@ class NotifierTest extends TestCase {
public function testPrepareUnresolvableFileID() {
$this->expectException(\OCP\Notification\AlreadyProcessedException::class);
$this->expectException(AlreadyProcessedException::class);
$displayName = 'Huraga';
@@ -0,0 +1,3 @@
SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors
SPDX-License-Identifier: AGPL-3.0-or-later
+1 -1
View File
@@ -1 +1 @@
<svg width="16" height="16" version="1.1" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg"><path d="m7.9062 1a7 7 0 0 0-6.9062 7 7 7 0 0 0 7 7 7 7 0 0 0 7-7 7 7 0 0 0-7-7 7 7 0 0 0-0.09375 0zm0.09375 2.6992a4.3 4.3 0 0 1 4.3008 4.3008 4.3 4.3 0 0 1-4.3008 4.3008 4.3 4.3 0 0 1-4.3008-4.3008 4.3 4.3 0 0 1 4.3008-4.3008z" fill="#fff" stroke-dashoffset="10" stroke-linecap="round" stroke-linejoin="round" stroke-width=".5" style="paint-order:markers stroke fill"/></svg>
<svg xmlns="http://www.w3.org/2000/svg" height="20px" viewBox="0 -960 960 960" width="20px" fill="#fff"><path d="M528-624v-192h288v192H528ZM144-432v-384h288v384H144Zm384 288v-384h288v384H528Zm-384 0v-192h288v192H144Z"/></svg>

Before

Width:  |  Height:  |  Size: 475 B

After

Width:  |  Height:  |  Size: 225 B

+4
View File
@@ -0,0 +1,4 @@
SPDX-FileCopyrightText: 2018-2024 Google LLC
SPDX-License-Identifier: Apache-2.0
Source: Material Symbols icon "dashboard"
+113 -85
View File
@@ -187,39 +187,43 @@
"basic_auth": []
}
],
"parameters": [
{
"name": "sinceIds",
"in": "query",
"description": "Array indexed by widget Ids, contains date/id from which we want the new items",
"schema": {
"type": "string"
}
},
{
"name": "limit",
"in": "query",
"description": "Limit number of result items per widget",
"schema": {
"type": "integer",
"format": "int64",
"default": 7,
"minimum": 1,
"maximum": 30
}
},
{
"name": "widgets[]",
"in": "query",
"description": "Limit results to specific widgets",
"schema": {
"type": "array",
"default": [],
"items": {
"type": "string"
"requestBody": {
"required": false,
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"sinceIds": {
"type": "object",
"default": [],
"description": "Array indexed by widget Ids, contains date/id from which we want the new items",
"additionalProperties": {
"type": "string"
}
},
"limit": {
"type": "integer",
"format": "int64",
"default": 7,
"description": "Limit number of result items per widget",
"minimum": 1,
"maximum": 30
},
"widgets": {
"type": "array",
"default": [],
"description": "Limit results to specific widgets",
"items": {
"type": "string"
}
}
}
}
}
},
}
},
"parameters": [
{
"name": "OCS-APIRequest",
"in": "header",
@@ -286,39 +290,43 @@
"basic_auth": []
}
],
"parameters": [
{
"name": "sinceIds",
"in": "query",
"description": "Array indexed by widget Ids, contains date/id from which we want the new items",
"schema": {
"type": "string"
}
},
{
"name": "limit",
"in": "query",
"description": "Limit number of result items per widget, not more than 30 are allowed",
"schema": {
"type": "integer",
"format": "int64",
"default": 7,
"minimum": 1,
"maximum": 30
}
},
{
"name": "widgets[]",
"in": "query",
"description": "Limit results to specific widgets",
"schema": {
"type": "array",
"default": [],
"items": {
"type": "string"
"requestBody": {
"required": false,
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"sinceIds": {
"type": "object",
"default": [],
"description": "Array indexed by widget Ids, contains date/id from which we want the new items",
"additionalProperties": {
"type": "string"
}
},
"limit": {
"type": "integer",
"format": "int64",
"default": 7,
"description": "Limit number of result items per widget, not more than 30 are allowed",
"minimum": 1,
"maximum": 30
},
"widgets": {
"type": "array",
"default": [],
"description": "Limit results to specific widgets",
"items": {
"type": "string"
}
}
}
}
}
},
}
},
"parameters": [
{
"name": "OCS-APIRequest",
"in": "header",
@@ -516,19 +524,29 @@
"basic_auth": []
}
],
"parameters": [
{
"name": "layout[]",
"in": "query",
"description": "The new layout",
"required": true,
"schema": {
"type": "array",
"items": {
"type": "string"
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"layout"
],
"properties": {
"layout": {
"type": "array",
"description": "The new layout",
"items": {
"type": "string"
}
}
}
}
}
},
}
},
"parameters": [
{
"name": "OCS-APIRequest",
"in": "header",
@@ -670,19 +688,29 @@
"basic_auth": []
}
],
"parameters": [
{
"name": "statuses[]",
"in": "query",
"description": "The new statuses",
"required": true,
"schema": {
"type": "array",
"items": {
"type": "string"
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"statuses"
],
"properties": {
"statuses": {
"type": "array",
"description": "The new statuses",
"items": {
"type": "string"
}
}
}
}
}
},
}
},
"parameters": [
{
"name": "OCS-APIRequest",
"in": "header",
@@ -741,4 +769,4 @@
}
},
"tags": []
}
}
+1 -1
View File
@@ -506,7 +506,7 @@ export default {
background-color: var(--color-main-background-blur);
-webkit-backdrop-filter: var(--filter-background-blur);
backdrop-filter: var(--filter-background-blur);
border-radius: var(--border-radius-rounded);
border-radius: var(--body-container-radius);
#body-user.theme--highcontrast & {
border: 2px solid var(--color-border);
+1 -1
View File
@@ -10,7 +10,7 @@
<name>WebDAV</name>
<summary>WebDAV endpoint</summary>
<description>WebDAV endpoint</description>
<version>1.31.0</version>
<version>1.31.1</version>
<licence>agpl</licence>
<author>owncloud.org</author>
<namespace>DAV</namespace>
+2
View File
@@ -11,6 +11,7 @@ use OCA\DAV\AppInfo\PluginManager;
use OCA\DAV\CardDAV\AddressBookRoot;
use OCA\DAV\CardDAV\CardDavBackend;
use OCA\DAV\CardDAV\Security\CardDavRateLimitingPlugin;
use OCA\DAV\CardDAV\Validation\CardDavValidatePlugin;
use OCA\DAV\Connector\LegacyDAVACL;
use OCA\DAV\Connector\Sabre\Auth;
use OCA\DAV\Connector\Sabre\ExceptionLoggerPlugin;
@@ -89,6 +90,7 @@ $server->addPlugin(new \OCA\DAV\CardDAV\ImageExportPlugin(new \OCA\DAV\CardDAV\P
)));
$server->addPlugin(new ExceptionLoggerPlugin('carddav', \OC::$server->get(LoggerInterface::class)));
$server->addPlugin(\OCP\Server::get(CardDavRateLimitingPlugin::class));
$server->addPlugin(\OCP\Server::get(CardDavValidatePlugin::class));
// And off we go!
$server->exec();
+8 -7
View File
@@ -72,19 +72,20 @@ $server = $serverFactory->createServer($baseuri, $requestUri, $authPlugin, funct
});
\OC\Files\Filesystem::logWarningWhenAddingStorageWrapper($previousLog);
OC_Util::tearDownFS();
OC_Util::setupFS($owner);
$ownerView = new \OC\Files\View('/'. $owner . '/files');
$path = $ownerView->getPath($fileId);
$fileInfo = $ownerView->getFileInfo($path);
$linkCheckPlugin->setFileInfo($fileInfo);
$rootFolder = \OCP\Server::get(\OCP\Files\IRootFolder::class);
$userFolder = $rootFolder->getUserFolder($owner);
$node = $userFolder->getFirstNodeById($fileId);
if (!$node) {
throw new \Sabre\DAV\Exception\NotFound();
}
$linkCheckPlugin->setFileInfo($node);
// If not readable (files_drop) enable the filesdrop plugin
if (!$isReadable) {
$filesDropPlugin->enable();
}
$view = new \OC\Files\View($ownerView->getAbsolutePath($path));
$view = new \OC\Files\View($node->getPath());
$filesDropPlugin->setView($view);
return $view;
+7 -11
View File
@@ -101,24 +101,20 @@ $server = $serverFactory->createServer($baseuri, $requestUri, $authPlugin, funct
/** @psalm-suppress InternalMethod */
Filesystem::logWarningWhenAddingStorageWrapper($previousLog);
OC_Util::tearDownFS();
OC_Util::setupFS($owner);
$ownerView = new View('/'. $owner . '/files');
$path = $ownerView->getPath($fileId);
$fileInfo = $ownerView->getFileInfo($path);
if ($fileInfo === false) {
$rootFolder = \OCP\Server::get(\OCP\Files\IRootFolder::class);
$userFolder = $rootFolder->getUserFolder($owner);
$node = $userFolder->getFirstNodeById($fileId);
if (!$node) {
throw new NotFound();
}
$linkCheckPlugin->setFileInfo($node);
$linkCheckPlugin->setFileInfo($fileInfo);
// If not readble (files_drop) enable the filesdrop plugin
// If not readable (files_drop) enable the filesdrop plugin
if (!$isReadable) {
$filesDropPlugin->enable();
}
$view = new View($ownerView->getAbsolutePath($path));
$view = new View($node->getPath());
$filesDropPlugin->setView($view);
return $view;
@@ -141,6 +141,7 @@ return array(
'OCA\\DAV\\CardDAV\\SyncService' => $baseDir . '/../lib/CardDAV/SyncService.php',
'OCA\\DAV\\CardDAV\\SystemAddressbook' => $baseDir . '/../lib/CardDAV/SystemAddressbook.php',
'OCA\\DAV\\CardDAV\\UserAddressBooks' => $baseDir . '/../lib/CardDAV/UserAddressBooks.php',
'OCA\\DAV\\CardDAV\\Validation\\CardDavValidatePlugin' => $baseDir . '/../lib/CardDAV/Validation/CardDavValidatePlugin.php',
'OCA\\DAV\\CardDAV\\Xml\\Groups' => $baseDir . '/../lib/CardDAV/Xml/Groups.php',
'OCA\\DAV\\Command\\CreateAddressBook' => $baseDir . '/../lib/Command/CreateAddressBook.php',
'OCA\\DAV\\Command\\CreateCalendar' => $baseDir . '/../lib/Command/CreateCalendar.php',
@@ -271,6 +272,7 @@ return array(
'OCA\\DAV\\Files\\Sharing\\PublicLinkCheckPlugin' => $baseDir . '/../lib/Files/Sharing/PublicLinkCheckPlugin.php',
'OCA\\DAV\\HookManager' => $baseDir . '/../lib/HookManager.php',
'OCA\\DAV\\Listener\\ActivityUpdaterListener' => $baseDir . '/../lib/Listener/ActivityUpdaterListener.php',
'OCA\\DAV\\Listener\\AddMissingIndicesListener' => $baseDir . '/../lib/Listener/AddMissingIndicesListener.php',
'OCA\\DAV\\Listener\\AddressbookListener' => $baseDir . '/../lib/Listener/AddressbookListener.php',
'OCA\\DAV\\Listener\\BirthdayListener' => $baseDir . '/../lib/Listener/BirthdayListener.php',
'OCA\\DAV\\Listener\\CalendarContactInteractionListener' => $baseDir . '/../lib/Listener/CalendarContactInteractionListener.php',
@@ -325,6 +327,7 @@ return array(
'OCA\\DAV\\Migration\\Version1029Date20221114151721' => $baseDir . '/../lib/Migration/Version1029Date20221114151721.php',
'OCA\\DAV\\Migration\\Version1029Date20231004091403' => $baseDir . '/../lib/Migration/Version1029Date20231004091403.php',
'OCA\\DAV\\Migration\\Version1030Date20240205103243' => $baseDir . '/../lib/Migration/Version1030Date20240205103243.php',
'OCA\\DAV\\Migration\\Version1031Date20240610134258' => $baseDir . '/../lib/Migration/Version1031Date20240610134258.php',
'OCA\\DAV\\Profiler\\ProfilerPlugin' => $baseDir . '/../lib/Profiler/ProfilerPlugin.php',
'OCA\\DAV\\Provisioning\\Apple\\AppleProvisioningNode' => $baseDir . '/../lib/Provisioning/Apple/AppleProvisioningNode.php',
'OCA\\DAV\\Provisioning\\Apple\\AppleProvisioningPlugin' => $baseDir . '/../lib/Provisioning/Apple/AppleProvisioningPlugin.php',
@@ -156,6 +156,7 @@ class ComposerStaticInitDAV
'OCA\\DAV\\CardDAV\\SyncService' => __DIR__ . '/..' . '/../lib/CardDAV/SyncService.php',
'OCA\\DAV\\CardDAV\\SystemAddressbook' => __DIR__ . '/..' . '/../lib/CardDAV/SystemAddressbook.php',
'OCA\\DAV\\CardDAV\\UserAddressBooks' => __DIR__ . '/..' . '/../lib/CardDAV/UserAddressBooks.php',
'OCA\\DAV\\CardDAV\\Validation\\CardDavValidatePlugin' => __DIR__ . '/..' . '/../lib/CardDAV/Validation/CardDavValidatePlugin.php',
'OCA\\DAV\\CardDAV\\Xml\\Groups' => __DIR__ . '/..' . '/../lib/CardDAV/Xml/Groups.php',
'OCA\\DAV\\Command\\CreateAddressBook' => __DIR__ . '/..' . '/../lib/Command/CreateAddressBook.php',
'OCA\\DAV\\Command\\CreateCalendar' => __DIR__ . '/..' . '/../lib/Command/CreateCalendar.php',
@@ -286,6 +287,7 @@ class ComposerStaticInitDAV
'OCA\\DAV\\Files\\Sharing\\PublicLinkCheckPlugin' => __DIR__ . '/..' . '/../lib/Files/Sharing/PublicLinkCheckPlugin.php',
'OCA\\DAV\\HookManager' => __DIR__ . '/..' . '/../lib/HookManager.php',
'OCA\\DAV\\Listener\\ActivityUpdaterListener' => __DIR__ . '/..' . '/../lib/Listener/ActivityUpdaterListener.php',
'OCA\\DAV\\Listener\\AddMissingIndicesListener' => __DIR__ . '/..' . '/../lib/Listener/AddMissingIndicesListener.php',
'OCA\\DAV\\Listener\\AddressbookListener' => __DIR__ . '/..' . '/../lib/Listener/AddressbookListener.php',
'OCA\\DAV\\Listener\\BirthdayListener' => __DIR__ . '/..' . '/../lib/Listener/BirthdayListener.php',
'OCA\\DAV\\Listener\\CalendarContactInteractionListener' => __DIR__ . '/..' . '/../lib/Listener/CalendarContactInteractionListener.php',
@@ -340,6 +342,7 @@ class ComposerStaticInitDAV
'OCA\\DAV\\Migration\\Version1029Date20221114151721' => __DIR__ . '/..' . '/../lib/Migration/Version1029Date20221114151721.php',
'OCA\\DAV\\Migration\\Version1029Date20231004091403' => __DIR__ . '/..' . '/../lib/Migration/Version1029Date20231004091403.php',
'OCA\\DAV\\Migration\\Version1030Date20240205103243' => __DIR__ . '/..' . '/../lib/Migration/Version1030Date20240205103243.php',
'OCA\\DAV\\Migration\\Version1031Date20240610134258' => __DIR__ . '/..' . '/../lib/Migration/Version1031Date20240610134258.php',
'OCA\\DAV\\Profiler\\ProfilerPlugin' => __DIR__ . '/..' . '/../lib/Profiler/ProfilerPlugin.php',
'OCA\\DAV\\Provisioning\\Apple\\AppleProvisioningNode' => __DIR__ . '/..' . '/../lib/Provisioning/Apple/AppleProvisioningNode.php',
'OCA\\DAV\\Provisioning\\Apple\\AppleProvisioningPlugin' => __DIR__ . '/..' . '/../lib/Provisioning/Apple/AppleProvisioningPlugin.php',
+6 -2
View File
@@ -133,8 +133,6 @@ OC.L10N.register(
"Encryption not ready: %1$s" : "التشفير غير جاهز: %1$s",
"Failed to open file: %1$s" : "تعذّر فتح الملف: %1$s",
"Failed to unlink: %1$s" : "تعذّر فك الارتباط: %1$s",
"Invalid chunk name" : "اسم كتلة chunk غير صحيح",
"Could not rename part file assembled from chunks" : "تعذّرت إعادة تسمية ملف جزئي مُجمّعٍ من كُتلٍ chunks",
"Failed to write file contents: %1$s" : "إخفاق في كتابة محتويات الملف: %1$s",
"File not found: %1$s" : "ملف غير موجود: %1$s",
"System is in maintenance mode." : "النظام في حالة صيانة.",
@@ -160,6 +158,10 @@ OC.L10N.register(
"WebDAV" : "WebDAV",
"First day" : "أوّل يومٍ",
"Last day (inclusive)" : "آخر يوم (مشمولاً)",
"Out of office replacement (optional)" : "البديل لمن هو خارج المكتب (إختياري)",
"Name of the replacement" : "اسم البديل",
"No results." : "لا نتائج",
"Start typing." : "إبدإٍ الطباعة.",
"Short absence status" : "حالة الغياب القصير",
"Long absence Message" : "رسالة الغياب الطويل",
"Save" : "حفظ",
@@ -210,6 +212,8 @@ OC.L10N.register(
"Your attendance was updated successfully." : "حضورك تم تحديثه بنجاحٍ",
"To-dos" : "قائمة الواجبات",
"Time:" : "الوقت:",
"Invalid chunk name" : "اسم كتلة chunk غير صحيح",
"Could not rename part file assembled from chunks" : "تعذّرت إعادة تسمية ملف جزئي مُجمّعٍ من كُتلٍ chunks",
"If you configure your working hours, other users will see when you are out of office when they book a meeting." : "إذا قمت بتهيئة ساعات العمل الخاصة بك، فسيظهر للمستخدمين الآخرين عندما يحجزون معك موعداً إذا ما كنت في المكتب أو خارجه."
},
"nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;");
+6 -2
View File
@@ -131,8 +131,6 @@
"Encryption not ready: %1$s" : "التشفير غير جاهز: %1$s",
"Failed to open file: %1$s" : "تعذّر فتح الملف: %1$s",
"Failed to unlink: %1$s" : "تعذّر فك الارتباط: %1$s",
"Invalid chunk name" : "اسم كتلة chunk غير صحيح",
"Could not rename part file assembled from chunks" : "تعذّرت إعادة تسمية ملف جزئي مُجمّعٍ من كُتلٍ chunks",
"Failed to write file contents: %1$s" : "إخفاق في كتابة محتويات الملف: %1$s",
"File not found: %1$s" : "ملف غير موجود: %1$s",
"System is in maintenance mode." : "النظام في حالة صيانة.",
@@ -158,6 +156,10 @@
"WebDAV" : "WebDAV",
"First day" : "أوّل يومٍ",
"Last day (inclusive)" : "آخر يوم (مشمولاً)",
"Out of office replacement (optional)" : "البديل لمن هو خارج المكتب (إختياري)",
"Name of the replacement" : "اسم البديل",
"No results." : "لا نتائج",
"Start typing." : "إبدإٍ الطباعة.",
"Short absence status" : "حالة الغياب القصير",
"Long absence Message" : "رسالة الغياب الطويل",
"Save" : "حفظ",
@@ -208,6 +210,8 @@
"Your attendance was updated successfully." : "حضورك تم تحديثه بنجاحٍ",
"To-dos" : "قائمة الواجبات",
"Time:" : "الوقت:",
"Invalid chunk name" : "اسم كتلة chunk غير صحيح",
"Could not rename part file assembled from chunks" : "تعذّرت إعادة تسمية ملف جزئي مُجمّعٍ من كُتلٍ chunks",
"If you configure your working hours, other users will see when you are out of office when they book a meeting." : "إذا قمت بتهيئة ساعات العمل الخاصة بك، فسيظهر للمستخدمين الآخرين عندما يحجزون معك موعداً إذا ما كنت في المكتب أو خارجه."
},"pluralForm" :"nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;"
}
+2 -2
View File
@@ -132,8 +132,6 @@ OC.L10N.register(
"Encryption not ready: %1$s" : "El cifráu nun ta preparáu: %1$s",
"Failed to open file: %1$s" : "Nun se pue abrir el ficheru: %1$s",
"Failed to unlink: %1$s" : "Nun se pue desenllaciar: %1$s",
"Invalid chunk name" : "El nome del cachu ye inválidu",
"Could not rename part file assembled from chunks" : "Nun se pudo renomar el ficheru parcial ensambláu de los cachos",
"Failed to write file contents: %1$s" : "Nun se pue escribir el conteníu nel ficheru: %1$s",
"File not found: %1$s" : "Nun s'atopó'l ficheru: %1$s",
"System is in maintenance mode." : "El sistema ta nel mou de caltenimientu.",
@@ -209,6 +207,8 @@ OC.L10N.register(
"Your attendance was updated successfully." : "La to asistencia anovóse correutamente.",
"To-dos" : "Xeres pendientes",
"Time:" : "Hora:",
"Invalid chunk name" : "El nome del cachu ye inválidu",
"Could not rename part file assembled from chunks" : "Nun se pudo renomar el ficheru parcial ensambláu de los cachos",
"If you configure your working hours, other users will see when you are out of office when they book a meeting." : "Si configures les hores llaborales, los demás usuarios van ver cuando coles de la oficina al acutar una reunión."
},
"nplurals=2; plural=(n != 1);");
+2 -2
View File
@@ -130,8 +130,6 @@
"Encryption not ready: %1$s" : "El cifráu nun ta preparáu: %1$s",
"Failed to open file: %1$s" : "Nun se pue abrir el ficheru: %1$s",
"Failed to unlink: %1$s" : "Nun se pue desenllaciar: %1$s",
"Invalid chunk name" : "El nome del cachu ye inválidu",
"Could not rename part file assembled from chunks" : "Nun se pudo renomar el ficheru parcial ensambláu de los cachos",
"Failed to write file contents: %1$s" : "Nun se pue escribir el conteníu nel ficheru: %1$s",
"File not found: %1$s" : "Nun s'atopó'l ficheru: %1$s",
"System is in maintenance mode." : "El sistema ta nel mou de caltenimientu.",
@@ -207,6 +205,8 @@
"Your attendance was updated successfully." : "La to asistencia anovóse correutamente.",
"To-dos" : "Xeres pendientes",
"Time:" : "Hora:",
"Invalid chunk name" : "El nome del cachu ye inválidu",
"Could not rename part file assembled from chunks" : "Nun se pudo renomar el ficheru parcial ensambláu de los cachos",
"If you configure your working hours, other users will see when you are out of office when they book a meeting." : "Si configures les hores llaborales, los demás usuarios van ver cuando coles de la oficina al acutar una reunión."
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}
+2 -2
View File
@@ -130,8 +130,6 @@ OC.L10N.register(
"Encryption not ready: %1$s" : "Криптирането не е готово: %1$s",
"Failed to open file: %1$s" : "Неуспешно отваряне на файл: %1$s",
"Failed to unlink: %1$s" : "Неуспешно прекратяване на връзката: %1$s",
"Invalid chunk name" : "Невалидно име на блок",
"Could not rename part file assembled from chunks" : "Не можа да се преименува частичен файл, сглобен от блок",
"Failed to write file contents: %1$s" : "Неуспешно записване на съдържанието на файла: %1$s",
"File not found: %1$s" : "Файлът не е намерен: %1$s",
"System is in maintenance mode." : "Системата е в режим на поддръжка.",
@@ -188,6 +186,8 @@ OC.L10N.register(
"Your attendance was updated successfully." : "Вашето присъствие е актуализирано успешно.",
"To-dos" : "Задачи за изпълнение",
"Time:" : "Час:",
"Invalid chunk name" : "Невалидно име на блок",
"Could not rename part file assembled from chunks" : "Не можа да се преименува частичен файл, сглобен от блок",
"If you configure your working hours, other users will see when you are out of office when they book a meeting." : "Ако конфигурирате работното си време, другите потребители ще виждат кога сте извън офиса, при резервиране на среща."
},
"nplurals=2; plural=(n != 1);");
+2 -2
View File
@@ -128,8 +128,6 @@
"Encryption not ready: %1$s" : "Криптирането не е готово: %1$s",
"Failed to open file: %1$s" : "Неуспешно отваряне на файл: %1$s",
"Failed to unlink: %1$s" : "Неуспешно прекратяване на връзката: %1$s",
"Invalid chunk name" : "Невалидно име на блок",
"Could not rename part file assembled from chunks" : "Не можа да се преименува частичен файл, сглобен от блок",
"Failed to write file contents: %1$s" : "Неуспешно записване на съдържанието на файла: %1$s",
"File not found: %1$s" : "Файлът не е намерен: %1$s",
"System is in maintenance mode." : "Системата е в режим на поддръжка.",
@@ -186,6 +184,8 @@
"Your attendance was updated successfully." : "Вашето присъствие е актуализирано успешно.",
"To-dos" : "Задачи за изпълнение",
"Time:" : "Час:",
"Invalid chunk name" : "Невалидно име на блок",
"Could not rename part file assembled from chunks" : "Не можа да се преименува частичен файл, сглобен от блок",
"If you configure your working hours, other users will see when you are out of office when they book a meeting." : "Ако конфигурирате работното си време, другите потребители ще виждат кога сте извън офиса, при резервиране на среща."
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}
+2 -2
View File
@@ -132,8 +132,6 @@ OC.L10N.register(
"Encryption not ready: %1$s" : "El xifratge no està preparat: %1$s",
"Failed to open file: %1$s" : "No s'ha pogut obrir el fitxer: %1$s",
"Failed to unlink: %1$s" : "No s'ha pogut desenllaçar: %1$s",
"Invalid chunk name" : "El nom del fragment no és vàlid",
"Could not rename part file assembled from chunks" : "No s'ha pogut canviar el nom del fitxer de part muntat a partir de fragments",
"Failed to write file contents: %1$s" : "No s'ha pogut escriure el contingut del fitxer: %1$s",
"File not found: %1$s" : "No s'ha trobat el fitxer: %1$s",
"System is in maintenance mode." : "El sistema és en mode de manteniment.",
@@ -209,6 +207,8 @@ OC.L10N.register(
"Your attendance was updated successfully." : "S'ha actualitzat correctament l'assistència.",
"To-dos" : "Tasques pendents",
"Time:" : "Hora:",
"Invalid chunk name" : "El nom del fragment no és vàlid",
"Could not rename part file assembled from chunks" : "No s'ha pogut canviar el nom del fitxer de part muntat a partir de fragments",
"If you configure your working hours, other users will see when you are out of office when they book a meeting." : "Si configureu el vostre horari laboral, la resta d'usuaris veuran quan sou fora de l'oficina quan planifiquin una reunió."
},
"nplurals=2; plural=(n != 1);");
+2 -2
View File
@@ -130,8 +130,6 @@
"Encryption not ready: %1$s" : "El xifratge no està preparat: %1$s",
"Failed to open file: %1$s" : "No s'ha pogut obrir el fitxer: %1$s",
"Failed to unlink: %1$s" : "No s'ha pogut desenllaçar: %1$s",
"Invalid chunk name" : "El nom del fragment no és vàlid",
"Could not rename part file assembled from chunks" : "No s'ha pogut canviar el nom del fitxer de part muntat a partir de fragments",
"Failed to write file contents: %1$s" : "No s'ha pogut escriure el contingut del fitxer: %1$s",
"File not found: %1$s" : "No s'ha trobat el fitxer: %1$s",
"System is in maintenance mode." : "El sistema és en mode de manteniment.",
@@ -207,6 +205,8 @@
"Your attendance was updated successfully." : "S'ha actualitzat correctament l'assistència.",
"To-dos" : "Tasques pendents",
"Time:" : "Hora:",
"Invalid chunk name" : "El nom del fragment no és vàlid",
"Could not rename part file assembled from chunks" : "No s'ha pogut canviar el nom del fitxer de part muntat a partir de fragments",
"If you configure your working hours, other users will see when you are out of office when they book a meeting." : "Si configureu el vostre horari laboral, la resta d'usuaris veuran quan sou fora de l'oficina quan planifiquin una reunió."
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}
+2 -2
View File
@@ -132,8 +132,6 @@ OC.L10N.register(
"Encryption not ready: %1$s" : "Šifrování není připraveno: %1$s",
"Failed to open file: %1$s" : "Nepodařilo se otevřít soubor: %1$s",
"Failed to unlink: %1$s" : "Nepodařilo se zrušit propojení: %1$s",
"Invalid chunk name" : "Neplatný název pro shluk (chunk)",
"Could not rename part file assembled from chunks" : "Nedaří se přejmenovat částečný soubor složený ze shluků",
"Failed to write file contents: %1$s" : "Nepodařilo se zapsat obsahy souborů: %1$s",
"File not found: %1$s" : "Soubor nenalezen: %1$s",
"System is in maintenance mode." : "Systém se právě nachází v režimu údržby.",
@@ -205,6 +203,8 @@ OC.L10N.register(
"Your attendance was updated successfully." : "Vaše účast byla úspěšně aktualizována.",
"To-dos" : "Zbývá udělat",
"Time:" : "Čas:",
"Invalid chunk name" : "Neplatný název pro shluk (chunk)",
"Could not rename part file assembled from chunks" : "Nedaří se přejmenovat částečný soubor složený ze shluků",
"If you configure your working hours, other users will see when you are out of office when they book a meeting." : "Když sem zadáte svou pracovní dobu, ostatní uživatelé při rezervování schůzky uvidí, kdy jste mimo kancelář."
},
"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;");
+2 -2
View File
@@ -130,8 +130,6 @@
"Encryption not ready: %1$s" : "Šifrování není připraveno: %1$s",
"Failed to open file: %1$s" : "Nepodařilo se otevřít soubor: %1$s",
"Failed to unlink: %1$s" : "Nepodařilo se zrušit propojení: %1$s",
"Invalid chunk name" : "Neplatný název pro shluk (chunk)",
"Could not rename part file assembled from chunks" : "Nedaří se přejmenovat částečný soubor složený ze shluků",
"Failed to write file contents: %1$s" : "Nepodařilo se zapsat obsahy souborů: %1$s",
"File not found: %1$s" : "Soubor nenalezen: %1$s",
"System is in maintenance mode." : "Systém se právě nachází v režimu údržby.",
@@ -203,6 +201,8 @@
"Your attendance was updated successfully." : "Vaše účast byla úspěšně aktualizována.",
"To-dos" : "Zbývá udělat",
"Time:" : "Čas:",
"Invalid chunk name" : "Neplatný název pro shluk (chunk)",
"Could not rename part file assembled from chunks" : "Nedaří se přejmenovat částečný soubor složený ze shluků",
"If you configure your working hours, other users will see when you are out of office when they book a meeting." : "Když sem zadáte svou pracovní dobu, ostatní uživatelé při rezervování schůzky uvidí, kdy jste mimo kancelář."
},"pluralForm" :"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"
}
+3 -2
View File
@@ -86,6 +86,7 @@ OC.L10N.register(
"Organizer:" : "Arrangør:",
"Attendees:" : "Deltagere:",
"Title:" : "Titel:",
"Date and time:" : "Dato og tid:",
"Location:" : "Sted:",
"Link:" : "Link:",
"Accept" : "Accepter",
@@ -132,8 +133,6 @@ OC.L10N.register(
"Encryption not ready: %1$s" : "Kryptering ikke klar: %1$s",
"Failed to open file: %1$s" : "Kunne ikke åbne fil: %1$s",
"Failed to unlink: %1$s" : "Tilknytningen kunne ikke fjernes: %1$s",
"Invalid chunk name" : "Ugyldigt stykke navn",
"Could not rename part file assembled from chunks" : "Kunne ikke omdøbe delfilen samlet fra stykker",
"Failed to write file contents: %1$s" : "Kunne ikke skrive filindhold: %1$s",
"File not found: %1$s" : "Fil ikke fundet: %1$s",
"System is in maintenance mode." : "Systemet er i vedligeholdelsestilstand.",
@@ -209,6 +208,8 @@ OC.L10N.register(
"Your attendance was updated successfully." : "Dit tilstedeværelse blev opdateret.",
"To-dos" : "Opgaver",
"Time:" : "Tid:",
"Invalid chunk name" : "Ugyldigt stykke navn",
"Could not rename part file assembled from chunks" : "Kunne ikke omdøbe delfilen samlet fra stykker",
"If you configure your working hours, other users will see when you are out of office when they book a meeting." : "Hvis du konfigurerer din arbejdstid, vil andre brugere se, når du er fraværende, når de booker et møde."
},
"nplurals=2; plural=(n != 1);");
+3 -2
View File
@@ -84,6 +84,7 @@
"Organizer:" : "Arrangør:",
"Attendees:" : "Deltagere:",
"Title:" : "Titel:",
"Date and time:" : "Dato og tid:",
"Location:" : "Sted:",
"Link:" : "Link:",
"Accept" : "Accepter",
@@ -130,8 +131,6 @@
"Encryption not ready: %1$s" : "Kryptering ikke klar: %1$s",
"Failed to open file: %1$s" : "Kunne ikke åbne fil: %1$s",
"Failed to unlink: %1$s" : "Tilknytningen kunne ikke fjernes: %1$s",
"Invalid chunk name" : "Ugyldigt stykke navn",
"Could not rename part file assembled from chunks" : "Kunne ikke omdøbe delfilen samlet fra stykker",
"Failed to write file contents: %1$s" : "Kunne ikke skrive filindhold: %1$s",
"File not found: %1$s" : "Fil ikke fundet: %1$s",
"System is in maintenance mode." : "Systemet er i vedligeholdelsestilstand.",
@@ -207,6 +206,8 @@
"Your attendance was updated successfully." : "Dit tilstedeværelse blev opdateret.",
"To-dos" : "Opgaver",
"Time:" : "Tid:",
"Invalid chunk name" : "Ugyldigt stykke navn",
"Could not rename part file assembled from chunks" : "Kunne ikke omdøbe delfilen samlet fra stykker",
"If you configure your working hours, other users will see when you are out of office when they book a meeting." : "Hvis du konfigurerer din arbejdstid, vil andre brugere se, når du er fraværende, når de booker et møde."
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}
+5 -2
View File
@@ -133,8 +133,6 @@ OC.L10N.register(
"Encryption not ready: %1$s" : "Verschlüsselung nicht bereit: %1$s",
"Failed to open file: %1$s" : "Datei konnte nicht geöffnet werden: %1$s",
"Failed to unlink: %1$s" : "Fehler beim Aufheben der Verknüpfung: %1$s",
"Invalid chunk name" : "Ungültiger Chunk-Name",
"Could not rename part file assembled from chunks" : "Aus Chunks zusammengesetzte temporäre Datei konnte nicht umbenannt werden",
"Failed to write file contents: %1$s" : "Fehler beim Schreiben des Dateiinhaltes: %1$s",
"File not found: %1$s" : "Datei nicht gefunden: %1$s",
"System is in maintenance mode." : "Das System befindet sich im Wartungsmodus.",
@@ -160,6 +158,9 @@ OC.L10N.register(
"WebDAV" : "WebDAV",
"First day" : "Erster Tag",
"Last day (inclusive)" : "Letzter Tag (Inklusive)",
"Out of office replacement (optional)" : "Abwesenheitsvertretung (optional)",
"Name of the replacement" : "Name der Vertretung",
"No results." : "Keine Ergebnisse",
"Short absence status" : "Kurze Abwesenheits Meldung",
"Long absence Message" : "Lange Abwesenheits Meldung",
"Save" : "Speichern",
@@ -210,6 +211,8 @@ OC.L10N.register(
"Your attendance was updated successfully." : "Dein Teilnehmerstatus wurde aktualisiert.",
"To-dos" : "Aufgaben",
"Time:" : "Zeit:",
"Invalid chunk name" : "Ungültiger Chunk-Name",
"Could not rename part file assembled from chunks" : "Aus Chunks zusammengesetzte temporäre Datei konnte nicht umbenannt werden",
"If you configure your working hours, other users will see when you are out of office when they book a meeting." : "Wenn du deine Arbeitszeiten konfigurierst, können andere Benutzer sehen, wann du nicht im Büro bist, wenn sie eine Besprechung buchen."
},
"nplurals=2; plural=(n != 1);");
+5 -2
View File
@@ -131,8 +131,6 @@
"Encryption not ready: %1$s" : "Verschlüsselung nicht bereit: %1$s",
"Failed to open file: %1$s" : "Datei konnte nicht geöffnet werden: %1$s",
"Failed to unlink: %1$s" : "Fehler beim Aufheben der Verknüpfung: %1$s",
"Invalid chunk name" : "Ungültiger Chunk-Name",
"Could not rename part file assembled from chunks" : "Aus Chunks zusammengesetzte temporäre Datei konnte nicht umbenannt werden",
"Failed to write file contents: %1$s" : "Fehler beim Schreiben des Dateiinhaltes: %1$s",
"File not found: %1$s" : "Datei nicht gefunden: %1$s",
"System is in maintenance mode." : "Das System befindet sich im Wartungsmodus.",
@@ -158,6 +156,9 @@
"WebDAV" : "WebDAV",
"First day" : "Erster Tag",
"Last day (inclusive)" : "Letzter Tag (Inklusive)",
"Out of office replacement (optional)" : "Abwesenheitsvertretung (optional)",
"Name of the replacement" : "Name der Vertretung",
"No results." : "Keine Ergebnisse",
"Short absence status" : "Kurze Abwesenheits Meldung",
"Long absence Message" : "Lange Abwesenheits Meldung",
"Save" : "Speichern",
@@ -208,6 +209,8 @@
"Your attendance was updated successfully." : "Dein Teilnehmerstatus wurde aktualisiert.",
"To-dos" : "Aufgaben",
"Time:" : "Zeit:",
"Invalid chunk name" : "Ungültiger Chunk-Name",
"Could not rename part file assembled from chunks" : "Aus Chunks zusammengesetzte temporäre Datei konnte nicht umbenannt werden",
"If you configure your working hours, other users will see when you are out of office when they book a meeting." : "Wenn du deine Arbeitszeiten konfigurierst, können andere Benutzer sehen, wann du nicht im Büro bist, wenn sie eine Besprechung buchen."
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}
+7 -3
View File
@@ -86,7 +86,7 @@ OC.L10N.register(
"Organizer:" : "Organisator:",
"Attendees:" : "Teilnehmer:",
"Title:" : "Titel:",
"Date and time:" : "Datum und Zeit:",
"Date and time:" : "Datum und Uhrzeit:",
"Location:" : "Ort:",
"Link:" : "Link:",
"Accept" : "Akzeptieren",
@@ -133,8 +133,6 @@ OC.L10N.register(
"Encryption not ready: %1$s" : "Verschlüsselung nicht bereit: %1$s",
"Failed to open file: %1$s" : "Datei konnte nicht geöffnet werden: %1$s",
"Failed to unlink: %1$s" : "Fehler beim Aufheben der Verknüpfung: %1$s",
"Invalid chunk name" : "Ungültiger Chunk-Name",
"Could not rename part file assembled from chunks" : "Aus Chunks zusammengesetzte Teildatei konnte nicht umbenannt werden",
"Failed to write file contents: %1$s" : "Fehler beim Schreiben des Dateiinhalts: %1$s",
"File not found: %1$s" : "Datei nicht gefunden: %1$s",
"System is in maintenance mode." : "Das System befindet sich im Wartungsmodus.",
@@ -160,6 +158,10 @@ OC.L10N.register(
"WebDAV" : "WebDAV",
"First day" : "Erster Tag",
"Last day (inclusive)" : "Letzter Tag (Inklusiv)",
"Out of office replacement (optional)" : "Abwesenheitsvertretung (optional)",
"Name of the replacement" : "Name der Vertretung",
"No results." : "Keine Ergebnisse.",
"Start typing." : "Anfangen zu tippen.",
"Short absence status" : "Kurzer Abwesenheitsstaus",
"Long absence Message" : "Lange Abwesenheitsnachricht",
"Save" : "Speichern",
@@ -210,6 +212,8 @@ OC.L10N.register(
"Your attendance was updated successfully." : "Ihr Teilnehmerstatus wurde aktualisiert.",
"To-dos" : "Aufgaben",
"Time:" : "Zeit:",
"Invalid chunk name" : "Ungültiger Chunk-Name",
"Could not rename part file assembled from chunks" : "Aus Chunks zusammengesetzte Teildatei konnte nicht umbenannt werden",
"If you configure your working hours, other users will see when you are out of office when they book a meeting." : "Wenn Sie Ihre Arbeitszeiten konfigurieren, können andere Benutzer sehen, wann Sie nicht im Büro sind, wenn sie eine Besprechung buchen."
},
"nplurals=2; plural=(n != 1);");
+7 -3
View File
@@ -84,7 +84,7 @@
"Organizer:" : "Organisator:",
"Attendees:" : "Teilnehmer:",
"Title:" : "Titel:",
"Date and time:" : "Datum und Zeit:",
"Date and time:" : "Datum und Uhrzeit:",
"Location:" : "Ort:",
"Link:" : "Link:",
"Accept" : "Akzeptieren",
@@ -131,8 +131,6 @@
"Encryption not ready: %1$s" : "Verschlüsselung nicht bereit: %1$s",
"Failed to open file: %1$s" : "Datei konnte nicht geöffnet werden: %1$s",
"Failed to unlink: %1$s" : "Fehler beim Aufheben der Verknüpfung: %1$s",
"Invalid chunk name" : "Ungültiger Chunk-Name",
"Could not rename part file assembled from chunks" : "Aus Chunks zusammengesetzte Teildatei konnte nicht umbenannt werden",
"Failed to write file contents: %1$s" : "Fehler beim Schreiben des Dateiinhalts: %1$s",
"File not found: %1$s" : "Datei nicht gefunden: %1$s",
"System is in maintenance mode." : "Das System befindet sich im Wartungsmodus.",
@@ -158,6 +156,10 @@
"WebDAV" : "WebDAV",
"First day" : "Erster Tag",
"Last day (inclusive)" : "Letzter Tag (Inklusiv)",
"Out of office replacement (optional)" : "Abwesenheitsvertretung (optional)",
"Name of the replacement" : "Name der Vertretung",
"No results." : "Keine Ergebnisse.",
"Start typing." : "Anfangen zu tippen.",
"Short absence status" : "Kurzer Abwesenheitsstaus",
"Long absence Message" : "Lange Abwesenheitsnachricht",
"Save" : "Speichern",
@@ -208,6 +210,8 @@
"Your attendance was updated successfully." : "Ihr Teilnehmerstatus wurde aktualisiert.",
"To-dos" : "Aufgaben",
"Time:" : "Zeit:",
"Invalid chunk name" : "Ungültiger Chunk-Name",
"Could not rename part file assembled from chunks" : "Aus Chunks zusammengesetzte Teildatei konnte nicht umbenannt werden",
"If you configure your working hours, other users will see when you are out of office when they book a meeting." : "Wenn Sie Ihre Arbeitszeiten konfigurieren, können andere Benutzer sehen, wann Sie nicht im Büro sind, wenn sie eine Besprechung buchen."
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}
+6 -2
View File
@@ -133,8 +133,6 @@ OC.L10N.register(
"Encryption not ready: %1$s" : "Encryption not ready: %1$s",
"Failed to open file: %1$s" : "Failed to open file: %1$s",
"Failed to unlink: %1$s" : "Failed to unlink: %1$s",
"Invalid chunk name" : "Invalid chunk name",
"Could not rename part file assembled from chunks" : "Could not rename part file assembled from chunks",
"Failed to write file contents: %1$s" : "Failed to write file contents: %1$s",
"File not found: %1$s" : "File not found: %1$s",
"System is in maintenance mode." : "System is in maintenance mode.",
@@ -160,6 +158,10 @@ OC.L10N.register(
"WebDAV" : "WebDAV",
"First day" : "First day",
"Last day (inclusive)" : "Last day (inclusive)",
"Out of office replacement (optional)" : "Out of office replacement (optional)",
"Name of the replacement" : "Name of the replacement",
"No results." : "No results.",
"Start typing." : "Start typing.",
"Short absence status" : "Short absence status",
"Long absence Message" : "Long absence Message",
"Save" : "Save",
@@ -210,6 +212,8 @@ OC.L10N.register(
"Your attendance was updated successfully." : "Your attendance was updated successfully.",
"To-dos" : "To-dos",
"Time:" : "Time:",
"Invalid chunk name" : "Invalid chunk name",
"Could not rename part file assembled from chunks" : "Could not rename part file assembled from chunks",
"If you configure your working hours, other users will see when you are out of office when they book a meeting." : "If you configure your working hours, other users will see when you are out of office when they book a meeting."
},
"nplurals=2; plural=(n != 1);");
+6 -2
View File
@@ -131,8 +131,6 @@
"Encryption not ready: %1$s" : "Encryption not ready: %1$s",
"Failed to open file: %1$s" : "Failed to open file: %1$s",
"Failed to unlink: %1$s" : "Failed to unlink: %1$s",
"Invalid chunk name" : "Invalid chunk name",
"Could not rename part file assembled from chunks" : "Could not rename part file assembled from chunks",
"Failed to write file contents: %1$s" : "Failed to write file contents: %1$s",
"File not found: %1$s" : "File not found: %1$s",
"System is in maintenance mode." : "System is in maintenance mode.",
@@ -158,6 +156,10 @@
"WebDAV" : "WebDAV",
"First day" : "First day",
"Last day (inclusive)" : "Last day (inclusive)",
"Out of office replacement (optional)" : "Out of office replacement (optional)",
"Name of the replacement" : "Name of the replacement",
"No results." : "No results.",
"Start typing." : "Start typing.",
"Short absence status" : "Short absence status",
"Long absence Message" : "Long absence Message",
"Save" : "Save",
@@ -208,6 +210,8 @@
"Your attendance was updated successfully." : "Your attendance was updated successfully.",
"To-dos" : "To-dos",
"Time:" : "Time:",
"Invalid chunk name" : "Invalid chunk name",
"Could not rename part file assembled from chunks" : "Could not rename part file assembled from chunks",
"If you configure your working hours, other users will see when you are out of office when they book a meeting." : "If you configure your working hours, other users will see when you are out of office when they book a meeting."
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}
+2 -2
View File
@@ -132,8 +132,6 @@ OC.L10N.register(
"Encryption not ready: %1$s" : "El cifrado no está listo: %1$s",
"Failed to open file: %1$s" : "Fallo al abrir el archivo: %1$s",
"Failed to unlink: %1$s" : "Fallo al desenlazar: %1$s",
"Invalid chunk name" : "Nombre de trozo inválido",
"Could not rename part file assembled from chunks" : "No se ha podido renombrar el archivo parcial formado por los fragmentos",
"Failed to write file contents: %1$s" : "Fallo al escribir el contenido del archivo: %1$s",
"File not found: %1$s" : "Archivo no encontrado: %1$s",
"System is in maintenance mode." : "Sistema está en modo de mantenimiento.",
@@ -209,6 +207,8 @@ OC.L10N.register(
"Your attendance was updated successfully." : "Tu asistencia se ha actualizado con éxito.",
"To-dos" : "Tareas",
"Time:" : "Hora:",
"Invalid chunk name" : "Nombre de trozo inválido",
"Could not rename part file assembled from chunks" : "No se ha podido renombrar el archivo parcial formado por los fragmentos",
"If you configure your working hours, other users will see when you are out of office when they book a meeting." : "Si configura su horario de trabajo, otros usuarios verán cuándo está fuera de la oficina cuando planifiquen una reunión."
},
"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");
+2 -2
View File
@@ -130,8 +130,6 @@
"Encryption not ready: %1$s" : "El cifrado no está listo: %1$s",
"Failed to open file: %1$s" : "Fallo al abrir el archivo: %1$s",
"Failed to unlink: %1$s" : "Fallo al desenlazar: %1$s",
"Invalid chunk name" : "Nombre de trozo inválido",
"Could not rename part file assembled from chunks" : "No se ha podido renombrar el archivo parcial formado por los fragmentos",
"Failed to write file contents: %1$s" : "Fallo al escribir el contenido del archivo: %1$s",
"File not found: %1$s" : "Archivo no encontrado: %1$s",
"System is in maintenance mode." : "Sistema está en modo de mantenimiento.",
@@ -207,6 +205,8 @@
"Your attendance was updated successfully." : "Tu asistencia se ha actualizado con éxito.",
"To-dos" : "Tareas",
"Time:" : "Hora:",
"Invalid chunk name" : "Nombre de trozo inválido",
"Could not rename part file assembled from chunks" : "No se ha podido renombrar el archivo parcial formado por los fragmentos",
"If you configure your working hours, other users will see when you are out of office when they book a meeting." : "Si configura su horario de trabajo, otros usuarios verán cuándo está fuera de la oficina cuando planifiquen una reunión."
},"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
}
+2 -2
View File
@@ -132,8 +132,6 @@ OC.L10N.register(
"Encryption not ready: %1$s" : "La encriptación no está lista: %1$s",
"Failed to open file: %1$s" : "Error al abrir el archivo: %1$s",
"Failed to unlink: %1$s" : "Error al eliminar: %1$s",
"Invalid chunk name" : "Nombre de fragmento no válido",
"Could not rename part file assembled from chunks" : "No se pudo renombrar el archivo parcial ensamblado a archivo final",
"Failed to write file contents: %1$s" : "Error al escribir el contenido del archivo: %1$s",
"File not found: %1$s" : "Archivo no encontrado: %1$s",
"System is in maintenance mode." : "El sistema está en modo de mantenimiento.",
@@ -190,6 +188,8 @@ OC.L10N.register(
"Your attendance was updated successfully." : "Tu asistencia se actualizó correctamente.",
"To-dos" : "Tareas pendientes",
"Time:" : "Hora:",
"Invalid chunk name" : "Nombre de fragmento no válido",
"Could not rename part file assembled from chunks" : "No se pudo renombrar el archivo parcial ensamblado a archivo final",
"If you configure your working hours, other users will see when you are out of office when they book a meeting." : "Si configuras tus horas de trabajo, otros usuarios verán cuando estás fuera de la oficina al reservar una reunión."
},
"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");
+2 -2
View File
@@ -130,8 +130,6 @@
"Encryption not ready: %1$s" : "La encriptación no está lista: %1$s",
"Failed to open file: %1$s" : "Error al abrir el archivo: %1$s",
"Failed to unlink: %1$s" : "Error al eliminar: %1$s",
"Invalid chunk name" : "Nombre de fragmento no válido",
"Could not rename part file assembled from chunks" : "No se pudo renombrar el archivo parcial ensamblado a archivo final",
"Failed to write file contents: %1$s" : "Error al escribir el contenido del archivo: %1$s",
"File not found: %1$s" : "Archivo no encontrado: %1$s",
"System is in maintenance mode." : "El sistema está en modo de mantenimiento.",
@@ -188,6 +186,8 @@
"Your attendance was updated successfully." : "Tu asistencia se actualizó correctamente.",
"To-dos" : "Tareas pendientes",
"Time:" : "Hora:",
"Invalid chunk name" : "Nombre de fragmento no válido",
"Could not rename part file assembled from chunks" : "No se pudo renombrar el archivo parcial ensamblado a archivo final",
"If you configure your working hours, other users will see when you are out of office when they book a meeting." : "Si configuras tus horas de trabajo, otros usuarios verán cuando estás fuera de la oficina al reservar una reunión."
},"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
}

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