Skip to content

Release v6.9

Latest

Choose a tag to compare

@chaunceygardiner chaunceygardiner released this 08 Aug 16:20

weewx-loopdata 6.9

A next_* almanac field now expires the moment its event passes,
instead of serving the same event until midnight; complete Italian,
Norwegian (Bokmål) and Swedish translations of the sample report ship,
all three Beta pending native-speaker review; and almanac fields no
longer cache a no-data answer for the rest of the day. Drop-in
upgrade — install over 6.x; no configuration changes, and every
existing fields line keeps its meaning (next_* fields simply stop
serving events that have already happened). Released alongside
weewx-skyfield 2.0 and weewx-celestial 8.0, which ship the same three
languages for their pages — and whose satellite pass panel this
release's expiry fix keeps honest.

What's new

  • next_* almanac fields expire at their event's own instant, not
    at midnight.
    Fields naming the same event — say a satellite
    pass's rise, set and maximum altitude — are computed together and
    expire together, at the latest time among them (for a pass, the set
    time): an in-progress pass keeps serving until it ends, then the
    very next packet carries the following pass, every field switching
    at once. Before, the day's first packet computed the event once and
    served it until the local day rolled — a stale window in every
    release since almanac fields shipped in 5.0 (almanac.next_full_moon
    served the old event from the instant it passed until midnight), made
    glaring by developing weewx-celestial 8.0's "Next pass overhead"
    panel against this code: driven by the old caching, the panel showed
    a morning pass as "just set" until the day's end. Fixed before
    either shipped. Recomputes stay rare by construction, since each one returns
    the next occurrence, re-arming the cache: next_full_moon
    recomputes once per lunar month, a satellite's next_pass once per
    pass. previous_* fields and the day tier are unchanged, and a
    group with no time-typed field keeps the once-per-day refresh —
    include a pass time field to get event-time expiry.

  • Italian ships (Beta). lang/it.conf — gauge headings after
    WeeWX's own Seasons skin (Punto di rugiada, Pressione, Pioggia,
    Intensità pioggia), with one documented departure (Temperatura
    percepita
    for Feels Like, the term Italian weather services use);
    the nine trend.barometer.desc tendency descriptions in bulletin
    vocabulary (in aumento, stabile, in diminuzione); and, for a
    loopdata instance whose target report is Italian, the compass
    ordinates (O for west, SSO for SSW, N.D. for no direction), moon
    phases, body and all 88 constellation names. Select it with
    lang = it on the report's stanza.

    The sample report in Italian

  • Norwegian ships (Beta). lang/no.conf (Bokmål; the file code is
    WeeWX's own no) — gauge headings after Seasons' Norwegian
    (Lufttrykk, Regn, Regnintensitet, Føles som), with the
    departures documented in the file header; tendencies stigende /
    stabilt / fallende
    ; and the value-side sections for a Norwegian
    target report (Ø for east, SSV for SSW). Select it with lang = no.

    The sample report in Norwegian

  • Swedish ships (Beta). lang/sv.conf — WeeWX's Seasons skin has
    no Swedish file, so the headings are fresh in SMHI's everyday
    vocabulary (Daggpunkt, Lufttryck, Regnintensitet, Känns som);
    tendencies stigande / stabilt / fallande; and the value-side
    sections for a Swedish target report — coordinates abbreviate east as
    Ö while the compass winds use O (NNO, ONO, OSO, SSO). Select it with
    lang = sv.

    The sample report in Swedish

  • In all three, the shared vocabulary — body names, moon phases,
    hemispheres, compass ordinates, all 88 constellation names — is
    copied verbatim from weewx-skyfield's and weewx-celestial's new lang
    files, kept in step by the same cross-repo test that pins the German,
    French, Danish, Dutch and Spanish. Corrections from native speakers
    are very welcome at
    the issue tracker.

  • No-data almanac answers are no longer cached for the day. A day-
    or event-tier almanac field that evaluates to no data — say, a
    weewx-skyfield satellite whose orbital elements have not been
    downloaded yet — now retries on every packet and picks up its value
    the moment the almanac has data. Before, the honest startup N/A was
    cached until midnight, long after the elements arrived. Fields with
    real values cache exactly as before.

Requirements

  • WeeWX 4 or 5 (translations need WeeWX 4.6 or later)
  • Python 3.7 or later
  • No third-party Python packages required
  • Satellite almanac fields (almanac.iss.next_pass... and friends, as
    weewx-celestial 8.0's migrator emits them) need
    weewx-skyfield 2.0
    registered as the almanac; every other almanac field works with
    PyEphem or WeeWX's built-in almanac, as always

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).