Joe Knapper activity https://gitlab.com/jaknapper 2026-03-18T16:47:37Z tag:gitlab.com,2026-03-18:5218617830 Joe Knapper pushed new project branch cchip-smart-stack at OpenFlexure / openflexure-microscope-server 2026-03-18T16:47:37Z jaknapper Joe Knapper

Joe Knapper (ac21a604) at 18 Mar 16:47

Extend smart stack with extra images

tag:gitlab.com,2026-03-18:5218448286 Joe Knapper deleted project branch sigkill-handling at OpenFlexure / openflexure-microscope-server 2026-03-18T16:13:54Z jaknapper Joe Knapper

Joe Knapper (91075af7) at 18 Mar 16:13

tag:gitlab.com,2026-03-18:5218446455 Joe Knapper closed issue #729: mypy fails on Windows at OpenFlexure / openflexure-microscope-server 2026-03-18T16:13:28Z jaknapper Joe Knapper

Bug report

Summary

  • I have searched existing issues to ensure this hasn't been reported.

Expected Behaviour: mypy passes / has same results to Linux Current Behaviour: <!-- Summarise what happened instead -->src\openflexure_microscope_server\stitching.py:228: error: Module has no attribute "SIGKILL"; maybe "SIGILL"? [attr-defined]`

Configuration

Component Value
Server Version v3
Release/Branch v3.0.0-alpha4
Operating System e.g. Windows 11
Python Version e.g. Python 3.13.6

Steps to reproduce

Running mypy fails because SIGKILL is Linux only

Reproducibility:

  • Consistent: Happens every time.
  • Intermittent: Happens roughly [X]% of the time or every [X] scans/clicks.
  • One-off: Only happened once so far.

Relevant logs and/or screenshots

Additional details

tag:gitlab.com,2026-03-18:5218446383 Joe Knapper accepted merge request !547: Explicit windows check before sigkill for mypy at OpenFlexure / openflexure-microscope-server 2026-03-18T16:13:27Z jaknapper Joe Knapper

Closes #729 by adding explicit windows check before calling SIGKILL

Merge checklist:

  • All new/changed functions have up to date typehints and docstrings
  • Any UI updates have a before and after screenshot in the MR description
  • Unit testing of new functionality has similar or better coverage than similar existing code
  • This code has been tested on a microscope
    • Webapp has been recompiled, with aesthetic changes checked in light and dark mode (if changed)
    • With updated settings JSON (if changed)
    • SmartScan and live stitching work
tag:gitlab.com,2026-03-18:5218446348 Joe Knapper pushed to project branch v3 at OpenFlexure / openflexure-microscope-server 2026-03-18T16:13:26Z jaknapper Joe Knapper

Joe Knapper (8bc05ed8) at 18 Mar 16:13

Merge branch 'sigkill-handling' into 'v3'

... and 3 more commits

tag:gitlab.com,2026-03-18:5218162599 Joe Knapper approved merge request !547: Explicit windows check before sigkill for mypy at OpenFlexure / openflexure-microscope-server 2026-03-18T15:14:23Z jaknapper Joe Knapper

Closes #729 by adding explicit windows check before calling SIGKILL

Merge checklist:

  • All new/changed functions have up to date typehints and docstrings
  • Any UI updates have a before and after screenshot in the MR description
  • Unit testing of new functionality has similar or better coverage than similar existing code
  • This code has been tested on a microscope
    • Webapp has been recompiled, with aesthetic changes checked in light and dark mode (if changed)
    • With updated settings JSON (if changed)
    • SmartScan and live stitching work
tag:gitlab.com,2026-03-18:5218044085 Joe Knapper pushed to project branch sigkill-handling at OpenFlexure / openflexure-microscope-server 2026-03-18T14:51:36Z jaknapper Joe Knapper

Joe Knapper (91075af7) at 18 Mar 14:51

Apply suggestions from code review of branch sigkill-handling

tag:gitlab.com,2026-03-18:5218027762 Joe Knapper approved merge request !548: Word break long lines in notifications at OpenFlexure / openflexure-microscope-server 2026-03-18T14:48:30Z jaknapper Joe Knapper

Closes #730

Before

image

After

image

image

Also works for notifications

image

This MR contains the following

  • Updates css to include word breaks in uikit notifications

Merge checklist:

  • All new/changed functions have up to date typehints and docstrings
  • Any UI updates have a before and after screenshot in the MR description
  • Unit testing of new functionality has similar or better coverage than similar existing code
  • This code has been tested on a microscope
    • Webapp has been recompiled, with aesthetic changes checked in light and dark mode (if changed)
    • With updated settings JSON (if changed)
    • SmartScan and live stitching work
tag:gitlab.com,2026-03-18:5217978940 Joe Knapper opened merge request !548: Word break long lines in notifications at OpenFlexure / openflexure-microscope-server 2026-03-18T14:39:28Z jaknapper Joe Knapper

Closes #730

Before

image

After

image

image

Also works for notifications

image

This MR contains the following

  • Updates css to include word breaks in uikit notifications

Merge checklist:

  • All new/changed functions have up to date typehints and docstrings
  • Any UI updates have a before and after screenshot in the MR description
  • Unit testing of new functionality has similar or better coverage than similar existing code
  • This code has been tested on a microscope
    • Webapp has been recompiled, with aesthetic changes checked in light and dark mode (if changed)
    • With updated settings JSON (if changed)
    • SmartScan and live stitching work
tag:gitlab.com,2026-03-18:5217948399 Joe Knapper pushed new project branch wrap-uk-notifications at OpenFlexure / openflexure-microscope-server 2026-03-18T14:33:58Z jaknapper Joe Knapper

Joe Knapper (e703ce06) at 18 Mar 14:33

Word break long lines in notifications

tag:gitlab.com,2026-03-18:5217903267 Joe Knapper approved merge request !536: Split up slide scan tab and create a generic action tab (attempt 2) at OpenFlexure / openflexure-microscope-server 2026-03-18T14:25:08Z jaknapper Joe Knapper

Note this is build upon !530 That should be merged first

This is a second attempt to create a generic action tab so that we can reuse some of the smart scan tab's functionality without copying the tab.

It uses code and lessons learned from !512, but is built upon !530. There were too many significant conflicts to do a direct rebase.

This MR contains the following

  • Create actionTab that can poll and action and show a log and optionally a mini stream
  • Use actionTab to make the slideScanTab
  • Split slideScanControls out of slideScanTab
  • Update polling logic of action button and allow action button to be forced to a specific task id (useful if creating it to cancel and ongoing action)

UI changes:

Before: (while scanning)
image

After: (while scanning)
image

Before: (after scanning)
image

After: (after scanning)
image

Merge checklist:

  • All new/changed functions have up to date typehints and docstrings
  • Any UI updates have a before and after screenshot in the MR description
  • Unit testing of new functionality has similar or better coverage than similar existing code
  • This code has been tested on a microscope
    • Webapp has been recompiled, with aesthetic changes checked in light and dark mode (if changed)
    • With updated settings JSON (if changed)
    • SmartScan and live stitching work
tag:gitlab.com,2026-03-18:5217902756 Joe Knapper commented on merge request !536 at OpenFlexure / openflexure-microscope-server 2026-03-18T14:25:01Z jaknapper Joe Knapper

Haven't managed to break this

tag:gitlab.com,2026-03-18:5217860467 Joe Knapper opened issue #730: Error pop ups overflow in webapp at OpenFlexure / openflexure-microscope-server 2026-03-18T14:16:36Z jaknapper Joe Knapper tag:gitlab.com,2026-03-18:5217840508 Joe Knapper pushed to project branch sigkill-handling at OpenFlexure / openflexure-microscope-server 2026-03-18T14:12:54Z jaknapper Joe Knapper

Joe Knapper (06182638) at 18 Mar 14:12

Switch to ignoring line

tag:gitlab.com,2026-03-18:5217384250 Joe Knapper opened merge request !547: Explicit windows check before sigkill for mypy at OpenFlexure / openflexure-microscope-server 2026-03-18T12:42:14Z jaknapper Joe Knapper

Closes #729 by adding explicit windows check before calling SIGKILL

Merge checklist:

  • All new/changed functions have up to date typehints and docstrings
  • Any UI updates have a before and after screenshot in the MR description
  • Unit testing of new functionality has similar or better coverage than similar existing code
  • This code has been tested on a microscope
    • Webapp has been recompiled, with aesthetic changes checked in light and dark mode (if changed)
    • With updated settings JSON (if changed)
    • SmartScan and live stitching work
tag:gitlab.com,2026-03-18:5217377824 Joe Knapper pushed new project branch sigkill-handling at OpenFlexure / openflexure-microscope-server 2026-03-18T12:41:03Z jaknapper Joe Knapper

Joe Knapper (1f43d1cc) at 18 Mar 12:41

Explicit windows check before sigkill for mypy

tag:gitlab.com,2026-03-18:5217345131 Joe Knapper opened issue #729: mypy fails on Windows at OpenFlexure / openflexure-microscope-server 2026-03-18T12:33:57Z jaknapper Joe Knapper tag:gitlab.com,2026-03-18:5217320769 Joe Knapper commented on issue #728 at OpenFlexure / openflexure-microscope-server 2026-03-18T12:28:56Z jaknapper Joe Knapper

This is fixed with a combination of !546 (merged) and raspberry-pi-os-image-customiser!24 (merged)

tag:gitlab.com,2026-03-18:5217320598 Joe Knapper closed issue #728: Update Developer Guidance with correct server instructions at OpenFlexure / openflexure-microscope-server 2026-03-18T12:28:53Z jaknapper Joe Knapper tag:gitlab.com,2026-03-18:5217299610 Joe Knapper commented on merge request !23 at OpenFlexure / Raspberry Pi OS Image Customiser 2026-03-18T12:24:22Z jaknapper Joe Knapper

This builds, boots and scans fine, it's around 150MB smaller