basemap icon indicating copy to clipboard operation
basemap copied to clipboard

Conda pkg dependency on geos 3.3.x

Open michaelaye opened this issue 9 years ago • 20 comments
trafficstars

Could the conda package be upgrade to depend on geos 3.4.x? I find basemap to be the last conda package to depend on the older 3.3.x versions and it creates some problems with gdal compiles, that usually want 3.4 these days. thanks!

michaelaye avatar Apr 19 '16 20:04 michaelaye

I don't control the conda package, and I agree, it is extremely annoying. I don't know who to report this too, though.

On Tue, Apr 19, 2016 at 4:46 PM, K.-Michael Aye [email protected] wrote:

Could the conda package be upgrade to depend on geos 3.4.x? I find basemap to be the last conda package to depend on the older 3.3.x versions and it creates some problems with gdal compiles, that usually want 3.4 these days. thanks!

— You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub https://github.com/matplotlib/basemap/issues/286

WeatherGod avatar Apr 19 '16 20:04 WeatherGod

Try the basemap from the conda-forge channel:

$ conda install -c conda-forge basemap

-Filipe

On Tue, Apr 19, 2016 at 5:51 PM, Benjamin Root [email protected] wrote:

I don't control the conda package, and I agree, it is extremely annoying. I don't know who to report this too, though.

On Tue, Apr 19, 2016 at 4:46 PM, K.-Michael Aye [email protected] wrote:

Could the conda package be upgrade to depend on geos 3.4.x? I find basemap to be the last conda package to depend on the older 3.3.x versions and it creates some problems with gdal compiles, that usually want 3.4 these days. thanks!

— You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub https://github.com/matplotlib/basemap/issues/286

— You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub https://github.com/matplotlib/basemap/issues/286#issuecomment-212122171

ocefpaf avatar Apr 19 '16 20:04 ocefpaf

@kalefranz maybe knows. Yeah, will try the conda-forge one, but it says '1.08beta'?

michaelaye avatar Apr 19 '16 20:04 michaelaye

