Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Conflict with other python wrapper for CPP Library in Python 3.9+ #22

Closed
laurent-chriqui opened this issue Oct 26, 2022 · 2 comments
Closed

Comments

@laurent-chriqui
Copy link
Contributor

Hello,

I have the same issue with the pyproj library using Python>=3.9.

When I import pyproj first, I have the exact same issue with Pulsar.
If I import pulsar first, I have a bug in pyproj when I try to do this for example:

import pulsar
import pyproj

pyproj.Transformer.from_crs('epsg:4326', 'epsg:3035')
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python3.9/site-packages/pyproj/transformer.py", line 600, in from_crs
    cstrencode(CRS.from_user_input(crs_from).srs),
  File "/usr/local/lib/python3.9/site-packages/pyproj/crs/crs.py", line 501, in from_user_input
    return cls(value, **kwargs)
  File "/usr/local/lib/python3.9/site-packages/pyproj/crs/crs.py", line 348, in __init__
    self._local.crs = _CRS(self.srs)
  File "pyproj/_crs.pyx", line 2352, in pyproj._crs._CRS.__init__
pyproj.exceptions.CRSError: Invalid projection: epsg:4326: (Internal Proj Error: proj_create: cannot build geodeticCRS 4326: cannot build unit of measure 9122: non double value)

So there seems to be some kind of conflict between cpp libraries since pyproj is also a wrapper for the PROJ cpp library and python 3.9+
I do not need to install any version of grpcio for this to happen though.

Thank you for looking into this because we are stuck at python 3.8 for now...

Also posted in pyproj here

_Originally posted by @laurent-chriqui in #53

@erichare
Copy link
Contributor

@laurent-chriqui Are you still experiencing this issue? On Python 3.10 and 3.11 using the latest stable release, your example works as expected for me:

In [3]: import pulsar
   ...: import pyproj
   ...: 
   ...: transformer = pyproj.Transformer.from_crs('epsg:4326', 'epsg:3035')

In [4]: transformer.transform(50, -80)
Out[4]: (6569461.941361759, -269393.776213645)

@laurent-chriqui
Copy link
Contributor Author

Yes it appears to be working in python 3.10 with pulsar 3.0.0 🥳

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants