Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/main' into hm/forest-tool-api-ge…
Browse files Browse the repository at this point in the history
…nerate-test-snapshot
  • Loading branch information
hanabi1224 committed Jan 9, 2025
2 parents 376ab9e + a253956 commit 9a410e2
Show file tree
Hide file tree
Showing 34 changed files with 21,262 additions and 14,291 deletions.
6 changes: 4 additions & 2 deletions .github/workflows/docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,14 +11,16 @@ on:
tags:
- "*"
paths-ignore:
- 'docs/'
- 'docs/**'
- '.github/workflows/docs-*.yml'
merge_group:
pull_request:
# This needs to be declared explicitly so that the job is actually
# run when moved out of draft.
types: [opened, synchronize, reopened, ready_for_review]
paths-ignore:
- 'docs/'
- 'docs/**'
- '.github/workflows/docs-*.yml'

env:
CI: 1
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/docs-check.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,15 +11,15 @@ on:
- main
paths:
- '**.md'
- '/docs'
- 'docs/**'
- '.github/workflows/docs-check.yml'
merge_group:
pull_request:
branches:
- main
paths:
- '**.md'
- '/docs'
- 'docs/**'
- '.github/workflows/docs-check.yml'

jobs:
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/docs-deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,14 @@ on:
branches:
- main
paths:
- '/docs'
- 'docs/**'
- '.github/workflows/docs-deploy.yml'
merge_group:
pull_request:
branches:
- main
paths:
- '/docs'
- 'docs/**'
- '.github/workflows/docs-deploy.yml'

permissions:
Expand All @@ -35,7 +35,7 @@ jobs:
# See https://github.com/actions/setup-node/issues/1027
# cache: yarn
- run: corepack enable
- run: yarn install --frozen-lockfile
- run: yarn --immutable
- run: yarn run build

- name: Deploy
Expand All @@ -44,4 +44,4 @@ jobs:
apiToken: ${{ secrets.CLOUDFLARE_PAGES_API_TOKEN }}
accountId: ${{ secrets.CLOUDFLARE_PAGES_ACCOUNT_ID }}
command: pages deploy ./docs/build --project-name=forest-docs
gitHubToken: ${{ secrets.GITHUB_TOKEN }}
gitHubToken: ${{ secrets.GITHUB_TOKEN }}
99 changes: 99 additions & 0 deletions .github/workflows/docs-required-override.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,99 @@
# This workflow is triggered by changes on the documentation. Normally, if only documentation is modified, the required Forest checks are not triggered which makes it impossible to merge the PR. See <https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/collaborating-on-repositories-with-code-quality-features/troubleshooting-required-status-checks#handling-skipped-but-required-checks>. The workaround is to provide no-op jobs that are triggered by the same events as the docs-check job. This way, the "required checks" are passing and the PR can be merged.
# We check that changes affect only the documentation and that no other changes are present. If this is the case, we trigger the no-op jobs.

name: Docs Required Override
concurrency:
group: '${{ github.workflow }}-${{ github.ref }}'
cancel-in-progress: '${{ github.ref != ''refs/heads/main'' }}'

on:
workflow_dispatch:
merge_group:
pull_request:
branches:
- main
paths:
- '**.md'
- 'docs/**'
- '.github/workflows/docs-*.yml'
push:
branches:
- main
paths:
- '**.md'
- 'docs/**'
- '.github/workflows/docs-*.yml'