nope, the conda-forge channel does not work with nomkl libraries. :(

michaelaye avatar Apr 19 '16 20:04 michaelaye

conda create -n TEST -c conda-forge python=2.7 basemap nomkl works for me.

It is 1.0.8.dev0 because we needed https://github.com/matplotlib/basemap/pull/279

ocefpaf avatar Apr 19 '16 21:04 ocefpaf

BTW @WeatherGod a new release would be nice :wink:

ocefpaf avatar Apr 19 '16 21:04 ocefpaf

On my stable 3.5 env it insists on nomkl:

(stable)└─❱❱❱ conda install -c conda-forge basemap                                     +4823 14:56 ❰─┘
Fetching package metadata: ........
Solving package specifications: .........

Package plan for installation in environment /Users/klay6683/miniconda3/envs/stable:

The following packages will be downloaded:

    package                    |            build
    ---------------------------|-----------------
    geos-3.4.2                 |                0         2.5 MB
    mkl-11.3.1                 |                0        99.1 MB
    numpy-1.10.4               |           py35_0         2.6 MB
    pyshp-1.2.3                |           py35_0          29 KB
    numexpr-2.5.2              |      np110py35_0         111 KB
    pyproj-1.9.5.1             |           py35_0         3.0 MB
    scipy-0.17.0               |      np110py35_0        11.8 MB
    scikit-learn-0.17.1        |      np110py35_0         3.6 MB
    basemap-1.0.8.dev0         |      np110py35_1        15.6 MB
    ------------------------------------------------------------
                                           Total:       138.3 MB

The following NEW packages will be INSTALLED:

    basemap:      1.0.8.dev0-np110py35_1
    mkl:          11.3.1-0
    pyproj:       1.9.5.1-py35_0
    pyshp:        1.2.3-py35_0

The following packages will be UPDATED:

    geos:         3.3.3-0                  --> 3.4.2-0
    numexpr:      2.5.2-np110py35_nomkl_0  [nomkl] --> 2.5.2-np110py35_0
    numpy:        1.10.4-py35_nomkl_0      [nomkl] --> 1.10.4-py35_0
    scikit-learn: 0.17.1-np110py35_nomkl_0 [nomkl] --> 0.17.1-np110py35_0
    scipy:        0.17.0-np110py35_nomkl_0 [nomkl] --> 0.17.0-np110py35_0

Proceed ([y]/n)? n

michaelaye avatar Apr 19 '16 21:04 michaelaye

Interesting, when I add nomkl it works suddenly? Why is that so? I already have nomkl installed?

michaelaye avatar Apr 19 '16 21:04 michaelaye

@ocefpaf, yeah, I think I should try a bugfix release. I kept seeing if I can find time for bigger changesets, but I keep volunteering for too many other things.

Anyone know a good reference for how to do a release to PyPi? And how to update readthedocs?

WeatherGod avatar Apr 20 '16 01:04 WeatherGod

HI Benjamin:

I am not sure if this is the best way to release on PyPi, but here is the way I do I for one of my projects (using twine).

https://github.com/guziy/pylibrmn/blob/master/upload_to_pypi.sh

Cheers

2016-04-19 21:21 GMT-04:00 Benjamin Root [email protected]:

@ocefpaf https://github.com/ocefpaf, yeah, I think I should try a bugfix release. I kept seeing if I can find time for bigger changesets, but I keep volunteering for too many other things.

Anyone know a good reference for how to do a release to PyPi? And how to update readthedocs?

— You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub https://github.com/matplotlib/basemap/issues/286#issuecomment-212195538

Sasha

guziy avatar Apr 20 '16 02:04 guziy

Why is that so?

I had a suspicion that this had been improved in v4 of conda, which version are you using?

Anyway - sounds like you are able to use conda-forge's basemap. @WeatherGod - if you or anybody else who is maintaining Basemap would like access to that, please feel free to add a PR to https://github.com/conda-forge/basemap-feedstock/blob/master/recipe/meta.yaml#L37 adding your github handles. The conda-forge automation will add you to the team with write access, and updating the binaries on conda-forge is just a PR away :tada:

To raise issues with anaconda.org defaults packages, the tracker can be found at https://github.com/ContinuumIO/anaconda-issues.

pelson avatar Apr 20 '16 09:04 pelson

@WeatherGod I am not sure if twine uploads the source distribution of only the wheels. I usually do this for a release:

  • create a branch and tag for the release on GitHub;
  • check the tag locally ;
  • python setup.py sdist --formats=gztar upload

(No user/pass b/c I have a .pypirc)

ocefpaf avatar Apr 20 '16 10:04 ocefpaf

As I recall the issue with pypi was the package size of basemap? See #198 I don't know how far the new pypi infrastructure has come. A new release would be welcome for Matplotlib too which is now depending on Basemap for the automatic docs build (the docs have a basemap example) 1.0.7 has issues with finding geos on Travis it would seem.

jenshnielsen avatar Apr 20 '16 10:04 jenshnielsen

I agree with @jenshnielsen! It would be nice to split basemap into a data basemap and basemap-data packages. (We are doing that in conda-forge BTW, when you install basemap you won't get the intermediate, high, and fine resolutions. You need to install basemap-data to get that.)

ocefpaf avatar Apr 20 '16 10:04 ocefpaf

@pelson I'm using conda 4.0.5, the most recent version.

michaelaye avatar Apr 21 '16 21:04 michaelaye

@ocefpaf do you mean basemap-data-hires ?

michaelaye avatar Apr 21 '16 21:04 michaelaye

@michaelaye

@kalefranz maybe knows. Yeah, will try the conda-forge one, but it says '1.08beta'?

Best place to get help for individual packages in the default conda repo is at https://github.com/ContinuumIO/anaconda-issues/. File an issue there, then @csoja can help coordinate with @ilanschnell and/or other package maintainers.

kalefranz avatar Apr 22 '16 23:04 kalefranz

Thank you, everybody for your inputs. I hope to start getting things to a point where I can put up a release candidate either this weekend or next weekend. If anybody wants to contribute a patch that makes it possible to split out basemap-data-hires, please contribute it. Any other downstream patches would be greatly appreciated, too.

WeatherGod avatar May 05 '16 20:05 WeatherGod

I agree with @jenshnielsen! It would be nice to split basemap into a data basemap and basemap-data packages. (We are doing that in conda-forge BTW, when you install basemap you won't get the intermediate, high, and fine resolutions. You need to install basemap-data to get that.)

@ocefpaf I know I am coming six years later, but I am happy to notify that basemap is now (1.3.x) effectively split into three parts similarly to what is done in Anaconda: basemap, basemap-data and basemap-data-hires. The only difference is that the intermediate-resolution files are located in basemap-data instead of basemap-data-hires (to avoid the PyPI package size limit for basemap-data-hires). Hopefully this split in the main basemap repository will make life easier in the corresponding conda recipes.

molinav avatar Jan 22 '22 23:01 molinav

Thanks for letting me know @molinav. I'm not actively maintaining the basemap-feedstock anymore but I can help out when there is a new release.

ocefpaf avatar Jan 25 '22 18:01 ocefpaf

I think it is safe to close this issue. Since taking over the maintenance of basemap a couple of years ago:

  • The package has been split into basemap, basemap-data and basemap-data-hires and precompiled wheels for Windows and GNU/Linux are uploaded to PyPI regularly since 1.3.0.
  • For the upcoming 1.4.0 (in the next couple of days), I will also upload the precompiled wheels for MacOS manually to PyPI.
  • The basemap-feedstock for conda-forge is back to life, with packages for the major platforms (Windows, GNU/Linux, MacOS) on x64 plus MacOS on arm64, and updating the dependencies regularly (including GEOS, which currently points to 3.12.1).

To sum up, the most usual cases are completely covered both on PyPI and conda-forge, and users do not need to build basemap from source anymore.

molinav avatar Jan 05 '24 21:01 molinav