Skip to content

Releases: chaunceygardiner/weewx-skyfield

Release v1.16

Choose a tag to compare

@chaunceygardiner chaunceygardiner released this 31 Jul 18:31

weewx-skyfield 1.16

Two things in this release: a concerted effort to compute everything
natively in Skyfield — after 1.16, everything astronomical the built-in
PyEphem almanac ever answered is computed natively, and what remains in
the fallback is bookkeeping and deprecated names — and a complete
Spanish translation (Beta, awaiting native-speaker review — corrections
and reviewers very welcome). Drop-in upgrade from any 1.x — install
over it, no config changes; nothing on the page changes. The one
caveat: a template that read ha or hlon through the PyEphem
fallback now gets decimal degrees, not radians — drop any
math.degrees() conversion.

What's new

  • Everything astronomical, natively. PyEphem is now needed for
    nothing of substance. Added in 1.16:

    • $almanac.<body>.ha — the local apparent hour angle, for every
      body and named star ($almanac.rigel.ha). A plain float in
      signed decimal degrees like the almanac's other coordinates: 0° at
      transit, negative east of the meridian — the standard convention.
      (PyEphem's ha is radians, usually wrapped to 0–2π — hence the
      caveat above.)
    • $almanac.<body>.hour_angle — its unit-aware sibling: a
      ValueHelper honoring the report's unit settings and formatting,
      beside azimuth, altitude and hlongitude.
    • $almanac.<body>.hlon — PyEphem's own spelling of hlong, in
      decimal degrees, the XEphem sun-reports-Earth convention included.
    • $almanac.moon.subsolar_lat — the selenographic latitude of the
      point where the sun is overhead, the natural partner of colong
      and computed from the same Meeus ch. 53 machinery. Like the
      librations it is a radians float matching PyEphem's scale, and
      carries the same answer in decimal degrees as
      $almanac.moon.subsolar_lat.degrees.
    • $almanac.moon.moon_phase — PyEphem's raw 0–1 illuminated
      fraction (exactly phase/100; the top-level $almanac.moon_phase
      — the phase name — is unchanged).

    What still falls through to PyEphem, deliberately:

    • a_epoch — the epoch stamp of PyEphem's astrometric coordinates;
      data plumbing, not astronomy.
    • rise_time, rise_az, transit_time, transit_alt, set_time,
      set_az — PyEphem's own deprecated Body attributes; rise,
      set, transit and friends are the supported, native vocabulary.

    With PyEphem installed these still work through the fallback; without
    it they are per-tag errors, never a broken report.

  • Spanish ships (Beta). lang/es.conf is a complete translation:
    the page prose, every panel string, the body names and all 88
    constellation names, which follow the Spanish Wikipedia's
    Anexo:Constelaciones
    (the IAU standardizes only the Latin names). The moon phases and
    compass points are as in WeeWX's own Spanish lang file, so a Spanish
    station reads consistently across skins — west is O, the SSW compass
    point SSO. One line turns it on:

    [StdReport]
        [[SkyfieldReport]]
            lang = es
    

    Beta until a native speaker has reviewed it — corrections are very
    welcome as issues or pull requests. Tests keep the Spanish complete
    the same way they keep the German, French and Dutch: new strings
    cannot ship untranslated.

    The Sky page in Spanish

    And single-column, as a tablet or phone sees it:

    The Sky page in Spanish, single column

Requirements

  • Python 3.9 or later
  • WeeWX 5.2 or later
  • Skyfield (1.47 or later) and NumPy in WeeWX's Python environment (see the
    README); PyEphem is NOT required

Installing/upgrading

Download weewx-skyfield.zip from this release, then:

weectl extension install weewx-skyfield.zip

Restart WeeWX. No weewx.conf changes are needed when upgrading from
1.x. Note that upgrading replaces the bundled skin (skins/Skyfield/,
including its lang/ files) — if you have edited an installed lang file
(trying out corrections, say), save a copy or send the corrections
upstream first; local additions such as extra star names survive
upgrades best as [[[Almanac]]] entries in weewx.conf (see the
manual).

