diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index e150bf7..80e3965 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -54,10 +54,6 @@ repos: # - id: reorder-python-imports # args: # - --py37-plus - - repo: https://github.com/asottile/setup-cfg-fmt - rev: v2.8.0 - hooks: - - id: setup-cfg-fmt - repo: https://github.com/psf/black rev: 25.1.0 hooks: diff --git a/pyproject.toml b/pyproject.toml index 70d1386..1b271c1 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,15 +1,77 @@ +# ====================================================================================== +# Project metadata +# ====================================================================================== +[project] +name = "upper_envelope" +description = "Upper envelope scan for dynamic discrete-continuous life cycle models." +requires-python = ">=3.10" +authors = [ + { name="Max Blesch", email="maximilian.blesch@hu-berlin.de" }, + { name="Sebastian Gsell", email="sebastian.gsell@econ.lmu.de" }, +] +classifiers = [ + "Development Status :: 1 - Planning", + "Intended Audience :: Science/Research", + "Operating System :: MacOS :: MacOS X", + "Operating System :: Microsoft :: Windows", + "Operating System :: POSIX", + "Programming Language :: Python :: 3", + "Programming Language :: Python :: 3 :: Only", + "Topic :: Scientific/Engineering", + "Topic :: Software Development :: Build Tools", +] +keywords = [] # if you have any +dependencies = [] # list runtime deps here, e.g. ["numpy>=1.25"] +dynamic = ["version"] + +[project.readme] +file = "README.md" +content-type = "text/markdown" + +[project.license] +text = "MIT" + +[project.urls] +"Github" = "https://github.com/OpensourceEconomics/upper-envelope" + +[project.scripts] +upper_envelope = "upper_envelope.cli:cli" + +[tool.setuptools.packages.find] +where = ["src"] + + +# ====================================================================================== +# Build system configuration +# ====================================================================================== + [build-system] -requires = ["setuptools>=45", "wheel", "setuptools_scm[toml]>=6.0"] +requires = [ + "setuptools>=61.0.0", # setuptools PEP-621 support + "wheel", + "setuptools_scm[toml]>=6.0" +] +build-backend = "setuptools.build_meta" [tool.setuptools_scm] write_to = "src/upper_envelope/_version.py" + +# ====================================================================================== +# Ruff configuration +# ====================================================================================== + [tool.ruff] target-version = "py310" -fix = true -ignore = ["F401"] +fix = true +ignore = ["F401"] + + +# ====================================================================================== +# Misc configuration +# ====================================================================================== [tool.yamlfix] -line_length = 88 -sequence_style = "block_style" +line_length = 88 +sequence_style = "block_style" none_representation = "null" diff --git a/setup.cfg b/setup.cfg deleted file mode 100644 index 40bd090..0000000 --- a/setup.cfg +++ /dev/null @@ -1,41 +0,0 @@ -[metadata] -name = upper_envelope -description = Upper envelope scan for dynamic discrete-continuous life cycle models. -long_description = file: README.md -long_description_content_type = text/markdown -author = "Max Blesch, Sebastian Gsell" -author_email = "maximilian.blesch@hu-berlin.de, sebastian.gsell@econ.lmu.de" -license = MIT -license_files = LICENSE -platforms = unix, linux, osx, cygwin, win32 -classifiers = - Development Status :: 1 - Planning - Intended Audience :: Science/Research - Operating System :: MacOS :: MacOS X - Operating System :: Microsoft :: Windows - Operating System :: POSIX - Programming Language :: Python :: 3 - Programming Language :: Python :: 3 :: Only - Topic :: Scientific/Engineering - Topic :: Software Development :: Build Tools -project_urls = - Github = https://github.com/OpensourceEconomics/upper-envelope - -[options] -packages = find: -python_requires = >=3.9 -include_package_data = True -package_dir = - =src -zip_safe = False - -[options.packages.find] -where = src - -[options.entry_points] -console_scripts = - upper_envelope=upper_envelope.cli:cli - -[check-manifest] -ignore = - src/upper_envelope/_version.py diff --git a/setup.py b/setup.py deleted file mode 100644 index 7f1a176..0000000 --- a/setup.py +++ /dev/null @@ -1,4 +0,0 @@ -from setuptools import setup - -if __name__ == "__main__": - setup()