Re: [Compress]Add some easy-to-use APIs for Zip and other archivers

2020-03-09 Thread Stefan Bodewig
On 2020-03-09, Peter Lee wrote:

> I'm thinking about adding some easy-to-use APIs for Zip. Currently I got
> some ideas :
> 1. Add extractAll(String targetPath) in ZipFile : extract all the files to
> the specific directory.
> 2. Add getInputStream(String fileName) in ZipFile : get the input stream
> for a file by name.

> And I believe these could also work in other archivers like tar, 7z and
> some other format.

> Do you think if this is a good idea or not?

There is https://issues.apache.org/jira/browse/COMPRESS-118 which at one
point in time was the issue with the most votes IIRC.

Around the time the ZipSlip vulnerability had to be fixed in various
projects we discussed adding such a high-level API to Compress. You can
find some code that I sketched back then inside of the examples package.

At that time the majority of Compress developers felt a high-level API
was out-of-scope for Compress and many people felt effort should rather
be spent at Commons VFS. See the threads

https://lists.apache.org/thread.html/0b86f62127f771a8ac3b6357a1c1bdb6b4d21bf18bc4a30d0b3650c8%40%3Cdev.commons.apache.org%3E

https://lists.apache.org/thread.html/bb205705291c00ac8d36516b287a14d814dc5f1fe4d422f3f5c0db28%40%3Cdev.commons.apache.org%3E

Stefan

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



Re: [VOTE] Release Apache Commons Configuration 2.7 based on RC2

2020-03-09 Thread Stefan Bodewig
On 2020-03-09, Rob Tompkins wrote:

> We have fixed quite a few bugs and added some significant enhancements since 
> Apache Commons Configuration 2.6 was released, so I would like to release 
> Apache Commons Configuration 2.7.

+1

Stefan

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



Re: [collections] Bloom filters

2020-03-09 Thread Alex Herbert
I was going to modify the BloomFilter interface as discussed on this thread.

However before that I have made some changes to the current code to tidy it up. 
PR is [1]. The changes target the following:

1. Test coverage.

Coverage is now close to 100%. The AbstractBloomFilterTest was modified to test 
merge and cardinality with a filter that was not the filter under test.

The HasherBloomFilter cannot achieve 100%. This is because I’ve added assert 
statements and JaCoCo doesn’t ignore them. The asserts are there because the 
code can assume that a non-empty StaticHasher contains at least 1 bit index. If 
we really can assume this then the asserts can be removed.


2. toString

I’ve removed BitSetBloomFilter toString(). A very big filter could cause an 
overflow of a char[] used to represent a string.


3. Improve the Shape class

This is a big change, mainly for all the extra javadoc.

The input desired probability should be tested for NaN so I added that.

All the exception messages are the same in all the constructors and they are 
documented.

Made Shape final. There are computations in there that do not use the getter 
methods to get the Shape values. So the class hasn’t been designed for 
extension.

If we make it final then the rest of the code can be happy that a Shape will 
function as expected, i.e. a user cannot provide their own shape. Q. Is this 
desirable or not?

If not then I can change it and we properly update it to be designed for 
extension.


4. Fix Shape.hashCode

Calling Objects.hash(HashFunctionIdentity, …) would not work as the 
HashFunctionIdentity is an interface with no hashCode implementation. So we 
have to generate the hash using the same fields that are used to test equality 
of HashFunctionIdentity objects. This is done in the HashFunctionValidator.


Q. Why does the shape precompute the hashCode? A shape is unlikely to be used 
as a key in a Map and so caching the hash seems like extra work for something 
that won’t be used. I suggest we drop the cache and compute the hashCode 
dynamically.

Alex


[1] https://github.com/apache/commons-collections/pull/140 





Re: [VOTE] Release Apache Commons Configuration 2.7 based on RC2

2020-03-09 Thread Oliver Heger
+1

Build works fine with Java 8, artifacts and site look good.

Oliver

