agrc / palletjack

A library for updating AGOL data from various external sources
https://agrc.github.io/palletjack/palletjack/
MIT License
12 stars 0 forks source link

Unable to install #98

Open stdavis opened 1 month ago

stdavis commented 1 month ago

When I attempted to install this package into a fresh python 3.11 conda environment, I ran into this error: https://github.com/geopandas/pyogrio/issues/450

@jacobdadams Have you seen this before?

jacobdadams commented 1 month ago

I've not, let me test...

jacobdadams commented 1 month ago

Yeah, I can install all of palletjack, just geopandas, and just pyogrio just fine on windows (tried each in sequence, recreating the env for each).

steveoh commented 1 month ago

Yeah, I can install all of palletjack, just geopandas, and just pyogrio just fine on windows (tried each in sequence, recreating the env for each).

Do you have gdal installed on your machine?

jacobdadams commented 1 month ago

Not that I'm aware of, not outside a conda environment. I have a couple conda envs where I've got gdal installed and it comes in the Pro conda env as well. It's possible that qgis installed it system-wide...

jacobdadams commented 1 month ago

Uninstalled QGIS, pip install pyogrio --no-cache-dir works just fine. Currently running a search to see if there's any GDAL anything outside of Pro or my other conda envs.

steveoh commented 1 month ago

No worries, it sounds like windows has wheels that are working properly where scotts architecture is trying to build from source.

stdavis commented 1 month ago

@steveoh I'd be curious if it works on your machine.

steveoh commented 1 month ago

my system is using python 12 and i don't hava conda installed...

 [4:28]  ~/dev/cruft  ⬡ v20.12.2 
$ mkcd palletjack

 [4:28]  ...dev/cruft/palletjack  ⬡ v20.12.2 
$ python -m venv venv

 [4:29]  ...dev/cruft/palletjack  ⬡ v20.12.2 
$ source venv/bin/activate

 [4:29]  ...dev/cruft/palletjack  ⬡ v20.12.2 
$ pip install ugrc-palletjack
Collecting ugrc-palletjack
  Downloading ugrc_palletjack-4.4.2-py3-none-any.whl.metadata (7.5 kB)
INFO: pip is looking at multiple versions of ugrc-palletjack to determine which version is compatible with other requirements. This could take a while.
  Downloading ugrc_palletjack-4.4.1-py3-none-any.whl.metadata (7.5 kB)
  Downloading ugrc_palletjack-4.4.0-py3-none-any.whl.metadata (7.5 kB)
  Downloading ugrc_palletjack-4.3.1-py3-none-any.whl.metadata (7.5 kB)
  Downloading ugrc_palletjack-4.3.0-py3-none-any.whl.metadata (7.7 kB)
  Downloading ugrc_palletjack-4.2.0-py3-none-any.whl.metadata (7.3 kB)
Collecting pysftp==0.2.9 (from ugrc-palletjack)
  Downloading pysftp-0.2.9.tar.gz (25 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting ugrc-palletjack
  Downloading ugrc_palletjack-4.1.0-py3-none-any.whl.metadata (7.3 kB)
  Downloading ugrc_palletjack-4.0.1-py3-none-any.whl.metadata (7.6 kB)
INFO: pip is still looking at multiple versions of ugrc-palletjack to determine which version is compatible with other requirements. This could take a while.
  Downloading ugrc_palletjack-4.0.0-py3-none-any.whl.metadata (7.6 kB)
  Downloading ugrc_palletjack-3.1.0-py3-none-any.whl.metadata (5.8 kB)
  Downloading ugrc_palletjack-3.0.0-py3-none-any.whl.metadata (5.8 kB)
  Downloading ugrc_palletjack-2.7.3-py3-none-any.whl.metadata (1.3 kB)
Collecting arcgis==2.0.* (from ugrc-palletjack)
  Downloading arcgis-2.0.0.tar.gz (3.7 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 3.7/3.7 MB 20.3 MB/s eta 0:00:00
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Installing backend dependencies ... done
  Preparing metadata (pyproject.toml) ... error
  error: subprocess-exited-with-error

  × Preparing metadata (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [3 lines of output]
      error in arcgis setup command: 'install_requires' must be a string or list of strings containing valid project/version requirement specifiers; .* suffix can only be used with `==` or `!=` operators
          keyring >=19,<=21.8.*
                       ~~~~~~~^
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

× Encountered error while generating package metadata.
╰─> See above for output.

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

[notice] A new release of pip is available: 24.0 -> 24.1.2
[notice] To update, run: pip install --upgrade pip

however pyorgrio works fine.

$ pip install pyogrio --no-cache-dir
Collecting pyogrio
  Downloading pyogrio-0.9.0-cp312-cp312-macosx_12_0_arm64.whl.metadata (3.8 kB)
Collecting certifi (from pyogrio)
  Downloading certifi-2024.7.4-py3-none-any.whl.metadata (2.2 kB)
Collecting numpy (from pyogrio)
  Downloading numpy-2.0.0-cp312-cp312-macosx_14_0_arm64.whl.metadata (60 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 60.9/60.9 kB 1.9 MB/s eta 0:00:00
Collecting packaging (from pyogrio)
  Downloading packaging-24.1-py3-none-any.whl.metadata (3.2 kB)
Downloading pyogrio-0.9.0-cp312-cp312-macosx_12_0_arm64.whl (14.7 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 14.7/14.7 MB 57.6 MB/s eta 0:00:00
Downloading certifi-2024.7.4-py3-none-any.whl (162 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 163.0/163.0 kB 85.4 MB/s eta 0:00:00
Downloading numpy-2.0.0-cp312-cp312-macosx_14_0_arm64.whl (5.0 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 5.0/5.0 MB 54.6 MB/s eta 0:00:00
Downloading packaging-24.1-py3-none-any.whl (53 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 54.0/54.0 kB 340.0 MB/s eta 0:00:00
Installing collected packages: packaging, numpy, certifi, pyogrio
Successfully installed certifi-2024.7.4 numpy-2.0.0 packaging-24.1 pyogrio-0.9.0
jacobdadams commented 1 month ago

Ok, yeah, arcgis doesn't like 3.12 and will downgrade to 2.0.0 (I think they didn't specify a python version back then) if you're >3.11. But I think the pyogrio install is the one that's relevant, right Scott?

jacobdadams commented 1 month ago

I wonder if palletjack should do a python version check as well, rather than letting arcgis bomb out.

stdavis commented 1 month ago

It sounds like the pyogrio folks are working through the issue. An easy workaround is conda install -c conda-forge pyogrio before pip installing this library.

@jacobdadams I'll let you decide when you want to close this issue.