geoarrow / geoarrow-c

Experimental C and C++ implementation of the GeoArrow specification
http://geoarrow.org/geoarrow-c/
Apache License 2.0
23 stars 3 forks source link

[Python] Python 3.12 conda support #98

Closed m-richards closed 2 months ago

m-richards commented 3 months ago

I'm not sure if this issue belongs here or in geoarrow-python (or https://github.com/conda-forge/geoarrow-pyarrow-feedstock).

I was looking into updating the CI environments for geopandas and noticed that geoarrow-c doesn't appear to be compatible with python 3.12 (at least in terms of the declared ABI compatibility, I don't know if it's an actual incompatibility though.

The relevant snippet is below and the full job log is at https://github.com/m-richards/geopandas/actions/runs/9731475821/job/26855965781

error    libmamba Could not solve for environment specs
      The following packages are incompatible
      ├─ geoarrow-pyarrow is installable and it requires
      │  └─ geoarrow-c with the potential options
      │     ├─ geoarrow-c [0.1.1|0.1.2] would require
      │     │  └─ python_abi 3.10.* *_cp310, which can be installed;
      │     ├─ geoarrow-c [0.1.1|0.1.2] would require
      │     │  └─ python_abi 3.11.* *_cp311, which can be installed;
      │     ├─ geoarrow-c [0.1.1|0.1.2] would require
      │     │  └─ python_abi 3.8.* *_cp[38](https://github.com/m-richards/geopandas/actions/runs/9731475821/job/26855965781#step:3:41), which can be installed;
      │     └─ geoarrow-c [0.1.1|0.1.2] would require
      │        └─ python_abi 3.9.* *_cp[39](https://github.com/m-richards/geopandas/actions/runs/9731475821/job/26855965781#step:3:42), which can be installed;
      └─ python 3.12**  is not installable because there are no viable options
         ├─ python [3.12.0|3.12.1|3.12.2|3.12.3|3.12.4] would require
         │  └─ python_abi 3.12.* *_cp312, which conflicts with any installable versions previously reported;
         └─ python 3.12.0rc3 would require
            └─ _python_rc, which does not exist (perhaps a missing channel).

Let me know if there's anything I can do to help with this

paleolimbot commented 3 months ago

Thanks for letting me know!

I've opened a PR rerending the geoarrow-c feedstock...I'm not a conda expert by any means but perhaps the rerender will either fix things or highlight the problem.

https://github.com/conda-forge/geoarrow-c-feedstock/pull/8

m-richards commented 2 months ago

Thanks @paleolimbot, seems to have fixed (https://github.com/geopandas/geopandas/actions/runs/10017958551/job/27692766056 has geoarrow-pyarrow back in the python 3.12 build and working)