From fde4edab09bed34ac196b6144b6abf9ab590c6a5 Mon Sep 17 00:00:00 2001 From: AIZAWA Hina Date: Fri, 15 Nov 2024 23:20:47 +0000 Subject: [PATCH 01/14] Update dependencies --- composer.json | 2 +- composer.lock | 18 +++++++++--------- package-lock.json | 14 +++++++------- package.json | 2 +- 4 files changed, 18 insertions(+), 18 deletions(-) diff --git a/composer.json b/composer.json index 617d1dddc..629f88784 100644 --- a/composer.json +++ b/composer.json @@ -19,7 +19,7 @@ "ext-session": "*", "ext-zlib": "*", "cweagans/composer-patches": "^1.7.3", - "geoip2/geoip2": "^3.0.0", + "geoip2/geoip2": "^3.1.0", "jaybizzle/crawler-detect": "^1.2.121", "jp3cki/mb_str_replace": "^4.0.2", "jp3cki/uuid": "^4.0.1", diff --git a/composer.lock b/composer.lock index e62c00397..db8abf103 100644 --- a/composer.lock +++ b/composer.lock @@ -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": "8f556bdc607039f096b88d015ce17972", + "content-hash": "404937912f7fc6e7eaa58bece0f2cef7", "packages": [ { "name": "cebe/markdown", @@ -448,22 +448,22 @@ }, { "name": "geoip2/geoip2", - "version": "v3.0.0", + "version": "v3.1.0", "source": { "type": "git", "url": "https://github.com/maxmind/GeoIP2-php.git", - "reference": "1a802ce9356cdd1c6b681c030fd9563750e11e6a" + "reference": "c86fbeaa7e42279dd9e7af0b015384e721832b88" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/maxmind/GeoIP2-php/zipball/1a802ce9356cdd1c6b681c030fd9563750e11e6a", - "reference": "1a802ce9356cdd1c6b681c030fd9563750e11e6a", + "url": "https://api.github.com/repos/maxmind/GeoIP2-php/zipball/c86fbeaa7e42279dd9e7af0b015384e721832b88", + "reference": "c86fbeaa7e42279dd9e7af0b015384e721832b88", "shasum": "" }, "require": { "ext-json": "*", - "maxmind-db/reader": "^1.11.1", - "maxmind/web-service-common": "~0.8", + "maxmind-db/reader": "^1.12.0", + "maxmind/web-service-common": "~0.10", "php": ">=8.1" }, "require-dev": { @@ -500,9 +500,9 @@ ], "support": { "issues": "https://github.com/maxmind/GeoIP2-php/issues", - "source": "https://github.com/maxmind/GeoIP2-php/tree/v3.0.0" + "source": "https://github.com/maxmind/GeoIP2-php/tree/v3.1.0" }, - "time": "2023-12-04T17:16:34+00:00" + "time": "2024-11-15T16:33:31+00:00" }, { "name": "jaybizzle/crawler-detect", diff --git a/package-lock.json b/package-lock.json index 3823dc3bf..b3c5494e0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -62,7 +62,7 @@ "redux": "^4.2.1", "redux-saga": "^1.3.0", "regenerator-runtime": "^0.14.1", - "sass": "^1.80.7", + "sass": "^1.81.0", "semistandard": "^17.0.0", "semver": "^7.6.3", "stupid-table-plugin": "^1.1.3", @@ -5532,9 +5532,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.59", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.59.tgz", - "integrity": "sha512-faAXB6+gEbC8FsiRdpOXgOe4snP49YwjiXynEB8Mp7sUx80W5eN+BnnBHJ/F7eIeLzs+QBfDD40bJMm97oEFcw==", + "version": "1.5.62", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.62.tgz", + "integrity": "sha512-t8c+zLmJHa9dJy96yBZRXGQYoiCEnHYgFwn1asvSPZSUdVxnB62A4RASd7k41ytG3ErFBA0TpHlKg9D9SQBmLg==", "license": "ISC" }, "node_modules/emoji-regex": { @@ -11651,9 +11651,9 @@ "license": "MIT" }, "node_modules/sass": { - "version": "1.80.7", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.80.7.tgz", - "integrity": "sha512-MVWvN0u5meytrSjsU7AWsbhoXi1sc58zADXFllfZzbsBT1GHjjar6JwBINYPRrkx/zqnQ6uqbQuHgE95O+C+eQ==", + "version": "1.81.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.81.0.tgz", + "integrity": "sha512-Q4fOxRfhmv3sqCLoGfvrC9pRV8btc0UtqL9mN6Yrv6Qi9ScL55CVH1vlPP863ISLEEMNLLuu9P+enCeGHlnzhA==", "license": "MIT", "dependencies": { "chokidar": "^4.0.0", diff --git a/package.json b/package.json index c6064687f..5ce037bfc 100644 --- a/package.json +++ b/package.json @@ -60,7 +60,7 @@ "redux": "^4.2.1", "redux-saga": "^1.3.0", "regenerator-runtime": "^0.14.1", - "sass": "^1.80.7", + "sass": "^1.81.0", "semistandard": "^17.0.0", "semver": "^7.6.3", "stupid-table-plugin": "^1.1.3", From 32447399aeacd5494569d0ba79803c55cf6f8b68 Mon Sep 17 00:00:00 2001 From: AIZAWA Hina Date: Sat, 16 Nov 2024 23:53:58 +0900 Subject: [PATCH 02/14] bump --- composer.json | 2 +- composer.lock | 12 ++++++------ 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/composer.json b/composer.json index 629f88784..51e6c1216 100644 --- a/composer.json +++ b/composer.json @@ -66,7 +66,7 @@ "ergebnis/composer-normalize": "^2.44.0", "jp3cki/coding-standard": "^1.0.0", "proget-hq/phpstan-yii2": "^0.8.0", - "squizlabs/php_codesniffer": "^3.11.0", + "squizlabs/php_codesniffer": "^3.11.1", "yiisoft/yii2-debug": "^2.1.25", "yiisoft/yii2-gii": "^2.2.6" }, diff --git a/composer.lock b/composer.lock index db8abf103..210243cbf 100644 --- a/composer.lock +++ b/composer.lock @@ -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": "404937912f7fc6e7eaa58bece0f2cef7", + "content-hash": "1d6e8dc3c8d7f75907ac5d5cfc21a326", "packages": [ { "name": "cebe/markdown", @@ -8072,16 +8072,16 @@ }, { "name": "squizlabs/php_codesniffer", - "version": "3.11.0", + "version": "3.11.1", "source": { "type": "git", "url": "https://github.com/PHPCSStandards/PHP_CodeSniffer.git", - "reference": "70c08f8d20c0eb4fe56f26644dd94dae76a7f450" + "reference": "19473c30efe4f7b3cd42522d0b2e6e7f243c6f87" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PHPCSStandards/PHP_CodeSniffer/zipball/70c08f8d20c0eb4fe56f26644dd94dae76a7f450", - "reference": "70c08f8d20c0eb4fe56f26644dd94dae76a7f450", + "url": "https://api.github.com/repos/PHPCSStandards/PHP_CodeSniffer/zipball/19473c30efe4f7b3cd42522d0b2e6e7f243c6f87", + "reference": "19473c30efe4f7b3cd42522d0b2e6e7f243c6f87", "shasum": "" }, "require": { @@ -8148,7 +8148,7 @@ "type": "open_collective" } ], - "time": "2024-11-12T09:53:29+00:00" + "time": "2024-11-16T12:02:36+00:00" }, { "name": "symfony/browser-kit", From 08d91f170da449be9639cc4c177b282ab914d159 Mon Sep 17 00:00:00 2001 From: AIZAWA Hina Date: Sun, 17 Nov 2024 00:37:48 +0900 Subject: [PATCH 03/14] remove deps: laminas/laminas-validator --- commands/BlogFeedController.php | 32 +++++++++++++++++++++---------- components/helpers/TypeHelper.php | 17 +++++++++++++++- composer.json | 1 - composer.lock | 2 +- 4 files changed, 39 insertions(+), 13 deletions(-) diff --git a/commands/BlogFeedController.php b/commands/BlogFeedController.php index 7e7a00b29..e5a5887e1 100644 --- a/commands/BlogFeedController.php +++ b/commands/BlogFeedController.php @@ -1,7 +1,7 @@ */ @@ -12,17 +12,19 @@ use Exception; use Laminas\Feed\Reader\Reader as FeedReader; -use Laminas\Validator\Uri as UriValidator; +use TypeError; use Yii; +use app\components\helpers\TypeHelper; use app\models\BlogEntry; use jp3cki\uuid\NS as UuidNS; use jp3cki\uuid\Uuid; use yii\console\Controller; +use function preg_match; use function printf; use function usort; -class BlogFeedController extends Controller +final class BlogFeedController extends Controller { public function actionCrawl() { @@ -56,14 +58,14 @@ private function processEntry($entry) if (!$id) { return; } - $uuid = Uuid::v5( - (new UriValidator())->isValid($id) - ? UuidNs::url() - : 'd0ec81fc-c8e6-11e5-a890-9ca3ba01e1f8', - $id, - )->__toString(); + $uuid = TypeHelper::string( + Uuid::v5( + self::isValidUrl($id) ? UuidNs::url() : 'd0ec81fc-c8e6-11e5-a890-9ca3ba01e1f8', + $id, + ), + ); $link = $entry->getLink(); - if (!(new UriValidator())->isValid($link)) { + if (!self::isValidUrl($link)) { return; } @@ -85,4 +87,14 @@ private function processEntry($entry) echo "Registered new blog entry\n"; printf(" #%d, %s %s\n", $model->id, $model->url, $model->title); } + + private static function isValidUrl(mixed $url): bool + { + try { + $url = TypeHelper::url($url); + return (bool)preg_match('#\Ahttps?://#i', $url); + } catch (TypeError) { + return false; + } + } } diff --git a/components/helpers/TypeHelper.php b/components/helpers/TypeHelper.php index d44384536..17828fdde 100644 --- a/components/helpers/TypeHelper.php +++ b/components/helpers/TypeHelper.php @@ -1,7 +1,7 @@ */ @@ -21,8 +21,10 @@ use function is_scalar; use function is_string; +use const FILTER_FLAG_PATH_REQUIRED; use const FILTER_VALIDATE_FLOAT; use const FILTER_VALIDATE_INT; +use const FILTER_VALIDATE_URL; final class TypeHelper { @@ -82,6 +84,19 @@ public static function floatOrNull(mixed $value): ?float return is_float($value) ? $value : null; } + public static function url(mixed $value): string + { + $value = filter_var( + self::string($value); + FILTER_VALIDATE_URL, + FILTER_FLAG_SCHEME_REQUIRED | FILTER_FLAG_HOST_REQUIRED | FILTER_FLAG_PATH_REQUIRED, + ); + return match (true) { + is_string($value) => $value, + default => throw new TypeError('The value is not a valid URL'), + }; + } + public static function array(mixed $value): array { return match (true) { diff --git a/composer.json b/composer.json index 51e6c1216..5a94e16e7 100644 --- a/composer.json +++ b/composer.json @@ -31,7 +31,6 @@ "jp3cki/yii2-zxcvbn": "^1.0", "laminas/laminas-feed": "^2.23.0", "laminas/laminas-http": "^2.20", - "laminas/laminas-validator": "^2.64.1", "lipis/flag-icons": "^7.2.3", "lusitanian/oauth": "^0.8.11", "markrogoyski/math-php": "^2.10.0", diff --git a/composer.lock b/composer.lock index 210243cbf..77eca90a7 100644 --- a/composer.lock +++ b/composer.lock @@ -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": "1d6e8dc3c8d7f75907ac5d5cfc21a326", + "content-hash": "3d0676c554cad5db10be3be4e8aaaaca", "packages": [ { "name": "cebe/markdown", From 0715c88f918c8715aaafd9bf169734c4320c2775 Mon Sep 17 00:00:00 2001 From: AIZAWA Hina Date: Sat, 16 Nov 2024 23:59:22 +0900 Subject: [PATCH 04/14] remove deps: laminas/laminas-http --- commands/BlogFeedController.php | 16 + components/helpers/TypeHelper.php | 4 +- composer.json | 2 +- composer.lock | 1469 ++++++++++++++--------------- 4 files changed, 710 insertions(+), 781 deletions(-) diff --git a/commands/BlogFeedController.php b/commands/BlogFeedController.php index e5a5887e1..a019b94f5 100644 --- a/commands/BlogFeedController.php +++ b/commands/BlogFeedController.php @@ -11,6 +11,9 @@ namespace app\commands; use Exception; +use GuzzleHttp\Client as GuzzleHttpClient; +use Laminas\Feed\Reader\Http\ClientInterface as FeedReaderHttpClientInterface; +use Laminas\Feed\Reader\Http\Psr7ResponseDecorator; use Laminas\Feed\Reader\Reader as FeedReader; use TypeError; use Yii; @@ -20,6 +23,7 @@ use jp3cki\uuid\Uuid; use yii\console\Controller; +use function count; use function preg_match; use function printf; use function usort; @@ -39,6 +43,16 @@ public function actionCrawl() private function fetchFeed() { echo "Fetching feed...\n"; + FeedReader::setHttpClient( + new class () implements FeedReaderHttpClientInterface { + public function get($uri) + { + return new Psr7ResponseDecorator( + (new GuzzleHttpClient())->request('GET', $uri), + ); + } + }, + ); $feed = FeedReader::import('https://blog.fetus.jp/category/website/stat-ink/feed'); echo "done.\n"; $ret = []; @@ -49,6 +63,8 @@ private function fetchFeed() $ret[] = $entry; } usort($ret, fn ($a, $b) => $a->getDateCreated()->getTimestamp() <=> $b->getDateCreated()->getTimestamp()); + printf("%d entries\n", count($ret)); + return $ret; } diff --git a/components/helpers/TypeHelper.php b/components/helpers/TypeHelper.php index 17828fdde..b9b057051 100644 --- a/components/helpers/TypeHelper.php +++ b/components/helpers/TypeHelper.php @@ -87,9 +87,9 @@ public static function floatOrNull(mixed $value): ?float public static function url(mixed $value): string { $value = filter_var( - self::string($value); + self::string($value), FILTER_VALIDATE_URL, - FILTER_FLAG_SCHEME_REQUIRED | FILTER_FLAG_HOST_REQUIRED | FILTER_FLAG_PATH_REQUIRED, + FILTER_FLAG_PATH_REQUIRED, ); return match (true) { is_string($value) => $value, diff --git a/composer.json b/composer.json index 5a94e16e7..cc622ce1e 100644 --- a/composer.json +++ b/composer.json @@ -20,6 +20,7 @@ "ext-zlib": "*", "cweagans/composer-patches": "^1.7.3", "geoip2/geoip2": "^3.1.0", + "guzzlehttp/guzzle": "^7.9.2", "jaybizzle/crawler-detect": "^1.2.121", "jp3cki/mb_str_replace": "^4.0.2", "jp3cki/uuid": "^4.0.1", @@ -30,7 +31,6 @@ "jp3cki/yii2-twitter-widget": "^1.0", "jp3cki/yii2-zxcvbn": "^1.0", "laminas/laminas-feed": "^2.23.0", - "laminas/laminas-http": "^2.20", "lipis/flag-icons": "^7.2.3", "lusitanian/oauth": "^0.8.11", "markrogoyski/math-php": "^2.10.0", diff --git a/composer.lock b/composer.lock index 77eca90a7..2b9b984e8 100644 --- a/composer.lock +++ b/composer.lock @@ -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": "3d0676c554cad5db10be3be4e8aaaaca", + "content-hash": "5fead3efa8bf3150510244ff5441f450", "packages": [ { "name": "cebe/markdown", @@ -504,6 +504,331 @@ }, "time": "2024-11-15T16:33:31+00:00" }, + { + "name": "guzzlehttp/guzzle", + "version": "7.9.2", + "source": { + "type": "git", + "url": "https://github.com/guzzle/guzzle.git", + "reference": "d281ed313b989f213357e3be1a179f02196ac99b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/guzzle/guzzle/zipball/d281ed313b989f213357e3be1a179f02196ac99b", + "reference": "d281ed313b989f213357e3be1a179f02196ac99b", + "shasum": "" + }, + "require": { + "ext-json": "*", + "guzzlehttp/promises": "^1.5.3 || ^2.0.3", + "guzzlehttp/psr7": "^2.7.0", + "php": "^7.2.5 || ^8.0", + "psr/http-client": "^1.0", + "symfony/deprecation-contracts": "^2.2 || ^3.0" + }, + "provide": { + "psr/http-client-implementation": "1.0" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.8.2", + "ext-curl": "*", + "guzzle/client-integration-tests": "3.0.2", + "php-http/message-factory": "^1.1", + "phpunit/phpunit": "^8.5.39 || ^9.6.20", + "psr/log": "^1.1 || ^2.0 || ^3.0" + }, + "suggest": { + "ext-curl": "Required for CURL handler support", + "ext-intl": "Required for Internationalized Domain Name (IDN) support", + "psr/log": "Required for using the Log middleware" + }, + "type": "library", + "extra": { + "bamarni-bin": { + "bin-links": true, + "forward-command": false + } + }, + "autoload": { + "files": [ + "src/functions_include.php" + ], + "psr-4": { + "GuzzleHttp\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + }, + { + "name": "Michael Dowling", + "email": "mtdowling@gmail.com", + "homepage": "https://github.com/mtdowling" + }, + { + "name": "Jeremy Lindblom", + "email": "jeremeamia@gmail.com", + "homepage": "https://github.com/jeremeamia" + }, + { + "name": "George Mponos", + "email": "gmponos@gmail.com", + "homepage": "https://github.com/gmponos" + }, + { + "name": "Tobias Nyholm", + "email": "tobias.nyholm@gmail.com", + "homepage": "https://github.com/Nyholm" + }, + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com", + "homepage": "https://github.com/sagikazarmark" + }, + { + "name": "Tobias Schultze", + "email": "webmaster@tubo-world.de", + "homepage": "https://github.com/Tobion" + } + ], + "description": "Guzzle is a PHP HTTP client library", + "keywords": [ + "client", + "curl", + "framework", + "http", + "http client", + "psr-18", + "psr-7", + "rest", + "web service" + ], + "support": { + "issues": "https://github.com/guzzle/guzzle/issues", + "source": "https://github.com/guzzle/guzzle/tree/7.9.2" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://github.com/Nyholm", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/guzzlehttp/guzzle", + "type": "tidelift" + } + ], + "time": "2024-07-24T11:22:20+00:00" + }, + { + "name": "guzzlehttp/promises", + "version": "2.0.4", + "source": { + "type": "git", + "url": "https://github.com/guzzle/promises.git", + "reference": "f9c436286ab2892c7db7be8c8da4ef61ccf7b455" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/guzzle/promises/zipball/f9c436286ab2892c7db7be8c8da4ef61ccf7b455", + "reference": "f9c436286ab2892c7db7be8c8da4ef61ccf7b455", + "shasum": "" + }, + "require": { + "php": "^7.2.5 || ^8.0" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.8.2", + "phpunit/phpunit": "^8.5.39 || ^9.6.20" + }, + "type": "library", + "extra": { + "bamarni-bin": { + "bin-links": true, + "forward-command": false + } + }, + "autoload": { + "psr-4": { + "GuzzleHttp\\Promise\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + }, + { + "name": "Michael Dowling", + "email": "mtdowling@gmail.com", + "homepage": "https://github.com/mtdowling" + }, + { + "name": "Tobias Nyholm", + "email": "tobias.nyholm@gmail.com", + "homepage": "https://github.com/Nyholm" + }, + { + "name": "Tobias Schultze", + "email": "webmaster@tubo-world.de", + "homepage": "https://github.com/Tobion" + } + ], + "description": "Guzzle promises library", + "keywords": [ + "promise" + ], + "support": { + "issues": "https://github.com/guzzle/promises/issues", + "source": "https://github.com/guzzle/promises/tree/2.0.4" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://github.com/Nyholm", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/guzzlehttp/promises", + "type": "tidelift" + } + ], + "time": "2024-10-17T10:06:22+00:00" + }, + { + "name": "guzzlehttp/psr7", + "version": "2.7.0", + "source": { + "type": "git", + "url": "https://github.com/guzzle/psr7.git", + "reference": "a70f5c95fb43bc83f07c9c948baa0dc1829bf201" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/guzzle/psr7/zipball/a70f5c95fb43bc83f07c9c948baa0dc1829bf201", + "reference": "a70f5c95fb43bc83f07c9c948baa0dc1829bf201", + "shasum": "" + }, + "require": { + "php": "^7.2.5 || ^8.0", + "psr/http-factory": "^1.0", + "psr/http-message": "^1.1 || ^2.0", + "ralouphie/getallheaders": "^3.0" + }, + "provide": { + "psr/http-factory-implementation": "1.0", + "psr/http-message-implementation": "1.0" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.8.2", + "http-interop/http-factory-tests": "0.9.0", + "phpunit/phpunit": "^8.5.39 || ^9.6.20" + }, + "suggest": { + "laminas/laminas-httphandlerrunner": "Emit PSR-7 responses" + }, + "type": "library", + "extra": { + "bamarni-bin": { + "bin-links": true, + "forward-command": false + } + }, + "autoload": { + "psr-4": { + "GuzzleHttp\\Psr7\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + }, + { + "name": "Michael Dowling", + "email": "mtdowling@gmail.com", + "homepage": "https://github.com/mtdowling" + }, + { + "name": "George Mponos", + "email": "gmponos@gmail.com", + "homepage": "https://github.com/gmponos" + }, + { + "name": "Tobias Nyholm", + "email": "tobias.nyholm@gmail.com", + "homepage": "https://github.com/Nyholm" + }, + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com", + "homepage": "https://github.com/sagikazarmark" + }, + { + "name": "Tobias Schultze", + "email": "webmaster@tubo-world.de", + "homepage": "https://github.com/Tobion" + }, + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com", + "homepage": "https://sagikazarmark.hu" + } + ], + "description": "PSR-7 message implementation that also provides common utility methods", + "keywords": [ + "http", + "message", + "psr-7", + "request", + "response", + "stream", + "uri", + "url" + ], + "support": { + "issues": "https://github.com/guzzle/psr7/issues", + "source": "https://github.com/guzzle/psr7/tree/2.7.0" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://github.com/Nyholm", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/guzzlehttp/psr7", + "type": "tidelift" + } + ], + "time": "2024-07-18T11:15:46+00:00" + }, { "name": "jaybizzle/crawler-detect", "version": "v1.2.121", @@ -707,604 +1032,254 @@ }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/fetus-hina/yii2-flot/zipball/b3603ac34b67aec21d5ed0bf740fe0ec7ca13567", - "reference": "b3603ac34b67aec21d5ed0bf740fe0ec7ca13567", - "shasum": "" - }, - "require": { - "bower-asset/flot": "^0.8.3", - "yiisoft/yii2": "*" - }, - "type": "yii2-extension", - "autoload": { - "psr-4": { - "jp3cki\\yii2\\flot\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "AIZAWA Hina", - "email": "hina@bouhime.com" - } - ], - "description": "jQuery Flot Assets for Yii Framework 2.", - "support": { - "issues": "https://github.com/fetus-hina/yii2-flot/issues", - "source": "https://github.com/fetus-hina/yii2-flot/tree/v1.0.0" - }, - "time": "2015-12-25T13:23:38+00:00" - }, - { - "name": "jp3cki/yii2-jquery-color", - "version": "v1.0.0", - "source": { - "type": "git", - "url": "https://github.com/fetus-hina/yii2-jquery-color.git", - "reference": "893d60a434fba90b6d852e6c851b7a1590cb1747" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/fetus-hina/yii2-jquery-color/zipball/893d60a434fba90b6d852e6c851b7a1590cb1747", - "reference": "893d60a434fba90b6d852e6c851b7a1590cb1747", - "shasum": "" - }, - "require": { - "bower-asset/jquery-color": "^2.1", - "yiisoft/yii2": "*" - }, - "type": "yii2-extension", - "autoload": { - "psr-4": { - "jp3cki\\yii2\\jqueryColor\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "AIZAWA Hina", - "email": "hina@bouhime.com" - } - ], - "description": "jQuery Color Assets for Yii Framework 2.", - "support": { - "issues": "https://github.com/fetus-hina/yii2-jquery-color/issues", - "source": "https://github.com/fetus-hina/yii2-jquery-color/tree/v1.0.0" - }, - "time": "2015-12-29T11:49:02+00:00" - }, - { - "name": "jp3cki/yii2-momentjs", - "version": "v1.0.1", - "source": { - "type": "git", - "url": "https://github.com/fetus-hina/yii2-momentjs.git", - "reference": "14d13ba28093821d72ca942eeed7f3d99ea92070" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/fetus-hina/yii2-momentjs/zipball/14d13ba28093821d72ca942eeed7f3d99ea92070", - "reference": "14d13ba28093821d72ca942eeed7f3d99ea92070", - "shasum": "" - }, - "require": { - "bower-asset/moment": "~2.10", - "bower-asset/moment-timezone": "~0.5.0", - "yiisoft/yii2": "*" - }, - "type": "yii2-extension", - "autoload": { - "psr-4": { - "jp3cki\\yii2\\momentjs\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "AIZAWA Hina", - "email": "hina@bouhime.com" - } - ], - "description": "Moment.js Assets for Yii Framework 2.", - "support": { - "issues": "https://github.com/fetus-hina/yii2-momentjs/issues", - "source": "https://github.com/fetus-hina/yii2-momentjs/tree/v1.0.1" - }, - "time": "2015-12-29T11:12:12+00:00" - }, - { - "name": "jp3cki/yii2-twitter-widget", - "version": "v1.0.0", - "source": { - "type": "git", - "url": "https://github.com/fetus-hina/yii2-twitter-widget.git", - "reference": "766879b200ef2ba85d4e4b1a06b473a244db753f" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/fetus-hina/yii2-twitter-widget/zipball/766879b200ef2ba85d4e4b1a06b473a244db753f", - "reference": "766879b200ef2ba85d4e4b1a06b473a244db753f", - "shasum": "" - }, - "require": { - "yiisoft/yii2": "*" - }, - "type": "yii2-extension", - "autoload": { - "psr-4": { - "jp3cki\\yii2\\twitter\\widget\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "AIZAWA Hina", - "email": "hina@bouhime.com" - } - ], - "description": "Twitter Widget Assets for Yii Framework 2.", - "support": { - "issues": "https://github.com/fetus-hina/yii2-twitter-widget/issues", - "source": "https://github.com/fetus-hina/yii2-twitter-widget/tree/v1.0.0" - }, - "time": "2016-03-16T16:56:39+00:00" - }, - { - "name": "jp3cki/yii2-zxcvbn", - "version": "v1.0.0", - "source": { - "type": "git", - "url": "https://github.com/fetus-hina/yii2-zxcvbn.git", - "reference": "c6d7865b1ca6c97e1566258a439cdb3dee8f8b8f" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/fetus-hina/yii2-zxcvbn/zipball/c6d7865b1ca6c97e1566258a439cdb3dee8f8b8f", - "reference": "c6d7865b1ca6c97e1566258a439cdb3dee8f8b8f", - "shasum": "" - }, - "require": { - "bower-asset/zxcvbn": "^4.2", - "yiisoft/yii2": "*" - }, - "type": "yii2-extension", - "autoload": { - "psr-4": { - "jp3cki\\yii2\\zxcvbn\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "AIZAWA Hina", - "email": "hina@bouhime.com" - } - ], - "description": "Zxcvbn Assets for Yii Framework 2.", - "support": { - "issues": "https://github.com/fetus-hina/yii2-zxcvbn/issues", - "source": "https://github.com/fetus-hina/yii2-zxcvbn/tree/v1.0.0" - }, - "time": "2015-12-25T14:01:09+00:00" - }, - { - "name": "laminas/laminas-escaper", - "version": "2.14.0", - "source": { - "type": "git", - "url": "https://github.com/laminas/laminas-escaper.git", - "reference": "0f7cb975f4443cf22f33408925c231225cfba8cb" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-escaper/zipball/0f7cb975f4443cf22f33408925c231225cfba8cb", - "reference": "0f7cb975f4443cf22f33408925c231225cfba8cb", - "shasum": "" - }, - "require": { - "ext-ctype": "*", - "ext-mbstring": "*", - "php": "~8.1.0 || ~8.2.0 || ~8.3.0 || ~8.4.0" - }, - "conflict": { - "zendframework/zend-escaper": "*" + "url": "https://api.github.com/repos/fetus-hina/yii2-flot/zipball/b3603ac34b67aec21d5ed0bf740fe0ec7ca13567", + "reference": "b3603ac34b67aec21d5ed0bf740fe0ec7ca13567", + "shasum": "" }, - "require-dev": { - "infection/infection": "^0.27.9", - "laminas/laminas-coding-standard": "~3.0.0", - "maglnet/composer-require-checker": "^3.8.0", - "phpunit/phpunit": "^9.6.16", - "psalm/plugin-phpunit": "^0.19.0", - "vimeo/psalm": "^5.21.1" + "require": { + "bower-asset/flot": "^0.8.3", + "yiisoft/yii2": "*" }, - "type": "library", + "type": "yii2-extension", "autoload": { "psr-4": { - "Laminas\\Escaper\\": "src/" + "jp3cki\\yii2\\flot\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", "license": [ - "BSD-3-Clause" - ], - "description": "Securely and safely escape HTML, HTML attributes, JavaScript, CSS, and URLs", - "homepage": "https://laminas.dev", - "keywords": [ - "escaper", - "laminas" + "MIT" ], - "support": { - "chat": "https://laminas.dev/chat", - "docs": "https://docs.laminas.dev/laminas-escaper/", - "forum": "https://discourse.laminas.dev", - "issues": "https://github.com/laminas/laminas-escaper/issues", - "rss": "https://github.com/laminas/laminas-escaper/releases.atom", - "source": "https://github.com/laminas/laminas-escaper" - }, - "funding": [ + "authors": [ { - "url": "https://funding.communitybridge.org/projects/laminas-project", - "type": "community_bridge" + "name": "AIZAWA Hina", + "email": "hina@bouhime.com" } ], - "time": "2024-10-24T10:12:53+00:00" + "description": "jQuery Flot Assets for Yii Framework 2.", + "support": { + "issues": "https://github.com/fetus-hina/yii2-flot/issues", + "source": "https://github.com/fetus-hina/yii2-flot/tree/v1.0.0" + }, + "time": "2015-12-25T13:23:38+00:00" }, { - "name": "laminas/laminas-feed", - "version": "2.23.0", + "name": "jp3cki/yii2-jquery-color", + "version": "v1.0.0", "source": { "type": "git", - "url": "https://github.com/laminas/laminas-feed.git", - "reference": "23807e692b3174750b426143bd93572b71b6739a" + "url": "https://github.com/fetus-hina/yii2-jquery-color.git", + "reference": "893d60a434fba90b6d852e6c851b7a1590cb1747" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-feed/zipball/23807e692b3174750b426143bd93572b71b6739a", - "reference": "23807e692b3174750b426143bd93572b71b6739a", + "url": "https://api.github.com/repos/fetus-hina/yii2-jquery-color/zipball/893d60a434fba90b6d852e6c851b7a1590cb1747", + "reference": "893d60a434fba90b6d852e6c851b7a1590cb1747", "shasum": "" }, "require": { - "ext-dom": "*", - "ext-libxml": "*", - "laminas/laminas-escaper": "^2.9", - "laminas/laminas-stdlib": "^3.6", - "php": "~8.1.0 || ~8.2.0 || ~8.3.0 || ~8.4.0" - }, - "conflict": { - "laminas/laminas-servicemanager": "<3.3", - "zendframework/zend-feed": "*" - }, - "require-dev": { - "laminas/laminas-cache": "^2.13.2 || ^3.12", - "laminas/laminas-cache-storage-adapter-memory": "^1.1.0 || ^2.3", - "laminas/laminas-coding-standard": "~2.5.0", - "laminas/laminas-db": "^2.18", - "laminas/laminas-http": "^2.19", - "laminas/laminas-servicemanager": "^3.22.1", - "laminas/laminas-validator": "^2.46", - "phpunit/phpunit": "^10.5.5", - "psalm/plugin-phpunit": "^0.19.0", - "psr/http-message": "^2.0", - "vimeo/psalm": "^5.18.0" - }, - "suggest": { - "laminas/laminas-cache": "Laminas\\Cache component, for optionally caching feeds between requests", - "laminas/laminas-db": "Laminas\\Db component, for use with PubSubHubbub", - "laminas/laminas-http": "Laminas\\Http for PubSubHubbub, and optionally for use with Laminas\\Feed\\Reader", - "laminas/laminas-servicemanager": "Laminas\\ServiceManager component, for easily extending ExtensionManager implementations", - "laminas/laminas-validator": "Laminas\\Validator component, for validating email addresses used in Atom feeds and entries when using the Writer subcomponent", - "psr/http-message": "PSR-7 ^1.0.1, if you wish to use Laminas\\Feed\\Reader\\Http\\Psr7ResponseDecorator" + "bower-asset/jquery-color": "^2.1", + "yiisoft/yii2": "*" }, - "type": "library", + "type": "yii2-extension", "autoload": { "psr-4": { - "Laminas\\Feed\\": "src/" + "jp3cki\\yii2\\jqueryColor\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", "license": [ - "BSD-3-Clause" - ], - "description": "provides functionality for creating and consuming RSS and Atom feeds", - "homepage": "https://laminas.dev", - "keywords": [ - "atom", - "feed", - "laminas", - "rss" + "MIT" ], - "support": { - "chat": "https://laminas.dev/chat", - "docs": "https://docs.laminas.dev/laminas-feed/", - "forum": "https://discourse.laminas.dev", - "issues": "https://github.com/laminas/laminas-feed/issues", - "rss": "https://github.com/laminas/laminas-feed/releases.atom", - "source": "https://github.com/laminas/laminas-feed" - }, - "funding": [ + "authors": [ { - "url": "https://funding.communitybridge.org/projects/laminas-project", - "type": "community_bridge" + "name": "AIZAWA Hina", + "email": "hina@bouhime.com" } ], - "time": "2024-10-09T10:53:30+00:00" + "description": "jQuery Color Assets for Yii Framework 2.", + "support": { + "issues": "https://github.com/fetus-hina/yii2-jquery-color/issues", + "source": "https://github.com/fetus-hina/yii2-jquery-color/tree/v1.0.0" + }, + "time": "2015-12-29T11:49:02+00:00" }, { - "name": "laminas/laminas-http", - "version": "2.20.0", + "name": "jp3cki/yii2-momentjs", + "version": "v1.0.1", "source": { "type": "git", - "url": "https://github.com/laminas/laminas-http.git", - "reference": "a66bfb65c698aad6ee9f10df42cb5902f2c3dec8" + "url": "https://github.com/fetus-hina/yii2-momentjs.git", + "reference": "14d13ba28093821d72ca942eeed7f3d99ea92070" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-http/zipball/a66bfb65c698aad6ee9f10df42cb5902f2c3dec8", - "reference": "a66bfb65c698aad6ee9f10df42cb5902f2c3dec8", + "url": "https://api.github.com/repos/fetus-hina/yii2-momentjs/zipball/14d13ba28093821d72ca942eeed7f3d99ea92070", + "reference": "14d13ba28093821d72ca942eeed7f3d99ea92070", "shasum": "" }, "require": { - "laminas/laminas-loader": "^2.10", - "laminas/laminas-stdlib": "^3.6", - "laminas/laminas-uri": "^2.11", - "laminas/laminas-validator": "^2.15", - "php": "~8.1.0 || ~8.2.0 || ~8.3.0 || ~8.4.0" - }, - "conflict": { - "zendframework/zend-http": "*" - }, - "require-dev": { - "ext-curl": "*", - "laminas/laminas-coding-standard": "~2.4.0", - "phpunit/phpunit": "^9.6.21" - }, - "suggest": { - "paragonie/certainty": "For automated management of cacert.pem" + "bower-asset/moment": "~2.10", + "bower-asset/moment-timezone": "~0.5.0", + "yiisoft/yii2": "*" }, - "type": "library", + "type": "yii2-extension", "autoload": { "psr-4": { - "Laminas\\Http\\": "src/" + "jp3cki\\yii2\\momentjs\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", "license": [ - "BSD-3-Clause" - ], - "description": "Provides an easy interface for performing Hyper-Text Transfer Protocol (HTTP) requests", - "homepage": "https://laminas.dev", - "keywords": [ - "http", - "http client", - "laminas" + "MIT" ], - "support": { - "chat": "https://laminas.dev/chat", - "docs": "https://docs.laminas.dev/laminas-http/", - "forum": "https://discourse.laminas.dev", - "issues": "https://github.com/laminas/laminas-http/issues", - "rss": "https://github.com/laminas/laminas-http/releases.atom", - "source": "https://github.com/laminas/laminas-http" - }, - "funding": [ + "authors": [ { - "url": "https://funding.communitybridge.org/projects/laminas-project", - "type": "community_bridge" + "name": "AIZAWA Hina", + "email": "hina@bouhime.com" } ], - "time": "2024-10-18T07:35:59+00:00" + "description": "Moment.js Assets for Yii Framework 2.", + "support": { + "issues": "https://github.com/fetus-hina/yii2-momentjs/issues", + "source": "https://github.com/fetus-hina/yii2-momentjs/tree/v1.0.1" + }, + "time": "2015-12-29T11:12:12+00:00" }, { - "name": "laminas/laminas-loader", - "version": "2.11.0", + "name": "jp3cki/yii2-twitter-widget", + "version": "v1.0.0", "source": { "type": "git", - "url": "https://github.com/laminas/laminas-loader.git", - "reference": "f2eedd3a6e774d965158fd11946bb1eba72e298c" + "url": "https://github.com/fetus-hina/yii2-twitter-widget.git", + "reference": "766879b200ef2ba85d4e4b1a06b473a244db753f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-loader/zipball/f2eedd3a6e774d965158fd11946bb1eba72e298c", - "reference": "f2eedd3a6e774d965158fd11946bb1eba72e298c", + "url": "https://api.github.com/repos/fetus-hina/yii2-twitter-widget/zipball/766879b200ef2ba85d4e4b1a06b473a244db753f", + "reference": "766879b200ef2ba85d4e4b1a06b473a244db753f", "shasum": "" }, "require": { - "php": "~8.0.0 || ~8.1.0 || ~8.2.0 || ~8.3.0 || ~8.4.0" - }, - "conflict": { - "zendframework/zend-loader": "*" - }, - "require-dev": { - "laminas/laminas-coding-standard": "~2.4.0", - "phpunit/phpunit": "~9.5.25" + "yiisoft/yii2": "*" }, - "type": "library", + "type": "yii2-extension", "autoload": { "psr-4": { - "Laminas\\Loader\\": "src/" + "jp3cki\\yii2\\twitter\\widget\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", "license": [ - "BSD-3-Clause" - ], - "description": "Autoloading and plugin loading strategies", - "homepage": "https://laminas.dev", - "keywords": [ - "laminas", - "loader" + "MIT" ], - "support": { - "chat": "https://laminas.dev/chat", - "docs": "https://docs.laminas.dev/laminas-loader/", - "forum": "https://discourse.laminas.dev", - "issues": "https://github.com/laminas/laminas-loader/issues", - "rss": "https://github.com/laminas/laminas-loader/releases.atom", - "source": "https://github.com/laminas/laminas-loader" - }, - "funding": [ + "authors": [ { - "url": "https://funding.communitybridge.org/projects/laminas-project", - "type": "community_bridge" + "name": "AIZAWA Hina", + "email": "hina@bouhime.com" } ], - "time": "2024-10-16T09:06:57+00:00" + "description": "Twitter Widget Assets for Yii Framework 2.", + "support": { + "issues": "https://github.com/fetus-hina/yii2-twitter-widget/issues", + "source": "https://github.com/fetus-hina/yii2-twitter-widget/tree/v1.0.0" + }, + "time": "2016-03-16T16:56:39+00:00" }, { - "name": "laminas/laminas-servicemanager", - "version": "3.23.0", + "name": "jp3cki/yii2-zxcvbn", + "version": "v1.0.0", "source": { "type": "git", - "url": "https://github.com/laminas/laminas-servicemanager.git", - "reference": "a8640182b892b99767d54404d19c5c3b3699f79b" + "url": "https://github.com/fetus-hina/yii2-zxcvbn.git", + "reference": "c6d7865b1ca6c97e1566258a439cdb3dee8f8b8f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-servicemanager/zipball/a8640182b892b99767d54404d19c5c3b3699f79b", - "reference": "a8640182b892b99767d54404d19c5c3b3699f79b", + "url": "https://api.github.com/repos/fetus-hina/yii2-zxcvbn/zipball/c6d7865b1ca6c97e1566258a439cdb3dee8f8b8f", + "reference": "c6d7865b1ca6c97e1566258a439cdb3dee8f8b8f", "shasum": "" }, "require": { - "laminas/laminas-stdlib": "^3.19", - "php": "~8.1.0 || ~8.2.0 || ~8.3.0 || ~8.4.0", - "psr/container": "^1.0" - }, - "conflict": { - "ext-psr": "*", - "laminas/laminas-code": "<4.10.0", - "zendframework/zend-code": "<3.3.1", - "zendframework/zend-servicemanager": "*" - }, - "provide": { - "psr/container-implementation": "^1.0" - }, - "replace": { - "container-interop/container-interop": "^1.2.0" - }, - "require-dev": { - "composer/package-versions-deprecated": "^1.11.99.5", - "friendsofphp/proxy-manager-lts": "^1.0.18", - "laminas/laminas-code": "^4.14.0", - "laminas/laminas-coding-standard": "~2.5.0", - "laminas/laminas-container-config-test": "^0.8", - "mikey179/vfsstream": "^1.6.12", - "phpbench/phpbench": "^1.3.1", - "phpunit/phpunit": "^10.5.36", - "psalm/plugin-phpunit": "^0.18.4", - "vimeo/psalm": "^5.26.1" - }, - "suggest": { - "friendsofphp/proxy-manager-lts": "ProxyManager ^2.1.1 to handle lazy initialization of services" + "bower-asset/zxcvbn": "^4.2", + "yiisoft/yii2": "*" }, - "bin": [ - "bin/generate-deps-for-config-factory", - "bin/generate-factory-for-class" - ], - "type": "library", + "type": "yii2-extension", "autoload": { - "files": [ - "src/autoload.php" - ], "psr-4": { - "Laminas\\ServiceManager\\": "src/" + "jp3cki\\yii2\\zxcvbn\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", "license": [ - "BSD-3-Clause" - ], - "description": "Factory-Driven Dependency Injection Container", - "homepage": "https://laminas.dev", - "keywords": [ - "PSR-11", - "dependency-injection", - "di", - "dic", - "laminas", - "service-manager", - "servicemanager" + "MIT" ], - "support": { - "chat": "https://laminas.dev/chat", - "docs": "https://docs.laminas.dev/laminas-servicemanager/", - "forum": "https://discourse.laminas.dev", - "issues": "https://github.com/laminas/laminas-servicemanager/issues", - "rss": "https://github.com/laminas/laminas-servicemanager/releases.atom", - "source": "https://github.com/laminas/laminas-servicemanager" - }, - "funding": [ + "authors": [ { - "url": "https://funding.communitybridge.org/projects/laminas-project", - "type": "community_bridge" + "name": "AIZAWA Hina", + "email": "hina@bouhime.com" } ], - "time": "2024-10-28T21:32:16+00:00" + "description": "Zxcvbn Assets for Yii Framework 2.", + "support": { + "issues": "https://github.com/fetus-hina/yii2-zxcvbn/issues", + "source": "https://github.com/fetus-hina/yii2-zxcvbn/tree/v1.0.0" + }, + "time": "2015-12-25T14:01:09+00:00" }, { - "name": "laminas/laminas-stdlib", - "version": "3.20.0", + "name": "laminas/laminas-escaper", + "version": "2.14.0", "source": { "type": "git", - "url": "https://github.com/laminas/laminas-stdlib.git", - "reference": "8974a1213be42c3e2f70b2c27b17f910291ab2f4" + "url": "https://github.com/laminas/laminas-escaper.git", + "reference": "0f7cb975f4443cf22f33408925c231225cfba8cb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-stdlib/zipball/8974a1213be42c3e2f70b2c27b17f910291ab2f4", - "reference": "8974a1213be42c3e2f70b2c27b17f910291ab2f4", + "url": "https://api.github.com/repos/laminas/laminas-escaper/zipball/0f7cb975f4443cf22f33408925c231225cfba8cb", + "reference": "0f7cb975f4443cf22f33408925c231225cfba8cb", "shasum": "" }, "require": { + "ext-ctype": "*", + "ext-mbstring": "*", "php": "~8.1.0 || ~8.2.0 || ~8.3.0 || ~8.4.0" }, "conflict": { - "zendframework/zend-stdlib": "*" + "zendframework/zend-escaper": "*" }, "require-dev": { - "laminas/laminas-coding-standard": "^3.0", - "phpbench/phpbench": "^1.3.1", - "phpunit/phpunit": "^10.5.38", + "infection/infection": "^0.27.9", + "laminas/laminas-coding-standard": "~3.0.0", + "maglnet/composer-require-checker": "^3.8.0", + "phpunit/phpunit": "^9.6.16", "psalm/plugin-phpunit": "^0.19.0", - "vimeo/psalm": "^5.26.1" + "vimeo/psalm": "^5.21.1" }, "type": "library", "autoload": { "psr-4": { - "Laminas\\Stdlib\\": "src/" + "Laminas\\Escaper\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", "license": [ "BSD-3-Clause" ], - "description": "SPL extensions, array utilities, error handlers, and more", + "description": "Securely and safely escape HTML, HTML attributes, JavaScript, CSS, and URLs", "homepage": "https://laminas.dev", "keywords": [ - "laminas", - "stdlib" + "escaper", + "laminas" ], "support": { "chat": "https://laminas.dev/chat", - "docs": "https://docs.laminas.dev/laminas-stdlib/", + "docs": "https://docs.laminas.dev/laminas-escaper/", "forum": "https://discourse.laminas.dev", - "issues": "https://github.com/laminas/laminas-stdlib/issues", - "rss": "https://github.com/laminas/laminas-stdlib/releases.atom", - "source": "https://github.com/laminas/laminas-stdlib" + "issues": "https://github.com/laminas/laminas-escaper/issues", + "rss": "https://github.com/laminas/laminas-escaper/releases.atom", + "source": "https://github.com/laminas/laminas-escaper" }, "funding": [ { @@ -1312,57 +1287,79 @@ "type": "community_bridge" } ], - "time": "2024-10-29T13:46:07+00:00" + "time": "2024-10-24T10:12:53+00:00" }, { - "name": "laminas/laminas-uri", - "version": "2.12.0", + "name": "laminas/laminas-feed", + "version": "2.23.0", "source": { "type": "git", - "url": "https://github.com/laminas/laminas-uri.git", - "reference": "95a41a7592bacf4c648648a88b7c94b0c5c22b9e" + "url": "https://github.com/laminas/laminas-feed.git", + "reference": "23807e692b3174750b426143bd93572b71b6739a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-uri/zipball/95a41a7592bacf4c648648a88b7c94b0c5c22b9e", - "reference": "95a41a7592bacf4c648648a88b7c94b0c5c22b9e", + "url": "https://api.github.com/repos/laminas/laminas-feed/zipball/23807e692b3174750b426143bd93572b71b6739a", + "reference": "23807e692b3174750b426143bd93572b71b6739a", "shasum": "" }, "require": { + "ext-dom": "*", + "ext-libxml": "*", "laminas/laminas-escaper": "^2.9", - "laminas/laminas-validator": "^2.39", + "laminas/laminas-stdlib": "^3.6", "php": "~8.1.0 || ~8.2.0 || ~8.3.0 || ~8.4.0" }, "conflict": { - "zendframework/zend-uri": "*" + "laminas/laminas-servicemanager": "<3.3", + "zendframework/zend-feed": "*" }, "require-dev": { - "laminas/laminas-coding-standard": "~2.4.0", - "phpunit/phpunit": "^9.6.20" + "laminas/laminas-cache": "^2.13.2 || ^3.12", + "laminas/laminas-cache-storage-adapter-memory": "^1.1.0 || ^2.3", + "laminas/laminas-coding-standard": "~2.5.0", + "laminas/laminas-db": "^2.18", + "laminas/laminas-http": "^2.19", + "laminas/laminas-servicemanager": "^3.22.1", + "laminas/laminas-validator": "^2.46", + "phpunit/phpunit": "^10.5.5", + "psalm/plugin-phpunit": "^0.19.0", + "psr/http-message": "^2.0", + "vimeo/psalm": "^5.18.0" + }, + "suggest": { + "laminas/laminas-cache": "Laminas\\Cache component, for optionally caching feeds between requests", + "laminas/laminas-db": "Laminas\\Db component, for use with PubSubHubbub", + "laminas/laminas-http": "Laminas\\Http for PubSubHubbub, and optionally for use with Laminas\\Feed\\Reader", + "laminas/laminas-servicemanager": "Laminas\\ServiceManager component, for easily extending ExtensionManager implementations", + "laminas/laminas-validator": "Laminas\\Validator component, for validating email addresses used in Atom feeds and entries when using the Writer subcomponent", + "psr/http-message": "PSR-7 ^1.0.1, if you wish to use Laminas\\Feed\\Reader\\Http\\Psr7ResponseDecorator" }, "type": "library", "autoload": { "psr-4": { - "Laminas\\Uri\\": "src/" + "Laminas\\Feed\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", "license": [ "BSD-3-Clause" ], - "description": "A component that aids in manipulating and validating » Uniform Resource Identifiers (URIs)", + "description": "provides functionality for creating and consuming RSS and Atom feeds", "homepage": "https://laminas.dev", "keywords": [ + "atom", + "feed", "laminas", - "uri" + "rss" ], "support": { "chat": "https://laminas.dev/chat", - "docs": "https://docs.laminas.dev/laminas-uri/", + "docs": "https://docs.laminas.dev/laminas-feed/", "forum": "https://discourse.laminas.dev", - "issues": "https://github.com/laminas/laminas-uri/issues", - "rss": "https://github.com/laminas/laminas-uri/releases.atom", - "source": "https://github.com/laminas/laminas-uri" + "issues": "https://github.com/laminas/laminas-feed/issues", + "rss": "https://github.com/laminas/laminas-feed/releases.atom", + "source": "https://github.com/laminas/laminas-feed" }, "funding": [ { @@ -1370,83 +1367,58 @@ "type": "community_bridge" } ], - "time": "2024-08-03T21:22:51+00:00" + "time": "2024-10-09T10:53:30+00:00" }, { - "name": "laminas/laminas-validator", - "version": "2.64.1", + "name": "laminas/laminas-stdlib", + "version": "3.20.0", "source": { "type": "git", - "url": "https://github.com/laminas/laminas-validator.git", - "reference": "9db115056b666b7540c951b6d4477b8e0b52b9ad" + "url": "https://github.com/laminas/laminas-stdlib.git", + "reference": "8974a1213be42c3e2f70b2c27b17f910291ab2f4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-validator/zipball/9db115056b666b7540c951b6d4477b8e0b52b9ad", - "reference": "9db115056b666b7540c951b6d4477b8e0b52b9ad", + "url": "https://api.github.com/repos/laminas/laminas-stdlib/zipball/8974a1213be42c3e2f70b2c27b17f910291ab2f4", + "reference": "8974a1213be42c3e2f70b2c27b17f910291ab2f4", "shasum": "" }, "require": { - "laminas/laminas-servicemanager": "^3.21.0", - "laminas/laminas-stdlib": "^3.19", - "php": "~8.1.0 || ~8.2.0 || ~8.3.0 || ~8.4.0", - "psr/http-message": "^1.0.1 || ^2.0.0" + "php": "~8.1.0 || ~8.2.0 || ~8.3.0 || ~8.4.0" }, "conflict": { - "zendframework/zend-validator": "*" + "zendframework/zend-stdlib": "*" }, "require-dev": { - "laminas/laminas-coding-standard": "^2.5", - "laminas/laminas-db": "^2.20", - "laminas/laminas-filter": "^2.35.2", - "laminas/laminas-i18n": "^2.26.0", - "laminas/laminas-session": "^2.20", - "laminas/laminas-uri": "^2.11.0", - "phpunit/phpunit": "^10.5.20", + "laminas/laminas-coding-standard": "^3.0", + "phpbench/phpbench": "^1.3.1", + "phpunit/phpunit": "^10.5.38", "psalm/plugin-phpunit": "^0.19.0", - "psr/http-client": "^1.0.3", - "psr/http-factory": "^1.1.0", - "vimeo/psalm": "^5.24.0" - }, - "suggest": { - "laminas/laminas-db": "Laminas\\Db component, required by the (No)RecordExists validator", - "laminas/laminas-filter": "Laminas\\Filter component, required by the Digits validator", - "laminas/laminas-i18n": "Laminas\\I18n component to allow translation of validation error messages", - "laminas/laminas-i18n-resources": "Translations of validator messages", - "laminas/laminas-servicemanager": "Laminas\\ServiceManager component to allow using the ValidatorPluginManager and validator chains", - "laminas/laminas-session": "Laminas\\Session component, ^2.8; required by the Csrf validator", - "laminas/laminas-uri": "Laminas\\Uri component, required by the Uri and Sitemap\\Loc validators", - "psr/http-message": "psr/http-message, required when validating PSR-7 UploadedFileInterface instances via the Upload and UploadFile validators" + "vimeo/psalm": "^5.26.1" }, "type": "library", - "extra": { - "laminas": { - "component": "Laminas\\Validator", - "config-provider": "Laminas\\Validator\\ConfigProvider" - } - }, "autoload": { "psr-4": { - "Laminas\\Validator\\": "src/" + "Laminas\\Stdlib\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", "license": [ "BSD-3-Clause" ], - "description": "Validation classes for a wide range of domains, and the ability to chain validators to create complex validation criteria", + "description": "SPL extensions, array utilities, error handlers, and more", "homepage": "https://laminas.dev", "keywords": [ "laminas", - "validator" + "stdlib" ], "support": { "chat": "https://laminas.dev/chat", - "docs": "https://docs.laminas.dev/laminas-validator/", + "docs": "https://docs.laminas.dev/laminas-stdlib/", "forum": "https://discourse.laminas.dev", - "issues": "https://github.com/laminas/laminas-validator/issues", - "rss": "https://github.com/laminas/laminas-validator/releases.atom", - "source": "https://github.com/laminas/laminas-validator" + "issues": "https://github.com/laminas/laminas-stdlib/issues", + "rss": "https://github.com/laminas/laminas-stdlib/releases.atom", + "source": "https://github.com/laminas/laminas-stdlib" }, "funding": [ { @@ -1454,7 +1426,7 @@ "type": "community_bridge" } ], - "time": "2024-08-01T09:32:54+00:00" + "time": "2024-10-29T13:46:07+00:00" }, { "name": "lipis/flag-icons", @@ -2010,22 +1982,27 @@ }, { "name": "psr/container", - "version": "1.1.2", + "version": "2.0.2", "source": { "type": "git", "url": "https://github.com/php-fig/container.git", - "reference": "513e0666f7216c7459170d56df27dfcefe1689ea" + "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/container/zipball/513e0666f7216c7459170d56df27dfcefe1689ea", - "reference": "513e0666f7216c7459170d56df27dfcefe1689ea", + "url": "https://api.github.com/repos/php-fig/container/zipball/c71ecc56dfe541dbd90c5360474fbc405f8d5963", + "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963", "shasum": "" }, "require": { "php": ">=7.4.0" }, "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0.x-dev" + } + }, "autoload": { "psr-4": { "Psr\\Container\\": "src/" @@ -2052,9 +2029,9 @@ ], "support": { "issues": "https://github.com/php-fig/container/issues", - "source": "https://github.com/php-fig/container/tree/1.1.2" + "source": "https://github.com/php-fig/container/tree/2.0.2" }, - "time": "2021-11-05T16:50:12+00:00" + "time": "2021-11-05T16:47:00+00:00" }, { "name": "psr/event-dispatcher", @@ -2106,6 +2083,113 @@ }, "time": "2019-01-08T18:20:26+00:00" }, + { + "name": "psr/http-client", + "version": "1.0.3", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-client.git", + "reference": "bb5906edc1c324c9a05aa0873d40117941e5fa90" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/http-client/zipball/bb5906edc1c324c9a05aa0873d40117941e5fa90", + "reference": "bb5906edc1c324c9a05aa0873d40117941e5fa90", + "shasum": "" + }, + "require": { + "php": "^7.0 || ^8.0", + "psr/http-message": "^1.0 || ^2.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Http\\Client\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common interface for HTTP clients", + "homepage": "https://github.com/php-fig/http-client", + "keywords": [ + "http", + "http-client", + "psr", + "psr-18" + ], + "support": { + "source": "https://github.com/php-fig/http-client" + }, + "time": "2023-09-23T14:17:50+00:00" + }, + { + "name": "psr/http-factory", + "version": "1.1.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-factory.git", + "reference": "2b4765fddfe3b508ac62f829e852b1501d3f6e8a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/http-factory/zipball/2b4765fddfe3b508ac62f829e852b1501d3f6e8a", + "reference": "2b4765fddfe3b508ac62f829e852b1501d3f6e8a", + "shasum": "" + }, + "require": { + "php": ">=7.1", + "psr/http-message": "^1.0 || ^2.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Http\\Message\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "PSR-17: Common interfaces for PSR-7 HTTP message factories", + "keywords": [ + "factory", + "http", + "message", + "psr", + "psr-17", + "psr-7", + "request", + "response" + ], + "support": { + "source": "https://github.com/php-fig/http-factory" + }, + "time": "2024-04-15T12:06:14+00:00" + }, { "name": "psr/http-message", "version": "2.0", @@ -2169,23 +2253,72 @@ }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/log/zipball/ef29f6d262798707a9edd554e2b82517ef3a9376", - "reference": "ef29f6d262798707a9edd554e2b82517ef3a9376", + "url": "https://api.github.com/repos/php-fig/log/zipball/ef29f6d262798707a9edd554e2b82517ef3a9376", + "reference": "ef29f6d262798707a9edd554e2b82517ef3a9376", + "shasum": "" + }, + "require": { + "php": ">=8.0.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Log\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common interface for logging libraries", + "homepage": "https://github.com/php-fig/log", + "keywords": [ + "log", + "psr", + "psr-3" + ], + "support": { + "source": "https://github.com/php-fig/log/tree/2.0.0" + }, + "time": "2021-07-14T16:41:46+00:00" + }, + { + "name": "ralouphie/getallheaders", + "version": "3.0.3", + "source": { + "type": "git", + "url": "https://github.com/ralouphie/getallheaders.git", + "reference": "120b605dfeb996808c31b6477290a714d356e822" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/ralouphie/getallheaders/zipball/120b605dfeb996808c31b6477290a714d356e822", + "reference": "120b605dfeb996808c31b6477290a714d356e822", "shasum": "" }, "require": { - "php": ">=8.0.0" + "php": ">=5.6" }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0.x-dev" - } + "require-dev": { + "php-coveralls/php-coveralls": "^2.1", + "phpunit/phpunit": "^5 || ^6.5" }, + "type": "library", "autoload": { - "psr-4": { - "Psr\\Log\\": "src" - } + "files": [ + "src/getallheaders.php" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -2193,21 +2326,16 @@ ], "authors": [ { - "name": "PHP-FIG", - "homepage": "https://www.php-fig.org/" + "name": "Ralph Khattar", + "email": "ralph.khattar@gmail.com" } ], - "description": "Common interface for logging libraries", - "homepage": "https://github.com/php-fig/log", - "keywords": [ - "log", - "psr", - "psr-3" - ], + "description": "A polyfill for getallheaders.", "support": { - "source": "https://github.com/php-fig/log/tree/2.0.0" + "issues": "https://github.com/ralouphie/getallheaders/issues", + "source": "https://github.com/ralouphie/getallheaders/tree/develop" }, - "time": "2021-07-14T16:41:46+00:00" + "time": "2019-03-08T08:55:37+00:00" }, { "name": "statink/yii2-anonymizer", @@ -5434,122 +5562,6 @@ }, "time": "2024-09-27T15:16:33+00:00" }, - { - "name": "guzzlehttp/psr7", - "version": "2.7.0", - "source": { - "type": "git", - "url": "https://github.com/guzzle/psr7.git", - "reference": "a70f5c95fb43bc83f07c9c948baa0dc1829bf201" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/guzzle/psr7/zipball/a70f5c95fb43bc83f07c9c948baa0dc1829bf201", - "reference": "a70f5c95fb43bc83f07c9c948baa0dc1829bf201", - "shasum": "" - }, - "require": { - "php": "^7.2.5 || ^8.0", - "psr/http-factory": "^1.0", - "psr/http-message": "^1.1 || ^2.0", - "ralouphie/getallheaders": "^3.0" - }, - "provide": { - "psr/http-factory-implementation": "1.0", - "psr/http-message-implementation": "1.0" - }, - "require-dev": { - "bamarni/composer-bin-plugin": "^1.8.2", - "http-interop/http-factory-tests": "0.9.0", - "phpunit/phpunit": "^8.5.39 || ^9.6.20" - }, - "suggest": { - "laminas/laminas-httphandlerrunner": "Emit PSR-7 responses" - }, - "type": "library", - "extra": { - "bamarni-bin": { - "bin-links": true, - "forward-command": false - } - }, - "autoload": { - "psr-4": { - "GuzzleHttp\\Psr7\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Graham Campbell", - "email": "hello@gjcampbell.co.uk", - "homepage": "https://github.com/GrahamCampbell" - }, - { - "name": "Michael Dowling", - "email": "mtdowling@gmail.com", - "homepage": "https://github.com/mtdowling" - }, - { - "name": "George Mponos", - "email": "gmponos@gmail.com", - "homepage": "https://github.com/gmponos" - }, - { - "name": "Tobias Nyholm", - "email": "tobias.nyholm@gmail.com", - "homepage": "https://github.com/Nyholm" - }, - { - "name": "Márk Sági-Kazár", - "email": "mark.sagikazar@gmail.com", - "homepage": "https://github.com/sagikazarmark" - }, - { - "name": "Tobias Schultze", - "email": "webmaster@tubo-world.de", - "homepage": "https://github.com/Tobion" - }, - { - "name": "Márk Sági-Kazár", - "email": "mark.sagikazar@gmail.com", - "homepage": "https://sagikazarmark.hu" - } - ], - "description": "PSR-7 message implementation that also provides common utility methods", - "keywords": [ - "http", - "message", - "psr-7", - "request", - "response", - "stream", - "uri", - "url" - ], - "support": { - "issues": "https://github.com/guzzle/psr7/issues", - "source": "https://github.com/guzzle/psr7/tree/2.7.0" - }, - "funding": [ - { - "url": "https://github.com/GrahamCampbell", - "type": "github" - }, - { - "url": "https://github.com/Nyholm", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/guzzlehttp/psr7", - "type": "tidelift" - } - ], - "time": "2024-07-18T11:15:46+00:00" - }, { "name": "jp3cki/coding-standard", "version": "v1.0.0", @@ -6793,61 +6805,6 @@ }, "time": "2022-01-10T14:49:26+00:00" }, - { - "name": "psr/http-factory", - "version": "1.1.0", - "source": { - "type": "git", - "url": "https://github.com/php-fig/http-factory.git", - "reference": "2b4765fddfe3b508ac62f829e852b1501d3f6e8a" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-fig/http-factory/zipball/2b4765fddfe3b508ac62f829e852b1501d3f6e8a", - "reference": "2b4765fddfe3b508ac62f829e852b1501d3f6e8a", - "shasum": "" - }, - "require": { - "php": ">=7.1", - "psr/http-message": "^1.0 || ^2.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Psr\\Http\\Message\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "PHP-FIG", - "homepage": "https://www.php-fig.org/" - } - ], - "description": "PSR-17: Common interfaces for PSR-7 HTTP message factories", - "keywords": [ - "factory", - "http", - "message", - "psr", - "psr-17", - "psr-7", - "request", - "response" - ], - "support": { - "source": "https://github.com/php-fig/http-factory" - }, - "time": "2024-04-15T12:06:14+00:00" - }, { "name": "psy/psysh", "version": "v0.12.4", @@ -6927,50 +6884,6 @@ }, "time": "2024-06-10T01:18:23+00:00" }, - { - "name": "ralouphie/getallheaders", - "version": "3.0.3", - "source": { - "type": "git", - "url": "https://github.com/ralouphie/getallheaders.git", - "reference": "120b605dfeb996808c31b6477290a714d356e822" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/ralouphie/getallheaders/zipball/120b605dfeb996808c31b6477290a714d356e822", - "reference": "120b605dfeb996808c31b6477290a714d356e822", - "shasum": "" - }, - "require": { - "php": ">=5.6" - }, - "require-dev": { - "php-coveralls/php-coveralls": "^2.1", - "phpunit/phpunit": "^5 || ^6.5" - }, - "type": "library", - "autoload": { - "files": [ - "src/getallheaders.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Ralph Khattar", - "email": "ralph.khattar@gmail.com" - } - ], - "description": "A polyfill for getallheaders.", - "support": { - "issues": "https://github.com/ralouphie/getallheaders/issues", - "source": "https://github.com/ralouphie/getallheaders/tree/develop" - }, - "time": "2019-03-08T08:55:37+00:00" - }, { "name": "ramsey/coding-standard", "version": "2.2.0", From 56f7d6446c4808981b0b1dffd5c9faebbfd9b8d0 Mon Sep 17 00:00:00 2001 From: AIZAWA Hina Date: Sun, 17 Nov 2024 23:20:58 +0000 Subject: [PATCH 05/14] Update dependencies --- composer.lock | 130 +++++++++++++++++++++++++++++--------------------- 1 file changed, 76 insertions(+), 54 deletions(-) diff --git a/composer.lock b/composer.lock index 2b9b984e8..e1248375a 100644 --- a/composer.lock +++ b/composer.lock @@ -5228,16 +5228,16 @@ }, { "name": "ergebnis/json", - "version": "1.3.0", + "version": "1.4.0", "source": { "type": "git", "url": "https://github.com/ergebnis/json.git", - "reference": "84051b4e243d6a8e2f8271604b11ffa52d29bc7a" + "reference": "7656ac2aa6c2ca4408f96f599e9a17a22c464f69" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/ergebnis/json/zipball/84051b4e243d6a8e2f8271604b11ffa52d29bc7a", - "reference": "84051b4e243d6a8e2f8271604b11ffa52d29bc7a", + "url": "https://api.github.com/repos/ergebnis/json/zipball/7656ac2aa6c2ca4408f96f599e9a17a22c464f69", + "reference": "7656ac2aa6c2ca4408f96f599e9a17a22c464f69", "shasum": "" }, "require": { @@ -5245,16 +5245,19 @@ "php": "~7.4.0 || ~8.0.0 || ~8.1.0 || ~8.2.0 || ~8.3.0 || ~8.4.0" }, "require-dev": { - "ergebnis/data-provider": "^3.2.0", - "ergebnis/license": "^2.4.0", - "ergebnis/php-cs-fixer-config": "^6.36.0", - "ergebnis/phpunit-slow-test-detector": "^2.15.1", - "fakerphp/faker": "^1.23.1", + "ergebnis/data-provider": "^3.3.0", + "ergebnis/license": "^2.5.0", + "ergebnis/php-cs-fixer-config": "^6.37.0", + "ergebnis/phpunit-slow-test-detector": "^2.16.1", + "fakerphp/faker": "^1.24.0", "infection/infection": "~0.26.6", + "phpstan/extension-installer": "^1.4.3", + "phpstan/phpstan": "^1.12.10", + "phpstan/phpstan-deprecation-rules": "^1.2.1", + "phpstan/phpstan-phpunit": "^1.4.0", + "phpstan/phpstan-strict-rules": "^1.6.1", "phpunit/phpunit": "^9.6.18", - "psalm/plugin-phpunit": "~0.19.0", - "rector/rector": "^1.2.5", - "vimeo/psalm": "^5.26.1" + "rector/rector": "^1.2.10" }, "type": "library", "extra": { @@ -5289,20 +5292,20 @@ "security": "https://github.com/ergebnis/json/blob/main/.github/SECURITY.md", "source": "https://github.com/ergebnis/json" }, - "time": "2024-09-27T15:01:05+00:00" + "time": "2024-11-17T11:51:22+00:00" }, { "name": "ergebnis/json-normalizer", - "version": "4.6.0", + "version": "4.7.0", "source": { "type": "git", "url": "https://github.com/ergebnis/json-normalizer.git", - "reference": "859fd3cee417f0b10a8e6ffb8dbeb03587106b8b" + "reference": "36d86389095736944a5954ec440552bbe92e425f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/ergebnis/json-normalizer/zipball/859fd3cee417f0b10a8e6ffb8dbeb03587106b8b", - "reference": "859fd3cee417f0b10a8e6ffb8dbeb03587106b8b", + "url": "https://api.github.com/repos/ergebnis/json-normalizer/zipball/36d86389095736944a5954ec440552bbe92e425f", + "reference": "36d86389095736944a5954ec440552bbe92e425f", "shasum": "" }, "require": { @@ -5316,21 +5319,34 @@ }, "require-dev": { "composer/semver": "^3.4.3", - "ergebnis/data-provider": "^3.2.0", - "ergebnis/license": "^2.4.0", - "ergebnis/php-cs-fixer-config": "^6.36.0", - "ergebnis/phpunit-slow-test-detector": "^2.15.1", - "fakerphp/faker": "^1.23.1", + "ergebnis/composer-normalize": "^2.44.0", + "ergebnis/data-provider": "^3.3.0", + "ergebnis/license": "^2.5.0", + "ergebnis/php-cs-fixer-config": "^6.37.0", + "ergebnis/phpunit-slow-test-detector": "^2.16.1", + "fakerphp/faker": "^1.24.0", "infection/infection": "~0.26.6", + "phpstan/extension-installer": "^1.4.3", + "phpstan/phpstan": "^1.12.10", + "phpstan/phpstan-deprecation-rules": "^1.2.1", + "phpstan/phpstan-phpunit": "^1.4.0", + "phpstan/phpstan-strict-rules": "^1.6.1", "phpunit/phpunit": "^9.6.19", - "psalm/plugin-phpunit": "~0.19.0", - "rector/rector": "^1.2.5", - "vimeo/psalm": "^5.26.1" + "rector/rector": "^1.2.10" }, "suggest": { "composer/semver": "If you want to use ComposerJsonNormalizer or VersionConstraintNormalizer" }, "type": "library", + "extra": { + "branch-alias": { + "dev-main": "4.7-dev" + }, + "composer-normalize": { + "indent-size": 2, + "indent-style": "space" + } + }, "autoload": { "psr-4": { "Ergebnis\\Json\\Normalizer\\": "src/" @@ -5358,20 +5374,20 @@ "security": "https://github.com/ergebnis/json-normalizer/blob/main/.github/SECURITY.md", "source": "https://github.com/ergebnis/json-normalizer" }, - "time": "2024-09-27T15:11:59+00:00" + "time": "2024-11-17T20:34:42+00:00" }, { "name": "ergebnis/json-pointer", - "version": "3.5.0", + "version": "3.6.0", "source": { "type": "git", "url": "https://github.com/ergebnis/json-pointer.git", - "reference": "f6ff71e69305b8ab5e4457e374b35dcd0812609b" + "reference": "4fc85d8edb74466d282119d8d9541ec7cffc0798" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/ergebnis/json-pointer/zipball/f6ff71e69305b8ab5e4457e374b35dcd0812609b", - "reference": "f6ff71e69305b8ab5e4457e374b35dcd0812609b", + "url": "https://api.github.com/repos/ergebnis/json-pointer/zipball/4fc85d8edb74466d282119d8d9541ec7cffc0798", + "reference": "4fc85d8edb74466d282119d8d9541ec7cffc0798", "shasum": "" }, "require": { @@ -5385,15 +5401,18 @@ "ergebnis/phpunit-slow-test-detector": "^2.15.0", "fakerphp/faker": "^1.23.1", "infection/infection": "~0.26.6", + "phpstan/extension-installer": "^1.4.3", + "phpstan/phpstan": "^1.12.10", + "phpstan/phpstan-deprecation-rules": "^1.2.1", + "phpstan/phpstan-phpunit": "^1.4.0", + "phpstan/phpstan-strict-rules": "^1.6.1", "phpunit/phpunit": "^9.6.19", - "psalm/plugin-phpunit": "~0.19.0", - "rector/rector": "^1.2.1", - "vimeo/psalm": "^5.25.0" + "rector/rector": "^1.2.10" }, "type": "library", "extra": { "branch-alias": { - "dev-main": "3.4-dev" + "dev-main": "3.6-dev" }, "composer-normalize": { "indent-size": 2, @@ -5428,20 +5447,20 @@ "security": "https://github.com/ergebnis/json-pointer/blob/main/.github/SECURITY.md", "source": "https://github.com/ergebnis/json-pointer" }, - "time": "2024-09-27T15:47:15+00:00" + "time": "2024-11-17T12:37:06+00:00" }, { "name": "ergebnis/json-printer", - "version": "3.6.0", + "version": "3.7.0", "source": { "type": "git", "url": "https://github.com/ergebnis/json-printer.git", - "reference": "d2e51379dc62d73017a779a78fcfba568de39e0a" + "reference": "ced41fce7854152f0e8f38793c2ffe59513cdd82" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/ergebnis/json-printer/zipball/d2e51379dc62d73017a779a78fcfba568de39e0a", - "reference": "d2e51379dc62d73017a779a78fcfba568de39e0a", + "url": "https://api.github.com/repos/ergebnis/json-printer/zipball/ced41fce7854152f0e8f38793c2ffe59513cdd82", + "reference": "ced41fce7854152f0e8f38793c2ffe59513cdd82", "shasum": "" }, "require": { @@ -5450,16 +5469,19 @@ "php": "~7.4.0 || ~8.0.0 || ~8.1.0 || ~8.2.0 || ~8.3.0 || ~8.4.0" }, "require-dev": { - "ergebnis/data-provider": "^3.2.0", - "ergebnis/license": "^2.4.0", - "ergebnis/php-cs-fixer-config": "^6.36.0", - "ergebnis/phpunit-slow-test-detector": "^2.15.1", - "fakerphp/faker": "^1.23.1", + "ergebnis/data-provider": "^3.3.0", + "ergebnis/license": "^2.5.0", + "ergebnis/php-cs-fixer-config": "^6.37.0", + "ergebnis/phpunit-slow-test-detector": "^2.16.1", + "fakerphp/faker": "^1.24.0", "infection/infection": "~0.26.6", - "phpunit/phpunit": "^9.6.19", - "psalm/plugin-phpunit": "~0.19.0", - "rector/rector": "~1.2.5", - "vimeo/psalm": "^5.26.1" + "phpstan/extension-installer": "^1.4.3", + "phpstan/phpstan": "^1.12.10", + "phpstan/phpstan-deprecation-rules": "^1.2.1", + "phpstan/phpstan-phpunit": "^1.4.1", + "phpstan/phpstan-strict-rules": "^1.6.1", + "phpunit/phpunit": "^9.6.21", + "rector/rector": "^1.2.10" }, "type": "library", "autoload": { @@ -5490,7 +5512,7 @@ "security": "https://github.com/ergebnis/json-printer/blob/main/.github/SECURITY.md", "source": "https://github.com/ergebnis/json-printer" }, - "time": "2024-09-27T15:19:56+00:00" + "time": "2024-11-17T11:20:51+00:00" }, { "name": "ergebnis/json-schema-validator", @@ -6275,16 +6297,16 @@ }, { "name": "phpstan/phpstan", - "version": "1.12.10", + "version": "1.12.11", "source": { "type": "git", "url": "https://github.com/phpstan/phpstan.git", - "reference": "fc463b5d0fe906dcf19689be692c65c50406a071" + "reference": "0d1fc20a962a91be578bcfe7cf939e6e1a2ff733" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpstan/zipball/fc463b5d0fe906dcf19689be692c65c50406a071", - "reference": "fc463b5d0fe906dcf19689be692c65c50406a071", + "url": "https://api.github.com/repos/phpstan/phpstan/zipball/0d1fc20a962a91be578bcfe7cf939e6e1a2ff733", + "reference": "0d1fc20a962a91be578bcfe7cf939e6e1a2ff733", "shasum": "" }, "require": { @@ -6329,7 +6351,7 @@ "type": "github" } ], - "time": "2024-11-11T15:37:09+00:00" + "time": "2024-11-17T14:08:01+00:00" }, { "name": "phpunit/php-code-coverage", From e2e45ea28d5daa165901b8a87caaf9f6db3c3b8f Mon Sep 17 00:00:00 2001 From: AIZAWA Hina Date: Mon, 18 Nov 2024 23:20:51 +0000 Subject: [PATCH 06/14] Update dependencies --- composer.lock | 35 +++++++++++++++++++++-------------- package-lock.json | 44 ++++++++++++++++++++++---------------------- package.json | 2 +- 3 files changed, 44 insertions(+), 37 deletions(-) diff --git a/composer.lock b/composer.lock index e1248375a..a5cc7388e 100644 --- a/composer.lock +++ b/composer.lock @@ -5516,39 +5516,46 @@ }, { "name": "ergebnis/json-schema-validator", - "version": "4.3.0", + "version": "4.4.0", "source": { "type": "git", "url": "https://github.com/ergebnis/json-schema-validator.git", - "reference": "73f938f8995c6ad1e37d2c1dfeaa8336861f9db8" + "reference": "85f90c81f718aebba1d738800af83eeb447dc7ec" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/ergebnis/json-schema-validator/zipball/73f938f8995c6ad1e37d2c1dfeaa8336861f9db8", - "reference": "73f938f8995c6ad1e37d2c1dfeaa8336861f9db8", + "url": "https://api.github.com/repos/ergebnis/json-schema-validator/zipball/85f90c81f718aebba1d738800af83eeb447dc7ec", + "reference": "85f90c81f718aebba1d738800af83eeb447dc7ec", "shasum": "" }, "require": { "ergebnis/json": "^1.2.0", "ergebnis/json-pointer": "^3.4.0", "ext-json": "*", - "justinrainbow/json-schema": "^5.2.12", + "justinrainbow/json-schema": "^5.2.12 || ^6.0.0", "php": "~7.4.0 || ~8.0.0 || ~8.1.0 || ~8.2.0 || ~8.3.0 || ~8.4.0" }, "require-dev": { - "ergebnis/data-provider": "^3.2.0", - "ergebnis/license": "^2.4.0", - "ergebnis/php-cs-fixer-config": "^6.36.0", - "ergebnis/phpunit-slow-test-detector": "^2.15.1", - "fakerphp/faker": "^1.23.1", + "ergebnis/composer-normalize": "^2.44.0", + "ergebnis/data-provider": "^3.3.0", + "ergebnis/license": "^2.5.0", + "ergebnis/php-cs-fixer-config": "^6.37.0", + "ergebnis/phpunit-slow-test-detector": "^2.16.1", + "fakerphp/faker": "^1.24.0", "infection/infection": "~0.26.6", + "phpstan/extension-installer": "^1.4.3", + "phpstan/phpstan": "^1.12.10", + "phpstan/phpstan-deprecation-rules": "^1.2.1", + "phpstan/phpstan-phpunit": "^1.4.0", + "phpstan/phpstan-strict-rules": "^1.6.1", "phpunit/phpunit": "^9.6.20", - "psalm/plugin-phpunit": "~0.19.0", - "rector/rector": "^1.2.5", - "vimeo/psalm": "^5.26.1" + "rector/rector": "^1.2.10" }, "type": "library", "extra": { + "branch-alias": { + "dev-main": "4.4-dev" + }, "composer-normalize": { "indent-size": 2, "indent-style": "space" @@ -5582,7 +5589,7 @@ "security": "https://github.com/ergebnis/json-schema-validator/blob/main/.github/SECURITY.md", "source": "https://github.com/ergebnis/json-schema-validator" }, - "time": "2024-09-27T15:16:33+00:00" + "time": "2024-11-18T06:32:28+00:00" }, { "name": "jp3cki/coding-standard", diff --git a/package-lock.json b/package-lock.json index b3c5494e0..97420a264 100644 --- a/package-lock.json +++ b/package-lock.json @@ -13,7 +13,7 @@ "@babel/polyfill": "^7.12.1", "@babel/preset-env": "^7.26.0", "@babel/preset-react": "^7.25.9", - "@fortawesome/fontawesome-free": "^6.6.0", + "@fortawesome/fontawesome-free": "^6.7.0", "@hacceuee/s3-pixel-icons": "^2.4.1", "@popperjs/core": "^2.11.8", "autoprefixer": "^10.4.20", @@ -1958,9 +1958,9 @@ } }, "node_modules/@fortawesome/fontawesome-free": { - "version": "6.6.0", - "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-free/-/fontawesome-free-6.6.0.tgz", - "integrity": "sha512-60G28ke/sXdtS9KZCpZSHHkCbdsOGEhIUGlwq6yhY74UpTiToIh8np7A8yphhM4BWsvNFtIvLpi4co+h9Mr9Ow==", + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-free/-/fontawesome-free-6.7.0.tgz", + "integrity": "sha512-lXTP8oiLGM97Aqjn47nod9awKe574HRfCngFizr7FiHTadKTiPkoVn0Mzg+tZBLD1XpE4CRvcF7/UM3g1jyVYw==", "license": "(CC-BY-4.0 AND OFL-1.1 AND MIT)", "engines": { "node": ">=6" @@ -3450,9 +3450,9 @@ } }, "node_modules/bin-version/node_modules/cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "version": "6.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.6.tgz", + "integrity": "sha512-VqCUuhcd1iB+dsv8gxPttb5iZh/D0iubSP21g36KXdEuf6I5JiioesUVjpCdHV9MZRUfVFlvwtIUyPfxo5trtw==", "license": "MIT", "dependencies": { "nice-try": "^1.0.4", @@ -5532,9 +5532,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.62", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.62.tgz", - "integrity": "sha512-t8c+zLmJHa9dJy96yBZRXGQYoiCEnHYgFwn1asvSPZSUdVxnB62A4RASd7k41ytG3ErFBA0TpHlKg9D9SQBmLg==", + "version": "1.5.63", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.63.tgz", + "integrity": "sha512-ddeXKuY9BHo/mw145axlyWjlJ1UBt4WK3AlvkT7W2AbqfRQoacVoRUCF6wL3uIx/8wT9oLKXzI+rFqHHscByaA==", "license": "ISC" }, "node_modules/emoji-regex": { @@ -6294,9 +6294,9 @@ } }, "node_modules/eslint/node_modules/cross-spawn": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.5.tgz", - "integrity": "sha512-ZVJrKKYunU38/76t0RMOulHOnUcbU9GbpWKAOZ0mhjr7CX6FVrH+4FrAapSOekrgFQ3f/8gwMEuIft0aKq6Hug==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "license": "MIT", "dependencies": { "path-key": "^3.1.0", @@ -6908,9 +6908,9 @@ } }, "node_modules/flatted": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", - "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.2.tgz", + "integrity": "sha512-AiwGJM8YcNOaobumgtng+6NHuOqC3A7MixFeDafM3X9cIUM+xUXoS5Vfgf+OihAYe20fxqNM9yPBXJzRtZ/4eA==", "license": "ISC" }, "node_modules/flot": { @@ -9769,9 +9769,9 @@ } }, "node_modules/patch-package/node_modules/cross-spawn": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.5.tgz", - "integrity": "sha512-ZVJrKKYunU38/76t0RMOulHOnUcbU9GbpWKAOZ0mhjr7CX6FVrH+4FrAapSOekrgFQ3f/8gwMEuIft0aKq6Hug==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "license": "MIT", "dependencies": { "path-key": "^3.1.0", @@ -13842,9 +13842,9 @@ } }, "node_modules/webpack-cli/node_modules/cross-spawn": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.5.tgz", - "integrity": "sha512-ZVJrKKYunU38/76t0RMOulHOnUcbU9GbpWKAOZ0mhjr7CX6FVrH+4FrAapSOekrgFQ3f/8gwMEuIft0aKq6Hug==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "license": "MIT", "dependencies": { "path-key": "^3.1.0", diff --git a/package.json b/package.json index 5ce037bfc..93e86d3b2 100644 --- a/package.json +++ b/package.json @@ -11,7 +11,7 @@ "@babel/polyfill": "^7.12.1", "@babel/preset-env": "^7.26.0", "@babel/preset-react": "^7.25.9", - "@fortawesome/fontawesome-free": "^6.6.0", + "@fortawesome/fontawesome-free": "^6.7.0", "@hacceuee/s3-pixel-icons": "^2.4.1", "@popperjs/core": "^2.11.8", "autoprefixer": "^10.4.20", From 99d2a0b388571c0d1af2b614b06d12b029350a20 Mon Sep 17 00:00:00 2001 From: AIZAWA Hina Date: Tue, 19 Nov 2024 11:30:06 +0900 Subject: [PATCH 07/14] cron: switch fetch-blog to systemd timer --- data/systemd/statink-fetch-blog.service | 11 +++++++++++ data/systemd/statink-fetch-blog.timer | 8 ++++++++ schedule/schedule.php | 1 - schedule/schedule/blog.php | 13 ------------- 4 files changed, 19 insertions(+), 14 deletions(-) create mode 100644 data/systemd/statink-fetch-blog.service create mode 100644 data/systemd/statink-fetch-blog.timer delete mode 100644 schedule/schedule/blog.php diff --git a/data/systemd/statink-fetch-blog.service b/data/systemd/statink-fetch-blog.service new file mode 100644 index 000000000..31086bf64 --- /dev/null +++ b/data/systemd/statink-fetch-blog.service @@ -0,0 +1,11 @@ +[Unit] +Description=Run stat.ink blog-feed/crawl +After=paths.target multi-user.target network.target network-online.target NetworkManager.service + +[Service] +Type=oneshot +ExecStart=/var/www/sites/stat.ink/app.dep/current/yii blog-feed/crawl +SyslogIdentifier=statink-fetch-blog +WorkingDirectory=/var/www/sites/stat.ink/app.dep/current +User=stat.ink +Group=stat.ink diff --git a/data/systemd/statink-fetch-blog.timer b/data/systemd/statink-fetch-blog.timer new file mode 100644 index 000000000..66ea61319 --- /dev/null +++ b/data/systemd/statink-fetch-blog.timer @@ -0,0 +1,8 @@ +[Unit] +Description=Run stat.ink blog-feed/crawl (timer) + +[Timer] +OnCalendar=*:0,15,30,45 + +[Install] +WantedBy=timers.target diff --git a/schedule/schedule.php b/schedule/schedule.php index fb8399425..4ca2ffa05 100644 --- a/schedule/schedule.php +++ b/schedule/schedule.php @@ -8,7 +8,6 @@ * @var Schedule $schedule */ -require __DIR__ . '/schedule/blog.php'; require __DIR__ . '/schedule/geoip.php'; require __DIR__ . '/schedule/salmon2.php'; require __DIR__ . '/schedule/salmon3.php'; diff --git a/schedule/schedule/blog.php b/schedule/schedule/blog.php deleted file mode 100644 index 948c3a91f..000000000 --- a/schedule/schedule/blog.php +++ /dev/null @@ -1,13 +0,0 @@ -command('blog-feed/crawl') - ->cron('*/15 * * * *'); From 334de3cbb2b0be081a5c3a3c636884f89292ca36 Mon Sep 17 00:00:00 2001 From: AIZAWA Hina Date: Tue, 19 Nov 2024 11:54:19 +0900 Subject: [PATCH 08/14] cron: switch update-geoip to systemd timer --- data/systemd/statink-update-geoip.service | 11 +++++++++++ data/systemd/statink-update-geoip.timer | 8 ++++++++ schedule/schedule.php | 1 - schedule/schedule/geoip.php | 13 ------------- 4 files changed, 19 insertions(+), 14 deletions(-) create mode 100644 data/systemd/statink-update-geoip.service create mode 100644 data/systemd/statink-update-geoip.timer delete mode 100644 schedule/schedule/geoip.php diff --git a/data/systemd/statink-update-geoip.service b/data/systemd/statink-update-geoip.service new file mode 100644 index 000000000..109e09cd8 --- /dev/null +++ b/data/systemd/statink-update-geoip.service @@ -0,0 +1,11 @@ +[Unit] +Description=Run stat.ink geoip/update +After=paths.target multi-user.target network.target network-online.target NetworkManager.service + +[Service] +Type=oneshot +ExecStart=/var/www/sites/stat.ink/app.dep/current/yii geoip/update +SyslogIdentifier=statink-geoip-update +WorkingDirectory=/var/www/sites/stat.ink/app.dep/current +User=stat.ink +Group=stat.ink diff --git a/data/systemd/statink-update-geoip.timer b/data/systemd/statink-update-geoip.timer new file mode 100644 index 000000000..4e9f8ae17 --- /dev/null +++ b/data/systemd/statink-update-geoip.timer @@ -0,0 +1,8 @@ +[Unit] +Description=Run stat.ink geoip/update (timer) + +[Timer] +OnCalendar=Thu 03:31 + +[Install] +WantedBy=timers.target diff --git a/schedule/schedule.php b/schedule/schedule.php index 4ca2ffa05..75894d4a0 100644 --- a/schedule/schedule.php +++ b/schedule/schedule.php @@ -8,7 +8,6 @@ * @var Schedule $schedule */ -require __DIR__ . '/schedule/geoip.php'; require __DIR__ . '/schedule/salmon2.php'; require __DIR__ . '/schedule/salmon3.php'; require __DIR__ . '/schedule/schedule.php'; diff --git a/schedule/schedule/geoip.php b/schedule/schedule/geoip.php deleted file mode 100644 index 17fa17dae..000000000 --- a/schedule/schedule/geoip.php +++ /dev/null @@ -1,13 +0,0 @@ -command('geoip/update') - ->cron('31 3 * * 4'); From e1e8ae1c313123e9bc976d5cc5f7d9e8d4db1caa Mon Sep 17 00:00:00 2001 From: AIZAWA Hina Date: Wed, 20 Nov 2024 07:09:21 +0900 Subject: [PATCH 09/14] cron: switch splatoon{2,3}ink/update to systemd timer --- data/systemd/statink-update-s2ink.service | 11 +++++++++++ data/systemd/statink-update-s2ink.timer | 8 ++++++++ data/systemd/statink-update-s3ink.service | 11 +++++++++++ data/systemd/statink-update-s3ink.timer | 8 ++++++++ schedule/schedule.php | 1 - schedule/schedule/schedule.php | 17 ----------------- 6 files changed, 38 insertions(+), 18 deletions(-) create mode 100644 data/systemd/statink-update-s2ink.service create mode 100644 data/systemd/statink-update-s2ink.timer create mode 100644 data/systemd/statink-update-s3ink.service create mode 100644 data/systemd/statink-update-s3ink.timer delete mode 100644 schedule/schedule/schedule.php diff --git a/data/systemd/statink-update-s2ink.service b/data/systemd/statink-update-s2ink.service new file mode 100644 index 000000000..b6382166e --- /dev/null +++ b/data/systemd/statink-update-s2ink.service @@ -0,0 +1,11 @@ +[Unit] +Description=Run stat.ink splatoon2-ink/update +After=paths.target multi-user.target network.target network-online.target NetworkManager.service + +[Service] +Type=oneshot +ExecStart=/var/www/sites/stat.ink/app.dep/current/yii splatoon2-ink/update +SyslogIdentifier=statink-update-s2ink +WorkingDirectory=/var/www/sites/stat.ink/app.dep/current +User=stat.ink +Group=stat.ink diff --git a/data/systemd/statink-update-s2ink.timer b/data/systemd/statink-update-s2ink.timer new file mode 100644 index 000000000..9f5287ce5 --- /dev/null +++ b/data/systemd/statink-update-s2ink.timer @@ -0,0 +1,8 @@ +[Unit] +Description=Run stat.ink splatoon2-ink/update (timer) + +[Timer] +OnCalendar=*:04 + +[Install] +WantedBy=timers.target diff --git a/data/systemd/statink-update-s3ink.service b/data/systemd/statink-update-s3ink.service new file mode 100644 index 000000000..aa673386f --- /dev/null +++ b/data/systemd/statink-update-s3ink.service @@ -0,0 +1,11 @@ +[Unit] +Description=Run stat.ink splatoon3-ink/update +After=paths.target multi-user.target network.target network-online.target NetworkManager.service + +[Service] +Type=oneshot +ExecStart=/var/www/sites/stat.ink/app.dep/current/yii splatoon3-ink/update +SyslogIdentifier=statink-update-s3ink +WorkingDirectory=/var/www/sites/stat.ink/app.dep/current +User=stat.ink +Group=stat.ink diff --git a/data/systemd/statink-update-s3ink.timer b/data/systemd/statink-update-s3ink.timer new file mode 100644 index 000000000..a8280c43b --- /dev/null +++ b/data/systemd/statink-update-s3ink.timer @@ -0,0 +1,8 @@ +[Unit] +Description=Run stat.ink splatoon3-ink/update (timer) + +[Timer] +OnCalendar=*:02 + +[Install] +WantedBy=timers.target diff --git a/schedule/schedule.php b/schedule/schedule.php index 75894d4a0..cd981073a 100644 --- a/schedule/schedule.php +++ b/schedule/schedule.php @@ -10,5 +10,4 @@ require __DIR__ . '/schedule/salmon2.php'; require __DIR__ . '/schedule/salmon3.php'; -require __DIR__ . '/schedule/schedule.php'; require __DIR__ . '/schedule/user-json.php'; diff --git a/schedule/schedule/schedule.php b/schedule/schedule/schedule.php deleted file mode 100644 index e7dd0ef56..000000000 --- a/schedule/schedule/schedule.php +++ /dev/null @@ -1,17 +0,0 @@ -command('splatoon2-ink/update') - ->cron('4 * * * *'); - -$schedule - ->command('splatoon3-ink/update') - ->cron('2 * * * *'); From c003d6caa98a7e19feae6016084ec78d3d3a8aa3 Mon Sep 17 00:00:00 2001 From: AIZAWA Hina Date: Wed, 20 Nov 2024 23:20:47 +0000 Subject: [PATCH 10/14] Update dependencies --- package-lock.json | 47 ++++++++++++++++++++++++++++++----------------- package.json | 2 +- 2 files changed, 31 insertions(+), 18 deletions(-) diff --git a/package-lock.json b/package-lock.json index 97420a264..6e9ae8dd9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -13,7 +13,7 @@ "@babel/polyfill": "^7.12.1", "@babel/preset-env": "^7.26.0", "@babel/preset-react": "^7.25.9", - "@fortawesome/fontawesome-free": "^6.7.0", + "@fortawesome/fontawesome-free": "^6.7.1", "@hacceuee/s3-pixel-icons": "^2.4.1", "@popperjs/core": "^2.11.8", "autoprefixer": "^10.4.20", @@ -1958,9 +1958,9 @@ } }, "node_modules/@fortawesome/fontawesome-free": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-free/-/fontawesome-free-6.7.0.tgz", - "integrity": "sha512-lXTP8oiLGM97Aqjn47nod9awKe574HRfCngFizr7FiHTadKTiPkoVn0Mzg+tZBLD1XpE4CRvcF7/UM3g1jyVYw==", + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-free/-/fontawesome-free-6.7.1.tgz", + "integrity": "sha512-ALIk/MOh5gYe1TG/ieS5mVUsk7VUIJTJKPMK9rFFqOgfp0Q3d5QiBXbcOMwUvs37fyZVCz46YjOE6IFeOAXCHA==", "license": "(CC-BY-4.0 AND OFL-1.1 AND MIT)", "engines": { "node": ">=6" @@ -2590,9 +2590,9 @@ "license": "MIT" }, "node_modules/@types/node": { - "version": "22.9.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.9.0.tgz", - "integrity": "sha512-vuyHg81vvWA1Z1ELfvLko2c8f34gyA0zaic0+Rllc5lbCnbSyuvb2Oxpm6TAUAC/2xZN3QGqxBNggD1nNR2AfQ==", + "version": "22.9.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.9.1.tgz", + "integrity": "sha512-p8Yy/8sw1caA8CdRIQBG5tiLHmxtQKObCijiAa9Ez+d4+PRffM4054xbju0msf+cvhJpnFEeNjxmVT/0ipktrg==", "license": "MIT", "dependencies": { "undici-types": "~6.19.8" @@ -7642,9 +7642,9 @@ } }, "node_modules/immutable": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-5.0.2.tgz", - "integrity": "sha512-1NU7hWZDkV7hJ4PJ9dur9gTNQ4ePNPN4k9/0YhwjzykTi/+3Q5pF93YU5QoVj8BuOnhLgaY8gs0U2pj4kSYVcw==", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-5.0.3.tgz", + "integrity": "sha512-P8IdPQHq3lA1xVeBRi5VPqUm5HDgKnx0Ru51wZz5mjxHr5n3RWhjIpOFU7ybkUxfB+5IToy+OLaHYDBIWsv+uw==", "license": "MIT" }, "node_modules/import-fresh": { @@ -12454,9 +12454,9 @@ } }, "node_modules/stylelint-scss": { - "version": "6.9.0", - "resolved": "https://registry.npmjs.org/stylelint-scss/-/stylelint-scss-6.9.0.tgz", - "integrity": "sha512-oWOR+g6ccagfrENecImGmorWWjVyWpt2R8bmkhOW8FkNNPGStZPQMqb8QWMW4Lwu9TyPqmyjHkkAsy3weqsnNw==", + "version": "6.10.0", + "resolved": "https://registry.npmjs.org/stylelint-scss/-/stylelint-scss-6.10.0.tgz", + "integrity": "sha512-y03if6Qw9xBMoVaf7tzp5BbnYhYvudIKzURkhSHzcHG0bW0fAYvQpTUVJOe7DyhHaxeThBil4ObEMvGbV7+M+w==", "license": "MIT", "dependencies": { "css-tree": "^3.0.1", @@ -12465,7 +12465,7 @@ "mdn-data": "^2.12.2", "postcss-media-query-parser": "^0.2.3", "postcss-resolve-nested-selector": "^0.1.6", - "postcss-selector-parser": "^6.1.2", + "postcss-selector-parser": "^7.0.0", "postcss-value-parser": "^4.2.0" }, "engines": { @@ -12487,6 +12487,19 @@ "integrity": "sha512-IEn+pegP1aManZuckezWCO+XZQDplx1366JoVhTpMpBB1sPey/SbveZQUosKiKiGYjg1wH4pMlNgXbCiYgihQA==", "license": "CC0-1.0" }, + "node_modules/stylelint-scss/node_modules/postcss-selector-parser": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.0.0.tgz", + "integrity": "sha512-9RbEr1Y7FFfptd/1eEdntyjMwLeghW1bHX9GWjXo19vx4ytPQhANltvVxDggzJl7mnWM+dX28kb6cyS/4iQjlQ==", + "license": "MIT", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/stylelint/node_modules/balanced-match": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-2.0.0.tgz", @@ -14188,9 +14201,9 @@ "license": "ISC" }, "node_modules/yaml": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.6.0.tgz", - "integrity": "sha512-a6ae//JvKDEra2kdi1qzCyrJW/WZCgFi8ydDV+eXExl95t+5R+ijnqHJbz9tmMh8FUjx3iv2fCQ4dclAQlO2UQ==", + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.6.1.tgz", + "integrity": "sha512-7r0XPzioN/Q9kXBro/XPnA6kznR73DHq+GXh5ON7ZozRO6aMjbmiBuKste2wslTFkC5d1dw0GooOCepZXJ2SAg==", "license": "ISC", "bin": { "yaml": "bin.mjs" diff --git a/package.json b/package.json index 93e86d3b2..6cda98181 100644 --- a/package.json +++ b/package.json @@ -11,7 +11,7 @@ "@babel/polyfill": "^7.12.1", "@babel/preset-env": "^7.26.0", "@babel/preset-react": "^7.25.9", - "@fortawesome/fontawesome-free": "^6.7.0", + "@fortawesome/fontawesome-free": "^6.7.1", "@hacceuee/s3-pixel-icons": "^2.4.1", "@popperjs/core": "^2.11.8", "autoprefixer": "^10.4.20", From e6e507e4d200e87882904aa5ac5d6fe5f16a512f Mon Sep 17 00:00:00 2001 From: AIZAWA Hina Date: Wed, 20 Nov 2024 12:53:54 +0900 Subject: [PATCH 11/14] Splatoon 3 v9.2.0 --- migrations/m241120_035153_s3_v920.php | 54 +++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 migrations/m241120_035153_s3_v920.php diff --git a/migrations/m241120_035153_s3_v920.php b/migrations/m241120_035153_s3_v920.php new file mode 100644 index 000000000..46038f95b --- /dev/null +++ b/migrations/m241120_035153_s3_v920.php @@ -0,0 +1,54 @@ + + */ + +declare(strict_types=1); + +use app\components\db\Migration; +use app\components\db\VersionMigration; + +final class m241120_035153_s3_v920 extends Migration +{ + use VersionMigration; + + /** + * @inheritdoc + */ + public function safeUp() + { + $this->upVersion3( + '9.2', + 'v9.2.x', + '9.2.0', + 'v9.2.0', + new DateTimeImmutable('2024-11-21T10:10:00+09:00'), + ); + + return true; + } + + /** + * @inheritdoc + */ + public function safeDown() + { + $this->downVersion3('9.2.0', '9.1.0'); + + return true; + } + + /** + * @inheritdoc + */ + protected function vacuumTables(): array + { + return [ + '{{%splatoon_version3}}', + '{{%splatoon_version_group3}}', + ]; + } +} From 42e70390b0cd201bc145d8fe9b6aef0af7dc9a81 Mon Sep 17 00:00:00 2001 From: AIZAWA Hina Date: Thu, 21 Nov 2024 12:08:29 +0900 Subject: [PATCH 12/14] cron: switch stat/update-entire-salmon{2,3} to systemd timer --- .../statink-stats-update-entire-salmon2.service | 11 +++++++++++ .../statink-stats-update-entire-salmon2.timer | 8 ++++++++ .../statink-stats-update-entire-salmon3.service | 11 +++++++++++ .../statink-stats-update-entire-salmon3.timer | 8 ++++++++ schedule/schedule.php | 2 -- schedule/schedule/salmon2.php | 13 ------------- schedule/schedule/salmon3.php | 13 ------------- 7 files changed, 38 insertions(+), 28 deletions(-) create mode 100644 data/systemd/statink-stats-update-entire-salmon2.service create mode 100644 data/systemd/statink-stats-update-entire-salmon2.timer create mode 100644 data/systemd/statink-stats-update-entire-salmon3.service create mode 100644 data/systemd/statink-stats-update-entire-salmon3.timer delete mode 100644 schedule/schedule/salmon2.php delete mode 100644 schedule/schedule/salmon3.php diff --git a/data/systemd/statink-stats-update-entire-salmon2.service b/data/systemd/statink-stats-update-entire-salmon2.service new file mode 100644 index 000000000..a45d9c0e8 --- /dev/null +++ b/data/systemd/statink-stats-update-entire-salmon2.service @@ -0,0 +1,11 @@ +[Unit] +Description=Run stat.ink stat/update-entire-salmon2 +After=paths.target multi-user.target network.target network-online.target NetworkManager.service + +[Service] +Type=oneshot +ExecStart=/var/www/sites/stat.ink/app.dep/current/yii stat/update-entire-salmon2 +SyslogIdentifier=statink-stats-update-entire-salmon2 +WorkingDirectory=/var/www/sites/stat.ink/app.dep/current +User=stat.ink +Group=stat.ink diff --git a/data/systemd/statink-stats-update-entire-salmon2.timer b/data/systemd/statink-stats-update-entire-salmon2.timer new file mode 100644 index 000000000..5b3e08cd9 --- /dev/null +++ b/data/systemd/statink-stats-update-entire-salmon2.timer @@ -0,0 +1,8 @@ +[Unit] +Description=Run stat.ink stat/update-entire-salmon2 (timer) + +[Timer] +OnCalendar=*-*-* 03..21/6:42:00 + +[Install] +WantedBy=timers.target diff --git a/data/systemd/statink-stats-update-entire-salmon3.service b/data/systemd/statink-stats-update-entire-salmon3.service new file mode 100644 index 000000000..45c9c037b --- /dev/null +++ b/data/systemd/statink-stats-update-entire-salmon3.service @@ -0,0 +1,11 @@ +[Unit] +Description=Run stat.ink stat/update-entire-salmon3 +After=paths.target multi-user.target network.target network-online.target NetworkManager.service + +[Service] +Type=oneshot +ExecStart=/var/www/sites/stat.ink/app.dep/current/yii stat/update-entire-salmon3 +SyslogIdentifier=statink-stats-update-entire-salmon3 +WorkingDirectory=/var/www/sites/stat.ink/app.dep/current +User=stat.ink +Group=stat.ink diff --git a/data/systemd/statink-stats-update-entire-salmon3.timer b/data/systemd/statink-stats-update-entire-salmon3.timer new file mode 100644 index 000000000..b26025cf8 --- /dev/null +++ b/data/systemd/statink-stats-update-entire-salmon3.timer @@ -0,0 +1,8 @@ +[Unit] +Description=Run stat.ink stat/update-entire-salmon3 (timer) + +[Timer] +OnCalendar=*-*-* 03..21/6:47:00 + +[Install] +WantedBy=timers.target diff --git a/schedule/schedule.php b/schedule/schedule.php index cd981073a..63f758e4b 100644 --- a/schedule/schedule.php +++ b/schedule/schedule.php @@ -8,6 +8,4 @@ * @var Schedule $schedule */ -require __DIR__ . '/schedule/salmon2.php'; -require __DIR__ . '/schedule/salmon3.php'; require __DIR__ . '/schedule/user-json.php'; diff --git a/schedule/schedule/salmon2.php b/schedule/schedule/salmon2.php deleted file mode 100644 index 40cf4841a..000000000 --- a/schedule/schedule/salmon2.php +++ /dev/null @@ -1,13 +0,0 @@ -command('stat/update-entire-salmon2') - ->cron('42 3-23/6 * * *'); diff --git a/schedule/schedule/salmon3.php b/schedule/schedule/salmon3.php deleted file mode 100644 index e3c806ece..000000000 --- a/schedule/schedule/salmon3.php +++ /dev/null @@ -1,13 +0,0 @@ -command('stat/update-entire-salmon3') - ->cron('47 3-23/6 * * *'); From 54a9c94b4c771b0a493095a964674aa2da05058e Mon Sep 17 00:00:00 2001 From: AIZAWA Hina Date: Thu, 21 Nov 2024 12:13:41 +0900 Subject: [PATCH 13/14] cron: switch user-json/auto-update to systemd timer --- data/systemd/statink-user-json-auto-update.service | 11 +++++++++++ data/systemd/statink-user-json-auto-update.timer | 9 +++++++++ schedule/schedule.php | 2 -- schedule/schedule/user-json.php | 13 ------------- 4 files changed, 20 insertions(+), 15 deletions(-) create mode 100644 data/systemd/statink-user-json-auto-update.service create mode 100644 data/systemd/statink-user-json-auto-update.timer delete mode 100644 schedule/schedule/user-json.php diff --git a/data/systemd/statink-user-json-auto-update.service b/data/systemd/statink-user-json-auto-update.service new file mode 100644 index 000000000..351407843 --- /dev/null +++ b/data/systemd/statink-user-json-auto-update.service @@ -0,0 +1,11 @@ +[Unit] +Description=Run stat.ink user-json/auto-update +After=paths.target multi-user.target network.target network-online.target NetworkManager.service + +[Service] +Type=oneshot +ExecStart=/var/www/sites/stat.ink/app.dep/current/yii user-json/auto-update +SyslogIdentifier=statink-user-json-auto-update +WorkingDirectory=/var/www/sites/stat.ink/app.dep/current +User=stat.ink +Group=stat.ink diff --git a/data/systemd/statink-user-json-auto-update.timer b/data/systemd/statink-user-json-auto-update.timer new file mode 100644 index 000000000..da67b63d4 --- /dev/null +++ b/data/systemd/statink-user-json-auto-update.timer @@ -0,0 +1,9 @@ +[Unit] +Description=Run stat.ink user-json/auto-update (timer) + +[Timer] +# every minutes +OnCalendar=*-*-* *:*:30 + +[Install] +WantedBy=timers.target diff --git a/schedule/schedule.php b/schedule/schedule.php index 63f758e4b..49bb48a64 100644 --- a/schedule/schedule.php +++ b/schedule/schedule.php @@ -7,5 +7,3 @@ /** * @var Schedule $schedule */ - -require __DIR__ . '/schedule/user-json.php'; diff --git a/schedule/schedule/user-json.php b/schedule/schedule/user-json.php deleted file mode 100644 index c1e240a6a..000000000 --- a/schedule/schedule/user-json.php +++ /dev/null @@ -1,13 +0,0 @@ -command('user-json/auto-update') - ->cron('* * * * *'); From de4638f0dfdf2a7a173da6ab0cc6d7dfd6129958 Mon Sep 17 00:00:00 2001 From: AIZAWA Hina Date: Thu, 21 Nov 2024 12:16:22 +0900 Subject: [PATCH 14/14] remove outdated lib: omnilight/yii2-scheduling --- composer.json | 3 +- composer.lock | 260 ++++++++------------------ data/systemd/statink-schedule.service | 11 -- data/systemd/statink-schedule.timer | 8 - schedule/schedule.php | 9 - 5 files changed, 76 insertions(+), 215 deletions(-) delete mode 100644 data/systemd/statink-schedule.service delete mode 100644 data/systemd/statink-schedule.timer delete mode 100644 schedule/schedule.php diff --git a/composer.json b/composer.json index cc622ce1e..736fe2cf0 100644 --- a/composer.json +++ b/composer.json @@ -34,7 +34,6 @@ "lipis/flag-icons": "^7.2.3", "lusitanian/oauth": "^0.8.11", "markrogoyski/math-php": "^2.10.0", - "omnilight/yii2-scheduling": "^1.1.6", "paragonie/constant_time_encoding": "^3.0.0", "php-curl-class/php-curl-class": "^11.0.0", "statink/yii2-anonymizer": "^1.0.4", @@ -47,7 +46,7 @@ "statink/yii2-spl1-stages": "^1.0.1", "statink/yii2-spl2-stages": "^1.0.2", "statink/yii2-twitter-webintents": "^1.0.2", - "symfony/yaml": "^6.4.13 || ^7.0.0", + "symfony/yaml": "^7.1.6", "twbs/bootstrap-icons": "^1.11.3", "yiisoft/yii2": "^2.0.51", "yiisoft/yii2-bootstrap": "^2.0.11", diff --git a/composer.lock b/composer.lock index a5cc7388e..d5b210e64 100644 --- a/composer.lock +++ b/composer.lock @@ -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": "5fead3efa8bf3150510244ff5441f450", + "content-hash": "a045544c7626cb21c80e4e81bf4f6e54", "packages": [ { "name": "cebe/markdown", @@ -271,53 +271,6 @@ ], "time": "2024-02-05T11:56:58+00:00" }, - { - "name": "dragonmantank/cron-expression", - "version": "v1.2.1", - "source": { - "type": "git", - "url": "https://github.com/dragonmantank/cron-expression.git", - "reference": "9504fa9ea681b586028adaaa0877db4aecf32bad" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/dragonmantank/cron-expression/zipball/9504fa9ea681b586028adaaa0877db4aecf32bad", - "reference": "9504fa9ea681b586028adaaa0877db4aecf32bad", - "shasum": "" - }, - "require": { - "php": ">=5.3.2" - }, - "require-dev": { - "phpunit/phpunit": "~4.0|~5.0" - }, - "type": "library", - "autoload": { - "psr-4": { - "Cron\\": "src/Cron/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Michael Dowling", - "email": "mtdowling@gmail.com", - "homepage": "https://github.com/mtdowling" - } - ], - "description": "CRON for PHP: Calculate the next or previous run date and determine if a CRON expression is due", - "keywords": [ - "cron", - "schedule" - ], - "support": { - "source": "https://github.com/dragonmantank/cron-expression/tree/v1.2.0" - }, - "time": "2017-01-23T04:29:33+00:00" - }, { "name": "egulias/email-validator", "version": "4.0.2", @@ -1729,60 +1682,6 @@ }, "time": "2024-11-14T23:14:52+00:00" }, - { - "name": "omnilight/yii2-scheduling", - "version": "1.1.6", - "source": { - "type": "git", - "url": "https://github.com/omnilight/yii2-scheduling.git", - "reference": "e69b281202bef06fa056ea91eb43a28569bd89e5" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/omnilight/yii2-scheduling/zipball/e69b281202bef06fa056ea91eb43a28569bd89e5", - "reference": "e69b281202bef06fa056ea91eb43a28569bd89e5", - "shasum": "" - }, - "require": { - "dragonmantank/cron-expression": "1.*", - "php": ">=5.4.0", - "symfony/process": "2.6.* || 3.* || 4.*", - "yiisoft/yii2": "2.0.*" - }, - "require-dev": { - "phpunit/phpunit": "4.8.36" - }, - "suggest": { - "guzzlehttp/guzzle": "Required to use the thenPing method on schedules (~5.0)." - }, - "type": "yii2-extension", - "extra": { - "bootstrap": "omnilight\\scheduling\\Bootstrap" - }, - "autoload": { - "psr-4": { - "omnilight\\scheduling\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "authors": [ - { - "name": "Pavel Agalecky", - "email": "pavel.agalecky@gmail.com" - } - ], - "description": "Scheduling extension for Yii2 framework", - "keywords": [ - "cron", - "scheduling", - "yii" - ], - "support": { - "issues": "https://github.com/omnilight/yii2-scheduling/issues", - "source": "https://github.com/omnilight/yii2-scheduling/tree/1.1.6" - }, - "time": "2022-05-16T17:28:24+00:00" - }, { "name": "paragonie/constant_time_encoding", "version": "v3.0.0", @@ -2245,16 +2144,16 @@ }, { "name": "psr/log", - "version": "2.0.0", + "version": "3.0.2", "source": { "type": "git", "url": "https://github.com/php-fig/log.git", - "reference": "ef29f6d262798707a9edd554e2b82517ef3a9376" + "reference": "f16e1d5863e37f8d8c2a01719f5b34baa2b714d3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/log/zipball/ef29f6d262798707a9edd554e2b82517ef3a9376", - "reference": "ef29f6d262798707a9edd554e2b82517ef3a9376", + "url": "https://api.github.com/repos/php-fig/log/zipball/f16e1d5863e37f8d8c2a01719f5b34baa2b714d3", + "reference": "f16e1d5863e37f8d8c2a01719f5b34baa2b714d3", "shasum": "" }, "require": { @@ -2263,7 +2162,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0.x-dev" + "dev-master": "3.x-dev" } }, "autoload": { @@ -2289,9 +2188,9 @@ "psr-3" ], "support": { - "source": "https://github.com/php-fig/log/tree/2.0.0" + "source": "https://github.com/php-fig/log/tree/3.0.2" }, - "time": "2021-07-14T16:41:46+00:00" + "time": "2024-09-11T13:17:53+00:00" }, { "name": "ralouphie/getallheaders", @@ -3518,21 +3417,20 @@ }, { "name": "symfony/process", - "version": "v4.4.44", + "version": "v7.1.8", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "5cee9cdc4f7805e2699d9fd66991a0e6df8252a2" + "reference": "42783370fda6e538771f7c7a36e9fa2ee3a84892" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/5cee9cdc4f7805e2699d9fd66991a0e6df8252a2", - "reference": "5cee9cdc4f7805e2699d9fd66991a0e6df8252a2", + "url": "https://api.github.com/repos/symfony/process/zipball/42783370fda6e538771f7c7a36e9fa2ee3a84892", + "reference": "42783370fda6e538771f7c7a36e9fa2ee3a84892", "shasum": "" }, "require": { - "php": ">=7.1.3", - "symfony/polyfill-php80": "^1.16" + "php": ">=8.2" }, "type": "library", "autoload": { @@ -3560,7 +3458,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v4.4.44" + "source": "https://github.com/symfony/process/tree/v7.1.8" }, "funding": [ { @@ -3576,7 +3474,7 @@ "type": "tidelift" } ], - "time": "2022-06-27T13:16:42+00:00" + "time": "2024-11-06T14:23:19+00:00" }, { "name": "symfony/service-contracts", @@ -3663,28 +3561,27 @@ }, { "name": "symfony/yaml", - "version": "v6.4.13", + "version": "v7.1.6", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "e99b4e94d124b29ee4cf3140e1b537d2dad8cec9" + "reference": "3ced3f29e4f0d6bce2170ff26719f1fe9aacc671" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/e99b4e94d124b29ee4cf3140e1b537d2dad8cec9", - "reference": "e99b4e94d124b29ee4cf3140e1b537d2dad8cec9", + "url": "https://api.github.com/repos/symfony/yaml/zipball/3ced3f29e4f0d6bce2170ff26719f1fe9aacc671", + "reference": "3ced3f29e4f0d6bce2170ff26719f1fe9aacc671", "shasum": "" }, "require": { - "php": ">=8.1", - "symfony/deprecation-contracts": "^2.5|^3", + "php": ">=8.2", "symfony/polyfill-ctype": "^1.8" }, "conflict": { - "symfony/console": "<5.4" + "symfony/console": "<6.4" }, "require-dev": { - "symfony/console": "^5.4|^6.0|^7.0" + "symfony/console": "^6.4|^7.0" }, "bin": [ "Resources/bin/yaml-lint" @@ -3715,7 +3612,7 @@ "description": "Loads and dumps YAML files", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/yaml/tree/v6.4.13" + "source": "https://github.com/symfony/yaml/tree/v7.1.6" }, "funding": [ { @@ -3731,7 +3628,7 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:18:03+00:00" + "time": "2024-09-25T14:20:29+00:00" }, { "name": "twbs/bootstrap-icons", @@ -8162,52 +8059,46 @@ }, { "name": "symfony/console", - "version": "v5.4.47", + "version": "v7.1.8", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "c4ba980ca61a9eb18ee6bcc73f28e475852bb1ed" + "reference": "ff04e5b5ba043d2badfb308197b9e6b42883fcd5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/c4ba980ca61a9eb18ee6bcc73f28e475852bb1ed", - "reference": "c4ba980ca61a9eb18ee6bcc73f28e475852bb1ed", + "url": "https://api.github.com/repos/symfony/console/zipball/ff04e5b5ba043d2badfb308197b9e6b42883fcd5", + "reference": "ff04e5b5ba043d2badfb308197b9e6b42883fcd5", "shasum": "" }, "require": { - "php": ">=7.2.5", - "symfony/deprecation-contracts": "^2.1|^3", + "php": ">=8.2", "symfony/polyfill-mbstring": "~1.0", - "symfony/polyfill-php73": "^1.9", - "symfony/polyfill-php80": "^1.16", - "symfony/service-contracts": "^1.1|^2|^3", - "symfony/string": "^5.1|^6.0" + "symfony/service-contracts": "^2.5|^3", + "symfony/string": "^6.4|^7.0" }, "conflict": { - "psr/log": ">=3", - "symfony/dependency-injection": "<4.4", - "symfony/dotenv": "<5.1", - "symfony/event-dispatcher": "<4.4", - "symfony/lock": "<4.4", - "symfony/process": "<4.4" + "symfony/dependency-injection": "<6.4", + "symfony/dotenv": "<6.4", + "symfony/event-dispatcher": "<6.4", + "symfony/lock": "<6.4", + "symfony/process": "<6.4" }, "provide": { - "psr/log-implementation": "1.0|2.0" + "psr/log-implementation": "1.0|2.0|3.0" }, "require-dev": { - "psr/log": "^1|^2", - "symfony/config": "^4.4|^5.0|^6.0", - "symfony/dependency-injection": "^4.4|^5.0|^6.0", - "symfony/event-dispatcher": "^4.4|^5.0|^6.0", - "symfony/lock": "^4.4|^5.0|^6.0", - "symfony/process": "^4.4|^5.0|^6.0", - "symfony/var-dumper": "^4.4|^5.0|^6.0" - }, - "suggest": { - "psr/log": "For using the console logger", - "symfony/event-dispatcher": "", - "symfony/lock": "", - "symfony/process": "" + "psr/log": "^1|^2|^3", + "symfony/config": "^6.4|^7.0", + "symfony/dependency-injection": "^6.4|^7.0", + "symfony/event-dispatcher": "^6.4|^7.0", + "symfony/http-foundation": "^6.4|^7.0", + "symfony/http-kernel": "^6.4|^7.0", + "symfony/lock": "^6.4|^7.0", + "symfony/messenger": "^6.4|^7.0", + "symfony/process": "^6.4|^7.0", + "symfony/stopwatch": "^6.4|^7.0", + "symfony/var-dumper": "^6.4|^7.0" }, "type": "library", "autoload": { @@ -8241,7 +8132,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v5.4.47" + "source": "https://github.com/symfony/console/tree/v7.1.8" }, "funding": [ { @@ -8257,7 +8148,7 @@ "type": "tidelift" } ], - "time": "2024-11-06T11:30:55+00:00" + "time": "2024-11-06T14:23:19+00:00" }, { "name": "symfony/css-selector", @@ -8535,20 +8426,20 @@ }, { "name": "symfony/string", - "version": "v6.4.15", + "version": "v7.1.8", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "73a5e66ea2e1677c98d4449177c5a9cf9d8b4c6f" + "reference": "591ebd41565f356fcd8b090fe64dbb5878f50281" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/73a5e66ea2e1677c98d4449177c5a9cf9d8b4c6f", - "reference": "73a5e66ea2e1677c98d4449177c5a9cf9d8b4c6f", + "url": "https://api.github.com/repos/symfony/string/zipball/591ebd41565f356fcd8b090fe64dbb5878f50281", + "reference": "591ebd41565f356fcd8b090fe64dbb5878f50281", "shasum": "" }, "require": { - "php": ">=8.1", + "php": ">=8.2", "symfony/polyfill-ctype": "~1.8", "symfony/polyfill-intl-grapheme": "~1.0", "symfony/polyfill-intl-normalizer": "~1.0", @@ -8558,11 +8449,12 @@ "symfony/translation-contracts": "<2.5" }, "require-dev": { - "symfony/error-handler": "^5.4|^6.0|^7.0", - "symfony/http-client": "^5.4|^6.0|^7.0", - "symfony/intl": "^6.2|^7.0", + "symfony/emoji": "^7.1", + "symfony/error-handler": "^6.4|^7.0", + "symfony/http-client": "^6.4|^7.0", + "symfony/intl": "^6.4|^7.0", "symfony/translation-contracts": "^2.5|^3.0", - "symfony/var-exporter": "^5.4|^6.0|^7.0" + "symfony/var-exporter": "^6.4|^7.0" }, "type": "library", "autoload": { @@ -8601,7 +8493,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v6.4.15" + "source": "https://github.com/symfony/string/tree/v7.1.8" }, "funding": [ { @@ -8617,38 +8509,36 @@ "type": "tidelift" } ], - "time": "2024-11-13T13:31:12+00:00" + "time": "2024-11-13T13:31:21+00:00" }, { "name": "symfony/var-dumper", - "version": "v6.4.15", + "version": "v7.1.8", "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", - "reference": "38254d5a5ac2e61f2b52f9caf54e7aa3c9d36b80" + "reference": "7bb01a47b1b00428d32b5e7b4d3b2d1aa58d3db8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-dumper/zipball/38254d5a5ac2e61f2b52f9caf54e7aa3c9d36b80", - "reference": "38254d5a5ac2e61f2b52f9caf54e7aa3c9d36b80", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/7bb01a47b1b00428d32b5e7b4d3b2d1aa58d3db8", + "reference": "7bb01a47b1b00428d32b5e7b4d3b2d1aa58d3db8", "shasum": "" }, "require": { - "php": ">=8.1", - "symfony/deprecation-contracts": "^2.5|^3", + "php": ">=8.2", "symfony/polyfill-mbstring": "~1.0" }, "conflict": { - "symfony/console": "<5.4" + "symfony/console": "<6.4" }, "require-dev": { "ext-iconv": "*", - "symfony/console": "^5.4|^6.0|^7.0", - "symfony/error-handler": "^6.3|^7.0", - "symfony/http-kernel": "^5.4|^6.0|^7.0", - "symfony/process": "^5.4|^6.0|^7.0", - "symfony/uid": "^5.4|^6.0|^7.0", - "twig/twig": "^2.13|^3.0.4" + "symfony/console": "^6.4|^7.0", + "symfony/http-kernel": "^6.4|^7.0", + "symfony/process": "^6.4|^7.0", + "symfony/uid": "^6.4|^7.0", + "twig/twig": "^3.0.4" }, "bin": [ "Resources/bin/var-dump-server" @@ -8686,7 +8576,7 @@ "dump" ], "support": { - "source": "https://github.com/symfony/var-dumper/tree/v6.4.15" + "source": "https://github.com/symfony/var-dumper/tree/v7.1.8" }, "funding": [ { @@ -8702,7 +8592,7 @@ "type": "tidelift" } ], - "time": "2024-11-08T15:28:48+00:00" + "time": "2024-11-08T15:46:42+00:00" }, { "name": "theseer/tokenizer", diff --git a/data/systemd/statink-schedule.service b/data/systemd/statink-schedule.service deleted file mode 100644 index 2effe34d7..000000000 --- a/data/systemd/statink-schedule.service +++ /dev/null @@ -1,11 +0,0 @@ -[Unit] -Description=Run stat.ink scheduling tasks -After=paths.target multi-user.target network.target network-online.target NetworkManager.service - -[Service] -Type=oneshot -ExecStart=/var/www/sites/stat.ink/app.dep/current/yii schedule/run --schedule-file=@app/schedule/schedule.php -SyslogIdentifier=statink-schedule -WorkingDirectory=/var/www/sites/stat.ink/app.dep/current -User=stat.ink -Group=stat.ink diff --git a/data/systemd/statink-schedule.timer b/data/systemd/statink-schedule.timer deleted file mode 100644 index 8147af3ac..000000000 --- a/data/systemd/statink-schedule.timer +++ /dev/null @@ -1,8 +0,0 @@ -[Unit] -Description=Run stat.ink scheduling tasks (timer) - -[Timer] -OnCalendar=*-*-* *:*:00 - -[Install] -WantedBy=timers.target diff --git a/schedule/schedule.php b/schedule/schedule.php deleted file mode 100644 index 49bb48a64..000000000 --- a/schedule/schedule.php +++ /dev/null @@ -1,9 +0,0 @@ -