ciceroOslo / ciceroscm

Python version of the CICERO-SCM simple climate model/emulator
Apache License 2.0
17 stars 4 forks source link

fresh installation installs numpy 2.x, which breaks scmdata #130

Closed benmsanderson closed 1 month ago

benmsanderson commented 1 month ago

clean venv installation installed numpy 2.x, but scmdata was built with 1.x.

manual downgrade to numpy 1.26 fixes things.

Error message as follows when importing scmdata:


A module that was compiled using NumPy 1.x cannot be run in
NumPy 2.0.0rc1 as it may crash. To support both 1.x and 2.x
versions of NumPy, modules must be compiled with NumPy 2.0.
Some module may need to rebuild instead e.g. with 'pybind11>=2.12'.

If you are a user of the module, the easiest solution will be to
downgrade to 'numpy<2' or try to upgrade the affected module.
We expect that some modules will need time to support NumPy 2.

Traceback (most recent call last):  File "<frozen runpy>", line 198, in _run_module_as_main
  File "<frozen runpy>", line 88, in _run_code
  File "/Users/sanderson/Documents/GitHub/ciceroscm/venv/lib/python3.12/site-packages/ipykernel_launcher.py", line 18, in <module>
    app.launch_new_instance()
  File "/Users/sanderson/Documents/GitHub/ciceroscm/venv/lib/python3.12/site-packages/traitlets/config/application.py", line 1075, in launch_instance
    app.start()
  File "/Users/sanderson/Documents/GitHub/ciceroscm/venv/lib/python3.12/site-packages/ipykernel/kernelapp.py", line 739, in start
    self.io_loop.start()
  File "/Users/sanderson/Documents/GitHub/ciceroscm/venv/lib/python3.12/site-packages/tornado/platform/asyncio.py", line 205, in start
    self.asyncio_loop.run_forever()
  File "/usr/local/Cellar/python@3.12/3.12.3/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/base_events.py", line 641, in run_forever
    self._run_once()
  File "/usr/local/Cellar/python@3.12/3.12.3/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/base_events.py", line 1987, in _run_once
    handle._run()
  File "/usr/local/Cellar/python@3.12/3.12.3/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/events.py", line 88, in _run
...
  File "/Users/sanderson/Documents/GitHub/ciceroscm/venv/lib/python3.12/site-packages/scmdata/run.py", line 30, in <module>
    import cftime  # type: ignore
  File "/Users/sanderson/Documents/GitHub/ciceroscm/venv/lib/python3.12/site-packages/cftime/__init__.py", line 1, in <module>
    from ._cftime import (datetime, real_datetime,

**Describe the bug**

A clear and concise description of what the bug is, in particular:

- What did you do?
- What actually happened?
- What did you expect to happen?

**Failing Test**

Please put code (ideally in the form of a unit test) which fails below

**Screenshots**

If applicable, add screenshots to help explain your problem.

**System (please complete the following information):**

 - OS: [e.g. Windows, Linux, macOS]
 - Python and openscm commit/version [e.g. Python 3.5]

**Additional context**

Add any other context about the problem here.