diff --git a/composer.json b/composer.json
index 4d12054dc..da0608365 100644
--- a/composer.json
+++ b/composer.json
@@ -56,7 +56,8 @@
"psr/simple-cache" : "^1.0",
"sabre/cache" : "^2.0.1",
"naroga/redis-cache": "dev-master",
- "tbela99/css": "dev-master"
+ "tbela99/css": "dev-master",
+ "aws/aws-sdk-php": "^3.294"
},
"require-dev" : {
diff --git a/composer.lock b/composer.lock
index 20ff5649f..74d150694 100644
--- a/composer.lock
+++ b/composer.lock
@@ -4,8 +4,157 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
- "content-hash": "422b41bfec446ff1062a14df333a8bbd",
+ "content-hash": "091b1bcf581b4d04a9989860b068f327",
"packages": [
+ {
+ "name": "aws/aws-crt-php",
+ "version": "v1.2.4",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/awslabs/aws-crt-php.git",
+ "reference": "eb0c6e4e142224a10b08f49ebf87f32611d162b2"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/awslabs/aws-crt-php/zipball/eb0c6e4e142224a10b08f49ebf87f32611d162b2",
+ "reference": "eb0c6e4e142224a10b08f49ebf87f32611d162b2",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.5"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^4.8.35||^5.6.3||^9.5",
+ "yoast/phpunit-polyfills": "^1.0"
+ },
+ "suggest": {
+ "ext-awscrt": "Make sure you install awscrt native extension to use any of the functionality."
+ },
+ "type": "library",
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "Apache-2.0"
+ ],
+ "authors": [
+ {
+ "name": "AWS SDK Common Runtime Team",
+ "email": "aws-sdk-common-runtime@amazon.com"
+ }
+ ],
+ "description": "AWS Common Runtime for PHP",
+ "homepage": "https://github.com/awslabs/aws-crt-php",
+ "keywords": [
+ "amazon",
+ "aws",
+ "crt",
+ "sdk"
+ ],
+ "support": {
+ "issues": "https://github.com/awslabs/aws-crt-php/issues",
+ "source": "https://github.com/awslabs/aws-crt-php/tree/v1.2.4"
+ },
+ "time": "2023-11-08T00:42:13+00:00"
+ },
+ {
+ "name": "aws/aws-sdk-php",
+ "version": "3.294.4",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/aws/aws-sdk-php.git",
+ "reference": "4f59bf50aa445fc3ec0b10648b205dd2465e9bec"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/4f59bf50aa445fc3ec0b10648b205dd2465e9bec",
+ "reference": "4f59bf50aa445fc3ec0b10648b205dd2465e9bec",
+ "shasum": ""
+ },
+ "require": {
+ "aws/aws-crt-php": "^1.2.3",
+ "ext-json": "*",
+ "ext-pcre": "*",
+ "ext-simplexml": "*",
+ "guzzlehttp/guzzle": "^6.5.8 || ^7.4.5",
+ "guzzlehttp/promises": "^1.4.0 || ^2.0",
+ "guzzlehttp/psr7": "^1.9.1 || ^2.4.5",
+ "mtdowling/jmespath.php": "^2.6",
+ "php": ">=7.2.5",
+ "psr/http-message": "^1.0 || ^2.0"
+ },
+ "require-dev": {
+ "andrewsville/php-token-reflection": "^1.4",
+ "aws/aws-php-sns-message-validator": "~1.0",
+ "behat/behat": "~3.0",
+ "composer/composer": "^1.10.22",
+ "dms/phpunit-arraysubset-asserts": "^0.4.0",
+ "doctrine/cache": "~1.4",
+ "ext-dom": "*",
+ "ext-openssl": "*",
+ "ext-pcntl": "*",
+ "ext-sockets": "*",
+ "nette/neon": "^2.3",
+ "paragonie/random_compat": ">= 2",
+ "phpunit/phpunit": "^5.6.3 || ^8.5 || ^9.5",
+ "psr/cache": "^1.0",
+ "psr/simple-cache": "^1.0",
+ "sebastian/comparator": "^1.2.3 || ^4.0",
+ "yoast/phpunit-polyfills": "^1.0"
+ },
+ "suggest": {
+ "aws/aws-php-sns-message-validator": "To validate incoming SNS notifications",
+ "doctrine/cache": "To use the DoctrineCacheAdapter",
+ "ext-curl": "To send requests using cURL",
+ "ext-openssl": "Allows working with CloudFront private distributions and verifying received SNS messages",
+ "ext-sockets": "To use client-side monitoring"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "3.0-dev"
+ }
+ },
+ "autoload": {
+ "files": [
+ "src/functions.php"
+ ],
+ "psr-4": {
+ "Aws\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "Apache-2.0"
+ ],
+ "authors": [
+ {
+ "name": "Amazon Web Services",
+ "homepage": "http://aws.amazon.com"
+ }
+ ],
+ "description": "AWS SDK for PHP - Use Amazon Web Services in your PHP project",
+ "homepage": "http://aws.amazon.com/sdkforphp",
+ "keywords": [
+ "amazon",
+ "aws",
+ "cloud",
+ "dynamodb",
+ "ec2",
+ "glacier",
+ "s3",
+ "sdk"
+ ],
+ "support": {
+ "forum": "https://forums.aws.amazon.com/forum.jspa?forumID=80",
+ "issues": "https://github.com/aws/aws-sdk-php/issues",
+ "source": "https://github.com/aws/aws-sdk-php/tree/3.294.4"
+ },
+ "time": "2023-12-20T19:21:19+00:00"
+ },
{
"name": "axy/backtrace",
"version": "1.0.7",
@@ -473,44 +622,56 @@
"time": "2023-02-20T17:27:30+00:00"
},
{
- "name": "ifixit/php-akismet",
- "version": "1.1",
- "source": {
- "type": "git",
- "url": "https://github.com/iFixit/php-akismet.git",
- "reference": "fd4ff50eb577457c1b7b887401663e91e77625ae"
- },
- "type": "library"
- },
- {
- "name": "naroga/redis-cache",
- "version": "dev-master",
+ "name": "guzzlehttp/guzzle",
+ "version": "7.9.x-dev",
"source": {
"type": "git",
- "url": "https://github.com/naroga/redis-cache.git",
- "reference": "c32ee4ce2efcf8292cac6b6192c17c0306320d04"
+ "url": "https://github.com/guzzle/guzzle.git",
+ "reference": "41042bc7ab002487b876a0683fc8dce04ddce104"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/naroga/redis-cache/zipball/c32ee4ce2efcf8292cac6b6192c17c0306320d04",
- "reference": "c32ee4ce2efcf8292cac6b6192c17c0306320d04",
+ "url": "https://api.github.com/repos/guzzle/guzzle/zipball/41042bc7ab002487b876a0683fc8dce04ddce104",
+ "reference": "41042bc7ab002487b876a0683fc8dce04ddce104",
"shasum": ""
},
"require": {
- "php": ">=5.3.3",
- "predis/predis": "^1.1",
- "psr/simple-cache": "~1.0"
+ "ext-json": "*",
+ "guzzlehttp/promises": "^1.5.3 || ^2.0.1",
+ "guzzlehttp/psr7": "^1.9.1 || ^2.5.1",
+ "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": {
- "phpunit/php-code-coverage": ">=2.2.4",
- "phpunit/phpunit": ">=3.7.38",
- "satooshi/php-coveralls": ">=1.0.1"
+ "bamarni/composer-bin-plugin": "^1.8.2",
+ "ext-curl": "*",
+ "php-http/client-integration-tests": "dev-master#2c025848417c1135031fdf9c728ee53d0a7ceaee as 3.0.999",
+ "php-http/message-factory": "^1.1",
+ "phpunit/phpunit": "^8.5.36 || ^9.6.15",
+ "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"
},
- "default-branch": true,
"type": "library",
+ "extra": {
+ "bamarni-bin": {
+ "bin-links": true,
+ "forward-command": false
+ }
+ },
"autoload": {
+ "files": [
+ "src/functions_include.php"
+ ],
"psr-4": {
- "Naroga\\RedisCache\\": "."
+ "GuzzleHttp\\": "src/"
}
},
"notification-url": "https://packagist.org/downloads/",
@@ -519,51 +680,105 @@
],
"authors": [
{
- "name": "Pedro Cordeiro",
- "email": "pedro.cordeiro@sympla.com.br"
+ "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": "A Redis driver that implements PSR-16 (Simple Cache)",
+ "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/naroga/redis-cache/issues",
- "source": "https://github.com/naroga/redis-cache/tree/1.2"
+ "issues": "https://github.com/guzzle/guzzle/issues",
+ "source": "https://github.com/guzzle/guzzle/tree/7.8.1"
},
- "time": "2021-01-25T13:15:08+00:00"
+ "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": "2023-12-03T20:35:24+00:00"
},
{
- "name": "opis/closure",
- "version": "dev-master",
+ "name": "guzzlehttp/promises",
+ "version": "2.0.x-dev",
"source": {
"type": "git",
- "url": "https://github.com/opis/closure.git",
- "reference": "3d81e4309d2a927abbe66df935f4bb60082805ad"
+ "url": "https://github.com/guzzle/promises.git",
+ "reference": "bbff78d96034045e58e13dedd6ad91b5d1253223"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/opis/closure/zipball/3d81e4309d2a927abbe66df935f4bb60082805ad",
- "reference": "3d81e4309d2a927abbe66df935f4bb60082805ad",
+ "url": "https://api.github.com/repos/guzzle/promises/zipball/bbff78d96034045e58e13dedd6ad91b5d1253223",
+ "reference": "bbff78d96034045e58e13dedd6ad91b5d1253223",
"shasum": ""
},
"require": {
- "php": "^5.4 || ^7.0 || ^8.0"
+ "php": "^7.2.5 || ^8.0"
},
"require-dev": {
- "jeremeamia/superclosure": "^2.0",
- "phpunit/phpunit": "^4.0 || ^5.0 || ^6.0 || ^7.0 || ^8.0 || ^9.0"
+ "bamarni/composer-bin-plugin": "^1.8.2",
+ "phpunit/phpunit": "^8.5.36 || ^9.6.15"
},
"default-branch": true,
"type": "library",
"extra": {
- "branch-alias": {
- "dev-master": "3.6.x-dev"
+ "bamarni-bin": {
+ "bin-links": true,
+ "forward-command": false
}
},
"autoload": {
- "files": [
- "functions.php"
- ],
"psr-4": {
- "Opis\\Closure\\": "src/"
+ "GuzzleHttp\\Promise\\": "src/"
}
},
"notification-url": "https://packagist.org/downloads/",
@@ -572,58 +787,93 @@
],
"authors": [
{
- "name": "Marius Sarca",
- "email": "marius.sarca@gmail.com"
+ "name": "Graham Campbell",
+ "email": "hello@gjcampbell.co.uk",
+ "homepage": "https://github.com/GrahamCampbell"
},
{
- "name": "Sorin Sarca",
- "email": "sarca_sorin@hotmail.com"
+ "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": "A library that can be used to serialize closures (anonymous functions) and arbitrary objects.",
- "homepage": "https://opis.io/closure",
+ "description": "Guzzle promises library",
"keywords": [
- "anonymous functions",
- "closure",
- "function",
- "serializable",
- "serialization",
- "serialize"
+ "promise"
],
"support": {
- "issues": "https://github.com/opis/closure/issues",
- "source": "https://github.com/opis/closure/tree/3.6.3"
+ "issues": "https://github.com/guzzle/promises/issues",
+ "source": "https://github.com/guzzle/promises/tree/2.0.2"
},
- "time": "2022-01-27T09:35:39+00:00"
+ "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": "2023-12-03T20:19:20+00:00"
},
{
- "name": "predis/predis",
- "version": "v1.x-dev",
+ "name": "guzzlehttp/psr7",
+ "version": "2.6.x-dev",
"source": {
"type": "git",
- "url": "https://github.com/predis/predis.git",
- "reference": "deee2b6d605eb6401446f6f6354414ab7571a5a0"
+ "url": "https://github.com/guzzle/psr7.git",
+ "reference": "45b30f99ac27b5ca93cb4831afe16285f57b8221"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/predis/predis/zipball/deee2b6d605eb6401446f6f6354414ab7571a5a0",
- "reference": "deee2b6d605eb6401446f6f6354414ab7571a5a0",
+ "url": "https://api.github.com/repos/guzzle/psr7/zipball/45b30f99ac27b5ca93cb4831afe16285f57b8221",
+ "reference": "45b30f99ac27b5ca93cb4831afe16285f57b8221",
"shasum": ""
},
"require": {
- "php": ">=5.3.9"
+ "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": {
- "phpunit/phpunit": "~4.8"
+ "bamarni/composer-bin-plugin": "^1.8.2",
+ "http-interop/http-factory-tests": "^0.9",
+ "phpunit/phpunit": "^8.5.36 || ^9.6.15"
},
"suggest": {
- "ext-curl": "Allows access to Webdis when paired with phpiredis",
- "ext-phpiredis": "Allows faster serialization and deserialization of the Redis protocol"
+ "laminas/laminas-httphandlerrunner": "Emit PSR-7 responses"
},
+ "default-branch": true,
"type": "library",
+ "extra": {
+ "bamarni-bin": {
+ "bin-links": true,
+ "forward-command": false
+ }
+ },
"autoload": {
"psr-4": {
- "Predis\\": "src/"
+ "GuzzleHttp\\Psr7\\": "src/"
}
},
"notification-url": "https://packagist.org/downloads/",
@@ -632,62 +882,120 @@
],
"authors": [
{
- "name": "Daniele Alessandri",
- "email": "suppakilla@gmail.com",
- "homepage": "http://clorophilla.net",
- "role": "Creator & Maintainer"
+ "name": "Graham Campbell",
+ "email": "hello@gjcampbell.co.uk",
+ "homepage": "https://github.com/GrahamCampbell"
},
{
- "name": "Till Krüss",
- "homepage": "https://till.im",
- "role": "Maintainer"
+ "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": "Flexible and feature-complete Redis client for PHP and HHVM",
- "homepage": "http://github.com/predis/predis",
+ "description": "PSR-7 message implementation that also provides common utility methods",
"keywords": [
- "nosql",
- "predis",
- "redis"
+ "http",
+ "message",
+ "psr-7",
+ "request",
+ "response",
+ "stream",
+ "uri",
+ "url"
],
"support": {
- "issues": "https://github.com/predis/predis/issues",
- "source": "https://github.com/predis/predis/tree/v1.x"
+ "issues": "https://github.com/guzzle/psr7/issues",
+ "source": "https://github.com/guzzle/psr7/tree/2.6.2"
},
"funding": [
{
- "url": "https://github.com/sponsors/tillkruss",
+ "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": "2023-09-19T16:11:21+00:00"
+ "time": "2023-12-03T20:05:35+00:00"
},
{
- "name": "psr/simple-cache",
- "version": "1.0.1",
+ "name": "ifixit/php-akismet",
+ "version": "1.1",
"source": {
"type": "git",
- "url": "https://github.com/php-fig/simple-cache.git",
- "reference": "408d5eafb83c57f6365a3ca330ff23aa4a5fa39b"
+ "url": "https://github.com/iFixit/php-akismet.git",
+ "reference": "fd4ff50eb577457c1b7b887401663e91e77625ae"
+ },
+ "type": "library"
+ },
+ {
+ "name": "mtdowling/jmespath.php",
+ "version": "dev-master",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/jmespath/jmespath.php.git",
+ "reference": "b243cacd2a9803b4cbc259246aa5081208238c10"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/php-fig/simple-cache/zipball/408d5eafb83c57f6365a3ca330ff23aa4a5fa39b",
- "reference": "408d5eafb83c57f6365a3ca330ff23aa4a5fa39b",
+ "url": "https://api.github.com/repos/jmespath/jmespath.php/zipball/b243cacd2a9803b4cbc259246aa5081208238c10",
+ "reference": "b243cacd2a9803b4cbc259246aa5081208238c10",
"shasum": ""
},
"require": {
- "php": ">=5.3.0"
+ "php": "^7.2.5 || ^8.0",
+ "symfony/polyfill-mbstring": "^1.17"
+ },
+ "require-dev": {
+ "composer/xdebug-handler": "^3.0.3",
+ "phpunit/phpunit": "^8.5.33"
},
+ "default-branch": true,
+ "bin": [
+ "bin/jp.php"
+ ],
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.0.x-dev"
+ "dev-master": "2.7-dev"
}
},
"autoload": {
+ "files": [
+ "src/JmesPath.php"
+ ],
"psr-4": {
- "Psr\\SimpleCache\\": "src/"
+ "JmesPath\\": "src/"
}
},
"notification-url": "https://packagist.org/downloads/",
@@ -696,117 +1004,110 @@
],
"authors": [
{
- "name": "PHP-FIG",
- "homepage": "http://www.php-fig.org/"
+ "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"
}
],
- "description": "Common interfaces for simple caching",
+ "description": "Declaratively specify how to extract elements from a JSON document",
"keywords": [
- "cache",
- "caching",
- "psr",
- "psr-16",
- "simple-cache"
+ "json",
+ "jsonpath"
],
"support": {
- "source": "https://github.com/php-fig/simple-cache/tree/master"
+ "issues": "https://github.com/jmespath/jmespath.php/issues",
+ "source": "https://github.com/jmespath/jmespath.php/tree/master"
},
- "time": "2017-10-23T01:57:42+00:00"
+ "time": "2023-11-30T16:26:47+00:00"
},
{
- "name": "sabre/cache",
- "version": "2.0.1",
+ "name": "naroga/redis-cache",
+ "version": "dev-master",
"source": {
"type": "git",
- "url": "https://github.com/sabre-io/cache.git",
- "reference": "a843741b85025d8674bf4713121cae60172e6f86"
+ "url": "https://github.com/naroga/redis-cache.git",
+ "reference": "c32ee4ce2efcf8292cac6b6192c17c0306320d04"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sabre-io/cache/zipball/a843741b85025d8674bf4713121cae60172e6f86",
- "reference": "a843741b85025d8674bf4713121cae60172e6f86",
+ "url": "https://api.github.com/repos/naroga/redis-cache/zipball/c32ee4ce2efcf8292cac6b6192c17c0306320d04",
+ "reference": "c32ee4ce2efcf8292cac6b6192c17c0306320d04",
"shasum": ""
},
"require": {
- "php": "^7.4 || ^8.0",
- "psr/simple-cache": "^1.0"
- },
- "provide": {
- "psr/simple-cache-implementation": "~1.0"
+ "php": ">=5.3.3",
+ "predis/predis": "^1.1",
+ "psr/simple-cache": "~1.0"
},
"require-dev": {
- "friendsofphp/php-cs-fixer": "^3.14.0",
- "phpstan/extension-installer": "^1.2",
- "phpstan/phpstan": "^1.9",
- "phpstan/phpstan-phpunit": "^1.3",
- "phpstan/phpstan-strict-rules": "^1.4",
- "phpunit/phpunit": "^9.6"
+ "phpunit/php-code-coverage": ">=2.2.4",
+ "phpunit/phpunit": ">=3.7.38",
+ "satooshi/php-coveralls": ">=1.0.1"
},
+ "default-branch": true,
"type": "library",
"autoload": {
"psr-4": {
- "Sabre\\Cache\\": "lib/"
+ "Naroga\\RedisCache\\": "."
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
- "BSD-3-Clause"
+ "MIT"
],
"authors": [
{
- "name": "Evert Pot",
- "email": "me@evertpot.com",
- "homepage": "https://evertpot.com/",
- "role": "Developer"
+ "name": "Pedro Cordeiro",
+ "email": "pedro.cordeiro@sympla.com.br"
}
],
- "description": "Simple cache abstraction layer implementing PSR-16",
- "homepage": "http://sabre.io/dav/",
- "keywords": [
- "apc",
- "apcu",
- "cache",
- "memcache",
- "memcached",
- "psr-16",
- "sabre",
- "simple-cache"
- ],
+ "description": "A Redis driver that implements PSR-16 (Simple Cache)",
"support": {
- "forum": "https://groups.google.com/group/sabredav-discuss",
- "issues": "https://github.com/sabre-io/cache/issues",
- "source": "https://github.com/fruux/sabre-skel"
+ "issues": "https://github.com/naroga/redis-cache/issues",
+ "source": "https://github.com/naroga/redis-cache/tree/1.2"
},
- "time": "2023-02-09T23:47:10+00:00"
+ "time": "2021-01-25T13:15:08+00:00"
},
{
- "name": "shish/eventtracer-php",
- "version": "v2.1.0",
+ "name": "opis/closure",
+ "version": "dev-master",
"source": {
"type": "git",
- "url": "https://github.com/shish/eventtracer-php.git",
- "reference": "5dfe2c090c8b7df772e982520c36f44b33ead035"
+ "url": "https://github.com/opis/closure.git",
+ "reference": "3d81e4309d2a927abbe66df935f4bb60082805ad"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/shish/eventtracer-php/zipball/5dfe2c090c8b7df772e982520c36f44b33ead035",
- "reference": "5dfe2c090c8b7df772e982520c36f44b33ead035",
+ "url": "https://api.github.com/repos/opis/closure/zipball/3d81e4309d2a927abbe66df935f4bb60082805ad",
+ "reference": "3d81e4309d2a927abbe66df935f4bb60082805ad",
"shasum": ""
},
"require": {
- "ext-json": "*",
- "php": "^8.0"
+ "php": "^5.4 || ^7.0 || ^8.0"
},
"require-dev": {
- "friendsofphp/php-cs-fixer": "^3.12",
- "phpstan/phpstan": "^1.9",
- "phpunit/phpunit": "^9.0"
+ "jeremeamia/superclosure": "^2.0",
+ "phpunit/phpunit": "^4.0 || ^5.0 || ^6.0 || ^7.0 || ^8.0 || ^9.0"
},
+ "default-branch": true,
"type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "3.6.x-dev"
+ }
+ },
"autoload": {
- "classmap": [
- "src/"
- ]
+ "files": [
+ "functions.php"
+ ],
+ "psr-4": {
+ "Opis\\Closure\\": "src/"
+ }
},
"notification-url": "https://packagist.org/downloads/",
"license": [
@@ -814,47 +1115,58 @@
],
"authors": [
{
- "name": "Shish",
- "email": "webmaster@shishnet.org",
- "homepage": "http://shishnet.org",
- "role": "Developer"
+ "name": "Marius Sarca",
+ "email": "marius.sarca@gmail.com"
+ },
+ {
+ "name": "Sorin Sarca",
+ "email": "sarca_sorin@hotmail.com"
}
],
- "description": "An API to write JSON traces as used by the Chrome Trace Viewer",
- "homepage": "https://github.com/shish/eventtracer-php",
+ "description": "A library that can be used to serialize closures (anonymous functions) and arbitrary objects.",
+ "homepage": "https://opis.io/closure",
+ "keywords": [
+ "anonymous functions",
+ "closure",
+ "function",
+ "serializable",
+ "serialization",
+ "serialize"
+ ],
"support": {
- "issues": "https://github.com/shish/eventtracer-php/issues",
- "source": "https://github.com/shish/eventtracer-php/tree/v2.1.0"
+ "issues": "https://github.com/opis/closure/issues",
+ "source": "https://github.com/opis/closure/tree/3.6.3"
},
- "time": "2023-02-04T12:26:41+00:00"
+ "time": "2022-01-27T09:35:39+00:00"
},
{
- "name": "shish/ffsphp",
- "version": "v1.2.0",
+ "name": "predis/predis",
+ "version": "v1.x-dev",
"source": {
"type": "git",
- "url": "https://github.com/shish/ffsphp.git",
- "reference": "a2a1f0fe59606b90460513b48bacb442630dd253"
+ "url": "https://github.com/predis/predis.git",
+ "reference": "deee2b6d605eb6401446f6f6354414ab7571a5a0"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/shish/ffsphp/zipball/a2a1f0fe59606b90460513b48bacb442630dd253",
- "reference": "a2a1f0fe59606b90460513b48bacb442630dd253",
+ "url": "https://api.github.com/repos/predis/predis/zipball/deee2b6d605eb6401446f6f6354414ab7571a5a0",
+ "reference": "deee2b6d605eb6401446f6f6354414ab7571a5a0",
"shasum": ""
},
"require": {
- "ext-pdo": "*",
- "php": "^8.0"
+ "php": ">=5.3.9"
},
"require-dev": {
- "friendsofphp/php-cs-fixer": "^3.12",
- "phpstan/phpstan": "^1.9",
- "phpunit/phpunit": "^9.0"
+ "phpunit/phpunit": "~4.8"
+ },
+ "suggest": {
+ "ext-curl": "Allows access to Webdis when paired with phpiredis",
+ "ext-phpiredis": "Allows faster serialization and deserialization of the Redis protocol"
},
"type": "library",
"autoload": {
"psr-4": {
- "FFSPHP\\": "src"
+ "Predis\\": "src/"
}
},
"notification-url": "https://packagist.org/downloads/",
@@ -863,48 +1175,64 @@
],
"authors": [
{
- "name": "Shish",
- "email": "webmaster@shishnet.org",
- "homepage": "http://shishnet.org",
- "role": "Developer"
+ "name": "Daniele Alessandri",
+ "email": "suppakilla@gmail.com",
+ "homepage": "http://clorophilla.net",
+ "role": "Creator & Maintainer"
+ },
+ {
+ "name": "Till Krüss",
+ "homepage": "https://till.im",
+ "role": "Maintainer"
}
],
- "description": "A collection of workarounds for stupid PHP things",
- "homepage": "https://github.com/shish/ffsphp",
+ "description": "Flexible and feature-complete Redis client for PHP and HHVM",
+ "homepage": "http://github.com/predis/predis",
+ "keywords": [
+ "nosql",
+ "predis",
+ "redis"
+ ],
"support": {
- "issues": "https://github.com/shish/ffsphp/issues",
- "source": "https://github.com/shish/ffsphp/tree/v1.2.0"
+ "issues": "https://github.com/predis/predis/issues",
+ "source": "https://github.com/predis/predis/tree/v1.x"
},
- "time": "2023-08-28T15:51:16+00:00"
+ "funding": [
+ {
+ "url": "https://github.com/sponsors/tillkruss",
+ "type": "github"
+ }
+ ],
+ "time": "2023-09-19T16:11:21+00:00"
},
{
- "name": "shish/gqla",
- "version": "dev-main",
+ "name": "psr/http-client",
+ "version": "dev-master",
"source": {
"type": "git",
- "url": "https://github.com/shish/gqla.git",
- "reference": "26bf0405445f4e32e68cd7f1ea2256e81c6c42cb"
+ "url": "https://github.com/php-fig/http-client.git",
+ "reference": "bb5906edc1c324c9a05aa0873d40117941e5fa90"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/shish/gqla/zipball/26bf0405445f4e32e68cd7f1ea2256e81c6c42cb",
- "reference": "26bf0405445f4e32e68cd7f1ea2256e81c6c42cb",
+ "url": "https://api.github.com/repos/php-fig/http-client/zipball/bb5906edc1c324c9a05aa0873d40117941e5fa90",
+ "reference": "bb5906edc1c324c9a05aa0873d40117941e5fa90",
"shasum": ""
},
"require": {
- "php": "^8.1",
- "webonyx/graphql-php": "^15.0"
- },
- "require-dev": {
- "friendsofphp/php-cs-fixer": "^3.12",
- "phpstan/phpstan": "^1.9",
- "phpunit/phpunit": "^9.0"
+ "php": "^7.0 || ^8.0",
+ "psr/http-message": "^1.0 || ^2.0"
},
"default-branch": true,
"type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.0.x-dev"
+ }
+ },
"autoload": {
"psr-4": {
- "GQLA\\": "src"
+ "Psr\\Http\\Client\\": "src/"
}
},
"notification-url": "https://packagist.org/downloads/",
@@ -913,52 +1241,51 @@
],
"authors": [
{
- "name": "Shish",
- "email": "webmaster@shishnet.org",
- "homepage": "https://shish.io",
- "role": "Developer"
+ "name": "PHP-FIG",
+ "homepage": "https://www.php-fig.org/"
}
],
- "description": "A set of annotations for generating graphql APIs",
- "homepage": "https://github.com/shish/gqla",
+ "description": "Common interface for HTTP clients",
+ "homepage": "https://github.com/php-fig/http-client",
"keywords": [
- "graphql"
+ "http",
+ "http-client",
+ "psr",
+ "psr-18"
],
"support": {
- "issues": "https://github.com/shish/gqla/issues",
- "source": "https://github.com/shish/gqla/tree/main"
+ "source": "https://github.com/php-fig/http-client"
},
- "time": "2023-03-03T00:12:44+00:00"
+ "time": "2023-09-23T14:17:50+00:00"
},
{
- "name": "shish/microcrud",
- "version": "v2.1.1",
+ "name": "psr/http-factory",
+ "version": "dev-master",
"source": {
"type": "git",
- "url": "https://github.com/shish/microcrud.git",
- "reference": "8f0c38af61e2543c2e11ad6face37ae34e4571cf"
+ "url": "https://github.com/php-fig/http-factory.git",
+ "reference": "7037f4b0950474e9d1350e8df89b15f1842085f6"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/shish/microcrud/zipball/8f0c38af61e2543c2e11ad6face37ae34e4571cf",
- "reference": "8f0c38af61e2543c2e11ad6face37ae34e4571cf",
+ "url": "https://api.github.com/repos/php-fig/http-factory/zipball/7037f4b0950474e9d1350e8df89b15f1842085f6",
+ "reference": "7037f4b0950474e9d1350e8df89b15f1842085f6",
"shasum": ""
},
"require": {
- "ext-pdo": "*",
- "php": "^8.0",
- "shish/ffsphp": "^1.0",
- "shish/microhtml": "^2.0.2"
- },
- "require-dev": {
- "friendsofphp/php-cs-fixer": "^3.12",
- "phpstan/phpstan": "^1.9",
- "phpunit/phpunit": "^9.0"
+ "php": ">=7.0.0",
+ "psr/http-message": "^1.0 || ^2.0"
},
+ "default-branch": true,
"type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.0.x-dev"
+ }
+ },
"autoload": {
"psr-4": {
- "MicroCRUD\\": "src"
+ "Psr\\Http\\Message\\": "src/"
}
},
"notification-url": "https://packagist.org/downloads/",
@@ -967,51 +1294,54 @@
],
"authors": [
{
- "name": "Shish",
- "email": "webmaster@shishnet.org",
- "homepage": "http://shishnet.org",
- "role": "Developer"
+ "name": "PHP-FIG",
+ "homepage": "https://www.php-fig.org/"
}
],
- "description": "A minimal CRUD generating library",
- "homepage": "https://github.com/shish/microcrud",
+ "description": "PSR-17: Common interfaces for PSR-7 HTTP message factories",
"keywords": [
- "crud",
- "generator"
+ "factory",
+ "http",
+ "message",
+ "psr",
+ "psr-17",
+ "psr-7",
+ "request",
+ "response"
],
"support": {
- "issues": "https://github.com/shish/microcrud/issues",
- "source": "https://github.com/shish/microcrud/tree/v2.1.1"
+ "source": "https://github.com/php-fig/http-factory"
},
- "time": "2023-11-11T21:25:53+00:00"
+ "time": "2023-09-22T11:16:44+00:00"
},
{
- "name": "shish/microhtml",
- "version": "v2.2.1",
+ "name": "psr/http-message",
+ "version": "dev-master",
"source": {
"type": "git",
- "url": "https://github.com/shish/microhtml.git",
- "reference": "824d8541c7f0662e26d03d65d865d8f13ea57a72"
+ "url": "https://github.com/php-fig/http-message.git",
+ "reference": "402d35bcb92c70c026d1a6a9883f06b2ead23d71"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/shish/microhtml/zipball/824d8541c7f0662e26d03d65d865d8f13ea57a72",
- "reference": "824d8541c7f0662e26d03d65d865d8f13ea57a72",
+ "url": "https://api.github.com/repos/php-fig/http-message/zipball/402d35bcb92c70c026d1a6a9883f06b2ead23d71",
+ "reference": "402d35bcb92c70c026d1a6a9883f06b2ead23d71",
"shasum": ""
},
"require": {
- "php": "^8.0"
- },
- "require-dev": {
- "friendsofphp/php-cs-fixer": "^3.12",
- "phpstan/phpstan": "^1.9",
- "phpunit/phpunit": "^9.0"
+ "php": "^7.2 || ^8.0"
},
+ "default-branch": true,
"type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "2.0.x-dev"
+ }
+ },
"autoload": {
- "files": [
- "src/microhtml.php"
- ]
+ "psr-4": {
+ "Psr\\Http\\Message\\": "src/"
+ }
},
"notification-url": "https://packagist.org/downloads/",
"license": [
@@ -1019,23 +1349,595 @@
],
"authors": [
{
- "name": "Shish",
- "email": "webmaster@shishnet.org",
- "homepage": "http://shishnet.org",
- "role": "Developer"
+ "name": "PHP-FIG",
+ "homepage": "https://www.php-fig.org/"
}
],
- "description": "A minimal HTML generating library",
- "homepage": "https://github.com/shish/microhtml",
+ "description": "Common interface for HTTP messages",
+ "homepage": "https://github.com/php-fig/http-message",
"keywords": [
- "generator",
- "html"
+ "http",
+ "http-message",
+ "psr",
+ "psr-7",
+ "request",
+ "response"
+ ],
+ "support": {
+ "source": "https://github.com/php-fig/http-message/tree/2.0"
+ },
+ "time": "2023-04-04T09:54:51+00:00"
+ },
+ {
+ "name": "psr/simple-cache",
+ "version": "1.0.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/php-fig/simple-cache.git",
+ "reference": "408d5eafb83c57f6365a3ca330ff23aa4a5fa39b"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/php-fig/simple-cache/zipball/408d5eafb83c57f6365a3ca330ff23aa4a5fa39b",
+ "reference": "408d5eafb83c57f6365a3ca330ff23aa4a5fa39b",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.3.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.0.x-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Psr\\SimpleCache\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "PHP-FIG",
+ "homepage": "http://www.php-fig.org/"
+ }
+ ],
+ "description": "Common interfaces for simple caching",
+ "keywords": [
+ "cache",
+ "caching",
+ "psr",
+ "psr-16",
+ "simple-cache"
+ ],
+ "support": {
+ "source": "https://github.com/php-fig/simple-cache/tree/master"
+ },
+ "time": "2017-10-23T01:57:42+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": "sabre/cache",
+ "version": "2.0.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sabre-io/cache.git",
+ "reference": "a843741b85025d8674bf4713121cae60172e6f86"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sabre-io/cache/zipball/a843741b85025d8674bf4713121cae60172e6f86",
+ "reference": "a843741b85025d8674bf4713121cae60172e6f86",
+ "shasum": ""
+ },
+ "require": {
+ "php": "^7.4 || ^8.0",
+ "psr/simple-cache": "^1.0"
+ },
+ "provide": {
+ "psr/simple-cache-implementation": "~1.0"
+ },
+ "require-dev": {
+ "friendsofphp/php-cs-fixer": "^3.14.0",
+ "phpstan/extension-installer": "^1.2",
+ "phpstan/phpstan": "^1.9",
+ "phpstan/phpstan-phpunit": "^1.3",
+ "phpstan/phpstan-strict-rules": "^1.4",
+ "phpunit/phpunit": "^9.6"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "Sabre\\Cache\\": "lib/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Evert Pot",
+ "email": "me@evertpot.com",
+ "homepage": "https://evertpot.com/",
+ "role": "Developer"
+ }
+ ],
+ "description": "Simple cache abstraction layer implementing PSR-16",
+ "homepage": "http://sabre.io/dav/",
+ "keywords": [
+ "apc",
+ "apcu",
+ "cache",
+ "memcache",
+ "memcached",
+ "psr-16",
+ "sabre",
+ "simple-cache"
+ ],
+ "support": {
+ "forum": "https://groups.google.com/group/sabredav-discuss",
+ "issues": "https://github.com/sabre-io/cache/issues",
+ "source": "https://github.com/fruux/sabre-skel"
+ },
+ "time": "2023-02-09T23:47:10+00:00"
+ },
+ {
+ "name": "shish/eventtracer-php",
+ "version": "v2.1.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/shish/eventtracer-php.git",
+ "reference": "5dfe2c090c8b7df772e982520c36f44b33ead035"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/shish/eventtracer-php/zipball/5dfe2c090c8b7df772e982520c36f44b33ead035",
+ "reference": "5dfe2c090c8b7df772e982520c36f44b33ead035",
+ "shasum": ""
+ },
+ "require": {
+ "ext-json": "*",
+ "php": "^8.0"
+ },
+ "require-dev": {
+ "friendsofphp/php-cs-fixer": "^3.12",
+ "phpstan/phpstan": "^1.9",
+ "phpunit/phpunit": "^9.0"
+ },
+ "type": "library",
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Shish",
+ "email": "webmaster@shishnet.org",
+ "homepage": "http://shishnet.org",
+ "role": "Developer"
+ }
+ ],
+ "description": "An API to write JSON traces as used by the Chrome Trace Viewer",
+ "homepage": "https://github.com/shish/eventtracer-php",
+ "support": {
+ "issues": "https://github.com/shish/eventtracer-php/issues",
+ "source": "https://github.com/shish/eventtracer-php/tree/v2.1.0"
+ },
+ "time": "2023-02-04T12:26:41+00:00"
+ },
+ {
+ "name": "shish/ffsphp",
+ "version": "v1.2.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/shish/ffsphp.git",
+ "reference": "a2a1f0fe59606b90460513b48bacb442630dd253"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/shish/ffsphp/zipball/a2a1f0fe59606b90460513b48bacb442630dd253",
+ "reference": "a2a1f0fe59606b90460513b48bacb442630dd253",
+ "shasum": ""
+ },
+ "require": {
+ "ext-pdo": "*",
+ "php": "^8.0"
+ },
+ "require-dev": {
+ "friendsofphp/php-cs-fixer": "^3.12",
+ "phpstan/phpstan": "^1.9",
+ "phpunit/phpunit": "^9.0"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "FFSPHP\\": "src"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Shish",
+ "email": "webmaster@shishnet.org",
+ "homepage": "http://shishnet.org",
+ "role": "Developer"
+ }
+ ],
+ "description": "A collection of workarounds for stupid PHP things",
+ "homepage": "https://github.com/shish/ffsphp",
+ "support": {
+ "issues": "https://github.com/shish/ffsphp/issues",
+ "source": "https://github.com/shish/ffsphp/tree/v1.2.0"
+ },
+ "time": "2023-08-28T15:51:16+00:00"
+ },
+ {
+ "name": "shish/gqla",
+ "version": "dev-main",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/shish/gqla.git",
+ "reference": "26bf0405445f4e32e68cd7f1ea2256e81c6c42cb"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/shish/gqla/zipball/26bf0405445f4e32e68cd7f1ea2256e81c6c42cb",
+ "reference": "26bf0405445f4e32e68cd7f1ea2256e81c6c42cb",
+ "shasum": ""
+ },
+ "require": {
+ "php": "^8.1",
+ "webonyx/graphql-php": "^15.0"
+ },
+ "require-dev": {
+ "friendsofphp/php-cs-fixer": "^3.12",
+ "phpstan/phpstan": "^1.9",
+ "phpunit/phpunit": "^9.0"
+ },
+ "default-branch": true,
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "GQLA\\": "src"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Shish",
+ "email": "webmaster@shishnet.org",
+ "homepage": "https://shish.io",
+ "role": "Developer"
+ }
+ ],
+ "description": "A set of annotations for generating graphql APIs",
+ "homepage": "https://github.com/shish/gqla",
+ "keywords": [
+ "graphql"
+ ],
+ "support": {
+ "issues": "https://github.com/shish/gqla/issues",
+ "source": "https://github.com/shish/gqla/tree/main"
+ },
+ "time": "2023-03-03T00:12:44+00:00"
+ },
+ {
+ "name": "shish/microcrud",
+ "version": "v2.1.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/shish/microcrud.git",
+ "reference": "8f0c38af61e2543c2e11ad6face37ae34e4571cf"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/shish/microcrud/zipball/8f0c38af61e2543c2e11ad6face37ae34e4571cf",
+ "reference": "8f0c38af61e2543c2e11ad6face37ae34e4571cf",
+ "shasum": ""
+ },
+ "require": {
+ "ext-pdo": "*",
+ "php": "^8.0",
+ "shish/ffsphp": "^1.0",
+ "shish/microhtml": "^2.0.2"
+ },
+ "require-dev": {
+ "friendsofphp/php-cs-fixer": "^3.12",
+ "phpstan/phpstan": "^1.9",
+ "phpunit/phpunit": "^9.0"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "MicroCRUD\\": "src"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Shish",
+ "email": "webmaster@shishnet.org",
+ "homepage": "http://shishnet.org",
+ "role": "Developer"
+ }
+ ],
+ "description": "A minimal CRUD generating library",
+ "homepage": "https://github.com/shish/microcrud",
+ "keywords": [
+ "crud",
+ "generator"
+ ],
+ "support": {
+ "issues": "https://github.com/shish/microcrud/issues",
+ "source": "https://github.com/shish/microcrud/tree/v2.1.1"
+ },
+ "time": "2023-11-11T21:25:53+00:00"
+ },
+ {
+ "name": "shish/microhtml",
+ "version": "v2.2.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/shish/microhtml.git",
+ "reference": "824d8541c7f0662e26d03d65d865d8f13ea57a72"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/shish/microhtml/zipball/824d8541c7f0662e26d03d65d865d8f13ea57a72",
+ "reference": "824d8541c7f0662e26d03d65d865d8f13ea57a72",
+ "shasum": ""
+ },
+ "require": {
+ "php": "^8.0"
+ },
+ "require-dev": {
+ "friendsofphp/php-cs-fixer": "^3.12",
+ "phpstan/phpstan": "^1.9",
+ "phpunit/phpunit": "^9.0"
+ },
+ "type": "library",
+ "autoload": {
+ "files": [
+ "src/microhtml.php"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Shish",
+ "email": "webmaster@shishnet.org",
+ "homepage": "http://shishnet.org",
+ "role": "Developer"
+ }
+ ],
+ "description": "A minimal HTML generating library",
+ "homepage": "https://github.com/shish/microhtml",
+ "keywords": [
+ "generator",
+ "html"
],
"support": {
"issues": "https://github.com/shish/microhtml/issues",
"source": "https://github.com/shish/microhtml/tree/v2.2.1"
},
- "time": "2023-08-17T16:39:06+00:00"
+ "time": "2023-08-17T16:39:06+00:00"
+ },
+ {
+ "name": "symfony/deprecation-contracts",
+ "version": "dev-main",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/deprecation-contracts.git",
+ "reference": "7c3aff79d10325257a001fcf92d991f24fc967cf"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/7c3aff79d10325257a001fcf92d991f24fc967cf",
+ "reference": "7c3aff79d10325257a001fcf92d991f24fc967cf",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.1"
+ },
+ "default-branch": true,
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-main": "3.4-dev"
+ },
+ "thanks": {
+ "name": "symfony/contracts",
+ "url": "https://github.com/symfony/contracts"
+ }
+ },
+ "autoload": {
+ "files": [
+ "function.php"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Nicolas Grekas",
+ "email": "p@tchwork.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "description": "A generic function and convention to trigger deprecation notices",
+ "homepage": "https://symfony.com",
+ "support": {
+ "source": "https://github.com/symfony/deprecation-contracts/tree/v3.4.0"
+ },
+ "funding": [
+ {
+ "url": "https://symfony.com/sponsor",
+ "type": "custom"
+ },
+ {
+ "url": "https://github.com/fabpot",
+ "type": "github"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2023-05-23T14:45:45+00:00"
+ },
+ {
+ "name": "symfony/polyfill-mbstring",
+ "version": "1.x-dev",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/polyfill-mbstring.git",
+ "reference": "42292d99c55abe617799667f454222c54c60e229"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/42292d99c55abe617799667f454222c54c60e229",
+ "reference": "42292d99c55abe617799667f454222c54c60e229",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=7.1"
+ },
+ "provide": {
+ "ext-mbstring": "*"
+ },
+ "suggest": {
+ "ext-mbstring": "For best performance"
+ },
+ "default-branch": true,
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-main": "1.28-dev"
+ },
+ "thanks": {
+ "name": "symfony/polyfill",
+ "url": "https://github.com/symfony/polyfill"
+ }
+ },
+ "autoload": {
+ "files": [
+ "bootstrap.php"
+ ],
+ "psr-4": {
+ "Symfony\\Polyfill\\Mbstring\\": ""
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Nicolas Grekas",
+ "email": "p@tchwork.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "description": "Symfony polyfill for the Mbstring extension",
+ "homepage": "https://symfony.com",
+ "keywords": [
+ "compatibility",
+ "mbstring",
+ "polyfill",
+ "portable",
+ "shim"
+ ],
+ "support": {
+ "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.28.0"
+ },
+ "funding": [
+ {
+ "url": "https://symfony.com/sponsor",
+ "type": "custom"
+ },
+ {
+ "url": "https://github.com/fabpot",
+ "type": "github"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2023-07-28T09:04:16+00:00"
},
{
"name": "tbela99/css",
@@ -1476,312 +2378,54 @@
},
{
"name": "Johannes Schmitt",
- "email": "schmittjoh@gmail.com"
- }
- ],
- "description": "Docblock Annotations Parser",
- "homepage": "https://www.doctrine-project.org/projects/annotations.html",
- "keywords": [
- "annotations",
- "docblock",
- "parser"
- ],
- "support": {
- "issues": "https://github.com/doctrine/annotations/issues",
- "source": "https://github.com/doctrine/annotations/tree/2.0.x"
- },
- "time": "2023-08-23T17:36:07+00:00"
- },
- {
- "name": "doctrine/instantiator",
- "version": "2.0.x-dev",
- "source": {
- "type": "git",
- "url": "https://github.com/doctrine/instantiator.git",
- "reference": "6c0ee619435c5d4f3bc515ab1514cf4cf1006c6e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/doctrine/instantiator/zipball/6c0ee619435c5d4f3bc515ab1514cf4cf1006c6e",
- "reference": "6c0ee619435c5d4f3bc515ab1514cf4cf1006c6e",
- "shasum": ""
- },
- "require": {
- "php": "^8.1"
- },
- "require-dev": {
- "doctrine/coding-standard": "^12",
- "ext-pdo": "*",
- "ext-phar": "*",
- "phpbench/phpbench": "^1.2",
- "phpstan/phpstan": "^1.9.4",
- "phpstan/phpstan-phpunit": "^1.3",
- "phpunit/phpunit": "^10.5",
- "vimeo/psalm": "^5.4"
- },
- "default-branch": true,
- "type": "library",
- "autoload": {
- "psr-4": {
- "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Marco Pivetta",
- "email": "ocramius@gmail.com",
- "homepage": "https://ocramius.github.io/"
- }
- ],
- "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors",
- "homepage": "https://www.doctrine-project.org/projects/instantiator.html",
- "keywords": [
- "constructor",
- "instantiate"
- ],
- "support": {
- "issues": "https://github.com/doctrine/instantiator/issues",
- "source": "https://github.com/doctrine/instantiator/tree/2.0.x"
- },
- "funding": [
- {
- "url": "https://www.doctrine-project.org/sponsorship.html",
- "type": "custom"
- },
- {
- "url": "https://www.patreon.com/phpdoctrine",
- "type": "patreon"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/doctrine%2Finstantiator",
- "type": "tidelift"
- }
- ],
- "time": "2023-12-09T14:19:21+00:00"
- },
- {
- "name": "doctrine/lexer",
- "version": "3.1.x-dev",
- "source": {
- "type": "git",
- "url": "https://github.com/doctrine/lexer.git",
- "reference": "0d54c073afb397d5896df60cc34170cf37dfad5e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/doctrine/lexer/zipball/0d54c073afb397d5896df60cc34170cf37dfad5e",
- "reference": "0d54c073afb397d5896df60cc34170cf37dfad5e",
- "shasum": ""
- },
- "require": {
- "php": "^8.1"
- },
- "require-dev": {
- "doctrine/coding-standard": "^10",
- "phpstan/phpstan": "^1.9",
- "phpunit/phpunit": "^9.5",
- "psalm/plugin-phpunit": "^0.18.3",
- "vimeo/psalm": "^5.0"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "Doctrine\\Common\\Lexer\\": "src"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Guilherme Blanco",
- "email": "guilhermeblanco@gmail.com"
- },
- {
- "name": "Roman Borschel",
- "email": "roman@code-factory.org"
- },
- {
- "name": "Johannes Schmitt",
- "email": "schmittjoh@gmail.com"
- }
- ],
- "description": "PHP Doctrine Lexer parser library that can be used in Top-Down, Recursive Descent Parsers.",
- "homepage": "https://www.doctrine-project.org/projects/lexer.html",
- "keywords": [
- "annotations",
- "docblock",
- "lexer",
- "parser",
- "php"
- ],
- "support": {
- "issues": "https://github.com/doctrine/lexer/issues",
- "source": "https://github.com/doctrine/lexer/tree/3.1.x"
- },
- "funding": [
- {
- "url": "https://www.doctrine-project.org/sponsorship.html",
- "type": "custom"
- },
- {
- "url": "https://www.patreon.com/phpdoctrine",
- "type": "patreon"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/doctrine%2Flexer",
- "type": "tidelift"
- }
- ],
- "time": "2023-07-05T07:23:35+00:00"
- },
- {
- "name": "friendsofphp/php-cs-fixer",
- "version": "v3.41.1",
- "source": {
- "type": "git",
- "url": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer.git",
- "reference": "8b6ae8dcbaf23f09680643ab832a4a3a260265f6"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/PHP-CS-Fixer/PHP-CS-Fixer/zipball/8b6ae8dcbaf23f09680643ab832a4a3a260265f6",
- "reference": "8b6ae8dcbaf23f09680643ab832a4a3a260265f6",
- "shasum": ""
- },
- "require": {
- "composer/semver": "^3.4",
- "composer/xdebug-handler": "^3.0.3",
- "ext-json": "*",
- "ext-tokenizer": "*",
- "php": "^7.4 || ^8.0",
- "sebastian/diff": "^4.0 || ^5.0",
- "symfony/console": "^5.4 || ^6.0 || ^7.0",
- "symfony/event-dispatcher": "^5.4 || ^6.0 || ^7.0",
- "symfony/filesystem": "^5.4 || ^6.0 || ^7.0",
- "symfony/finder": "^5.4 || ^6.0 || ^7.0",
- "symfony/options-resolver": "^5.4 || ^6.0 || ^7.0",
- "symfony/polyfill-mbstring": "^1.28",
- "symfony/polyfill-php80": "^1.28",
- "symfony/polyfill-php81": "^1.28",
- "symfony/process": "^5.4 || ^6.0 || ^7.0",
- "symfony/stopwatch": "^5.4 || ^6.0 || ^7.0"
- },
- "require-dev": {
- "facile-it/paraunit": "^1.3 || ^2.0",
- "justinrainbow/json-schema": "^5.2",
- "keradus/cli-executor": "^2.1",
- "mikey179/vfsstream": "^1.6.11",
- "php-coveralls/php-coveralls": "^2.7",
- "php-cs-fixer/accessible-object": "^1.1",
- "php-cs-fixer/phpunit-constraint-isidenticalstring": "^1.4",
- "php-cs-fixer/phpunit-constraint-xmlmatchesxsd": "^1.4",
- "phpunit/phpunit": "^9.6",
- "symfony/phpunit-bridge": "^6.3.8 || ^7.0",
- "symfony/yaml": "^5.4 || ^6.0 || ^7.0"
- },
- "suggest": {
- "ext-dom": "For handling output formats in XML",
- "ext-mbstring": "For handling non-UTF8 characters."
- },
- "bin": [
- "php-cs-fixer"
- ],
- "type": "application",
- "autoload": {
- "psr-4": {
- "PhpCsFixer\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Dariusz Rumiński",
- "email": "dariusz.ruminski@gmail.com"
+ "email": "schmittjoh@gmail.com"
}
],
- "description": "A tool to automatically fix PHP code style",
+ "description": "Docblock Annotations Parser",
+ "homepage": "https://www.doctrine-project.org/projects/annotations.html",
"keywords": [
- "Static code analysis",
- "fixer",
- "standards",
- "static analysis"
+ "annotations",
+ "docblock",
+ "parser"
],
"support": {
- "issues": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues",
- "source": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/tree/v3.41.1"
+ "issues": "https://github.com/doctrine/annotations/issues",
+ "source": "https://github.com/doctrine/annotations/tree/2.0.x"
},
- "funding": [
- {
- "url": "https://github.com/keradus",
- "type": "github"
- }
- ],
- "time": "2023-12-10T19:59:27+00:00"
+ "time": "2023-08-23T17:36:07+00:00"
},
{
- "name": "guzzlehttp/guzzle",
- "version": "7.9.x-dev",
+ "name": "doctrine/instantiator",
+ "version": "2.0.x-dev",
"source": {
"type": "git",
- "url": "https://github.com/guzzle/guzzle.git",
- "reference": "41042bc7ab002487b876a0683fc8dce04ddce104"
+ "url": "https://github.com/doctrine/instantiator.git",
+ "reference": "6c0ee619435c5d4f3bc515ab1514cf4cf1006c6e"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/guzzle/guzzle/zipball/41042bc7ab002487b876a0683fc8dce04ddce104",
- "reference": "41042bc7ab002487b876a0683fc8dce04ddce104",
+ "url": "https://api.github.com/repos/doctrine/instantiator/zipball/6c0ee619435c5d4f3bc515ab1514cf4cf1006c6e",
+ "reference": "6c0ee619435c5d4f3bc515ab1514cf4cf1006c6e",
"shasum": ""
},
"require": {
- "ext-json": "*",
- "guzzlehttp/promises": "^1.5.3 || ^2.0.1",
- "guzzlehttp/psr7": "^1.9.1 || ^2.5.1",
- "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"
+ "php": "^8.1"
},
"require-dev": {
- "bamarni/composer-bin-plugin": "^1.8.2",
- "ext-curl": "*",
- "php-http/client-integration-tests": "dev-master#2c025848417c1135031fdf9c728ee53d0a7ceaee as 3.0.999",
- "php-http/message-factory": "^1.1",
- "phpunit/phpunit": "^8.5.36 || ^9.6.15",
- "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"
+ "doctrine/coding-standard": "^12",
+ "ext-pdo": "*",
+ "ext-phar": "*",
+ "phpbench/phpbench": "^1.2",
+ "phpstan/phpstan": "^1.9.4",
+ "phpstan/phpstan-phpunit": "^1.3",
+ "phpunit/phpunit": "^10.5",
+ "vimeo/psalm": "^5.4"
},
+ "default-branch": true,
"type": "library",
- "extra": {
- "bamarni-bin": {
- "bin-links": true,
- "forward-command": false
- }
- },
"autoload": {
- "files": [
- "src/functions_include.php"
- ],
"psr-4": {
- "GuzzleHttp\\": "src/"
+ "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/"
}
},
"notification-url": "https://packagist.org/downloads/",
@@ -1790,105 +2434,65 @@
],
"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"
+ "name": "Marco Pivetta",
+ "email": "ocramius@gmail.com",
+ "homepage": "https://ocramius.github.io/"
}
],
- "description": "Guzzle is a PHP HTTP client library",
+ "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors",
+ "homepage": "https://www.doctrine-project.org/projects/instantiator.html",
"keywords": [
- "client",
- "curl",
- "framework",
- "http",
- "http client",
- "psr-18",
- "psr-7",
- "rest",
- "web service"
+ "constructor",
+ "instantiate"
],
"support": {
- "issues": "https://github.com/guzzle/guzzle/issues",
- "source": "https://github.com/guzzle/guzzle/tree/7.8.1"
+ "issues": "https://github.com/doctrine/instantiator/issues",
+ "source": "https://github.com/doctrine/instantiator/tree/2.0.x"
},
"funding": [
{
- "url": "https://github.com/GrahamCampbell",
- "type": "github"
+ "url": "https://www.doctrine-project.org/sponsorship.html",
+ "type": "custom"
},
{
- "url": "https://github.com/Nyholm",
- "type": "github"
+ "url": "https://www.patreon.com/phpdoctrine",
+ "type": "patreon"
},
{
- "url": "https://tidelift.com/funding/github/packagist/guzzlehttp/guzzle",
+ "url": "https://tidelift.com/funding/github/packagist/doctrine%2Finstantiator",
"type": "tidelift"
}
],
- "time": "2023-12-03T20:35:24+00:00"
+ "time": "2023-12-09T14:19:21+00:00"
},
{
- "name": "guzzlehttp/promises",
- "version": "2.0.x-dev",
+ "name": "doctrine/lexer",
+ "version": "3.1.x-dev",
"source": {
"type": "git",
- "url": "https://github.com/guzzle/promises.git",
- "reference": "bbff78d96034045e58e13dedd6ad91b5d1253223"
+ "url": "https://github.com/doctrine/lexer.git",
+ "reference": "0d54c073afb397d5896df60cc34170cf37dfad5e"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/guzzle/promises/zipball/bbff78d96034045e58e13dedd6ad91b5d1253223",
- "reference": "bbff78d96034045e58e13dedd6ad91b5d1253223",
+ "url": "https://api.github.com/repos/doctrine/lexer/zipball/0d54c073afb397d5896df60cc34170cf37dfad5e",
+ "reference": "0d54c073afb397d5896df60cc34170cf37dfad5e",
"shasum": ""
},
"require": {
- "php": "^7.2.5 || ^8.0"
+ "php": "^8.1"
},
"require-dev": {
- "bamarni/composer-bin-plugin": "^1.8.2",
- "phpunit/phpunit": "^8.5.36 || ^9.6.15"
+ "doctrine/coding-standard": "^10",
+ "phpstan/phpstan": "^1.9",
+ "phpunit/phpunit": "^9.5",
+ "psalm/plugin-phpunit": "^0.18.3",
+ "vimeo/psalm": "^5.0"
},
- "default-branch": true,
"type": "library",
- "extra": {
- "bamarni-bin": {
- "bin-links": true,
- "forward-command": false
- }
- },
"autoload": {
"psr-4": {
- "GuzzleHttp\\Promise\\": "src/"
+ "Doctrine\\Common\\Lexer\\": "src"
}
},
"notification-url": "https://packagist.org/downloads/",
@@ -1897,93 +2501,103 @@
],
"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": "Guilherme Blanco",
+ "email": "guilhermeblanco@gmail.com"
},
{
- "name": "Tobias Nyholm",
- "email": "tobias.nyholm@gmail.com",
- "homepage": "https://github.com/Nyholm"
+ "name": "Roman Borschel",
+ "email": "roman@code-factory.org"
},
{
- "name": "Tobias Schultze",
- "email": "webmaster@tubo-world.de",
- "homepage": "https://github.com/Tobion"
+ "name": "Johannes Schmitt",
+ "email": "schmittjoh@gmail.com"
}
],
- "description": "Guzzle promises library",
+ "description": "PHP Doctrine Lexer parser library that can be used in Top-Down, Recursive Descent Parsers.",
+ "homepage": "https://www.doctrine-project.org/projects/lexer.html",
"keywords": [
- "promise"
+ "annotations",
+ "docblock",
+ "lexer",
+ "parser",
+ "php"
],
"support": {
- "issues": "https://github.com/guzzle/promises/issues",
- "source": "https://github.com/guzzle/promises/tree/2.0.2"
+ "issues": "https://github.com/doctrine/lexer/issues",
+ "source": "https://github.com/doctrine/lexer/tree/3.1.x"
},
"funding": [
{
- "url": "https://github.com/GrahamCampbell",
- "type": "github"
+ "url": "https://www.doctrine-project.org/sponsorship.html",
+ "type": "custom"
},
{
- "url": "https://github.com/Nyholm",
- "type": "github"
+ "url": "https://www.patreon.com/phpdoctrine",
+ "type": "patreon"
},
{
- "url": "https://tidelift.com/funding/github/packagist/guzzlehttp/promises",
+ "url": "https://tidelift.com/funding/github/packagist/doctrine%2Flexer",
"type": "tidelift"
}
],
- "time": "2023-12-03T20:19:20+00:00"
+ "time": "2023-07-05T07:23:35+00:00"
},
{
- "name": "guzzlehttp/psr7",
- "version": "2.6.x-dev",
+ "name": "friendsofphp/php-cs-fixer",
+ "version": "v3.41.1",
"source": {
"type": "git",
- "url": "https://github.com/guzzle/psr7.git",
- "reference": "45b30f99ac27b5ca93cb4831afe16285f57b8221"
+ "url": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer.git",
+ "reference": "8b6ae8dcbaf23f09680643ab832a4a3a260265f6"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/guzzle/psr7/zipball/45b30f99ac27b5ca93cb4831afe16285f57b8221",
- "reference": "45b30f99ac27b5ca93cb4831afe16285f57b8221",
+ "url": "https://api.github.com/repos/PHP-CS-Fixer/PHP-CS-Fixer/zipball/8b6ae8dcbaf23f09680643ab832a4a3a260265f6",
+ "reference": "8b6ae8dcbaf23f09680643ab832a4a3a260265f6",
"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"
+ "composer/semver": "^3.4",
+ "composer/xdebug-handler": "^3.0.3",
+ "ext-json": "*",
+ "ext-tokenizer": "*",
+ "php": "^7.4 || ^8.0",
+ "sebastian/diff": "^4.0 || ^5.0",
+ "symfony/console": "^5.4 || ^6.0 || ^7.0",
+ "symfony/event-dispatcher": "^5.4 || ^6.0 || ^7.0",
+ "symfony/filesystem": "^5.4 || ^6.0 || ^7.0",
+ "symfony/finder": "^5.4 || ^6.0 || ^7.0",
+ "symfony/options-resolver": "^5.4 || ^6.0 || ^7.0",
+ "symfony/polyfill-mbstring": "^1.28",
+ "symfony/polyfill-php80": "^1.28",
+ "symfony/polyfill-php81": "^1.28",
+ "symfony/process": "^5.4 || ^6.0 || ^7.0",
+ "symfony/stopwatch": "^5.4 || ^6.0 || ^7.0"
},
"require-dev": {
- "bamarni/composer-bin-plugin": "^1.8.2",
- "http-interop/http-factory-tests": "^0.9",
- "phpunit/phpunit": "^8.5.36 || ^9.6.15"
+ "facile-it/paraunit": "^1.3 || ^2.0",
+ "justinrainbow/json-schema": "^5.2",
+ "keradus/cli-executor": "^2.1",
+ "mikey179/vfsstream": "^1.6.11",
+ "php-coveralls/php-coveralls": "^2.7",
+ "php-cs-fixer/accessible-object": "^1.1",
+ "php-cs-fixer/phpunit-constraint-isidenticalstring": "^1.4",
+ "php-cs-fixer/phpunit-constraint-xmlmatchesxsd": "^1.4",
+ "phpunit/phpunit": "^9.6",
+ "symfony/phpunit-bridge": "^6.3.8 || ^7.0",
+ "symfony/yaml": "^5.4 || ^6.0 || ^7.0"
},
"suggest": {
- "laminas/laminas-httphandlerrunner": "Emit PSR-7 responses"
- },
- "default-branch": true,
- "type": "library",
- "extra": {
- "bamarni-bin": {
- "bin-links": true,
- "forward-command": false
- }
+ "ext-dom": "For handling output formats in XML",
+ "ext-mbstring": "For handling non-UTF8 characters."
},
+ "bin": [
+ "php-cs-fixer"
+ ],
+ "type": "application",
"autoload": {
"psr-4": {
- "GuzzleHttp\\Psr7\\": "src/"
+ "PhpCsFixer\\": "src/"
}
},
"notification-url": "https://packagist.org/downloads/",
@@ -1992,71 +2606,32 @@
],
"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": "Fabien Potencier",
+ "email": "fabien@symfony.com"
},
{
- "name": "Márk Sági-Kazár",
- "email": "mark.sagikazar@gmail.com",
- "homepage": "https://sagikazarmark.hu"
+ "name": "Dariusz Rumiński",
+ "email": "dariusz.ruminski@gmail.com"
}
],
- "description": "PSR-7 message implementation that also provides common utility methods",
+ "description": "A tool to automatically fix PHP code style",
"keywords": [
- "http",
- "message",
- "psr-7",
- "request",
- "response",
- "stream",
- "uri",
- "url"
+ "Static code analysis",
+ "fixer",
+ "standards",
+ "static analysis"
],
"support": {
- "issues": "https://github.com/guzzle/psr7/issues",
- "source": "https://github.com/guzzle/psr7/tree/2.6.2"
+ "issues": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues",
+ "source": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/tree/v3.41.1"
},
"funding": [
{
- "url": "https://github.com/GrahamCampbell",
- "type": "github"
- },
- {
- "url": "https://github.com/Nyholm",
+ "url": "https://github.com/keradus",
"type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/guzzlehttp/psr7",
- "type": "tidelift"
}
],
- "time": "2023-12-03T20:05:35+00:00"
+ "time": "2023-12-10T19:59:27+00:00"
},
{
"name": "jms/metadata",
@@ -3136,180 +3711,19 @@
"reference": "707984727bd5b2b670e59559d3ed2500240cf875",
"shasum": ""
},
- "require": {
- "php": ">=7.4.0"
- },
- "default-branch": true,
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Psr\\Container\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "PHP-FIG",
- "homepage": "https://www.php-fig.org/"
- }
- ],
- "description": "Common Container Interface (PHP FIG PSR-11)",
- "homepage": "https://github.com/php-fig/container",
- "keywords": [
- "PSR-11",
- "container",
- "container-interface",
- "container-interop",
- "psr"
- ],
- "support": {
- "issues": "https://github.com/php-fig/container/issues",
- "source": "https://github.com/php-fig/container"
- },
- "time": "2023-09-22T11:11:30+00:00"
- },
- {
- "name": "psr/event-dispatcher",
- "version": "dev-master",
- "source": {
- "type": "git",
- "url": "https://github.com/php-fig/event-dispatcher.git",
- "reference": "977ffcf551e3bfb73d90aac3e8e1583fd8d2f89a"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-fig/event-dispatcher/zipball/977ffcf551e3bfb73d90aac3e8e1583fd8d2f89a",
- "reference": "977ffcf551e3bfb73d90aac3e8e1583fd8d2f89a",
- "shasum": ""
- },
- "require": {
- "php": ">=7.2.0"
- },
- "suggest": {
- "fig/event-dispatcher-util": "Provides some useful PSR-14 utilities"
- },
- "default-branch": true,
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Psr\\EventDispatcher\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "PHP-FIG",
- "homepage": "https://www.php-fig.org/"
- }
- ],
- "description": "Standard interfaces for event handling.",
- "keywords": [
- "events",
- "psr",
- "psr-14"
- ],
- "support": {
- "source": "https://github.com/php-fig/event-dispatcher"
- },
- "time": "2023-09-22T11:10:57+00:00"
- },
- {
- "name": "psr/http-client",
- "version": "dev-master",
- "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"
- },
- "default-branch": true,
- "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": "dev-master",
- "source": {
- "type": "git",
- "url": "https://github.com/php-fig/http-factory.git",
- "reference": "7037f4b0950474e9d1350e8df89b15f1842085f6"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-fig/http-factory/zipball/7037f4b0950474e9d1350e8df89b15f1842085f6",
- "reference": "7037f4b0950474e9d1350e8df89b15f1842085f6",
- "shasum": ""
- },
- "require": {
- "php": ">=7.0.0",
- "psr/http-message": "^1.0 || ^2.0"
+ "require": {
+ "php": ">=7.4.0"
},
"default-branch": true,
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.0.x-dev"
+ "dev-master": "2.0.x-dev"
}
},
"autoload": {
"psr-4": {
- "Psr\\Http\\Message\\": "src/"
+ "Psr\\Container\\": "src/"
}
},
"notification-url": "https://packagist.org/downloads/",
@@ -3322,49 +3736,51 @@
"homepage": "https://www.php-fig.org/"
}
],
- "description": "PSR-17: Common interfaces for PSR-7 HTTP message factories",
+ "description": "Common Container Interface (PHP FIG PSR-11)",
+ "homepage": "https://github.com/php-fig/container",
"keywords": [
- "factory",
- "http",
- "message",
- "psr",
- "psr-17",
- "psr-7",
- "request",
- "response"
+ "PSR-11",
+ "container",
+ "container-interface",
+ "container-interop",
+ "psr"
],
"support": {
- "source": "https://github.com/php-fig/http-factory"
+ "issues": "https://github.com/php-fig/container/issues",
+ "source": "https://github.com/php-fig/container"
},
- "time": "2023-09-22T11:16:44+00:00"
+ "time": "2023-09-22T11:11:30+00:00"
},
{
- "name": "psr/http-message",
+ "name": "psr/event-dispatcher",
"version": "dev-master",
"source": {
"type": "git",
- "url": "https://github.com/php-fig/http-message.git",
- "reference": "402d35bcb92c70c026d1a6a9883f06b2ead23d71"
+ "url": "https://github.com/php-fig/event-dispatcher.git",
+ "reference": "977ffcf551e3bfb73d90aac3e8e1583fd8d2f89a"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/php-fig/http-message/zipball/402d35bcb92c70c026d1a6a9883f06b2ead23d71",
- "reference": "402d35bcb92c70c026d1a6a9883f06b2ead23d71",
+ "url": "https://api.github.com/repos/php-fig/event-dispatcher/zipball/977ffcf551e3bfb73d90aac3e8e1583fd8d2f89a",
+ "reference": "977ffcf551e3bfb73d90aac3e8e1583fd8d2f89a",
"shasum": ""
},
"require": {
- "php": "^7.2 || ^8.0"
+ "php": ">=7.2.0"
+ },
+ "suggest": {
+ "fig/event-dispatcher-util": "Provides some useful PSR-14 utilities"
},
"default-branch": true,
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.0.x-dev"
+ "dev-master": "1.0.x-dev"
}
},
"autoload": {
"psr-4": {
- "Psr\\Http\\Message\\": "src/"
+ "Psr\\EventDispatcher\\": "src/"
}
},
"notification-url": "https://packagist.org/downloads/",
@@ -3377,20 +3793,16 @@
"homepage": "https://www.php-fig.org/"
}
],
- "description": "Common interface for HTTP messages",
- "homepage": "https://github.com/php-fig/http-message",
+ "description": "Standard interfaces for event handling.",
"keywords": [
- "http",
- "http-message",
+ "events",
"psr",
- "psr-7",
- "request",
- "response"
+ "psr-14"
],
"support": {
- "source": "https://github.com/php-fig/http-message/tree/2.0"
+ "source": "https://github.com/php-fig/event-dispatcher"
},
- "time": "2023-04-04T09:54:51+00:00"
+ "time": "2023-09-22T11:10:57+00:00"
},
{
"name": "psr/log",
@@ -3443,50 +3855,6 @@
},
"time": "2021-07-14T16:46:02+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": "scrutinizer/ocular",
"version": "1.9",
@@ -4564,74 +4932,6 @@
],
"time": "2023-12-10T16:15:48+00:00"
},
- {
- "name": "symfony/deprecation-contracts",
- "version": "dev-main",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/deprecation-contracts.git",
- "reference": "7c3aff79d10325257a001fcf92d991f24fc967cf"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/7c3aff79d10325257a001fcf92d991f24fc967cf",
- "reference": "7c3aff79d10325257a001fcf92d991f24fc967cf",
- "shasum": ""
- },
- "require": {
- "php": ">=8.1"
- },
- "default-branch": true,
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-main": "3.4-dev"
- },
- "thanks": {
- "name": "symfony/contracts",
- "url": "https://github.com/symfony/contracts"
- }
- },
- "autoload": {
- "files": [
- "function.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Nicolas Grekas",
- "email": "p@tchwork.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "A generic function and convention to trigger deprecation notices",
- "homepage": "https://symfony.com",
- "support": {
- "source": "https://github.com/symfony/deprecation-contracts/tree/v3.4.0"
- },
- "funding": [
- {
- "url": "https://symfony.com/sponsor",
- "type": "custom"
- },
- {
- "url": "https://github.com/fabpot",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
- "type": "tidelift"
- }
- ],
- "time": "2023-05-23T14:45:45+00:00"
- },
{
"name": "symfony/event-dispatcher",
"version": "6.4.x-dev",
@@ -5233,90 +5533,6 @@
],
"time": "2023-01-26T09:26:14+00:00"
},
- {
- "name": "symfony/polyfill-mbstring",
- "version": "1.x-dev",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/polyfill-mbstring.git",
- "reference": "42292d99c55abe617799667f454222c54c60e229"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/42292d99c55abe617799667f454222c54c60e229",
- "reference": "42292d99c55abe617799667f454222c54c60e229",
- "shasum": ""
- },
- "require": {
- "php": ">=7.1"
- },
- "provide": {
- "ext-mbstring": "*"
- },
- "suggest": {
- "ext-mbstring": "For best performance"
- },
- "default-branch": true,
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-main": "1.28-dev"
- },
- "thanks": {
- "name": "symfony/polyfill",
- "url": "https://github.com/symfony/polyfill"
- }
- },
- "autoload": {
- "files": [
- "bootstrap.php"
- ],
- "psr-4": {
- "Symfony\\Polyfill\\Mbstring\\": ""
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Nicolas Grekas",
- "email": "p@tchwork.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony polyfill for the Mbstring extension",
- "homepage": "https://symfony.com",
- "keywords": [
- "compatibility",
- "mbstring",
- "polyfill",
- "portable",
- "shim"
- ],
- "support": {
- "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.28.0"
- },
- "funding": [
- {
- "url": "https://symfony.com/sponsor",
- "type": "custom"
- },
- {
- "url": "https://github.com/fabpot",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
- "type": "tidelift"
- }
- ],
- "time": "2023-07-28T09:04:16+00:00"
- },
{
"name": "symfony/polyfill-php80",
"version": "1.x-dev",
@@ -5843,5 +6059,5 @@
"platform-overrides": {
"php": "8.1.0"
},
- "plugin-api-version": "2.6.0"
+ "plugin-api-version": "2.3.0"
}
diff --git a/ext/s3/config.php b/ext/s3/config.php
new file mode 100644
index 000000000..818f2a353
--- /dev/null
+++ b/ext/s3/config.php
@@ -0,0 +1,13 @@
+ self::SHISH_EMAIL];
+ public string $license = self::LICENSE_GPLV2;
+ public string $description = "Push post updates to S3";
+}
diff --git a/ext/s3/main.php b/ext/s3/main.php
new file mode 100644
index 000000000..f127de371
--- /dev/null
+++ b/ext/s3/main.php
@@ -0,0 +1,148 @@
+panel->create_new_block("S3 CDN");
+ $sb->add_text_option(S3Config::ACCESS_KEY_ID, "Access Key ID: ");
+ $sb->add_text_option(S3Config::ACCESS_KEY_SECRET, "
Access Key Secret: ");
+ $sb->add_text_option(S3Config::ENDPOINT, "
Endpoint: ");
+ $sb->add_text_option(S3Config::IMAGE_BUCKET, "
Image Bucket: ");
+ }
+
+ public function onCommand(CommandEvent $event)
+ {
+ if ($event->cmd == "help") {
+ print "\ts3-sync \n";
+ print "\t\tsync a post to s3\n\n";
+ print "\ts3-rm \n";
+ print "\t\tdelete a leftover file from s3\n\n";
+ }
+ if ($event->cmd == "s3-sync") {
+ if (preg_match('/^(\d+)-(\d+)$/', $event->args[0], $matches)) {
+ $start = (int)$matches[1];
+ $end = (int)$matches[2];
+ } else {
+ $start = (int)$event->args[0];
+ $end = $start;
+ }
+ foreach(Search::find_images_iterable(tags: ["order=id", "id>=$start", "id<=$end"]) as $image) {
+ print("{$image->id}: {$image->hash}\n");
+ ob_flush();
+ $this->sync_post($image);
+ }
+ }
+ if ($event->cmd == "s3-rm") {
+ foreach($event->args as $hash) {
+ print("{$hash}\n");
+ ob_flush();
+ $this->remove_file($hash);
+ }
+ }
+ }
+
+ public function onImageAddition(ImageAdditionEvent $event)
+ {
+ $this->sync_post($event->image);
+ }
+
+ public function onTagSet(TagSetEvent $event)
+ {
+ // pretend that tags were set already so that sync works
+ $orig_tags = $event->image->tag_array;
+ $event->image->tag_array = $event->tags;
+ $this->sync_post($event->image);
+ $event->image->tag_array = $orig_tags;
+ }
+
+ public function onImageDeletion(ImageDeletionEvent $event)
+ {
+ $this->remove_file($event->image->hash);
+ }
+
+ public function onImageReplace(ImageReplaceEvent $event)
+ {
+ $existing = Image::by_id($event->id);
+ $this->remove_file($existing->hash);
+ $this->sync_post($event->image);
+ }
+
+ // utils
+ private function get_client()
+ {
+ global $config;
+ $access_key_id = $config->get_string(S3Config::ACCESS_KEY_ID);
+ $access_key_secret = $config->get_string(S3Config::ACCESS_KEY_SECRET);
+ if(is_null($access_key_id) || is_null($access_key_secret)) {
+ return null;
+ }
+ $endpoint = $config->get_string(S3Config::ENDPOINT);
+ $credentials = new \Aws\Credentials\Credentials($access_key_id, $access_key_secret);
+ return new \Aws\S3\S3Client([
+ 'region' => 'auto',
+ 'endpoint' => $endpoint,
+ 'version' => 'latest',
+ 'credentials' => $credentials,
+ ]);
+ }
+
+ private function hash_to_path(string $hash)
+ {
+ $ha = substr($hash, 0, 2);
+ $sh = substr($hash, 2, 2);
+ return "$ha/$sh/$hash";
+ }
+
+ // underlying s3 interaction functions
+ private function sync_post(Image $image)
+ {
+ global $config;
+
+ // multiple events can trigger a sync,
+ // let's only do one per request
+ if(in_array($image->id, self::$synced)) {
+ return;
+ }
+ self::$synced[] = $image->id;
+
+ $client = $this->get_client();
+ if(is_null($client)) {
+ return;
+ }
+ $image_bucket = $config->get_string(S3Config::IMAGE_BUCKET);
+ $friendly = $image->parse_link_template('$id - $tags.$ext');
+ $client->putObject([
+ 'Bucket' => $image_bucket,
+ 'Key' => $this->hash_to_path($image->hash),
+ 'Body' => file_get_contents($image->get_image_filename()),
+ 'ACL' => 'public-read',
+ 'ContentType' => $image->get_mime(),
+ 'ContentDisposition' => "inline; filename=\"$friendly\"",
+ ]);
+ }
+
+ private function remove_file(string $hash)
+ {
+ global $config;
+ $client = $this->get_client();
+ if(is_null($client)) {
+ return;
+ }
+ $image_bucket = $config->get_string(S3Config::IMAGE_BUCKET);
+ $client->deleteObject([
+ 'Bucket' => $image_bucket,
+ 'Key' => $this->hash_to_path($hash),
+ ]);
+ }
+}