jobs:
# We need this because merge groups dont support path filters
# https://github.com/community/community/discussions/45899
changes-docs:
runs-on: ubuntu-latest
outputs:
changesFound: ${{ steps.filter.outputs.changesFound }}
steps:
- uses: actions/checkout@v4
- uses: dorny/paths-filter@v3
id: filter
with:
filters: |
changesFound:
- 'docs/**'
- '**.md'
- '.github/workflows/docs-*.yml'
changes-not-docs:
runs-on: ubuntu-latest
outputs:
otherChangesFound: ${{ steps.filter.outputs.otherChangesFound }}
steps:
- uses: actions/checkout@v4
- uses: dorny/paths-filter@v3
id: filter
with:
predicate-quantifier: every
filters: |
otherChangesFound:
- '**'
- '!docs/**'
- '!**.md'
- '!.github/workflows/docs-*.yml'
override_integration_tests:
name: Integration tests status
runs-on: ubuntu-latest
needs:
- changes-docs
- changes-not-docs
if: ${{ (needs.changes-docs.outputs.changesFound == 'true') && (needs.changes-not-docs.outputs.otherChangesFound == 'false') }}
steps:
- run: echo "No-op job to trigger the required checks."

override_unit_tests:
name: tests
runs-on: ubuntu-latest
needs:
- changes-docs
- changes-not-docs
if: ${{ (needs.changes-docs.outputs.changesFound == 'true') && (needs.changes-not-docs.outputs.otherChangesFound == 'false') }}
steps:
- run: echo "No-op job to trigger the required checks."

override_unit_tests_release:
name: tests-release
runs-on: ubuntu-latest
needs:
- changes-docs
- changes-not-docs
if: ${{ (needs.changes-docs.outputs.changesFound == 'true') && (needs.changes-not-docs.outputs.otherChangesFound == 'false') }}
steps:
- run: echo "No-op job to trigger the required checks."

override_docker_build:
name: Build images and push to GHCR
runs-on: ubuntu-latest
needs:
- changes-docs
- changes-not-docs
if: ${{ (needs.changes-docs.outputs.changesFound == 'true') && (needs.changes-not-docs.outputs.otherChangesFound == 'false') }}
steps:
- run: echo "No-op job to trigger the required checks."
34 changes: 31 additions & 3 deletions .github/workflows/forest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,12 +9,14 @@ concurrency:
branches:
- main
paths-ignore:
- 'docs/'
- 'docs/**'
- '.github/workflows/docs-*.yml'
push:
branches:
- main
paths-ignore:
- 'docs/'
- 'docs/**'
- '.github/workflows/docs-*.yml'
schedule:
- cron: 0 0 * * *
env:
Expand Down Expand Up @@ -491,7 +493,7 @@ jobs:
name: 'forest-${{ runner.os }}'
- name: Run api compare tests
run: ./scripts/tests/api_compare/setup.sh
timeout-minutes: 120 # '${{ fromJSON(env.SCRIPT_TIMEOUT_MINUTES) }}'
timeout-minutes: '${{ fromJSON(env.SCRIPT_TIMEOUT_MINUTES) }}'
- name: Dump docker logs
if: always()
uses: jwalton/gh-docker-logs@v2
Expand Down Expand Up @@ -565,3 +567,29 @@ jobs:
- name: Dump docker logs
if: always()
uses: jwalton/gh-docker-logs@v2
# Umbrella job to aggregate all integration tests and get their status
integration-tests-status:
needs:
- build-macos
- build-ubuntu
- cargo-publish-dry-run
- forest-cli-check
- calibnet-check
- calibnet-stateless-mode-check
- state-migrations-check
- calibnet-wallet-check
- calibnet-export-check
- calibnet-no-discovery-checks
- calibnet-kademlia-checks
- calibnet-eth-mapping-check
- db-migration-checks
- db-migration-checks-car-db
- local-devnet-check
- local-devnet-curio-check
- calibnet-rpc-checks
- bootstrap-checks-forest
- bootstrap-checks-lotus
name: Integration tests status
runs-on: ubuntu-24.04
steps:
- run: echo "All integration tests passed."
6 changes: 4 additions & 2 deletions .github/workflows/unit-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,12 +15,14 @@ on:
# run when moved out of draft.
types: [opened, synchronize, reopened, ready_for_review]
paths-ignore:
- 'docs/'
- 'docs/**'
- '.github/workflows/docs-*.yml'
push:
branches:
- main
paths-ignore:
- 'docs/'
- 'docs/**'
- '.github/workflows/docs-*.yml'
schedule:
- cron: "0 0 * * *"

