drufat/triangle

i can't install triangle in mac M1

darko-art opened this issue · 2 comments

pip install triangle
Collecting triangle
    Using cached triangle-20200424.tar.gz (1.6 MB)
    Preparing metadata (setup.py) ... done
Requirement already satisfied: numpy in /Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages (from triangle) (1.22.3)
Building wheels for collected packages: triangle
    Building wheel for triangle (setup.py) ... error
    error: subprocess-exited-with-error

    × python setup.py bdist_wheel did not run successfully.
    │ exit code: 1
    ╰─> [300 lines of output]
            running bdist_wheel
            running build
            running build_py
            creating build
            creating build/lib.macosx-10.9-universal2-3.10
            creating build/lib.macosx-10.9-universal2-3.10/triangle
            copying triangle/plot.py -> build/lib.macosx-10.9-universal2-3.10/triangle
            copying triangle/version.py -> build/lib.macosx-10.9-universal2-3.10/triangle
            copying triangle/init.py -> build/lib.macosx-10.9-universal2-3.10/triangle
            copying triangle/tri.py -> build/lib.macosx-10.9-universal2-3.10/triangle
            copying triangle/core1_run.py -> build/lib.macosx-10.9-universal2-3.10/triangle
            copying triangle/data.py -> build/lib.macosx-10.9-universal2-3.10/triangle
            creating build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/box.1.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/dots.1.v.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/spiral.r.1.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/bbox.1.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/face.1.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/greenland.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/double_hex3.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/double_hex2.1.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/double_hex.1.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/diamond_02_00009.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/spiral.q.1.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/diamond_02_00009.1.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/double_hex.2.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/dots.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/spiral.1.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/box.4.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/square_circle_hole.1.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/double_hex2.2.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/diamond_02_00009.1.v.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/box.3.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/A.1.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/ell.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/double_hex3.1.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/spiral.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/la.1.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/box.2.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/double_hex2.1.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/spiral.1.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/double_hex2.2.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/square_circle_hole.1.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/greenland.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/spiral.q.1.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/face.1.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/double_hex3.1.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/spiral.r.1.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/ell.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/double_hex.1.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/A.1.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/double_hex.2.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/box.2.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/box.3.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/la.1.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/diamond_02_00009.1.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/box.1.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/box.4.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/bbox.1.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/face.1.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/box.1.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/square_circle_hole.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/box.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/double_hex2.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/double_hex.1.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/A.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/double_hex2.1.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/double_hex3.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/la.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/box.4.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/double_hex2.2.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/double_hex.2.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/double_hex.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/box.2.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/la.1.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/A.1.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/face.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/box.3.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/double_hex3.1.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/bbox.1.area -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/diamond_02_00009.1.v.edge -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/dots.1.v.edge -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            running build_ext
            building 'triangle.core' extension
            creating build/temp.macosx-10.9-universal2-3.10
            creating build/temp.macosx-10.9-universal2-3.10/c
            creating build/temp.macosx-10.9-universal2-3.10/triangle
            clang -Wno-unused-result -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -arch arm64 -arch x86_64 -g -DVOID=void -DREAL=double -DNO_TIMER=1 -DTRILIBRARY=1 -DANSI_DECLARATORS=1 -Ic -I/Library/Frameworks/Python.framework/Versions/3.10/include/python3.10 -c c/triangle.c -o build/temp.macosx-10.9-universal2-3.10/c/triangle.o
            c/triangle.c:3956:17: warning: comparison of integers of different signs: 'int' and 'unsigned long' [-Wsign-compare]
                if (alignment > sizeof(VOID *)) {
                        ~~~~~~~~~ ^ ~~~~~~~~~~~~~~
            c/triangle.c:4356:16: warning: comparison of integers of different signs: 'int' and 'unsigned long' [-Wsign-compare]
                        (trisize < 6 * sizeof(triangle) + sizeof(int))) {
                          ~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
            2 warnings generated.
            c/triangle.c:3956:17: warning: comparison of integers of different signs: 'int' and 'unsigned long' [-Wsign-compare]
                if (alignment > sizeof(VOID *)) {
                        ~~~~~~~~~ ^ ~~~~~~~~~~~~~~
            c/triangle.c:4356:16: warning: comparison of integers of different signs: 'int' and 'unsigned long' [-Wsign-compare]
                        (trisize < 6 * sizeof(triangle) + sizeof(int))) {
                          ~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
            2 warnings generated.
            clang -Wno-unused-result -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -arch arm64 -arch x86_64 -g -DVOID=void -DREAL=double -DNO_TIMER=1 -DTRILIBRARY=1 -DANSI_DECLARATORS=1 -Ic -I/Library/Frameworks/Python.framework/Versions/3.10/include/python3.10 -c triangle/core.c -o build/temp.macosx-10.9-universal2-3.10/triangle/core.o
            triangle/core.c:19390:5: error: expression is not assignable
                    ++Py_REFCNT(o);
                    ^ ~~~~~~~~~~~~
            triangle/core.c:19392:5: error: expression is not assignable
                    --Py_REFCNT(o);
                    ^ ~~~~~~~~~~~~
            triangle/core.c:19701:5: error: expression is not assignable
                    ++Py_REFCNT(o);
                    ^ ~~~~~~~~~~~~
            triangle/core.c:19703:5: error: expression is not assignable
                    --Py_REFCNT(o);
                    ^ ~~~~~~~~~~~~
            triangle/core.c:19951:5: error: expression is not assignable
                    ++Py_REFCNT(o);
                    ^ ~~~~~~~~~~~~
            triangle/core.c:19953:5: error: expression is not assignable
                    --Py_REFCNT(o);
                    ^ ~~~~~~~~~~~~
            triangle/core.c:22901:22: warning: '_PyUnicode_get_wstr_length' is deprecated [-Wdeprecated-declarations]
                                                    (PyUnicode_GET_SIZE(*name) != PyUnicode_GET_SIZE(key)) ? 1 :
                                                      ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:261:7: note: expanded from macro 'PyUnicode_GET_SIZE'
                        PyUnicode_WSTR_LENGTH(op) :                                       
                        ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:451:35: note: expanded from macro 'PyUnicode_WSTR_LENGTH'
            #define PyUnicode_WSTR_LENGTH(op) _PyUnicode_get_wstr_length((PyObject
)op)
                                                                                ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:445:1: note: '_PyUnicode_get_wstr_length' has been explicitly marked deprecated here
            Py_DEPRECATED(3.3)
            ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/pyport.h:513:54: note: expanded from macro 'Py_DEPRECATED'
            #define Py_DEPRECATED(VERSION_UNUSED) attribute((deprecated))
                                                                                                                      ^
            triangle/core.c:22901:22: warning: 'PyUnicode_AsUnicode' is deprecated [-Wdeprecated-declarations]
                                                    (PyUnicode_GET_SIZE(**name) != PyUnicode_GET_SIZE(key)) ? 1 :
                                                      ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:262:14: note: expanded from macro 'PyUnicode_GET_SIZE'
                        ((void)PyUnicode_AsUnicode(_PyObject_CAST(op)),
                                      ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:580:1: note: 'PyUnicode_AsUnicode' has been explicitly marked deprecated here
            Py_DEPRECATED(3.3) PyAPI_FUNC(Py_UNICODE *) PyUnicode_AsUnicode(
            ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/pyport.h:513:54: note: expanded from macro 'Py_DEPRECATED'
            #define Py_DEPRECATED(VERSION_UNUSED) attribute((deprecated))
                                                                                                                      ^
            triangle/core.c:22901:22: warning: '_PyUnicode_get_wstr_length' is deprecated [-Wdeprecated-declarations]
                                                    (PyUnicode_GET_SIZE(*name) != PyUnicode_GET_SIZE(key)) ? 1 :
                                                      ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:264:8: note: expanded from macro 'PyUnicode_GET_SIZE'
                          PyUnicode_WSTR_LENGTH(op)))
                          ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:451:35: note: expanded from macro 'PyUnicode_WSTR_LENGTH'
            #define PyUnicode_WSTR_LENGTH(op) _PyUnicode_get_wstr_length((PyObject
)op)
                                                                                ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:445:1: note: '_PyUnicode_get_wstr_length' has been explicitly marked deprecated here
            Py_DEPRECATED(3.3)
            ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/pyport.h:513:54: note: expanded from macro 'Py_DEPRECATED'
            #define Py_DEPRECATED(VERSION_UNUSED) attribute((deprecated))
                                                                                                                      ^
            triangle/core.c:22901:52: warning: '_PyUnicode_get_wstr_length' is deprecated [-Wdeprecated-declarations]
                                                    (PyUnicode_GET_SIZE(*name) != PyUnicode_GET_SIZE(key)) ? 1 :
                                                                                                                  ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:261:7: note: expanded from macro 'PyUnicode_GET_SIZE'
                        PyUnicode_WSTR_LENGTH(op) :                                       
                        ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:451:35: note: expanded from macro 'PyUnicode_WSTR_LENGTH'
            #define PyUnicode_WSTR_LENGTH(op) _PyUnicode_get_wstr_length((PyObject
)op)
                                                                                ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:445:1: note: '_PyUnicode_get_wstr_length' has been explicitly marked deprecated here
            Py_DEPRECATED(3.3)
            ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/pyport.h:513:54: note: expanded from macro 'Py_DEPRECATED'
            #define Py_DEPRECATED(VERSION_UNUSED) attribute((deprecated))
                                                                                                                      ^
            triangle/core.c:22901:52: warning: 'PyUnicode_AsUnicode' is deprecated [-Wdeprecated-declarations]
                                                    (PyUnicode_GET_SIZE(**name) != PyUnicode_GET_SIZE(key)) ? 1 :
                                                                                                                  ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:262:14: note: expanded from macro 'PyUnicode_GET_SIZE'
                        ((void)PyUnicode_AsUnicode(_PyObject_CAST(op)),
                                      ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:580:1: note: 'PyUnicode_AsUnicode' has been explicitly marked deprecated here
            Py_DEPRECATED(3.3) PyAPI_FUNC(Py_UNICODE *) PyUnicode_AsUnicode(
            ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/pyport.h:513:54: note: expanded from macro 'Py_DEPRECATED'
            #define Py_DEPRECATED(VERSION_UNUSED) attribute((deprecated))
                                                                                                                      ^
            triangle/core.c:22901:52: warning: '_PyUnicode_get_wstr_length' is deprecated [-Wdeprecated-declarations]
                                                    (PyUnicode_GET_SIZE(*name) != PyUnicode_GET_SIZE(key)) ? 1 :
                                                                                                                  ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:264:8: note: expanded from macro 'PyUnicode_GET_SIZE'
                          PyUnicode_WSTR_LENGTH(op)))
                          ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:451:35: note: expanded from macro 'PyUnicode_WSTR_LENGTH'
            #define PyUnicode_WSTR_LENGTH(op) _PyUnicode_get_wstr_length((PyObject
)op)
                                                                                ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:445:1: note: '_PyUnicode_get_wstr_length' has been explicitly marked deprecated here
            Py_DEPRECATED(3.3)
            ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/pyport.h:513:54: note: expanded from macro 'Py_DEPRECATED'
            #define Py_DEPRECATED(VERSION_UNUSED) attribute((deprecated))
                                                                                                                      ^
            triangle/core.c:22917:26: warning: '_PyUnicode_get_wstr_length' is deprecated [-Wdeprecated-declarations]
                                                            (PyUnicode_GET_SIZE(*argname) != PyUnicode_GET_SIZE(key)) ? 1 :
                                                              ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:261:7: note: expanded from macro 'PyUnicode_GET_SIZE'
                        PyUnicode_WSTR_LENGTH(op) :                                       
                        ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:451:35: note: expanded from macro 'PyUnicode_WSTR_LENGTH'
            #define PyUnicode_WSTR_LENGTH(op) _PyUnicode_get_wstr_length((PyObject
)op)
                                                                                ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:445:1: note: '_PyUnicode_get_wstr_length' has been explicitly marked deprecated here
            Py_DEPRECATED(3.3)
            ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/pyport.h:513:54: note: expanded from macro 'Py_DEPRECATED'
            #define Py_DEPRECATED(VERSION_UNUSED) attribute((deprecated))
                                                                                                                      ^
            triangle/core.c:22917:26: warning: 'PyUnicode_AsUnicode' is deprecated [-Wdeprecated-declarations]
                                                            (PyUnicode_GET_SIZE(**argname) != PyUnicode_GET_SIZE(key)) ? 1 :
                                                              ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:262:14: note: expanded from macro 'PyUnicode_GET_SIZE'
                        ((void)PyUnicode_AsUnicode(_PyObject_CAST(op)),
                                      ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:580:1: note: 'PyUnicode_AsUnicode' has been explicitly marked deprecated here
            Py_DEPRECATED(3.3) PyAPI_FUNC(Py_UNICODE *) PyUnicode_AsUnicode(
            ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/pyport.h:513:54: note: expanded from macro 'Py_DEPRECATED'
            #define Py_DEPRECATED(VERSION_UNUSED) attribute((deprecated))
                                                                                                                      ^
            triangle/core.c:22917:26: warning: '_PyUnicode_get_wstr_length' is deprecated [-Wdeprecated-declarations]
                                                            (PyUnicode_GET_SIZE(*argname) != PyUnicode_GET_SIZE(key)) ? 1 :
                                                              ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:264:8: note: expanded from macro 'PyUnicode_GET_SIZE'
                          PyUnicode_WSTR_LENGTH(op)))
                          ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:451:35: note: expanded from macro 'PyUnicode_WSTR_LENGTH'
            #define PyUnicode_WSTR_LENGTH(op) _PyUnicode_get_wstr_length((PyObject
)op)
                                                                                ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:445:1: note: '_PyUnicode_get_wstr_length' has been explicitly marked deprecated here
            Py_DEPRECATED(3.3)
            ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/pyport.h:513:54: note: expanded from macro 'Py_DEPRECATED'
            #define Py_DEPRECATED(VERSION_UNUSED) attribute((deprecated))
                                                                                                                      ^
            triangle/core.c:22917:59: warning: '_PyUnicode_get_wstr_length' is deprecated [-Wdeprecated-declarations]
                                                            (PyUnicode_GET_SIZE(*argname) != PyUnicode_GET_SIZE(key)) ? 1 :
                                                                                                                                ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:261:7: note: expanded from macro 'PyUnicode_GET_SIZE'
                        PyUnicode_WSTR_LENGTH(op) :                                       
                        ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:451:35: note: expanded from macro 'PyUnicode_WSTR_LENGTH'
            #define PyUnicode_WSTR_LENGTH(op) _PyUnicode_get_wstr_length((PyObject
)op)
                                                                                ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:445:1: note: '_PyUnicode_get_wstr_length' has been explicitly marked deprecated here
            Py_DEPRECATED(3.3)
            ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/pyport.h:513:54: note: expanded from macro 'Py_DEPRECATED'
            #define Py_DEPRECATED(VERSION_UNUSED) attribute((deprecated))
                                                                                                                      ^
            triangle/core.c:22917:59: warning: 'PyUnicode_AsUnicode' is deprecated [-Wdeprecated-declarations]
                                                            (PyUnicode_GET_SIZE(**argname) != PyUnicode_GET_SIZE(key)) ? 1 :
                                                                                                                                ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:262:14: note: expanded from macro 'PyUnicode_GET_SIZE'
                        ((void)PyUnicode_AsUnicode(_PyObject_CAST(op)),
                                      ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:580:1: note: 'PyUnicode_AsUnicode' has been explicitly marked deprecated here
            Py_DEPRECATED(3.3) PyAPI_FUNC(Py_UNICODE *) PyUnicode_AsUnicode(
            ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/pyport.h:513:54: note: expanded from macro 'Py_DEPRECATED'
            #define Py_DEPRECATED(VERSION_UNUSED) attribute((deprecated))
                                                                                                                      ^
            triangle/core.c:22917:59: warning: '_PyUnicode_get_wstr_length' is deprecated [-Wdeprecated-declarations]
                                                            (PyUnicode_GET_SIZE(argname) != PyUnicode_GET_SIZE(key)) ? 1 :
                                                                                                                                ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:264:8: note: expanded from macro 'PyUnicode_GET_SIZE'
                          PyUnicode_WSTR_LENGTH(op)))
                          ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:451:35: note: expanded from macro 'PyUnicode_WSTR_LENGTH'
            #define PyUnicode_WSTR_LENGTH(op) _PyUnicode_get_wstr_length((PyObject
)op)
                                                                                ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:445:1: note: '_PyUnicode_get_wstr_length' has been explicitly marked deprecated here
            Py_DEPRECATED(3.3)
            ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/pyport.h:513:54: note: expanded from macro 'Py_DEPRECATED'
            #define Py_DEPRECATED(VERSION_UNUSED) attribute((deprecated))
                                                                                                                      ^
            triangle/core.c:23497:16: warning: 'PyUnicode_FromUnicode' is deprecated [-Wdeprecated-declarations]
                            return PyUnicode_FromUnicode(NULL, 0);
                                          ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:551:1: note: 'PyUnicode_FromUnicode' has been explicitly marked deprecated here
            Py_DEPRECATED(3.3) PyAPI_FUNC(PyObject
) PyUnicode_FromUnicode(
            ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/pyport.h:513:54: note: expanded from macro 'Py_DEPRECATED'
            #define Py_DEPRECATED(VERSION_UNUSED) attribute((deprecated))
                                                                                                                      ^
            13 warnings and 6 errors generated.
            error: command '/usr/bin/clang' failed with exit code 1
            [end of output]

    note: This error originates from a subprocess, and is likely not a problem with pip.
    ERROR: Failed building wheel for triangle
    Running setup.py clean for triangle
Failed to build triangle
Installing collected packages: triangle
    Running setup.py install for triangle ... error
    error: subprocess-exited-with-error

    × Running setup.py install for triangle did not run successfully.
    │ exit code: 1
    ╰─> [300 lines of output]
            running install
            running build
            running build_py
            creating build
            creating build/lib.macosx-10.9-universal2-3.10
            creating build/lib.macosx-10.9-universal2-3.10/triangle
            copying triangle/plot.py -> build/lib.macosx-10.9-universal2-3.10/triangle
            copying triangle/version.py -> build/lib.macosx-10.9-universal2-3.10/triangle
            copying triangle/init.py -> build/lib.macosx-10.9-universal2-3.10/triangle
            copying triangle/tri.py -> build/lib.macosx-10.9-universal2-3.10/triangle
            copying triangle/core1_run.py -> build/lib.macosx-10.9-universal2-3.10/triangle
            copying triangle/data.py -> build/lib.macosx-10.9-universal2-3.10/triangle
            creating build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/box.1.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/dots.1.v.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/spiral.r.1.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/bbox.1.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/face.1.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/greenland.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/double_hex3.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/double_hex2.1.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/double_hex.1.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/diamond_02_00009.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/spiral.q.1.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/diamond_02_00009.1.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/double_hex.2.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/dots.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/spiral.1.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/box.4.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/square_circle_hole.1.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/double_hex2.2.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/diamond_02_00009.1.v.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/box.3.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/A.1.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/ell.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/double_hex3.1.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/spiral.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/la.1.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/box.2.node -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/double_hex2.1.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/spiral.1.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/double_hex2.2.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/square_circle_hole.1.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/greenland.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/spiral.q.1.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/face.1.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/double_hex3.1.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/spiral.r.1.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/ell.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/double_hex.1.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/A.1.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/double_hex.2.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/box.2.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/box.3.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/la.1.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/diamond_02_00009.1.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/box.1.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/box.4.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/bbox.1.ele -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/face.1.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/box.1.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/square_circle_hole.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/box.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/double_hex2.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/double_hex.1.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/A.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/double_hex2.1.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/double_hex3.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/la.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/box.4.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/double_hex2.2.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/double_hex.2.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/double_hex.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/box.2.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/la.1.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/A.1.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/face.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/box.3.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/double_hex3.1.poly -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/bbox.1.area -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/diamond_02_00009.1.v.edge -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            copying triangle/data/dots.1.v.edge -> build/lib.macosx-10.9-universal2-3.10/triangle/data
            running build_ext
            building 'triangle.core' extension
            creating build/temp.macosx-10.9-universal2-3.10
            creating build/temp.macosx-10.9-universal2-3.10/c
            creating build/temp.macosx-10.9-universal2-3.10/triangle
            clang -Wno-unused-result -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -arch arm64 -arch x86_64 -g -DVOID=void -DREAL=double -DNO_TIMER=1 -DTRILIBRARY=1 -DANSI_DECLARATORS=1 -Ic -I/Library/Frameworks/Python.framework/Versions/3.10/include/python3.10 -c c/triangle.c -o build/temp.macosx-10.9-universal2-3.10/c/triangle.o
            c/triangle.c:3956:17: warning: comparison of integers of different signs: 'int' and 'unsigned long' [-Wsign-compare]
                if (alignment > sizeof(VOID *)) {
                        ~~~~~~~~~ ^ ~~~~~~~~~~~~~~
            c/triangle.c:4356:16: warning: comparison of integers of different signs: 'int' and 'unsigned long' [-Wsign-compare]
                        (trisize < 6 * sizeof(triangle) + sizeof(int))) {
                          ~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
            2 warnings generated.
            c/triangle.c:3956:17: warning: comparison of integers of different signs: 'int' and 'unsigned long' [-Wsign-compare]
                if (alignment > sizeof(VOID *)) {
                        ~~~~~~~~~ ^ ~~~~~~~~~~~~~~
            c/triangle.c:4356:16: warning: comparison of integers of different signs: 'int' and 'unsigned long' [-Wsign-compare]
                        (trisize < 6 * sizeof(triangle) + sizeof(int))) {
                          ~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
            2 warnings generated.
            clang -Wno-unused-result -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -arch arm64 -arch x86_64 -g -DVOID=void -DREAL=double -DNO_TIMER=1 -DTRILIBRARY=1 -DANSI_DECLARATORS=1 -Ic -I/Library/Frameworks/Python.framework/Versions/3.10/include/python3.10 -c triangle/core.c -o build/temp.macosx-10.9-universal2-3.10/triangle/core.o
            triangle/core.c:19390:5: error: expression is not assignable
                    ++Py_REFCNT(o);
                    ^ ~~~~~~~~~~~~
            triangle/core.c:19392:5: error: expression is not assignable
                    --Py_REFCNT(o);
                    ^ ~~~~~~~~~~~~
            triangle/core.c:19701:5: error: expression is not assignable
                    ++Py_REFCNT(o);
                    ^ ~~~~~~~~~~~~
            triangle/core.c:19703:5: error: expression is not assignable
                    --Py_REFCNT(o);
                    ^ ~~~~~~~~~~~~
            triangle/core.c:19951:5: error: expression is not assignable
                    ++Py_REFCNT(o);
                    ^ ~~~~~~~~~~~~
            triangle/core.c:19953:5: error: expression is not assignable
                    --Py_REFCNT(o);
                    ^ ~~~~~~~~~~~~
            triangle/core.c:22901:22: warning: '_PyUnicode_get_wstr_length' is deprecated [-Wdeprecated-declarations]
                                                    (PyUnicode_GET_SIZE(*name) != PyUnicode_GET_SIZE(key)) ? 1 :
                                                      ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:261:7: note: expanded from macro 'PyUnicode_GET_SIZE'
                        PyUnicode_WSTR_LENGTH(op) :                                       
                        ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:451:35: note: expanded from macro 'PyUnicode_WSTR_LENGTH'
            #define PyUnicode_WSTR_LENGTH(op) _PyUnicode_get_wstr_length((PyObject
)op)
                                                                                ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:445:1: note: '_PyUnicode_get_wstr_length' has been explicitly marked deprecated here
            Py_DEPRECATED(3.3)
            ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/pyport.h:513:54: note: expanded from macro 'Py_DEPRECATED'
            #define Py_DEPRECATED(VERSION_UNUSED) attribute((deprecated))
                                                                                                                      ^
            triangle/core.c:22901:22: warning: 'PyUnicode_AsUnicode' is deprecated [-Wdeprecated-declarations]
                                                    (PyUnicode_GET_SIZE(**name) != PyUnicode_GET_SIZE(key)) ? 1 :
                                                      ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:262:14: note: expanded from macro 'PyUnicode_GET_SIZE'
                        ((void)PyUnicode_AsUnicode(_PyObject_CAST(op)),
                                      ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:580:1: note: 'PyUnicode_AsUnicode' has been explicitly marked deprecated here
            Py_DEPRECATED(3.3) PyAPI_FUNC(Py_UNICODE *) PyUnicode_AsUnicode(
            ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/pyport.h:513:54: note: expanded from macro 'Py_DEPRECATED'
            #define Py_DEPRECATED(VERSION_UNUSED) attribute((deprecated))
                                                                                                                      ^
            triangle/core.c:22901:22: warning: '_PyUnicode_get_wstr_length' is deprecated [-Wdeprecated-declarations]
                                                    (PyUnicode_GET_SIZE(*name) != PyUnicode_GET_SIZE(key)) ? 1 :
                                                      ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:264:8: note: expanded from macro 'PyUnicode_GET_SIZE'
                          PyUnicode_WSTR_LENGTH(op)))
                          ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:451:35: note: expanded from macro 'PyUnicode_WSTR_LENGTH'
            #define PyUnicode_WSTR_LENGTH(op) _PyUnicode_get_wstr_length((PyObject
)op)
                                                                                ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:445:1: note: '_PyUnicode_get_wstr_length' has been explicitly marked deprecated here
            Py_DEPRECATED(3.3)
            ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/pyport.h:513:54: note: expanded from macro 'Py_DEPRECATED'
            #define Py_DEPRECATED(VERSION_UNUSED) attribute((deprecated))
                                                                                                                      ^
            triangle/core.c:22901:52: warning: '_PyUnicode_get_wstr_length' is deprecated [-Wdeprecated-declarations]
                                                    (PyUnicode_GET_SIZE(*name) != PyUnicode_GET_SIZE(key)) ? 1 :
                                                                                                                  ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:261:7: note: expanded from macro 'PyUnicode_GET_SIZE'
                        PyUnicode_WSTR_LENGTH(op) :                                       
                        ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:451:35: note: expanded from macro 'PyUnicode_WSTR_LENGTH'
            #define PyUnicode_WSTR_LENGTH(op) _PyUnicode_get_wstr_length((PyObject
)op)
                                                                                ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:445:1: note: '_PyUnicode_get_wstr_length' has been explicitly marked deprecated here
            Py_DEPRECATED(3.3)
            ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/pyport.h:513:54: note: expanded from macro 'Py_DEPRECATED'
            #define Py_DEPRECATED(VERSION_UNUSED) attribute((deprecated))
                                                                                                                      ^
            triangle/core.c:22901:52: warning: 'PyUnicode_AsUnicode' is deprecated [-Wdeprecated-declarations]
                                                    (PyUnicode_GET_SIZE(**name) != PyUnicode_GET_SIZE(key)) ? 1 :
                                                                                                                  ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:262:14: note: expanded from macro 'PyUnicode_GET_SIZE'
                        ((void)PyUnicode_AsUnicode(_PyObject_CAST(op)),
                                      ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:580:1: note: 'PyUnicode_AsUnicode' has been explicitly marked deprecated here
            Py_DEPRECATED(3.3) PyAPI_FUNC(Py_UNICODE *) PyUnicode_AsUnicode(
            ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/pyport.h:513:54: note: expanded from macro 'Py_DEPRECATED'
            #define Py_DEPRECATED(VERSION_UNUSED) attribute((deprecated))
                                                                                                                      ^
            triangle/core.c:22901:52: warning: '_PyUnicode_get_wstr_length' is deprecated [-Wdeprecated-declarations]
                                                    (PyUnicode_GET_SIZE(*name) != PyUnicode_GET_SIZE(key)) ? 1 :
                                                                                                                  ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:264:8: note: expanded from macro 'PyUnicode_GET_SIZE'
                          PyUnicode_WSTR_LENGTH(op)))
                          ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:451:35: note: expanded from macro 'PyUnicode_WSTR_LENGTH'
            #define PyUnicode_WSTR_LENGTH(op) _PyUnicode_get_wstr_length((PyObject
)op)
                                                                                ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:445:1: note: '_PyUnicode_get_wstr_length' has been explicitly marked deprecated here
            Py_DEPRECATED(3.3)
            ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/pyport.h:513:54: note: expanded from macro 'Py_DEPRECATED'
            #define Py_DEPRECATED(VERSION_UNUSED) attribute((deprecated))
                                                                                                                      ^
            triangle/core.c:22917:26: warning: '_PyUnicode_get_wstr_length' is deprecated [-Wdeprecated-declarations]
                                                            (PyUnicode_GET_SIZE(*argname) != PyUnicode_GET_SIZE(key)) ? 1 :
                                                              ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:261:7: note: expanded from macro 'PyUnicode_GET_SIZE'
                        PyUnicode_WSTR_LENGTH(op) :                                       
                        ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:451:35: note: expanded from macro 'PyUnicode_WSTR_LENGTH'
            #define PyUnicode_WSTR_LENGTH(op) _PyUnicode_get_wstr_length((PyObject
)op)
                                                                                ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:445:1: note: '_PyUnicode_get_wstr_length' has been explicitly marked deprecated here
            Py_DEPRECATED(3.3)
            ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/pyport.h:513:54: note: expanded from macro 'Py_DEPRECATED'
            #define Py_DEPRECATED(VERSION_UNUSED) attribute((deprecated))
                                                                                                                      ^
            triangle/core.c:22917:26: warning: 'PyUnicode_AsUnicode' is deprecated [-Wdeprecated-declarations]
                                                            (PyUnicode_GET_SIZE(**argname) != PyUnicode_GET_SIZE(key)) ? 1 :
                                                              ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:262:14: note: expanded from macro 'PyUnicode_GET_SIZE'
                        ((void)PyUnicode_AsUnicode(_PyObject_CAST(op)),
                                      ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:580:1: note: 'PyUnicode_AsUnicode' has been explicitly marked deprecated here
            Py_DEPRECATED(3.3) PyAPI_FUNC(Py_UNICODE *) PyUnicode_AsUnicode(
            ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/pyport.h:513:54: note: expanded from macro 'Py_DEPRECATED'
            #define Py_DEPRECATED(VERSION_UNUSED) attribute((deprecated))
                                                                                                                      ^
            triangle/core.c:22917:26: warning: '_PyUnicode_get_wstr_length' is deprecated [-Wdeprecated-declarations]
                                                            (PyUnicode_GET_SIZE(*argname) != PyUnicode_GET_SIZE(key)) ? 1 :
                                                              ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:264:8: note: expanded from macro 'PyUnicode_GET_SIZE'
                          PyUnicode_WSTR_LENGTH(op)))
                          ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:451:35: note: expanded from macro 'PyUnicode_WSTR_LENGTH'
            #define PyUnicode_WSTR_LENGTH(op) _PyUnicode_get_wstr_length((PyObject
)op)
                                                                                ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:445:1: note: '_PyUnicode_get_wstr_length' has been explicitly marked deprecated here
            Py_DEPRECATED(3.3)
            ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/pyport.h:513:54: note: expanded from macro 'Py_DEPRECATED'
            #define Py_DEPRECATED(VERSION_UNUSED) attribute((deprecated))
                                                                                                                      ^
            triangle/core.c:22917:59: warning: '_PyUnicode_get_wstr_length' is deprecated [-Wdeprecated-declarations]
                                                            (PyUnicode_GET_SIZE(*argname) != PyUnicode_GET_SIZE(key)) ? 1 :
                                                                                                                                ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:261:7: note: expanded from macro 'PyUnicode_GET_SIZE'
                        PyUnicode_WSTR_LENGTH(op) :                                       
                        ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:451:35: note: expanded from macro 'PyUnicode_WSTR_LENGTH'
            #define PyUnicode_WSTR_LENGTH(op) _PyUnicode_get_wstr_length((PyObject
)op)
                                                                                ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:445:1: note: '_PyUnicode_get_wstr_length' has been explicitly marked deprecated here
            Py_DEPRECATED(3.3)
            ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/pyport.h:513:54: note: expanded from macro 'Py_DEPRECATED'
            #define Py_DEPRECATED(VERSION_UNUSED) attribute((deprecated))
                                                                                                                      ^
            triangle/core.c:22917:59: warning: 'PyUnicode_AsUnicode' is deprecated [-Wdeprecated-declarations]
                                                            (PyUnicode_GET_SIZE(**argname) != PyUnicode_GET_SIZE(key)) ? 1 :
                                                                                                                                ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:262:14: note: expanded from macro 'PyUnicode_GET_SIZE'
                        ((void)PyUnicode_AsUnicode(_PyObject_CAST(op)),
                                      ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:580:1: note: 'PyUnicode_AsUnicode' has been explicitly marked deprecated here
            Py_DEPRECATED(3.3) PyAPI_FUNC(Py_UNICODE *) PyUnicode_AsUnicode(
            ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/pyport.h:513:54: note: expanded from macro 'Py_DEPRECATED'
            #define Py_DEPRECATED(VERSION_UNUSED) attribute((deprecated))
                                                                                                                      ^
            triangle/core.c:22917:59: warning: '_PyUnicode_get_wstr_length' is deprecated [-Wdeprecated-declarations]
                                                            (PyUnicode_GET_SIZE(argname) != PyUnicode_GET_SIZE(key)) ? 1 :
                                                                                                                                ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:264:8: note: expanded from macro 'PyUnicode_GET_SIZE'
                          PyUnicode_WSTR_LENGTH(op)))
                          ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:451:35: note: expanded from macro 'PyUnicode_WSTR_LENGTH'
            #define PyUnicode_WSTR_LENGTH(op) _PyUnicode_get_wstr_length((PyObject
)op)
                                                                                ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:445:1: note: '_PyUnicode_get_wstr_length' has been explicitly marked deprecated here
            Py_DEPRECATED(3.3)
            ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/pyport.h:513:54: note: expanded from macro 'Py_DEPRECATED'
            #define Py_DEPRECATED(VERSION_UNUSED) attribute((deprecated))
                                                                                                                      ^
            triangle/core.c:23497:16: warning: 'PyUnicode_FromUnicode' is deprecated [-Wdeprecated-declarations]
                            return PyUnicode_FromUnicode(NULL, 0);
                                          ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/cpython/unicodeobject.h:551:1: note: 'PyUnicode_FromUnicode' has been explicitly marked deprecated here
            Py_DEPRECATED(3.3) PyAPI_FUNC(PyObject
) PyUnicode_FromUnicode(
            ^
            /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/pyport.h:513:54: note: expanded from macro 'Py_DEPRECATED'
            #define Py_DEPRECATED(VERSION_UNUSED) attribute((deprecated))
                                                                                                                      ^
            13 warnings and 6 errors generated.
            error: command '/usr/bin/clang' failed with exit code 1
            [end of output]

    note: This error originates from a subprocess, and is likely not a problem with pip.
error: legacy-install-failure

× Encountered error while trying to install package.
╰─> triangle

note: This is an issue with the package mentioned above, not pip.
hint: See above for output from the failure.

while trying to install the last version
ERROR: Could not find a version that satisfies the requirement triangle==20220202 (from versions: 2013.01.06.linux-x86_64, 0.1, 0.2, 0.3, 2012.7.4, 2013.1.6a0, 2013.1.6, 2
013.1.7, 2013.4.5, 2015.3.28, 2015.12.13, 2015.12.14, 20160202, 20160203, 20170106, 20170429, 20190115, 20190115.1, 20190115.2, 20190115.3, 20200325, 20200404, 20200424)
ERROR: No matching distribution found for triangle==20220202

mfeif commented

Confirmed; same here.