bundling libxml2

php.internals

Sterling Hughes

23 years ago
Hi, So I figure I'll restart this discussion. There are a couple of reasons I want to bundle libxml2: 1) XML support is crucial. You may not like XML, but its the standard for data exchange these days, and is incredibly important when interoperating with external services. A PHP installation should simply not exist without XML support, if it does, then imho we've done something wrong. Applications that are distributed need to rely on certain features in PHP, XML is one such feature. I think this much has already been agreed upon. 2) Libxml2 may be installed everywhere, but the version we rely upon isn't available everywhere. As witnessed by a message to the list by michael, and a problem that someone else had over IRC. Its fine to allow people to use external versions of libxml2, however, we need a recent version to operate. For example, schema support is pretty essential, as its becoming the new DTD format for XML (and is required for proper SOAP support). Its further helpful that users can rely on a certain implementation of libxml2 distributed with a certain version of PHP. Anyhow, I thought I'd again bring this up before the beta. What do people think? -Sterling
-- Good judgement comes from experience, and experience comes from bad judgement. - Fred Brooks

Jani Taskinen

23 years ago
On 27 Jun 2003, Sterling Hughes wrote:
>Hi, > >So I figure I'll restart this discussion. There are a couple of reasons >I want to bundle libxml2: > >1) XML support is crucial. You may not like XML, but its the standard >for data exchange these days, and is incredibly important when >interoperating with external services. A PHP installation should simply >not exist without XML support, if it does, then imho we've done >something wrong. Applications that are distributed need to rely on >certain features in PHP, XML is one such feature. I think this much has >already been agreed upon.
I'm against bundling it, there's absolutely no reason to.
>2) Libxml2 may be installed everywhere, but the version we rely upon >isn't available everywhere. As witnessed by a message to the list by >michael, and a problem that someone else had over IRC. Its fine to >allow people to use external versions of libxml2, however, we need a >recent version to operate. For example, schema support is pretty >essential, as its becoming the new DTD format for XML (and is required >for proper SOAP support).
We can require certain version in configure. --Jani

Anil Madhavapeddy

23 years ago
On Fri, Jun 27, 2003 at 12:25:39PM -0400, Sterling Hughes wrote:
> > 2) Libxml2 may be installed everywhere, but the version we rely upon > isn't available everywhere. As witnessed by a message to the list by > michael, and a problem that someone else had over IRC. Its fine to > allow people to use external versions of libxml2, however, we need a > recent version to operate. For example, schema support is pretty > essential, as its becoming the new DTD format for XML (and is required > for proper SOAP support).
If you need a recent version, why not just require it as part of the configure tests as usual?
-- Anil Madhavapeddy http://anil.recoil.org University of Cambridge http://www.cl.cam.ac.uk

Sterling Hughes

23 years ago
Because, this will encourage people to do : --without-xml Instead of upgrading the system libxml2. -Sterling On Fri, 2003-06-27 at 13:04, Anil Madhavapeddy wrote:
> On Fri, Jun 27, 2003 at 12:25:39PM -0400, Sterling Hughes wrote: > > > > 2) Libxml2 may be installed everywhere, but the version we rely upon > > isn't available everywhere. As witnessed by a message to the list by > > michael, and a problem that someone else had over IRC. Its fine to > > allow people to use external versions of libxml2, however, we need a > > recent version to operate. For example, schema support is pretty > > essential, as its becoming the new DTD format for XML (and is required > > for proper SOAP support). > > If you need a recent version, why not just require it as part of > the configure tests as usual?
-- "The three most dangerous things in the world are a programmer with a soldering iron, a hardware type with a program patch and a user with an idea." - Unknown

Dan Kalowsky

23 years ago
On Fri, 27 Jun 2003, Sterling Hughes wrote:
> Because, this will encourage people to do : > > --without-xml > > Instead of upgrading the system libxml2. >
So you are forcing users and installations to use xml when they might not want to upgrade their libxml? This seems like a rather wrong way to go about this. But more importantly why don't you fix --with-xml to respect the --disable-all flag in configure first :) BTW I'm still -1 on bundling this code.
> -Sterling > > On Fri, 2003-06-27 at 13:04, Anil Madhavapeddy wrote: > > On Fri, Jun 27, 2003 at 12:25:39PM -0400, Sterling Hughes wrote: > > > > > > 2) Libxml2 may be installed everywhere, but the version we rely upon > > > isn't available everywhere. As witnessed by a message to the list by > > > michael, and a problem that someone else had over IRC. Its fine to > > > allow people to use external versions of libxml2, however, we need a > > > recent version to operate. For example, schema support is pretty > > > essential, as its becoming the new DTD format for XML (and is required > > > for proper SOAP support). > > > > If you need a recent version, why not just require it as part of > > the configure tests as usual? >
>---------------------------------------------------------------<
Dan Kalowsky "I'll walk a thousand miles just http://www.deadmime.org/~dank to slip this skin." dank-nom@aps-deadmime.org - "Streets of Philadelphia", kalowsky@php.net Bruce Springsteen

Anil Madhavapeddy

23 years ago
On Fri, Jun 27, 2003 at 01:08:08PM -0400, Sterling Hughes wrote:
> Because, this will encourage people to do : > > --without-xml > > Instead of upgrading the system libxml2.
If your first argument about the utter importance of XML/PHP is true, then I'm sure they won't mind updating their system libxml2. Otherwise, they can live without it (I certainly can) ...
-- Anil Madhavapeddy http://anil.recoil.org University of Cambridge http://www.cl.cam.ac.uk

Mike Robinson

23 years ago
Anil Madhavapeddy wrote:
> > On Fri, Jun 27, 2003 at 01:08:08PM -0400, Sterling Hughes wrote: > > Because, this will encourage people to do : > > > > --without-xml > > > > Instead of upgrading the system libxml2. > > If your first argument about the utter importance of XML/PHP is true, then > I'm sure they won't mind updating their system libxml2.
Updating system libraries is a little more complex than compiling software against those libraries, or in this case simply enabling built-in libraries. The latter is far more likely to happen, particularly in hosting situations. The importance of PHP features lies with users, not system administrators.
> Otherwise, they can live without it (I certainly can) ...
XML support has been there for ages. I think you'd be surprised how many people use it. IMHO, adding libxml2 is a bonus for users and good for PHP. Not as bonus as sqlite, but a good thing nonetheless. :) Best Regards Mike Robinson

Jani Taskinen

23 years ago
Remember the issues with --with-mysql and some third party library linking with external libs..? --Jani On 27 Jun 2003, Sterling Hughes wrote:

John Coggeshall

23 years ago
On Fri, 2003-06-27 at 13:08, Sterling Hughes wrote:
> Because, this will encourage people to do : > > --without-xml > > Instead of upgrading the system libxml2.
If someone actually *needs* XML support for whatever they are doing, and they have absolutely no option but to upgrade libxml2, they'll do it. It doesn't require becoming maintainers of an entirely different code base. John
-- -~=~--~=~--~=~--~=~--~=~--~=~--~=~--~=~--~=~--~=~--~=~--~=~--~=~--~=~- John Coggeshall john at coggeshall dot org http://www.coggeshall.org/ -~=~--~=~--~=~--~=~--~=~--~=~--~=~--~=~--~=~--~=~--~=~--~=~--~=~--~=~-

Zeev Suraski

23 years ago
At 00:16 28/06/2003, John Coggeshall wrote:
>On Fri, 2003-06-27 at 13:08, Sterling Hughes wrote: > > Because, this will encourage people to do : > > > > --without-xml > > > > Instead of upgrading the system libxml2. > >If someone actually *needs* XML support for whatever they are doing, and >they have absolutely no option but to upgrade libxml2, they'll do it. It >doesn't require becoming maintainers of an entirely different code base.
We have no intentions to become maintainers of a different codebase, integrating libxml into the PHP distribution is a completely separate issue. Please read the archives. Zeev

John Coggeshall

23 years ago
> We have no intentions to become maintainers of a different codebase, > integrating libxml into the PHP distribution is a completely separate > issue. Please read the archives.
This message must have been stuck in my queue, because i sent this Friday. It's outdated, and as far as I care is a dead thread. John
-- -~=~--~=~--~=~--~=~--~=~--~=~--~=~--~=~--~=~--~=~--~=~--~=~--~=~--~=~- John Coggeshall john at coggeshall dot org http://www.coggeshall.org/ -~=~--~=~--~=~--~=~--~=~--~=~--~=~--~=~--~=~--~=~--~=~--~=~--~=~--~=~-

Rob Richards

23 years ago
From: Sterling Hughes
> Hi, > > So I figure I'll restart this discussion. There are a couple of reasons > I want to bundle libxml2:
.... From yesterday's thread on this, I thought the plan was to bundle for the initital beta and see how it goes. Has that plan been scrapped? Rob

Elfyn McBratney