Release v1.15

Choose a tag to compare

@chaunceygardiner chaunceygardiner released this 30 Jul 20:08

weewx-skyfield 1.15

A theme and a translation release: the Sky page gains a theme option —
dark (the default), light, or auto, which follows the sun at generation
time; a complete Dutch translation ships (Beta, awaiting native-speaker
review — corrections and reviewers very welcome); the French
translation, its review now complete, drops its Beta label; and every
radians-valued almanac angle now also answers in decimal degrees
($almanac.moon.parallactic_angle.degrees). Drop-in upgrade from any
1.x — install over it, no config changes; at the default theme the page
looks as before (one caption is reworded, see below).

What's new

  • The Sky page has a theme. theme = dark | light | auto in the
    [[SkyfieldReport]] section of weewx.conf: dark is the night
    plate the page has always had and stays the default; light renders
    the whole page — panels included — on the paper-atlas plate the
    embeddable panels have offered since 1.5; auto picks light while
    the sun is up at the moment the page is generated and dark otherwise.
    The page regenerates every report cycle, so the auto flip follows
    sunrise and sunset within one archive interval — the colors are baked
    in at generation time, still with no JavaScript. Asked for by a
    Belchertown user whose skin switches themes the same way (issue #3).

    [StdReport]
        [[SkyfieldReport]]
            theme = auto
    

    With the light plate in play, the Rise & Set caption no longer names
    its tick's color — "the tick across each bar is the transit" — since
    the tick is ivory only on the dark plate. Reworded in all languages.

  • Dutch ships (Beta). lang/nl.conf is a complete translation:
    the page prose, every panel string, the body names and all 88
    constellation names, which follow the Dutch Wikipedia's
    Lijst van sterrenbeelden
    (the IAU standardizes only the Latin names). The moon phases and
    compass points are as in WeeWX's own Dutch lang file, so a Dutch
    station reads consistently across skins. One line turns it on:

    [StdReport]
        [[SkyfieldReport]]
            lang = nl
    

    Beta until a native speaker has reviewed it — corrections are very
    welcome as issues or pull requests. Tests keep the Dutch complete
    the same way they keep the German and French: new strings cannot
    ship untranslated.

    The Sky page in Dutch

  • French is out of Beta. The native-speaker review is complete and
    confirmed the translation as shipped.

  • Degrees on every radians angle. The PyEphem-shaped angles —
    parallactic_angle, the moon's libration_lat/libration_long/
    colong, Jupiter's cmlI/cmlII, Saturn's earth_tilt/sun_tilt,
    and $almanac.separation(...) — now carry the same answer in decimal
    degrees: append .degrees ($almanac.moon.parallactic_angle.degrees);
    .radians names the value itself. The values are unchanged plain
    floats in radians, matching PyEphem's numeric scale, so existing
    templates — including the math.degrees($...) idiom and the
    PyEphem-style explicit call $almanac.venus.parallactic_angle()
    keep working. The parens-free parallactic_angle now also resolves
    outside Cheetah, so loopdata almanac fields can read
    almanac.moon.parallactic_angle.degrees. Asked for by a user.

  • Docs: where Earth's coordinates live. The body lists now say
    explicitly that there is no $almanac.earth — Earth is the observer,
    not a served body (PyEphem has no Earth body either) — and point to
    $almanac.sun.hlongitude/hlatitude, which report Earth's
    heliocentric coordinates per the XEphem convention.

Requirements

  • Python 3.9 or later
  • WeeWX 5.2 or later
  • Skyfield (1.47 or later) and NumPy in WeeWX's Python environment (see the
    README); PyEphem is NOT required

Installing/upgrading

Download weewx-skyfield.zip from this release, then:

weectl extension install weewx-skyfield.zip

