|
Replies:
19
-
Last Post:
Oct 21, 2008 11:43 AM
by: Shai Almog
|
|
|
|
|
|
|
License agreement and obfuscation
Posted:
Oct 14, 2008 10:55 AM
|
|
|
Hi,
I am looking at using LWUIT for a commercial application. From the looks of the license agreement for the redistributable .jar, I would not be allowed to optimize and obfuscate the archive as part of my build process, is that correct?
|
|
|
|
|
|
|
Re: License agreement and obfuscation
Posted:
Oct 14, 2008 7:42 PM
in response to: badgrs
|
|
|
Ouch - are you serious ?? What part of the agreement are you referring to ?
:-/
|
|
|
|
|
|
|
|
Re: License agreement and obfuscation
Posted:
Oct 14, 2008 10:20 PM
in response to: badgrs
|
|
|
|
|
Hi, you would be allowed to use the binary version without restriction. As far as I can tell (and I am not a lawyer or a Sun representative for that matter) it is also legal to use the LWUIT sources to compile and build. There were some discussions with the lawyers to clarify that but since I am not authorized in any way to say what is allowed and isn't just watch Terrences blog for clarifications there where it will be "official" from Sun: http://weblogs.java.net/blog/terrencebarr/
> Hi, > > I am looking at using LWUIT for a commercial application. From the > looks of the license agreement for the redistributable .jar, I > would not be allowed to optimize and obfuscate the archive as part > of my build process, is that correct? > [Message sent by forum member 'badgrs' (badgrs)] > > http://forums.java.net/jive/thread.jspa?messageID=306871 > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscribe@lwuit.dev.java.net > For additional commands, e-mail: users-help@lwuit.dev.java.net >
Shai Almog http://lwuit.blogspot.com/
[att1.html]
|
|
|
|
|
|
|
|
|
|
Re: License agreement and obfuscation
Posted:
Oct 15, 2008 2:14 AM
in response to: terrencebarr
|
|
|
Thanks for this clarification, Terrence. Now as many important and life-saving patches are only accessible via the source, what is the legal position on the following process:
- check out the source from SVN - modify the source locally (optional) - compile/obfuscate/package the modified local copy together with application source, into a single jar - use the jar as part of a commercial product.
I am sure you do understand that building from source is especially crucial at such early stage, where Shai and Chen are frequently committing patches for issues which else could pose 'blockers' for commercial development.
Cheers, Diego
|
|
|
|
|
|
|
|
Re: License agreement and obfuscation
Posted:
Oct 17, 2008 5:43 PM
in response to: drdth
|
|
|
> - check out the source from SVN > - modify the source locally (optional) > - compile/obfuscate/package the modified local copy > together with application source, into a single jar > - use the jar as part of a commercial product.
Note: it is not enough to ship the source code, you must also ship build scripts and the obfuscator in order to allow you users to build their own version of the jar. If the obfuscator is changing method names you have to ship it, because otherwise your existing application jars wont be able to use a locally modified version.
> I am sure you do understand that building from source > is especially crucial at such early stage, where Shai > and Chen are frequently committing patches for issues > which else could pose 'blockers' for commercial > development.
The Binaries you get from Sun have no special role, the GPL is focused on the source. If you build the binaries or Sun does, does not make a difference.
Gruss Bernd
|
|
|
|
|
|
|
|
Re: License agreement and obfuscation
Posted:
Oct 17, 2008 7:48 PM
in response to: ecki
|
|
|
Bernd, your statement contradicts to what Terrence wrote, doesn't it ?
> Note: it is not enough to ship the source code..
How do you come to this conclusion..are you referring to the modified source one would be using for Lwuit or even the one of a commercial application (which is NOT open source) ?
In the classpath exception it says that:"As a special exception, the copyright holders of this library give you permission to link this library with independent modules to produce an executable, regardless of the license terms of these independent modules, and to copy and distribute the resulting executable under terms of your choice..."
I am not a lawyer but if the commercial application (excluding the recompiled Lwuit) is the 'independent module, then why would one need to ship the application code as well ? The term of choice then could be 'commercial', 'non-open course', couldn't it ?
Moreover, as far as I can see, the modified Lwuit source does not need to be physically shipped, but simply be made available for anyone: "Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code"
> The Binaries you get from Sun have no special role, > the GPL is focused on the source.
But the classpath exception is referring to the binaries.
|
|
|
|
|
|
|
|
Re: License agreement and obfuscation
Posted:
Oct 17, 2008 8:24 PM
in response to: drdth
|
|
|
> > Note: it is not enough to ship the source code.. > How do you come to this conclusion..are you referring > to the modified source one would be using for Lwuit > or even the one of a commercial application (which is > NOT open source) ?
The source for the modified library must be shipped, yes. Since the modified lib is based on the original one.
> In the classpath exception it says that:"As a special > exception, the copyright holders of this library give > you permission to link this library with independent > modules to produce an executable, regardless of the > license terms of these independent modules, and to > copy and distribute the resulting executable under > terms of your choice..."
Hmm, yes you are right, I was confusing that with the LGPL.
> Moreover, as far as I can see, the modified Lwuit > source does not need to be physically shipped, but > simply be made available for anyone: "Accompany it > with a written offer, valid for at least three years, > to give any third party, for a charge no more than > your cost of physically performing source > distribution, a complete machine-readable copy of the > corresponding source code"
Yes, but its easier to ship it, so you dont need to handle the archiving and logistics.
Gruss Bernd
|
|
|
|
|
|
|
|
Re: License agreement and obfuscation
Posted:
Oct 17, 2008 8:33 PM
in response to: ecki
|
|
|
Pheow, okay, thanks Bernd, you just gave me a bit of a shock there ! ;-D
|
|
|
|
|
|
|
|
Re: License agreement and obfuscation
Posted:
Oct 18, 2008 12:45 AM
in response to: ecki
|
|
|
|
|
> The Binaries you get from Sun have no special role, the GPL is > focused on the source. If you build the binaries or Sun does, does > not make a difference.
I am not a lawyer and can't speak officially but as far as my limited understanding goes this is untrue. Sun is the copyright holder of the code and so it can relicense the code under any license it desires (which is why we must have the SCA signed for every contribution). The binaries are distributed under the SLA which is not GPL compatible, this is not a problem for Sun to do since Sun owns the rights for the code and can do whatever it pleases (with one caveat). Sun has used such abilities in Open Office, NetBeans and other open source projects which it used to relicense the projects years after they were originally published.
The only caveat is that Sun can't take back code it already *knowingly* published under the GPL+CPE, so the code thats open source is there and Sun can't suddenly change its mind. The knowingly means that if I mistakenly publish something that isn't owned by Sun or for which I have no permission or knowledge to publish the license is void, I can't just decide on my own to open source something.
Shai Almog http://lwuit.blogspot.com/
[att1.html]
|
|
|
|
|
|
|
|
Re: License agreement and obfuscation
Posted:
Oct 21, 2008 3:04 AM
in response to: Shai Almog
|
|
|
This is in reply to Shai's post on http://forums.java.net/jive/thread.jspa?messageID=310906񋹺:
> >> (which the license prohibits unless you contribute > modifications). > > > > Not according to > http://forums.java.net/jive/thread.jspa? > > threadID=49676, or what am I missing here ? What > exactly do you > > mean by 'contribute' ? > > Not quite. That thread discuses whether obfuscation > is modification > which according to Sun's lawyers it is not. > Modifying the LWUIT source code in any way is > considered modification > in which case you need to comply by the GPL (the > class path exception > only holds to your code) and the GPL defines > contribute rather > vaguely. The general understanding I have (and again > not a lawyer or > anything official) is that you must host the modified > source code in > your site. > I think it would be OK if you contribute the code via > the incubator > project in which case java.net would host your > modifications for you, > however to do this you must sign the SCA first.
To settle this for once and all: could we please have a final statement from Sun if the following process is legal:
- check out the source from SVN - modify the source locally (optional) - compile/obfuscate/package the modified local copy together with application source, into a single jar - use the jar as part of a commercial product. - accompany the product with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code of the Lwuit modifications
Thanks in advance.
|
|
|
|
|
|
|
|
Re: License agreement and obfuscation
Posted:
Oct 21, 2008 3:54 AM
in response to: drdth
|
|
|
|
|
Hi, Terrences response previously in the thread seems very clear to me. Unlike myself Terrence is speaking officially for Sun as far as I understand.
> - check out the source from SVN > - modify the source locally (optional) > - compile/obfuscate/package the modified local copy together with > application source, into a single jar > - use the jar as part of a commercial product. > - accompany the product with a written offer, valid for at least > three years, to give any third party, for a charge no more than > your cost of physically performing source distribution, a complete > machine-readable copy of the corresponding source code of the Lwuit > modifications
You are allowed to do all of the above except for modify the code without contributing, Terrence said: "I'd like to confirm that Sun views the classpath exception as appropriate for the scenario you describe...."
He goes on to say: "So if you modify LWUIT source you are bound by the terms of the GPLv2 under which LWUIT is licensed."
Which means you can't change LWUIT without contributing source back based on the GPL.
> > Thanks in advance. > [Message sent by forum member 'drdth' (drdth)] > > http://forums.java.net/jive/thread.jspa?messageID=310938 > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscribe@lwuit.dev.java.net > For additional commands, e-mail: users-help@lwuit.dev.java.net >
Shai Almog http://lwuit.blogspot.com/
[att1.html]
|
|
|
|
|
|
|
|
Re: License agreement and obfuscation
Posted:
Oct 21, 2008 6:01 AM
in response to: Shai Almog
|
|
|
|
|
[att1.html] [terrence_barr.vcf] --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscribe@lwuit.dev.java.net For additional commands, e-mail: users-help@lwuit.dev.java.net
|
|
|
|
|
|
|
|
Re: License agreement and obfuscation
Posted:
Oct 21, 2008 6:51 AM
in response to: Shai Almog
|
|
|
> Hi, Terrences response previously in the thread seems very clear to me.
Yes, so does it to me and I have no issues with this in whatever way. Your statement regarding the "license prohibiting unless you contribute modifications" was what confused me, as I could not see why you mentioned this again.
The GPL clearly allows to contribute by "accompanying the product with a written offer...", which is a much more feasible option than the incubator and having to sign an SCA.
So let's all walk on to more interesting questions, I think we do agree
|
|
|
|
|
|
|
|
getLines from TextArea may have a problem.
Posted:
Oct 21, 2008 7:48 AM
in response to: drdth
|
|
|
Hi,
Basically, before a textArea is displayed, its public method of getLines() always returns an incorrect and very large number (seems using the wrong logic for parsing message into lines). But during the textArea’s painting, the getLines returns the right value (the logic somehow has been corrected).
Here is the code:
TextArea textArea = new TextArea(“quite long message, need over a page to display ...�);
textArea.setRows(textArea.getLines()); // textArea.setColumns(1);
textArea.setGrowByContent(true); addComponent(textArea);
To query getLins() anywhere here, you will not get the right number of lines.
The code may need to be looked into.
Many thanks,
Qunhuan
|
|
|
|
|
|
|
|
Re: getLines from TextArea may have a problem.
Posted:
Oct 21, 2008 11:43 AM
in response to: Qunhuan Mei
|
|
|
|
|
Hi, this is not fixable. The layout manager hasn't determined the size of the text area hence the width is 0 + padding/margin so lines == number of characters.
The current SVN version works with this more intelligently by enabling layout only after init.
> Hi, > > Basically, before a textArea is displayed, its public method of > getLines() always returns an incorrect and very large number (seems > using the wrong logic for parsing message into lines). But during > the textArea’s painting, the getLines returns the right value (the > logic somehow has been corrected). > > Here is the code: > > TextArea textArea = new TextArea(“quite long message, need over a > page to display ...�); > > textArea.setRows(textArea.getLines()); // > textArea.setColumns(1); > > textArea.setGrowByContent(true); > addComponent(textArea); > > To query getLins() anywhere here, you will not get the right number > of lines. > > The code may need to be looked into. > > Many thanks, > > Qunhuan
Shai Almog http://lwuit.blogspot.com/
[att1.html]
|
|
|
|
|
|
|
|
Re: License agreement and obfuscation
Posted:
Oct 15, 2008 2:43 AM
in response to: badgrs
|
|
|
Diego,
Understood. What you describe is standard standard development practice and is covered by my reply to the comment on my blog. Quote:
"I'd like to confirm that Sun views the classpath exception as appropriate for the scenario you describe. Unpacking the LWUIT jar, obfuscating it, and repackaging it with the application classes is covered by the classpath exception.
Sun *does* consider obfuscation a modification but the classpath exception can be used provided the classpath exception requirements are met - in particular regarding the LWUIT source code."
So if you modify LWUIT source you are bound by the terms of the GPLv2 under which LWUIT is licensed.
Cheers,
-- Terrence
|
|
|
|
|
|
|
|
Re: License agreement and obfuscation
Posted:
Oct 15, 2008 3:09 AM
in response to: terrencebarr
|
|
|
>... Unpacking the LWUIT jar, obfuscating it
Thanks Terrence, I asked because I thought there might be a legal difference between 'unpacking the jar' or 'linking' and 'compiling modified versions of source code', which appears not to be covered in the classpath exception. But going through the GNU docs I gather that this part is covered by the standard GPL v2.
So thanks and 'pheow', it was getting a bit late to change GUI frameworks now
|
|
|
|
|
|
|
|
Re: License agreement and obfuscation
Posted:
Oct 16, 2008 11:54 AM
in response to: terrencebarr
|
|
|
Thanks for all the replies.
So to clarify - I can happily unpackacage and obfuscate the jar file into my own application. But if I want to make source changes I have to submit them as patches and wait for another code drop before I can incorporate them? Or can I use my changes from a local source build as long as I also submit them?
Cheers
|
|
|
|
|