Commit graph

493 commits

Author SHA1 Message Date
Matej Bačo
fe27ae0584 Fix failing tests 2026-05-07 10:58:05 +02:00
Matej Bačo
8ad106632e Improve tests further 2026-05-07 10:40:54 +02:00
Matej Bačo
4721523ea8 Improve project tests 2026-05-07 10:30:56 +02:00
Matej Bačo
f90f618bff Fix failing tests 2026-05-05 17:14:05 +02:00
Matej Bačo
ccb0ddd578 Bug&test fixing 2026-04-28 16:18:36 +02:00
Matej Bačo
ed9b47f6ce Migrate project jwt to dynamic api key 2026-04-28 15:57:37 +02:00
Matej Bačo
8f176166c9 Re-introduce project JWT endpoint 2026-04-28 15:31:10 +02:00
Matej Bačo
a1a88ae57e Make oauth secret write only 2026-04-27 14:09:24 +02:00
Matej Bačo
9c6ed9565e Remove tests of removed endpoints 2026-04-23 14:07:58 +02:00
Matej Bačo
a0274a7b6f Fix failing tests 2026-04-22 15:12:58 +02:00
Matej Bačo
0d27c59cb8 Merge branch '1.9.x' into feat-public-project-policies 2026-04-22 09:57:48 +02:00
Matej Bačo
efc37c68ec Merge branch '1.9.x' into feat-project-smtp-endpoints 2026-04-22 09:50:08 +02:00
Matej Bačo
39af9c544d Remove unnessessary backwards compatibility 2026-04-21 18:22:44 +02:00
Matej Bačo
c8a1746119 Fix existing tests 2026-04-21 17:34:44 +02:00
Matej Bačo
b1d37bc4be Fix remaining test failures 2026-04-20 23:03:16 +02:00
Matej Bačo
72cd7671c4 Fix projects tests 2026-04-20 23:01:00 +02:00
Matej Bačo
8ea69e0321 Fix password visibility test 2026-04-20 16:57:23 +02:00
Chirag Aggarwal
d2230f8fe7 chore: bump PHPStan to level 4 and fix all new errors
Raises `phpstan.neon` level from 3 to 4 and fixes the 549 new errors
that level 4 surfaces across 157 files. Fixes are root-cause — no
`@phpstan-ignore`, no `@var` casts, no baseline entries, no widened
types. A handful of latent bugs were fixed along the way:

- `app/controllers/general.php`: path-traversal guard was negating
  `\substr(...)` before the strict comparison (`!\substr(...) === $base`
  was always `false === $base`). Rewritten as `\substr(...) !== $base`.
- `src/Appwrite/Platform/Modules/Databases/Http/Databases/Logs/XList.php`
  and `.../TablesDB/Logs/XList.php`: were importing the raw Matomo
  `DeviceDetector` (whose `getDevice()` returns `?int`) but treating the
  result as an array with `deviceName/deviceBrand/deviceModel` keys.
  Swapped to `Appwrite\Detector\Detector`, matching the wrapper already
  used a few lines below for `$os`/`$client`.
- `src/Appwrite/Platform/Modules/Functions/Workers/Builds.php`: a match
  key was checking `$resourceKey === 'functions'` when `$resourceKey`
  is `'functionId'|'siteId'` — always false. Switched to the intended
  `$resource->getCollection() === 'functions'` check.
- `src/Appwrite/OpenSSL/OpenSSL.php`: `encrypt()` return type tightened
  to `string|false` to match `openssl_encrypt`; this lets callers'
  `=== false` error handling remain meaningful.
- `app/controllers/api/messaging.php`: removed a dead
  `array_key_exists('from', [])` branch in the Msg91 provider (empty
  array literal; branch was unreachable).

Large cleanup categories across the 549 fixes:
- Removed redundant `?? default` on array offsets and expressions that
  PHPStan now knows are non-nullable.
- Removed unreachable statements (mostly `return;` after `throw` or
  `markTestSkipped()`).
- Removed redundant `is_array`/`is_string`/`is_bool`/`instanceof` checks
  on already-narrowed types.
