diff --git a/.github/workflows/basemap-data-hires.yml b/.github/workflows/basemap-data-hires.yml index c735d703b..4631254e5 100644 --- a/.github/workflows/basemap-data-hires.yml +++ b/.github/workflows/basemap-data-hires.yml @@ -9,6 +9,19 @@ on: jobs: + checkout: + runs-on: ubuntu-latest + steps: + - + name: Checkout + uses: actions/checkout@v2 + - + name: Upload checkout + uses: actions/upload-artifact@v1 + with: + name: checkout + path: . + build: strategy: matrix: @@ -17,12 +30,16 @@ jobs: "2.7", ] max-parallel: 1 + needs: checkout runs-on: ubuntu-latest container: "pylegacy/python:${{ matrix.python-version }}-debian-4" steps: - - name: Checkout - uses: actions/checkout@v1 + name: Download checkout + uses: actions/download-artifact@v1 + with: + name: checkout + path: . - name: Build wheel run: | @@ -51,15 +68,18 @@ jobs: "3.8", "3.9", ] - max-parallel: 6 + max-parallel: 3 fail-fast: false needs: build runs-on: ubuntu-latest container: "pylegacy/python:${{ matrix.python-version }}-debian-5" steps: - - name: Checkout - uses: actions/checkout@v1 + name: Download checkout + uses: actions/download-artifact@v1 + with: + name: checkout + path: . - name: Download build artifacts uses: actions/download-artifact@v1 @@ -89,9 +109,6 @@ jobs: container: "pylegacy/python:${{ matrix.python-version }}-debian-5" environment: PyPI steps: - - - name: Checkout - uses: actions/checkout@v1 - name: Download build artifacts uses: actions/download-artifact@v1 diff --git a/.github/workflows/basemap-data.yml b/.github/workflows/basemap-data.yml index f48c524a3..21058b1c1 100644 --- a/.github/workflows/basemap-data.yml +++ b/.github/workflows/basemap-data.yml @@ -9,6 +9,19 @@ on: jobs: + checkout: + runs-on: ubuntu-latest + steps: + - + name: Checkout + uses: actions/checkout@v2 + - + name: Upload checkout + uses: actions/upload-artifact@v1 + with: + name: checkout + path: . + build: strategy: matrix: @@ -17,12 +30,16 @@ jobs: "2.7", ] max-parallel: 1 + needs: checkout runs-on: ubuntu-latest container: "pylegacy/python:${{ matrix.python-version }}-debian-4" steps: - - name: Checkout - uses: actions/checkout@v1 + name: Download checkout + uses: actions/download-artifact@v1 + with: + name: checkout + path: . - name: Build wheel run: | @@ -51,15 +68,18 @@ jobs: "3.8", "3.9", ] - max-parallel: 6 + max-parallel: 3 fail-fast: false needs: build runs-on: ubuntu-latest container: "pylegacy/python:${{ matrix.python-version }}-debian-5" steps: - - name: Checkout - uses: actions/checkout@v1 + name: Download checkout + uses: actions/download-artifact@v1 + with: + name: checkout + path: . - name: Download build artifacts uses: actions/download-artifact@v1 @@ -89,9 +109,6 @@ jobs: container: "pylegacy/python:${{ matrix.python-version }}-debian-5" environment: PyPI steps: - - - name: Checkout - uses: actions/checkout@v1 - name: Download build artifacts uses: actions/download-artifact@v1 diff --git a/.github/workflows/basemap-for-manylinux.yml b/.github/workflows/basemap-for-manylinux.yml index 1adaee914..95539d45b 100644 --- a/.github/workflows/basemap-for-manylinux.yml +++ b/.github/workflows/basemap-for-manylinux.yml @@ -9,6 +9,19 @@ on: jobs: + checkout: + runs-on: ubuntu-latest + steps: + - + name: Checkout + uses: actions/checkout@v2 + - + name: Upload checkout + uses: actions/upload-artifact@v1 + with: + name: checkout + path: . + build-geos: strategy: matrix: @@ -19,12 +32,16 @@ jobs: ] max-parallel: 2 fail-fast: false + needs: checkout runs-on: ubuntu-latest container: "pylegacy/${{ matrix.arch }}-python:3.6-debian-4" steps: - - name: Checkout - uses: actions/checkout@v1 + name: Download checkout + uses: actions/download-artifact@v1 + with: + name: checkout + path: . - name: Install CMake 3.6.2 run: | @@ -74,15 +91,18 @@ jobs: "3.8", "3.9", ] - max-parallel: 6 + max-parallel: 3 fail-fast: false needs: build-geos runs-on: ubuntu-latest container: "pylegacy/${{ matrix.arch }}-python:${{ matrix.python-version }}-debian-4" steps: - - name: Checkout - uses: actions/checkout@v1 + name: Download checkout + uses: actions/download-artifact@v1 + with: + name: checkout + path: . - name: Download GEOS artifacts uses: actions/download-artifact@v1 @@ -149,15 +169,12 @@ jobs: "3.8", "3.9", ] - max-parallel: 6 + max-parallel: 3 fail-fast: false needs: build runs-on: ubuntu-latest container: "pylegacy/${{ matrix.arch }}-python:3.6-debian-5" steps: - - - name: Checkout - uses: actions/checkout@v1 - name: Download GEOS artifacts uses: actions/download-artifact@v1 @@ -214,6 +231,81 @@ jobs: name: artifacts-build-${{ matrix.arch }}-${{ matrix.python-version }} path: ${{ env.PKGDIR }}/dist + test: + strategy: + matrix: + arch: + [ + "x64", + "x86", + ] + python-version: + [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + ] + max-parallel: 3 + fail-fast: false + needs: repair + runs-on: ubuntu-latest + container: "pylegacy/${{ matrix.arch }}-python:${{ matrix.python-version }}-debian-5" + steps: + - + name: Download checkout + uses: actions/download-artifact@v1 + with: + name: checkout + path: . + - + name: Download build artifacts + uses: actions/download-artifact@v1 + with: + name: artifacts-build-${{ matrix.arch }}-${{ matrix.python-version }} + path: ${{ env.PKGDIR }}/dist + - + name: Install GCC toolchain + run: | + apt-get update + apt-get install -y gcc g++ make + - + name: Install matplotlib dependencies + run: | + apt-get update + apt-get install -y libfreetype6-dev libpng12-dev + if: matrix.arch == 'x86' && matrix.python-version == '3.5' + - + name: Install pyproj manually + run: | + apt-get update + apt-get install -y proj-bin libproj-dev + python -m pip install cython + pkgname=pyproj + pkgvers=${{ env.pyproj-version }} + pkgcode=${pkgname}-${pkgvers} + python -m pip download "pyproj == ${pkgvers}" + tar -xf ${pkgcode}.tar.gz + rm -rf ${pkgcode}.tar.gz + cd ${pkgcode} + rm _proj.c + python -m pip install . + cd .. + rm -rf ${pkgcode} + if: matrix.python-version == '3.9' + env: + pyproj-version: 1.9.6 + - + name: Install package + run: | + pip install --prefer-binary ${{ env.PKGDIR }}/dist/*-manylinux1*.whl + - + name: Test package + run: | + python -c "from mpl_toolkits.basemap import Basemap" + upload: strategy: matrix: @@ -233,14 +325,11 @@ jobs: ] max-parallel: 1 if: startsWith(github.event.ref, 'refs/tags/v') - needs: repair + needs: test runs-on: ubuntu-latest container: "pylegacy/${{ matrix.arch }}-python:${{ matrix.python-version }}-debian-5" environment: PyPI steps: - - - name: Checkout - uses: actions/checkout@v1 - name: Download build artifacts uses: actions/download-artifact@v1 diff --git a/.github/workflows/basemap-for-windows.yml b/.github/workflows/basemap-for-windows.yml index 353a74112..dfcb6d5ee 100644 --- a/.github/workflows/basemap-for-windows.yml +++ b/.github/workflows/basemap-for-windows.yml @@ -9,6 +9,19 @@ on: jobs: + checkout: + runs-on: windows-latest + steps: + - + name: Checkout + uses: actions/checkout@v2 + - + name: Upload checkout + uses: actions/upload-artifact@v1 + with: + name: checkout + path: . + build-geos: strategy: matrix: @@ -27,11 +40,15 @@ jobs: cmake-version: "3.13.2" max-parallel: 4 fail-fast: false + needs: checkout runs-on: windows-latest steps: - - name: Checkout - uses: actions/checkout@v1 + name: Download checkout + uses: actions/download-artifact@v1 + with: + name: checkout + path: . - name: Set Python uses: actions/setup-python@v2 @@ -80,14 +97,17 @@ jobs: "3.8", "3.9", ] - max-parallel: 6 + max-parallel: 3 fail-fast: false needs: build-geos runs-on: windows-latest steps: - - name: Checkout - uses: actions/checkout@v1 + name: Download checkout + uses: actions/download-artifact@v1 + with: + name: checkout + path: . - name: Set Python uses: actions/setup-python@v2 @@ -155,6 +175,55 @@ jobs: name: artifacts-build-${{ matrix.arch }}-${{ matrix.python-version }} path: ${{ env.PKGDIR }}/dist + test: + strategy: + matrix: + arch: + [ + "x64", + "x86", + ] + python-version: + [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + ] + max-parallel: 3 + fail-fast: false + needs: build + runs-on: windows-latest + steps: + - + name: Download checkout + uses: actions/download-artifact@v1 + with: + name: checkout + path: . + - + name: Set Python + uses: actions/setup-python@v2 + with: + architecture: ${{ matrix.arch }} + python-version: ${{ matrix.python-version }} + - + name: Download build artifacts + uses: actions/download-artifact@v1 + with: + name: artifacts-build-${{ matrix.arch }}-${{ matrix.python-version }} + path: ${{ env.PKGDIR }}/dist + - + name: Install package + run: | + pip install --prefer-binary (Get-Item ${{ env.PKGDIR }}/dist/*-win*.whl) + - + name: Test package + run: | + python -c "from mpl_toolkits.basemap import Basemap" + upload: strategy: matrix: @@ -174,13 +243,10 @@ jobs: ] max-parallel: 1 if: startsWith(github.event.ref, 'refs/tags/v') - needs: build + needs: test runs-on: windows-latest environment: PyPI steps: - - - name: Checkout - uses: actions/checkout@v1 - name: Set Python uses: actions/setup-python@v2 diff --git a/CHANGELOG.md b/CHANGELOG.md index a1a546c5e..d6e889670 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,7 +5,38 @@ is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and the project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) since version 1.3.0. -## [Unreleased] +## [1.3.0] - 2020-12-28 + +### Added +- Precompiled binary wheels available in PyPI. +- Complete workflow to build the project wheels for Windows and GNU/Linux + using GitHub Actions. + +### Changed +- Reorganise the package structure. In summary, the former `basemap` package + is split in three: + - `basemap` itself contains the Python modules. + - `basemap-data` contains the mandatory data assets required by `basemap` + to provide minimal functionality. + - `basemap-data-hires` contains the high-resolution data assets. +- Upgrade default GEOS library dependency to 3.5.1. +- Update and clarify licenses. In summary: + - `basemap`: MIT license. + - GEOS bundled dynamic library is under the LGPL-2.1-only license. + - `basemap-data`: LGPL-3.0-or-later. + - The EPSG file and the JPG images are also under the MIT license. + - `basemap-data-hires`: LGPL-3.0-or-later. + +### Fixed +- Fix `Basemap.pcolormesh` for `"ortho"` projection (PR [#476]). +- Fix `Basemap.arcgisimage` for cylindrical coordinates (PR [#505]). +- Force `setup.py` to cythonize `_geoslib.pyx` at compile time (issues [#518] + and [#521]). + +### Removed +- Bundled GEOS source code. The same source code can be downloaded using the + `GeosLibrary` class in `utils`. +- Precompiled `_geoslib.c` file. ## [1.2.2] - 2020-08-04 @@ -791,8 +822,19 @@ since version 1.3.0. - Fix glitches in drawing of parallels and meridians. +[#521]: +https://github.com/matplotlib/basemap/issues/521 +[#518]: +https://github.com/matplotlib/basemap/issues/518 +[#505]: +https://github.com/matplotlib/basemap/pull/505 +[#476]: +https://github.com/matplotlib/basemap/pull/476 + [Unreleased]: -https://github.com/matplotlib/basemap/compare/v1.2.2rel...develop +https://github.com/matplotlib/basemap/compare/v1.3.0...develop +[1.3.0]: +https://github.com/matplotlib/basemap/compare/v1.2.2rel...v1.3.0 [1.2.2]: https://github.com/matplotlib/basemap/compare/v1.2.1rel...v1.2.2rel [1.2.1]: diff --git a/README.md b/README.md index 7acc0fb3c..ec1f650c2 100644 --- a/README.md +++ b/README.md @@ -11,24 +11,20 @@ using matplotlib. Basic requirements are the following: * Python 2.6 (or higher) -* matplotlib -* numpy +* [matplotlib](https://github.com/matplotlib/matplotlib) +* [numpy](https://github.com/numpy/numpy) * [pyproj](https://github.com/pyproj4/pyproj) * [pyshp](https://github.com/GeospatialPython/pyshp) -* GEOS library (Geometry Engine, Open Source) version 3.1.1 or higher. -* On Linux, if your Python was installed via a package management - system, make sure the corresponding `python-dev` package is also - installed. Otherwise, you may not have the Python header (`Python.h`), - which is required to build Python C extensions. +* [six](https://github.com/benjaminp/six) Optional requirements include: * [OWSLib](https://github.com/geopython/OWSLib). It is needed for the - `BaseMap.wmsimage` function. + `Basemap.wmsimage` function. -* [Pillow](https://python-pillow.github.io/). It is needed for Basemap - warpimage, bluemarble, shadedrelief, and etopo methods. PIL should - work on Python 2.x. Pillow is a maintained fork of PIL. +* [Pillow](https://github.com/python-pillow/Pillow). It is needed for + the methods `Basemap.bluemarble`, `Basemap.etopo`, + `Basemap.shadedrelief` and `Basemap.warpimage`. ## Installation @@ -39,7 +35,8 @@ python -m pip install basemap-data python -m pip install basemap-data-hires ``` -Precompiled binaries for GNU/Linux are also available in PyPI: +Precompiled `basemap` binary wheels for Windows and GNU/Linux are also +available in PyPI (architectures x86 and x64, Python 2.7 and 3.5+): ```sh python -m pip install basemap ``` @@ -47,37 +44,41 @@ python -m pip install basemap Otherwise, you will need to install `basemap` from source as follows: 1. Install pre-requisite Python modules: - - `cython`. - - `numpy`. + - [cython](https://github.com/cython/cython) + - [numpy](https://github.com/numpy/numpy) 2. Download the `basemap` source code and move to the `packages/basemap` folder: ```sh - git clone https://github.com/matplotlib/basemap.git + git clone --depth 1 https://github.com/matplotlib/basemap.git cd basemap/packages/basemap ``` -3. Build the GEOS library. You may use the helper provided in `utils`, i.e. +3. Build the [GEOS](https://github.com/libgeos/geos) library. You may + use the helper provided in `utils`, i.e. ```sh export GEOS_DIR= - python -c "import utils; utils.GeosLibrary('3.6.5').build(installdir='${GEOS_DIR}')" + python -c "import utils; utils.GeosLibrary('3.5.1').build(installdir='${GEOS_DIR}')" ``` - or you can link directly to the system library if it is already installed. - `GEOS_DIR` must point to the GEOS installation prefix; e.g. if `libgeos_c.so` - is located in `/usr/lib` and `geos_c.h` is located in `/usr/include`, then - you must set `GEOS_DIR` to `/usr`. + or you can link directly to the system library if it is already + installed. `GEOS_DIR` must point to the GEOS installation prefix; + e.g. if `libgeos_c.so` is located in `/usr/lib` and `geos_c.h` is + located in `/usr/include`, then you must set `GEOS_DIR` to `/usr`. -4. Build the basemap wheel from the `packages/basemap` folder and install it: +4. Build and install the `basemap` binary wheel: ```sh - python setup.py bdist_wheel - python -m pip install dist/*.whl + python -m pip install . ``` + On Linux, if your Python was installed through a package management + system, make sure that you have the Python header `Python.h` required + to build Cython extensions (e.g. on Debian-like systems, you should + have the package `python-dev` installed). -5. Check that the package installed correctly by executing in the terminal: +5. Check that the package installed correctly by executing: ```sh python -c "from mpl_toolkits.basemap import Basemap" ``` - You can also test the `basemap` examples available in the `examples` folder. + You can also test the examples available in the `examples` folder. ## License @@ -89,8 +90,8 @@ The source code and data assets are under the following licenses: * The EPSG file and the JPG images are also under the [MIT] license. * `basemap-data-hires`: [LGPL-3.0-or-later]. -For a full description, please visit the README and LICENSE files of -each package in the corresponding package folders. +For a full description, please visit the `README` and `LICENSE` files of +each package. [MIT]: https://spdx.org/licenses/MIT.html @@ -101,7 +102,7 @@ https://spdx.org/licenses/LGPL-3.0-or-later.html ## Documentation -See http://matplotlib.github.io/basemap/ +See https://matplotlib.github.io/basemap/ See scripts in `examples` directory for example usage. diff --git a/packages/basemap/README.md b/packages/basemap/README.md index 107559e84..a40f86549 100644 --- a/packages/basemap/README.md +++ b/packages/basemap/README.md @@ -7,6 +7,19 @@ This package depends on the support package [`basemap-data`] with the basic [`basemap`] data assets, and optionally on the support package [`basemap-data-hires`] with high-resolution data assets. +## Installation + +Precompiled binary wheels for Windows and GNU/Linux are available in +PyPI (architectures x86 and x64, Python 2.7 and 3.5+) and can be +installed with [`pip`]: +```sh +python -m pip install basemap +``` + +If you need to install from source, please visit the +[GitHub repository](https://github.com/matplotlib/basemap) for a +step-by-step description. + ## License The library is licensed under the terms of the [MIT] license (see @@ -23,6 +36,8 @@ https://matplotlib.org/basemap/ https://pypi.org/project/basemap-data [`basemap-data-hires`]: https://pypi.org/project/basemap-data-hires +[`pip`]: +https://pip.pypa.io/ [LGPLv2.1]: https://spdx.org/licenses/LGPL-2.1-only.html @@ -30,6 +45,6 @@ https://spdx.org/licenses/LGPL-2.1-only.html https://spdx.org/licenses/MIT.html [`LICENSE`]: -https://github.com/matplotlib/basemap/blob/develop/packages/basemap/LICENSE +https://github.com/matplotlib/basemap/blob/v1.3.0/packages/basemap/LICENSE [`LICENSE.geos`]: -https://github.com/matplotlib/basemap/blob/develop/packages/basemap/LICENSE.geos +https://github.com/matplotlib/basemap/blob/v1.3.0/packages/basemap/LICENSE.geos diff --git a/packages/basemap/requirements.txt b/packages/basemap/requirements.txt index 527fac6ca..3ba8edd6d 100644 --- a/packages/basemap/requirements.txt +++ b/packages/basemap/requirements.txt @@ -1,4 +1,4 @@ -basemap_data > 1.2, < 2.0 +basemap_data >= 1.3, < 1.4 six >= 1.10, < 1.16 diff --git a/packages/basemap/setup.py b/packages/basemap/setup.py index ba77a07d8..03d36c27f 100644 --- a/packages/basemap/setup.py +++ b/packages/basemap/setup.py @@ -166,13 +166,11 @@ def _default_to_zip(self): item.replace(marker, "") for item in install_requires if item.endswith(marker) or "python_version" not in item] -# To create the source .tar.gz file: python setup.py sdist -# To create the universal wheel file: python setup.py bdist_wheel --universal setup(**{ "name": "basemap", "version": - "1.3.0rc1", + "1.3.0", "license": "MIT", "description": diff --git a/packages/basemap/src/mpl_toolkits/basemap/__init__.py b/packages/basemap/src/mpl_toolkits/basemap/__init__.py index ae97b80e6..ccf8e0b41 100644 --- a/packages/basemap/src/mpl_toolkits/basemap/__init__.py +++ b/packages/basemap/src/mpl_toolkits/basemap/__init__.py @@ -64,7 +64,7 @@ from mpl_toolkits import basemap_data basemap_datadir = os.path.abspath(list(basemap_data.__path__)[0]) -__version__ = '1.3.0rc1' +__version__ = '1.3.0' # module variable that sets the default value for the 'latlon' kwarg. # can be set to True by user so plotting functions can take lons,lats diff --git a/packages/basemap/src/mpl_toolkits/basemap/proj.py b/packages/basemap/src/mpl_toolkits/basemap/proj.py index 856f86769..f6c2d1f19 100644 --- a/packages/basemap/src/mpl_toolkits/basemap/proj.py +++ b/packages/basemap/src/mpl_toolkits/basemap/proj.py @@ -10,7 +10,7 @@ # as textwrap.dedent. from matplotlib.cbook import dedent -__version__ = '1.3.0rc1' +__version__ = '1.3.0' _dg2rad = math.radians(1.) _rad2dg = math.degrees(1.) diff --git a/packages/basemap_data/README.md b/packages/basemap_data/README.md index 04fb2a226..ba6800b41 100644 --- a/packages/basemap_data/README.md +++ b/packages/basemap_data/README.md @@ -35,7 +35,7 @@ https://pip.pypa.io/ [GSHHG]: https://www.soest.hawaii.edu/pwessel/gshhg [GMT]: -http://gmt.soest.hawaii.edu +https://www.generic-mapping-tools.org/ [LGPLv3+]: https://spdx.org/licenses/LGPL-3.0-or-later.html @@ -43,10 +43,10 @@ https://spdx.org/licenses/LGPL-3.0-or-later.html https://spdx.org/licenses/MIT.html [`COPYING`]: -https://github.com/matplotlib/basemap/blob/develop/packages/basemap_data/COPYING +https://github.com/matplotlib/basemap/blob/v1.3.0/packages/basemap_data/COPYING [`COPYING.LESSER`]: -https://github.com/matplotlib/basemap/blob/develop/packages/basemap_data_hires/COPYING.LESSER +https://github.com/matplotlib/basemap/blob/v1.3.0/packages/basemap_data/COPYING.LESSER [`LICENSE.epsg`]: -https://github.com/matplotlib/basemap/blob/develop/packages/basemap_data/LICENSE.epsg +https://github.com/matplotlib/basemap/blob/v1.3.0/packages/basemap_data/LICENSE.epsg [`LICENSE.mit`]: -https://github.com/matplotlib/basemap/blob/develop/packages/basemap_data/LICENSE.mit +https://github.com/matplotlib/basemap/blob/v1.3.0/packages/basemap_data/LICENSE.mit diff --git a/packages/basemap_data/setup.py b/packages/basemap_data/setup.py index 60cf95639..4674b6003 100644 --- a/packages/basemap_data/setup.py +++ b/packages/basemap_data/setup.py @@ -83,13 +83,11 @@ def _default_to_zip(self): data_files = data_dat_files + data_bin_files + data_usc_files + data_other_files -# To create the source .tar.gz file: python setup.py sdist -# To create the universal wheel file: python setup.py bdist_wheel --universal setup(**{ "name": "basemap_data", "version": - "1.3.0rc1", + "1.3.0", "license": "GNU Lesser General Public License v3 or later (LGPLv3+)", "description": diff --git a/packages/basemap_data_hires/README.md b/packages/basemap_data_hires/README.md index 00dcaefb9..9600e0a21 100644 --- a/packages/basemap_data_hires/README.md +++ b/packages/basemap_data_hires/README.md @@ -31,11 +31,11 @@ https://pip.pypa.io/ [GSHHG]: https://www.soest.hawaii.edu/pwessel/gshhg [GMT]: -http://gmt.soest.hawaii.edu +https://www.generic-mapping-tools.org/ [LGPLv3+]: https://spdx.org/licenses/LGPL-3.0-or-later.html [`COPYING`]: -https://github.com/matplotlib/basemap/blob/develop/packages/basemap_data_hires/COPYING +https://github.com/matplotlib/basemap/blob/v1.3.0/packages/basemap_data_hires/COPYING [`COPYING.LESSER`]: -https://github.com/matplotlib/basemap/blob/develop/packages/basemap_data_hires/COPYING.LESSER +https://github.com/matplotlib/basemap/blob/v1.3.0/packages/basemap_data_hires/COPYING.LESSER diff --git a/packages/basemap_data_hires/setup.py b/packages/basemap_data_hires/setup.py index c596d6841..72f035c41 100644 --- a/packages/basemap_data_hires/setup.py +++ b/packages/basemap_data_hires/setup.py @@ -61,13 +61,11 @@ def _default_to_zip(self): for basename, res in itertools.product(basenames, resolutions[3:]) ] -# To create the source .tar.gz file: python setup.py sdist -# To create the universal wheel file: python setup.py bdist_wheel --universal setup(**{ "name": "basemap_data_hires", "version": - "1.3.0rc1", + "1.3.0", "license": "GNU Lesser General Public License v3 or later (LGPLv3+)", "description":