PDA

View Full Version : GXT Beta3: EPL classes still present



buzz
27 May 2008, 11:59 AM
Darrell,
Just got back from vacation and noticed that Beta 3 is finally out. Great.
I have noticed that there are still some EPL licensed classes in the Beta 3 release. When are you planning on removing them.
Please tell me that I don't have to wait another 3 weeks for beta 4

skhan
27 May 2008, 1:03 PM
Can you list the classes you think fall under the EPL licence?
I had a look through the classes and I couldn't find any.

darrellmeyer
27 May 2008, 1:55 PM
As skhan stated, there are no EPL classes in beta 3. What classes are you referring to?

buzz
28 May 2008, 9:56 AM
I haven't gone through all the classes (I'll leave that you :) ), but here are 4 classes that I found

com.extjs.gxt.client.util.Rectangle
com.extjs.gxt.client.widget.layout.FillLayout
com.extjs.gxt.client.widget.layout.RowLayout
com.extjs.gxt.client.widget.layout.RowData

From Beta 2 license


"SWT
The following classes in the GXT JAR are based on SWT code
developed by the Eclipse Foundation and shall be defined as the
"SWT-Derived Work":

com.extjs.gxt.client.Style
com.extjs.gxt.client.event.TypedListener
com.extjs.gxt.client.util.EventTable
com.extjs.gxt.client.util.Rectangle
com.extjs.gxt.client.widget.layout.FillLayout
com.extjs.gxt.client.widget.layout.RowLayout
com.extjs.gxt.client.widget.layout.RowData

Your use of the SWT-Derived Work is subject to the terms and
conditions of the Eclipse Public License v1.0. A copy of the license
is contained in the file license/epl-v10.html and is also available at
http://www.eclipse.org/legal/epl-v10.html."

gslender
28 May 2008, 12:41 PM
In beta3 there isn't any use of the EPL license so I guess there is no problem.

I wonder if you are trying to suggest copyright infringement? :-|

I'm not sure how copyright law works in the USA, but over here in the land of Oz, you can't lay claim to basic concepts, like a rectangle, laying out things by fill or flow etc... there is only so many ways you can define things around these simple concepts - as such that wouldn't be copyright.

Just because someone slaps a license/copyright message on something doesn't mean they have the right or ability to legally enforce it.

BTW - this is just my view on the situation - ExtJS should get their own legal advice though :D

darrellmeyer
28 May 2008, 12:56 PM
Some of the class names are the same as the SWT classes. However, if you look at the code and API of any of the classes you mentioned, you will see that the classes are completely different from the SWT classes.

Every EPL class was updated with the removal of the EPL code to ensure no SWT based code was in GXT. For example, EventTable was completely rewritten. Previously, the class used some of the code from SWT EventTable. The code was changed, the class names were not.

If you still have any doubts or concerns on this issue, feel free to contact us.

buzz
29 May 2008, 7:11 AM
Some of the class names are the same as the SWT classes. However, if you look at the code and API of any of the classes you mentioned, you will see that the classes are completely different from the SWT classes.

Every EPL class was updated with the removal of the EPL code to ensure no SWT based code was in GXT. For example, EventTable was completely rewritten. Previously, the class used some of the code from SWT EventTable. The code was changed, the class names were not.


Darell,
I'm not talking about EventTable. I had mentioned the classes

com.extjs.gxt.client.util.Rectangle
com.extjs.gxt.client.widget.layout.FillLayout
com.extjs.gxt.client.widget.layout.RowLayout
com.extjs.gxt.client.widget.layout.RowData

And since you got me curious, I just did a diff between ExtGWT beta2 and beta3 for the above classes and the big difference I see is that you've replaced the header from



/*******************************************************************************
* Copyright (c) 2000, 2007 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* IBM Corporation - initial API and implementation
* Ext GWT - derived implementation
*******************************************************************************/


to



/*
* Ext GWT - Ext for GWT
* Copyright(c) 2007, 2008, Ext JS, LLC.
* licensing@extjs.com
*
* http://extjs.com/license
*/


The code is pretty much the same for all these classes besides some javadoc and variable name alterations and removing the original EPL attribution doesn't seem right

gslender - not all users are from Australia and I personally don't care about Australian laws :)

darrellmeyer
29 May 2008, 11:01 AM
I reviewed the classes you listed and only FillLayout contained any code from the corresponding SWT class. Nonetheless, I have made the following changes.

Rectangle
A rectangle is a rectangle. The Rectangle API is identical to the Java Rectangle class. There should not be any issues here.

RowLayout / RowData
RowLayout has been completely rewritten. The new changes:

1. Children are no longer positioned using absolute positioning. This is a much better design with better performance.
2. Margins and spacing use CSS padding and margins. The old code applied spacing and margins to the positioning and sizing of child components.
3. Removed the "fill" feature from RowData. Each child component can specify its height and width in pixels or as a percentage. More than 1 child can use percentage values.

FillLayout
FillLayout now extends RowLayout and has been rewritten.

RowLayout and FillLayout are not used in the GXT core code because of the use of absolute positioning. With these changes, the layouts are more inline with the other GXT layouts.


The code is pretty much the same for all these classes besides some javadoc and variable name alterations and removing the original EPL attribution doesn't seem rightWith the new changes, there is no use of EPL code. The changes are in SVN.

I am attaching the GXT and SWT classes for RowLayout, RowData, and FillLayout. Let us know if you still have any concerns.

buzz
30 May 2008, 6:08 AM
Thanks but this gives me little comfort. During the beta3 refactor in an attempt to remove the EPL dependencies we're you not aware that you were violating the SWT license when you changed the header that indicated that the code was derived from EPL to the Ext license header? And also when I initially pointed out the issues, you confidently mentioned that there is no SWT code. I hope it wasn't the intent that this went undiscovered. Anyway I am not a premium member and therefore don't have SVN access. I'll look at it when beta 4 comes out and hope that beta4 actually had no other license violation(s).

darrellmeyer
2 Jun 2008, 12:34 PM
Beta 4 (http://extjs.com/blog/2008/06/02/ext-gwt-v10-beta-4-released/) is now available.