Restart WeeWX. No weewx.conf changes are needed when upgrading from
1.x. Note that upgrading replaces the bundled skin (skins/Skyfield/,
including its lang/ files) — if you have edited an installed lang file
(trying out corrections, say), save a copy or send the corrections
upstream first; local additions such as extra star names survive
upgrades best as [[[Almanac]]] entries in weewx.conf (see the
manual).

Release v1.14

Choose a tag to compare

@chaunceygardiner chaunceygardiner released this 29 Jul 18:42

weewx-skyfield 1.14

A fix and a translation release: on stations with a report-wide
duration unit preference, every duration on the Sky page rendered as
0h 00m — now fixed. A complete French translation of the Sky page
ships (Beta, awaiting native-speaker review — corrections and reviewers
very welcome), and the German translation, its review now complete,
drops its Beta label. Drop-in upgrade from any 1.x — install over it,
no config changes; an English or German page looks exactly as before.

What's fixed

  • Durations rendered as 0h 00m under a unit-group preference. If a
    report's [Units] [[Groups]] set a duration preference (e.g. a
    station-wide group_deltatime = hour, a customization some popular
    skins suggest), the Daylight line, the almanac table's Up for
    column and the timeline tooltips all showed 0h 00m (reported from
    the field — thank you). A WeeWX ValueHelper converts to the report's
    preferred units when it is built, so its raw value honors those
    preferences; the panels' arithmetic assumed seconds. The page now
    pins the unit at every raw read (durations to seconds, times to unix
    epoch — closing the same latent hazard for stations preferring
    unix_epoch_ms), so the panels render identically whatever the
    report's unit preferences. Formatted times already honored them and
    are unchanged, and skins embedding the panels get the fix for free.

  • Test suite on older PyEphem. The moon's magnitude-parity test now
    skips on PyEphem before 4.2 (e.g. Debian bookworm's python3-ephem
    4.1.x), whose cruder lunar magnitude model failed the comparison; the
    moon's own regression value stays pinned independently of PyEphem.

What's new

  • French ships (Beta). lang/fr.conf is a complete translation:
    the page prose, every panel string, the body names and all 88
    constellation names, which follow the French Wikipedia's
    Liste des constellations
    (the IAU standardizes only the Latin names). The moon phases and
    compass points are as in WeeWX's own French lang file, so a French
    station reads consistently across skins. One line turns it on:

    [StdReport]
        [[SkyfieldReport]]
            lang = fr
    

    Beta until a native speaker has reviewed it — the file notes the
    judgment calls a reviewer may weigh, and corrections are very welcome
    as issues or pull requests. Tests keep the French complete the same
    way they keep the German: new strings cannot ship untranslated.

  • German is out of Beta. The native-speaker review is complete and
    confirmed the translation as shipped, including the constellation
    names; the alternatives noted in de.conf stay as notes for future
    contributors.

Requirements

  • Python 3.9 or later
  • WeeWX 5.2 or later
  • Skyfield (1.47 or later) and NumPy in WeeWX's Python environment (see the
    README); PyEphem is NOT required

Installing/upgrading

Download weewx-skyfield.zip from this release, then:

weectl extension install weewx-skyfield.zip

Restart WeeWX. No weewx.conf changes are needed when upgrading from
1.x. Note that upgrading replaces the bundled skin (skins/Skyfield/,
including its lang/ files) — if you have edited an installed lang file
(trying out corrections, say), save a copy or send the corrections
upstream first; local additions such as extra star names survive
upgrades best as [[[Almanac]]] entries in weewx.conf (see the
manual).

Release v1.13

Choose a tag to compare

@chaunceygardiner chaunceygardiner released this 28 Jul 13:31

weewx-skyfield 1.13

This release makes the constellations speak your language.
$almanac.<body>.constellation still renders the Latin name it always
has — but the value now carries the other views of the same answer as
attributes: .abbr the IAU abbreviation, .label the report's
translated display name, .name the Latin name again. The German
translation gains all 88 constellation names, and the Sky page's planet
chips use them ("im Sternbild Löwe"). Drop-in upgrade from any 1.x —
install over it, no config changes; existing tags render exactly as
before in every language.

