Re: [VOTE] Release Apache Ignite (Incubating) 1.0-RC3

2015-03-21 Thread Justin Mclean
Hi,

 I see from the PPMC vote thread that there one of your Mentors suggested 
 going to
 general@incubator earlier.  That might have been a good idea -- here
 first, then maybe legal-discuss@apache later if we couldn't come up
 with a definitive answer.

Can certainly ask here before making a release if you need something reviewed, 
double checked  and/or are unsure of something.

Thanks,
Justin
-
To unsubscribe, e-mail: general-unsubscr...@incubator.apache.org
For additional commands, e-mail: general-h...@incubator.apache.org



Re: [VOTE] Release Apache Ignite (Incubating) 1.0-RC3

2015-03-21 Thread Dmitriy Setrakyan
On Sat, Mar 21, 2015 at 2:47 AM, Branko Čibej br...@apache.org wrote:

 On 21.03.2015 05:25, Dmitriy Setrakyan wrote:
  On Fri, Mar 20, 2015 at 7:33 PM, Marvin Humphrey mar...@rectangular.com
 
  wrote:
 
  On Fri, Mar 20, 2015 at 6:53 PM, Dmitriy Setrakyan
  dsetrak...@apache.org wrote:
 
  I think we made a mistake and imported the wrong version of the source
  code. The same version is provided here by Doug Lee without the GPL
  headers, but only with Public Domain header:
  http://gee.cs.oswego.edu/cgi-bin/viewcvs.cgi/jsr166/src/jsr166e/
 
  I guess we will have to resubmit the release, unless you can accept it
 in
  the current shape. Please advise.
  If the files don't contain any GPL IP, then what we have is a licensing
  documentation bug: there's public domain IP which is perfectly fine to
  include, but it's misleadingly labeled.  Shipping a release which
 contains
  such IP does not pose any legal problems.
 
  Contrast that with a licensing error, such as GPL IP onto which someone
 has
  slapped an ALv2 header.  Shipping such a release could leave users and
  redistributors open to a claim of copyright violation.
 
  Licensing documentation bugs can vary from inconsequential to
 catastrophic
  depending on how badly they mislead downstream consumers.  It seems to
 me
  that
  while this one might cause alarm, it shouldn't cause anybody to do
 anything
  illegal.  So long as you are *certain* that those *exact* versions of
 the
  files are available under Doug Lea's public domain dedication and
 contain
  no
  GPL mods, I think it's OK.
 
  Thanks for quick response.
 
  I am *certain* because these files were initially grabbed from Doug Lea's
  JSR 166 page. The wrong license headers were added by mistake.

 Do you happen to know exactly which versions of those files were
 imported? I looked at the ConcurrentHashMap implementation and compared
 the current version on that site:


 http://gee.cs.oswego.edu/cgi-bin/viewcvs.cgi/jsr166/src/jsr166e/ConcurrentHashMapV8.java?revision=1.123


 with the one in the Ignite release package, and the differences are far
 larger than just license header changes:

 https://paste.apache.org/p/3SAz


The code for JSR-166 has evolved significantly since we did the initial
import close to 2 years ago, before the JDK8 was officially released yet. I
also tried to find the exact version we imported, but at this point I am
afraid it would be almost impossible. On top of that we have
removed/changed some not-needed code in the migrated classes.



 Sorry, I should've checked this much earlier ...

 I would suggest to *not* just remove the license headers in those files.
 Instead, delete the current files and import a fresh set directly from
 the repository at gee.cs.oswego.edu, then mention in NOTICE that they
 were imported from there, not from OpenJDK. Also please add a README
 file to the directory where those files are imported and note the exact
 versions of the imported files (maybe best to just list the ViewCVS
 download URLs, like the one above).


Yes, absolutely agree. I have created a ticket in Ignite JIRA, IGNITE-545,
to address this.



 Once you've imported the original files, you can, e.g., change the
 package name and make other minor modifications. The point is to have an
 audit trail of changes from the public-domain original to whatever we
 ship; currently, the Git log shows no such trail.


