# Using PECL without installing PEAR

- Thread: https://externals.io/message/107787
- Original archive: https://news-web.php.net/php.internals/107787
- Started by Matthieu Napoli on 2019-11-13T16:43:36+00:00
- Messages: 9
- Reply by email to internals@lists.php.net
- More for agents: search with https://externals.io/search.md?q={query} · RFCs at https://externals.io/rfc.md · JSON API at https://externals.io/api · documentation at https://externals.io/llms.txt

---

## #107787 — Matthieu Napoli — 2019-11-13T16:43:36+00:00

URL: https://externals.io/message/107787#107787

Hi all,

Following a discussion with Nikita, I understood that [installing PEAR with PHP is deprecated](https://github.com/php/php-src/blob/PHP-7.4/UPGRADING#L98-L101 <https://github.com/php/php-src/blob/PHP-7.4/UPGRADING#L98-L101>).
However, installing PEAR is necessary for PECL to work (it uses PEAR).

I started having a look at what could be done to use PECL without PEAR. This lead me to the following question: as a first step, would it make sense to provide PECL as a self-contained PHAR?
That way users can download the PHAR and avoid install PEAR. Following that we can have a look at trimming the PECL package, but the PHAR would be a first step.

Thanks

Matthieu

---

## #107788 — Ben Ramsey — 2019-11-13T17:21:11+00:00

URL: https://externals.io/message/107787#107788 · In reply to: #107787

> 
> 
> Hi all,
> 
> Following a discussion with Nikita, I understood that [installing PEAR with PHP is deprecated](https://github.com/php/php-src/blob/PHP-7.4/UPGRADING#L98-L101 <https://github.com/php/php-src/blob/PHP-7.4/UPGRADING#L98-L101>).
> However, installing PEAR is necessary for PECL to work (it uses PEAR).
> 
> I started having a look at what could be done to use PECL without PEAR. This lead me to the following question: as a first step, would it make sense to provide PECL as a self-contained PHAR?
> That way users can download the PHAR and avoid install PEAR. Following that we can have a look at trimming the PECL package, but the PHAR would be a first step.
> 
> Thanks
> 
> Matthieu


What’s the status of the pickle installer? It doesn’t look like it’s been touched since 2017.

https://github.com/FriendsOfPHP/pickle

I thought that was a promising project. Did it work well? Were there problems?

Cheers,
Ben

---

## #107789 — Christoph M. Becker — 2019-11-13T17:33:12+00:00

URL: https://externals.io/message/107787#107789 · In reply to: #107787

> Following a discussion with Nikita, I understood that [installing PEAR with PHP is deprecated](https://github.com/php/php-src/blob/PHP-7.4/UPGRADING#L98-L101 <https://github.com/php/php-src/blob/PHP-7.4/UPGRADING#L98-L101>).
> However, installing PEAR is necessary for PECL to work (it uses PEAR).
>
> I started having a look at what could be done to use PECL without PEAR. This lead me to the following question: as a first step, would it make sense to provide PECL as a self-contained PHAR?
> That way users can download the PHAR and avoid install PEAR. Following that we can have a look at trimming the PECL package, but the PHAR would be a first step.

Are you looking for <https://github.com/pear/pearweb_phars>?

--
Christoph M. Becker

---

## #107790 — Christoph M. Becker — 2019-11-13T17:52:15+00:00

URL: https://externals.io/message/107787#107790

> > […]

Well, these are the PEAR installers.  After downloading and running, you
have a working PEAR/PECL installation.  That's basically what
--with-pear does.

--
Christoph M. Becker

---

## #107791 — Matthieu Napoli — 2019-11-13T18:04:07+00:00

URL: https://externals.io/message/107787#107791 · In reply to: #107790

> Le 13 nov. 2019 à 18:52, Christoph M. Becker <cmbecker69@gmx.de> a écrit :
> 
> 
> 
> > […]
> 
> Well, these are the PEAR installers.  After downloading and running, you
> have a working PEAR/PECL installation.  That's basically what
> --with-pear does.
> 
> --
> Christoph M. Becker

Thanks. Then that is not what we are looking for: the goal is to be able to use PECL without having to install PEAR.

---

## #107798 — Nikita Popov — 2019-11-15T14:40:41+00:00

URL: https://externals.io/message/107787#107798 · In reply to: #107787

> Hi all,
>
> Following a discussion with Nikita, I understood that [installing PEAR
> with PHP is deprecated](
> https://github.com/php/php-src/blob/PHP-7.4/UPGRADING#L98-L101 <
> https://github.com/php/php-src/blob/PHP-7.4/UPGRADING#L98-L101>).
> However, installing PEAR is necessary for PECL to work (it uses PEAR).
>
> I started having a look at what could be done to use PECL without PEAR.
> This lead me to the following question: as a first step, would it make
> sense to provide PECL as a self-contained PHAR?
> That way users can download the PHAR and avoid install PEAR. Following
> that we can have a look at trimming the PECL package, but the PHAR would be
> a first step.
>
> Thanks
>
> Matthieu


I think that makes sense. The only thing we really want/need from PEAR is
the "pecl" command, and having a single self-contained phar for that would
be much better than requiring a global PEAR installation, and allow us to
change the underlying implementation more easily in the future.

Nikita

---

## #107799 — Pierre Joye — 2019-11-15T15:03:32+00:00

URL: https://externals.io/message/107787#107799 · In reply to: #107798

> On Wed, Nov 13, 2019 at 5:44 PM Matthieu Napoli <matthieu@mnapoli.fr>
> wrote:
>
> > […]
> be
> > […]
>
>
> I think that makes sense. The only thing we really want/need from PEAR is
> the "pecl" command, and having a single self-contained phar for that would
> be much better than requiring a global PEAR installation, and allow us to
> change the underlying implementation more easily in the future.
>


Also if there is an interest I can give back some love to Pickle (
https://github.com/FriendsOfPHP/pickle) and ensure it works smoothly up to
php master or 7.4/7.4+1. The phar releases support pecl.php.net, github or
any git/directory install of extensions.

Best,
Pierre

---

## #107801 — Matthieu Napoli — 2019-11-15T16:58:40+00:00

URL: https://externals.io/message/107787#107801 · In reply to: #107799

> Le 15 nov. 2019 à 16:03, Pierre Joye <pierre.php@gmail.com> a écrit :
> 
> 
> 
> 
> > […]
> 
> 
> I think that makes sense. The only thing we really want/need from PEAR is
> the "pecl" command, and having a single self-contained phar for that would
> be much better than requiring a global PEAR installation, and allow us to
> change the underlying implementation more easily in the future.
> 
> 
> Also if there is an interest I can give back some love to Pickle (https://github.com/FriendsOfPHP/pickle) and ensure it works smoothly up to php master or 7.4/7.4+1. The phar releases support pecl.php.net, github or any git/directory install of extensions.
> 
> Best,
> Pierre

Hi Pierre,
I spent some time on Pickle as well. The thing isn't maintained, the tests do not pass, I had a hard time doing anything. I still tried to fix most of the tests here: https://github.com/FriendsOfPHP/pickle/pull/164 but I didn't manage to make the CI green. Removing HHVM support did make the code much cleaner, and I think I can help as well but I am afraid that nobody will merge anything. If you get the project going again that could be great.
One main thing that could help is listing what's missing. In other words, I don't know what to do.
If Pickle works already and just need a green test suite and a new version, then maybe we can start with that and then advertise it as a viable replacement to PEAR?

Matthieu

---

## #107802 — Pierre Joye — 2019-11-15T17:05:10+00:00

URL: https://externals.io/message/107787#107802 · In reply to: #107801

>
> > […]
> wrote:
> > […]
> would be
> > […]
> would
> > […]
> https://github.com/FriendsOfPHP/pickle) and ensure it works smoothly up
> to php master or 7.4/7.4+1. The phar releases support pecl.php.net,
> github or any git/directory install of extensions.
> > […]
>
> Hi Pierre,
> I spent some time on Pickle as well. The thing isn't maintained, the tests
> do not pass, I had a hard time doing anything. I still tried to fix most of
> the tests here: https://github.com/FriendsOfPHP/pickle/pull/164 but I
> didn't manage to make the CI green. Removing HHVM support did make the code
> much cleaner, and I think I can help as well but I am afraid that nobody
> will merge anything.


Let me check the PR and merge them this weekend :)


If you get the project going again that could be great.
>

I would be more than happy to see it running.  I am lacking time but I can
have some hours here and there to help.

One main thing that could help is listing what's missing. In other words, I
> don't know what to do.
>

See below, the big selling point is to get it to work together with
composer. I did a PR back then but we decided it should be done another
way, which we need to figure out :)

If Pickle works already and just need a green test suite and a new version,
> then maybe we can start with that and then advertise it as a viable
> replacement to PEAR?
>

I created it and then a few took over most of the devs, and yes, it is
thought to fully replace pear/pecl as well as a better together works with
composer (need work on their side but Jordi and I need to sit down to get
it done :)



> Matthieu
