org.hamcrest:hamcrest
3.0
#970 most downloaded on Maven Central
hamcrest/JavaHamcrest
What this package is like to depend on
Last release 2 years ago
no release in 18 months
Ships unpredictably
gaps range from 2 weeks to 4.8 years
Nearly every release is documented
notes for 3 of 3 stable releases
Nothing withdrawn
no release was ever pulled
8 years old
9 releases · first in 2018
0 releases in the last 12 months
see the full history below
Release timeline
9 releases · Nov 2018 to Aug 2024Releases
latest 9-
3.001 Aug 2024Release notes
Open source →Breaking Changes
- From version 3.0, the jar distributed to Maven Central is now compiled to Java 1.8 bytecode,
and is not compatible with previous versions of Java. See Issue #331 and
PR #411 for details. Developers who use Java 1.7 earlier can still depend uponhamcrest-2.2.jar.
Improvements
Release notes
Open source →Breaking Changes
- From version 3.0, the jar distributed to Maven Central is now compiled to Java 1.8 bytecode,
and is not compatible with previous versions of Java. See
Issue #331 and
PR #411 for details. Developers who use Java 1.7 earlier can still
depend upon
hamcrest-2.2.jar.
Improvements
- From version 3.0, the jar distributed to Maven Central is now compiled to Java 1.8 bytecode,
-
3.0-rc124 Jul 2024 pre-releaseRelease notes
Open source →Breaking Changes
- From version 3.0, the jar distributed to Maven Central is now compiled to Java 1.8 bytecode, and is not compatible with previous versions of Java. See Issue #331 and PR #411 for details. Developers who use Java 1.7 earlier can still depend upon
hamcrest-2.2.jar.
Improvements
- From version 3.0, the jar distributed to Maven Central is now compiled to Java 1.8 bytecode, and is not compatible with previous versions of Java. See Issue #331 and PR #411 for details. Developers who use Java 1.7 earlier can still depend upon
-
2.216 Oct 2019Release notes
Open source →Improvements
- AllOf/AnyOf: Pass the matchers to constructor using varargs (Issue #245)
- Matchers.anyOf: Fix generic bounds compatibility for JDK 11 (Issue #256, Issue #257)
- AssertionError message is unhelpful when match fails for byte type (Issue #254, Issue #255)
- Use platform specific line breaks (PR #267)
- Build now checks for consistent use of spaces (PR #217)
Bugfixes
- Fix compatibility issue for development with Android D8 (Issue #246)
- Fix typo in license name (Issue #247)
- 1.3 compatible constructors for string matchers (Issue #259, Issue #260)
- Fix for split packages with Java 9 modules (Issue #269, PR #270)
Release notes
Open source →Improvements
- AllOf/AnyOf: Pass the matchers to constructor using varargs (Issue #245)
- Matchers.anyOf: Fix generic bounds compatibility for JDK 11 (Issue #256, Issue #257)
- AssertionError message is unhelpful when match fails for byte type (Issue #254, Issue #255)
- Use platform specific line breaks (PR #267)
- Build now checks for consistent use of spaces (PR #217)
Bugfixes
- Fix compatibility issue for development with Android D8 (Issue #246)
- Fix typo in license name (Issue #247)
- 1.3 compatible constructors for string matchers (Issue #259, Issue #260)
- Fix for split packages with Java 9 modules (Issue #269, PR #270)
-
2.2-rc105 Sep 2019 pre-releaseRelease notes
Open source →Improvements
- AllOf/AnyOf: Pass the matchers to constructor using varargs (Issue #245)
- Matchers.anyOf: Fix generic bounds compatibility for JDK 11 (Issue #256, Issue #257)
- AssertionError message is unhelpful when match fails for byte type (Issue #254, Issue #255)
- Use platform specific line breaks (PR #267)
- Build now checks for consistent use of spaces (PR #217)
Bugfixes
- Fix compatibility issue for development with Android D8 (Issue #246)
- Fix typo in license name (Issue #247)
- 1.3 compatible constructors for string matchers (Issue #259, Issue #260)
- Fix for split packages with Java 9 modules (Issue #269, PR #270)
-
2.120 Dec 2018Release notes
Open source →Overview
After a long hiatus without releases, this version simplifies the packaging of
Hamcrest into a single jar:hamcrest-2.1.jar. Other big changes include
Java 9 module compatibility, along with numerous other improvements and bug
fixes.Breaking Changes
- Although the class API has not changed since Hamcrest 1.3, the way that the
project is packaged has changed. Refer to the Hamcrest Distributables
documentation for more information, and in particular the section on
Upgrading from Hamcrest 1.x - The
org.hamcrest.Factoryannotation has been removed (it should not be used in client code)
Changes
- Publish a single jar hamcrest-2.1.jar
- Documentation updates
- Add implementation for CharSequence length matcher
- Fix for TypeSafeDiagnosingMatcher can't detect generic types for subclass
- Renamed IsCollectionContaining to IsIterableContaining
- Make Hamcrest an OSGI bundle
- Add StringRegularExpression matcher
- Fix StringContainsInOrder to detect if a repeated pattern is missing
- Add ArrayAsIterableMatcher
- Fix description for IsEqualIgnoringCase
- Fix JavaDoc examples
- Upgraded to Java 7
- Build with Gradle
- Publish a single jar java-hamcrest-2.0.0.0.jar
- Deprecate
IsCollectionContainingandIsArrayContainingXXX - Removed deprecated methods from previous release
- Improve mismatch description of hasItem/hasItems
- General improvements to mismatch descriptions
- Several JavaDoc improvements and corrections
- Deprecated several matcher factory methods of the for "isXyz"
- Fix GH issue #75 - address doclint errors reported in JDK 1.8
- Fix GH issue #69 - Iterable contains in order is null-safe
- Fix GH issue #59 - added equalToObject() (i.e. unchecked) method
- Fix GH issue #25 - arrayContaining(null, null) cause NullPointerException
- Fix GH issue #36 - string matching on regular expressions
- Fix GH issue #8 - isCloseTo() shows wrong delta in mismatch description
- Fix GH issue #59 - add untyped version of equalTo, named equalToObject
- Fix GC issue #131 - Implement IsEmptyMap, IsMapWithSize
- Fix GC issue #187 - IsArray.describeMismatchSafely() should use Matcher.describeMismatch
- Fix GC issue #155 - Add Matcher implementation for files
- Fix GC issue #69 - fix NPE in IsIterableContainingInOrder
Release notes
Open source →Overview for 2.1
After a long hiatus without releases, this version simplifies the packaging of Hamcrest into a single jar:
hamcrest-<version>.jar. Other big changes include Java 9 module compatibility, migrating the code repository from Google Code to GitHub, along with numerous other new features, improvements and bug fixes.Breaking Changes for 2.1
- The way that the project is packaged has changed. This may cause problems with correctly upgrading transitive dependencies. Refer to the Hamcrest Distributables documentation for more information, and in particular, Upgrading from Hamcrest 1.x
org.hamcrest.Factoryhas been removed. This was only used in old implementations of the hamcrest build toolchain, and can safely be deleted from client code without any effect.
Changes for 2.1
- Documentation updates
- Several JavaDoc improvements and corrections
- Fix JavaDoc examples
- Upgraded to Java 7
- Build with Gradle
- Publish a single jar
hamcrest-2.1.jar - Publish pom-only artifacts for
hamcrest-coreandhamcrest-library. - Add implementation for CharSequence length matcher
- Fix for TypeSafeDiagnosingMatcher can't detect generic types for subclass
- Make Hamcrest an OSGI bundle
- Add StringRegularExpression matcher
- Fix StringContainsInOrder to detect if a repeated pattern is missing
- Add ArrayAsIterableMatcher
- Fix description for IsEqualIgnoringCase
- Removed deprecated methods from previous release
- Improve mismatch description of hasItem/hasItems
- General improvements to mismatch descriptions
- Deprecated several matcher factory methods of the for "isXyz"
- Fix GH issue #75 - address doclint errors reported in JDK 1.8
- Fix GH issue #69 - Iterable contains in order is null-safe
- Fix GH issue #59 - added equalToObject() (i.e. unchecked) method
- Fix GH issue #25 - arrayContaining(null, null) cause NullPointerException
- Fix GH issue #36 - string matching on regular expressions
- Fix GH issue #8 - isCloseTo() shows wrong delta in mismatch description
- Fix GH issue #59 - add untyped version of equalTo, named equalToObject
- Fix GC issue #131 - Implement IsEmptyMap, IsMapWithSize
- Fix GC issue #187 - IsArray.describeMismatchSafely() should use Matcher.describeMismatch
- Fix GC issue #155 - Add Matcher implementation for files
- Fix GC issue #69 - fix NPE in IsIterableContainingInOrder
- Although the class API has not changed since Hamcrest 1.3, the way that the
-
2.1-rc413 Dec 2018 pre-releaseRelease notes
Open source →Restore deleted classes to keep backwards compatibility with version 1.3, and mark them as deprecated.
-
2.1-rc329 Nov 2018 pre-releaseRelease notes
Open source →This fixes the problem that Maven has with interpreting pom-only artifacts. Both
hamcrest-coreandhamcrest-libraryartifacts now publish empty jars with a dependency on thehamcrestartifact. -
2.1-rc227 Nov 2018 pre-releaseRelease notes
Open source →This release publishes pom-only artifacts for
hamcrest-coreandhamcrest-libraryfor better backwards compatibility with previous releases. -
2.1-rc125 Nov 2018 pre-releaseRelease notes
Open source →Overview
After a long hiatus without releases, this version simplifies the packaging of
Hamcrest into a single jar:hamcrest-<version>.jar. Other big changes include
Java 9 module compatibility, along with numerous other improvements and bug
fixes.Breaking Changes
Although the class API has not changed since Hamcrest 1.3, the way that the
project is packaged has changed. Refer to the Hamcrest Distributables
documentation for more information.Changes
- Publish a single jar
hamcrest-2.1.jar - Documentation updates
- Add implementation for CharSequence length matcher
- Fix for TypeSafeDiagnosingMatcher can't detect generic types for subclass
- Renamed IsCollectionContaining to IsIterableContaining
- Make Hamcrest an OSGI bundle
- Add StringRegularExpression matcher
- Fix StringContainsInOrder to detect if a repeated pattern is missing
- Add ArrayAsIterableMatcher
- Fix description for IsEqualIgnoringCase
- Fix JavaDoc examples
Version 2.0.0.0 Changes
Version 2.1-rc1 also includes changes previous released (but un-tagged as version 2.0.0.0). These changes include:
- Upgraded to Java 7
- Build with Gradle
- Publish a single jar java-hamcrest-2.0.0.0.jar
- Removed deprecated methods from previous release
- Improve mismatch description of hasItem/hasItems
- General improvements to mismatch descriptions
- Several JavaDoc improvements and corrections
- Deprecated several matcher factory methods of the for "isXyz"
- Fix GH issue #75 - address doclint errors reported in JDK 1.8
- Fix GH issue #69 - Iterable contains in order is null-safe
- Fix GH issue #59 - added equalToObject() (i.e. unchecked) method
- Fix GH issue #25 - arrayContaining(null, null) cause NullPointerException
- Fix GH issue #36 - string matching on regular expressions
- Fix GH issue #8 - isCloseTo() shows wrong delta in mismatch description
- Fix GH issue #59 - add untyped version of equalTo, named equalToObject
- Fix GC issue #131 - Implement IsEmptyMap, IsMapWithSize
- Fix GC issue #187 - IsArray.describeMismatchSafely() should use Matcher.describeMismatch
- Fix GC issue #155 - Add Matcher implementation for files
- Fix GC issue #69 - fix NPE in IsIterableContainingInOrder
- Publish a single jar