Skip to content

Commit 085bdbf

Browse files
committed
Switch to PEP 621/518 pyproject
1 parent d0a0a98 commit 085bdbf

File tree

4 files changed

+100
-136
lines changed

4 files changed

+100
-136
lines changed

.pre-commit-config.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,10 +37,10 @@ repos:
3737

3838
# Linting
3939
- repo: https://github.com/PyCQA/flake8
40-
rev: 3.9.2
40+
rev: 6.1.0
4141
hooks:
4242
- id: flake8
43-
additional_dependencies: ['flake8-comprehensions==3.5.0']
43+
additional_dependencies: ['flake8-comprehensions==3.14.0', 'flake8-pyproject>=1.2.3']
4444

4545
# Type checking
4646
- repo: https://github.com/pre-commit/mirrors-mypy

pyproject.toml

Lines changed: 98 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,105 @@
11
[build-system]
2-
requires = ["setuptools >= 40.6.0", "wheel"]
2+
requires = ["setuptools>=68.0"]
33
build-backend = "setuptools.build_meta"
44

5+
[project]
6+
name = "zocalo"
7+
version = "0.30.1"
8+
description = "Infrastructure components for automated data processing at Diamond Light Source"
9+
readme = "README.rst"
10+
requires-python = ">=3.8"
11+
license = { file = "LICENSE" }
12+
authors = [
13+
{ name = "Diamond Light Source - Data Analysis Group", email = "[email protected]" },
14+
]
15+
classifiers = [
16+
"Development Status :: 4 - Beta",
17+
"Intended Audience :: Developers",
18+
"License :: OSI Approved :: BSD License",
19+
"Programming Language :: Python :: 3",
20+
"Programming Language :: Python :: 3.8",
21+
"Programming Language :: Python :: 3.9",
22+
"Programming Language :: Python :: 3.10",
23+
"Programming Language :: Python :: 3.11",
24+
"Operating System :: OS Independent",
25+
"Topic :: Software Development :: Libraries :: Python Modules",
26+
]
27+
dependencies = [
28+
"PyYAML",
29+
"graypy>=1.0",
30+
"marshmallow",
31+
"requests",
32+
"pydantic<2",
33+
"setuptools",
34+
"workflows>=2.14",
35+
]
36+
37+
[project.urls]
38+
Bug-Tracker = "https://github.com/DiamondLightSource/python-zocalo/issues"
39+
Changelog = "https://github.com/DiamondLightSource/python-zocalo/blob/main/HISTORY.rst"
40+
Documentation = "https://github.com/DiamondLightSource/python-zocalo"
41+
Download = "https://github.com/DiamondLightSource/python-zocalo/releases"
42+
GitHub = "https://github.com/DiamondLightSource/python-zocalo"
43+
44+
[project.entry-points]
45+
"libtbx.precommit" = { zocalo = "zocalo" }
46+
"zocalo.wrappers" = { dummy = "zocalo.wrapper:DummyWrapper" }
47+
48+
[project.entry-points."libtbx.dispatcher.script"]
49+
"zocalo.configure_rabbitmq" = "zocalo.configure_rabbitmq"
50+
"zocalo.dlq_check" = "zocalo.dlq_check"
51+
"zocalo.dlq_purge" = "zocalo.dlq_purge"
52+
"zocalo.dlq_reinject" = "zocalo.dlq_reinject"
53+
"zocalo.go" = "zocalo.go"
54+
"zocalo.queue_drain" = "zocalo.queue_drain"
55+
"zocalo.service" = "zocalo.service"
56+
"zocalo.shutdown" = "zocalo.shutdown"
57+
"zocalo.wrap" = "zocalo.wrap"
58+
59+
[project.entry-points."workflows.services"]
60+
Dispatcher = "zocalo.service.dispatcher:Dispatcher"
61+
JSONLines = "zocalo.service.jsonlines:JSONLines"
62+
Mailer = "zocalo.service.mailer:Mailer"
63+
Schlockmeister = "zocalo.service.schlockmeister:Schlockmeister"
64+
65+
[project.entry-points."zocalo.configuration.plugins"]
66+
graylog = "zocalo.configuration.plugin_graylog:Graylog"
67+
jmx = "zocalo.configuration.plugin_jmx:JMX"
68+
logging = "zocalo.configuration.plugin_logging:Logging"
69+
rabbitmqapi = "zocalo.configuration.plugin_rabbitmqapi:RabbitAPI"
70+
slurm = "zocalo.configuration.plugin_slurm:Slurm"
71+
smtp = "zocalo.configuration.plugin_smtp:SMTP"
72+
storage = "zocalo.configuration.plugin_storage:Storage"
73+
74+
[project.scripts]
75+
"zocalo.configure_rabbitmq" = "zocalo.cli.configure_rabbitmq:run"
76+
"zocalo.dlq_check" = "zocalo.cli.dlq_check:run"
77+
"zocalo.dlq_purge" = "zocalo.cli.dlq_purge:run"
78+
"zocalo.dlq_reinject" = "zocalo.cli.dlq_reinject:run"
79+
"zocalo.go" = "zocalo.cli.go:run"
80+
"zocalo.pickup" = "zocalo.cli.pickup:run"
81+
"zocalo.queue_drain" = "zocalo.cli.queue_drain:run"
82+
"zocalo.service" = "zocalo.service:start_service"
83+
"zocalo.shutdown" = "zocalo.cli.shutdown:run"
84+
"zocalo.wrap" = "zocalo.cli.wrap:run"
85+
86+
[tool.flake8]
87+
# Black disagrees with flake8 on a few points. Ignore those.
88+
ignore = "E203, E266, E501, W503"
89+
# E203 whitespace before ':'
90+
# E266 too many leading '#' for block comment
91+
# E501 line too long
92+
# W503 line break before binary operator
93+
max-line-length = "88"
94+
select = """
95+
E401,E711,E712,E713,E714,E721,E722,E901,
96+
F401,F402,F403,F405,F541,F631,F632,F633,F811,F812,F821,F822,F841,F901,
97+
W191,W291,W292,W293,W602,W603,W604,W605,W606,
98+
# flake8-comprehensions, https://github.com/adamchainz/flake8-comprehensions
99+
C4,"""
100+
5101
[tool.isort]
6-
profile="black"
102+
profile = "black"
7103

8104
[tool.pytest.ini_options]
9105
required_plugins = "pytest-mock requests-mock"

setup.cfg

Lines changed: 0 additions & 104 deletions
This file was deleted.

setup.py

Lines changed: 0 additions & 28 deletions
This file was deleted.

0 commit comments

Comments
 (0)