Justin, Thank you for your detailed response! This is very helpful. I will address each one of your license issues:
1. src/main/java/org/apache/datasketches/memory/AccessByteBuffer.java There is only one method (6 lines long) in this entire file that was "adapted" from the the original source file and is properly attributed in the Javadoc for the method and referenced in the LICENSE file. Even this method is modified quite a bit from the original. Putting their license header at the top of the file would be disregarding our original code in the rest of the file. My recommendation is to leave it as it is. But if you have a suggestion as to how this should be handled better, please let me know. 2. src/main/java/org/apache/datasketches/memory/XxHash64.java About half of the original was copied (in form) and extensively modified. Considerable functionality was removed and replaced with completely new functionality. The source is attributed at the top of the file and in the LICENSE file. Because of the extensive modifications, and the presence of our original code, putting their license header at the top of the file would be disregarding our original code in the rest of the file. My recommendation is to leave it as it is. But please advise. 3. src/test/java/org/apache/datasketches/memory/XxHash64Test.java Only one method in this file (~15 lines) is adapted from the original source and every one of the lines had to be modified to suit our environment. The source is attributed at the top of the file and in the LICENSE file. Because of the extensive modifications, and the presence of our original code, putting their license header at the top of the file would be disregarding our original code in the rest of the file. My recommendation is to leave it as it is. But please advise. 4. src/test/java/org/apache/datasketches/memory/XxHash64LoopingTest.java This file contains one method (~7 lines), which is heavily adapted from the original source, and about 1000 static data values that are used in a bit-for-bit compatibility test to make sure our implementation of this hash function produces the exact same hashes bit-for-bit! Even so, this file is not an exact copy of the original. The source is attributed at the top of the file and in the LICENSE file. Perhaps it could be argued that because the majority of this file contains a copy of their test data, Their copyright header should be used. Even that would disregard the modifications we did make. My recommendation is to leave it as it is. But please advise. 5. src/main/java/org/apache/datasketches/memory/Utf8.java This file adapts portions of the original with extensive modifications. Method names are changed, looping methods are different, etc. Some of the same code comments are copied over, but additional code comments were added. Again, bit-for-bit compatibility is critical. The source is attributed at the top of the file and in the LICENSE file. My recommendation is to leave it as it is. But please advise. 6. src/test/java/org/apache/datasketches/memory/Utf8Test.java This file adapts portions of the original with modifications. Some of the same code comments are copied over, but additional code comments were added. It could be argued that the original license header could be placed at the top. The source is attributed at the top of the file and in the LICENSE file. My recommendation is to leave it as it is. But please advise. 7 src/test/java/org/apache/datasketches/memory/IsValidUtf8TestUtil.java This is a vastly stripped down version of the original. It could be argued that the original license header could be placed at the top. The source is attributed at the top of the file and in the LICENSE file. My recommendation is to leave it as it is. But please advise. 8 src/main/java/org/apache/datasketches/memory/XxHash64.java Duplicate of #2. Of all of these, perhaps #4, #6, #7 (perhaps #5) could have the source license header at the top. Even so, that would be incredibly conservative and generous. Lee. On Tue, Aug 20, 2019 at 9:04 PM Justin Mclean <jus...@classsoftware.com> wrote: > Hi, > > +1 (binding) > > I checked: > - incubating in name > - signatures and hashes fine > - DISCLAIMER exists and uses the WIP text. you also might want to fill in > #Podling-Name# > - LICENSE is OK. Do you know what is missing? > - NOTICE is fine > - NO binary files in release > - All source files have ASF header > - Can compile from source > > There’s some very minor issues: > - I assume that some of the files may have an incorrect header? > [1][2][3][4][6][7][8]. 3rd party headers should probably not be replaced > with ASF ones [9] unless they have been extensively modified. This shod be > mentioned in the DISCLAIMER. > - In LICENSE there is probably no need to mention the java files that use > the Gettysburg address. > - "lee...@users.noreply.github.com” is probably not the best email to > sign the release with, please use an apache one in future. > - It’s nicer if the source unzips into a directory > > Thanks, > Justin > > 1. src/main/java/org/apache/datasketches/memory/AccessByteBuffer.java > 2. src/main/java/org/apache/datasketches/memory/XxHash64.java > 3. src/test/java/org/apache/datasketches/memory/XxHash64Test.java > 4. src/test/java/org/apache/datasketches/memory/XxHash64LoopingTest.java > 5. src/main/java/org/apache/datasketches/memory/Utf8.java > 6. src/test/java/org/apache/datasketches/memory/Utf8Test.java > 7 src/test/java/org/apache/datasketches/memory/IsValidUtf8TestUtil.java > 8 src/main/java/org/apache/datasketches/memory/XxHash64.java > 9 https://www.apache.org/legal/src-headers.html#3party > --------------------------------------------------------------------- > To unsubscribe, e-mail: general-unsubscr...@incubator.apache.org > For additional commands, e-mail: general-h...@incubator.apache.org > >