-
Notifications
You must be signed in to change notification settings - Fork 206
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Can't install with pickle #562
Comments
@weltling, @pierrejoye: I believe the |
Extension version in header is a norm. Used in phpinfo() or in extension
versions constants.
We added this check to avoid releases without it.
…On Mar 17, 2017 11:43 PM, "Jeremy Mikola" ***@***.***> wrote:
PHP_EXTNAME_VERSION is included PHP's skeleton header for extensions
<https://github.com/php/php-src/blob/php-7.1.3/ext/skeleton/php_skeleton.h#L9>.
I don't recall if we used that when creating this extension, but this is
easy to address. I've opened PHPC-936
<https://jira.mongodb.org/browse/PHPC-936> to add the missing macro.
------------------------------
@weltling <https://github.com/weltling>, @pierrejoye
<https://github.com/pierrejoye>: I believe the PHP_EXTNAME_VERSION
convention dates back to ***@***.***
<php/php-src@dcfd753>,
but can you explain why Pickle needs to derive a version from extension
headers? I realize you need the version before building the extension, so
phpversion('extname') is not an option, but Composer pulls version info
from Git tags. Since you support both Git and HTTP sources (I assume that
means PECL's index), wouldn't you simply pull version info from tags and
PECL's database, respectively?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#562 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AARPKGLrLWK6ka0m_eScC9n29OfgX4Crks5rmrgjgaJpZM4MgQmw>
.
|
On top of it we make sure header matches with desired versions.
…On Mar 17, 2017 11:49 PM, "Pierre Joye" ***@***.***> wrote:
Extension version in header is a norm. Used in phpinfo() or in extension
versions constants.
We added this check to avoid releases without it.
On Mar 17, 2017 11:43 PM, "Jeremy Mikola" ***@***.***>
wrote:
> PHP_EXTNAME_VERSION is included PHP's skeleton header for extensions
> <https://github.com/php/php-src/blob/php-7.1.3/ext/skeleton/php_skeleton.h#L9>.
> I don't recall if we used that when creating this extension, but this is
> easy to address. I've opened PHPC-936
> <https://jira.mongodb.org/browse/PHPC-936> to add the missing macro.
> ------------------------------
>
> @weltling <https://github.com/weltling>, @pierrejoye
> <https://github.com/pierrejoye>: I believe the PHP_EXTNAME_VERSION
> convention dates back to ***@***.***
> <php/php-src@dcfd753>,
> but can you explain why Pickle needs to derive a version from extension
> headers? I realize you need the version before building the extension, so
> phpversion('extname') is not an option, but Composer pulls version info
> from Git tags. Since you support both Git and HTTP sources (I assume that
> means PECL's index), wouldn't you simply pull version info from tags and
> PECL's database, respectively?
>
> —
> You are receiving this because you were mentioned.
> Reply to this email directly, view it on GitHub
> <#562 (comment)>,
> or mute the thread
> <https://github.com/notifications/unsubscribe-auth/AARPKGLrLWK6ka0m_eScC9n29OfgX4Crks5rmrgjgaJpZM4MgQmw>
> .
>
|
@pierrejoye: Thanks for the quick reply. @rageshkrishna: 1.2.8 has been released with the change, so I will close this. I attempted to install the extension using |
On Tue, Mar 21, 2017 at 1:01 AM, Jeremy Mikola ***@***.***> wrote:
@pierrejoye <https://github.com/pierrejoye>: Thanks for the quick reply.
@rageshkrishna <https://github.com/rageshkrishna>: 1.2.8
<https://github.com/mongodb/mongo-php-driver/releases/tag/1.2.8> has been
released with the change, so I will close this.
I attempted to install the extension using pickle install mongodb and
there appears to be a configure error emanating from PHP_SETUP_OPENSSL()
<https://github.com/php/php-src/blob/php-7.1.3/acinclude.m4#L2313> on my
system. The headers are not being found as they normally are through a
pecl install. I'm unsure if this is just specific to my OS environment or
a widespread issue, but it's beyond the scope of PHPC-936
<https://jira.mongodb.org/browse/PHPC-936> so please open a new issue if
problems persist for you. Unfortunately, I'm not sure how to attempt
installation with pickle before creating the PECL release, so I was
unable to catch this before the release.
Either specify the git repo and branch/tag or runs it from the src root
directory, that should do it :)
…--
Pierre
@pierrejoye | http://www.libgd.org
|
This got me around the OpenSSL error:
Thanks for the help @jmikola @pierrejoye! |
@rageshkrishna — that sounds like a bug (in pickle), as
|
I filed a ticket for pickle: FriendsOfPHP/pickle#152 |
@derickr You're right, I get the Thanks for opening the issue on pickle. |
@derickr Is there any interest in promoting a forthcoming yum installable PECL package for CentOS / RHEL 7? The folks at IUS are rolling out php71u-pecl-mongodb I figured I'd ask on this somewhat related thread rather than open a new issue for the sake of getting someone's guidance if if this is a good or bad idea. Thanks |
Hi @allella , there has been a YUM installable package for a long time, made by @remicollet for the Fedora (and related) projects: http://pkgs.fedoraproject.org/cgit/rpms/php-pecl-mongodb.git/ |
The php-pecl-mongodb package in EPEL is design to work with default PHP in base system. Official RH answer to provide newer PHP versions is Software Collections which are also available for CentOS users Additional packages maintained by community (the CentOS SCLo SIG) includes the sclo-php-pecl-mongodb package (planed to be rebase to 1.2.x with RHSCL next version) @allella I don't think promoting alternative 3rd party repository make sense, especially when tons exists: ius, remi, webtatic... (and especially IUS which only provide a very minimal set of extensions, just pulling their sources from another repository...) |
@remicollet Alright. I had noticed EPEL was showing php-pecl-mongodb-1.1.10-1.el7.x86_64.rpm which is why I asking IUS to create a 1.2 version. Also, because we're using PHP 7.1. I'll read more about the SCLo. Thanks |
@allella Check out https://www.hogarthuk.com/?q=node/15 and https://ius.io/IUSvsSCL/ for some SCL comparisons. |
Description
Running
pickle install mongodb
results in the following error:I suspect pickle is looking for
PHP_MONGODB_VERSION
but mongo-php-driver doesn't define it anywhere. To be honest, I'm not sure if this is a bug in mongo-php-driver or in pickle, but it looks like pickle is able to find it on several other extensions I am installing so is it some sort of standard approach that is not adopted by mongo-php-driver?Environment
Ubuntu 16.04 docker container, PHP 7.1 installed with php-build and managed with phpenv.
Test Script
Fails on install with the command above. No other test script,
Expected and Actual Behavior
Expected the extension to be installed, but it did not.
The text was updated successfully, but these errors were encountered: