Thread
-
Re: contrib and licensing
Dann Corbit <dcorbit@connx.com> — 2003-04-02T23:11:54Z
[snip] > a program in /contrib linking to an LGPL lib has never been > an issue. > Linking to LGPL libs doesn't encumber the software linking to it. > > > > If that is a real objective, I'm surprised. > > > > The base source tree has always been as BSD pure as we can > make it ... > > its never been kept a secret ... > > True. But not linking to LGPLd libs would be a bit extreme there. ======================================================================== ======= NOTE UP FRONT -- Please email all flames directly to me at dcorbit@connx.com ... ======================================================================== ======= I disagree. Because of the language in the LGPL: http://www.gnu.org/copyleft/lesser.txt I would not use LGPL tools in any finished commercial project. For me, if PostgreSQL linked against LGPL libraries, it would kill its usefulness for me completely. One interpretation of the following: "For example, if you distribute copies of the library, whether gratis or for a fee, you must give the recipients all the rights that we gave you. You must make sure that they, too, receive or can get the source code. If you link other code with the library, you must provide complete object files to the recipients, so that they can relink them with the library after making changes to the library and recompiling it. And you must show them these terms so they know their rights." Would be that tools that use LGPL libraries must also be distributed without cost. Consider this section: "However, linking a "work that uses the Library" with the Library creates an executable that is a derivative of the Library (because it contains portions of the Library), rather than a "work that uses the library". The executable is therefore covered by this License. Section 6 states terms for distribution of such executables." LGPL is also a virus [IMO-YMMV]. Please send all flames directly to my email address [dcorbit@connx.com] so we don't fill up the PG list with advocacy stuff. Commercial systems can get very paranoid over questionable legal language. Even if what it says is not "what was intended" -- that is still what it says and might possibly be enforced at some future time. Pure opinion of mine says... The BSD license is a very good license. The ACE license is a very good license. http://www.cs.wustl.edu/~schmidt/ACE-copying.html The MIT license is a very good license. There are others: http://www.opensource.org/licenses/ Now, I don't care if PostgreSQL has a TON of GPL stuff in it as long as it is OPTIONAL. I don't care if you have to use GPL/LGPL tools to build it, as long as they are not directly linked into it.
-
Re: contrib and licensing
Lamar Owen <lamar.owen@wgcr.org> — 2003-04-03T01:56:54Z
On Wednesday 02 April 2003 18:11, Dann Corbit wrote: [snip] > > True. But not linking to LGPLd libs would be a bit extreme there. > I disagree. Because of the language in the LGPL: > http://www.gnu.org/copyleft/lesser.txt > > I would not use LGPL tools in any finished commercial project. For me, > if PostgreSQL linked against LGPL libraries, it would kill its > usefulness for me completely. > "However, linking a "work that uses the Library" with the Library > creates an executable that is a derivative of the Library (because it > contains portions of the Library), rather than a "work that uses the > library". The executable is therefore covered by this License. > Section 6 states terms for distribution of such executables." <stifles ROTFL> Everyone does realize that on Linux PostgreSQL binaries link against glibc, which is LGPL...... -- Lamar Owen WGCR Internet Radio 1 Peter 4:11
-
Re: contrib and licensing
Stephan Szabo <sszabo@megazone23.bigpanda.com> — 2003-04-03T02:59:03Z
On Wed, 2 Apr 2003, Lamar Owen wrote: > On Wednesday 02 April 2003 18:11, Dann Corbit wrote: > [snip] > > > True. But not linking to LGPLd libs would be a bit extreme there. > > > I disagree. Because of the language in the LGPL: > > http://www.gnu.org/copyleft/lesser.txt > > > > I would not use LGPL tools in any finished commercial project. For me, > > if PostgreSQL linked against LGPL libraries, it would kill its > > usefulness for me completely. > > > "However, linking a "work that uses the Library" with the Library > > creates an executable that is a derivative of the Library (because it > > contains portions of the Library), rather than a "work that uses the > > library". The executable is therefore covered by this License. > > Section 6 states terms for distribution of such executables." > > <stifles ROTFL> > > Everyone does realize that on Linux PostgreSQL binaries link against glibc, > which is LGPL...... I assume the standard dynamic linker counts as "a suitable shared library mechanism for linking with the Library" as per LGPL 6b. ;)
-
Re: contrib and licensing
Tom Lane <tgl@sss.pgh.pa.us> — 2003-04-03T03:39:57Z
Lamar Owen <lamar.owen@wgcr.org> writes: > <stifles ROTFL> > Everyone does realize that on Linux PostgreSQL binaries link against glibc, > which is LGPL...... And your point is? On other Unixoid systems you can link against BSD-license libc code, or some-random-proprietary-license code from HP or Sun or whomever. glibc doesn't have a monopoly in that sphere. But mlw is offering code that will *only* run against a single implementation that is LGPL licensed. That makes it effectively LGPL. regards, tom lane
-
Re: contrib and licensing
Lamar Owen <lamar.owen@wgcr.org> — 2003-04-03T04:53:38Z
On Wednesday 02 April 2003 22:39, Tom Lane wrote: > Lamar Owen <lamar.owen@wgcr.org> writes: > > <stifles ROTFL> > > Everyone does realize that on Linux PostgreSQL binaries link against > > glibc, which is LGPL...... > And your point is? That everyone is being entirely too picky. Hey, we link against other things, too. Some aren't LGPL. The readline example is a good one, incidentally: it's GPL. And its stubs are in the backend, of all places. At least on Linux. Gotta watch any 'static builds' then. > On other Unixoid systems you can link against BSD-license libc code, or > some-random-proprietary-license code from HP or Sun or whomever. glibc > doesn't have a monopoly in that sphere. But mlw is offering code that > will *only* run against a single implementation that is LGPL licensed. > That makes it effectively LGPL. One could clean-room reimplement if the demand is enough. But, if one wants to get picky, let's talk about the license issue of PL/Python. The PSF looks like a rat's nest. -- Lamar Owen WGCR Internet Radio 1 Peter 4:11
-
Re: contrib and licensing
Tom Lane <tgl@sss.pgh.pa.us> — 2003-04-03T05:04:33Z
Lamar Owen <lamar.owen@wgcr.org> writes: >> And your point is? > That everyone is being entirely too picky. Hey, we link against other > things, too. Some aren't LGPL. The readline example is a good one, > incidentally: it's GPL. Yeah, it's an excellent example: there is an alternative implementation under a different license (libedit). > And its stubs are in the backend, of all places. Really? I must have missed that. > One could clean-room reimplement if the demand is enough. Certainly, any of this stuff *could* be reimplemented. But for stuff that's being proposed for contrib, what's theoretically possible given enough demand isn't the important real-world issue. Contrib stuff is, by definition, stuff that hasn't yet had all that much work put into it. So it's appropriate to ask where it can really run *right now*. regards, tom lane
-
Re: contrib and licensing
Lamar Owen <lamar.owen@wgcr.org> — 2003-04-03T05:24:17Z
On Wednesday 02 April 2003 21:59, Stephan Szabo wrote: > On Wed, 2 Apr 2003, Lamar Owen wrote: > > > "However, linking a "work that uses the Library" with the Library > > > creates an executable that is a derivative of the Library (because it > > > contains portions of the Library), rather than a "work that uses the > > > library". The executable is therefore covered by this License. > > > Section 6 states terms for distribution of such executables." > > Everyone does realize that on Linux PostgreSQL binaries link against > > glibc, which is LGPL...... > I assume the standard dynamic linker counts as "a suitable shared library > mechanism for linking with the Library" as per LGPL 6b. ;) Then I guess we had better not make any static linked builds, no? The whole thread just got ridiculous, that's all. So I attempted to illuminate the 'ridiculosity' of the whole matter. Speaking of 'ridiculous' reminds me: Readline is full-bore GPL. There's no 6b exception there. We dynamically link readline, on most Linux distributions. Of course, Tom has a point; there are alternatives available. None are as good as readline, though. Which is one of the reasons it's GPL'd in the first place, according the the GPL FAQ. In fact, the GPL FAQ contains this little tidbit: 'If a library is released under the GPL (not the LGPL), does that mean that any program which uses it has to be under the GPL? Yes, because the program as it is actually run includes the library.' :-O Hmmm..... 'as it is actually run' means with the library embedded in the resulting dynamically linked program -- just because it's dynamically linked doesn't mean that code isn't part of the program. Should we say 'bye bye' to readline? Of course, there's the issue of the BSD license being 'compatible' with the GPL. Then it gets hairy. And picky. Fun fun fun. -- Lamar Owen WGCR Internet Radio 1 Peter 4:11 -
Re: contrib and licensing
Lamar Owen <lamar.owen@wgcr.org> — 2003-04-03T05:35:15Z
On Thursday 03 April 2003 00:04, Tom Lane wrote: > Lamar Owen <lamar.owen@wgcr.org> writes: > > And its stubs are in the backend, of all places. > Really? I must have missed that. On Linux as compiled in Red Hat 9, at least: [lowen@localhost lowen]$ ldd /usr/bin/postgres libpam.so.0 => /lib/libpam.so.0 (0x4002c000) libssl.so.4 => /lib/libssl.so.4 (0x40034000) libcrypto.so.4 => /lib/libcrypto.so.4 (0x40069000) libkrb5.so.3 => /usr/kerberos/lib/libkrb5.so.3 (0x4015a000) libz.so.1 => /usr/lib/libz.so.1 (0x401b8000) libreadline.so.4 => /usr/lib/libreadline.so.4 (0x401c6000) libtermcap.so.2 => /lib/libtermcap.so.2 (0x401f3000) libcrypt.so.1 => /lib/libcrypt.so.1 (0x401f7000) libresolv.so.2 => /lib/libresolv.so.2 (0x40224000) libnsl.so.1 => /lib/libnsl.so.1 (0x40236000) libdl.so.2 => /lib/libdl.so.2 (0x4024b000) libm.so.6 => /lib/tls/libm.so.6 (0x4024e000) libc.so.6 => /lib/tls/libc.so.6 (0x42000000) libcom_err.so.3 => /usr/kerberos/lib/libcom_err.so.3 (0x40271000) libgssapi_krb5.so.2 => /usr/kerberos/lib/libgssapi_krb5.so.2 (0x40273000) libk5crypto.so.3 => /usr/kerberos/lib/libk5crypto.so.3 (0x40286000) /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000) [lowen@localhost lowen]$ /usr/bin/postgres --version postgres (PostgreSQL) 7.3.2 [lowen@localhost lowen]$ > Certainly, any of this stuff *could* be reimplemented. But for stuff > that's being proposed for contrib, what's theoretically possible given > enough demand isn't the important real-world issue. Contrib stuff is, > by definition, stuff that hasn't yet had all that much work put into it. > So it's appropriate to ask where it can really run *right now*. FWIW, very few things in contrib use anything beyond libc. The dblink stuff is a notable exception. It needs an SSL and a Kerberos 5 library. If the library is reasonably popular (meaning it's in at least one major OS distribution, including Debian) then 'what's the harm?' If the lib isn't that popular, then, regardless of license the question 'should something that uses it even be here' should be asked. The issue of a straight GPL library is serious for us; a LGPL one less so. -- Lamar Owen WGCR Internet Radio 1 Peter 4:11 -
Re: contrib and licensing
Mark Woodward <pgsql@mohawksoft.com> — 2003-04-03T12:50:16Z
Tom Lane wrote: > > >On other Unixoid systems you can link against BSD-license libc code, or >some-random-proprietary-license code from HP or Sun or whomever. glibc >doesn't have a monopoly in that sphere. But mlw is offering code that >will *only* run against a single implementation that is LGPL licensed. >That makes it effectively LGPL. > > Here is my "vision" for lack of a better term. Server 'A' runs a "web services" version of a PostgreSQL server, (or any soap server) I have a working prototype that works. Server 'B' runs a different instance of PostgreSQL. With the ability to return multiple columns in a set of rows from a function, it should be possible to do this: select foo.a, bar.b from foo, soapexec('http://somehost/pgsql?query=select+b+from+bar') as bar where foo.b = bar.b; (or something to that effect, the SQL may not be perfect.) To be able to do that, we need: some HTTP request code a solid XML/SOAP parser. The "soapexec" function needs to be able to do a few things: Return more than one column in a multirow set. Find out the field names that are expected. Find out the datatypes that are expected to be returned to the query. Tom, when one creates a function, can the function tell, in an efficient way, what data types and names may be expected? I have been talking about adding this feature to a few developers not involved with PostgreSQL, and they are finatic about the idea. As far as I can tell no other DB does this. > > > -
Re: contrib and licensing
Tom Lane <tgl@sss.pgh.pa.us> — 2003-04-03T14:29:39Z
Lamar Owen <lamar.owen@wgcr.org> writes: >>> And its stubs are in the backend, of all places. >> Really? I must have missed that. > On Linux as compiled in Red Hat 9, at least: > [lowen@localhost lowen]$ ldd /usr/bin/postgres > libreadline.so.4 => /usr/lib/libreadline.so.4 (0x401c6000) That's because our build mechanism links *all* needed libraries in *all* executables, rather than trying to distinguish which ones are actually used by each executable. The ldd indication is the only connection to libreadline --- if it had been a statically-linked situation, you'd find no trace of readline (nor several other of these libraries, I suspect) in the backend executable. regards, tom lane
-
Re: contrib and licensing
Lamar Owen <lamar.owen@wgcr.org> — 2003-04-03T16:38:59Z
On Thursday 03 April 2003 09:29, Tom Lane wrote: > Lamar Owen <lamar.owen@wgcr.org> writes: > >>> And its stubs are in the backend, of all places. > >> Really? I must have missed that. > > On Linux as compiled in Red Hat 9, at least: > > [lowen@localhost lowen]$ ldd /usr/bin/postgres > > libreadline.so.4 => /usr/lib/libreadline.so.4 (0x401c6000) > That's because our build mechanism links *all* needed libraries in *all* > executables, rather than trying to distinguish which ones are actually > used by each executable. The ldd indication is the only connection to > libreadline --- if it had been a statically-linked situation, you'd find > no trace of readline (nor several other of these libraries, I suspect) > in the backend executable. As I said, its 'stub' is there. But it is in (and used by) psql (as of 7.3.2). -- Lamar Owen WGCR Internet Radio 1 Peter 4:11
-
Re: contrib and licensing
Tom Lane <tgl@sss.pgh.pa.us> — 2003-04-03T16:47:38Z
Lamar Owen <lamar.owen@wgcr.org> writes: > But it is in (and used by) psql (as of 7.3.2). Certainly. I don't see a problem with that as far as the source distribution goes; you can build it with readline, libedit, or neither. Binary distributions are another matter. I think a pretty good case could be made for switching the RPMs to use libedit, if one wants to be morally pristine about license issues. regards, tom lane