amaranth/pyproject.toml
psentee 0681cb77b1
pyproject: relax pyvcd requirement to include 0.4.
The only breaking change in 0.4 is dropping support for Python 3.6,
which Amaranth has already dropped. It also adds official support for
3.10 and 3.11.

3ad7340072/CHANGELOG.rst
2023-06-04 19:42:05 +00:00

38 lines
1.3 KiB
TOML

[build-system]
requires = ["wheel", "setuptools~=67.0", "setuptools_scm[toml]>=6.2"]
build-backend = "setuptools.build_meta"
[project]
dynamic = ["version", "urls"]
name = "amaranth"
description = "Amaranth hardware definition language"
authors = [{name = "Amaranth HDL contributors"}]
license = {file = "LICENSE.txt"}
requires-python = "~=3.7"
dependencies = [
"importlib_metadata; python_version<'3.8'", # for __version__ and amaranth._toolchain.yosys
"importlib_resources; python_version<'3.9'", # for amaranth._toolchain.yosys
"pyvcd>=0.2.2,<0.5", # for amaranth.sim.pysim
"Jinja2~=3.0", # for amaranth.build
]
[project.optional-dependencies]
# this version requirement needs to be synchronized with the one in amaranth.back.verilog!
builtin-yosys = ["amaranth-yosys>=0.10"]
remote-build = ["paramiko~=2.7"]
[project.scripts]
amaranth-rpc = "amaranth.rpc:main"
[tool.setuptools]
# If amaranth 0.3 is checked out with git (e.g. as a part of a persistent editable install or
# a git worktree cached by tools like poetry), it can have an empty `nmigen` directory left over,
# which causes a hard error because setuptools cannot determine the top-level package.
# Add a workaround to improve experience for people upgrading from old checkouts.
packages = ["amaranth"]
[tool.setuptools_scm]
local_scheme = "node-and-timestamp"