matplotlib / basemap

Plot on map projections (with coastlines and political boundaries) using matplotlib

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[Doc]: (More) Clearly mark Basemap as deprecated

TomLav opened this issue · comments

Documentation Link

No response

Problem

Basemap is deprecated and all users should be using Cartopy.

In 2020, matplotlib/matplotlib#16495 removed references to Basemap from matplotlib's documentation. Is it now time to more clearly mark Basemap as deprecated on https://matplotlib.org/basemap/ ?

I do see that the deprecation is described at the bottom of https://matplotlib.org/basemap/ but:

  1. this statement can be missed (I recently met a user that had missed the information);
  2. the statement is only on the main Basemap doc page, not in pages linked from there (random example https://matplotlib.org/basemap/users/mapsetup.html).

Suggested improvement

Place bold/red warning statements on all pages of the Basemap documentation, starting from https://matplotlib.org/basemap/

Should this be better handled on the basemap issue tracker?

Hi @TomLav! The basemap package was deprecated from 2016 until February 2022, but it is not deprecated as of today. It is being slowly (but actively) developed and maintained again since December 2021.

During this time, the basemap 1.3.x series has been developed as a transition period to put basemap in a fit state again. One of the major problems that basemap was facing was related to its packaging (e.g. the need of building GEOS by oneself). You can see that this is now solved and that precompiled wheels (for Windows and GNU/Linux) are available in PyPI:

Furthermore, thanks to other colleagues in the community (e.g. @ReimarBauer), effort was added to provide conda packages in conda-forge too:

The latest bugfix release (1.3.6) dates from 31 October 2022 (just one month ago).

You are totally right about the fact that the docs are at the moment misleading. The docs at https://matplotlib.org/basemap have not been updated although the library has been in development again. This has been the result of a triage decision: my time is limited, I take care of basemap in my free time. But I am aware that the docs are severely outdated, and I want to target it for basemap 1.4.0. At the time I took over the maintenance of basemap, I thought that having a well packaged basemap was more important.

Hello @molinav, thank you for your answer and for the time you and your colleagues devote to maintaining and developing free and open source software.

To be clear, I wrote "Basemap is deprecated" because this is the latest information I had, and what is on Basemap's current online documentation:

Basemap is deprecated in favor of the Cartopy project. See notes in Cartopy, New Management, and EoL Announcement for more details.

Does matplotlib need both Basemap and Cartopy is not a discussion I'll open here, but it would no doubt be an interesting one.

For the time being, IMHO, you should indeed update the documentation soon and clearly state the maintenance status of Basemap. As far as I am concerned, this issue can be closed.

I think you are totally right, @TomLav. Since the basemap packaging is found in an "acceptable" state (compared to one year ago), your opened issue is a clear hint for me that the docs should become a first priority now. Please leave the issue open, it will help me organise the next items to address.

It would be great if the deprecation notice is updated. Even though I knew (thnaks to @TomLav ) that basemap is "alive", i had to come to double check i didnt dream about it.

May be we should try to get into this program. I don't know if there are umbrellas we can join, similiar to gsoc psf umbrella.

https://developers.google.com/season-of-docs/docs/timeline
https://developers.google.com/season-of-docs