diff --git a/pyproject.toml b/pyproject.toml index 169fb16..a4b6e37 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,13 +1,103 @@ +[project] +name = "ci_watson" +description = "CI helper for STScI Jenkins" +requires-python = ">=3.9" +authors = [ + { name = "STScI", email = "help@stsci.edu" }, +] +classifiers = [ + "Framework :: Pytest", + "Intended Audience :: Science/Research", + "License :: OSI Approved :: BSD License", + "Operating System :: OS Independent", + "Programming Language :: Python :: 3", + "Programming Language :: Python :: Implementation :: CPython", + "Topic :: Software Development :: Testing", + "Topic :: Software Development :: Libraries :: Python Modules", +] +dependencies = [ + "pytest>=6", + "requests", + "crds", +] +dynamic = [ + "version", +] + +[project.readme] +file = "README.md" +content-type = "text/markdown" + +[project.license] +file = "LICENSE.md" +content-type = "text/plain" + +[project.urls] +Homepage = "https://github.com/spacetelescope/ci_watson" + +[project.entry-points.pytest11] +pytest_ciwatson = "ci_watson.plugin" + +[project.optional-dependencies] +all = [ + "astropy", +] +test = [ + "pytest-astropy-header", +] +docs = [ + "numpydoc", + "sphinx_rtd_theme>1.2.0", + "sphinx-automodapi", +] + [build-system] -requires = ["setuptools", - "setuptools_scm", - "wheel"] -build-backend = 'setuptools.build_meta' +requires = [ + "setuptools", + "setuptools_scm", + "wheel", +] +build-backend = "setuptools.build_meta" + +[tool.setuptools] +zip-safe = false +include-package-data = true +license-files = [ + "LICENSE.md", +] + +[tool.setuptools.packages.find] +exclude = [ + "tests", +] +namespaces = false + +[tool.setuptools_scm] +version_file = "ci_watson/version.py" + +[tool.pytest.ini_options] +minversion = "6" +testpaths = [ + "tests", +] +norecursedirs = [ + ".eggs", + "build", +] +astropy_header = true +xfail_strict = true +inputs_root = "ci-watson" +junit_family = "xunit2" +filterwarnings = [ + "error", + "ignore:numpy.ndarray size changed:RuntimeWarning", +] +addopts = "-p no:legacypath" [tool.ruff] select = [ - "E9", # syntax / io error - "F63", # assertion traps - "F7", # keyword outside special block - "F82", # undefined variables -] \ No newline at end of file + "E9", + "F63", + "F7", + "F82", +] diff --git a/setup.cfg b/setup.cfg deleted file mode 100644 index 49ae25c..0000000 --- a/setup.cfg +++ /dev/null @@ -1,62 +0,0 @@ -[metadata] -name = ci_watson -description = CI helper for STScI Jenkins -author = STScI -author_email = help@stsci.edu -license = BSD-3-Clause -license_files = LICENSE.md -url = https://github.com/spacetelescope/ci_watson -long_description = file: README.md -long_description_content_type = text/markdown -classifier = - Framework :: Pytest - Intended Audience :: Science/Research - License :: OSI Approved :: BSD License - Operating System :: OS Independent - Programming Language :: Python :: 3 - Programming Language :: Python :: Implementation :: CPython - Topic :: Software Development :: Testing - Topic :: Software Development :: Libraries :: Python Modules - -[options] -# We set packages to find: to automatically find all sub-packages -packages = find: -include_package_data = True -zip_safe = False -setup_requires = setuptools_scm -install_requires = - pytest>=6 - requests - crds -python_requires = >=3.9 - -[options.packages.find] -exclude = - tests - -[options.extras_require] -all = - astropy -test = - pytest-astropy-header -docs = - numpydoc - sphinx_rtd_theme>1.2.0 - sphinx-automodapi - -[options.entry_points] -pytest11 = - pytest_ciwatson = ci_watson.plugin - -[tool:pytest] -minversion = 6 -testpaths = "tests" -norecursedirs = .eggs build -astropy_header = true -xfail_strict = true -inputs_root = ci-watson -junit_family = xunit2 -filterwarnings = - error - ignore:numpy.ndarray size changed:RuntimeWarning -addopts = "-p no:legacypath" diff --git a/setup.py b/setup.py deleted file mode 100755 index e3e260c..0000000 --- a/setup.py +++ /dev/null @@ -1,5 +0,0 @@ -#!/usr/bin/env python - -from setuptools import setup - -setup(use_scm_version={'write_to': 'ci_watson/version.py'})