Status of pickle?

php.internals

Levi Morrison

7 years ago
I was reviewing the options for installing extensions on a per-project basis. The most recent effort I have found was pickle. Can someone more knowledgeable chime in on the status of the project? I'm also interested in why it hasn't gained more traction.

Joe Watkins

7 years ago
Morning Levi, For me, as author of many extensions, pickle becomes valuable at the point when composer supports it and we have another route to deployment built into composer. Currently, there is no remarkable difference between using pecl or pickle to build, except pecl is available everywhere, and pickle is only available after an additional dep in composer.json. I'm not sure of the exact reasons why the project lost traction, there seemed to be some disagreement about how to move forward between developers of pickle and composer. Cheers Joe On Thu, 28 Mar 2019 at 16:40, Levi Morrison <levim@php.net> wrote:

Pierre Joye

7 years ago
On Thu, Mar 28, 2019, 10:40 PM Levi Morrison <levim@php.net> wrote:
> I was reviewing the options for installing extensions on a per-project > basis. The most recent effort I have found was pickle. Can someone > more knowledgeable chime in on the status of the project? I'm also > interested in why it hasn't gained more traction.
We did not push it hard. Also it is mostly features complete but a packagist for extensions. The latter is not a must as pickle works exactly like composer, it can install ext from any sources, git, archives, pecl.php.net or files. I provided a PR a while ago to integrate it to composer, but the composer team wanted it using another way. I still do not know what would be the best way but it should not be too complicated. On a side note, pickle is not related to php.net. :) best,

Johannes Schlueter

7 years ago
On Fr, 2019-03-29 at 11:29 +0700, Pierre Joye wrote:
> On a side note, pickle is not related to php.net. :) >
Considering that we're kicking the pecl (pear) installer out we should provide an alternative. pickle might be one alternative, teaching people to do wget+phpize+configure+make install might be another. One thing which conflicts with composer is that PHP extensions aren't loaded "per project" but per setup and the PHP setup used to run composer isn't necessarily the one used for running the application (for one composer typically is run from CLI, applications use fpm or similar, but there might also be a deploy pipeline with different machines in between, ...) But maybe a 80% solution (i.e. working on many developer setups and extendable to be plugged into complexer environments) is still useful, or a solution building docker images with userspace+extension dependencies per project. johannes

Pierre Joye

7 years ago
Hi, On Sun, Mar 31, 2019, 8:20 AM Johannes Schlüter <johannes@schlueters.de> wrote:
> On Fr, 2019-03-29 at 11:29 +0700, Pierre Joye wrote: > > On a side note, pickle is not related to php.net. :) > > > > Considering that we're kicking the pecl (pear) installer out we should > provide an alternative. > > pickle might be one alternative, teaching people to do > wget+phpize+configure+make install might be another.
Right, and on linux it is almost a no brainers if no deps are used. Mac is trickier, windows is easy once you have VC and the SDK. One thing which conflicts with composer is that PHP extensions aren't
> loaded "per project" but per setup and the PHP setup used to run > composer isn't necessarily the one used for running the application > (for one composer typically is run from CLI, applications use fpm or > similar, but there might also be a deploy pipeline with different > machines in between, ...) But maybe a 80% solution (i.e. working on > many developer setups and extendable to be plugged into complexer > environments) is still useful, or a solution building docker images > with userspace+extension dependencies per project. >
containers, app pool or phpenv could be used indeed. It is however out of the scope of pickle. It should straightforward to use pickle in any of them. Best, Pierre