giotto-ai / giotto-tda

A high-performance topological machine learning toolbox in Python
https://giotto-ai.github.io/gtda-docs
Other
845 stars 173 forks source link

[BUG]: Cannot install Giotto-tda: Failed to build giotto-tda ERROR: Could not build wheels for giotto-tda, which is required to install pyproject.toml-based projects #690

Closed bedanar closed 6 months ago

bedanar commented 6 months ago

Describe the bug

I tried to install giotto-tda with pip install giotto-tda, but had the following error:

Collecting giotto-tda
  Using cached giotto-tda-0.1.4.tar.gz (99 kB)
  Preparing metadata (setup.py) ... done
Requirement already satisfied: numpy>=1.17.0 in /Users/naf/Library/Python/3.11/lib/python/site-packages (from giotto-tda) (1.26.1)
Requirement already satisfied: scipy>=0.17.0 in /opt/homebrew/lib/python3.11/site-packages (from giotto-tda) (1.11.3)
Requirement already satisfied: joblib>=0.11 in /opt/homebrew/lib/python3.11/site-packages (from giotto-tda) (1.3.2)
Requirement already satisfied: scikit-learn>=0.22.0 in /opt/homebrew/lib/python3.11/site-packages (from giotto-tda) (1.3.1)
Requirement already satisfied: matplotlib>=3.0.3 in /opt/homebrew/lib/python3.11/site-packages (from giotto-tda) (3.7.2)
Requirement already satisfied: plotly>=4.4.1 in /opt/homebrew/lib/python3.11/site-packages (from giotto-tda) (5.17.0)
Requirement already satisfied: ipywidgets>=7.5.1 in /opt/homebrew/lib/python3.11/site-packages (from giotto-tda) (8.1.2)
Collecting python-igraph (from giotto-tda)
  Using cached python_igraph-0.11.4-py3-none-any.whl.metadata (2.8 kB)
Requirement already satisfied: comm>=0.1.3 in /opt/homebrew/lib/python3.11/site-packages (from ipywidgets>=7.5.1->giotto-tda) (0.1.4)
Requirement already satisfied: ipython>=6.1.0 in /opt/homebrew/lib/python3.11/site-packages (from ipywidgets>=7.5.1->giotto-tda) (8.20.0)
Requirement already satisfied: traitlets>=4.3.1 in /opt/homebrew/lib/python3.11/site-packages (from ipywidgets>=7.5.1->giotto-tda) (5.9.0)
Requirement already satisfied: widgetsnbextension~=4.0.10 in /opt/homebrew/lib/python3.11/site-packages (from ipywidgets>=7.5.1->giotto-tda) (4.0.10)
Requirement already satisfied: jupyterlab-widgets~=3.0.10 in /opt/homebrew/lib/python3.11/site-packages (from ipywidgets>=7.5.1->giotto-tda) (3.0.10)
Requirement already satisfied: contourpy>=1.0.1 in /opt/homebrew/lib/python3.11/site-packages (from matplotlib>=3.0.3->giotto-tda) (1.1.0)
Requirement already satisfied: cycler>=0.10 in /opt/homebrew/lib/python3.11/site-packages (from matplotlib>=3.0.3->giotto-tda) (0.11.0)
Requirement already satisfied: fonttools>=4.22.0 in /opt/homebrew/lib/python3.11/site-packages (from matplotlib>=3.0.3->giotto-tda) (4.42.1)
Requirement already satisfied: kiwisolver>=1.0.1 in /opt/homebrew/lib/python3.11/site-packages (from matplotlib>=3.0.3->giotto-tda) (1.4.5)
Requirement already satisfied: packaging>=20.0 in /opt/homebrew/lib/python3.11/site-packages (from matplotlib>=3.0.3->giotto-tda) (23.2)
Requirement already satisfied: pillow>=6.2.0 in /opt/homebrew/lib/python3.11/site-packages (from matplotlib>=3.0.3->giotto-tda) (10.2.0)
Requirement already satisfied: pyparsing<3.1,>=2.3.1 in /opt/homebrew/lib/python3.11/site-packages (from matplotlib>=3.0.3->giotto-tda) (2.4.7)
Requirement already satisfied: python-dateutil>=2.7 in /opt/homebrew/lib/python3.11/site-packages (from matplotlib>=3.0.3->giotto-tda) (2.8.2)
Requirement already satisfied: tenacity>=6.2.0 in /opt/homebrew/lib/python3.11/site-packages (from plotly>=4.4.1->giotto-tda) (8.2.3)
Requirement already satisfied: threadpoolctl>=2.0.0 in /opt/homebrew/lib/python3.11/site-packages (from scikit-learn>=0.22.0->giotto-tda) (3.2.0)
Collecting igraph==0.11.4 (from python-igraph->giotto-tda)
  Using cached igraph-0.11.4-cp39-abi3-macosx_11_0_arm64.whl.metadata (3.9 kB)
