From 766acac61411bfdbd811bdb57d3b44461e6e4e05 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?St=C3=A9phane=20Duchesneau?= Date: Fri, 26 Apr 2024 11:04:13 -0400 Subject: [PATCH] bump README and CHANGELOG --- CHANGELOG.md | 16 ++++++++++++++++ README.md | 51 +++++++++++++++++++++++++++++++++++++++++---------- 2 files changed, 57 insertions(+), 10 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 886813a..ab366a3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,22 @@ Operators, you should copy/paste content of this content straight to your projec If you were at `firehose-core` version `1.0.0` and are bumping to `1.1.0`, you should copy the content between those 2 version to your own repository, replacing placeholder value `fire{chain}` with your chain's own binary. +## v1.3.7 + +### Fixed + +* Fixed possible race condition in the blockPoller +* Fix relayer waiting too long to fail when reconnecting to a single source (especially on slow chains). It will now fail right away if it receives an unlinkable block and has a single source configured. +* Fixed skipped block handling and performance issues on blockPoller + +### Changed + +* The `--block-type` flag got renamed to `--substreams-tier1-block-type`. Specifying it will make substreams-tier1 skip the block type discovery (from files or live stream) on startup, getting ready faster. + +### Added + +* Logs now print the "x-deployment-id" header on firehose connections (used to propagate subgraph deployment ids from graph-node and help debugging) + ## v1.3.6 * bump substreams to v1.5.5 with fix in wazero to prevent process freezing on certain substreams diff --git a/README.md b/README.md index 55e702d..6e7be44 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,46 @@ -## Firehose Integrators Tool Kit +## Firehose multi-chain executor -This repository contains all the code that is required to maintain the Golang part of the Firehose stack for chain integrators. This repository can be seen as an Integrator Tool Kit for developers maintaining Firehose for a specific chain. It's essentially a chain-agnostic shared library that is used to avoid duplication across all projects and ease maintenance work for the teams. It contains **no** chain-specific code and everything that is chain-specific must be provided. +This repository contains all the base components of [Firehose](https://firehose.streamingfast.io/) and run the software for multiple block chains (Bitcoin, Solana, ...) or be used as a library (firehose-ethereum, firehose-antelope) + +## Compiling + +* `go install -v ./cmd/firecore` + +Or download the latest Release from https://github.com/streamingfast/firehose-core/releases/ + +## Running directly + +* firehose-core can run one or many of the following components: + - reader-node + - merger + - relayer + - firehose + - substreams-tier1 + - substreams-tier2 + - (reader-node-stdin -- not run by default) + +* You can use a config file like this (default: `firehose.yaml`) + +``` +start: + args: + - reader-node + - merger + flags: + reader-node-path: "/usr/local/bin/firesol" + reader-node-args: ["fetch", "rpc", "http://localhost:8545", "0"] +``` + +* Run it with `firecore start --config-file=./firehose.yaml` or set an empty value for config-file (`--config-file=`) to use the default values. + + +## Using as a library + +For chains that implement "firehose block filters" and extensions like "eth_call", this repository can be used as a library for those implementations, like these: + +* [firehose-ethereum](https://github.com/streamingfast/firehose-ethereum) +* [firehose-antelope](https://github.com/pinax-network/firehose-antelope) -> **Note** This repository is **only** useful for maintainers of `firehose-` repositories and new integrators looking to integrate Firehose into a new chain. If you are a developer using Firehose or Substreams technology, this repository is not for you. ### Philosophy @@ -24,13 +62,6 @@ Maintainers, you should copy/paste content of this content straight to your proj The bash command `awk '/## v0.1.11/,/## v0.1.8/' CHANGELOG.md | grep -v '## v0.1.8'` to obtain the content between 2 versions. You can then merged the different `Added`, `Changed`, `Removed` and others into single merged section. -> [!NOTE] -> At some point will provide a tool to easily generate the change for you so you can simply copy it over. - ### Update When bumping `firehose-core` to a breaking version, details of such upgrade will be described in [UPDATE.md](./UPDATE.md). Breaking version can be be noticed currently if the minor version is bumped up, for example going from v0.1.11 to v0.2.0 introduces some breaking changes. Once we will release the very first major version 1, breaking changes will be when going from v0.y.z to v1.0.0. - -### Build & CI - -The build and CI files are maintained for now in https://github.com/streamingfast/firehose-acme directly and should be updated manually from time to time from there.