Am 09.03.20 um 15:55 schrieb Rob Tompkins:
> We have fixed quite a few bugs and added some significant enhancements since 
> Apache Commons Configuration 2.6 was released, so I would like to release 
> Apache Commons Configuration 2.7.
> 
> Apache Commons Configuration 2.7 RC2 is available for review here:
> https://dist.apache.org/repos/dist/dev/commons/configuration/2.7-RC2 (svn 
> revision 38450)
> 
> The Git tag commons-configuration-2.7-RC2 commit for this RC is 
> 03baa3bfbe123972da39c23e52fcd2d458e805fc which you can browse here:
> 
> https://gitbox.apache.org/repos/asf?p=commons-configuration.git;a=commit;h=03baa3bfbe123972da39c23e52fcd2d458e805fc
> You may checkout this tag using:
> git clone https://gitbox.apache.org/repos/asf/commons-configuration.git 
> --branch commons-configuration-2.7-RC2 commons-configuration-2.7-RC2
> 
> Maven artifacts are here:
> 
> https://repository.apache.org/content/repositories/orgapachecommons-${commons.nexus.repo.id}/org/apache/commons/commons-configuration2/2.7/
> 
> These are the artifacts and their hashes:
> 
> #Nexus SHA-1s
> commons-configuration2-2.7-sources.jar=ff209aff7768faf4f01f9cd8ed37caa1558d062a
> commons-configuration2-2.7.pom=0c68e52d5e7af3b587be9b12a0e39f326f3501a5
> commons-configuration2-2.7-javadoc.jar=7eae6541d54684bb197ac60f8fe60c3e6997f821
> commons-configuration2-2.7-test-sources.jar=4a554ae0ccc754ee6208921ef993b5ef1fca8c22
> commons-configuration2-2.7-tests.jar=0d6d5929981144464be944c071cf845e3faf5a29
> commons-configuration2-2.7.jar=593326399e5fb5e1f986607f06f63c1250ab36b4
> 
> #Release SHA-512s
> #Mon Mar 09 10:30:13 EDT 2020
> commons-configuration2-2.7-bin.tar.gz=769646c10ccbff009526897d68bf19ccae1382d3d299d0133c034104fe9dc291927c5ddaa413b819b29d366cd2bc309ac0dace00b261ddc40aff7e72fca4ff8d
> commons-configuration2-2.7-bin.zip=80731fdd2c01b78fa0e8e5ad09e589ce6998bd071ea80d3df29c6212a7ee46613ec64076eae63d8955cf8f2c8a180d90fa5b8a75498d581b02e2965470a29b7e
> commons-configuration2-2.7-src.tar.gz=dcb66f53d8e593025dcc1824b6b86adc6227cc34a8e4ff39d7ff80204153d2b798c8d16f2f0c4d92a8839e36442f5f0247d1b00fd2875b9e1671c8d0cbe22ef5
> commons-configuration2-2.7-src.zip=3233020b71e67681c43d3470862236cfec130e9da597fbb37afdac115ffacf1aa94096eb6966f585ae9945c2ce6b45b4a6f572d0d303d096440da24e7281e60b
> 
> 
> I have tested this with 'mvn clean install site' using: 
> Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)
> Maven home: /usr/local/Cellar/maven/3.6.3_1/libexec
> Java version: 1.8.0_242, vendor: Amazon.com Inc., runtime: 
> /Library/Java/JavaVirtualMachines/amazon-corretto-8.jdk/Contents/Home/jre
> Default locale: en_US, platform encoding: UTF-8
> OS name: "mac os x", version: "10.15.3", arch: "x86_64", family: "mac"
> 
> Details of changes since 2.6 are in the release notes:
> 
> https://dist.apache.org/repos/dist/dev/commons/configuration/2.7-RC2/RELEASE-NOTES.txt
> 
> https://dist.apache.org/repos/dist/dev/commons/configuration/2.7-RC2/site/changes-report.html
> 
> Site:
> 
> https://dist.apache.org/repos/dist/dev/commons/configuration/2.7-RC2/site/index.html
> (note some *relative* links are broken and the 2.7 directories are not 
> yet created - these will be OK once the site is deployed.)
> 
> Japicmp.
> Still missing, not sure how to re-create this. Was working under 
> -SHAPSHOT. If warranted, willing to attempt an RC3 to try to get the report 
> created.
> 
> RAT Report:
> 
> https://dist.apache.org/repos/dist/dev/commons/configuration/2.7-RC2/site/rat-report.html
> 
> KEYS:
>   https://www.apache.org/dist/commons/KEYS
> 
> Please review the release candidate and vote.
> This vote will close no sooner that 72 hours from now.
> 
>   [ ] +1 Release these artifacts
>   [ ] +0 OK, but...
>   [ ] -0 OK, but really should fix...
>   [ ] -1 I oppose this release because...
> 
> Thank you,
> 
> Rob Tompkins, 
> Release Manager (using key B6E73D84EA4FCC47166087253FAAD2CD5ECBB314)
> 
> For following is intended as a helper and refresher for reviewers.
> 
> Validating a release candidate
> ==
> 
> These guidelines are NOT complete.
> 
> Requirements: Git, Java, Maven.
> 
> You can validate a release from a release candidate (RC) tag as follows.
> 
> 1) Clone and checkout the RC tag
> 
> git clone https://gitbox.apache.org/repos/asf/commons-configuration.git 
> --branch commons-configuration-2.7-RC2 commons-configuration-2.7-RC2
> cd commons-configuration-2.7-RC2
> 
> 2) Check Apache licenses
> 
> This step is not required if the site includes a RAT report page which you 
> then must check.
> 
> mvn apache-rat:check
> 
> 3) Check binary compatibility
> 
> Older components still use Apache Clirr:
> 
> This step is not required if the site includes a Clirr report page which you 
> then must check.
> 
> mvn clirr:check
> 
> Newer components use JApiCmp with the japicmp Maven Profile:
> 
> This step is

Re: [releases,dbutils] There are 4 staged copies of dbutils-1.8

2020-03-09 Thread Rob Tompkins
Cool. I like the forward progress. Pardon my being remiss on validation. I can 
also give it a look tomorrow.

-Rob