What's new

  • Constellations are translatable. Add an [[Constellations]]
    subsection to the report's [Almanac] section, keyed by IAU
    abbreviation (Psc = Fische), and
    $almanac.saturn.constellation.label renders the translated name;
    an untranslated constellation falls back to the Latin. Works for
    every body and named star, follows each report's own language, and
    needs no PyEphem. The Sky page's planet chips render it, and the
    English reference dictionary (lang/en.conf) ships the full Latin
    set as the key list for translators.

  • The constellation tag is a richer value — with nothing breaking.
    The tag is the same Latin-name string it has been since 1.9:
    templates that compare it (== 'Leo') and weewx-loopdata fields
    that publish it see exactly what they always have, in every
    language. The attributes ride along: .abbr, .label and .name
    work both as report tags and as loopdata almanac fields
    (almanac.mars.constellation.label renders in the language of
    loopdata's target report). $almanac.<body>.constellation_abbr
    remains as a legacy alias for .abbr.

  • German: all 88 constellations (Beta). The names follow the
    German Wikipedia's
    Liste der Sternbilder
    (the IAU standardizes only the Latin names), verified name-by-name
    and cited in de.conf, which now also records the sources of the
    1.12 body names. Beta with the rest of the German: where usage has
    two common forms (Delphin/Delfin, Indianer/Inder, ...) the file
    notes the alternatives, and corrections from German speakers remain
    very welcome.

Requirements

  • Python 3.9 or later
  • WeeWX 5.2 or later
  • Skyfield (1.47 or later) and NumPy in WeeWX's Python environment (see the
    README); PyEphem is NOT required

Installing/upgrading

Download weewx-skyfield.zip from this release, then:

weectl extension install weewx-skyfield.zip

Restart WeeWX. No weewx.conf changes are needed when upgrading from
1.x; German pages pick up the constellation names automatically on the
first report cycle after the restart. Note that upgrading replaces the
bundled skin (skins/Skyfield/, including its lang/ files) — if you
have edited the installed de.conf (trying out corrections, say), save
a copy or send the corrections upstream first; local additions such as
extra star names survive upgrades best as [[[Almanac]]] entries in
weewx.conf (see the manual).

Release v1.12

Choose a tag to compare

@chaunceygardiner chaunceygardiner released this 28 Jul 00:00

weewx-skyfield 1.12

This release makes the Sky page speak your language: every string it
renders is now translatable through WeeWX's own lang-file mechanisms, a
complete German translation ships with the skin (Beta), and a new
$almanac.<body>.label tag gives every body a translatable display name.
It also fixes the analemma's month labels, which silently vanished on
stations running a non-English OS locale. Drop-in upgrade from any 1.x —
install over it, no config changes; English pages render exactly as
before.

