[project] name = "pydualsense" version = "0.7.2" description = "use your DualSense (PS5) controller with python" readme = "README.md" requires-python = ">=3.8,<4.0" license = { text = "MIT License" } authors = [{ name = "Florian (flok) K", email = "37000563+flok@users.noreply.github.com" }] keywords = ['ps5', 'controller', 'dualsense', 'pydualsense'] classifiers = [ "License :: OSI Approved :: MIT License", "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", ] [tool.poetry] name = "pydualsense" version = "0.7.2" description = "use your DualSense (PS5) controller with python" license = "MIT" repository = "https://github.com/flok/pydualsense" authors = ["Florian (flok) K"] readme = "README.md" packages = [{include = "pydualsense"}] include = ["pydualsense/hidapi.dll"] keywords = ['ps5', 'controller', 'dualsense', 'pydualsense'] [tool.poetry.dependencies] python = ">=3.8,<4.0" hidapi-usb = "^0.3.1" [tool.poetry.group.dev.dependencies] python = ">=3.9,<4.0" taskipy = "^1.12.2" hidapi-usb = "^0.3.1" sphinx = "^7.3.7" furo = "^2024.5.6" [tool.poetry.group.typing.dependencies] mypy = "^1.3.0" types-python-dateutil = "^2.8.19" types-pytz = ">=2022.7.1.2" [tool.taskipy.tasks] clear = "find pydualsense/ -type f \\( -iname \\*.c -o -iname \\*.cpp -o -iname \\*.pyd -o -iname \\*.so \\) -delete" build = "poetry build" html_docs = "make html -C docs" post_build = "task clear" post_test = "task clear" [tool.poetry_bumpversion.file."pydualsense/__init__.py"] [tool.poetry_bumpversion.file."pyproject.toml"] [tool.ruff] fix = true unfixable = [ "ERA", # do not autoremove commented out code ] extend-select = [ "B", # flake8-bugbear "C4", # flake8-comprehensions "ERA", # flake8-eradicate/eradicate "I", # isort "N", # pep8-naming "PIE", # flake8-pie "PGH", # pygrep "RUF", # ruff checks "SIM", # flake8-simplify "TCH", # flake8-type-checking "TID", # flake8-tidy-imports "UP", # pyupgrade ] ignore = [ "B904", # use 'raise ... from err' "B905", # use explicit 'strict=' parameter with 'zip()' "N818", # Exception name should be named with an Error suffix "RUF001", "N816", "ERA001", "N802", "N806" ] target-version = "py38" exclude = [".venv"] line-length = 120 [tool.mypy] strict = true files = "pydualsense" show_error_codes = true pretty = true warn_unused_ignores = true enable_incomplete_feature = ["Unpack"] exclude = [ "^docs\\.py$", "^build\\.py$", ] [build-system] requires = ["poetry-core"] build-backend = "poetry.core.masonry.api" [tool.mypy] strict = true files = "pydualsense" show_error_codes = true pretty = true warn_unused_ignores = true enable_incomplete_feature = ["Unpack"] exclude = [ "^docs\\.py$", "^build\\.py$", ] [build-system] requires = ["poetry-core"] build-backend = "poetry.core.masonry.api"