1
0
Fork 0
mirror of synced 2024-06-23 08:40:58 +12:00

Merge pull request #874 from TorstenDittmann/feat-utopia-analytics

Introduce utopia-php/analytics
This commit is contained in:
Eldad A. Fux 2021-02-04 14:52:49 +02:00 committed by GitHub
commit fbc5994697
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 158 additions and 87 deletions

View file

@ -4,6 +4,7 @@ global $cli;
use Appwrite\Docker\Compose;
use Appwrite\Docker\Env;
use Utopia\Analytics\GoogleAnalytics;
use Utopia\CLI\Console;
use Utopia\Config\Config;
use Utopia\View;
@ -34,6 +35,12 @@ $cli
$defaultHTTPSPort = '443';
$vars = [];
/**
* We are using a random value every execution for identification.
* This allows us to collect information without invading the privacy of our users.
*/
$analytics = new GoogleAnalytics('UA-26264668-9', uniqid('server.', true));
foreach($config as $category) {
foreach($category['variables'] ?? [] as $var) {
$vars[] = $var;
@ -136,12 +143,16 @@ $cli
;
if(!file_put_contents($path.'/docker-compose.yml', $templateForCompose->render(false))) {
Console::error('Failed to save Docker Compose file');
$message = 'Failed to save Docker Compose file';
$analytics->createEvent('install/server', 'install', APP_VERSION_STABLE.' - '.$message);
Console::error($message);
Console::exit(1);
}
if(!file_put_contents($path.'/.env', $templateForEnv->render(false))) {
Console::error('Failed to save environment variables file');
$message = 'Failed to save environment variables file';
$analytics->createEvent('install/server', 'install', APP_VERSION_STABLE.' - '.$message);
Console::error($message);
Console::exit(1);
}
@ -160,10 +171,14 @@ $cli
$exit = Console::execute("${env} docker-compose -f {$path}/docker-compose.yml up -d --remove-orphans --renew-anon-volumes", '', $stdout, $stderr);
if ($exit !== 0) {
Console::error("Failed to install Appwrite dockers");
$message = 'Failed to install Appwrite dockers';
$analytics->createEvent('install/server', 'install', APP_VERSION_STABLE.' - '.$message);
Console::error($message);
Console::error($stderr);
Console::exit($exit);
} else {
Console::success("Appwrite installed successfully");
$message = 'Appwrite installed successfully';
$analytics->createEvent('install/server', 'install', APP_VERSION_STABLE.' - '.$message);
Console::success($message);
}
});

View file