> On Mar 9, 2020, at 3:59 PM, Carl Hall  wrote:
> 
> Wonderful! Thanks so much.
> 
>> On Mar 9, 2020, at 12:29 PM, Bernd Eckenfels  wrote:
>> 
>> Hello Carl, just FYI  I sent myself an reminder to look into the release 
>> tomorow. I hope I can find the time. If it works out I can cast a PMC+1.
>> --
>> http://bernd.eckenfels.net
>> 
>> Von: Carl Hall 
>> Gesendet: Monday, March 9, 2020 8:18:46 PM
>> An: Commons List 
>> Betreff: Re: [releases,dbutils] There are 4 staged copies of dbutils-1.8
>> 
>> Hey, Rob. We're about 6 weeks into a release vote for DbUtils. Once we have 
>> 2 more PMC votes, I can close out the release. I'll be sure to clean up 
>> everything in the aftermath.
>> 
>> 
>>> On Mar 9, 2020, at 7:39 AM, Rob Tompkins  wrote:
>>> 
>>> Just a reminder that we have 4 staged copies of dbutils 1.8. Seems like 
>>> we’d only need 1 copy, but given that they were staged in early January I 
>>> wonder if we still need them at all.
>>> 
>>> Thoughts? I plan on leaving them because I don’t like to mess with the 
>>> state of the projects that I don’t have specific working knowledge of.
>>> 
>>> Cheers,
>>> -Rob
>>> -
>>> To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
>>> For additional commands, e-mail: dev-h...@commons.apache.org
>>> 
>> 
>> 
>> -
>> To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
>> For additional commands, e-mail: dev-h...@commons.apache.org
>> 
> 
> 
> -
> To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
> For additional commands, e-mail: dev-h...@commons.apache.org
> 


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



Re: [releases,dbutils] There are 4 staged copies of dbutils-1.8

2020-03-09 Thread Carl Hall
Wonderful! Thanks so much.

> On Mar 9, 2020, at 12:29 PM, Bernd Eckenfels  wrote:
> 
> Hello Carl, just FYI  I sent myself an reminder to look into the release 
> tomorow. I hope I can find the time. If it works out I can cast a PMC+1.
> --
> http://bernd.eckenfels.net
> 
> Von: Carl Hall 
> Gesendet: Monday, March 9, 2020 8:18:46 PM
> An: Commons List 
> Betreff: Re: [releases,dbutils] There are 4 staged copies of dbutils-1.8
> 
> Hey, Rob. We're about 6 weeks into a release vote for DbUtils. Once we have 2 
> more PMC votes, I can close out the release. I'll be sure to clean up 
> everything in the aftermath.
> 
> 
>> On Mar 9, 2020, at 7:39 AM, Rob Tompkins  wrote:
>> 
>> Just a reminder that we have 4 staged copies of dbutils 1.8. Seems like we’d 
>> only need 1 copy, but given that they were staged in early January I wonder 
>> if we still need them at all.
>> 
>> Thoughts? I plan on leaving them because I don’t like to mess with the state 
>> of the projects that I don’t have specific working knowledge of.
>> 
>> Cheers,
>> -Rob
>> -
>> To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
>> For additional commands, e-mail: dev-h...@commons.apache.org
>> 
> 
> 
> -
> To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
> For additional commands, e-mail: dev-h...@commons.apache.org
> 


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



Re: [releases,dbutils] There are 4 staged copies of dbutils-1.8

2020-03-09 Thread Bernd Eckenfels
Hello Carl, just FYI  I sent myself an reminder to look into the release 
tomorow. I hope I can find the time. If it works out I can cast a PMC+1.
--
http://bernd.eckenfels.net

Von: Carl Hall 
Gesendet: Monday, March 9, 2020 8:18:46 PM
An: Commons List 
Betreff: Re: [releases,dbutils] There are 4 staged copies of dbutils-1.8

Hey, Rob. We're about 6 weeks into a release vote for DbUtils. Once we have 2 
more PMC votes, I can close out the release. I'll be sure to clean up 
everything in the aftermath.


> On Mar 9, 2020, at 7:39 AM, Rob Tompkins  wrote:
>
> Just a reminder that we have 4 staged copies of dbutils 1.8. Seems like we’d 
> only need 1 copy, but given that they were staged in early January I wonder 
> if we still need them at all.
>
> Thoughts? I plan on leaving them because I don’t like to mess with the state 
> of the projects that I don’t have specific working knowledge of.
>
> Cheers,
> -Rob
> -
> To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
> For additional commands, e-mail: dev-h...@commons.apache.org
>


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



Re: [releases,dbutils] There are 4 staged copies of dbutils-1.8

2020-03-09 Thread Carl Hall
Hey, Rob. We're about 6 weeks into a release vote for DbUtils. Once we have 2 
more PMC votes, I can close out the release. I'll be sure to clean up 
everything in the aftermath.


> On Mar 9, 2020, at 7:39 AM, Rob Tompkins  wrote:
> 
> Just a reminder that we have 4 staged copies of dbutils 1.8. Seems like we’d 
> only need 1 copy, but given that they were staged in early January I wonder 
> if we still need them at all. 
> 
> Thoughts? I plan on leaving them because I don’t like to mess with the state 
> of the projects that I don’t have specific working knowledge of.
> 
> Cheers,
> -Rob
> -
> To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
> For additional commands, e-mail: dev-h...@commons.apache.org
> 


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



Re: [VOTE] Release Apache Commons Configuration 2.7 based on RC2

2020-03-09 Thread Gary Gregory
+1
The binary zip contains a jar that says it is built with Java 8 (good).
My review is based on the git tag.
The site's JaCoCo report is empty:
https://dist.apache.org/repos/dist/dev/commons/configuration/2.7-RC2/site/jacoco-aggregate/index.html
Apache RAT check OK.
JapiCmp check OK.
OS: Microsoft Windows [Version 10.0.16299.1625]
Building 'mvn -V clean package' using:

Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)
Maven home: C:\Java\apache-maven-3.6.3\bin\..
Java version: 1.8.0_241, vendor: Oracle Corporation, runtime: C:\Program
Files\Java\jdk1.8.0_241\jre
Default locale: en_US, platform encoding: Cp1252
OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"

