based on the current license at the bottom of the http://www.nettiers.com/ page the license is GPL .
since my English isn't that good - can someone tell me in simple words what does that mean ?
does it apply to the template only or to the generated code as well ?
if i make changes to the template for use with my commercial product do i need to publish my generated code ? all my code? what if my generated code references a class library that i wrote does that become GPL also ?
I just added a licensing page on the wiki that points to this thread.Thanks-Blake Niemyjski
CodeSmith Tools, LLC. Software Development Engineer
.NetTiers team | Visit http://www.nettiers.net
Just to be quite clear on this issue (I'm not a lawyer either...). We would never invoke the LGPL on anyone, it is merely there to preserve the templates from being ripped off and labeled under a different name. We encourage people to use it and customize it. We like to hear your feedback and want community contribution as there are many hard working people hours in these templates.
This includes the generated code being free from any license regardless of what the GPL or LGPL states. And since the various authors and myself (community lead) believe this. I wouldn't worry about the ramifications of licensing as the only thing we care about is having our work ripped off and sold under a different name. That being said this thread is as good as written document in a court room and can be printed and stored in your company safe as proof that we would never come after anyone unless you renamed the templates and sold them
It's a pity nobody has bothered to respond. While I realise that logicaly the generated code is not covered by the LGPL license it would be good for there to be a clear statement on this.
Here is a link and another I found on this. Their is a post somewhere on the community site that details it.
My understanding is that the templates and its output are completely free for all usages of the templates ( commercial included ). However you can't redistribute the templates period (external site or under a different name).
i make changes to the template for use with my commercial product do i
need to publish my generated code ? all my code?"
"what if my generated
code references a class library that i wrote does that become GPL also ?"
I may be wrong. If I am someone please correct me. However as long as you don't sell the .netTiers templates or redistribute the templates under a different name, you should have nothing to worry about :).
Also, Hibernate has a good write up about this. It is covered under the same license.
---------------------------------------------------------------------- Member of the .NetTiers team | Visit http://www.nettiers.com----------------------------------------------------------------------
I'm afraid that the Hibernate LGPL write up is not quite the same because there is a fundamental difference between .netTiers and NHibernate/Hibernate. The License FAQ describes the nature of the LGPL because with Hibernate one links to the Hibernate libraries:
"The LGPL places copyleft
restrictions on the program itself but does not apply these
restrictions to other software that merely links with the program.
There are, however, certain other restrictions on this software." (from http://en.wikipedia.org/wiki/GNU_Lesser_General_Public_License)
However with .netTiers template generated code there is no linking to the LGPL templates, just the output of the templates, which just so happens to be more code (it code be any text). The generated code itself does not have any copyright restrictions applied to it. The point I was making is that it is surprising that there is no clear statement on this to be found in the .netTiers documentation (at least that I could find).
Their really hasn't ever been that much information on this topic. We should get this added to the wiki. If you have experience with the LGPL would you mind writing up something for the wiki?Thanks-Blake Niemyjski
Well, I am no lawyer, and I don't know any. I try and avoid them as much as possible lol.
I can't imagine for the life of me this being an issue. The "Templates" are covered under the LGPL. The generated code since it is generated from a proprietary data model that is protected under intellectual rights, I can't imagine that being contstrained at all by the LGPL.
If a professional photographer used Paint.Net to modify a photo that might be worth thousands of dollars, does that picture now have no copyright and need to be made public since it was modified by something that is Open Source??? I don't think so.
The LGPL is there for people that want to "Extend" the open source portions of a project and helps protect that piece to being open source. Someone can't come in and change nettiers and release it under some other name without permission. Again, this applies only to the templates.
**this is the opinion of a programmer and in no way implies that I am correct lol.
Yes, I am no lawyer either but my experience is that the LGPL was created to specifically allow 3rd-party linking without having your code tainted by the license (what people call a viral action) when using Dynamic Linking. It was created to allow commercial application to be written against the GNU LibC Library and thus improve the ecosystem.
Notes to take into consideration:
Now, where this could get shady without consulting a lawyer:
NOTE: I would have editied my previous post but got an error so have added this as a new post
Disclaimer: I am not a lawyer and this post is made with only my limited
understanding of the GNU GPL & LGPL Licenses. The scope of this investigation was into the output of the netTiers templates and not a code analysis. Legal advise should
always be from a fully qualified professional
netTiers License Investigation
According to the FSF, any output from a L/GPL application is not covered by the L/GPL license unless substantial parts of the output are copied from the text in the program. This is true in the case of netTiers as it's templates are copied directly to the output.
This situation has happened before with the GNU Bison parser. This program output a parser that contained a verbatim copy of sizeable pieces of the yyparse funcation. The authors added an exception to the output to allow proprietory use of this outputted code.
The netTiers team can do the same by adding and adjusting the following clause to all the templates:
//// This file is covered under the GNU Lesser General License (LGPL) v2.1 or later// This license is available at http://www.gnu.org/licenses/lgpl.html//// As a special exception, when this file is copied into a netTiers output file// you may use that output file without restriction. This special exception was // added by the netTiers team in version xxx of netTiers and applies to all // previous releases of the netTiers templates//
By adding this clause it still enables the applying of the LGPL license to the entire netTiers templates and also allowing generated code to be used in commerical applications without requiring those applications to become covered under LGPL license restrictions.
Further recommended Changes
I hope this clarifies that current situation and also put a remedy in place to answer any concerns that people may have with the netTiers template system.
Is there any possibility for you to zip templates and sell
them for example 100$ that we can buy .nettiers to have commercial license?
I'm not sure what a commercial license has anything to do with the code that is generated. This is something I wouldn't worry about at all.. We are a ISV and have stated a million times that the templates are to be used freely for what ever purpose including commercial. The only reason the license is on there is
We want people to use the templates. For the super paranoid people, I would add a text file to the root of your source code project saying the following. "The .netTiers team is the best, we used the .netTiers templates which can be found here (nettiers.com) because it helped us save valuable time and they gave us complete permission to use this in a commercial application or (insert random term here) application http://community.codesmithtools.com/forums/t/4985.aspx).
Please let me know if you have any questions.