diff --git a/services/configuration/CHANGELOG.md b/services/configuration/CHANGELOG.md index c43d685f80..42f22a165f 100644 --- a/services/configuration/CHANGELOG.md +++ b/services/configuration/CHANGELOG.md @@ -7,10 +7,50 @@ The project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html) ### Breaking changes -- `CONFIG_SERVICE` constant has been renamed to `CONFIGURATION_SERVICE_ID`. +- Most types renamed to avoid stuttering (see [here][stuttering] for + an explanation of the term) (#496): -- `CONFIG_PROPOSE_MESSAGE_ID` and `CONFIG_VOTE_MESSAGE_ID` constants are no - longer public. + - `ConfigurationService` to `Service` + - `ConfigurationServiceFactory` to `ServiceFactory` + - `TxConfigPropose` to `Propose` + - `TxConfigVote` to `Vote` + - `ConfigurationSchema` to `Schema` + - `StorageValueConfigProposeData` to `ProposeData` + - `CONFIG_SERVICE` constant to `SERVICE_ID` + + Check the crate documentation for more details. + + **Migration path:** Rename imported types from the crate, using aliases + or qualified names if necessary: `use exonum_configuration::Service as ConfigService`. + +[stuttering]: https://doc.rust-lang.org/1.0.0/style/style/naming/README.html#avoid-redundant-prefixes-[rfc-356] + +- Multiple APIs are no longer public (#496): + + - Message identifiers + - Mutating methods of the service schema + - Module implementing HTTP API of the service + + Check the crate documentation for more details. + + **Migration path:** The restrictions are security-based and should not + influence intended service use. + + + +- `ZEROVOTE` is replaced with the `MaybeVote` type, which is now used + instead of `Vote` in the schema method signatures. The storage format itself + is unchanged (#496). + + + +### New features + +- Information about configurations by `/v1/configs/actual`, `/v1/configs/following` + and `/v1/configs/committed` endpoints is extended with the hash of the corresponding + proposal and votes for the proposal (#481). + +- Implemented error handling based on error codes (#496). ## 0.5 - 2018-01-30 diff --git a/services/configuration/src/transactions.rs b/services/configuration/src/transactions.rs index 30d3e8aff1..a90ad6518e 100644 --- a/services/configuration/src/transactions.rs +++ b/services/configuration/src/transactions.rs @@ -32,10 +32,10 @@ transactions! { /// /// # Notes /// - /// See [`ProposeErrorCode`] for the description of error codes emitted by the `execute()` + /// See [`ErrorCode`] for the description of error codes emitted by the `execute()` /// method. /// - /// [`ProposeErrorCode`]: enum.ProposeErrorCode.html + /// [`ErrorCode`]: enum.ErrorCode.html struct Propose { /// Sender of the transaction. /// @@ -55,11 +55,11 @@ transactions! { /// The stored version of the transaction has a special variant corresponding to absence /// of a vote. See [`MaybeVote`] for details. /// - /// See [`VoteErrorCode`] for the description of error codes emitted by the `execute()` + /// See [`ErrorCode`] for the description of error codes emitted by the `execute()` /// method. /// /// [`MaybeVote`]: struct.MaybeVote.html - /// [`VoteErrorCode`]: enum.VoteErrorCode.html + /// [`ErrorCode`]: enum.ErrorCode.html struct Vote { /// Sender of the transaction. ///