Then testing 'mvn -V test' using (which seems to recompile everything
anyway, lame):

Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)
Maven home: C:\Java\apache-maven-3.6.3\bin\..
Java version: 11.0.6, vendor: Oracle Corporation, runtime: C:\Program
Files\Java\jdk-11.0.6
Default locale: en_US, platform encoding: Cp1252
OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"

Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)
Maven home: C:\Java\apache-maven-3.6.3\bin\..
Java version: 13.0.2, vendor: Oracle Corporation, runtime: C:\Program
Files\Java\jdk-13.0.2
Default locale: en_US, platform encoding: Cp1252
OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"

openjdk version "14-ea" 2020-03-17
OpenJDK Runtime Environment (build 14-ea+33-1439)
OpenJDK 64-Bit Server VM (build 14-ea+33-1439, mixed mode, sharing)

Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)
Maven home: C:\Java\apache-maven-3.6.3\bin\..
Java version: 14-ea, vendor: Oracle Corporation, runtime: C:\Program
Files\Java\openjdk\jdk-14
Default locale: en_US, platform encoding: Cp1252
OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"

openjdk version "15-ea" 2020-09-15
OpenJDK Runtime Environment (build 15-ea+7-164)
OpenJDK 64-Bit Server VM (build 15-ea+7-164, mixed mode, sharing)

Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)
Maven home: C:\Java\apache-maven-3.6.3\bin\..
Java version: 15-ea, vendor: Oracle Corporation, runtime: C:\Program
Files\Java\openjdk\jdk-15
Default locale: en_US, platform encoding: Cp1252
OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"

Gary


On Mon, Mar 9, 2020 at 10:55 AM Rob Tompkins  wrote:

> We have fixed quite a few bugs and added some significant enhancements
> since Apache Commons Configuration 2.6 was released, so I would like to
> release Apache Commons Configuration 2.7.
>
> Apache Commons Configuration 2.7 RC2 is available for review here:
> https://dist.apache.org/repos/dist/dev/commons/configuration/2.7-RC2
> (svn revision 38450)
>
> The Git tag commons-configuration-2.7-RC2 commit for this RC is
> 03baa3bfbe123972da39c23e52fcd2d458e805fc which you can browse here:
>
> https://gitbox.apache.org/repos/asf?p=commons-configuration.git;a=commit;h=03baa3bfbe123972da39c23e52fcd2d458e805fc
> You may checkout this tag using:
> git clone
> https://gitbox.apache.org/repos/asf/commons-configuration.git --branch
> commons-configuration-2.7-RC2 commons-configuration-2.7-RC2
>
> Maven artifacts are here:
>
> https://repository.apache.org/content/repositories/orgapachecommons-${commons.nexus.repo.id}/org/apache/commons/commons-configuration2/2.7/
>
> These are the artifacts and their hashes:
>
> #Nexus SHA-1s
>
> commons-configuration2-2.7-sources.jar=ff209aff7768faf4f01f9cd8ed37caa1558d062a
> commons-configuration2-2.7.pom=0c68e52d5e7af3b587be9b12a0e39f326f3501a5
>
> commons-configuration2-2.7-javadoc.jar=7eae6541d54684bb197ac60f8fe60c3e6997f821
>
> commons-configuration2-2.7-test-sources.jar=4a554ae0ccc754ee6208921ef993b5ef1fca8c22
>
> commons-configuration2-2.7-tests.jar=0d6d5929981144464be944c071cf845e3faf5a29
> commons-configuration2-2.7.jar=593326399e5fb5e1f986607f06f63c1250ab36b4
>
> #Release SHA-512s
> #Mon Mar 09 10:30:13 EDT 2020
>
> commons-configuration2-2.7-bin.tar.gz=769646c10ccbff009526897d68bf19ccae1382d3d299d0133c034104fe9dc291927c5ddaa413b819b29d366cd2bc309ac0dace00b261ddc40aff7e72fca4ff8d
>
> commons-configuration2-2.7-bin.zip=80731fdd2c01b78fa0e8e5ad09e589ce6998bd071ea80d3df29c6212a7ee46613ec64076eae63d8955cf8f2c8a180d90fa5b8a75498d581b02e2965470a29b7e
>
> commons-configuration2-2.7-src.tar.gz=dcb66f53d8e593025dcc1824b6b86adc6227cc34a8e4ff39d7ff80204153d2b798c8d16f2f0c4d92a8839e36442f5f0247d1b00fd2875b9e1671c8d0cbe22ef5
>
> commons-configuration2-2.7-src.zip=3233020b71e67681c43d3470862236cfec130e9da597fbb37afdac115ffacf1aa94096eb6966f585ae9945c2ce6b45b4a6f572d0d303d096440da24e7281e60b
>
>
> I have tested this with 'mvn clean install site' using:
> Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)
> Maven home: /usr/local/Cellar/maven/3.6.3_1/libexec
> Java version: 1.8.0_242, vendor: Amazon.com Inc., runtime:
> /Library/Java/JavaVirtualMachines/amazon

Re: [VOTE] Release Apache Commons Configuration 2.7 based on RC2

2020-03-09 Thread Jochen Wiedmann
+1 (Binding)


