|
| 1 | +[build-system] |
| 2 | +requires = ["hatchling", "hatch-vcs"] |
| 3 | +build-backend = "hatchling.build" |
| 4 | + |
| 5 | +[project] |
| 6 | +name = "pytroll-collectors" |
| 7 | +dynamic = ["version"] |
| 8 | +description = "Pytroll data collectors" |
| 9 | +readme = "README.md" |
| 10 | +license = "GPL-3.0-or-later" |
| 11 | +license-files = ["LICENSE"] |
| 12 | +requires-python = ">=3.11" |
| 13 | +authors = [ |
| 14 | + { name = "Martin Raspaud", email = "martin.raspaud@smhi.se" }, |
| 15 | +] |
| 16 | +classifiers = [ |
| 17 | + "Development Status :: 3 - Alpha", |
| 18 | + "Intended Audience :: Science/Research", |
| 19 | + "Operating System :: OS Independent", |
| 20 | + "Programming Language :: Python", |
| 21 | + "Topic :: Scientific/Engineering", |
| 22 | +] |
| 23 | +dependencies = [ |
| 24 | + "posttroll>=1.3.0", |
| 25 | + "pyyaml", |
| 26 | + "trollsift", |
| 27 | +] |
| 28 | + |
| 29 | +[project.optional-dependencies] |
| 30 | +all = [ |
| 31 | + "fsspec", |
| 32 | + "netifaces", |
| 33 | + "pyresample", |
| 34 | + "python-dateutil", |
| 35 | + "pytroll-schedule", |
| 36 | + "s3fs", |
| 37 | + "watchdog!=4.0.0", |
| 38 | +] |
| 39 | +geographic_gatherer = [ |
| 40 | + "pyresample", |
| 41 | + "pytroll-schedule", |
| 42 | + "watchdog!=4.0.0", |
| 43 | +] |
| 44 | +s3_segment_gatherer = [ |
| 45 | + "fsspec", |
| 46 | +] |
| 47 | +s3stalker = [ |
| 48 | + "python-dateutil", |
| 49 | + "s3fs", |
| 50 | +] |
| 51 | +scisys_receiver = [ |
| 52 | + "netifaces", |
| 53 | +] |
| 54 | +trollstalker = [ |
| 55 | + "watchdog!=4.0.0", |
| 56 | +] |
| 57 | + |
| 58 | +[project.urls] |
| 59 | +Homepage = "https://github.com/pytroll/pytroll-collectors" |
| 60 | + |
| 61 | +[dependency-groups] |
| 62 | +test = [ |
| 63 | + "freezegun>=1.5.5", |
| 64 | + "paramiko>=4.0.0", |
| 65 | + "pytest>=8.4.2", |
| 66 | + "pytest-cov>=7.0.0", |
| 67 | +] |
| 68 | + |
| 69 | +[tool.hatch.build.targets.sdist] |
| 70 | +include = [ |
| 71 | + "/pytroll_collectors", |
| 72 | +] |
| 73 | + |
| 74 | +[tool.hatch.version] |
| 75 | +source = "vcs" |
| 76 | + |
| 77 | +[tool.hatch.build.hooks.vcs] |
| 78 | +version-file = "pytroll_collectors/version.py" |
| 79 | + |
| 80 | +[tool.coverage.run] |
| 81 | +relative_files = true |
| 82 | +omit = ["pytroll_collectors/version.py"] |
| 83 | + |
| 84 | +[tool.ruff] |
| 85 | +line-length = 120 |
| 86 | + |
| 87 | +[tool.ruff.lint] |
| 88 | +# See https://docs.astral.sh/ruff/rules/ |
| 89 | +select = ["A", "E", "W", "TID", "T10"] |
| 90 | +# to add in the future: "Q", "I", "N", "PT", "S", "T20", "C90", "F", "B", "D" |
| 91 | + |
| 92 | +[tool.ruff.lint.per-file-ignores] |
| 93 | +"pytroll_collectors/tests/*" = ["S101"] # assert allowed in tests |
| 94 | +"doc/source/conf.py" = ["D100", "A001"] # sphinx misbihaving |
| 95 | +"pytroll_collectors/version.py" = ["D100", "Q000"] # automatically generated by hatch-vcs |
| 96 | + |
| 97 | +[tool.ruff.lint.pydocstyle] |
| 98 | +convention = "google" |
| 99 | + |
| 100 | +[tool.ruff.lint.mccabe] |
| 101 | +max-complexity = 10 |
0 commit comments