Errors with weewx 5.2 and forecast extension

43 views
Skip to first unread message

matt.e...@gmail.com

unread,
Feb 28, 2026, 8:43:29 PM (yesterday) Feb 28
to weewx-user
I'm trying to install the forecast extension with weewx 5.2. When I restart weewx I'm getting this error immediately. Any suggestions?

Feb 28 19:31:02 wxpi sudo[8562]: pam_unix(sudo:session): session closed for user root
Feb 28 19:31:02 wxpi weewxd[8567]: INFO __main__: Initializing weewxd version 5.2.0
Feb 28 19:31:02 wxpi weewxd[8567]: INFO __main__: Command line: /usr/share/weewx/weewxd.py /etc/weewx/weewx.conf
Feb 28 19:31:02 wxpi weewxd[8567]: INFO __main__: Using Python: 3.13.5 (main, Jun 25 2025, 18:55:22) [GCC 14.2.0]
Feb 28 19:31:02 wxpi weewxd[8567]: INFO __main__: Located at:   /usr/bin/python3
Feb 28 19:31:02 wxpi weewxd[8567]: INFO __main__: Platform:     Linux-6.12.47+rpt-rpi-v8-aarch64-with-glibc2.41
Feb 28 19:31:02 wxpi weewxd[8567]: INFO __main__: Locale:       'en_GB.UTF-8'
Feb 28 19:31:02 wxpi weewxd[8567]: INFO __main__: Entry path:   /usr/share/weewx/weewxd.py
Feb 28 19:31:02 wxpi weewxd[8567]: INFO __main__: WEEWX_ROOT:   /etc/weewx
Feb 28 19:31:02 wxpi weewxd[8567]: INFO __main__: Config file:  /etc/weewx/weewx.conf
Feb 28 19:31:02 wxpi weewxd[8567]: INFO __main__: User module:  /etc/weewx/bin/user
Feb 28 19:31:02 wxpi weewxd[8567]: INFO __main__: Debug:        0
Feb 28 19:31:02 wxpi weewxd[8567]: INFO __main__: User:         weewx
Feb 28 19:31:02 wxpi weewxd[8567]: INFO __main__: Group:        weewx
Feb 28 19:31:02 wxpi weewxd[8567]: INFO __main__: Groups:       weewx
Feb 28 19:31:02 wxpi weewxd[8567]: INFO weewx.engine: Loading station type DavisConsoleAPI (user.davisconsoleapi)
Feb 28 19:31:03 wxpi weewxd[8567]: INFO user.davisconsoleapi: DavisConsoleAPI driver version is 0.43
Feb 28 19:31:03 wxpi weewxd[8567]: INFO user.davisconsoleapi: polling interval is 300
Feb 28 19:31:03 wxpi weewxd[8567]: INFO weewx.engine: StdConvert target unit is 0x1
Feb 28 19:31:03 wxpi weewxd[8567]: INFO weewx.wxservices: StdWXCalculate will use data binding wx_binding
Feb 28 19:31:03 wxpi weewxd[8567]: INFO weewx.engine: Archive will use data binding wx_binding
Feb 28 19:31:03 wxpi weewxd[8567]: INFO weewx.engine: Record generation will be attempted in 'hardware'
Feb 28 19:31:03 wxpi weewxd[8567]: INFO weewx.engine: Using archive interval of 300 seconds (specified in weewx configuration)
Feb 28 19:31:03 wxpi weewxd[8567]: /etc/weewx/bin/user/forecast.py:3423: SyntaxWarning: invalid escape sequence '\d'
Feb 28 19:31:03 wxpi weewxd[8567]:   _LATLON = re.compile('[\d\+\-]+,[\d\+\-]+')
Feb 28 19:31:03 wxpi weewxd[8567]: CRITICAL __main__: Caught unrecoverable exception:
Feb 28 19:31:03 wxpi weewxd[8567]: CRITICAL __main__:     ****  No module named 'six'
Feb 28 19:31:03 wxpi weewxd[8567]: CRITICAL __main__:     ****  Traceback (most recent call last):
Feb 28 19:31:03 wxpi weewxd[8567]: CRITICAL __main__:     ****    File "/usr/share/weewx/weewxd.py", line 121, in main
Feb 28 19:31:03 wxpi weewxd[8567]: CRITICAL __main__:     ****      engine = weewx.engine.StdEngine(config_dict)
Feb 28 19:31:03 wxpi weewxd[8567]: CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/engine.py", line 89, in __init__
Feb 28 19:31:03 wxpi weewxd[8567]: CRITICAL __main__:     ****      self.loadServices(config_dict)
Feb 28 19:31:03 wxpi weewxd[8567]: CRITICAL __main__:     ****      ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
Feb 28 19:31:03 wxpi weewxd[8567]: CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/engine.py", line 157, in loadServices
Feb 28 19:31:03 wxpi weewxd[8567]: CRITICAL __main__:     ****      obj = weeutil.weeutil.get_object(svc)(self, config_dict)
Feb 28 19:31:03 wxpi weewxd[8567]: CRITICAL __main__:     ****            ~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^
Feb 28 19:31:03 wxpi weewxd[8567]: CRITICAL __main__:     ****    File "/usr/share/weewx/weeutil/weeutil.py", line 1404, in get_object
Feb 28 19:31:03 wxpi weewxd[8567]: CRITICAL __main__:     ****      module = importlib.import_module(module_name)
Feb 28 19:31:03 wxpi weewxd[8567]: CRITICAL __main__:     ****    File "/usr/lib/python3.13/importlib/__init__.py", line 88, in import_module
Feb 28 19:31:03 wxpi weewxd[8567]: CRITICAL __main__:     ****      return _bootstrap._gcd_import(name[level:], package, level)
Feb 28 19:31:03 wxpi weewxd[8567]: CRITICAL __main__:     ****             ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Feb 28 19:31:03 wxpi weewxd[8567]: CRITICAL __main__:     ****    File "<frozen importlib._bootstrap>", line 1387, in _gcd_import
Feb 28 19:31:03 wxpi weewxd[8567]: CRITICAL __main__:     ****    File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
Feb 28 19:31:03 wxpi weewxd[8567]: CRITICAL __main__:     ****    File "<frozen importlib._bootstrap>", line 1331, in _find_and_load_unlocked
Feb 28 19:31:03 wxpi weewxd[8567]: CRITICAL __main__:     ****    File "<frozen importlib._bootstrap>", line 935, in _load_unlocked
Feb 28 19:31:03 wxpi weewxd[8567]: CRITICAL __main__:     ****    File "<frozen importlib._bootstrap_external>", line 1026, in exec_module
Feb 28 19:31:03 wxpi weewxd[8567]: CRITICAL __main__:     ****    File "<frozen importlib._bootstrap>", line 488, in _call_with_frames_removed
Feb 28 19:31:03 wxpi weewxd[8567]: CRITICAL __main__:     ****    File "/etc/weewx/bin/user/forecast.py", line 531, in <module>
Feb 28 19:31:03 wxpi weewxd[8567]: CRITICAL __main__:     ****      import six.moves.http_client
Feb 28 19:31:03 wxpi weewxd[8567]: CRITICAL __main__:     ****  ModuleNotFoundError: No module named 'six'
Feb 28 19:31:03 wxpi weewxd[8567]: CRITICAL __main__:     ****  Exiting.
Feb 28 19:31:03 wxpi weewxd[8567]: Traceback (most recent call last):
Feb 28 19:31:03 wxpi weewxd[8567]:   File "/usr/share/weewx/weewxd.py", line 226, in <module>
Feb 28 19:31:03 wxpi weewxd[8567]:     main()
Feb 28 19:31:03 wxpi weewxd[8567]:     ~~~~^^
Feb 28 19:31:03 wxpi weewxd[8567]:   File "/usr/share/weewx/weewxd.py", line 121, in main
Feb 28 19:31:03 wxpi weewxd[8567]:     engine = weewx.engine.StdEngine(config_dict)
Feb 28 19:31:03 wxpi weewxd[8567]:   File "/usr/share/weewx/weewx/engine.py", line 89, in __init__
Feb 28 19:31:03 wxpi weewxd[8567]:     self.loadServices(config_dict)
Feb 28 19:31:03 wxpi weewxd[8567]:     ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
Feb 28 19:31:03 wxpi weewxd[8567]:   File "/usr/share/weewx/weewx/engine.py", line 157, in loadServices
Feb 28 19:31:03 wxpi weewxd[8567]:     obj = weeutil.weeutil.get_object(svc)(self, config_dict)
Feb 28 19:31:03 wxpi weewxd[8567]:           ~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^
Feb 28 19:31:03 wxpi weewxd[8567]:   File "/usr/share/weewx/weeutil/weeutil.py", line 1404, in get_object
Feb 28 19:31:03 wxpi weewxd[8567]:     module = importlib.import_module(module_name)
Feb 28 19:31:03 wxpi weewxd[8567]:   File "/usr/lib/python3.13/importlib/__init__.py", line 88, in import_module
Feb 28 19:31:03 wxpi weewxd[8567]:     return _bootstrap._gcd_import(name[level:], package, level)
Feb 28 19:31:03 wxpi weewxd[8567]:            ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Feb 28 19:31:03 wxpi weewxd[8567]:   File "<frozen importlib._bootstrap>", line 1387, in _gcd_import
Feb 28 19:31:03 wxpi weewxd[8567]:   File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
Feb 28 19:31:03 wxpi weewxd[8567]:   File "<frozen importlib._bootstrap>", line 1331, in _find_and_load_unlocked
Feb 28 19:31:03 wxpi weewxd[8567]:   File "<frozen importlib._bootstrap>", line 935, in _load_unlocked
Feb 28 19:31:03 wxpi weewxd[8567]:   File "<frozen importlib._bootstrap_external>", line 1026, in exec_module
Feb 28 19:31:03 wxpi weewxd[8567]:   File "<frozen importlib._bootstrap>", line 488, in _call_with_frames_removed
Feb 28 19:31:03 wxpi weewxd[8567]:   File "/etc/weewx/bin/user/forecast.py", line 531, in <module>
Feb 28 19:31:03 wxpi weewxd[8567]:     import six.moves.http_client
Feb 28 19:31:03 wxpi weewxd[8567]: ModuleNotFoundError: No module named 'six'
Feb 28 19:31:03 wxpi systemd[1]: weewx.service: Main process exited, code=exited, status=1/FAILURE
Feb 28 19:31:03 wxpi systemd[1]: weewx.service: Failed with result 'exit-code'.
Feb 28 19:31:03 wxpi systemd[1]: weewx.service: Consumed 1.701s CPU time.

Thank you.

John Smith

unread,
Feb 28, 2026, 10:42:11 PM (yesterday) Feb 28
to weewx...@googlegroups.com
Feb 28 19:31:03 wxpi weewxd[8567]: CRITICAL __main__:     ****      import six.moves.http_client
Feb 28 19:31:03 wxpi weewxd[8567]: CRITICAL __main__:     ****  ModuleNotFoundError: No module named 'six'

You need to install the six library 

--
You received this message because you are subscribed to the Google Groups "weewx-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email to weewx-user+...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/weewx-user/c93d0beb-d46b-4976-b3f5-5ae56b71a555n%40googlegroups.com.

matt.e...@gmail.com

unread,
11:46 AM (11 hours ago) 11:46 AM
to weewx-user
Thank you. That did solve my problem.

John Kline

unread,
3:00 PM (8 hours ago) 3:00 PM
to weewx...@googlegroups.com, weewx-user
It’s kind of crazy that forecast still depends on six.  I just published v4.1 with six removed.  It also details how to install xtide since xtide has been removed from current Linux distros.

On Mar 1, 2026, at 8:46 AM, matt.e...@gmail.com <matt.e...@gmail.com> wrote:

Thank you. That did solve my problem.
Reply all
Reply to author
Forward
0 new messages