mapillary-python-sdk icon indicating copy to clipboard operation
mapillary-python-sdk copied to clipboard

Couldn't Install on Colab due to Dependencies Issues

Open TimWGY opened this issue 10 months ago • 3 comments

Describe the bug Fail to install mapillary-python-sdk due to dependencies issues.

To Reproduce Execute !pip install mapillary in one cell of Colab notebook (colab notebook release 2025-01-13).

Expected behavior Successful installation.

Screenshots

Collecting mapillary
  Downloading mapillary-1.0.12-py2.py3-none-any.whl.metadata (11 kB)
Collecting attrs==21.2.0 (from mapillary)
  Downloading attrs-21.2.0-py2.py3-none-any.whl.metadata (9.1 kB)
Collecting bleach==3.3.0 (from mapillary)
  Downloading bleach-3.3.0-py2.py3-none-any.whl.metadata (23 kB)
Collecting certifi==2021.5.30 (from mapillary)
  Downloading certifi-2021.5.30-py2.py3-none-any.whl.metadata (3.0 kB)
Collecting chardet==4.0.0 (from mapillary)
  Downloading chardet-4.0.0-py2.py3-none-any.whl.metadata (3.5 kB)
Collecting click==8.0.1 (from mapillary)
  Downloading click-8.0.1-py3-none-any.whl.metadata (3.2 kB)
Collecting click-plugins==1.1.1 (from mapillary)
  Downloading click_plugins-1.1.1-py2.py3-none-any.whl.metadata (6.4 kB)
Collecting cligj==0.7.2 (from mapillary)
  Downloading cligj-0.7.2-py3-none-any.whl.metadata (5.0 kB)