- Added `default =>` arms (or throwing arms) to non-exhaustive matches
  on `string`/`mixed` input.
- Removed dead `$document === false` branches where method return types
  were tightened to non-nullable `Document`.
- Removed unused properties (`$version` on Etsy/Zoom OAuth2, `$paths` on
  Installer State, `$source` on MigrationsWorker, `$account2` on two
  GraphQL auth tests), unused traits (`ApiVectorsDB`, `DatabaseFixture`),
  and an unused `cleanupStaleExecutions` task method.
- Replaced `assertTrue(true)` and redundant `assertIsArray`/`assertIsString`/
  `assertNotNull` assertions with `addToAssertionCount(1)` or
  `assertNotEmpty` where the runtime type was already known.
2026-04-19 17:31:20 +05:30
Matej Bačo
447375dcbf Fix tests 2026-04-19 10:53:11 +02:00
Matej Bačo
c97dd78335 Fix tests 2026-04-17 11:40:05 +02:00
Matej Bačo
bf9bb22ac5 New tests 2026-04-17 11:30:24 +02:00
Matej Bačo
11f23fdcfa Rework email templates PR after discussions 2026-04-17 10:52:21 +02:00
Matej Bačo
4cf375de6d Re-add removed test 2026-04-16 10:17:08 +02:00
Matej Bačo
19d0eb66c0 Fix tests 2026-04-16 10:09:38 +02:00
Matej Bačo
55001a7daa New integration tests 2026-04-15 19:27:26 +02:00
Matej Bačo
6d2876ab26 New E2E tests 2026-04-15 19:01:35 +02:00
Matej Bačo
53ed9462bd More cleanup of sms templates 2026-04-15 18:29:43 +02:00
Matej Bačo
27fc8058b9 Fix failing tests 2026-04-11 14:19:05 +02:00
Matej Bačo
0293da1e22 Improve test for backwards compatibility 2026-04-09 15:54:00 +02:00
Chirag Aggarwal
7a995fe759 Revert "Merge pull request #11795 from rathi-yash/fix-11765-global-variable-creation"
This reverts commit 597b20a6cb, reversing
changes made to 20f80ac067.
2026-04-09 16:25:59 +05:30
My Name
8bfa659120 test: add test case for createProjectVariable without variableId 2026-04-08 15:18:13 -04:00
Matej Bačo
f880b6e8c3 Fix failing tests 2026-04-08 10:52:20 +02:00
Matej Bačo
388cec1737 Merge branch '1.9.x' into feat-public-project-keys 2026-04-08 10:16:22 +02:00
Matej Bačo
96a84a8fd7 Merge branch '1.9.x' into feat-public-project-keys 2026-04-08 09:45:15 +02:00
Matej Bačo
d66813d3cf Fix tests + QA fixes 2026-04-07 12:07:21 +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
d9a75c5938 Improved backwards compatibility 2026-03-27 15:34:34 +01:00
Matej Bačo
7371b68418 Fix tests compatibility 2026-03-26 15:51:03 +01:00
Matej Bačo
c903fb87ac Fix backwards compatibility 2026-03-24 12:53:25 +01:00
Jake Barnby
8666bf1325
Merge branch '1.9.x' into revert-11585-revert-11402-sync-mongodb 2026-03-24 03:03:02 +00:00
Matej Bačo
0114e260f0 Fix tests 2026-03-23 12:56:23 +01:00
Matej Bačo
01142bba2c Merge branch '1.8.x' into feat-public-project-variables-api 2026-03-23 12:21:06 +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
Matej Bačo
1754d6cc81 Fix failing tests 2026-03-19 15:21:22 +01:00
ArnabChatterjee20k
9917f95dfd
Revert "Documentsdb + vectordb (latest)" 2026-03-19 19:18:27 +05:30
Matej Bačo
7e7cac017c
Merge pull request #11582 from appwrite/fix-webhooks-duplication
Fix: webhook endpoints duplication
2026-03-19 14:16:30 +01:00
Matej Bačo
ab43d4995b Upgrade webhook tests 2026-03-19 12:20:33 +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