Expand Down
10 changes: 10 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,12 +29,19 @@

### Added

- [#4708](https://github.com/ChainSafe/forest/issues/4708) Add support for the
`Filecoin.EthTraceBlock` RPC method.

### Changed

### Removed

### Fixed

- [#5111](https://github.com/ChainSafe/forest/issues/5111) Make F3 work when the node Kademlia is disabled.

- [#5122](https://github.com/ChainSafe/forest/issues/5122) Fix a bug in database garbage collection flow.

## Forest v.0.23.3 "Plumber"

Mandatory release for calibnet node operators. It fixes a sync error at epoch 2281645.
Expand All @@ -46,6 +53,9 @@ Mandatory release for calibnet node operators. It fixes a sync error at epoch 22
- [#5020](https://github.com/ChainSafe/forest/issues/5020) Add support for the
`Filecoin.EthGetTransactionByBlockNumberAndIndex` RPC method.

- [#4907](https://github.com/ChainSafe/forest/issues/4907) Add support for the
`Filecoin.StateMinerInitialPledgeForSector` RPC method.

### Changed

### Removed
Expand Down
8 changes: 4 additions & 4 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ forward to your contributions. 🎉
## I Have a Question

> If you want to ask a question, we assume that you have read the available
> [Documentation](https://forest-docs-v2.pages.dev/).
> [Documentation](https://docs.forest.chainsafe.io/).
Before you ask a question, it is best to search for existing
[Issues](https://github.com/ChainSafe/forest/issues) or
Expand Down Expand Up @@ -82,7 +82,7 @@ steps in advance to help us fix any potential bug as fast as possible.
- Make sure that you are using the latest version.
- Determine if your bug is really a bug and not an error on your side e.g. using
incompatible environment components/versions (Make sure that you have read the
[documentation](https://forest-docs-v2.pages.dev/). If you are looking for
[documentation](https://docs.forest.chainsafe.io/). If you are looking for
support, you might want to check [this section](#i-have-a-question)).
- To see if other users have experienced (and potentially already solved) the
same issue you are having, check if there is not already a bug report existing
Expand Down Expand Up @@ -143,7 +143,7 @@ community to understand your suggestion and find related suggestions.
#### 🎯 Before Submitting an Enhancement

- Make sure that you are using the latest version.
- Read the [documentation](https://forest-docs-v2.pages.dev/) carefully and find
- Read the [documentation](https://docs.forest.chainsafe.io/) carefully and find
out if the functionality is already covered, maybe by an individual
configuration.
- Perform a [search](https://github.com/ChainSafe/forest/issues) to see if the
Expand Down Expand Up @@ -225,7 +225,7 @@ eternally grateful and hope you will continue to contribute to the project.
### 📚 Improving The Documentation

The documentation is currently hosted on
[forest-docs-v2.pages.dev](https://forest-docs-v2.pages.dev/). If you find any
[docs.forest.chainsafe.io](https://docs.forest.chainsafe.io/). If you find any
issues with the documentation, please create an issue as the repository is not
public yet.

Expand Down
16 changes: 16 additions & 0 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 2 additions & 0 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,7 @@ ez-jsonrpc-types = "0.5"
fil_actor_account_state = { version = "19" }
fil_actor_cron_state = { version = "19" }
fil_actor_datacap_state = { version = "19" }
fil_actor_eam_state = { version = "19" }
fil_actor_evm_state = { version = "19" }
fil_actor_init_state = { version = "19" }
fil_actor_market_state = { version = "19" }
Expand Down Expand Up @@ -227,6 +228,7 @@ ariadne = "0.5"
assert_cmd = "2"
bimap = "0.6"
cargo_metadata = "0.19"
cbor4ii = { version = "0.2", default-features = false, features = ["serde1"] }
criterion = { version = "0.5", features = ["async_tokio", "csv"] }
cs_serde_bytes = "0.12"
derive-quickcheck-arbitrary = "0.1"
Expand Down
Loading

0 comments on commit 9a410e2

Please sign in to comment.