Commit Graph

17043 Commits

Author SHA1 Message Date
Chirag Aggarwal dda7c4c875 Fix coroutine DB timeout leakage 2026-04-06 19:34:07 +05:30
Chirag Aggarwal e2dc03145f Enable coroutine hooks for HTTP server 2026-04-06 18:54:19 +05:30
Chirag Aggarwal f914290198 Make session cleanup best effort 2026-04-06 18:40:01 +05:30
Chirag Aggarwal d1b3e2ad81 Adjust coroutine Redis pool sizing 2026-04-06 18:16:10 +05:30
Chirag Aggarwal 124bc3376f Use argv for coroutine HTTP detection 2026-04-06 15:53:28 +05:30
Chirag Aggarwal 7103b61068 Fix coroutine HTTP pool detection 2026-04-06 14:31:19 +05:30
Chirag Aggarwal b048bd3d8e Derive coroutine HTTP pool sizing 2026-04-06 13:38:03 +05:30
Chirag Aggarwal 00c0f8d7fa sync 2026-04-06 13:34:31 +05:30
Chirag Aggarwal eca815ca3a Merge request-scoped cookie resources 2026-04-06 13:24:11 +05:30
Chirag Aggarwal b74d4d45f9 Merge request-scoped cookie resources 2026-04-06 13:21:33 +05:30
Chirag Aggarwal 59a773e9a0 Document migration host local-domain handling 2026-04-06 12:47:06 +05:30
Chirag Aggarwal e3053bb83d Remove dead cookie config defaults 2026-04-06 12:44:48 +05:30
Chirag Aggarwal 1f7fc4bd40 Use request-scoped domain verification 2026-04-06 12:43:05 +05:30
Chirag Aggarwal d1b59ff3f3 Remove unused cookie domain locals 2026-04-06 12:30:48 +05:30
Chirag Aggarwal 221b52bac0 Add request-scoped cookie domain resource 2026-04-06 12:30:25 +05:30
Chirag Aggarwal b8ed30db55 Fix CORS header override for analyze 2026-04-06 12:23:50 +05:30
Chirag Aggarwal cf4534a78c Merge branch 'feat/migrate-di-container' into codex/http-swoole-coroutine 2026-04-06 12:17:15 +05:30
Chirag Aggarwal be56317bf2 Merge branch '1.9.x' into feat/migrate-di-container 2026-04-06 12:13:31 +05:30
Chirag Aggarwal 5a81560605 Fix coroutine HTTP startup 2026-04-06 12:04:23 +05:30
Chirag Aggarwal bf77d52695 Fix coroutine HTTP pool sizing 2026-04-06 11:07:06 +05:30
Chirag Aggarwal 2dce141d17 Merge pull request #11798 from appwrite/codex/request-response-no-static-state
Remove request and response static state
2026-04-06 11:03:15 +05:30
Chirag Aggarwal b8eb0810c2 Make response sensitive mode instance-scoped 2026-04-06 10:24:32 +05:30
Chirag Aggarwal cb74a5756a Remove request and response static state 2026-04-06 10:20:18 +05:30
Chirag Aggarwal edb533eaea Use released Utopia coroutine adapter 2026-04-06 10:12:50 +05:30
Chirag Aggarwal af7883f366 Remove coroutine request semaphore 2026-04-06 10:10:09 +05:30
Chirag Aggarwal c7f79fb4c1 Allow nested coroutine HTTP requests 2026-04-06 09:36:56 +05:30
Chirag Aggarwal dacb03053e Tune coroutine HTTP memory budget 2026-04-06 08:53:06 +05:30
Damodar Lohani ba25849871 fix: resolve cors safely in error handler to avoid cascading failures
- Remove cors from inject chain; resolve via getResource() inside
  try-catch so DB failures don't cascade when resolving the cors
  resource dependency chain (cors -> allowedHostnames -> rule -> DB)
