diff --git a/.gitignore b/.gitignore
index d8ebdcc..dd3addb 100644
--- a/.gitignore
+++ b/.gitignore
@@ -6,3 +6,7 @@ app/**/temporal.exe
app/tests/**/*.log
app/runtime
app/vendor
+lambda/.rie
+lambda/rr
+lambda/.rr-build
+lambda/.rr-build-*
diff --git a/README.md b/README.md
index 2eda159..7c35b69 100644
--- a/README.md
+++ b/README.md
@@ -171,6 +171,8 @@ The following samples demonstrate some of the more complex aspects associated wi
- **[Interceptors](https://github.com/temporalio/samples-php/tree/master/app/src/Interceptors)**: Demonstrates how to use Workflow and Activity interceptors to implement custom logic.
+- **[AWS Lambda](https://github.com/temporalio/samples-php/tree/master/app/src/Lambda)**: Demonstrates running a Worker as an AWS Lambda custom runtime, where a Workflow outlives a single invocation.
+
### Testing samples
- **[Feature](https://github.com/temporalio/samples-php/tree/master/app/tests/Feature)**: Demonstrates how to mock activities and test Workflows using temporal test server.
diff --git a/app/src/Lambda/ExecuteCommand.php b/app/src/Lambda/ExecuteCommand.php
new file mode 100644
index 0000000..4ce3d52
--- /dev/null
+++ b/app/src/Lambda/ExecuteCommand.php
@@ -0,0 +1,50 @@
+workflowClient->newWorkflowStub(
+ GreetingWorkflowInterface::class,
+ WorkflowOptions::new()
+ ->withTaskQueue(self::TASK_QUEUE)
+ ->withWorkflowExecutionTimeout(CarbonInterval::minutes(5)),
+ );
+
+ $output->writeln('Starting GreetingWorkflow on the ' . self::TASK_QUEUE . ' task queue... ');
+
+ $run = $this->workflowClient->start($workflow, 'Antony');
+
+ $output->writeln(
+ \sprintf('Started: WorkflowID=%s', $run->getExecution()->getID()),
+ );
+ $output->writeln('The workflow sleeps for 30 seconds, so it outlives a single Lambda invocation.');
+ $output->writeln('Keep invoking the function until it completes.');
+
+ $output->writeln(\sprintf("Result:\n%s", $run->getResult()));
+
+ return self::SUCCESS;
+ }
+}
diff --git a/app/src/Lambda/GreetingActivity.php b/app/src/Lambda/GreetingActivity.php
new file mode 100644
index 0000000..9c3a94e
--- /dev/null
+++ b/app/src/Lambda/GreetingActivity.php
@@ -0,0 +1,20 @@
+activity = Workflow::newActivityStub(
+ GreetingActivityInterface::class,
+ ActivityOptions::new()->withStartToCloseTimeout(CarbonInterval::seconds(10)),
+ );
+ }
+
+ public function greet(string $name)
+ {
+ $greeting = yield $this->activity->compose('Hello', $name);
+
+ yield Workflow::timer(CarbonInterval::seconds(30));
+
+ return $greeting . ' (resumed after a 30 second timer)';
+ }
+}
diff --git a/app/src/Lambda/GreetingWorkflowInterface.php b/app/src/Lambda/GreetingWorkflowInterface.php
new file mode 100644
index 0000000..78f9831
--- /dev/null
+++ b/app/src/Lambda/GreetingWorkflowInterface.php
@@ -0,0 +1,22 @@
+/dev/null
+ docker run -d --name $(CONTAINER) -p $(PORT):8080 \
+ --entrypoint /rie/aws-lambda-rie \
+ -v "$(CURDIR)/.rie":/rie:ro \
+ -e AWS_LAMBDA_FUNCTION_TIMEOUT=$(LAMBDA_TIMEOUT) \
+ -e TEMPORAL_ADDRESS=$(TEMPORAL_ADDRESS) \
+ -e TEMPORAL_NAMESPACE=$(TEMPORAL_NAMESPACE) \
+ -e TEMPORAL_TASK_QUEUE=$(TEMPORAL_TASK_QUEUE) \
+ -e TEMPORAL_DEPLOYMENT_NAME=$(TEMPORAL_DEPLOYMENT_NAME) \
+ -e TEMPORAL_BUILD_ID=$(TEMPORAL_BUILD_ID) \
+ $(IMAGE) rr serve
+ @echo "listening on http://localhost:$(PORT)"
+
+invoke:
+ @curl -sS -XPOST "http://localhost:$(PORT)/2015-03-31/functions/function/invocations" \
+ -d '{}' -w '\ninvocation took %{time_total}s\n'
+
+logs:
+ docker logs -f $(CONTAINER)
+
+stop:
+ -docker rm -f $(CONTAINER)
diff --git a/lambda/composer.json b/lambda/composer.json
new file mode 100644
index 0000000..f565aa8
--- /dev/null
+++ b/lambda/composer.json
@@ -0,0 +1,30 @@
+{
+ "name": "temporal/samples-lambda",
+ "description": "Temporal PHP worker running on AWS Lambda",
+ "type": "project",
+ "license": "MIT",
+ "minimum-stability": "dev",
+ "prefer-stable": true,
+ "require": {
+ "php": ">=8.1",
+ "temporal/sdk": "^2.17"
+ },
+ "autoload": {
+ "psr-4": {
+ "Temporal\\Samples\\Lambda\\": "src/"
+ }
+ },
+ "config": {
+ "allow-plugins": {
+ "php-http/discovery": true,
+ "spiral/composer-publish-plugin": false
+ },
+ "platform": {
+ "php": "8.3.35",
+ "ext-sockets": "8.3.35",
+ "ext-protobuf": "5.36.0",
+ "ext-pcntl": "8.3.35"
+ },
+ "sort-packages": true
+ }
+}
diff --git a/lambda/composer.lock b/lambda/composer.lock
new file mode 100644
index 0000000..d22e115
--- /dev/null
+++ b/lambda/composer.lock
@@ -0,0 +1,3688 @@
+{
+ "_readme": [
+ "This file locks the dependencies of your project to a known state",
+ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
+ "This file is @generated automatically"
+ ],
+ "content-hash": "6f41349fa8541e3dca2fdda31acfab46",
+ "packages": [
+ {
+ "name": "brick/math",
+ "version": "1.0.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/brick/math.git",
+ "reference": "2effe05d2177c451b86c6a073196a4034c02f211"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/brick/math/zipball/2effe05d2177c451b86c6a073196a4034c02f211",
+ "reference": "2effe05d2177c451b86c6a073196a4034c02f211",
+ "shasum": ""
+ },
+ "require": {
+ "php": "^8.2"
+ },
+ "require-dev": {
+ "phpstan/phpstan": "2.2.13",
+ "phpstan/phpstan-phpunit": "2.0.18",
+ "phpunit/phpunit": "^11.5"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "Brick\\Math\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "description": "Arbitrary-precision arithmetic library",
+ "keywords": [
+ "Arbitrary-precision",
+ "BigInteger",
+ "BigRational",
+ "arithmetic",
+ "bigdecimal",
+ "bignum",
+ "bignumber",
+ "brick",
+ "decimal",
+ "integer",
+ "math",
+ "mathematics",
+ "rational"
+ ],
+ "support": {
+ "issues": "https://github.com/brick/math/issues",
+ "source": "https://github.com/brick/math/tree/1.0.0"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/BenMorel",
+ "type": "github"
+ }
+ ],
+ "time": "2026-09-12T10:28:18+00:00"
+ },
+ {
+ "name": "carbonphp/carbon-doctrine-types",
+ "version": "3.2.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/CarbonPHP/carbon-doctrine-types.git",
+ "reference": "5fa5eacafd9ef47c8c6ab9143fc901ba0194d3dc"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/CarbonPHP/carbon-doctrine-types/zipball/5fa5eacafd9ef47c8c6ab9143fc901ba0194d3dc",
+ "reference": "5fa5eacafd9ef47c8c6ab9143fc901ba0194d3dc",
+ "shasum": ""
+ },
+ "require": {
+ "php": "^8.1"
+ },
+ "conflict": {
+ "doctrine/dbal": "<4.0.0 || >=5.0.0"
+ },
+ "require-dev": {
+ "doctrine/dbal": "^4.0.0",
+ "nesbot/carbon": "^2.71.0 || ^3.0.0",
+ "phpunit/phpunit": "^10.3"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-main": "3.x-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Carbon\\Doctrine\\": "src/Carbon/Doctrine/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "KyleKatarn",
+ "email": "kylekatarnls@gmail.com"
+ }
+ ],
+ "description": "Types to use Carbon in Doctrine",
+ "keywords": [
+ "carbon",
+ "date",
+ "datetime",
+ "doctrine",
+ "time"
+ ],
+ "support": {
+ "issues": "https://github.com/CarbonPHP/carbon-doctrine-types/issues",
+ "source": "https://github.com/CarbonPHP/carbon-doctrine-types/tree/3.2.1"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/kylekatarnls",
+ "type": "github"
+ },
+ {
+ "url": "https://opencollective.com/Carbon",
+ "type": "open_collective"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/nesbot/carbon",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2026-09-06T14:11:38+00:00"
+ },
+ {
+ "name": "composer/semver",
+ "version": "3.5.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/composer/semver.git",
+ "reference": "f7a296f4c4cf8cb8bb83e35d6951a406bb11afa5"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/composer/semver/zipball/f7a296f4c4cf8cb8bb83e35d6951a406bb11afa5",
+ "reference": "f7a296f4c4cf8cb8bb83e35d6951a406bb11afa5",
+ "shasum": ""
+ },
+ "require": {
+ "php": "^5.3.2 || ^7.0 || ^8.0"
+ },
+ "require-dev": {
+ "phpstan/phpstan": "^1.11",
+ "symfony/phpunit-bridge": "^3 || ^7"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-main": "3.x-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Composer\\Semver\\": "src"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Nils Adermann",
+ "email": "naderman@naderman.de",
+ "homepage": "http://www.naderman.de"
+ },
+ {
+ "name": "Jordi Boggiano",
+ "email": "j.boggiano@seld.be",
+ "homepage": "http://seld.be"
+ },
+ {
+ "name": "Rob Bast",
+ "email": "rob.bast@gmail.com",
+ "homepage": "http://robbast.nl"
+ }
+ ],
+ "description": "Version comparison library that offers utilities, version constraint parsing and validation.",
+ "keywords": [
+ "semantic",
+ "semver",
+ "validation",
+ "versioning"
+ ],
+ "support": {
+ "irc": "ircs://irc.libera.chat:6697/composer",
+ "issues": "https://github.com/composer/semver/issues",
+ "source": "https://github.com/composer/semver/tree/3.5.0"
+ },
+ "funding": [
+ {
+ "url": "https://packagist.com",
+ "type": "custom"
+ },
+ {
+ "url": "https://github.com/composer",
+ "type": "github"
+ }
+ ],
+ "time": "2026-09-24T14:38:51+00:00"
+ },
+ {
+ "name": "google/common-protos",
+ "version": "4.14.3",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/googleapis/common-protos-php.git",
+ "reference": "3c219d28f513a8997ac5d098f43943e3c5b4509a"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/googleapis/common-protos-php/zipball/3c219d28f513a8997ac5d098f43943e3c5b4509a",
+ "reference": "3c219d28f513a8997ac5d098f43943e3c5b4509a",
+ "shasum": ""
+ },
+ "require": {
+ "google/protobuf": "^4.31||^5.0",
+ "php": "^8.2"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^9.6"
+ },
+ "type": "library",
+ "extra": {
+ "component": {
+ "id": "common-protos",
+ "path": "CommonProtos",
+ "entry": "README.md",
+ "target": "googleapis/common-protos-php.git"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Google\\Api\\": "src/Api",
+ "Google\\Iam\\": "src/Iam",
+ "Google\\Rpc\\": "src/Rpc",
+ "Google\\Type\\": "src/Type",
+ "Google\\Cloud\\": "src/Cloud",
+ "GPBMetadata\\Google\\Api\\": "metadata/Api",
+ "GPBMetadata\\Google\\Iam\\": "metadata/Iam",
+ "GPBMetadata\\Google\\Rpc\\": "metadata/Rpc",
+ "GPBMetadata\\Google\\Type\\": "metadata/Type",
+ "GPBMetadata\\Google\\Cloud\\": "metadata/Cloud",
+ "GPBMetadata\\Google\\Logging\\": "metadata/Logging"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "Apache-2.0"
+ ],
+ "description": "Google API Common Protos for PHP",
+ "homepage": "https://github.com/googleapis/common-protos-php",
+ "keywords": [
+ "google"
+ ],
+ "support": {
+ "source": "https://github.com/googleapis/common-protos-php/tree/v4.14.3"
+ },
+ "time": "2026-09-14T18:27:51+00:00"
+ },
+ {
+ "name": "google/protobuf",
+ "version": "v5.36.2",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/protocolbuffers/protobuf-php.git",
+ "reference": "020bc8e831611869ac387ddd38fbbadd78d15195"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/protocolbuffers/protobuf-php/zipball/020bc8e831611869ac387ddd38fbbadd78d15195",
+ "reference": "020bc8e831611869ac387ddd38fbbadd78d15195",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.2.0"
+ },
+ "require-dev": {
+ "phpunit/phpunit": ">=11.5.50 <12.0.0"
+ },
+ "suggest": {
+ "ext-bcmath": "Need to support JSON deserialization"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "Google\\Protobuf\\": "src/Google/Protobuf",
+ "GPBMetadata\\Google\\Protobuf\\": "src/GPBMetadata/Google/Protobuf"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "description": "proto library for PHP",
+ "homepage": "https://developers.google.com/protocol-buffers/",
+ "keywords": [
+ "proto"
+ ],
+ "support": {
+ "source": "https://github.com/protocolbuffers/protobuf-php/tree/v5.36.2"
+ },
+ "time": "2026-09-17T15:56:42+00:00"
+ },
+ {
+ "name": "grpc/grpc",
+ "version": "1.82.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/grpc/grpc-php.git",
+ "reference": "be984cb608f21e96453b3cfe54c748cc7b192250"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/grpc/grpc-php/zipball/be984cb608f21e96453b3cfe54c748cc7b192250",
+ "reference": "be984cb608f21e96453b3cfe54c748cc7b192250",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=7.1.0"
+ },
+ "require-dev": {
+ "google/auth": "^v1.3.0"
+ },
+ "suggest": {
+ "ext-protobuf": "For better performance, install the protobuf C extension.",
+ "google/protobuf": "To get started using grpc quickly, install the native protobuf library."
+ },
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "Grpc\\": "src/lib/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "Apache-2.0"
+ ],
+ "description": "gRPC library for PHP",
+ "homepage": "https://grpc.io",
+ "keywords": [
+ "rpc"
+ ],
+ "support": {
+ "source": "https://github.com/grpc/grpc-php/tree/v1.82.0"
+ },
+ "time": "2026-07-03T09:39:53+00:00"
+ },
+ {
+ "name": "internal/destroy",
+ "version": "1.0.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/php-internal/destroy.git",
+ "reference": "93068c4f7da218034f5373e31407f564b74b4a06"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/php-internal/destroy/zipball/93068c4f7da218034f5373e31407f564b74b4a06",
+ "reference": "93068c4f7da218034f5373e31407f564b74b4a06",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.1"
+ },
+ "require-dev": {
+ "buggregator/trap": "^1.10",
+ "phpunit/phpunit": "^10.5",
+ "spiral/code-style": "^2.2.2",
+ "ta-tikoma/phpunit-architecture-test": "^0.8.4",
+ "vimeo/psalm": "^6.10"
+ },
+ "suggest": {
+ "ext-simplexml": "to support XML configs parsing"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "Internal\\Destroy\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Aleksei Gagarin (roxblnfk)",
+ "homepage": "https://github.com/roxblnfk"
+ }
+ ],
+ "keywords": [
+ "download binaries",
+ "memory"
+ ],
+ "support": {
+ "issues": "https://github.com/php-internal/destroy/issues",
+ "source": "https://github.com/php-internal/destroy/tree/1.0.0"
+ },
+ "funding": [
+ {
+ "url": "https://patreon.com/roxblnfk",
+ "type": "patreon"
+ }
+ ],
+ "time": "2025-09-08T14:29:16+00:00"
+ },
+ {
+ "name": "internal/promise",
+ "version": "3.4.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/php-internal/promise.git",
+ "reference": "cbd43e603f7c7f324bb28ecf556792b034e5418b"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/php-internal/promise/zipball/cbd43e603f7c7f324bb28ecf556792b034e5418b",
+ "reference": "cbd43e603f7c7f324bb28ecf556792b034e5418b",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.1.0"
+ },
+ "replace": {
+ "react/promise": "^3.0"
+ },
+ "require-dev": {
+ "phpstan/phpstan": "1.12.28",
+ "phpunit/phpunit": "^10.5",
+ "rector/rector": "^1.2",
+ "spiral/code-style": "^2.2",
+ "ta-tikoma/phpunit-architecture-test": "^0.8.5"
+ },
+ "type": "library",
+ "autoload": {
+ "files": [
+ "src/functions_include.php"
+ ],
+ "psr-4": {
+ "React\\Promise\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Jan Sorgalla",
+ "email": "jsorgalla@gmail.com",
+ "homepage": "https://sorgalla.com/"
+ },
+ {
+ "name": "Christian Lück",
+ "email": "christian@clue.engineering",
+ "homepage": "https://clue.engineering/"
+ },
+ {
+ "name": "Cees-Jan Kiewiet",
+ "email": "reactphp@ceesjankiewiet.nl",
+ "homepage": "https://wyrihaximus.net/"
+ },
+ {
+ "name": "Chris Boden",
+ "email": "cboden@gmail.com",
+ "homepage": "https://cboden.dev/"
+ }
+ ],
+ "description": "A lightweight implementation of CommonJS Promises/A for PHP",
+ "keywords": [
+ "promise",
+ "promises"
+ ],
+ "support": {
+ "issues": "https://github.com/php-internal/promise/issues",
+ "source": "https://github.com/php-internal/promise/tree/3.4.1"
+ },
+ "time": "2025-10-24T08:50:08+00:00"
+ },
+ {
+ "name": "nesbot/carbon",
+ "version": "3.14.2",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/CarbonPHP/carbon.git",
+ "reference": "94cfc34887f07ab5c0efa07914c8f527544e3224"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/CarbonPHP/carbon/zipball/94cfc34887f07ab5c0efa07914c8f527544e3224",
+ "reference": "94cfc34887f07ab5c0efa07914c8f527544e3224",
+ "shasum": ""
+ },
+ "require": {
+ "carbonphp/carbon-doctrine-types": "<100.0",
+ "ext-json": "*",
+ "php": "^8.1",
+ "psr/clock": "^1.0",
+ "symfony/clock": "^6.3.12 || ^7.0 || ^8.0",
+ "symfony/polyfill-mbstring": "^1.0",
+ "symfony/translation": "^4.4.18 || ^5.2.1 || ^6.0 || ^7.0 || ^8.0"
+ },
+ "provide": {
+ "psr/clock-implementation": "1.0"
+ },
+ "require-dev": {
+ "doctrine/dbal": "^3.6.3 || ^4.0",
+ "doctrine/orm": "^2.15.2 || ^3.0",
+ "friendsofphp/php-cs-fixer": "^v3.87.1",
+ "kylekatarnls/multi-tester": "^2.5.3",
+ "phpmd/phpmd": "^3.0@dev",
+ "phpstan/extension-installer": "^1.4.3",
+ "phpstan/phpstan": "^2.1.22",
+ "phpunit/phpunit": "^10.5.53",
+ "squizlabs/php_codesniffer": "^3.13.4 || ^4.0.0"
+ },
+ "bin": [
+ "bin/carbon"
+ ],
+ "type": "library",
+ "extra": {
+ "laravel": {
+ "providers": [
+ "Carbon\\Laravel\\ServiceProvider"
+ ]
+ },
+ "phpstan": {
+ "includes": [
+ "extension.neon"
+ ]
+ },
+ "branch-alias": {
+ "dev-2.x": "2.x-dev",
+ "dev-master": "3.x-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Carbon\\": "src/Carbon/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Brian Nesbitt",
+ "email": "brian@nesbot.com",
+ "homepage": "https://markido.com"
+ },
+ {
+ "name": "kylekatarnls",
+ "homepage": "https://github.com/kylekatarnls"
+ }
+ ],
+ "description": "An API extension for DateTime that supports 281 different languages.",
+ "homepage": "https://carbonphp.github.io/carbon/",
+ "keywords": [
+ "date",
+ "datetime",
+ "time"
+ ],
+ "support": {
+ "docs": "https://carbonphp.github.io/carbon/guide/getting-started/introduction.html",
+ "issues": "https://github.com/CarbonPHP/carbon/issues",
+ "source": "https://github.com/CarbonPHP/carbon"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/sponsors/kylekatarnls",
+ "type": "github"
+ },
+ {
+ "url": "https://opencollective.com/Carbon#sponsor",
+ "type": "opencollective"
+ },
+ {
+ "url": "https://tidelift.com/subscription/pkg/packagist-nesbot-carbon?utm_source=packagist-nesbot-carbon&utm_medium=referral&utm_campaign=readme",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2026-10-02T07:26:52+00:00"
+ },
+ {
+ "name": "psr/cache",
+ "version": "3.0.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/php-fig/cache.git",
+ "reference": "aa5030cfa5405eccfdcb1083ce040c2cb8d253bf"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/php-fig/cache/zipball/aa5030cfa5405eccfdcb1083ce040c2cb8d253bf",
+ "reference": "aa5030cfa5405eccfdcb1083ce040c2cb8d253bf",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.0.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.0.x-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Psr\\Cache\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "PHP-FIG",
+ "homepage": "https://www.php-fig.org/"
+ }
+ ],
+ "description": "Common interface for caching libraries",
+ "keywords": [
+ "cache",
+ "psr",
+ "psr-6"
+ ],
+ "support": {
+ "source": "https://github.com/php-fig/cache/tree/3.0.0"
+ },
+ "time": "2021-02-03T23:26:27+00:00"
+ },
+ {
+ "name": "psr/clock",
+ "version": "1.0.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/php-fig/clock.git",
+ "reference": "e41a24703d4560fd0acb709162f73b8adfc3aa0d"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/php-fig/clock/zipball/e41a24703d4560fd0acb709162f73b8adfc3aa0d",
+ "reference": "e41a24703d4560fd0acb709162f73b8adfc3aa0d",
+ "shasum": ""
+ },
+ "require": {
+ "php": "^7.0 || ^8.0"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "Psr\\Clock\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "PHP-FIG",
+ "homepage": "https://www.php-fig.org/"
+ }
+ ],
+ "description": "Common interface for reading the clock.",
+ "homepage": "https://github.com/php-fig/clock",
+ "keywords": [
+ "clock",
+ "now",
+ "psr",
+ "psr-20",
+ "time"
+ ],
+ "support": {
+ "issues": "https://github.com/php-fig/clock/issues",
+ "source": "https://github.com/php-fig/clock/tree/1.0.0"
+ },
+ "time": "2022-11-25T14:36:26+00:00"
+ },
+ {
+ "name": "psr/container",
+ "version": "2.0.2",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/php-fig/container.git",
+ "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963"
+ },
+ "dist": {
+ "type": "zip",
+ "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/"
+ }
+ },
+ "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/tree/2.0.2"
+ },
+ "time": "2021-11-05T16:47:00+00:00"
+ },
+ {
+ "name": "psr/event-dispatcher",
+ "version": "1.0.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/php-fig/event-dispatcher.git",
+ "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/php-fig/event-dispatcher/zipball/dbefd12671e8a14ec7f180cab83036ed26714bb0",
+ "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=7.2.0"
+ },
+ "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": "http://www.php-fig.org/"
+ }
+ ],
+ "description": "Standard interfaces for event handling.",
+ "keywords": [
+ "events",
+ "psr",
+ "psr-14"
+ ],
+ "support": {
+ "issues": "https://github.com/php-fig/event-dispatcher/issues",
+ "source": "https://github.com/php-fig/event-dispatcher/tree/1.0.0"
+ },
+ "time": "2019-01-08T18:20:26+00:00"
+ },
+ {
+ "name": "psr/log",
+ "version": "3.0.2",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/php-fig/log.git",
+ "reference": "f16e1d5863e37f8d8c2a01719f5b34baa2b714d3"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/php-fig/log/zipball/f16e1d5863e37f8d8c2a01719f5b34baa2b714d3",
+ "reference": "f16e1d5863e37f8d8c2a01719f5b34baa2b714d3",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.0.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "3.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/3.0.2"
+ },
+ "time": "2024-09-11T13:17:53+00:00"
+ },
+ {
+ "name": "psr/simple-cache",
+ "version": "3.0.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/php-fig/simple-cache.git",
+ "reference": "764e0b3939f5ca87cb904f570ef9be2d78a07865"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/php-fig/simple-cache/zipball/764e0b3939f5ca87cb904f570ef9be2d78a07865",
+ "reference": "764e0b3939f5ca87cb904f570ef9be2d78a07865",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.0.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "3.0.x-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Psr\\SimpleCache\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "PHP-FIG",
+ "homepage": "https://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/3.0.0"
+ },
+ "time": "2021-10-29T13:26:27+00:00"
+ },
+ {
+ "name": "ramsey/collection",
+ "version": "2.1.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/ramsey/collection.git",
+ "reference": "344572933ad0181accbf4ba763e85a0306a8c5e2"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/ramsey/collection/zipball/344572933ad0181accbf4ba763e85a0306a8c5e2",
+ "reference": "344572933ad0181accbf4ba763e85a0306a8c5e2",
+ "shasum": ""
+ },
+ "require": {
+ "php": "^8.1"
+ },
+ "require-dev": {
+ "captainhook/plugin-composer": "^5.3",
+ "ergebnis/composer-normalize": "^2.45",
+ "fakerphp/faker": "^1.24",
+ "hamcrest/hamcrest-php": "^2.0",
+ "jangregor/phpstan-prophecy": "^2.1",
+ "mockery/mockery": "^1.6",
+ "php-parallel-lint/php-console-highlighter": "^1.0",
+ "php-parallel-lint/php-parallel-lint": "^1.4",
+ "phpspec/prophecy-phpunit": "^2.3",
+ "phpstan/extension-installer": "^1.4",
+ "phpstan/phpstan": "^2.1",
+ "phpstan/phpstan-mockery": "^2.0",
+ "phpstan/phpstan-phpunit": "^2.0",
+ "phpunit/phpunit": "^10.5",
+ "ramsey/coding-standard": "^2.3",
+ "ramsey/conventional-commits": "^1.6",
+ "roave/security-advisories": "dev-latest"
+ },
+ "type": "library",
+ "extra": {
+ "captainhook": {
+ "force-install": true
+ },
+ "ramsey/conventional-commits": {
+ "configFile": "conventional-commits.json"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Ramsey\\Collection\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Ben Ramsey",
+ "email": "ben@benramsey.com",
+ "homepage": "https://benramsey.com"
+ }
+ ],
+ "description": "A PHP library for representing and manipulating collections.",
+ "keywords": [
+ "array",
+ "collection",
+ "hash",
+ "map",
+ "queue",
+ "set"
+ ],
+ "support": {
+ "issues": "https://github.com/ramsey/collection/issues",
+ "source": "https://github.com/ramsey/collection/tree/2.1.1"
+ },
+ "time": "2025-03-22T05:38:12+00:00"
+ },
+ {
+ "name": "ramsey/uuid",
+ "version": "4.9.4",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/ramsey/uuid.git",
+ "reference": "75d73f48d02797c2c285a7e9f348fadc0102ffe2"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/ramsey/uuid/zipball/75d73f48d02797c2c285a7e9f348fadc0102ffe2",
+ "reference": "75d73f48d02797c2c285a7e9f348fadc0102ffe2",
+ "shasum": ""
+ },
+ "require": {
+ "brick/math": "^0.8.16 || ^0.9 || ^0.10 || ^0.11 || ^0.12 || ^0.13 || ^0.14 || ^0.15 || ^0.16 || ^0.17 || ^0.18 || ^0.19 || ^0.20 || ^1.0",
+ "php": "^8.0",
+ "ramsey/collection": "^1.2 || ^2.0"
+ },
+ "replace": {
+ "rhumsaa/uuid": "self.version"
+ },
+ "require-dev": {
+ "captainhook/captainhook": "^5.25",
+ "captainhook/plugin-composer": "^5.3",
+ "dealerdirect/phpcodesniffer-composer-installer": "^1.0",
+ "ergebnis/composer-normalize": "^2.47",
+ "mockery/mockery": "^1.6",
+ "paragonie/random-lib": "^2",
+ "php-mock/php-mock": "^2.6",
+ "php-mock/php-mock-mockery": "^1.5",
+ "php-parallel-lint/php-parallel-lint": "^1.4.0",
+ "phpbench/phpbench": "^1.2.14",
+ "phpstan/extension-installer": "^1.4",
+ "phpstan/phpstan": "^2.1",
+ "phpstan/phpstan-mockery": "^2.0",
+ "phpstan/phpstan-phpunit": "^2.0",
+ "phpunit/phpunit": "^9.6",
+ "slevomat/coding-standard": "^8.18",
+ "squizlabs/php_codesniffer": "^3.13"
+ },
+ "suggest": {
+ "ext-bcmath": "Enables faster math with arbitrary-precision integers using BCMath.",
+ "ext-gmp": "Enables faster math with arbitrary-precision integers using GMP.",
+ "ext-uuid": "Enables the use of PeclUuidTimeGenerator and PeclUuidRandomGenerator.",
+ "paragonie/random-lib": "Provides RandomLib for use with the RandomLibAdapter",
+ "ramsey/uuid-doctrine": "Allows the use of Ramsey\\Uuid\\Uuid as Doctrine field type."
+ },
+ "type": "library",
+ "extra": {
+ "captainhook": {
+ "force-install": true
+ }
+ },
+ "autoload": {
+ "files": [
+ "src/functions.php"
+ ],
+ "psr-4": {
+ "Ramsey\\Uuid\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "description": "A PHP library for generating and working with universally unique identifiers (UUIDs).",
+ "keywords": [
+ "guid",
+ "identifier",
+ "uuid"
+ ],
+ "support": {
+ "issues": "https://github.com/ramsey/uuid/issues",
+ "source": "https://github.com/ramsey/uuid/tree/4.9.4"
+ },
+ "time": "2026-09-16T11:39:30+00:00"
+ },
+ {
+ "name": "roadrunner-php/roadrunner-api-dto",
+ "version": "v1.17.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/roadrunner-php/roadrunner-api-dto.git",
+ "reference": "2f66cf73b4378a5a9fa538cc85a7ed0543999761"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/roadrunner-php/roadrunner-api-dto/zipball/2f66cf73b4378a5a9fa538cc85a7ed0543999761",
+ "reference": "2f66cf73b4378a5a9fa538cc85a7ed0543999761",
+ "shasum": ""
+ },
+ "require": {
+ "google/protobuf": "^4.31.1||^5.34.0",
+ "php": "^8.1"
+ },
+ "conflict": {
+ "temporal/sdk": "<2.9.0"
+ },
+ "suggest": {
+ "google/common-protos": "Required for Temporal API"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "Temporal\\": "generated/Temporal",
+ "RoadRunner\\": "generated/RoadRunner",
+ "GPBMetadata\\": "generated/GPBMetadata"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Pavel Butchnev (butschster)",
+ "email": "pavel.buchnev@spiralscout.com"
+ },
+ {
+ "name": "Aleksei Gagarin (roxblnfk)",
+ "email": "alexey.gagarin@spiralscout.com"
+ },
+ {
+ "name": "RoadRunner Community",
+ "homepage": "https://github.com/roadrunner-server/roadrunner/graphs/contributors"
+ }
+ ],
+ "description": "RoadRunner PHP API",
+ "homepage": "https://roadrunner.dev",
+ "support": {
+ "chat": "https://discord.gg/V6EK4he",
+ "docs": "https://docs.roadrunner.dev",
+ "forum": "https://forum.roadrunner.dev",
+ "issues": "https://github.com/roadrunner-server/roadrunner/issues",
+ "source": "https://github.com/roadrunner-php/roadrunner-api-dto/tree/v1.17.0"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/sponsors/roadrunner-server",
+ "type": "github"
+ }
+ ],
+ "time": "2026-09-16T11:44:04+00:00"
+ },
+ {
+ "name": "roadrunner-php/version-checker",
+ "version": "v1.1.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/roadrunner-php/version-checker.git",
+ "reference": "ab3bf69887754160cc9df05d086e281f4a9fe084"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/roadrunner-php/version-checker/zipball/ab3bf69887754160cc9df05d086e281f4a9fe084",
+ "reference": "ab3bf69887754160cc9df05d086e281f4a9fe084",
+ "shasum": ""
+ },
+ "require": {
+ "composer-runtime-api": "^2.0",
+ "composer/semver": "^3.3",
+ "php": "^8.0",
+ "symfony/process": "^5.4 || ^6.0 || ^7.0 || ^8.0"
+ },
+ "require-dev": {
+ "friendsofphp/php-cs-fixer": "^3.8",
+ "phpunit/phpunit": "^9.6 || ^10.0",
+ "vimeo/psalm": "^5.9"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "RoadRunner\\VersionChecker\\": "src"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "description": "The package for checking the version of the RoadRunner",
+ "homepage": "https://github.com/roadrunner-php/version-checker",
+ "keywords": [
+ "roadrunner",
+ "roadrunner-php",
+ "version-checker"
+ ],
+ "support": {
+ "source": "https://github.com/roadrunner-php/version-checker/tree/v1.1.0"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/roadrunner-server",
+ "type": "github"
+ }
+ ],
+ "time": "2026-02-17T16:54:55+00:00"
+ },
+ {
+ "name": "spiral/attributes",
+ "version": "v3.1.8",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/spiral/attributes.git",
+ "reference": "a7e368a42b079f56c16d7fc513b68190b96842c3"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/spiral/attributes/zipball/a7e368a42b079f56c16d7fc513b68190b96842c3",
+ "reference": "a7e368a42b079f56c16d7fc513b68190b96842c3",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.1",
+ "psr/cache": "1 - 3",
+ "psr/simple-cache": "1 - 3"
+ },
+ "require-dev": {
+ "doctrine/annotations": "^1.14 || ^2.0",
+ "jetbrains/phpstorm-attributes": "^1.0",
+ "phpunit/phpunit": "^9.5.20",
+ "spiral/code-style": "^2.2",
+ "vimeo/psalm": "^5.17"
+ },
+ "type": "library",
+ "autoload": {
+ "files": [
+ "src/polyfill.php"
+ ],
+ "psr-4": {
+ "Spiral\\Attributes\\": "src"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Anton Titov (wolfy-j)",
+ "email": "wolfy-j@spiralscout.com"
+ },
+ {
+ "name": "Pavel Butchnev (butschster)",
+ "email": "pavel.buchnev@spiralscout.com"
+ },
+ {
+ "name": "Aleksei Gagarin (roxblnfk)",
+ "email": "alexey.gagarin@spiralscout.com"
+ },
+ {
+ "name": "Maksim Smakouz (msmakouz)",
+ "email": "maksim.smakouz@spiralscout.com"
+ },
+ {
+ "name": "Kirill Nesmeyanov (SerafimArts)",
+ "email": "kirill.nesmeyanov@spiralscout.com"
+ }
+ ],
+ "description": "PHP attributes reader",
+ "homepage": "https://spiral.dev",
+ "keywords": [
+ "annotations",
+ "attributes",
+ "metadata"
+ ],
+ "support": {
+ "chat": "https://discord.gg/V6EK4he",
+ "docs": "https://spiral.dev/docs",
+ "issues": "https://github.com/spiral/attributes/issues",
+ "source": "https://github.com/spiral/attributes"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/sponsors/spiral",
+ "type": "github"
+ }
+ ],
+ "time": "2024-12-09T15:33:18+00:00"
+ },
+ {
+ "name": "spiral/core",
+ "version": "3.17.2",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/spiral/core.git",
+ "reference": "ca5b8483610aed0c82d4f06bc7907e191d88aca0"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/spiral/core/zipball/ca5b8483610aed0c82d4f06bc7907e191d88aca0",
+ "reference": "ca5b8483610aed0c82d4f06bc7907e191d88aca0",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.1",
+ "psr/container": "^1.1|^2.0",
+ "spiral/security": "^3.17.2"
+ },
+ "provide": {
+ "psr/container-implementation": "^1.1|^2.0"
+ },
+ "require-dev": {
+ "mockery/mockery": "^1.6.12",
+ "phpunit/phpunit": "^10.5.41",
+ "vimeo/psalm": "^6.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "3.17.x-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Spiral\\Core\\": "src"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Anton Titov (wolfy-j)",
+ "email": "wolfy-j@spiralscout.com"
+ },
+ {
+ "name": "Pavel Butchnev (butschster)",
+ "homepage": "https://github.com/butschster"
+ },
+ {
+ "name": "Aleksei Gagarin (roxblnfk)",
+ "homepage": "https://github.com/roxblnfk"
+ },
+ {
+ "name": "Maksim Smakouz (msmakouz)",
+ "email": "maksim.smakouz@spiralscout.com"
+ }
+ ],
+ "description": "IoC container, IoC scopes, factory, memory, configuration interfaces",
+ "homepage": "https://spiral.dev",
+ "support": {
+ "issues": "https://github.com/spiral/framework/issues",
+ "source": "https://github.com/spiral/core"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/sponsors/spiral",
+ "type": "github"
+ }
+ ],
+ "time": "2026-08-05T12:07:26+00:00"
+ },
+ {
+ "name": "spiral/goridge",
+ "version": "4.2.2",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/roadrunner-php/goridge.git",
+ "reference": "a14454ce6c9cfcec76bbd283292c25fb33fc5a43"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/roadrunner-php/goridge/zipball/a14454ce6c9cfcec76bbd283292c25fb33fc5a43",
+ "reference": "a14454ce6c9cfcec76bbd283292c25fb33fc5a43",
+ "shasum": ""
+ },
+ "require": {
+ "ext-json": "*",
+ "ext-sockets": "*",
+ "php": ">=8.1",
+ "spiral/roadrunner": "^2023 || ^2024.1 || ^2025.1"
+ },
+ "require-dev": {
+ "google/protobuf": "^3.22 || ^4.0",
+ "infection/infection": "^0.29.0",
+ "jetbrains/phpstorm-attributes": "^1.0",
+ "phpunit/phpunit": "^10.5.45",
+ "rybakit/msgpack": "^0.7",
+ "spiral/code-style": "*",
+ "vimeo/psalm": "^6.0"
+ },
+ "suggest": {
+ "ext-msgpack": "MessagePack codec support",
+ "ext-protobuf": "Protobuf codec support",
+ "google/protobuf": "(^3.0) Protobuf codec support",
+ "rybakit/msgpack": "(^0.7) MessagePack codec support"
+ },
+ "type": "goridge",
+ "autoload": {
+ "psr-4": {
+ "Spiral\\Goridge\\": "src"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Anton Titov (wolfy-j)",
+ "email": "wolfy-j@spiralscout.com"
+ },
+ {
+ "name": "Valery Piashchynski",
+ "homepage": "https://github.com/rustatian"
+ },
+ {
+ "name": "Aleksei Gagarin (roxblnfk)",
+ "homepage": "https://github.com/roxblnfk"
+ },
+ {
+ "name": "Pavel Buchnev (butschster)",
+ "email": "pavel.buchnev@spiralscout.com"
+ },
+ {
+ "name": "Maksim Smakouz (msmakouz)",
+ "email": "maksim.smakouz@spiralscout.com"
+ },
+ {
+ "name": "RoadRunner Community",
+ "homepage": "https://github.com/roadrunner-server/roadrunner/graphs/contributors"
+ }
+ ],
+ "description": "High-performance PHP-to-Golang RPC bridge",
+ "homepage": "https://spiral.dev/",
+ "support": {
+ "chat": "https://discord.gg/V6EK4he",
+ "docs": "https://docs.roadrunner.dev",
+ "issues": "https://github.com/roadrunner-server/roadrunner/issues",
+ "source": "https://github.com/roadrunner-php/goridge/tree/4.2.2"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/sponsors/roadrunner-server",
+ "type": "github"
+ }
+ ],
+ "time": "2026-05-11T11:29:46+00:00"
+ },
+ {
+ "name": "spiral/hmvc",
+ "version": "3.17.2",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/spiral/hmvc.git",
+ "reference": "11111aac577f3d7ccc9bbe8b79dc6441fd21b9c5"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/spiral/hmvc/zipball/11111aac577f3d7ccc9bbe8b79dc6441fd21b9c5",
+ "reference": "11111aac577f3d7ccc9bbe8b79dc6441fd21b9c5",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.1",
+ "psr/event-dispatcher": "^1.0",
+ "spiral/core": "^3.17.2",
+ "spiral/interceptors": "^3.17.2"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^10.5.41",
+ "spiral/testing": "^2.12",
+ "vimeo/psalm": "^6.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "3.17.x-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Spiral\\Core\\": "src"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Anton Titov (wolfy-j)",
+ "email": "wolfy-j@spiralscout.com"
+ },
+ {
+ "name": "Pavel Butchnev (butschster)",
+ "homepage": "https://github.com/butschster"
+ },
+ {
+ "name": "Aleksei Gagarin (roxblnfk)",
+ "homepage": "https://github.com/roxblnfk"
+ },
+ {
+ "name": "Maksim Smakouz (msmakouz)",
+ "email": "maksim.smakouz@spiralscout.com"
+ }
+ ],
+ "description": "HMVC Core and Controllers",
+ "homepage": "https://spiral.dev",
+ "support": {
+ "chat": "https://discord.gg/V6EK4he",
+ "docs": "https://spiral.dev/docs",
+ "issues": "https://github.com/spiral/framework/issues",
+ "source": "https://github.com/spiral/hmvc"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/sponsors/spiral",
+ "type": "github"
+ }
+ ],
+ "time": "2026-08-05T12:00:27+00:00"
+ },
+ {
+ "name": "spiral/interceptors",
+ "version": "3.17.2",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/spiral/interceptors.git",
+ "reference": "ea0e10ecb2c6058541a2b097a660fd2b532a5ffa"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/spiral/interceptors/zipball/ea0e10ecb2c6058541a2b097a660fd2b532a5ffa",
+ "reference": "ea0e10ecb2c6058541a2b097a660fd2b532a5ffa",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.1",
+ "psr/event-dispatcher": "^1.0",
+ "spiral/core": "^3.17.2"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^10.5.41",
+ "spiral/testing": "^2.12",
+ "vimeo/psalm": "^6.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "3.17.x-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Spiral\\Interceptors\\": "src"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Anton Titov (wolfy-j)",
+ "email": "wolfy-j@spiralscout.com"
+ },
+ {
+ "name": "Pavel Butchnev (butschster)",
+ "homepage": "https://github.com/butschster"
+ },
+ {
+ "name": "Aleksei Gagarin (roxblnfk)",
+ "homepage": "https://github.com/roxblnfk"
+ },
+ {
+ "name": "Maksim Smakouz (msmakouz)",
+ "email": "maksim.smakouz@spiralscout.com"
+ }
+ ],
+ "description": "Spiral Interceptors",
+ "homepage": "https://spiral.dev",
+ "keywords": [
+ "aop",
+ "interceptors",
+ "spiral"
+ ],
+ "support": {
+ "chat": "https://discord.gg/V6EK4he",
+ "docs": "https://spiral.dev/docs",
+ "issues": "https://github.com/spiral/framework/issues",
+ "source": "https://github.com/spiral/interceptors"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/sponsors/spiral",
+ "type": "github"
+ }
+ ],
+ "time": "2026-08-05T12:00:37+00:00"
+ },
+ {
+ "name": "spiral/logger",
+ "version": "3.17.2",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/spiral/logger.git",
+ "reference": "671d91a3427019a14670b614474cc57156d5cd69"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/spiral/logger/zipball/671d91a3427019a14670b614474cc57156d5cd69",
+ "reference": "671d91a3427019a14670b614474cc57156d5cd69",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.1",
+ "psr/log": "1 - 3",
+ "spiral/core": "^3.17.2"
+ },
+ "require-dev": {
+ "mockery/mockery": "^1.6.12",
+ "phpunit/phpunit": "^10.5.41",
+ "vimeo/psalm": "^6.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "3.17.x-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Spiral\\Logger\\": "src"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Anton Titov (wolfy-j)",
+ "email": "wolfy-j@spiralscout.com"
+ },
+ {
+ "name": "Pavel Butchnev (butschster)",
+ "homepage": "https://github.com/butschster"
+ },
+ {
+ "name": "Aleksei Gagarin (roxblnfk)",
+ "homepage": "https://github.com/roxblnfk"
+ },
+ {
+ "name": "Maksim Smakouz (msmakouz)",
+ "email": "maksim.smakouz@spiralscout.com"
+ }
+ ],
+ "description": "LogFactory and global log listeners",
+ "homepage": "https://spiral.dev",
+ "support": {
+ "issues": "https://github.com/spiral/framework/issues",
+ "source": "https://github.com/spiral/logger"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/sponsors/spiral",
+ "type": "github"
+ }
+ ],
+ "time": "2026-08-05T12:05:38+00:00"
+ },
+ {
+ "name": "spiral/roadrunner",
+ "version": "v2025.1.15",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/roadrunner-server/roadrunner.git",
+ "reference": "321b817fab1056e404533ca1ddd200e77d1525fd"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/roadrunner-server/roadrunner/zipball/321b817fab1056e404533ca1ddd200e77d1525fd",
+ "reference": "321b817fab1056e404533ca1ddd200e77d1525fd",
+ "shasum": ""
+ },
+ "type": "metapackage",
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Anton Titov / Wolfy-J",
+ "email": "wolfy.jd@gmail.com"
+ },
+ {
+ "name": "Valery Piashchynski",
+ "homepage": "https://github.com/rustatian"
+ },
+ {
+ "name": "RoadRunner Community",
+ "homepage": "https://github.com/roadrunner-server/roadrunner/graphs/contributors"
+ }
+ ],
+ "description": "RoadRunner: High-performance PHP application server and process manager written in Go and powered with plugins",
+ "homepage": "https://roadrunner.dev/",
+ "support": {
+ "chat": "https://discord.gg/V6EK4he",
+ "docs": "https://docs.roadrunner.dev/",
+ "issues": "https://github.com/roadrunner-server/roadrunner/issues",
+ "source": "https://github.com/roadrunner-server/roadrunner/tree/v2025.1.15"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/sponsors/roadrunner-server",
+ "type": "github"
+ }
+ ],
+ "time": "2026-06-17T14:49:38+00:00"
+ },
+ {
+ "name": "spiral/roadrunner-cli",
+ "version": "v2.7.2",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/roadrunner-php/cli.git",
+ "reference": "54909d3fff22d34d1a6e894785f3df9dca0e2e8c"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/roadrunner-php/cli/zipball/54909d3fff22d34d1a6e894785f3df9dca0e2e8c",
+ "reference": "54909d3fff22d34d1a6e894785f3df9dca0e2e8c",
+ "shasum": ""
+ },
+ "require": {
+ "composer/semver": "^3.4",
+ "ext-json": "*",
+ "php": ">=8.1",
+ "spiral/roadrunner-worker": "^2 || ^3",
+ "spiral/tokenizer": "^2.13 || ^3.15",
+ "symfony/console": "^5.3 || ^6.0 || ^7.0 || ^8.0",
+ "symfony/http-client": "^4.4.51 || ^5.4.49 || ^6.4.17 || ^7.2 || ^8.0",
+ "symfony/yaml": "^5.4.49 || ^6.4.17 || ^7.2 || ^8.0"
+ },
+ "require-dev": {
+ "jetbrains/phpstorm-attributes": "^1.2",
+ "spiral/code-style": "^2.2.2",
+ "spiral/dumper": "^3.3",
+ "vimeo/psalm": "^6.0"
+ },
+ "bin": [
+ "bin/rr"
+ ],
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "Spiral\\RoadRunner\\Console\\": "src"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Anton Titov (wolfy-j)",
+ "email": "wolfy-j@spiralscout.com"
+ },
+ {
+ "name": "RoadRunner Community",
+ "homepage": "https://github.com/spiral/roadrunner/graphs/contributors"
+ }
+ ],
+ "description": "RoadRunner: Command Line Interface",
+ "homepage": "https://roadrunner.dev",
+ "support": {
+ "chat": "https://discord.gg/V6EK4he",
+ "docs": "https://docs.roadrunner.dev",
+ "issues": "https://github.com/roadrunner-server/roadrunner/issues",
+ "source": "https://github.com/roadrunner-php/cli/tree/v2.7.2"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/sponsors/roadrunner-server",
+ "type": "github"
+ }
+ ],
+ "time": "2025-12-14T19:18:46+00:00"
+ },
+ {
+ "name": "spiral/roadrunner-kv",
+ "version": "v4.3.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/roadrunner-php/kv.git",
+ "reference": "0db13f212c64463bd26cf71e28d0a8bdf997a4a0"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/roadrunner-php/kv/zipball/0db13f212c64463bd26cf71e28d0a8bdf997a4a0",
+ "reference": "0db13f212c64463bd26cf71e28d0a8bdf997a4a0",
+ "shasum": ""
+ },
+ "require": {
+ "ext-json": "*",
+ "php": ">=8.1",
+ "psr/simple-cache": "2 - 3",
+ "roadrunner-php/roadrunner-api-dto": "^1.0",
+ "spiral/goridge": "^4.2",
+ "spiral/roadrunner": "^2023.1 || ^2024.1 || ^2025.1"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^10.5.45",
+ "roave/security-advisories": "dev-master",
+ "spiral/code-style": "^2.2",
+ "vimeo/psalm": ">=5.8"
+ },
+ "suggest": {
+ "ext-igbinary": "(>3.1.6) Igbinary serailizer support",
+ "ext-sodium": "Sodium serailizer support"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "Spiral\\RoadRunner\\KeyValue\\": "src"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Wolfy-J",
+ "email": "wolfy.jd@gmail.com"
+ },
+ {
+ "name": "Pavel Buchnev (butschster)",
+ "email": "pavel.buchnev@spiralscout.com"
+ },
+ {
+ "name": "Aleksei Gagarin (roxblnfk)",
+ "email": "alexey.gagarin@spiralscout.com"
+ },
+ {
+ "name": "Maksim Smakouz (msmakouz)",
+ "email": "maksim.smakouz@spiralscout.com"
+ },
+ {
+ "name": "Kirill Nesmeyanov (SerafimArts)",
+ "email": "kirill.nesmeyanov@spiralscout.com"
+ },
+ {
+ "name": "RoadRunner Community",
+ "homepage": "https://github.com/spiral/roadrunner/graphs/contributors"
+ }
+ ],
+ "description": "RoadRunner kv plugin bridge",
+ "homepage": "https://roadrunner.dev/",
+ "support": {
+ "chat": "https://discord.gg/V6EK4he",
+ "docs": "https://docs.roadrunner.dev",
+ "issues": "https://github.com/roadrunner-server/roadrunner/issues",
+ "source": "https://github.com/roadrunner-php/kv/tree/v4.3.1"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/sponsors/roadrunner-server",
+ "type": "github"
+ }
+ ],
+ "time": "2025-05-05T13:08:45+00:00"
+ },
+ {
+ "name": "spiral/roadrunner-worker",
+ "version": "v3.6.2",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/roadrunner-php/worker.git",
+ "reference": "8d9905b1e6677f34ff8623893f35b5e2fa828e37"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/roadrunner-php/worker/zipball/8d9905b1e6677f34ff8623893f35b5e2fa828e37",
+ "reference": "8d9905b1e6677f34ff8623893f35b5e2fa828e37",
+ "shasum": ""
+ },
+ "require": {
+ "composer-runtime-api": "^2.0",
+ "ext-json": "*",
+ "ext-sockets": "*",
+ "php": ">=8.1",
+ "psr/log": "^2.0 || ^3.0",
+ "spiral/goridge": "^4.1.0",
+ "spiral/roadrunner": "^2023.1 || ^2024.1 || ^2025.1"
+ },
+ "require-dev": {
+ "buggregator/trap": "^1.13",
+ "jetbrains/phpstorm-attributes": "^1.0",
+ "phpunit/phpunit": "^10.5.45",
+ "spiral/code-style": "^2.2",
+ "vimeo/psalm": "^6.0"
+ },
+ "suggest": {
+ "spiral/roadrunner-cli": "Provides RoadRunner installation and management CLI tools"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "Spiral\\RoadRunner\\": "src"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Anton Titov (wolfy-j)",
+ "email": "wolfy-j@spiralscout.com"
+ },
+ {
+ "name": "Valery Piashchynski",
+ "homepage": "https://github.com/rustatian"
+ },
+ {
+ "name": "Aleksei Gagarin (roxblnfk)",
+ "homepage": "https://github.com/roxblnfk"
+ },
+ {
+ "name": "Pavel Buchnev (butschster)",
+ "email": "pavel.buchnev@spiralscout.com"
+ },
+ {
+ "name": "Maksim Smakouz (msmakouz)",
+ "email": "maksim.smakouz@spiralscout.com"
+ },
+ {
+ "name": "RoadRunner Community",
+ "homepage": "https://github.com/roadrunner-server/roadrunner/graphs/contributors"
+ }
+ ],
+ "description": "RoadRunner: PHP worker",
+ "homepage": "https://spiral.dev/",
+ "support": {
+ "chat": "https://discord.gg/V6EK4he",
+ "docs": "https://docs.roadrunner.dev",
+ "issues": "https://github.com/roadrunner-server/roadrunner/issues",
+ "source": "https://github.com/roadrunner-php/worker/tree/v3.6.2"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/sponsors/roadrunner-server",
+ "type": "github"
+ }
+ ],
+ "time": "2025-05-05T12:34:50+00:00"
+ },
+ {
+ "name": "spiral/security",
+ "version": "3.17.2",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/spiral/security.git",
+ "reference": "aefd664efb3e618d0a57c967546f1ad5d9784580"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/spiral/security/zipball/aefd664efb3e618d0a57c967546f1ad5d9784580",
+ "reference": "aefd664efb3e618d0a57c967546f1ad5d9784580",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.1",
+ "spiral/core": "^3.17.2",
+ "spiral/hmvc": "^3.17.2"
+ },
+ "require-dev": {
+ "mockery/mockery": "^1.6.12",
+ "phpunit/phpunit": "^10.5.41",
+ "spiral/console": "^3.17.2",
+ "vimeo/psalm": "^6.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "3.17.x-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Spiral\\Security\\": "src"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Anton Titov (wolfy-j)",
+ "email": "wolfy-j@spiralscout.com"
+ },
+ {
+ "name": "Pavel Butchnev (butschster)",
+ "homepage": "https://github.com/butschster"
+ },
+ {
+ "name": "Aleksei Gagarin (roxblnfk)",
+ "homepage": "https://github.com/roxblnfk"
+ },
+ {
+ "name": "Maksim Smakouz (msmakouz)",
+ "email": "maksim.smakouz@spiralscout.com"
+ }
+ ],
+ "description": "Spiral, RBAC security layer",
+ "homepage": "https://spiral.dev",
+ "support": {
+ "issues": "https://github.com/spiral/framework/issues",
+ "source": "https://github.com/spiral/security"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/sponsors/spiral",
+ "type": "github"
+ }
+ ],
+ "time": "2026-08-05T12:07:41+00:00"
+ },
+ {
+ "name": "spiral/tokenizer",
+ "version": "3.17.2",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/spiral/tokenizer.git",
+ "reference": "fcb7a36672d7aef900dc36377ff997ba6f8cde0b"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/spiral/tokenizer/zipball/fcb7a36672d7aef900dc36377ff997ba6f8cde0b",
+ "reference": "fcb7a36672d7aef900dc36377ff997ba6f8cde0b",
+ "shasum": ""
+ },
+ "require": {
+ "ext-tokenizer": "*",
+ "php": ">=8.1",
+ "spiral/core": "^3.17.2",
+ "spiral/logger": "^3.17.2",
+ "symfony/finder": "^6.4.30 || ^7.4 || ^8.0"
+ },
+ "require-dev": {
+ "mockery/mockery": "^1.6.12",
+ "phpunit/phpunit": "^10.5.41",
+ "spiral/attributes": "^2.8|^3.0",
+ "spiral/boot": "^3.17.2",
+ "spiral/files": "^3.17.2",
+ "vimeo/psalm": "^6.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "3.17.x-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Spiral\\Tokenizer\\": "src"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Anton Titov (wolfy-j)",
+ "email": "wolfy-j@spiralscout.com"
+ },
+ {
+ "name": "Pavel Butchnev (butschster)",
+ "homepage": "https://github.com/butschster"
+ },
+ {
+ "name": "Aleksei Gagarin (roxblnfk)",
+ "homepage": "https://github.com/roxblnfk"
+ },
+ {
+ "name": "Maksim Smakouz (msmakouz)",
+ "email": "maksim.smakouz@spiralscout.com"
+ }
+ ],
+ "description": "Static Analysis: Class and Invocation locators",
+ "homepage": "https://spiral.dev",
+ "support": {
+ "issues": "https://github.com/spiral/framework/issues",
+ "source": "https://github.com/spiral/tokenizer"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/sponsors/spiral",
+ "type": "github"
+ }
+ ],
+ "time": "2026-08-05T12:05:29+00:00"
+ },
+ {
+ "name": "symfony/clock",
+ "version": "v7.4.8",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/clock.git",
+ "reference": "674fa3b98e21531dd040e613479f5f6fa8f32111"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/clock/zipball/674fa3b98e21531dd040e613479f5f6fa8f32111",
+ "reference": "674fa3b98e21531dd040e613479f5f6fa8f32111",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.2",
+ "psr/clock": "^1.0",
+ "symfony/polyfill-php83": "^1.28"
+ },
+ "provide": {
+ "psr/clock-implementation": "1.0"
+ },
+ "type": "library",
+ "autoload": {
+ "files": [
+ "Resources/now.php"
+ ],
+ "psr-4": {
+ "Symfony\\Component\\Clock\\": ""
+ },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "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": "Decouples applications from the system clock",
+ "homepage": "https://symfony.com",
+ "keywords": [
+ "clock",
+ "psr20",
+ "time"
+ ],
+ "support": {
+ "source": "https://github.com/symfony/clock/tree/v7.4.8"
+ },
+ "funding": [
+ {
+ "url": "https://symfony.com/sponsor",
+ "type": "custom"
+ },
+ {
+ "url": "https://github.com/fabpot",
+ "type": "github"
+ },
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2026-03-24T13:12:05+00:00"
+ },
+ {
+ "name": "symfony/console",
+ "version": "v7.4.20",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/console.git",
+ "reference": "d7bca2fe05241dc7732d0c8b6d551b879f5d0a7d"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/console/zipball/d7bca2fe05241dc7732d0c8b6d551b879f5d0a7d",
+ "reference": "d7bca2fe05241dc7732d0c8b6d551b879f5d0a7d",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.2",
+ "symfony/deprecation-contracts": "^2.5|^3",
+ "symfony/polyfill-mbstring": "~1.0",
+ "symfony/service-contracts": "^2.5|^3",
+ "symfony/string": "^7.2|^8.0"
+ },
+ "conflict": {
+ "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|3.0"
+ },
+ "require-dev": {
+ "psr/log": "^1|^2|^3",
+ "symfony/config": "^6.4|^7.0|^8.0",
+ "symfony/dependency-injection": "^6.4|^7.0|^8.0",
+ "symfony/event-dispatcher": "^6.4|^7.0|^8.0",
+ "symfony/http-foundation": "^6.4|^7.0|^8.0",
+ "symfony/http-kernel": "^6.4|^7.0|^8.0",
+ "symfony/lock": "^6.4|^7.0|^8.0",
+ "symfony/messenger": "^6.4|^7.0|^8.0",
+ "symfony/process": "^6.4|^7.0|^8.0",
+ "symfony/stopwatch": "^6.4|^7.0|^8.0",
+ "symfony/var-dumper": "^6.4|^7.0|^8.0"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "Symfony\\Component\\Console\\": ""
+ },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "description": "Eases the creation of beautiful and testable command line interfaces",
+ "homepage": "https://symfony.com",
+ "keywords": [
+ "cli",
+ "command-line",
+ "console",
+ "terminal"
+ ],
+ "support": {
+ "source": "https://github.com/symfony/console/tree/v7.4.20"
+ },
+ "funding": [
+ {
+ "url": "https://symfony.com/sponsor",
+ "type": "custom"
+ },
+ {
+ "url": "https://github.com/fabpot",
+ "type": "github"
+ },
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2026-09-18T15:55:00+00:00"
+ },
+ {
+ "name": "symfony/deprecation-contracts",
+ "version": "v3.7.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/deprecation-contracts.git",
+ "reference": "f3202fa1b5097b0af062dc978b32ecf63404e31d"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/f3202fa1b5097b0af062dc978b32ecf63404e31d",
+ "reference": "f3202fa1b5097b0af062dc978b32ecf63404e31d",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.1"
+ },
+ "type": "library",
+ "extra": {
+ "thanks": {
+ "url": "https://github.com/symfony/contracts",
+ "name": "symfony/contracts"
+ },
+ "branch-alias": {
+ "dev-main": "3.7-dev"
+ }
+ },
+ "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.7.1"
+ },
+ "funding": [
+ {
+ "url": "https://symfony.com/sponsor",
+ "type": "custom"
+ },
+ {
+ "url": "https://github.com/fabpot",
+ "type": "github"
+ },
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2026-06-05T06:23:12+00:00"
+ },
+ {
+ "name": "symfony/filesystem",
+ "version": "v7.4.18",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/filesystem.git",
+ "reference": "90d412aa5277c6819db39e7605aa46b1019e3232"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/filesystem/zipball/90d412aa5277c6819db39e7605aa46b1019e3232",
+ "reference": "90d412aa5277c6819db39e7605aa46b1019e3232",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.2",
+ "symfony/polyfill-ctype": "~1.8",
+ "symfony/polyfill-mbstring": "~1.8"
+ },
+ "require-dev": {
+ "symfony/process": "^6.4|^7.0|^8.0"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "Symfony\\Component\\Filesystem\\": ""
+ },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "description": "Provides basic utilities for the filesystem",
+ "homepage": "https://symfony.com",
+ "support": {
+ "source": "https://github.com/symfony/filesystem/tree/v7.4.18"
+ },
+ "funding": [
+ {
+ "url": "https://symfony.com/sponsor",
+ "type": "custom"
+ },
+ {
+ "url": "https://github.com/fabpot",
+ "type": "github"
+ },
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2026-08-23T10:03:40+00:00"
+ },
+ {
+ "name": "symfony/finder",
+ "version": "v7.4.20",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/finder.git",
+ "reference": "2dd31e5208db7a0fda7bfc998ad727b79c2e4d1e"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/finder/zipball/2dd31e5208db7a0fda7bfc998ad727b79c2e4d1e",
+ "reference": "2dd31e5208db7a0fda7bfc998ad727b79c2e4d1e",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.2"
+ },
+ "require-dev": {
+ "symfony/filesystem": "^6.4|^7.0|^8.0"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "Symfony\\Component\\Finder\\": ""
+ },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "description": "Finds files and directories via an intuitive fluent interface",
+ "homepage": "https://symfony.com",
+ "support": {
+ "source": "https://github.com/symfony/finder/tree/v7.4.20"
+ },
+ "funding": [
+ {
+ "url": "https://symfony.com/sponsor",
+ "type": "custom"
+ },
+ {
+ "url": "https://github.com/fabpot",
+ "type": "github"
+ },
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2026-09-26T06:31:10+00:00"
+ },
+ {
+ "name": "symfony/http-client",
+ "version": "v7.4.20",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/http-client.git",
+ "reference": "750a420b8dd0af3d6e1c6c1412802abf2cdd2b6c"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/http-client/zipball/750a420b8dd0af3d6e1c6c1412802abf2cdd2b6c",
+ "reference": "750a420b8dd0af3d6e1c6c1412802abf2cdd2b6c",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.2",
+ "psr/log": "^1|^2|^3",
+ "symfony/deprecation-contracts": "^2.5|^3",
+ "symfony/http-client-contracts": "~3.4.4|^3.5.2",
+ "symfony/polyfill-php83": "^1.29",
+ "symfony/service-contracts": "^2.5|^3"
+ },
+ "conflict": {
+ "amphp/amp": "<2.5",
+ "amphp/socket": "<1.1",
+ "php-http/discovery": "<1.15",
+ "symfony/http-foundation": "<6.4"
+ },
+ "provide": {
+ "php-http/async-client-implementation": "*",
+ "php-http/client-implementation": "*",
+ "psr/http-client-implementation": "1.0",
+ "symfony/http-client-implementation": "3.0"
+ },
+ "require-dev": {
+ "amphp/http-client": "^4.2.1|^5.0",
+ "amphp/http-tunnel": "^1.0|^2.0",
+ "guzzlehttp/promises": "^1.4|^2.0",
+ "nyholm/psr7": "^1.0",
+ "php-http/httplug": "^1.0|^2.0",
+ "psr/http-client": "^1.0",
+ "symfony/amphp-http-client-meta": "^1.0|^2.0",
+ "symfony/cache": "^6.4|^7.0|^8.0",
+ "symfony/dependency-injection": "^6.4|^7.0|^8.0",
+ "symfony/http-kernel": "^6.4|^7.0|^8.0",
+ "symfony/messenger": "^6.4|^7.0|^8.0",
+ "symfony/process": "^6.4|^7.0|^8.0",
+ "symfony/rate-limiter": "^6.4|^7.0|^8.0",
+ "symfony/stopwatch": "^6.4|^7.0|^8.0"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "Symfony\\Component\\HttpClient\\": ""
+ },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "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": "Provides powerful methods to fetch HTTP resources synchronously or asynchronously",
+ "homepage": "https://symfony.com",
+ "keywords": [
+ "http"
+ ],
+ "support": {
+ "source": "https://github.com/symfony/http-client/tree/v7.4.20"
+ },
+ "funding": [
+ {
+ "url": "https://symfony.com/sponsor",
+ "type": "custom"
+ },
+ {
+ "url": "https://github.com/fabpot",
+ "type": "github"
+ },
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2026-09-24T11:02:13+00:00"
+ },
+ {
+ "name": "symfony/http-client-contracts",
+ "version": "v3.7.3",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/http-client-contracts.git",
+ "reference": "35be0019e2c2c9fba80f9dc033290a5240f7b44f"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/http-client-contracts/zipball/35be0019e2c2c9fba80f9dc033290a5240f7b44f",
+ "reference": "35be0019e2c2c9fba80f9dc033290a5240f7b44f",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.1"
+ },
+ "type": "library",
+ "extra": {
+ "thanks": {
+ "url": "https://github.com/symfony/contracts",
+ "name": "symfony/contracts"
+ },
+ "branch-alias": {
+ "dev-main": "3.7-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Symfony\\Contracts\\HttpClient\\": ""
+ },
+ "exclude-from-classmap": [
+ "/Test/"
+ ]
+ },
+ "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": "Generic abstractions related to HTTP clients",
+ "homepage": "https://symfony.com",
+ "keywords": [
+ "abstractions",
+ "contracts",
+ "decoupling",
+ "interfaces",
+ "interoperability",
+ "standards"
+ ],
+ "support": {
+ "source": "https://github.com/symfony/http-client-contracts/tree/v3.7.3"
+ },
+ "funding": [
+ {
+ "url": "https://symfony.com/sponsor",
+ "type": "custom"
+ },
+ {
+ "url": "https://github.com/fabpot",
+ "type": "github"
+ },
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2026-08-04T08:41:16+00:00"
+ },
+ {
+ "name": "symfony/polyfill-ctype",
+ "version": "v1.37.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/polyfill-ctype.git",
+ "reference": "141046a8f9477948ff284fa65be2095baafb94f2"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/141046a8f9477948ff284fa65be2095baafb94f2",
+ "reference": "141046a8f9477948ff284fa65be2095baafb94f2",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=7.2"
+ },
+ "provide": {
+ "ext-ctype": "*"
+ },
+ "suggest": {
+ "ext-ctype": "For best performance"
+ },
+ "type": "library",
+ "extra": {
+ "thanks": {
+ "url": "https://github.com/symfony/polyfill",
+ "name": "symfony/polyfill"
+ }
+ },
+ "autoload": {
+ "files": [
+ "bootstrap.php"
+ ],
+ "psr-4": {
+ "Symfony\\Polyfill\\Ctype\\": ""
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Gert de Pagter",
+ "email": "BackEndTea@gmail.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "description": "Symfony polyfill for ctype functions",
+ "homepage": "https://symfony.com",
+ "keywords": [
+ "compatibility",
+ "ctype",
+ "polyfill",
+ "portable"
+ ],
+ "support": {
+ "source": "https://github.com/symfony/polyfill-ctype/tree/v1.37.0"
+ },
+ "funding": [
+ {
+ "url": "https://symfony.com/sponsor",
+ "type": "custom"
+ },
+ {
+ "url": "https://github.com/fabpot",
+ "type": "github"
+ },
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2026-04-10T16:19:22+00:00"
+ },
+ {
+ "name": "symfony/polyfill-intl-grapheme",
+ "version": "v1.43.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/polyfill-intl-grapheme.git",
+ "reference": "5cac8f4db97208823aa353f59a01faad2da52c75"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/5cac8f4db97208823aa353f59a01faad2da52c75",
+ "reference": "5cac8f4db97208823aa353f59a01faad2da52c75",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=7.2"
+ },
+ "suggest": {
+ "ext-intl": "For best performance"
+ },
+ "type": "library",
+ "extra": {
+ "thanks": {
+ "url": "https://github.com/symfony/polyfill",
+ "name": "symfony/polyfill"
+ }
+ },
+ "autoload": {
+ "files": [
+ "bootstrap.php"
+ ],
+ "psr-4": {
+ "Symfony\\Polyfill\\Intl\\Grapheme\\": ""
+ }
+ },
+ "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 intl's grapheme_* functions",
+ "homepage": "https://symfony.com",
+ "keywords": [
+ "compatibility",
+ "grapheme",
+ "intl",
+ "polyfill",
+ "portable",
+ "shim"
+ ],
+ "support": {
+ "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.43.0"
+ },
+ "funding": [
+ {
+ "url": "https://symfony.com/sponsor",
+ "type": "custom"
+ },
+ {
+ "url": "https://github.com/fabpot",
+ "type": "github"
+ },
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2026-09-25T15:46:47+00:00"
+ },
+ {
+ "name": "symfony/polyfill-intl-normalizer",
+ "version": "v1.43.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/polyfill-intl-normalizer.git",
+ "reference": "ebd57ccc7edb93d632e184efbe7693d2517bab3b"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/ebd57ccc7edb93d632e184efbe7693d2517bab3b",
+ "reference": "ebd57ccc7edb93d632e184efbe7693d2517bab3b",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=7.2"
+ },
+ "suggest": {
+ "ext-intl": "For best performance"
+ },
+ "type": "library",
+ "extra": {
+ "thanks": {
+ "url": "https://github.com/symfony/polyfill",
+ "name": "symfony/polyfill"
+ }
+ },
+ "autoload": {
+ "files": [
+ "bootstrap.php"
+ ],
+ "psr-4": {
+ "Symfony\\Polyfill\\Intl\\Normalizer\\": ""
+ },
+ "classmap": [
+ "Resources/stubs"
+ ]
+ },
+ "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 intl's Normalizer class and related functions",
+ "homepage": "https://symfony.com",
+ "keywords": [
+ "compatibility",
+ "intl",
+ "normalizer",
+ "polyfill",
+ "portable",
+ "shim"
+ ],
+ "support": {
+ "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.43.0"
+ },
+ "funding": [
+ {
+ "url": "https://symfony.com/sponsor",
+ "type": "custom"
+ },
+ {
+ "url": "https://github.com/fabpot",
+ "type": "github"
+ },
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2026-09-23T22:02:09+00:00"
+ },
+ {
+ "name": "symfony/polyfill-mbstring",
+ "version": "v1.43.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/polyfill-mbstring.git",
+ "reference": "4d5d331bf731e0aedbc6b2f5e61135b7b7996a72"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/4d5d331bf731e0aedbc6b2f5e61135b7b7996a72",
+ "reference": "4d5d331bf731e0aedbc6b2f5e61135b7b7996a72",
+ "shasum": ""
+ },
+ "require": {
+ "ext-iconv": "*",
+ "php": ">=7.2"
+ },
+ "provide": {
+ "ext-mbstring": "*"
+ },
+ "suggest": {
+ "ext-mbstring": "For best performance"
+ },
+ "type": "library",
+ "extra": {
+ "thanks": {
+ "url": "https://github.com/symfony/polyfill",
+ "name": "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.43.0"
+ },
+ "funding": [
+ {
+ "url": "https://symfony.com/sponsor",
+ "type": "custom"
+ },
+ {
+ "url": "https://github.com/fabpot",
+ "type": "github"
+ },
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2026-09-24T15:19:04+00:00"
+ },
+ {
+ "name": "symfony/polyfill-php83",
+ "version": "v1.43.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/polyfill-php83.git",
+ "reference": "80ccff923a8d61f73ebe9da0aa94e25232f004ce"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/polyfill-php83/zipball/80ccff923a8d61f73ebe9da0aa94e25232f004ce",
+ "reference": "80ccff923a8d61f73ebe9da0aa94e25232f004ce",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=7.2"
+ },
+ "type": "library",
+ "extra": {
+ "thanks": {
+ "url": "https://github.com/symfony/polyfill",
+ "name": "symfony/polyfill"
+ }
+ },
+ "autoload": {
+ "files": [
+ "bootstrap.php"
+ ],
+ "psr-4": {
+ "Symfony\\Polyfill\\Php83\\": ""
+ },
+ "classmap": [
+ "Resources/stubs"
+ ]
+ },
+ "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 backporting some PHP 8.3+ features to lower PHP versions",
+ "homepage": "https://symfony.com",
+ "keywords": [
+ "compatibility",
+ "polyfill",
+ "portable",
+ "shim"
+ ],
+ "support": {
+ "source": "https://github.com/symfony/polyfill-php83/tree/v1.43.0"
+ },
+ "funding": [
+ {
+ "url": "https://symfony.com/sponsor",
+ "type": "custom"
+ },
+ {
+ "url": "https://github.com/fabpot",
+ "type": "github"
+ },
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2026-09-25T15:50:05+00:00"
+ },
+ {
+ "name": "symfony/process",
+ "version": "v7.4.19",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/process.git",
+ "reference": "ed0ae095b86994d370d5791612e55984f15aa30e"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/process/zipball/ed0ae095b86994d370d5791612e55984f15aa30e",
+ "reference": "ed0ae095b86994d370d5791612e55984f15aa30e",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.2"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "Symfony\\Component\\Process\\": ""
+ },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "description": "Executes commands in sub-processes",
+ "homepage": "https://symfony.com",
+ "support": {
+ "source": "https://github.com/symfony/process/tree/v7.4.19"
+ },
+ "funding": [
+ {
+ "url": "https://symfony.com/sponsor",
+ "type": "custom"
+ },
+ {
+ "url": "https://github.com/fabpot",
+ "type": "github"
+ },
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2026-09-02T12:38:34+00:00"
+ },
+ {
+ "name": "symfony/service-contracts",
+ "version": "v3.7.3",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/service-contracts.git",
+ "reference": "15e6a07ec2a2c75ceb1b21dd98105ee8456d2257"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/service-contracts/zipball/15e6a07ec2a2c75ceb1b21dd98105ee8456d2257",
+ "reference": "15e6a07ec2a2c75ceb1b21dd98105ee8456d2257",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.1",
+ "psr/container": "^1.1|^2.0",
+ "symfony/deprecation-contracts": "^2.5|^3"
+ },
+ "conflict": {
+ "ext-psr": "<1.1|>=2"
+ },
+ "type": "library",
+ "extra": {
+ "thanks": {
+ "url": "https://github.com/symfony/contracts",
+ "name": "symfony/contracts"
+ },
+ "branch-alias": {
+ "dev-main": "3.7-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Symfony\\Contracts\\Service\\": ""
+ },
+ "exclude-from-classmap": [
+ "/Test/"
+ ]
+ },
+ "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": "Generic abstractions related to writing services",
+ "homepage": "https://symfony.com",
+ "keywords": [
+ "abstractions",
+ "contracts",
+ "decoupling",
+ "interfaces",
+ "interoperability",
+ "standards"
+ ],
+ "support": {
+ "source": "https://github.com/symfony/service-contracts/tree/v3.7.3"
+ },
+ "funding": [
+ {
+ "url": "https://symfony.com/sponsor",
+ "type": "custom"
+ },
+ {
+ "url": "https://github.com/fabpot",
+ "type": "github"
+ },
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2026-07-27T15:39:01+00:00"
+ },
+ {
+ "name": "symfony/string",
+ "version": "v7.4.19",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/string.git",
+ "reference": "02731ce2bd26514bec9efc0baef2cd0b0cf67f46"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/string/zipball/02731ce2bd26514bec9efc0baef2cd0b0cf67f46",
+ "reference": "02731ce2bd26514bec9efc0baef2cd0b0cf67f46",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.2",
+ "symfony/deprecation-contracts": "^2.5|^3.0",
+ "symfony/polyfill-ctype": "~1.8",
+ "symfony/polyfill-intl-grapheme": "~1.33",
+ "symfony/polyfill-intl-normalizer": "~1.0",
+ "symfony/polyfill-mbstring": "~1.0"
+ },
+ "conflict": {
+ "symfony/translation-contracts": "<2.5"
+ },
+ "require-dev": {
+ "symfony/emoji": "^7.1|^8.0",
+ "symfony/http-client": "^6.4|^7.0|^8.0",
+ "symfony/intl": "^6.4|^7.0|^8.0",
+ "symfony/translation-contracts": "^2.5|^3.0",
+ "symfony/var-exporter": "^6.4|^7.0|^8.0"
+ },
+ "type": "library",
+ "autoload": {
+ "files": [
+ "Resources/functions.php"
+ ],
+ "psr-4": {
+ "Symfony\\Component\\String\\": ""
+ },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "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": "Provides an object-oriented API to strings and deals with bytes, UTF-8 code points and grapheme clusters in a unified way",
+ "homepage": "https://symfony.com",
+ "keywords": [
+ "grapheme",
+ "i18n",
+ "string",
+ "unicode",
+ "utf-8",
+ "utf8"
+ ],
+ "support": {
+ "source": "https://github.com/symfony/string/tree/v7.4.19"
+ },
+ "funding": [
+ {
+ "url": "https://symfony.com/sponsor",
+ "type": "custom"
+ },
+ {
+ "url": "https://github.com/fabpot",
+ "type": "github"
+ },
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2026-09-11T14:46:58+00:00"
+ },
+ {
+ "name": "symfony/translation",
+ "version": "v7.4.17",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/translation.git",
+ "reference": "2ee1e4a3b32a528a642babe041ff7c440b213b4b"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/translation/zipball/2ee1e4a3b32a528a642babe041ff7c440b213b4b",
+ "reference": "2ee1e4a3b32a528a642babe041ff7c440b213b4b",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.2",
+ "symfony/deprecation-contracts": "^2.5|^3",
+ "symfony/polyfill-mbstring": "~1.0",
+ "symfony/translation-contracts": "^2.5.3|^3.3"
+ },
+ "conflict": {
+ "nikic/php-parser": "<5.0",
+ "symfony/config": "<6.4",
+ "symfony/console": "<6.4",
+ "symfony/dependency-injection": "<6.4",
+ "symfony/http-client-contracts": "<2.5",
+ "symfony/http-kernel": "<6.4",
+ "symfony/service-contracts": "<2.5",
+ "symfony/twig-bundle": "<6.4",
+ "symfony/yaml": "<6.4"
+ },
+ "provide": {
+ "symfony/translation-implementation": "2.3|3.0"
+ },
+ "require-dev": {
+ "nikic/php-parser": "^5.0",
+ "psr/log": "^1|^2|^3",
+ "symfony/config": "^6.4|^7.0|^8.0",
+ "symfony/console": "^6.4|^7.0|^8.0",
+ "symfony/dependency-injection": "^6.4|^7.0|^8.0",
+ "symfony/finder": "^6.4|^7.0|^8.0",
+ "symfony/http-client-contracts": "^2.5|^3.0",
+ "symfony/http-kernel": "^6.4|^7.0|^8.0",
+ "symfony/intl": "^6.4|^7.0|^8.0",
+ "symfony/polyfill-intl-icu": "^1.21",
+ "symfony/routing": "^6.4|^7.0|^8.0",
+ "symfony/service-contracts": "^2.5|^3",
+ "symfony/yaml": "^6.4|^7.0|^8.0"
+ },
+ "type": "library",
+ "autoload": {
+ "files": [
+ "Resources/functions.php"
+ ],
+ "psr-4": {
+ "Symfony\\Component\\Translation\\": ""
+ },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "description": "Provides tools to internationalize your application",
+ "homepage": "https://symfony.com",
+ "support": {
+ "source": "https://github.com/symfony/translation/tree/v7.4.17"
+ },
+ "funding": [
+ {
+ "url": "https://symfony.com/sponsor",
+ "type": "custom"
+ },
+ {
+ "url": "https://github.com/fabpot",
+ "type": "github"
+ },
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2026-08-21T17:40:08+00:00"
+ },
+ {
+ "name": "symfony/translation-contracts",
+ "version": "v3.7.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/translation-contracts.git",
+ "reference": "ccb206b98faccc511ebae8e5fad50f2dc0b30621"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/ccb206b98faccc511ebae8e5fad50f2dc0b30621",
+ "reference": "ccb206b98faccc511ebae8e5fad50f2dc0b30621",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.1"
+ },
+ "type": "library",
+ "extra": {
+ "thanks": {
+ "url": "https://github.com/symfony/contracts",
+ "name": "symfony/contracts"
+ },
+ "branch-alias": {
+ "dev-main": "3.7-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Symfony\\Contracts\\Translation\\": ""
+ },
+ "exclude-from-classmap": [
+ "/Test/"
+ ]
+ },
+ "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": "Generic abstractions related to translation",
+ "homepage": "https://symfony.com",
+ "keywords": [
+ "abstractions",
+ "contracts",
+ "decoupling",
+ "interfaces",
+ "interoperability",
+ "standards"
+ ],
+ "support": {
+ "source": "https://github.com/symfony/translation-contracts/tree/v3.7.1"
+ },
+ "funding": [
+ {
+ "url": "https://symfony.com/sponsor",
+ "type": "custom"
+ },
+ {
+ "url": "https://github.com/fabpot",
+ "type": "github"
+ },
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2026-06-05T06:23:12+00:00"
+ },
+ {
+ "name": "symfony/yaml",
+ "version": "v7.4.20",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/yaml.git",
+ "reference": "0222bf4dfaa1e3ceb8fff579635d655f2950d5a7"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/yaml/zipball/0222bf4dfaa1e3ceb8fff579635d655f2950d5a7",
+ "reference": "0222bf4dfaa1e3ceb8fff579635d655f2950d5a7",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.2",
+ "symfony/deprecation-contracts": "^2.5|^3",
+ "symfony/polyfill-ctype": "^1.8"
+ },
+ "conflict": {
+ "symfony/console": "<6.4"
+ },
+ "require-dev": {
+ "symfony/console": "^6.4|^7.0|^8.0"
+ },
+ "bin": [
+ "Resources/bin/yaml-lint"
+ ],
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "Symfony\\Component\\Yaml\\": ""
+ },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "description": "Loads and dumps YAML files",
+ "homepage": "https://symfony.com",
+ "support": {
+ "source": "https://github.com/symfony/yaml/tree/v7.4.20"
+ },
+ "funding": [
+ {
+ "url": "https://symfony.com/sponsor",
+ "type": "custom"
+ },
+ {
+ "url": "https://github.com/fabpot",
+ "type": "github"
+ },
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2026-09-26T06:31:10+00:00"
+ },
+ {
+ "name": "temporal/sdk",
+ "version": "v2.19",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/temporalio/sdk-php.git",
+ "reference": "a5aa7bcad43576c22357560601fe5eddc4b3ede6"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/temporalio/sdk-php/zipball/a5aa7bcad43576c22357560601fe5eddc4b3ede6",
+ "reference": "a5aa7bcad43576c22357560601fe5eddc4b3ede6",
+ "shasum": ""
+ },
+ "require": {
+ "ext-curl": "*",
+ "ext-json": "*",
+ "google/common-protos": "^4.9",
+ "google/protobuf": "^4.33.6 || ^5.34.0",
+ "grpc/grpc": "^1.57",
+ "internal/destroy": "^1.0",
+ "internal/promise": "^3.4",
+ "nesbot/carbon": "^2.72.6 || ^3.8.4",
+ "php": ">=8.1",
+ "psr/log": "^2.0 || ^3.0.2",
+ "ramsey/uuid": "^4.7.6",
+ "roadrunner-php/roadrunner-api-dto": "^1.15.0",
+ "roadrunner-php/version-checker": "^1.0.2",
+ "spiral/attributes": "^3.1.8",
+ "spiral/roadrunner": "^2025.1.5",
+ "spiral/roadrunner-cli": "^2.6",
+ "spiral/roadrunner-kv": "^4.3.1",
+ "spiral/roadrunner-worker": "^3.6.2",
+ "symfony/filesystem": "^5.4.45 || ^6.4.13 || ^7.0 || ^8.0",
+ "symfony/http-client": "^5.4.53 || ^6.4.17 || ^7.0 || ^8.0",
+ "symfony/polyfill-php83": "^1.31.0",
+ "symfony/process": "^5.4.51 || ^6.4.15 || ^7.0 || ^8.0"
+ },
+ "require-dev": {
+ "buggregator/trap": "^1.13.0",
+ "composer/composer": "^2.8.4",
+ "cweagans/composer-patches": "^2.0",
+ "dereuromark/composer-prefer-lowest": "^0.1.10",
+ "doctrine/annotations": "^1.14.4 || ^2.0.2",
+ "ext-simplexml": "*",
+ "internal/dload": "^1.10.0",
+ "internal/toml": "^1.0.3",
+ "jetbrains/phpstorm-attributes": "dev-master",
+ "laminas/laminas-code": "^4.16",
+ "phpunit/phpunit": "10.5.63",
+ "spiral/code-style": "~2.3.0",
+ "spiral/core": "^3.14.9",
+ "ta-tikoma/phpunit-architecture-test": "^0.8.5",
+ "vimeo/psalm": "^5.26.1 || ^6.2"
+ },
+ "suggest": {
+ "buggregator/trap": "For better debugging",
+ "ext-grpc": "For Client calls",
+ "ext-protobuf": "For better performance",
+ "internal/toml": "To load TOML config files",
+ "roadrunner/psr-logger": "RoadRunner PSR-3 logger integration"
+ },
+ "type": "library",
+ "extra": {
+ "patches": {
+ "phpunit/phpunit": {
+ "Make runTest protected": "patches/phpunit-run-test-protected.patch",
+ "Improve assertInstanceOf error message": "patches/phpunit-instance-of.patch"
+ }
+ }
+ },
+ "autoload": {
+ "files": [
+ "src/include.php"
+ ],
+ "psr-4": {
+ "Temporal\\": "src",
+ "Temporal\\Testing\\": "testing/src",
+ "Temporal\\Api\\Testservice\\": "testing/api/testservice/Temporal/Api/Testservice",
+ "GPBMetadata\\Temporal\\Api\\Testservice\\": "testing/api/testservice/GPBMetadata/Temporal/Api/Testservice"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "description": "Temporal SDK",
+ "homepage": "https://temporal.io",
+ "keywords": [
+ "activity",
+ "api",
+ "event-sourcing",
+ "library",
+ "sdk",
+ "service-bus",
+ "temporal",
+ "workflow"
+ ],
+ "support": {
+ "docs": "https://docs.temporal.io",
+ "forum": "https://community.temporal.io",
+ "issues": "https://github.com/temporalio/sdk-php/issues",
+ "source": "https://github.com/temporalio/sdk-php"
+ },
+ "time": "2026-09-14T16:13:13+00:00"
+ }
+ ],
+ "packages-dev": [],
+ "aliases": [],
+ "minimum-stability": "dev",
+ "stability-flags": {},
+ "prefer-stable": true,
+ "prefer-lowest": false,
+ "platform": {
+ "php": ">=8.1"
+ },
+ "platform-dev": {},
+ "platform-overrides": {
+ "php": "8.3.35",
+ "ext-sockets": "8.3.35",
+ "ext-protobuf": "5.36.0",
+ "ext-pcntl": "8.3.35"
+ },
+ "plugin-api-version": "2.9.0"
+}
diff --git a/lambda/php.ini b/lambda/php.ini
new file mode 100644
index 0000000..5880fc7
--- /dev/null
+++ b/lambda/php.ini
@@ -0,0 +1,18 @@
+; Each PHP process lives for one RoadRunner boot, so the shared memory cache is never
+; read back. The file cache in /tmp does survive across invocations in the same
+; execution environment.
+opcache.enable=1
+opcache.enable_cli=1
+opcache.file_cache=/tmp
+opcache.validate_timestamps=0
+opcache.memory_consumption=32
+
+; RoadRunner owns stdout as the goridge relay; diagnostics must go to stderr only.
+display_errors=Off
+log_errors=On
+error_log=/dev/stderr
+
+memory_limit=128M
+
+zend.assertions=-1
+date.timezone=UTC
diff --git a/lambda/velox.toml b/lambda/velox.toml
new file mode 100644
index 0000000..340e5d7
--- /dev/null
+++ b/lambda/velox.toml
@@ -0,0 +1,53 @@
+# Builds a RoadRunner binary that contains only what a Temporal worker on AWS
+# Lambda needs. Build it with:
+#
+# vx build -c velox.toml -o .
+#
+[roadrunner]
+ref = "master"
+
+[log]
+level = "info"
+mode = "production"
+
+# Lambda runs linux; set arch to amd64 for an x86 function.
+[target_platform]
+os = "linux"
+arch = "arm64"
+
+[github.token]
+token = "${GITHUB_TOKEN}"
+
+# The lambda plugin is not published yet, so it is taken from a local checkout.
+# Drop this block once it is released.
+[[replaces]]
+new = "../../rr-lambda"
+old = "github.com/roadrunner-server/aws-lambda"
+
+[plugins.logger]
+tag = "latest"
+module_name = "github.com/roadrunner-server/logger/v6"
+
+[plugins.server]
+tag = "latest"
+module_name = "github.com/roadrunner-server/server/v6"
+
+[plugins.rpc]
+tag = "latest"
+module_name = "github.com/roadrunner-server/rpc/v6"
+
+[plugins.informer]
+tag = "latest"
+module_name = "github.com/roadrunner-server/informer/v6"
+
+[plugins.resetter]
+tag = "latest"
+module_name = "github.com/roadrunner-server/resetter/v6"
+
+[plugins.temporal]
+tag = "latest"
+module_name = "github.com/temporalio/roadrunner-temporal/v6"
+
+[plugins.lambda]
+tag = "master"
+module_name = "github.com/roadrunner-server/aws-lambda"
diff --git a/lambda/worker.php b/lambda/worker.php
new file mode 100644
index 0000000..99a3c5e
--- /dev/null
+++ b/lambda/worker.php
@@ -0,0 +1,49 @@
+withStickyScheduleToStartTimeout(1)
+ ->withMaxConcurrentActivityExecutionSize(2)
+ ->withMaxConcurrentWorkflowTaskExecutionSize(10)
+ ->withMaxConcurrentLocalActivityExecutionSize(2)
+ ->withMaxConcurrentActivityTaskPollers(1)
+ ->withDisableEagerActivities(true);
+
+if ($deploymentName !== false && $deploymentName !== '') {
+ $options = $options->withDeploymentOptions(
+ WorkerDeploymentOptions::new()
+ ->withUseVersioning(true)
+ ->withVersion(WorkerDeploymentVersion::new($deploymentName, $buildId))
+ ->withDefaultVersioningBehavior(VersioningBehavior::Pinned),
+ );
+}
+
+$factory = WorkerFactory::create();
+
+$factory->newWorker($taskQueue, $options)
+ ->registerWorkflowTypes(GreetingWorkflow::class)
+ ->registerActivity(GreetingActivity::class);
+
+$factory->run();