| [build-system] |
| requires = ["setuptools>=61.2", "setuptools_scm[toml]>=3.4.3"] |
| build-backend = "setuptools.build_meta" |
| |
| [project] |
| name = "spdx-tools" |
| authors = [{ name = "Ahmed H. Ismail", email = "ahm3d.hisham@gmail.com" }] |
| maintainers = [ |
| { name = "Philippe Ombredanne", email = "pombredanne@gmail.com" }, |
| { name = "SPDX group at the Linux Foundation and others" }, |
| ] |
| license = { text = "Apache-2.0" } |
| description = "SPDX parser and tools." |
| readme = "README.md" |
| classifiers = [ |
| "Intended Audience :: Developers", |
| "Intended Audience :: System Administrators", |
| "License :: OSI Approved :: Apache Software License", |
| "Programming Language :: Python :: 3.7", |
| "Programming Language :: Python :: 3.8", |
| "Programming Language :: Python :: 3.9", |
| "Programming Language :: Python :: 3.10", |
| "Programming Language :: Python :: 3.11", |
| ] |
| urls = { Homepage = "https://github.com/spdx/tools-python" } |
| requires-python = ">=3.7" |
| dependencies = ["click", "pyyaml", "xmltodict", "rdflib", "beartype", "uritools", "license_expression", "ply", "semantic_version"] |
| dynamic = ["version"] |
| |
| [project.optional-dependencies] |
| test = ["pytest", "pyshacl", "tzdata"] |
| code_style = ["isort", "black", "flake8"] |
| graph_generation = ["pygraphviz", "networkx"] |
| development = ["black", "flake8", "isort", "networkx", "pytest"] |
| |
| [project.scripts] |
| pyspdxtools = "spdx_tools.spdx.clitools.pyspdxtools:main" |
| pyspdxtools3 = "spdx_tools.spdx3.clitools.pyspdxtools3:main" |
| |
| [tool.setuptools] |
| zip-safe = false # because of the uses of __file__: https://github.com/spdx/tools-python/issues/257 |
| include-package-data = true |
| |
| [tool.setuptools.packages.find] |
| where = ["src"] |
| |
| [tool.setuptools.package-data] |
| "*" = ["py.typed"] |
| |
| # the default git describe resolves to the tag `python3.6` because the current release tag is not on main |
| # by adding "v" the command resolves to the alpha release of 0.7.0 which leads to the desired name spdx-tools-0.7.0 |
| [tool.setuptools_scm] |
| git_describe_command = ["git", "describe", "--dirty", "--tags", "--long", "--match", "v[0-9]*"] |
| |
| [tool.aliases] |
| release = "clean --all sdist --formats=gztar bdist_wheel" |
| |
| [tool.black] |
| line-length = 119 |
| include = "(^/src/.*.py|^/tests/.*.py)" |
| |
| [tool.isort] |
| profile = "black" |
| line_length = 119 |
| skip = ["__init__.py"] |
| |
| [tool.pytest.ini_options] |
| norecursedirs = [] # overwrite the default to not skip tests/build folder which is needed in spdx3 |