On Mon, Mar 9, 2020 at 3:55 PM Rob Tompkins  wrote:
>
> We have fixed quite a few bugs and added some significant enhancements since 
> Apache Commons Configuration 2.6 was released, so I would like to release 
> Apache Commons Configuration 2.7.
>
> Apache Commons Configuration 2.7 RC2 is available for review here:
> https://dist.apache.org/repos/dist/dev/commons/configuration/2.7-RC2 (svn 
> revision 38450)
>
> The Git tag commons-configuration-2.7-RC2 commit for this RC is 
> 03baa3bfbe123972da39c23e52fcd2d458e805fc which you can browse here:
> 
> https://gitbox.apache.org/repos/asf?p=commons-configuration.git;a=commit;h=03baa3bfbe123972da39c23e52fcd2d458e805fc
> You may checkout this tag using:
> git clone https://gitbox.apache.org/repos/asf/commons-configuration.git 
> --branch commons-configuration-2.7-RC2 commons-configuration-2.7-RC2
>
> Maven artifacts are here:
> 
> https://repository.apache.org/content/repositories/orgapachecommons-${commons.nexus.repo.id}/org/apache/commons/commons-configuration2/2.7/
>
> These are the artifacts and their hashes:
>
> #Nexus SHA-1s
> commons-configuration2-2.7-sources.jar=ff209aff7768faf4f01f9cd8ed37caa1558d062a
> commons-configuration2-2.7.pom=0c68e52d5e7af3b587be9b12a0e39f326f3501a5
> commons-configuration2-2.7-javadoc.jar=7eae6541d54684bb197ac60f8fe60c3e6997f821
> commons-configuration2-2.7-test-sources.jar=4a554ae0ccc754ee6208921ef993b5ef1fca8c22
> commons-configuration2-2.7-tests.jar=0d6d5929981144464be944c071cf845e3faf5a29
> commons-configuration2-2.7.jar=593326399e5fb5e1f986607f06f63c1250ab36b4
>
> #Release SHA-512s
> #Mon Mar 09 10:30:13 EDT 2020
> commons-configuration2-2.7-bin.tar.gz=769646c10ccbff009526897d68bf19ccae1382d3d299d0133c034104fe9dc291927c5ddaa413b819b29d366cd2bc309ac0dace00b261ddc40aff7e72fca4ff8d
> commons-configuration2-2.7-bin.zip=80731fdd2c01b78fa0e8e5ad09e589ce6998bd071ea80d3df29c6212a7ee46613ec64076eae63d8955cf8f2c8a180d90fa5b8a75498d581b02e2965470a29b7e
> commons-configuration2-2.7-src.tar.gz=dcb66f53d8e593025dcc1824b6b86adc6227cc34a8e4ff39d7ff80204153d2b798c8d16f2f0c4d92a8839e36442f5f0247d1b00fd2875b9e1671c8d0cbe22ef5
> commons-configuration2-2.7-src.zip=3233020b71e67681c43d3470862236cfec130e9da597fbb37afdac115ffacf1aa94096eb6966f585ae9945c2ce6b45b4a6f572d0d303d096440da24e7281e60b
>
>
> I have tested this with 'mvn clean install site' using:
> Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)
> Maven home: /usr/local/Cellar/maven/3.6.3_1/libexec
> Java version: 1.8.0_242, vendor: Amazon.com Inc., runtime: 
> /Library/Java/JavaVirtualMachines/amazon-corretto-8.jdk/Contents/Home/jre
> Default locale: en_US, platform encoding: UTF-8
> OS name: "mac os x", version: "10.15.3", arch: "x86_64", family: "mac"
>
> Details of changes since 2.6 are in the release notes:
> 
> https://dist.apache.org/repos/dist/dev/commons/configuration/2.7-RC2/RELEASE-NOTES.txt
> 
> https://dist.apache.org/repos/dist/dev/commons/configuration/2.7-RC2/site/changes-report.html
>
> Site:
> 
> https://dist.apache.org/repos/dist/dev/commons/configuration/2.7-RC2/site/index.html
> (note some *relative* links are broken and the 2.7 directories are not 
> yet created - these will be OK once the site is deployed.)
>
> Japicmp.
> Still missing, not sure how to re-create this. Was working under 
> -SHAPSHOT. If warranted, willing to attempt an RC3 to try to get the report 
> created.
>
> RAT Report:
> 
> https://dist.apache.org/repos/dist/dev/commons/configuration/2.7-RC2/site/rat-report.html
>
> KEYS:
>   https://www.apache.org/dist/commons/KEYS
>
> Please review the release candidate and vote.
> This vote will close no sooner that 72 hours from now.
>
>   [ ] +1 Release these artifacts
>   [ ] +0 OK, but...
>   [ ] -0 OK, but really should fix...
>   [ ] -1 I oppose this release because...
>
> Thank you,
>
> Rob Tompkins,
> Release Manager (using key B6E73D84EA4FCC47166087253FAAD2CD5ECBB314)
>
> For following is intended as a helper and refresher for reviewers.
>
> Validating a release candidate
> ==
>
> These guidelines are NOT complete.
>
> Requirements: Git, Java, Maven.
>
> You can validate a release from a release candidate (RC) tag as follows.
>
> 1) Clone and checkout the RC tag
>
> git clone https://gitbox.apache.org/repos/asf/commons-configuration.git 
> --branch commons-configuration-2.7-RC2 commons-configuration-2.7-RC2
> cd commons-configuration-2.7-RC2
>
> 2) Check Apache licenses
>
> This step is not required if the site includes a RAT report page which you 
> then must check.
>
> mvn apache-rat:check
>
> 3) Check binary compatibility
>
> Older components still use Apache Clirr:
>
> This step is not required if the site includes a Clirr report page which you 
> then must check.
>
> mvn clirr:check
>
> Newer components use JApiCmp with the japicmp Maven Profile:
>
> This step is not required if the site includes a JApiCmp report page which 
> you then must check.

