[build-system] requires = ["setuptools>=61.0", "wheel", "setuptools_scm>=8.0"] build-backend = "setuptools.build_meta" [project] name = "pymc_repeater" dynamic = ["version"] authors = [ {name = "Lloyd", email = "lloyd@rightup.co.uk"}, ] description = "PyMC Repeater Daemon" readme = "README.md" license = {text = "MIT"} requires-python = ">=3.8" classifiers = [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: POSIX :: Linux", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Topic :: Communications", "Topic :: System :: Networking", ] keywords = ["mesh", "networking", "lora", "repeater", "daemon", "iot"] dependencies = [ "pymc_core[hardware]@git+https://github.com/rightup/pyMC_core.git@dev", "pyyaml>=6.0.0", "cherrypy>=18.0.0", "paho-mqtt>=1.6.0", "cherrypy-cors==1.7.0", "psutil>=5.9.0", "pyjwt>=2.8.0", "ws4py>=0.6.0", ] [project.optional-dependencies] # SX1262/SPI support (Linux only; required for Raspberry Pi HATs) hardware = [ "pymc_core[hardware]", ] # RRD metrics (Performance Metrics chart); system librrd required (e.g. apt install rrdtool) rrd = [ "rrdtool", ] dev = [ "pytest>=7.4.0", "pytest-asyncio>=0.21.0", "black>=23.0.0", "isort>=5.12.0", "mypy>=1.7.0", ] [project.scripts] pymc-repeater = "repeater.main:main" pymc-cli = "repeater.local_cli:main" [tool.setuptools.packages.find] where = ["."] include = ["repeater*"] [tool.setuptools.package-data] repeater = [ "web/html/*.html", "web/html/*.ico", "web/html/assets/**/*", "web/*.yaml", "web/*.html", ] [tool.black] line-length = 100 target-version = ['py38', 'py39', 'py310', 'py311', 'py312'] [tool.isort] profile = "black" line_length = 100 [tool.setuptools_scm] version_scheme = "guess-next-dev" local_scheme = "no-local-version" version_file = "repeater/_version.py"