23 years ago
On Fri, 27 Jun 2003, Sterling Hughes wrote:
> Hi, > > So I figure I'll restart this discussion. There are a couple of reasons > I want to bundle libxml2: > > 1) XML support is crucial. You may not like XML, but its the standard > for data exchange these days, and is incredibly important when > interoperating with external services. A PHP installation should simply > not exist without XML support, if it does, then imho we've done > something wrong. Applications that are distributed need to rely on > certain features in PHP, XML is one such feature. I think this much has > already been agreed upon. > > 2) Libxml2 may be installed everywhere, but the version we rely upon > isn't available everywhere. As witnessed by a message to the list by > michael, and a problem that someone else had over IRC. Its fine to > allow people to use external versions of libxml2, however, we need a > recent version to operate. For example, schema support is pretty > essential, as its becoming the new DTD format for XML (and is required > for proper SOAP support). > > Its further helpful that users can rely on a certain implementation of > libxml2 distributed with a certain version of PHP. > > Anyhow, I thought I'd again bring this up before the beta. What do > people think?
IMO, bundling libxml2 is a win for PHP. The only bad thing I can see is that it add's an extra ~1MG to the distribution. If the user wants to disable it, they'd just pass `--disable-xml' to configure, right? Elfyn
--

Andi Gutmans

23 years ago
I definitely think we should give it a try! +1 for bundling. Andi At 12:25 PM 27/6/2003 -0400, Sterling Hughes wrote:

Maxim Maletsky

23 years ago
On 27 Jun 2003 12:25:39 -0400 Sterling Hughes <sterling@bumblebury.com> wrote:
> Hi, > > So I figure I'll restart this discussion. There are a couple of reasons > I want to bundle libxml2: > > 1) XML support is crucial. You may not like XML, but its the standard > for data exchange these days, and is incredibly important when > interoperating with external services. A PHP installation should simply > not exist without XML support, if it does, then imho we've done > something wrong. Applications that are distributed need to rely on > certain features in PHP, XML is one such feature. I think this much has > already been agreed upon. > > 2) Libxml2 may be installed everywhere, but the version we rely upon > isn't available everywhere. As witnessed by a message to the list by > michael, and a problem that someone else had over IRC. Its fine to > allow people to use external versions of libxml2, however, we need a > recent version to operate. For example, schema support is pretty > essential, as its becoming the new DTD format for XML (and is required > for proper SOAP support). > > Its further helpful that users can rely on a certain implementation of > libxml2 distributed with a certain version of PHP. > > Anyhow, I thought I'd again bring this up before the beta. What do > people think?
I am +1 on bundling libxml2. I think Sterling is right - PHP should have a decent XML support "by default". XML is truly used a lot around the web development today, and I think PHP needs a better competitiveness to other languages, XML-wise.
-- Maxim Maletsky maxim@php.net

Adam Dickmeiss

23 years ago
On Fri, Jun 27, 2003 at 12:25:39PM -0400, Sterling Hughes wrote:
> Hi, > > So I figure I'll restart this discussion. There are a couple of reasons > I want to bundle libxml2: > > 1) XML support is crucial. You may not like XML, but its the standard > for data exchange these days, and is incredibly important when > interoperating with external services. A PHP installation should simply > not exist without XML support, if it does, then imho we've done > something wrong. Applications that are distributed need to rely on > certain features in PHP, XML is one such feature. I think this much has > already been agreed upon.
If libxml2 is required , then require it. The 1-3 % of Unix users that don't have it installed should be able to install libxml2 themselves.. It is easy. The windows users rarely compile PHP themselves, so they won't notice anyway. What's more is that the libxml2 as an external package is usually built with both iconv and zlib support. Is iconv and zlib going to be bundled too?
> 2) Libxml2 may be installed everywhere, but the version we rely upon > isn't available everywhere. As witnessed by a message to the list by > michael, and a problem that someone else had over IRC. Its fine to > allow people to use external versions of libxml2, however, we need a > recent version to operate. For example, schema support is pretty > essential, as its becoming the new DTD format for XML (and is required > for proper SOAP support).
You're on a grey area when you try to mix the same dynamic/static libraries of differnt versions within one executable. ext/yaz (yaz) is going to suffer from it sooner or later. In fact any library using libxml2 may be suffering from it. How about libxslt which is uses libxml2 too. libxslt may be linked with the dynamic one, but during run time it is actually using the bundled libxml2 from PHP ! Bottomline is that it becomes difficult which one is using which one. And difficult to debut too. Shared libs are wonderful but there is not the error message: "symbol multiple defined". I bet in the future (if not already) there are other "sub" libraries using very useful lib libxml2. If there are -well-defined- rules for this, I'd like to know, so that I can deal with it..
> Its further helpful that users can rely on a certain implementation of > libxml2 distributed with a certain version of PHP. > > Anyhow, I thought I'd again bring this up before the beta. What do > people think? > > -Sterling > > -- > Good judgement comes from experience, and experience comes from > bad judgement. > - Fred Brooks > > -- > PHP Internals - PHP Runtime Development Mailing List > To unsubscribe, visit: http://www.php.net/unsub.php
-- Adam Dickmeiss mailto:adam@indexdata.dk http://www.indexdata.dk Index Data T: +45 33410100 Mob.: 212 212 66