Yes, agree. Unfortunately this code was moved and renamed several times
since it was initially migrated. I am pretty sure that GIT origins of the
code are not clearanymore.



 -- Brane




Re: [VOTE] Release Apache Ignite (Incubating) 1.0-RC3

2015-03-21 Thread Jochen Theodorou

Am 21.03.2015 10:47, schrieb Branko Čibej:
[...]

Do you happen to know exactly which versions of those files were
imported? I looked at the ConcurrentHashMap implementation and compared
the current version on that site:

 
http://gee.cs.oswego.edu/cgi-bin/viewcvs.cgi/jsr166/src/jsr166e/ConcurrentHashMapV8.java?revision=1.123


with the one in the Ignite release package, and the differences are far
larger than just license header changes:

 https://paste.apache.org/p/3SAz


I suggest comparing with the history of the OpenJDK8 file: 
http://hg.openjdk.java.net/jdk8/jdk8/jdk/log/687fd7c7986d/src/share/classes/java/util/concurrent/ConcurrentHashMap.java


There have been quite a few changes in jdk8 for this map afaik

bye Jochen

--
Jochen blackdrag Theodorou - Groovy Project Tech Lead
blog: http://blackdragsview.blogspot.com/
german groovy discussion newsgroup: de.comp.lang.misc
For Groovy programming sources visit http://groovy-lang.org


-
To unsubscribe, e-mail: general-unsubscr...@incubator.apache.org
For additional commands, e-mail: general-h...@incubator.apache.org



Re: [VOTE] Release Apache Ignite (Incubating) 1.0-RC3

2015-03-21 Thread Dmitriy Setrakyan
On Fri, Mar 20, 2015 at 9:49 PM, Marvin Humphrey mar...@rectangular.com
wrote:

 On Fri, Mar 20, 2015 at 9:25 PM, Dmitriy Setrakyan
 dsetrak...@apache.org wrote:

  In this case, can we resume the voting for the release?

 Sure, voting has actually never stopped. :)  Even if Justin or I were
 to vote -1, release VOTEs are majority approval with minimum of 3
 binding +1 votes.  The Release Manager can technically choose to
 continue or not.

 Now if anybody finds something serious, the RM would ordinarily be
 expected to cancel the vote. But nevertheless, I encourage you to
 question IPMC voters and our reasoning.  We may have some accumulated
 expertise, but none of us are lawyers.  I see from the PPMC vote
 thread that there one of your Mentors suggested going to
 general@incubator earlier.  That might have been a good idea -- here
 first, then maybe legal-discuss@apache later if we couldn't come up
 with a definitive answer.

  I'd suggest opening a ticket to correct the headers.
 
 
  Fixing them right now.

 Nice!

  The new 1.0 release with corrected headers will be
  submitted for PPMC vote on Monday.

 Hmm, I'm confused.  This is 1.0-RC3.  I would ordinarily expect that
 to become 1.0 once the release vote succeeds.  While Apache isn't
 going to force a particular versioning scheme on you, I don't think
 you can put out two releases with the same version number.  That would
 result in identically named artifacts with different content and
 security mechanisms going berzerk as a consequence.


This was intended to be a public RC3 release. If it was to pass the vote,
then the official release would also have 1.0-RC3 version.

We wanted to have community to play with the RC3 release for a bit until we
release the final 1.0 release in a week or two.



 Marvin Humphrey

 -
 To unsubscribe, e-mail: general-unsubscr...@incubator.apache.org
 For additional commands, e-mail: general-h...@incubator.apache.org




Re: [VOTE] Release Apache Ignite (Incubating) 1.0-RC3

2015-03-21 Thread Justin Mclean
Hi,

 This should be easy to fix. Will do.

These are not licensing errors as such, but still nice to fix. Next release is 
fine.

 These are optional runtime dependencies (GPL code is not present in the
 Apache Ignite source tree).

