Skip to content

Commit 927dbc7

Browse files
committed
Merge branch 'refs/heads/1.6.x' into feat-eldad4-coroutines
# Conflicts: # app/console # app/controllers/api/account.php # app/controllers/api/functions.php # app/controllers/api/projects.php # app/controllers/api/users.php # app/controllers/api/vcs.php # app/controllers/general.php # app/controllers/mock.php # app/controllers/shared/api.php # app/init.php # composer.json # composer.lock # src/Appwrite/Platform/Tasks/Doctor.php # src/Appwrite/Platform/Tasks/ScheduleMessages.php # src/Appwrite/Platform/Workers/Builds.php # src/Appwrite/Utopia/Response.php
2 parents acef279 + 6cb9dd0 commit 927dbc7

File tree

4,964 files changed

+80486
-2586
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

4,964 files changed

+80486
-2586
lines changed

.env

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ _APP_LOCALE=en
44
_APP_WORKER_PER_CORE=2
55
_APP_CONSOLE_WHITELIST_ROOT=disabled
66
_APP_CONSOLE_WHITELIST_EMAILS=
7+
_APP_CONSOLE_SESSION_ALERTS=enabled
78
_APP_CONSOLE_WHITELIST_IPS=
89
_APP_CONSOLE_COUNTRIES_DENYLIST=AQ
910
_APP_CONSOLE_HOSTNAMES=localhost,appwrite.io,*.appwrite.io
@@ -17,7 +18,7 @@ _APP_OPTIONS_ROUTER_PROTECTION=disabled
1718
_APP_OPTIONS_FORCE_HTTPS=disabled
1819
_APP_OPTIONS_FUNCTIONS_FORCE_HTTPS=disabled
1920
_APP_OPENSSL_KEY_V1=your-secret-key
20-
_APP_DOMAIN=localhost
21+
_APP_DOMAIN=traefik
2122
_APP_DOMAIN_FUNCTIONS=functions.localhost
2223
_APP_DOMAIN_TARGET=localhost
2324
_APP_REDIS_HOST=redis
@@ -85,7 +86,6 @@ _APP_USAGE_AGGREGATION_INTERVAL=30
8586
_APP_MAINTENANCE_RETENTION_USAGE_HOURLY=8640000
8687
_APP_MAINTENANCE_RETENTION_SCHEDULES=86400
8788
_APP_USAGE_STATS=enabled
88-
_APP_LOGGING_PROVIDER=
8989
_APP_LOGGING_CONFIG=
9090
_APP_GRAPHQL_MAX_BATCH_SIZE=10
9191
_APP_GRAPHQL_MAX_COMPLEXITY=250

.gitmodules

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
[submodule "app/console"]
22
path = app/console
33
url = https://github.com/appwrite/console
4-
branch = 4.3.14
4+
branch = 1.6.x

Dockerfile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,7 @@ RUN chmod +x /usr/local/bin/doctor && \
7979
chmod +x /usr/local/bin/migrate && \
8080
chmod +x /usr/local/bin/realtime && \
8181
chmod +x /usr/local/bin/schedule-functions && \
82+
chmod +x /usr/local/bin/schedule-executions && \
8283
chmod +x /usr/local/bin/schedule-messages && \
8384
chmod +x /usr/local/bin/sdks && \
8485
chmod +x /usr/local/bin/specs && \

app/config/collections.php

