Conversation
|
Gave this a whirl this evening since I was trying really hard to procrastinate on making slides. 🤣
You get an error: "Could not parse version constraint get-binary: Invalid version string "get-binary"
Solution: Add a (EDIT: Oh, interesting, they ARE on two lines in the PR, but the newlines are not translating to
Default Quickstart's Nevertheless, I copy/paste it, as instructed...
This is getting into all sorts of Composer autloading mumbo jumbo, but essentially, two things: a. The Activities and Workflows folders should be under an According to ChatGPT, you can fix this by adding a "Step 0" in Hello World to add the following to Then run:
According to ChatGPT, here's how to fix that one:
Fixing this apparently requires installing the gRPC PECL extension, which I worry is out of reach for many PHP devs, who are beholden to whatever extensions their host provides. :\ Roadrunner seems to have their own, mentioned here: https://docs.roadrunner.dev/docs/plugins/grpc that can be installed just with Composer.
Next steps here might be talking to folks in #php-sdk on Comnmunity Slack. The maintainers of the PHP SDK are in there and I'm sure would love to help get this in shape! |
|
Ok, I see. According to the README on https://github.com/temporalio/sdk-php:
Ok then, I guess we need another step in/around Download RoadRunner to Install the gRPC extension: Then update (I assume, my computer is still churning after the first command :D) |
|
Also cross-posted this to #php-sdk to see if we can get some input from people who use PHP on a regular basis. :) https://temporalio.slack.com/archives/C01LK9FAMM0/p1756277523073449 |
|
Hello. Please note that we also have a money transfer repository, prepared specifically for the upcoming quick start tutorial with PHP. You can find all the necessary code in this repository. In fact, you can install it with a single composer command |
|
|
||
| <p>Using Composer, you can install it with the following command:</p> | ||
| <CodeSnippet language="bash"> | ||
| composer require spiral/roadrunner-cli |
There was a problem hiding this comment.
| composer require spiral/roadrunner-cli |
You don't need installing roadrunner-cli package because SDK already includes it.
| <SetupStep code={ | ||
| <> | ||
|
|
||
| <p>See the <a href="https://github.com/roadrunner-server/roadrunner/blob/master/README.md" target="_blank">RoadRunner README file</a> for installation instructions.</p> | ||
|
|
||
| <p>Using Composer, you can install it with the following command:</p> | ||
| <CodeSnippet language="bash"> | ||
| composer require spiral/roadrunner-cli | ||
| ./vendor/bin/rr get-binary | ||
| </CodeSnippet></> | ||
| }> | ||
|
|
||
| ## Download RoadRunner | ||
|
|
||
| See the RoadRunner README file for installation instructions. | ||
| When prompted, enter yes to generate a default `.rr.yaml` file. | ||
| You’ll update it later to configure the Temporal plugin. | ||
|
|
||
| Next, you'll configure a local Temporal Service for development. | ||
|
|
||
| </SetupStep> | ||
|
|
||
| <SetupStep code={ | ||
| <> | ||
| <Tabs> | ||
| <TabItem value="macos" label="macOS" default> | ||
|
|
||
| <p>Install the Temporal CLI using Homebrew:</p> | ||
| <CodeSnippet language="bash"> | ||
| brew install temporal | ||
| </CodeSnippet> | ||
| </TabItem> | ||
|
|
||
| <TabItem value="windows" label="Windows"> | ||
| <p>Download the Temporal CLI archive for your architecture:</p> | ||
| <ul> | ||
| <li><a href="https://temporal.download/cli/archive/latest?platform=windows&arch=amd64">Windows amd64</a></li> | ||
| <li><a href="https://temporal.download/cli/archive/latest?platform=windows&arch=arm64">Windows arm64</a></li> | ||
| </ul> | ||
| <p>Extract it and add <code>temporal.exe</code> to your PATH.</p> | ||
| </TabItem> | ||
|
|
||
| <TabItem value="linux" label="Linux"> | ||
| <p>Download the Temporal CLI for your architecture:</p> | ||
| <ul> | ||
| <li><a href="https://temporal.download/cli/archive/latest?platform=linux&arch=amd64">Linux amd64</a></li> | ||
| <li><a href="https://temporal.download/cli/archive/latest?platform=linux&arch=arm64">Linux arm64</a></li> | ||
| </ul> | ||
| <p>Extract the archive and move the <code>temporal</code> binary into your PATH, for example:</p> | ||
| <CodeSnippet language="bash"> | ||
| sudo mv temporal /usr/local/bin | ||
| </CodeSnippet> | ||
| </TabItem> | ||
| </Tabs> | ||
|
|
||
| </> | ||
| }> |
There was a problem hiding this comment.
BTW there is an utility that can automatically download RoadRunner and Temporal CLI binaries:
composer require --dev internal/dload
vendor/bin/dload get rr temporal|
Thanks a lot, @roxblnfk ! I believe the "vision" here is for the instructions + code here to mimic as closely as possible the other Quickstart guides (for example, here's the one for Java) , and part of that is documenting the "vanilla" That being said, if you have any "quick start"-y solutions to the prequel to those commands (e.g. automatically installing the gRPC PECL extension alongside RoadRunner, I'm still fighting with that one :D ) that would definitely be of interest I think. |
Got it. Unfortunately, as a Windows user, I can't help you with installing gRPC on Mac OS. I also checked if it could be done through PIE and concluded that it doesn't work on Windows.
|
|
Shared in #php-sdk, https://github.com/shivammathur/homebrew-extensions might be a solution to solving macOS woes around the homebrew / PECL extension kerfuffle. |
|
Thanks!! I ran into some of the same friction while going through it so I paused on it. Going to get back to it and aiming to make it frictionless this week. |
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
Merged in this PR #4166! |


What does this PR do?
https://temporal-documentation-git-php-quickstart.preview.thundergun.io
Notes to reviewers