Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make the switch to docc #833

Merged
merged 13 commits into from
Jan 9, 2024
Merged
Show file tree
Hide file tree
Changes from 12 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
65 changes: 47 additions & 18 deletions .github/workflows/gh-pages.yaml
Original file line number Diff line number Diff line change
@@ -1,28 +1,57 @@
name: GitHub Pages
name: render

on: [push, pull_request, workflow_dispatch]
on:
push:
branches:
- master
workflow_dispatch:
pull_request:

jobs:
build-and-deploy:
runs-on: ubuntu-latest
build:
name: "Build Documentation"
runs-on: "ubuntu-latest"

steps:
- name: Setup Python
uses: actions/setup-python@v2
- uses: actions/checkout@v3
with:
python-version: "3.8"
fetch-depth: 0
submodules: recursive

- name: Checkout
uses: actions/[email protected]
- name: Setup Python
uses: actions/setup-python@v4
with:
python-version: "3.10"

- name: Install Tox and any other packages
run: pip install tox
- name: Install Tox
run: pip install tox-gh

- name: Sphinx
run: tox -e doc
- name: Build Documentation
run: |
tox -e doc
touch .tox/docs/.nojekyll

- name: Deploy
if: ${{ github.event_name == 'push' && ( github.ref == 'refs/heads/master' || github.ref == 'refs/heads/pyspec') }}
uses: JamesIves/github-pages-[email protected]
- name: Upload Pages Artifact
id: artifact
uses: actions/upload-pages-artifact@v2
with:
branch: gh-pages
folder: .tox/docs/stage1_out
path: .tox/docs

deploy:
needs: build
runs-on: ubuntu-latest
name: "Deploy Documentation"
if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/master' }}

permissions:
pages: write
id-token: write

environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}

steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v2
39 changes: 24 additions & 15 deletions .github/workflows/test.yaml
Original file line number Diff line number Diff line change
@@ -1,41 +1,50 @@
name: Python Specification

on: [push, pull_request, workflow_dispatch]
on:
push:
branches:
- master
workflow_dispatch:
pull_request:

jobs:
build:
runs-on: self-hosted
strategy:
matrix:
python: [3.8, pypy-3.8]
py: [ "3.10", "pypy3.10" ]

steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
with:
submodules: recursive

- name: Install Rust
uses: actions-rs/toolchain@v1
with:
toolchain: "1.69.0"
override: true

- name: Setup Python
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python }}
python-version: ${{ matrix.py }}

- name: Install Tox and any other packages
run: pip install tox requests
run: pip install tox-gh>=1.3 requests

- name: Download Geth and add to $PATH
run: |
mkdir -p $GITHUB_WORKSPACE/bin
$GITHUB_WORKSPACE/scripts/download_geth_linux.py --dir $GITHUB_WORKSPACE/bin
echo $GITHUB_WORKSPACE/bin >> $GITHUB_PATH
- name: Run Tox (PyPy)
if: ${{ matrix.python == 'pypy-3.8' }}
run: tox -e pypy3
- name: Run Tox (CPython)
if: ${{ matrix.python != 'pypy-3.8' }}
run: tox -e py3

- name: Run Tox
run: tox

- name: Upload coverage to Codecov
if: ${{ matrix.python != 'pypy-3.8' }}
if: "${{ !startsWith(matrix.py, 'pypy') }}"
uses: codecov/codecov-action@v1
with:
files: .tox/coverage.xml
flags: unittests
- name: Run Tox (optimized state/ethash)
if: ${{ matrix.python != 'pypy-3.8' }}
run: tox -e optimized
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@ pip-delete-this-directory.txt
.tox/

/doc/_autosummary
/docs

.coverage

Expand All @@ -55,4 +56,4 @@ pip-delete-this-directory.txt

tests/execution-spec-generated-tests
tests/fixtures
tests/t8n_testdata
tests/t8n_testdata
16 changes: 4 additions & 12 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

## Description

This repository contains the consensus specifications related to the Ethereum execution client, specifically the [pyspec](/src/ethereum/frontier/fork.py) and specifications for [network upgrades](/network-upgrades). The [JSON-RPC API specification](https://github.com/ethereum/execution-apis) can be found in a separate repository.
This repository contains the specifications related to the Ethereum execution client, specifically the [pyspec](/src/ethereum/frontier/fork.py) and specifications for [network upgrades](/network-upgrades). The [JSON-RPC API specification](https://github.com/ethereum/execution-apis) can be found in a separate repository.

### Ethereum Protocol Releases

Expand Down Expand Up @@ -39,17 +39,17 @@ Some clarifications were enabled without protocol releases:
| [EIP-2681](https://eips.ethereum.org/EIPS/eip-2681) | 0 |
| [EIP-3607](https://eips.ethereum.org/EIPS/eip-3607) | 0 |

## Consensus Specification (work-in-progress)
## Execution Specification (work-in-progress)

The consensus specification is a python implementation of Ethereum that prioritizes readability and simplicity. It [will] accompanied by both narrative and API level documentation of the various components written in restructured text and rendered using Sphinx....
The execution specification is a python implementation of Ethereum that prioritizes readability and simplicity. It will accompanied by both narrative and API level documentation of the various components written in markdown and rendered using docc...

* [Rendered specification](https://ethereum.github.io/execution-specs/)

## Usage

The Ethereum specification is maintained as a Python library, for better integration with tooling and testing.

Requires Python 3.8+
Requires Python 3.10+

### Building

Expand All @@ -61,14 +61,6 @@ $ tox -e doc

The path to the generated HTML will be printed to the console.

#### Live Preview

A live preview of the documentation can be viewed locally on port `8000` with the following command:

```bash
$ tox -e doc-autobuild
```

# License

The Ethereum Execution Layer Specification code is licensed under the [Creative Commons Zero v1.0 Universal](https://github.com/ethereum/execution-specs/blob/master/LICENSE.md).
117 changes: 0 additions & 117 deletions doc/_static/css/custom.css

This file was deleted.

Loading
Loading