Abelbeck Aviation Checklist progress: back-end is on a good way.

✅ asyncio HTTP server
✅ API module "Pilot's Logbook"
✅ API module "Aircraft Database"
✅ API module "Navigation"
✅ API module "German AIXM AIP"
✅ API module "German Print AIP"

"Navigation" offers course and wind triangle calculations.

"Aircraft database" offers take-off/landing distance calculations.

My digital local-only flight bag is evolving...

#aviationnerd #python #asyncio

I have to admit that asyncio is showing me my age.

Had to wrap my mind around it. Took some days to get a separate update thread (AIXM processing and AIP png downloading can take quite some time) cancelled in a well-defined and robust way.

Just saying: to_thread() creates a thread pool, but shutting down said pool doesn't mean that the tasks inside get cancelled. Thus: threading.Event to the rescue. 🙄