Releases: weewx/weewx
WeeWX Version 5.3.1
Distributions
- Instructions for Debian, Ubuntu, Mint, Raspbian
- Instructions for Redhat, Centos, Fedora
- Instructions for SUSE, OpenSUSE
- Instructions for pip (including macOS)
- Instructions using git. Best choice if you are doing WeeWX development
ChangeLog
Get rid of parenthesized context expressions. They prevented the test suites
from running under Python 3.8 and earlier.
WeeWX Version 5.3.0
Distributions
- Instructions for Debian, Ubuntu, Mint, Raspbian
- Instructions for Redhat, Centos, Fedora
- Instructions for SUSE, OpenSUSE
- Instructions for pip (including macOS)
- Instructions using git. Best choice if you are doing WeeWX development
ChangeLog
Set log-label in sysV init script to 'weewxd-XXX' instead of just 'XXX'
Added rsyslog config example for making logs visible to the group weewx
without having to use any privilege escalation.
Allow extra command line options to be passed to an extension installer.
Addresses Issue #1041.
Added Astronomical Units as a unit of length. Added local_djd as a unit of
local time. PR #998. Thanks to
user Karen!
Moved database-specific code into the weedb module. This is in anticipation
of allowing new databases to be installed as an extension.
New action weectl database rebuild-daily NAME was added to allow the selective
rebuilding of the daily summaries. Addresses Issue #1035.
New action weectl station list-drivers was added to allow the listing of all
available device drivers. Fixes Issue #1050.
Language subdirectory lang is now recursively searched for additional
translation files. This allows extensions to add any translations they might
need.
Converted test suites to use pytest.
New Finish translation for the Seasons skin. Thanks to user
iiseppi! PR #1059.
Remove unnecessary UNIQUE index on PRIMARY KEY columns in SQLite, achieving
size reduction of ~10%. Existing database schemas are not modified. Users
desiring size reduction are advised to consider manually migrating.
Fix problem that prevented weectl database reconfigure from working in cases
where a schema was specified.
Fix problem when importing data into a MySQL database. PR
#1025. Thanks to user Robert!
Fix problem that prevented weewxd from restarting reliably if a MySQL
connection was lost. Fixes Issue #1036.
Add support for kwargs when using .series() tags. PR
#1042.
Documentation now uses Zensical.
Fix problem that caused expanded substitutions to be saved when using
weectl station reconfigure. Fixes Issue #1068.
WeeWX Version 5.2.0
Distributions
- Instructions for Debian, Ubuntu, Mint, Raspbian
- Instructions for Redhat, Centos, Fedora
- Instructions for SUSE, OpenSUSE
- Instructions for pip (including macOS)
- Instructions using git. Best choice if you are doing WeeWX development
ChangeLog
5.2.0 10/05/2025
Now require Python 3.7 or greater.
Added support for WOW-BE. PR #1014. Fixes issue #1013. Thanks to user John!
Module schema is now under module weewx. This lessens pollution of the Python namespace. Addresses Issue #993.
The WeeWX Almanac is now extensible, allowing other astronomy packages to be used besides pyephem. In particular, a WeeWX extension that uses the Skyfield package is available and can be installed. See Issue #981 and PR #988. Thanks to user Johanna!
Fix LOGNAME bug in the weewx-multi sysV script. Thanks to Glenn McKechnie.
Added illuminance to the wview_extended schema. See Issue #992 and PR #992. Thanks to user Jeremy!
Fix typo that causes phantom values of soilMoist3 to appear with VantageVue stations.
Fix bug that prevented relative paths to the config file from working.
Allow simple Python objects to be used as an argument to $jsonize().
Adjust exclusion of top-level files in wheel creation to meet poetry norms and to be consistent across poetry-core versions. Fixes issue #993, in part.
Fix problem that prevented cached values of first and last timestamp from being set. PR #999. Thanks to user Rich Bell!
Fix problem in Standard skin if Select Month was literally selected in drop down list. PR #1002. Thanks to user Ben Cotton!
In the Cumulus import code, the prefix cur_ is used to signify a current value for most observation types. However, there was one exception: curr_in_temp. The utility and documentation have been changed to use cur_in_temp (one 'r'), making all types consistent. Fixes Issue #1006.
Fix a problem caused by an assumption that delta times are always in seconds. Fixes issue Issue #1009.
Fix bug that prevented arbitrary types from being used with weectl database add-column. Fixes issue Issue
#1007.
Fix bug that prevented MySQL and MariaDB versions greater than 10.0 from working. Fixes issue Issue #1010.
Wind direction plots in the Standard skin now use discrete marks, rather than continuous lines.
WeeWX Version 5.1.0
Distributions
- Instructions for Debian, Ubuntu, Mint, Raspbian
- Instructions for Redhat, Centos, Fedora
- Instructions for SUSE, OpenSUSE
- Instructions for pip (including macOS)
- Instructions using git. Best choice if you are doing WeeWX development
ChangeLog
5.1.0 07/04/2024
If option lang is a valid locale, then it will be used to change locale as
well as language. If it is not a valid locale, then the user's default locale
will be used. For example, if lang=de_DE.utf8, then the German locale will be
used. This allows locales to be set on a report-by-report basis. Addresses
issue #867.
Allow country codes to be used in addition to a language code. For example,
zh_CN would specify Chinese language, mainland China (Simplified Chinese),
while zh_TW would specify Chinese language, Taiwan (Traditional Chinese).
Added translation file for Simplified Chinese (zh_CN.conf). Thanks to user
Kranz!
Allow the utility weectl import to update old records in addition to
importing new records. PR #930.
Include the effective user and group to the log. PR
#934.
Allow extra command line options to be passed on to rsync. Fixes issue
#951.
Return False from XTypes function has_data() if the type cannot be
calculated. Thanks to Rich Bell! PR
#929.
Allow calculation of xtype aggregate with missing constituents.
Related to PR #929.
Fix bug in tag $tag.obstype where obstype is an XType that cannot be
calculated. Related to PR #929.
Fix bug that caused the loop_on_init setting in weewx.conf to be ignored.
PR #935.
Reinstate file weeutil/timediff.py. It's not used in WeeWX, but it is used
by some extensions.
Fixed bug in station config where config_units() would fail if there was no
[[Defaults]] section specified in [StdReport].
Use lower-case for the product and vendor codes in udev rules. Fixes issue
#949.
Do not make group changes if identity of user doing the install cannot be
determined. PR #952.
For deb/rpm installs, set permissions on the configuration file to be not
world-readable. PR #948.
WeeWX Version 5.0.2
Distributions
- Instructions for Debian, Ubuntu, Mint, Raspbian
- Instructions for Redhat, Centos, Fedora
- Instructions for SUSE, OpenSUSE
- Instructions for pip (including macOS)
- Instructions using git. Best choice if you are doing WeeWX development
ChangeLog
5.0.2 02/10/2024
Add target network-online.target to the weewx systemd unit file. This prevents
weewxd from starting until the network is ready.
WeeWX Version 5.0.1
Distributions
- Instructions for Debian, Ubuntu, Mint, Raspbian
- Instructions for Redhat, Centos, Fedora
- Instructions for SUSE, OpenSUSE
- Instructions for pip (including macOS)
- Instructions using git. Best choice if you are doing WeeWX development
ChangeLog
5.0.1 02/04/2024
Include backwards compatible reference to weewx.UnknownType.
Fix problem with installing extensions into installations that used V4 config
files that were installed by a package installer.
Fix problem with weectl device when using drivers that were installed
using the extension installer. Fixes issue #918.
Fix problem that prevented daily summaries from being rebuilt if they had been
modified by using weectl database drop-columns.
Allow the use of the tilde (~) prefix with --config options.
Fix problem that prevented debug statements from being logged.
Minor corrections to the Norwegian translations. Thanks to user Aslak!
PR #919.
Change Chinese language code to zh. Fixes issue #912.
Fix bug in redhat/suse scriptlet that incorrectly substituted {weewx}
instead of weewx in the udev rules file.
In the redhat/suse installers, use /var/lib/weewx as HOME for user weewx.
WeeWX Version 5.0.0
Distributions
- Instructions for Debian, Ubuntu, Mint, Raspbian
- Instructions for Redhat, Centos, Fedora
- Instructions for SUSE, OpenSUSE
- Instructions for pip (including macOS)
- Instructions using git. Best choice if you are doing WeeWX development
ChangeLog
5.0.0 01/14/2024
Python 2.7 is no longer supported. You must have Python 3.6 (introduced
December 2016) or greater. WeeWX 5 uses the module importlib.resources,
which was introduced in Python 3.7. So those using Python 3.6 must install
the backport, either using the system's package manager, or pip.
WeeWX can now be installed using pip.
With pip installs, station data is stored in ~/weewx-data by default,
instead of /home/weewx. This allows pip installs to be done without
root privileges. However, /home/weewx can still be used.
The new utility weectl replaces wee_database,
wee_debug, wee_device, wee_extension, wee_import, wee_reports,
and wee_config. Try weectl --help to see how to use it.
Individual reports can now be run using weectl report run. For example,
weectl report run MobileReport.
The extension installer can now install from an http address, not just a
file or directory.
When using weectl database with action calc-missing, the tranche size can
now be set.
Documentation now uses MkDocs. It is no longer included in the
distribution, but can always be accessed online at https://weewx.com/docs.
Package installs now use systemd instead of the old System V /etc/init.d.
Allow StdCalibrate to operate only on LOOP packets, or only on archive
records. Addresses issue #895.
Removed all references to the deprecated package distutils, which is due to
be removed in Python v3.12.
Removed the utility wunderfixer. The Weather Underground no longer
allows posting past-dated records.
Method ImageDraw.textsize() and constants ImageFont.LAYOUT_BASIC, and
Image.ANTIALIAS were deprecated in Pillow 9.2 (1-Jul-2022), then removed in
Pillow 10.0 (1-Jul-2023). V5.0 replaces them with alternatives. Fixes
issue #884.
Fix bug when using Pillow v9.5.0. Fixes issue
#862.
The Standard skin now uses the font DejaVuSansMono-Bold and includes a
copy. Before, it had to rely on hardwired font paths, which were less reliable.
If the uploaders get a response code of 429 ("TOO MANY REQUESTS"), they no
longer bother trying again.
Limit station registration to once a day, max.
Station registration now uses HTTP POST, instead of HTTP GET.
Station registration is delayed by a random length of time to avoid everyone
hitting the server at the same time.
Fix problem where aggregation of null wind directions returns 90Β° instead of
null. Fixes issue #849.
Fix wrong station type for Vantage weectl device --info query.
Add retransmit information for Vantage weectl device --info query.
Fix problem when setting Vantage repeater. Fixes issue
#863.
Detect "dash" values for rain-related measurements on Vantage stations.
Change aggregations minsumtime and maxsumtime to return start-of-day,
rather than the time of max rainfall during the day.
Relax requirement that column dateTime be the first column in the database.
Fixes issue #855.
Allow aggregation of xtypes that are not in the database schema.
Fixes issue #864.
Tag suffix has_data() now works for xtypes. Fixes issue
#877.
Additional shorthand notations for aggregation and trend intervals. For
example, 3h for three hours.
Accumulator firstlast no longer coerces values to a string. Thanks to user
"Karen" for spotting this!
Fix problem that caused crashes with firstlast accumulator type.
Fixes issue #876.
Fixed problem that prevented the astrometric heliocentric longitude of a body
from being calculated properly.
Default format for azimuth properties (such as wind direction) is now zero
padded 3 digits. E.g., 005Β° instead of 5Β°.
Most almanac properties are now returned as ValueHelpers, so they will
obey local formatting conventions (in particular, decimal separators). To
avoid breaking old skins, these properties now have new names. For example,
use $almanac.venus.altitude instead of $almanac.venus.alt.
Fix problem that prevented database from getting hit when calculating
pressure. Fixes issue #875.
Fix problem that prevented option
stale_age from being
honored in image generation. Thanks to user Ian for
PR #879!
Fix problem that prevented complex aggregates such as max_ge from being used
in plots. Fixes issue #881.
Updated humidex formula and reference. Fixes issue
#883.
Fix bugs in the "basic" skin example.
Fix bug that prevented calculating $trend when one of the two records is
missing.
Fix bug that caused the extension installer to crash if one of the service
groups was missing in the configuration file. Fixes issue
#886.
New option retry_wait. If
weewxd encounters a critical error, it will sleep this long before doing a
restart.
Change from old Google Analytics UA code to the GA4 tag system in the Standard
and Seasons skins. Fixes issue #892.
All weectl import sources now include support for a field map meaning any
source field can be imported to any WeeWX archive field.
Units for weectl import sources that require user specified source data
units are now specified in the [[FieldMap]] stanza.
Fixed problem when plotting wind vectors from a database that does not include
daily summaries.
Fixed a long-standing bug in the log message format that made 'python' or
'journal' appear as the process name instead of 'weewx'.
The process name for weewxd is now 'weewxd'. In V4 it was 'weewx'.
The rc script and configuration for FreeBSD/OpenBSD has been updated and now
uses standard BSD conventions.
The DEB/RPM packaging now detect whether systemd is running, so on systems that
use SysV, the rc scripts will be installed, and on systems such as docker that
do not use systemd, no systemd dependencies will be introduced.
WeeWX Version 4.10.2
Distributions
- Instructions for Debian, Ubuntu, Mint, Raspbian
- Instructions for Redhat, Centos, Fedora
- Instructions for SUSE, OpenSUSE
- Instructions for MacOS
- Instructions using setup.py. Best choice if you are doing WeeWX development
ChangeLog
4.10.2 02/22/2023
Removed errant "f-string" in imagegenerator.py.
Added missing ".long_form" to celestial.inc that would cause total daylight
to be given in seconds, instead of long form.
Fix problem that a None value in long_form() would raise an exception.
PR #843. Thanks to user Karen!
The module user.extensions is now imported into wee_reports. Thanks to
user jocelynj! PR #842.
Fix problem that prevented wee_device --set-retransmit from working on
Vantage stations.
Using a bad data binding with an aggregation tag no longer results in an
exception. Instead, it shows the tag in the results. Related to PR #817.
WeeWX Version 4.10.1
Distributions
- Instructions for Debian, Ubuntu, Mint, Raspbian
- Instructions for Redhat, Centos, Fedora
- Instructions for SUSE, OpenSUSE
- Instructions for MacOS
- Instructions using setup.py. Best choice if you are doing WeeWX development
ChangeLog
4.10.1 01/30/2023
Logging handler rotate has been removed. Its need to access privileged
location /var/log/weewx.log on start up would cause crashes, even if it was
never used.
WeeWX Version 4.10.0
Distributions
- Instructions for Debian, Ubuntu, Mint, Raspbian
- Instructions for Redhat, Centos, Fedora
- Instructions for SUSE, OpenSUSE
- Instructions for MacOS
- Instructions using setup.py. Best choice if you are doing WeeWX development
ChangeLog
4.10.0 01/29/2023
Don't inject txBatteryStatus and consBatteryVoltage into records in the Vantage
driver. Let the accumulators do it. Fixes issue #802.
Different wake-up strategy for the Vantage console.
Do not write config_path and entry_path to updated configuration dictionary.
Fixes issue #806.
Allow more flexible formatting for delta times. This can break old skins.
See Upgrade Guide. PR #807.
Fix bug that prevents group_deltatime from being used by timespans. Users
who used custom formatting for delta times will be affected. See the Upgrade
Guide. Fixes issue #808.
Add suffix ".length" to class TimespanBinder. This allows expressions such as
$month.length. PR #809. Thanks to user Karen!
Added new unit "hertz". PR #812. Again, thanks to user Karen!
Calculate *.wind.maxtime out of windGust like *.wind.max
Fixes issue #833
Option line_gap_fraction can now be used with bar plots. Fixes issue #818.