Skip to content

Release v6.3

Choose a tag to compare

@chaunceygardiner chaunceygardiner released this 25 Jul 16:55

weewx-loopdata 6.3

A feature release: $station report tags can now be listed as fields, most
usefully a live WeeWX/server uptime that is correct within a packet or two
of a restart. Drop-in upgrade — install over 6.x, no config changes; new
station.* fields are opt-in via the fields line.

What's new

  • Station fields. Any $station report tag can be listed as a field
    with the $ removed: station.uptime.raw,
    station.uptime.long_form(), station.os_uptime.raw,
    station.version, station.location, station.altitude.meter.raw, and
    so on. Values are evaluated against the exact object behind the
    report's $station tag, with loopdata's usual round(n) and format
    specs, so they render as the report would render them.
  • Live, restart-correct uptime. uptime and os_uptime are
    recomputed on every loop packet. The report-cycle workaround — shipping
    $station.uptime.raw in a template and extrapolating in page
    javascript — shows the pre-restart uptime still climbing until the next
    report cycle; a station.uptime.raw loop field is correct within one
    packet. Every other $station attribute is constant for the life of
    the weewxd process and is computed once.
  • Tuple endpoints render as json arrays. A field whose endpoint is a
    tuple of scalars is now emitted as a json array instead of Python's
    str() of the tuple: station.latitude renders as
    ["37", "24.00", "N"] — the same (degrees, minutes, hemisphere) parts a
    template indexes — and an almanac field ending in, e.g., moon_phases
    gets the same treatment.

Requirements

  • WeeWX 4 or 5
  • Python 3.7 or later
  • No third-party Python packages required

Installing/upgrading

Download weewx-loopdata.zip
and install it over your existing copy, then restart weewxd:

weectl extension install weewx-loopdata.zip

(or wee_extension --install weewx-loopdata.zip on WeeWX 4).