[Matplotlib-devel] Fwd: About basemap maintenance
Benjamin Root
ben.v.root at gmail.com
Fri Nov 6 17:13:55 EST 2020
Someone appears to have some interest in keeping up basemap maintenance.
I'll leave it up to the group to decide if it is worth it or if there is a
better option for Victor (cc'ed). Personally, I never attempted any sort of
repackaging work like they did in conda-forge because pip installs of
basemap have other difficulties (namely, the proj4 and by extension, the
libgeos dependency). With conda-forge handling the packaging for me, I just
never bothered even uploading new packages to PyPI.
Thoughts?
Ben Root
---------- Forwarded message ---------
From: Víctor Molina García <victor.molina at usal.es>
Date: Fri, Nov 6, 2020 at 3:47 PM
Subject: About basemap maintenance
To: <ben.v.root at gmail.com>
Dear Ben,
I write to you because you appear as the current (and last) maintainer of
basemap. I am aware that basemap has been deprecated already quite long,
but for work-related reasons I need to maintain some software that still
relies on basemap.
What should I do in order to join the matplotlib team and provide myself
some basemap maintenance for a bit more time? I do not plan to add new
features, but I think I could help in solving the current problem of
package size that prevents basemap from being available in PyPI (this is a
problem for my CI stuff because I cannot rely on PyPI to install basemap as
dependency and I need to provide my own basemap wheels to the deployment
environment).
Essentially I workaround the package size issue in the same way as it is
done in Anaconda: to split the library and separate necessary data from
"optional" data. In Anaconda, you will find "basemap" (which excludes
high-resolution data) and "basemap-data-hires" (with just these excluded
files). I was playing a bit with the basemap setup file and I could manage
to split the package in three parts:
- basemap-data: this is a package with just the basemap data of lower
resolution (approx. 20 MB).
- basemap-lite: this is just the basemap source code and the compiled
geoslib, and it has basemap-data as dependency (less than 1 MB).
- basemap-extras: this is the equivalent to basemap-data-hires in Anaconda
(about 110 MB).
This repackaging has the advantage that at least basemap-data and
basemap-lite fulfill the package size requirement of PyPI. Furthermore,
since basemap-data and basemap-extras only contain data, it is possible to
create for it just one universal wheel file valid for all Python versions
and operating systems. Then basemap-lite needs one wheel file per Python
version and operating system, but thanks to keeping the data in a separate
package a lot of file redundancy is avoided.
Kind regards,
Víctor
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.python.org/pipermail/matplotlib-devel/attachments/20201106/8d685cfe/attachment.html>
More information about the Matplotlib-devel
mailing list