Hello,
Just built a new SD card with Raspbian bookworm 64 bit and WeeWx. When starting weewx I get an error "No module named 'sortedcontainers'. Please let me know how to resolve this.
Thanks!
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: INFO weewx.engine: StdConvert target unit is 0x1
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: INFO weewx.wxservices: StdWXCalculate will use data binding wx_binding
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: INFO weewx.engine: Archive will use data binding wx_binding
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: INFO weewx.engine: Record generation will be attempted in 'hardware'
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: INFO weewx.engine: Using archive interval of 300 seconds (specified by hardware)
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: INFO weewx.restx: StationRegistry: Registration not requested.
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: INFO weewx.restx: Wunderground: Posting not enabled.
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: INFO weewx.restx: PWSweather: Posting not enabled.
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: INFO weewx.restx: CWOP: Posting not enabled.
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: INFO weewx.restx: WOW: Posting not enabled.
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: INFO weewx.restx: AWEKAS: Posting not enabled.
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: INFO weewx.engine: 'pyephem' detected, extended almanac data is available
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: CRITICAL __main__: Caught unrecoverable exception:
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: CRITICAL __main__: **** No module named 'sortedcontainers'
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: CRITICAL __main__: **** Traceback (most recent call last):
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: CRITICAL __main__: **** File "/usr/share/weewx/weewxd.py", line 121, in main
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: CRITICAL __main__: **** engine = weewx.engine.StdEngine(config_dict)
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: CRITICAL __main__: **** ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: CRITICAL __main__: **** File "/usr/share/weewx/weewx/engine.py", line 89, in __init__
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: CRITICAL __main__: **** self.loadServices(config_dict)
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: CRITICAL __main__: **** File "/usr/share/weewx/weewx/engine.py", line 157, in loadServices
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: CRITICAL __main__: **** obj = weeutil.weeutil.get_object(svc)(self, config_dict)
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: CRITICAL __main__: **** ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: CRITICAL __main__: **** File "/usr/share/weewx/weeutil/weeutil.py", line 1404, in get_object
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: CRITICAL __main__: **** module = importlib.import_module(module_name)
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: CRITICAL __main__: **** ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: CRITICAL __main__: **** File "/usr/lib/python3.11/importlib/__init__.py", line 126, in import_module
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: CRITICAL __main__: **** return _bootstrap._gcd_import(name[level:], package, level)
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: CRITICAL __main__: **** ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: CRITICAL __main__: **** File "<frozen importlib._bootstrap>", line 1206, in _gcd_import
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: CRITICAL __main__: **** File "<frozen importlib._bootstrap>", line 1178, in _find_and_load
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: CRITICAL __main__: **** File "<frozen importlib._bootstrap>", line 1149, in _find_and_load_unlocked
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: CRITICAL __main__: **** File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: Traceback (most recent call last):
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: File "/usr/share/weewx/weewxd.py", line 226, in <module>
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: CRITICAL __main__: **** File "<frozen importlib._bootstrap_external>", line 940, in exec_module
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: main()
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: File "/usr/share/weewx/weewxd.py", line 121, in main
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: CRITICAL __main__: **** File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: engine = weewx.engine.StdEngine(config_dict)
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: File "/usr/share/weewx/weewx/engine.py", line 89, in __init__
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: CRITICAL __main__: **** File "/etc/weewx/bin/user/loopdata.py", line 30, in <module>
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: self.loadServices(config_dict)
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: File "/usr/share/weewx/weewx/engine.py", line 157, in loadServices
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: obj = weeutil.weeutil.get_object(svc)(self, config_dict)
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: CRITICAL __main__: **** from sortedcontainers import SortedDict
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: File "/usr/share/weewx/weeutil/weeutil.py", line 1404, in get_object
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: CRITICAL __main__: **** ModuleNotFoundError: No module named 'sortedcontainers'
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: CRITICAL __main__: **** Exiting.
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: module = importlib.import_module(module_name)
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: File "/usr/lib/python3.11/importlib/__init__.py", line 126, in import_module
Jul 28 23:12:10 WeeWx2024 weewxd[2632]: return _bootstrap._gcd_import(name[level:], package, level)