That's 100% OK then.

 Again, same as above. This is an optional dependency and the actual EPL
 code is not included in the source tree.

Also OK.

Thanks for taking the time to answer my questions.

Justin

Re: [VOTE] Release Apache Ignite (Incubating) 1.0-RC3

2015-03-21 Thread Dmitriy Setrakyan
Justin,

Thanks for your quick feedback. My comments are below.

D.

On Fri, Mar 20, 2015 at 10:10 PM, Justin Mclean jus...@classsoftware.com
wrote:

 Hi,

  If the files don't contain any GPL IP, then what we have is a licensing
  documentation bug:

 That's also my opinion. There are however several other issue with LICENSE
 and NOTICE, most are also bugs' but I'm concerned about the other GPL
 licenses and the EPL license.

 Notice file needs some changes (mostly things removed).
 - No need to list Scala collection license as this is Apache licensed and
 has not NOTICE file. [1]
 - Look like JetBrains Annotations does have a NOTICE file and this text
 needs to go into the NOTICE file [2]
 - No need to list Persistent Collections library as it is MIT licensed and
 is already in LICENSE. [3]
 - No need to list snaptree as this is BSD and is already in LICENSE. [3]
 - No need to list org.jdk8.backport, you could out this in LICENSE
 (assuming it is public domain and not GPL).

 License file may need a few additions:
 - Add org.jdk8.backport (se above)
 - Possibly missing jcraft (BSD)?
 - Possibly missisng SL4j (MIT)?
 - Public domain books


This should be easy to fix. Will do.



 Is this GPL software bundled or required?
 ./modules/core/src/main/resources/META-INF/licenses/gnu-gplv2ce-license.txt
 ./modules/geospatial/licenses/jts-lgpl-license.txt
 ./modules/hibernate/licenses/hibernate-lgpl-2.1-license.txt
 ./modules/schedule/licenses/cron4j-lgpl-2.1-license.txt


These are optional runtime dependencies (GPL code is not present in the
Apache Ignite source tree). The license text is provided on per-dependency
basis to let the user know that if he/she chooses to include the
dependency, then it will be under the specified license.



 It look like the software bundles these?
 ./modules/ssh/licenses/jcraft-revised-bsd.txt
 ./modules/visor-console/licenses/jcraft-revised-bsd.txt
 ./modules/slf4j/licenses/sl4j-mit-license.txt
 ./modules/visor-plugins/licenses/slf4j-mit-license.txt
 ./modules/scalar/licenses/scala-bsd-license.txt
 ./modules/visor-console/licenses/scala-bsd-license.txt


These libraries are not part of the source code, but are optional
dependencies, just like the ones described above.



 If so then need to be added to LICENSE.

 This may also be a concern as it is a weak copyleft license. [4]
 ./modules/aop/licenses/aspectj-epl-license.txt


Again, same as above. This is an optional dependency and the actual EPL
code is not included in the source tree.


 You may also want to mention these in LICENSE (public domain):

 ./modules/hadoop/src/test/java/org/apache/ignite/internal/processors/hadoop/books/alice-in-wonderland.txt

 ./modules/hadoop/src/test/java/org/apache/ignite/internal/processors/hadoop/books/art-of-war.txt

 ./modules/hadoop/src/test/java/org/apache/ignite/internal/processors/hadoop/books/huckleberry-finn.txt

 ./modules/hadoop/src/test/java/org/apache/ignite/internal/processors/hadoop/books/sherlock-holmes.txt

 ./modules/hadoop/src/test/java/org/apache/ignite/internal/processors/hadoop/books/tom-sawyer.txt


Will do.



 Thanks,
 Justin

 1. http://www.apache.org/dev/licensing-howto.html#alv2-dep
 2. https://github.com/JetBrains/intellij-community/blob/master/NOTICE.txt
 3. http://www.apache.org/dev/licensing-howto.html#permissive-deps
 4. http://www.apache.org/legal/resolved.html#category-b


 -
 To unsubscribe, e-mail: general-unsubscr...@incubator.apache.org
 For additional commands, e-mail: general-h...@incubator.apache.org




