Amendments

+

(New in version 0.31.0)

The Amendments system provides a means of introducing new features to the decentralized Ripple consensus network without causing disruptions. The amendments system works by utilizing the core consensus process of the network to approve any changes by showing continuous support before those changes go into effect. An amendment normally requires 80% support for two weeks before it can apply.

When an Amendment has been enabled, it applies permanently to all ledger versions after the one that included it. You cannot disable an Amendment, unless you introduce a new Amendment to do so.

Background

@@ -212,15 +213,16 @@ TrustSetAuth MultiSign v0.31.0 -Expected 2016-04-18 +TBD FeeEscalation v0.31.0 -Expected 2016-04-11 +TBD +

Note: In many cases, an incomplete version of the code for an amendment is present in previous versions of the software. The "Introduced" version in the table above is the first stable version.

FeeEscalation

diff --git a/content/concept-amendments.md b/content/concept-amendments.md index 77a7fb9732..5598a11146 100644 --- a/content/concept-amendments.md +++ b/content/concept-amendments.md @@ -1,5 +1,7 @@ # Amendments # +_(New in [version 0.31.0](https://wiki.ripple.com/Rippled-0.31.0))_ + The Amendments system provides a means of introducing new features to the decentralized Ripple consensus network without causing disruptions. The amendments system works by utilizing the core consensus process of the network to approve any changes by showing continuous support before those changes go into effect. An amendment normally requires **80% support for two weeks** before it can apply. When an Amendment has been enabled, it applies permanently to all ledger versions after the one that included it. You cannot disable an Amendment, unless you introduce a new Amendment to do so. @@ -96,8 +98,10 @@ The following is a comprehensive list of all known amendments and their status o | [Tickets](#tickets) | v0.31.0 | TBD | | [SusPay](#suspay) | v0.31.0 | TBD | | [TrustSetAuth](#trustsetauth) | v0.30.0 | TBD | -| [MultiSign](#multisign) | v0.31.0 | Expected 2016-04-18 | -| [FeeEscalation](#feeescalation) | v0.31.0 | Expected 2016-04-11 | +| [MultiSign](#multisign) | v0.31.0 | TBD | +| [FeeEscalation](#feeescalation) | v0.31.0 | TBD | + +**Note:** In many cases, an incomplete version of the code for an amendment is present in previous versions of the software. The "Introduced" version in the table above is the first stable version. ## FeeEscalation ## diff --git a/content/reference-ledger-format.md b/content/reference-ledger-format.md index 2fb0d0a4df..1f323f4dd8 100644 --- a/content/reference-ledger-format.md +++ b/content/reference-ledger-format.md @@ -408,7 +408,7 @@ The `index` of a RippleState node is the SHA-512Half of the following values put ## SignerList ## [[Source]
](https://github.com/ripple/rippled/blob/6d2e3da30696bd10e3bb11a5ff6d45d2c4dae90f/src/ripple/protocol/impl/LedgerFormats.cpp#L127 "Source") -The `SignerList` node type represents a list of parties that, as a group, are authorized to sign a transaction in place of an individual account. +The `SignerList` node type represents a list of parties that, as a group, are authorized to sign a transaction in place of an individual account. This node type is introduced by the [MultiSign amendment](concept-amendments.html#multisign). _(New in [version 0.31.0][])_ Example SignerList node: diff --git a/content/reference-rippled.md b/content/reference-rippled.md index 4d8a9ab8db..fc573f4cb7 100755 --- a/content/reference-rippled.md +++ b/content/reference-rippled.md @@ -6304,7 +6304,7 @@ __*Caution:*__ If this command results in an error messages, the message can con The `sign_for` command provides one signature for a [multi-signed transaction](reference-transaction-format.html#multi-signing). -This command requires the [MultiSign amendment](concept-amendments.html#multisign) to be enabled. +This command requires the [MultiSign amendment](concept-amendments.html#multisign) to be enabled. _(New in [version 0.31.0][])_ #### Request Format #### An example of the request format: @@ -6766,7 +6766,7 @@ __*Caution:*__ If this command results in an error messages, the message can con The `submit_multisigned` command applies a [multi-signed](reference-transaction-format.html#multi-signing) transaction and sends it to the network to be included in future ledgers. (You can also submit multi-signed transactions in binary form using the [`submit` command in submit-only mode](#submit-only-mode).) -This command requires the [MultiSign amendment](concept-amendments.html#multisign) to be enabled. +This command requires the [MultiSign amendment](concept-amendments.html#multisign) to be enabled. _(New in [version 0.31.0][])_ #### Request Format #### An example of the request format: @@ -8830,7 +8830,7 @@ The fields describing a fetch in progress are subject to change without notice. ## feature ## [[Source]
](https://github.com/ripple/rippled/blob/develop/src/ripple/rpc/handlers/Feature1.cpp "Source") -The `feature` command returns information about [amendments](concept-amendments.html) this server knows about, including whether they are enabled and whether the server is voting in favor of those amendments in the [amendment process](concept-amendments.html#amendment-process). +The `feature` command returns information about [amendments](concept-amendments.html) this server knows about, including whether they are enabled and whether the server is voting in favor of those amendments in the [amendment process](concept-amendments.html#amendment-process). _(New in [version 0.31.0][])_ You can use the `feature` command to temporarily configure the server to vote against or in favor of an amendment. This change does not persist if you restart the server. To make lasting changes in amendment voting, use the `rippled.cfg` file. See [Configuring Amendment Voting](concept-amendments.html#configuring-amendment-voting) for more information. diff --git a/content/reference-transaction-format.md b/content/reference-transaction-format.md index 69734c2288..0153d5adb4 100644 --- a/content/reference-transaction-format.md +++ b/content/reference-transaction-format.md @@ -792,7 +792,7 @@ Transactions of the TrustSet type support additional values in the [`Flags` fiel ## SignerListSet ## [[Source]
](https://github.com/ripple/rippled/blob/ef511282709a6a0721b504c6b7703f9de3eecf38/src/ripple/app/tx/impl/SetSignerList.cpp "Source") -The SignerListSet transaction creates, modifies, or removes a list of signers that can be used to [multi-sign](#multi-signing) a transaction. +The SignerListSet transaction creates, replaces, or removes a list of signers that can be used to [multi-sign](#multi-signing) a transaction. This transaction type is introduced by the [MultiSign amendment](concept-amendments.html#multisign). _(New in [version 0.31.0][])_ Example SignerListSet: diff --git a/content/tutorial-multisign.md b/content/tutorial-multisign.md index 99dbc4dce0..700b2dba84 100644 --- a/content/tutorial-multisign.md +++ b/content/tutorial-multisign.md @@ -20,7 +20,7 @@ To use multi-signing: Availability of Multi-Signing ----------------------------- -Multi-signing is built into `rippled` starting with version **0.31.0**. Because multi-signing is a change in transaction processing, the change is due to be enabled by an **Amendment** to the Ripple Consensus Protocol. This Amendment must be approved by a consensus of validators showing consistent support for the feature over a period of time. For more information, see [Amendments](concept-amendments.html). +Multi-signing is built into `rippled` starting with [version 0.31.0](https://wiki.ripple.com/Rippled-0.31.0). Because multi-signing is a change in transaction processing, the change is due to be enabled by an **Amendment** to the Ripple Consensus Protocol. This Amendment must be approved by a consensus of validators showing consistent support for the feature over a period of time. For more information, see [Amendments](concept-amendments.html). If you want to test multi-signing before it becomes available in the production network, or without risking real money, you can do so by running `rippled` in [stand-alone mode](concept-stand-alone-mode.html) with the MultiSign feature enabled. To enable multi-signing for testing, add the following stanza to your `rippled.cfg`: diff --git a/reference-ledger-format.html b/reference-ledger-format.html index 7082230b21..2d4e79b3ae 100644 --- a/reference-ledger-format.html +++ b/reference-ledger-format.html @@ -985,7 +985,7 @@

SignerList

[Source]

-

The SignerList node type represents a list of parties that, as a group, are authorized to sign a transaction in place of an individual account.

+

The SignerList node type represents a list of parties that, as a group, are authorized to sign a transaction in place of an individual account. This node type is introduced by the MultiSign amendment. (New in [version 0.31.0][])

Example SignerList node:

{
     "Flags": 0,
diff --git a/reference-rippled.html b/reference-rippled.html
index 8e53a57891..d2a322d6ba 100644
--- a/reference-rippled.html
+++ b/reference-rippled.html
@@ -7326,7 +7326,7 @@ rippled sign sssssssssssssssssssssssssssss '{"TransactionType": "Payment", "Acco
 

sign_for

[Source]

The sign_for command provides one signature for a multi-signed transaction.

-

This command requires the MultiSign amendment to be enabled.

+

This command requires the MultiSign amendment to be enabled. (New in version 0.31.0)

Request Format

An example of the request format:

@@ -7845,7 +7845,7 @@ submit sssssssssssssssssssssssssssss '{"TransactionType":"Payment", "Account":"r

submit_multisigned

[Source]

The submit_multisigned command applies a multi-signed transaction and sends it to the network to be included in future ledgers. (You can also submit multi-signed transactions in binary form using the submit command in submit-only mode.)

-

This command requires the MultiSign amendment to be enabled.

+

This command requires the MultiSign amendment to be enabled. (New in version 0.31.0)

Request Format

An example of the request format:

@@ -10377,7 +10377,7 @@ Connecting to 127.0.0.1:5005

feature

[Source]

-

The feature command returns information about amendments this server knows about, including whether they are enabled and whether the server is voting in favor of those amendments in the amendment process.

+

The feature command returns information about amendments this server knows about, including whether they are enabled and whether the server is voting in favor of those amendments in the amendment process. (New in version 0.31.0)

You can use the feature command to temporarily configure the server to vote against or in favor of an amendment. This change does not persist if you restart the server. To make lasting changes in amendment voting, use the rippled.cfg file. See Configuring Amendment Voting for more information.

The feature method is an admin command that cannot be run by unpriviledged users.

Request Format

diff --git a/reference-transaction-format.html b/reference-transaction-format.html index 5ac0fdd818..b34b094c43 100644 --- a/reference-transaction-format.html +++ b/reference-transaction-format.html @@ -1210,7 +1210,7 @@

SignerListSet

[Source]

-

The SignerListSet transaction creates, modifies, or removes a list of signers that can be used to multi-sign a transaction.

+

The SignerListSet transaction creates, replaces, or removes a list of signers that can be used to multi-sign a transaction. This transaction type is introduced by the MultiSign amendment. (New in [version 0.31.0][])

Example SignerListSet:

{
     "Flags": 0,
diff --git a/tutorial-multisign.html b/tutorial-multisign.html
index 4cfb396ed5..5477428e40 100644
--- a/tutorial-multisign.html
+++ b/tutorial-multisign.html
@@ -142,7 +142,7 @@
 
  • Send transactions using multiple signatures.
  • Availability of Multi-Signing

    -

    Multi-signing is built into rippled starting with version 0.31.0. Because multi-signing is a change in transaction processing, the change is due to be enabled by an Amendment to the Ripple Consensus Protocol. This Amendment must be approved by a consensus of validators showing consistent support for the feature over a period of time. For more information, see Amendments.

    +

    Multi-signing is built into rippled starting with version 0.31.0. Because multi-signing is a change in transaction processing, the change is due to be enabled by an Amendment to the Ripple Consensus Protocol. This Amendment must be approved by a consensus of validators showing consistent support for the feature over a period of time. For more information, see Amendments.

    If you want to test multi-signing before it becomes available in the production network, or without risking real money, you can do so by running rippled in stand-alone mode with the MultiSign feature enabled. To enable multi-signing for testing, add the following stanza to your rippled.cfg:

    [features]
     MultiSign