Commit graph

210 commits

Author SHA1 Message Date
Christoph Wurst
d1d24e65a4 fix(http): avoid iconv for header ascii fallback
iconv transliteration is locale- and config-dependent and fails silently
on some setups. UnicodeString::ascii() from symfony/string uses a built-in
transliteration table backed by symfony/polyfill-intl-normalizer, so it
works on all setups without requiring optional PHP extensions.

Assisted-by: Claude:claude-sonnet-4-6
Signed-off-by: Christoph Wurst <1374172+ChristophWurst@users.noreply.github.com>
2026-05-22 14:58:14 +02:00
Joas Schilling
c1ab99e9fc
Merge pull request #59940 from nextcloud/bug/noid/fix-since-checker
Fix since checker
2026-05-07 11:25:42 +02:00
Ferdinand Thiessen
3a9733a878
chore(ocp): adjust code to match function signature
json_encode should throw if `string` return is expected

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-04-28 21:29:28 +02:00
Ferdinand Thiessen
81752fc9ed
chore(ocp): add Override attribute to all OCP classes
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-04-28 21:29:27 +02:00
Daniel Kesselberg
25ca85e329
docs(ocp): Add since tag
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2026-04-28 11:17:27 +02:00
Christoph Wurst
65db5e68b4
fix(dav): unify content disposition header escaping
Signed-off-by: Christoph Wurst <1374172+ChristophWurst@users.noreply.github.com>
2026-04-22 14:05:42 +02:00
Côme Chilliet
78fd649e47
chore: Remove long deprecated methods from OCP
These have been deprecated from before 20

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-04-09 18:05:53 +02:00
Joas Schilling
5f80f26799
chore: Fix SPDX header
Signed-off-by: Joas Schilling <coding@schilljs.com>
2026-03-16 08:38:16 +01:00
David Dreschner
2bb9524c84
fix: Remove deprecated RFC7231 constant to avoid warnings on PHP 8.5
Signed-off-by: David Dreschner <david.dreschner@nextcloud.com>
2026-03-13 10:43:38 +01:00
provokateurin
97c09753c3
fix(AppFramework): Adjust types so PHPStan understands them
Signed-off-by: provokateurin <kate@provokateurin.de>
2026-02-09 14:08:42 +01:00
Ferdinand Thiessen
6eddda147b
fix(FileDisplayResponse): return 404 if not found
If the linked file is not found (anymore) return proper 404
status code.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-02-06 17:29:26 +01:00
Carl Schwan
8bb13df6cf
refactor(AppFramework): Change version to 34
This didn't manage to get into NC 33

Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-01-28 21:48:17 +01:00
Carl Schwan
6408ed0b51
feat(AppFramework): Add missing NoSameSiteCookieRequired attribute
Allow to replace the old annotation.

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2026-01-28 21:48:16 +01:00
Carl Schwan
b040fb1c73
feat(AppFramework): Add missing NoTwoFactorRequired attribute
It's in our documentation but was never implemented.

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2026-01-28 21:48:16 +01:00
Daniel Kesselberg
46f87f6e46
docs: annotate valid renderAs values
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2026-01-27 22:51:17 +01:00
Benjamin Gaussorgues
c57c4843e8
feat(openmetrics): introduce OpenMetrics exporter
Expose a `/metrics` endpoint with some basic metrics

Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2026-01-07 09:38:13 +01: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
Ferdinand Thiessen
ba00416040 refactor(Streamer): inject IDateTimeZone as constructor arg
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-08-14 17:19:28 +02:00
Ferdinand Thiessen
5981b7eb51
chore: apply new CSFixer rules
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>

# Conflicts:
#	apps/settings/lib/SetupChecks/PhpOpcacheSetup.php
2025-07-01 16:26:50 +02:00
skjnldsv
bf3ce79abd feat(files_sharing): show Account menu on public pages
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-06-11 16:43:53 +02:00
Daniel Kesselberg
be587def0e fix: use correct format for expires, last-modified, and if-modified-since headers
Before: Sat, 10 May 2025 18:17:41 +0000
After: Sat, 10 May 2025 18:17:41 GMT

