jaknapper
52532a90d7
More spacing below buttons
2025-04-08 18:41:11 +01:00
jaknapper
4fa2813e6a
More spacing and nicer dark mode colours
2025-04-08 18:30:40 +01:00
Joe Knapper
d4247235e3
Merge branch 'csm-return-to-start' into 'v3'
...
CSM always returns to start on error
See merge request openflexure/openflexure-microscope-server!227
2025-04-08 12:49:38 +00:00
Joe Knapper
bf82f37c47
Dependency bump for camera_stage_mapping to 0.1.8
...
Returns the errors we expect
2025-04-08 12:09:15 +00:00
Joe Knapper
e4ef8b2717
Merge branch 'consistent-logging' into 'v3'
...
Stop uvicorn.run disabling existing loggers
Closes #284
See merge request openflexure/openflexure-microscope-server!228
2025-04-08 11:31:33 +00:00
Joe Knapper
2cffe21727
Merge branch 'background-UV' into 'v3'
...
Use the UV channels only to determine if an area is background or sample
Closes #300
See merge request openflexure/openflexure-microscope-server!211
2025-04-08 10:30:17 +00:00
Julian Stirling
a4390255db
Merge branch 'reorder_tabs' into 'v3'
...
Reorder tabs
See merge request openflexure/openflexure-microscope-server!231
2025-04-08 10:27:18 +00:00
jaknapper
b340da488e
Use the UV channels only to determine if an area is background or sample
2025-04-08 11:14:17 +01:00
Julian Stirling
3dab8f09a4
Merge branch 'purge-windows-line-endings' into 'v3'
...
Purge all windows line endings and add check to formatter.
Closes #317
See merge request openflexure/openflexure-microscope-server!232
2025-04-08 10:07:14 +00:00
Julian Stirling
1493f51212
Purge all windows line endings and add check to formatter.
...
Also changes python version in pyproject.toml as it is incorrect
2025-04-08 10:51:26 +01:00
Julian Stirling
3a47151694
Serve logfile and logs for UI seperately
2025-04-07 23:45:19 +01:00
Julian Stirling
70d9e2f758
Add custom log handler for sending logs to UI
2025-04-07 23:16:00 +01:00
jaknapper
421d4a5f10
Spaces in tab names, more space, centred
2025-04-07 18:54:30 +01:00
jaknapper
3e82286245
Reorder GUI tabs to match the order of use
2025-04-07 18:18:16 +01:00
jaknapper
33c74741fe
Fixed import and re-raise cancelled error
2025-04-07 15:46:20 +01:00
Joe Knapper
a506625e40
Treat cancellation and other errors differently
2025-04-07 14:22:43 +01:00
Joe Knapper
9995e5b3bb
Import custom Mapping error from camera_stage_mapping
2025-04-07 14:18:07 +01:00
Julian Stirling
dd0b30df51
Stop uvicorn.run disabling existing loggers
2025-04-06 15:26:39 +01:00
jaknapper
67443ff939
Capture ValueErrors, which covers most CSM errors, not all Exceptions
2025-04-03 13:52:04 +01:00
jaknapper
46d513d9e6
Catch cancelled and other errors in single line
2025-04-02 18:25:35 +01:00
Julian Stirling
26d488e75f
Merge branch 'exposure-time-name' into 'v3'
...
Rename exposure (with limit)
See merge request openflexure/openflexure-microscope-server!225
2025-04-02 17:09:26 +00:00
Joe Knapper
79b396a66f
CSM always returns to start on error
2025-04-02 17:54:12 +01:00
Julian Stirling
550c977f59
Merge branch 'split-ruff-ci' into 'v3'
...
Split up ruff format and lint
See merge request openflexure/openflexure-microscope-server!226
2025-04-02 13:41:35 +00:00
Julian Stirling
32f2a7ce70
Fix spurious line endings, don't allow ruff-format to fail anymore
2025-04-02 14:25:22 +01:00
Julian Stirling
928d5ef300
Try pinning pydantic version as server now fails tests with error
2025-04-02 14:05:38 +01:00
Julian Stirling
336b504377
Split up ruff format and lint allowing format to fail
2025-04-02 13:39:12 +01:00
jaknapper
01d906e46a
Rename exposure (with limit)
2025-04-02 13:02:01 +01:00
Julian Stirling
9fb417e4e6
Edit v3 branch readme as we make it the Default branch to point people to master if they are looking for v2 code
2025-02-21 10:40:25 +00:00
Richard Bowman
e8ae496d08
Use published packages
...
I've published [pre]releases on PyPI. This commit uses the mos recent releases of labthings-picamera2 and camera-stage-mapping.
2024-12-18 14:26:15 +00:00
Richard Bowman
83e10b125b
Fix return type annotation for autofocus
2024-12-18 14:23:58 +00:00
Richard Bowman
db11e03321
Constrain numpy < 2
...
picamera2 fails to import with numpy 2.
2024-12-18 14:23:44 +00:00
Richard Bowman
d9c8a083fd
Merge branch 'v3-ci-and-tests' into 'v3'
...
Add more unit tests and fix CI
See merge request openflexure/openflexure-microscope-server!194
2024-12-03 14:42:48 +00:00
Richard Bowman
1d59cddac1
Disable pytest code quality report
...
Code quality report plugin clashes with the version of pytest specced in labthings.
If we resolve this upstream, we can re-enable it.
2024-12-03 14:19:36 +00:00
Richard Bowman
c3cd30b642
Only rebuild docker for changes
...
Docker is now only rebuilt when it's changed, and on `v3` branch.
I've also added code quality reporting for pytest.
2024-12-03 12:54:34 +00:00
Richard Bowman
71e6d84aa4
Build docker image and run ruff/pytest
2024-12-03 12:18:45 +00:00
Richard Bowman
77794c94eb
Update documentation on dependencies/dev tools
2024-12-03 11:18:24 +00:00
Richard Bowman
9fd8fc37f1
Formatted with Ruff
2024-12-03 06:46:08 +00:00
Richard Bowman
27aec769a2
Linter fixes
...
NB I have permitted bare except: blocks in smart_scan. This should be reverted.
2024-12-03 06:43:45 +00:00
Richard Bowman
57177c6a56
Sped up camera and got CSM passing
...
Using lower resolution helps speed it up, and skipping CSM settling time makes a big difference.
2024-12-03 06:35:16 +00:00
Richard Bowman
1e7069b375
Add more tests, speed up dummy stage
...
I've sped up the stage motion, to run tests in a more reasonable time.
CSM doesn't yet calibrate in the test - I suspect debugging of capture_array
is needed.
2024-12-03 00:16:26 +00:00
Richard Bowman
728aa12d07
Add more unit tests
...
I'm now testing camera metadata and stage functionality. This is only using
the simulated HW - but it's a start.
It would be good to add tests for the
camera-stage mapping Thing, though
that may require speeding up the stage.
2024-12-02 23:26:32 +00:00
Richard Bowman
4d4ca831b3
Merge branch 'v3-camera-protocol' into 'v3'
...
Formal Protocol for camera and stage interfaces
See merge request openflexure/openflexure-microscope-server!192
2024-11-29 13:13:09 +00:00
Richard Bowman
58066f1948
Add a first unit test
...
This checks that the server can start
and perform an autofocus.
Autofocus in turn will test the camera and stage dependencies.
2024-11-29 13:03:36 +00:00
Richard Bowman
bccb1ee923
Stub class for camera protocol
...
As with the previous commit, this adds a concrete stub Thing to enable
DirectThingClient generation, so we
can depend on the camera.
2024-11-29 12:53:42 +00:00
Richard Bowman
a0fbbc3e40
Convert Stage to a Protocol
...
The Stage is now implemented as a runtime-checkable Protocol.
Part of this led to the realisation that we can't create a DirectThingClient
based on a Protocol, only on a concrete Thing. While it might be
a good idea to address that in LabThings in due course, for now
we work around it by creating both a Protocol and a stub class. The stub class implements the protocol, and
can be used to declare a dependency.
2024-11-29 12:53:04 +00:00
Richard Bowman
2e2e877d75
JPEGBlob class definition
...
Static type checking is easier if JPEGBlob is declared as a class, rather than
being created with a function.
2024-11-29 12:19:05 +00:00
Richard Bowman
adbb805556
Formal Protocol for camera interface
...
I've now split the base camera code into a runtime-checkable Protocol
and a concrete base class (which is optional). This removes the requirement
for cameras to subclass `openflexure_microscope.things.camera.Camera`
and instead uses duck typing that should
work both statically and dynamically.
As part of this, I've moved the commonly-used dependencies
on the camera inside `openflexure_microscope.things.camera` for consistency, and to make it easy to update them if it changes in the future.
2024-11-29 11:26:38 +00:00
Richard Bowman
42b4c1246e
Merge branch 'v3-update-labthings' into 'v3'
...
Migrate to new Blob type and update imports
See merge request openflexure/openflexure-microscope-server!191
2024-11-29 09:04:44 +00:00
Richard Bowman
1ba799de22
Migrate to new Blob type and update imports
...
This now uses the latest version of labthings-fastapi.
2024-11-28 17:35:56 +00:00
Richard Bowman
aa42e93154
Correct command in README
2024-11-28 11:14:27 +00:00