Collecting coverage==5.5 (from mapillary)
  Downloading coverage-5.5.tar.gz (691 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 691.3/691.3 kB 7.0 MB/s eta 0:00:00
  Preparing metadata (setup.py) ... done
Collecting docutils==0.17.1 (from mapillary)
  Downloading docutils-0.17.1-py2.py3-none-any.whl.metadata (2.9 kB)
Collecting future==0.18.2 (from mapillary)
  Downloading future-0.18.2.tar.gz (829 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 829.2/829.2 kB 32.9 MB/s eta 0:00:00
  Preparing metadata (setup.py) ... done
Collecting geojson==2.5.0 (from mapillary)
  Downloading geojson-2.5.0-py2.py3-none-any.whl.metadata (15 kB)
Collecting haversine==2.3.1 (from mapillary)
  Downloading haversine-2.3.1-py2.py3-none-any.whl.metadata (3.9 kB)
Collecting hypothesis==6.14.0 (from mapillary)
  Downloading hypothesis-6.14.0-py3-none-any.whl.metadata (6.2 kB)
Collecting idna==2.10 (from mapillary)
  Downloading idna-2.10-py2.py3-none-any.whl.metadata (9.1 kB)
Collecting iniconfig==1.1.1 (from mapillary)
  Downloading iniconfig-1.1.1-py2.py3-none-any.whl.metadata (2.4 kB)
Collecting mapbox-vector-tile==1.2.1 (from mapillary)
  Downloading mapbox-vector-tile-1.2.1.tar.gz (33 kB)
  Preparing metadata (setup.py) ... done
Collecting mercantile==1.2.1 (from mapillary)
  Downloading mercantile-1.2.1-py3-none-any.whl.metadata (4.8 kB)
Collecting munch==2.5.0 (from mapillary)
  Downloading munch-2.5.0-py2.py3-none-any.whl.metadata (5.8 kB)
Collecting numpy==1.21.0 (from mapillary)
  Downloading numpy-1.21.0.zip (10.3 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 10.3/10.3 MB 54.3 MB/s eta 0:00:00
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting packaging==21.3 (from mapillary)
  Downloading packaging-21.3-py3-none-any.whl.metadata (15 kB)
Collecting pkginfo==1.7.0 (from mapillary)
  Downloading pkginfo-1.7.0-py2.py3-none-any.whl.metadata (8.8 kB)
Collecting pluggy==0.13.1 (from mapillary)
  Downloading pluggy-0.13.1-py2.py3-none-any.whl.metadata (15 kB)
Collecting protobuf==3.17.3 (from mapillary)
  Downloading protobuf-3.17.3-py2.py3-none-any.whl.metadata (858 bytes)
Collecting psutil==5.8.0 (from mapillary)
  Downloading psutil-5.8.0.tar.gz (470 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 470.9/470.9 kB 28.8 MB/s eta 0:00:00
  Preparing metadata (setup.py) ... done
Collecting py==1.10.0 (from mapillary)
  Downloading py-1.10.0-py2.py3-none-any.whl.metadata (2.7 kB)
Collecting pyclipper==1.3.0.post3 (from mapillary)
  Downloading pyclipper-1.3.0.post3.tar.gz (134 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 134.3/134.3 kB 9.6 MB/s eta 0:00:00
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting pygments==2.9.0 (from mapillary)
  Downloading Pygments-2.9.0-py3-none-any.whl.metadata (1.9 kB)
Collecting pyparsing==2.4.7 (from mapillary)
  Downloading pyparsing-2.4.7-py2.py3-none-any.whl.metadata (3.6 kB)
Collecting python-dotenv==0.19.0 (from mapillary)
  Downloading python_dotenv-0.19.0-py2.py3-none-any.whl.metadata (18 kB)
Collecting readme-renderer==36.0 (from mapillary)
  Downloading readme_renderer-36.0-py3-none-any.whl.metadata (2.9 kB)
Collecting requests==2.25.1 (from mapillary)
  Downloading requests-2.25.1-py2.py3-none-any.whl.metadata (4.2 kB)
Collecting requests-toolbelt==0.9.1 (from mapillary)
  Downloading requests_toolbelt-0.9.1-py2.py3-none-any.whl.metadata (13 kB)
INFO: pip is looking at multiple versions of mapillary to determine which version is compatible with other requirements. This could take a while.
Collecting mapillary
  Downloading mapillary-1.0.11-py2.py3-none-any.whl.metadata (11 kB)
  Downloading mapillary-1.0.10-py2.py3-none-any.whl.metadata (11 kB)
  Downloading mapillary-1.0.9-py2.py3-none-any.whl.metadata (11 kB)
Collecting numpy==1.22 (from mapillary)
  Downloading numpy-1.22.0.zip (11.3 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 11.3/11.3 MB 50.9 MB/s eta 0:00:00
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting mapillary
  Downloading mapillary-1.0.8-py2.py3-none-any.whl.metadata (11 kB)
  Downloading mapillary-1.0.7-py2.py3-none-any.whl.metadata (11 kB)
  Downloading mapillary-1.0.6-py2.py3-none-any.whl.metadata (11 kB)
Collecting pip==21.2.4 (from mapillary)
  Downloading pip-21.2.4-py3-none-any.whl.metadata (4.2 kB)
Collecting pyclipper==1.3.0.post2 (from mapillary)
  Downloading pyclipper-1.3.0.post2.tar.gz (132 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 132.9/132.9 kB 9.7 MB/s eta 0:00:00
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting readme-renderer==35.0 (from mapillary)
  Downloading readme_renderer-35.0-py3-none-any.whl.metadata (2.6 kB)
Collecting mapillary
  Downloading mapillary-1.0.5-py2.py3-none-any.whl.metadata (11 kB)
INFO: pip is still looking at multiple versions of mapillary to determine which version is compatible with other requirements. This could take a while.
  Downloading mapillary-1.0.4-py2.py3-none-any.whl.metadata (11 kB)
Collecting readme-renderer==34.0 (from mapillary)
  Downloading readme_renderer-34.0-py3-none-any.whl.metadata (2.7 kB)
Collecting mapillary
  Downloading mapillary-1.0.3-py2.py3-none-any.whl.metadata (11 kB)
  Downloading mapillary-1.0.2-py2.py3-none-any.whl.metadata (9.8 kB)
Collecting readme-renderer==32.0 (from mapillary)
  Downloading readme_renderer-32.0-py3-none-any.whl.metadata (2.6 kB)
Collecting mapillary
  Downloading mapillary-1.0.1-py2.py3-none-any.whl.metadata (9.8 kB)
Collecting build==0.6.0.post1 (from mapillary)
  Downloading build-0.6.0.post1-py3-none-any.whl.metadata (3.6 kB)
Collecting colorama==0.4.4 (from mapillary)
  Downloading colorama-0.4.4-py2.py3-none-any.whl.metadata (14 kB)
Collecting packaging==21.0 (from mapillary)
  Downloading packaging-21.0-py3-none-any.whl.metadata (13 kB)
Collecting pep517==0.11.0 (from mapillary)
  Downloading pep517-0.11.0-py2.py3-none-any.whl.metadata (3.8 kB)
Collecting pyclipper==1.2.1 (from mapillary)
  Downloading pyclipper-1.2.1.zip (143 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 143.3/143.3 kB 9.9 MB/s eta 0:00:00
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting readme-renderer==29.0 (from mapillary)
  Downloading readme_renderer-29.0-py2.py3-none-any.whl.metadata (2.6 kB)
Collecting mapillary
  Downloading mapillary-1.0.0-py2.py3-none-any.whl.metadata (9.8 kB)
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
  Downloading mapillary-0.0.32-py2.py3-none-any.whl.metadata (5.9 kB)
  Downloading mapillary-0.0.31-py2.py3-none-any.whl.metadata (5.9 kB)
  Downloading mapillary-0.0.30-py2.py3-none-any.whl.metadata (9.1 kB)
  Downloading mapillary-0.0.29-py2.py3-none-any.whl.metadata (8.5 kB)
Collecting pytest==6.2.4 (from mapillary)
  Downloading pytest-6.2.4-py3-none-any.whl.metadata (7.3 kB)
Collecting pytest-arraydiff==0.3 (from mapillary)
  Downloading pytest_arraydiff-0.3-py2.py3-none-any.whl.metadata (7.9 kB)
Collecting pytest-astropy==0.8.0 (from mapillary)
  Downloading pytest_astropy-0.8.0-py3-none-any.whl.metadata (4.0 kB)
Collecting pytest-astropy-header==0.1.2 (from mapillary)
  Downloading pytest_astropy_header-0.1.2-py2.py3-none-any.whl.metadata (7.0 kB)
Collecting pytest-cov==2.12.1 (from mapillary)
  Downloading pytest_cov-2.12.1-py2.py3-none-any.whl.metadata (22 kB)
Collecting pytest-doctestplus==0.9.0 (from mapillary)
  Downloading pytest_doctestplus-0.9.0-py3-none-any.whl.metadata (12 kB)
Collecting pytest-filter-subpackage==0.1.1 (from mapillary)
  Downloading pytest_filter_subpackage-0.1.1-py2.py3-none-any.whl.metadata (2.6 kB)
Collecting pytest-openfiles==0.5.0 (from mapillary)
  Downloading pytest_openfiles-0.5.0-py3-none-any.whl.metadata (4.2 kB)
Collecting pytest-remotedata==0.3.2 (from mapillary)
  Downloading pytest_remotedata-0.3.2-py2.py3-none-any.whl.metadata (5.3 kB)
Collecting mapillary
  Downloading mapillary-0.0.28-py2.py3-none-any.whl.metadata (8.5 kB)
  Downloading mapillary-0.0.27-py2.py3-none-any.whl.metadata (8.5 kB)
  Downloading mapillary-0.0.26-py2.py3-none-any.whl.metadata (8.5 kB)
  Downloading mapillary-0.0.24-py2.py3-none-any.whl.metadata (8.5 kB)
  Downloading mapillary-0.0.23-py2.py3-none-any.whl.metadata (6.3 kB)
  Downloading mapillary-0.0.22-py2.py3-none-any.whl.metadata (6.3 kB)
  Downloading mapillary-0.0.20-py2.py3-none-any.whl.metadata (6.3 kB)
  Downloading mapillary-0.0.19-py2.py3-none-any.whl.metadata (6.3 kB)
  Downloading mapillary-0.0.18-py2.py3-none-any.whl.metadata (8.0 kB)
  Downloading mapillary-0.0.17-py2.py3-none-any.whl.metadata (8.5 kB)
  Downloading mapillary-0.0.16-py2.py3-none-any.whl.metadata (8.6 kB)
  Downloading mapillary-0.0.15-py2.py3-none-any.whl.metadata (8.0 kB)
ERROR: Cannot install mapillary==0.0.15, mapillary==0.0.16, mapillary==0.0.17, mapillary==0.0.18, mapillary==0.0.19, mapillary==0.0.20, mapillary==0.0.22, mapillary==0.0.23, mapillary==0.0.24, mapillary==0.0.26, mapillary==0.0.27, mapillary==0.0.28, mapillary==0.0.29, mapillary==0.0.30, mapillary==0.0.31, mapillary==0.0.32, mapillary==1.0.0, mapillary==1.0.1, mapillary==1.0.10, mapillary==1.0.11, mapillary==1.0.12, mapillary==1.0.2, mapillary==1.0.3, mapillary==1.0.4, mapillary==1.0.5, mapillary==1.0.6, mapillary==1.0.7, mapillary==1.0.8 and mapillary==1.0.9 because these package versions have conflicting dependencies.

The conflict is caused by:
    mapillary 1.0.12 depends on scipy==1.7.3
    mapillary 1.0.11 depends on scipy==1.7.3
    mapillary 1.0.10 depends on scipy==1.7.3
    mapillary 1.0.9 depends on scipy==1.7.3
    mapillary 1.0.8 depends on scipy==1.7.3
    mapillary 1.0.7 depends on numpy==1.21.6
    mapillary 1.0.6 depends on scipy==1.7.3
    mapillary 1.0.5 depends on scipy==1.7.3
    mapillary 1.0.4 depends on scipy==1.7.3
    mapillary 1.0.3 depends on scipy==1.7.3
    mapillary 1.0.2 depends on scipy==1.7.3
    mapillary 1.0.1 depends on scipy==1.7.1
    mapillary 1.0.0 depends on scipy==1.7.1
    mapillary 0.0.32 depends on scipy==1.7.1
    mapillary 0.0.31 depends on scipy==1.7.1
    mapillary 0.0.30 depends on scipy==1.7.1
    mapillary 0.0.29 depends on scipy==1.7.1
    mapillary 0.0.28 depends on scipy==1.7.1
    mapillary 0.0.27 depends on scipy==1.7.1
    mapillary 0.0.26 depends on scipy==1.7.1
    mapillary 0.0.24 depends on scipy==1.7.1
    mapillary 0.0.23 depends on scipy==1.7.1
    mapillary 0.0.22 depends on scipy==1.7.1
    mapillary 0.0.20 depends on scipy==1.7.1
    mapillary 0.0.19 depends on scipy==1.7.1
    mapillary 0.0.18 depends on scipy==1.7.1
    mapillary 0.0.17 depends on scipy==1.7.1
    mapillary 0.0.16 depends on scipy==1.7.1
    mapillary 0.0.15 depends on scipy==1.7.1

To fix this you could try to:
1. loosen the range of package versions you've specified
2. remove package versions to allow pip to attempt to solve the dependency conflict

ERROR: ResolutionImpossible: for help visit https://pip.pypa.io/en/latest/topics/dependency-resolution/#dealing-with-dependency-conflicts

Additional context I have tried solutions in a closed issue reporting similar issues including install version 1.0.2 and install via git but both failed due to dependencies issues.

TimWGY avatar Mar 14 '25 21:03 TimWGY

Hi, @TimWGY .

Can you please share your version of scipy? You can do this by running !pip freeze | grep scipy.

Thank you.

Rubix982 avatar Mar 15 '25 08:03 Rubix982

Thanks for replying so quickly.

!pip freeze | grep scipy
scipy==1.14.1

Tried install specified scipy version

!pip install scipy==1.7.1
ERROR: Ignored the following yanked versions: 1.11.0, 1.14.0rc1
ERROR: Ignored the following versions that require a different python version: 1.6.2 Requires-Python >=3.7,<3.10; 1.6.3 Requires-Python >=3.7,<3.10; 1.7.0 Requires-Python >=3.7,<3.10; 1.7.1 Requires-Python >=3.7,<3.10; 1.7.2 Requires-Python >=3.7,<3.11; 1.7.3 Requires-Python >=3.7,<3.11; 1.8.0 Requires-Python >=3.8,<3.11; 1.8.0rc1 Requires-Python >=3.8,<3.11; 1.8.0rc2 Requires-Python >=3.8,<3.11; 1.8.0rc3 Requires-Python >=3.8,<3.11; 1.8.0rc4 Requires-Python >=3.8,<3.11; 1.8.1 Requires-Python >=3.8,<3.11
ERROR: Could not find a version that satisfies the requirement scipy==1.7.1 (from versions: 0.8.0, 0.9.0, 0.10.0, 0.10.1, 0.11.0, 0.12.0, 0.12.1, 0.13.0, 0.13.1, 0.13.2, 0.13.3, 0.14.0, 0.14.1, 0.15.0, 0.15.1, 0.16.0, 0.16.1, 0.17.0, 0.17.1, 0.18.0, 0.18.1, 0.19.0, 0.19.1, 1.0.0, 1.0.1, 1.1.0, 1.2.0, 1.2.1, 1.2.2, 1.2.3, 1.3.0, 1.3.1, 1.3.2, 1.3.3, 1.4.0, 1.4.1, 1.5.0, 1.5.1, 1.5.2, 1.5.3, 1.5.4, 1.6.0, 1.6.1, 1.9.0rc1, 1.9.0rc2, 1.9.0rc3, 1.9.0, 1.9.1, 1.9.2, 1.9.3, 1.10.0rc1, 1.10.0rc2, 1.10.0, 1.10.1, 1.11.0rc1, 1.11.0rc2, 1.11.1, 1.11.2, 1.11.3, 1.11.4, 1.12.0rc1, 1.12.0rc2, 1.12.0, 1.13.0rc1, 1.13.0, 1.13.1, 1.14.0rc2, 1.14.0, 1.14.1, 1.15.0rc1, 1.15.0rc2, 1.15.0, 1.15.1, 1.15.2)
ERROR: No matching distribution found for scipy==1.7.1

The current python version in colab env

import sys
sys.version
3.11.11 (main, Dec  4 2024, 08:55:07) [GCC 11.4.0]

Does this mean I should consider installing Python 3.9 to work with the mapillary sdk?

Many thanks!

TimWGY avatar Mar 15 '25 12:03 TimWGY

@TimWGY I remember during development that either Python 3.9 or 3.7 was used. If it is possible, please try downgrading the python version and attempt to install the package again.

Rubix982 avatar Mar 15 '25 14:03 Rubix982

WE can look to implement #158 which should fix this also

cbeddow avatar Apr 16 '25 09:04 cbeddow

@TimWGY Thanks for reporting the issue! The problem should be fixed in the new release (1.0.13) and it should with in Google Colab again.

nickplesha avatar Apr 28 '25 12:04 nickplesha