[math]Improvement: The generic parameter of ClusterRanking can move onto method

2020-03-09 Thread chentao...@qq.com
Hi,
    I have created a JIRA issue for this suggestion:
 https://issues.apache.org/jira/projects/MATH/issues/MATH-1522

    I think the generic parameter on class "ClusterRanking" is unnecessary,
it is redundancy when define a variable, and hard to reuse(it could be):
```java
ClusterRanking evaluator = new SumOfClusterVariances<>();
List> clusters1 = ...
evaluator.compute(clusters1); // It is OK.
...
// It could be reused globally, but now trigger a compile error
List> clusters2 = ...
evaluator.compute(clusters2); // Compile error
```

The generic parameter of ClusterRanking can be move onto method:
```java
@FunctionalInterface
public interface ClusterRanking {
    /**
     * Computes the rank (higher is better).
     *
     * @param clusters Clusters to be evaluated.
     * @return the rank of the provided {@code clusters}.
     */
     double compute(List> clusters);
}
```

Then we can define a ClusterRanking easier and reuse it globally:
```java
// The variable define is simple now.
ClusterRanking evaluator = new SumOfClusterVariances();
...
List> clusters1 = ...
double score1 = evaluator.compute(clusters1); // OK.
...
// It can be reused globally now.
List> clusters2 = ...
double score2 = evaluator.compute(clusters2); // OK.
```

Best regards,
Chentao

[VOTE] Release Apache Commons Configuration 2.7 based on RC2

2020-03-09 Thread Rob Tompkins
We have fixed quite a few bugs and added some significant enhancements since 
Apache Commons Configuration 2.6 was released, so I would like to release 
Apache Commons Configuration 2.7.

Apache Commons Configuration 2.7 RC2 is available for review here:
https://dist.apache.org/repos/dist/dev/commons/configuration/2.7-RC2 (svn 
revision 38450)

The Git tag commons-configuration-2.7-RC2 commit for this RC is 
03baa3bfbe123972da39c23e52fcd2d458e805fc which you can browse here:

https://gitbox.apache.org/repos/asf?p=commons-configuration.git;a=commit;h=03baa3bfbe123972da39c23e52fcd2d458e805fc
You may checkout this tag using:
git clone https://gitbox.apache.org/repos/asf/commons-configuration.git 
--branch commons-configuration-2.7-RC2 commons-configuration-2.7-RC2

Maven artifacts are here:

https://repository.apache.org/content/repositories/orgapachecommons-${commons.nexus.repo.id}/org/apache/commons/commons-configuration2/2.7/

These are the artifacts and their hashes:

#Nexus SHA-1s
commons-configuration2-2.7-sources.jar=ff209aff7768faf4f01f9cd8ed37caa1558d062a
commons-configuration2-2.7.pom=0c68e52d5e7af3b587be9b12a0e39f326f3501a5
commons-configuration2-2.7-javadoc.jar=7eae6541d54684bb197ac60f8fe60c3e6997f821
commons-configuration2-2.7-test-sources.jar=4a554ae0ccc754ee6208921ef993b5ef1fca8c22
commons-configuration2-2.7-tests.jar=0d6d5929981144464be944c071cf845e3faf5a29
commons-configuration2-2.7.jar=593326399e5fb5e1f986607f06f63c1250ab36b4

#Release SHA-512s
#Mon Mar 09 10:30:13 EDT 2020
commons-configuration2-2.7-bin.tar.gz=769646c10ccbff009526897d68bf19ccae1382d3d299d0133c034104fe9dc291927c5ddaa413b819b29d366cd2bc309ac0dace00b261ddc40aff7e72fca4ff8d
commons-configuration2-2.7-bin.zip=80731fdd2c01b78fa0e8e5ad09e589ce6998bd071ea80d3df29c6212a7ee46613ec64076eae63d8955cf8f2c8a180d90fa5b8a75498d581b02e2965470a29b7e
commons-configuration2-2.7-src.tar.gz=dcb66f53d8e593025dcc1824b6b86adc6227cc34a8e4ff39d7ff80204153d2b798c8d16f2f0c4d92a8839e36442f5f0247d1b00fd2875b9e1671c8d0cbe22ef5
commons-configuration2-2.7-src.zip=3233020b71e67681c43d3470862236cfec130e9da597fbb37afdac115ffacf1aa94096eb6966f585ae9945c2ce6b45b4a6f572d0d303d096440da24e7281e60b


I have tested this with 'mvn clean install site' using: 
Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)
Maven home: /usr/local/Cellar/maven/3.6.3_1/libexec
Java version: 1.8.0_242, vendor: Amazon.com Inc., runtime: 
/Library/Java/JavaVirtualMachines/amazon-corretto-8.jdk/Contents/Home/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "mac os x", version: "10.15.3", arch: "x86_64", family: "mac"

Details of changes since 2.6 are in the release notes:

https://dist.apache.org/repos/dist/dev/commons/configuration/2.7-RC2/RELEASE-NOTES.txt

