Skip to content

Commit ef519b7

Browse files
committed
ENH: Transition project configuration to pyproject.toml
Transition project configuration to `pyproject.toml`. Used the `setup-py-to-pyproject-toml.py` script in the `ITKModuleTemplate` repository: https://github.com/InsightSoftwareConsortium/ITKModuleTemplate as a starting base, then made manual changes as necessary. Require `itk == 5.4.*` and bump the package to a new major version.
1 parent e8a9020 commit ef519b7

File tree

2 files changed

+114
-53
lines changed

2 files changed

+114
-53
lines changed

pyproject.toml

Lines changed: 114 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,114 @@
1+
[build-system]
2+
requires = ["scikit-build-core"]
3+
build-backend = "scikit_build_core.build"
4+
5+
[project]
6+
name = "itk-texturefeatures"
7+
version = "4.0.0"
8+
description = "An ITK module to compute N-dimension grayscale texture feature images"
9+
readme = "README.rst"
10+
license = {file = "LICENSE"}
11+
authors = [
12+
{ name = "Insight Software Consortium", email = "[email protected]" },
13+
]
14+
keywords = [
15+
"itk",
16+
"InsightToolkit glcm texture features image imaging",
17+
"glcm",
18+
"texture",
19+
"features",
20+
"image",
21+
"imaging",
22+
]
23+
classifiers = [
24+
"Development Status :: 4 - Beta",
25+
"Intended Audience :: Developers",
26+
"Intended Audience :: Education",
27+
"Intended Audience :: Healthcare Industry",
28+
"Intended Audience :: Science/Research",
29+
"License :: OSI Approved :: Apache Software License",
30+
"Operating System :: Android",
31+
"Operating System :: MacOS",
32+
"Operating System :: Microsoft :: Windows",
33+
"Operating System :: POSIX",
34+
"Operating System :: Unix",
35+
"Programming Language :: C++",
36+
"Programming Language :: Python",
37+
"Topic :: Scientific/Engineering",
38+
"Topic :: Scientific/Engineering :: Information Analysis",
39+
"Topic :: Scientific/Engineering :: Medical Science Apps.",
40+
"Topic :: Software Development :: Libraries",
41+
]
42+
requires-python = ">=3.8"
43+
dependencies = [
44+
"itk == 5.4.*",
45+
]
46+
47+
[project.urls]
48+
Download = "https://github.com/InsightSoftwareConsortium/ITKTextureFeatures"
49+
Homepage = "https://github.com/InsightSoftwareConsortium/ITKTextureFeatures"
50+
51+
[tool.scikit-build]
52+
# The versions of CMake to allow. If CMake is not present on the system or does
53+
# not pass this specifier, it will be downloaded via PyPI if possible. An empty
54+
# string will disable this check.
55+
cmake.version = ">=3.16.3"
56+
57+
# A list of args to pass to CMake when configuring the project. Setting this in
58+
# config or envvar will override toml. See also ``cmake.define``.
59+
cmake.args = []
60+
61+
# A table of defines to pass to CMake when configuring the project. Additive.
62+
cmake.define = {}
63+
64+
# Verbose printout when building.
65+
cmake.verbose = true
66+
67+
# The build type to use when building the project. Valid options are: "Debug",
68+
# "Release", "RelWithDebInfo", "MinSizeRel", "", etc.
69+
cmake.build-type = "Release"
70+
71+
# The source directory to use when building the project. Currently only affects
72+
# the native builder (not the setuptools plugin).
73+
cmake.source-dir = "."
74+
75+
# The versions of Ninja to allow. If Ninja is not present on the system or does
76+
# not pass this specifier, it will be downloaded via PyPI if possible. An empty
77+
# string will disable this check.
78+
ninja.version = ">=1.11"
79+
80+
# The logging level to display, "DEBUG", "INFO", "WARNING", and "ERROR" are
81+
# possible options.
82+
logging.level = "INFO"
83+
84+
# Files to include in the SDist even if they are skipped by default. Supports
85+
# gitignore syntax.
86+
sdist.include = []
87+
88+
# Files to exclude from the SDist even if they are included by default. Supports
89+
# gitignore syntax.
90+
sdist.exclude = []
91+
92+
# A list of license files to include in the wheel. Supports glob patterns.
93+
wheel.license-files = ["LICEN[CS]E*",]
94+
95+
# Target the platlib or the purelib. If not set, the default is to target the
96+
# platlib if wheel.cmake is true, and the purelib otherwise.
97+
wheel.platlib = "false"
98+
99+
# If CMake is less than this value, backport a copy of FindPython. Set to 0
100+
# disable this, or the empty string.
101+
backport.find-python = "3.26.1"
102+
103+
# Select the editable mode to use. Can be "redirect" (default) or "inplace".
104+
editable.mode = "redirect"
105+
106+
# Rebuild the project when the package is imported. The build-directory must be
107+
# set.
108+
editable.rebuild = false
109+
110+
# If set, this will provide a method for scikit-build-core backward compatibility.
111+
minimum-version = "0.8.2"
112+
113+
# The build directory. Defaults to a temporary directory, but can be set.
114+
build-dir = "build/{wheel_tag}"

setup.py

Lines changed: 0 additions & 53 deletions
This file was deleted.

0 commit comments

Comments
 (0)