mirror of
https://github.com/OffchainLabs/prysm.git
synced 2026-02-19 09:14:29 -05:00
**What type of PR is this?** Documentation **What does this PR do? Why is it needed?** This PR adds a basic README for the specrefs. **Acknowledgements** - [x] I have read [CONTRIBUTING.md](https://github.com/prysmaticlabs/prysm/blob/develop/CONTRIBUTING.md). - [x] I have included a uniquely named [changelog fragment file](https://github.com/prysmaticlabs/prysm/blob/develop/CONTRIBUTING.md#maintaining-changelogmd). - [x] I have added a description with sufficient context for reviewers to understand this PR. - [x] I have tested that my changes work as expected and I added a testing plan to the PR description (if applicable).
Specification References
This directory contains specification reference tracking files managed by ethspecify.
Installation
Install ethspecify with the following command:
pipx install ethspecify
Note
You can run
ethspecify <cmd>in thespecrefsdirectory orethspecify <cmd> --path=specrefsfrom the project's root directory.
Maintenance
When adding support for a new specification version, follow these steps:
- Change directory into the
specrefsdirectory. - Update the version in
.ethspecify.ymlconfiguration. - Run
ethspecify processto update/populate specrefs. - Run
ethspecify checkto check specrefs. - If there are errors, use the error message as a guide to fix the issue. If
there are new specrefs with empty sources, implement/locate each item and
update each specref source list. If you choose not to implement an item,
add an exception to the appropriate section the the
.ethspecify.ymlconfiguration. - Repeat steps 3 and 4 until
ethspecify checkpasses. - Run
git diffto view updated specrefs. If an object/function/etc has changed, make the necessary updates to the implementation. - Lastly, in the project's root directory, run
act -j check-specrefsto ensure everything is correct.