Commit Graph
8653 Commits
Author SHA1 Message Date
Jake Barnby 64a368ba3d Merge remote-tracking branch 'origin/feat-db-tests' into feat-mongodb
# Conflicts:
#	.github/workflows/tests.yml
#	src/Appwrite/Utopia/Response.php
#	src/Appwrite/Utopia/Response/Model/AttributeList.php
#	tests/e2e/Client.php
#	tests/e2e/Scopes/ProjectCustom.php
#	tests/e2e/Services/Databases/DatabasesBase.php
#	tests/e2e/Services/Databases/Legacy/DatabasesCustomClientTest.php
#	tests/e2e/Services/Databases/Legacy/DatabasesCustomServerTest.php
#	tests/e2e/Services/Databases/Legacy/DatabasesStringTypesTest.php
#	tests/e2e/Services/Databases/TablesDB/DatabasesBase.php
#	tests/e2e/Services/Databases/TablesDB/DatabasesCustomClientTest.php
#	tests/e2e/Services/Databases/TablesDB/DatabasesCustomServerTest.php
#	tests/e2e/Services/Databases/TablesDB/DatabasesStringTypesTest.php
#	tests/e2e/Services/Databases/Transactions/TransactionsBase.php
#	tests/e2e/Services/GraphQL/Legacy/DatabaseServerTest.php
#	tests/e2e/Services/GraphQL/TablesDB/DatabaseServerTest.php
#	tests/e2e/Services/Messaging/MessagingBase.php
#	tests/e2e/Services/Sites/SitesBase.php
#	tests/e2e/Services/Sites/SitesCustomServerTest.php
2026-02-18 03:27:23 +13:00
Jake Barnby 51af714ea8 Merge branch '1.8.x' into feat-mongodb 2026-02-17 08:38:34 +00:00
Atharva Deosthale c7c8349434 Merge pull request #11342 from appwrite/add-status-response
Add status to response model for projects
2026-02-17 14:02:15 +05:30
Chirag Aggarwal da5a669e99 Merge pull request #11340 from appwrite/bump-storage-lib-to-remove-deprecation-warnings
chore: bump storage lib to remove deprecation warnings
2026-02-17 13:26:44 +05:30
Atharva Deosthale bfecddcc9a Add status to response model 2026-02-17 11:38:03 +05:30
Jake Barnby 9b4eefc724 Allow resourceId/resourceType filtering 2026-02-17 19:00:26 +13:00
Chirag Aggarwal cc0d63bf03 chore: bump storage lib to remove deprecation warnings 2026-02-17 10:55:37 +05:30
Jake Barnby 459a5617d6 Merge remote-tracking branch 'origin/1.8.x' into feat-mongodb 2026-02-17 16:32:46 +13:00
loks0nandClaude Opus 4.6 953c0cd4b4 fix: add missing string type models to AttributeList and Collection
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-16 19:51:49 +00:00
Chirag Aggarwal 1a2238afaa Merge pull request #11337 from appwrite/fix/mails-worker-project-context
Set project on queueForMails for span log context
2026-02-16 19:58:36 +05:30
Luke B. Silver 89bbc42eec Merge pull request #11308 from appwrite/check-has-model
Check response has model
2026-02-16 13:29:54 +00:00
Chirag Aggarwal 79a0b33b92 Set project on queueForMails so span logs include project context
The Mails worker span logs were missing project.id, project.sequence,
project.region, and project.database because setProject was never
called on queueForMails. This adds setProject in the shared API
controller and in workers (Webhooks, Migrations) that trigger mails.
Also injects project into the Mails worker action.
2026-02-16 18:46:55 +05:30
Jake Barnby 1740ce59c0 Merge branch '1.8.x' into feat-mongodb 2026-02-16 13:16:45 +00:00
Jake BarnbyandClaude Opus 4.6 bf68bb2f71 fix: resolve MongoDB-specific E2E test failures and $sequence type bug
- Fix $sequence always cast to string (was incorrectly cast to int for numeric values) in Document.php and Row.php
- Add supportForMultipleFulltextIndexes, supportForAttributeResizing, supportForSchemas console variables for MongoDB adapter
- Fix testCreateIndexes to use getSupportForMultipleFulltextIndexes() instead of getSupportForRelationships() for fulltext index error branching
- Fix testAttributeRowWidthLimit/testColumnRowWidthLimit to skip on databases without schema support (MongoDB)
- Fix testAttributeUpdateStringResize/testColumnUpdateStringResize to skip on databases without attribute resizing support (MongoDB)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 01:43:28 +13:00
Matej Bačo 7bcc27ed07 Fix linter 2026-02-16 13:31:36 +01:00
Matej Bačo 0eb00934f6 Fix race condition 2026-02-16 13:28:40 +01:00
Jake Barnby 436ced3f1f Merge branch '1.8.x' into feat-mongodb 2026-02-16 09:13:34 +00:00
copilot-swe-agent[bot]andabnegate ef826ca122 Fix error messages to not use 'string' in non-string type routes
Co-authored-by: abnegate <5857008+abnegate@users.noreply.github.com>
2026-02-16 08:38:53 +00:00
copilot-swe-agent[bot]andabnegate b58ebdbd15 Add encrypt param to varchar, text, mediumtext, longtext attribute and column create routes
- Add encrypt parameter to Varchar, Text, Mediumtext, Longtext attribute create routes
- Add encrypt parameter to Varchar, Text, Mediumtext, Longtext column create routes
- Add encrypt rule to AttributeVarchar, AttributeText, AttributeMediumtext, AttributeLongtext response models
- Add encrypt rule to ColumnVarchar, ColumnText, ColumnMediumtext, ColumnLongtext response models
- Add plan injection and validation for encrypt feature in all routes
- Add size validation for encrypt on varchar route (variable size)
- Add encrypt filter handling in all routes

