1[build-system] 2requires = ["setuptools>=61.0"] 3build-backend = "setuptools.build_meta" 4 5[project] 6name = "gyp-next" 7version = "0.16.1" 8authors = [ 9 { name="Node.js contributors", email="ryzokuken@disroot.org" }, 10] 11description = "A fork of the GYP build system for use in the Node.js projects" 12readme = "README.md" 13license = { file="LICENSE" } 14requires-python = ">=3.8" 15# The Python module "packaging" is vendored in the "pylib/packaging" directory to support Python >= 3.12. 16# dependencies = ["packaging>=23.1"] # Uncomment this line if the vendored version is removed. 17classifiers = [ 18 "Development Status :: 3 - Alpha", 19 "Environment :: Console", 20 "Intended Audience :: Developers", 21 "License :: OSI Approved :: BSD License", 22 "Natural Language :: English", 23 "Programming Language :: Python", 24 "Programming Language :: Python :: 3", 25 "Programming Language :: Python :: 3.8", 26 "Programming Language :: Python :: 3.9", 27 "Programming Language :: Python :: 3.10", 28 "Programming Language :: Python :: 3.11", 29] 30 31[project.optional-dependencies] 32dev = ["flake8", "ruff", "pytest"] 33 34[project.scripts] 35gyp = "gyp:script_main" 36 37[project.urls] 38"Homepage" = "https://github.com/nodejs/gyp-next" 39 40[tool.ruff] 41select = [ 42 "C4", # flake8-comprehensions 43 "C90", # McCabe cyclomatic complexity 44 "DTZ", # flake8-datetimez 45 "E", # pycodestyle 46 "F", # Pyflakes 47 "G", # flake8-logging-format 48 "ICN", # flake8-import-conventions 49 "INT", # flake8-gettext 50 "PL", # Pylint 51 "PYI", # flake8-pyi 52 "RSE", # flake8-raise 53 "RUF", # Ruff-specific rules 54 "T10", # flake8-debugger 55 "TCH", # flake8-type-checking 56 "TID", # flake8-tidy-imports 57 "UP", # pyupgrade 58 "W", # pycodestyle 59 "YTT", # flake8-2020 60 # "A", # flake8-builtins 61 # "ANN", # flake8-annotations 62 # "ARG", # flake8-unused-arguments 63 # "B", # flake8-bugbear 64 # "BLE", # flake8-blind-except 65 # "COM", # flake8-commas 66 # "D", # pydocstyle 67 # "DJ", # flake8-django 68 # "EM", # flake8-errmsg 69 # "ERA", # eradicate 70 # "EXE", # flake8-executable 71 # "FBT", # flake8-boolean-trap 72 # "I", # isort 73 # "INP", # flake8-no-pep420 74 # "ISC", # flake8-implicit-str-concat 75 # "N", # pep8-naming 76 # "NPY", # NumPy-specific rules 77 # "PD", # pandas-vet 78 # "PGH", # pygrep-hooks 79 # "PIE", # flake8-pie 80 # "PT", # flake8-pytest-style 81 # "PTH", # flake8-use-pathlib 82 # "Q", # flake8-quotes 83 # "RET", # flake8-return 84 # "S", # flake8-bandit 85 # "SIM", # flake8-simplify 86 # "SLF", # flake8-self 87 # "T20", # flake8-print 88 # "TRY", # tryceratops 89] 90ignore = [ 91 "E721", 92 "PLC1901", 93 "PLR0402", 94 "PLR1714", 95 "PLR2004", 96 "PLR5501", 97 "PLW0603", 98 "PLW2901", 99 "PYI024", 100 "RUF005", 101 "RUF012", 102 "UP031", 103] 104extend-exclude = ["pylib/packaging"] 105line-length = 88 106target-version = "py37" 107 108[tool.ruff.mccabe] 109max-complexity = 101 110 111[tool.ruff.pylint] 112max-args = 11 113max-branches = 108 114max-returns = 10 115max-statements = 286 116 117[tool.setuptools] 118package-dir = {"" = "pylib"} 119packages = ["gyp", "gyp.generator"] 120