On 2017-04-26, Stefan Bodewig wrote:

> while trying to add missing license headers I've found we've got quite a
> few files that come with a license of their own. Many of them are fine
> like the KStem classes in Lucene.Net.Analysis.En as they come under a
> license that is compatible to the Apache Software License - we may need
> to add them something to the LICENSE or NOTICE files, though. I'll do so
> and ensure we've got proper Apache license headers on all other files,
> where it is legal to do.

Done. I think I haven't broken anything, but we'll see once CI is
through.

I'll try to keep a closer eye on commits in the future, at least when
new files are added. Please don't get upset if I come and tell you
"please add a license header" :-)

> But I also stumbled over
> src/Lucene.Net.Analysis.Common/Analysis/Util/BufferedCharFilter.cs -
> this one is licensed under GPL v2 and thus must be removed
> completely. This is a blocker for the release. We need to find a
> replacement or rewrite the code that uses it.

> Please see http://www.apache.org/legal/resolved.html#category-x for a
> list of prohibited licenses.

> It may turn out BufferedCharFilter is not the only one, I'll report back
> here once I've waded through all files flagged by RAT[1] - 465 files in
> total, but many of them are files that don't need a license. But 251 C#
> source files ...

the following files are all under the GPL and must not be part of any
Lucene.Net release

src/Lucene.Net.Analysis.Common/Analysis/Util/BufferedCharFilter.cs
src/Lucene.Net.Icu/Support/StringCharacterIterator.cs  
src/Lucene.Net/Support/Buffer.cs                       
src/Lucene.Net/Support/BufferExceptions.cs             
src/Lucene.Net/Support/ByteBuffer.cs                   
src/Lucene.Net/Support/ByteOrder.cs                    
src/Lucene.Net/Support/DataInputStream.cs              
src/Lucene.Net/Support/DataOutputStream.cs             
src/Lucene.Net/Support/ICallable.cs                    
src/Lucene.Net/Support/ICharSequence.cs                
src/Lucene.Net/Support/IDataInput.cs                   
src/Lucene.Net/Support/IDataOutput.cs                  
src/Lucene.Net/Support/LongBuffer.cs                   
src/Lucene.Net/Support/PriorityQueue.cs

As they are all copyright by Oracle I assume they are ports from
OpenJDK. If so the easiest solution probably is to replace them with
ports of the corresponding code of the late Apache Harmony project,
likely somewhere below
https://svn.apache.org/repos/asf/harmony/enhanced/java/trunk/classlib/

Stefan

Reply via email to