|
| 1 | +[build-system] |
| 2 | +requires = ["setuptools>=64", "setuptools_scm[toml]>=8"] |
| 3 | +build-backend = "setuptools.build_meta" |
| 4 | + |
| 5 | +[project] |
| 6 | +name = "hexitec" |
| 7 | +classifiers = [ |
| 8 | + "Development Status :: 4 - Beta", |
| 9 | + "License :: OSI Approved :: Apache Software License", |
| 10 | + "Programming Language :: Python :: 3.8", |
| 11 | + "Programming Language :: Python :: 3.9", |
| 12 | + "Programming Language :: Python :: 3.10", |
| 13 | +] |
| 14 | +description = "Odin Detector Adapters for Hexitec" |
| 15 | +dynamic = ["version"] |
| 16 | +readme = "README.md" |
| 17 | +license.file = "LICENSE" |
| 18 | +authors = [ |
| 19 | + { name = "Christian Angelsen", email = "[email protected]"}, |
| 20 | +] |
| 21 | +requires-python = ">= 3.8" |
| 22 | + |
| 23 | +dependencies = [ |
| 24 | + "odin-control @ git+https://[email protected]/odin-detector/odin-control.git", |
| 25 | + "odin-data @ git+https://[email protected]/odin-detector/[email protected]#subdirectory=python", |
| 26 | + "attrs", |
| 27 | + "coverage", |
| 28 | + "exceptiongroup", |
| 29 | + "future", |
| 30 | + "httpie", |
| 31 | + "h5py", |
| 32 | + "iniconfig", |
| 33 | + "matplotlib", |
| 34 | + "numpy==1.24.2", |
| 35 | + "opencv-python", |
| 36 | + "persist-queue", |
| 37 | + "pluggy", |
| 38 | + "psutil", |
| 39 | + "pytest", |
| 40 | + "pytest-cov", |
| 41 | + "pytest_asyncio", |
| 42 | + "pyzmq", |
| 43 | + "requests", |
| 44 | + "tox", |
| 45 | + "urllib3==1.26.14", |
| 46 | + "xmltodict" |
| 47 | +] |
| 48 | + |
| 49 | +[project.optional-dependencies] |
| 50 | +dev = [ |
| 51 | + "tox", |
| 52 | +] |
| 53 | + |
| 54 | +sync_proxy = [ |
| 55 | + "requests" |
| 56 | +] |
| 57 | +graylog = [ |
| 58 | + "pygelf" |
| 59 | +] |
| 60 | + |
| 61 | +[project.scripts] |
| 62 | +odin_control = "odin.main:main" |
| 63 | +odin_server = "odin.main:main_deprecate" |
| 64 | + |
| 65 | +[project.urls] |
| 66 | +GitHub = "https://github.com/stfc-aeg/hexitec-detector" |
| 67 | + |
| 68 | +[tool.setuptools_scm] |
| 69 | +version_file = "src/hexitec/_version.py" |
| 70 | +root = ".." |
| 71 | + |
| 72 | +[tool.coverage.paths] |
| 73 | +source = ["src", "**/site-packages/"] |
| 74 | + |
| 75 | +[tool.coverage.run] |
| 76 | +data_file = "/tmp/hexitec.coverage" |
| 77 | + |
| 78 | +[tool.pytest.ini_options] |
| 79 | +addopts = "-vv --cov=odin --cov-report=term-missing --asyncio-mode=strict" |
| 80 | +# Addresses '"asyncio_default_fixture_loop_scope" is unset': |
| 81 | +asyncio_default_fixture_loop_scope = "function" |
| 82 | + |
| 83 | +[tool.tox] |
| 84 | +legacy_tox_ini = """ |
| 85 | +# tox test configuration for hexitec |
| 86 | +
|
| 87 | +[tox] |
| 88 | +envlist = clean, py{38, 39, 310}, report |
| 89 | +
|
| 90 | +[gh-actions] |
| 91 | +python = |
| 92 | + 3.8: py38 |
| 93 | + 3.9: py39 |
| 94 | + 3.10: py310, clean, report |
| 95 | +
|
| 96 | +[testenv] |
| 97 | +install_command = pip install --no-deps --index-url https://gitlab.com/api/v4/projects/44753656/packages/pypi/simple rdmacontrol boardcfgstatus hexitec-vsr udpcore |
| 98 | +
|
| 99 | +deps = |
| 100 | + cycler |
| 101 | + git+https://github.com/odin-detector/odin-control.git#egg=odin_control |
| 102 | + Pillow |
| 103 | + kiwisolver |
| 104 | + pytest |
| 105 | + pytest-cov |
| 106 | + pytest_asyncio |
| 107 | + python-dateutil |
| 108 | + requests |
| 109 | + six |
| 110 | + tomli |
| 111 | + tornado>=6.4.1 |
| 112 | + xmltodict |
| 113 | +setenv = |
| 114 | + py{38,39, 310}: COVERAGE_FILE=.coverage.{envname} |
| 115 | +commands = |
| 116 | + pytest --cov=hexitec {posargs:-vv} |
| 117 | +depends = |
| 118 | + py{38,39,310}: clean |
| 119 | + report: py{38,39,310} |
| 120 | +
|
| 121 | +[testenv:clean] |
| 122 | +skip_install = true |
| 123 | +deps = coverage |
| 124 | +commands = coverage erase |
| 125 | +
|
| 126 | +[testenv:report] |
| 127 | +skip_install = true |
| 128 | +deps = coverage |
| 129 | +commands = |
| 130 | + coverage combine |
| 131 | + coverage report -m |
| 132 | +
|
| 133 | +[flake8] |
| 134 | +ignore = E226,E302,E41 |
| 135 | +max-line-length = 160 |
| 136 | +exclude = tests/* |
| 137 | +max-complexity = 10 |
| 138 | +""" |
0 commit comments