Chirag Aggarwal
92abfb31aa
fix null route guard placement
2026-04-07 14:40:18 +05:30
Chirag Aggarwal
399c37d943
fix console null route handling
2026-04-07 14:33:43 +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 and GitHub
be56317bf2
Merge branch '1.9.x' into feat/migrate-di-container
2026-04-06 12:13:31 +05:30
Chirag Aggarwal and GitHub
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
Damodar Lohani and Claude Opus 4.6
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
Damodar Lohani and Claude Opus 4.6
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 and GitHub
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
Chirag Aggarwal
b9aaecba25
Replace PHPMailer with utopia-php/messaging SMTP adapter
...
Use Utopia\Messaging\Adapter\Email\SMTP instead of raw PHPMailer
for the smtp register, Mails worker, and Doctor task. This enables
swapping email adapters (e.g. Resend) via DI override in downstream
repos by type-hinting against the EmailAdapter base class.
2026-04-01 16:25:33 +05:30
Chirag Aggarwal
789870b545
fix: preserve multi-value headers like Set-Cookie instead of comma-joining
...
addHeader() already accumulates multiple values for the same key into an
array internally, so calling it once per value is the correct approach.
Comma-joining violates RFC 6265 for Set-Cookie headers.
2026-04-01 15:43:14 +05:30
Chirag Aggarwal
c9f7b7f0d9
fix: address PR review findings from code review
...
- Add Console::error() fallback in Bus::dispatch() so listener failures
are visible even without telemetry (C1/M7)
- Remove duplicate $max/$sleep assignments in createDatabase (M1)
- Remove duplicate @param in Event::generateEvents docblock (M2)
- Remove unused $plan parameter from plan resource factory (M3)
- Fix inconsistent indentation in certificate init block (L2)
- Add explicit return null in session resource factory (M6)
2026-04-01 15:42:15 +05:30
Chirag Aggarwal
cba7e53898
chore: fix composer
2026-04-01 15:37:34 +05:30
Chirag Aggarwal
fb26da5df1
analyze fixes
2026-04-01 15:15:48 +05:30
Chirag Aggarwal
eb8455bd76
revert
2026-04-01 14:29:20 +05:30
Chirag Aggarwal
908e408480
Merge remote-tracking branch 'origin/1.9.x' into feat/migrate-di-container
...
# Conflicts:
# app/init/resources.php
# composer.json
# composer.lock
# phpstan-baseline.neon
2026-04-01 11:46:13 +05:30
Prem Palanisamy
4dfdfb5e59
Merge remote-tracking branch 'origin/1.9.x' into feat/import-export-json
2026-03-31 12:37:17 +01:00
Prem Palanisamy
5d1009b324
fix: correct resourceType routing, schemaless validation, and E2E tests for migrations
...
- Add getDatabaseResourceType() helper to map database types to resource constants
- Use database-specific resourceType for CSV/JSON import/export instead of hardcoded TYPE_DATABASE
- Skip attribute validation for schemaless databases (DocumentsDB/VectorsDB) in exports
- Parse JSON export queries in migration worker
- Restore MigrationsBase from 1.9.x and append VectorsDB/DocumentsDB E2E tests
2026-03-31 12:35:18 +01:00
Jake Barnby
f9aee4de5d
(fix): clear stale install data before starting new installation
2026-03-31 23:08:31 +13:00
Jake Barnby
b47ac00ca8
(refactor): rename migrate param and add --migrate flag to upgrade task
2026-03-31 21:08:29 +13:00
Jake Barnby
2f53d09c5b
(feat): add database migration step to upgrade installer
2026-03-31 20:58:33 +13:00
Jake Barnby
1fa1aa8621
(fix): guard against missing Host header in dispatch
2026-03-31 20:58:22 +13:00
Jake Barnby
5c84efdd7c
(fix): upgrade UI — remove min-height, hide secret key row, fix copy
2026-03-31 15:58:45 +13:00
Prem Palanisamy
a80ecd0cb6
fix: alphabetize imports, update phpstan baseline count for migrations tests
2026-03-30 17:24:58 +01:00
premtsd-code and GitHub
3bb6a8bcc8
Merge branch '1.9.x' into feat/import-export-json
2026-03-30 16:15:16 +01:00
Prem Palanisamy
2611bf4af1
fix: add setPlatform to JSON import trigger for consistency
2026-03-30 15:43:21 +01:00
Prem Palanisamy
de219de31d
fix: restore original databasetype block in CSV export
2026-03-30 15:26:09 +01:00
Prem Palanisamy
d8bbd82556
fix: remove duplicate database fetch, add null-safe queries fallback, add schemaless comment
2026-03-30 14:55:05 +01:00