What's new

  • The Sky page is translatable — entirely through WeeWX's own
    mechanisms; nothing new to learn if you have translated a WeeWX skin
    before. Every string the page renders (captions, panel labels,
    tooltips, chips, table headers, the footer) is a gettext-style
    [Texts] key: the English string is the key, and a report falls
    back to English one string at a time, so a partial translation is
    fine and can never blank a panel. Body names follow the [Almanac]
    section, compass cardinals the report's [Units] [[Ordinates]]
    directions, hemisphere letters [Labels] — the core-standard
    sources. The skin ships its reference dictionary at lang/en.conf,
    and a test keeps it exact in both directions: a rendered string
    missing from the dictionary fails, and so does a dictionary entry
    nothing renders. Details, including how skins that embed the panels
    pick up translations, in the manual:
    Translating the Sky page.

  • German included (Beta). lang/de.conf is a complete translation,
    kept complete by a test, so new strings cannot ship untranslated. Turn
    it on per report in weewx.conf:

    [StdReport]
        [[SkyfieldReport]]
            lang = de
    

    Beta means the words, not the machinery: the translation awaits
    native-speaker review, and a clumsy phrase is the worst it can do.
    Corrections from German speakers are very welcome — as are further
    languages: a lang file is a self-contained, no-code contribution.

  • New tag $almanac.<body>.label — the body's display name,
    translated by the skin. Add the tag name to the report's [Almanac]
    section (the same section that holds moon_phases), e.g. moon = Mond, and the tag renders "Mond"; untranslated bodies fall back to
    the English name. Works for every body and named star, follows each
    report's own language, and needs no PyEphem. weewx-loopdata almanac
    fields (e.g. almanac.moon.label) render in the language of
    loopdata's target report.

  • FIX: analemma month labels on non-English locales. The months to
    label (Jan, Mar, Jun, Sep, Nov) were picked by comparing
    strftime('%b') output against the English abbreviations, so on a
    station running a German, French, ... OS locale every label silently
    vanished. Months are now picked by number, and the labels render in
    the station's own locale — as the panel's dates always did.

  • Skins embedding the panels: nothing changes for English skins. A
    non-English skin brings the translations along the same way it brings
    the CSS — the panels read [Texts] and [Almanac] from your
    report, not from the bundled skin. The copy/merge recipe is in the
    manual's
    embedding section;
    an out-of-date copied dictionary degrades gracefully (new strings
    render in English), unlike out-of-date CSS.

Requirements

  • Python 3.9 or later
  • WeeWX 5.2 or later
  • Skyfield (1.47 or later) and NumPy in WeeWX's Python environment (see the
    README); PyEphem is NOT required

Installing/upgrading

Download weewx-skyfield.zip from this release, then:

weectl extension install weewx-skyfield.zip

Restart WeeWX. No weewx.conf changes are needed when upgrading from 1.x;
to put the bundled Sky page in German, add lang = de to the
[[SkyfieldReport]] section of weewx.conf — or put it under
[StdReport] [[Defaults]] to switch every skin that ships German
(Seasons included) in one line. Note that upgrading
replaces the bundled skin (skins/Skyfield/, now including its lang/
files) — if you customized it, save a copy first; local additions such as
extra star names survive upgrades best as [[[Almanac]]] entries in
weewx.conf (see the manual).

Release v1.11

Choose a tag to compare

@chaunceygardiner chaunceygardiner released this 27 Jul 18:34

weewx-skyfield 1.11

This release puts moonrise, moonset and transit times on the Sun's Path
panel's moon curve, and marks the curve's open ends — the answer to a
user's bug report about a gap in the moon's path. Drop-in upgrade from
any 1.x — install over it, no config changes.

What's new

  • Times on the moon's path. The Sun's Path panel now labels moonrise,
    moonset and the transit on the moon's dashed curve, in your skin's time
    format, each with a hover tooltip. And where the curve is open — the
    moon's 24-hour track never quite closes, because a lunar day runs about
    50 minutes longer than a calendar day — the two ends now get dots
    labeled 00 and 24: they are the moon's positions at the two midnights
    bounding the day. A user spotted that opening at the top of the arc
    near full moon (the moon transits around midnight then, which parks the
    break at the apex) and reasonably read it as a bug. It is not a bug.
    The moon genuinely does not cross those azimuths that day — and the
    panel now says so: the endpoint dots' tooltips and the caption explain
    the open curve. If your own skin embeds sunpath_svg with hand-copied
    CSS rules, note the labels use a new class, moonlab — copy its rule
    from sky.css.

Requirements

  • Python 3.9 or later
  • WeeWX 5.2 or later
  • Skyfield (1.47 or later) and NumPy in WeeWX's Python environment (see the
    README); PyEphem is NOT required

Installing/upgrading

Download weewx-skyfield.zip from this release, then:

weectl extension install weewx-skyfield.zip

Restart WeeWX. No weewx.conf changes are needed when upgrading from 1.x.
Note that upgrading replaces the bundled skin (skins/Skyfield/) — if you
customized it, save a copy first.

Release v1.10

Choose a tag to compare

@chaunceygardiner chaunceygardiner released this 25 Jul 21:48

weewx-skyfield 1.10

