Compare commits

...

460 Commits

Author SHA1 Message Date
Git'Fellow
9964198a93 fix(session): Ensure token and UID are valid
Wrap token retrieval in try-catch to handle InvalidTokenException.

Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
2025-10-17 12:19:51 +02:00
Nextcloud bot
c316ed655a fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-10-17 00:12:29 +00:00
Maxence Lange
7da7de8409 Merge pull request #55634 from nextcloud/fix/noid/ocm-value-format
fix(ocm): format notifications
2025-10-16 20:17:21 -01:00
dependabot[bot]
324ae80b4e Merge pull request #55680 from nextcloud/dependabot/npm_and_yarn/nextcloud/vue-8.32.0 2025-10-16 21:14:17 +00:00
nextcloud-command
d6299f93f5 chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-10-16 18:07:05 +00:00
dependabot[bot]
3d08708f13 build(deps): bump @nextcloud/vue from 8.31.0 to 8.32.0
Bumps [@nextcloud/vue](https://github.com/nextcloud-libraries/nextcloud-vue) from 8.31.0 to 8.32.0.
- [Release notes](https://github.com/nextcloud-libraries/nextcloud-vue/releases)
- [Changelog](https://github.com/nextcloud-libraries/nextcloud-vue/blob/v8.32.0/CHANGELOG.md)
- [Commits](https://github.com/nextcloud-libraries/nextcloud-vue/compare/v8.31.0...v8.32.0)

---
updated-dependencies:
- dependency-name: "@nextcloud/vue"
  dependency-version: 8.32.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-16 19:58:41 +02:00
Ferdinand Thiessen
39dc1185a6 Merge pull request #55799 from nextcloud/fix/dialog-props
fix: migrate to non-deprecated dialog props
2025-10-16 19:41:24 +02:00
nextcloud-command
08eb5879dd chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-10-16 16:09:41 +00:00
Ferdinand Thiessen
470ff8d3d3 fix: migrate to non-deprecated dialog props
In Nextcloud Vue v8 some props for dialog buttons were deprecated (type
for e.g. primary or nativeType) those are replaced with `variant` and
`type`.
In v9 the deprecated props are removed - thus this breaks with
nextcloud-dialogs v7 which is based on Vue 3.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-10-16 17:55:11 +02:00
dependabot[bot]
093c95f260 Merge pull request #55681 from nextcloud/dependabot/npm_and_yarn/cypress-split-1.24.24 2025-10-16 15:49:13 +00:00
Maxence Lange
b2a6c75b44 fix(ocm): format notifications
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2025-10-16 14:30:04 -01:00
Joas Schilling
6fc190ef4c Merge pull request #55803 from nextcloud/bugfix/55274/dont-fallback-from-3letter-languages-to-2letter
fix(l10n): Don't fallback from 3-letter languages to 2-letter
2025-10-16 13:43:13 +02:00
Joas Schilling
9e4ac50206 fix(l10n): Don't fallback from 3-letter languages to 2-letter
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-10-16 11:46:01 +02:00
Joas Schilling
8b51705b4e Merge pull request #55757 from nextcloud/test/net/localhost-by-ip
test(net): include test for localhost by IP
2025-10-16 11:38:11 +02:00
Marcel Klehr
7320322d52 Merge pull request #55735 from nextcloud/feat/taskprocessing-api-next-batch
feat(TaskProcessingApiController): Add new next_batch endpoint
2025-10-16 09:55:49 +02:00
Arthur Schiwon
84be993633 Merge pull request #55800 from nextcloud/fix/file-drop/chunked-upload
Fix chunked upload for file drop shares
2025-10-16 09:43:22 +02:00
provokateurin
3a242166f7 fix(FilesDropPlugin): Fix request method and nickname header checks
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-10-16 08:47:28 +02:00
Joas Schilling
3f85bcc69a Merge pull request #55777 from nextcloud/bugfix/55706/fix-sample-config-parsing
fix(sample-config): Fix sample config so parsing works again
2025-10-16 08:32:50 +02:00
Nextcloud bot
9938bc70b7 fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-10-16 00:12:27 +00:00
provokateurin
2201f77aa6 fix(FilesDropPlugin): Fix name conflict resolution for chunked uploads
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-10-15 23:52:05 +02:00
provokateurin
cde80c14d3 fix(FilesDropPlugin): Disable plugin for chunked uploads
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-10-15 23:52:04 +02:00
provokateurin
5fa4c3d8fd fix(publicremote): Always grant read and delete permission for chunked uploads to a share
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-10-15 23:37:58 +02:00
Arthur Schiwon
6df6b58e6c Merge pull request #55797 from nextcloud/fixDbType
fix(setupCheck): Fix checking database type
2025-10-15 22:44:35 +02:00
Andy Scherzinger
6266000b99 Merge pull request #55750 from nextcloud/feat/globalscale-url
feat: add new link endpoint when using globalscale
2025-10-15 21:26:48 +02:00
nextcloud-command
92dab6633c chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-10-15 19:00:59 +00:00
Ferdinand Thiessen
7fbc2ca25e feat: add new link endpoint when using globalscale
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-10-15 18:58:10 +00:00
Git'Fellow
3f976c2548 fix(setupCheck): Fix checking database type
Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
2025-10-15 20:15:55 +02:00
Ferdinand Thiessen
50f287402a Merge pull request #55791 from nextcloud/chore/ensure-no-only
chore: ensure no `.only` is commited in test files
2025-10-15 17:57:00 +02:00
Joas Schilling
074d69820f fix(sample-config): Fix more typos that break RST parsing
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-10-15 16:30:49 +02:00
Ferdinand Thiessen
3cf210a9a5 chore: ensure no .only is commited in test files
`.only` is only to be used for development, but must not be committed.
Instead failing tests which should be kept for later should be skipped
(`.skip`).

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-10-15 16:00:01 +02:00
dependabot[bot]
ac9ff0d3fa build(deps-dev): bump cypress-split from 1.24.23 to 1.24.24
Bumps [cypress-split](https://github.com/bahmutov/cypress-split) from 1.24.23 to 1.24.24.
- [Release notes](https://github.com/bahmutov/cypress-split/releases)
- [Commits](https://github.com/bahmutov/cypress-split/compare/v1.24.23...v1.24.24)

---
updated-dependencies:
- dependency-name: cypress-split
  dependency-version: 1.24.24
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-15 13:54:49 +00:00
Ferdinand Thiessen
65cdf14667 Merge pull request #55726 from nextcloud/chore/update-dialog-v7
chore: Update `@nextcloud/dialogs` to v7.0.0
2025-10-15 15:51:41 +02:00
Ferdinand Thiessen
cc4f8309d0 chore: compile assets
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-10-15 14:25:11 +02:00
Ferdinand Thiessen
b3762488e8 test: adjust FilePicker tests to new dialogs version
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-10-15 14:25:10 +02:00
Ferdinand Thiessen
2b39cb49ab refactor: adjust code for breaking changes in @nextcloud/dialogs v7
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-10-15 13:45:12 +02:00
Ferdinand Thiessen
f2b309b6ee chore: Update @nextcloud/dialogs to v7.0.0
This is the first step torwards Vue 3.
As this package is a Vue version agnostic version of dialogs, written in
Vue 3.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-10-15 13:45:11 +02:00
Marcel Klehr
d5220d6a15 Merge pull request #55776 from nextcloud/fix/text2image-better-attributes
fix(TextToImage): Set better attribute for routes
2025-10-15 13:07:50 +02:00
Ferdinand Thiessen
0c1be89f1b Merge pull request #55747 from nextcloud/chore/migrate-cypress-vitest
refactor(test): migrate Cypress component test to vitest
2025-10-15 10:55:44 +02:00
Stephan Orbaugh
567a988c6c Merge pull request #55100 from invario/previews-better-logging
feat(previews): improved logging for movie previews
2025-10-15 10:54:09 +02:00
Joas Schilling
0938c5f1ce fix(config-sample): Deduplicate warning
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-10-15 10:47:29 +02:00
Joas Schilling
5ef933ff6c fix(sample-config): Fix more list, note and warning blocks
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-10-15 10:45:27 +02:00
Marcel Klehr
a5ce35ac84 fix(TextToImage): Set better attribute for routes
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-15 09:55:30 +02:00
Joas Schilling
126944b346 fix(sample-config): Fix sample config so parsing works again
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-10-15 09:38:15 +02:00
Marcel Klehr
7619f78aa2 Merge pull request #55732 from nextcloud/fix/text-processing-no-admin-required
fix(TextProcessingApiController): Set better attribute on routes
2025-10-15 09:31:05 +02:00
Marcel Klehr
81bf9f342c fix: regenerate openapi descriptions
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-15 09:30:12 +02:00
Marcel Klehr
954b140da6 Merge pull request #55716 from nextcloud/feat/taskprocessing-successrate-setupcheck
feat(settings): Introduce TaskProcessingSuccessRate setup check
2025-10-15 09:28:36 +02:00
Nextcloud bot
3aae74236a fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-10-15 00:12:30 +00:00
Daniel
d39ae92aaf Merge pull request #54819 from nextcloud/fix/issue-53949-imip-quirks-mode
fix: iMip reply from outlook.com does not contain organizer property
2025-10-14 21:29:11 +02:00
Côme Chilliet
ef2e7170a4 Merge pull request #55754 from nextcloud/fix/fix-cachewrapper-shouldencrypt
fix: Fix crash in files_version about uninitialized property
2025-10-14 20:32:28 +02:00
invario
13500be1d1 feat(previews): improved logging for movie previews
Signed-off-by: invario <67800603+invario@users.noreply.github.com>
2025-10-14 13:17:09 -04:00
SebastianKrupinski
ea2180d6ad fix: iMip reply from outlook.com does not contain organizer property
Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
2025-10-14 12:44:06 -04:00
Carl Schwan
04a21650cc Merge pull request #55720 from nextcloud/carl/remote-querybuilder-execute
feat(querybuilder): Remove deprecated IQueryBuilder::execute
2025-10-14 17:19:37 +02:00
Côme Chilliet
ad9574970a fix: Fix crash in files_version about uninitialized property
Fix "Typed property OC\\Files\\Cache\\Cache::$storage must not be accessed before initialization"

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-10-14 16:56:07 +02:00
Marcel Klehr
be8e168f38 fix: Address psalm issues and review comments
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-14 15:51:31 +02:00
Marcel Klehr
bd2e629e3b fix: Update openapi descriptions
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-14 15:29:40 +02:00
Marcel Klehr
5e0c7a5813 fix(TextProcessingApiController): Set better attribute on routes
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-14 15:29:40 +02:00
Marcel Klehr
76eba41d77 fix: Fix logic error to make tests pass
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-14 15:23:01 +02:00
Marcel Klehr
4ec76cf834 Merge pull request #55715 from nextcloud/fix/taskprocessing/setupcheck-pickupspeed
fix(settings): Improve TaskProcessingPickupSpeed setup check
2025-10-14 15:11:33 +02:00
Marcel Klehr
e7ac6ff71b fix: Apply suggestion from @kyteinski
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-14 15:05:55 +02:00
Ferdinand Thiessen
e7357dffec chore: compile assets
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-10-14 14:32:51 +02:00
Ferdinand Thiessen
a66135f32f chore: remove Cypress component testing
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-10-14 14:30:14 +02:00
Ferdinand Thiessen
3f6f277dba refactor(test): migrate component tests in core to vitest
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-10-14 14:30:14 +02:00
Ferdinand Thiessen
81cfb9580a refactor(test): migrate cypress component tests to vitest
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-10-14 14:30:14 +02:00
Ferdinand Thiessen
5aa1f5bb84 Merge pull request #55718 from nextcloud/chore/remove-oca-sharing-external-link-actions
chore!(files_sharing): remove deprecated `OCA.Sharing.ExternalLinkActions`
2025-10-14 14:25:53 +02:00
Ferdinand Thiessen
48378aede3 Merge pull request #55731 from nextcloud/jtr/fix-files-stream-quota-actual
fix(files): decrement quota by actual bytes written in stream_write
2025-10-14 13:56:27 +02:00
nextcloud-command
9aa38aaacc chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-10-14 11:41:49 +00:00
Ferdinand Thiessen
23be816568 chore!(files_sharing): remove deprecated OCA.Sharing.ExternalLinkActions
This API was deprecated in Nextcloud 23.
It was replaced with `OCA.Sharing.ExternalShareAction` which now have a proper API
by using `registerSidebarAction` from `@nextcloud/sharing` instead.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-10-14 13:34:54 +02:00
Marcel Klehr
5c5c9384b1 fix: Apply suggestion from @julien-nc
Co-authored-by: Julien Veyssier <julien-nc@posteo.net>
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-14 11:52:49 +02:00
Marcel Klehr
f7a89fee24 fix: Apply suggestion from @julien-nc
Co-authored-by: Julien Veyssier <julien-nc@posteo.net>
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-14 11:52:37 +02:00
Marcel Klehr
16da8bbc8a fix(TaskProcessingApiController): Implement getNextScheduledTasks for next_batch endpoint
in order to avoid hitting the DB with multiple 1 row requests

Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-14 11:50:29 +02:00
Marcel Klehr
858118274d fix: Apply suggestion from @julien-nc
Co-authored-by: Julien Veyssier <julien-nc@posteo.net>
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-14 11:22:03 +02:00
Marcel Klehr
2286b9f57d fix: Apply suggestion from @julien-nc
Co-authored-by: Julien Veyssier <julien-nc@posteo.net>
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-14 11:21:54 +02:00
Marcel Klehr
1ba5f7d53a fix(settings): Remove copypasta
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-14 11:20:59 +02:00
Maksim Sukharev
8659002d7a Merge pull request #55655 from nextcloud/fix/noid/throw-failed-share 2025-10-14 11:03:48 +02:00
Christoph Wurst
3e90ce89eb test(net): include test for localhost by IP
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2025-10-14 10:33:35 +02:00
Kate
ae0aa175b3 Merge pull request #55661 from nextcloud/fix/55519/ldap-cert-req-handling 2025-10-14 09:42:16 +02:00
nextcloud-command
9e5111f983 chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-10-14 07:36:00 +00:00
Marcel Klehr
80eb3dd0d0 feat(TaskProcessingApiController): Add new next_batch endpoint
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-14 09:35:18 +02:00
Maksim Sukharev
a4d440e1f0 fix(files_sharing): correctly handle error in case of failing share creation
Signed-off-by: Maksim Sukharev <antreesy.web@gmail.com>
2025-10-14 09:27:05 +02:00
Maksim Sukharev
9c8b500116 Merge pull request #55666 from nextcloud/fix/53038/clear-search 2025-10-14 09:22:50 +02:00
Marcel Klehr
33922faf4a fix: Change messages to use days instead of hours
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-14 08:42:56 +02:00
Marcel Klehr
ea8ab8e192 Merge pull request #55646 from nextcloud/feat/taskprocessing/is-internal
enh(TaskProcessing): Introduce internal task types
2025-10-14 08:25:00 +02:00
Kate
ffbbdb2d04 Merge pull request #54953 from nextcloud/fix/noid/lighter-team-request 2025-10-14 07:56:14 +02:00
Nextcloud bot
736259c4df fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-10-14 00:12:22 +00:00
Josh
bd43cb7d04 fix(files): decrement quota by actual bytes written in stream_write
The quota is now decremented by the actual number of bytes written ($written) rather than the intended size.

This ensures quota tracking stays accurate even if fwrite writes fewer (or more - i.e. from underlying buffering/etc) bytes than requested.

Signed-off-by: Josh <josh.t.richards@gmail.com>
2025-10-13 18:26:48 -04:00
Kate
692d265d4a Merge pull request #55727 from nextcloud/bug/noid/update-sample-config-mp3 2025-10-13 18:46:21 +02:00
nextcloud-command
4e87741bab chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-10-13 16:12:38 +00:00
Daniel Kesselberg
8ed6722a4b docs(previews): mp3 preview provider is no longer enabled by default
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-10-13 17:53:34 +02:00
Maksim Sukharev
196aa9b41b fix(files): clear search input on directory navigation
Signed-off-by: Maksim Sukharev <antreesy.web@gmail.com>
2025-10-13 17:28:44 +02:00
Daniel
2cb2ffe608 Merge pull request #55658 from nextcloud/bug/noid/disable-mp3-previews-by-default
fix: disable mp3 preview provider
2025-10-13 17:22:29 +02:00
Carl Schwan
1eff9e5c90 feat(querybuilder): Remove deprecated IQueryBuilder::execute
This won't work when we update to doctrine DBAL 4 and all usages in
server were ported away.

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-13 17:02:04 +02:00
Carl Schwan
65f52c47b8 Merge pull request #55674 from nextcloud/carl/deprecated-dbal
Port away from deprecated Doctrine APIs
2025-10-13 15:10:15 +02:00
Marcel Klehr
f296f9055c fix: Run cs:fix
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-13 14:45:17 +02:00
Marcel Klehr
62fd3576c9 test(settings): Add tests for TaskProcessingSuccessRate setup check
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-13 14:42:51 +02:00
Marcel Klehr
6c9af3f8ee fix(settings): Introduce TaskProcessingSuccessRate setup check
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-13 14:35:55 +02:00
Maxence Lange
9ba3ce27cb fix(team-api): get all teams details in a single request
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-10-13 14:21:15 +02:00
Marcel Klehr
5a48887a2b fix(settings): Improve TaskProcessingPickupSpeed setup check
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-13 14:07:33 +02:00
provokateurin
2552950299 fix(core): Fix TeamsApiController typing
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-10-13 13:59:54 +02:00
Kate
2ea30f9149 Merge pull request #55712 from nextcloud/fix/noid/root-path-globalsiteselector 2025-10-13 13:51:16 +02:00
Carl Schwan
49d522717c refactor(dbal): Port away from remaining IQueryBuilder::execute calls
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-13 13:44:15 +02:00
Carl Schwan
9095a36b94 refactor(dbal): Port away from getDatabasePlatform() instanceof pattern
Use getDatabaseProvider instead.

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-13 13:44:08 +02:00
Marcel Müller
4c5d1a2e7b Merge pull request #55711 from nextcloud/fix/noid/fix-32bit-test-runs
fix: Unset classes in container to reduce side-effects between tests
2025-10-13 12:53:53 +02:00
Maxence Lange
9209540db5 feat(route): globalsiteselector as root url generator
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2025-10-13 09:19:20 -01:00
Marcel Müller
0ca6384097 fix: Unset classes in container to reduce side-effects between tests
Signed-off-by: Marcel Müller <marcel-mueller@gmx.de>
2025-10-13 11:56:13 +02:00
Marcel Klehr
13eb2d1cbd feat(TaskProcessing): Introduce internal task types
which are not shown in the assistant UI

Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-13 11:07:40 +02:00
Kate
4c2e71e953 Merge pull request #55706 from nextcloud/jtr/fix-config-sample-activity-app 2025-10-13 10:06:33 +02:00
dependabot[bot]
28eb8879ef Merge pull request #55683 from nextcloud/dependabot/composer/vendor-bin/openapi-extractor/nextcloud/openapi-extractor-1.8.6 2025-10-13 07:38:59 +00:00
Nextcloud bot
22791c5843 fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-10-13 00:12:24 +00:00
dependabot[bot]
7133a2a7d0 Merge pull request #55684 from nextcloud/dependabot/composer/vendor-bin/rector/rector/rector-2.2.2 2025-10-12 17:40:53 +00:00
Nextcloud bot
8d2a95678f fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-10-12 00:12:19 +00:00
Josh
2eaac49063 fix: cs/lint
Signed-off-by: Josh <josh.t.richards@gmail.com>
2025-10-11 10:22:08 -04:00
Josh
7e8183dfdb chore: update for cs lint
Corrected formatting and removed extra spaces in comments.

Signed-off-by: Josh <josh.t.richards@gmail.com>
2025-10-11 09:44:28 -04:00
Josh
1de46be60f fix: Move system-level activity app settings to the sample config
These entries are currently hard-coded in the manual itself (on the config parameter page that is generated from this config sample file). This PR moves them to the proper place, the config sample file itself.

A separate PR in the docs repo will remove their hard-coded entry in the manual, but this is not dependent on that PR.

Signed-off-by: Josh <josh.t.richards@gmail.com>
2025-10-11 09:29:59 -04:00
Louis
e4866860cb Merge pull request #55657 from nextcloud/artonge/fix/do_not_expose_system_address_book_in_contacts 2025-10-11 13:11:26 +02:00
dependabot[bot]
934c2d214d build(deps-dev): bump rector/rector in /vendor-bin/rector
Bumps [rector/rector](https://github.com/rectorphp/rector) from 2.1.7 to 2.2.2.
- [Release notes](https://github.com/rectorphp/rector/releases)
- [Commits](https://github.com/rectorphp/rector/compare/2.1.7...2.2.2)

---
updated-dependencies:
- dependency-name: rector/rector
  dependency-version: 2.2.2
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-11 01:10:28 +00:00
dependabot[bot]
0c17af55d3 build(deps): bump nextcloud/openapi-extractor
Bumps [nextcloud/openapi-extractor](https://github.com/nextcloud-releases/openapi-extractor) from 1.8.5 to 1.8.6.
- [Changelog](https://github.com/nextcloud-releases/openapi-extractor/blob/main/CHANGELOG.md)
- [Commits](https://github.com/nextcloud-releases/openapi-extractor/compare/v1.8.5...v1.8.6)

---
updated-dependencies:
- dependency-name: nextcloud/openapi-extractor
  dependency-version: 1.8.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-11 01:10:12 +00:00
Nextcloud bot
65bd4b2d69 fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-10-11 00:13:13 +00:00
Thomas Citharel
76a0fb6feb Merge pull request #55651 from nextcloud/fix-calendars-properties-cache 2025-10-10 19:24:55 +02:00
Louis Chemineau
e976a1323f chore: Register system_addressbook_exposed in lexicon
Signed-off-by: Louis Chmn <louis@chmn.me>
2025-10-10 19:02:41 +02:00
Louis Chemineau
d14c96b26d fix(contacts): Do not expose SAB in /contactsmenu
When hitting the `/contactsmenu/contacts` endpoint with the `dav.system_addressbook_exposed` config switch set to `"no"`, the system address book content is still listed in the response.

This ensure that we do not expose unexpectedly the system address book.

Signed-off-by: Louis Chemineau <louis@chmn.me>
2025-10-10 19:02:40 +02:00
Thomas Citharel
22b90c2319 fix(caldav): avoid selecting every custom properties from table if we have no calendars to filter
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2025-10-10 18:50:31 +02:00
Carl Schwan
7a43bf26ca refactor(dbal): Migrate away from Type::getName
Instead use Type::lookupName

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-10 16:13:09 +02:00
Carl Schwan
b0c6ef5821 refactor(dbal): Port away from deprecated hasPrimaryKey
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-10 15:44:43 +02:00
Louis
9dfd6f1533 Merge pull request #55654 from nextcloud/artonge/fix/do_not_happen_streams 2025-10-10 14:43:05 +02:00
Carl Schwan
c89ca89f2f Merge pull request #55083 from nextcloud/carl/preview-interface-cleanup
refactor(preview): Cleanup a bit the public interface
2025-10-10 11:30:02 +02:00
Louis Chmn
00ec57efd6 fix(S3): Only append streams if non-seekable
Later, when we rewind the stream in `writeMultiPart` during retry, both streams were rewinded, so the resulting stream was bigger than expected.

Inspired by https://github.com/aws/aws-sdk-php/blob/master/src/S3/ObjectUploader.php#L136-L146

Signed-off-by: Louis Chmn <louis@chmn.me>
2025-10-10 09:54:05 +02:00
Joas Schilling
b469840b3d Merge pull request #55645 from nextcloud/bugfix/noid/comments-by-apps
Fix comments when used by other apps
2025-10-10 08:36:54 +02:00
Nextcloud bot
3efb030837 fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-10-10 00:13:17 +00:00
Arthur Schiwon
fbd29bcf7f fix(LDAP): properly disable are require TLS certificate verification
- the old approach lead connection issues, as ldap_set_option was called
  too late. Specifically it needs to be called before ldap_connect and set
  globally!
- The old approach also connected it to the ldapTLS configuration, which
  has a misleading naming. It indicates StartTLS usage only, not plain TLS
  connections.

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2025-10-09 20:22:37 +02:00
Daniel Kesselberg
ca717f0b54 fix: disable mp3 preview provider
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-10-09 18:13:17 +02:00
Carl Schwan
cb82a9ef04 refactor(preview): Cleanup a bit the public interface
* Remove old IProvider interface, it's been deprecated since 17.0.0 (8
  years)
* Add type hinting to the IPreview interface and mark it as consumeable
  only
* Remove unused arguments from GeneratorHelper

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-09 17:41:13 +02:00
Josh
9e9bf4988a Merge pull request #55582 from nextcloud/jtr/chore-app-encryption-desc
chore: improve SSE default crypto module app description
2025-10-09 11:38:09 -04:00
nextcloud-command
4efb40f46d chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-10-09 14:44:15 +00:00
Joas Schilling
d332091105 fix(comments): Don't throw type error when no itemType or itemId is given
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-10-09 16:35:16 +02:00
Joas Schilling
d659cbcd0e fix(comments): Support user IDs that are numbers, e.g. "42"
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-10-09 16:35:15 +02:00
Joas Schilling
8ab5cf4009 fix(comments): Correctly await the getComments() call
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-10-09 16:35:14 +02:00
Joas Schilling
fa17c55588 fix(comments): Use the correct object when autocompleting mentions for other apps
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-10-09 16:35:13 +02:00
Côme Chilliet
48c2dd6279 Merge pull request #55517 from nextcloud/carl/cron-service
refactor: Move cron setup to a service
2025-10-09 09:52:34 +02:00
Marcel Klehr
9d98f85348 Merge pull request #54793 from nextcloud/fix/fileaccess-getbyancestorinstorage-sharding
fix(FileAccess): Make getByAncestorInStorage sharding ready
2025-10-09 09:51:51 +02:00
Marcel Klehr
3522a3375e fix(FileAccess): Make getAncestorInStorage pass sharding tests
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-09 09:27:50 +02:00
Marcel Klehr
b158a77365 fix(FileAccess): Try to fix type error
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-09 09:27:50 +02:00
Marcel Klehr
1e9a5019b4 fix(FileAccess): Set filecache size column in tests
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-09 09:27:50 +02:00
Marcel Klehr
62bff06aeb fix(FileAccess): Chunk parent query
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-09 09:27:50 +02:00
Marcel Klehr
9ccc798655 fix(FileAccess): Make getByAncestorInStorage sharding ready
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-09 09:27:50 +02:00
F. E Noel Nfebe
8e5f436814 Merge pull request #55080 from nextcloud/fix/54511/federation-trusted-server-suggestions
fix(sharing): Adapt share suggestions to match trusted servers configs
2025-10-09 08:29:53 +02:00
nextcloud-command
8c7be09d93 chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-10-09 06:05:36 +00:00
nfebe
c9bb6eedc6 fix: Include email when searching share suggestions
Signed-off-by: nfebe <fenn25.fn@gmail.com>
2025-10-09 06:53:51 +01:00
nfebe
c1d9e22c51 fix(sharing): Adapt share suggestions to match trusted servers configs
When `show_federated_shares_to_trusted_servers_as_internal` is enabled
but `show_federated_shares_as_internal` is not, filter federated share
suggestions to only include trusted servers. Previously, searching for
an email address would suggest non-trusted federated servers.

Resolved: #54511
Signed-off-by: nfebe <fenn25.fn@gmail.com>
2025-10-09 06:53:46 +01:00
Nextcloud bot
0793253d37 fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-10-09 00:25:27 +00:00
John Molakvoæ
d907a77902 Merge pull request #55624 from nextcloud/fix/catch-nodes-systemtags 2025-10-08 21:06:12 +02:00
John Molakvoæ (skjnldsv)
bd04c26427 fix(systemtags): catch empty nodes
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2025-10-08 20:38:20 +02:00
Richard Steinmetz
f6593a7464 Merge pull request #55630 from nextcloud/fix/caldav/disable-cal-federation-remote-access
fix(caldav): disable remote access when calendar federation is off
2025-10-08 19:22:37 +02:00
Ferdinand Thiessen
c6a02e562d Merge pull request #55608 from nextcloud/chore/drop-karma
chore(tests): drop legacy Karma tests
2025-10-08 17:20:48 +02:00
Richard Steinmetz
0df9e73e6c fix(caldav): disable remote access when calendar federation is off
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2025-10-08 17:14:00 +02:00
Benjamin Gaussorgues
3aa0c23e40 Merge pull request #54543 from nextcloud/preview-db-rework 2025-10-08 16:39:23 +02:00
Carl Schwan
fed7a33d1f refactor(preview-object-store): Refactor object store backend
Simplify logic

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-08 14:07:07 +02:00
Carl Schwan
bef3996c3e fix(preview): Make version column a string
And move it to a different table so that we don't have to pay the
storage cost when not using it (most of the times).

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-08 14:07:06 +02:00
Kate
6c362cb38d Merge pull request #55623 from nextcloud/fix/caldav/principal-encoding-inconsistencies 2025-10-08 12:56:12 +02:00
Richard Steinmetz
c12ce7083c fix(caldav): encoding inconsistencies in event search provider
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2025-10-08 12:14:00 +02:00
Kate
fcbb8be904 Merge pull request #55514 from nextcloud/carl/more-old-execute 2025-10-08 10:30:46 +02:00
Nextcloud bot
8f21e3523b fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-10-08 00:13:18 +00:00
Ferdinand Thiessen
3827eab2d3 Merge pull request #55605 from nextcloud/chore/33-uses-82
chore: updated 3rdparty to PHP8.2
2025-10-07 20:59:23 +02:00
Joas Schilling
d6cafee543 Merge pull request #55382 from nextcloud/bugfix/noid/files-live-photo-permission
fix(live-photo): Allow files-live-photo meta data with edit permissions
2025-10-07 20:55:53 +02:00
Daniel
38c9bd99f5 Merge pull request #53869 from nextcloud/bug/53856/hide-password-on-submit
feat(login): hide password on form submit
2025-10-07 20:07:27 +02:00
Daniel Kesselberg
ec1ea3253c feat(login): hide password on form submit
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-10-07 19:37:51 +02:00
Daniel
db3e845d19 Merge pull request #55557 from nextcloud/refactor/use-iemailaddressvalidator
refactor: use IEmailValidator.isValid instead of IMailer.validateEmailAddress
2025-10-07 19:15:32 +02:00
Kate
fb0b56de3b Merge pull request #55529 from nextcloud/share-recursion-error 2025-10-07 18:11:29 +02:00
Daniel
0274a463ab Merge pull request #55577 from nextcloud/fix/repair-tree-description
fix(RepairTree): Update files:repair-tree description
2025-10-07 17:49:31 +02:00
Côme Chilliet
e739898cc7 Merge pull request #55400 from nextcloud/carl/remove-legacy-search-provider
refactor: Remove legacy search provider
2025-10-07 16:51:12 +02:00
Josh
71b196b0e1 fix: Apply suggestions from code review
Co-authored-by: Côme Chilliet <91878298+come-nc@users.noreply.github.com>
Signed-off-by: Josh <josh.t.richards@gmail.com>
2025-10-07 10:44:04 -04:00
Ferdinand Thiessen
0a86f9cc55 chore: updated 3rdparty to PHP8.2
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-10-07 16:19:53 +02:00
Côme Chilliet
b984e329fc Merge pull request #55574 from nextcloud/carl/view-deprecated
chore: Explicitely mark \OC\Files\View as internal
2025-10-07 16:07:36 +02:00
Ferdinand Thiessen
1f24865caf chore(tests): drop legacy Karma tests
we no longer use Karma tests, all actual tests have been migrated to
vitest. The leftover tests are already covered by unit tests in
packages.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-10-07 14:27:14 +02:00
Anna
87c90f9678 Merge pull request #55581 from nextcloud/fix/noid/dont-catch-general-db-errors
fix(ooo): don't catch general DB exceptions
2025-10-07 13:36:55 +02:00
Côme Chilliet
8950f9fe74 Merge pull request #55462 from IONOS-Productivity/fix/admin_delegation-show-all-priority-items
Fix admin delegation show all priority items
2025-10-07 12:03:32 +02:00
Marcel Klehr
ef6e9744a9 Merge pull request #55573 from nextcloud/fix/taskprocessing/list-command
fix(TaskProcessing): Make sure list command int filter parameters are parsed as ints
2025-10-07 11:38:49 +02:00
Carl Schwan
104aef324d refactor(core/Command): Port away from View
Use IRootFolder instead.

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-07 10:11:01 +02:00
Kate
e67fe86c9d Merge pull request #55578 from nextcloud/carl/dead-code-sabre-node 2025-10-07 09:55:37 +02:00
Marcel Klehr
b12b38b70e Merge pull request #55579 from nextcloud/fix/taskprocessing/max-task-age-6-months
fix(TaskProcessing): Increase MAX_TASK_AGE to 6 months
2025-10-07 08:22:39 +02:00
Robin Windey
d84d6ca1cf Merge pull request #55527 from nextcloud/feature/update-devcontainer
Update Nextcloud Devcontainer
2025-10-07 06:56:18 +02:00
Robin Windey
88fde78a79 feat: Update Nextcloud Devcontainer
Removed deprecations:
* docker-compose version
* apt-key add command in docker installation

Updates:
* Upgrade from PHP8.3 to PHP8.4 (currently recommended for NC) from ppa:ondrej/php
* Use nodejs 22 by default

Optimization:
* Just install docker-ce-cli, not the full docker suite (speeds up docker build)
* Make sure user "devcontainer" has UID 1000. This increases the containers filesystem compatibility to most (unix-based) host systems because the default user there always has 1000 as well
* Ensure devcontainer user has access to docker without sudo

Signed-off-by: Robin Windey <ro.windey@gmail.com>
2025-10-07 04:38:33 +00:00
Nextcloud bot
e0d3f6137e fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-10-07 00:13:19 +00:00
Ferdinand Thiessen
7f6e76ac6e Merge pull request #55585 from nextcloud/occ-auth-token-name
feat: allow setting custom name for occ generated app password
2025-10-07 01:53:08 +02:00
Ferdinand Thiessen
b6496c8ce6 Merge pull request #55537 from nextcloud/dependabot/npm_and_yarn/p-queue-9.0.0
build(deps): bump p-queue from 8.1.1 to 9.0.0
2025-10-07 01:51:10 +02:00
nextcloud-command
ac7c9cdd12 chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-10-06 22:41:53 +00:00
dependabot[bot]
9c9af0f069 Merge pull request #55538 from nextcloud/dependabot/composer/build/integration/behat/behat-3.25.0 2025-10-06 22:41:50 +00:00
dependabot[bot]
eb77daac0b build(deps): bump p-queue from 8.1.1 to 9.0.0
Bumps [p-queue](https://github.com/sindresorhus/p-queue) from 8.1.1 to 9.0.0.
- [Release notes](https://github.com/sindresorhus/p-queue/releases)
- [Commits](https://github.com/sindresorhus/p-queue/compare/v8.1.1...v9.0.0)

---
updated-dependencies:
- dependency-name: p-queue
  dependency-version: 9.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-07 00:34:35 +02:00
dependabot[bot]
d5d2083322 Merge pull request #55536 from nextcloud/dependabot/npm_and_yarn/webpack-5.102.0 2025-10-06 21:44:41 +00:00
nextcloud-command
a180c9197e chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-10-06 21:24:50 +00:00
dependabot[bot]
21b844f4cf build(deps-dev): bump webpack from 5.101.3 to 5.102.0
Bumps [webpack](https://github.com/webpack/webpack) from 5.101.3 to 5.102.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.101.3...v5.102.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-version: 5.102.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-06 21:16:30 +00:00
dependabot[bot]
bb6a265c55 build(deps-dev): bump behat/behat in /build/integration
Bumps [behat/behat](https://github.com/Behat/Behat) from 3.24.1 to 3.25.0.
- [Release notes](https://github.com/Behat/Behat/releases)
- [Changelog](https://github.com/Behat/Behat/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Behat/Behat/compare/v3.24.1...v3.25.0)

---
updated-dependencies:
- dependency-name: behat/behat
  dependency-version: 3.25.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-06 21:13:30 +00:00
dependabot[bot]
253fe7e269 Merge pull request #55534 from nextcloud/dependabot/npm_and_yarn/puppeteer-24.23.0 2025-10-06 21:07:41 +00:00
dependabot[bot]
4d1f9def8d build(deps-dev): bump puppeteer from 24.22.3 to 24.23.0
Bumps [puppeteer](https://github.com/puppeteer/puppeteer) from 24.22.3 to 24.23.0.
- [Release notes](https://github.com/puppeteer/puppeteer/releases)
- [Changelog](https://github.com/puppeteer/puppeteer/blob/main/CHANGELOG.md)
- [Commits](https://github.com/puppeteer/puppeteer/compare/puppeteer-v24.22.3...puppeteer-v24.23.0)

---
updated-dependencies:
- dependency-name: puppeteer
  dependency-version: 24.23.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-06 20:51:05 +00:00
Andy Scherzinger
7dc189a222 Merge pull request #55586 from nextcloud/fix/codeowners
chore(CODEOWNERS): include mjs and cjs for frontend
2025-10-06 21:48:01 +02:00
Ferdinand Thiessen
747179200c chore(CODEOWNERS): include mjs and cjs for frontend
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-10-06 21:11:03 +02:00
Kate
9e5ee588a0 Merge pull request #55583 from nextcloud/build/psalm/raise-php-version 2025-10-06 21:06:59 +02:00
dependabot[bot]
eb042b842c Merge pull request #55532 from nextcloud/dependabot/npm_and_yarn/dockerode-4.0.9 2025-10-06 17:52:45 +00:00
dependabot[bot]
2e2f98614e build(deps-dev): bump dockerode from 4.0.8 to 4.0.9
Bumps [dockerode](https://github.com/apocas/dockerode) from 4.0.8 to 4.0.9.
- [Release notes](https://github.com/apocas/dockerode/releases)
- [Commits](https://github.com/apocas/dockerode/compare/v4.0.8...v4.0.9)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-06 17:36:05 +00:00
dependabot[bot]
a24e84da49 Merge pull request #55533 from nextcloud/dependabot/npm_and_yarn/testing-library/jest-dom-6.9.1 2025-10-06 17:33:04 +00:00
Robin Appelman
de69824a59 feat: allow setting custom name for occ generated app password
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-10-06 18:37:03 +02:00
dependabot[bot]
4df8758b29 build(deps-dev): bump @testing-library/jest-dom from 6.8.0 to 6.9.1
Bumps [@testing-library/jest-dom](https://github.com/testing-library/jest-dom) from 6.8.0 to 6.9.1.
- [Release notes](https://github.com/testing-library/jest-dom/releases)
- [Changelog](https://github.com/testing-library/jest-dom/blob/main/CHANGELOG.md)
- [Commits](https://github.com/testing-library/jest-dom/compare/v6.8.0...v6.9.1)

---
updated-dependencies:
- dependency-name: "@testing-library/jest-dom"
  dependency-version: 6.9.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-06 16:30:00 +00:00
Côme Chilliet
818f54d9ca Merge pull request #55576 from nextcloud/fix/ldap-configuration-prefix-list
fix(ldap): Fix copying and creating LDAP configuration
2025-10-06 18:22:18 +02:00
provokateurin
4b90a2c730 build(psalm): Raise PHP version to 8.2
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-10-06 18:01:51 +02:00
Anna Larch
d4c9e09c5f fix(ooo): don't catch general DB exceptions
Signed-off-by: Anna Larch <anna@nextcloud.com>
2025-10-06 17:44:33 +02:00
Ferdinand Thiessen
cb1a6f79e7 Merge pull request #55442 from nextcloud/refactor/migrate-cypress-tests
test: migrate `LoginForm` component test to vitest
2025-10-06 17:41:46 +02:00
Josh
1a5d07034b chore: improve SSE default crypto module app description
Updated the app information for the encryption module to include detailed encryption features, warnings, and notes for existing files.

Signed-off-by: Josh <josh.t.richards@gmail.com>
2025-10-06 11:32:33 -04:00
Ferdinand Thiessen
2fd87955e6 Merge pull request #55525 from nextcloud/chore/karma-commets
refactor(core): migrate tests of `OCP.Comments` to `vitest`
2025-10-06 17:10:29 +02:00
Marcel Klehr
a6f899f925 fix(TaskProcessing): Increase MAX_TASK_AGE to 6 months
to comply with the EU AI act

Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-06 16:44:53 +02:00
Carl Schwan
3004f628e9 refactor(Sabre/Node): Remove dead code
property_cache is no longer used.

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-06 16:33:28 +02:00
Marcel Klehr
e237ac54cc fix(RepairTree): Update files:repair-tree description
to note that running the command multiple times may be necessary

Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-06 16:25:45 +02:00
Carl Schwan
f450cda3aa chore: Explicitely mark \OC\Files\View as internal
It's in OC and should not be used at all. Marking it as internal will
at least prevent new code to use it.

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-06 15:49:55 +02:00
Côme Chilliet
723a3f0b96 fix(ldap): Fix copying and creating LDAP configuration
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-10-06 15:45:23 +02:00
Marcel Klehr
f28344e13e fix(TaskProcessing): Make sure list command int filter parameters are parsed as ints
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-06 15:29:36 +02:00
Carl Schwan
9d7fbb1b86 refactor: Move cron setup to a service
This will allow in the future the following things:

- Create unit tests for it
- Make cron.php a occ command
- Make webcron a proper controller

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-06 15:28:43 +02:00
Ferdinand Thiessen
62539ecacf chore: compile assets
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-10-06 15:18:51 +02:00
Ferdinand Thiessen
ba01412389 test: migrate LoginForm component test to vitest
Cypress has some limitations:
- its vue 2 supported was removed
- it fails with our vue 3 migration due to 2 different vue versions
  being present
- its slow compared to vitest

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-10-06 15:18:51 +02:00
Ferdinand Thiessen
769ec69bb3 refactor(core): migrate tests of OCP.Comments to vitest
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-10-06 15:05:31 +02:00
Ferdinand Thiessen
678a8a75ad Merge pull request #55524 from nextcloud/chore/karma-mimetype
refactor: move `OC.MimeType` to `src` and add `vitest` unit tests
2025-10-06 15:05:16 +02:00
Ferdinand Thiessen
7bda1cdf56 chore: compile assets
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-10-06 14:17:52 +02:00
Ferdinand Thiessen
2e11b96537 refactor: move OC.MimeType to src and add vitest unit tests
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-10-06 14:16:12 +02:00
Carl Schwan
66f50bd585 refactor(preview): Use same mimetype ids as filecache
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-06 13:37:15 +02:00
Carl Schwan
bd001c9524 refactor: Use Override annotation in new preview code
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-06 13:37:15 +02:00
Carl Schwan
58023782b6 feat(preview): Store original file mimetype in preview table
Allow to quickly query all the files from a specific mimetype like in
the ResetRenderedTexts command.

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-06 13:37:15 +02:00
Carl Schwan
bfc7d5dd9f feat(preview): Implement scanning for previews
This work similarly to the move preview job to migrate the previews to
the new DB table and also reuse some code.

So when we are finding files in appdata/preview, try adding them to the
oc_previews table and delete them from the oc_filecache table.

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-06 13:37:15 +02:00
Carl Schwan
324b54b863 refactor(preview): Cleanup the implementation of the new preview backend
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-06 13:37:15 +02:00
Carl Schwan
6f56dcf73e fix(preview): Fix some tests
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-06 13:37:15 +02:00
Carl Schwan
b0357663b9 perf(preview): Optimize migration and simplify DB layout
* Simplify migration by not moving the actual files and just updating
  the DB
* Don't store the storageid in the preview table as it is not needed
* Start adding tests

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-06 13:37:15 +02:00
Carl Schwan
bba9667882 perf(preview): Adapt BackgroundCleanupJob to new previews table
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-06 13:37:15 +02:00
Carl Schwan
6008852232 feat(preview): Support multibucket storage
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-06 13:37:15 +02:00
Carl Schwan
13c35c0f17 perf(preview): Migrate previews to the new optimized table
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-06 13:37:15 +02:00
Carl Schwan
656e33e8da perf(preview): Add support for multibucket storage
Signed-off-by: Carl Schwan <carl.schwan@nextclound.com>
2025-10-06 13:37:15 +02:00
Carl Schwan
18fbacdd8d perf(preview): Split preview data to new table
The new oc_previews table is optimized for storing previews and should
decrease significantly the space taken by previews in the filecache
table.

This attend to reuse the IObjectStore abstraction over S3/Swift/Azure
but currently only support one single bucket configuration.

Signed-off-by: Carl Schwan <carl.schwan@nextclound.com>
2025-10-06 13:37:15 +02:00
Kate
057c0dcc98 Merge pull request #55564 from nextcloud/fix/files/return-valid-mimetype 2025-10-06 13:23:54 +02:00
Kate
dc768157b3 Merge pull request #55566 from nextcloud/fix/igroupmanager/get-user-group-ids-return-type 2025-10-06 12:55:58 +02:00
Andy Scherzinger
40286b2fe2 Merge pull request #55481 from nextcloud/carl/fix-psalm-easy
refactor: Fix some easy psalm issues in Files
2025-10-06 12:11:02 +02:00
provokateurin
3c27522873 fix(IGroupManager): Use correct return type in getUserGroupIds method
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-10-06 10:54:08 +02:00
Joas Schilling
6dec53a6bc Merge pull request #55472 from nextcloud/carl/fix-encryption-commands
refactor: fix psalm issues from encryption commands
2025-10-06 10:47:10 +02:00
Côme Chilliet
38d455800c Merge pull request #55482 from nextcloud/carl/fix-search
refactor: Port away from search
2025-10-06 10:45:52 +02:00
Kate
b565eefc48 Merge pull request #55539 from nextcloud/dependabot/composer/vendor-bin/openapi-extractor/nextcloud/openapi-extractor-1.8.5 2025-10-06 09:21:44 +02:00
provokateurin
8d8f94b8ce fix(files): Always return a valid mimetype
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-10-06 09:06:17 +02:00
Joas Schilling
376b7e8bbd Merge pull request #55507 from nextcloud/techdebt/noid/bye-bye-8.1
fix(PHP): Drop PHP 8.1 for Nextcloud 33
2025-10-06 08:22:50 +02:00
Joas Schilling
88e2e4f785 Merge pull request #55560 from nextcloud/bug/55554/set-dbtype-value-with-single-db
fix(setup): set dbtype value also for single-db
2025-10-06 08:21:22 +02:00
Nextcloud bot
3ca413da08 fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-10-06 00:13:08 +00:00
Daniel Kesselberg
e43bfe3bd7 chore(assets): Recompile assets
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-10-05 23:33:16 +02:00
Daniel Kesselberg
5475587092 fix(setup): set dbtype value also for single-db
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-10-05 23:33:16 +02:00
F. E Noel Nfebe
a9d925b873 Merge pull request #55434 from nextcloud/fix/unfied-search-pagination-limit
fix(unified-search): Remove hard-coded search result limit
2025-10-05 12:07:54 +02:00
Nextcloud bot
a913c9bfaf fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-10-05 00:13:12 +00:00
Daniel Kesselberg
83a691709c refactor: use IEmailValidator.isValid instead of IMailer.validateEmailAddress
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-10-04 21:54:22 +02:00
Joas Schilling
405b52f4c5 ci: Move to new kerberos images
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-10-04 12:33:26 +02:00
dependabot[bot]
b22c38d48c Merge pull request #55535 from nextcloud/dependabot/npm_and_yarn/zip.js/zip.js-2.8.6 2025-10-04 02:37:28 +00:00
dependabot[bot]
4cd4616be5 build(deps): bump nextcloud/openapi-extractor
Bumps [nextcloud/openapi-extractor](https://github.com/nextcloud-releases/openapi-extractor) from 1.8.3 to 1.8.5.
- [Changelog](https://github.com/nextcloud-releases/openapi-extractor/blob/main/CHANGELOG.md)
- [Commits](https://github.com/nextcloud-releases/openapi-extractor/compare/v1.8.3...v1.8.5)

---
updated-dependencies:
- dependency-name: nextcloud/openapi-extractor
  dependency-version: 1.8.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-04 01:25:53 +00:00
dependabot[bot]
240a5652f4 build(deps-dev): bump @zip.js/zip.js from 2.8.2 to 2.8.6
Bumps [@zip.js/zip.js](https://github.com/gildas-lormeau/zip.js) from 2.8.2 to 2.8.6.
- [Release notes](https://github.com/gildas-lormeau/zip.js/releases)
- [Commits](https://github.com/gildas-lormeau/zip.js/compare/v2.8.2...v2.8.6)

---
updated-dependencies:
- dependency-name: "@zip.js/zip.js"
  dependency-version: 2.8.6
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-04 01:07:51 +00:00
Nextcloud bot
451d6d2eee fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-10-04 00:13:12 +00:00
Joas Schilling
76b156b434 ci: Adjust CI to run on PHP 8.2
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-10-03 15:58:33 +02:00
Robin Appelman
af907388d0 fix: make share recursion error more informative
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-10-03 15:50:43 +02:00
Louis
ae89c60e9e Merge pull request #55522 from nextcloud/artonge/fix/user_ldap_do_not_translate_technical_strings
fix(user_ldap): Do not translate technical strings
2025-10-03 12:25:17 +02:00
Nextcloud bot
856d49fabb fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-10-03 00:14:33 +00:00
nextcloud-command
d6ba09c7c7 chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-10-02 22:23:46 +00:00
Louis Chemineau
df0fe49124 fix(user_ldap): Do not translate technical strings
Signed-off-by: Louis Chemineau <louis@chmn.me>
2025-10-03 00:16:27 +02:00
Ferdinand Thiessen
8cf585cd5b Merge pull request #55513 from nextcloud/chore/code-style
chore: ignore ESLint v9 autofixes in git blame
2025-10-02 20:57:17 +02:00
Ferdinand Thiessen
2ea05681ae Merge pull request #55486 from nextcloud/fix/55003-allow-empty-mail-address
Allow to remove a website in the user profile
2025-10-02 20:51:30 +02:00
Louis
2f3ff8c0dd Merge pull request #55468 from nextcloud/artonge/fix/user_ldap_ajax_endpoint 2025-10-02 17:38:44 +02:00
Louis Chemineau
1beb275167 chore: Compile assets
Signed-off-by: Louis Chemineau <louis@chmn.me>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-10-02 14:29:43 +00:00
nfebe
2053112887 fix(unified-search): Remove hard-coded search result limit
A change added in https://github.com/nextcloud/server/pull/45317 introduced
a hard stop (25) that prevents full search results from showing up.

If there are more than 25 search results for a query only 25 can be seen.

So two main issues:

- Only 25 results can be seen in total no matter what.
- Breaks web client pagination, which typically adds 5 results per request.

Signed-off-by: nfebe <fenn25.fn@gmail.com>
2025-10-02 15:44:36 +02:00
Louis Chemineau
c594c68ed9 fix(user_ldap): Correct ajax endpoint URL
Signed-off-by: Louis Chemineau <louis@chmn.me>
2025-10-02 15:31:50 +02:00
Côme Chilliet
8c9781d520 Merge pull request #55475 from nextcloud/fix/fix-user_ldap-configuration_creation
fix(user_ldap): Fix configuration creation and copy
2025-10-02 15:07:51 +02:00
Carl Schwan
9e848551be refactor: Port away from more IQueryBuilder::execute
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-02 14:40:28 +02:00
Ferdinand Thiessen
16b6d2e67d chore: ignore ESLint v9 autofixes in git blame
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-10-02 14:21:25 +02:00
Christian Wolf
d40e58db00 fix (settings): Allow for empty websites in the profile to remove the entry completely
Signed-off-by: Christian Wolf <github@christianwolf.email>
2025-10-02 14:21:13 +02:00
Ferdinand Thiessen
4ace101b05 Merge pull request #55495 from nextcloud/chore/eslint-v9
chore: use ESLint v9 for linting
2025-10-02 14:05:53 +02:00
Carl Schwan
34cd91cc86 refactor: Fix some easy psalm issues in Files
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-02 13:34:47 +02:00
Ferdinand Thiessen
7237c05198 chore: compile assets
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-10-02 13:24:16 +02:00
Ferdinand Thiessen
d0b9c8eb9d chore: use global jQuery for files_external as its uses select2
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-10-02 13:19:55 +02:00
Ferdinand Thiessen
ca65cf72d8 chore: add missing import of the logger
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-10-02 13:19:43 +02:00
Ferdinand Thiessen
af5d538b03 chore: create ESLint baseline for hard-to-fix errors
WE NEED TO EMPTY THIS!

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-10-02 13:19:43 +02:00
Ferdinand Thiessen
6f355dea7e chore: adjust ESLint for Cypress
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-10-02 13:19:43 +02:00
Ferdinand Thiessen
b12df40388 chore: apply new sorting for package.json
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-10-02 13:19:43 +02:00
Ferdinand Thiessen
91f3b6b4ee chore: adjust code to new codestyle
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-10-02 13:19:42 +02:00
Joas Schilling
122cd68d56 fix(PHP): Drop PHP 8.1 for Nextcloud 33
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-10-02 11:04:07 +02:00
Ferdinand Thiessen
44962c76e7 chore: rename webpack configs to make clear they contain common js
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-10-02 10:48:38 +02:00
Ferdinand Thiessen
1d580e886f chore(dev-deps): use ESLint v9
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-10-02 10:48:38 +02:00
Andy Scherzinger
c267036030 Merge pull request #55491 from nextcloud/rakekniven-patch-1
chore(i18n): id -> ID
2025-10-02 09:39:22 +02:00
nextcloud-command
4257953cbd chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-10-02 06:22:23 +00:00
rakekniven
ea046d3fb8 chore(i18n): id -> ID
Reported at Transifex

Signed-off-by: rakekniven <2069590+rakekniven@users.noreply.github.com>
2025-10-02 08:15:08 +02:00
Nextcloud bot
f8d229a0af fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-10-02 00:13:34 +00:00
Kate
9a7aa70050 Merge pull request #55176 from nextcloud/user-id-header 2025-10-01 20:13:32 +02:00
F. E Noel Nfebe
335693e4bb Merge pull request #55151 from nextcloud/feature/share-api-enhanced-logging
refactor(ShareApiController): Add more error handling
2025-10-01 17:25:48 +01:00
Carl Schwan
ce02a5b27c refactor: Port away from search
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-01 16:32:22 +02:00
Kate
7e8926011d Merge pull request #55463 from nextcloud/fix/user-group-manager-return-type 2025-10-01 16:30:23 +02:00
Kate
623b8e2ad8 Merge pull request #55461 from nextcloud/fix/iusermanager/search-deprecation 2025-10-01 16:17:54 +02:00
Carl Schwan
a3442be054 refactor: fix psalm issues from encryption commands
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-01 16:07:41 +02:00
Côme Chilliet
12e2a0e284 fix(user_ldap): Fix configuration creation and copy
The endpoint was not correctly registering the new prefix.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-10-01 15:39:59 +02:00
Carl Schwan
3d6699d685 Merge pull request #55467 from nextcloud/carl/remove-old-federation-settings
refactor: Remove old unused js files for federation settings
2025-10-01 15:05:37 +02:00
Joas Schilling
1447f182d2 Merge pull request #55405 from nextcloud/carl/cleanup-some-tests
refactor: Cleanup some unit tests
2025-10-01 15:02:00 +02:00
Carl Schwan
6b09192795 refactor: Remove old unused js files for federation settings
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-01 14:00:45 +02:00
nfebe
0970409765 refactor(ShareApiController): Streamline share providers & add error logging
1. Consolidated the repetitive provider code into a clean loop
2. Added exception handling to log unexpected errors

Signed-off-by: nfebe <fenn25.fn@gmail.com>
2025-10-01 12:48:53 +01:00
Ferdinand Thiessen
c214ec454c Merge pull request #55245 from nextcloud/fix/rtl-settings
fix: legacy app navigation snapper on RTL layout
2025-10-01 13:43:39 +02:00
Carl Schwan
aa1f5312a5 refactor: Remove legacy search provider
Last usage was in the comment app

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-01 13:36:25 +02:00
provokateurin
51a493cbe7 fix(IGroupManager): Use correct return type for search method
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-10-01 13:14:05 +02:00
provokateurin
dce2672b98 fix(IUserManager): Use correct return type for searchDisplayName method
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-10-01 12:48:43 +02:00
Misha M.-Kupriyanov
b0ed8b1455 fix(admin-delegation-show): show delegations for all priorities
otherwise delegation only from the first priority array ara shown

Signed-off-by: Misha M.-Kupriyanov <kupriyanov@strato.de>
2025-10-01 12:33:13 +02:00
Misha M.-Kupriyanov
33577b3120 feat(admin-delegation-show): add priority to json output
in order to be able to better understand priority sorting.

php occ admin-delegation:show --output=json_pretty

Signed-off-by: Misha M.-Kupriyanov <kupriyanov@strato.de>
2025-10-01 12:33:13 +02:00
provokateurin
fb4348e3bc fix(IUserManager): Fix deprecation of search method
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-10-01 12:08:58 +02:00
nextcloud-command
050c7fe286 chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-10-01 09:36:02 +00:00
Ferdinand Thiessen
ec9e283e6f fix: legacy app navigation snapper on RTL layout
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-10-01 11:28:53 +02:00
Côme Chilliet
d36fc65c75 Merge pull request #55396 from nextcloud/carl/dashboard-appconfig
refactor: Port dashboard app to IAppConfig
2025-10-01 11:10:59 +02:00
Kate
52aed034b1 Merge pull request #55431 from nextcloud/fix/ocscontroller-usage 2025-10-01 10:43:21 +02:00
Carl Schwan
60c2875670 refactor: Cleanup some unit tests
- use declare(strict_types=1)
- use strong typing
- Remove some weird things in ControllerTest

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-01 10:11:27 +02:00
Louis
f8bed8f186 Merge pull request #51145 from nextcloud/home-folder-readonly 2025-10-01 10:09:19 +02:00
Joas Schilling
f93d6eeed5 Merge pull request #55446 from nextcloud/automated/noid/master-update-code-signing-crl
[master] fix(security): Update code signing revocation list
2025-10-01 09:39:49 +02:00
Louis
0c6478add3 Merge pull request #48065 from nextcloud/artonge/chore/ldap_wizard_rewrite
refactor(user_ldap): Rewrite setup wizard
2025-10-01 08:02:32 +02:00
nextcloud-command
4e0424c9ad fix(security): Update code signing revocation list
Signed-off-by: GitHub <noreply@github.com>
2025-10-01 02:39:21 +00:00
Nextcloud bot
8d70e93a41 fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-10-01 00:13:34 +00:00
Louis Chemineau
ec7c96e943 chore: Compile assets
Signed-off-by: Louis Chemineau <louis@chmn.me>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-09-30 21:00:25 +00:00
Louis Chemineau
3cca80520c chore(user_ldap): Remove legacy wizard files
Signed-off-by: Louis Chemineau <louis@chmn.me>
2025-09-30 22:49:44 +02:00
Louis Chemineau
87cb225668 refactor(user_ldap): Rewrite setup wizard
Signed-off-by: Louis Chemineau <louis@chmn.me>
2025-09-30 22:49:43 +02:00
Kate
7b60e3d784 Merge pull request #55370 from nextcloud/refactor/files_external-ajax 2025-09-30 20:39:47 +02:00
Ferdinand Thiessen
d20d4d33e0 chore: compile assets
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-09-30 20:19:21 +02:00
Ferdinand Thiessen
31571476d3 refactor(files_external): migrate Ajax with OC_JSON to proper controller
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-09-30 20:19:21 +02:00
Kate
86ef7781c0 Merge pull request #55420 from nextcloud/fix/40082/appstore-timeout 2025-09-30 17:18:37 +02:00
provokateurin
28adf33e69 fix(core): Make OCSController class final to avoid accidentally extending it
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-09-30 16:51:51 +02:00
provokateurin
13e98dce15 fix: Use the correct OCSController
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-09-30 16:51:51 +02:00
Kate
29832a3608 Merge pull request #55422 from nextcloud/fix/noid/catch-appstore-exceptions 2025-09-30 16:02:48 +02:00
Stephan Orbaugh
922271619b Merge pull request #55426 from nextcloud/test/mock-request
test: mock appstore response in Cypress tests
2025-09-30 15:33:14 +02:00
Ferdinand Thiessen
85271b95f6 test: mock appstore response in Cypress tests
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-09-30 14:53:29 +02:00
Stephan Orbaugh
1da29cf8b2 Merge pull request #55404 from nextcloud/fix/cleanup-resource-locators
Fix type and other psalm issues in lib/private/Template
2025-09-30 14:09:20 +02:00
Stephan Orbaugh
f8fd111946 Merge pull request #55260 from IONOS-Productivity/feature/add_json_output_to_occ_admin-delegation
admin-delegation occ - add output option for show command to support JSON formats
2025-09-30 13:48:31 +02:00
Marcel Müller
31481701f3 fix(appstore): Make appstore timeout configurable
Signed-off-by: Marcel Müller <marcel-mueller@gmx.de>
2025-09-30 13:00:06 +02:00
Côme Chilliet
bdff12361c fix: Cleanup and fix tests, and fix related issues in code
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-09-30 11:53:59 +02:00
Marcel Müller
31b8d36802 fix(appstore): Also catch ClientException and ServerException
Signed-off-by: Marcel Müller <marcel-mueller@gmx.de>
2025-09-30 11:27:47 +02:00
Carl Schwan
3a687eac54 Merge pull request #55412 from nextcloud/jtr/update-webhook-listerers-appinfo
chore: update webhook_listeners description
2025-09-30 10:43:27 +02:00
Nextcloud bot
ed8744ede3 fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-09-30 00:13:38 +00:00
Louis Chemineau
1ab6dba242 test(files_external): Ensure Home folder permissions are correct
Signed-off-by: Louis Chemineau <louis@chmn.me>
2025-09-29 19:26:40 +02:00
Louis Chemineau
553793c946 feat(files): Mark homefolder as overwritten when an external storage mounted at / exists
Signed-off-by: Robin Appelman <robin@icewind.nl>
Signed-off-by: Louis Chemineau <louis@chmn.me>
2025-09-29 19:26:40 +02:00
Josh Richards
763e0901be chore: update webhook_listeners description
Signed-off-by: Josh Richards <josh.t.richards@gmail.com>
2025-09-29 12:49:26 -04:00
Kate
464d12e149 Merge pull request #55374 from nextcloud/fix/files/overwrite-scan-permissions 2025-09-29 18:12:03 +02:00
yemkareems
6a16a28759 Merge pull request #55394 from nextcloud/fix/85262/fix-typo
fix: small typo fix
2025-09-29 17:40:50 +05:30
yemkareems
111f42ca8a Merge branch 'master' into fix/85262/fix-typo 2025-09-29 17:15:57 +05:30
Carl Schwan
78127b87fb Merge pull request #55355 from nextcloud/carl/admin-delegating-spacing
fix: Fix spacing of adming delegation entries
2025-09-29 13:25:35 +02:00
Côme Chilliet
2bc77a3c5a chore: Remove now unused OC_App deprecated methods
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-09-29 12:36:33 +02:00
Côme Chilliet
c6d148344a chore: Fix the last psalm issues in lib/private/Template
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-09-29 12:32:26 +02:00
Côme Chilliet
fc85555d0c fix: Fix phpdoc typing for IL10N::l $data parameter
The implementation supports passing null and our code is using that,
 reflect it in the public API.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-09-29 12:31:30 +02:00
Côme Chilliet
73447618e7 chore: Run rector on lib/private/Template folder and cleanup more typing
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-09-29 12:23:37 +02:00
Côme Chilliet
b58b3750a7 chore: Cleanup typing and deprecated method calls in resource locators
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-09-29 12:10:56 +02:00
nextcloud-command
c03f74e28a chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-09-29 10:08:35 +00:00
Carl Schwan
81454ba965 fix: Fix spacing of adming delegation entries
Use less spacing between the label and the corresponding combobox, than
with the label and the previous combobox.

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-09-29 10:06:32 +00:00
Simon L.
e2a81709d0 Merge pull request #55397 from nextcloud/revert/54138/revert-pwa-header-hiding
revert: feat(core): Hide header in PWA
2025-09-29 11:39:01 +02:00
nextcloud-command
d0247d3890 chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-09-29 08:46:52 +00:00
Côme Chilliet
f4e8116a72 Merge pull request #55387 from nextcloud/fix/remove-legacy-oc-response
fix: Delete legacy OC_Response
2025-09-29 10:40:28 +02:00
Simon L.
e461236aa1 revert: feat(core): Hide header in PWA
Signed-off-by: Simon L. <szaimen@e.mail.de>
2025-09-29 10:33:55 +02:00
Carl Schwan
76736cf9d7 refactor: Port dashboard app to IAppConfig
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-09-29 10:22:46 +02:00
Côme Chilliet
10e3192c2f Merge pull request #55371 from nextcloud/carl/remove-oc-helper-streamCopy
refactor: Remove OC_Helper::streamCopy
2025-09-29 10:21:59 +02:00
Côme Chilliet
09d7ddadf1 Merge pull request #55388 from nextcloud/fix/remove-unused-methods-of-oc-user
chore: Remove unused deprecated methods from OC_User and Filesystem
2025-09-29 09:54:10 +02:00
Côme Chilliet
eb54143c2d fix: Delete legacy OC_Response
Moved the last used method in base.php where it’s called. Ideally we
 would remove it but it’s not clear whether that would be possible any
 time soon or even at all.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-09-29 09:35:32 +02:00
dependabot[bot]
b2c88632bd Merge pull request #55392 from nextcloud/dependabot/npm_and_yarn/axios-1.12.2 2025-09-29 07:16:39 +00:00
nextcloud-command
0f63f93616 chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-09-29 06:59:11 +00:00
dependabot[bot]
7db4d803b0 build(deps): bump axios from 1.11.0 to 1.12.2
Bumps [axios](https://github.com/axios/axios) from 1.11.0 to 1.12.2.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v1.11.0...v1.12.2)

---
updated-dependencies:
- dependency-name: axios
  dependency-version: 1.12.2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-29 08:50:53 +02:00
yemkareems
200f9dc39f fix: small typo fix
Signed-off-by: yemkareems <yemkareems@gmail.com>
2025-09-29 09:12:38 +05:30
Nextcloud bot
cc44ac3ef2 fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-09-29 00:13:27 +00:00
dependabot[bot]
87ea67a06b Merge pull request #55336 from nextcloud/dependabot/npm_and_yarn/sass-1.93.2 2025-09-28 23:04:20 +00:00
dependabot[bot]
41bbabdd54 build(deps-dev): bump sass from 1.93.0 to 1.93.2
Bumps [sass](https://github.com/sass/dart-sass) from 1.93.0 to 1.93.2.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.93.0...1.93.2)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-28 22:40:24 +00:00
dependabot[bot]
c08df561e4 Merge pull request #55335 from nextcloud/dependabot/npm_and_yarn/stylelint-16.24.0 2025-09-28 22:34:10 +00:00
Andy Scherzinger
72cab544ab Merge pull request #55385 from nextcloud/chore/remove-jquery-contactsmenu
chore: remove legacy jQuery contacts menu
2025-09-29 00:29:25 +02:00
dependabot[bot]
73d0c0069f build(deps-dev): bump stylelint from 16.23.1 to 16.24.0
Bumps [stylelint](https://github.com/stylelint/stylelint) from 16.23.1 to 16.24.0.
- [Release notes](https://github.com/stylelint/stylelint/releases)
- [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/stylelint/stylelint/compare/16.23.1...16.24.0)

---
updated-dependencies:
- dependency-name: stylelint
  dependency-version: 16.24.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-28 22:13:13 +00:00
dependabot[bot]
4cb45f4878 Merge pull request #55378 from nextcloud/dependabot/npm_and_yarn/libphonenumber-js-1.12.23 2025-09-28 22:12:27 +00:00
Andy Scherzinger
b863030bd4 Merge pull request #55389 from nextcloud/dependabot/npm_and_yarn/tar-fs-2.1.4
build(deps): bump tar-fs from 2.1.3 to 2.1.4
2025-09-29 00:10:26 +02:00
nextcloud-command
2a9f04cc0e chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-09-28 21:55:45 +00:00
dependabot[bot]
86a3e16e0a Merge pull request #55333 from nextcloud/dependabot/npm_and_yarn/tar-7.5.1 2025-09-28 21:51:55 +00:00
dependabot[bot]
314d109e26 build(deps): bump libphonenumber-js from 1.12.17 to 1.12.23
Bumps [libphonenumber-js](https://gitlab.com/catamphetamine/libphonenumber-js) from 1.12.17 to 1.12.23.
- [Changelog](https://gitlab.com/catamphetamine/libphonenumber-js/blob/master/CHANGELOG.md)
- [Commits](https://gitlab.com/catamphetamine/libphonenumber-js/compare/v1.12.17...v1.12.23)

---
updated-dependencies:
- dependency-name: libphonenumber-js
  dependency-version: 1.12.23
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-28 23:46:27 +02:00
dependabot[bot]
58cd320894 build(deps-dev): bump tar from 7.4.3 to 7.5.1
Bumps [tar](https://github.com/isaacs/node-tar) from 7.4.3 to 7.5.1.
- [Release notes](https://github.com/isaacs/node-tar/releases)
- [Changelog](https://github.com/isaacs/node-tar/blob/main/CHANGELOG.md)
- [Commits](https://github.com/isaacs/node-tar/compare/v7.4.3...v7.5.1)

---
updated-dependencies:
- dependency-name: tar
  dependency-version: 7.5.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-28 21:32:05 +00:00
Ferdinand Thiessen
61cf047d1b Merge pull request #55375 from nextcloud/fix/do-not-use-lazy-with-internal
fix: Do not try to create lazy ghosts for PHP internal classes
2025-09-28 23:30:42 +02:00
dependabot[bot]
f1ad9d05a3 build(deps): bump tar-fs from 2.1.3 to 2.1.4
Bumps [tar-fs](https://github.com/mafintosh/tar-fs) from 2.1.3 to 2.1.4.
- [Commits](https://github.com/mafintosh/tar-fs/compare/v2.1.3...v2.1.4)

---
updated-dependencies:
- dependency-name: tar-fs
  dependency-version: 2.1.4
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-28 21:28:17 +00:00
dependabot[bot]
953a1ed351 Merge pull request #55379 from nextcloud/dependabot/npm_and_yarn/puppeteer-24.22.3 2025-09-28 21:26:51 +00:00
nextcloud-command
7be80de407 chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-09-28 21:19:24 +00:00
Andy Scherzinger
1e492e6de2 Merge pull request #55269 from nextcloud/fix/add-light-images-for-fb-bsky-mastodon
fix: added 3 new light images for facebook, bluesky and mastodon
2025-09-28 23:16:14 +02:00
Côme Chilliet
d39d1d8d24 chore: Remove unused deprecated methods from OC_User and Filesystem
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-09-28 22:44:30 +02:00
Côme Chilliet
2a9f6389f4 Merge pull request #55372 from nextcloud/carl/remove-template-manager
refactor: Remove old TemplateManager
2025-09-28 22:10:37 +02:00
Ferdinand Thiessen
496d497f8f Merge pull request #55383 from nextcloud/fix/noid/unique-cache-prefix-per-instanceid
fix(cache): Ensure unique global prefix per instanceid
2025-09-28 19:07:19 +02:00
Côme Chilliet
7a327b98cc Merge pull request #55261 from nextcloud/fix/hide-empty-settings-section
fix(admin): Hide empty section for users admin delegation
2025-09-28 19:02:41 +02:00
Ferdinand Thiessen
ca5f6d4c1d chore: remove legacy jQuery contacts menu
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-09-28 18:57:01 +02:00
dependabot[bot]
b67e2d8d89 build(deps-dev): bump puppeteer from 24.20.0 to 24.22.3
Bumps [puppeteer](https://github.com/puppeteer/puppeteer) from 24.20.0 to 24.22.3.
- [Release notes](https://github.com/puppeteer/puppeteer/releases)
- [Changelog](https://github.com/puppeteer/puppeteer/blob/main/CHANGELOG.md)
- [Commits](https://github.com/puppeteer/puppeteer/compare/puppeteer-v24.20.0...puppeteer-v24.22.3)

---
updated-dependencies:
- dependency-name: puppeteer
  dependency-version: 24.22.3
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-28 16:13:55 +00:00
dependabot[bot]
25e905164e Merge pull request #55381 from nextcloud/dependabot/npm_and_yarn/msw-2.11.3 2025-09-28 16:07:35 +00:00
Marcel Müller
34a085d3bf fix(cache): Ensure unique global prefix per instanceid
Signed-off-by: Marcel Müller <marcel-mueller@gmx.de>
2025-09-28 17:59:12 +02:00
dependabot[bot]
d43cddafca build(deps-dev): bump msw from 2.11.2 to 2.11.3
Bumps [msw](https://github.com/mswjs/msw) from 2.11.2 to 2.11.3.
- [Release notes](https://github.com/mswjs/msw/releases)
- [Changelog](https://github.com/mswjs/msw/blob/main/CHANGELOG.md)
- [Commits](https://github.com/mswjs/msw/compare/v2.11.2...v2.11.3)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-28 15:35:18 +00:00
Joas Schilling
7cc4a0e59f fix(live-photo): Allow files-live-photo meta data with edit permissions
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-09-28 17:31:51 +02:00
Côme Chilliet
407cc43069 Merge pull request #55321 from nextcloud/fix/improve-connectivity-check
Improve connectivity check
2025-09-28 14:51:32 +02:00
Côme Chilliet
20e536839a feat: Add admin-delegation-section as well for completeness
Also renamed delegation into admin-delegation in xml schema.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-09-28 14:50:15 +02:00
Côme Chilliet
26f50ca3dc feat(settings): Add the new settings type to the appinfo xsd
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-09-28 14:50:14 +02:00
Côme Chilliet
d429ae253e feat: Put delegated settings into the new supported settings type
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-09-28 14:50:14 +02:00
Côme Chilliet
92b1dda5e2 fix(settings): Put Users delegated settings back into admindelegation section
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-09-28 14:50:14 +02:00
Côme Chilliet
09acd7e308 feat(settings): Add support for delegated settings not appearing in menu
Adds a new type of settings, delegation, which is only used for admin
 delegation but does not appear in admin menu.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-09-28 14:50:14 +02:00
Côme Chilliet
50684fa3b0 chore: Cleanup settings manager constructor and properties
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-09-28 14:50:14 +02:00
Côme Chilliet
480ef16946 fix(admin): Hide empty section for users admin delegation
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-09-28 14:50:13 +02:00
Côme Chilliet
d51efd9735 fix: Do not try to create lazy ghosts for PHP internal classes
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-09-28 14:35:49 +02:00
provokateurin
ef279f6049 fix(files): Stop overwriting scan_permissions
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-09-28 14:11:47 +02:00
Côme Chilliet
6181754ec8 Merge pull request #55358 from nextcloud/use-group-attributes
feat(test-case): allow to use PHPUnit Group attributes to mark tests requiring database
2025-09-28 14:09:51 +02:00
Carl Schwan
8e5eef24d2 refactor: Remove OC_Helper::streamCopy
Replace by Files::streamCopy, also deprecated but since less long

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-09-28 12:52:14 +02:00
Carl Schwan
4ae4b0a0e7 refactor: Remove old TemplateManager
Not used anymore

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-09-28 12:48:41 +02:00
Kate
81d0c73700 Merge pull request #55360 from nextcloud/refactor/rector 2025-09-28 12:28:46 +02:00
provokateurin
504eae65bd refactor: Apply rector Nextcloud 27 set
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-09-28 11:45:52 +02:00
provokateurin
d59338b377 refactor: Apply rector Nextcloud 26 set
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-09-28 11:45:52 +02:00
Kate
16708b1f97 Merge pull request #55363 from nextcloud/refactor/weak-operators 2025-09-28 11:42:05 +02:00
Nextcloud bot
4c6c518385 fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-09-28 00:13:18 +00:00
Ferdinand Thiessen
64b31bb623 chore: add logical operator migration to git-blame-ignore-revs
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-09-27 23:02:40 +02:00
Ferdinand Thiessen
660f3f6fd1 refactor: use logical && || instead of weak and or operators
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-09-27 23:02:18 +02:00
provokateurin
6a12fbc4f3 refactor: Run rector
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-09-27 18:52:58 +02:00
Kate
c5c3b6555f Merge pull request #54797 from nextcloud/object-store-total-size-limit 2025-09-27 15:02:28 +02:00
Thomas Citharel
f4e703bd5b feat(test-case): allow to use PHPUnit Group attributes to mark tests requiring database
Before that, only the annotation @group('DB') is possible to mark test classes as requiring the database. Now the \PHPUnit\Framework\Attributes\Group attribute can be used as long as PHPUnit 10+ is used.

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2025-09-27 14:39:13 +02:00
Kate
ef336fe809 Merge pull request #54905 from nextcloud/fix/show-phpunit-warnings 2025-09-27 14:24:26 +02:00
Côme Chilliet
5e9af71509 fix(tests): Fix UserPluginTest methods expectation
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-09-27 13:47:40 +02:00
Côme Chilliet
8107f614d8 fix(tests): Ignore expected warning for s3 tests
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-09-27 13:05:35 +02:00
Côme Chilliet
3e4531dd05 fix: Fix methods returning null for arrays in schema Mock
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-09-27 13:05:34 +02:00
Côme Chilliet
1f3c1a7e74 fix: Fix PHP warnings about including non-existing config files
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-09-27 13:05:33 +02:00
Côme Chilliet
88fc8c94ce fix(dav): Fix PHP warnings triggered by tests in dav application
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-09-27 13:05:33 +02:00
Côme Chilliet
4fe0696e33 fix(tests): Turn data provider into a static method in OCSShareAPIMiddlewareTest
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-09-27 13:05:33 +02:00
Côme Chilliet
f4993de065 fix(tests): Turn data providers into static methods in files_sharing tests
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-09-27 13:05:33 +02:00
Côme Chilliet
954128431e fix(tests): Make sure data providers are static in files_sharing ApplicationTest
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-09-27 13:05:32 +02:00
Côme Chilliet
844c405f71 fix(tests): Make dataGeneralChecks static in Share20 ManagerTest
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-09-27 13:05:32 +02:00
Côme Chilliet
cba4f1b616 fix(tests): Fix PHP warnings in tests
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-09-27 13:05:32 +02:00
Côme Chilliet
ac61839d1e fix(tests): Fix PHPUnit deprecation warnings in tests
Turn data providers into static methods, mostly.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-09-27 13:05:32 +02:00
Côme Chilliet
1bbf12c465 feat(tests): Fail on PHPUnit warnings and risky tests, show deprecations
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-09-27 13:05:17 +02:00
Nextcloud bot
9fc64423a5 fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-09-27 00:13:34 +00:00
Ferdinand Thiessen
7f4ddb8301 Merge pull request #55320 from nextcloud/carl/oc-systemtags
refactor: Remove OC.SystemTags JS API
2025-09-26 22:06:27 +02:00
nextcloud-command
a8d84c900b chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-09-26 18:20:33 +00:00
Arthur Schiwon
8e812ec017 Merge pull request #55294 from nextcloud/feat/54462-Add-MIME-types-Automated-Tagging-dropdown
Feat/54462 add mime types automated tagging dropdown
2025-09-26 20:04:39 +02:00
Carl Schwan
e86ca11e0b refactor: Remove OC.SystemTags JS API
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-09-26 19:25:46 +02:00
Ferdinand Thiessen
3d97549a74 Merge pull request #55311 from nextcloud/fix/sharing-results-collaboration
fix: add missing sharing options to ui and add full-match results
2025-09-26 19:25:22 +02:00
Maxence Lange
b08117a9e7 Merge pull request #55289 from nextcloud/fix/noid/ignore-cache-if-not-setup
fix(ocm): ignore cache if not setup
2025-09-26 15:58:35 -01:00
Stephan Orbaugh
39e2997963 Merge pull request #42039 from Murena-SAS/dev/user-preference-event 2025-09-26 18:57:12 +02:00
nextcloud-command
7b55d0b0b7 chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-09-26 16:34:19 +00:00
Ferdinand Thiessen
5c7ca58a3c fix(Collaboration\UserPlugin): ensure full match is included in results
When searching we need to:
1. check if sharing is limited to groups
  - if yes only include those
  - otherwise continue
2. check if there are restrictions to groups or phonebook
3. check if full match is included

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-09-26 18:26:37 +02:00
Ferdinand Thiessen
aca305aeba fix(settings): add missing sharing autocompletion configs to UI
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-09-26 18:26:37 +02:00
Ferdinand Thiessen
774aad3ab1 feat(Share\IManager): add matchUserId method and update docs
Add missing `matchUserId` method for full-match-autocomplete options
and update docs to make it clearer what each options exactly means.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-09-26 18:26:37 +02:00
Côme Chilliet
0dfe18928a Merge pull request #55314 from nextcloud/fix/folder-deletion-cache
fix: Flag folder objects that got deleted to recreate them if needed
2025-09-26 18:03:37 +02:00
Louis Chemineau
bd8a0ec3cf feat(files): Add appconfig value to disable fixed userfolder permissions optimization
Signed-off-by: Robin Appelman <robin@icewind.nl>
Signed-off-by: Louis Chemineau <louis@chmn.me>
2025-09-26 17:43:22 +02:00
Ferdinand Thiessen
1f4117aea3 Merge pull request #55313 from nextcloud/fix/sharing-password
fix(sharing): ensure to check new password
2025-09-26 16:58:06 +02:00
Côme Chilliet
1c4276eea2 fix(setupchecks): Remove startpage from connectivity check and avoid redirection
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-09-26 16:50:54 +02:00
Côme Chilliet
cc3851f73c fix(setupchecks): Use a lighter request to test connectivity
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-09-26 16:48:24 +02:00
Joas Schilling
762d969741 Merge pull request #55283 from nextcloud/jtr/fix/issue-55276
fix(workflowenigne): stricter length header handling
2025-09-26 15:26:34 +02:00
Côme Chilliet
9277a17a3c fix: Flag folder objects that got deleted to recreate them if needed
AppData caches folder objects, and several places get them to delete
 them, so afterwards if the folder gets reused in the same session an
 error happens. This is the case in unit tests with user avatars.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-09-26 15:11:36 +02:00
nextcloud-command
7e424e3e40 chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-09-26 12:51:55 +00:00
Ferdinand Thiessen
99a026218b fix(sharing): ensure to check new password
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-09-26 12:02:29 +02:00
Akhil
fe30ca872b feat(config): Add UserConfigChangedEvent whenever user config is updated
Signed-off-by: Akhil <akhil@e.email>
2025-09-26 14:29:58 +05:30
Nextcloud bot
2c0f22ea4c fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-09-26 00:13:39 +00:00
yemkareems
a3e8f00faa fix: user settings page updated brand logos
Signed-off-by: yemkareems <yemkareems@gmail.com>
2025-09-25 19:59:31 +05:30
Andy Scherzinger
93bb716af3 Merge pull request #55296 from nextcloud/bugfix/noid/update-assistant-gradient
Update assistant text gradient
2025-09-25 14:46:26 +02:00
yemkareems
33cd89dbf8 fix: added x dark and light images for x logo and switched images based on isDarkTheme flag
Signed-off-by: yemkareems <yemkareems@gmail.com>
2025-09-25 16:07:59 +05:30
Marco Ambrosini
4ef13dd8f7 fix(ui): Update assistant text gradient
Signed-off-by: Marco Ambrosini <marcoambrosini@proton.me>
2025-09-25 12:00:57 +02:00
JinHakChoi
78da62dfc6 build(workflowengine): update dist bundle files
This PR includes the updated build artifacts (dist/workflowengine-workflowengine.js and .js.map) because CI detected modifications and failed without them.

Fixes #54462

Signed-off-by: JinHakChoi <ws423257@gmail.com>
2025-09-25 15:03:41 +09:00
JinHakChoi
e192780dd9 feat(workflowengine): Add audio and video MIME types to Automated Tagging dropdown menu
- Add Dropdown Menu for common audio MIME types (audio/mpeg, audio/wav, audio/ogg, etc.)
- Add Dropdown Menu for common video MIME types (video/mp4, video/webm, etc.)
- Improves user experience when creating automated tagging rules for media files

Fixes #54462

Signed-off-by: JinHakChoi <ws423257@gmail.com>
2025-09-25 15:00:11 +09:00
Maxence Lange
4b55a7ee50 fix(ocm): ignore cache if not setup
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2025-09-24 17:18:08 -01:00
Josh
f5039750b3 chore: fix formatting
Signed-off-by: Josh <josh.t.richards@gmail.com>
2025-09-24 11:29:36 -04:00
Josh
5131897997 fix(workflowenigne): stricter length headler handling
Fixes #55276 and tidies things up a bit more for future maintenance.

Signed-off-by: Josh <josh.t.richards@gmail.com>
2025-09-24 11:18:07 -04:00
yemkareems
59609024e8 fix: added 3 new light images for fb, bluesky and mastodon, included them in REUSE.toml
Signed-off-by: yemkareems <yemkareems@gmail.com>
2025-09-23 17:44:20 +05:30
Misha M.-Kupriyanov
c04398c2bd feat(admin-delegation): add JSON output support with validation
- Add --output option supporting plain, json, and json_pretty formats
- Add validateOutputFormat() method for input validation
- Implement proper error handling for invalid output formats
- Support empty state handling for both plain and JSON outputs
- Use Base class writeArrayInOutputFormat() for consistent JSON output
- Maintain backward compatibility with plain format as default

Signed-off-by: Misha M.-Kupriyanov <kupriyanov@strato.de>
2025-09-23 13:30:14 +02:00
Misha M.-Kupriyanov
898d5a5fcc refactor(admin-delegation): extract data collection logic to separate methods
- Extract collectDelegationData() method to eliminate code duplication
- Add formatSettingsData() method for consistent data formatting
- Add outputPlainFormat() method to separate concerns
- Add proper empty state handling with user-friendly message

Signed-off-by: Misha M.-Kupriyanov <kupriyanov@strato.de>
2025-09-23 13:30:14 +02:00
Misha M.-Kupriyanov
613a643fc5 refactor(admin-delegation): extract plain output to new function
prepare to add json output

Signed-off-by: Misha M.-Kupriyanov <kupriyanov@strato.de>
2025-09-23 13:30:14 +02:00
Misha M.-Kupriyanov
7fe45314b3 chore(admin-delegation): remove unused settings variable
Signed-off-by: Misha M.-Kupriyanov <kupriyanov@strato.de>
2025-09-23 13:30:14 +02:00
Robin Appelman
26ae51c4b3 feat: add header with user id in response
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-09-18 18:30:04 +02:00
provokateurin
98081dfd42 feat(ObjectStore): Add option to limit the total size
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-09-10 08:15:28 +02:00
3226 changed files with 98658 additions and 77384 deletions

View File

@@ -4,33 +4,35 @@ ARG DEBIAN_FRONTEND=noninteractive
# PHP
RUN apt-get update -y && \
apt install -y apache2 vim software-properties-common sudo nano gnupg2
apt install -y apache2 vim software-properties-common sudo nano gnupg2 wget curl git \
lsb-release ca-certificates apt-transport-https && \
add-apt-repository ppa:ondrej/php -y && \
apt-get update -y
RUN apt-get install --no-install-recommends -y \
php8.3 \
php8.3-common \
php8.3-gd \
php8.3-zip \
php8.3-curl \
php8.3-xml \
php8.3-xmlrpc \
php8.3-mbstring \
php8.3-sqlite \
php8.3-xdebug \
php8.3-pgsql \
php8.3-intl \
php8.3-imagick \
php8.3-gmp \
php8.3-apcu \
php8.3-bcmath \
php8.3-redis \
php8.3-soap \
php8.3-imap \
php8.3-opcache \
php8.3-cli \
php8.3-dev \
php8.4 \
php8.4-common \
php8.4-gd \
php8.4-zip \
php8.4-curl \
php8.4-xml \
php8.4-xmlrpc \
php8.4-mbstring \
php8.4-sqlite \
php8.4-xdebug \
php8.4-pgsql \
php8.4-intl \
php8.4-imagick \
php8.4-gmp \
php8.4-apcu \
php8.4-bcmath \
php8.4-redis \
php8.4-soap \
php8.4-imap \
php8.4-opcache \
php8.4-cli \
php8.4-dev \
libmagickcore-6.q16-7-extra \
curl \
lsof \
make \
unzip
@@ -42,39 +44,39 @@ RUN curl -sS https://getcomposer.org/installer -o /tmp/composer-setup.php && \
php /tmp/composer-setup.php --install-dir=/usr/local/bin --filename=composer && \
rm /tmp/composer-setup.php /tmp/composer-setup.sig
RUN echo "xdebug.remote_enable = 1" >> /etc/php/8.3/cli/conf.d/20-xdebug.ini && \
echo "xdebug.remote_autostart = 1" >> /etc/php/8.3/cli/conf.d/20-xdebug.ini && \
echo "apc.enable_cli=1" >> /etc/php/8.3/cli/conf.d/20-apcu.ini
RUN echo "xdebug.remote_enable = 1" >> /etc/php/8.4/cli/conf.d/20-xdebug.ini && \
echo "xdebug.remote_autostart = 1" >> /etc/php/8.4/cli/conf.d/20-xdebug.ini && \
echo "apc.enable_cli=1" >> /etc/php/8.4/cli/conf.d/20-apcu.ini
# Autostart XDebug for apache
RUN { \
echo "xdebug.mode=debug"; \
echo "xdebug.start_with_request=yes"; \
} >> /etc/php/8.3/apache2/conf.d/20-xdebug.ini
} >> /etc/php/8.4/apache2/conf.d/20-xdebug.ini
# Increase PHP memory limit to 512mb
RUN sed -i 's/memory_limit = .*/memory_limit = 512M/' /etc/php/8.3/apache2/php.ini
RUN sed -i 's/memory_limit = .*/memory_limit = 512M/' /etc/php/8.4/apache2/php.ini
# Docker
RUN apt-get -y install \
apt-transport-https \
ca-certificates \
curl \
gnupg-agent \
software-properties-common && \
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add - && \
add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable" && \
# Docker CLI only (for controlling host Docker via socket)
RUN install -m 0755 -d /etc/apt/keyrings && \
curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc && \
chmod a+r /etc/apt/keyrings/docker.asc && \
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | \
tee /etc/apt/sources.list.d/docker.list > /dev/null && \
apt-get update -y && \
apt-get install -y docker-ce docker-ce-cli containerd.io && \
apt-get install -y docker-ce-cli && \
ln -s /var/run/docker-host.sock /var/run/docker.sock
# Dedicated DevContainer user runs Apache
ENV APACHE_RUN_USER=devcontainer
ENV APACHE_RUN_GROUP=devcontainer
RUN useradd -ms /bin/bash ${APACHE_RUN_USER} && \
# Delete any existing user/group with UID/GID 1000 first
RUN (getent passwd 1000 && userdel -r $(getent passwd 1000 | cut -d: -f1)) || true && \
(getent group 1000 && groupdel $(getent group 1000 | cut -d: -f1)) || true && \
groupadd -g 1000 ${APACHE_RUN_GROUP} && \
useradd -u 1000 -g 1000 -ms /bin/bash ${APACHE_RUN_USER} && \
adduser ${APACHE_RUN_USER} sudo && \
echo '%sudo ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers && \
sed -ri "s/^export APACHE_RUN_USER=.*$/export APACHE_RUN_USER=${APACHE_RUN_USER}/" "/etc/apache2/envvars" && \
@@ -84,6 +86,6 @@ USER devcontainer
# NVM
RUN curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash
RUN bash --login -i -c 'source /home/devcontainer/.bashrc && nvm install 16'
RUN bash --login -i -c 'source /home/devcontainer/.bashrc && nvm install 22'
WORKDIR /var/www/html

View File

@@ -1,6 +1,5 @@
# SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: AGPL-3.0-or-later
version: '3'
services:
nextclouddev:
build: .

View File

@@ -5,4 +5,9 @@
#
# Set git safe.directory
git config --global --add safe.directory /var/www/html
git config --global --add safe.directory /var/www/html/3rdparty
git config --global --add safe.directory /var/www/html/3rdparty
# Ensure devcontainer user has access to docker socket
if [ -S /var/run/docker.sock ]; then
sudo chmod 666 /var/run/docker.sock
fi

View File

@@ -1,14 +0,0 @@
# SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: AGPL-3.0-or-later
# Ignoring folders for eslint
node_modules/
3rdparty/
**/vendor/
**/l10n/
**/js/*
*.config.js
tests/lib/
apps-extra
# TODO: remove when comments files is not using handlebar templates anymore
apps/comments/src/templates.js

View File

@@ -1,60 +0,0 @@
/**
* SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
module.exports = {
globals: {
__webpack_nonce__: true,
_: true,
$: true,
dayNames: true,
escapeHTML: true,
firstDay: true,
moment: true,
oc_userconfig: true,
sinon: true,
},
plugins: [
'cypress',
],
extends: [
'@nextcloud/eslint-config/typescript',
'plugin:cypress/recommended',
],
rules: {
'comma-dangle': 'error',
'no-tabs': 'warn',
// TODO: make sure we fix this as this is bad vue coding style.
// Use proper sync modifier
'vue/no-mutating-props': 'warn',
'vue/custom-event-name-casing': ['error', 'kebab-case', {
// allows custom xxxx:xxx events formats
ignores: ['/^[a-z]+(?:-[a-z]+)*:[a-z]+(?:-[a-z]+)*$/u'],
}],
'vue/html-self-closing': 'error',
},
settings: {
jsdoc: {
mode: 'typescript',
},
'import/resolver': {
typescript: {}, // this loads <rootdir>/tsconfig.json to eslint
},
},
overrides: [
// Allow any in tests
{
files: ['**/*.spec.ts'],
rules: {
'@typescript-eslint/no-explicit-any': 'warn',
},
},
{
files: ['*.vue'],
rules: {
'no-irregular-whitespace': 'off',
'vue/no-irregular-whitespace': 'error',
},
},
],
}

View File

@@ -19,3 +19,7 @@ af6de04e9e141466dc229e444ff3f146f4a34765
b06f5ba4c47450f355a8903c1a93ac68e8c6cfc2
# Update to coding-standard 1.4.0
5981b7eb512aa411f51cad541d01c5c6e93476f0
# Migrate `and` `or` operators to logical `&&` `||` operators
660f3f6fd1ae5539b8f74bfa48859d1b9f1e6abf
# Migrate to ESLint v9 enforced code style
91f3b6b4ee60e0f8bb6e21f92d5bc52e4cebe657

2
.github/CODEOWNERS vendored
View File

@@ -15,6 +15,8 @@
**/js @nextcloud/server-frontend
**/src @nextcloud/server-frontend
*.js @nextcloud/server-frontend
*.cjs @nextcloud/server-frontend
*.mjs @nextcloud/server-frontend
*.ts @nextcloud/server-frontend
# dependency management

View File

@@ -46,7 +46,7 @@ jobs:
strategy:
matrix:
php-versions: ['8.1']
php-versions: ['8.2']
name: PHP checkers
@@ -75,7 +75,7 @@ jobs:
strategy:
matrix:
php-versions: ['8.1']
php-versions: ['8.2']
name: Translation and Files checkers

View File

@@ -102,8 +102,8 @@ jobs:
matrix:
# Run multiple copies of the current job in parallel
# Please increase the number or runners as your tests suite grows (0 based index for e2e tests)
containers: ['component', 'setup', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
# Hack as strategy.job-total includes the component and GitHub does not allow math expressions
containers: ['setup', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
# Hack as strategy.job-total includes the "setup" and GitHub does not allow math expressions
# Always align this number with the total of e2e runners (max. index + 1)
total-containers: [10]

View File

@@ -45,10 +45,10 @@ jobs:
strategy:
fail-fast: false
matrix:
php-versions: ['8.1', '8.4']
php-versions: ['8.2', '8.4']
ftpd: ['proftpd', 'vsftpd', 'pure-ftpd']
include:
- php-versions: '8.1'
- php-versions: '8.2'
coverage: ${{ github.event_name != 'pull_request' }}
name: php${{ matrix.php-versions }}-${{ matrix.ftpd }}

View File

@@ -45,7 +45,7 @@ jobs:
strategy:
fail-fast: false
matrix:
php-versions: ['8.1', '8.2', '8.4']
php-versions: ['8.2', '8.4']
include:
- php-versions: '8.3'
coverage: ${{ github.event_name != 'pull_request' }}
@@ -134,7 +134,7 @@ jobs:
strategy:
matrix:
php-versions: ['8.1', '8.2', '8.4']
php-versions: ['8.2', '8.4']
include:
- php-versions: '8.3'
coverage: ${{ github.event_name != 'pull_request' }}

View File

@@ -45,10 +45,10 @@ jobs:
strategy:
fail-fast: false
matrix:
php-versions: ['8.1', '8.4']
php-versions: ['8.2', '8.4']
sftpd: ['openssh']
include:
- php-versions: '8.1'
- php-versions: '8.2'
coverage: ${{ github.event_name != 'pull_request' }}
name: php${{ matrix.php-versions }}-${{ matrix.sftpd }}

View File

@@ -67,10 +67,10 @@ jobs:
- name: Pull images
run: |
docker pull ghcr.io/icewind1991/samba-krb-test-dc
docker pull ghcr.io/icewind1991/samba-krb-test-apache
docker pull ghcr.io/icewind1991/samba-krb-test-apache-gssapi:8.4
docker pull ghcr.io/icewind1991/samba-krb-test-client
docker tag ghcr.io/icewind1991/samba-krb-test-dc icewind1991/samba-krb-test-dc
docker tag ghcr.io/icewind1991/samba-krb-test-apache icewind1991/samba-krb-test-apache
docker tag ghcr.io/icewind1991/samba-krb-test-apache-gssapi:8.4 icewind1991/samba-krb-test-apache-gssapi
docker tag ghcr.io/icewind1991/samba-krb-test-client icewind1991/samba-krb-test-client
- name: Setup AD-DC

View File

@@ -45,9 +45,8 @@ jobs:
strategy:
fail-fast: false
matrix:
php-versions: ['8.1']
include:
- php-versions: '8.1'
- php-versions: '8.2'
coverage: ${{ github.event_name != 'pull_request' }}
name: php${{ matrix.php-versions }}-smb

View File

@@ -45,7 +45,7 @@ jobs:
strategy:
fail-fast: false
matrix:
php-versions: ['8.1', '8.2', '8.3', '8.4']
php-versions: ['8.3', '8.4']
include:
- php-versions: '8.2'
coverage: ${{ github.event_name != 'pull_request' }}

View File

@@ -44,7 +44,7 @@ jobs:
strategy:
fail-fast: false
matrix:
php-versions: ['8.1', '8.2', '8.3', '8.4']
php-versions: ['8.3', '8.4']
include:
- php-versions: '8.2'
coverage: ${{ github.event_name != 'pull_request' }}

View File

@@ -45,7 +45,7 @@ jobs:
strategy:
fail-fast: false
matrix:
php-versions: ['8.1']
php-versions: ['8.2']
endpoint: ['old', 'new']
service: ['CalDAV', 'CardDAV']

View File

@@ -45,7 +45,7 @@ jobs:
strategy:
fail-fast: false
matrix:
php-versions: ['8.1']
php-versions: ['8.2']
endpoint: ['webdav', 'dav']
name: Litmus WebDAV ${{ matrix.endpoint }}

View File

@@ -45,7 +45,7 @@ jobs:
strategy:
fail-fast: false
matrix:
php-versions: ['8.1']
php-versions: ['8.2']
key: ['objectstore', 'objectstore_multibucket']
name: php${{ matrix.php-versions }}-${{ matrix.key }}-minio

View File

@@ -73,7 +73,7 @@ jobs:
- 'theming_features'
- 'videoverification_features'
php-versions: ['8.1']
php-versions: ['8.4']
spreed-versions: ['main']
activity-versions: ['master']
@@ -84,9 +84,10 @@ jobs:
ports:
- 6379:6379/tcp
openldap:
image: ghcr.io/nextcloud/continuous-integration-openldap:openldap-7 # zizmor: ignore[unpinned-images]
image: ghcr.io/nextcloud/continuous-integration-openldap:openldap-8 # zizmor: ignore[unpinned-images]
ports:
- 389:389
- 636:636
env:
SLAPD_DOMAIN: nextcloud.ci
SLAPD_ORGANIZATION: Nextcloud

View File

@@ -47,7 +47,7 @@ jobs:
strategy:
matrix:
php-versions: [ '8.1', '8.2', '8.3', '8.4' ]
php-versions: [ '8.2', '8.3', '8.4' ]
name: php-lint

View File

@@ -114,35 +114,6 @@ jobs:
if: ${{ !cancelled() }}
uses: codecov/test-results-action@47f89e9acb64b76debcd5ea40642d25a4adced9f # v1.1.1
jsunit:
runs-on: ubuntu-latest
needs: [versions, changes]
if: ${{ needs.versions.result != 'failure' && needs.changes.outputs.src != 'false' }}
env:
CYPRESS_INSTALL_BINARY: 0
steps:
- name: Checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Set up node ${{ needs.versions.outputs.nodeVersion }}
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
with:
node-version: ${{ needs.versions.outputs.nodeVersion }}
- name: Set up npm ${{ needs.versions.outputs.npmVersion }}
run: npm i -g 'npm@${{ needs.versions.outputs.npmVersion }}'
- name: Install dependencies
run: npm ci
- name: Test
run: npm run test:jsunit
handlebars:
runs-on: ubuntu-latest
needs: [versions, changes]
@@ -177,7 +148,7 @@ jobs:
permissions:
contents: none
runs-on: ubuntu-latest-low
needs: [changes, test, jsunit, handlebars]
needs: [changes, test, handlebars]
if: always()
@@ -185,4 +156,4 @@ jobs:
steps:
- name: Summary status
run: if ${{ needs.changes.outputs.src != 'false' && (needs.test.result != 'success' || needs.jsunit.result != 'success' || needs.handlebars.result != 'success') }}; then exit 1; fi
run: if ${{ needs.changes.outputs.src != 'false' && (needs.test.result != 'success' || needs.handlebars.result != 'success') }}; then exit 1; fi

View File

@@ -49,9 +49,9 @@ jobs:
strategy:
fail-fast: false
matrix:
php-versions: ['8.1', '8.2']
php-versions: ['8.2', '8.3']
include:
- php-versions: '8.3'
- php-versions: '8.4'
coverage: true
name: php${{ matrix.php-versions }}-azure

View File

@@ -49,7 +49,7 @@ jobs:
strategy:
fail-fast: false
matrix:
php-versions: ['8.1', '8.2']
php-versions: ['8.2']
include:
- php-versions: '8.3'
coverage: true

View File

@@ -49,7 +49,7 @@ jobs:
strategy:
fail-fast: false
matrix:
php-versions: ['8.1', '8.2']
php-versions: ['8.2']
include:
- php-versions: '8.3'
coverage: true

View File

@@ -33,7 +33,7 @@ jobs:
- name: Set up php
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 # v2.35.4
with:
php-version: '8.1'
php-version: '8.2'
extensions: ctype, curl, dom, fileinfo, gd, json, libxml, mbstring, openssl, pcntl, pdo, posix, session, simplexml, xml, xmlreader, xmlwriter, zip, zlib
coverage: none
ini-file: development

View File

@@ -23,7 +23,7 @@ jobs:
strategy:
fail-fast: false
matrix:
php-versions: ['8.1']
php-versions: ['8.2']
name: performance-${{ matrix.php-versions }}

View File

@@ -30,7 +30,7 @@ jobs:
strategy:
fail-fast: false
matrix:
php-versions: ['8.1','8.3']
php-versions: ['8.2', '8.3', '8.4']
steps:
- name: Checkout server

View File

@@ -59,7 +59,7 @@ jobs:
strategy:
fail-fast: false
matrix:
php-versions: ['8.1']
php-versions: ['8.2']
mariadb-versions: ['10.3', '10.6', '10.11', '11.4', '11.8']
include:
- php-versions: '8.3'

View File

@@ -56,7 +56,7 @@ jobs:
strategy:
fail-fast: false
matrix:
php-versions: ['8.1', '8.3', '8.4']
php-versions: ['8.3', '8.4']
include:
- php-versions: '8.2'
coverage: ${{ github.event_name != 'pull_request' }}

View File

@@ -56,7 +56,7 @@ jobs:
strategy:
fail-fast: false
matrix:
php-versions: ['8.1']
php-versions: ['8.2']
mysql-versions: ['8.4']
name: Sharding - MySQL ${{ matrix.mysql-versions }} (PHP ${{ matrix.php-versions }}) - database tests

View File

@@ -59,7 +59,7 @@ jobs:
strategy:
fail-fast: false
matrix:
php-versions: ['8.1']
php-versions: ['8.2']
mysql-versions: ['8.0', '8.4']
include:
- mysql-versions: '8.0'

View File

@@ -59,7 +59,7 @@ jobs:
strategy:
fail-fast: false
matrix:
php-versions: ['8.1', '8.3', '8.4']
php-versions: ['8.3', '8.4']
include:
- php-versions: '8.2'
coverage: ${{ github.event_name != 'pull_request' }}

View File

@@ -49,7 +49,7 @@ jobs:
strategy:
fail-fast: false
matrix:
php-versions: ['8.1']
php-versions: ['8.2']
key: ['s3', 's3-multibucket']
name: php${{ matrix.php-versions }}-${{ matrix.key }}-minio

View File

@@ -61,9 +61,9 @@ jobs:
matrix:
include:
- oracle-versions: '11'
php-versions: '8.1'
php-versions: '8.2'
- oracle-versions: '18'
php-versions: '8.1'
php-versions: '8.2'
coverage: ${{ github.event_name != 'pull_request' }}
- oracle-versions: '21'
php-versions: '8.2'

View File

@@ -59,7 +59,7 @@ jobs:
strategy:
fail-fast: false
matrix:
php-versions: ['8.1']
php-versions: ['8.2']
# To keep the matrix smaller we ignore PostgreSQL versions in between as we already test the minimum and the maximum
postgres-versions: ['13', '17']
include:

View File

@@ -59,9 +59,9 @@ jobs:
strategy:
fail-fast: false
matrix:
php-versions: ['8.2', '8.3', '8.4']
php-versions: ['8.3', '8.4']
include:
- php-versions: '8.1'
- php-versions: '8.2'
coverage: ${{ github.event_name != 'pull_request' }}
name: SQLite (PHP ${{ matrix.php-versions }})

View File

@@ -36,7 +36,7 @@ jobs:
- name: Set up php
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 #v2.35.4
with:
php-version: '8.1'
php-version: '8.2'
extensions: apcu,ctype,curl,dom,fileinfo,ftp,gd,imagick,intl,json,ldap,mbstring,openssl,pdo_sqlite,posix,sqlite,xml,zip
coverage: none
env:
@@ -67,7 +67,7 @@ jobs:
- name: Set up php
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 #v2.35.4
with:
php-version: '8.1'
php-version: '8.2'
extensions: ctype,curl,dom,fileinfo,ftp,gd,imagick,intl,json,ldap,mbstring,openssl,pdo_sqlite,posix,sqlite,xml,zip
coverage: none
@@ -102,7 +102,7 @@ jobs:
- name: Set up php
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 #v2.35.4
with:
php-version: '8.1'
php-version: '8.2'
extensions: ctype,curl,dom,fileinfo,gd,imagick,intl,json,mbstring,openssl,pdo_sqlite,posix,sqlite,xml,zip
coverage: none
env:
@@ -133,7 +133,7 @@ jobs:
- name: Set up php
uses: shivammathur/setup-php@ec406be512d7077f68eed36e63f4d91bc006edc4 #v2.35.4
with:
php-version: '8.1'
php-version: '8.2'
extensions: ctype,curl,dom,fileinfo,gd,imagick,intl,json,mbstring,openssl,pdo_sqlite,posix,sqlite,xml,zip
coverage: none
env:

View File

@@ -178,7 +178,7 @@ SPDX-FileCopyrightText = "2020 Nextcloud GmbH and Nextcloud contributors"
SPDX-License-Identifier = "AGPL-3.0-or-later"
[[annotations]]
path = ["cypress/tsconfig.json", "dist/icons.css"]
path = ["cypress/tsconfig.json", "cypress/fixtures/appstore/apps.json", "dist/icons.css"]
precedence = "aggregate"
SPDX-FileCopyrightText = "2022 Nextcloud GmbH and Nextcloud contributors"
SPDX-License-Identifier = "AGPL-3.0-or-later"
@@ -250,7 +250,7 @@ SPDX-FileCopyrightText = "2023 Nextcloud GmbH and Nextcloud contributors"
SPDX-License-Identifier = "AGPL-3.0-or-later"
[[annotations]]
path = ["apps/dav/lib/ExampleContentFiles/exampleContact.vcf", "tests/data/testvideo-remote-file.mp4"]
path = ["apps/dav/lib/ExampleContentFiles/exampleContact.vcf", "tests/data/testvideo-remote-file.mp4", "tests/lib/AppFramework/Middleware/Mock/UseSessionController.php", "tests/lib/AppFramework/Middleware/Security/Mock/BruteForceMiddlewareController.php", "tests/lib/AppFramework/Middleware/Security/Mock/RateLimitingMiddlewareController.php"]
precedence = "aggregate"
SPDX-FileCopyrightText = "2025 Nextcloud GmbH and Nextcloud contributors"
SPDX-License-Identifier = "AGPL-3.0-or-later"
@@ -328,19 +328,19 @@ SPDX-FileCopyrightText = "2016-2024 Collabora Ltd."
SPDX-License-Identifier = "LicenseRef-CollaboraTrademarks"
[[annotations]]
path = ["core/img/x.svg", "core/img/twitter.svg", "core/img/actions/twitter.svg", "apps/federatedfilesharing/img/social-twitter.svg"]
path = ["core/img/x.svg", "core/img/x-dark.svg", "core/img/x-light.svg", "core/img/twitter.svg", "core/img/actions/twitter.svg", "apps/federatedfilesharing/img/social-twitter.svg"]
precedence = "aggregate"
SPDX-FileCopyrightText = "X Corp."
SPDX-License-Identifier = "LicenseRef-XTrademarks"
[[annotations]]
path = ["core/img/bluesky.svg", "core/img/actions/bluesky.svg"]
path = ["core/img/bluesky.svg", "core/img/bluesky-light.svg", "core/img/actions/bluesky.svg"]
precedence = "aggregate"
SPDX-FileCopyrightText = "2012-2024 Fonticons, Inc."
SPDX-License-Identifier = "CC-BY-4.0"
[[annotations]]
path = ["core/img/facebook.svg", "apps/federatedfilesharing/img/social-facebook.svg"]
path = ["core/img/facebook.svg", "core/img/facebook-light.svg", "apps/federatedfilesharing/img/social-facebook.svg"]
precedence = "aggregate"
SPDX-FileCopyrightText = "2024 Meta"
SPDX-License-Identifier = "LicenseRef-FacebookTrademarks"
@@ -352,7 +352,7 @@ SPDX-FileCopyrightText = "2024 Diaspora"
SPDX-License-Identifier = "LicenseRef-DiasporaTrademarks"
[[annotations]]
path = ["core/img/mastodon.svg", "core/img/actions/mastodon.svg"]
path = ["core/img/mastodon.svg", "core/img/mastodon-light.svg", "core/img/actions/mastodon.svg"]
precedence = "aggregate"
SPDX-FileCopyrightText = "2024 Mastodon gGmbH"
SPDX-License-Identifier = "LicenseRef-MastodonTrademarks"
@@ -400,7 +400,7 @@ SPDX-FileCopyrightText = "2019 Fabian Wiktor <https://www.pexels.com/photo/green
SPDX-License-Identifier = "CC0-1.0"
[[annotations]]
path = ["openapi.json", ".envrc", "flake.nix", "flake.lock"]
path = ["openapi.json", ".envrc", "flake.nix", "flake.lock", "build/eslint-baseline.json"]
precedence = "aggregate"
SPDX-FileCopyrightText = "2025 Nextcloud GmbH and Nextcloud contributors"
SPDX-License-Identifier = "AGPL-3.0-or-later"

View File

@@ -2,7 +2,8 @@
* SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
export const getCurrentUser = function() {
export function getCurrentUser() {
return {
uid: 'test',
displayName: 'Test',
@@ -10,8 +11,8 @@ export const getCurrentUser = function() {
}
}
export const getRequestToken = function() {
export function getRequestToken() {
return 'test-token-1234'
}
export const onRequestTokenUpdate = function() {}
export function onRequestTokenUpdate() {}

View File

@@ -2,9 +2,10 @@
* SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
import type { Capabilities } from '../../apps/files/src/types'
export const getCapabilities = (): Capabilities => {
import type { Capabilities } from '../../apps/files/src/types.ts'
export function getCapabilities(): Capabilities {
return {
files: {
bigfilechunking: true,

View File

@@ -3,6 +3,6 @@
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
export const loadState = function(app: string, key: string, fallback?: any) {
export function loadState(app: string, key: string, fallback?: any) {
return fallback
}

View File

@@ -2,9 +2,10 @@
* SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
export const createClient = () => {}
export const getPatcher = () => {
export function createClient() {}
export function getPatcher() {
return {
patch: () => {}
patch: () => {},
}
}

View File

@@ -2,11 +2,11 @@
* SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
import { basename } from 'node:path'
import mime from 'mime'
import { basename } from 'node:path'
class FileSystemEntry {
private _isFile: boolean
private _fullPath: string
@@ -26,11 +26,9 @@ class FileSystemEntry {
get name() {
return basename(this._fullPath)
}
}
export class FileSystemFileEntry extends FileSystemEntry {
private _contents: string
private _lastModified: number
@@ -46,11 +44,9 @@ export class FileSystemFileEntry extends FileSystemEntry {
const type = mime.getType(this.name) || ''
success(new File([this._contents], this.name, { lastModified, type }))
}
}
export class FileSystemDirectoryEntry extends FileSystemEntry {
private _entries: FileSystemEntry[]
constructor(fullPath: string, entries: FileSystemEntry[]) {
@@ -70,7 +66,6 @@ export class FileSystemDirectoryEntry extends FileSystemEntry {
},
}
}
}
/**
@@ -79,7 +74,6 @@ export class FileSystemDirectoryEntry extends FileSystemEntry {
* File API in the same test suite.
*/
export class DataTransferItem {
private _type: string
private _entry: FileSystemEntry
@@ -104,7 +98,7 @@ export class DataTransferItem {
return this._type
}
getAsFile(): File|null {
getAsFile(): File | null {
if (this._entry.isFile && this._entry instanceof FileSystemFileEntry) {
let file: File | null = null
this._entry.file((f) => {
@@ -116,10 +110,9 @@ export class DataTransferItem {
// The browser will return an empty File object if the entry is a directory
return new File([], this._entry.name, { type: '' })
}
}
export const fileSystemEntryToDataTransferItem = (entry: FileSystemEntry, isFileSystemAPIAvailable = true): DataTransferItem => {
export function fileSystemEntryToDataTransferItem(entry: FileSystemEntry, isFileSystemAPIAvailable = true): DataTransferItem {
return new DataTransferItem(
entry.isFile ? 'text/plain' : 'httpd/unix-directory',
entry,

View File

@@ -2,6 +2,7 @@
* SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: CC0-1.0
*/
export function setup() {
process.env.TZ = 'UTC'
}

View File

@@ -2,5 +2,6 @@
* SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: CC0-1.0
*/
import '@testing-library/jest-dom/vitest'
import 'core-js/stable/index.js'

View File

@@ -23,6 +23,4 @@ return array(
'OCA\\Comments\\Notification\\Listener' => $baseDir . '/../lib/Notification/Listener.php',
'OCA\\Comments\\Notification\\Notifier' => $baseDir . '/../lib/Notification/Notifier.php',
'OCA\\Comments\\Search\\CommentsSearchProvider' => $baseDir . '/../lib/Search/CommentsSearchProvider.php',
'OCA\\Comments\\Search\\LegacyProvider' => $baseDir . '/../lib/Search/LegacyProvider.php',
'OCA\\Comments\\Search\\Result' => $baseDir . '/../lib/Search/Result.php',
);

View File

@@ -38,8 +38,6 @@ class ComposerStaticInitComments
'OCA\\Comments\\Notification\\Listener' => __DIR__ . '/..' . '/../lib/Notification/Listener.php',
'OCA\\Comments\\Notification\\Notifier' => __DIR__ . '/..' . '/../lib/Notification/Notifier.php',
'OCA\\Comments\\Search\\CommentsSearchProvider' => __DIR__ . '/..' . '/../lib/Search/CommentsSearchProvider.php',
'OCA\\Comments\\Search\\LegacyProvider' => __DIR__ . '/..' . '/../lib/Search/LegacyProvider.php',
'OCA\\Comments\\Search\\Result' => __DIR__ . '/..' . '/../lib/Search/Result.php',
);
public static function getInitializer(ClassLoader $loader)

View File

@@ -17,7 +17,6 @@ OC.L10N.register(
"Delete comment" : "حذف التعليق",
"Cancel edit" : "إلغاء التعديل",
"New comment" : "تعليق جديد",
"Write a comment …" : "أكتُب تعليق ...",
"Post comment" : "أضف تعليق",
"@ for mentions, : for emoji, / for smart picker" : "@ للإشارات : للإيموجي / للاقط الذكي",
"Could not reload comments" : "تعذّرت إعادة تحميل التعليقات",
@@ -31,6 +30,7 @@ OC.L10N.register(
"An error occurred while trying to edit the comment" : "حدث خطأ أثناء محاولة تعديل التعليق",
"Comment deleted" : "التعليق محذوف",
"An error occurred while trying to delete the comment" : "حدث خطأ أثناء محاولة حذف التعليق",
"An error occurred while trying to create the comment" : "حدث خطأ أثناء محاولة إنشاء التعليق"
"An error occurred while trying to create the comment" : "حدث خطأ أثناء محاولة إنشاء التعليق",
"Write a comment …" : "أكتُب تعليق ..."
},
"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;");

View File

@@ -15,7 +15,6 @@
"Delete comment" : "حذف التعليق",
"Cancel edit" : "إلغاء التعديل",
"New comment" : "تعليق جديد",
"Write a comment …" : "أكتُب تعليق ...",
"Post comment" : "أضف تعليق",
"@ for mentions, : for emoji, / for smart picker" : "@ للإشارات : للإيموجي / للاقط الذكي",
"Could not reload comments" : "تعذّرت إعادة تحميل التعليقات",
@@ -29,6 +28,7 @@
"An error occurred while trying to edit the comment" : "حدث خطأ أثناء محاولة تعديل التعليق",
"Comment deleted" : "التعليق محذوف",
"An error occurred while trying to delete the comment" : "حدث خطأ أثناء محاولة حذف التعليق",
"An error occurred while trying to create the comment" : "حدث خطأ أثناء محاولة إنشاء التعليق"
"An error occurred while trying to create the comment" : "حدث خطأ أثناء محاولة إنشاء التعليق",
"Write a comment …" : "أكتُب تعليق ..."
},"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;"
}

View File

@@ -17,7 +17,6 @@ OC.L10N.register(
"Delete comment" : "Desaniciar el comentariu",
"Cancel edit" : "Anular la edición",
"New comment" : "Comentariu nuevu",
"Write a comment …" : "Escribi un comentariu…",
"Post comment" : "Espublizar el comentariu",
"@ for mentions, : for emoji, / for smart picker" : "@ pa les menciones, : pa los fustaxes, / pal selector intelixente",
"Could not reload comments" : "Nun se pudieron recargar los comentarios",
@@ -31,6 +30,7 @@ OC.L10N.register(
"An error occurred while trying to edit the comment" : "Prodúxose un error mentanto se tentaba d'editar el comentariu",
"Comment deleted" : "Desanicióse'l comentariu",
"An error occurred while trying to delete the comment" : "Prodúxose un error mentanto se tentaba de desaniciar el comentariu",
"An error occurred while trying to create the comment" : "Prodúxose un error mentanto se tentaba de crear el comentariu"
"An error occurred while trying to create the comment" : "Prodúxose un error mentanto se tentaba de crear el comentariu",
"Write a comment …" : "Escribi un comentariu…"
},
"nplurals=2; plural=(n != 1);");

View File

@@ -15,7 +15,6 @@
"Delete comment" : "Desaniciar el comentariu",
"Cancel edit" : "Anular la edición",
"New comment" : "Comentariu nuevu",
"Write a comment …" : "Escribi un comentariu…",
"Post comment" : "Espublizar el comentariu",
"@ for mentions, : for emoji, / for smart picker" : "@ pa les menciones, : pa los fustaxes, / pal selector intelixente",
"Could not reload comments" : "Nun se pudieron recargar los comentarios",
@@ -29,6 +28,7 @@
"An error occurred while trying to edit the comment" : "Prodúxose un error mentanto se tentaba d'editar el comentariu",
"Comment deleted" : "Desanicióse'l comentariu",
"An error occurred while trying to delete the comment" : "Prodúxose un error mentanto se tentaba de desaniciar el comentariu",
"An error occurred while trying to create the comment" : "Prodúxose un error mentanto se tentaba de crear el comentariu"
"An error occurred while trying to create the comment" : "Prodúxose un error mentanto se tentaba de crear el comentariu",
"Write a comment …" : "Escribi un comentariu…"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View File

@@ -17,9 +17,9 @@ OC.L10N.register(
"Delete comment" : "Выдаліць каментарый",
"Cancel edit" : "Скасаваць рэдагаванне",
"New comment" : "Новы каментарый",
"Write a comment …" : "Напішыце каментарый …",
"Write a comment …" : "Напішыце каментарый …",
"Post comment" : "Апублікаваць каментарый",
"@ for mentions, : for emoji, / for smart picker" : "@ - згадкі, : - эмодзі, / - разумны выбар",
"@ for mentions, : for emoji, / for smart picker" : "@ - згадкі, : - эмодзі, / - smart picker",
"Could not reload comments" : "Не ўдалося перазагрузіць каментарыі",
"Failed to mark comments as read" : "Не атрымалася пазначыць каментарыі як прачытаныя",
"Unable to load the comments list" : "Не ўдалося загрузіць спіс каментарыяў",
@@ -31,6 +31,7 @@ OC.L10N.register(
"An error occurred while trying to edit the comment" : "Падчас спробы рэдагавання каментарыя ўзнікла памылка",
"Comment deleted" : "Каментарый выдалены",
"An error occurred while trying to delete the comment" : "Падчас спробы выдалення каментарыя ўзнікла памылка",
"An error occurred while trying to create the comment" : "Падчас спробы стварэння каментарыя ўзнікла памылка"
"An error occurred while trying to create the comment" : "Падчас спробы стварэння каментарыя ўзнікла памылка",
"Write a comment …" : "Напішыце каментарый …"
},
"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);");

View File

@@ -15,9 +15,9 @@
"Delete comment" : "Выдаліць каментарый",
"Cancel edit" : "Скасаваць рэдагаванне",
"New comment" : "Новы каментарый",
"Write a comment …" : "Напішыце каментарый …",
"Write a comment …" : "Напішыце каментарый …",
"Post comment" : "Апублікаваць каментарый",
"@ for mentions, : for emoji, / for smart picker" : "@ - згадкі, : - эмодзі, / - разумны выбар",
"@ for mentions, : for emoji, / for smart picker" : "@ - згадкі, : - эмодзі, / - smart picker",
"Could not reload comments" : "Не ўдалося перазагрузіць каментарыі",
"Failed to mark comments as read" : "Не атрымалася пазначыць каментарыі як прачытаныя",
"Unable to load the comments list" : "Не ўдалося загрузіць спіс каментарыяў",
@@ -29,6 +29,7 @@
"An error occurred while trying to edit the comment" : "Падчас спробы рэдагавання каментарыя ўзнікла памылка",
"Comment deleted" : "Каментарый выдалены",
"An error occurred while trying to delete the comment" : "Падчас спробы выдалення каментарыя ўзнікла памылка",
"An error occurred while trying to create the comment" : "Падчас спробы стварэння каментарыя ўзнікла памылка"
"An error occurred while trying to create the comment" : "Падчас спробы стварэння каментарыя ўзнікла памылка",
"Write a comment …" : "Напішыце каментарый …"
},"pluralForm" :"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"
}

View File

@@ -17,7 +17,6 @@ OC.L10N.register(
"Delete comment" : "Suprimeix el comentari",
"Cancel edit" : "Cancel·la l'edició",
"New comment" : "Comentari nou",
"Write a comment …" : "Escriviu un comentari…",
"Post comment" : "Publica el comentari",
"@ for mentions, : for emoji, / for smart picker" : "@ per a mencions, : per a emojis, / per al selector intel·ligent",
"Could not reload comments" : "No s'han pogut tornar a carregar els comentaris",
@@ -31,6 +30,7 @@ OC.L10N.register(
"An error occurred while trying to edit the comment" : "S'ha produït un error en intentar editar el comentari",
"Comment deleted" : "S'ha suprimit el comentari",
"An error occurred while trying to delete the comment" : "S'ha produït un error en intentar suprimir el comentari",
"An error occurred while trying to create the comment" : "S'ha produït un error en intentar crear el comentari"
"An error occurred while trying to create the comment" : "S'ha produït un error en intentar crear el comentari",
"Write a comment …" : "Escriviu un comentari…"
},
"nplurals=2; plural=(n != 1);");

View File

@@ -15,7 +15,6 @@
"Delete comment" : "Suprimeix el comentari",
"Cancel edit" : "Cancel·la l'edició",
"New comment" : "Comentari nou",
"Write a comment …" : "Escriviu un comentari…",
"Post comment" : "Publica el comentari",
"@ for mentions, : for emoji, / for smart picker" : "@ per a mencions, : per a emojis, / per al selector intel·ligent",
"Could not reload comments" : "No s'han pogut tornar a carregar els comentaris",
@@ -29,6 +28,7 @@
"An error occurred while trying to edit the comment" : "S'ha produït un error en intentar editar el comentari",
"Comment deleted" : "S'ha suprimit el comentari",
"An error occurred while trying to delete the comment" : "S'ha produït un error en intentar suprimir el comentari",
"An error occurred while trying to create the comment" : "S'ha produït un error en intentar crear el comentari"
"An error occurred while trying to create the comment" : "S'ha produït un error en intentar crear el comentari",
"Write a comment …" : "Escriviu un comentari…"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View File

@@ -17,7 +17,6 @@ OC.L10N.register(
"Delete comment" : "Smazat komentář",
"Cancel edit" : "Zrušit úpravu",
"New comment" : "Nový komentář",
"Write a comment …" : "Napsat komentář…",
"Post comment" : "Odeslat komentář",
"@ for mentions, : for emoji, / for smart picker" : "@ pro zmínění, : pro emotikony, / pro inteligentní výběr",
"Could not reload comments" : "Znovunačtení komentářů se nezdařilo",
@@ -31,6 +30,7 @@ OC.L10N.register(
"An error occurred while trying to edit the comment" : "Došlo k chybě při pokusu o úpravu komentáře",
"Comment deleted" : "Komentář smazán",
"An error occurred while trying to delete the comment" : "Došlo k chybě při pokusu o smazání komentáře",
"An error occurred while trying to create the comment" : "Došlo k chybě při pokusu o vytvoření komentáře"
"An error occurred while trying to create the comment" : "Došlo k chybě při pokusu o vytvoření komentáře",
"Write a comment …" : "Napsat komentář…"
},
"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;");

View File

@@ -15,7 +15,6 @@
"Delete comment" : "Smazat komentář",
"Cancel edit" : "Zrušit úpravu",
"New comment" : "Nový komentář",
"Write a comment …" : "Napsat komentář…",
"Post comment" : "Odeslat komentář",
"@ for mentions, : for emoji, / for smart picker" : "@ pro zmínění, : pro emotikony, / pro inteligentní výběr",
"Could not reload comments" : "Znovunačtení komentářů se nezdařilo",
@@ -29,6 +28,7 @@
"An error occurred while trying to edit the comment" : "Došlo k chybě při pokusu o úpravu komentáře",
"Comment deleted" : "Komentář smazán",
"An error occurred while trying to delete the comment" : "Došlo k chybě při pokusu o smazání komentáře",
"An error occurred while trying to create the comment" : "Došlo k chybě při pokusu o vytvoření komentáře"
"An error occurred while trying to create the comment" : "Došlo k chybě při pokusu o vytvoření komentáře",
"Write a comment …" : "Napsat komentář…"
},"pluralForm" :"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"
}

View File

@@ -10,14 +10,14 @@ OC.L10N.register(
"{author} commented on {file}" : "{author} kommenterede {file}",
"<strong>Comments</strong> for files" : "<strong>Kommentarer</strong> for filer",
"Files" : "Filer",
"You were mentioned on \"{file}\", in a comment by an account that has since been deleted" : "Du blev nævnt på \"{file}\", i en kommentar af en konto, som siden er blevet slettet",
"{user} mentioned you in a comment on \"{file}\"" : "{user} nævnte dig i en kommentar til \"{file}\"",
"You were mentioned on \"{file}\", in a comment by an account that has since been deleted" : "Du blev omtalt på \"{file}\", i en kommentar af en konto, som siden er blevet slettet",
"{user} mentioned you in a comment on \"{file}\"" : "{user} omtalte dig i en kommentar til \"{file}\"",
"Files app plugin to add comments to files" : "Files app plugin til at tilføje kommentarer til filer",
"Edit comment" : "Redigér kommentar",
"Delete comment" : "Slet kommentar",
"Cancel edit" : "Annullér redigering",
"New comment" : "Ny kommentar",
"Write a comment …" : "Skriv kommentar…",
"Write a comment …" : "Skriv kommentar …",
"Post comment" : "Skriv kommentar",
"@ for mentions, : for emoji, / for smart picker" : "\"@\" for at omtale, \":\" for emojis, \"/\" for Smart Vælger",
"Could not reload comments" : "Kunne ikke indlæse kommentarer",
@@ -31,6 +31,7 @@ OC.L10N.register(
"An error occurred while trying to edit the comment" : "Der opstod en fejl under forsøget på at redigere kommentaren",
"Comment deleted" : "Kommentar slettet",
"An error occurred while trying to delete the comment" : "Der opstod en fejl under forsøget på at slette kommentaren",
"An error occurred while trying to create the comment" : "Der opstod en fejl under forsøget på at oprette kommentaren"
"An error occurred while trying to create the comment" : "Der opstod en fejl under forsøget på at oprette kommentaren",
"Write a comment …" : "Skriv kommentar…"
},
"nplurals=2; plural=(n != 1);");

View File

@@ -8,14 +8,14 @@
"{author} commented on {file}" : "{author} kommenterede {file}",
"<strong>Comments</strong> for files" : "<strong>Kommentarer</strong> for filer",
"Files" : "Filer",
"You were mentioned on \"{file}\", in a comment by an account that has since been deleted" : "Du blev nævnt på \"{file}\", i en kommentar af en konto, som siden er blevet slettet",
"{user} mentioned you in a comment on \"{file}\"" : "{user} nævnte dig i en kommentar til \"{file}\"",
"You were mentioned on \"{file}\", in a comment by an account that has since been deleted" : "Du blev omtalt på \"{file}\", i en kommentar af en konto, som siden er blevet slettet",
"{user} mentioned you in a comment on \"{file}\"" : "{user} omtalte dig i en kommentar til \"{file}\"",
"Files app plugin to add comments to files" : "Files app plugin til at tilføje kommentarer til filer",
"Edit comment" : "Redigér kommentar",
"Delete comment" : "Slet kommentar",
"Cancel edit" : "Annullér redigering",
"New comment" : "Ny kommentar",
"Write a comment …" : "Skriv kommentar…",
"Write a comment …" : "Skriv kommentar …",
"Post comment" : "Skriv kommentar",
"@ for mentions, : for emoji, / for smart picker" : "\"@\" for at omtale, \":\" for emojis, \"/\" for Smart Vælger",
"Could not reload comments" : "Kunne ikke indlæse kommentarer",
@@ -29,6 +29,7 @@
"An error occurred while trying to edit the comment" : "Der opstod en fejl under forsøget på at redigere kommentaren",
"Comment deleted" : "Kommentar slettet",
"An error occurred while trying to delete the comment" : "Der opstod en fejl under forsøget på at slette kommentaren",
"An error occurred while trying to create the comment" : "Der opstod en fejl under forsøget på at oprette kommentaren"
"An error occurred while trying to create the comment" : "Der opstod en fejl under forsøget på at oprette kommentaren",
"Write a comment …" : "Skriv kommentar…"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View File

@@ -17,7 +17,7 @@ OC.L10N.register(
"Delete comment" : "Kommentar löschen",
"Cancel edit" : "Bearbeiten abbrechen",
"New comment" : "Neuer Kommentar",
"Write a comment …" : "Einen Kommentar schreiben …",
"Write a comment …" : "Einen Kommentar schreiben …",
"Post comment" : "Kommentar veröffentlichen",
"@ for mentions, : for emoji, / for smart picker" : "@ für Erwähnungen, : für Emoji, / für Smart Picker",
"Could not reload comments" : "Kommentare konnten nicht erneut geladen werden",
@@ -31,6 +31,7 @@ OC.L10N.register(
"An error occurred while trying to edit the comment" : "Es ist ein Fehler beim Bearbeiten des Kommentars aufgetreten",
"Comment deleted" : "Kommentar gelöscht",
"An error occurred while trying to delete the comment" : "Es ist ein Fehler beim Löschen des Kommentars aufgetreten",
"An error occurred while trying to create the comment" : "Es ist ein Fehler beim Erstellen des Kommentars aufgetreten"
"An error occurred while trying to create the comment" : "Es ist ein Fehler beim Erstellen des Kommentars aufgetreten",
"Write a comment …" : "Einen Kommentar schreiben …"
},
"nplurals=2; plural=(n != 1);");

View File

@@ -15,7 +15,7 @@
"Delete comment" : "Kommentar löschen",
"Cancel edit" : "Bearbeiten abbrechen",
"New comment" : "Neuer Kommentar",
"Write a comment …" : "Einen Kommentar schreiben …",
"Write a comment …" : "Einen Kommentar schreiben …",
"Post comment" : "Kommentar veröffentlichen",
"@ for mentions, : for emoji, / for smart picker" : "@ für Erwähnungen, : für Emoji, / für Smart Picker",
"Could not reload comments" : "Kommentare konnten nicht erneut geladen werden",
@@ -29,6 +29,7 @@
"An error occurred while trying to edit the comment" : "Es ist ein Fehler beim Bearbeiten des Kommentars aufgetreten",
"Comment deleted" : "Kommentar gelöscht",
"An error occurred while trying to delete the comment" : "Es ist ein Fehler beim Löschen des Kommentars aufgetreten",
"An error occurred while trying to create the comment" : "Es ist ein Fehler beim Erstellen des Kommentars aufgetreten"
"An error occurred while trying to create the comment" : "Es ist ein Fehler beim Erstellen des Kommentars aufgetreten",
"Write a comment …" : "Einen Kommentar schreiben …"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View File

@@ -17,7 +17,7 @@ OC.L10N.register(
"Delete comment" : "Kommentar löschen",
"Cancel edit" : "Bearbeiten abbrechen",
"New comment" : "Neuer Kommentar",
"Write a comment …" : "Schreiben Sie einen Kommentar …",
"Write a comment …" : "Einen Kommentar schreiben …",
"Post comment" : "Kommentar veröffentlichen",
"@ for mentions, : for emoji, / for smart picker" : "@ für Erwähnungen, : für Emoji, / für Smart Picker",
"Could not reload comments" : "Kommentare konnten nicht erneut geladen werden",
@@ -31,6 +31,7 @@ OC.L10N.register(
"An error occurred while trying to edit the comment" : "Es ist ein Fehler beim Bearbeiten des Kommentars aufgetreten",
"Comment deleted" : "Kommentar gelöscht",
"An error occurred while trying to delete the comment" : "Es ist ein Fehler beim Löschen des Kommentars aufgetreten",
"An error occurred while trying to create the comment" : "Es ist ein Fehler beim Erstellen des Kommentars aufgetreten"
"An error occurred while trying to create the comment" : "Es ist ein Fehler beim Erstellen des Kommentars aufgetreten",
"Write a comment …" : "Schreiben Sie einen Kommentar …"
},
"nplurals=2; plural=(n != 1);");

View File

@@ -15,7 +15,7 @@
"Delete comment" : "Kommentar löschen",
"Cancel edit" : "Bearbeiten abbrechen",
"New comment" : "Neuer Kommentar",
"Write a comment …" : "Schreiben Sie einen Kommentar …",
"Write a comment …" : "Einen Kommentar schreiben …",
"Post comment" : "Kommentar veröffentlichen",
"@ for mentions, : for emoji, / for smart picker" : "@ für Erwähnungen, : für Emoji, / für Smart Picker",
"Could not reload comments" : "Kommentare konnten nicht erneut geladen werden",
@@ -29,6 +29,7 @@
"An error occurred while trying to edit the comment" : "Es ist ein Fehler beim Bearbeiten des Kommentars aufgetreten",
"Comment deleted" : "Kommentar gelöscht",
"An error occurred while trying to delete the comment" : "Es ist ein Fehler beim Löschen des Kommentars aufgetreten",
"An error occurred while trying to create the comment" : "Es ist ein Fehler beim Erstellen des Kommentars aufgetreten"
"An error occurred while trying to create the comment" : "Es ist ein Fehler beim Erstellen des Kommentars aufgetreten",
"Write a comment …" : "Schreiben Sie einen Kommentar …"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View File

@@ -17,7 +17,7 @@ OC.L10N.register(
"Delete comment" : "Διαγραφή σχολίου",
"Cancel edit" : "Ακύρωση επεξεργασίας",
"New comment" : "Νέο σχόλιο",
"Write a comment …" : "Γράψτε ένα σχόλιο …",
"Write a comment …" : "Γράψτε ένα σχόλιο …",
"Post comment" : "Αναρτήστε σχόλιο",
"@ for mentions, : for emoji, / for smart picker" : "@ για αναφορές, : για emoji, / για έξυπνο επιλογέα",
"Could not reload comments" : "Αδυναμία επανάφόρτωσης σχολίων",
@@ -31,6 +31,7 @@ OC.L10N.register(
"An error occurred while trying to edit the comment" : "Παρουσιάστηκε σφάλμα κατά την προσπάθεια επεξεργασίας του σχολίου",
"Comment deleted" : "Το σχόλιο διαγράφηκε",
"An error occurred while trying to delete the comment" : "Παρουσιάστηκε σφάλμα κατά την προσπάθεια διαγραφής του σχολίου",
"An error occurred while trying to create the comment" : "Παρουσιάστηκε σφάλμα κατά την προσπάθεια δημιουργίας του σχολίου"
"An error occurred while trying to create the comment" : "Παρουσιάστηκε σφάλμα κατά την προσπάθεια δημιουργίας του σχολίου",
"Write a comment …" : "Γράψτε ένα σχόλιο …"
},
"nplurals=2; plural=(n != 1);");

View File

@@ -15,7 +15,7 @@
"Delete comment" : "Διαγραφή σχολίου",
"Cancel edit" : "Ακύρωση επεξεργασίας",
"New comment" : "Νέο σχόλιο",
"Write a comment …" : "Γράψτε ένα σχόλιο …",
"Write a comment …" : "Γράψτε ένα σχόλιο …",
"Post comment" : "Αναρτήστε σχόλιο",
"@ for mentions, : for emoji, / for smart picker" : "@ για αναφορές, : για emoji, / για έξυπνο επιλογέα",
"Could not reload comments" : "Αδυναμία επανάφόρτωσης σχολίων",
@@ -29,6 +29,7 @@
"An error occurred while trying to edit the comment" : "Παρουσιάστηκε σφάλμα κατά την προσπάθεια επεξεργασίας του σχολίου",
"Comment deleted" : "Το σχόλιο διαγράφηκε",
"An error occurred while trying to delete the comment" : "Παρουσιάστηκε σφάλμα κατά την προσπάθεια διαγραφής του σχολίου",
"An error occurred while trying to create the comment" : "Παρουσιάστηκε σφάλμα κατά την προσπάθεια δημιουργίας του σχολίου"
"An error occurred while trying to create the comment" : "Παρουσιάστηκε σφάλμα κατά την προσπάθεια δημιουργίας του σχολίου",
"Write a comment …" : "Γράψτε ένα σχόλιο …"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View File

@@ -17,7 +17,6 @@ OC.L10N.register(
"Delete comment" : "Delete comment",
"Cancel edit" : "Cancel edit",
"New comment" : "New comment",
"Write a comment …" : "Write a comment …",
"Post comment" : "Post comment",
"@ for mentions, : for emoji, / for smart picker" : "@ for mentions, : for emoji, / for smart picker",
"Could not reload comments" : "Could not reload comments",
@@ -31,6 +30,7 @@ OC.L10N.register(
"An error occurred while trying to edit the comment" : "An error occurred while trying to edit the comment",
"Comment deleted" : "Comment deleted",
"An error occurred while trying to delete the comment" : "An error occurred while trying to delete the comment",
"An error occurred while trying to create the comment" : "An error occurred while trying to create the comment"
"An error occurred while trying to create the comment" : "An error occurred while trying to create the comment",
"Write a comment …" : "Write a comment …"
},
"nplurals=2; plural=(n != 1);");

View File

@@ -15,7 +15,6 @@
"Delete comment" : "Delete comment",
"Cancel edit" : "Cancel edit",
"New comment" : "New comment",
"Write a comment …" : "Write a comment …",
"Post comment" : "Post comment",
"@ for mentions, : for emoji, / for smart picker" : "@ for mentions, : for emoji, / for smart picker",
"Could not reload comments" : "Could not reload comments",
@@ -29,6 +28,7 @@
"An error occurred while trying to edit the comment" : "An error occurred while trying to edit the comment",
"Comment deleted" : "Comment deleted",
"An error occurred while trying to delete the comment" : "An error occurred while trying to delete the comment",
"An error occurred while trying to create the comment" : "An error occurred while trying to create the comment"
"An error occurred while trying to create the comment" : "An error occurred while trying to create the comment",
"Write a comment …" : "Write a comment …"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View File

@@ -17,7 +17,6 @@ OC.L10N.register(
"Delete comment" : "Borrar comentario",
"Cancel edit" : "Cacelar edición",
"New comment" : "Comentario nuevo",
"Write a comment …" : "Escribir un comentario …",
"Post comment" : "Publicar comentario",
"@ for mentions, : for emoji, / for smart picker" : "@ para menciones, : para emoji, / para selector inteligente",
"Could not reload comments" : "No se pudieron recargar los comentarios",
@@ -31,6 +30,7 @@ OC.L10N.register(
"An error occurred while trying to edit the comment" : "Ocurrió un error intentando editar el comentario",
"Comment deleted" : "Comentario borrado",
"An error occurred while trying to delete the comment" : "Ocurrió un error intentando borrar el comentario",
"An error occurred while trying to create the comment" : "Ocurrió un error intentando crear el comentario"
"An error occurred while trying to create the comment" : "Ocurrió un error intentando crear el comentario",
"Write a comment …" : "Escribir un comentario …"
},
"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");

View File

@@ -15,7 +15,6 @@
"Delete comment" : "Borrar comentario",
"Cancel edit" : "Cacelar edición",
"New comment" : "Comentario nuevo",
"Write a comment …" : "Escribir un comentario …",
"Post comment" : "Publicar comentario",
"@ for mentions, : for emoji, / for smart picker" : "@ para menciones, : para emoji, / para selector inteligente",
"Could not reload comments" : "No se pudieron recargar los comentarios",
@@ -29,6 +28,7 @@
"An error occurred while trying to edit the comment" : "Ocurrió un error intentando editar el comentario",
"Comment deleted" : "Comentario borrado",
"An error occurred while trying to delete the comment" : "Ocurrió un error intentando borrar el comentario",
"An error occurred while trying to create the comment" : "Ocurrió un error intentando crear el comentario"
"An error occurred while trying to create the comment" : "Ocurrió un error intentando crear el comentario",
"Write a comment …" : "Escribir un comentario …"
},"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
}

View File

@@ -17,7 +17,6 @@ OC.L10N.register(
"Delete comment" : "Borrar comentario",
"Cancel edit" : "Cancelar edición",
"New comment" : "Nuevo comentario",
"Write a comment …" : "Escribir un comentario …",
"Post comment" : "Publicar comentario",
"@ for mentions, : for emoji, / for smart picker" : "@ para menciones, : para emoticonos, / para selector inteligente",
"Could not reload comments" : "No se pudieron recargar los comentarios",
@@ -30,6 +29,7 @@ OC.L10N.register(
"An error occurred while trying to edit the comment" : "Ocurrió un error al intentar editar el comentario",
"Comment deleted" : "Comentario borrado",
"An error occurred while trying to delete the comment" : "Ocurrió un error intentando borrar el comentario",
"An error occurred while trying to create the comment" : "Ocurrió un error al intentar crear el comentario"
"An error occurred while trying to create the comment" : "Ocurrió un error al intentar crear el comentario",
"Write a comment …" : "Escribir un comentario …"
},
"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");

View File

@@ -15,7 +15,6 @@
"Delete comment" : "Borrar comentario",
"Cancel edit" : "Cancelar edición",
"New comment" : "Nuevo comentario",
"Write a comment …" : "Escribir un comentario …",
"Post comment" : "Publicar comentario",
"@ for mentions, : for emoji, / for smart picker" : "@ para menciones, : para emoticonos, / para selector inteligente",
"Could not reload comments" : "No se pudieron recargar los comentarios",
@@ -28,6 +27,7 @@
"An error occurred while trying to edit the comment" : "Ocurrió un error al intentar editar el comentario",
"Comment deleted" : "Comentario borrado",
"An error occurred while trying to delete the comment" : "Ocurrió un error intentando borrar el comentario",
"An error occurred while trying to create the comment" : "Ocurrió un error al intentar crear el comentario"
"An error occurred while trying to create the comment" : "Ocurrió un error al intentar crear el comentario",
"Write a comment …" : "Escribir un comentario …"
},"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
}

View File

@@ -17,7 +17,6 @@ OC.L10N.register(
"Delete comment" : "Borrar comentario",
"Cancel edit" : "Cancelar edición",
"New comment" : "Nuevo comentario",
"Write a comment …" : "Escribir un comentario …",
"Post comment" : "Publicar comentario",
"@ for mentions, : for emoji, / for smart picker" : "@ para menciones, : para emoticonos, / para selector inteligente",
"Could not reload comments" : "No se pudieron recargar los comentarios",
@@ -31,6 +30,7 @@ OC.L10N.register(
"An error occurred while trying to edit the comment" : "Ocurrió un error al intentar editar el comentario",
"Comment deleted" : "Comentario borrado",
"An error occurred while trying to delete the comment" : "Ocurrió un error intentando borrar el comentario",
"An error occurred while trying to create the comment" : "Ocurrió un error al intentar crear el comentario"
"An error occurred while trying to create the comment" : "Ocurrió un error al intentar crear el comentario",
"Write a comment …" : "Escribir un comentario …"
},
"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");

View File

@@ -15,7 +15,6 @@
"Delete comment" : "Borrar comentario",
"Cancel edit" : "Cancelar edición",
"New comment" : "Nuevo comentario",
"Write a comment …" : "Escribir un comentario …",
"Post comment" : "Publicar comentario",
"@ for mentions, : for emoji, / for smart picker" : "@ para menciones, : para emoticonos, / para selector inteligente",
"Could not reload comments" : "No se pudieron recargar los comentarios",
@@ -29,6 +28,7 @@
"An error occurred while trying to edit the comment" : "Ocurrió un error al intentar editar el comentario",
"Comment deleted" : "Comentario borrado",
"An error occurred while trying to delete the comment" : "Ocurrió un error intentando borrar el comentario",
"An error occurred while trying to create the comment" : "Ocurrió un error al intentar crear el comentario"
"An error occurred while trying to create the comment" : "Ocurrió un error al intentar crear el comentario",
"Write a comment …" : "Escribir un comentario …"
},"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
}

View File

@@ -17,7 +17,7 @@ OC.L10N.register(
"Delete comment" : "Kustuta kommentaar",
"Cancel edit" : "Loobu muutmisest",
"New comment" : "Uus kommentaar",
"Write a comment …" : "Kirjuta kommentaar...",
"Write a comment …" : "Kirjuta kommentaar...",
"Post comment" : "Postita kommentaar",
"@ for mentions, : for emoji, / for smart picker" : "@ mainimiseks, : emojide jaoks, / nutika valija jaoks",
"Could not reload comments" : "Ei saanud kommentaare uuesti laadida",
@@ -31,6 +31,7 @@ OC.L10N.register(
"An error occurred while trying to edit the comment" : "Kommentaari muutmisel tekkis tõrge",
"Comment deleted" : "Kommentaar kustutatud",
"An error occurred while trying to delete the comment" : "Kommentaari kustutamisel tekkis tõrge",
"An error occurred while trying to create the comment" : "Kommentaari lisamisel tekkis tõrge"
"An error occurred while trying to create the comment" : "Kommentaari lisamisel tekkis tõrge",
"Write a comment …" : "Kirjuta kommentaar..."
},
"nplurals=2; plural=(n != 1);");

View File

@@ -15,7 +15,7 @@
"Delete comment" : "Kustuta kommentaar",
"Cancel edit" : "Loobu muutmisest",
"New comment" : "Uus kommentaar",
"Write a comment …" : "Kirjuta kommentaar...",
"Write a comment …" : "Kirjuta kommentaar...",
"Post comment" : "Postita kommentaar",
"@ for mentions, : for emoji, / for smart picker" : "@ mainimiseks, : emojide jaoks, / nutika valija jaoks",
"Could not reload comments" : "Ei saanud kommentaare uuesti laadida",
@@ -29,6 +29,7 @@
"An error occurred while trying to edit the comment" : "Kommentaari muutmisel tekkis tõrge",
"Comment deleted" : "Kommentaar kustutatud",
"An error occurred while trying to delete the comment" : "Kommentaari kustutamisel tekkis tõrge",
"An error occurred while trying to create the comment" : "Kommentaari lisamisel tekkis tõrge"
"An error occurred while trying to create the comment" : "Kommentaari lisamisel tekkis tõrge",
"Write a comment …" : "Kirjuta kommentaar..."
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View File

@@ -17,7 +17,6 @@ OC.L10N.register(
"Delete comment" : "Ezabatu iruzkina",
"Cancel edit" : "Utzi editatzeari",
"New comment" : "Iruzkin berria",
"Write a comment …" : "Idatzi iruzkin bat ...",
"Post comment" : "Argitaratu iruzkina",
"@ for mentions, : for emoji, / for smart picker" : "@ aipamenetarako, : emojientzako, / hautatzaile adimentsurako",
"Could not reload comments" : "Ezin izan dira iruzkinak freskatu",
@@ -31,6 +30,7 @@ OC.L10N.register(
"An error occurred while trying to edit the comment" : "Errorea gertatu da iruzkina editatzen saiatzean",
"Comment deleted" : "Iruzkina ezabatu da",
"An error occurred while trying to delete the comment" : "Errorea gertatu da iruzkina ezabatzen saiatzean",
"An error occurred while trying to create the comment" : "Errorea gertatu da iruzkina sortzen saiatzean"
"An error occurred while trying to create the comment" : "Errorea gertatu da iruzkina sortzen saiatzean",
"Write a comment …" : "Idatzi iruzkin bat ..."
},
"nplurals=2; plural=(n != 1);");

View File

@@ -15,7 +15,6 @@
"Delete comment" : "Ezabatu iruzkina",
"Cancel edit" : "Utzi editatzeari",
"New comment" : "Iruzkin berria",
"Write a comment …" : "Idatzi iruzkin bat ...",
"Post comment" : "Argitaratu iruzkina",
"@ for mentions, : for emoji, / for smart picker" : "@ aipamenetarako, : emojientzako, / hautatzaile adimentsurako",
"Could not reload comments" : "Ezin izan dira iruzkinak freskatu",
@@ -29,6 +28,7 @@
"An error occurred while trying to edit the comment" : "Errorea gertatu da iruzkina editatzen saiatzean",
"Comment deleted" : "Iruzkina ezabatu da",
"An error occurred while trying to delete the comment" : "Errorea gertatu da iruzkina ezabatzen saiatzean",
"An error occurred while trying to create the comment" : "Errorea gertatu da iruzkina sortzen saiatzean"
"An error occurred while trying to create the comment" : "Errorea gertatu da iruzkina sortzen saiatzean",
"Write a comment …" : "Idatzi iruzkin bat ..."
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View File

@@ -17,7 +17,6 @@ OC.L10N.register(
"Delete comment" : "حذف دیدگاه",
"Cancel edit" : "Cancel edit",
"New comment" : "دیدگاه جدید",
"Write a comment …" : "دیدگاهی بنویسید...",
"Post comment" : "فرستادن دیدگاه",
"@ for mentions, : for emoji, / for smart picker" : "@ برای اشاره، : برای شکلک، / برای انتخاب‌گر هوشمند",
"Could not reload comments" : "ناتوانی در دریافت دیدگاه‌ها",
@@ -31,6 +30,7 @@ OC.L10N.register(
"An error occurred while trying to edit the comment" : "خطایی در خلال تلاش برای ویرایش دیدگاه رخ داد",
"Comment deleted" : "دیدگاه حذف شد",
"An error occurred while trying to delete the comment" : "خطایی در خلال تلاش برای حذف دیدگاه رخ داد",
"An error occurred while trying to create the comment" : "خطایی در خلال تلاش برای ایجاد دیدگاه رخ داد"
"An error occurred while trying to create the comment" : "خطایی در خلال تلاش برای ایجاد دیدگاه رخ داد",
"Write a comment …" : "دیدگاهی بنویسید..."
},
"nplurals=2; plural=(n > 1);");

View File

@@ -15,7 +15,6 @@
"Delete comment" : "حذف دیدگاه",
"Cancel edit" : "Cancel edit",
"New comment" : "دیدگاه جدید",
"Write a comment …" : "دیدگاهی بنویسید...",
"Post comment" : "فرستادن دیدگاه",
"@ for mentions, : for emoji, / for smart picker" : "@ برای اشاره، : برای شکلک، / برای انتخاب‌گر هوشمند",
"Could not reload comments" : "ناتوانی در دریافت دیدگاه‌ها",
@@ -29,6 +28,7 @@
"An error occurred while trying to edit the comment" : "خطایی در خلال تلاش برای ویرایش دیدگاه رخ داد",
"Comment deleted" : "دیدگاه حذف شد",
"An error occurred while trying to delete the comment" : "خطایی در خلال تلاش برای حذف دیدگاه رخ داد",
"An error occurred while trying to create the comment" : "خطایی در خلال تلاش برای ایجاد دیدگاه رخ داد"
"An error occurred while trying to create the comment" : "خطایی در خلال تلاش برای ایجاد دیدگاه رخ داد",
"Write a comment …" : "دیدگاهی بنویسید..."
},"pluralForm" :"nplurals=2; plural=(n > 1);"
}

View File

@@ -15,7 +15,6 @@ OC.L10N.register(
"Delete comment" : "Poista kommentti",
"Cancel edit" : "Peruuta muokkaus",
"New comment" : "Uusi kommentti",
"Write a comment …" : "Kirjoita kommentti…",
"Post comment" : "Lähetä viesti",
"@ for mentions, : for emoji, / for smart picker" : "@ maininnoille, : emojille, / älykkäälle valitsimelle",
"Could not reload comments" : "Kommenttien lataus epäonnistui",
@@ -29,6 +28,7 @@ OC.L10N.register(
"An error occurred while trying to edit the comment" : "Kommenttia muokatessa tapahtui virhe",
"Comment deleted" : "Kommentti poistettu",
"An error occurred while trying to delete the comment" : "Kommenttia poistaessa tapahtui virhe",
"An error occurred while trying to create the comment" : "Kommenttia luodessa tapahtui virhe"
"An error occurred while trying to create the comment" : "Kommenttia luodessa tapahtui virhe",
"Write a comment …" : "Kirjoita kommentti…"
},
"nplurals=2; plural=(n != 1);");

View File

@@ -13,7 +13,6 @@
"Delete comment" : "Poista kommentti",
"Cancel edit" : "Peruuta muokkaus",
"New comment" : "Uusi kommentti",
"Write a comment …" : "Kirjoita kommentti…",
"Post comment" : "Lähetä viesti",
"@ for mentions, : for emoji, / for smart picker" : "@ maininnoille, : emojille, / älykkäälle valitsimelle",
"Could not reload comments" : "Kommenttien lataus epäonnistui",
@@ -27,6 +26,7 @@
"An error occurred while trying to edit the comment" : "Kommenttia muokatessa tapahtui virhe",
"Comment deleted" : "Kommentti poistettu",
"An error occurred while trying to delete the comment" : "Kommenttia poistaessa tapahtui virhe",
"An error occurred while trying to create the comment" : "Kommenttia luodessa tapahtui virhe"
"An error occurred while trying to create the comment" : "Kommenttia luodessa tapahtui virhe",
"Write a comment …" : "Kirjoita kommentti…"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View File

@@ -17,7 +17,7 @@ OC.L10N.register(
"Delete comment" : "Supprimer le commentaire",
"Cancel edit" : "Annuler les modifications",
"New comment" : "Nouveau commentaire",
"Write a comment …" : "Écrire un commentaire…",
"Write a comment …" : "Écrire un commentaire …",
"Post comment" : "Publier le commentaire",
"@ for mentions, : for emoji, / for smart picker" : "@ pour les mentions, : pour les émojis, / pour le sélecteur intelligent",
"Could not reload comments" : "Impossible de recharger les commentaires",
@@ -31,6 +31,7 @@ OC.L10N.register(
"An error occurred while trying to edit the comment" : "Une erreur est survenue lors de la tentative de modification du commentaire",
"Comment deleted" : "Commentaire supprimé",
"An error occurred while trying to delete the comment" : "Une erreur est survenue lors de la tentative de suppression du commentaire",
"An error occurred while trying to create the comment" : "Une erreur est survenue lors de la tentative de création du commentaire"
"An error occurred while trying to create the comment" : "Une erreur est survenue lors de la tentative de création du commentaire",
"Write a comment …" : "Écrire un commentaire…"
},
"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");

View File

@@ -15,7 +15,7 @@
"Delete comment" : "Supprimer le commentaire",
"Cancel edit" : "Annuler les modifications",
"New comment" : "Nouveau commentaire",
"Write a comment …" : "Écrire un commentaire…",
"Write a comment …" : "Écrire un commentaire …",
"Post comment" : "Publier le commentaire",
"@ for mentions, : for emoji, / for smart picker" : "@ pour les mentions, : pour les émojis, / pour le sélecteur intelligent",
"Could not reload comments" : "Impossible de recharger les commentaires",
@@ -29,6 +29,7 @@
"An error occurred while trying to edit the comment" : "Une erreur est survenue lors de la tentative de modification du commentaire",
"Comment deleted" : "Commentaire supprimé",
"An error occurred while trying to delete the comment" : "Une erreur est survenue lors de la tentative de suppression du commentaire",
"An error occurred while trying to create the comment" : "Une erreur est survenue lors de la tentative de création du commentaire"
"An error occurred while trying to create the comment" : "Une erreur est survenue lors de la tentative de création du commentaire",
"Write a comment …" : "Écrire un commentaire…"
},"pluralForm" :"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
}

View File

@@ -17,7 +17,7 @@ OC.L10N.register(
"Delete comment" : "Scrios nóta tráchta",
"Cancel edit" : "Cealaigh eagarthóireacht",
"New comment" : "Trácht nua",
"Write a comment …" : "Scríobh trácht…",
"Write a comment …" : "Scríobh trácht …",
"Post comment" : "Post trácht",
"@ for mentions, : for emoji, / for smart picker" : "@ le haghaidh tagairtí, : le haghaidh emoji, / le haghaidh roghnóir cliste",
"Could not reload comments" : "Níorbh fhéidir na nótaí tráchta a athlódáil",
@@ -31,6 +31,7 @@ OC.L10N.register(
"An error occurred while trying to edit the comment" : "Tharla earráid agus an nóta tráchta á chur in eagar",
"Comment deleted" : "Trácht scriosta",
"An error occurred while trying to delete the comment" : "Tharla earráid agus an nóta tráchta á scriosadh",
"An error occurred while trying to create the comment" : "Tharla earráid agus an nóta tráchta á chruthú"
"An error occurred while trying to create the comment" : "Tharla earráid agus an nóta tráchta á chruthú",
"Write a comment …" : "Scríobh trácht…"
},
"nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);");

View File

@@ -15,7 +15,7 @@
"Delete comment" : "Scrios nóta tráchta",
"Cancel edit" : "Cealaigh eagarthóireacht",
"New comment" : "Trácht nua",
"Write a comment …" : "Scríobh trácht…",
"Write a comment …" : "Scríobh trácht …",
"Post comment" : "Post trácht",
"@ for mentions, : for emoji, / for smart picker" : "@ le haghaidh tagairtí, : le haghaidh emoji, / le haghaidh roghnóir cliste",
"Could not reload comments" : "Níorbh fhéidir na nótaí tráchta a athlódáil",
@@ -29,6 +29,7 @@
"An error occurred while trying to edit the comment" : "Tharla earráid agus an nóta tráchta á chur in eagar",
"Comment deleted" : "Trácht scriosta",
"An error occurred while trying to delete the comment" : "Tharla earráid agus an nóta tráchta á scriosadh",
"An error occurred while trying to create the comment" : "Tharla earráid agus an nóta tráchta á chruthú"
"An error occurred while trying to create the comment" : "Tharla earráid agus an nóta tráchta á chruthú",
"Write a comment …" : "Scríobh trácht…"
},"pluralForm" :"nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);"
}

View File

@@ -17,7 +17,7 @@ OC.L10N.register(
"Delete comment" : "Eliminar comentario",
"Cancel edit" : "Cancelar a edición",
"New comment" : "Comentario novo",
"Write a comment …" : "Escriba un comentario…",
"Write a comment …" : "Escriba un comentario…",
"Post comment" : "Publicar comentario",
"@ for mentions, : for emoji, / for smart picker" : "@ para mencións, : para «emoji», / para selector intelixente",
"Could not reload comments" : "Non foi posíbel volver cargar os comentarios",
@@ -31,6 +31,7 @@ OC.L10N.register(
"An error occurred while trying to edit the comment" : "Produciuse un erro cando tentaba editar o comentario",
"Comment deleted" : "Comentario eliminado",
"An error occurred while trying to delete the comment" : "Produciuse un erro cando tentaba eliminar o comentario",
"An error occurred while trying to create the comment" : "Produciuse un erro cando tentaba crear o comentario"
"An error occurred while trying to create the comment" : "Produciuse un erro cando tentaba crear o comentario",
"Write a comment …" : "Escriba un comentario…"
},
"nplurals=2; plural=(n != 1);");

View File

@@ -15,7 +15,7 @@
"Delete comment" : "Eliminar comentario",
"Cancel edit" : "Cancelar a edición",
"New comment" : "Comentario novo",
"Write a comment …" : "Escriba un comentario…",
"Write a comment …" : "Escriba un comentario…",
"Post comment" : "Publicar comentario",
"@ for mentions, : for emoji, / for smart picker" : "@ para mencións, : para «emoji», / para selector intelixente",
"Could not reload comments" : "Non foi posíbel volver cargar os comentarios",
@@ -29,6 +29,7 @@
"An error occurred while trying to edit the comment" : "Produciuse un erro cando tentaba editar o comentario",
"Comment deleted" : "Comentario eliminado",
"An error occurred while trying to delete the comment" : "Produciuse un erro cando tentaba eliminar o comentario",
"An error occurred while trying to create the comment" : "Produciuse un erro cando tentaba crear o comentario"
"An error occurred while trying to create the comment" : "Produciuse un erro cando tentaba crear o comentario",
"Write a comment …" : "Escriba un comentario…"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View File

@@ -17,7 +17,7 @@ OC.L10N.register(
"Delete comment" : "Hozzászólás törlése",
"Cancel edit" : "Változások elvetése",
"New comment" : "Új hozzászólás",
"Write a comment …" : "Hozzászólás írása…",
"Write a comment …" : "Hozzászólás írása…",
"Post comment" : "Hozzászólás közzététele",
"@ for mentions, : for emoji, / for smart picker" : "@ az említésekhez, : az emodzsikhoz, / az okos választóhoz",
"Could not reload comments" : "Nem sikerült a megjegyzések újratöltése.",
@@ -31,6 +31,7 @@ OC.L10N.register(
"An error occurred while trying to edit the comment" : "Hiba történt a megjegyzés szerkesztése közben",
"Comment deleted" : "Hozzászólás törölve",
"An error occurred while trying to delete the comment" : "Hiba történt a megjegyzés törlése közben",
"An error occurred while trying to create the comment" : "Hiba történt a megjegyzés létrehozása közben"
"An error occurred while trying to create the comment" : "Hiba történt a megjegyzés létrehozása közben",
"Write a comment …" : "Hozzászólás írása…"
},
"nplurals=2; plural=(n != 1);");

View File

@@ -15,7 +15,7 @@
"Delete comment" : "Hozzászólás törlése",
"Cancel edit" : "Változások elvetése",
"New comment" : "Új hozzászólás",
"Write a comment …" : "Hozzászólás írása…",
"Write a comment …" : "Hozzászólás írása…",
"Post comment" : "Hozzászólás közzététele",
"@ for mentions, : for emoji, / for smart picker" : "@ az említésekhez, : az emodzsikhoz, / az okos választóhoz",
"Could not reload comments" : "Nem sikerült a megjegyzések újratöltése.",
@@ -29,6 +29,7 @@
"An error occurred while trying to edit the comment" : "Hiba történt a megjegyzés szerkesztése közben",
"Comment deleted" : "Hozzászólás törölve",
"An error occurred while trying to delete the comment" : "Hiba történt a megjegyzés törlése közben",
"An error occurred while trying to create the comment" : "Hiba történt a megjegyzés létrehozása közben"
"An error occurred while trying to create the comment" : "Hiba történt a megjegyzés létrehozása közben",
"Write a comment …" : "Hozzászólás írása…"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View File

@@ -17,7 +17,7 @@ OC.L10N.register(
"Delete comment" : "Eyða athugasemd",
"Cancel edit" : "Hætta við breytingar",
"New comment" : "Ný athugasemd",
"Write a comment …" : "Skrifa athugasemd ...",
"Write a comment …" : "Skrifaðu athugasemd ...",
"Post comment" : "Senda inn athugasemd",
"@ for mentions, : for emoji, / for smart picker" : "@ til að minnast á, : fyrir tjáningartákn, / fyrir snjallveljara",
"Could not reload comments" : "Gat ekki endurlesið athugasemdir",
@@ -31,6 +31,7 @@ OC.L10N.register(
"An error occurred while trying to edit the comment" : "Villa átti sér stað við að breyta athugasemdinni",
"Comment deleted" : "Athugasemd var eytt",
"An error occurred while trying to delete the comment" : "Villa átti sér stað við að eyða athugasemdinni",
"An error occurred while trying to create the comment" : "Villa átti sér stað við að útbúa athugasemdina"
"An error occurred while trying to create the comment" : "Villa átti sér stað við að útbúa athugasemdina",
"Write a comment …" : "Skrifa athugasemd ..."
},
"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);");

View File

@@ -15,7 +15,7 @@
"Delete comment" : "Eyða athugasemd",
"Cancel edit" : "Hætta við breytingar",
"New comment" : "Ný athugasemd",
"Write a comment …" : "Skrifa athugasemd ...",
"Write a comment …" : "Skrifaðu athugasemd ...",
"Post comment" : "Senda inn athugasemd",
"@ for mentions, : for emoji, / for smart picker" : "@ til að minnast á, : fyrir tjáningartákn, / fyrir snjallveljara",
"Could not reload comments" : "Gat ekki endurlesið athugasemdir",
@@ -29,6 +29,7 @@
"An error occurred while trying to edit the comment" : "Villa átti sér stað við að breyta athugasemdinni",
"Comment deleted" : "Athugasemd var eytt",
"An error occurred while trying to delete the comment" : "Villa átti sér stað við að eyða athugasemdinni",
"An error occurred while trying to create the comment" : "Villa átti sér stað við að útbúa athugasemdina"
"An error occurred while trying to create the comment" : "Villa átti sér stað við að útbúa athugasemdina",
"Write a comment …" : "Skrifa athugasemd ..."
},"pluralForm" :"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);"
}

View File

@@ -17,7 +17,6 @@ OC.L10N.register(
"Delete comment" : "Elimina commento",
"Cancel edit" : "Annulla modifica",
"New comment" : "Nuovo commento",
"Write a comment …" : "Scrivi un commento...",
"Post comment" : "Pubblica commento",
"@ for mentions, : for emoji, / for smart picker" : "@ per menzioni, : per emoji, / per selettore intelligente",
"Could not reload comments" : "Impossibile ricaricare i commenti",
@@ -31,6 +30,7 @@ OC.L10N.register(
"An error occurred while trying to edit the comment" : "Si è verificato un errore durante il tentativo di modificare il commento",
"Comment deleted" : "Commento eliminato",
"An error occurred while trying to delete the comment" : "Si è verificato un errore durante il tentativo di eliminare il commento",
"An error occurred while trying to create the comment" : "Si è verificato un errore durante il tentativo di creare il commento"
"An error occurred while trying to create the comment" : "Si è verificato un errore durante il tentativo di creare il commento",
"Write a comment …" : "Scrivi un commento..."
},
"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");

View File

@@ -15,7 +15,6 @@
"Delete comment" : "Elimina commento",
"Cancel edit" : "Annulla modifica",
"New comment" : "Nuovo commento",
"Write a comment …" : "Scrivi un commento...",
"Post comment" : "Pubblica commento",
"@ for mentions, : for emoji, / for smart picker" : "@ per menzioni, : per emoji, / per selettore intelligente",
"Could not reload comments" : "Impossibile ricaricare i commenti",
@@ -29,6 +28,7 @@
"An error occurred while trying to edit the comment" : "Si è verificato un errore durante il tentativo di modificare il commento",
"Comment deleted" : "Commento eliminato",
"An error occurred while trying to delete the comment" : "Si è verificato un errore durante il tentativo di eliminare il commento",
"An error occurred while trying to create the comment" : "Si è verificato un errore durante il tentativo di creare il commento"
"An error occurred while trying to create the comment" : "Si è verificato un errore durante il tentativo di creare il commento",
"Write a comment …" : "Scrivi un commento..."
},"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
}

View File

@@ -17,7 +17,7 @@ OC.L10N.register(
"Delete comment" : "コメントを削除",
"Cancel edit" : "編集をキャンセル",
"New comment" : "新しいコメント",
"Write a comment …" : "コメントを書く...",
"Write a comment …" : "コメントを書く...",
"Post comment" : "コメントを投稿",
"@ for mentions, : for emoji, / for smart picker" : "メンションには@、絵文字には:、スマートピッカーには/",
"Could not reload comments" : "コメントをリロードできませんでした",
@@ -31,6 +31,7 @@ OC.L10N.register(
"An error occurred while trying to edit the comment" : "コメント編集中にエラーが発生しました",
"Comment deleted" : "コメントが削除されました",
"An error occurred while trying to delete the comment" : "コメントの削除中にエラーが発生しました",
"An error occurred while trying to create the comment" : "コメント中にエラーが発生しました"
"An error occurred while trying to create the comment" : "コメント中にエラーが発生しました",
"Write a comment …" : "コメントを書く..."
},
"nplurals=1; plural=0;");

View File

@@ -15,7 +15,7 @@
"Delete comment" : "コメントを削除",
"Cancel edit" : "編集をキャンセル",
"New comment" : "新しいコメント",
"Write a comment …" : "コメントを書く...",
"Write a comment …" : "コメントを書く...",
"Post comment" : "コメントを投稿",
"@ for mentions, : for emoji, / for smart picker" : "メンションには@、絵文字には:、スマートピッカーには/",
"Could not reload comments" : "コメントをリロードできませんでした",
@@ -29,6 +29,7 @@
"An error occurred while trying to edit the comment" : "コメント編集中にエラーが発生しました",
"Comment deleted" : "コメントが削除されました",
"An error occurred while trying to delete the comment" : "コメントの削除中にエラーが発生しました",
"An error occurred while trying to create the comment" : "コメント中にエラーが発生しました"
"An error occurred while trying to create the comment" : "コメント中にエラーが発生しました",
"Write a comment …" : "コメントを書く..."
},"pluralForm" :"nplurals=1; plural=0;"
}

View File

@@ -17,7 +17,6 @@ OC.L10N.register(
"Delete comment" : "댓글 삭제",
"Cancel edit" : "편집 취소",
"New comment" : "새로운 댓글",
"Write a comment …" : "댓글 쓰기 ...",
"Post comment" : "댓글 게시",
"@ for mentions, : for emoji, / for smart picker" : "@을 입력해 언급, :을 입력해 이모지 추가, /을 입력해 스마트 피커를 사용하십시오.",
"Could not reload comments" : "댓글을 다시 불러올 수 없음",
@@ -31,6 +30,7 @@ OC.L10N.register(
"An error occurred while trying to edit the comment" : "댓글을 편집하는 중 오류 발생",
"Comment deleted" : "댓글이 삭제됨",
"An error occurred while trying to delete the comment" : "댓글을 삭제하는 중 오류 발생",
"An error occurred while trying to create the comment" : "댓글을 작성하는 중 오류 발생"
"An error occurred while trying to create the comment" : "댓글을 작성하는 중 오류 발생",
"Write a comment …" : "댓글 쓰기 ..."
},
"nplurals=1; plural=0;");

View File

@@ -15,7 +15,6 @@
"Delete comment" : "댓글 삭제",
"Cancel edit" : "편집 취소",
"New comment" : "새로운 댓글",
"Write a comment …" : "댓글 쓰기 ...",
"Post comment" : "댓글 게시",
"@ for mentions, : for emoji, / for smart picker" : "@을 입력해 언급, :을 입력해 이모지 추가, /을 입력해 스마트 피커를 사용하십시오.",
"Could not reload comments" : "댓글을 다시 불러올 수 없음",
@@ -29,6 +28,7 @@
"An error occurred while trying to edit the comment" : "댓글을 편집하는 중 오류 발생",
"Comment deleted" : "댓글이 삭제됨",
"An error occurred while trying to delete the comment" : "댓글을 삭제하는 중 오류 발생",
"An error occurred while trying to create the comment" : "댓글을 작성하는 중 오류 발생"
"An error occurred while trying to create the comment" : "댓글을 작성하는 중 오류 발생",
"Write a comment …" : "댓글 쓰기 ..."
},"pluralForm" :"nplurals=1; plural=0;"
}

View File

@@ -17,7 +17,7 @@ OC.L10N.register(
"Delete comment" : "Избриши коментар",
"Cancel edit" : "Откажи ажурирање",
"New comment" : "Нов коментар",
"Write a comment …" : "Напиши коментар ...",
"Write a comment …" : "Напиши коментар …",
"Post comment" : "Објави коментар",
"@ for mentions, : for emoji, / for smart picker" : "@ за спомнување, : за емоција, / за паметен избор",
"Could not reload comments" : "Неможе да се вчитаат коментарите",
@@ -31,6 +31,7 @@ OC.L10N.register(
"An error occurred while trying to edit the comment" : "Настана грешка при обид за ажурирање на коментар",
"Comment deleted" : "Коментарот е избришан",
"An error occurred while trying to delete the comment" : "Настана грешка при обидот за бришење на коментар",
"An error occurred while trying to create the comment" : "Настана грешка при обидот за креирање на коментар"
"An error occurred while trying to create the comment" : "Настана грешка при обидот за креирање на коментар",
"Write a comment …" : "Напиши коментар ..."
},
"nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;");

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