Re: [VOTE] Release Apache Ignite (Incubating) 1.0-RC3

2015-03-21 Thread Dmitriy Setrakyan
On Sat, Mar 21, 2015 at 3:14 AM, Jochen Theodorou blackd...@gmx.org wrote:

 Am 21.03.2015 10:47, schrieb Branko Čibej:
 [...]

 Do you happen to know exactly which versions of those files were
 imported? I looked at the ConcurrentHashMap implementation and compared
 the current version on that site:

  http://gee.cs.oswego.edu/cgi-bin/viewcvs.cgi/jsr166/src/
 jsr166e/ConcurrentHashMapV8.java?revision=1.123


 with the one in the Ignite release package, and the differences are far
 larger than just license header changes:

  https://paste.apache.org/p/3SAz


 I suggest comparing with the history of the OpenJDK8 file:
 http://hg.openjdk.java.net/jdk8/jdk8/jdk/log/687fd7c7986d/src/share/
 classes/java/util/concurrent/ConcurrentHashMap.java

 There have been quite a few changes in jdk8 for this map afaik


Yes, good idea, and thanks for the link! I specifically find this comment
interesting there:

20 months ago psandoz 8019484: Sync j.u.c.ConcurrentHashMap from 166 to tl



 bye Jochen

 --
 Jochen blackdrag Theodorou - Groovy Project Tech Lead
 blog: http://blackdragsview.blogspot.com/
 german groovy discussion newsgroup: de.comp.lang.misc
 For Groovy programming sources visit http://groovy-lang.org


 -
 To unsubscribe, e-mail: general-unsubscr...@incubator.apache.org
 For additional commands, e-mail: general-h...@incubator.apache.org




Re: [VOTE] Release Apache Ignite (Incubating) 1.0-RC3

2015-03-21 Thread David Jencks
I thought the more-up-to-date version of the backport stuff was here:  
http://backport-jsr166.sourceforge.net/

david jencks

On Mar 21, 2015, at 6:24 AM, Dmitriy Setrakyan dsetrak...@apache.org wrote:

 --089e0112c408e2ec4c0511c9d829
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: quoted-printable
 
 On Sat, Mar 21, 2015 at 3:14 AM, Jochen Theodorou blackd...@gmx.org wrote=
 :
 
 Am 21.03.2015 10:47, schrieb Branko =C4=8Cibej:
 [...]
 
 Do you happen to know exactly which versions of those files were
 imported? I looked at the ConcurrentHashMap implementation and compared
 the current version on that site:
 
 http://gee.cs.oswego.edu/cgi-bin/viewcvs.cgi/jsr166/src/
 jsr166e/ConcurrentHashMapV8.java?revision=3D1.123
 
 
 with the one in the Ignite release package, and the differences are far
 larger than just license header changes:
 
 https://paste.apache.org/p/3SAz
 
 
 I suggest comparing with the history of the OpenJDK8 file:
 http://hg.openjdk.java.net/jdk8/jdk8/jdk/log/687fd7c7986d/src/share/
 classes/java/util/concurrent/ConcurrentHashMap.java
 
 There have been quite a few changes in jdk8 for this map afaik
 
 
 Yes, good idea, and thanks for the link! I specifically find this comment
 interesting there:
 
 20 months ago psandoz 8019484: Sync j.u.c.ConcurrentHashMap from 166 to tl
 
 
 
 bye Jochen
 
 --
 Jochen blackdrag Theodorou - Groovy Project Tech Lead
 blog: http://blackdragsview.blogspot.com/
 german groovy discussion newsgroup: de.comp.lang.misc
 For Groovy programming sources visit http://groovy-lang.org
 
 
 -
 To unsubscribe, e-mail: general-unsubscr...@incubator.apache.org
 For additional commands, e-mail: general-h...@incubator.apache.org
 
 
 
 --089e0112c4


-
To unsubscribe, e-mail: general-unsubscr...@incubator.apache.org
For additional commands, e-mail: general-h...@incubator.apache.org



Re: [VOTE] Release Apache Ignite (Incubating) 1.0-RC3

2015-03-21 Thread Marvin Humphrey
On Sat, Mar 21, 2015 at 2:30 AM, Dmitriy Setrakyan
dsetrak...@apache.org wrote:

 On Fri, Mar 20, 2015 at 10:10 PM, Justin Mclean jus...@classsoftware.com
 wrote:

 Is this GPL software bundled or required?
 ./modules/core/src/main/resources/META-INF/licenses/gnu-gplv2ce-license.txt
 ./modules/geospatial/licenses/jts-lgpl-license.txt
 ./modules/hibernate/licenses/hibernate-lgpl-2.1-license.txt
 ./modules/schedule/licenses/cron4j-lgpl-2.1-license.txt


 These are optional runtime dependencies (GPL code is not present in the
 Apache Ignite source tree). The license text is provided on per-dependency
 basis to let the user know that if he/she chooses to include the
 dependency, then it will be under the specified license.

I think whether that's OK is going to depend on how the Ignite code interfaces
with any GPL code.  If it's going through a generalization layer a la JDBC
which just happens to be implemented by GPL code, that might be OK.  If Ignite
is implementing against a GPL-only interface, probably not OK even though the
dependency is optional.  I think it would be best to pursue the matter
further, either on the podling list, here, or on legal-discuss@apache.  Here's
some prior discussion:

http://apache.markmail.org/thread/i6uzkkyibxx7bniv

Marvin Humphrey

-
To unsubscribe, e-mail: general-unsubscr...@incubator.apache.org
For additional commands, e-mail: general-h...@incubator.apache.org



Re: [VOTE] Release Apache Ignite (Incubating) 1.0-RC3

2015-03-21 Thread Marvin Humphrey
On Sat, Mar 21, 2015 at 2:16 AM, Dmitriy Setrakyan
dsetrak...@apache.org wrote:

  The new 1.0 release with corrected headers will be
  submitted for PPMC vote on Monday.

 Hmm, I'm confused.  This is 1.0-RC3.  I would ordinarily expect that
 to become 1.0 once the release vote succeeds.  While Apache isn't
 going to force a particular versioning scheme on you, I don't think
 you can put out two releases with the same version number.  That would
 result in identically named artifacts with different content and
 security mechanisms going berzerk as a consequence.

 This was intended to be a public RC3 release. If it was to pass the vote,
 then the official release would also have 1.0-RC3 version.

 We wanted to have community to play with the RC3 release for a bit until we
 release the final 1.0 release in a week or two.

Because release candidate and RC are specialized terms with
precise meaning at Apache and because we make a strong legal
distinction between released and unreleased code, this is
extremely confusing.  Having something named RC which is also an
official Apache release is... gah, it makes my brain hurt.

Please consider adopting different terminology in the future --
alpha, beta, golden master candidate / GM candidate, etc.

Marvin Humphrey

-
To unsubscribe, e-mail: general-unsubscr...@incubator.apache.org
For additional commands, e-mail: general-h...@incubator.apache.org



Re: [VOTE] Release Apache Ignite (Incubating) 1.0-RC3

