commons-collections/pom.xml

811 lines
24 KiB
XML
Raw Normal View History

<?xml version="1.0" encoding="UTF-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<parent>
<groupId>org.apache.commons</groupId>
<artifactId>commons-parent</artifactId>
2023-05-25 10:52:57 -04:00
<version>58</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>commons-collections4</artifactId>
2019-08-02 09:55:38 -04:00
<version>4.5-SNAPSHOT</version>
<name>Apache Commons Collections</name>
<inceptionYear>2001</inceptionYear>
<description>The Apache Commons Collections package contains types that extend and augment the Java Collections Framework.</description>
2019-07-04 09:52:33 -04:00
<url>https://commons.apache.org/proper/commons-collections/</url>
<issueManagement>
<system>jira</system>
<url>https://issues.apache.org/jira/browse/COLLECTIONS</url>
</issueManagement>
<scm>
2019-08-16 13:33:54 -04:00
<connection>scm:git:http://gitbox.apache.org/repos/asf/commons-collections.git</connection>
<developerConnection>scm:git:https://gitbox.apache.org/repos/asf/commons-collections.git</developerConnection>
<url>https://gitbox.apache.org/repos/asf?p=commons-collections.git</url>
</scm>
<developers>
<developer>
<name>Matt Benson</name>
<id>mbenson</id>
</developer>
<developer>
<name>James Carman</name>
<id>jcarman</id>
</developer>
<developer>
<name>Stephen Colebourne</name>
<id>scolebourne</id>
</developer>
<developer>
<name>Robert Burrell Donkin</name>
<id>rdonkin</id>
</developer>
<developer>
<name>Morgan Delagrange</name>
<id>morgand</id>
</developer>
<developer>
<id>ggregory</id>
2021-07-01 11:29:54 -04:00
<name>Gary Gregory</name>
<email>ggregory at apache.org</email>
<url>https://www.garygregory.com</url>
<organization>The Apache Software Foundation</organization>
<organizationUrl>https://www.apache.org/</organizationUrl>
<roles>
<role>PMC Member</role>
</roles>
<timezone>America/New_York</timezone>
<properties>
<picUrl>https://people.apache.org/~ggregory/img/garydgregory80.png</picUrl>
</properties>
</developer>
<developer>
<name>Matthew Hawthorne</name>
<id>matth</id>
</developer>
<developer>
<name>Dipanjan Laha</name>
<id>dlaha</id>
</developer>
<developer>
<name>Geir Magnusson</name>
<id>geirm</id>
</developer>
<developer>
<name>Luc Maisonobe</name>
<id>luc</id>
</developer>
<developer>
<name>Craig McClanahan</name>
<id>craigmcc</id>
</developer>
<developer>
<name>Thomas Neidhart</name>
<id>tn</id>
</developer>
<developer>
<name>Adrian Nistor</name>
<id>adriannistor</id>
</developer>
<developer>
<name>Arun M. Thomas</name>
<id>amamment</id>
</developer>
<developer>
<name>Rodney Waldhoff</name>
<id>rwaldhoff</id>
</developer>
<developer>
<name>Henri Yandell</name>
<id>bayard</id>
</developer>
<developer>
<name>Rob Tompkins</name>
<id>chtompki</id>
</developer>
</developers>
<contributors>
<contributor>
<name>Rafael U. C. Afonso</name>
</contributor>
<contributor>
<name>Max Rydahl Andersen</name>
</contributor>
<contributor>
<name>Avalon</name>
</contributor>
<contributor>
<name>Federico Barbieri</name>
</contributor>
<contributor>
<name>Jeffrey Barnes</name>
</contributor>
<contributor>
<name>Nicola Ken Barozzi</name>
</contributor>
<contributor>
<name>Arron Bates</name>
</contributor>
<contributor>
<name>Sebastian Bazley</name>
</contributor>
<contributor>
<name>Benjamin Bentmann</name>
</contributor>
<contributor>
<name>Ola Berg</name>
</contributor>
<contributor>
<name>Sam Berlin</name>
</contributor>
<contributor>
<name>Christopher Berry</name>
</contributor>
<contributor>
<name>Nathan Beyer</name>
</contributor>
<contributor>
<name>Rune Peter Bjørnstad</name>
</contributor>
<contributor>
<name>Janek Bogucki</name>
</contributor>
<contributor>
<name>Maarten Brak</name>
</contributor>
<contributor>
<name>Dave Bryson</name>
</contributor>
<contributor>
<name>Chuck Burdick</name>
</contributor>
<contributor>
<name>Julien Buret</name>
</contributor>
<contributor>
<name>Josh Cain</name>
</contributor>
<contributor>
<name>Jonathan Carlson</name>
</contributor>
<contributor>
<name>Ram Chidambaram</name>
</contributor>
<contributor>
<name>Steve Clark</name>
</contributor>
<contributor>
<name>Benoit Corne</name>
</contributor>
<contributor>
<name>Eric Crampton</name>
</contributor>
<contributor>
<name>Dimiter Dimitrov</name>
</contributor>
<contributor>
<name>Peter Donald</name>
</contributor>
<contributor>
<name>Steve Downey</name>
</contributor>
<contributor>
<name>Rich Dougherty</name>
</contributor>
<contributor>
<name>Tom Dunham</name>
</contributor>
<contributor>
<name>Stefano Fornari</name>
</contributor>
<contributor>
<name>Andrew Freeman</name>
</contributor>
<contributor>
<name>Gerhard Froehlich</name>
</contributor>
<contributor>
<name>Goran Hacek</name>
</contributor>
<contributor>
<name>David Hay</name>
</contributor>
<contributor>
<name>Mario Ivankovits</name>
</contributor>
<contributor>
<name>Paul Jack</name>
</contributor>
<contributor>
<name>Eric Johnson</name>
</contributor>
<contributor>
<name>Kent Johnson</name>
</contributor>
<contributor>
<name>Marc Johnson</name>
</contributor>
<contributor>
<name>Roger Kapsi</name>
</contributor>
<contributor>
<name>Nissim Karpenstein</name>
</contributor>
<contributor>
<name>Shinobu Kawai</name>
</contributor>
<contributor>
<name>Stephen Kestle</name>
</contributor>
<contributor>
<name>Mohan Kishore</name>
</contributor>
<contributor>
<name>Simon Kitching</name>
</contributor>
<contributor>
<name>Thomas Knych</name>
</contributor>
<contributor>
<name>Serge Knystautas</name>
</contributor>
<contributor>
<name>Peter KoBek</name>
</contributor>
<contributor>
<name>Jordan Krey</name>
</contributor>
<contributor>
<name>Olaf Krische</name>
</contributor>
<contributor>
<name>Guilhem Lavaux</name>
</contributor>
<contributor>
<name>Paul Legato</name>
</contributor>
<contributor>
<name>David Leppik</name>
</contributor>
<contributor>
<name>Berin Loritsch</name>
</contributor>
<contributor>
<name>Hendrik Maryns</name>
</contributor>
<contributor>
<name>Stefano Mazzocchi</name>
</contributor>
<contributor>
<name>Brian McCallister</name>
</contributor>
<contributor>
<name>David Meikle</name>
</contributor>
<contributor>
<name>Steven Melzer</name>
</contributor>
<contributor>
<name>Leon Messerschmidt</name>
</contributor>
<contributor>
<name>Mauricio S. Moura</name>
</contributor>
<contributor>
<name>Kasper Nielsen</name>
</contributor>
<contributor>
<name>Stanislaw Osinski</name>
</contributor>
<contributor>
<name>Alban Peignier</name>
</contributor>
<contributor>
<name>Mike Pettypiece</name>
</contributor>
<contributor>
<name>Steve Phelps</name>
</contributor>
<contributor>
<name>Ilkka Priha</name>
</contributor>
<contributor>
<name>Jonas Van Poucke</name>
</contributor>
<contributor>
<name>Will Pugh</name>
</contributor>
<contributor>
<name>Herve Quiroz</name>
</contributor>
<contributor>
<name>Daniel Rall</name>
</contributor>
<contributor>
<name>Robert Ribnitz</name>
</contributor>
<contributor>
<name>Huw Roberts</name>
</contributor>
<contributor>
<name>Henning P. Schmiedehausen</name>
</contributor>
<contributor>
<name>Joerg Schmuecker</name>
</contributor>
<contributor>
<name>Howard Lewis Ship</name>
</contributor>
<contributor>
<name>Joe Raysa</name>
</contributor>
<contributor>
<name>Jeff Rodriguez</name>
</contributor>
<contributor>
<name>Ashwin S</name>
</contributor>
<contributor>
<name>Jordane Sarda</name>
</contributor>
<contributor>
<name>Thomas Schapitz</name>
</contributor>
<contributor>
<name>Jon Schewe</name>
</contributor>
<contributor>
<name>Andreas Schlosser</name>
</contributor>
<contributor>
<name>Christian Siefkes</name>
</contributor>
<contributor>
<name>Michael Smith</name>
</contributor>
<contributor>
<name>Stephen Smith</name>
</contributor>
<contributor>
<name>Jan Sorensen</name>
</contributor>
<contributor>
<name>Jon S. Stevens</name>
</contributor>
<contributor>
<name>James Strachan</name>
</contributor>
<contributor>
<name>Leo Sutic</name>
</contributor>
<contributor>
<name>Radford Tam</name>
</contributor>
<contributor>
<name>Chris Tilden</name>
</contributor>
<contributor>
<name>Neil O'Toole</name>
</contributor>
<contributor>
<name>Jeff Turner</name>
</contributor>
<contributor>
<name>Kazuya Ujihara</name>
</contributor>
<contributor>
<name>Thomas Vahrst</name>
</contributor>
<contributor>
<name>Jeff Varszegi</name>
</contributor>
<contributor>
<name>Ralph Wagner</name>
</contributor>
<contributor>
<name>Hollis Waite</name>
</contributor>
<contributor>
<name>David Weinrich</name>
</contributor>
<contributor>
<name>Dieter Wimberger</name>
</contributor>
<contributor>
<name>Serhiy Yevtushenko</name>
</contributor>
<contributor>
<name>Sai Zhang</name>
</contributor>
<contributor>
<name>Jason van Zyl</name>
</contributor>
<contributor>
<name>Geoff Schoeman</name>
</contributor>
<contributor>
<name>Goncalo Marques</name>
</contributor>
<contributor>
<name>Vamsi Kavuri</name>
</contributor>
Initial bloom filter code contribution (#83) * Added initial bloom filter code. Added changed lang3 dependency from test to compile in pom.xml * added tests + made recommended changes. * Updated documentation * refactored ProtoBloomFilter added tests. * Cleand up code and added tests * Added CountingBloomFilter * Fixed CountingBloomFilter issues Fixed checkstyle and bug report issues * Initial bloom filter collections checkin * Added unit tests * fixed test cases * Extract BloomFilter as an interface * added missing license info * fixed Jacoco errors * fixed names for so build picks up tests * cleaned up Jacoco report for BloomNestedCollection * removed unused code * cleaned up and reformatted * added javadoc fixed issue with BloomNestedCollection detecting duplicates in an edge case. * fixed candidate testing bug * Cleand up niggling report issues. * fixed javadoc errors * fixed javadoc for java 13 issue * Second set of fixes. * "package private for testing" for methods and properties. * In "Builder": ** Field "hashes" made "final" * removes some "Serializable" implementations. * "StandardBloomFilter" made non non "final" fields final and changed "final protected" to "final private". * removed transient fields * made Package name singular * added javadocs for private and protected fields and methods. * Occurrences of "bloom" replaced with "Bloom" * removed checkstyle and findbugs exclusions * Fixed method and class names * Documentation updates * Fixed checkstyle isses Added BloomFilterConfiguration functions for estimation. * added .checkstyle to eclipse ignore section. * renamed test classes to match main class names * Updated the documentation. * Implemented requested changes. Part of COLLECTIONS-728 Changed remaining "get" comments to "gets" etc. Added final where possible and reasonable. renamed enum Change to CHANGE fixed missing javadoc links and missed name changes. fixed ProtoBloomFilter hashCode renamed CollectionStatistics to BloomCollectionStatistics renamed CollectionConfiguration to BloomCollectionConfiguration renamed BloomCollectionStatistics.getTxnCount() to getTransactionCount() * Added final set of constructors and tests for them. Cleaned up issues from Gilles Sadowski review * fixes for Gilles Sadowski issues in BloomCollectionStatistics * Update javadoc * renamed match() -> matches() and inverseMatch() -> inverseMatches() This follows the pattern set with the Object.equals() method name. * added isFull() method to check if a bloom filter is full. * Changed gate from StandardBloomFilter to BloomFilter * renamed BloomCollectionX -> BloomFilterGatedX specifically: BloomCollectionConfiguration -> BloomFilterGatedConfiguraiton BloomCollectionStatistics -> BloomFilterGatedStatistics * Made the StandardBloomFilter(BitSet) constructor public * removed extraneous build() methods from ProtoBloomFilter.Factory * Added Use cases * Initial cut * changes for interface * Changed to Hasher implementation * Added missing files and removed Shape from some BloomFilter calls * Added @since 4.5 tags * fixed javadoc * fixed PMD errors * Added tests and fixed sign extension issues * changed to Byte constant * made BloomFilter.verify*() non final * Added remove(Hasher) for completeness * Replaced private implementation of MurmurHash3 with commons-codec * fixed typo * Removed Hasher.Factory added HashFunction interface * removed Usage.md * made commons-codec dependency optional * Improved performance of Iterator. * renamed instance variable "md" as messageDigest. * updated javadoc * renamed Iter to Iterator and removed unused imports * removed unused imports * Made instance variables final. Also fixed MD5 constructor to throw IllegalStateException if MD5 algo can not be found. * removed unused imports * Updated javadoc. * Added HashFunctionIdentity to replace HashFunctionName Added test cases, updated java doc. Renamed function implementations to reflect actual function. Added comparators for HashFunctionIdentity * fixed naming issues * Updated javadoc * fixed checkstyle issue * Removed link that was causing problems in java 11+ javadoc * changed HashFunctionIdentity.getProcess() to getProcessType() * changed HashFunctionIdentity.getProcess() to getProcessType() * Added package documentation * Added BloomFilter interface and removed unnecessary methods * updated tests and fixed issues * Moved set operations to separate class and updated tests * fixed FindBugs, PMD and Checkstyle errors * fixed javadocs * Added SetOperations and tests * Added javadocs indicating optional commons-codec required * Added another cosine test * Updated to commons-codec 1.14 * fixed typos * moved Hasher to o.a.c.c.b.hasher package * extracted Shape.java and moved to o.a.c.c.b.hasher package * Added javadoc and removed unused imports in testing code * Added isEmpty() method to Hasher
2020-01-24 18:10:46 -05:00
<contributor>
<name>Claude Warren</name>
</contributor>
<contributor>
<name>Chen Guoping</name>
</contributor>
<contributor>
<name>Stefano Cordio</name>
</contributor>
2021-10-09 01:48:01 -04:00
<contributor>
<name>Arturo Bernal</name>
</contributor>
</contributors>
<dependencies>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-api</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-engine</artifactId>
<scope>test</scope>
</dependency>
Simplify bloom filters (#258) * Fixed some unit tests * First set with complete test cases. * Cleaned up hasher collecton processing * cleaned up code * added license headers * Refactored and cleaned up Moved to dependency on BitMapProducer, IndexProducer and BitCountProducer to retrieve internal representations of the data. * Added license header. * Updated documentation * Fixed bug and added tests * Added "@since 4.5" where necessary * Added BitMapProducer constructor to SimpleBloomFilter * added BitMapProducer.fromLongArray() and Hasher.isEmpty() * Changes to speed up Simple filter processing * Null hasher used when a hasher is required but no values are available. * Added Hasher.Filter and Hasher.FilteredIntConsumer * Updated documentation + formatted. * Added license * fixed checkstyle issues * fixed javadoc issues * fixed test issue * fixed javadoc issues * Reduced the acceptable delta for p tests * Updated docs and test cases * Updated docs and test cases * fixed issue with Shape javadoc * Added more test coverage. * fixed formatting issues * Updated tests to use assertThrows. * fixed indents * Added constructor with IndexProducer * Fixed issue with compare and different length bitMap arrays * fixed formatting issues * Efficiency changes cleaned up asIndexArray BitMapProducer to IndexProducer conversion * changed XProviers to use XPredicates * Removed NoMatchException * Removed unneeded BitMap funcs Moves isSparse() to Shape. * fixed checkstyle issues * Fixed javadoc errors * simplified parameter in BitMapProducer.fromIndexProducer * fixed tests * added BitMapping verification * Added more tests * Added more tests * Fixed typos * Changes requested by aherbert * fixed "bit map" in documentation * Renamed tests * Removed blank lines * changed new X<foo> to new X<> * updated documentation * Added BloomFilter.copy() * changed ArrayCountingBloomFilter to use copy() method * cleaned up numberOfBitsMaps() * added asBitMapArray() and makePredicate() to BitMapProducer * Moved asIndexArray() to IndexProducer * harmonized Simple and Sparse Bloom filter constructors * Implemented AbstractCountingBloomFilter.asindexArray() * updated documentation * fixed up NullHasher * implemented hasher filter * Fixed style issues * added default SimpleHasher increment. * Added modulus calculation to SimpleHasher * fixed Hashing issues * moved hasher/filter/* to /hasher * moved bloomfilter/hasher to bloomfilter * fixed up checkstyle issues * Made Filter -> IndexFilter -w- factory * moved IndexFilter into Hasher * updated hashing tests & fixed checksyle * removed SingleItemhasherCollection as associated methods * Fixed some unit tests * First set with complete test cases. * Cleaned up hasher collecton processing * cleaned up code * added license headers * Refactored and cleaned up Moved to dependency on BitMapProducer, IndexProducer and BitCountProducer to retrieve internal representations of the data. * Added license header. * Updated documentation * Fixed bug and added tests * Added "@since 4.5" where necessary * Added BitMapProducer constructor to SimpleBloomFilter * added BitMapProducer.fromLongArray() and Hasher.isEmpty() * Changes to speed up Simple filter processing * Null hasher used when a hasher is required but no values are available. * Added Hasher.Filter and Hasher.FilteredIntConsumer * Updated documentation + formatted. * Added license * fixed checkstyle issues * fixed javadoc issues * fixed test issue * fixed javadoc issues * Reduced the acceptable delta for p tests * Updated docs and test cases * Updated docs and test cases * fixed issue with Shape javadoc * Added more test coverage. * fixed formatting issues * Updated tests to use assertThrows. * fixed indents * Added constructor with IndexProducer * Fixed issue with compare and different length bitMap arrays * fixed formatting issues * Efficiency changes cleaned up asIndexArray BitMapProducer to IndexProducer conversion * changed XProviers to use XPredicates * Removed NoMatchException * Removed unneeded BitMap funcs Moves isSparse() to Shape. * fixed checkstyle issues * Fixed javadoc errors * simplified parameter in BitMapProducer.fromIndexProducer * fixed tests * added BitMapping verification * Added more tests * Added more tests * Fixed typos * Changes requested by aherbert * fixed "bit map" in documentation * Renamed tests * Removed blank lines * changed new X<foo> to new X<> * updated documentation * Added BloomFilter.copy() * changed ArrayCountingBloomFilter to use copy() method * cleaned up numberOfBitsMaps() * added asBitMapArray() and makePredicate() to BitMapProducer * Moved asIndexArray() to IndexProducer * harmonized Simple and Sparse Bloom filter constructors * Implemented AbstractCountingBloomFilter.asindexArray() * updated documentation * fixed up NullHasher * implemented hasher filter * Fixed style issues * added default SimpleHasher increment. * Added modulus calculation to SimpleHasher * fixed Hashing issues * moved hasher/filter/* to /hasher * moved bloomfilter/hasher to bloomfilter * fixed up checkstyle issues * Made Filter -> IndexFilter -w- factory * moved IndexFilter into Hasher * updated hashing tests & fixed checksyle * removed SingleItemhasherCollection as associated methods * fixed javadoc issues * fixed javadoc issues * added checks for BitMapProducer limits and index limits * updated tests * added tests * fixed checkstyle issues * fixed formatting and test coverage * fixed javadoc issue * put back checkstyle.xml * switched to forEachBitMapPair * updated BitMap and Index array production * fixed merge with BitMapProducer * Cleaned up formatting * fixed checkstyle issues * fixed coding issues * updated documentation * simplified test * removed unwanted merge files * removed duplicate entry * put back test that incorrectly removed * fixed asIndexArray error * fixed checkstyle errors * Changes for last review
2022-06-15 13:24:22 -04:00
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-params</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest</artifactId>
<version>2.2</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.easymock</groupId>
<artifactId>easymock</artifactId>
<version>5.1.0</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.12.0</version>
<scope>test</scope>
</dependency>
Initial bloom filter code contribution (#83) * Added initial bloom filter code. Added changed lang3 dependency from test to compile in pom.xml * added tests + made recommended changes. * Updated documentation * refactored ProtoBloomFilter added tests. * Cleand up code and added tests * Added CountingBloomFilter * Fixed CountingBloomFilter issues Fixed checkstyle and bug report issues * Initial bloom filter collections checkin * Added unit tests * fixed test cases * Extract BloomFilter as an interface * added missing license info * fixed Jacoco errors * fixed names for so build picks up tests * cleaned up Jacoco report for BloomNestedCollection * removed unused code * cleaned up and reformatted * added javadoc fixed issue with BloomNestedCollection detecting duplicates in an edge case. * fixed candidate testing bug * Cleand up niggling report issues. * fixed javadoc errors * fixed javadoc for java 13 issue * Second set of fixes. * "package private for testing" for methods and properties. * In "Builder": ** Field "hashes" made "final" * removes some "Serializable" implementations. * "StandardBloomFilter" made non non "final" fields final and changed "final protected" to "final private". * removed transient fields * made Package name singular * added javadocs for private and protected fields and methods. * Occurrences of "bloom" replaced with "Bloom" * removed checkstyle and findbugs exclusions * Fixed method and class names * Documentation updates * Fixed checkstyle isses Added BloomFilterConfiguration functions for estimation. * added .checkstyle to eclipse ignore section. * renamed test classes to match main class names * Updated the documentation. * Implemented requested changes. Part of COLLECTIONS-728 Changed remaining "get" comments to "gets" etc. Added final where possible and reasonable. renamed enum Change to CHANGE fixed missing javadoc links and missed name changes. fixed ProtoBloomFilter hashCode renamed CollectionStatistics to BloomCollectionStatistics renamed CollectionConfiguration to BloomCollectionConfiguration renamed BloomCollectionStatistics.getTxnCount() to getTransactionCount() * Added final set of constructors and tests for them. Cleaned up issues from Gilles Sadowski review * fixes for Gilles Sadowski issues in BloomCollectionStatistics * Update javadoc * renamed match() -> matches() and inverseMatch() -> inverseMatches() This follows the pattern set with the Object.equals() method name. * added isFull() method to check if a bloom filter is full. * Changed gate from StandardBloomFilter to BloomFilter * renamed BloomCollectionX -> BloomFilterGatedX specifically: BloomCollectionConfiguration -> BloomFilterGatedConfiguraiton BloomCollectionStatistics -> BloomFilterGatedStatistics * Made the StandardBloomFilter(BitSet) constructor public * removed extraneous build() methods from ProtoBloomFilter.Factory * Added Use cases * Initial cut * changes for interface * Changed to Hasher implementation * Added missing files and removed Shape from some BloomFilter calls * Added @since 4.5 tags * fixed javadoc * fixed PMD errors * Added tests and fixed sign extension issues * changed to Byte constant * made BloomFilter.verify*() non final * Added remove(Hasher) for completeness * Replaced private implementation of MurmurHash3 with commons-codec * fixed typo * Removed Hasher.Factory added HashFunction interface * removed Usage.md * made commons-codec dependency optional * Improved performance of Iterator. * renamed instance variable "md" as messageDigest. * updated javadoc * renamed Iter to Iterator and removed unused imports * removed unused imports * Made instance variables final. Also fixed MD5 constructor to throw IllegalStateException if MD5 algo can not be found. * removed unused imports * Updated javadoc. * Added HashFunctionIdentity to replace HashFunctionName Added test cases, updated java doc. Renamed function implementations to reflect actual function. Added comparators for HashFunctionIdentity * fixed naming issues * Updated javadoc * fixed checkstyle issue * Removed link that was causing problems in java 11+ javadoc * changed HashFunctionIdentity.getProcess() to getProcessType() * changed HashFunctionIdentity.getProcess() to getProcessType() * Added package documentation * Added BloomFilter interface and removed unnecessary methods * updated tests and fixed issues * Moved set operations to separate class and updated tests * fixed FindBugs, PMD and Checkstyle errors * fixed javadocs * Added SetOperations and tests * Added javadocs indicating optional commons-codec required * Added another cosine test * Updated to commons-codec 1.14 * fixed typos * moved Hasher to o.a.c.c.b.hasher package * extracted Shape.java and moved to o.a.c.c.b.hasher package * Added javadoc and removed unused imports in testing code * Added isEmpty() method to Hasher
2020-01-24 18:10:46 -05:00
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.12.0</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>commons-codec</groupId>
<artifactId>commons-codec</artifactId>
<version>1.15</version>
<optional>true</optional>
Initial bloom filter code contribution (#83) * Added initial bloom filter code. Added changed lang3 dependency from test to compile in pom.xml * added tests + made recommended changes. * Updated documentation * refactored ProtoBloomFilter added tests. * Cleand up code and added tests * Added CountingBloomFilter * Fixed CountingBloomFilter issues Fixed checkstyle and bug report issues * Initial bloom filter collections checkin * Added unit tests * fixed test cases * Extract BloomFilter as an interface * added missing license info * fixed Jacoco errors * fixed names for so build picks up tests * cleaned up Jacoco report for BloomNestedCollection * removed unused code * cleaned up and reformatted * added javadoc fixed issue with BloomNestedCollection detecting duplicates in an edge case. * fixed candidate testing bug * Cleand up niggling report issues. * fixed javadoc errors * fixed javadoc for java 13 issue * Second set of fixes. * "package private for testing" for methods and properties. * In "Builder": ** Field "hashes" made "final" * removes some "Serializable" implementations. * "StandardBloomFilter" made non non "final" fields final and changed "final protected" to "final private". * removed transient fields * made Package name singular * added javadocs for private and protected fields and methods. * Occurrences of "bloom" replaced with "Bloom" * removed checkstyle and findbugs exclusions * Fixed method and class names * Documentation updates * Fixed checkstyle isses Added BloomFilterConfiguration functions for estimation. * added .checkstyle to eclipse ignore section. * renamed test classes to match main class names * Updated the documentation. * Implemented requested changes. Part of COLLECTIONS-728 Changed remaining "get" comments to "gets" etc. Added final where possible and reasonable. renamed enum Change to CHANGE fixed missing javadoc links and missed name changes. fixed ProtoBloomFilter hashCode renamed CollectionStatistics to BloomCollectionStatistics renamed CollectionConfiguration to BloomCollectionConfiguration renamed BloomCollectionStatistics.getTxnCount() to getTransactionCount() * Added final set of constructors and tests for them. Cleaned up issues from Gilles Sadowski review * fixes for Gilles Sadowski issues in BloomCollectionStatistics * Update javadoc * renamed match() -> matches() and inverseMatch() -> inverseMatches() This follows the pattern set with the Object.equals() method name. * added isFull() method to check if a bloom filter is full. * Changed gate from StandardBloomFilter to BloomFilter * renamed BloomCollectionX -> BloomFilterGatedX specifically: BloomCollectionConfiguration -> BloomFilterGatedConfiguraiton BloomCollectionStatistics -> BloomFilterGatedStatistics * Made the StandardBloomFilter(BitSet) constructor public * removed extraneous build() methods from ProtoBloomFilter.Factory * Added Use cases * Initial cut * changes for interface * Changed to Hasher implementation * Added missing files and removed Shape from some BloomFilter calls * Added @since 4.5 tags * fixed javadoc * fixed PMD errors * Added tests and fixed sign extension issues * changed to Byte constant * made BloomFilter.verify*() non final * Added remove(Hasher) for completeness * Replaced private implementation of MurmurHash3 with commons-codec * fixed typo * Removed Hasher.Factory added HashFunction interface * removed Usage.md * made commons-codec dependency optional * Improved performance of Iterator. * renamed instance variable "md" as messageDigest. * updated javadoc * renamed Iter to Iterator and removed unused imports * removed unused imports * Made instance variables final. Also fixed MD5 constructor to throw IllegalStateException if MD5 algo can not be found. * removed unused imports * Updated javadoc. * Added HashFunctionIdentity to replace HashFunctionName Added test cases, updated java doc. Renamed function implementations to reflect actual function. Added comparators for HashFunctionIdentity * fixed naming issues * Updated javadoc * fixed checkstyle issue * Removed link that was causing problems in java 11+ javadoc * changed HashFunctionIdentity.getProcess() to getProcessType() * changed HashFunctionIdentity.getProcess() to getProcessType() * Added package documentation * Added BloomFilter interface and removed unnecessary methods * updated tests and fixed issues * Moved set operations to separate class and updated tests * fixed FindBugs, PMD and Checkstyle errors * fixed javadocs * Added SetOperations and tests * Added javadocs indicating optional commons-codec required * Added another cosine test * Updated to commons-codec 1.14 * fixed typos * moved Hasher to o.a.c.c.b.hasher package * extracted Shape.java and moved to o.a.c.c.b.hasher package * Added javadoc and removed unused imports in testing code * Added isEmpty() method to Hasher
2020-01-24 18:10:46 -05:00
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava-testlib</artifactId>
<version>31.1-jre</version>
<scope>test</scope>
</dependency>
</dependencies>
<distributionManagement>
<site>
<id>apache.website</id>
<name>Apache Commons Site</name>
<url>${commons.deployment.protocol}://people.apache.org/www/commons.apache.org/${commons.componentid}</url>
</site>
</distributionManagement>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<!--
This is also used to generate download_xxx file name.
To override this when generating the download page:
mvn commons:download-page -Dcommons.componentid=collections
The above seems to change the download page name but not any other
properties that depend on the componentid.
-->
<commons.componentid>collections</commons.componentid>
<commons.module.name>org.apache.commons.collections4</commons.module.name>
<!-- Current 4.x release series -->
<commons.release.version>4.5</commons.release.version>
<commons.release.desc>(Requires Java 8 or later)</commons.release.desc>
2019-07-05 13:41:14 -04:00
<!-- Previous 4.2 release on Java 7 -->
<commons.release.2.version>4.2</commons.release.2.version>
<commons.release.2.desc>(Requires Java 7 or later)</commons.release.2.desc>
<!-- Override generated name -->
<commons.release.2.name>commons-collections4-${commons.release.2.version}</commons.release.2.name>
2019-07-05 13:41:14 -04:00
<!-- Previous 4.1 release on Java 6-->
<commons.release.3.version>4.1</commons.release.3.version>
<commons.release.3.desc>(Requires Java 6 or later)</commons.release.3.desc>
<!-- Override generated name -->
<commons.release.3.name>commons-collections4-${commons.release.3.version}</commons.release.3.name>
2019-07-05 13:41:14 -04:00
<!-- Previous 3.x release on Java 1.3 -->
<commons.release.4.version>3.2.2</commons.release.4.version>
<commons.release.4.desc>(Requires Java 1.3 or later)</commons.release.4.desc>
<!-- Override generated name -->
<commons.release.4.name>commons-collections-${commons.release.4.version}</commons.release.4.name>
<!-- Older release has sha256 only -->
<commons.release.4.hash>sha256</commons.release.4.hash>
<!-- This is needed until CP49 is released -->
<commons.release.4.binary.suffix>-bin</commons.release.4.binary.suffix>
<commons.jira.id>COLLECTIONS</commons.jira.id>
<commons.jira.pid>12310465</commons.jira.pid>
<!-- The RC version used in the staging repository URL. -->
2019-07-05 13:41:14 -04:00
<commons.rc.version>RC1</commons.rc.version>
<commons.site.path>collections</commons.site.path>
<commons.scmPubUrl>https://svn.apache.org/repos/infra/websites/production/commons/content/proper/commons-collections</commons.scmPubUrl>
<commons.scmPubCheckoutDirectory>site-content</commons.scmPubCheckoutDirectory>
2017-08-02 14:32:20 -04:00
<commons.clirr.version>2.8</commons.clirr.version>
2020-02-18 18:07:37 -05:00
<!--Commons Release Plugin -->
<commons.bc.version>4.4</commons.bc.version>
<commons.release.isDistModule>true</commons.release.isDistModule>
2019-07-05 13:41:14 -04:00
<commons.releaseManagerName>Gary Gregory</commons.releaseManagerName>
<commons.releaseManagerKey>86fdc7e2a11262cb</commons.releaseManagerKey>
2020-02-18 18:07:37 -05:00
</properties>
<build>
2022-11-06 11:51:29 -05:00
<defaultGoal>clean verify apache-rat:check pmd:check checkstyle:check japicmp:cmp javadoc:javadoc</defaultGoal>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-pmd-plugin</artifactId>
<version>${commons.pmd.version}</version>
<configuration>
<targetJdk>${maven.compiler.target}</targetJdk>
</configuration>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<includes>
<include>**/*Test.java</include>
</includes>
<excludes>
<exclude>**/*$*</exclude>
<exclude>**/TestUtils.java</exclude>
<exclude>**/Abstract*.java</exclude>
<exclude>**/BulkTest.java</exclude>
</excludes>
</configuration>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<descriptors>
<descriptor>src/assembly/bin.xml</descriptor>
<descriptor>src/assembly/src.xml</descriptor>
</descriptors>
<tarLongFileMode>gnu</tarLongFileMode>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.rat</groupId>
<artifactId>apache-rat-plugin</artifactId>
<configuration>
<excludes>
2021-04-02 19:35:41 -04:00
<exclude>.asf.yaml</exclude>
<exclude>site-content/**/*</exclude>
<exclude>src/test/resources/org/apache/commons/collections4/data/test/*</exclude>
</excludes>
</configuration>
</plugin>
<plugin>
<artifactId>maven-checkstyle-plugin</artifactId>
<configuration>
<configLocation>${basedir}/src/conf/checkstyle.xml</configLocation>
<headerLocation>${basedir}/src/conf/license-header.txt</headerLocation>
<suppressionsLocation>${basedir}/src/conf/checkstyle-suppressions.xml</suppressionsLocation>
<enableRulesSummary>false</enableRulesSummary>
<includeTestSourceDirectory>true</includeTestSourceDirectory>
2020-02-18 18:07:37 -05:00
<resourceExcludes>NOTICE.txt,LICENSE.txt,**/pom.properties,**/test.properties,**/resolver-status.properties</resourceExcludes>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-scm-publish-plugin</artifactId>
<configuration>
<ignorePathsToDelete>
<ignorePathToDelete>javadocs</ignorePathToDelete>
</ignorePathsToDelete>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>test-jar</goal>
</goals>
</execution>
</executions>
<!-- Temporary fix for COLLECTIONS-658, remove this after this has implemented in parent pom -->
<configuration>
<archive combine.children="append">
<manifestEntries>
<Automatic-Module-Name>org.apache.commons.collections4</Automatic-Module-Name>
</manifestEntries>
</archive>
</configuration>
</plugin>
2019-05-14 05:15:39 -04:00
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<configuration>
<source>8</source>
</configuration>
</plugin>
</plugins>
</build>
<reporting>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-changes-plugin</artifactId>
<version>${commons.changes.version}</version>
<configuration>
<issueLinkTemplatePerSystem>
<default>%URL%/%ISSUE%</default>
</issueLinkTemplatePerSystem>
<!-- Add sample JIRA report - 'mvn changes:jira-report' or 'mvn site' -->
<onlyCurrentVersion>false</onlyCurrentVersion>
<columnNames>Fix Version,Key,Summary,Type,Resolution,Status</columnNames>
<!-- Sort cols have to be reversed in JIRA 4 -->
<sortColumnNames>Key DESC,Type,Fix Version DESC</sortColumnNames>
<resolutionIds>Fixed</resolutionIds>
<statusIds>Resolved,Closed</statusIds>
<!-- Don't include sub-task -->
<typeIds>Bug,New Feature,Task,Improvement,Wish,Test</typeIds>
<fixVersionIds>${commons.release.version}</fixVersionIds>
<maxEntries>500</maxEntries>
</configuration>
<reportSets>
<reportSet>
<reports>
<report>changes-report</report>
<report>jira-report</report>
</reports>
</reportSet>
</reportSets>
</plugin>
<plugin>
<artifactId>maven-checkstyle-plugin</artifactId>
<configuration>
<configLocation>${basedir}/src/conf/checkstyle.xml</configLocation>
<enableRulesSummary>false</enableRulesSummary>
<suppressionsLocation>${basedir}/src/conf/checkstyle-suppressions.xml</suppressionsLocation>
</configuration>
<reportSets>
<reportSet>
<reports>
<report>checkstyle</report>
</reports>
</reportSet>
</reportSets>
</plugin>
2021-04-02 19:35:41 -04:00
<plugin>
<groupId>org.apache.rat</groupId>
<artifactId>apache-rat-plugin</artifactId>
<configuration>
<excludes>
<exclude>.asf.yaml</exclude>
<exclude>site-content/**/*</exclude>
<exclude>src/test/resources/org/apache/commons/collections4/data/test/*</exclude>
</excludes>
</configuration>
</plugin>
<plugin>
<groupId>com.github.siom79.japicmp</groupId>
<artifactId>japicmp-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>com.github.spotbugs</groupId>
<artifactId>spotbugs-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-pmd-plugin</artifactId>
</plugin>
</plugins>
</reporting>
<profiles>
<profile>
<id>setup-checkout</id>
<activation>
<file>
<missing>site-content</missing>
</file>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<id>prepare-checkout</id>
<phase>pre-site</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<target>
<exec executable="svn">
<arg line="checkout --depth immediates ${commons.scmPubUrl} ${commons.scmPubCheckoutDirectory}" />
</exec>
<exec executable="svn">
<arg line="update --set-depth exclude ${commons.scmPubCheckoutDirectory}/javadocs" />
</exec>
<pathconvert pathsep=" " property="dirs">
<dirset dir="${commons.scmPubCheckoutDirectory}" includes="*" />
</pathconvert>
<exec executable="svn">
<arg line="update --set-depth infinity ${dirs}" />
</exec>
</target>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>
2018-12-18 09:53:01 -05:00