https://dist.apache.org/repos/dist/dev/commons/configuration/2.7-RC2/site/changes-report.html

Site:

https://dist.apache.org/repos/dist/dev/commons/configuration/2.7-RC2/site/index.html
(note some *relative* links are broken and the 2.7 directories are not yet 
created - these will be OK once the site is deployed.)

Japicmp.
Still missing, not sure how to re-create this. Was working under -SHAPSHOT. 
If warranted, willing to attempt an RC3 to try to get the report created.

RAT Report:

https://dist.apache.org/repos/dist/dev/commons/configuration/2.7-RC2/site/rat-report.html

KEYS:
  https://www.apache.org/dist/commons/KEYS

Please review the release candidate and vote.
This vote will close no sooner that 72 hours from now.

  [ ] +1 Release these artifacts
  [ ] +0 OK, but...
  [ ] -0 OK, but really should fix...
  [ ] -1 I oppose this release because...

Thank you,

Rob Tompkins, 
Release Manager (using key B6E73D84EA4FCC47166087253FAAD2CD5ECBB314)

For following is intended as a helper and refresher for reviewers.

Validating a release candidate
==

These guidelines are NOT complete.

Requirements: Git, Java, Maven.

You can validate a release from a release candidate (RC) tag as follows.

1) Clone and checkout the RC tag

git clone https://gitbox.apache.org/repos/asf/commons-configuration.git 
--branch commons-configuration-2.7-RC2 commons-configuration-2.7-RC2
cd commons-configuration-2.7-RC2

2) Check Apache licenses

This step is not required if the site includes a RAT report page which you then 
must check.

mvn apache-rat:check

3) Check binary compatibility

Older components still use Apache Clirr:

This step is not required if the site includes a Clirr report page which you 
then must check.

mvn clirr:check

Newer components use JApiCmp with the japicmp Maven Profile:

This step is not required if the site includes a JApiCmp report page which you 
then must check.

mvn install -DskipTests -P japicmp japicmp:cmp

4) Build the package

mvn -V clean package

You can record the Maven and Java version produced by -V in your VOTE reply.
To gather OS information from a command line:
Windows: ver
Linux: uname -a

5) Build the site for a 

[releases,dbutils] There are 4 staged copies of dbutils-1.8

2020-03-09 Thread Rob Tompkins
Just a reminder that we have 4 staged copies of dbutils 1.8. Seems like we’d 
only need 1 copy, but given that they were staged in early January I wonder if 
we still need them at all. 

Thoughts? I plan on leaving them because I don’t like to mess with the state of 
the projects that I don’t have specific working knowledge of.

Cheers,
-Rob
-
To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
For additional commands, e-mail: dev-h...@commons.apache.org



Re: [CANCEL][VOTE] Release Apache Commons Configuration 2.7 based on RC1

2020-03-09 Thread Gary Gregory
On Sun, Mar 8, 2020 at 11:25 PM Rob Tompkins  wrote:

> Pardon my not getting to it tonight. It’s first in the list for the
> morning.
>

It's all good. Better done right than quick :-)

Gary