2015-03-21 Thread Branko Čibej
On 22.03.2015 00:09, Marvin Humphrey wrote:
 On Sat, Mar 21, 2015 at 2:16 AM, Dmitriy Setrakyan
 dsetrak...@apache.org wrote:

 The new 1.0 release with corrected headers will be
 submitted for PPMC vote on Monday.
 Hmm, I'm confused.  This is 1.0-RC3.  I would ordinarily expect that
 to become 1.0 once the release vote succeeds.  While Apache isn't
 going to force a particular versioning scheme on you, I don't think
 you can put out two releases with the same version number.  That would
 result in identically named artifacts with different content and
 security mechanisms going berzerk as a consequence.
 This was intended to be a public RC3 release. If it was to pass the vote,
 then the official release would also have 1.0-RC3 version.

 We wanted to have community to play with the RC3 release for a bit until we
 release the final 1.0 release in a week or two.
 Because release candidate and RC are specialized terms with
 precise meaning at Apache and because we make a strong legal
 distinction between released and unreleased code, this is
 extremely confusing.  Having something named RC which is also an
 official Apache release is... gah, it makes my brain hurt.

 Please consider adopting different terminology in the future --
 alpha, beta, golden master candidate / GM candidate, etc.

Nonsense. Subversion has been making public candidate releases for 1.x.0
for years and we've not seen any of our users' heads explode yet. It's
just like a public beta but with stronger expectations wrt stability.
Release candidate just means we believe it will become 1.0 but we may
still have to tweak it a bit. Our users don't care if there's a
recommended internal process that also mentions 'release candidate' in a
different context.

http://subversion.apache.org/docs/community-guide/releasing.html#release-numbering

The distinction between released and unreleased lies in a) process and
b) location of the bits. I think you're confusing process stages with
version numbering. I see no reasonable basis for imposing some
particular version numbering or release naming scheme on any project.


-- Brane


-
To unsubscribe, e-mail: general-unsubscr...@incubator.apache.org
For additional commands, e-mail: general-h...@incubator.apache.org



Re: [VOTE] Release Apache Ignite (Incubating) 1.0-RC3

2015-03-21 Thread Branko Čibej
On 22.03.2015 00:02, Marvin Humphrey wrote:
 On Sat, Mar 21, 2015 at 2:30 AM, Dmitriy Setrakyan
 dsetrak...@apache.org wrote:

 On Fri, Mar 20, 2015 at 10:10 PM, Justin Mclean jus...@classsoftware.com
 wrote:
 Is this GPL software bundled or required?
 ./modules/core/src/main/resources/META-INF/licenses/gnu-gplv2ce-license.txt
 ./modules/geospatial/licenses/jts-lgpl-license.txt
 ./modules/hibernate/licenses/hibernate-lgpl-2.1-license.txt
 ./modules/schedule/licenses/cron4j-lgpl-2.1-license.txt

 These are optional runtime dependencies (GPL code is not present in the
 Apache Ignite source tree). The license text is provided on per-dependency
 basis to let the user know that if he/she chooses to include the
 dependency, then it will be under the specified license.
 I think whether that's OK is going to depend on how the Ignite code interfaces
 with any GPL code.  If it's going through a generalization layer a la JDBC
 which just happens to be implemented by GPL code, that might be OK.  If Ignite
 is implementing against a GPL-only interface, probably not OK even though the
 dependency is optional.  I think it would be best to pursue the matter
 further, either on the podling list, here, or on legal-discuss@apache.  Here's
 some prior discussion:

 http://apache.markmail.org/thread/i6uzkkyibxx7bniv

http://www.apache.org/legal/resolved.html says, on the topic of GPL and
similar:

Apache projects cannot distribute any such components. However, if
the component is only needed for optional features, a project can
provide the user with instructions on how to obtain and install the
non-included work. Optional means that the component is not required
for standard use of the product or for the product to achieve a
desirable level of quality.


Given the above, why are we still discussing this? Those are optional
components. Ignite works just fine without them.

When Subversion was incubating, 5 or so years ago, we went through the
same discussion regarding our dependency on Neon, even though it was
optional and Subversion works fine without any DAV plugin at all.
Subversion graduated while still having this (optional) dependency.

If you want to question Ignite's optional dependency on GPL code, you
should start by changing the published policy and making all TLPs throw
out such dependencies.

Not gonna happen, right?

-- Brane


-
To unsubscribe, e-mail: general-unsubscr...@incubator.apache.org
For additional commands, e-mail: general-h...@incubator.apache.org