Prem Palanisamy
18f9dfb64e
Bump utopia-php/migration to 1.9.2, use OnDuplicate enum
2026-04-20 13:16:45 +01:00
Prem Palanisamy
8fa28257be
Migrations: replace overwrite/skip with onDuplicate enum string, bump database to 5.3.22
2026-04-20 10:28:05 +01:00
Prem Palanisamy
d44820e00c
Add overwrite and skip options to migration imports
...
Exposes two new optional boolean params on the three migration
creation endpoints so CSV / JSON / appwrite-to-appwrite imports can
choose how to handle rows whose IDs already exist at the destination.
Endpoints updated (app/controllers/api/migrations.php):
- POST /v1/migrations/appwrite
- POST /v1/migrations/csv/imports
- POST /v1/migrations/json/imports
Parameter semantics:
- overwrite=true -> destination uses upsertDocuments instead of
createDocuments; existing rows are replaced
with imported values
- skip=true -> destination wraps createDocuments in
skipDuplicates; existing rows are preserved
unchanged, duplicate-id rows silently no-op
- both false -> default; fails fast on DuplicateException
(original behavior, unchanged)
- both true -> overwrite wins (upsert subsumes skip)
Both params are stored in the migration Document's options array
(matches the existing pattern for destination behavior config like
path, size, delimiter, bucketId, etc.) and read back in the worker's
processDestination() to instantiate DestinationAppwrite with the
new constructor params.
Feature-branch note: depends on utopia-php/migration#feat/skip-duplicates
(DestinationAppwrite constructor params) which in turn depends on
utopia-php/database#852 (skipDuplicates scope guard). composer.json is
temporarily pinned to dev-feat/skip-duplicates and
dev-csv-import-upsert-v2 respectively; both must be reset to proper
release versions once the upstream PRs merge.
2026-04-15 14:15:08 +01:00
Chirag Aggarwal
82ec75d582
chore: address PR review feedback
2026-04-10 13:12:08 +05:30
Chirag Aggarwal
6bf6142667
refactor: migrate selected queues to publishers
2026-04-10 13:02:00 +05:30
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
Prem Palanisamy
a80ecd0cb6
fix: alphabetize imports, update phpstan baseline count for migrations tests
2026-03-30 17:24:58 +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
Prem Palanisamy
aaebeec61e
fix: remove spatial from documentsdb indexes, parse JSON export queries, skip schema validation for schemaless exports
2026-03-30 09:09:50 +01:00
Prem Palanisamy
52ae8b3880
fix: use type-specific resources for JSON endpoints, add JSON source/destination to worker
2026-03-26 09:23:45 +00:00
Prem Palanisamy
8f09e74462
fix: bump migration to 1.9.*, fix dataExportType property
2026-03-26 07:41:23 +00:00
Prem Palanisamy
30907d716f
cleanup: remove duplicate setProject, remove stale spec files
2026-03-26 06:55:28 +00:00
Darshan and Prem Palanisamy
5b1ee93927
fix: endpoint.
2026-03-26 06:43:04 +00:00
ArnabChatterjee20k and GitHub
c7907932e4
Revert "Revert "Documentsdb + vectordb (latest)""
2026-03-19 20:30:42 +05:30
ArnabChatterjee20k and GitHub
9917f95dfd
Revert "Documentsdb + vectordb (latest)"
2026-03-19 19:18:27 +05:30
ArnabChatterjee20k
9989820e17
Fix database type handling and update dependencies in composer files
2026-03-10 18:43:17 +05:30
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
ArnabChatterjee20k
d6bc9f120e
Merge remote-tracking branch 'origin/1.8.x' into sync-mongodb
2026-03-09 15:50:48 +05:30
eldadfux
9d2036024a
Refactor migration error handling to provide clearer connection error messages. Updated exception messages for migration sources to guide users on potential credential and network issues.
2026-03-05 08:24:32 +01:00
ArnabChatterjee20k
2d0140f705
Merge remote-tracking branch 'origin/1.8.x' into documents-db-api
2026-02-18 16:01:55 +05:30
Jake Barnby and GitHub
51af714ea8
Merge branch '1.8.x' into feat-mongodb
2026-02-17 08:38:34 +00:00
Chirag Aggarwal
cc0d63bf03
chore: bump storage lib to remove deprecation warnings
2026-02-17 10:55:37 +05:30
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
ArnabChatterjee20k
ae33104ecf
added admin auth to the index creation
2026-02-11 18:19:46 +05:30
Chirag Aggarwal
2d05d608f4
Upgrade utopia-php dependencies and fix namespace changes
...
- Upgrade utopia-php/cli from 0.15 to 0.22
- Upgrade utopia-php/analytics from 0.10 to 0.15
- Upgrade utopia-php/orchestration from 0.9 to 0.19
- Use dev branches for utopia-php/framework and utopia-php/platform
- Remove utopia-php/swoole dependency (merged into framework)
- Migrate Utopia\CLI\Console to Utopia\Console across all files
- Migrate Utopia\Http to Utopia\Http\Http namespace
- Migrate Utopia\Swoole\Files to Utopia\Http\Files (now instance-based)
- Convert static CLI::setResource() calls to instance-based Dependency API
- Fix StatsResources task named parameter mismatch
2026-02-10 10:34:24 +05:30
ArnabChatterjee20k
3b2eb02f8a
Merge branch '1.8.x' into documents-db-api
2026-02-09 17:27:09 +05:30
Jake Barnby and GitHub
801befeacd
Merge branch '1.8.x' into get-cursor-queries
2026-02-06 05:59:48 +00: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
Chirag Aggarwal
1eaf5d5ffa
replace app usage with http
2026-02-04 11:22:04 +05:30
fogelito
69e6c0afc0
getCursorQueries
2026-01-28 14:53:24 +02:00
ArnabChatterjee20k
d8dd1918c4
synced vectordb
2026-01-20 15:45:12 +05:30
Jake Barnby
2cfb5ecfd9
Reapply "Merge pull request #11130 from appwrite/feat-auth-instance"
...
This reverts commit 38687bc24e .
2026-01-15 04:08:00 +13:00
Jake Barnby
38687bc24e
Revert "Merge pull request #11130 from appwrite/feat-auth-instance"
...
This reverts commit c12cad80bb , reversing
changes made to 2a17429226 .
# Conflicts:
# composer.lock
2026-01-15 03:48:42 +13:00
Jake Barnby
5c915ef92f
Reapply "Merge pull request #11099 from appwrite/feat-auth-instance"
...
This reverts commit 321fc8ee70 .
2026-01-14 19:07:49 +13:00
Jake Barnby
321fc8ee70
Revert "Merge pull request #11099 from appwrite/feat-auth-instance"
...
This reverts commit a4734a5de7 , reversing
changes made to 15922fb88c .
# Conflicts:
# composer.lock
2026-01-14 02:37:17 +13:00
ArnabChatterjee20k
f580dc9145
Merge remote-tracking branch 'upstream/1.8.x' into documents-db-api
2026-01-13 14:32:46 +05:30
Jake Barnby
7573ee75a2
Use authorization instance
2026-01-07 20:04:28 +13:00
Jake Barnby and GitHub
dc85d44647
Revert "Refactor auth single instance"
2025-12-20 02:54:50 +13:00
Jake Barnby
13f4aa9a80
Merge remote-tracking branch 'origin/1.8.x' into refactor-auth-single-instance
...
# Conflicts:
# app/controllers/api/account.php
# app/controllers/api/vcs.php
# app/controllers/general.php
# app/controllers/shared/api.php
# app/init/resources.php
# composer.lock
# src/Appwrite/Platform/Modules/Console/Http/Resources/Get.php
# src/Appwrite/Platform/Modules/Databases/Http/Databases/Transactions/Update.php
# src/Appwrite/Platform/Modules/Functions/Http/Executions/Create.php
# src/Appwrite/Platform/Workers/Migrations.php
2025-12-18 18:17:41 +13:00
Darshan
6d9a6051bf
add: platform support on migrations.
2025-12-17 17:41:14 +05:30
ArnabChatterjee20k
b15f2eed8f
Merge remote-tracking branch 'upstream/documents-db-api' into vector-db-api
2025-12-08 19:32:21 +05:30
ArnabChatterjee20k
af095bdf4a
updated stats
2025-12-03 19:11:46 +05:30
shimon
5da1f791a5
sync with 1.8.x
2025-11-27 18:17:04 +02:00
shimon
4ad249f918
Revert "Revert "Merge pull request #10682 from appwrite/refactor-auth-single-instance""
...
This reverts commit 8765d5650a .
2025-11-26 12:05:12 +02:00
ArnabChatterjee20k
c3ad337398
updated migrations for vectordb importing/exporting in csv endpoints
2025-11-20 18:54:41 +05:30
ArnabChatterjee20k
a9e749a81f
updated migration service extractor for csv import/export
2025-11-20 14:06:42 +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
Jake Barnby
8765d5650a
Revert "Merge pull request #10682 from appwrite/refactor-auth-single-instance"
...
This reverts commit 919b01a1b1 , reversing
changes made to deb5039352 .
2025-11-19 16:21:06 +13:00