Skip to content

Commit

Permalink
Move requirements into pyproject.toml
Browse files Browse the repository at this point in the history
  • Loading branch information
lukeshingles committed Jan 4, 2025
1 parent dd7f79c commit 6ab840a
Show file tree
Hide file tree
Showing 3 changed files with 85 additions and 76 deletions.
8 changes: 4 additions & 4 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -32,21 +32,21 @@ repos:
- id: yamlfmt

- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.8.0
rev: v0.8.6
hooks:
- id: ruff
args: [--fix, --exit-non-zero-on-fix]

- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.8.0
rev: v0.8.6
hooks:
- id: ruff-format

- repo: https://github.com/pre-commit/mirrors-mypy
rev: v1.13.0
rev: v1.14.1
hooks:
- id: mypy
additional_dependencies: [numpy, types-PyYAML, pandas>=2.0.3]
additional_dependencies: [numpy, pandas]
types: [python]
require_serial: true

Expand Down
139 changes: 81 additions & 58 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,8 @@ build-backend = "setuptools.build_meta"

[project]
name = "pynonthermal"
authors = [
{name = "Luke J. Shingles", email = "[email protected]"},
]
description="A non-thermal electron deposition (Spencer-Fano equation) solver."
authors = [{ name = "Luke J. Shingles", email = "[email protected]" }]
description = "A non-thermal electron deposition (Spencer-Fano equation) solver."
classifiers = [
"License :: OSI Approved :: MIT License",
"Programming Language :: Python :: 3.10",
Expand All @@ -16,10 +14,28 @@ classifiers = [
"Programming Language :: Python :: 3.13",
"Intended Audience :: Science/Research",
]
dynamic = ["version", "dependencies"]
dynamic = ["version"]
requires-python = ">=3.10"
license = { file = "LICENSE" }
readme = {file = "README.md", content-type='text/markdown'}
readme = { file = "README.md", content-type = 'text/markdown' }
dependencies = [
"artistools>=2024.07.04.2",
"matplotlib>=3.9.1",
"numpy>=1.19.4",
"pandas>=1.1",
"polars>=1.0.0",
"scipy>=1.5.4",
]

[project.optional-dependencies]
dev = [
"pytest>=6.2.2",
"pytest-codspeed>=2.2.1",
"pytest-cov>=2.10.1",
"pytest-runner>=5.2",
"pytest-xdist[psutil]>=3.6.1",
"typeguard>=4.1.5",
]

[project.urls]
Repository = "https://www.github.com/lukeshingles/pynonthermal/"
Expand All @@ -35,12 +51,12 @@ disallow_untyped_calls = false
disallow_untyped_defs = false
error_summary = true
enable_error_code = [
"comparison-overlap",
"ignore-without-code",
"redundant-expr",
"redundant-self",
"truthy-bool",
"unused-awaitable",
"comparison-overlap",
"ignore-without-code",
"redundant-expr",
"redundant-self",
"truthy-bool",
"unused-awaitable",
]
exclude = "(build)|(dist)|(tests)|(data)"
ignore_missing_imports = true
Expand All @@ -60,8 +76,15 @@ warn_unused_ignores = true

[tool.pyright]
deprecateTypingAliases = true
enableTypeIgnoreComments = false # leave these for mypy to interpret
exclude=['**/node_modules','**/__pycache__','**/.*', 'build', 'dist', 'target']
enableTypeIgnoreComments = false # leave these for mypy to interpret
exclude = [
'**/node_modules',
'**/__pycache__',
'**/.*',
'build',
'dist',
'target',
]
reportAttributeAccessIssue = false
reportCallIssue = true
reportMissingImports = false
Expand All @@ -84,63 +107,63 @@ show-fixes = true
[tool.ruff.lint]
select = ["ALL"]
ignore = [
"ARG001", # ignored because variables in df.eval() are not detected
"ARG001", # ignored because variables in df.eval() are not detected
"ANN",
"B005", # strip-with-multi-characters
"B007", # variable not used in loop body (but sometimes it is with DataFrame.eval)
"B905", # zip without explicit strict parameter
"C901", # complex-structure
"B005", # strip-with-multi-characters
"B007", # variable not used in loop body (but sometimes it is with DataFrame.eval)
"B905", # zip without explicit strict parameter
"C901", # complex-structure
"COM812", # missing-trailing-comma
"CPY001", # missing-copyright-notice
"D100", # undocumented-public-module
"D101", # undocumented-public-class
"D102", # undocumented-public-method
"D103", # undocumented-public-function
"D104", # undocumented-public-package
"D107", # undocumented-public-init
"D203", # one-blank-line-before-class
"D205", # blank-line-after-summary
"D213", # multi-line-summary-second-line
"D417", # undocumented-param
"E501", # Line too long
"E741", # mixed-case-variable-in-global-scope
"CPY001", # missing-copyright-notice
"D100", # undocumented-public-module
"D101", # undocumented-public-class
"D102", # undocumented-public-method
"D103", # undocumented-public-function
"D104", # undocumented-public-package
"D107", # undocumented-public-init
"D203", # one-blank-line-before-class
"D205", # blank-line-after-summary
"D213", # multi-line-summary-second-line
"D417", # undocumented-param
"E501", # Line too long
"E741", # mixed-case-variable-in-global-scope
"ERA001", # commented-out-code
"FBT",
"FIX002", # line contains TODO
"ISC001", # single-line-implicit-string-concatenation
"N802", # Function name should be lowercase
"N803", # Argument name should be lowercase
"N806", # non-lowercase-variable-in-function
"N816", # variable-name-too-short
"N999", # invalid-module-name
"PD901", # df is a bad variable name
"ISC001", # single-line-implicit-string-concatenation
"N802", # Function name should be lowercase
"N803", # Argument name should be lowercase
"N806", # non-lowercase-variable-in-function
"N816", # variable-name-too-short
"N999", # invalid-module-name
"PD901", # df is a bad variable name
"PERF203", # try-except-in-loop
"PLC0414", # useless-import-alias
#"PGH001", # No builtin `eval()` allowed
"PLR0911", # too-many-return-statements
"PLR0912", # too-many-branches
"PLR0913", # too-many-arguments
"PLR0915", # too-many-statements
"PLR2004", # magic-value-comparison
"PLW2901", # redefined-loop-name
"PYI024", # Use `typing.NamedTuple` instead of `collections.namedtuple`
"S101", # Use of assert detected
"S301", # suspicious-pickle-usage
"PLR0911", # too-many-return-statements
"PLR0912", # too-many-branches
"PLR0913", # too-many-arguments
"PLR0915", # too-many-statements
"PLR2004", # magic-value-comparison
"PLW2901", # redefined-loop-name
"PYI024", # Use `typing.NamedTuple` instead of `collections.namedtuple`
"S101", # Use of assert detected
"S301", # suspicious-pickle-usage
#"S307", # suspicious-eval-usage
"S311", # suspicious-non-cryptographic-random-usage
"S603", # subprocess-without-shell-equals-true
"S607", # start-process-with-partial-path
"SLF001", # private-member-access
"T201", # print found
"S311", # suspicious-non-cryptographic-random-usage
"S603", # subprocess-without-shell-equals-true
"S607", # start-process-with-partial-path
"SLF001", # private-member-access
"T201", # print found
"TD002", # missing-todo-author
"TD003", # missing-todo-link
]
fixable = ["ALL"]
unfixable = [
"COM812", # missing-trailing-comma
"ERA001", # commented-out-code (will just delete it!)
"F401", # unused-import
"F841", # unused-variable
"COM812", # missing-trailing-comma
"ERA001", # commented-out-code (will just delete it!)
"F401", # unused-import
"F841", # unused-variable
"SIM222", # expr-or-true
"SIM223", # expr-and-false
]
Expand Down Expand Up @@ -169,7 +192,7 @@ license-files = ["LICENSE"]
#where = ["."]

[tool.setuptools.dynamic]
dependencies = {file = ["requirements.txt"]}
dependencies = { file = ["requirements.txt"] }

[tool.setuptools_scm]
version_file = "_version.py"
Expand Down
14 changes: 0 additions & 14 deletions requirements.txt

This file was deleted.

0 comments on commit 6ab840a

Please sign in to comment.