William Banfield
02c7dca945
docs: add abci timing metrics to the metrics docs ( #7311 )
3 years ago
M. J. Fromberger
e92aa56a75
Clean up lint failures for Markdown files ( #367 )
Many of the Markdown files in this repository fail the Markdown lint check.
This change cleans up most of them, either by:
- Removing links to targets that no longer exist.
- Updating links to targets that have moved.
- Disabling the linter for files that need more revision.
- Clean up trailing whitespace in files that peeves the super-linter.
Fixes #363 .
3 years ago
M. J. Fromberger
26b887b883
build: update location of proto builder image ( #7296 )
Updates #7272 .
3 years ago
Andrew Farmer
48e008ed10
acbi: fix readme link to protocol buffers ( #362 )
3 years ago
Sam Kleinman
7e58f02eb8
service: remove quit method ( #7293 )
3 years ago
M. J. Fromberger
be628fce3b
build: Update the builder image location. ( #364 )
Point Makefile to ghcr.io instead of DockerHub.
3 years ago
M. J. Fromberger
d783273b05
Update build image workflow. ( #361 )
Push the builder image to ghcr.io instead of dockerhub.
Clean up the proto builder Dockerfile.
3 years ago
Sam Kleinman
6ab62fe7b6
service: remove stop method and use contexts ( #7292 )
3 years ago
William Banfield
1c34d17240
proto: rebuild the proto files from the spec repository ( #7291 )
* proto: rebuild the proto files from the spec repository
* remove proto checks
3 years ago
William Banfield
ffe8742e1c
Revert "proto: abci++ changes ( #348 )" ( #360 )
This reverts commit caaafc4449
.
3 years ago
William Banfield
a00de7199f
update proto generation and testing pipelines ( #358 )
This pull request aims to make it possible to generate, format, and lint the protos within this repo.
To accomplish that end, the Dockerfile containing common tools for building the tendermint protos has been moved into this repository and several accompanying changes were made to streamline the proto generation process.
3 years ago
dependabot[bot]
44b5d330b0
build(deps): Bump github.com/tendermint/tm-db from 0.6.4 to 0.6.6 ( #7287 )
Bumps [github.com/tendermint/tm-db](https://github.com/tendermint/tm-db ) from 0.6.4 to 0.6.6.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/tendermint/tm-db/releases ">github.com/tendermint/tm-db's releases</a>.</em></p>
<blockquote>
<h2>Release v0.6.6</h2>
<p>This release is the same API as v0.6.4, but bypasses the accidental v0.6.5
release that exported a different API. Any existing users of v0.6.5 may continue
to use that tag.</p>
<p><a href="https://github.com/tendermint/tm-db/blob/v0.6.6/CHANGELOG.md ">https://github.com/tendermint/tm-db/blob/v0.6.6/CHANGELOG.md </a></p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/tendermint/tm-db/blob/master/CHANGELOG.md ">github.com/tendermint/tm-db's changelog</a>.</em></p>
<blockquote>
<h2>0.6.6</h2>
<p><strong>2021-11-08</strong></p>
<p><strong>Important note:</strong> Version v0.6.5 was accidentally tagged and should be
avoided. This version is identical to v0.6.4 in package structure and API, but
has updated the version marker so that normal <code>go get</code> upgrades will not
require modifying existing use of v0.6.4.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="0e6efdda1b
"><code>0e6efdd</code></a> Prepare a new compatibility release v0.6.6. (<a href="https://github-redirect.dependabot.com/tendermint/tm-db/issues/203 ">#203</a>)</li>
<li><a href="8f92601b65
"><code>8f92601</code></a> testing: tools/Dockerfile: Upgrade RocksDB to 6.24.2 (<a href="https://github-redirect.dependabot.com/tendermint/tm-db/issues/197 ">#197</a>)</li>
<li><a href="16415bfbd7
"><code>16415bf</code></a> build(deps): bump google.golang.org/grpc from 1.38.0 to 1.42.0 (<a href="https://github-redirect.dependabot.com/tendermint/tm-db/issues/193 ">#193</a>)</li>
<li><a href="11c5e90c12
"><code>11c5e90</code></a> Update mergify configuration. (<a href="https://github-redirect.dependabot.com/tendermint/tm-db/issues/198 ">#198</a>)</li>
<li><a href="d3744d52e8
"><code>d3744d5</code></a> Retract the accidentally-released v0.6.5. (<a href="https://github-redirect.dependabot.com/tendermint/tm-db/issues/194 ">#194</a>)</li>
<li><a href="6dc0379403
"><code>6dc0379</code></a> Update CODEOWNERS file. (<a href="https://github-redirect.dependabot.com/tendermint/tm-db/issues/196 ">#196</a>)</li>
<li><a href="63a566e765
"><code>63a566e</code></a> Enable cgo for testing. (<a href="https://github-redirect.dependabot.com/tendermint/tm-db/issues/200 ">#200</a>)</li>
<li><a href="451c8444fb
"><code>451c844</code></a> Revert rocksdb version at tip. (<a href="https://github-redirect.dependabot.com/tendermint/tm-db/issues/202 ">#202</a>)</li>
<li><a href="d65205892e
"><code>d652058</code></a> build: fix the image to work with golangci-lint (<a href="https://github-redirect.dependabot.com/tendermint/tm-db/issues/201 ">#201</a>)</li>
<li><a href="8882f27066
"><code>8882f27</code></a> Update Go version in the build container. (<a href="https://github-redirect.dependabot.com/tendermint/tm-db/issues/195 ">#195</a>)</li>
<li>Additional commits viewable in <a href="https://github.com/tendermint/tm-db/compare/v0.6.4...v0.6.6 ">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=github.com/tendermint/tm-db&package-manager=go_modules&previous-version=0.6.4&new-version=0.6.6 )](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores )
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
3 years ago
Sam Kleinman
d7606777cf
libs/service: pass logger explicitly ( #7288 )
This is a very small change, but removes a method from the
`service.Service` interface (a win!) and forces callers to explicitly
pass loggers in to objects during construction rather than (later)
injecting them. There's not a real need for this kind of lazy
construction of loggers, and I think a decent potential for confusion
for mutable loggers.
The main concern I have is that this changes the constructor API for
ABCI clients. I think this is fine, and I suspect that as we plumb
contexts through, and make changes to the RPC services there'll be a
number of similar sorts of changes to various (quasi) public
interfaces, which I think we should welcome.
3 years ago
M. J. Fromberger
dbac109d01
docs: clarify where doc site config settings must land ( #7289 )
Since the doc site is built from the backport branches, the config changes for
a new major release also need to be replicated into the backport branch as well
as master. Update the release docs to mention that specifically, since I missed
it during the v0.35 release.
3 years ago
Marko
caaafc4449
proto: abci++ changes ( #348 )
* abci++ proto updates
* add finalizeblock
* add deprecated fields
3 years ago
William Banfield
d5df412b26
proto: update the mechanism for generating protos from spec repo ( #7269 )
This pull request updates the `protocgen.sh` script to insert the `go_package` option to all of the downloaded proto files. A related pull request into the spec repo removes this options from the .proto files: https://github.com/tendermint/spec/pull/358
This pull requests, along with the related spec PR, aim to move the creation of the `tendermintdev/docker-build-proto` container into the spec repo. This change also relies on several fixes to that container that are made in the PR into the spec repo.
3 years ago
Sam Kleinman
2a455be46c
libs/os: remove arbitrary os.Exit ( #7284 )
I think calling os.Exit at arbitrary points is _bad_ and is good to
delete. I think panics in the case of data courruption have a chance
of providing useful information.
3 years ago
Sam Kleinman
a15ae5b53a
node+consensus: handshaker initialization ( #7283 )
This mostly just pushes more of initialization out of the node package.
3 years ago
William Banfield
f28d629e28
ADR: Update the proposer-based timestamp spec per discussion with @cason ( #7153 )
* update the proposer-based timestamps spec per discussion with @cason
* add vote to list of changed structs
* sentence fix
* clarify crypto sig logic update
* language updates per feedback from @cason
* fix POL < 0 wording
* update timely description for non-polka
3 years ago
Sam Kleinman
27560cf7a4
p2p: reduce peer score for dial failures ( #7265 )
When dialing fails to succeed we should reduce the score of the peer,
which puts the peer at (potentially) greater chances of being removed
from the peer manager, and reduces the chance of the peer being
gossiped by the PEX reactor.
3 years ago
William Banfield
4acd117b5e
evidence: remove source of non-determinism from test ( #7266 )
The evidence test produces a set of mock evidence in the evidence pool of the 'Primary' node. The test then fills the evidence pools of secondaries with half of this mock evidence. Finally, the test waits until the secondary has an evidence pool as full as the primary.
The assertions that are removed here were checking that the primary and secondaries' evidence channels were empty. However, nothing in the test actually ensures that the channels are empty. The test only waits for the secondaries to have received the complete set of evidence, and the secondaries already received half of the evidence at the beginning. It's more than possible that the secondaries can receive the complete set of evidence and not finish reading the duplicate evidence off the channels.
3 years ago
M. J. Fromberger
9dc3d7f9a2
Set a cap on the length of subscription queries. ( #7263 )
As a safety measure, don't allow a query string to be unreasonably
long. The query filter is not especially efficient, so a query that
needs more than basic detail should filter coarsely in the subscriber
and refine on the client side.
This affects Subscribe and TxSearch queries.
3 years ago
dependabot[bot]
e4466b7905
build(deps): Bump github.com/lib/pq from 1.10.3 to 1.10.4 ( #7261 )
Bumps [github.com/lib/pq](https://github.com/lib/pq ) from 1.10.3 to 1.10.4.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/lib/pq/releases ">github.com/lib/pq's releases</a>.</em></p>
<blockquote>
<h2>v1.10.4</h2>
<ul>
<li>Keep track of (context cancelled) error on connection.</li>
<li>Fix android build</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="8446d16b89
"><code>8446d16</code></a> issue 1062: Keep track of (context cancelled) error on connection, and make r...</li>
<li><a href="6a102c04ac
"><code>6a102c0</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/lib/pq/issues/1060 ">#1060</a> from ian4hu/patch-1</li>
<li><a href="a54251e1b6
"><code>a54251e</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/lib/pq/issues/1061 ">#1061</a> from mjl-/fix-flaky-TestConnPrepareContext</li>
<li><a href="2b4fa17b44
"><code>2b4fa17</code></a> Fix flaky TestConnPrepareContext</li>
<li><a href="b33a1b722c
"><code>b33a1b7</code></a> Fix android build</li>
<li><a href="16e9cadb5a
"><code>16e9cad</code></a> Fix build in android</li>
<li><a href="26399a7687
"><code>26399a7</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/lib/pq/issues/1057 ">#1057</a> from jfcg/master</li>
<li><a href="087077605f
"><code>0870776</code></a> fix possible integer truncation</li>
<li><a href="c01ab77091
"><code>c01ab77</code></a> Create codeql-analysis.yml</li>
<li>See full diff in <a href="https://github.com/lib/pq/compare/v1.10.3...v1.10.4 ">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=github.com/lib/pq&package-manager=go_modules&previous-version=1.10.3&new-version=1.10.4 )](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores )
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
3 years ago
Callum Waters
b3b90f820c
consensus: add some more checks to vote counting ( #7253 )
3 years ago
JayT106
1e701ed9b5
fix LGTM warning ( #7257 )
3 years ago
dependabot[bot]
2af7d8defd
build(deps): Bump google.golang.org/grpc from 1.41.0 to 1.42.0 ( #7200 )
Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go ) from 1.41.0 to 1.42.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/grpc/grpc-go/releases ">google.golang.org/grpc's releases</a>.</em></p>
<blockquote>
<h2>Release 1.42.0</h2>
<h1>Behavior Changes</h1>
<ul>
<li>grpc: Dial("unix://relative-path") no longer works (<a href="https://github-redirect.dependabot.com/grpc/grpc-go/issues/4817 ">#4817</a>)
<ul>
<li>use "unix://absolute-path" or "unix:relative-path" instead in accordance with <a href="https://github.com/grpc/grpc/blob/master/doc/naming.md#name-syntax ">our documentation</a></li>
</ul>
</li>
<li>xds/csds: use new field <code>GenericXdsConfig</code> instead of <code>PerXdsConfig</code> (<a href="https://github-redirect.dependabot.com/grpc/grpc-go/issues/4898 ">#4898</a>)</li>
</ul>
<h1>New Features</h1>
<ul>
<li>grpc: support <code>grpc.WithAuthority</code> when secure credentials are used (<a href="https://github-redirect.dependabot.com/grpc/grpc-go/issues/4817 ">#4817</a>)</li>
<li>creds/google: add NewDefaultCredentialsWithOptions() to support custom per-RPC creds (<a href="https://github-redirect.dependabot.com/grpc/grpc-go/issues/4830 ">#4830</a>)</li>
<li>authz: create file watcher interceptor for gRPC SDK API (<a href="https://github-redirect.dependabot.com/grpc/grpc-go/issues/4760 ">#4760</a>)</li>
<li>attributes: add <code>Equal</code> method (<a href="https://github-redirect.dependabot.com/grpc/grpc-go/issues/4855 ">#4855</a>)</li>
<li>resolver: add <code>AddressMap</code> and <code>State.BalancerAttributes</code> (<a href="https://github-redirect.dependabot.com/grpc/grpc-go/issues/4855 ">#4855</a>)</li>
<li>resolver: Add <code>URL</code> field to <code>Target</code> to store parsed dial target (<a href="https://github-redirect.dependabot.com/grpc/grpc-go/issues/4817 ">#4817</a>)</li>
<li>grpclb: add a <code>target_name</code> field to lb config to specify target when used as a child policy (<a href="https://github-redirect.dependabot.com/grpc/grpc-go/issues/4847 ">#4847</a>)</li>
<li>grpclog: support formatting log output as JSON (<a href="https://github-redirect.dependabot.com/grpc/grpc-go/issues/4854 ">#4854</a>)</li>
</ul>
<h1>Bug Fixes</h1>
<ul>
<li>server: add missing conn.Close if the connection dies before reading the HTTP/2 preface (<a href="https://github-redirect.dependabot.com/grpc/grpc-go/issues/4837 ">#4837</a>)</li>
<li>grpclb: recover if addresses are received after an empty server list was received previously (<a href="https://github-redirect.dependabot.com/grpc/grpc-go/issues/4879 ">#4879</a>)</li>
<li>authz: support empty principals and fix rbac authenticated matcher (<a href="https://github-redirect.dependabot.com/grpc/grpc-go/issues/4883 ">#4883</a>)</li>
<li>xds/rds: NACK the RDS response if it contains unknown cluster specifier (<a href="https://github-redirect.dependabot.com/grpc/grpc-go/issues/4788 ">#4788</a>)</li>
<li>xds/priority: do not switch to low priority when high priority is in Idle (e.g. ringhash) (<a href="https://github-redirect.dependabot.com/grpc/grpc-go/issues/4889 ">#4889</a>)</li>
</ul>
<h1>Documentation</h1>
<ul>
<li>grpc: stabilize WithDefaultServiceConfig and improve godoc (<a href="https://github-redirect.dependabot.com/grpc/grpc-go/issues/4888 ">#4888</a>)</li>
<li>status: clarify FromError docstring (<a href="https://github-redirect.dependabot.com/grpc/grpc-go/issues/4880 ">#4880</a>)</li>
<li>examples: add example illustrating the use of unix abstract sockets (<a href="https://github-redirect.dependabot.com/grpc/grpc-go/issues/4848 ">#4848</a>)</li>
<li>examples: update load balancing example to use loadBalancingConfig (<a href="https://github-redirect.dependabot.com/grpc/grpc-go/issues/4887 ">#4887</a>)</li>
<li>doc: promote WithDisableRetry to stable; clarify retry is enabled by default (<a href="https://github-redirect.dependabot.com/grpc/grpc-go/issues/4901 ">#4901</a>)</li>
</ul>
<h1>API Changes</h1>
<ul>
<li>credentials: Mark <code>TransportCredentials.OverrideServerName</code> method as deprecated (<a href="https://github-redirect.dependabot.com/grpc/grpc-go/issues/4817 ">#4817</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="aff571cc86
"><code>aff571c</code></a> Change version to 1.42.0 (<a href="https://github-redirect.dependabot.com/grpc/grpc-go/issues/4910 ">#4910</a>)</li>
<li><a href="2d7bdf2d23
"><code>2d7bdf2</code></a> xds: Set RBAC on by default (<a href="https://github-redirect.dependabot.com/grpc/grpc-go/issues/4909 ">#4909</a>)</li>
<li><a href="d47437c91e
"><code>d47437c</code></a> xds: Fix invert functionality for header matcher (<a href="https://github-redirect.dependabot.com/grpc/grpc-go/issues/4902 ">#4902</a>)</li>
<li><a href="9fa2698264
"><code>9fa2698</code></a> xds/csds: populate new GenericXdsConfig field (<a href="https://github-redirect.dependabot.com/grpc/grpc-go/issues/4898 ">#4898</a>)</li>
<li><a href="6e8625df63
"><code>6e8625d</code></a> doc: promote WithDisableRetry to stable; clarify retry is enabled by default ...</li>
<li><a href="f1d87c14c2
"><code>f1d87c1</code></a> client: properly disable retry if GRPC_GO_RETRY=off (<a href="https://github-redirect.dependabot.com/grpc/grpc-go/issues/4899 ">#4899</a>)</li>
<li><a href="03753f593c
"><code>03753f5</code></a> creds/google: fix CFE cluster name check (<a href="https://github-redirect.dependabot.com/grpc/grpc-go/issues/4893 ">#4893</a>)</li>
<li><a href="4f21cde702
"><code>4f21cde</code></a> authz: support empty principals and fix rbac authenticated matcher (<a href="https://github-redirect.dependabot.com/grpc/grpc-go/issues/4883 ">#4883</a>)</li>
<li><a href="f00baa6c3c
"><code>f00baa6</code></a> resolver: replace AddressMap.Range with Keys (<a href="https://github-redirect.dependabot.com/grpc/grpc-go/issues/4891 ">#4891</a>)</li>
<li><a href="2a312458e6
"><code>2a31245</code></a> client: don't force passthrough as default resolver (<a href="https://github-redirect.dependabot.com/grpc/grpc-go/issues/4890 ">#4890</a>)</li>
<li>Additional commits viewable in <a href="https://github.com/grpc/grpc-go/compare/v1.41.0...v1.42.0 ">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=google.golang.org/grpc&package-manager=go_modules&previous-version=1.41.0&new-version=1.42.0 )](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores )
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
3 years ago
M. J. Fromberger
d5865af1f4
Add basic metrics to the indexer package. ( #7250 )
This follows the same model as we did in the p2p package.
Rework the indexer service constructor to take a struct of arguments,
that makes it easier to construct the optional settings.
Deprecate but do not remove the existing constructor.
Clean up node initialization a little bit.
3 years ago
M. J. Fromberger
54d7030510
pubsub: Move indexing out of the primary subscription path ( #7231 )
This is part of the work described by #7156 .
Remove "unbuffered subscriptions" from the pubsub service.
Replace them with a dedicated blocking "observer" mechanism.
Use the observer mechanism for indexing.
Add a SubscribeWithArgs method and deprecate the old Subscribe
method. Remove SubscribeUnbuffered entirely (breaking).
Rework the Subscription interface to eliminate exposed channels.
Subscriptions now use a context to manage lifecycle notifications.
Internalize the eventbus package.
3 years ago
M. J. Fromberger
b4055a0753
Fix ToC entry for RFC 006. ( #7248 )
Oops.
3 years ago
M. J. Fromberger
432067cc0e
RFC 006: Event Subscription ( #7184 )
This is intended to document some ergonomic and reliability issues with the
existing implementation of the event subscription service on the Tendermint
node, and to discuss possible approaches to improving them.
3 years ago
M. J. Fromberger
6c7d6f761b
Remove unused libs/cmap. ( #7245 )
A follow-up to #7197 .
3 years ago
M. J. Fromberger
3335cbe8b7
Update master changelog after v0.35.0 tag. ( #7243 )
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
3 years ago
JayT106
641a5ec998
rpc: fix inappropriate http request log ( #7244 )
3 years ago
M. J. Fromberger
b3b1279d1f
Add v0.35 to the configs for building the docs website. ( #7055 )
3 years ago
Sam Kleinman
797541e742
docs: add upgrading info about node service ( #7241 )
* docs: add info about RPC local to upgrading docs
* Apply suggestions from code review
Co-authored-by: Callum Waters <cmwaters19@gmail.com>
* cleanup codeblock
Co-authored-by: Callum Waters <cmwaters19@gmail.com>
3 years ago
Callum Waters
ae92b135d8
docs: update bounty links ( #7203 )
3 years ago
dependabot[bot]
a2f4f3fb48
build(deps): Bump github.com/golangci/golangci-lint from 1.42.1 to 1.43.0 ( #7219 )
Bumps [github.com/golangci/golangci-lint](https://github.com/golangci/golangci-lint ) from 1.42.1 to 1.43.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/golangci/golangci-lint/releases ">github.com/golangci/golangci-lint's releases</a>.</em></p>
<blockquote>
<h2>v1.43.0</h2>
<h2>Changelog</h2>
<p>bdc2f96d Add code comments to document source code (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2306 ">#2306</a>)
861262b7 Add github.com/breml/bidichk linter (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2330 ">#2330</a>)
32292622 Add nilnil linter (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2236 ">#2236</a>)
20699a72 Add tenv linter (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2221 ">#2221</a>)
e612577d Bump gochecknoglobals to v0.1.0 (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2317 ">#2317</a>)
1be9570a Refactor: preallocate slices (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2340 ">#2340</a>)
813ba7d9 Update index.mdx (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2230 ">#2230</a>)
f500e4cb add varnamelen linter (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2240 ">#2240</a>)
e6c56694 build(deps): bump github.com/Antonboom/errname from 0.1.4 to 0.1.5 (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2249 ">#2249</a>)
a37843b1 build(deps): bump github.com/butuzov/ireturn from 0.1.0 to 0.1.1 (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2246 ">#2246</a>)
680f3e6c build(deps): bump github.com/charithe/durationcheck from 0.0.8 to 0.0.9 (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2289 ">#2289</a>)
00e47702 build(deps): bump github.com/esimonov/ifshort from 1.0.2 to 1.0.3 (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2303 ">#2303</a>)
d3fc84bc build(deps): bump github.com/fatih/color from 1.12.0 to 1.13.0 (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2259 ">#2259</a>)
4ce9a19e build(deps): bump github.com/go-critic/go-critic from 0.5.6 to 0.6.0 (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2041 ">#2041</a>)
5adafe52 build(deps): bump github.com/jingyugao/rowserrcheck from 1.1.0 to 1.1.1 (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2326 ">#2326</a>)
3fe324a1 build(deps): bump github.com/kunwardeep/paralleltest from 1.0.2 to 1.0.3 (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2244 ">#2244</a>)
739ccd3f build(deps): bump github.com/mattn/go-colorable from 0.1.10 to 0.1.11 (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2277 ">#2277</a>)
c6c55d25 build(deps): bump github.com/mattn/go-colorable from 0.1.8 to 0.1.9 (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2252 ">#2252</a>)
8f2af022 build(deps): bump github.com/mattn/go-colorable from 0.1.9 to 0.1.10 (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2260 ">#2260</a>)
78d309e7 build(deps): bump github.com/mgechev/revive from 1.1.1 to 1.1.2 (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2276 ">#2276</a>)
1012c10d build(deps): bump github.com/nakabonne/nestif from 0.3.0 to 0.3.1 (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2325 ">#2325</a>)
6edca924 build(deps): bump github.com/securego/gosec/v2 from 2.8.1 to 2.9.1 (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2299 ">#2299</a>)
963257f9 build(deps): bump github.com/shirou/gopsutil/v3 from 3.21.7 to 3.21.8 (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2225 ">#2225</a>)
b9f015cc build(deps): bump github.com/shirou/gopsutil/v3 from 3.21.8 to 3.21.9 (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2275 ">#2275</a>)
9f628531 build(deps): bump github.com/shirou/gopsutil/v3 from 3.21.9 to 3.21.10 (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2327 ">#2327</a>)
f1258315 build(deps): bump github.com/spf13/viper from 1.8.1 to 1.9.0 (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2243 ">#2243</a>)
60a9d16f build(deps): bump github.com/tetafro/godot from 1.4.10 to 1.4.11 (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2248 ">#2248</a>)
8c60147b build(deps): bump github.com/tetafro/godot from 1.4.9 to 1.4.10 (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2226 ">#2226</a>)
2fb65636 build(deps): bump github.com/tomarrell/wrapcheck/v2 from 2.3.0 to 2.3.1 (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2278 ">#2278</a>)
9bb917de build(deps): bump github.com/tomarrell/wrapcheck/v2 from 2.3.1 to 2.4.0 (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2324 ">#2324</a>)
59c7b10b build(deps): bump github.com/valyala/quicktemplate from 1.6.3 to 1.7.0 (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2250 ">#2250</a>)
5d4fe00f build(deps): bump golang.org/x/tools from 0.1.5 to 0.1.6 (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2245 ">#2245</a>)
91016acc build(deps): bump tmpl from 1.0.4 to 1.0.5 in /.github/peril (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2247 ">#2247</a>)
f47f4f55 codeql: Remove unneeded steps (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2336 ">#2336</a>)
413bec6a errcheck: empty selector name. (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2309 ">#2309</a>)
7fc2fe81 feat: add contextcheck linter (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2216 ">#2216</a>)
8cb9c769 fix: Add missing space in "disabled by config" warning (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2310 ">#2310</a>)
a8887d56 fix: don't hide enable-all option (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2338 ">#2338</a>)
cf9f3f95 fix: go.sum (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2262 ">#2262</a>)
2c01ea7f gocritic: add support for variable substitution in ruleguard path settings (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2308 ">#2308</a>)
cc262bba gosec: filter issues according to the severity and confidence (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2295 ">#2295</a>)
9b577fcb new-from-rev: add support for finding issues in entire files in a diff (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2264 ">#2264</a>)
2ea496f2 new-linter: ireturn (checks for function return type) (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2219 ">#2219</a>)
17d24ebd nlreturn: add block-size option (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2237 ">#2237</a>)</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="861262b71f
"><code>861262b</code></a> Add github.com/breml/bidichk linter (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2330 ">#2330</a>)</li>
<li><a href="77d4115b0f
"><code>77d4115</code></a> docs: add documentation for go-critic and ruleguard settings (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2304 ">#2304</a>)</li>
<li><a href="2c01ea7ff2
"><code>2c01ea7</code></a> gocritic: add support for variable substitution in ruleguard path settings (#...</li>
<li><a href="f9f6486e15
"><code>f9f6486</code></a> docs: change Github to GitHub in comments and docs (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2341 ">#2341</a>)</li>
<li><a href="1be9570abf
"><code>1be9570</code></a> Refactor: preallocate slices (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2340 ">#2340</a>)</li>
<li><a href="a8887d5655
"><code>a8887d5</code></a> fix: don't hide enable-all option (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2338 ">#2338</a>)</li>
<li><a href="f47f4f5557
"><code>f47f4f5</code></a> codeql: Remove unneeded steps (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2336 ">#2336</a>)</li>
<li><a href="8cb9c769ff
"><code>8cb9c76</code></a> fix: Add missing space in "disabled by config" warning (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2310 ">#2310</a>)</li>
<li><a href="a2b2968b12
"><code>a2b2968</code></a> build(deps): bump gatsby-plugin-robots-txt in /docs (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2332 ">#2332</a>)</li>
<li><a href="dcaaa894af
"><code>dcaaa89</code></a> build(deps): bump gatsby-remark-copy-linked-files in /docs (<a href="https://github-redirect.dependabot.com/golangci/golangci-lint/issues/2335 ">#2335</a>)</li>
<li>Additional commits viewable in <a href="https://github.com/golangci/golangci-lint/compare/v1.42.1...v1.43.0 ">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=github.com/golangci/golangci-lint&package-manager=go_modules&previous-version=1.42.1&new-version=1.43.0 )](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores )
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
3 years ago
M. J. Fromberger
01c43c153b
doc: Set up Dependabot on new backport branches. ( #7227 )
3 years ago
M. J. Fromberger
0de4aa1765
Fix spurious crasher in mempool fuzz test. ( #7190 )
We were creating a TestLogger without testing being initialized.
Switch to a no-op logger instead.
3 years ago
M. J. Fromberger
dc28734dad
pubsub: Remove uninformative publisher benchmarks. ( #7195 )
Prior to #7177 , these benchmarks did not provide any useful data about the
performance of the pubsub system (in fact, prior to #7178 , half of them did not
work at all).
Specifically, they create a bunch of subscribers with 1 buffer slot on a
default publisher and copy messages to them. But because the publisher is
single-threaded, and doesn't block for delivery, all this tested is how long it
takes to receive a single message from a channel and deliver it to another
channel. The resulting stat does not even vary meaningfully with batch size,
since it's testing a serial workload.
Since #7177 the benchmarks do correctly reflect delivery time (good), but still
do not tell us anything useful: The latencies that matter for pubsub are not
internal queuing, but the effects of backpressure on the publisher via the
subscribers. That's an integration problem, and simulating a fake workload does
not provide meaningful results.
On that basis, remove these benchmarks.
3 years ago
Sam Kleinman
6f08c14375
ci: update dependabot configuration ( #7204 )
I increased the chill of the github actions and NPM/docs dependencies,
and added default automerging of the go dependencies.
3 years ago
Sam Kleinman
ffcd347ef6
pex: allow disabled pex reactor ( #7198 )
This ensures the implementation respects disabling the pex reactor.
3 years ago
dependabot[bot]
279e8027d3
build(deps): Bump actions/checkout from 2.3.5 to 2.4.0 ( #7199 )
Bumps [actions/checkout](https://github.com/actions/checkout ) from 2.3.5 to 2.4.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/actions/checkout/releases ">actions/checkout's releases</a>.</em></p>
<blockquote>
<h2>v2.4.0</h2>
<ul>
<li>Convert SSH URLs like <code>org-<ORG_ID>@github.com:</code> to <code>https://github.com/ </code> - <a href="https://github-redirect.dependabot.com/actions/checkout/pull/621 ">pr</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="ec3a7ce113
"><code>ec3a7ce</code></a> set insteadOf url for org-id (<a href="https://github-redirect.dependabot.com/actions/checkout/issues/621 ">#621</a>)</li>
<li><a href="fd47087372
"><code>fd47087</code></a> codeql should analyze lib not dist (<a href="https://github-redirect.dependabot.com/actions/checkout/issues/620 ">#620</a>)</li>
<li><a href="3d677ac575
"><code>3d677ac</code></a> script to generate license info (<a href="https://github-redirect.dependabot.com/actions/checkout/issues/614 ">#614</a>)</li>
<li><a href="826ba42d6c
"><code>826ba42</code></a> npm audit fix (<a href="https://github-redirect.dependabot.com/actions/checkout/issues/612 ">#612</a>)</li>
<li><a href="eb8a193c1d
"><code>eb8a193</code></a> update dev dependencies and react to new linting rules (<a href="https://github-redirect.dependabot.com/actions/checkout/issues/611 ">#611</a>)</li>
<li><a href="c49af7ca1f
"><code>c49af7c</code></a> Create codeql-analysis.yml (<a href="https://github-redirect.dependabot.com/actions/checkout/issues/602 ">#602</a>)</li>
<li>See full diff in <a href="https://github.com/actions/checkout/compare/v2.3.5...v2.4.0 ">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=actions/checkout&package-manager=github_actions&previous-version=2.3.5&new-version=2.4.0 )](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores )
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
3 years ago
Sam Kleinman
e2b626fc92
node: cleanup construction ( #7191 )
3 years ago
Sam Kleinman
63192ac300
consensus: remove stale WAL benchmark ( #7194 )
3 years ago
dependabot[bot]
5bc9cb6260
build(deps): Bump github.com/rs/zerolog from 1.25.0 to 1.26.0 ( #7192 )
Bumps [github.com/rs/zerolog](https://github.com/rs/zerolog ) from 1.25.0 to 1.26.0.
- [Release notes](https://github.com/rs/zerolog/releases )
- [Commits](https://github.com/rs/zerolog/compare/v1.25.0...v1.26.0 )
---
updated-dependencies:
- dependency-name: github.com/rs/zerolog
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
3 years ago
M. J. Fromberger
d32913c889
pubsub: Use a dynamic queue for buffered subscriptions ( #7177 )
Updates #7156 , and a follow-up to #7070 .
Event subscriptions in Tendermint currently use a fixed-length Go
channel as a queue. When the channel fills up, the publisher
immediately terminates the subscription. This prevents slow
subscribers from creating memory pressure on the node by not
servicing their queue fast enough.
Replace the buffered channel used to deliver events to buffered
subscribers with an explicit queue. The queue provides a soft
quota and burst credit mechanism: Clients that usually keep up
can survive occasional bursts, without allowing truly slow
clients to hog resources indefinitely.
3 years ago
William Banfield
5599ec37bf
fuzz: remove fuzz cases for deleted code ( #7187 )
fuzz: remove fuzz cases for deleted code
3 years ago
Sam Kleinman
5cc980698a
mempool: consoldate implementations ( #7171 )
* mempool: consoldate implementations
* update chagelog
* fix test
* Apply suggestions from code review
Co-authored-by: M. J. Fromberger <michael.j.fromberger@gmail.com>
* cleanup locking comments
* context twiddle
* migrate away from deprecated ioutil APIs (#7175 )
Co-authored-by: Callum Waters <cmwaters19@gmail.com>
Co-authored-by: M. J. Fromberger <fromberger@interchain.io>
Co-authored-by: M. J. Fromberger <michael.j.fromberger@gmail.com>
Co-authored-by: Callum Waters <cmwaters19@gmail.com>
Co-authored-by: M. J. Fromberger <fromberger@interchain.io>
3 years ago
Sharad Chand
8441b3715a
migrate away from deprecated ioutil APIs ( #7175 )
Co-authored-by: Callum Waters <cmwaters19@gmail.com>
Co-authored-by: M. J. Fromberger <fromberger@interchain.io>
3 years ago