From 8b19927f8c9b5ea6e9d00d0dc58506f557bfc8a0 Mon Sep 17 00:00:00 2001 From: mDuo13 Date: Fri, 7 Jan 2022 19:22:05 -0800 Subject: [PATCH] NFT-Devnet details --- assets/js/test-net.js | 7 +++ .../consensus-network/parallel-networks.md | 10 +-- ...onnect-your-rippled-to-the-xrp-test-net.md | 61 +++++++++++++++++-- template/page-websocket-api-tool.html.jinja | 6 ++ template/page-xrp-faucets.html.jinja | 11 +++- 5 files changed, 85 insertions(+), 10 deletions(-) diff --git a/assets/js/test-net.js b/assets/js/test-net.js index bd988c8711..35e981c915 100644 --- a/assets/js/test-net.js +++ b/assets/js/test-net.js @@ -56,6 +56,8 @@ function rippleTestNetCredentials(url, altnet_name) { sequence.html('

Sequence

Waiting...').fadeIn('fast') if (altnet_name=="Testnet") { wait_for_seq("wss://s.altnet.rippletest.net:51233", data.account.address) + } else if (altnet_name=="NFT-Devnet") { + wait_for_seq("wss://xls20-sandbox.rippletest.net:51233", data.account.address) } else { wait_for_seq("wss://s.devnet.rippletest.net:51233", data.account.address) } @@ -81,7 +83,12 @@ $(document).ready(function() { rippleTestNetCredentials("https://faucet.devnet.rippletest.net/accounts", "Devnet") } + function nftnet_click(evt) { + rippleTestNetCredentials("http://35.161.243.164:3000/accounts", + "NFT-Devnet") + } $('#testnet-creds-button').click(testnet_click) $('#devnet-creds-button').click(devnet_click) + $('#nftnet-creds-button').click(nftnet_click) }) diff --git a/content/concepts/consensus-network/parallel-networks.md b/content/concepts/consensus-network/parallel-networks.md index ccae8eaea6..550b74f275 100644 --- a/content/concepts/consensus-network/parallel-networks.md +++ b/content/concepts/consensus-network/parallel-networks.md @@ -16,17 +16,19 @@ To help members of the XRP Ledger community interact with XRP Ledger technology | Mainnet | Stable releases | _The_ [XRP Ledger](xrp-ledger-overview.html), a decentralized cryptographic ledger powered by a network of peer-to-peer servers and the home of [XRP](xrp.html). | | Testnet | Stable releases | An "alternate universe" network that acts as a testing ground for software built on the XRP Ledger, without impacting production XRP Ledger users and without risking real money. The [amendment status](known-amendments.html) of the Testnet is intended to closely mirror the Mainnet, although slight variations in timing may occur due to the unpredictable nature of decentralized systems. | | Devnet | Beta releases | A preview of coming attractions, where unstable changes to the core XRP Ledger software may be tested out. Developers can use this altnet to interact with and learn about planned new XRP Ledger features and amendments that are not yet enabled on the Mainnet. | +| NFT-Devnet | [XLS-20 pre-release](https://github.com/ripple/rippled/tree/xls20) | A preview of the [XLS-20d](https://github.com/XRPLF/XRPL-Standards/discussions/46) standard for non-fungible tokens on the XRP Ledger. | +| [Hooks Testnet](https://hooks-testnet.xrpl-labs.com/) | [Hooks server](https://github.com/XRPL-Labs/xrpld-hooks) | A preview of on-chain smart contract functionality using [hooks](https://write.as/xumm/xrpl-labs-is-working-on-the-transaction-hooks-amendment-for-the-xrp-ledger). | -Testnet and Devnet each have their own separate supply of test XRP, which Ripple [gives away for free](xrp-testnet-faucet.html) to parties interested in experimenting with the XRP Ledger and developing applications and integrations. Test XRP does not have real-world value and is lost when the network is reset. +Each test network has its own separate supply of test XRP, which is [given away for free](xrp-testnet-faucet.html) to parties interested in experimenting with the XRP Ledger and developing applications and integrations. Test XRP does not have real-world value and is lost when the network is reset. -**Caution:** Ripple makes no guarantees about the stability of altnets. These networks have been and continue to be used to test various properties of server configuration, network topology, and network performance. +**Caution:** Unlike the XRP Ledger Mainnet, test networks are usually _centralized_ and there are no guarantees about the stability and availability of these networks. They have been and continue to be used to test various properties of server configuration, network topology, and network performance. ## Parallel Networks and Consensus -There is no `rippled` setting that defines which network it uses. Instead, it uses the consensus of validators it trusts to know which ledger to accept as the truth. When different consensus groups of `rippled` instances only trust other members of the same group, each group continues as a parallel network. Even if malicious or misbehaving computers connect to both networks, the consensus process overrides the confusion as long as the members of each network are not configured to trust members of another network in excess of their quorum settings. +The main factor in determining which network a server follows is its configured UNL—the list of validators it trusts not to collude. Each server uses its configured UNL to know which ledger to accept as the truth. When different consensus groups of `rippled` instances only trust other members of the same group, each group continues as a parallel network. Even if malicious or misbehaving computers connect to both networks, the consensus process overrides the confusion as long as the members of each network are not configured to trust members of another network in excess of their quorum settings. -Ripple runs the main servers in the Testnet and Devnet; you can also [connect your own `rippled` server to the Testnet](connect-your-rippled-to-the-xrp-test-net.html). The Testnet and Devnet do not use diverse, censorship-resistant sets of validators. This makes it possible for Ripple to reset the Testnet or Devnet on a regular basis. +Ripple runs the main servers in the Testnet, Devnet, and NFT-Devnet; you can also [connect your own `rippled` server to these networks](connect-your-rippled-to-the-xrp-test-net.html). The Testnet and Devnet do not use diverse, censorship-resistant sets of validators. This makes it possible for Ripple to reset the Testnet or Devnet on a regular basis. ## See Also diff --git a/content/tutorials/manage-the-rippled-server/configuration/connect-your-rippled-to-the-xrp-test-net.md b/content/tutorials/manage-the-rippled-server/configuration/connect-your-rippled-to-the-xrp-test-net.md index ced69c77d9..d03fc4328c 100644 --- a/content/tutorials/manage-the-rippled-server/configuration/connect-your-rippled-to-the-xrp-test-net.md +++ b/content/tutorials/manage-the-rippled-server/configuration/connect-your-rippled-to-the-xrp-test-net.md @@ -9,9 +9,9 @@ labels: --- # Connect Your rippled to a Parallel Network -Ripple hosts [alternative test and development networks](parallel-networks.html) for developers to test their apps on the latest non-production version of the XRP Ledger (Testnet) or to test and experiment with features on the latest beta version (Devnet). **The funds used on these networks are not real funds and are intended for testing only.** You can connect your [`rippled` server](the-rippled-server.html) to either the Testnet or Devnet. +Various [alternative test and development networks](parallel-networks.html) exist for developers to test their apps or experiment with features without risking real money. **The funds used on these networks are not real funds and are intended for testing only.** You can connect your [`rippled` server](the-rippled-server.html) to any of these test networks. -**Caution:** The Devnet frequently has new and experimental [amendments](amendments.html) enabled, so the latest production release version is likely to be amendment blocked when connecting to Devnet. You should use a pre-release or nightly build when connecting to Devnet. +**Caution:** On test networks with new and experimental features, you may need to run a pre-production release of the server to sync with the network. See the [Parallel Networks Page](parallel-networks.html) for information on what code version each network needs. ## Steps @@ -42,14 +42,48 @@ Edit your `rippled.cfg` file. # No [ips] stanza. Use the default hubs to connect to Mainnet. + *NFT-Devnet* -3. Comment out the previous `[ips]` stanza, if there is one: + [ips] + xls20-sandbox.rippletest.net 51235 + + + +2. Comment out the previous `[ips]` stanza, if there is one: # [ips] # r.ripple.com 51235 # zaphod.alloy.ee 51235 # sahyadri.isrdc.in 51235 +3. Add a `[network_id]` stanza with the appropriate value: + + + + *Testnet* + + [network_id] + testnet + + *Devnet* + + [network_id] + devnet + + *Mainnet* + + [network_id] + main + + *NFT-Devnet* + + [network_id] + 20 + + + + **Note:** This setting is optional, and does not strictly define which network your server follows, but it helps servers find peers who are following the same network. + ## 2. Set your trusted validator list. Edit your `validators.txt` file. This file is located in the same folder as your `rippled.cfg` file and defines which validators your server trusts not to collude. @@ -83,8 +117,18 @@ Edit your `validators.txt` file. This file is located in the same folder as your [validator_list_keys] ED2677ABFFD1B33AC6FBC3062B71F1E8397C1505E1C42C64D11AD1B28FF73F4734 + *NFT-Devnet* + + [validator_list_sites] + TODO + + [validator_list_keys] + TODO + + **Tip:** The packages for the NFT preview should already contain the necessary stanzas, but check them just in case. + 1. Comment out any previous `[validator_list_sites]`, `[validator_list_keys]`, or `[validators]` stanzas. For example: @@ -105,9 +149,9 @@ Edit your `validators.txt` file. This file is located in the same folder as your # n9LiE1gpUGws1kFGKCM9rVFNYPVS4QziwkQn281EFXX7TViCp2RC # n9Jq9w1R8UrvV1u2SQqGhSXLroeWNmPNc3AVszRXhpUr1fmbLyhS -## 3. (Devnet Only) Enable Features +## 3. (NFT-Devnet Only) Enable Features -To connect to Devnet, you must also forcefully enable any experimental features that are currently in testing on Devnet. Add or modify the `[features]` stanza of your config file as follows: +To connect to the NFT-Devnet, you must also forcefully enable the NFT feature, `XLS20`. Add or modify the `[features]` stanza of your config file as follows: ``` [features] @@ -160,6 +204,13 @@ rippled --rpc_ip 34.83.125.234:51234 server_info | grep seq rippled --rpc_ip 34.201.59.230:51234 server_info | grep seq ``` +*NFT-Devnet* + +```sh +# xls20-sandbox.rippletest.net +rippled --rpc_ip 34.211.220.150:51234 server_info | grep seq +``` + **Note:** The IP addresses in these examples are for public servers, and may change periodically. If you get no response, look up the IP address of a [public server][public servers], for example using the `dig` command. diff --git a/template/page-websocket-api-tool.html.jinja b/template/page-websocket-api-tool.html.jinja index e24e13774a..d906431458 100644 --- a/template/page-websocket-api-tool.html.jinja +++ b/template/page-websocket-api-tool.html.jinja @@ -130,6 +130,12 @@ s.devnet.rippletest.net (Devnet Public Cluster) +
+ + +