[build-system] requires = ["setuptools"] build-backend = "setuptools.build_meta" [project] name = "novelWriter" authors = [ {name = "Veronica Berglyd Olsen", email = "code@vkbo.net"}, ] description = "A markdown-like text editor for planning and writing novels" readme = {file = "setup/description_pypi.md", content-type = "text/markdown"} license = {text = "GNU General Public License v3"} classifiers = [ "Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", "Programming Language :: Python :: Implementation :: CPython", "License :: OSI Approved :: GNU General Public License v3 (GPLv3)", "Development Status :: 5 - Production/Stable", "Operating System :: OS Independent", "Intended Audience :: End Users/Desktop", "Natural Language :: English", "Topic :: Text Editors", ] requires-python = ">=3.9" dependencies = [ "pyqt5>=5.15", "pyenchant>=3.0.0", ] dynamic = ["version"] [project.urls] Homepage = "https://novelwriter.io" Documentation = "https://docs.novelwriter.io" Repository = "https://github.com/vkbo/novelWriter" Issues = "https://github.com/vkbo/novelWriter/issues" [project.gui-scripts] novelwriter = "novelwriter:main" [tool.setuptools.dynamic] version = {attr = "novelwriter.__version__"} [tool.setuptools.packages.find] include = ["novelwriter*"] [tool.isort] py_version="310" line_length = 99 wrap_length = 79 multi_line_output = 5 force_grid_wrap = 0 lines_between_types = 1 forced_separate = ["tests.*"] [tool.flake8] max-line-length = 99 ignore = ["E133", "E221", "E226", "E228", "E241", "W503", "ANN101", "ANN102", "ANN401"] per-file-ignores = ["tests/*:ANN"] exclude = ["docs/*"] [tool.autopep8] max_line_length = 99 ignore = ["E133", "E221", "E226", "E228", "E241", "W503"] [tool.coverage.run] branch = false [tool.coverage.report] precision = 2