mirror of
https://github.com/fluencelabs/tendermint
synced 2025-04-24 14:22:16 +00:00
docs: remove traces of develop branch (#4022)
* Develop -> Master - Some places still had develop instead of master. closes #4107 Signed-off-by: Marko Baricevic <marbar3778@yahoo.com> * add one more
This commit is contained in:
parent
b065b8a0c5
commit
cb1a0a7333
@ -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:
|
||||
|
@ -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
|
||||
|
||||
|
@ -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
|
||||
|
@ -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))
|
||||
```
|
||||
|
@ -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))
|
||||
```
|
||||
|
@ -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<ResponseBeginBlock>
|
||||
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;
|
||||
|
||||
|
@ -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
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user