Collecting texttable>=1.6.2 (from igraph==0.11.4->python-igraph->giotto-tda)
  Using cached texttable-1.7.0-py2.py3-none-any.whl.metadata (9.8 kB)
Requirement already satisfied: decorator in /opt/homebrew/lib/python3.11/site-packages (from ipython>=6.1.0->ipywidgets>=7.5.1->giotto-tda) (5.1.1)
Requirement already satisfied: jedi>=0.16 in /opt/homebrew/lib/python3.11/site-packages (from ipython>=6.1.0->ipywidgets>=7.5.1->giotto-tda) (0.19.0)
Requirement already satisfied: matplotlib-inline in /opt/homebrew/lib/python3.11/site-packages (from ipython>=6.1.0->ipywidgets>=7.5.1->giotto-tda) (0.1.6)
Requirement already satisfied: prompt-toolkit<3.1.0,>=3.0.41 in /opt/homebrew/lib/python3.11/site-packages (from ipython>=6.1.0->ipywidgets>=7.5.1->giotto-tda) (3.0.43)
Requirement already satisfied: pygments>=2.4.0 in /opt/homebrew/lib/python3.11/site-packages (from ipython>=6.1.0->ipywidgets>=7.5.1->giotto-tda) (2.16.1)
Requirement already satisfied: stack-data in /opt/homebrew/lib/python3.11/site-packages (from ipython>=6.1.0->ipywidgets>=7.5.1->giotto-tda) (0.6.2)
Requirement already satisfied: pexpect>4.3 in /opt/homebrew/lib/python3.11/site-packages (from ipython>=6.1.0->ipywidgets>=7.5.1->giotto-tda) (4.8.0)
Requirement already satisfied: six>=1.5 in /opt/homebrew/lib/python3.11/site-packages (from python-dateutil>=2.7->matplotlib>=3.0.3->giotto-tda) (1.16.0)
Requirement already satisfied: parso<0.9.0,>=0.8.3 in /opt/homebrew/lib/python3.11/site-packages (from jedi>=0.16->ipython>=6.1.0->ipywidgets>=7.5.1->giotto-tda) (0.8.3)
Requirement already satisfied: ptyprocess>=0.5 in /opt/homebrew/lib/python3.11/site-packages (from pexpect>4.3->ipython>=6.1.0->ipywidgets>=7.5.1->giotto-tda) (0.7.0)
Requirement already satisfied: wcwidth in /opt/homebrew/lib/python3.11/site-packages (from prompt-toolkit<3.1.0,>=3.0.41->ipython>=6.1.0->ipywidgets>=7.5.1->giotto-tda) (0.2.6)
Requirement already satisfied: executing>=1.2.0 in /opt/homebrew/lib/python3.11/site-packages (from stack-data->ipython>=6.1.0->ipywidgets>=7.5.1->giotto-tda) (1.2.0)
Requirement already satisfied: asttokens>=2.1.0 in /opt/homebrew/lib/python3.11/site-packages (from stack-data->ipython>=6.1.0->ipywidgets>=7.5.1->giotto-tda) (2.2.1)
Requirement already satisfied: pure-eval in /opt/homebrew/lib/python3.11/site-packages (from stack-data->ipython>=6.1.0->ipywidgets>=7.5.1->giotto-tda) (0.2.2)
Using cached python_igraph-0.11.4-py3-none-any.whl (9.1 kB)
Using cached igraph-0.11.4-cp39-abi3-macosx_11_0_arm64.whl (1.7 MB)
Using cached texttable-1.7.0-py2.py3-none-any.whl (10 kB)
Building wheels for collected packages: giotto-tda
  Building wheel for giotto-tda (setup.py) ... error
  error: subprocess-exited-with-error

  × python setup.py bdist_wheel did not run successfully.
  │ exit code: 1
  ╰─> [240 lines of output]
      /opt/homebrew/lib/python3.11/site-packages/setuptools/dist.py:498: SetuptoolsDeprecationWarning: Invalid dash-separated options
      !!

              ********************************************************************************
              Usage of dash-separated 'description-file' will not be supported in future
              versions. Please use the underscore name 'description_file' instead.

              This deprecation is overdue, please update your project and remove deprecated
              calls to avoid build errors in the future.

              See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details.
              ********************************************************************************

      !!
        opt = self.warn_dash_deprecation(opt, section)
      running bdist_wheel
      running build
      running build_py
      creating build
      creating build/lib.macosx-13-arm64-cpython-311
      creating build/lib.macosx-13-arm64-cpython-311/gtda
      copying gtda/_version.py -> build/lib.macosx-13-arm64-cpython-311/gtda
      copying gtda/__init__.py -> build/lib.macosx-13-arm64-cpython-311/gtda
      copying gtda/pipeline.py -> build/lib.macosx-13-arm64-cpython-311/gtda
      copying gtda/base.py -> build/lib.macosx-13-arm64-cpython-311/gtda
      creating build/lib.macosx-13-arm64-cpython-311/gtda/diagrams
      copying gtda/diagrams/_metrics.py -> build/lib.macosx-13-arm64-cpython-311/gtda/diagrams
      copying gtda/diagrams/__init__.py -> build/lib.macosx-13-arm64-cpython-311/gtda/diagrams
      copying gtda/diagrams/features.py -> build/lib.macosx-13-arm64-cpython-311/gtda/diagrams
      copying gtda/diagrams/distance.py -> build/lib.macosx-13-arm64-cpython-311/gtda/diagrams
      copying gtda/diagrams/preprocessing.py -> build/lib.macosx-13-arm64-cpython-311/gtda/diagrams
      copying gtda/diagrams/_utils.py -> build/lib.macosx-13-arm64-cpython-311/gtda/diagrams
      creating build/lib.macosx-13-arm64-cpython-311/gtda/externals
      copying gtda/externals/__init__.py -> build/lib.macosx-13-arm64-cpython-311/gtda/externals
      creating build/lib.macosx-13-arm64-cpython-311/gtda/tests
      copying gtda/tests/__init__.py -> build/lib.macosx-13-arm64-cpython-311/gtda/tests
      copying gtda/tests/test_pipeline.py -> build/lib.macosx-13-arm64-cpython-311/gtda/tests
      creating build/lib.macosx-13-arm64-cpython-311/gtda/mapper
      copying gtda/mapper/cover.py -> build/lib.macosx-13-arm64-cpython-311/gtda/mapper
      copying gtda/mapper/__init__.py -> build/lib.macosx-13-arm64-cpython-311/gtda/mapper
      copying gtda/mapper/visualization.py -> build/lib.macosx-13-arm64-cpython-311/gtda/mapper
      copying gtda/mapper/nerve.py -> build/lib.macosx-13-arm64-cpython-311/gtda/mapper
      copying gtda/mapper/cluster.py -> build/lib.macosx-13-arm64-cpython-311/gtda/mapper
      copying gtda/mapper/pipeline.py -> build/lib.macosx-13-arm64-cpython-311/gtda/mapper
      copying gtda/mapper/filter.py -> build/lib.macosx-13-arm64-cpython-311/gtda/mapper
      creating build/lib.macosx-13-arm64-cpython-311/gtda/utils
      copying gtda/utils/__init__.py -> build/lib.macosx-13-arm64-cpython-311/gtda/utils
      copying gtda/utils/_docs.py -> build/lib.macosx-13-arm64-cpython-311/gtda/utils
      copying gtda/utils/testing.py -> build/lib.macosx-13-arm64-cpython-311/gtda/utils
      copying gtda/utils/validation.py -> build/lib.macosx-13-arm64-cpython-311/gtda/utils
      creating build/lib.macosx-13-arm64-cpython-311/gtda/time_series
      copying gtda/time_series/embedding.py -> build/lib.macosx-13-arm64-cpython-311/gtda/time_series
      copying gtda/time_series/__init__.py -> build/lib.macosx-13-arm64-cpython-311/gtda/time_series
      copying gtda/time_series/features.py -> build/lib.macosx-13-arm64-cpython-311/gtda/time_series
      copying gtda/time_series/preprocessing.py -> build/lib.macosx-13-arm64-cpython-311/gtda/time_series
      copying gtda/time_series/multivariate.py -> build/lib.macosx-13-arm64-cpython-311/gtda/time_series
      copying gtda/time_series/target.py -> build/lib.macosx-13-arm64-cpython-311/gtda/time_series
      creating build/lib.macosx-13-arm64-cpython-311/gtda/meta_transformers
      copying gtda/meta_transformers/__init__.py -> build/lib.macosx-13-arm64-cpython-311/gtda/meta_transformers
      copying gtda/meta_transformers/features.py -> build/lib.macosx-13-arm64-cpython-311/gtda/meta_transformers
      creating build/lib.macosx-13-arm64-cpython-311/gtda/graphs
      copying gtda/graphs/geodesic_distance.py -> build/lib.macosx-13-arm64-cpython-311/gtda/graphs
      copying gtda/graphs/transition.py -> build/lib.macosx-13-arm64-cpython-311/gtda/graphs
      copying gtda/graphs/__init__.py -> build/lib.macosx-13-arm64-cpython-311/gtda/graphs
      copying gtda/graphs/kneighbors.py -> build/lib.macosx-13-arm64-cpython-311/gtda/graphs
      creating build/lib.macosx-13-arm64-cpython-311/gtda/homology
      copying gtda/homology/point_clouds.py -> build/lib.macosx-13-arm64-cpython-311/gtda/homology
      copying gtda/homology/consistent.py -> build/lib.macosx-13-arm64-cpython-311/gtda/homology
      copying gtda/homology/__init__.py -> build/lib.macosx-13-arm64-cpython-311/gtda/homology
      copying gtda/homology/_utils.py -> build/lib.macosx-13-arm64-cpython-311/gtda/homology
      creating build/lib.macosx-13-arm64-cpython-311/gtda/diagrams/tests
      copying gtda/diagrams/tests/test_features.py -> build/lib.macosx-13-arm64-cpython-311/gtda/diagrams/tests
      copying gtda/diagrams/tests/test_distance.py -> build/lib.macosx-13-arm64-cpython-311/gtda/diagrams/tests
      copying gtda/diagrams/tests/__init__.py -> build/lib.macosx-13-arm64-cpython-311/gtda/diagrams/tests
      copying gtda/diagrams/tests/test_preprocessing.py -> build/lib.macosx-13-arm64-cpython-311/gtda/diagrams/tests
      creating build/lib.macosx-13-arm64-cpython-311/gtda/externals/python
      copying gtda/externals/python/cubical_complex_interface.py -> build/lib.macosx-13-arm64-cpython-311/gtda/externals/python
      copying gtda/externals/python/simplex_tree_interface.py -> build/lib.macosx-13-arm64-cpython-311/gtda/externals/python
      copying gtda/externals/python/strong_witness_complex_interface.py -> build/lib.macosx-13-arm64-cpython-311/gtda/externals/python
      copying gtda/externals/python/__init__.py -> build/lib.macosx-13-arm64-cpython-311/gtda/externals/python
      copying gtda/externals/python/periodic_cubical_complex_interface.py -> build/lib.macosx-13-arm64-cpython-311/gtda/externals/python
      copying gtda/externals/python/witness_complex_interface.py -> build/lib.macosx-13-arm64-cpython-311/gtda/externals/python
      copying gtda/externals/python/rips_complex_interface.py -> build/lib.macosx-13-arm64-cpython-311/gtda/externals/python
      copying gtda/externals/python/ripser_interface.py -> build/lib.macosx-13-arm64-cpython-311/gtda/externals/python
      copying gtda/externals/python/cech_complex_interface.py -> build/lib.macosx-13-arm64-cpython-311/gtda/externals/python
      creating build/lib.macosx-13-arm64-cpython-311/gtda/externals/python/tests
      copying gtda/externals/python/tests/__init__.py -> build/lib.macosx-13-arm64-cpython-311/gtda/externals/python/tests
      copying gtda/externals/python/tests/test_witness.py -> build/lib.macosx-13-arm64-cpython-311/gtda/externals/python/tests
      copying gtda/externals/python/tests/test_rips_complex.py -> build/lib.macosx-13-arm64-cpython-311/gtda/externals/python/tests
      copying gtda/externals/python/tests/test_cech_complex.py -> build/lib.macosx-13-arm64-cpython-311/gtda/externals/python/tests
      copying gtda/externals/python/tests/test_periodic_cubical_complex.py -> build/lib.macosx-13-arm64-cpython-311/gtda/externals/python/tests
      creating build/lib.macosx-13-arm64-cpython-311/gtda/mapper/utils
      copying gtda/mapper/utils/_logging.py -> build/lib.macosx-13-arm64-cpython-311/gtda/mapper/utils
      copying gtda/mapper/utils/__init__.py -> build/lib.macosx-13-arm64-cpython-311/gtda/mapper/utils
      copying gtda/mapper/utils/_cover.py -> build/lib.macosx-13-arm64-cpython-311/gtda/mapper/utils
      copying gtda/mapper/utils/visualization.py -> build/lib.macosx-13-arm64-cpython-311/gtda/mapper/utils
      copying gtda/mapper/utils/_cluster.py -> build/lib.macosx-13-arm64-cpython-311/gtda/mapper/utils
      copying gtda/mapper/utils/pipeline.py -> build/lib.macosx-13-arm64-cpython-311/gtda/mapper/utils
      copying gtda/mapper/utils/_list_feature_union.py -> build/lib.macosx-13-arm64-cpython-311/gtda/mapper/utils
      copying gtda/mapper/utils/decorators.py -> build/lib.macosx-13-arm64-cpython-311/gtda/mapper/utils
      creating build/lib.macosx-13-arm64-cpython-311/gtda/utils/tests
      copying gtda/utils/tests/test_validation.py -> build/lib.macosx-13-arm64-cpython-311/gtda/utils/tests
      copying gtda/utils/tests/__init__.py -> build/lib.macosx-13-arm64-cpython-311/gtda/utils/tests
      creating build/lib.macosx-13-arm64-cpython-311/gtda/time_series/tests
      copying gtda/time_series/tests/__init__.py -> build/lib.macosx-13-arm64-cpython-311/gtda/time_series/tests
      copying gtda/time_series/tests/test_multivariate.py -> build/lib.macosx-13-arm64-cpython-311/gtda/time_series/tests
      copying gtda/time_series/tests/test_embedding.py -> build/lib.macosx-13-arm64-cpython-311/gtda/time_series/tests
      copying gtda/time_series/tests/test_preprocessing.py -> build/lib.macosx-13-arm64-cpython-311/gtda/time_series/tests
      creating build/lib.macosx-13-arm64-cpython-311/gtda/meta_transformers/tests
      copying gtda/meta_transformers/tests/test_features.py -> build/lib.macosx-13-arm64-cpython-311/gtda/meta_transformers/tests
      copying gtda/meta_transformers/tests/__init__.py -> build/lib.macosx-13-arm64-cpython-311/gtda/meta_transformers/tests
      creating build/lib.macosx-13-arm64-cpython-311/gtda/graphs/tests
      copying gtda/graphs/tests/__init__.py -> build/lib.macosx-13-arm64-cpython-311/gtda/graphs/tests
      copying gtda/graphs/tests/test_transition.py -> build/lib.macosx-13-arm64-cpython-311/gtda/graphs/tests
      copying gtda/graphs/tests/test_geodesic_distance.py -> build/lib.macosx-13-arm64-cpython-311/gtda/graphs/tests
      copying gtda/graphs/tests/test_kneighbors.py -> build/lib.macosx-13-arm64-cpython-311/gtda/graphs/tests
      creating build/lib.macosx-13-arm64-cpython-311/gtda/homology/tests
      copying gtda/homology/tests/__init__.py -> build/lib.macosx-13-arm64-cpython-311/gtda/homology/tests
      copying gtda/homology/tests/test_consistent.py -> build/lib.macosx-13-arm64-cpython-311/gtda/homology/tests
      copying gtda/homology/tests/test_point_clouds.py -> build/lib.macosx-13-arm64-cpython-311/gtda/homology/tests
      running build_ext
      Cloning into '/private/var/folders/jw/48lxzfqs2v1bgvc5vqznd_gw0000gp/T/pip-install-jpyovsn4/giotto-tda_fd82ebed974843d7a7570f2169f00a20/gtda/externals/pybind11'...
      -- The CXX compiler identification is AppleClang 14.0.3.14030022
      -- Detecting CXX compiler ABI info
      -- Detecting CXX compiler ABI info - done
      -- Check for working CXX compiler: /Library/Developer/CommandLineTools/usr/bin/c++ - skipped
      -- Detecting CXX compile features
      -- Detecting CXX compile features - done
      -- pybind11 v2.12.0 dev1
      -- CMake 3.27.4
      -- Found Python: /opt/homebrew/Frameworks/Python.framework/Versions/3.12/bin/python3.12 (found suitable version "3.12.2", minimum required is "3.6") found components: Interpreter Development.Module Development.Embed
      -- Python 3.12.2
      -- Performing Test HAS_FLTO_THIN
      -- Performing Test HAS_FLTO_THIN - Failed
      -- Performing Test HAS_FLTO
      -- Performing Test HAS_FLTO - Success
      -- pybind11::lto enabled
      -- pybind11::thin_lto enabled
      -- Configuring done (1.0s)
      -- Generating done (0.0s)
      -- Build files have been written to: /private/var/folders/jw/48lxzfqs2v1bgvc5vqznd_gw0000gp/T/pip-install-jpyovsn4/giotto-tda_fd82ebed974843d7a7570f2169f00a20/gtda/externals/pybind11/build
      Install the project...
      -- Install configuration: ""
      -- Up-to-date: /usr/local/include/pybind11
      CMake Error at cmake_install.cmake:41 (file):
        file INSTALL cannot set permissions on "/usr/local/include/pybind11":
        Operation not permitted.

      make: *** [install] Error 1
      Install the project...
      -- Install configuration: ""
      -- Up-to-date: /usr/local/include/pybind11
      -- Installing: /usr/local/include/pybind11/attr.h
      -- Installing: /usr/local/include/pybind11/embed.h
      -- Installing: /usr/local/include/pybind11/numpy.h
      -- Installing: /usr/local/include/pybind11/pybind11.h
      -- Installing: /usr/local/include/pybind11/operators.h
      -- Installing: /usr/local/include/pybind11/iostream.h
      -- Installing: /usr/local/include/pybind11/gil.h
      -- Installing: /usr/local/include/pybind11/chrono.h
      -- Installing: /usr/local/include/pybind11/typing.h
      -- Installing: /usr/local/include/pybind11/stl_bind.h
      -- Installing: /usr/local/include/pybind11/buffer_info.h
      -- Installing: /usr/local/include/pybind11/options.h
      -- Up-to-date: /usr/local/include/pybind11/eigen
      -- Installing: /usr/local/include/pybind11/eigen/matrix.h
      -- Installing: /usr/local/include/pybind11/eigen/common.h
      -- Installing: /usr/local/include/pybind11/eigen/tensor.h
      -- Up-to-date: /usr/local/include/pybind11/stl
      -- Installing: /usr/local/include/pybind11/stl/filesystem.h
      -- Installing: /usr/local/include/pybind11/functional.h
      -- Installing: /usr/local/include/pybind11/stl.h
      -- Up-to-date: /usr/local/include/pybind11/detail
      -- Installing: /usr/local/include/pybind11/detail/type_caster_base.h
      -- Installing: /usr/local/include/pybind11/detail/typeid.h
      -- Installing: /usr/local/include/pybind11/detail/descr.h
      -- Installing: /usr/local/include/pybind11/detail/internals.h
      -- Installing: /usr/local/include/pybind11/detail/common.h
      -- Installing: /usr/local/include/pybind11/detail/class.h
      -- Installing: /usr/local/include/pybind11/detail/init.h
      -- Installing: /usr/local/include/pybind11/common.h
      -- Installing: /usr/local/include/pybind11/eval.h
      -- Installing: /usr/local/include/pybind11/cast.h
      -- Installing: /usr/local/include/pybind11/type_caster_pyobject_ptr.h
      -- Installing: /usr/local/include/pybind11/eigen.h
      -- Installing: /usr/local/include/pybind11/gil_safe_call_once.h
      -- Installing: /usr/local/include/pybind11/pytypes.h
      -- Installing: /usr/local/include/pybind11/complex.h
      -- Installing: /usr/local/share/cmake/pybind11/pybind11Config.cmake
      -- Installing: /usr/local/share/cmake/pybind11/pybind11ConfigVersion.cmake
      -- Installing: /usr/local/share/cmake/pybind11/FindPythonLibsNew.cmake
      -- Installing: /usr/local/share/cmake/pybind11/pybind11Common.cmake
      -- Installing: /usr/local/share/cmake/pybind11/pybind11Tools.cmake
      -- Installing: /usr/local/share/cmake/pybind11/pybind11NewTools.cmake
      -- Installing: /usr/local/share/cmake/pybind11/pybind11Targets.cmake
      -- Installing: /usr/local/share/pkgconfig/pybind11.pc
      fatal: not a git repository (or any of the parent directories): .git
      Traceback (most recent call last):
        File "<string>", line 2, in <module>
        File "<pip-setuptools-caller>", line 34, in <module>
        File "/private/var/folders/jw/48lxzfqs2v1bgvc5vqznd_gw0000gp/T/pip-install-jpyovsn4/giotto-tda_fd82ebed974843d7a7570f2169f00a20/setup.py", line 183, in <module>
          setup(name=DISTNAME,
        File "/opt/homebrew/lib/python3.11/site-packages/setuptools/__init__.py", line 103, in setup
          return distutils.core.setup(**attrs)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "/opt/homebrew/lib/python3.11/site-packages/setuptools/_distutils/core.py", line 185, in setup
          return run_commands(dist)
                 ^^^^^^^^^^^^^^^^^^
        File "/opt/homebrew/lib/python3.11/site-packages/setuptools/_distutils/core.py", line 201, in run_commands
          dist.run_commands()
        File "/opt/homebrew/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 969, in run_commands
          self.run_command(cmd)
        File "/opt/homebrew/lib/python3.11/site-packages/setuptools/dist.py", line 989, in run_command
          super().run_command(command)
        File "/opt/homebrew/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
          cmd_obj.run()
        File "/opt/homebrew/lib/python3.11/site-packages/wheel/bdist_wheel.py", line 364, in run
          self.run_command("build")
        File "/opt/homebrew/lib/python3.11/site-packages/setuptools/_distutils/cmd.py", line 318, in run_command
          self.distribution.run_command(command)
        File "/opt/homebrew/lib/python3.11/site-packages/setuptools/dist.py", line 989, in run_command
          super().run_command(command)
        File "/opt/homebrew/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
          cmd_obj.run()
        File "/opt/homebrew/lib/python3.11/site-packages/setuptools/_distutils/command/build.py", line 131, in run
          self.run_command(cmd_name)
        File "/opt/homebrew/lib/python3.11/site-packages/setuptools/_distutils/cmd.py", line 318, in run_command
          self.distribution.run_command(command)
        File "/opt/homebrew/lib/python3.11/site-packages/setuptools/dist.py", line 989, in run_command
          super().run_command(command)
        File "/opt/homebrew/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
          cmd_obj.run()
        File "/private/var/folders/jw/48lxzfqs2v1bgvc5vqznd_gw0000gp/T/pip-install-jpyovsn4/giotto-tda_fd82ebed974843d7a7570f2169f00a20/setup.py", line 116, in run
          self.install_dependencies()
        File "/private/var/folders/jw/48lxzfqs2v1bgvc5vqznd_gw0000gp/T/pip-install-jpyovsn4/giotto-tda_fd82ebed974843d7a7570f2169f00a20/setup.py", line 150, in install_dependencies
          subprocess.check_call(['git', 'submodule', 'update',
        File "/opt/homebrew/Cellar/python@3.11/3.11.6/Frameworks/Python.framework/Versions/3.11/lib/python3.11/subprocess.py", line 413, in check_call
          raise CalledProcessError(retcode, cmd)
      subprocess.CalledProcessError: Command '['git', 'submodule', 'update', '--init', '--recursive']' returned non-zero exit status 128.
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for giotto-tda
  Running setup.py clean for giotto-tda
Failed to build giotto-tda
ERROR: Could not build wheels for giotto-tda, which is required to install pyproject.toml-based projects

Expected behavior

No error should be thrown. Actual behaviour

Versions

Please run the following snippet and paste the output below.

import platform; print(platform.platform()): 'macOS-13.2.1-arm64-arm-64bit'
import sys; print("Python", sys.version): Python 3.12.2 (main, Feb  6 2024, 20:19:44) [Clang 15.0.0 (clang-1500.1.0.2.5)]
import numpy; print("NumPy", numpy.__version__): 1.26.1
import scipy; print("SciPy", scipy.__version__): '1.11.3'
import joblib; print("Joblib", joblib.__version__): Joblib 1.3.2
import sklearn; print("Scikit-learn", sklearn.__version__): 1.3.1
import gtda; print("Giotto-tda", gtda.__version__): Cannot install

Additional context

glad4enkonm commented 6 months ago

i have the same problem

ghoshanirban commented 6 months ago

Did you try pip3 install giotto-tda? pip3 worked on my Ubuntu. In contrast, using pip gave me the same warning as you got.

bedanar commented 6 months ago

Yesterday I tried to install in Ubuntu with pip install giotto-tda, everything was OK even without pip3. In macOs with pip3 I have the following error:

error: externally-managed-environment

× This environment is externally managed
╰─> To install Python packages system-wide, try brew install
    xyz, where xyz is the package you are trying to
    install.

    If you wish to install a non-brew-packaged Python package,
    create a virtual environment using python3 -m venv path/to/venv.
    Then use path/to/venv/bin/python and path/to/venv/bin/pip.

    If you wish to install a non-brew packaged Python application,
    it may be easiest to use pipx install xyz, which will manage a
    virtual environment for you. Make sure you have pipx installed.

note: If you believe this is a mistake, please contact your Python installation or OS distribution provider. You can override this, at the risk of breaking your Python installation or OS, by passing --break-system-packages.
hint: See PEP 668 for the detailed specification.
bedanar commented 6 months ago

I tried to install with pipx: pipx install giotto-tda, but there is the following error:

Fatal error from pip prevented installation. Full pip output in file:
    /Users/naf/Library/Logs/pipx/cmd_2024-03-11_17.15.21_pip_errors.log

pip failed to build package:
    giotto-tda

Some possibly relevant errors from pip install:
    error: subprocess-exited-with-error
    subprocess.CalledProcessError: Command '['git', 'submodule', 'update', '--init', '--recursive']' returned non-zero exit status 128.

Error installing giotto-tda.
glad4enkonm commented 6 months ago

Did you try pip3 install giotto-tda? pip3 worked on my Ubuntu. In contrast, using pip gave me the same warning as you got.

what version of py do you use? it seem it is not working for 3.11

bedanar commented 6 months ago

I am using Python 3.12.2. You mean to downgrade to 3.10, for example?

Did you try pip3 install giotto-tda? pip3 worked on my Ubuntu. In contrast, using pip gave me the same warning as you got.

what version of py do you use? it seem it is not working for 3.11

glad4enkonm commented 6 months ago

I am using Python 3.12.2. You mean to downgrade to 3.10, for example?

Did you try pip3 install giotto-tda? pip3 worked on my Ubuntu. In contrast, using pip gave me the same warning as you got.

what version of py do you use? it seem it is not working for 3.11

in the release notes for 0.6.0 python 3.10 is mentioned, try with that one

ghoshanirban commented 6 months ago

I am using Python 3.10.12 and it worked fine with pip3.

bedanar commented 6 months ago

Thank you! I have managed to install!

cffwxx commented 4 months ago

with python=3.10 install with pip install giotto-tda goes very smooth. but with python>=3.11 error happened.