Re: [packages/php-pecl-http] - R += pecl-propro and pecl-raphf
On Wed, Apr 01, 2015 at 02:37:43AM +0300, Elan Ruusamäe wrote: > On 31.03.2015 18:34, Adam Golebiowski wrote: > > On Tue, Mar 31, 2015 at 05:35:45PM +0300, Elan Ruusamäe wrote: > >> On 31.03.2015 17:04, Adam Golebiowski wrote: > >>> [adamg@adamg ~]$ php -r '' > >>> PHP Warning: PHP Startup: Unable to load dynamic library > >>> '/usr/lib/php56/http.so' - /usr/lib/php56/http.so: undefined symbol: > >>> php_persistent_handle_abandon in Unknown on line 0 > >>> [adamg@adamg ~]$ sudo mv /etc/php56/conf.d/{,z_}httpd.ini > >>> [adamg@adamg ~]$ php -r '' > >>> [adamg@adamg ~]$ > >>> > >>> Not only we need these two, but we need them to load before http.so. > >>> > >>> Thinking about adopting apache-style prefixing with numbers: > >>> - 00-29 - core php modules > >>> - 30-99 - extra (pecl / non-pecl) > >> i've tried to postpone introducing numbering to ini files as long as > >> possible. because the numbering sucks(!). > > but it's easy and solves the problem. > > creates problems elsewhere, need to migrate configs properly, and i hate > when config files rename themselves, as i keep them in vcs. migration - not that big pita, most of the files vcs - point taken, but we do rename files every now and then. > >> maybe rename your ini file so that LC_ALL=C locale would sort it last: > >> > >> like: > >> http.ini -> http.ini (no changes) > >> propro.ini -> http_propro.ini > >> raphf.ini -> http_raphf.ini > > until we add some `boo' extension that depends on raphf, and that's just > > another version of prefixing. > > but you need to handle only these two packages. not all 199 php-related > packages, and don't even know when you need to reorder again because you > guessed initial number wrong and *all* dependencies need to be shifted > by some number. Not if we choose initial number to be in the middle. > and the schema is "_.ini which is > quite clear after what to order. Until we add a second package that depends on where it starts to get funny. And in this case, it won't help. [adamg@adamg ~]$ echo -e "http.ini\nhttp_raphf.ini\nhttp_propro.ini" | LC_ALL=C sort http.ini http_propro.ini http_raphf.ini [adamg@adamg ~]$ > >> ideally php-core should be smart itself (somehow) to be able to load > >> modules in different order based on dependencies. > >> possible solution would be to open shared library with lazy loading to > >> get dependency structure and then do the real open (with RTDL_NOW) after > >> dependency sort. > >> this is just theory, haven't tried. > > nice, but a bit overcomplicated. > > and we would end up maintaining yet another patch. > and what prevents submitting it upstream? Nothing, but I am not sure it would be accepted as it would make modules loading path inconsistent between platforms (not really sure you can do the lazy loading trick on Windows). That said, I am not willing to code it (feel free), but I do take the vcs argument, so unless someone makes the patch, I would go with a different approach: - for now, use ugly way solve the problem for this one case (http.ini -> z_http.ini). - wait for next major (7.0.0 - Dec 2015) / minor (5.7.0 - Aug 2015) PHP release before implementing numbering approach That will make yours and other people's vcs happy. -- adamg ___ pld-devel-en mailing list pld-devel-en@lists.pld-linux.org http://lists.pld-linux.org/mailman/listinfo/pld-devel-en
Re: [packages/php-pecl-http] - R += pecl-propro and pecl-raphf
On 31.03.2015 18:34, Adam Golebiowski wrote: On Tue, Mar 31, 2015 at 05:35:45PM +0300, Elan Ruusamäe wrote: On 31.03.2015 17:04, Adam Golebiowski wrote: [adamg@adamg ~]$ php -r '' PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php56/http.so' - /usr/lib/php56/http.so: undefined symbol: php_persistent_handle_abandon in Unknown on line 0 [adamg@adamg ~]$ sudo mv /etc/php56/conf.d/{,z_}httpd.ini [adamg@adamg ~]$ php -r '' [adamg@adamg ~]$ Not only we need these two, but we need them to load before http.so. Thinking about adopting apache-style prefixing with numbers: - 00-29 - core php modules - 30-99 - extra (pecl / non-pecl) i've tried to postpone introducing numbering to ini files as long as possible. because the numbering sucks(!). but it's easy and solves the problem. creates problems elsewhere, need to migrate configs properly, and i hate when config files rename themselves, as i keep them in vcs. maybe rename your ini file so that LC_ALL=C locale would sort it last: like: http.ini -> http.ini (no changes) propro.ini -> http_propro.ini raphf.ini -> http_raphf.ini until we add some `boo' extension that depends on raphf, and that's just another version of prefixing. but you need to handle only these two packages. not all 199 php-related packages, and don't even know when you need to reorder again because you guessed initial number wrong and *all* dependencies need to be shifted by some number. and the schema is "_.ini which is quite clear after what to order. ideally php-core should be smart itself (somehow) to be able to load modules in different order based on dependencies. possible solution would be to open shared library with lazy loading to get dependency structure and then do the real open (with RTDL_NOW) after dependency sort. this is just theory, haven't tried. nice, but a bit overcomplicated. and we would end up maintaining yet another patch. and what prevents submitting it upstream? -- glen ___ pld-devel-en mailing list pld-devel-en@lists.pld-linux.org http://lists.pld-linux.org/mailman/listinfo/pld-devel-en
Re: [packages/php-pecl-http] - R += pecl-propro and pecl-raphf
On Tue, Mar 31, 2015 at 05:35:45PM +0300, Elan Ruusamäe wrote: > On 31.03.2015 17:04, Adam Golebiowski wrote: > > [adamg@adamg ~]$ php -r '' > > PHP Warning: PHP Startup: Unable to load dynamic library > > '/usr/lib/php56/http.so' - /usr/lib/php56/http.so: undefined symbol: > > php_persistent_handle_abandon in Unknown on line 0 > > [adamg@adamg ~]$ sudo mv /etc/php56/conf.d/{,z_}httpd.ini > > [adamg@adamg ~]$ php -r '' > > [adamg@adamg ~]$ > > > > Not only we need these two, but we need them to load before http.so. > > > > Thinking about adopting apache-style prefixing with numbers: > > - 00-29 - core php modules > > - 30-99 - extra (pecl / non-pecl) > > i've tried to postpone introducing numbering to ini files as long as > possible. because the numbering sucks(!). but it's easy and solves the problem. > maybe rename your ini file so that LC_ALL=C locale would sort it last: > > like: > http.ini -> http.ini (no changes) > propro.ini -> http_propro.ini > raphf.ini -> http_raphf.ini until we add some `boo' extension that depends on raphf, and that's just another version of prefixing. > ideally php-core should be smart itself (somehow) to be able to load > modules in different order based on dependencies. > possible solution would be to open shared library with lazy loading to > get dependency structure and then do the real open (with RTDL_NOW) after > dependency sort. > this is just theory, haven't tried. nice, but a bit overcomplicated. and we would end up maintaining yet another patch. -- adamg ___ pld-devel-en mailing list pld-devel-en@lists.pld-linux.org http://lists.pld-linux.org/mailman/listinfo/pld-devel-en
Re: [packages/php-pecl-http] - R += pecl-propro and pecl-raphf
On 31.03.2015 17:04, Adam Golebiowski wrote: [adamg@adamg ~]$ php -r '' PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php56/http.so' - /usr/lib/php56/http.so: undefined symbol: php_persistent_handle_abandon in Unknown on line 0 [adamg@adamg ~]$ sudo mv /etc/php56/conf.d/{,z_}httpd.ini [adamg@adamg ~]$ php -r '' [adamg@adamg ~]$ Not only we need these two, but we need them to load before http.so. Thinking about adopting apache-style prefixing with numbers: - 00-29 - core php modules - 30-99 - extra (pecl / non-pecl) i've tried to postpone introducing numbering to ini files as long as possible. because the numbering sucks(!). maybe rename your ini file so that LC_ALL=C locale would sort it last: like: http.ini -> http.ini (no changes) propro.ini -> http_propro.ini raphf.ini -> http_raphf.ini ideally php-core should be smart itself (somehow) to be able to load modules in different order based on dependencies. possible solution would be to open shared library with lazy loading to get dependency structure and then do the real open (with RTDL_NOW) after dependency sort. this is just theory, haven't tried. With defaults for example 20 and 50. Comments ? On Tue, Mar 31, 2015 at 03:09:34PM +0200, adamg wrote: commit a87ebfded9a4fa457a80f1e3f1632afcff329df6 Author: Adam Gołębiowski Date: Tue Mar 31 15:08:21 2015 +0200 - R += pecl-propro and pecl-raphf php-pecl-http.spec | 2 ++ 1 file changed, 2 insertions(+) --- diff --git a/php-pecl-http.spec b/php-pecl-http.spec index ecbb456..8674b73 100644 --- a/php-pecl-http.spec +++ b/php-pecl-http.spec @@ -22,6 +22,8 @@ BuildRequires:zlib-devel >= 1.2.0.4 %{?requires_php_extension} Requires: %{php_name}-hash Requires: %{php_name}-iconv +Requires: %{php_name}-pecl-propro +Requires: %{php_name}-pecl-raphf Requires: %{php_name}-session Provides: php(%{modname}) = %{version} Obsoletes:php-pecl-http < 1.7.6-4 gitweb: http://git.pld-linux.org/gitweb.cgi/packages/php-pecl-http.git/commitdiff/a87ebfded9a4fa457a80f1e3f1632afcff329df6 ___ pld-cvs-commit mailing list pld-cvs-com...@lists.pld-linux.org http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit ___ pld-devel-en mailing list pld-devel-en@lists.pld-linux.org http://lists.pld-linux.org/mailman/listinfo/pld-devel-en -- glen ___ pld-devel-en mailing list pld-devel-en@lists.pld-linux.org http://lists.pld-linux.org/mailman/listinfo/pld-devel-en
Re: [packages/php-pecl-http] - R += pecl-propro and pecl-raphf
[adamg@adamg ~]$ php -r '' PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php56/http.so' - /usr/lib/php56/http.so: undefined symbol: php_persistent_handle_abandon in Unknown on line 0 [adamg@adamg ~]$ sudo mv /etc/php56/conf.d/{,z_}httpd.ini [adamg@adamg ~]$ php -r '' [adamg@adamg ~]$ Not only we need these two, but we need them to load before http.so. Thinking about adopting apache-style prefixing with numbers: - 00-29 - core php modules - 30-99 - extra (pecl / non-pecl) With defaults for example 20 and 50. Comments ? On Tue, Mar 31, 2015 at 03:09:34PM +0200, adamg wrote: > commit a87ebfded9a4fa457a80f1e3f1632afcff329df6 > Author: Adam Gołębiowski > Date: Tue Mar 31 15:08:21 2015 +0200 > > - R += pecl-propro and pecl-raphf > > php-pecl-http.spec | 2 ++ > 1 file changed, 2 insertions(+) > --- > diff --git a/php-pecl-http.spec b/php-pecl-http.spec > index ecbb456..8674b73 100644 > --- a/php-pecl-http.spec > +++ b/php-pecl-http.spec > @@ -22,6 +22,8 @@ BuildRequires: zlib-devel >= 1.2.0.4 > %{?requires_php_extension} > Requires:%{php_name}-hash > Requires:%{php_name}-iconv > +Requires:%{php_name}-pecl-propro > +Requires:%{php_name}-pecl-raphf > Requires:%{php_name}-session > Provides:php(%{modname}) = %{version} > Obsoletes: php-pecl-http < 1.7.6-4 > > > gitweb: > > http://git.pld-linux.org/gitweb.cgi/packages/php-pecl-http.git/commitdiff/a87ebfded9a4fa457a80f1e3f1632afcff329df6 > > ___ > pld-cvs-commit mailing list > pld-cvs-com...@lists.pld-linux.org > http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit ___ pld-devel-en mailing list pld-devel-en@lists.pld-linux.org http://lists.pld-linux.org/mailman/listinfo/pld-devel-en