Lines changed: 56 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3029,7 +3029,7 @@
30293029
'size' => 8,
30303030
'signed' => true,
30313031
'required' => false,
3032-
'default' => 'v3',
3032+
'default' => 'v4',
30333033
'array' => false,
30343034
'filters' => [],
30353035
],
@@ -3054,7 +3054,18 @@
30543054
'required' => false,
30553055
'default' => null,
30563056
'filters' => [],
3057-
]
3057+
],
3058+
[
3059+
'$id' => ID::custom('scopes'),
3060+
'type' => Database::VAR_STRING,
3061+
'format' => '',
3062+
'size' => Database::LENGTH_KEY,
3063+
'signed' => true,
3064+
'required' => true,
3065+
'default' => null,
3066+
'array' => true,
3067+
'filters' => [],
3068+
],
30583069
],
30593070
'indexes' => [
30603071
[
@@ -3867,6 +3878,27 @@
38673878
'lengths' => [32],
38683879
'orders' => [Database::ORDER_ASC],
38693880
],
3881+
[
3882+
'$id' => ID::custom('_key_requestMethod'),
3883+
'type' => Database::INDEX_KEY,
3884+
'attributes' => ['requestMethod'],
3885+
'lengths' => [128],
3886+
'orders' => [Database::ORDER_ASC],
3887+
],
3888+
[
3889+
'$id' => ID::custom('_key_requestPath'),
3890+
'type' => Database::INDEX_KEY,
3891+
'attributes' => ['requestPath'],
3892+
'lengths' => [Database::LENGTH_KEY],
3893+
'orders' => [Database::ORDER_ASC],
3894+
],
3895+
[
3896+
'$id' => ID::custom('_key_deployment'),
3897+
'type' => Database::INDEX_KEY,
3898+
'attributes' => ['deploymentId'],
3899+
'lengths' => [Database::LENGTH_KEY],
3900+
'orders' => [Database::ORDER_ASC],
3901+
],
38703902
[
38713903
'$id' => ID::custom('_key_responseStatusCode'),
38723904
'type' => Database::INDEX_KEY,
@@ -4311,6 +4343,17 @@
43114343
'array' => false,
43124344
'filters' => [],
43134345
],
4346+
[
4347+
'$id' => 'accessedAt',
4348+
'type' => Database::VAR_DATETIME,
4349+
'format' => '',
4350+
'size' => 0,
4351+
'signed' => false,
4352+
'required' => false,
4353+
'default' => null,
4354+
'array' => false,
4355+
'filters' => ['datetime'],
4356+
],
43144357
[
43154358
'$id' => ID::custom('services'),
43164359
'type' => Database::VAR_STRING,
@@ -4518,6 +4561,17 @@
45184561
'array' => false,
45194562
'filters' => [],
45204563
],
4564+
[
4565+
'$id' => ID::custom('data'),
4566+
'type' => Database::VAR_STRING,
4567+
'format' => '',
4568+
'size' => 65535,
4569+
'signed' => true,
4570+
'required' => false,
4571+
'default' => new \stdClass(),
4572+
'array' => false,
4573+
'filters' => ['json', 'encrypt'],
4574+
],
45214575
[
45224576
'$id' => ID::custom('active'),
45234577
'type' => Database::VAR_BOOLEAN,

app/config/errors.php

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -332,6 +332,11 @@
332332
'description' => 'API key and session used in the same request. Use either `setSession` or `setKey`. Learn about which authentication method to use in the SSR docs: https://appwrite.io/docs/products/auth/server-side-rendering',
333333
'code' => 403,
334334
],
335+
Exception::API_KEY_EXPIRED => [
336+
'name' => Exception::API_KEY_EXPIRED,
337+
'description' => 'The dynamic API key has expired. Please don\'t use dynamic API keys for more than duration of the execution.',
338+
'code' => 401,
339+
],
335340

336341
/** Teams */
337342
Exception::TEAM_NOT_FOUND => [
@@ -541,6 +546,11 @@
541546
'description' => 'Build with the requested ID is already in progress. Please wait before you can retry.',
542547
'code' => 400,
543548
],
549+
Exception::BUILD_ALREADY_COMPLETED => [
550+
'name' => Exception::BUILD_ALREADY_COMPLETED,
551+
'description' => 'Build with the requested ID is already completed and cannot be canceled.',
552+
'code' => 400,
553+
],
544554

545555
/** Deployments */
546556
Exception::DEPLOYMENT_NOT_FOUND => [
@@ -556,6 +566,12 @@
556566
'code' => 404,
557567
],
558568

569+
Exception::EXECUTION_IN_PROGRESS => [
570+
'name' => Exception::EXECUTION_IN_PROGRESS,
571+
'description' => 'Can\'t delete ongoing execution. Please wait for execution to finish before deleting it.',
572+
'code' => 400,
573+
],
574+
559575
/** Databases */
560576
Exception::DATABASE_NOT_FOUND => [
561577
'name' => Exception::DATABASE_NOT_FOUND,
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
<p>{{hello}},</p>
2+
3+
<p>{{body}}</p>
4+
5+
<ol>
6+
<li>{{listDevice}}</li>
7+
<li>{{listIpAddress}}</li>
8+
<li>{{listCountry}}</li>
9+
</ol>
10+
11+
<p>{{footer}}</p>
12+
13+
<p style="margin-bottom: 0px;">{{thanks}}</p>
14+
<p style="margin-top: 0px;">{{signature}}</p>

app/config/locale/translations/en.json

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,15 @@
1818
"emails.magicSession.securityPhrase": "Security phrase for this email is {{b}}{{phrase}}{{/b}}. You can trust this email if this phrase matches the phrase shown during sign in.",
1919
"emails.magicSession.thanks": "Thanks,",
2020
"emails.magicSession.signature": "{{project}} team",
21+
"emails.sessionAlert.subject": "New session alert for {{project}}",
22+
"emails.sessionAlert.hello":"Hello {{user}}",
23+
"emails.sessionAlert.body": "We're writing to inform you that a new session has been initiated on your {{b}}{{project}}{{/b}} account, on {{b}}{{dateTime}}{{/b}}. \nHere are the details of the new session: ",
24+
"emails.sessionAlert.listDevice": "Device: {{b}}{{device}}{{/b}}",
25+
"emails.sessionAlert.listIpAddress": "IP Address: {{b}}{{ipAddress}}{{/b}}",
26+
"emails.sessionAlert.listCountry": "Country: {{b}}{{country}}{{/b}}",
27+
"emails.sessionAlert.footer": "If you didn't request the sign in, you can safely ignore this email. If you suspect unauthorized activity, please secure your account immediately.",
28+
"emails.sessionAlert.thanks": "Thanks,",
29+
"emails.sessionAlert.signature": "{{project}} team",
2130
"emails.otpSession.subject": "OTP for {{project}} Login",
2231
"emails.otpSession.hello": "Hello {{user}}",
2332
"emails.otpSession.description": "Enter the following verification code when prompted to securely sign in to your {{b}}{{project}}{{/b}} account. This code will expire in 15 minutes.",
@@ -34,7 +43,7 @@
3443
"emails.recovery.subject": "Password Reset",
3544
"emails.recovery.hello": "Hello {{user}}",
3645
"emails.recovery.body": "Follow this link to reset your {{b}}{{project}}{{/b}} password.",
37-
"emails.recovery.footer": "If you didnt ask to reset your password, you can ignore this message.",
46+
"emails.recovery.footer": "If you didn't ask to reset your password, you can ignore this message.",
3847
"emails.recovery.thanks": "Thanks",
3948
"emails.recovery.signature": "{{project}} team",
4049
"emails.invitation.subject": "Invitation to %s Team at %s",

app/config/platforms.php

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
[
1616
'key' => 'web',
1717
'name' => 'Web',
18-
'version' => '15.0.0',
18+
'version' => '16.0.0-rc.1',
1919
'url' => 'https://github.com/appwrite/sdk-for-web',
2020
'package' => 'https://www.npmjs.com/package/appwrite',
2121
'enabled' => true,
@@ -63,7 +63,7 @@
6363
[
6464
'key' => 'flutter',
6565
'name' => 'Flutter',
66-
'version' => '12.0.4',
66+
'version' => '13.0.0-rc.1',
6767
'url' => 'https://github.com/appwrite/sdk-for-flutter',
6868
'package' => 'https://pub.dev/packages/appwrite',
6969
'enabled' => true,
@@ -221,7 +221,7 @@
221221
[
222222
'key' => 'cli',
223223
'name' => 'Command Line',
224-
'version' => '5.0.5',
224+
'version' => '6.0.0-rc.4',
225225
'url' => 'https://github.com/appwrite/sdk-for-cli',
226226
'package' => 'https://www.npmjs.com/package/appwrite-cli',
227227
'enabled' => true,
@@ -249,7 +249,7 @@
249249
[
250250
'key' => 'nodejs',
251251
'name' => 'Node.js',
252-
'version' => '13.0.0',
252+
'version' => '14.0.0-rc.1',
253253
'url' => 'https://github.com/appwrite/sdk-for-node',
254254
'package' => 'https://www.npmjs.com/package/node-appwrite',
255255
'enabled' => true,
@@ -341,8 +341,8 @@
341341
'name' => 'Go',
342342
'version' => '4.0.1',
343343
'url' => 'https://github.com/appwrite/sdk-for-go',
344-
'package' => '',
345-
'enabled' => false,
344+
'package' => 'https://github.com/appwrite/sdk-for-go',
345+
'enabled' => true,
346346
'beta' => true,
347347
'dev' => false,
348348
'hidden' => false,
@@ -393,7 +393,7 @@
393393
[
394394
'key' => 'dart',
395395
'name' => 'Dart',
396-
'version' => '11.0.3',
396+
'version' => '12.0.0-rc.1',
397397
'url' => 'https://github.com/appwrite/sdk-for-dart',
398398
'package' => 'https://pub.dev/packages/dart_appwrite',
399399
'enabled' => true,

app/config/runtimes.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,4 @@
66

77
use Appwrite\Runtimes\Runtimes;
88

9-
return (new Runtimes('v3'))->getAll();
9+
return (new Runtimes('v4'))->getAll();

app/config/specs/open-api3-1.6.x-client.json

Lines changed: 1 addition & 0 deletions
Large diffs are not rendered by default.

app/config/specs/open-api3-1.6.x-console.json

Lines changed: 1 addition & 0 deletions
Large diffs are not rendered by default.

app/config/specs/open-api3-1.6.x-server.json

Lines changed: 1 addition & 0 deletions
Large diffs are not rendered by default.

app/config/specs/open-api3-latest-client.json

Lines changed: 1 addition & 1 deletion
Large diffs are not rendered by default.

app/config/specs/open-api3-latest-console.json

Lines changed: 1 addition & 1 deletion
Large diffs are not rendered by default.

app/config/specs/open-api3-latest-server.json

Lines changed: 1 addition & 1 deletion
Large diffs are not rendered by default.

app/config/specs/swagger2-1.6.X-client.json

Lines changed: 1 addition & 0 deletions
Large diffs are not rendered by default.

app/config/specs/swagger2-1.6.X-console.json

Lines changed: 1 addition & 0 deletions
Large diffs are not rendered by default.

app/config/specs/swagger2-1.6.x-client.json

Lines changed: 1 addition & 0 deletions
Large diffs are not rendered by default.

app/config/specs/swagger2-1.6.x-console.json

Lines changed: 1 addition & 0 deletions
Large diffs are not rendered by default.

app/config/specs/swagger2-1.6.x-server.json

Lines changed: 1 addition & 0 deletions
Large diffs are not rendered by default.

app/config/specs/swagger2-latest-client.json

Lines changed: 1 addition & 1 deletion
Large diffs are not rendered by default.

app/config/specs/swagger2-latest-console.json

Lines changed: 1 addition & 1 deletion
Large diffs are not rendered by default.

app/config/specs/swagger2-latest-server.json

Lines changed: 1 addition & 1 deletion
Large diffs are not rendered by default.

app/config/variables.php

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -198,7 +198,7 @@
198198
],
199199
[
200200
'name' => '_APP_LOGGING_PROVIDER',
201-
'description' => 'This variable allows you to enable logging errors to 3rd party providers. This value is empty by default, set the value to one of \'sentry\', \'raygun\', \'appSignal\', \'logOwl\' to enable the logger.',
201+
'description' => 'Deprecated since 1.6.0, use `_APP_LOGGING_CONFIG` with DSN value instead. This variable allows you to enable logging errors to 3rd party providers. This value is empty by default, set the value to one of \'sentry\', \'raygun\', \'appSignal\', \'logOwl\' to enable the logger.',
202202
'introduction' => '0.12.0',
203203
'default' => '',
204204
'required' => false,
@@ -207,7 +207,7 @@
207207
],
208208
[
209209
'name' => '_APP_LOGGING_CONFIG',
210-
'description' => 'This variable configures authentication to 3rd party error logging providers. If using Sentry, this should be \'SENTRY_API_KEY;SENTRY_APP_ID\'. If using Raygun, this should be Raygun API key. If using AppSignal, this should be AppSignal API key. If using LogOwl, this should be LogOwl Service Ticket.',
210+
'description' => 'This variable allows you to enable logging errors to third party providers. This value is empty by default, set a DSN value to one of the following `sentry://PROJECT_ID:SENTRY_API_KEY@SENTRY_HOST/`, , `logowl://SERVICE_TICKET@SERIVCE_HOST/` `raygun://RAYGUN_API_KEY/`, `appSignal://API_KEY/` to enable the logger.\n\nFor versions prior `1.5.6` you can use the old syntax.\n\nOld syntax: If using Sentry, this should be \'SENTRY_API_KEY;SENTRY_APP_ID\'. If using Raygun, this should be Raygun API key. If using AppSignal, this should be AppSignal API key. If using LogOwl, this should be LogOwl Service Ticket.',
211211
'introduction' => '0.12.0',
212212
'default' => '',
213213
'required' => false,
@@ -250,6 +250,15 @@
250250
'question' => '',
251251
'filter' => ''
252252
],
253+
[
254+
'name' => '_APP_CONSOLE_SESSION_ALERTS',
255+
'description' => 'This option allows you configure if a new login in the Appwrite Console should send an alert email to the user. It\'s disabled by default with value "disabled", and to enable it, pass value "enabled".',
256+
'introduction' => '1.6.0',
257+
'default' => 'disabled',
258+
'required' => false,
259+
'question' => '',
260+
'filter' => ''
261+
],
253262
],
254263
],
255264
[

app/console

Submodule console updated 283 files

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy