meta: update pyproject.toml
This commit is contained in:
parent
77b329438a
commit
91d2f80dcc
|
|
@ -8,22 +8,18 @@ jobs:
|
||||||
|
|
||||||
- name: Install Manta from source
|
- name: Install Manta from source
|
||||||
run: |
|
run: |
|
||||||
# Make venv
|
# Omitting the following command causes the version of setuptools
|
||||||
python3 -m venv venv/
|
|
||||||
source venv/bin/activate
|
|
||||||
|
|
||||||
# Update pip
|
|
||||||
python3 -m pip install -U pip
|
|
||||||
|
|
||||||
# omitting the following command causes the version of setuptools
|
|
||||||
# used by python to get confused, and it doesn't detect the name
|
# used by python to get confused, and it doesn't detect the name
|
||||||
# or version of the package from pyproject.toml - so the following
|
# or version of the package from pyproject.toml - so the following
|
||||||
# workaround is used:
|
# workaround is used:
|
||||||
# https://github.com/pypa/setuptools/issues/3269#issuecomment-1254507377
|
# https://github.com/pypa/setuptools/issues/3269#issuecomment-1254507377
|
||||||
export DEB_PYTHON_INSTALL_LAYOUT=deb_system
|
export DEB_PYTHON_INSTALL_LAYOUT=deb_system
|
||||||
|
|
||||||
# Install Manta, with optional dev-only dependencies
|
python3 -m venv venv/
|
||||||
|
source venv/bin/activate
|
||||||
|
python3 -m pip install -U pip
|
||||||
python3 -m pip install -e ".[dev]"
|
python3 -m pip install -e ".[dev]"
|
||||||
|
python3 -m pip install git+https://github.com/amaranth-lang/amaranth-boards.git
|
||||||
|
|
||||||
- name: Run pre-commit against all files
|
- name: Run pre-commit against all files
|
||||||
run: |
|
run: |
|
||||||
|
|
@ -36,7 +32,8 @@ jobs:
|
||||||
source venv/bin/activate
|
source venv/bin/activate
|
||||||
make test
|
make test
|
||||||
|
|
||||||
- uses: actions/upload-artifact@v4
|
- name: Upload coverate reports
|
||||||
|
uses: actions/upload-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: coverage_reports
|
name: coverage_reports
|
||||||
include-hidden-files: true
|
include-hidden-files: true
|
||||||
|
|
|
||||||
|
|
@ -28,7 +28,13 @@ pip install -e ".[dev]"
|
||||||
pre-commit install
|
pre-commit install
|
||||||
```
|
```
|
||||||
|
|
||||||
Manta's hardware-in-the-loop tests rely on Amaranth's build system for programming FPGAs, which in turn rely on the open-source `xc3sprog` and `iceprog` tools for programming Xilinx and ice40 devices, respectively. If you'd like to run these tests locally, you may need to install these tools and have them available on your `PATH`.
|
Manta's hardware-in-the-loop tests rely on Amaranth's build system for programming FPGAs, which in turn relies on the `amaranth-boards` Python package. This package is not available on PyPI, and must be installed manually with:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
pip install git+https://github.com/amaranth-lang/amaranth-boards.git
|
||||||
|
```
|
||||||
|
|
||||||
|
The build system also uses the open-source `xc3sprog` and `iceprog` tools for programming Xilinx and ice40 devices, respectively. If you'd like to run these tests locally, you may need to install these tools and have them available on your `PATH`.
|
||||||
|
|
||||||
If you're on Linux, you may also need to add a new udev rule to give non-superuser accounts access to any connected FTDI devices. This can be done by making a new file at `/etc/udev/rules.d/99-ftdi-devices.rules`, which contains:
|
If you're on Linux, you may also need to add a new udev rule to give non-superuser accounts access to any connected FTDI devices. This can be done by making a new file at `/etc/udev/rules.d/99-ftdi-devices.rules`, which contains:
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,7 @@ authors = [
|
||||||
description = "A configurable and approachable tool for FPGA debugging and rapid prototyping"
|
description = "A configurable and approachable tool for FPGA debugging and rapid prototyping"
|
||||||
readme = "README.md"
|
readme = "README.md"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"amaranth[builtin-yosys]==0.5.0",
|
"amaranth[builtin-yosys]>=0.5.0",
|
||||||
"PyYAML",
|
"PyYAML",
|
||||||
"pyserial",
|
"pyserial",
|
||||||
"liteeth==2023.12",
|
"liteeth==2023.12",
|
||||||
|
|
@ -15,6 +15,8 @@ dependencies = [
|
||||||
]
|
]
|
||||||
|
|
||||||
requires-python = ">=3.9"
|
requires-python = ">=3.9"
|
||||||
|
license = {file = "LICENSE"}
|
||||||
|
classifiers = ["License :: OSI Approved :: GNU General Public License v3 (GPLv3)"]
|
||||||
|
|
||||||
[project.optional-dependencies]
|
[project.optional-dependencies]
|
||||||
dev = [
|
dev = [
|
||||||
|
|
@ -26,11 +28,12 @@ dev = [
|
||||||
"mkdocs-material",
|
"mkdocs-material",
|
||||||
"mkdocstrings[python]",
|
"mkdocstrings[python]",
|
||||||
"mike",
|
"mike",
|
||||||
"amaranth_boards@git+https://github.com/amaranth-lang/amaranth-boards"
|
|
||||||
]
|
]
|
||||||
|
|
||||||
[project.urls]
|
[project.urls]
|
||||||
"Homepage" = "https://github.com/fischermoseley/manta"
|
"Homepage" = "https://github.com/fischermoseley/manta"
|
||||||
|
"Documentation" = "https://fischermoseley.github.io/manta"
|
||||||
|
"Issues" = "https://github.com/fischermoseley/manta/issues"
|
||||||
|
|
||||||
[project.scripts]
|
[project.scripts]
|
||||||
manta = "manta:main"
|
manta = "manta:main"
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue