Skip to content

Commit

Permalink
update pyproject.toml to enable removing setup files and pre-commit h…
Browse files Browse the repository at this point in the history
…ooks
  • Loading branch information
mcw92 committed Mar 28, 2024
1 parent f239cec commit 064946d
Showing 1 changed file with 108 additions and 3 deletions.
111 changes: 108 additions & 3 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,29 +1,134 @@
[tool.ruff]
select = ["E", "F"]
ignore = ["E501"]
[build-system]
requires = ["setuptools >= 61.0"]
build-backend = "setuptools.build_meta"

[tool.setuptools]
packages = ["propulate"]

[project]
name = "propulate"
version = "1.1.0"
authors = [
{ name="Marie Weiel, Oskar Taubert, Helmholtz AI", email="[email protected]" },
]
description = "Massively parallel genetic optimization through asynchronous propagation of populations"
readme = "README.md"
requires-python = ">=3.8"
classifiers = [
"Programming Language :: Python :: 3",
"License :: TBD",
"Development Status :: 1 - Planning",
]
dependencies = [
"deepdiff",
"mpi4py",
"numpy",
"colorlog",
"Gpy",
]

[project.optional-dependencies]
dev = [
"pre-commit",
"black",
"ruff",
"pytest",
"pytest-cov",
"sphinx-autoapi",
"sphinx-rtd-theme",
"sphinxcontrib-napoleon",
"sphinxemoji",
]

[project.urls]
Homepage = "https://github.com/Helmholtz-AI-Energy/propulate"
Issues = "https://github.com/Helmholtz-AI-Energy/propulate/issues"

[tool.ruff]
# Exclude a variety of commonly ignored directories.
exclude = [
".bzr",
".direnv",
".eggs",
".git",
".git-rewrite",
".hg",
".ipynb_checkpoints",
".mypy_cache",
".nox",
".pants.d",
".pyenv",
".pytest_cache",
".pytype",
".ruff_cache",
".svn",
".tox",
".venv",
".vscode",
"__pypackages__",
"_build",
"buck-out",
"build",
"dist",
"node_modules",
"site-packages",
"venv",
]

# Same as Black.
line-length = 88
indent-width = 4

# Assume Python 3.8.
target-version = "py38"

[tool.ruff.lint]
# Enable Pyflakes (`F`) and a subset of the pycodestyle (`E`) codes by default.
# Unlike Flake8, Ruff doesn't enable pycodestyle warnings (`W`) or
# McCabe complexity (`C901`) by default.
select = ["N", "E4", "E7", "E9", "F", "D"]
ignore = ["D100", "D104", "D404"]
# Enable import sorting
extend-select = ["I"]

# Allow fix for all enabled rules (when `--fix`) is provided.
fixable = ["ALL"]
unfixable = []

# Allow unused variables when underscore-prefixed.
dummy-variable-rgx = "^(_+|(_+[a-zA-Z0-9_]*[a-zA-Z0-9]+?))$"

[tool.ruff.format]
# Like Black, use double quotes for strings.
quote-style = "double"

# Like Black, indent with spaces, rather than tabs.
indent-style = "space"

# Like Black, respect magic trailing commas.
skip-magic-trailing-comma = false

# Like Black, automatically detect the appropriate line ending.
line-ending = "auto"

# Enable auto-formatting of code examples in docstrings. Markdown,
# reStructuredText code/literal blocks and doctests are all supported.
#
# This is currently disabled by default, but it is planned for this
# to be opt-out in the future.
docstring-code-format = false

# Set the line length limit used when formatting code snippets in
# docstrings.
#
# This only has an effect when the `docstring-code-format` setting is
# enabled.
docstring-code-line-length = "dynamic"

[tool.ruff.lint.pydocstyle]
convention = "numpy"

[tool.pytest.ini_options]
testpaths = [
"tests",
]

0 comments on commit 064946d

Please sign in to comment.