Skip to content

Commit

Permalink
bump README and CHANGELOG
Browse files Browse the repository at this point in the history
  • Loading branch information
sduchesneau committed Apr 26, 2024
1 parent f4b86ff commit 766acac
Show file tree
Hide file tree
Showing 2 changed files with 57 additions and 10 deletions.
16 changes: 16 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
51 changes: 41 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
@@ -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-<chain>` 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

Expand All @@ -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.

0 comments on commit 766acac

Please sign in to comment.