Co-authored-by: abnegate <5857008+abnegate@users.noreply.github.com>
2026-02-16 08:38:00 +00:00
Damodar Lohani 53fa7992f5 Merge pull request #11318 from appwrite/fix-ping
Fix: cast redi ping response to boolean
2026-02-16 06:20:41 +05:45
Jake Barnby 82dada5732 Cast if num 2026-02-14 18:04:28 +13:00
Jake Barnby caafe2678b Merge branch '1.8.x' into feat-mongodb 2026-02-14 04:50:00 +00:00
loks0nandClaude Opus 4.6 9dc000d0c5 Replace region check with project ID check for execution logging
Switch from checking _APP_REGION !== 'nyc' to checking project ID
to disable execution logging for a specific project.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-13 18:47:07 +00:00
Damodar Lohani 5d5fd370c6 fix: cast Redis ping response to boolean 2026-02-13 11:32:46 +00:00
Jake BarnbyandClaude Opus 4.6 ecf0b4a1dd fix: change $sequence to string type to support MongoDB UUID7 values
The Document and Row response models were casting $sequence to (int),
which destroyed UUID7 values on MongoDB. On MongoDB, $sequence is the
internal _id field which is a UUID7 string, not an auto-increment integer.
The (int) cast converted UUID7 values like "019c56a9-df6d-73fa-8d48-..."
to 19, making $sequence queries fail validation with 400.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 00:29:38 +13:00
Jake BarnbyandClaude Opus 4.6 7708f13ebd fix: revert database package, add debug output for $sequence query failures
- Revert utopia-php/database to 5.1.2 (the Sequence validator fix
  incorrectly assumed $sequence is always integer, but on MongoDB
  internal collections it uses UUID7)
- Revert Base.php change
- Add detailed error messages to testGetDocumentWithQueries and
  testGetRowWithQueries to capture actual $sequence values and API
  error responses for debugging
- Keep Messaging scheduledAt fix (30s initial, 15s rescheduled)
- Keep Functions auth retry improvement (10 retries with project refresh)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 00:09:31 +13:00
Jake BarnbyandClaude Opus 4.6 f7ba5e39b7 fix: update Sequence validator, fix messaging race condition, improve auth retry
- Update utopia-php/database to fix Sequence validator rejecting integer
  $sequence values on MongoDB (VAR_UUID7) adapters
- Fix Base.php Filter constructor passing APP_DATABASE_QUERY_MAX_VALUES
  as $idAttributeType instead of the correct Database::VAR_INTEGER
- Fix Messaging testUpdateScheduledAt race condition by increasing
  initial scheduledAt from 3s to 30s so scheduler doesn't fire before
  the PATCH update processes
