Skip to content

package fails when installing with poetry on macos #8

@sporring

Description

@sporring

Hi,

There seems to be some dependency issues, when installing the package with poetry, which I'm guessing is related to recent changes to numpy. Calling from spatstat_interface.interface import SpatstatInterface I get:

% python
Python 3.12.4 | packaged by Anaconda, Inc. | (main, Jun 18 2024, 10:07:17) [Clang 14.0.6 ] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> from spatstat_interface.interface import SpatstatInterface
During startup - Warning messages:
1: Setting LC_COLLATE failed, using "C" 
2: Setting LC_TIME failed, using "C" 
3: Setting LC_MESSAGES failed, using "C" 
4: Setting LC_MONETARY failed, using "C" 
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/jrh630/anaconda3/envs/spatstat_interface/lib/python3.12/site-packages/spatstat_interface/interface.py", line 3, in <module>
    from spatstat_interface.utils import install_r_package
  File "/Users/jrh630/anaconda3/envs/spatstat_interface/lib/python3.12/site-packages/spatstat_interface/utils.py", line 3, in <module>
    from rpy2.robjects import pandas2ri
  File "/Users/jrh630/anaconda3/envs/spatstat_interface/lib/python3.12/site-packages/rpy2/robjects/pandas2ri.py", line 16, in <module>
    import pandas  # type: ignore
    ^^^^^^^^^^^^^
  File "/Users/jrh630/anaconda3/envs/spatstat_interface/lib/python3.12/site-packages/pandas/__init__.py", line 22, in <module>
    from pandas.compat import is_numpy_dev as _is_numpy_dev  # pyright: ignore # noqa:F401
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/jrh630/anaconda3/envs/spatstat_interface/lib/python3.12/site-packages/pandas/compat/__init__.py", line 18, in <module>
    from pandas.compat.numpy import (
  File "/Users/jrh630/anaconda3/envs/spatstat_interface/lib/python3.12/site-packages/pandas/compat/numpy/__init__.py", line 4, in <module>
    from pandas.util.version import Version
  File "/Users/jrh630/anaconda3/envs/spatstat_interface/lib/python3.12/site-packages/pandas/util/__init__.py", line 2, in <module>
    from pandas.util._decorators import (  # noqa:F401
  File "/Users/jrh630/anaconda3/envs/spatstat_interface/lib/python3.12/site-packages/pandas/util/_decorators.py", line 14, in <module>
    from pandas._libs.properties import cache_readonly
  File "/Users/jrh630/anaconda3/envs/spatstat_interface/lib/python3.12/site-packages/pandas/_libs/__init__.py", line 13, in <module>
    from pandas._libs.interval import Interval
  File "pandas/_libs/interval.pyx", line 1, in init pandas._libs.interval
ValueError: numpy.dtype size changed, may indicate binary incompatibility. Expected 96 from C header, got 88 from PyObject

I installed the package by:

brew install pipx
pipx install poetry
poetry init

where I created a dummy project:

Generated file

[tool.poetry]
name = "spatstat-test"
version = "0.1.0"
description = ""
authors = ["Jon Sporring <[email protected]>"]
readme = "README.md"

[tool.poetry.dependencies]
python = "^3.12"

and then I installed spatstat-interface

poetry add spatstat-interface

which fetched the following:

Using version ^1.0.1 for spatstat-interface

Updating dependencies
Resolving dependencies... (1.6s)

Package operations: 12 installs, 0 updates, 0 removals

  - Installing markupsafe (2.1.5)
  - Installing pycparser (2.22)
  - Installing six (1.16.0)
  - Installing cffi (1.17.0)
  - Installing jinja2 (3.1.4)
  - Installing numpy (2.0.1)
  - Installing python-dateutil (2.9.0.post0)
  - Installing pytz (2024.1)
  - Installing tzlocal (5.2)
  - Installing pandas (1.5.3)
  - Installing rpy2 (3.5.16)
  - Installing spatstat-interface (1.0.1)

Best, Jon

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions