Commit Graph

135 Commits

Author SHA1 Message Date
b0txec 9eca9ebaf3 Show real regional water-temperature ranges, not one station duplicated as both bounds
Classify all 65 LVĢMC stations reporting water temperature (56 inland
WTEMD + 9 coastal SEDUT) into the six Ūdens zones by geography, and
report the real min/max across each zone's currently-reporting
stations instead of one hand-picked station's single value shown
twice. Drops readings older than 12h so a stuck sensor can't skew a
zone's range.
2026-08-23 11:45:43 +03:00
b0txec 4b92272e64 Fix Latgale water-temperature station: Daugavpils only reports water level, not temperature 2026-08-23 11:17:30 +03:00
b0txec 4036d2477f Add real-time water temperature backend (Ūdens), fetch-on-demand like warnings 2026-08-23 11:15:33 +03:00
b0txec 39fcb3ed6b Remove the dead METEO_* fetch path
Confirmed via git history it's not a separate vendor: the very first
commit (2023-04-13) included real sample CSVs from it with a Latvian
header identical to the LVGMC/open-data fields — same underlying LVĢMC
data, just an earlier delivery mechanism superseded by the FTP feed and
never removed. Never wired into anything that runs (Server.scala's
import was already commented out).
2026-08-23 10:49:26 +03:00
b0txec 6ddfe73ca0 Split scheduled jobs so the working open-data fetch can run without the credential-less FTP/Harmonie jobs crash-looping the app 2026-08-23 10:34:44 +03:00
b0txec 893a09a4d3 Add real open-data station observations alongside the synthetic/FTP feed 2026-08-23 10:08:58 +03:00
b0txec 6185dbfdb0 Harden LVĢMC warning fetching against partial failures and type drift 2026-08-22 22:41:35 +03:00
b0txec bc5bee171c Add LVGMC warning map workflow 2026-08-22 20:11:20 +03:00
b0txec f3197bf340 Return API responses as JSON 2026-08-22 14:22:15 +03:00
b0txec e726291bdb Build fixed Faktiska production workflow 2026-08-19 17:11:58 +03:00
b0txec b1fff676af Add isolated staging and synthetic weather workflow 2026-08-18 21:26:34 +03:00
Guntis Smaukstelis fabf233c31 Add snow depth to downloadable data 2025-11-19 11:54:47 +02:00
Guntis Smaukstelis 9ab4cfe3fe Changed api to fetch manually only most recent files 2025-11-04 22:58:53 +02:00
Guntis Smaukstelis 56b85cbae2 Fetch weather stations in cron from ftp server 2025-10-29 23:44:50 +02:00
Guntis Smaukstelis d621c2c89a Faster downloading grib files 2025-07-11 11:12:06 +03:00
Guntis Smaukstelis cc9077360b Dont break grib parsing on corrupted data 2025-05-05 22:56:10 +03:00
Guntis Smaukstelis 87792b955c Increase grib download timeout to 60 seconds 2025-03-24 20:45:44 +02:00
Guntis Smaukstelis b44364d9a6 Write fatal errors to logs, view logs, clear tmp folder 2025-03-16 15:38:11 +02:00
Guntis Smaukstelis 329776b67f Move debug logic from server to separate file 2025-03-16 13:33:52 +02:00
Guntis Smaukstelis 841b4b6ec9 Getting lvgmc csv files in frontend 2025-03-10 16:56:24 +02:00
Guntis Smaukstelis 9d6b86e218 Fetching from ftp server 2025-03-09 20:02:16 +02:00
Guntis Smaukstelis 52180544e9 Add debugging rest methods for folders and time 2025-03-06 00:00:21 +02:00
Guntis Smaukstelis e9408391ac Rest api for deleting old forecasts 2025-03-05 23:25:42 +02:00
Guntis Smaukstelis 17cb0e550a Recover dateTime parsing with hardcded date 2025-03-03 22:32:39 +02:00
Guntis Smaukstelis b43764b868 Restart program 5sec after fatal error 2025-03-03 22:22:20 +02:00
Guntis Smaukstelis 5b99d12d9e Try().recover() for reference date time extracting from grib 2025-03-03 21:31:39 +02:00
Guntis Smaukstelis f0c5d2c42b Fix Dockerfile.local except volumes 2025-03-01 18:16:56 +02:00
Guntis Smaukstelis 2206e1018a Remove console logs 2025-02-26 13:32:07 +02:00
Guntis Smaukstelis 5e47a336e6 Process slideshow requests in batches, add more memory 2025-02-25 18:19:42 +02:00
Guntis Smaukstelis 3696172c72 Optimize getAllStructure with parTraverseN, chunk reading with RandomAccessFile 2025-02-24 23:56:21 +02:00
Guntis Smaukstelis b6cc4a4b24 Show which slide show hours is fetched 2025-02-23 20:21:11 +02:00
Guntis Smaukstelis cb9e6a88a0 Draw latvia contour, rescale canvas 2025-02-18 15:37:17 +02:00
Guntis Smaukstelis 692594dcad Save csv to postgres after fetching 2025-02-16 16:42:35 +02:00
Guntis Smaukstelis 0b221bcfee Download structure for all files in one go. For better UX 2025-02-14 20:26:57 +02:00
Guntis Smaukstelis 8bd5be413d Cleanup now keeps only needed grib files 2025-02-14 14:59:07 +02:00
Guntis Smaukstelis 15cfbd1801 Refactor to one scheduler, separated csv/grib under one folder 2025-02-14 14:46:31 +02:00
Guntis Smaukstelis 3b8bb7d826 Hacky way to hardcode routes for spa 2025-02-14 12:58:19 +02:00
Guntis Smaukstelis dc82b95a8a Fix paths in docker images 2025-02-13 23:21:19 +02:00
Guntis Smaukstelis 37ac7eb0e3 Fix deployment for fly.io 2025-02-13 16:11:50 +02:00
Guntis Smaukstelis c3f85fb477 Create just one scheduler instance 2025-02-13 13:15:46 +02:00
Guntis Smaukstelis 78060f61c0 Add fetch recent gribs to scheduler 2025-02-12 23:32:30 +02:00
Guntis Smaukstelis 35acc79095 Universal scheduler, cleanup task for scheduler 2025-02-12 23:18:40 +02:00
Guntis Smaukstelis 09449b5675 Delete old grib files more than 9hours old 2025-02-11 11:33:27 +02:00
Guntis Smaukstelis cf69372204 Download recent forecasts with checking local files 2025-02-10 23:43:58 +02:00
Guntis Smaukstelis 63d555bf5b Read forecast dates which are already downloaded 2025-02-08 23:34:50 +02:00
Guntis Smaukstelis e203b4c01b Downlaod available forecasts from stac api 2025-02-08 22:31:23 +02:00
Guntis Smaukstelis af9debbb2e Consistent data formatting 2025-02-05 23:35:40 +02:00
Guntis Smaukstelis 9c8902e746 Add wind direction drawing 2025-02-04 22:47:01 +02:00
Guntis Smaukstelis 2b1e348dde Fix drawing of temperature, precipitation, wind 2025-02-04 19:42:35 +02:00
Guntis Smaukstelis df8d16ed4a Fetch binary chunk and draw on canvas 2025-02-03 23:33:28 +02:00