|
2 | 2 | All notable changes to this project will be documented in this file.
|
3 | 3 | This project adheres to [Semantic Versioning](http://semver.org/).
|
4 | 4 |
|
| 5 | +## [4.0.0] - ????-??-?? |
| 6 | + |
| 7 | +### Added |
| 8 | + - DSA and ECDSA keys (and signing) are now supported. No changes are |
| 9 | + needed at this time if only RSA keys are used. See below for |
| 10 | + related API changes and deprecations. |
| 11 | + - Multiple hash algorithms (besides SHA256) are now supported. |
| 12 | + Because signing is almost always more expensive than hashing, |
| 13 | + changing from the default hashing algorithm is unlikely to yield a |
| 14 | + significant performance benefit. |
| 15 | + - A new `microbench` module contains micro-benchmarks to aid in the |
| 16 | + development of this library. They are not a stable public |
| 17 | + contract. |
| 18 | + |
| 19 | +### Changed |
| 20 | + - The minimum Java version is now 1.8. |
| 21 | + - To support multiple key types, a builder pattern is now the |
| 22 | + preferred way to instantiate `Signer` and `ThreadLocalSigner`. See |
| 23 | + `Signer.Builder` for more details. Given a key, the builder can |
| 24 | + select the appropriate signing algorithm. The old constructors are |
| 25 | + now deprecated and will be removed in a future release. |
| 26 | + - Several public fields and methods of `Signer` that exposed internal |
| 27 | + details have been removed. That is the breaking change of this |
| 28 | + release. |
| 29 | + - Since a `Signer` now needs a `KeyPair` to be instantiated, the |
| 30 | + various "get me a key" methods are moved to `KeyPairLoader`. The |
| 31 | + old methods are now deprecated and will be removed in a future |
| 32 | + release. |
| 33 | + - Previously it was easy to end up with multiple ThreadLocalSigner |
| 34 | + instances. This was mostly harmless (except for resources cleanup) |
| 35 | + when everything was hard coded to be `SHA256withRSA`, but quickly |
| 36 | + leads to errors when the signers have different configuration. It |
| 37 | + is now best to create a single `ThreadLocalSigner` per key (ie |
| 38 | + usually just one) and pass that downstream. Several classes in |
| 39 | + `apache-http-client` and `google-http-client` have changed to |
| 40 | + encourage this. Methods that implicitly created an unconfigured |
| 41 | + `ThreadLocalSigner` are now deprecated and will be removed in a |
| 42 | + future release. |
| 43 | + |
5 | 44 | ## [3.0.2] - 2017-03-03
|
6 | 45 | ### Added
|
7 | 46 | - We now use JCE specified message digests for calculating checksums.
|
|
0 commit comments