From 63dc9f5c5e2523d78f5af2aeee3a526083d423af Mon Sep 17 00:00:00 2001 From: Jeremy Lau <30300826+fdxmw@users.noreply.github.com> Date: Thu, 11 Apr 2024 07:37:31 -0700 Subject: [PATCH] Upgrade GitHub actions to latest versions to fix deprecation warnings Also: - Add more documentation links to README - Clean up requirements.txt --- .github/workflows/python-release.yml | 5 +- .github/workflows/python-test.yml | 10 +- README.md | 185 ++++++++++++++++++--------- docs/images/gcd-graph.png | Bin 0 -> 85012 bytes requirements.txt | 3 +- 5 files changed, 132 insertions(+), 71 deletions(-) create mode 100644 docs/images/gcd-graph.png diff --git a/.github/workflows/python-release.yml b/.github/workflows/python-release.yml index 230097f8..18d9b872 100644 --- a/.github/workflows/python-release.yml +++ b/.github/workflows/python-release.yml @@ -20,7 +20,7 @@ jobs: steps: - uses: actions/checkout@v4 - name: Set up Python - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 with: python-version: "3.x" - name: Install pypa/build @@ -28,10 +28,11 @@ jobs: - name: Build distribution archives run: python3 -m build - name: Upload distribution archives - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: python-distribution-archives path: dist/ + compression-level: 0 # Publish distribution archive to TestPyPI on tag pushes. publish-to-testpypi: diff --git a/.github/workflows/python-test.yml b/.github/workflows/python-test.yml index 5f436b95..7252fc9b 100644 --- a/.github/workflows/python-test.yml +++ b/.github/workflows/python-test.yml @@ -14,14 +14,14 @@ jobs: steps: - uses: actions/checkout@v4 - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} - name: Install dependencies - run: | - python -m pip install --upgrade pip - pip install tox tox-gh-actions + run: python3 -m pip install tox tox-gh-actions - name: Test with tox run: tox - name: Upload coverage to Codecov - uses: codecov/codecov-action@v3 + uses: codecov/codecov-action@v4 + env: + CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} diff --git a/README.md b/README.md index 8def9ca6..7cdd487c 100644 --- a/README.md +++ b/README.md @@ -2,95 +2,156 @@ PyRTL ===== [![PyPI version](https://badge.fury.io/py/pyrtl.svg)](http://badge.fury.io/py/pyrtl) -[![Build Status](https://github.com/UCSBarchlab/PyRTL/actions/workflows/python-package.yml/badge.svg)](https://github.com/UCSBarchlab/PyRTL/actions) +[![Build Status](https://github.com/UCSBarchlab/PyRTL/actions/workflows/python-test.yml/badge.svg)](https://github.com/UCSBarchlab/PyRTL/actions/workflows/python-test.yml) [![Code Coverage](https://codecov.io/github/UCSBarchlab/PyRTL/coverage.svg?branch=development)](https://codecov.io/github/UCSBarchlab/PyRTL?branch=development) [![Documentation Status](https://readthedocs.org/projects/pyrtl/badge/?version=latest)](http://pyrtl.readthedocs.org/en/latest/?badge=latest) [![Binder](https://mybinder.org/badge.svg)](https://mybinder.org/v2/gh/UCSBarchlab/PyRTL/development?filepath=%2Fipynb-examples%2F) -PyRTL provides a collection of classes for pythonic [register-transfer level](https://en.wikipedia.org/wiki/Register-transfer_level) design, simulation, tracing, and testing -suitable for teaching and research. Simplicity, usability, clarity, and extensibility rather than -performance or optimization is the overarching goal. Features include: +PyRTL provides a collection of classes for pythonic [register-transfer +level](https://en.wikipedia.org/wiki/Register-transfer_level) design, +simulation, tracing, and testing suitable for teaching and research. +Simplicity, usability, clarity, and extensibility rather than performance or +optimization is the overarching goal. Features include: -* Elaboration-through-execution, meaning all of Python can be used including introspection +* Elaboration-through-execution, meaning all of Python can be used including + introspection * Design, instantiate, and simulate all in one file and without leaving Python -* Export to, or import from, common HDLs (BLIF-in, Verilog-out currently supported) -* Examine execution with waveforms on the terminal or export to a .vcd as projects scale +* Export to, or import from, common HDLs (BLIF-in, Verilog-out currently + supported) +* Examine execution with waveforms on the terminal or export to `.vcd` as + projects scale * Elaboration, synthesis, and basic optimizations all included -* Small and well-defined internal core structure means writing new transforms is easier -* Batteries included means many useful components are already available and more are coming every week +* Small and well-defined internal core structure means writing new transforms + is easier +* Batteries included means many useful components are already available and + more are coming every week -What README would be complete without a screenshot? Below you can see the waveform rendered right on the terminal for a small state machine written in PyRTL. +What README would be complete without a screenshot? Below you can see the +waveform rendered right on the terminal for a small state machine written in +PyRTL. ![Command-line waveform for PyRTL state machine]( docs/screenshots/pyrtl-statemachine.png?raw=true "PyRTL State Machine Screenshot") -For users, more info and demo code is available on the [PyRTL project web page](http://ucsbarchlab.github.io/PyRTL/). +### Tutorials and Documentation -### Package Contents - -If you are just getting started with PyRTL it is suggested that you start with the examples first -to get a sense of the "thinking with pyrtls" required to design hardware in this way. If you are looking -for a deeper understanding, dive into the code for the object `Block`. It is the core data structure at the heart of -PyRTL and defines its semantics at a high level -- everything is converted to or from the small, simple set of -primitives defined there. +* For users, more info and demo code is available on the [PyRTL project web + page](http://ucsbarchlab.github.io/PyRTL/). +* Try the examples in the `examples/` directory. You can also [try the examples + on + MyBinder](https://mybinder.org/v2/gh/UCSBarchlab/PyRTL/development?filepath=%2Fipynb-examples%2F). +* Full reference documentation is available at https://pyrtl.readthedocs.io/ -In the package you should find the following files and Directories -* **pyrtl/** The src directory for the module -* **pyrtl/rtllib/** Finished PyRTL libraries which are hopefully both useful and documented -* **examples/** A set of hardware design examples that show the main idea behind pyrtl -* **tests/** A set of unit tests for PyRTL which you can run with `pytest` -* **docs/** Location of the sphinx documentation +### Package Contents -Testing requires the packages `tox` and `pytest`. Once installed a complete test of the system should be possible with the simple command `tox` and nothing more. +If you are just getting started with PyRTL it is suggested that you start with +the `examples` first to get a sense of the "thinking with PyRTLs" required to +design hardware in this way. If you are looking for a deeper understanding, +dive into the code for the object `Block`. It is the core data structure at the +heart of PyRTL and defines its semantics at a high level -- everything is +converted to or from the small, simple set of primitives defined there. + +The package contains the following files and directories: +* **`pyrtl/`** The src directory for the module +* **`pyrtl/rtllib/`** Finished PyRTL libraries which are hopefully both useful + and documented +* **`examples/`** A set of hardware design examples that show the main idea + behind pyrtl +* **`tests/`** A set of unit tests for PyRTL which you can run with `pytest` +* **`docs/`** Location of the sphinx documentation + +Testing requires the Python packages `tox` and `pytest`. Once installed a +complete test of the system should be possible with the simple command `tox` +and nothing more. ### Contributing to PyRTL *Picking a first project* -* One of the earliest things you should submit is a unit test that hits some [uncovered lines of code in PyRTL](https://codecov.io/github/UCSBarchlab/PyRTL?branch=development). For example, pick a PyrtlError that is not covered and add a unit test in /tests that will hit it. -* After you have that down check in the [PyRTL Issues](https://github.com/UCSBarchlab/PyRTL/issues) list for a feature that is marked as "beginner friendly". -* Once you have that down, ask for access to the PyRTL-research repo where we keep a list of more advanced features and designs that could use more help! +* One of the earliest things you should submit is a unit test that hits some + [uncovered lines of code in + PyRTL](https://codecov.io/github/UCSBarchlab/PyRTL?branch=development). For + example, pick a `PyrtlError` that is not covered and add a unit test in + `/tests` that will hit it. +* After you have that down check in the [PyRTL + Issues](https://github.com/UCSBarchlab/PyRTL/issues) list for a feature that + is marked as "beginner friendly". +* Once you have that down, ask for access to the PyRTL-research repo where we + keep a list of more advanced features and designs that could use more help! *Coding style* -* All major functionality should have set of unit tests covering and documenting their use +* All major functionality should have unit tests covering and documenting their + use * All public functions and methods should have useful docstrings -* All code needs to conform to [PEP8](https://www.python.org/dev/peps/pep-0008/) conventions -* No new root-level dependencies on external libs, import locally if required for special functions +* All code needs to conform to + [PEP8](https://www.python.org/dev/peps/pep-0008/) conventions +* No new root-level dependencies on external libs, import locally if required + for special functions *Workflow* -* A useful reference for working with Git is this [Git tutorial](https://www.atlassian.com/git/tutorials/) -* A useful Git Fork workflow for working on this repo is [found here](http://blog.scottlowe.org/2015/01/27/using-fork-branch-git-workflow/) -* The "master" branch should always be stable and is updated only on major revisions (with a merge from "development" by the core development team) -* The "development" branch is the primary stable working branch (everyone is invited to submit pull requests) -* Bugs and minor enhancements tracked directly through the [issue tracker](https://github.com/UCSBarchlab/PyRTL/issues) -* When posting a bug please post a small chunk of code that captures the bug, e.g. [Issue #56](https://github.com/UCSBarchlab/PyRTL/issues/56) -* When pushing a fix to a bug or enhancement please reference issue number in commit message, e.g. [Fix to Issue #56](https://github.com/UCSBarchlab/PyRTL/commit/1d5730db168a9e4490c580cb930075715468047a) +* A useful reference for working with Git is this [Git + tutorial](https://www.atlassian.com/git/tutorials/) +* A useful Git Fork workflow for working on this repo is [found + here](http://blog.scottlowe.org/2015/01/27/using-fork-branch-git-workflow/) +* The "development" branch is the primary stable working branch (everyone is + invited to submit pull requests) +* Bugs and minor enhancements tracked directly through the [issue + tracker](https://github.com/UCSBarchlab/PyRTL/issues) +* When posting a bug please post a small chunk of code that captures the bug, + e.g. [Issue #56](https://github.com/UCSBarchlab/PyRTL/issues/56) +* When pushing a fix to a bug or enhancement please reference issue number in + commit message, e.g. [Fix to Issue + #56](https://github.com/UCSBarchlab/PyRTL/commit/1d5730db168a9e4490c580cb930075715468047a) *Documentation* -* All important functionality, for both /pyrtl and /rtlib, should have an executable example in /examples -* All classes should have a block comment with high level description of the class -* All functions in /pyrtl or /rtllib should follow the following (sphynx parsable) docstring format: -```python -""" One Line Summary (< 80 chars) on what the function does, followed by period. - -:param [optional param type] param_name : parameter description -:param [optional param type] param_name : Longer parameter descriptions take up a newline - with two leading spaces like this -:return [optional return type]: return description - -A long description of what this function does. Talk about what the user should expect from this function -and also what the users needs to do to use the function (this part is optional) -""" - -# Developer Notes (Optional): -# These would be anything that the user does not need to know in order to use the functions. -# Such things include internal workings of the function, the logic behind it, how to extend -# it (unless the function was mainly intended to be extended). -``` - -### Using PyRTL -We love to hear from users about their projects, and if there are issues we will try our best to push fixes quickly. You can read more about how we have been using it in our research at UCSB both in simulation and on FPGAs in [our PyRTL paper at FPL](http://www.cs.ucsb.edu/~sherwood/pubs/FPL-17-pyrtl.pdf). + +* All important functionality should have an executable example in `examples/` +* All classes should have a block comment with high level description of the + class +* All functions should follow the following (Sphinx parsable) docstring format: + ```python + """One Line Summary (< 80 chars) of the function, followed by period. + + :param param_name : Description of this parameter. + :param param_name : Longer parameter descriptions take up a newline with four + leading spaces like this. + :return: Description of function's return value. + + A long description of what this function does. Talk about what the user + should expect from this function and also what the users needs to do to use + the function (this part is optional). + + """ + + # Developer Notes (Optional): + # + # These would be anything that the user does not need to know in order to use + # the functions. + # These notes can include internal workings of the function, the logic behind + # it, or how to extend it. + ``` +* Sphinx parses [Python type + annotations](https://docs.python.org/3/library/typing.html), so put type + information into annotations instead of docstrings. +* The Sphinx-generated documentation is published to + https://pyrtl.readthedocs.io/ +* PyRTL's Sphinx build process is documented in + [`docs/README.md`](docs/README.md). +* PyRTL's release process is documented in + [`release/README.md`](release/README.md). + +### Using PyRTL + +We love to hear from users about their projects, and if there are issues we +will try our best to push fixes quickly. You can read more about how we have +been using it in our research at UCSB both in simulation and on FPGAs in [our +PyRTL paper at FPL](http://www.cs.ucsb.edu/~sherwood/pubs/FPL-17-pyrtl.pdf). ### Related Projects -It is always important to point out that PyRTL builds on the ideas of several other related projects as we all share the common goal of trying to make hardware design a better experience! You can read more about those relationships on our [PyRTL project web page](http://ucsbarchlab.github.io/PyRTL/). + +It is always important to point out that PyRTL builds on the ideas of several +other related projects as we all share the common goal of trying to make +hardware design a better experience! You can read more about those +relationships on our [PyRTL project web +page](http://ucsbarchlab.github.io/PyRTL/). diff --git a/docs/images/gcd-graph.png b/docs/images/gcd-graph.png new file mode 100644 index 0000000000000000000000000000000000000000..f8985ff9d2e5ab6fcdacdbb96b00e4eb7f13e6d7 GIT binary patch literal 85012 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 IY8>$Y04JKVKL7v# literal 0 HcmV?d00001 diff --git a/requirements.txt b/requirements.txt index 04d91b3d..6472fa5b 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,5 +1,4 @@ -astroid -pep8 +pycodestyle pylint pyparsing pytest