>
> -Rob
>
> > On Mar 8, 2020, at 5:18 PM, Rob Tompkins  wrote:
> >
> > Thanks for that set of eyes. I’ll be sure to change the NOTICE.txt
> >
> > -Rob
> >
> >> On Mar 8, 2020, at 1:31 PM, Oliver Heger 
> wrote:
> >>
> >> Hi Rob,
> >>
> >> many thanks for working on the release.
> >>
> >> I also did a check. The builds of the jar and the site were successful
> >> with the configuration below. Artifacts and site look good.
> >>
> >> The NOTICE file has still a copyright year of 2019; so if you re-roll
> >> the RC, you should adapt this. Otherwise, I found no problems.
> >>
> >> Oliver
> >>
> >> Apache Maven 3.6.0
> >> Maven home: /usr/share/maven
> >> Java version: 1.8.0_242, vendor: Amazon.com Inc., runtime:
> >> /opt/amazon-corretto-8.242.08.1-linux-x64/jre
> >> Default locale: de_DE, platform encoding: UTF-8
> >> OS name: "linux", version: "5.3.0-40-generic", arch: "amd64", family:
> "unix"
> >>
>  Am 08.03.20 um 18:04 schrieb Rob Tompkins:
> >>> This vote is cancelled.
> >>>
> >>> I’m not particular as to how it’s built. My convention was to use
> latest long term support, hence my using java 11 here. Thus, based on your
> point below, I’ll re-roll the RC later today.
> >>>
> >>> Many thanks for the eyes there,
> >>> -Eob
> >>>
> > On Mar 8, 2020, at 9:53 AM, Gary Gregory 
> wrote:
> 
>  Hm... I do not think we should be build Java 8 components with Java
> 11.
>  It's too risky to bind to Buffer APIs that have different return types
>  starting in Java 9 and end up with potential problems when running on
> Java
>  8.
> 
>  Sure, it's nice to have searchable Javadocs but if we really want
> that, we
>  can build the Javadoc with Java 9+ as a separate step.
> 
>  Gary
> 
> > On Sat, Mar 7, 2020 at 3:32 PM Rob Tompkins 
> wrote:
> >
> > We have fixed quite a few bugs and added some significant
> enhancements
> > since Apache Commons Configuration 2.6 was released, so I would like
> to
> > release Apache Commons Configuration 2.7.
> >
> > Apache Commons Configuration 2.7 RC1 is available for review here:
> >
> https://dist.apache.org/repos/dist/dev/commons/configuration/2.7-RC1
> > (svn revision 38432)
> >
> > The Git tag commons-configuration-2.7-RC1 commit for this RC is
> > 6bb7c21c14849169415b2afdfb2d2057bc2adb08 which you can browse here:
> >
> >
> https://gitbox.apache.org/repos/asf?p=commons-configuration.git;a=commit;h=6bb7c21c14849169415b2afdfb2d2057bc2adb08
> > You may checkout this tag using:
> >  git clone
> > https://gitbox.apache.org/repos/asf/commons-configuration.git
> --branch
> > commons-configuration-2.7-RC1 commons-configuration-2.7-RC1
> >
> > Maven artifacts are here:
> >
> >
> https://repository.apache.org/content/repositories/orgapachecommons-1493/org/apache/commons/commons-configuration2/2.7/
> >
> > These are the artifacts and their hashes:
> >
> > #Nexus SHA-1s
> >
> >
> commons-configuration2-2.7-sources.jar=818bedbcfee18f8d845714f2f25bc134b5c55df6
> >
> commons-configuration2-2.7.pom=161b149bcc081f3bb7424e2240eb40bcc42d5e63
> >
> >
> commons-configuration2-2.7-javadoc.jar=60e703ae819555b5e11f1809d1eed9a796e30785
> >
> >
> commons-configuration2-2.7-test-sources.jar=7e6ae52be57ae2bf55a3c78da9d7ddf1f34c5e72
> >
> >
> commons-configuration2-2.7-tests.jar=30e2de8e75127812dfd0065798ba57960530b940
> >
> commons-configuration2-2.7.jar=c3774a0e5125e7c517e09dafd838b526cca7f3af
> >
> > #Release SHA-512s
> > #Sat Mar 07 14:51:49 EST 2020
> >
> >
> commons-configuration2-2.7-src.zip=67f7243d9c9af313689d772340421e282956f0435df53afc117ae5b6b37947903157078845a8fb78e4ec4de565fd692f01cb7c145ae41fb8484b836d08343dca
> >
> >
> commons-configuration2-2.7-bin.tar.gz=ee03921e17e3998c5f613956e518caff5a324b5b33b23e85751394f92f19221079d6a1b3e6d1f71e704f531f017ccd28a6bd7c2e555bc37431e34be48bb96f57
> >
> >
> commons-configuration2-2.7-src.tar.gz=b7570dc57a065d15229faa84babdb5d0be223322444b787cb190345105e69c67a86cbf673c0df0b62b30223451d052695e84a5337c3273c5a599eaa19bb541a1
> >
> >
> commons-configuration2-2.7-bin.zip=331c11e96d3361c6414b7eb9b19dbdcde3d3b495ad6b46237db0da594d86d46df29e44a3a5c038503dc47ef7e3aeb04af4c733fa26c13e7373301a319b9b3071
> >
> >
> >
> > I have tested this with 'mvn clean install site' using:
> > Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)
> > Maven home: /usr/local/Cellar/maven/3.6.3_1/libexec
> > Java version: 11.0.6, vendor: Amazon.com Inc., runtime:
> >
> /Library/Java/JavaVirtualMachines/amazon-corretto-11.jdk/Contents/Home
> > Default locale: en_US, platform encoding: UTF-8
> > OS name: "mac os

[Compress]Add some easy-to-use APIs for Zip and other archivers

2020-03-09 Thread Peter Lee
Hi all.

I'm thinking about adding some easy-to-use APIs for Zip. Currently I got
some ideas :
1. Add extractAll(String targetPath) in ZipFile : extract all the files to
the specific directory.
2. Add getInputStream(String fileName) in ZipFile : get the input stream
for a file by name.

And I believe these could also work in other archivers like tar, 7z and
some other format.

Do you think if this is a good idea or not?

Lee


Re: [Compress] Zip Files: History, Explanation and Implementation

2020-03-09 Thread Peter Lee
> Compress contains a pure Java Deflate64 deflater, which also is a
> "normal" deflater by defintion. You may want to take a look at it.

Thank you so much! I will look into that.
I'm doing this out of my interest - I have read many of compression
algorithms, I just want to have a try on myself.

> the original LZ4 code contains a faster matching algorithm than
> that - zlib itself probably does so as well by now.

I believe so.
When talking about the performance, the JNI call is always better than the
native Java code - even when they have same algorithm.
I'm just hoping I can implement a fast deflater. Maybe the incubating
VectorAPI may help me. It can achieve SIMD in native Java. Looks good.

Stefan Bodewig  于2020年3月7日周六 下午11:13写道:

> On 2020-03-07, Peter Lee wrote:
>
> > I'm planning to build a pure Java deflater/inflater on my own. Believe
> this
> > may help a lot.
>
> Compress contains a pure Java Deflate64 deflater, which also is a
> "normal" deflater by defintion. You may want to take a look at it.
>
> When I implemented the LZ4 encoder I leaned on Peter Deutsch's
> description of the LZ77 part of the deflate algorithm in RFC1951 but I
> believe the original LZ4 code contains a faster matching algorithm than
> that - zlib itself probably does so as well by now.
>
> Stefan
>
> -
> To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
> For additional commands, e-mail: dev-h...@commons.apache.org
>
>