diff --git a/.idea/spothole.iml b/.idea/spothole.iml index 06bd9e9..8e8dfd8 100644 --- a/.idea/spothole.iml +++ b/.idea/spothole.iml @@ -4,7 +4,7 @@ - + \ No newline at end of file diff --git a/alertproviders/ng3k.py b/alertproviders/ng3k.py index 25a3833..b02b69f 100644 --- a/alertproviders/ng3k.py +++ b/alertproviders/ng3k.py @@ -2,7 +2,7 @@ import re from datetime import datetime import pytz -from rss_parser import RSSParser +from rss_parser import Parser from alertproviders.http_alert_provider import HTTPAlertProvider from data.alert import Alert @@ -20,7 +20,7 @@ class NG3K(HTTPAlertProvider): def _http_response_to_alerts(self, http_response): new_alerts = [] - rss = RSSParser.parse(http_response.content.decode()) + rss = Parser.parse(http_response.content.decode()) # Iterate through source data for source_alert in rss.channel.items: # Deal with "the format"... diff --git a/alertproviders/wota.py b/alertproviders/wota.py index fafb28b..557b876 100644 --- a/alertproviders/wota.py +++ b/alertproviders/wota.py @@ -1,7 +1,7 @@ from datetime import datetime import pytz -from rss_parser import RSSParser +from rss_parser import Parser as RSSParser from alertproviders.http_alert_provider import HTTPAlertProvider from data.alert import Alert diff --git a/core/geo_utils.py b/core/geo_utils.py index e589b9b..8d110ea 100644 --- a/core/geo_utils.py +++ b/core/geo_utils.py @@ -1,3 +1,4 @@ +import json import logging import re from math import floor @@ -11,8 +12,10 @@ TRANSFORMER_OS_GRID_TO_WGS84 = Transformer.from_crs("EPSG:27700", "EPSG:4326") TRANSFORMER_IRISH_GRID_TO_WGS84 = Transformer.from_crs("EPSG:29903", "EPSG:4326") TRANSFORMER_CI_UTM_GRID_TO_WGS84 = Transformer.from_crs("+proj=utm +zone=30 +ellps=WGS84", "EPSG:4326") -cq_zone_data = geopandas.GeoDataFrame.from_features(geopandas.read_file("datafiles/cqzones.geojson")) -itu_zone_data = geopandas.GeoDataFrame.from_features(geopandas.read_file("datafiles/ituzones.geojson")) +with open("datafiles/cqzones.geojson") as f: + cq_zone_data = geopandas.GeoDataFrame.from_features(json.load(f)["features"]) +with open("datafiles/ituzones.geojson") as f: + itu_zone_data = geopandas.GeoDataFrame.from_features(json.load(f)["features"]) for idx in cq_zone_data.index: prepare(cq_zone_data.at[idx, 'geometry']) for idx in itu_zone_data.index: diff --git a/requirements.txt b/requirements.txt index 7ab6fcb..293f6ec 100644 --- a/requirements.txt +++ b/requirements.txt @@ -3,16 +3,17 @@ requests-cache~=1.2.1 pyhamtools~=0.12.0 telnetlib3~=2.0.8 pytz~=2025.2 -requests~=2.32.5 +requests~=2.32.4 aprslib~=0.7.2 diskcache~=5.6.3 psutil~=7.1.0 requests-sse~=0.5.2 -rss-parser~=2.1.1 -pyproj~=3.7.2 -prometheus_client~=0.23.1 +rss-parser~=1.1.1 +pyproj~=3.5.0;python_version<="3.8" +pyproj~=3.7.2;python_version>"3.8" +prometheus_client~=0.21.1 beautifulsoup4~=4.14.2 -websocket-client~=1.9.0 -tornado~=6.5.4 +websocket-client~=1.8.0 +tornado~=6.4.2 tornado_eventsource~=3.0.0 -geopandas~=1.1.2 \ No newline at end of file +geopandas~=0.13.2 \ No newline at end of file diff --git a/spotproviders/wota.py b/spotproviders/wota.py index 1f38187..cfe4a46 100644 --- a/spotproviders/wota.py +++ b/spotproviders/wota.py @@ -3,7 +3,7 @@ import re from datetime import datetime import pytz -from rss_parser import RSSParser +from rss_parser import Parser from data.sig_ref import SIGRef from data.spot import Spot @@ -23,7 +23,7 @@ class WOTA(HTTPSpotProvider): def _http_response_to_spots(self, http_response): new_spots = [] - rss = RSSParser.parse(http_response.content.decode()) + rss = Parser.parse(http_response.content.decode()) # Iterate through source data for source_spot in rss.channel.items: diff --git a/templates/about.html b/templates/about.html index a25e0b0..d6bea1e 100644 --- a/templates/about.html +++ b/templates/about.html @@ -67,7 +67,7 @@

This software is dedicated to the memory of Tom G1PJB, SK, a friend and colleague who sadly passed away around the time I started writing it in Autumn 2025. I was looking forward to showing it to you when it was done.

- + {% end %} \ No newline at end of file diff --git a/templates/add_spot.html b/templates/add_spot.html index f309aca..61fb695 100644 --- a/templates/add_spot.html +++ b/templates/add_spot.html @@ -69,8 +69,8 @@ - - + + {% end %} \ No newline at end of file diff --git a/templates/alerts.html b/templates/alerts.html index ba6ab98..a8b9832 100644 --- a/templates/alerts.html +++ b/templates/alerts.html @@ -56,8 +56,8 @@ - - + + {% end %} \ No newline at end of file diff --git a/templates/bands.html b/templates/bands.html index 7696d7a..a02be0d 100644 --- a/templates/bands.html +++ b/templates/bands.html @@ -62,9 +62,9 @@ - - - + + + {% end %} \ No newline at end of file diff --git a/templates/base.html b/templates/base.html index 8c8cabf..b098bfe 100644 --- a/templates/base.html +++ b/templates/base.html @@ -46,10 +46,10 @@ crossorigin="anonymous"> - - - - + + + + diff --git a/templates/conditions.html b/templates/conditions.html index 05d806c..2b40843 100644 --- a/templates/conditions.html +++ b/templates/conditions.html @@ -189,8 +189,8 @@ - - + + {% end %} \ No newline at end of file diff --git a/templates/map.html b/templates/map.html index ddf49a9..64935d7 100644 --- a/templates/map.html +++ b/templates/map.html @@ -70,9 +70,9 @@ - - - + + + {% end %} \ No newline at end of file diff --git a/templates/spots.html b/templates/spots.html index 1ad967f..080f4d8 100644 --- a/templates/spots.html +++ b/templates/spots.html @@ -87,9 +87,9 @@ - - - + + + {% end %} \ No newline at end of file diff --git a/templates/status.html b/templates/status.html index c8660c4..cc018d2 100644 --- a/templates/status.html +++ b/templates/status.html @@ -59,8 +59,8 @@ - - + +