|
1 |
| -# Hamcrest Changes |
2 |
| - |
3 |
| -## Version 2.2 (Unreleased) |
4 |
| - |
5 |
| -### Improvements |
6 |
| - |
7 |
| -* AllOf/AnyOf: Pass the matchers to constructor using varargs ([Issue #245](https://github.com/hamcrest/JavaHamcrest/pull/245)) |
8 |
| -* Matchers.anyOf: Fix generic bounds compatibility for JDK 11 ([Issue #256](https://github.com/hamcrest/JavaHamcrest/issues/256), [Issue #257](https://github.com/hamcrest/JavaHamcrest/issues/257)) |
9 |
| -* AssertionError message is unhelpful when match fails for byte type ([Issue #254](https://github.com/hamcrest/JavaHamcrest/issues/254), [Issue #255](https://github.com/hamcrest/JavaHamcrest/issues/255)) |
10 |
| -* Use platform specific line breaks ([PR #267](https://github.com/hamcrest/JavaHamcrest/pull/267)) |
11 |
| -* Build now checks for consistent use of spaces ([PR #217](https://github.com/hamcrest/JavaHamcrest/pull/217)) |
12 |
| - |
13 |
| -### Bugfixes |
14 |
| -* Fix compatibility issue for development with Android D8 ([Issue #246](https://github.com/hamcrest/JavaHamcrest/issues/246)) |
15 |
| -* Fix typo in license name ([Issue #247](https://github.com/hamcrest/JavaHamcrest/pull/247)) |
16 |
| -* 1.3 compatible constructors for string matchers ([Issue #259](https://github.com/hamcrest/JavaHamcrest/issues/259), [Issue #260](https://github.com/hamcrest/JavaHamcrest/issues/260)) |
17 |
| -* Fix for split packages with Java 9 modules ([Issue #269](https://github.com/hamcrest/JavaHamcrest/issues/269), [PR #270](https://github.com/hamcrest/JavaHamcrest/pull/270)) |
18 |
| - |
19 |
| - |
20 |
| -## Version 2.1 (21st December 2018) |
21 |
| - |
22 |
| -### Overview for 2.1 |
23 |
| - |
24 |
| -After a long hiatus without releases, this version simplifies the packaging of |
25 |
| -Hamcrest into a single jar: `hamcrest-<version>.jar`. Other big changes include |
26 |
| -Java 9 module compatibility, migrating the code repository from Google Code to |
27 |
| -GitHub, along with numerous other new features, improvements and bug fixes. |
28 |
| - |
29 |
| -### Breaking Changes for 2.1 |
30 |
| - |
31 |
| -* The way that the project is packaged has changed. This may cause problems with |
32 |
| -correctly upgrading transitive dependencies. Refer to the |
33 |
| -[Hamcrest Distributables](http://hamcrest.org/JavaHamcrest/distributables.html) |
34 |
| -documentation for more information, and in particular, |
35 |
| -[Upgrading from Hamcrest 1.x](http://hamcrest.org/JavaHamcrest/distributables.html#upgrading-from-hamcrest-1.x) |
36 |
| -* `org.hamcrest.Factory` has been removed. This was only used in old implementations |
37 |
| -of the hamcrest build toolchain, and can safely be deleted from client code without |
38 |
| -any effect. |
39 |
| - |
40 |
| -### Changes for 2.1 |
41 |
| - |
42 |
| -* Documentation updates |
43 |
| -* Several JavaDoc improvements and corrections |
44 |
| -* Fix JavaDoc examples |
45 |
| -* Upgraded to Java 7 |
46 |
| -* Build with Gradle |
47 |
| -* Publish a single jar `hamcrest-2.1.jar` |
48 |
| -* Publish pom-only artifacts for `hamcrest-core` and `hamcrest-library`. |
49 |
| -* Add implementation for CharSequence length matcher |
50 |
| -* Fix for TypeSafeDiagnosingMatcher can't detect generic types for subclass |
51 |
| -* Make Hamcrest an OSGI bundle |
52 |
| -* Add StringRegularExpression matcher |
53 |
| -* Fix StringContainsInOrder to detect if a repeated pattern is missing |
54 |
| -* Add ArrayAsIterableMatcher |
55 |
| -* Fix description for IsEqualIgnoringCase |
56 |
| -* Removed deprecated methods from previous release |
57 |
| -* Improve mismatch description of hasItem/hasItems |
58 |
| -* General improvements to mismatch descriptions |
59 |
| -* Deprecated several matcher factory methods of the for "isXyz" |
60 |
| -* Fix [GH issue #75](https://github.com/hamcrest/JavaHamcrest/issues/75) - address doclint errors reported in JDK 1.8 |
61 |
| -* Fix [GH issue #69](https://github.com/hamcrest/JavaHamcrest/issues/69) - Iterable contains in order is null-safe |
62 |
| -* Fix [GH issue #59](https://github.com/hamcrest/JavaHamcrest/issues/59) - added equalToObject() (i.e. unchecked) method |
63 |
| -* Fix [GH issue #25](https://github.com/hamcrest/JavaHamcrest/issues/25) - arrayContaining(null, null) cause NullPointerException |
64 |
| -* Fix [GH issue #36](https://github.com/hamcrest/JavaHamcrest/issues/36) - string matching on regular expressions |
65 |
| -* Fix [GH issue #8](https://github.com/hamcrest/JavaHamcrest/issues/8) - isCloseTo() shows wrong delta in mismatch description |
66 |
| -* Fix [GH issue #59](https://github.com/hamcrest/JavaHamcrest/issues/59) - add untyped version of equalTo, named equalToObject |
67 |
| -* Fix [GC issue #131](https://code.google.com/archive/p/hamcrest/issues/131) - Implement IsEmptyMap, IsMapWithSize |
68 |
| -* Fix [GC issue #187](https://code.google.com/archive/p/hamcrest/issues/187) - IsArray.describeMismatchSafely() should use Matcher.describeMismatch |
69 |
| -* Fix [GC issue #155](https://code.google.com/archive/p/hamcrest/issues/155) - Add Matcher implementation for files |
70 |
| -* Fix [GC issue #69](https://code.google.com/archive/p/hamcrest/issues/69) - fix NPE in IsIterableContainingInOrder |
71 |
| - |
72 |
| -## Version 1.3 (9th July 2012) |
73 |
| - |
74 |
| -* Introduce Condition class to ease the implementation of multi-step matches |
75 |
| -* Upgrade qdox (included in the generator) to the latest stable version |
76 |
| -* Correct inadvertent deprecation of the Is.isA factory method |
77 |
| -* Fix [issue #179](https://code.google.com/archive/p/hamcrest/issues/179) - AllOf does not output mismatch description |
78 |
| -* Fix [issue #177](https://code.google.com/archive/p/hamcrest/issues/177) - Introduced closeTo matcher for BigDecimals |
79 |
| -* Fix [issue #152](https://code.google.com/archive/p/hamcrest/issues/152) - Factory classes missing from matchers.xml |
80 |
| -* Fix [issue #144](https://code.google.com/archive/p/hamcrest/issues/144) - OrderingComparison doesn't describe mismatch of comparables that return values other than (-1,0,1) |
81 |
| -* Fix [issue #134](https://code.google.com/archive/p/hamcrest/issues/134) - DescribedAs does not delegate describeMismatch |
82 |
| -* Fix [issue #106](https://code.google.com/archive/p/hamcrest/issues/106) - deprecation warning when writing custom matchers |
83 |
| -* Fix [issue #101](https://code.google.com/archive/p/hamcrest/issues/101) - Added theInstance alias for sameInstance factory method |
84 |
| - |
85 |
| -## Version 1.3 RC2 (22nd October 2010) |
86 |
| - |
87 |
| -* Added FeatureMatcher |
88 |
| -* distinguish between instanceOf() and any() |
89 |
| - |
90 |
| -## Version 1.2 (16th May 2009) |
91 |
| - |
92 |
| -* Added mismatch reporting |
93 |
| -* Added WithSamePropertyValuesAs matcher |
94 |
| -* Moved any() from IsAnything to IsInstanceOf. It now checks the type of the matched object |
95 |
| -* Moved MatcherAssert from integration to core |
96 |
| -* Tightened up generics. |
97 |
| -* Added IsMapContainingKey and IsMapContainingValue matchers to resolve a |
98 |
| - generics bug in hasKey and hasValue static factories previously declared |
99 |
| - in IsMapContaining (ngd) |
100 |
| -* Added IsCollectionOnlyContaining and IsArrayOnlyContaining which matches |
101 |
| - collections (and arrays) where all match a given matcher. E.g onlyContains(3,4,5) |
102 |
| - or onlyContains(lessThan(9)) |
103 |
| -* text module moved to separate project, hamcrest-text-patterns |
104 |
| -* added more colection matchers: xContainingInAnyOrder, xContainingInOrder, xWithSize |
105 |
| -* new text Matcher: IsEmptyString |
106 |
| -* hamcrest generator uses method return type |
107 |
| - |
108 |
| -## Version 1.1 (30th June 2007) |
109 |
| - |
110 |
| -* Hamcrest Generator now includes JavaDoc and parameter names in generated code |
111 |
| - by using QDox to parse the source code. |
112 |
| -* Created hamcrest-core.jar (and removed hamcrest-api.jar). |
113 |
| - Moved core set of matchers (and, eq, not, etc) |
114 |
| - to this package to make it more practical for external libraries |
115 |
| - to embed Hamcrest. |
116 |
| -* Created CoreMatchers (static import sugar) in hamcrest-core.jar. |
117 |
| -* StringBuilder can use any Appendable (not just StringBuffer). |
118 |
| -* Added sensible toString() method to BaseMatcher. |
119 |
| -* Created StringDescription.asString() alias (because toString() caused issues |
120 |
| - with static imports). |
121 |
| -* Relaxed isInstanceOf() matcher generic type so it can be used on any kind of |
122 |
| - object. e.g. assertThat(someUnknownObject, isInstanceOf(String.class)); |
123 |
| -* Added any(Class<T>), null(Class<T>) and notNull(Class<T>) matchers, which returns |
124 |
| - Matcher<T>. Helpful when the compiler struggles with type inference. |
125 |
| -* Modified anyOf() and allOf() to accept mixed-types. |
126 |
| -* TypeSafeMatcher.matchesSafely() is now public. |
127 |
| -* Generator recognizes @Factory methods that return subclass of Matcher. |
128 |
| - (Fix by David Saff) |
129 |
| - |
130 |
| -## Version 1.0 (15th Dececmber 2006) |
131 |
| - |
132 |
| -Initial release. |
133 |
| - |
134 |
| -* Support for namespaces in HasXPath |
135 |
| -* Bug fix for matching empty elements with HasXPath |
| 1 | +# Hamcrest Changes |
| 2 | + |
| 3 | +## Version 2.3 (Unreleased) |
| 4 | + |
| 5 | +### Improvements |
| 6 | + |
| 7 | +TBD |
| 8 | + |
| 9 | +### Bugfixes |
| 10 | + |
| 11 | +TBD |
| 12 | + |
| 13 | +## Version 2.2 (17th October 2019) |
| 14 | + |
| 15 | +### Improvements |
| 16 | + |
| 17 | +* AllOf/AnyOf: Pass the matchers to constructor using varargs ([Issue #245](https://github.com/hamcrest/JavaHamcrest/pull/245)) |
| 18 | +* Matchers.anyOf: Fix generic bounds compatibility for JDK 11 ([Issue #256](https://github.com/hamcrest/JavaHamcrest/issues/256), [Issue #257](https://github.com/hamcrest/JavaHamcrest/issues/257)) |
| 19 | +* AssertionError message is unhelpful when match fails for byte type ([Issue #254](https://github.com/hamcrest/JavaHamcrest/issues/254), [Issue #255](https://github.com/hamcrest/JavaHamcrest/issues/255)) |
| 20 | +* Use platform specific line breaks ([PR #267](https://github.com/hamcrest/JavaHamcrest/pull/267)) |
| 21 | +* Build now checks for consistent use of spaces ([PR #217](https://github.com/hamcrest/JavaHamcrest/pull/217)) |
| 22 | + |
| 23 | +### Bugfixes |
| 24 | +* Fix compatibility issue for development with Android D8 ([Issue #246](https://github.com/hamcrest/JavaHamcrest/issues/246)) |
| 25 | +* Fix typo in license name ([Issue #247](https://github.com/hamcrest/JavaHamcrest/pull/247)) |
| 26 | +* 1.3 compatible constructors for string matchers ([Issue #259](https://github.com/hamcrest/JavaHamcrest/issues/259), [Issue #260](https://github.com/hamcrest/JavaHamcrest/issues/260)) |
| 27 | +* Fix for split packages with Java 9 modules ([Issue #269](https://github.com/hamcrest/JavaHamcrest/issues/269), [PR #270](https://github.com/hamcrest/JavaHamcrest/pull/270)) |
| 28 | + |
| 29 | + |
| 30 | +## Version 2.1 (21st December 2018) |
| 31 | + |
| 32 | +### Overview for 2.1 |
| 33 | + |
| 34 | +After a long hiatus without releases, this version simplifies the packaging of |
| 35 | +Hamcrest into a single jar: `hamcrest-<version>.jar`. Other big changes include |
| 36 | +Java 9 module compatibility, migrating the code repository from Google Code to |
| 37 | +GitHub, along with numerous other new features, improvements and bug fixes. |
| 38 | + |
| 39 | +### Breaking Changes for 2.1 |
| 40 | + |
| 41 | +* The way that the project is packaged has changed. This may cause problems with |
| 42 | +correctly upgrading transitive dependencies. Refer to the |
| 43 | +[Hamcrest Distributables](http://hamcrest.org/JavaHamcrest/distributables.html) |
| 44 | +documentation for more information, and in particular, |
| 45 | +[Upgrading from Hamcrest 1.x](http://hamcrest.org/JavaHamcrest/distributables.html#upgrading-from-hamcrest-1.x) |
| 46 | +* `org.hamcrest.Factory` has been removed. This was only used in old implementations |
| 47 | +of the hamcrest build toolchain, and can safely be deleted from client code without |
| 48 | +any effect. |
| 49 | + |
| 50 | +### Changes for 2.1 |
| 51 | + |
| 52 | +* Documentation updates |
| 53 | +* Several JavaDoc improvements and corrections |
| 54 | +* Fix JavaDoc examples |
| 55 | +* Upgraded to Java 7 |
| 56 | +* Build with Gradle |
| 57 | +* Publish a single jar `hamcrest-2.1.jar` |
| 58 | +* Publish pom-only artifacts for `hamcrest-core` and `hamcrest-library`. |
| 59 | +* Add implementation for CharSequence length matcher |
| 60 | +* Fix for TypeSafeDiagnosingMatcher can't detect generic types for subclass |
| 61 | +* Make Hamcrest an OSGI bundle |
| 62 | +* Add StringRegularExpression matcher |
| 63 | +* Fix StringContainsInOrder to detect if a repeated pattern is missing |
| 64 | +* Add ArrayAsIterableMatcher |
| 65 | +* Fix description for IsEqualIgnoringCase |
| 66 | +* Removed deprecated methods from previous release |
| 67 | +* Improve mismatch description of hasItem/hasItems |
| 68 | +* General improvements to mismatch descriptions |
| 69 | +* Deprecated several matcher factory methods of the for "isXyz" |
| 70 | +* Fix [GH issue #75](https://github.com/hamcrest/JavaHamcrest/issues/75) - address doclint errors reported in JDK 1.8 |
| 71 | +* Fix [GH issue #69](https://github.com/hamcrest/JavaHamcrest/issues/69) - Iterable contains in order is null-safe |
| 72 | +* Fix [GH issue #59](https://github.com/hamcrest/JavaHamcrest/issues/59) - added equalToObject() (i.e. unchecked) method |
| 73 | +* Fix [GH issue #25](https://github.com/hamcrest/JavaHamcrest/issues/25) - arrayContaining(null, null) cause NullPointerException |
| 74 | +* Fix [GH issue #36](https://github.com/hamcrest/JavaHamcrest/issues/36) - string matching on regular expressions |
| 75 | +* Fix [GH issue #8](https://github.com/hamcrest/JavaHamcrest/issues/8) - isCloseTo() shows wrong delta in mismatch description |
| 76 | +* Fix [GH issue #59](https://github.com/hamcrest/JavaHamcrest/issues/59) - add untyped version of equalTo, named equalToObject |
| 77 | +* Fix [GC issue #131](https://code.google.com/archive/p/hamcrest/issues/131) - Implement IsEmptyMap, IsMapWithSize |
| 78 | +* Fix [GC issue #187](https://code.google.com/archive/p/hamcrest/issues/187) - IsArray.describeMismatchSafely() should use Matcher.describeMismatch |
| 79 | +* Fix [GC issue #155](https://code.google.com/archive/p/hamcrest/issues/155) - Add Matcher implementation for files |
| 80 | +* Fix [GC issue #69](https://code.google.com/archive/p/hamcrest/issues/69) - fix NPE in IsIterableContainingInOrder |
| 81 | + |
| 82 | +## Version 1.3 (9th July 2012) |
| 83 | + |
| 84 | +* Introduce Condition class to ease the implementation of multi-step matches |
| 85 | +* Upgrade qdox (included in the generator) to the latest stable version |
| 86 | +* Correct inadvertent deprecation of the Is.isA factory method |
| 87 | +* Fix [issue #179](https://code.google.com/archive/p/hamcrest/issues/179) - AllOf does not output mismatch description |
| 88 | +* Fix [issue #177](https://code.google.com/archive/p/hamcrest/issues/177) - Introduced closeTo matcher for BigDecimals |
| 89 | +* Fix [issue #152](https://code.google.com/archive/p/hamcrest/issues/152) - Factory classes missing from matchers.xml |
| 90 | +* Fix [issue #144](https://code.google.com/archive/p/hamcrest/issues/144) - OrderingComparison doesn't describe mismatch of comparables that return values other than (-1,0,1) |
| 91 | +* Fix [issue #134](https://code.google.com/archive/p/hamcrest/issues/134) - DescribedAs does not delegate describeMismatch |
| 92 | +* Fix [issue #106](https://code.google.com/archive/p/hamcrest/issues/106) - deprecation warning when writing custom matchers |
| 93 | +* Fix [issue #101](https://code.google.com/archive/p/hamcrest/issues/101) - Added theInstance alias for sameInstance factory method |
| 94 | + |
| 95 | +## Version 1.3 RC2 (22nd October 2010) |
| 96 | + |
| 97 | +* Added FeatureMatcher |
| 98 | +* distinguish between instanceOf() and any() |
| 99 | + |
| 100 | +## Version 1.2 (16th May 2009) |
| 101 | + |
| 102 | +* Added mismatch reporting |
| 103 | +* Added WithSamePropertyValuesAs matcher |
| 104 | +* Moved any() from IsAnything to IsInstanceOf. It now checks the type of the matched object |
| 105 | +* Moved MatcherAssert from integration to core |
| 106 | +* Tightened up generics. |
| 107 | +* Added IsMapContainingKey and IsMapContainingValue matchers to resolve a |
| 108 | + generics bug in hasKey and hasValue static factories previously declared |
| 109 | + in IsMapContaining (ngd) |
| 110 | +* Added IsCollectionOnlyContaining and IsArrayOnlyContaining which matches |
| 111 | + collections (and arrays) where all match a given matcher. E.g onlyContains(3,4,5) |
| 112 | + or onlyContains(lessThan(9)) |
| 113 | +* text module moved to separate project, hamcrest-text-patterns |
| 114 | +* added more colection matchers: xContainingInAnyOrder, xContainingInOrder, xWithSize |
| 115 | +* new text Matcher: IsEmptyString |
| 116 | +* hamcrest generator uses method return type |
| 117 | + |
| 118 | +## Version 1.1 (30th June 2007) |
| 119 | + |
| 120 | +* Hamcrest Generator now includes JavaDoc and parameter names in generated code |
| 121 | + by using QDox to parse the source code. |
| 122 | +* Created hamcrest-core.jar (and removed hamcrest-api.jar). |
| 123 | + Moved core set of matchers (and, eq, not, etc) |
| 124 | + to this package to make it more practical for external libraries |
| 125 | + to embed Hamcrest. |
| 126 | +* Created CoreMatchers (static import sugar) in hamcrest-core.jar. |
| 127 | +* StringBuilder can use any Appendable (not just StringBuffer). |
| 128 | +* Added sensible toString() method to BaseMatcher. |
| 129 | +* Created StringDescription.asString() alias (because toString() caused issues |
| 130 | + with static imports). |
| 131 | +* Relaxed isInstanceOf() matcher generic type so it can be used on any kind of |
| 132 | + object. e.g. assertThat(someUnknownObject, isInstanceOf(String.class)); |
| 133 | +* Added any(Class<T>), null(Class<T>) and notNull(Class<T>) matchers, which returns |
| 134 | + Matcher<T>. Helpful when the compiler struggles with type inference. |
| 135 | +* Modified anyOf() and allOf() to accept mixed-types. |
| 136 | +* TypeSafeMatcher.matchesSafely() is now public. |
| 137 | +* Generator recognizes @Factory methods that return subclass of Matcher. |
| 138 | + (Fix by David Saff) |
| 139 | + |
| 140 | +## Version 1.0 (15th Dececmber 2006) |
| 141 | + |
| 142 | +Initial release. |
| 143 | + |
| 144 | +* Support for namespaces in HasXPath |
| 145 | +* Bug fix for matching empty elements with HasXPath |
0 commit comments