Skip to content

Commit 3e96a37

Browse files
authored
spec: merge v0.35 spec into tendermint (#9018)
1 parent 183e249 commit 3e96a37

File tree

224 files changed

+41549
-231
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

224 files changed

+41549
-231
lines changed

.github/CODEOWNERS

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,4 +7,6 @@
77
# global owners are only requested if there isn't a more specific
88
# codeowner specified below. For this reason, the global codeowners
99
# are often repeated in package-level definitions.
10-
* @ebuchman @cmwaters @tychoish @williambanfield @creachadair
10+
* @ebuchman @cmwaters @tychoish @williambanfield @creachadair @sergio-mena @jmalicevic @thanethomson @samricotta
11+
12+
/spec @josef-widder @milosevic @cason @sergio-mena @jmalicevic
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
name: Check Markdown links
2+
3+
on:
4+
push:
5+
branches:
6+
- master
7+
pull_request:
8+
branches: [master]
9+
10+
jobs:
11+
markdown-link-check:
12+
runs-on: ubuntu-latest
13+
steps:
14+
- uses: actions/checkout@v3
15+
- uses: technote-space/get-diff-action@v6
16+
with:
17+
PATTERNS: |
18+
**/**.md
19+
- uses: creachadair/github-action-markdown-link-check@master
20+
with:
21+
check-modified-files-only: 'yes'
22+
config-file: '.md-link-check.json'
23+
if: env.GIT_DIFF

.github/workflows/proto-check.yml

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
name: Proto Check
2+
# Protobuf runs buf (https://buf.build/) lint and check-breakage
3+
# This workflow is only run when a file in the proto directory
4+
# has been modified.
5+
on:
6+
workflow_dispatch: # allow running workflow manually
7+
pull_request:
8+
paths:
9+
- "proto/**"
10+
jobs:
11+
proto-lint:
12+
runs-on: ubuntu-latest
13+
timeout-minutes: 4
14+
steps:
15+
- uses: actions/checkout@v2.4.0
16+
- uses: bufbuild/buf-setup-action@v1.6.0
17+
- uses: bufbuild/buf-lint-action@v1
18+
with:
19+
input: 'proto'
20+
21+
proto-breakage:
22+
runs-on: ubuntu-latest
23+
timeout-minutes: 4
24+
steps:
25+
- uses: actions/checkout@v2.4.0
26+
- uses: bufbuild/buf-setup-action@v1.6.0
27+
- uses: bufbuild/buf-breaking-action@v1
28+
with:
29+
against: 'https://github.com/tendermint/tendermint.git#branch=v0.35.x'

.github/workflows/proto.yml

Lines changed: 0 additions & 23 deletions
This file was deleted.

.gitignore

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
.idea/
1111
.revision
1212
.tendermint
13-
.tendermint-lite
13+
.tendermint-light
1414
.terraform
1515
.vagrant
1616
.vendor-new/
@@ -47,3 +47,10 @@ test/fuzz/**/corpus
4747
test/fuzz/**/crashers
4848
test/fuzz/**/suppressions
4949
test/fuzz/**/*.zip
50+
*.aux
51+
*.bbl
52+
*.blg
53+
*.pdf
54+
*.gz
55+
*.dvi
56+
.idea

.markdownlint.yml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
default: true
2+
MD001: false
3+
MD007: { indent: 4 }
4+
MD013: false
5+
MD024: { siblings_only: true }
6+
MD025: false
7+
MD033: false
8+
MD036: false
9+
MD010: false
10+
MD012: false
11+
MD028: false

CHANGELOG.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1091,7 +1091,7 @@ and a validator address plus a timestamp. Note we may remove the validator
10911091
address & timestamp fields in the future (see ADR-25).
10921092

10931093
`lite2` package has been added to solve `lite` issues and introduce weak
1094-
subjectivity interface. Refer to the [spec](https://github.com/tendermint/spec/blob/master/spec/consensus/light-client.md) for complete details.
1094+
subjectivity interface. Refer to the [spec](https://github.com/tendermint/tendermint/blob/v0.35.x/spec/consensus/light-client.md) for complete details.
10951095
`lite` package is now deprecated and will be removed in v0.34 release.
10961096

10971097
### BREAKING CHANGES:

CONTRIBUTING.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ will indicate their support with a heartfelt emoji.
2626

2727
If the issue would benefit from thorough discussion, maintainers may
2828
request that you create a [Request For
29-
Comment](https://github.com/tendermint/spec/tree/master/rfc)
29+
Comment](https://github.com/tendermint/tendermint/tree/master/docs/rfc)
3030
in the Tendermint spec repo. Discussion
3131
at the RFC stage will build collective understanding of the dimensions
3232
of the problems and help structure conversations around trade-offs.

Makefile

Lines changed: 27 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -83,31 +83,44 @@ $(BUILDDIR)/:
8383
proto-all: proto-gen proto-lint proto-check-breaking
8484
.PHONY: proto-all
8585

86-
proto-gen:
87-
@echo "Generating Go packages for .proto files"
88-
@$(DOCKER_PROTO) sh ./scripts/protocgen.sh
86+
check-proto-deps:
87+
ifeq (,$(shell which protoc-gen-gogofaster))
88+
$(error "gogofaster plugin for protoc is required. Run 'go install github.com/gogo/protobuf/protoc-gen-gogofaster@latest' to install")
89+
endif
90+
.PHONY: check-proto-deps
91+
92+
check-proto-format-deps:
93+
ifeq (,$(shell which clang-format))
94+
$(error "clang-format is required for Protobuf formatting. See instructions for your platform on how to install it.")
95+
endif
96+
.PHONY: check-proto-format-deps
97+
98+
proto-gen: check-proto-deps
99+
@echo "Generating Protobuf files"
100+
@go run github.com/bufbuild/buf/cmd/buf generate
101+
@mv ./proto/tendermint/abci/types.pb.go ./abci/types/
89102
.PHONY: proto-gen
90103

91-
proto-lint:
92-
@echo "Running lint checks for .proto files"
93-
@$(DOCKER_PROTO) buf lint --error-format=json
104+
# These targets are provided for convenience and are intended for local
105+
# execution only.
106+
proto-lint: check-proto-deps
107+
@echo "Linting Protobuf files"
108+
@go run github.com/bufbuild/buf/cmd/buf lint
94109
.PHONY: proto-lint
95110

96111
proto-format:
97112
@echo "Formatting .proto files"
98113
@$(DOCKER_PROTO) find ./ -not -path "./third_party/*" -name '*.proto' -exec clang-format -i {} \;
99114
.PHONY: proto-format
100115

101-
proto-check-breaking:
102-
@echo "Checking for breaking changes in .proto files"
103-
@$(DOCKER_PROTO) buf breaking --against .git#branch=$(BASE_BRANCH)
116+
proto-check-breaking: check-proto-deps
117+
@echo "Checking for breaking changes in Protobuf files against local branch"
118+
@echo "Note: This is only useful if your changes have not yet been committed."
119+
@echo " Otherwise read up on buf's \"breaking\" command usage:"
120+
@echo " https://docs.buf.build/breaking/usage"
121+
@go run github.com/bufbuild/buf/cmd/buf breaking --against ".git"
104122
.PHONY: proto-check-breaking
105123

106-
proto-check-breaking-ci:
107-
@echo "Checking for breaking changes in .proto files"
108-
@$(DOCKER_PROTO) buf breaking --against $(HTTPS_GIT)#branch=$(BASE_BRANCH)
109-
.PHONY: proto-check-breaking-ci
110-
111124
###############################################################################
112125
### Build ABCI ###
113126
###############################################################################

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ Or [Blockchain](<https://en.wikipedia.org/wiki/Blockchain_(database)>), for shor
2020

2121
Tendermint Core is a Byzantine Fault Tolerant (BFT) middleware that takes a state transition machine - written in any programming language - and securely replicates it on many machines.
2222

23-
For protocol details, see [the specification](https://github.com/tendermint/spec).
23+
For protocol details, see [the specification](https://github.com/tendermint/tendermint/blob/v0.35.x/spec/README.md).
2424

2525
For detailed analysis of the consensus protocol, including safety and liveness proofs,
2626
see our recent paper, "[The latest gossip on BFT consensus](https://arxiv.org/abs/1807.04938)".
@@ -70,7 +70,7 @@ Please abide by the [Code of Conduct](CODE_OF_CONDUCT.md) in all interactions.
7070

7171
Before contributing to the project, please take a look at the [contributing guidelines](CONTRIBUTING.md)
7272
and the [style guide](STYLE_GUIDE.md). You may also find it helpful to read the
73-
[specifications](https://github.com/tendermint/spec), watch the [Developer Sessions](/docs/DEV_SESSIONS.md),
73+
[specifications](https://github.com/tendermint/tendermint/blob/v0.35.x/spec/README.md), watch the [Developer Sessions](/docs/DEV_SESSIONS.md),
7474
and familiarize yourself with our
7575
[Architectural Decision Records](https://github.com/tendermint/tendermint/tree/master/docs/architecture).
7676

0 commit comments

Comments
 (0)