Skip to content

feat: add spec references, a mapping of spec to implementation #4

feat: add spec references, a mapping of spec to implementation

feat: add spec references, a mapping of spec to implementation #4

Workflow file for this run

name: Check Spec References
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
on:
push:
branches: [unstable, stable]
pull_request:
workflow_dispatch:
jobs:
check-specrefs:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Check version consistency
run: |
SPEC_TEST_VERSION=$(grep 'specVersion:' packages/beacon-node/test/spec/specTestVersioning.ts | head -1 | sed 's/.*specVersion: "\(.*\)".*/\1/')
ETHSPECIFY_VERSION=$(grep '^version:' specrefs/.ethspecify.yml | sed 's/version: //')
if [ "$SPEC_TEST_VERSION" != "$ETHSPECIFY_VERSION" ]; then
echo "Version mismatch between specTestVersioning.ts and ethspecify"
echo " packages/beacon-node/test/spec/specTestVersioning.ts: $SPEC_TEST_VERSION"
echo " specrefs/.ethspecify.yml: $ETHSPECIFY_VERSION"
exit 1
else
echo "Versions match: $SPEC_TEST_VERSION"
fi
- name: Install ethspecify
run: python3 -mpip install ethspecify
- name: Update spec references
run: ethspecify process --path=specrefs
- name: Check for differences
run: |
if ! git diff --exit-code -- specrefs >/dev/null; then
echo "Spec references are out-of-date!"
echo ""
git --no-pager diff -- specrefs
exit 1
else
echo "Spec references are up-to-date!"
fi
- name: Check spec references
run: ethspecify check --path=specrefs