This release fixes a startup failure on Skyfield 1.53 — the version Debian
trixie packages — that silently cost affected stations the whole Skyfield
almanac, and makes the Sky page footer report truthfully what computed the
page. Drop-in upgrade from any 1.x — install over it, no config changes.

What's fixed

  • The almanac now starts on Skyfield 1.53. On 1.53 the in-memory
    ephemeris kernel (the 1.6 SIGBUS guard) failed at startup with
    'InMemorySpiceKernel' object has no attribute 'codes' and the almanac
    declined to register. Reports then fell through to the built-in
    PyEphem/weeutil almanac — planets and rise/set times still looked right,
    but named stars, hip_* tags, Proxima Centauri, eclipses and
    constellations were gone, which was easy to misread as a star-catalog
    problem. The kernel now reuses Skyfield's own initialization verbatim
    over the in-memory ephemeris bytes, so it tracks any Skyfield release's
    internals exactly (verified against 1.53 and 1.54; 1.47 remains the
    minimum).

What's new

  • The Sky page footer is now a diagnostic. The full "Skyfield and the
    JPL DE421 ephemeris · IAU-CSN star names · Hipparcos star data Credit:
    ESA" credit was previously static text — it appeared even when the
    almanac had failed (as with the 1.53 bug above, where a user quoted it
    as evidence the star catalog had loaded). It is now generated from what
    actually computed the page: the full credit only when the Skyfield
    almanac is registered and its star catalog loaded; star catalog unavailable — see the weewxd log when stars are enabled but the catalog
    failed; star catalog disabled under stars = false; and when
    weewx-skyfield never registered at all, the footer credits the built-in
    almanac and points at the log.

Requirements

  • Python 3.9 or later
  • WeeWX 5.2 or later
  • Skyfield (1.47 or later) and NumPy in WeeWX's Python environment (see the
    README); PyEphem is NOT required

Installing/upgrading

Download weewx-skyfield.zip from this release, then:

weectl extension install weewx-skyfield.zip

Restart WeeWX. No weewx.conf changes are needed when upgrading from 1.x.
Note that upgrading replaces the bundled skin (skins/Skyfield/) — if you
customized it, save a copy first.

Release v1.9.1

Choose a tag to compare

@chaunceygardiner chaunceygardiner released this 23 Jul 13:29

weewx-skyfield 1.9.1

A markup-only patch release for the bundled Sky page: the page is now clean
under the current Nu Html Checker (v.Nu), whose living ruleset asks that
every <section> carry a heading. The almanac engine is untouched — every
tag behaves exactly as in 1.9 — and the page renders pixel-identically. It
is a drop-in upgrade: no weewx.conf changes, no new dependencies. If you
don't validate your generated HTML and haven't customized the skin, there
is nothing here you need.

What's new

  • The Sky page's card titles are real headings. Each card's title
    ("The Sky Now · looking up", "Rise & Set · today", ...) was a styled
    <p class="eyebrow">; it is now an <h2 class="eyebrow">, so every
    card <section> carries the heading the HTML spec wants and the page
    outlines cleanly (h1, then h2 per card, no skipped levels). This is
    also a small accessibility win: screen readers and outline navigation
    now see the cards as sections with names.
  • No visual change. The .eyebrow rule gains font-weight:400, so
    the titles keep their exact non-bold small-caps look. If you maintain a
    customized sky.css, add font-weight:400 to your .eyebrow rule when
    you pick up this release's index.html.tmpl.

Requirements

  • Python 3.9 or later
  • WeeWX 5.2 or later
  • Skyfield (1.47 or later) and NumPy in WeeWX's Python environment (see the
    README); PyEphem is NOT required

Installing/upgrading

Download weewx-skyfield.zip from this release, then:

weectl extension install weewx-skyfield.zip

Restart WeeWX. No weewx.conf changes are needed when upgrading from 1.x.

Release v1.9

Choose a tag to compare

@chaunceygardiner chaunceygardiner released this 19 Jul 05:23

