From 637ddc52f4dc23ba3aa7cccef014aa85cab36b49 Mon Sep 17 00:00:00 2001 From: Sam Scholten Date: Mon, 30 Mar 2026 11:42:22 +1000 Subject: Release v1.0.0 --- pyproject.toml | 96 ++++++++++++++++++++++++++++++++++++++++++++-------------- 1 file changed, 73 insertions(+), 23 deletions(-) (limited to 'pyproject.toml') diff --git a/pyproject.toml b/pyproject.toml index a835307..486d2f6 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,23 +1,73 @@ -[build-system] -requires = ["setuptools"] -build-backend = "setuptools.build_meta" - -[project] -name = "picostream" -version = "0.2.0" -dependencies = [ - "numpy", - "loguru", - "picosdk", - "h5py", - "pyqtgraph", - "numba", - "click", -] - - -[tool.setuptools] -packages = ["picostream"] # List the package names directly - -[project.scripts] -picostream = "picostream.main:main" +[project] +name = "picostream" +version = "1.0.0" +description = "High-speed dual-channel data acquisition for PicoScope 5000a series" +readme = "README.md" +requires-python = ">=3.10" +dependencies = [ + "labdaemon>=1.0.0", + "numpy", + "numba", + "PyQt6>=6.0.0", + "pyqtgraph>=0.13.0", + "loguru>=0.6.0", + "zarr>=2.16.0", + "vispy>=0.14.0", + "picosdk", +] + +[dependency-groups] +dev = [ + "pyinstaller", + "pytest>=7.0.0", + "pytest-cov", + "ruff>=0.1.0", + "pyright>=1.1.0", + "snakeviz>=2.2.0", +] + +[tool.pyright] +# Type checking rules to disable for FFI libraries and external tools +# reportAttributeAccessIssue: ctypes/FFI library attributes (picosdk SDK) +# reportOptionalSubscript: ctypes functions that can return None +# reportOptionalMemberAccess: FFI methods with optional returns +# reportCallIssue: calling possibly-None FFI function results +# reportOptionalOperand: arithmetic on possibly-None FFI results +reportAttributeAccessIssue = false +reportOptionalSubscript = false +reportOptionalMemberAccess = false +reportCallIssue = false +reportOptionalOperand = false + +exclude = [ + "picostream/test_buffered_stream.py", + "picostream/test_live_plotter.py", + "picostream/test_zarr_writer.py", + "picostream/tests/", + "picostream/v0_backup/", +] + +[tool.coverage.run] +source = ["picostream"] +omit = [ + "picostream/tests/", + "picostream/v0_backup/**", +] + +[tool.coverage.report] +exclude_lines = [ + "pragma: no cover", + "def __repr__", + "if TYPE_CHECKING:", + "raise NotImplementedError", + "if __name__ == .__main__.:", +] + +[tool.setuptools] +packages = ["picostream"] + +[project.scripts] +picostream = "picostream.main:main" + +[project.urls] +Repository = "https://github.com/yourusername/picostream" -- cgit v1.2.3