From 8fd133ff1919e7a3c5e95b53f58b4ba35854619e Mon Sep 17 00:00:00 2001 From: Zach Ramsay Date: Fri, 1 Sep 2017 20:59:27 -0400 Subject: [PATCH] docs: pretty-fy --- docs/abci-cli.rst | 4 +- docs/app-architecture.rst | 18 +++---- docs/index.rst | 6 +-- docs/install-from-source.rst | 102 ----------------------------------- docs/using-tendermint.rst | 2 +- 5 files changed, 13 insertions(+), 119 deletions(-) delete mode 100644 docs/install-from-source.rst diff --git a/docs/abci-cli.rst b/docs/abci-cli.rst index 6821ae6a8..371ec0cba 100644 --- a/docs/abci-cli.rst +++ b/docs/abci-cli.rst @@ -8,9 +8,7 @@ command line. Install ------- -Make sure you `have Go installed `__ and -`put ``$GOPATH/bin`` in your -``$PATH`` `__. +Make sure you `have Go installed `__. Next, install the ``abci-cli`` tool and example applications: diff --git a/docs/app-architecture.rst b/docs/app-architecture.rst index c6deec951..5a8287f37 100644 --- a/docs/app-architecture.rst +++ b/docs/app-architecture.rst @@ -65,11 +65,13 @@ is quite useful for externally verifying the system. It also includes and possibly await a response). And one method to query app-specific data from the ABCI application. -Pros: \* Server code already written \* Access to block headers to -validate merkle proofs (nice for light clients) \* Basic read/write -functionality is supported +Pros: +* Server code already written +* Access to block headers to validate merkle proofs (nice for light clients) +* Basic read/write functionality is supported -Cons: \* Limited interface to app. All queries must be serialized into +Cons: +* Limited interface to app. All queries must be serialized into []byte (less expressive than JSON over HTTP) and there is no way to push data from ABCI app to the client (eg. notify me if account X receives a transaction) @@ -106,9 +108,9 @@ Likely the least secure but most versatile. The client can access both the tendermint node for all blockchain info, as well as a custom app server, for complex queries and pub-sub on the abci app. -Pros: \* All from both above solutions +Pros: All from both above solutions -Cons: \* Even more complexity \* Even more attack vectors (less +Cons: Even more complexity; even more attack vectors (less security) Scalability @@ -121,7 +123,3 @@ transaction-processing speed is limited by the speed of the abci app and the number of validators, one should be able to scale our read performance to quite an extent (until the replication process drains too many resources from the validator nodes). - - -`TMChat `__ is an example of an ABCI -application. diff --git a/docs/index.rst b/docs/index.rst index 55f6097f3..ebf4b1335 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -15,13 +15,13 @@ Welcome to Tendermint! Tendermint 101 -------------- -.. maxdepth set to 2 for sexiness +.. maxdepth set to 2 for sexinesss .. but use 4 to upgrade overall documentation .. toctree:: :maxdepth: 2 introduction.rst - install-from-source.rst + install.rst getting-started.rst deploy-testnets.rst using-tendermint.rst @@ -46,7 +46,7 @@ Tendermint 201 * For a deeper dive, see `this thesis `__. * There is also the `original whitepaper `__, though it is now quite outdated. -* Readers might also be interested in the `Cosmos Whitepaper `__ which describes Tendermint, ABCI, and how to build a scalable, heterogeneous, cryptocurrency network. * For example applications and related software built by the Tendermint team and other, see the `software ecosystem `__. Join the `Cosmos and Tendermint Rocket Chat `__ to ask questions and discuss projects. diff --git a/docs/install-from-source.rst b/docs/install-from-source.rst deleted file mode 100644 index b353aba87..000000000 --- a/docs/install-from-source.rst +++ /dev/null @@ -1,102 +0,0 @@ -Install from Source -=================== - -This page provides instructions on installing Tendermint from source. To -download pre-built binaries, see the `Download page `__. - -Install Go ----------- - -Make sure you have `installed Go `__ and -set the ``GOPATH``. - -Install Tendermint ------------------- - -You should be able to install the latest with a simple - -:: - - go get github.com/tendermint/tendermint/cmd/tendermint - -Run ``tendermint --help`` for more. - -If the installation failed, a dependency may been updated and become -incompatible with the latest Tendermint master branch. We solve this -using the ``glide`` tool for dependency management. - -Fist, install ``glide``: - -:: - - go get github.com/Masterminds/glide - -Now we can fetch the correct versions of each dependency by running: - -:: - - cd $GOPATH/src/github.com/tendermint/tendermint - glide install - go install ./cmd/tendermint - -Note that even though ``go get`` originally failed, the repository was -still cloned to the correct location in the ``$GOPATH``. - -The latest Tendermint Core version is now installed. - -Reinstall -~~~~~~~~~ - -If you already have Tendermint installed, and you make updates, simply - -:: - - cd $GOPATH/src/github.com/tendermint/tendermint - go install ./cmd/tendermint - -To upgrade, there are a few options: - -- set a new ``$GOPATH`` and run - ``go get github.com/tendermint/tendermint/cmd/tendermint``. This - makes a fresh copy of everything for the new version. -- run ``go get -u github.com/tendermint/tendermint/cmd/tendermint``, - where the ``-u`` fetches the latest updates for the repository and - its dependencies -- fetch and checkout the latest master branch in - ``$GOPATH/src/github.com/tendermint/tendermint``, and then run - ``glide install && go install ./cmd/tendermint`` as above. - -Note the first two options should usually work, but may fail. If they -do, use ``glide``, as above: - -:: - - cd $GOPATH/src/github.com/tendermint/tendermint - glide install - go install ./cmd/tendermint - -Since the third option just uses ``glide`` right away, it should always -work. - -Troubleshooting -~~~~~~~~~~~~~~~ - -If ``go get`` failing bothers you, fetch the code using ``git``: - -:: - - mkdir -p $GOPATH/src/github.com/tendermint - git clone https://github.com/tendermint/tendermint $GOPATH/src/github.com/tendermint/tendermint - cd $GOPATH/src/github.com/tendermint/tendermint - glide install - go install ./cmd/tendermint - -Run -~~~ - -To start a one-node blockchain with a simple in-process application: - -:: - - tendermint init - tendermint node --proxy_app=dummy diff --git a/docs/using-tendermint.rst b/docs/using-tendermint.rst index a4e16a1f7..0d17db611 100644 --- a/docs/using-tendermint.rst +++ b/docs/using-tendermint.rst @@ -342,7 +342,7 @@ failing, you need at least four validator nodes (> 2/3). Updating validators in a live network is supported but must be explicitly programmed by the application developer. See the `application -developers guide <./app-development.html#Handshake>`__ for more +developers guide <./app-development.html>`__ for more details. Local Network