Collecting git+https://github.com/PatBall1/detectree2.git
Cloning https://github.com/PatBall1/detectree2.git to /private/var/folders/y4/y6253cy573xf2dc3n2437q6m0000gn/T/pip-req-build-5eraprcl
Running command git clone --filter=blob:none --quiet https://github.com/PatBall1/detectree2.git /private/var/folders/y4/y6253cy573xf2dc3n2437q6m0000gn/T/pip-req-build-5eraprcl
Resolved https://github.com/PatBall1/detectree2.git to commit c983eda802daa7286d8f7eb37dbaf1751254c68d
Preparing metadata (setup.py) ... done
Collecting detectron2@ git+https://github.com/facebookresearch/detectron2.git (from detectree2==1.1.0)
Cloning https://github.com/facebookresearch/detectron2.git to /private/var/folders/y4/y6253cy573xf2dc3n2437q6m0000gn/T/pip-install-w1hdjfjg/detectron2_2a90086c30ad400fb9d870d88eb03909
Running command git clone --filter=blob:none --quiet https://github.com/facebookresearch/detectron2.git /private/var/folders/y4/y6253cy573xf2dc3n2437q6m0000gn/T/pip-install-w1hdjfjg/detectron2_2a90086c30ad400fb9d870d88eb03909
Resolved https://github.com/facebookresearch/detectron2.git to commit c69939aa85460e8135f40bce908a6cddaa73065f
Preparing metadata (setup.py) ... done
Collecting pyyaml>=5.1 (from detectree2==1.1.0)
Using cached PyYAML-6.0.2-cp312-cp312-macosx_11_0_arm64.whl.metadata (2.1 kB)
Collecting GDAL>=1.11 (from detectree2==1.1.0)
Using cached gdal-3.10.tar.gz (848 kB)
Installing build dependencies ... done
Getting requirements to build wheel ... done
Preparing metadata (pyproject.toml) ... done
Requirement already satisfied: numpy in ./venv/lib/python3.12/site-packages (from detectree2==1.1.0) (2.1.3)
Collecting rtree (from detectree2==1.1.0)
Using cached Rtree-1.3.0-py3-none-macosx_11_0_arm64.whl.metadata (2.1 kB)
Collecting proj (from detectree2==1.1.0)
Using cached proj-0.2.0-py2.py3-none-any.whl.metadata (3.3 kB)
Collecting geos (from detectree2==1.1.0)
Using cached geos-0.2.3-py3-none-any.whl.metadata (480 bytes)
Collecting pypng (from detectree2==1.1.0)
Using cached pypng-0.20220715.0-py3-none-any.whl.metadata (13 kB)
Collecting pygeos (from detectree2==1.1.0)
Using cached pygeos-0.14.tar.gz (141 kB)
Installing build dependencies ... done
Getting requirements to build wheel ... error
error: subprocess-exited-with-error
× Getting requirements to build wheel did not run successfully.
│ exit code: 1
╰─> [34 lines of output]
<string>:8: DeprecationWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html
/private/var/folders/y4/y6253cy573xf2dc3n2437q6m0000gn/T/pip-install-w1hdjfjg/pygeos_1e70e5e9d2af48c7819e9f91d96a22e2/versioneer.py:421: SyntaxWarning: invalid escape sequence '\s'
LONG_VERSION_PY['git'] = '''
Compiling pygeos/_geometry.pyx because it changed.
Compiling pygeos/_geos.pyx because it changed.
[1/2] Cythonizing pygeos/_geometry.pyx
[2/2] Cythonizing pygeos/_geos.pyx
Traceback (most recent call last):
File "/Users/lemon/Documents/detectree/venv/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
main()
File "/Users/lemon/Documents/detectree/venv/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main
json_out['return_val'] = hook(**hook_input['kwargs'])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/lemon/Documents/detectree/venv/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 118, in get_requires_for_build_wheel
return hook(config_settings)
^^^^^^^^^^^^^^^^^^^^^
File "/private/var/folders/y4/y6253cy573xf2dc3n2437q6m0000gn/T/pip-build-env-9phgd3xo/overlay/lib/python3.12/site-packages/setuptools/build_meta.py", line 334, in get_requires_for_build_wheel
return self._get_build_requires(config_settings, requirements=[])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/private/var/folders/y4/y6253cy573xf2dc3n2437q6m0000gn/T/pip-build-env-9phgd3xo/overlay/lib/python3.12/site-packages/setuptools/build_meta.py", line 304, in _get_build_requires
self.run_setup()
File "/private/var/folders/y4/y6253cy573xf2dc3n2437q6m0000gn/T/pip-build-env-9phgd3xo/overlay/lib/python3.12/site-packages/setuptools/build_meta.py", line 320, in run_setup
exec(code, locals())
File "<string>", line 214, in <module>
File "/private/var/folders/y4/y6253cy573xf2dc3n2437q6m0000gn/T/pip-install-w1hdjfjg/pygeos_1e70e5e9d2af48c7819e9f91d96a22e2/versioneer.py", line 1480, in get_version
return get_versions()["version"]
^^^^^^^^^^^^^^
File "/private/var/folders/y4/y6253cy573xf2dc3n2437q6m0000gn/T/pip-install-w1hdjfjg/pygeos_1e70e5e9d2af48c7819e9f91d96a22e2/versioneer.py", line 1412, in get_versions
cfg = get_config_from_root(root)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/private/var/folders/y4/y6253cy573xf2dc3n2437q6m0000gn/T/pip-install-w1hdjfjg/pygeos_1e70e5e9d2af48c7819e9f91d96a22e2/versioneer.py", line 342, in get_config_from_root
parser = configparser.SafeConfigParser()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: module 'configparser' has no attribute 'SafeConfigParser'. Did you mean: 'RawConfigParser'?
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
error: subprocess-exited-with-error
× Getting requirements to build wheel did not run successfully.
│ exit code: 1
╰─> See above for output.
note: This error originates from a subprocess, and is likely not a problem with pip.```
The requirement pygeos fails to install with python 3.12 with the error described here: [pygeos/pygeos#463](https://github.com/pygeos/pygeos/issues/463)
The maintainer explains that pygeos is no longer maintained and has been merged into the shapley 2.0 dependency of geopandas. Since version 0.14, geopandas uses shapley instead of pygeos: https://geopandas.org/en/stable/docs/user_guide/pygeos_to_shapely.html
Therefore, the PR drops the unmaintained pygeos and requires geopandas >= 0.14 to ensure the default shapley version is used
Pygeos causes installation to fail on macOS 15 as reported by Fei Qi: