feat: add gRPC server configuration and initial implementation with example proto

This commit is contained in:
2025-12-03 23:25:41 -05:00
parent 1ac5075b37
commit 92623941af
8 changed files with 283 additions and 3 deletions

142
composer.lock generated
View File

@@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
"content-hash": "f12aaf0dae6930c226e719a5705e3f91",
"content-hash": "977f74570c671e4d59fd70d5e732c3d2",
"packages": [
{
"name": "adhocore/cli",
@@ -298,6 +298,65 @@
],
"time": "2025-08-10T19:31:58+00:00"
},
{
"name": "google/common-protos",
"version": "4.12.4",
"source": {
"type": "git",
"url": "https://github.com/googleapis/common-protos-php.git",
"reference": "0127156899af0df2681bd42024c60bd5360d64e3"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/googleapis/common-protos-php/zipball/0127156899af0df2681bd42024c60bd5360d64e3",
"reference": "0127156899af0df2681bd42024c60bd5360d64e3",
"shasum": ""
},
"require": {
"google/protobuf": "^4.31",
"php": "^8.1"
},
"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.12.4"
},
"time": "2025-09-20T01:29:44+00:00"
},
{
"name": "google/protobuf",
"version": "v4.33.1",
@@ -2943,6 +3002,87 @@
],
"time": "2025-11-13T17:24:29+00:00"
},
{
"name": "spiral/roadrunner-grpc",
"version": "v3.5.2",
"source": {
"type": "git",
"url": "https://github.com/roadrunner-php/grpc.git",
"reference": "916c061de160d6b2f3efc82dcffac0360d84fab8"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/roadrunner-php/grpc/zipball/916c061de160d6b2f3efc82dcffac0360d84fab8",
"reference": "916c061de160d6b2f3efc82dcffac0360d84fab8",
"shasum": ""
},
"require": {
"ext-json": "*",
"google/common-protos": "^3.1|^4.0",
"google/protobuf": "^3.7 || ^4.0",
"php": ">=8.1",
"spiral/goridge": "^4.0",
"spiral/roadrunner": "^2024.3 || ^2025.1",
"spiral/roadrunner-worker": "^3.0",
"symfony/polyfill-php83": "*"
},
"require-dev": {
"jetbrains/phpstorm-attributes": "^1.0",
"mockery/mockery": "^1.4",
"phpunit/phpunit": "^10.0",
"spiral/code-style": "^2.2",
"spiral/dumper": "^3.3",
"vimeo/psalm": ">=5.8"
},
"type": "library",
"autoload": {
"psr-4": {
"Spiral\\RoadRunner\\GRPC\\": "src"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Anton Titov (wolfy-j)",
"email": "wolfy-j@spiralscout.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": "RoadRunner Community",
"homepage": "https://github.com/spiral/roadrunner/graphs/contributors"
}
],
"description": "High-Performance GRPC server for PHP applications",
"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/grpc/tree/v3.5.2"
},
"funding": [
{
"url": "https://github.com/sponsors/roadrunner-server",
"type": "github"
}
],
"time": "2025-05-18T13:54:33+00:00"
},
{
"name": "spiral/roadrunner-http",
"version": "v3.6.0",