Commit Graph
46 Commits
Author SHA1 Message Date
Ian Renton 50ab27e4a2 Refactor of caching & data storage part 13 #118 2026-08-03 08:56:34 +01:00
Ian Renton 41aecc6007 Refactor of caching & data storage part 7 #118 2026-08-01 10:34:20 +01:00
Ian Renton ed7f13f079 Refactor of caching & data storage part 6 #118 2026-08-01 09:11:40 +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 c3bcc1190d Structure changes to match other projects and minor logging improvements 2026-07-26 07:47:38 +01:00
Ian Renton 3c4c595288 Put static assets in a separate directory so they can be delivered directly by nginx 2026-07-25 16:49:49 +01:00
Ian Renton e7253c0916 Improve error reporting 2026-07-25 13:42:21 +01:00
Ian Renton 2fc9658571 Improve error handling to spare the server log from user's malformed requests and stop trying to parse data from providers if the HTTP status was not 200 2026-07-25 08:17:17 +01:00
Ian Renton eee0d70140 Create SIGRef objects when converting dict to Spot object in the spot object's own __post_init__ method rather than in add_spot.py 2026-07-10 17:45:43 +01:00
Ian Renton b09108b41b Fix a bug where some NaN values could leak into the JSON output, causing it to be invalid. Created a new safe_json_dumps method since we would otherwise now be providing multiple parameters all over the code 2026-06-28 18:09:44 +01:00
Ian Renton d1df772649 Disambiguation between Towers and Toilets on the Air 2026-06-25 19:25:05 +01:00
Ian Renton 89bb5d5e3e Fix broken options call 2026-06-21 21:28:05 +01:00
Ian Renton 316a356811 Docs for propagation modes 2026-06-21 11:02:41 +01:00
Ian Renton 07d0d98f3d Global autoformat 2026-06-19 21:36:11 +01:00
Ian Renton edb2641f76 Fix some IDE warnings, mostly around type safety on the Python side 2026-06-19 21:33:46 +01:00
Ian Renton 8fc3cfa56d Fix some IDE warnings 2026-06-17 18:08:02 +01:00
Ian Renton b725c34f7c General refactor to remove stuff being passed around the Tornado handlers when it doesn't need to be. Conditions provider presence is how handled on the JS side without needing special booleans sent to every page handler. 2026-06-09 11:06:48 +01:00
Ian Renton cd30fc765b Add an API-only mode that hides the server's web UI. Closes #111 2026-06-09 10:38:16 +01:00
Ian Renton 6938a8cc0a SSE server reliability improvements 2026-06-05 16:17:29 +01:00
Ian Renton f6622bb942 SSE server reliability improvements 2026-06-05 16:15:10 +01:00
Ian Renton 74caae342b SSE server reliability improvements 2026-06-05 16:11:25 +01:00
Ian Renton a2dff07c0e SSE server reliability improvements 2026-06-05 16:06:33 +01:00
Ian Renton 64a7b27887 Support fetching ionosonde data for FoF2 and MUF display on the Conditions page 2026-05-15 18:25:54 +01:00
Ian Renton 363735a235 Bug fixes and performance improvements 2026-05-10 10:57:41 +01:00
Ian Renton f81ef4347f Modify the backend so that instead of using the server owner's QRZ & HamQTH credentials, it instead requires them to be provided by the client (if none are provided, the lookups do not occur.) 2026-05-09 15:43:22 +01:00
Ian Renton 76b0ec24b7 Hide conditions page entries if data isn't available 2026-04-03 21:47:35 +01:00
Ian Renton da7bb4223e Allow floating point received_since times 2026-04-03 15:35:06 +01:00
Ian Renton 4fe8dfc36a DX stats table. Closes #99 2026-03-29 10:12:25 +01:00
Ian Renton 1173af6a9d Fetch solar conditions from HamQSL #92 2026-03-28 10:04:29 +00:00
Ian Renton b0a7e4ea81 Fix canonical & meta URLs. Closes #107 2026-03-09 21:00:23 +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 3cd1352ff3 CQ/ITU zone lookups 2026-02-03 19:06:43 +00:00
Ian Renton 5230fa535f Set up web UI using web_ui_options embedded directly into HTML, to avoid more complex JS load order faff #102 2026-01-30 22:24:12 +00:00
Ian Renton cfff8dd832 Allow providers to be off-by-default in the web UI. Closes #93 2026-01-11 15:03:17 +00:00
Ian Renton 6cf1b38355 Fix metrics content type? 2025-12-24 10:10:46 +00:00
Ian Renton bcc40d1416 SSE custom headers #3 2025-12-24 09:44:55 +00:00
Ian Renton 2fead92dc5 SSE updates every 5 seconds is probably fine, we don't really need every second. #3 2025-12-24 08:57:38 +00:00
Ian Renton 70dc1b495c Fix SSE connections not respecting filters #3 2025-12-23 22:24:30 +00:00
Ian Renton 86beb27ebf Implement SSE endpoints in Tornado #3 2025-12-23 21:01:41 +00:00
Ian Renton d463403018 Implement web server metrics in Tornado #3 2025-12-23 14:23:50 +00:00
Ian Renton 23a6e08777 Implement more request handlers in Tornado #3 2025-12-23 14:05:28 +00:00
Ian Renton 61784e8af6 Split up some code for sanity #3 2025-12-23 11:51:00 +00:00