pyproject.toml 2.57 KB
Newer Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
[project]

classifiers = [
    "Development Status :: 5 - Production/Stable",
    "Intended Audience :: Science/Research",
    "License :: OSI Approved :: MIT License",
    "Natural Language :: English",
    "Operating System :: MacOS",
    "Operating System :: Microsoft :: Windows",
    "Operating System :: POSIX",
    "Operating System :: Unix",
    "Programming Language :: Python :: 3",
    "Programming Language :: Python :: 3.7",
    "Programming Language :: Python :: 3.8",
    "Programming Language :: Python :: 3.9",
    "Programming Language :: Python :: 3.10",
    "Topic :: Scientific/Engineering :: Artificial Intelligence"
]
description = "LightGBM Python Package"
license = {file = "LICENSE"}
maintainers = [
  {name = "Yu Shi", email = "yushi@microsoft.com"}
]
name = "lightgbm"
readme = "README.rst"
requires-python = ">=3.6"
version = "3.3.5.99"

[project.urls]
homepage = "https://github.com/microsoft/LightGBM"
documentation = "https://lightgbm.readthedocs.io/en/latest/"
repository = "https://github.com/microsoft/LightGBM.git"
changelog = "https://github.com/microsoft/LightGBM/releases"

# start:build-system
[build-system]

requires = ["scikit-build-core>=0.4.4"]
build-backend = "scikit_build_core.build"

# based on https://github.com/scikit-build/scikit-build-core#configuration
[tool.scikit-build]

cmake.minimum-version = "3.15"
ninja.minimum-version = "1.11"
ninja.make-fallback = true
cmake.args = [
    "-D__BUILD_FOR_PYTHON:BOOL=ON"
]
cmake.verbose = false
cmake.build-type = "Release"
logging.level = "INFO"
sdist.reproducible = true
wheel.py-api = "py3"
experimental = false
strict-config = true
minimum-version = "0.4.4"

# end:build-system

61
62
63
[tool.isort]
line_length = 120
skip_glob = [
64
65
    "*/external_libs/*",
    "*/lightgbm-python/*"
66
67
68
69
70
71
]

[tool.mypy]
exclude = 'build/*|compile/*|docs/*|examples/*|external_libs/*|lightgbm-python/*|tests/*'
ignore_missing_imports = true

72
73
74
75
76
77
78
79
[tool.ruff]
exclude = [
    "build",
    "compile",
    "docs",
    "external_libs",
    "lightgbm-python",
    "setup.py"
80
]
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
ignore = [
    # (pydocstyle) Missing docstring in magic method
    "D105",
    # (pycodestyle) Line too long
    "E501"
]
select = [
    # flake8-bugbear
    "B",
    # flake8-comprehensions
    "C4",
    # pydocstyle
    "D",
    # pycodestyle
    "E",
    # pyflakes
    "F"
]

# this should be set to the oldest version of python LightGBM supports
target-version = "py37"

[tool.ruff.per-file-ignores]
"examples/*" = [
    # pydocstyle
    "D"
]
"tests/*" = [
    # (flake8-bugbear) Found useless expression
    "B018",
    # pydocstyle
    "D"
]

[tool.ruff.pydocstyle]

convention = "numpy"