sudo apt install python3-sortedcollections is the instruction I give for WeeWX 4. Do I need to give that instruction for package installs of WeeWX 5? Thanks, John. I figured it was something like that.
Marty: you can probably fix by installing using apt:
sudo apt install python3-sortedcollections
Rich: the OP used a package install, not pip install, so the best way to fix is a package install of sortedcollections.
-tk On Mon, Jul 29, 2024 at 8:04 AM 'John Kline' via weewx-user < [email protected]> wrote: I looks like he is using an extension of mine (weewx-loopdata) that requires sorted containers since weewx-loopdata v3.0. The README states that sortedcontainers must be installed and the weewx 5 install instructions, step 1, states:
Activate the virtual environment (actual syntax varies by type of WeeWX install):/home/weewx/weewx-venv/bin/activate
I’m asssuming weewx 5. If it is weewx 4, follow the WeeWX instructions for weewx 4 installs. This is ‘due’ to pep 668 and a ‘push’ for users to use virtual environments. It is warning the person installing the python module, sortedcontainers, that they are installing into an ‘global’ (externally-managed-environment) location. There are a few ways to solve this. Create a virtual environment, activate it, and install the module. Since WeeWX was a package install, this is not reasonable. As the message states, override the warning using the ‘--break-system-packages’ option. It would look something like this, ‘pip3 install sortedcontainers --break-system-packages’. If it exists, install the OS package. It would be something like this, ‘sudo apt install python3-sortedcontainers’
Additional information: http://rptl.io/venv https://peps.python.org/pep-0668/ https://packaging.python.org/en/latest/specifications/externally-managed-environments/#externally-managed-environments
rich
On Monday 29 July 2024 at 10:10:36 UTC-4 Tom Keffer wrote:
The user is doing a package install (the clue is paths such as '/usr/share/weewx/...'
My thinking is that you are using an extension that needs 'sortedcontainers'.
Please post your configuration file, /etc/weewx/weewx.conf. Make sure you look it over and remove any passwords or other sensitive information before posting.
Should point out that I did try installing the missing module, but got the following error:
$ pip3 install sortedcontainers error: externally-managed-environment × This environment is externally managed ╰─> To install Python packages system-wide, try apt install python3-xyz, where xyz is the package you are trying to install. If you wish to install a non-Debian-packaged Python package, create a virtual environment using python3 -m venv path/to/venv. Then use path/to/venv/bin/python and path/to/venv/bin/pip. Make sure you have python3-full installed. For more information visit http://rptl.io/venvnote: If you believe this is a mistake, please contact your Python installation or OS distribution provider. You can override this, at the risk of breaking your Python installation or OS, by passing --break-system-packages.
On Sunday, July 28, 2024 at 11:14:11 PM UTC-7 Marty b wrote:
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)
--
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 [email protected].
To view this discussion on the web visit https://groups.google.com/d/msgid/weewx-user/d8a08cdb-d5b1-4db2-9f9f-54855503f901n%40googlegroups.com.
--
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 [email protected].
To view this discussion on the web visit https://groups.google.com/d/msgid/weewx-user/39F7996D-675F-4B5D-AB45-8660C1F1E6C4%40johnkline.com.
--
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 [email protected].
To view this discussion on the web visit https://groups.google.com/d/msgid/weewx-user/CAPq0zEBg-NS-pLr02CZ6Vh37XDzHGkeVHhKxRKQau04Cfv6ZTQ%40mail.gmail.com.
--
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 [email protected].
To view this discussion on the web visit https://groups.google.com/d/msgid/weewx-user/17DDD857-AD38-4F65-A986-2F4310BB7C36%40johnkline.com.
|