Commit Graph
30 Commits
Author SHA1 Message Date
Ian Renton 29d8654234 Use _stop_event consistently across all threads as the way to signal that it should stop. Add thread joins with timeouts to allow the program to exit cleanly 2026-09-18 09:21:38 +01:00
Ian Renton 7c458a8c5b Extract webserver metrics into a separate class to avoid passing it into every API call. Change the display to requests per hour rather than just last request time. Add SSE and telnet client connected count. 2026-09-11 22:32:04 +01:00
Ian Renton 5e56cd3b19 Add telnet server 2026-09-11 15:55:57 +01:00
Ian Renton ba56acd7ac Fix a bug where solar conditions and status data were not properly persisted to disk between restarts. Release v2.0.5 2026-08-29 09:17:24 +01:00
Ian Renton 7220a0f58d ruff format && ruff check --fix 2026-08-16 14:11:45 +01:00
Ian Renton a6e54f524d More ruff linter fixes 2026-08-15 08:43:19 +01:00
Ian Renton af3f82c14d Use ruff linter to fix issues and provide consistent formatting 2026-08-15 08:25:54 +01:00
Ian Renton bab14bd7ac Bring back cleanup thread 2026-08-13 07:07:15 +01:00
Ian Renton c687202a61 Replace dash-separated config & API properties with underscore-separated versions. #127 2026-08-10 20:55:18 +01:00
Ian Renton 5c86346074 Merge branch 'main' into 2.0-pre
# Conflicts:
#	core/config.py
#	core/status_reporter.py
#	server/handlers/api/options.py
#	static/js/bands.js
#	static/js/map.js
#	static/js/spots.js
#	templates/status.html
2026-08-10 18:34:32 +01:00
Ian Renton 7860b60f47 Fix an issue where "spot providers enabled by default" was still being fetched through WEB_UI_OPTIONS on a path that required spot providers to have a "name" field in *config* rather than at runtime. Closes #124 2026-08-10 06:06:33 +01:00
Ian Renton 62b3414d29 Refactor of caching & data storage part 17 #118 2026-08-04 22:11:34 +01:00
Ian Renton 459d999f57 Refactor of caching & data storage part 16 #118 2026-08-03 22:15:29 +01:00
Ian Renton 11a236e668 Refactor of caching & data storage part 10 #118 2026-08-02 10:31:31 +01:00
Ian Renton ed7f13f079 Refactor of caching & data storage part 6 #118 2026-08-01 09:11:40 +01:00
Ian Renton 23edd4e02e Refactor of caching & data storage part 4 #118 2026-07-31 21:02:37 +01:00
Ian Renton 0f59af6f9e Refactor of caching & data storage part 3 #118 2026-07-31 17:45:09 +01:00
Ian Renton 818fd2d504 Refactor of caching & data storage part 2 #118 2026-07-31 15:18:23 +01:00
Ian Renton d26ddff7d1 Refactor of caching & data storage part 1 2026-07-31 14:12:55 +01:00
Ian Renton 07d0d98f3d Global autoformat 2026-06-19 21:36:11 +01:00
Ian Renton 1173af6a9d Fetch solar conditions from HamQSL #92 2026-03-28 10:04:29 +00:00
Ian Renton 3792e9f4d9 Fix static analysis issues 2026-02-27 20:33:45 +00:00
Ian Renton 6982354364 Improve adherence to python coding standards and clear up IDE static analysis warnings 2026-02-27 19:17:04 +00:00
Ian Renton 6b18ec6f88 Bulk convert comments above classes/functions/methods into proper docstrings 2026-02-27 14:21:35 +00:00
Ian Renton 068c732796 Attempt to fix CPU utilisation bug by preventing the heartbeat callback leak in the SSE stream handlers and replacing Timer-based with Event-based threads. Also compiled regexes in advance for DXCC callsign lookups for efficiency, and fixed my misunderstanding of what Queue.empty() does 2026-02-27 08:28:43 +00:00
Ian Renton 65957b4c01 Fix a bug where the "last updated time"/"last spot time" of providers that have never updated would be sent as a large negative number and represented on the web UI as e.g. "2026 years ago". 2026-01-18 07:52:06 +00:00
Ian Renton d463403018 Implement web server metrics in Tornado #3 2025-12-23 14:23:50 +00:00
Ian Renton 9768f976c5 Add prometheus metrics endpoint. Closes #67 2025-10-30 13:32:10 +00:00
Ian Renton b45fda2dd2 Fix status query. Closes #36 2025-10-08 16:26:43 +01:00
Ian Renton 74153a9d94 Starting to implement alerts #17 2025-10-04 18:09:54 +01:00