From cb1a0a733392a0f0b0bd4420ea3d091fb9e0c213 Mon Sep 17 00:00:00 2001 From: Marko Date: Fri, 27 Sep 2019 15:16:19 -0700 Subject: [PATCH] docs: remove traces of develop branch (#4022) * Develop -> Master - Some places still had develop instead of master. closes #4107 Signed-off-by: Marko Baricevic * add one more --- .circleci/config.yml | 2 +- README.md | 2 +- UPGRADING.md | 6 +++--- docs/guides/go-built-in.md | 7 ++++--- docs/guides/go.md | 7 ++++--- docs/guides/java.md | 22 ++++++++++++++++++---- docs/guides/kotlin.md | 22 ++++++++++++++++++---- 7 files changed, 49 insertions(+), 19 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index babba409d..8698d6fdf 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -80,7 +80,7 @@ jobs: script_path: abci/tests/test_app/test.sh # if this test fails, fix it and update the docs at: - # https://github.com/tendermint/tendermint/blob/develop/docs/abci-cli.md + # https://github.com/tendermint/tendermint/blob/master/docs/abci-cli.md test_abci_cli: executor: golang steps: diff --git a/README.md b/README.md index d7928f668..c1d26ed68 100644 --- a/README.md +++ b/README.md @@ -78,7 +78,7 @@ Sessions](/docs/DEV_SESSIONS.md) and read some [Architectural Decision Records](https://github.com/tendermint/tendermint/tree/master/docs/architecture). Learn more by reading the code and comparing it to the -[specification](https://github.com/tendermint/tendermint/tree/develop/docs/spec). +[specification](https://github.com/tendermint/tendermint/tree/master/docs/spec). ## Versioning diff --git a/UPGRADING.md b/UPGRADING.md index af42d2a66..fc98982a7 100644 --- a/UPGRADING.md +++ b/UPGRADING.md @@ -110,7 +110,6 @@ The ABCI Application interface changed slightly so the CheckTx and DeliverTx methods now take Request structs. The contents of these structs are just the raw tx bytes, which were previously passed in as the argument. - ## v0.31.6 There are no breaking changes in this release except Go API of p2p and @@ -193,13 +192,15 @@ due to changes in how various data structures are hashed. Any implementations of Tendermint blockchain verification, including lite clients, will need to be updated. For specific details: + - [Merkle tree](./docs/spec/blockchain/encoding.md#merkle-trees) - [ConsensusParams](./docs/spec/blockchain/state.md#consensusparams) There was also a small change to field ordering in the vote struct. Any implementations of an out-of-process validator (like a Key-Management Server) will need to be updated. For specific details: -- [Vote](https://github.com/tendermint/tendermint/blob/develop/docs/spec/consensus/signing.md#votes) + +- [Vote](https://github.com/tendermint/tendermint/blob/master/docs/spec/consensus/signing.md#votes) Finally, the proposer selection algorithm continues to evolve. See the [work-in-progress @@ -438,7 +439,6 @@ required to maintain a map from validator addresses to pubkeys since v0.23 (when pubkeys were removed from RequestBeginBlock), but now they may need to track multiple validator sets at once to accomodate this delay. - ### Block Size The `ConsensusParams.BlockSize.MaxTxs` was removed in favour of diff --git a/docs/guides/go-built-in.md b/docs/guides/go-built-in.md index 96adaf885..8dab5b37f 100644 --- a/docs/guides/go-built-in.md +++ b/docs/guides/go-built-in.md @@ -80,7 +80,7 @@ Hello, Tendermint Core Tendermint Core communicates with the application through the Application BlockChain Interface (ABCI). All message types are defined in the [protobuf -file](https://github.com/tendermint/tendermint/blob/develop/abci/types/types.proto). +file](https://github.com/tendermint/tendermint/blob/master/abci/types/types.proto). This allows Tendermint Core to run applications written in any programming language. @@ -221,7 +221,7 @@ func NewKVStoreApplication(db *badger.DB) *KVStoreApplication { When Tendermint Core has decided on the block, it's transfered to the application in 3 parts: `BeginBlock`, one `DeliverTx` per transaction and -`EndBlock` in the end. DeliverTx are being transfered asynchronously, but the +`EndBlock` in the end. DeliverTx are being transfered asynchronously, but the responses are expected to come in order. ``` @@ -448,8 +448,9 @@ defer db.Close() app := NewKVStoreApplication(db) ``` -For **Windows** users, restarting this app will make badger throw an error as it requires value log to be truncated. For more information on this, visit [here](https://github.com/dgraph-io/badger/issues/744). +For **Windows** users, restarting this app will make badger throw an error as it requires value log to be truncated. For more information on this, visit [here](https://github.com/dgraph-io/badger/issues/744). This can be avoided by setting the truncate option to true, like this: + ```go db, err := badger.Open(badger.DefaultOptions("/tmp/badger").WithTruncate(true)) ``` diff --git a/docs/guides/go.md b/docs/guides/go.md index 3798c9f5e..3f1e1059a 100644 --- a/docs/guides/go.md +++ b/docs/guides/go.md @@ -83,7 +83,7 @@ Hello, Tendermint Core Tendermint Core communicates with the application through the Application BlockChain Interface (ABCI). All message types are defined in the [protobuf -file](https://github.com/tendermint/tendermint/blob/develop/abci/types/types.proto). +file](https://github.com/tendermint/tendermint/blob/master/abci/types/types.proto). This allows Tendermint Core to run applications written in any programming language. @@ -224,7 +224,7 @@ func NewKVStoreApplication(db *badger.DB) *KVStoreApplication { When Tendermint Core has decided on the block, it's transfered to the application in 3 parts: `BeginBlock`, one `DeliverTx` per transaction and -`EndBlock` in the end. DeliverTx are being transfered asynchronously, but the +`EndBlock` in the end. DeliverTx are being transfered asynchronously, but the responses are expected to come in order. ``` @@ -388,8 +388,9 @@ defer db.Close() app := NewKVStoreApplication(db) ``` -For **Windows** users, restarting this app will make badger throw an error as it requires value log to be truncated. For more information on this, visit [here](https://github.com/dgraph-io/badger/issues/744). +For **Windows** users, restarting this app will make badger throw an error as it requires value log to be truncated. For more information on this, visit [here](https://github.com/dgraph-io/badger/issues/744). This can be avoided by setting the truncate option to true, like this: + ```go db, err := badger.Open(badger.DefaultOptions("/tmp/badger").WithTruncate(true)) ``` diff --git a/docs/guides/java.md b/docs/guides/java.md index 162b40fd7..1c234a4ee 100644 --- a/docs/guides/java.md +++ b/docs/guides/java.md @@ -66,10 +66,13 @@ $ cd $KVSTORE_HOME ``` Inside the example directory run: + ```sh gradle init --dsl groovy --package io.example --project-name example --type java-application --test-framework junit ``` + This will create a new project for you. The tree of files should look like: + ```sh $ tree . @@ -108,13 +111,14 @@ Hello world. Tendermint Core communicates with the application through the Application BlockChain Interface (ABCI). All message types are defined in the [protobuf -file](https://github.com/tendermint/tendermint/blob/develop/abci/types/types.proto). +file](https://github.com/tendermint/tendermint/blob/master/abci/types/types.proto). This allows Tendermint Core to run applications written in any programming language. ### 1.3.1 Compile .proto files Add the following piece to the top of the `build.gradle`: + ```groovy buildscript { repositories { @@ -127,6 +131,7 @@ buildscript { ``` Enable the protobuf plugin in the `plugins` section of the `build.gradle`: + ```groovy plugins { id 'com.google.protobuf' version '0.8.8' @@ -134,6 +139,7 @@ plugins { ``` Add the following code to `build.gradle`: + ```groovy protobuf { protoc { @@ -154,8 +160,8 @@ protobuf { Now we should be ready to compile the `*.proto` files. - Copy the necessary `.proto` files to your project: + ```sh mkdir -p \ $KVSTORE_HOME/src/main/proto/github.com/tendermint/tendermint/abci/types \ @@ -174,6 +180,7 @@ cp $GOPATH/src/github.com/gogo/protobuf/gogoproto/gogo.proto \ ``` Add these dependencies to `build.gradle`: + ```groovy dependencies { implementation 'io.grpc:grpc-protobuf:1.22.1' @@ -183,10 +190,13 @@ dependencies { ``` To generate all protobuf-type classes run: + ```sh ./gradlew generateProto ``` + To verify that everything went smoothly, you can inspect the `build/generated/` directory: + ```sh $ tree build/generated/ build/generated/ @@ -215,6 +225,7 @@ The resulting `$KVSTORE_HOME/build/generated/source/proto/main/grpc/types/ABCIAp contains the abstract class `ABCIApplicationImplBase`, which is an interface we'll need to implement. Create `$KVSTORE_HOME/src/main/java/io/example/KVStoreApp.java` file with the following content: + ```java package io.example; @@ -223,7 +234,7 @@ import types.ABCIApplicationGrpc; import types.Types.*; class KVStoreApp extends ABCIApplicationGrpc.ABCIApplicationImplBase { - + // methods implementation } @@ -302,6 +313,7 @@ For the underlying key-value store we'll use [JetBrains Xodus](https://github.com/JetBrains/xodus), which is a transactional schema-less embedded high-performance database written in Java. `build.gradle`: + ```groovy dependencies { implementation 'org.jetbrains.xodus:xodus-environment:1.3.91' @@ -345,7 +357,7 @@ class KVStoreApp extends ABCIApplicationGrpc.ABCIApplicationImplBase { When Tendermint Core has decided on the block, it's transferred to the application in 3 parts: `BeginBlock`, one `DeliverTx` per transaction and -`EndBlock` in the end. `DeliverTx` are being transferred asynchronously, but the +`EndBlock` in the end. `DeliverTx` are being transferred asynchronously, but the responses are expected to come in order. ```java @@ -358,6 +370,7 @@ public void beginBlock(RequestBeginBlock req, StreamObserver responseObserver.onCompleted(); } ``` + Here we begin a new transaction, which will accumulate the block's transactions and open the corresponding store. ```java @@ -469,6 +482,7 @@ Here we create a special object `Environment`, which knows where to store the ap Then we create and start the gRPC server to handle Tendermint Core requests. Create the `$KVSTORE_HOME/src/main/java/io/example/GrpcServer.java` file with the following content: + ```java package io.example; diff --git a/docs/guides/kotlin.md b/docs/guides/kotlin.md index fa9e10b35..f5af6b6cf 100644 --- a/docs/guides/kotlin.md +++ b/docs/guides/kotlin.md @@ -66,10 +66,13 @@ $ cd $KVSTORE_HOME ``` Inside the example directory run: + ```sh gradle init --dsl groovy --package io.example --project-name example --type kotlin-application ``` + This will create a new project for you. The tree of files should look like: + ```sh $ tree . @@ -108,13 +111,14 @@ Hello world. Tendermint Core communicates with the application through the Application BlockChain Interface (ABCI). All message types are defined in the [protobuf -file](https://github.com/tendermint/tendermint/blob/develop/abci/types/types.proto). +file](https://github.com/tendermint/tendermint/blob/master/abci/types/types.proto). This allows Tendermint Core to run applications written in any programming language. ### 1.3.1 Compile .proto files Add the following piece to the top of the `build.gradle`: + ```groovy buildscript { repositories { @@ -127,6 +131,7 @@ buildscript { ``` Enable the protobuf plugin in the `plugins` section of the `build.gradle`: + ```groovy plugins { id 'com.google.protobuf' version '0.8.8' @@ -134,6 +139,7 @@ plugins { ``` Add the following code to `build.gradle`: + ```groovy protobuf { protoc { @@ -154,8 +160,8 @@ protobuf { Now we should be ready to compile the `*.proto` files. - Copy the necessary `.proto` files to your project: + ```sh mkdir -p \ $KVSTORE_HOME/src/main/proto/github.com/tendermint/tendermint/abci/types \ @@ -174,6 +180,7 @@ cp $GOPATH/src/github.com/gogo/protobuf/gogoproto/gogo.proto \ ``` Add these dependencies to `build.gradle`: + ```groovy dependencies { implementation 'io.grpc:grpc-protobuf:1.22.1' @@ -183,10 +190,13 @@ dependencies { ``` To generate all protobuf-type classes run: + ```sh ./gradlew generateProto ``` + To verify that everything went smoothly, you can inspect the `build/generated/` directory: + ```sh $ tree build/generated/ build/generated/ @@ -215,6 +225,7 @@ The resulting `$KVSTORE_HOME/build/generated/source/proto/main/grpc/types/ABCIAp contains the abstract class `ABCIApplicationImplBase`, which is an interface we'll need to implement. Create `$KVSTORE_HOME/src/main/kotlin/io/example/KVStoreApp.kt` file with the following content: + ```kotlin package io.example @@ -223,7 +234,7 @@ import types.ABCIApplicationGrpc import types.Types.* class KVStoreApp : ABCIApplicationGrpc.ABCIApplicationImplBase() { - + // methods implementation } @@ -293,6 +304,7 @@ For the underlying key-value store we'll use [JetBrains Xodus](https://github.com/JetBrains/xodus), which is a transactional schema-less embedded high-performance database written in Java. `build.gradle`: + ```groovy dependencies { implementation 'org.jetbrains.xodus:xodus-environment:1.3.91' @@ -329,7 +341,7 @@ class KVStoreApp( When Tendermint Core has decided on the block, it's transferred to the application in 3 parts: `BeginBlock`, one `DeliverTx` per transaction and -`EndBlock` in the end. `DeliverTx` are being transferred asynchronously, but the +`EndBlock` in the end. `DeliverTx` are being transferred asynchronously, but the responses are expected to come in order. ```kotlin @@ -341,6 +353,7 @@ override fun beginBlock(req: RequestBeginBlock, responseObserver: StreamObserver responseObserver.onCompleted() } ``` + Here we begin a new transaction, which will accumulate the block's transactions and open the corresponding store. ```kotlin @@ -443,6 +456,7 @@ Here we create a special object `Environment`, which knows where to store the ap Then we create and start the gRPC server to handle Tendermint Core requests. Create `$KVSTORE_HOME/src/main/kotlin/io/example/GrpcServer.kt` file with the following content: + ```kotlin package io.example