- Use override:true on addHeader to prevent duplicate CORS headers
  when init() already set them before the exception was thrown
- Degrades gracefully: if cors resolution fails, error response is
  sent without CORS headers (same behavior as before this PR)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 02:59:08 +00:00
Chirag Aggarwal 44701257c7 Limit coroutine HTTP concurrency 2026-04-06 08:20:14 +05:30
Chirag Aggarwal b4aaeab81e Stabilize coroutine request handling 2026-04-06 08:07:47 +05:30
Damodar Lohani 44f3bbae03 fix: add CORS headers to error responses
The Http::error() handler was missing CORS headers, causing browsers to
block error responses (e.g. 403 PROJECT_PAUSED) with a generic CORS
error instead of showing the actual error message. This injects the cors
resource into the error handler and adds CORS headers before sending the
error response, matching the pattern already used in Http::init().

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 01:40:07 +00:00
Chirag Aggarwal 51238e9e93 Make coroutine request state isolated 2026-04-05 22:22:56 +05:30
Chirag Aggarwal 35b67d89cd fix: reduce coroutine HTTP descriptor growth 2026-04-05 21:55:18 +05:30
Chirag Aggarwal b2db2725ea feat: add coroutine HTTP server experiment 2026-04-05 21:36:12 +05:30
Chirag Aggarwal dffcfe8ee4 Merge branch '1.9.x' into feat/migrate-di-container 2026-04-05 21:16:30 +05:30
Chirag Aggarwal 452440f3c0 fix: use released cli container support 2026-04-05 21:03:17 +05:30
Chirag Aggarwal 412d09b801 remove unrelated changes 2026-04-05 20:06:13 +05:30
Chirag Aggarwal 66e68aea14 fix: fail specs when docs are missing 2026-04-05 19:37:29 +05:30
Chirag Aggarwal 094fe90499 Merge remote-tracking branch 'origin/1.9.x' into feat/migrate-di-container
# Conflicts:
#	app/worker.php
2026-04-02 16:37:58 +05:30
Matej Bačo 90e705f8c5 Improve docs 2026-04-02 12:26:03 +02:00
Matej Bačo 7c50bbc500 Merge branch '1.9.x' into feat-disposable-emails 2026-04-02 11:05:19 +02:00
Chirag Aggarwal e576cd5082 Merge branch '1.9.x' into feat/migrate-di-container 2026-04-02 13:32:31 +05:30
Chirag Aggarwal 30befc6a60 fix: remove strict pool size exception 2026-04-02 11:41:35 +05:30
Chirag Aggarwal d13644a47a fix: make pool sizing runtime-aware 2026-04-02 11:38:19 +05:30
Chirag Aggarwal 4a905a6ac9 Merge branch '1.9.x' into feat/migrate-di-container
Resolve conflicts keeping DI container migration (container->set pattern)
while incorporating 1.9.x fixes: PHPStan unused variable cleanup in
GraphQL Resolvers, (int) casts in Builds.php, and phpstan-baseline removal.
2026-04-02 11:17:32 +05:30
Chirag Aggarwal 1900492aad Merge branch '1.9.x' into feat-smtp-messaging-adapter 2026-04-02 10:58:09 +05:30
Chirag Aggarwal 77b4f8b7a0 style: apply formatter 2026-04-02 08:23:51 +05:30
Chirag Aggarwal 33f8e35b62 chore: remove phpstan baseline 2026-04-01 23:01:11 +05:30
Matej Bačo c1dde09070 Merge branch '1.9.x' into feat-disposable-emails 2026-04-01 15:14:10 +02:00
Chirag Aggarwal 15b2ab321e fix: restore pool size validation to prevent silent connection exhaustion
The old guard that threw when workerCount > instanceConnections was
removed during the DI migration, causing pool size to silently floor
to 1. This can lead to connection exhaustion on multi-core hosts.
2026-04-01 16:34:58 +05:30