RFC: https://httpwg.org/specs/rfc9110.html#http.date

Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-06-10 13:15:31 +02:00
provokateurin
c3aa5316be
feat(RequestHeader): Add indirect parameter
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-06-03 11:09:12 +02:00
provokateurin
727b0c853c
refactor(RequestHeader): Make parameter types stricter
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-06-03 11:07:09 +02:00
provokateurin
18e04e1c5a
chore(RequestHeader): Remove unnecessary getters
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-06-03 11:06:53 +02:00
provokateurin
ad031188bc
feat(Http): Add RequestHeader attribute
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-05-20 13:10:34 +02:00
Ferdinand Thiessen
74bded74a3
refactor: migrate from OC to OCP in public interfaces
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-05-15 16:17:47 +02:00
Côme Chilliet
f033ef7c18 fix: Migrate all uses of OCP\Template to OCP\Template\ITemplateManager
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-03-06 15:49:25 +01:00
Côme Chilliet
253628ad5a fix: Fix psalm issues and add missing methods to ITemplate interface
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-03-06 15:49:25 +01:00
Côme Chilliet
fec865cc29
chore: Correctly flag json encoding methods as escaping html and quotes
Especially with JSON_HEX_TAG it’s perfectly fine to echo JSON, and we
 only use it in JSON output anyway.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-02-17 15:24:07 +01:00
Joas Schilling
c515617377
Merge pull request #50070 from nextcloud/docs/http/cors-attribute
docs(HTTP): Add proper docs for CORS attribute
2025-01-09 12:05:28 +01:00
provokateurin
7db694f534
fix(Http): Only allow valid HTTP status code values via template
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-01-07 15:45:30 +01:00
provokateurin
11feecf772
docs(HTTP): Add proper docs for CORS attribute
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-01-07 15:41:19 +01:00
provokateurin
3624923af2
fix(HTTP): Adjust JSONResponse data type
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-01-04 00:58:54 +01:00
Louis Chemineau
a2f2f7ce93
feat: Use inline password confirmation in external storage settings
Signed-off-by: Louis Chemineau <louis@chmn.me>
2024-11-28 11:01:54 +01:00
Ferdinand Thiessen
a8f46af20f
chore: Add proper deprecation dates where missing
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-09-20 00:46:03 +02:00
provokateurin
9836e9b164
chore(deps): Update nextcloud/coding-standard to v1.3.1
Signed-off-by: provokateurin <kate@provokateurin.de>
2024-09-19 14:21:20 +02:00
Christopher Ng
4fed8ed891 fix: Fix missing footer on public pages
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2024-09-04 16:41:13 -07:00
Ferdinand Thiessen
61d687631b
chore(ExternalShareMenuAction): Remove unused legacy properties
Keep them in the constructor to not break the API,
but they are not used anymore.
This way of adding a share was deprecated in Nextcloud 12 (2016!),
in favor of the federated share API, in Nextcloud 28 this way to create a share was removed.

So we can cleanup as all it takes now to create a federeated share is the share token + federated user ID.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-09-03 16:07:50 +02:00
Ferdinand Thiessen
4d2556d4cf
refactor(IMenuAction): Make public menu actions use the new Vue UI
This removes custom rendering code an replaces it with the declarative menu actions.
Also adjust the template to allow the Vue UI to mount.
Custom entries still are possible.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-09-03 16:07:49 +02:00
Daniel Kesselberg
af6de04e9e
style: update codestyle for coding-standard 1.2.3
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2024-08-25 19:34:58 +02:00
Ferdinand Thiessen
009761be58
test: Adjust tests for CSP nonce
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-08-13 10:06:32 +02:00
Ferdinand Thiessen
86f01a3358
fix: Make sure CSP nonce is not double base64 encoded
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-08-13 09:52:33 +02:00
Christopher Ng
8bbd326143 feat: Allow passing additional encode flags for json response
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2024-08-01 09:14:44 -07:00
Christopher Ng
b859260423 feat: Increase max depth of encoded json
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2024-08-01 09:14:44 -07:00
Alexander Piskun
b7af6ec200
feat: allow for ExApps to call Admin endpoints marked with specific attr
Signed-off-by: Alexander Piskun <bigcat88@icloud.com>
2024-07-18 15:11:39 +03:00
skjnldsv
a65cdd1e70 fix: ARateLimit documentation
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2024-07-12 20:14:30 +02:00
provokateurin
355ef202e4
feat(OpenAPI): Add ex_app scope
Signed-off-by: provokateurin <kate@provokateurin.de>
2024-07-02 09:12:48 +02:00
provokateurin
5aefdc399e
feat(AppFramework): Add ExAppRequired attribute
Signed-off-by: provokateurin <kate@provokateurin.de>
2024-07-01 14:41:20 +02:00
Andy Scherzinger
dae7c159f7
chore: Add SPDX header
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-05-24 13:11:22 +02:00
provokateurin
db77eab677
fix(AppFramework): Fix error message about 204 not allowing custom headers
Signed-off-by: provokateurin <kate@provokateurin.de>
2024-04-08 16:08:44 +02:00