Merge remote-tracking branch 'origin/refactor-usage-sn' into fix-cloud-tests
This commit is contained in:
commit
979f6ee150
5 changed files with 165 additions and 147 deletions
|
@ -694,7 +694,7 @@ App::get('/v1/teams/:teamId/memberships')
|
||||||
}
|
}
|
||||||
|
|
||||||
// Set internal queries
|
// Set internal queries
|
||||||
$queries[] = Query::equal('teamId', [$teamId]);
|
$queries[] = Query::equal('teamInternalId', [$team->getInternalId()]);
|
||||||
|
|
||||||
// Get cursor document if there was a cursor query
|
// Get cursor document if there was a cursor query
|
||||||
$cursor = \array_filter($queries, function ($query) {
|
$cursor = \array_filter($queries, function ($query) {
|
||||||
|
@ -894,16 +894,16 @@ App::patch('/v1/teams/:teamId/memberships/:membershipId/status')
|
||||||
throw new Exception(Exception::MEMBERSHIP_NOT_FOUND);
|
throw new Exception(Exception::MEMBERSHIP_NOT_FOUND);
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($membership->getAttribute('teamId') !== $teamId) {
|
|
||||||
throw new Exception(Exception::TEAM_MEMBERSHIP_MISMATCH);
|
|
||||||
}
|
|
||||||
|
|
||||||
$team = Authorization::skip(fn() => $dbForProject->getDocument('teams', $teamId));
|
$team = Authorization::skip(fn() => $dbForProject->getDocument('teams', $teamId));
|
||||||
|
|
||||||
if ($team->isEmpty()) {
|
if ($team->isEmpty()) {
|
||||||
throw new Exception(Exception::TEAM_NOT_FOUND);
|
throw new Exception(Exception::TEAM_NOT_FOUND);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ($membership->getAttribute('teamInternalId') !== $team->getInternalId()) {
|
||||||
|
throw new Exception(Exception::TEAM_MEMBERSHIP_MISMATCH);
|
||||||
|
}
|
||||||
|
|
||||||
if (Auth::hash($secret) !== $membership->getAttribute('secret')) {
|
if (Auth::hash($secret) !== $membership->getAttribute('secret')) {
|
||||||
throw new Exception(Exception::TEAM_INVALID_SECRET);
|
throw new Exception(Exception::TEAM_INVALID_SECRET);
|
||||||
}
|
}
|
||||||
|
@ -1020,10 +1020,6 @@ App::delete('/v1/teams/:teamId/memberships/:membershipId')
|
||||||
throw new Exception(Exception::TEAM_INVITE_NOT_FOUND);
|
throw new Exception(Exception::TEAM_INVITE_NOT_FOUND);
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($membership->getAttribute('teamId') !== $teamId) {
|
|
||||||
throw new Exception(Exception::TEAM_MEMBERSHIP_MISMATCH);
|
|
||||||
}
|
|
||||||
|
|
||||||
$user = $dbForProject->getDocument('users', $membership->getAttribute('userId'));
|
$user = $dbForProject->getDocument('users', $membership->getAttribute('userId'));
|
||||||
|
|
||||||
if ($user->isEmpty()) {
|
if ($user->isEmpty()) {
|
||||||
|
@ -1036,6 +1032,10 @@ App::delete('/v1/teams/:teamId/memberships/:membershipId')
|
||||||
throw new Exception(Exception::TEAM_NOT_FOUND);
|
throw new Exception(Exception::TEAM_NOT_FOUND);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ($membership->getAttribute('teamInternalId') !== $team->getInternalId()) {
|
||||||
|
throw new Exception(Exception::TEAM_MEMBERSHIP_MISMATCH);
|
||||||
|
}
|
||||||
|
|
||||||
$dbForProject->deleteDocument('memberships', $membership->getId());
|
$dbForProject->deleteDocument('memberships', $membership->getId());
|
||||||
$dbForProject->deleteCachedDocument('users', $user->getId());
|
$dbForProject->deleteCachedDocument('users', $user->getId());
|
||||||
|
|
||||||
|
|
|
@ -786,6 +786,71 @@ App::error()
|
||||||
->action(function (Throwable $error, App $utopia, Request $request, Response $response, Document $project, ?Logger $logger, Log $log) {
|
->action(function (Throwable $error, App $utopia, Request $request, Response $response, Document $project, ?Logger $logger, Log $log) {
|
||||||
$version = App::getEnv('_APP_VERSION', 'UNKNOWN');
|
$version = App::getEnv('_APP_VERSION', 'UNKNOWN');
|
||||||
$route = $utopia->getRoute();
|
$route = $utopia->getRoute();
|
||||||
|
$class = \get_class($error);
|
||||||
|
$code = $error->getCode();
|
||||||
|
$message = $error->getMessage();
|
||||||
|
$file = $error->getFile();
|
||||||
|
$line = $error->getLine();
|
||||||
|
$trace = $error->getTrace();
|
||||||
|
|
||||||
|
if (php_sapi_name() === 'cli') {
|
||||||
|
Console::error('[Error] Timestamp: ' . date('c', time()));
|
||||||
|
|
||||||
|
if ($route) {
|
||||||
|
Console::error('[Error] Method: ' . $route->getMethod());
|
||||||
|
Console::error('[Error] URL: ' . $route->getPath());
|
||||||
|
}
|
||||||
|
|
||||||
|
Console::error('[Error] Type: ' . get_class($error));
|
||||||
|
Console::error('[Error] Message: ' . $message);
|
||||||
|
Console::error('[Error] File: ' . $file);
|
||||||
|
Console::error('[Error] Line: ' . $line);
|
||||||
|
}
|
||||||
|
|
||||||
|
switch ($class) {
|
||||||
|
case 'Utopia\Exception':
|
||||||
|
$error = new AppwriteException(AppwriteException::GENERAL_UNKNOWN, $message, $code, $error);
|
||||||
|
switch ($code) {
|
||||||
|
case 400:
|
||||||
|
$error->setType(AppwriteException::GENERAL_ARGUMENT_INVALID);
|
||||||
|
break;
|
||||||
|
case 404:
|
||||||
|
$error->setType(AppwriteException::GENERAL_ROUTE_NOT_FOUND);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 'Utopia\Database\Exception\Conflict':
|
||||||
|
\var_dump('Wrapping conflict exception');
|
||||||
|
$error = new AppwriteException(AppwriteException::DOCUMENT_UPDATE_CONFLICT, previous: $error);
|
||||||
|
break;
|
||||||
|
case 'Utopia\Database\Exception\Timeout':
|
||||||
|
\var_dump('Wrapping timeout exception');
|
||||||
|
$error = new AppwriteException(AppwriteException::DATABASE_TIMEOUT, previous: $error);
|
||||||
|
break;
|
||||||
|
case 'Utopia\Database\Exception\Query':
|
||||||
|
\var_dump('Wrapping query exception');
|
||||||
|
$error = new AppwriteException(AppwriteException::GENERAL_QUERY_INVALID, $error->getMessage(), previous: $error);
|
||||||
|
break;
|
||||||
|
case 'Utopia\Database\Exception\Structure':
|
||||||
|
\var_dump('Wrapping structure exception');
|
||||||
|
$error = new AppwriteException(AppwriteException::DOCUMENT_INVALID_STRUCTURE, $error->getMessage(), previous: $error);
|
||||||
|
break;
|
||||||
|
case 'Utopia\Database\Exception\Duplicate':
|
||||||
|
\var_dump('Wrapping duplicate exception');
|
||||||
|
$error = new AppwriteException(AppwriteException::DOCUMENT_ALREADY_EXISTS);
|
||||||
|
break;
|
||||||
|
case 'Utopia\Database\Exception\Restricted':
|
||||||
|
\var_dump('Wrapping restricted exception');
|
||||||
|
$error = new AppwriteException(AppwriteException::DOCUMENT_DELETE_RESTRICTED);
|
||||||
|
break;
|
||||||
|
case 'Utopia\Database\Exception\Authorization':
|
||||||
|
\var_dump('Wrapping authorization exception');
|
||||||
|
$error = new AppwriteException(AppwriteException::USER_UNAUTHORIZED);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
$code = $error->getCode();
|
||||||
|
$message = $error->getMessage();
|
||||||
|
|
||||||
if ($error instanceof AppwriteException) {
|
if ($error instanceof AppwriteException) {
|
||||||
$publish = $error->isPublishable();
|
$publish = $error->isPublishable();
|
||||||
|
@ -814,7 +879,7 @@ App::error()
|
||||||
try {
|
try {
|
||||||
/** @var Utopia\Database\Document $user */
|
/** @var Utopia\Database\Document $user */
|
||||||
$user = $utopia->getResource('user');
|
$user = $utopia->getResource('user');
|
||||||
} catch (\Throwable $th) {
|
} catch (\Throwable) {
|
||||||
// All good, user is optional information for logger
|
// All good, user is optional information for logger
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -853,65 +918,6 @@ App::error()
|
||||||
Console::info('Log pushed with status code: ' . $responseCode);
|
Console::info('Log pushed with status code: ' . $responseCode);
|
||||||
}
|
}
|
||||||
|
|
||||||
$class = \get_class($error);
|
|
||||||
$code = $error->getCode();
|
|
||||||
$message = $error->getMessage();
|
|
||||||
$file = $error->getFile();
|
|
||||||
$line = $error->getLine();
|
|
||||||
$trace = $error->getTrace();
|
|
||||||
|
|
||||||
if (php_sapi_name() === 'cli') {
|
|
||||||
Console::error('[Error] Timestamp: ' . date('c', time()));
|
|
||||||
|
|
||||||
if ($route) {
|
|
||||||
Console::error('[Error] Method: ' . $route->getMethod());
|
|
||||||
Console::error('[Error] URL: ' . $route->getPath());
|
|
||||||
}
|
|
||||||
|
|
||||||
Console::error('[Error] Type: ' . get_class($error));
|
|
||||||
Console::error('[Error] Message: ' . $message);
|
|
||||||
Console::error('[Error] File: ' . $file);
|
|
||||||
Console::error('[Error] Line: ' . $line);
|
|
||||||
}
|
|
||||||
|
|
||||||
switch ($class) {
|
|
||||||
case 'Utopia\Exception':
|
|
||||||
$error = new AppwriteException(AppwriteException::GENERAL_UNKNOWN, $message, $code, $error);
|
|
||||||
switch ($code) {
|
|
||||||
case 400:
|
|
||||||
$error->setType(AppwriteException::GENERAL_ARGUMENT_INVALID);
|
|
||||||
break;
|
|
||||||
case 404:
|
|
||||||
$error->setType(AppwriteException::GENERAL_ROUTE_NOT_FOUND);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case 'Utopia\Database\Exception\Conflict':
|
|
||||||
$error = new AppwriteException(AppwriteException::DOCUMENT_UPDATE_CONFLICT, previous: $error);
|
|
||||||
break;
|
|
||||||
case 'Utopia\Database\Exception\Timeout':
|
|
||||||
$error = new AppwriteException(AppwriteException::DATABASE_TIMEOUT, previous: $error);
|
|
||||||
break;
|
|
||||||
case 'Utopia\Database\Exception\Query':
|
|
||||||
$error = new AppwriteException(AppwriteException::GENERAL_QUERY_INVALID, $error->getMessage(), previous: $error);
|
|
||||||
break;
|
|
||||||
case 'Utopia\Database\Exception\Structure':
|
|
||||||
$error = new AppwriteException(AppwriteException::DOCUMENT_INVALID_STRUCTURE, $error->getMessage(), previous: $error);
|
|
||||||
break;
|
|
||||||
case 'Utopia\Database\Exception\Duplicate':
|
|
||||||
$error = new AppwriteException(AppwriteException::DOCUMENT_ALREADY_EXISTS);
|
|
||||||
break;
|
|
||||||
case 'Utopia\Database\Exception\Restricted':
|
|
||||||
$error = new AppwriteException(AppwriteException::DOCUMENT_DELETE_RESTRICTED);
|
|
||||||
break;
|
|
||||||
case 'Utopia\Database\Exception\Authorization':
|
|
||||||
$error = new AppwriteException(AppwriteException::USER_UNAUTHORIZED);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
$code = $error->getCode();
|
|
||||||
$message = $error->getMessage();
|
|
||||||
|
|
||||||
/** Wrap all exceptions inside Appwrite\Extend\Exception */
|
/** Wrap all exceptions inside Appwrite\Extend\Exception */
|
||||||
if (!($error instanceof AppwriteException)) {
|
if (!($error instanceof AppwriteException)) {
|
||||||
$error = new AppwriteException(AppwriteException::GENERAL_UNKNOWN, $message, $code, $error);
|
$error = new AppwriteException(AppwriteException::GENERAL_UNKNOWN, $message, $code, $error);
|
||||||
|
|
|
@ -1034,7 +1034,7 @@ App::setResource('user', function ($mode, $project, $console, $request, $respons
|
||||||
}
|
}
|
||||||
|
|
||||||
if (APP_MODE_ADMIN === $mode) {
|
if (APP_MODE_ADMIN === $mode) {
|
||||||
if ($user->find('teamId', $project->getAttribute('teamId'), 'memberships')) {
|
if ($user->find('teamInternalId', $project->getAttribute('teamInternalId'), 'memberships')) {
|
||||||
Authorization::setDefaultStatus(false); // Cancel security segmentation for admin users.
|
Authorization::setDefaultStatus(false); // Cancel security segmentation for admin users.
|
||||||
} else {
|
} else {
|
||||||
$user = new Document([]);
|
$user = new Document([]);
|
||||||
|
|
|
@ -50,7 +50,7 @@
|
||||||
"utopia-php/cache": "0.9.*",
|
"utopia-php/cache": "0.9.*",
|
||||||
"utopia-php/cli": "0.15.*",
|
"utopia-php/cli": "0.15.*",
|
||||||
"utopia-php/config": "0.2.*",
|
"utopia-php/config": "0.2.*",
|
||||||
"utopia-php/database": "0.45.*",
|
"utopia-php/database": "0.45.7",
|
||||||
"utopia-php/domains": "0.5.*",
|
"utopia-php/domains": "0.5.*",
|
||||||
"utopia-php/dsn": "0.1.*",
|
"utopia-php/dsn": "0.1.*",
|
||||||
"utopia-php/framework": "0.33.*",
|
"utopia-php/framework": "0.33.*",
|
||||||
|
|
164
composer.lock
generated
164
composer.lock
generated
|
@ -4,7 +4,7 @@
|
||||||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
||||||
"This file is @generated automatically"
|
"This file is @generated automatically"
|
||||||
],
|
],
|
||||||
"content-hash": "f7a4173bb5adeea3518f949fa883a282",
|
"content-hash": "9492cb777590ff776c2a73620783d74b",
|
||||||
"packages": [
|
"packages": [
|
||||||
{
|
{
|
||||||
"name": "adhocore/jwt",
|
"name": "adhocore/jwt",
|
||||||
|
@ -404,16 +404,16 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "jean85/pretty-package-versions",
|
"name": "jean85/pretty-package-versions",
|
||||||
"version": "2.0.5",
|
"version": "2.0.6",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/Jean85/pretty-package-versions.git",
|
"url": "https://github.com/Jean85/pretty-package-versions.git",
|
||||||
"reference": "ae547e455a3d8babd07b96966b17d7fd21d9c6af"
|
"reference": "f9fdd29ad8e6d024f52678b570e5593759b550b4"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/Jean85/pretty-package-versions/zipball/ae547e455a3d8babd07b96966b17d7fd21d9c6af",
|
"url": "https://api.github.com/repos/Jean85/pretty-package-versions/zipball/f9fdd29ad8e6d024f52678b570e5593759b550b4",
|
||||||
"reference": "ae547e455a3d8babd07b96966b17d7fd21d9c6af",
|
"reference": "f9fdd29ad8e6d024f52678b570e5593759b550b4",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
|
@ -421,9 +421,9 @@
|
||||||
"php": "^7.1|^8.0"
|
"php": "^7.1|^8.0"
|
||||||
},
|
},
|
||||||
"require-dev": {
|
"require-dev": {
|
||||||
"friendsofphp/php-cs-fixer": "^2.17",
|
"friendsofphp/php-cs-fixer": "^3.2",
|
||||||
"jean85/composer-provided-replaced-stub-package": "^1.0",
|
"jean85/composer-provided-replaced-stub-package": "^1.0",
|
||||||
"phpstan/phpstan": "^0.12.66",
|
"phpstan/phpstan": "^1.4",
|
||||||
"phpunit/phpunit": "^7.5|^8.5|^9.4",
|
"phpunit/phpunit": "^7.5|^8.5|^9.4",
|
||||||
"vimeo/psalm": "^4.3"
|
"vimeo/psalm": "^4.3"
|
||||||
},
|
},
|
||||||
|
@ -457,9 +457,9 @@
|
||||||
],
|
],
|
||||||
"support": {
|
"support": {
|
||||||
"issues": "https://github.com/Jean85/pretty-package-versions/issues",
|
"issues": "https://github.com/Jean85/pretty-package-versions/issues",
|
||||||
"source": "https://github.com/Jean85/pretty-package-versions/tree/2.0.5"
|
"source": "https://github.com/Jean85/pretty-package-versions/tree/2.0.6"
|
||||||
},
|
},
|
||||||
"time": "2021-10-08T21:21:46+00:00"
|
"time": "2024-03-08T09:58:59+00:00"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "league/csv",
|
"name": "league/csv",
|
||||||
|
@ -688,7 +688,7 @@
|
||||||
"version": "0.6.3",
|
"version": "0.6.3",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "git@github.com:mustangostang/spyc.git",
|
"url": "https://github.com/mustangostang/spyc.git",
|
||||||
"reference": "4627c838b16550b666d15aeae1e5289dd5b77da0"
|
"reference": "4627c838b16550b666d15aeae1e5289dd5b77da0"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
|
@ -731,6 +731,10 @@
|
||||||
"yaml",
|
"yaml",
|
||||||
"yml"
|
"yml"
|
||||||
],
|
],
|
||||||
|
"support": {
|
||||||
|
"issues": "https://github.com/mustangostang/spyc/issues",
|
||||||
|
"source": "https://github.com/mustangostang/spyc/tree/0.6.3"
|
||||||
|
},
|
||||||
"time": "2019-09-10T13:16:29+00:00"
|
"time": "2019-09-10T13:16:29+00:00"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -1187,16 +1191,16 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "utopia-php/database",
|
"name": "utopia-php/database",
|
||||||
"version": "0.45.6",
|
"version": "0.45.7",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/utopia-php/database.git",
|
"url": "https://github.com/utopia-php/database.git",
|
||||||
"reference": "c7cc6d57683a4c13d9772dbeea343adb72c443fd"
|
"reference": "3ffcc226cbc5b8747cdc5d6b06ce887cdffee8e1"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/utopia-php/database/zipball/c7cc6d57683a4c13d9772dbeea343adb72c443fd",
|
"url": "https://api.github.com/repos/utopia-php/database/zipball/3ffcc226cbc5b8747cdc5d6b06ce887cdffee8e1",
|
||||||
"reference": "c7cc6d57683a4c13d9772dbeea343adb72c443fd",
|
"reference": "3ffcc226cbc5b8747cdc5d6b06ce887cdffee8e1",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
|
@ -1237,9 +1241,9 @@
|
||||||
],
|
],
|
||||||
"support": {
|
"support": {
|
||||||
"issues": "https://github.com/utopia-php/database/issues",
|
"issues": "https://github.com/utopia-php/database/issues",
|
||||||
"source": "https://github.com/utopia-php/database/tree/0.45.6"
|
"source": "https://github.com/utopia-php/database/tree/0.45.7"
|
||||||
},
|
},
|
||||||
"time": "2024-02-01T02:33:43+00:00"
|
"time": "2024-03-13T18:03:15+00:00"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "utopia-php/domains",
|
"name": "utopia-php/domains",
|
||||||
|
@ -1350,16 +1354,16 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "utopia-php/framework",
|
"name": "utopia-php/framework",
|
||||||
"version": "0.33.2",
|
"version": "0.33.3",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/utopia-php/http.git",
|
"url": "https://github.com/utopia-php/http.git",
|
||||||
"reference": "b1423ca3e3b61c6c4c2e619d2cb80672809a19f3"
|
"reference": "893d602cd96676810c25fc9b9a2e9360eebb898f"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/utopia-php/http/zipball/b1423ca3e3b61c6c4c2e619d2cb80672809a19f3",
|
"url": "https://api.github.com/repos/utopia-php/http/zipball/893d602cd96676810c25fc9b9a2e9360eebb898f",
|
||||||
"reference": "b1423ca3e3b61c6c4c2e619d2cb80672809a19f3",
|
"reference": "893d602cd96676810c25fc9b9a2e9360eebb898f",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
|
@ -1389,9 +1393,9 @@
|
||||||
],
|
],
|
||||||
"support": {
|
"support": {
|
||||||
"issues": "https://github.com/utopia-php/http/issues",
|
"issues": "https://github.com/utopia-php/http/issues",
|
||||||
"source": "https://github.com/utopia-php/http/tree/0.33.2"
|
"source": "https://github.com/utopia-php/http/tree/0.33.3"
|
||||||
},
|
},
|
||||||
"time": "2024-01-31T10:35:59+00:00"
|
"time": "2024-03-11T13:43:23+00:00"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "utopia-php/image",
|
"name": "utopia-php/image",
|
||||||
|
@ -2581,16 +2585,16 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "matthiasmullie/minify",
|
"name": "matthiasmullie/minify",
|
||||||
"version": "1.3.71",
|
"version": "1.3.72",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/matthiasmullie/minify.git",
|
"url": "https://github.com/matthiasmullie/minify.git",
|
||||||
"reference": "ae42a47d7fecc1fbb7277b2f2d84c37a33edc3b1"
|
"reference": "531fdeef1911ffe27a53f8a19c297648c78f757e"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/matthiasmullie/minify/zipball/ae42a47d7fecc1fbb7277b2f2d84c37a33edc3b1",
|
"url": "https://api.github.com/repos/matthiasmullie/minify/zipball/531fdeef1911ffe27a53f8a19c297648c78f757e",
|
||||||
"reference": "ae42a47d7fecc1fbb7277b2f2d84c37a33edc3b1",
|
"reference": "531fdeef1911ffe27a53f8a19c297648c78f757e",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
|
@ -2640,7 +2644,7 @@
|
||||||
],
|
],
|
||||||
"support": {
|
"support": {
|
||||||
"issues": "https://github.com/matthiasmullie/minify/issues",
|
"issues": "https://github.com/matthiasmullie/minify/issues",
|
||||||
"source": "https://github.com/matthiasmullie/minify/tree/1.3.71"
|
"source": "https://github.com/matthiasmullie/minify/tree/1.3.72"
|
||||||
},
|
},
|
||||||
"funding": [
|
"funding": [
|
||||||
{
|
{
|
||||||
|
@ -2648,7 +2652,7 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"time": "2023-04-25T20:33:03+00:00"
|
"time": "2024-03-13T12:02:00+00:00"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "matthiasmullie/path-converter",
|
"name": "matthiasmullie/path-converter",
|
||||||
|
@ -2764,16 +2768,16 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "nikic/php-parser",
|
"name": "nikic/php-parser",
|
||||||
"version": "v5.0.1",
|
"version": "v5.0.2",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/nikic/PHP-Parser.git",
|
"url": "https://github.com/nikic/PHP-Parser.git",
|
||||||
"reference": "2218c2252c874a4624ab2f613d86ac32d227bc69"
|
"reference": "139676794dc1e9231bf7bcd123cfc0c99182cb13"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/2218c2252c874a4624ab2f613d86ac32d227bc69",
|
"url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/139676794dc1e9231bf7bcd123cfc0c99182cb13",
|
||||||
"reference": "2218c2252c874a4624ab2f613d86ac32d227bc69",
|
"reference": "139676794dc1e9231bf7bcd123cfc0c99182cb13",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
|
@ -2816,26 +2820,27 @@
|
||||||
],
|
],
|
||||||
"support": {
|
"support": {
|
||||||
"issues": "https://github.com/nikic/PHP-Parser/issues",
|
"issues": "https://github.com/nikic/PHP-Parser/issues",
|
||||||
"source": "https://github.com/nikic/PHP-Parser/tree/v5.0.1"
|
"source": "https://github.com/nikic/PHP-Parser/tree/v5.0.2"
|
||||||
},
|
},
|
||||||
"time": "2024-02-21T19:24:10+00:00"
|
"time": "2024-03-05T20:51:40+00:00"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "phar-io/manifest",
|
"name": "phar-io/manifest",
|
||||||
"version": "2.0.3",
|
"version": "2.0.4",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/phar-io/manifest.git",
|
"url": "https://github.com/phar-io/manifest.git",
|
||||||
"reference": "97803eca37d319dfa7826cc2437fc020857acb53"
|
"reference": "54750ef60c58e43759730615a392c31c80e23176"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/phar-io/manifest/zipball/97803eca37d319dfa7826cc2437fc020857acb53",
|
"url": "https://api.github.com/repos/phar-io/manifest/zipball/54750ef60c58e43759730615a392c31c80e23176",
|
||||||
"reference": "97803eca37d319dfa7826cc2437fc020857acb53",
|
"reference": "54750ef60c58e43759730615a392c31c80e23176",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
"ext-dom": "*",
|
"ext-dom": "*",
|
||||||
|
"ext-libxml": "*",
|
||||||
"ext-phar": "*",
|
"ext-phar": "*",
|
||||||
"ext-xmlwriter": "*",
|
"ext-xmlwriter": "*",
|
||||||
"phar-io/version": "^3.0.1",
|
"phar-io/version": "^3.0.1",
|
||||||
|
@ -2876,9 +2881,15 @@
|
||||||
"description": "Component for reading phar.io manifest information from a PHP Archive (PHAR)",
|
"description": "Component for reading phar.io manifest information from a PHP Archive (PHAR)",
|
||||||
"support": {
|
"support": {
|
||||||
"issues": "https://github.com/phar-io/manifest/issues",
|
"issues": "https://github.com/phar-io/manifest/issues",
|
||||||
"source": "https://github.com/phar-io/manifest/tree/2.0.3"
|
"source": "https://github.com/phar-io/manifest/tree/2.0.4"
|
||||||
},
|
},
|
||||||
"time": "2021-07-20T11:28:43+00:00"
|
"funding": [
|
||||||
|
{
|
||||||
|
"url": "https://github.com/theseer",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"time": "2024-03-03T12:33:53+00:00"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "phar-io/version",
|
"name": "phar-io/version",
|
||||||
|
@ -3217,16 +3228,16 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "phpunit/php-code-coverage",
|
"name": "phpunit/php-code-coverage",
|
||||||
"version": "9.2.30",
|
"version": "9.2.31",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/sebastianbergmann/php-code-coverage.git",
|
"url": "https://github.com/sebastianbergmann/php-code-coverage.git",
|
||||||
"reference": "ca2bd87d2f9215904682a9cb9bb37dda98e76089"
|
"reference": "48c34b5d8d983006bd2adc2d0de92963b9155965"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/ca2bd87d2f9215904682a9cb9bb37dda98e76089",
|
"url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/48c34b5d8d983006bd2adc2d0de92963b9155965",
|
||||||
"reference": "ca2bd87d2f9215904682a9cb9bb37dda98e76089",
|
"reference": "48c34b5d8d983006bd2adc2d0de92963b9155965",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
|
@ -3283,7 +3294,7 @@
|
||||||
"support": {
|
"support": {
|
||||||
"issues": "https://github.com/sebastianbergmann/php-code-coverage/issues",
|
"issues": "https://github.com/sebastianbergmann/php-code-coverage/issues",
|
||||||
"security": "https://github.com/sebastianbergmann/php-code-coverage/security/policy",
|
"security": "https://github.com/sebastianbergmann/php-code-coverage/security/policy",
|
||||||
"source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.30"
|
"source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.31"
|
||||||
},
|
},
|
||||||
"funding": [
|
"funding": [
|
||||||
{
|
{
|
||||||
|
@ -3291,7 +3302,7 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"time": "2023-12-22T06:47:57+00:00"
|
"time": "2024-03-02T06:37:42+00:00"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "phpunit/php-file-iterator",
|
"name": "phpunit/php-file-iterator",
|
||||||
|
@ -3689,16 +3700,16 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "sebastian/cli-parser",
|
"name": "sebastian/cli-parser",
|
||||||
"version": "1.0.1",
|
"version": "1.0.2",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/sebastianbergmann/cli-parser.git",
|
"url": "https://github.com/sebastianbergmann/cli-parser.git",
|
||||||
"reference": "442e7c7e687e42adc03470c7b668bc4b2402c0b2"
|
"reference": "2b56bea83a09de3ac06bb18b92f068e60cc6f50b"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/442e7c7e687e42adc03470c7b668bc4b2402c0b2",
|
"url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/2b56bea83a09de3ac06bb18b92f068e60cc6f50b",
|
||||||
"reference": "442e7c7e687e42adc03470c7b668bc4b2402c0b2",
|
"reference": "2b56bea83a09de3ac06bb18b92f068e60cc6f50b",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
|
@ -3733,7 +3744,7 @@
|
||||||
"homepage": "https://github.com/sebastianbergmann/cli-parser",
|
"homepage": "https://github.com/sebastianbergmann/cli-parser",
|
||||||
"support": {
|
"support": {
|
||||||
"issues": "https://github.com/sebastianbergmann/cli-parser/issues",
|
"issues": "https://github.com/sebastianbergmann/cli-parser/issues",
|
||||||
"source": "https://github.com/sebastianbergmann/cli-parser/tree/1.0.1"
|
"source": "https://github.com/sebastianbergmann/cli-parser/tree/1.0.2"
|
||||||
},
|
},
|
||||||
"funding": [
|
"funding": [
|
||||||
{
|
{
|
||||||
|
@ -3741,7 +3752,7 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"time": "2020-09-28T06:08:49+00:00"
|
"time": "2024-03-02T06:27:43+00:00"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "sebastian/code-unit",
|
"name": "sebastian/code-unit",
|
||||||
|
@ -3987,16 +3998,16 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "sebastian/diff",
|
"name": "sebastian/diff",
|
||||||
"version": "4.0.5",
|
"version": "4.0.6",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/sebastianbergmann/diff.git",
|
"url": "https://github.com/sebastianbergmann/diff.git",
|
||||||
"reference": "74be17022044ebaaecfdf0c5cd504fc9cd5a7131"
|
"reference": "ba01945089c3a293b01ba9badc29ad55b106b0bc"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/74be17022044ebaaecfdf0c5cd504fc9cd5a7131",
|
"url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/ba01945089c3a293b01ba9badc29ad55b106b0bc",
|
||||||
"reference": "74be17022044ebaaecfdf0c5cd504fc9cd5a7131",
|
"reference": "ba01945089c3a293b01ba9badc29ad55b106b0bc",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
|
@ -4041,7 +4052,7 @@
|
||||||
],
|
],
|
||||||
"support": {
|
"support": {
|
||||||
"issues": "https://github.com/sebastianbergmann/diff/issues",
|
"issues": "https://github.com/sebastianbergmann/diff/issues",
|
||||||
"source": "https://github.com/sebastianbergmann/diff/tree/4.0.5"
|
"source": "https://github.com/sebastianbergmann/diff/tree/4.0.6"
|
||||||
},
|
},
|
||||||
"funding": [
|
"funding": [
|
||||||
{
|
{
|
||||||
|
@ -4049,7 +4060,7 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"time": "2023-05-07T05:35:17+00:00"
|
"time": "2024-03-02T06:30:58+00:00"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "sebastian/environment",
|
"name": "sebastian/environment",
|
||||||
|
@ -4116,16 +4127,16 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "sebastian/exporter",
|
"name": "sebastian/exporter",
|
||||||
"version": "4.0.5",
|
"version": "4.0.6",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/sebastianbergmann/exporter.git",
|
"url": "https://github.com/sebastianbergmann/exporter.git",
|
||||||
"reference": "ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d"
|
"reference": "78c00df8f170e02473b682df15bfcdacc3d32d72"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d",
|
"url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/78c00df8f170e02473b682df15bfcdacc3d32d72",
|
||||||
"reference": "ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d",
|
"reference": "78c00df8f170e02473b682df15bfcdacc3d32d72",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
|
@ -4181,7 +4192,7 @@
|
||||||
],
|
],
|
||||||
"support": {
|
"support": {
|
||||||
"issues": "https://github.com/sebastianbergmann/exporter/issues",
|
"issues": "https://github.com/sebastianbergmann/exporter/issues",
|
||||||
"source": "https://github.com/sebastianbergmann/exporter/tree/4.0.5"
|
"source": "https://github.com/sebastianbergmann/exporter/tree/4.0.6"
|
||||||
},
|
},
|
||||||
"funding": [
|
"funding": [
|
||||||
{
|
{
|
||||||
|
@ -4189,20 +4200,20 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"time": "2022-09-14T06:03:37+00:00"
|
"time": "2024-03-02T06:33:00+00:00"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "sebastian/global-state",
|
"name": "sebastian/global-state",
|
||||||
"version": "5.0.6",
|
"version": "5.0.7",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/sebastianbergmann/global-state.git",
|
"url": "https://github.com/sebastianbergmann/global-state.git",
|
||||||
"reference": "bde739e7565280bda77be70044ac1047bc007e34"
|
"reference": "bca7df1f32ee6fe93b4d4a9abbf69e13a4ada2c9"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/bde739e7565280bda77be70044ac1047bc007e34",
|
"url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/bca7df1f32ee6fe93b4d4a9abbf69e13a4ada2c9",
|
||||||
"reference": "bde739e7565280bda77be70044ac1047bc007e34",
|
"reference": "bca7df1f32ee6fe93b4d4a9abbf69e13a4ada2c9",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
|
@ -4245,7 +4256,7 @@
|
||||||
],
|
],
|
||||||
"support": {
|
"support": {
|
||||||
"issues": "https://github.com/sebastianbergmann/global-state/issues",
|
"issues": "https://github.com/sebastianbergmann/global-state/issues",
|
||||||
"source": "https://github.com/sebastianbergmann/global-state/tree/5.0.6"
|
"source": "https://github.com/sebastianbergmann/global-state/tree/5.0.7"
|
||||||
},
|
},
|
||||||
"funding": [
|
"funding": [
|
||||||
{
|
{
|
||||||
|
@ -4253,7 +4264,7 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"time": "2023-08-02T09:26:13+00:00"
|
"time": "2024-03-02T06:35:11+00:00"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "sebastian/lines-of-code",
|
"name": "sebastian/lines-of-code",
|
||||||
|
@ -4540,6 +4551,7 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
"abandoned": true,
|
||||||
"time": "2020-09-28T06:45:17+00:00"
|
"time": "2020-09-28T06:45:17+00:00"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -4973,16 +4985,16 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "theseer/tokenizer",
|
"name": "theseer/tokenizer",
|
||||||
"version": "1.2.2",
|
"version": "1.2.3",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/theseer/tokenizer.git",
|
"url": "https://github.com/theseer/tokenizer.git",
|
||||||
"reference": "b2ad5003ca10d4ee50a12da31de12a5774ba6b96"
|
"reference": "737eda637ed5e28c3413cb1ebe8bb52cbf1ca7a2"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/theseer/tokenizer/zipball/b2ad5003ca10d4ee50a12da31de12a5774ba6b96",
|
"url": "https://api.github.com/repos/theseer/tokenizer/zipball/737eda637ed5e28c3413cb1ebe8bb52cbf1ca7a2",
|
||||||
"reference": "b2ad5003ca10d4ee50a12da31de12a5774ba6b96",
|
"reference": "737eda637ed5e28c3413cb1ebe8bb52cbf1ca7a2",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
|
@ -5011,7 +5023,7 @@
|
||||||
"description": "A small library for converting tokenized PHP source code into XML and potentially other formats",
|
"description": "A small library for converting tokenized PHP source code into XML and potentially other formats",
|
||||||
"support": {
|
"support": {
|
||||||
"issues": "https://github.com/theseer/tokenizer/issues",
|
"issues": "https://github.com/theseer/tokenizer/issues",
|
||||||
"source": "https://github.com/theseer/tokenizer/tree/1.2.2"
|
"source": "https://github.com/theseer/tokenizer/tree/1.2.3"
|
||||||
},
|
},
|
||||||
"funding": [
|
"funding": [
|
||||||
{
|
{
|
||||||
|
@ -5019,7 +5031,7 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"time": "2023-11-20T00:12:19+00:00"
|
"time": "2024-03-03T12:36:25+00:00"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "twig/twig",
|
"name": "twig/twig",
|
||||||
|
|
Loading…
Reference in a new issue