mirror of
https://github.com/Cian-H/read_aconity_layers.git
synced 2025-12-22 18:31:56 +00:00
NOTE: Failing tests seem to just be where previously succeeding tests are conflicting with existing artifacts. For now, pushing this through and i will fix it later if it creates an issue. * pip-deps(deps): bump the python-dependencies group across 1 directory with 27 updates Bumps the python-dependencies group with 26 updates in the / directory: | Package | From | To | | --- | --- | --- | | [maturin](https://github.com/pyo3/maturin) | `1.8.7` | `1.10.2` | | [numpy](https://github.com/numpy/numpy) | `2.2.6` | `2.4.0` | | [ruff](https://github.com/astral-sh/ruff) | `0.12.8` | `0.14.10` | | [mypy](https://github.com/python/mypy) | `1.17.1` | `1.19.1` | | [pytest](https://github.com/pytest-dev/pytest) | `8.4.1` | `9.0.2` | | [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `6.2.1` | `7.0.0` | | [sphinx-autodoc-typehints](https://github.com/tox-dev/sphinx-autodoc-typehints) | `3.2.0` | `3.5.2` | | [sphinx-autobuild](https://github.com/sphinx-doc/sphinx-autobuild) | `2024.10.3` | `2025.8.25` | | [anyio](https://github.com/agronholm/anyio) | `4.10.0` | `4.12.0` | | [beautifulsoup4](https://www.crummy.com/software/BeautifulSoup/bs4/) | `4.13.4` | `4.14.3` | | [certifi](https://github.com/certifi/python-certifi) | `2025.8.3` | `2025.11.12` | | [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.3` | `3.4.4` | | [click](https://github.com/pallets/click) | `8.2.1` | `8.3.1` | | [idna](https://github.com/kjd/idna) | `3.10` | `3.11` | | [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.1.0` | `2.3.0` | | [markupsafe](https://github.com/pallets/markupsafe) | `3.0.2` | `3.0.3` | | [mdit-py-plugins](https://github.com/executablebooks/mdit-py-plugins) | `0.4.2` | `0.5.0` | | [pyyaml](https://github.com/yaml/pyyaml) | `6.0.2` | `6.0.3` | | [requests](https://github.com/psf/requests) | `2.32.4` | `2.32.5` | | [roman-numerals-py](https://github.com/AA-Turner/roman-numerals) | `3.1.0` | `4.1.0` | | [soupsieve](https://github.com/facelessuser/soupsieve) | `2.7` | `2.8.1` | | [starlette](https://github.com/Kludex/starlette) | `0.47.2` | `0.50.0` | | [typing-extensions](https://github.com/python/typing_extensions) | `4.14.1` | `4.15.0` | | [urllib3](https://github.com/urllib3/urllib3) | `2.5.0` | `2.6.2` | | [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.40.0` | | [watchfiles](https://github.com/samuelcolvin/watchfiles) | `1.1.0` | `1.1.1` | Updates `maturin` from 1.8.7 to 1.10.2 - [Release notes](https://github.com/pyo3/maturin/releases) - [Changelog](https://github.com/PyO3/maturin/blob/main/Changelog.md) - [Commits](https://github.com/pyo3/maturin/compare/v1.8.7...v1.10.2) Updates `numpy` from 2.2.6 to 2.4.0 - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v2.2.6...v2.4.0) Updates `ruff` from 0.12.8 to 0.14.10 - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.12.8...0.14.10) Updates `mypy` from 1.17.1 to 1.19.1 - [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md) - [Commits](https://github.com/python/mypy/compare/v1.17.1...v1.19.1) Updates `pytest` from 8.4.1 to 9.0.2 - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/8.4.1...9.0.2) Updates `pytest-cov` from 6.2.1 to 7.0.0 - [Changelog](https://github.com/pytest-dev/pytest-cov/blob/master/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest-cov/compare/v6.2.1...v7.0.0) Updates `sphinx-autodoc-typehints` from 3.2.0 to 3.5.2 - [Release notes](https://github.com/tox-dev/sphinx-autodoc-typehints/releases) - [Commits](https://github.com/tox-dev/sphinx-autodoc-typehints/compare/3.2.0...3.5.2) Updates `sphinx-autobuild` from 2024.10.3 to 2025.8.25 - [Release notes](https://github.com/sphinx-doc/sphinx-autobuild/releases) - [Changelog](https://github.com/sphinx-doc/sphinx-autobuild/blob/main/NEWS.rst) - [Commits](https://github.com/sphinx-doc/sphinx-autobuild/compare/2024.10.03...2025.08.25) Updates `anyio` from 4.10.0 to 4.12.0 - [Release notes](https://github.com/agronholm/anyio/releases) - [Commits](https://github.com/agronholm/anyio/compare/4.10.0...4.12.0) Updates `beautifulsoup4` from 4.13.4 to 4.14.3 Updates `certifi` from 2025.8.3 to 2025.11.12 - [Commits](https://github.com/certifi/python-certifi/compare/2025.08.03...2025.11.12) Updates `charset-normalizer` from 3.4.3 to 3.4.4 - [Release notes](https://github.com/jawah/charset_normalizer/releases) - [Changelog](https://github.com/jawah/charset_normalizer/blob/master/CHANGELOG.md) - [Commits](https://github.com/jawah/charset_normalizer/compare/3.4.3...3.4.4) Updates `click` from 8.2.1 to 8.3.1 - [Release notes](https://github.com/pallets/click/releases) - [Changelog](https://github.com/pallets/click/blob/main/CHANGES.rst) - [Commits](https://github.com/pallets/click/compare/8.2.1...8.3.1) Updates `coverage` from 7.10.3 to 7.13.0 - [Release notes](https://github.com/coveragepy/coveragepy/releases) - [Changelog](https://github.com/coveragepy/coveragepy/blob/main/CHANGES.rst) - [Commits](https://github.com/coveragepy/coveragepy/compare/7.10.3...7.13.0) Updates `idna` from 3.10 to 3.11 - [Release notes](https://github.com/kjd/idna/releases) - [Changelog](https://github.com/kjd/idna/blob/master/HISTORY.rst) - [Commits](https://github.com/kjd/idna/compare/v3.10...v3.11) Updates `iniconfig` from 2.1.0 to 2.3.0 - [Release notes](https://github.com/pytest-dev/iniconfig/releases) - [Changelog](https://github.com/pytest-dev/iniconfig/blob/main/CHANGELOG) - [Commits](https://github.com/pytest-dev/iniconfig/compare/v2.1.0...v2.3.0) Updates `markupsafe` from 3.0.2 to 3.0.3 - [Release notes](https://github.com/pallets/markupsafe/releases) - [Changelog](https://github.com/pallets/markupsafe/blob/main/CHANGES.rst) - [Commits](https://github.com/pallets/markupsafe/compare/3.0.2...3.0.3) Updates `mdit-py-plugins` from 0.4.2 to 0.5.0 - [Release notes](https://github.com/executablebooks/mdit-py-plugins/releases) - [Changelog](https://github.com/executablebooks/mdit-py-plugins/blob/master/CHANGELOG.md) - [Commits](https://github.com/executablebooks/mdit-py-plugins/compare/v0.4.2...v0.5.0) Updates `pyyaml` from 6.0.2 to 6.0.3 - [Release notes](https://github.com/yaml/pyyaml/releases) - [Changelog](https://github.com/yaml/pyyaml/blob/6.0.3/CHANGES) - [Commits](https://github.com/yaml/pyyaml/compare/6.0.2...6.0.3) Updates `requests` from 2.32.4 to 2.32.5 - [Release notes](https://github.com/psf/requests/releases) - [Changelog](https://github.com/psf/requests/blob/main/HISTORY.md) - [Commits](https://github.com/psf/requests/compare/v2.32.4...v2.32.5) Updates `roman-numerals-py` from 3.1.0 to 4.1.0 - [Release notes](https://github.com/AA-Turner/roman-numerals/releases) - [Changelog](https://github.com/AA-Turner/roman-numerals/blob/master/CHANGES.rst) - [Commits](https://github.com/AA-Turner/roman-numerals/compare/v3.1.0...v4.1.0) Updates `soupsieve` from 2.7 to 2.8.1 - [Release notes](https://github.com/facelessuser/soupsieve/releases) - [Commits](https://github.com/facelessuser/soupsieve/compare/2.7...2.8.1) Updates `starlette` from 0.47.2 to 0.50.0 - [Release notes](https://github.com/Kludex/starlette/releases) - [Changelog](https://github.com/Kludex/starlette/blob/main/docs/release-notes.md) - [Commits](https://github.com/Kludex/starlette/compare/0.47.2...0.50.0) Updates `typing-extensions` from 4.14.1 to 4.15.0 - [Release notes](https://github.com/python/typing_extensions/releases) - [Changelog](https://github.com/python/typing_extensions/blob/main/CHANGELOG.md) - [Commits](https://github.com/python/typing_extensions/compare/4.14.1...4.15.0) Updates `urllib3` from 2.5.0 to 2.6.2 - [Release notes](https://github.com/urllib3/urllib3/releases) - [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst) - [Commits](https://github.com/urllib3/urllib3/compare/2.5.0...2.6.2) Updates `uvicorn` from 0.35.0 to 0.40.0 - [Release notes](https://github.com/Kludex/uvicorn/releases) - [Changelog](https://github.com/Kludex/uvicorn/blob/main/docs/release-notes.md) - [Commits](https://github.com/Kludex/uvicorn/compare/0.35.0...0.40.0) Updates `watchfiles` from 1.1.0 to 1.1.1 - [Release notes](https://github.com/samuelcolvin/watchfiles/releases) - [Commits](https://github.com/samuelcolvin/watchfiles/compare/v1.1.0...v1.1.1) --- updated-dependencies: - dependency-name: maturin dependency-version: 1.10.2 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: python-dependencies - dependency-name: numpy dependency-version: 2.4.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: python-dependencies - dependency-name: ruff dependency-version: 0.14.10 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: python-dependencies - dependency-name: mypy dependency-version: 1.19.1 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: python-dependencies - dependency-name: pytest dependency-version: 9.0.2 dependency-type: direct:development update-type: version-update:semver-major dependency-group: python-dependencies - dependency-name: pytest-cov dependency-version: 7.0.0 dependency-type: direct:development update-type: version-update:semver-major dependency-group: python-dependencies - dependency-name: sphinx-autodoc-typehints dependency-version: 3.5.2 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: python-dependencies - dependency-name: sphinx-autobuild dependency-version: 2025.8.25 dependency-type: direct:development update-type: version-update:semver-major dependency-group: python-dependencies - dependency-name: anyio dependency-version: 4.12.0 dependency-type: indirect update-type: version-update:semver-minor dependency-group: python-dependencies - dependency-name: beautifulsoup4 dependency-version: 4.14.3 dependency-type: indirect update-type: version-update:semver-minor dependency-group: python-dependencies - dependency-name: certifi dependency-version: 2025.11.12 dependency-type: indirect update-type: version-update:semver-minor dependency-group: python-dependencies - dependency-name: charset-normalizer dependency-version: 3.4.4 dependency-type: indirect update-type: version-update:semver-patch dependency-group: python-dependencies - dependency-name: click dependency-version: 8.3.1 dependency-type: indirect update-type: version-update:semver-minor dependency-group: python-dependencies - dependency-name: coverage dependency-version: 7.13.0 dependency-type: indirect update-type: version-update:semver-minor dependency-group: python-dependencies - dependency-name: idna dependency-version: '3.11' dependency-type: indirect update-type: version-update:semver-minor dependency-group: python-dependencies - dependency-name: iniconfig dependency-version: 2.3.0 dependency-type: indirect update-type: version-update:semver-minor dependency-group: python-dependencies - dependency-name: markupsafe dependency-version: 3.0.3 dependency-type: indirect update-type: version-update:semver-patch dependency-group: python-dependencies - dependency-name: mdit-py-plugins dependency-version: 0.5.0 dependency-type: indirect update-type: version-update:semver-minor dependency-group: python-dependencies - dependency-name: pyyaml dependency-version: 6.0.3 dependency-type: indirect update-type: version-update:semver-patch dependency-group: python-dependencies - dependency-name: requests dependency-version: 2.32.5 dependency-type: indirect update-type: version-update:semver-patch dependency-group: python-dependencies - dependency-name: roman-numerals-py dependency-version: 4.1.0 dependency-type: indirect update-type: version-update:semver-major dependency-group: python-dependencies - dependency-name: soupsieve dependency-version: 2.8.1 dependency-type: indirect update-type: version-update:semver-minor dependency-group: python-dependencies - dependency-name: starlette dependency-version: 0.50.0 dependency-type: indirect update-type: version-update:semver-minor dependency-group: python-dependencies - dependency-name: typing-extensions dependency-version: 4.15.0 dependency-type: indirect update-type: version-update:semver-minor dependency-group: python-dependencies - dependency-name: urllib3 dependency-version: 2.6.2 dependency-type: indirect update-type: version-update:semver-minor dependency-group: python-dependencies - dependency-name: uvicorn dependency-version: 0.40.0 dependency-type: indirect update-type: version-update:semver-minor dependency-group: python-dependencies - dependency-name: watchfiles dependency-version: 1.1.1 dependency-type: indirect update-type: version-update:semver-patch dependency-group: python-dependencies ... Signed-off-by: dependabot[bot] <support@github.com> * Updated MacOS runners in CI workflow --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Cian Hughes <chughes000@gmail.com>
225 lines
4.8 KiB
TOML
225 lines
4.8 KiB
TOML
[project]
|
|
name = "read_aconity_layers"
|
|
description = "A utility for fast reading of layer data from the aconity mini powder bed fusion machine"
|
|
requires-python = ">=3.11"
|
|
classifiers = [
|
|
"Programming Language :: Rust",
|
|
"Programming Language :: Python :: Implementation :: CPython",
|
|
"Programming Language :: Python :: Implementation :: PyPy",
|
|
]
|
|
authors = [{ name = "Cian Hughes", email = "chughes000@gmail.com" }]
|
|
license = { text = "MIT" }
|
|
readme = "README.rst"
|
|
dynamic = ["version"]
|
|
|
|
[tool.poetry]
|
|
name = "read_aconity_layers"
|
|
description = "A utility for fast reading of layer data from the aconity mini powder bed fusion machine"
|
|
authors = ["Cian Hughes <chughes000@gmail.com>"]
|
|
license = "MIT"
|
|
readme = "README.rst"
|
|
package-mode = false
|
|
|
|
[tool.poetry.urls]
|
|
repository = "https://github.com/Cian-H/read_aconity_layers"
|
|
documentation = "https://read-aconity-layers.readthedocs.io/"
|
|
|
|
|
|
[tool.poetry.dependencies]
|
|
python = "^3.11"
|
|
maturin = "^1.8.6"
|
|
numpy = ">=2.0.0,<3.0.0"
|
|
|
|
[tool.poetry.group.dev.dependencies]
|
|
ruff = ">=0.11.11,<0.15.0"
|
|
mypy = "^1.15.0"
|
|
pytest = ">=8.3.5,<10.0.0"
|
|
loguru = "^0.7.3"
|
|
pytest-cov = ">=6.1.1,<8.0.0"
|
|
|
|
[tool.poetry.group.docs.dependencies]
|
|
sphinx = "^8.2.3"
|
|
sphinx-autodoc-typehints = "^3.2.0"
|
|
sphinx-copybutton = "^0.5.2"
|
|
sphinxcontrib-rust = ">=0.8.1,<1.1.0"
|
|
myst-parser = "^4.0.1"
|
|
sphinx-autobuild = ">=2024.10.3,<2026.0.0"
|
|
pydata-sphinx-theme = "^0.16.1"
|
|
|
|
[build-system]
|
|
requires = ["maturin>=1.7,<2.0"]
|
|
build-backend = "maturin"
|
|
|
|
[tool.maturin]
|
|
module-name = "read_aconity_layers"
|
|
features = ["pyo3/extension-module"]
|
|
|
|
[tool.ruff]
|
|
line-length = 100
|
|
target-version = "py312"
|
|
exclude = ["docs/", "tests/"]
|
|
|
|
[tool.ruff.lint]
|
|
# Configure ruff to be *heavily* opinionated. We want to enforce a consistent style across all code.
|
|
# Enable checks for pydocstyle (`D`), pycodestyle (`E`, `W`), Pyflakes (`F`), McCabe Complexity (C90)
|
|
# isort (`I`), pep8 naming (`N`), flake8 (`A`, `ANN`, `B`, `C4`, `EM`, `FBT`, `ICN`, `INT`, `ISC`, `PT`,
|
|
# `PTH`, `RET`, `SIM`, `TC`, and `TID`), perflint (`PERF`), numpy rules (`NPY`), pandas
|
|
# rules (`PD`), pylint (`PL`), ruff rules (`RUF`).
|
|
select = [
|
|
"D",
|
|
"E",
|
|
"W",
|
|
"F",
|
|
"C90",
|
|
"I",
|
|
"N",
|
|
"A",
|
|
"ANN",
|
|
"B",
|
|
"C4",
|
|
"EM",
|
|
"FBT",
|
|
"ICN",
|
|
"INT",
|
|
"ISC",
|
|
"PT",
|
|
"PTH",
|
|
"RET",
|
|
"SIM",
|
|
"TC",
|
|
"TID",
|
|
"PERF",
|
|
"NPY",
|
|
"PD",
|
|
"PL",
|
|
"RUF",
|
|
]
|
|
# Reasons for disabling certain rules:
|
|
# - PD002: despite its problems we need to use inplace operations for performance reasons.
|
|
# - ANN002: as much as i'd like to enforce this using `TypedDict`s and a `__kwargs__`
|
|
# dunder, it would tightly couple us to external libraries.
|
|
# - ANN003: same as above.
|
|
# - PLR0913: as nice as smaller functions are for maintenance and readability, this rule
|
|
# is unenforceable in such a data-heavy library.
|
|
# - PLR0914: same as above.
|
|
# - PLR0917: same as above.
|
|
# - TC001: the `TYPE_CHECKING` blocks either don't work or i'm too stupid to get them to work.
|
|
# - TC002: same as above.
|
|
# - TC003: same as above.
|
|
# - ISC001: Personally, i really like this rule but apparently it can cause issues with the ruff formatter.
|
|
ignore = [
|
|
"PD002",
|
|
"ANN002",
|
|
"ANN003",
|
|
"PLR0913",
|
|
# "PLR0914",
|
|
# "PLR0917",
|
|
"TC001",
|
|
"TC002",
|
|
"TC003",
|
|
"ISC001",
|
|
]
|
|
# Allow autofix for all enabled rules (when `--fix`) is provided.
|
|
fixable = [
|
|
"A",
|
|
"B",
|
|
"C",
|
|
"D",
|
|
"E",
|
|
"F",
|
|
"G",
|
|
"I",
|
|
"N",
|
|
"Q",
|
|
"S",
|
|
"T",
|
|
"W",
|
|
"ANN",
|
|
"ARG",
|
|
"BLE",
|
|
"COM",
|
|
"DJ",
|
|
"DTZ",
|
|
"EM",
|
|
"ERA",
|
|
"EXE",
|
|
"FBT",
|
|
"ICN",
|
|
"INP",
|
|
"ISC",
|
|
"NPY",
|
|
"PD",
|
|
"PGH",
|
|
"PIE",
|
|
"PL",
|
|
"PT",
|
|
"PTH",
|
|
"PYI",
|
|
"RET",
|
|
"RSE",
|
|
"RUF",
|
|
"SIM",
|
|
"SLF",
|
|
"TC",
|
|
"TID",
|
|
"TRY",
|
|
"UP",
|
|
"YTT",
|
|
]
|
|
unfixable = []
|
|
exclude = [
|
|
".bzr",
|
|
".direnv",
|
|
".eggs",
|
|
".git",
|
|
".hg",
|
|
".mypy_cache",
|
|
".nox",
|
|
".pants.d",
|
|
".pytype",
|
|
".ruff_cache",
|
|
".svn",
|
|
".tox",
|
|
".venv",
|
|
"__pypackages__",
|
|
"_build",
|
|
"buck-out",
|
|
"build",
|
|
"dist",
|
|
"node_modules",
|
|
"venv",
|
|
".vscode",
|
|
"docs",
|
|
]
|
|
# Allow unused variables when underscore-prefixed.
|
|
dummy-variable-rgx = "^(_+|(_+[a-zA-Z0-9_]*[a-zA-Z0-9]+?))$"
|
|
extend-select = ["I"]
|
|
|
|
[tool.ruff.lint.isort]
|
|
force-sort-within-sections = true
|
|
lines-after-imports = -1
|
|
|
|
[tool.ruff.lint.pydocstyle]
|
|
convention = "google"
|
|
|
|
[tool.ruff.format]
|
|
quote-style = "double"
|
|
indent-style = "space"
|
|
line-ending = "auto"
|
|
|
|
[tool.ruff.lint.mccabe]
|
|
# Unlike Flake8, default to a complexity level of 10.
|
|
max-complexity = 10
|
|
|
|
[tool.ruff.lint.flake8-annotations]
|
|
mypy-init-return = true
|
|
|
|
[tool.mypy]
|
|
check_untyped_defs = true
|
|
ignore_missing_imports = true
|
|
exclude = ["docs/", "tests/"]
|
|
|
|
[tool.pytest.ini_options]
|
|
testpaths = ["tests"]
|
|
pythonpath = [".venv/bin/python"]
|