I notice that the log4cpp README has the following:
<quote>
I initially planned to license Log for C++ under the LGPL, but due to the comments on the FSF site (http://www.gnu.org/philo
sophy/why-not-lgpl.html), I switched GPL, at least for the initial release. Comments on this decision are appreciated.
</quote>
I am a developer who works on contract for various companies; I love log4j and use it extensively. I would like to use log4cpp in my C++ work. However, by the rules of GPL, I cannot statically link GPL code, nor distribute it with stuff I create for my clients.
As a result, I am forced to go elsewhere for logging facilities. This is a shame for me (I have to do extra work, something I always try to avoid :-), and log4cpp doesn't get the contributions I could have made. This situation may even lead to *another* log4j -> cpp port under a different licence, splitting the potential developer community.
Can I suggest that this code be licenced under the APL (Apache Public Licence) like log4j? Or at least under LGPL?
As far as I can see, all the code so far comes from only 2 contributors, so getting agreement to change the licence shouldn't be too difficult :-)
The longer the delay, the more contributors need to be consulted to change the licence (at least as far as my shaky legal knowledge goes...)
Cheers, Simon
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I must agree with Simon. I am glad he mentioned this because I did not realize log4cpp was distributed under a GPL license - I naively assumed the license was the same as log4j. In light of this we will also be abandoning log4cpp and I will return to work on our own C++ version of log4j to be used in-house. Please let me know if you change your mind on the licensing issue.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Thanks for the feedback on the license. I've got comments from several people now and feel I can make a more balanced decision now compared to when I started the project.
First, I'd like to state I do subcribe RMS's view that BSD or Apache style licenses are only halfway there: they help promote an open source community but do not protect the end user in any way.
Of course RMS promotes the GPL as assurance of freedom for users. This license seems to work well for some projects, like gcc or the Linux kernel. However for a small project like log4cpp this license may prevent the project from gaining critical mass, in effect killing it, because people will start their own ports, etc. Surely this is not my intention.
Therefore congratiulations, you made me reconsider the licensing! You suggest the APL.I cannot do this however, because log4cpp is not part of the Apache Project. But more importantly I feel the APL is to permissive to proprietary developers. I don not want users to think some product is using log4cpp, while in fact it is some bastardization people cannot verify because the source is lacking. Therefore my current plan is to switch (back) to the LGPL. This allows developers to keep their proprietary products proprietary, while forcing them to make public their modifications to log4cpp. I'll ask Cedric and Mark tonight if they agree. If they do, I'll roll a v0.2.1 under LPGL tomorrow.
Again, feedback, hurrays and boos are appreciated.
Bastiaan
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Excellent news! Thanks, Bastiaan, LGPL will
do fine.
Just for the record, I still prefer BSD-style licences, eg APL. It doesn't seem to prevent people from contributing to a project (Apache seems to be doing ok...).
When incorporating LGPL code into a commercial project, there is some management/review paperwork that needs to be done to ensure that the licence hasn't been *accidentally* violated.
As I prefer to be developing rather than doing this kind of stuff, APL seems nicer. I'm not talking about deliberately keeping changes proprietory; that always seemed pointless to me, as there are then problems upgrading to the next official release (it's also rude to take and not contribute...)
Nevertheless, for a smallish, well-defined project (such as log4cpp), the LGPL is fine.
Thanks to all you log4cpp people for the work done so far; I look forward to evaluating what's here, and maybe helping out a bit...
Regards,
Simon
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Strictly speaking, translations of copyrighted material belong to the original author as much as to the translator. For example, if I translate a Stephen King book to French, I must first obtain permission from King and the result will be copyrighted by him. That's copyright law. The Apache Public License allows anyone to make changes to the code and redistribute the changed version. Thus, you do not need permission from the copyright owner (i.e. the ASF) in this case because it is explicitly granted in the license.
To recap, since log4cpp is a log4j translation it should be copyrighted by the Apache Software foundation. I don't think anyone at the foundation will legally challenge you in court if you use a different license (e.g. LGPL) but what ignoring the ASF copyright is not entirely legal. On the other hand, I am not a lawyer... :-)
Congratulations on the release of 0.2.1 by the way, Ceki
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I'm happy to see the change. The LGPL license should allow us to use the software as we had originally planned. I should be able to contribute some in the near future as well.
On a side note though, I noticed you haven't updated your README file to reflect the new licensing information...
Thanks!
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I am also happy to see that the license has been changed to LGPL instead of the GPL. However, I am not entirely convinced that log4j translations have the liberty to use any other license than the APL. You can't expect the law to protect you when it's to your advantage and transgress it when it is not. The law is the way it is.
Bastiaan and co. are doing a very good job in translating log4j to java. However, a translation is a translation is a translation.
Feel free to ignore my opinion as I am not a lawyer. Ceki
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Nathalie, thanks for the remark: I did update CHANGELOG, NEWS and COPYING, but missed README indeed. I'll fix it tonight.
BTW, other people have expressed interest in using log4cpp under MS Windows too. If you've made progress in this area, it may be worthwhile to submit it already, so they can join in on your efforts.
Regards,
Bastiaan
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
You state that log4cpp is a translaton for log4j. I think that it is not such a clear cut case. log4cpp does try to provide an API very similar to log4j's, but the implementation has been done independently, and is not a direct translation of log4j. IANAL, so I don't know whether creating similar APIs constitutes copyright infringement. If you have proof it does, please let me know. I don't want to violate any licenses, even if I can get away with it. It would weaken the strength of any license log4cpp is released under.
Without wanting to start an endless dispute here, I see 2 other reasons why the ASF has nothing todo with log4cpp:
1) all API work on log4cpp was done when log4j was still under the IBM Public License. Oh wait, that would mean IBM sueing me instead of the ASF. Hmm, don't know what I'd prefer ;-)
2) you yourself, primary copyright holder, suggested me to use either a GPL, LGPL or BSD license and avoid the IBM Public License. I think that implies your permission to actually release log4cpp under GPL as well :-).
Anyway, if log4cpp legally has to be part of the Apache Project, please let me know how to proceed. I do prefer the LGPL license myself, but well, having a good log library is more important than endless bickering about licenses.
Cheers,
Bastiaan
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Yes, it is not a clear cut case. IP never is... I nor the ASF has any interest in imposing upon you a license that you don't like. We are not doing the work on log4jcpp, you are.
However, if you want to play by the rules, then log4cpp has to be APLed. This can be done by inserting the following lines to the source files.
/*
* Copyright (C) The Apache Software Foundation. All rights reserved.
*
* This software is published under the terms of the Apache Software
* License version 1.1, a copy of which has been included with this
* distribution in the LICENSE.APL file. */
You also have to include the LICENSE.APL file somewhere in the log4cpp distribution.
If you think that this is unfair, then do as you prefer. I will continue to support log4cpp in any way I can. Regards, Ceki
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I notice that the log4cpp README has the following:
<quote>
I initially planned to license Log for C++ under the LGPL, but due to the comments on the FSF site (http://www.gnu.org/philo
sophy/why-not-lgpl.html), I switched GPL, at least for the initial release. Comments on this decision are appreciated.
</quote>
I am a developer who works on contract for various companies; I love log4j and use it extensively. I would like to use log4cpp in my C++ work. However, by the rules of GPL, I cannot statically link GPL code, nor distribute it with stuff I create for my clients.
As a result, I am forced to go elsewhere for logging facilities. This is a shame for me (I have to do extra work, something I always try to avoid :-), and log4cpp doesn't get the contributions I could have made. This situation may even lead to *another* log4j -> cpp port under a different licence, splitting the potential developer community.
Can I suggest that this code be licenced under the APL (Apache Public Licence) like log4j? Or at least under LGPL?
As far as I can see, all the code so far comes from only 2 contributors, so getting agreement to change the licence shouldn't be too difficult :-)
The longer the delay, the more contributors need to be consulted to change the licence (at least as far as my shaky legal knowledge goes...)
Cheers, Simon
I must agree with Simon. I am glad he mentioned this because I did not realize log4cpp was distributed under a GPL license - I naively assumed the license was the same as log4j. In light of this we will also be abandoning log4cpp and I will return to work on our own C++ version of log4j to be used in-house. Please let me know if you change your mind on the licensing issue.
Hi Simon,
Thanks for the feedback on the license. I've got comments from several people now and feel I can make a more balanced decision now compared to when I started the project.
First, I'd like to state I do subcribe RMS's view that BSD or Apache style licenses are only halfway there: they help promote an open source community but do not protect the end user in any way.
Of course RMS promotes the GPL as assurance of freedom for users. This license seems to work well for some projects, like gcc or the Linux kernel. However for a small project like log4cpp this license may prevent the project from gaining critical mass, in effect killing it, because people will start their own ports, etc. Surely this is not my intention.
Therefore congratiulations, you made me reconsider the licensing! You suggest the APL.I cannot do this however, because log4cpp is not part of the Apache Project. But more importantly I feel the APL is to permissive to proprietary developers. I don not want users to think some product is using log4cpp, while in fact it is some bastardization people cannot verify because the source is lacking. Therefore my current plan is to switch (back) to the LGPL. This allows developers to keep their proprietary products proprietary, while forcing them to make public their modifications to log4cpp. I'll ask Cedric and Mark tonight if they agree. If they do, I'll roll a v0.2.1 under LPGL tomorrow.
Again, feedback, hurrays and boos are appreciated.
Bastiaan
Excellent news! Thanks, Bastiaan, LGPL will
do fine.
Just for the record, I still prefer BSD-style licences, eg APL. It doesn't seem to prevent people from contributing to a project (Apache seems to be doing ok...).
When incorporating LGPL code into a commercial project, there is some management/review paperwork that needs to be done to ensure that the licence hasn't been *accidentally* violated.
As I prefer to be developing rather than doing this kind of stuff, APL seems nicer. I'm not talking about deliberately keeping changes proprietory; that always seemed pointless to me, as there are then problems upgrading to the next official release (it's also rude to take and not contribute...)
Nevertheless, for a smallish, well-defined project (such as log4cpp), the LGPL is fine.
Thanks to all you log4cpp people for the work done so far; I look forward to evaluating what's here, and maybe helping out a bit...
Regards,
Simon
Hi,
Strictly speaking, translations of copyrighted material belong to the original author as much as to the translator. For example, if I translate a Stephen King book to French, I must first obtain permission from King and the result will be copyrighted by him. That's copyright law. The Apache Public License allows anyone to make changes to the code and redistribute the changed version. Thus, you do not need permission from the copyright owner (i.e. the ASF) in this case because it is explicitly granted in the license.
To recap, since log4cpp is a log4j translation it should be copyrighted by the Apache Software foundation. I don't think anyone at the foundation will legally challenge you in court if you use a different license (e.g. LGPL) but what ignoring the ASF copyright is not entirely legal. On the other hand, I am not a lawyer... :-)
Congratulations on the release of 0.2.1 by the way, Ceki
I'm happy to see the change. The LGPL license should allow us to use the software as we had originally planned. I should be able to contribute some in the near future as well.
On a side note though, I noticed you haven't updated your README file to reflect the new licensing information...
Thanks!
I am also happy to see that the license has been changed to LGPL instead of the GPL. However, I am not entirely convinced that log4j translations have the liberty to use any other license than the APL. You can't expect the law to protect you when it's to your advantage and transgress it when it is not. The law is the way it is.
Bastiaan and co. are doing a very good job in translating log4j to java. However, a translation is a translation is a translation.
Feel free to ignore my opinion as I am not a lawyer. Ceki
Nathalie, thanks for the remark: I did update CHANGELOG, NEWS and COPYING, but missed README indeed. I'll fix it tonight.
BTW, other people have expressed interest in using log4cpp under MS Windows too. If you've made progress in this area, it may be worthwhile to submit it already, so they can join in on your efforts.
Regards,
Bastiaan
Hi Ceki,
You state that log4cpp is a translaton for log4j. I think that it is not such a clear cut case. log4cpp does try to provide an API very similar to log4j's, but the implementation has been done independently, and is not a direct translation of log4j. IANAL, so I don't know whether creating similar APIs constitutes copyright infringement. If you have proof it does, please let me know. I don't want to violate any licenses, even if I can get away with it. It would weaken the strength of any license log4cpp is released under.
Without wanting to start an endless dispute here, I see 2 other reasons why the ASF has nothing todo with log4cpp:
1) all API work on log4cpp was done when log4j was still under the IBM Public License. Oh wait, that would mean IBM sueing me instead of the ASF. Hmm, don't know what I'd prefer ;-)
2) you yourself, primary copyright holder, suggested me to use either a GPL, LGPL or BSD license and avoid the IBM Public License. I think that implies your permission to actually release log4cpp under GPL as well :-).
Anyway, if log4cpp legally has to be part of the Apache Project, please let me know how to proceed. I do prefer the LGPL license myself, but well, having a good log library is more important than endless bickering about licenses.
Cheers,
Bastiaan
Yes, it is not a clear cut case. IP never is... I nor the ASF has any interest in imposing upon you a license that you don't like. We are not doing the work on log4jcpp, you are.
However, if you want to play by the rules, then log4cpp has to be APLed. This can be done by inserting the following lines to the source files.
/*
* Copyright (C) The Apache Software Foundation. All rights reserved.
*
* This software is published under the terms of the Apache Software
* License version 1.1, a copy of which has been included with this
* distribution in the LICENSE.APL file. */
You also have to include the LICENSE.APL file somewhere in the log4cpp distribution.
If you think that this is unfair, then do as you prefer. I will continue to support log4cpp in any way I can. Regards, Ceki