- Improve Functions callWithAuthRetry to refresh project credentials
  after 4 consecutive 401 failures and increase max retries to 10

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-13 23:54:39 +13:00
Matej Bačo b4421e6709 Merge pull request #11313 from appwrite/chore-customizable-screenshot-router
Chore: configurable _APP_WORKER_SCREENSHOTS_ROUTER
2026-02-13 10:09:02 +01:00
Jake Barnby 75ac4e4447 Merge branch '1.8.x' into feat-db-tests 2026-02-13 04:00:43 +00:00
Jake Barnby 1274d56234 Update src/Appwrite/Auth/OAuth2/Mock.php 2026-02-13 14:34:31 +13:00
Jake Barnby c8db0c6dcc Apply suggestions from code review 2026-02-13 14:34:02 +13:00
Jake BarnbyandClaude Opus 4.6 6f56c9c2ee fix: Gate spatial index null tests on adapter capability
PostgreSQL supports spatial indexes on nullable columns and required
spatial attributes on existing data, unlike MariaDB. Expose
supportForSpatialIndexNull console variable and condition test
assertions accordingly.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-13 06:22:53 +13:00
Jake BarnbyandClaude Opus 4.6 9b2dd958b5 fix: Use correct capability check for partial fulltext search in Users test
PostgreSQL's ts_vector/ts_query doesn't support partial word matching
(searching "man" won't find "manchester"), unlike MariaDB's LIKE-based
search. The test used getSupportForRelationships() as a proxy for this
capability, which was wrong for PostgreSQL (supports relationships but
not partial fulltext search).

Add supportForFulltextWildcard to console variables endpoint and use
it in the Users test instead.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-13 04:56:39 +13:00
Jake Barnby cee77d0564 Merge branch '1.8.x' into feat-mongodb 2026-02-12 12:42:54 +00:00
Jake BarnbyandClaude Opus 4.6 2869d057f9 fix: Populate console variables with actual database adapter capabilities
The console variables endpoint was using model defaults (all true) for
supportForRelationships, supportForOperators, supportForSpatials, and
maxIndexLength instead of reading from the actual database adapter.
This caused tests to run unsupported operations on MongoDB.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-13 01:41:03 +13:00
Chirag Aggarwal 8645a17323 Merge branch '1.8.x' into release-agent-skills 2026-02-12 17:39:33 +05:30
Matej Bačo 54b2d2fe22 Merge branch '1.8.x' into chore-customizable-screenshot-router 2026-02-12 12:50:59 +01:00
Matej Bačo 2ec259d433 Introduce _APP_WORKER_SCREENSHOTS_ROUTER 2026-02-12 12:50:39 +01:00
Jake BarnbyandClaude Opus 4.6 d3e6c48a59 fix: Add missing Authorization parameter to Columns XList action
The TablesDB Columns XList::action() method was missing the
Authorization $authorization parameter that exists in the parent
Attributes XList class, causing a PHP fatal error that prevented
the appwrite service from starting.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 23:57:51 +13:00
Jake Barnby 6a005c06b1 Format 2026-02-12 23:40:51 +13: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
Jake Barnby 408f65bf64 Merge branch '1.8.x' into feat-db-tests 2026-02-12 09:14:57 +00:00
Matej Bačo 6944fa7520 Merge pull request #11302 from appwrite/feat-team-sequence
Feat: team sequence
2026-02-12 10:14:36 +01:00
Chirag Aggarwal 886528bb29 Merge pull request #11306 from appwrite/feat/messaging-spans 2026-02-12 13:13:35 +05:30
fogelito 2db6f7e72f check $ruleType 2026-02-12 07:54:30 +02:00
Jake BarnbyandClaude Opus 4.6 006867617b Fix parallel test assertions and graceful runtime cleanup
- Fix testListProjectKey: use dynamic key counts instead of hardcoded 5
  (parallel workers don't share state from testCreateProjectKey)
- Fix testGetProjectKey: expect 'Key Test' from setupProjectWithKey(),
  not 'Key Custom' from a previously-dependent test
- Handle 404 in Executor::deleteRuntime() (runtime already gone)
- Make cancel deployment cleanup best-effort (status already updated)
- Apply same fix to Sites cancel endpoint

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 18:23:55 +13:00
loks0n a486085322 feat: messaging spans 2026-02-12 09:36:58 +05:30
Jake Barnby 7d5f6c9bf3 Merge remote-tracking branch 'origin/1.8.x' into feat-db-tests
# Conflicts:
#	.github/workflows/tests.yml
#	composer.lock
#	tests/e2e/Services/Projects/ProjectsConsoleClientTest.php
#	tests/e2e/Services/Teams/TeamsCustomClientTest.php
2026-02-12 12:34:42 +13:00
Matej Bačo b625bdb189 Formatting fix 2026-02-11 17:25:44 +01:00
Matej Bačo 5ac58e7723 Implement team sequence 2026-02-11 17:25:17 +01:00