weewx-skyfield 1.9

This release adds two almanac tag families with no PyEphem counterpart — eclipses
visible from your station, and the constellation every body currently stands in — and
puts both on the Sky page. It is a drop-in upgrade: no weewx.conf changes, no new
dependencies, nothing downloaded at run time, and every existing tag behaves exactly
as before.

What's new

  • Eclipse tags. $almanac.next_lunar_eclipse and $almanac.next_solar_eclipse
    (with previous_ counterparts) give the time of maximum of the nearest eclipse
    visible from your station — the eclipsed body must be above the horizon at
    maximum, so an eclipse on the other side of the world is skipped. Each has a
    _type companion: penumbral/partial/total for lunar, and for solar the type
    as seen from your location (partial/annular/total) — a station that catches
    only the penumbra of a total eclipse reports partial, which is what an observer
    there will see. When a skin just wants "the next eclipse, whichever kind",
    $almanac.next_eclipse picks the sooner, with _kind (lunar/solar) and
    _type companions. The time tags are ordinary formattable ValueHelpers; the next
    visible eclipse can be years out, so include the year when formatting dates.
  • Constellation tags. Every body — planets, sun, moon, and every star — reports
    the IAU constellation it stands in, judged from your station's topocentric view
    against the official boundaries: $almanac.saturn.constellation ("Pisces"),
    $almanac.saturn.constellation_abbr ("Psc"). The boundary map ships inside the
    Skyfield library, so nothing is downloaded.
  • The Sky page shows both. The countdown row gains a chip for the next eclipse
    visible from your station (lunar or solar, whichever comes sooner, with its locally
    seen type), and each planet chip names the constellation the planet stands in.
  • The README explains the ephemeris choice. A new section, "Why the DE421
    ephemeris (and not DE440)?", documents why the bundled DE421 is the right trade.

Requirements

  • Python 3.9 or later
  • WeeWX 5.2 or later
  • Skyfield (1.47 or later) and NumPy in WeeWX's Python environment (see the
    README); PyEphem is NOT required

Installing/upgrading

Download weewx-skyfield.zip from this release, then:

weectl extension install weewx-skyfield.zip

Restart WeeWX. No weewx.conf changes are needed when upgrading from 1.x.
Note that upgrading replaces the bundled skin (skins/Skyfield/) — if you
customized it, save a copy first.

Release v1.8

Choose a tag to compare

@chaunceygardiner chaunceygardiner released this 13 Jul 05:53

weewx-skyfield 1.8

The Sky page now lays out correctly on phones and tablets, and WeeWX can no
longer fail to shut down if the stop signal arrives during the almanac's
startup load. Nothing else changes: no weewx.conf edits, no tag changes.
This is a drop-in upgrade.

What's new

  • The Sky page's single-column layout is fixed. Below 1160 px (phones
    and most iPads) the page no longer shrinks every section to its content
    width: the sky dome, timelines and table now fill the viewport as
    intended. (The grid rule's align-items:start carried over into the
    flex-column fallback; the fallback now sets align-items:stretch.)
  • Shutdown can no longer be swallowed at startup. WeeWX stops by
    raising an exception from its TERM signal handler, inside whatever code
    is running when the signal lands. If that was the almanac engine's
    startup — loading the ephemeris and star catalog — its log-and-continue
    error handlers swallowed the exception and weewx failed to stop. They
    now hand it back to WeeWX. (Report-time tag evaluation runs in WeeWX's
    report thread and was never affected.)

Requirements

  • Python 3.9 or later
  • WeeWX 5.2 or later
  • Skyfield (1.47 or later) and NumPy in WeeWX's Python environment (see the
    README); PyEphem is NOT required

Installing/upgrading

Download weewx-skyfield.zip from this release, then:

weectl extension install weewx-skyfield.zip

Restart WeeWX. No weewx.conf changes are needed when upgrading from 1.x.
Note that upgrading replaces the bundled skin (skins/Skyfield/) — if you
customized it, save a copy first.