This allows the server to run on a laptop, to some extent. I've not tested if this will make the whole
web app work properly.
As StreamingPiCamera2 is hardcoded in various places, this certainly doesn't make cameras totally
interchangeable - but it is a step towards that.
I changed the labthings package such that it will
only install the client dependencies by default.
This is now fixed by requiring the [server] extras.
In the future we might split labthings into client
and server packages.
This generates XML reports when we run pytest through poe, and
uploads them in the relevant CI stage.
I've also ignored mypy cache files - I'm not sure why this hasn't
been an issue before...
The necessary changes to produce valid OpenAPI docs are now in
the latest release of LabThings. This change updates it.
Also, isort was trying to sort my virtual environment, hence
the change to pyproject.toml.
I don't know why that happened - maybe an update to isort?
More or less everything is now done by setup.py
Pipfile simply installs the module in editable mode, which
recursively resolves dependencies as defined in setup.py.
numpy/scipy were mismatched in version, which led to a confusing
import error. I've removed the numpy version specification entirely
and left it to scipy to ensure numpy
is installed. This could do with
review in the future...
Forcing the use of piwheels avoids trying
to install numpy/scipy from source,
which is the Right Answer.
Unfortunately, sometimes packages fail on piwheels, but poetry still
tries to install them. I've had to fix
pyyaml at 5.4.0 for that reason.