loks0n
8201fea9ef
Differentiate executor timeouts for builds, sync, and async executions
...
Adds Executor\Exception\Timeout (with timeoutSeconds) and translates it at
each call site into BUILD_TIMEOUT, FUNCTION_SYNCHRONOUS_TIMEOUT, or
FUNCTION_ASYNCHRONOUS_TIMEOUT instead of always using the misleading sync
function error. Build timeouts now append to streamed buildLogs rather
than replacing them, and the build worker reports its timeout via Span.
2026-05-06 15:54:11 +01:00
Matej Bačo
980762fc3e
Rename from dynamic key to ephemeral key (api keys)
2026-04-28 17:18:06 +02:00
Matej Bačo
7578b5644c
AI review fixes
2026-04-22 12:00:15 +02:00
Matej Bačo
2e42633e12
Add public mocks API for phones
2026-04-22 11:30:39 +02:00
Matej Bačo
ce4eb563b3
AI review fixes
2026-04-08 09:29:12 +02:00
Matej Bačo
331fcee710
Merge branch '1.9.x' into feat-public-platform-api
2026-04-07 10:43:11 +02:00
Matej Bačo
c1dde09070
Merge branch '1.9.x' into feat-disposable-emails
2026-04-01 15:14:10 +02:00
Matej Bačo
bb7815bd57
Merge branch '1.9.x' into feat-public-platform-api
2026-03-24 11:18:18 +01:00
Matej Bačo
39f2d24907
AI code review fixes
2026-03-23 16:10:12 +01:00
Matej Bačo
d3c5a425e7
Implement public platform API
2026-03-23 15:46:11 +01:00
eldadfux
f74a60dba4
Merge origin/1.8.x into feat-disposable-emails
...
Made-with: Cursor
2026-03-20 07:43:55 +01:00
ArnabChatterjee20k
c7907932e4
Revert "Revert "Documentsdb + vectordb (latest)""
2026-03-19 20:30:42 +05:30
ArnabChatterjee20k
9917f95dfd
Revert "Documentsdb + vectordb (latest)"
2026-03-19 19:18:27 +05:30
ArnabChatterjee20k
7071e6f080
Merge remote-tracking branch 'origin/1.8.x' into sync-mongodb
2026-03-19 15:55:28 +05:30
Matej Bačo
ac2b35004d
Add more public webhook endpoints
2026-03-17 13:03:26 +01:00
eldadfux
d8bf4b9f89
Implement email validation rules for disposable, canonical, and free emails in user account creation and project settings. Update error handling for invalid email types and adjust related configurations in the console and project models.
2026-03-14 09:21:22 +01:00
eldadfux
2d2c55e07c
Merge remote-tracking branch 'origin/1.8.x' into feat-disposable-emails
...
Made-with: Cursor
# Conflicts:
# app/controllers/api/account.php
# app/controllers/api/messaging.php
# app/controllers/api/projects.php
# app/controllers/api/teams.php
# app/controllers/api/users.php
# composer.lock
# src/Appwrite/GraphQL/Types/Mapper.php
# src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Email/Create.php
# src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Email/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Email/Create.php
# src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Email/Update.php
# src/Appwrite/SDK/Specification/Format/OpenAPI3.php
# src/Appwrite/SDK/Specification/Format/Swagger2.php
2026-03-13 21:56:58 +01:00
ArnabChatterjee20k
f6655343c7
pr comments addressed
...
* Added new exception `MIGRATION_DATABASE_TYPE_UNSUPPORTED` with proper error metadata and HTTP 400 response.
* Replaced generic CSV database type errors with the new migration-specific exception for clearer error handling.
* Added support for `DOCUMENTSDB` in migration transfer resource service mapping.
* Fixed Appwrite report initialization by correctly injecting `getDatabasesDB`.
* Updated database adapter initialization to conditionally disable attribute support for `DOCUMENTSDB`.
* Moved `setSupportForAttributes` logic from pool initialization to database resource creation.
* Removed duplicate `getDatabasesDB` resource definition and redundant database event listener setup.
* Cleaned up unused variables and minor code inconsistencies.
* Fixed docblock formatting in `TransactionState`.
* Adjusted metrics handling in VectorDB embeddings text creation (removed unnecessary trigger/reset flow).
2026-03-10 14:30:57 +05:30
loks0n
16ad05792d
Change blocked user/resource errors from 401 to 403
...
- Update USER_BLOCKED from 401 to 403 and simplify description
- Update GENERAL_RESOURCE_BLOCKED from 401 to 403
Rationale: 403 Forbidden is the correct HTTP status for authorization
failures where the user is authenticated but not permitted access.
401 Unauthorized is for authentication failures.
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com >
2026-03-06 17:30:51 +00:00
eldadfux
159da8ba31
Fix 500 errors where we don't report duplication properly
2026-02-25 23:58:22 +01:00
Jake Barnby
5590f0bcd0
Merge remote-tracking branch 'origin/1.8.x' into feat-mongodb
...
# Conflicts:
# .env
# .github/workflows/tests.yml
# app/controllers/api/projects.php
# app/controllers/api/teams.php
# app/init/registers.php
# app/views/install/compose.phtml
# composer.json
# composer.lock
# docker-compose.yml
# src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Create.php
# src/Appwrite/Platform/Tasks/Install.php
# src/Appwrite/Platform/Tasks/Upgrade.php
# tests/e2e/Services/Databases/Legacy/DatabasesBase.php
# tests/e2e/Services/Databases/TablesDB/DatabasesBase.php
2026-02-12 23:35:21 +13:00
Matej Bačo
0621a32aa6
Fix tests; speed up tests; fix 5xx error
2026-02-10 11:43:22 +01:00
Jake Barnby
e70739a3c0
Merge remote-tracking branch 'origin/1.8.x' into feat-mongodb
...
# Conflicts:
# Dockerfile
# app/controllers/api/account.php
# app/controllers/api/avatars.php
# app/controllers/api/console.php
# app/controllers/api/projects.php
# app/controllers/api/storage.php
# app/controllers/api/teams.php
# app/http.php
# app/init/database/filters.php
# app/init/registers.php
# app/init/resources.php
# app/views/install/compose.phtml
# composer.json
# composer.lock
# docker-compose.yml
# src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Integer/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Bulk/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Upsert.php
# src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/Databases/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Integer/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Rows/Bulk/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Rows/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Rows/Upsert.php
# src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Update.php
# src/Appwrite/Platform/Modules/Functions/Http/Deployments/XList.php
# src/Appwrite/Platform/Tasks/Install.php
# tests/e2e/Services/Projects/ProjectsConsoleClientTest.php
2026-02-05 01:01:03 +13:00
Matej Bačo
5d5a14bd77
PR review fixes
2026-01-15 16:16:09 +01:00
Matej Bačo
cd0d609229
quality improv
2026-01-10 17:01:31 +01:00
Hemachandar
3483daef0d
Stop publishing rule verification errors to Sentry ( #11101 )
2026-01-07 17:33:00 +05:30
Darshan
ef5f0ed6b4
update: to use placeholders.
2025-12-11 15:26:45 +05:30
Jake Barnby
d8d970e03e
Merge remote-tracking branch 'origin/1.8.x' into feat-mongodb
...
# Conflicts:
# app/controllers/api/account.php
# app/controllers/api/messaging.php
# app/controllers/api/projects.php
# app/controllers/api/storage.php
# app/controllers/api/teams.php
# app/controllers/api/users.php
# composer.lock
# src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Boolean/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Datetime/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Email/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Enum/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Float/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/IP/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Integer/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Line/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Point/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Polygon/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Relationship/Create.php
# src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/Relationship/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/String/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Attributes/URL/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Attribute/Decrement.php
# src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Attribute/Increment.php
# src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Bulk/Delete.php
# src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Bulk/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Bulk/Upsert.php
# src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Create.php
# src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Delete.php
# src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Get.php
# src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Upsert.php
# src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/XList.php
# src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Boolean/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Datetime/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Email/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Enum/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Float/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/IP/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Integer/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Line/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Point/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Polygon/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Relationship/Create.php
# src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/Relationship/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/String/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Columns/URL/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Rows/Bulk/Delete.php
# src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Rows/Bulk/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Rows/Bulk/Upsert.php
# src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Rows/Column/Decrement.php
# src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Rows/Column/Increment.php
# src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Rows/Create.php
# src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Rows/Delete.php
# src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Rows/Get.php
# src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Rows/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Rows/Upsert.php
# src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Tables/Rows/XList.php
# src/Appwrite/Platform/Modules/Functions/Http/Deployments/Create.php
# src/Appwrite/Platform/Modules/Sites/Http/Deployments/Create.php
# src/Appwrite/Platform/Modules/Tokens/Http/Tokens/Buckets/Files/Create.php
# src/Appwrite/Platform/Modules/Tokens/Http/Tokens/Update.php
2025-11-20 17:46:19 +13:00
Chirag Aggarwal
4aaaa460b2
feat: per bucket image transformations flag
2025-10-28 14:13:38 +05:30
Jake Barnby
337503ed47
Merge remote-tracking branch 'origin/1.8.x' into feat-mongodb
...
# Conflicts:
# composer.lock
2025-10-23 17:15:57 +13:00
Eldad Fux
ff06920e24
feat: add support for blocking disposable email addresses
...
- Introduced a new exception for disposable email addresses.
- Updated user account creation and email handling to check against a list of disposable email domains.
- Added a new API endpoint to enable or disable disposable email checks for projects.
- Updated project model to include disposable email settings.
- Configured loading of disposable email domains from a separate configuration file.
2025-10-13 23:43:54 +01:00
Hemachandar
9cd284f5cd
Throw duplicate error when function id already exists
2025-10-09 15:01:00 +05:30
Jake Barnby
10b1f1f145
Merge remote-tracking branch 'origin/1.8.x' into feat-txn
2025-10-09 13:45:29 +13:00
Hemachandar
b145c609bd
change error codes
2025-10-03 16:29:39 +05:30
Jake Barnby
5702def9d2
Merge remote-tracking branch 'origin/1.8.x' into feat-txn
...
# Conflicts:
# composer.lock
# src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Bulk/Upsert.php
# tests/e2e/Services/Databases/Legacy/DatabasesBase.php
2025-09-04 04:00:57 +12:00
Jake Barnby
de5df4b72e
Add extra tests
2025-09-04 03:57:03 +12:00
ArnabChatterjee20k
8734125a73
Update app/config/errors.php
...
Co-authored-by: Jake Barnby <jakeb994@gmail.com >
2025-09-03 17:50:50 +05:30
ArnabChatterjee20k
28b0d95d05
Update app/config/errors.php
...
Co-authored-by: Jake Barnby <jakeb994@gmail.com >
2025-09-03 17:50:38 +05:30
Jake Barnby
903e9b52c2
Fix size limit exception
2025-09-03 23:54:21 +12:00
ArnabChatterjee20k
22b797165a
Merge remote-tracking branch 'upstream/1.8.x' into spatial-type-attributes
2025-09-02 23:07:32 +05:30
ArnabChatterjee20k
cfe9b34cd5
updated pr followups
2025-09-02 17:33:30 +05:30
Jake Barnby
f836fbeba5
Merge remote-tracking branch 'origin/1.8.x' into feat-txn
...
# Conflicts:
# src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Bulk/Update.php
# src/Appwrite/Platform/Modules/Databases/Http/Databases/Collections/Documents/Update.php
# src/Appwrite/Utopia/Response.php
2025-09-02 23:31:47 +12:00
Chirag Aggarwal
a20f71c511
chore: update exception thrown when svg sanitization fails
2025-09-01 13:08:17 +05:30
Jake Barnby
76034f801b
Add failed error
2025-08-15 00:31:27 +12:00
Jake Barnby
93cc4e1df8
Merge remote-tracking branch 'origin/1.8.x' into feat-txn
...
# Conflicts:
# app/config/errors.php
# app/config/roles.php
# app/controllers/api/databases.php
# composer.json
# composer.lock
# src/Appwrite/Extend/Exception.php
# src/Appwrite/Utopia/Response.php
# tests/e2e/Services/Databases/Legacy/DatabasesBase.php
2025-07-29 22:16:56 +12:00
Jake Barnby
11ce394181
Add txn errors
2025-06-17 16:01:56 -04:00
Darshan
1ac22c0ae0
Merge branch '1.8.x' into 'database-aliases'.
2025-06-11 12:36:33 +05:30
Darshan
fcdddf7bf0
address comments.
2025-06-11 12:21:48 +05:30
Darshan
2ef2c59d18
update: exceptions and messages.
2025-05-30 14:03:51 +05:30
Matej Bačo
ac6450c726
Merge branch '1.6.x' into 1.7.x
2025-05-15 18:03:15 +02:00