@ -36,6 +36,7 @@
"utopia-php/framework": "0.10.0",
"utopia-php/abuse": "0.3.*",
"utopia-php/analytics": "0.1.*",
"utopia-php/audit": "0.5.*",
"utopia-php/cache": "0.2.*",
"utopia-php/cli": "0.9.0",
@ -58,9 +59,9 @@
"adhocore/jwt": "1.1.0"
},
"require-dev": {
"swoole/ide-helper": "4.5.5",
"appwrite/sdk-generator": "0.4.5",
"phpunit/phpunit": "9.4.2",
"swoole/ide-helper": "4.5.5",
"vimeo/psalm": "4.1.1"
},
"repositories": [

219
composer.lock generated
View file

@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
"content-hash": "be6adbd12397d629ee420d11eed43b1f",
"content-hash": "e7b1732817d699748e3bbf4f6c7e4fb0",
"packages": [
{
"name": "adhocore/jwt",
@ -1227,6 +1227,61 @@
},
"time": "2020-12-21T17:28:03+00:00"
},
{
"name": "utopia-php/analytics",
"version": "0.1.0",
"source": {
"type": "git",
"url": "https://github.com/utopia-php/analytics.git",
"reference": "a1f2a1672a927bef8cd4d9b47e5cfbc856a3c72f"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/utopia-php/analytics/zipball/a1f2a1672a927bef8cd4d9b47e5cfbc856a3c72f",
"reference": "a1f2a1672a927bef8cd4d9b47e5cfbc856a3c72f",
"shasum": ""
},
"require": {
"php": ">=7.4"
},
"require-dev": {
"phpunit/phpunit": "^9.3",
"vimeo/psalm": "4.0.1"
},
"type": "library",
"autoload": {
"psr-4": {
"Utopia\\Analytics\\": "src/Analytics"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Eldad Fux",
"email": "eldad@appwrite.io"
},
{
"name": "Torsten Dittmann",
"email": "torsten@appwrite.io"
}
],
"description": "A simple library to track events & users.",
"keywords": [
"analytics",
"framework",
"php",
"upf",
"utopia"
],
"support": {
"issues": "https://github.com/utopia-php/analytics/issues",
"source": "https://github.com/utopia-php/analytics/tree/0.1.0"
},
"time": "2021-02-03T17:07:09+00:00"
},
{
"name": "utopia-php/audit",
"version": "0.5.1",
@ -3072,12 +3127,12 @@
"source": {
"type": "git",
"url": "https://github.com/phpDocumentor/TypeResolver.git",
"reference": "6a467b8989322d92aa1c8bf2bebcc6e5c2ba55c0"
"reference": "6759f2268deb9f329812679e9dcb2d0083b2a30b"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/6a467b8989322d92aa1c8bf2bebcc6e5c2ba55c0",
"reference": "6a467b8989322d92aa1c8bf2bebcc6e5c2ba55c0",
"url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/6759f2268deb9f329812679e9dcb2d0083b2a30b",
"reference": "6759f2268deb9f329812679e9dcb2d0083b2a30b",
"shasum": ""
},
"require": {
@ -3112,9 +3167,9 @@
"description": "A PSR-5 based resolver of Class names, Types and Structural Element Names",
"support": {
"issues": "https://github.com/phpDocumentor/TypeResolver/issues",
"source": "https://github.com/phpDocumentor/TypeResolver/tree/1.4.0"
"source": "https://github.com/phpDocumentor/TypeResolver/tree/1.x"
},
"time": "2020-09-17T18:55:26+00:00"
"time": "2021-02-02T21:09:27+00:00"
},
{
"name": "phpspec/prophecy",
@ -3266,12 +3321,12 @@
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-file-iterator.git",
"reference": "42c07f0e3553df5bf56a079957a52e9353625058"
"reference": "7643948b9b254d2c1406437070c53489ca858632"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/42c07f0e3553df5bf56a079957a52e9353625058",
"reference": "42c07f0e3553df5bf56a079957a52e9353625058",
"url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/7643948b9b254d2c1406437070c53489ca858632",
"reference": "7643948b9b254d2c1406437070c53489ca858632",
"shasum": ""
},
"require": {
@ -3319,7 +3374,7 @@
"type": "github"
}
],
"time": "2021-01-27T12:51:34+00:00"
"time": "2021-01-31T06:06:23+00:00"
},
{
"name": "phpunit/php-invoker",
@ -3327,12 +3382,12 @@
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-invoker.git",
"reference": "3a913dc74b32a7646a5fb3cfb72f6ace01fabd01"
"reference": "8ddb05c30eb42ee9342a711ff490436db0f42aad"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/php-invoker/zipball/3a913dc74b32a7646a5fb3cfb72f6ace01fabd01",
"reference": "3a913dc74b32a7646a5fb3cfb72f6ace01fabd01",
"url": "https://api.github.com/repos/sebastianbergmann/php-invoker/zipball/8ddb05c30eb42ee9342a711ff490436db0f42aad",
"reference": "8ddb05c30eb42ee9342a711ff490436db0f42aad",
"shasum": ""
},
"require": {
@ -3383,7 +3438,7 @@
"type": "github"
}
],
"time": "2021-01-27T12:51:43+00:00"
"time": "2021-01-31T06:06:31+00:00"
},
{
"name": "phpunit/php-text-template",
@ -3391,12 +3446,12 @@
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-text-template.git",
"reference": "f2e1a43551a53861fd0d000518f8db3818b82655"
"reference": "eace5f89cab382a6908f404ca2ea757e644047ab"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/f2e1a43551a53861fd0d000518f8db3818b82655",
"reference": "f2e1a43551a53861fd0d000518f8db3818b82655",
"url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/eace5f89cab382a6908f404ca2ea757e644047ab",
"reference": "eace5f89cab382a6908f404ca2ea757e644047ab",
"shasum": ""
},
"require": {
@ -3443,7 +3498,7 @@
"type": "github"
}
],
"time": "2021-01-27T12:52:18+00:00"
"time": "2021-01-31T06:07:05+00:00"
},
{
"name": "phpunit/php-timer",
@ -3451,12 +3506,12 @@
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-timer.git",
"reference": "ca89d7aa771d3c7a095ec2bac5b70489a6d15638"
"reference": "c2c32bcece727700ce67b2c4fa5b5231c03d1232"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/ca89d7aa771d3c7a095ec2bac5b70489a6d15638",
"reference": "ca89d7aa771d3c7a095ec2bac5b70489a6d15638",
"url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/c2c32bcece727700ce67b2c4fa5b5231c03d1232",
"reference": "c2c32bcece727700ce67b2c4fa5b5231c03d1232",
"shasum": ""
},
"require": {
@ -3503,7 +3558,7 @@
"type": "github"
}
],
"time": "2021-01-27T12:51:51+00:00"
"time": "2021-01-31T06:06:40+00:00"
},
{
"name": "phpunit/phpunit",
@ -3668,12 +3723,12 @@
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/cli-parser.git",
"reference": "66398c0b5074897805514249878d592f9ada37c5"
"reference": "852907f9ef27ea08ad4135614a9fbd2f70c91ed1"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/66398c0b5074897805514249878d592f9ada37c5",
"reference": "66398c0b5074897805514249878d592f9ada37c5",
"url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/852907f9ef27ea08ad4135614a9fbd2f70c91ed1",
"reference": "852907f9ef27ea08ad4135614a9fbd2f70c91ed1",
"shasum": ""
},
"require": {
@ -3717,7 +3772,7 @@
"type": "github"
}
],
"time": "2021-01-27T12:52:48+00:00"
"time": "2021-01-31T06:07:32+00:00"
},
{
"name": "sebastian/code-unit",
@ -3781,12 +3836,12 @@
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git",
"reference": "8be6fadd1eb9f4bcee0e823a0f392d641e00e3d9"
"reference": "bae9e6f9fc00aa95c1971a52f819b08494a394f0"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/8be6fadd1eb9f4bcee0e823a0f392d641e00e3d9",
"reference": "8be6fadd1eb9f4bcee0e823a0f392d641e00e3d9",
"url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/bae9e6f9fc00aa95c1971a52f819b08494a394f0",
"reference": "bae9e6f9fc00aa95c1971a52f819b08494a394f0",
"shasum": ""
},
"require": {
@ -3829,7 +3884,7 @@
"type": "github"
}
],
"time": "2021-01-27T12:50:24+00:00"
"time": "2021-01-31T06:05:15+00:00"
},
{
"name": "sebastian/comparator",
@ -3837,12 +3892,12 @@
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/comparator.git",
"reference": "5a39e6c8994048403e326298f0b1bda7eb1ea127"
"reference": "d529bf5bc5746f6c59a1defc17c3725b5374c750"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/5a39e6c8994048403e326298f0b1bda7eb1ea127",
"reference": "5a39e6c8994048403e326298f0b1bda7eb1ea127",
"url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/d529bf5bc5746f6c59a1defc17c3725b5374c750",
"reference": "d529bf5bc5746f6c59a1defc17c3725b5374c750",
"shasum": ""
},
"require": {
@ -3904,7 +3959,7 @@
"type": "github"
}
],
"time": "2021-01-27T14:14:42+00:00"
"time": "2021-01-31T06:05:24+00:00"
},
{
"name": "sebastian/complexity",
@ -3912,12 +3967,12 @@
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/complexity.git",
"reference": "653277be0c4044b0a32ee3e799b3b0c6945aa7f8"
"reference": "1e51f588b0bf9783d80e952339a1f057f530f3ac"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/653277be0c4044b0a32ee3e799b3b0c6945aa7f8",
"reference": "653277be0c4044b0a32ee3e799b3b0c6945aa7f8",
"url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/1e51f588b0bf9783d80e952339a1f057f530f3ac",
"reference": "1e51f588b0bf9783d80e952339a1f057f530f3ac",
"shasum": ""
},
"require": {
@ -3962,7 +4017,7 @@
"type": "github"
}
],
"time": "2021-01-27T12:52:27+00:00"
"time": "2021-01-31T06:07:14+00:00"
},
{
"name": "sebastian/diff",
@ -3970,12 +4025,12 @@
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/diff.git",
"reference": "9d7fb8ba123928945b9727a3e02501645955f61f"
"reference": "492912a4b41de6a0127ebcd2f766b7d7f10f574c"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/9d7fb8ba123928945b9727a3e02501645955f61f",
"reference": "9d7fb8ba123928945b9727a3e02501645955f61f",
"url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/492912a4b41de6a0127ebcd2f766b7d7f10f574c",
"reference": "492912a4b41de6a0127ebcd2f766b7d7f10f574c",
"shasum": ""
},
"require": {
@ -4029,7 +4084,7 @@
"type": "github"
}
],
"time": "2021-01-27T12:50:42+00:00"
"time": "2021-01-31T06:05:32+00:00"
},
{
"name": "sebastian/environment",
@ -4037,12 +4092,12 @@
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/environment.git",
"reference": "27e27e02ab122412b7ff9c847445e21ecfcc5c68"
"reference": "36ffd0fc651961e864d955e6fd71ef03c367abae"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/27e27e02ab122412b7ff9c847445e21ecfcc5c68",
"reference": "27e27e02ab122412b7ff9c847445e21ecfcc5c68",
"url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/36ffd0fc651961e864d955e6fd71ef03c367abae",
"reference": "36ffd0fc651961e864d955e6fd71ef03c367abae",
"shasum": ""
},
"require": {
@ -4093,7 +4148,7 @@
"type": "github"
}
],
"time": "2021-01-27T12:50:50+00:00"
"time": "2021-01-31T06:05:40+00:00"
},
{
"name": "sebastian/exporter",
@ -4101,12 +4156,12 @@
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/exporter.git",
"reference": "4b97f87ebe0e759d27a96e5cfcb15193fdcc1000"
"reference": "61024af3555edd28c0e2df7ae6a72bb24b1c3f88"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/4b97f87ebe0e759d27a96e5cfcb15193fdcc1000",
"reference": "4b97f87ebe0e759d27a96e5cfcb15193fdcc1000",
"url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/61024af3555edd28c0e2df7ae6a72bb24b1c3f88",
"reference": "61024af3555edd28c0e2df7ae6a72bb24b1c3f88",
"shasum": ""
},
"require": {
@ -4171,7 +4226,7 @@
"type": "github"
}
],
"time": "2021-01-27T12:50:59+00:00"
"time": "2021-01-31T06:05:49+00:00"
},
{
"name": "sebastian/global-state",
@ -4179,12 +4234,12 @@
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/global-state.git",
"reference": "ae53ac14d8df978ebc06a0382997257a2268dc2c"
"reference": "ebe2eda599117719755417db6552cf3e6cea68a3"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/ae53ac14d8df978ebc06a0382997257a2268dc2c",
"reference": "ae53ac14d8df978ebc06a0382997257a2268dc2c",
"url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/ebe2eda599117719755417db6552cf3e6cea68a3",
"reference": "ebe2eda599117719755417db6552cf3e6cea68a3",
"shasum": ""
},
"require": {
@ -4236,7 +4291,7 @@
"type": "github"
}
],
"time": "2021-01-27T12:51:08+00:00"
"time": "2021-01-31T06:05:57+00:00"
},
{
"name": "sebastian/lines-of-code",
@ -4244,12 +4299,12 @@
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/lines-of-code.git",
"reference": "3b537e8cf7d5d40c5937cb238dd86e9849058978"
"reference": "a58591ee219008ebc039a6ef1a1ad5ebd7aa5094"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/3b537e8cf7d5d40c5937cb238dd86e9849058978",
"reference": "3b537e8cf7d5d40c5937cb238dd86e9849058978",
"url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/a58591ee219008ebc039a6ef1a1ad5ebd7aa5094",
"reference": "a58591ee219008ebc039a6ef1a1ad5ebd7aa5094",
"shasum": ""
},
"require": {
@ -4294,7 +4349,7 @@
"type": "github"
}
],
"time": "2021-01-27T12:52:38+00:00"
"time": "2021-01-31T06:07:23+00:00"
},
{
"name": "sebastian/object-enumerator",
@ -4302,12 +4357,12 @@
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/object-enumerator.git",
"reference": "f8f7c1ff5e66b5c9145df7329b3bc54844138e21"
"reference": "c3392f76c657681a2fde9073a47d26190580acee"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/f8f7c1ff5e66b5c9145df7329b3bc54844138e21",
"reference": "f8f7c1ff5e66b5c9145df7329b3bc54844138e21",
"url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/c3392f76c657681a2fde9073a47d26190580acee",
"reference": "c3392f76c657681a2fde9073a47d26190580acee",
"shasum": ""
},
"require": {
@ -4352,7 +4407,7 @@
"type": "github"
}
],
"time": "2021-01-27T12:51:16+00:00"
"time": "2021-01-31T06:06:06+00:00"
},
{
"name": "sebastian/object-reflector",
@ -4360,12 +4415,12 @@
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/object-reflector.git",
"reference": "dbea5f76fb03ccf212b0fc88fb8f2ad256f4f000"
"reference": "0b1e3b35407041b8f28c2d8b9f3d792720c81c23"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/dbea5f76fb03ccf212b0fc88fb8f2ad256f4f000",
"reference": "dbea5f76fb03ccf212b0fc88fb8f2ad256f4f000",
"url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/0b1e3b35407041b8f28c2d8b9f3d792720c81c23",
"reference": "0b1e3b35407041b8f28c2d8b9f3d792720c81c23",
"shasum": ""
},
"require": {
@ -4408,7 +4463,7 @@
"type": "github"
}
],
"time": "2021-01-27T12:51:25+00:00"
"time": "2021-01-31T06:06:15+00:00"
},
{
"name": "sebastian/recursion-context",
@ -4416,12 +4471,12 @@
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/recursion-context.git",
"reference": "4181599c8f7b66401bf827a3e7e6da85a2303524"
"reference": "5df92f91b2cc5f733bb1d2df3eb81013a2bf69c6"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/4181599c8f7b66401bf827a3e7e6da85a2303524",
"reference": "4181599c8f7b66401bf827a3e7e6da85a2303524",
"url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/5df92f91b2cc5f733bb1d2df3eb81013a2bf69c6",
"reference": "5df92f91b2cc5f733bb1d2df3eb81013a2bf69c6",
"shasum": ""
},
"require": {
@ -4472,7 +4527,7 @@
"type": "github"
}
],
"time": "2021-01-27T12:52:00+00:00"
"time": "2021-01-31T06:06:48+00:00"
},
{
"name": "sebastian/resource-operations",
@ -4536,12 +4591,12 @@
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/type.git",
"reference": "1c469702730295ddaf484d6fddb3b42a1354cd5c"
"reference": "6751662dde805fb5e46e05d3133a89e056796404"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/type/zipball/1c469702730295ddaf484d6fddb3b42a1354cd5c",
"reference": "1c469702730295ddaf484d6fddb3b42a1354cd5c",
"url": "https://api.github.com/repos/sebastianbergmann/type/zipball/6751662dde805fb5e46e05d3133a89e056796404",
"reference": "6751662dde805fb5e46e05d3133a89e056796404",
"shasum": ""
},
"require": {
@ -4585,7 +4640,7 @@
"type": "github"
}
],
"time": "2021-01-27T12:52:09+00:00"
"time": "2021-01-31T06:06:56+00:00"
},
{
"name": "sebastian/version",
@ -4685,12 +4740,12 @@
"source": {
"type": "git",
"url": "https://github.com/symfony/console.git",
"reference": "a056a527ed72d089185d505882b66f3676e22439"
"reference": "56d4c04ca6069c93857c7335a626dbe747fa82d4"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/console/zipball/a056a527ed72d089185d505882b66f3676e22439",
"reference": "a056a527ed72d089185d505882b66f3676e22439",
"url": "https://api.github.com/repos/symfony/console/zipball/56d4c04ca6069c93857c7335a626dbe747fa82d4",
"reference": "56d4c04ca6069c93857c7335a626dbe747fa82d4",
"shasum": ""
},
"require": {
@ -4775,7 +4830,7 @@
"type": "tidelift"
}
],
"time": "2021-01-27T09:05:46+00:00"
"time": "2021-01-28T22:09:26+00:00"
},
{
"name": "symfony/polyfill-ctype",
@ -5489,12 +5544,12 @@
"source": {
"type": "git",
"url": "https://github.com/twigphp/Twig.git",
"reference": "1a0162a612658790cb1f7b468c7698a7ee58001a"
"reference": "5a60e72afa8511b63217d27bef3f4b7f074e20e1"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/twigphp/Twig/zipball/1a0162a612658790cb1f7b468c7698a7ee58001a",
"reference": "1a0162a612658790cb1f7b468c7698a7ee58001a",
"url": "https://api.github.com/repos/twigphp/Twig/zipball/5a60e72afa8511b63217d27bef3f4b7f074e20e1",
"reference": "5a60e72afa8511b63217d27bef3f4b7f074e20e1",
"shasum": ""
},
"require": {
@ -5560,7 +5615,7 @@
"type": "tidelift"
}
],
"time": "2021-01-14T07:57:35+00:00"
"time": "2021-02-02T15:25:09+00:00"
},
{
"name": "vimeo/psalm",