diff -Nru aplpy-2.0~rc2/aplpy/_astropy_init.py aplpy-2.0.3/aplpy/_astropy_init.py --- aplpy-2.0~rc2/aplpy/_astropy_init.py 2018-12-12 11:35:47.000000000 +0000 +++ aplpy-2.0.3/aplpy/_astropy_init.py 2019-02-19 11:20:49.000000000 +0000 @@ -34,11 +34,7 @@ verbose=False, pastebin=None, remote_data=False, pep8=False, pdb=False, coverage=False, open_files=False, **kwargs): """ - Run the tests using `py.test `__. A proper set - of arguments is constructed and passed to `pytest.main`_. - - .. _py.test: http://pytest.org/latest/ - .. _pytest.main: http://pytest.org/latest/builtin.html#pytest.main + Run the tests using `py.test `__. Parameters ---------- @@ -52,19 +48,19 @@ calling directory. args : str, optional - Additional arguments to be passed to pytest.main_ in the ``args`` + Additional arguments to be passed to pytest.main in the ``args`` keyword argument. plugins : list, optional - Plugins to be passed to pytest.main_ in the ``plugins`` keyword + Plugins to be passed to pytest.main in the ``plugins`` keyword argument. verbose : bool, optional - Convenience option to turn on verbose output from py.test_. Passing + Convenience option to turn on verbose output from py.test. Passing True is the same as specifying ``'-v'`` in ``args``. pastebin : {'failed','all',None}, optional - Convenience option for turning on py.test_ pastebin output. Set to + Convenience option for turning on py.test pastebin output. Set to ``'failed'`` to upload info for failed tests, or ``'all'`` to upload info for all tests. @@ -75,7 +71,7 @@ pep8 : bool, optional Turn on PEP8 checking via the `pytest-pep8 plugin - `_ and disable normal + `_ and disable normal tests. Same as specifying ``'--pep8 -k pep8'`` in ``args``. pdb : bool, optional @@ -89,13 +85,13 @@ open_files : bool, optional Fail when any tests leave files open. Off by default, because this adds extra run time to the test suite. Requires the - `psutil `_ package. + `psutil `_ package. parallel : int, optional When provided, run the tests in parallel on the specified number of CPUs. If parallel is negative, it will use the all the cores on the machine. Requires the - `pytest-xdist `_ plugin + `pytest-xdist `_ plugin installed. Only available when using Astropy 0.3 or later. kwargs diff -Nru aplpy-2.0~rc2/aplpy/compat.py aplpy-2.0.3/aplpy/compat.py --- aplpy-2.0~rc2/aplpy/compat.py 1970-01-01 00:00:00.000000000 +0000 +++ aplpy-2.0.3/aplpy/compat.py 2019-02-19 11:42:15.000000000 +0000 @@ -0,0 +1,48 @@ +# The simple_norm function in astropy is missing a control for the log +# scaling as described in https://github.com/astropy/astropy/issues/8432, +# so for now we include a copy of the fixed function here. + + +from astropy.visualization.interval import (PercentileInterval, + AsymmetricPercentileInterval, + ManualInterval, MinMaxInterval) + +from astropy.visualization.stretch import (LinearStretch, SqrtStretch, + PowerStretch, LogStretch, + AsinhStretch) + +from astropy.visualization.mpl_normalize import ImageNormalize + +__all__ = ['simple_norm'] + + +def simple_norm(data, stretch='linear', power=1.0, asinh_a=0.1, log_a=1000, + min_cut=None, max_cut=None, min_percent=None, max_percent=None, + percent=None, clip=True): + + if percent is not None: + interval = PercentileInterval(percent) + elif min_percent is not None or max_percent is not None: + interval = AsymmetricPercentileInterval(min_percent or 0., + max_percent or 100.) + elif min_cut is not None or max_cut is not None: + interval = ManualInterval(min_cut, max_cut) + else: + interval = MinMaxInterval() + + if stretch == 'linear': + stretch = LinearStretch() + elif stretch == 'sqrt': + stretch = SqrtStretch() + elif stretch == 'power': + stretch = PowerStretch(power) + elif stretch == 'log': + stretch = LogStretch(log_a) + elif stretch == 'asinh': + stretch = AsinhStretch(asinh_a) + else: + raise ValueError('Unknown stretch: {0}.'.format(stretch)) + + vmin, vmax = interval.get_limits(data) + + return ImageNormalize(vmin=vmin, vmax=vmax, stretch=stretch, clip=clip) diff -Nru aplpy-2.0~rc2/aplpy/core.py aplpy-2.0.3/aplpy/core.py --- aplpy-2.0~rc2/aplpy/core.py 2018-12-31 21:30:00.000000000 +0000 +++ aplpy-2.0.3/aplpy/core.py 2019-02-19 11:42:15.000000000 +0000 @@ -14,12 +14,11 @@ import numpy as np from astropy import log -from astropy.extern import six from astropy.wcs import WCS from astropy.wcs.utils import proj_plane_pixel_scales from astropy.io import fits from astropy.nddata.utils import block_reduce -from astropy.visualization import AsymmetricPercentileInterval, simple_norm +from astropy.visualization import AsymmetricPercentileInterval from astropy.visualization.wcsaxes import WCSAxes, WCSAxesSubplot from astropy.coordinates import ICRS @@ -27,6 +26,7 @@ from . import header as header_util from . import slicer +from .compat import simple_norm from .layers import Layers from .grid import Grid from .ticks import Ticks @@ -130,8 +130,7 @@ figsize=(xsize, ysize) argument (where xsize and ysize are in inches). For more information on these additional arguments, see the *Optional keyword arguments* section in the documentation for - `Figure - `_ + :class:`~matplotlib.figure.Figure`. """ @auto_refresh @@ -151,7 +150,7 @@ else: self.grid_type = 'lines' - if (isinstance(data, six.string_types) and + if (isinstance(data, str) and data.split('.')[-1].lower() in ['png', 'jpg', 'tif']): try: @@ -192,7 +191,7 @@ # Update the NAXIS values with the true dimensions of the RGB image data.nx = nx data.ny = ny - data.pixel_shape = (ny, nx) + data.pixel_shape = (nx, ny) if isinstance(data, WCS): @@ -301,7 +300,7 @@ def _get_hdu(self, data, hdu, north, convention=None, dimensions=[0, 1], slices=[]): - if isinstance(data, six.string_types): + if isinstance(data, str): filename = data @@ -636,7 +635,7 @@ vmid : None or float, optional Baseline value used for the log and arcsinh stretches. If - set to None, this is set to zero for log stretches and to + not set, this defaults to zero for log stretches and to vmin - (vmax - vmin) / 30. for arcsinh stretches exponent : float, optional @@ -696,8 +695,28 @@ # Prepare normalizer object if stretch == 'arcsinh': stretch = 'asinh' + + if stretch == 'log': + if vmid is None: + if vmin < 0: + raise ValueError("When using a log stretch, if vmin < 0, then vmid has to be specified") + else: + vmid = 0. + if vmin < vmid: + raise ValueError("When using a log stretch, vmin should be larger than vmid") + log_a = (vmax - vmid) / (vmin - vmid) + norm_kwargs = {'log_a': log_a} + elif stretch == 'asinh': + if vmid is None: + vmid = vmin - (vmax - vmin) / 30. + asinh_a = (vmid - vmin) / (vmax - vmin) + norm_kwargs = {'asinh_a': asinh_a} + else: + norm_kwargs = {} + normalizer = simple_norm(self._data, stretch=stretch, power=exponent, - asinh_a=vmid, min_cut=vmin, max_cut=vmax) + min_cut=vmin, max_cut=vmax, clip=False, + **norm_kwargs) # Adjust vmin/vmax if auto if min_auto: @@ -724,11 +743,12 @@ smooth=smooth, kernel=kernel)) else: + extent = -0.5, self._wcs.nx - 0.5, -0.5, self._wcs.ny - 0.5 convolved_data = convolve_util.convolve(self._data, smooth=smooth, kernel=kernel) self.image = self.ax.imshow(convolved_data, cmap=cmap, interpolation=interpolation, origin='lower', norm=normalizer, - aspect=aspect) + aspect=aspect, extent=extent) xmin, xmax = self.ax.get_xbound() if xmin == 0.0: @@ -1715,7 +1735,6 @@ called. This defaults to `True` if and only if APLpy is being used from IPython and the Matplotlib backend is interactive. """ - self._figure._auto_refresh = refresh if refresh is None: if matplotlib.is_interactive(): try: @@ -1728,6 +1747,7 @@ refresh = False elif not isinstance(refresh, bool): raise TypeError("refresh argument should be boolean or `None`") + self._figure._auto_refresh = refresh def refresh(self, force=True): """ @@ -1781,7 +1801,7 @@ explicitly. Should be one of 'eps', 'ps', 'pdf', 'svg', 'png'. """ - if isinstance(filename, six.string_types) and format is None: + if isinstance(filename, str) and format is None: format = os.path.splitext(filename)[1].lower()[1:] if dpi is None and format in ['eps', 'ps', 'pdf']: @@ -1794,7 +1814,6 @@ dpi = nx / width log.info("Auto-setting resolution to %g dpi" % dpi) - artists = [] if adjust_bbox: self._figure.savefig(filename, dpi=dpi, transparent=transparent, bbox_inches='tight', format=format) diff -Nru aplpy-2.0~rc2/aplpy/overlays.py aplpy-2.0.3/aplpy/overlays.py --- aplpy-2.0~rc2/aplpy/overlays.py 2018-12-30 15:08:20.000000000 +0000 +++ aplpy-2.0.3/aplpy/overlays.py 2019-02-19 11:20:49.000000000 +0000 @@ -10,7 +10,6 @@ from astropy import units as u from astropy.wcs.utils import proj_plane_pixel_scales -from astropy.extern import six from .decorators import auto_refresh @@ -99,7 +98,7 @@ except Exception: pass - if isinstance(corner, six.string_types): + if isinstance(corner, str): corner = corners[corner] self._scalebar = AnchoredSizeBar(self._ax.transData, length, label, @@ -378,13 +377,13 @@ See the matplotlib documentation for more details. """ - if isinstance(major, six.string_types): + if isinstance(major, str): major = self._header[major] - if isinstance(minor, six.string_types): + if isinstance(minor, str): minor = self._header[minor] - if isinstance(angle, six.string_types): + if isinstance(angle, str): angle = self._header[angle] if isinstance(major, u.Quantity): @@ -426,7 +425,7 @@ except Exception: pass - if isinstance(corner, six.string_types): + if isinstance(corner, str): corner = corners[corner] self._beam = AnchoredEllipse(self._ax.transData, width=minor, diff -Nru aplpy-2.0~rc2/aplpy/regions.py aplpy-2.0.3/aplpy/regions.py --- aplpy-2.0~rc2/aplpy/regions.py 2018-12-30 15:08:20.000000000 +0000 +++ aplpy-2.0.3/aplpy/regions.py 2019-02-19 11:20:49.000000000 +0000 @@ -1,6 +1,5 @@ from __future__ import absolute_import, print_function, division -from astropy.extern import six from astropy import log from astropy import wcs @@ -91,7 +90,7 @@ raise ImportError("The pyregion package is required to load region files") # read region file - if isinstance(region_file, six.string_types): + if isinstance(region_file, str): rr = pyregion.open(region_file) elif isinstance(region_file, pyregion.ShapeList): rr = region_file diff -Nru aplpy-2.0~rc2/aplpy/rgb.py aplpy-2.0.3/aplpy/rgb.py --- aplpy-2.0~rc2/aplpy/rgb.py 2018-12-30 15:08:20.000000000 +0000 +++ aplpy-2.0.3/aplpy/rgb.py 2019-02-19 11:20:49.000000000 +0000 @@ -5,7 +5,6 @@ import warnings import numpy as np -from astropy.extern import six from astropy import log from astropy.io import fits from astropy.coordinates import ICRS @@ -41,7 +40,7 @@ stretch = 'asinh' normalizer = simple_norm(image, stretch=stretch, power=exponent, - asinh_a=vmid, min_cut=vmin, max_cut=vmax) + asinh_a=vmid, min_cut=vmin, max_cut=vmax, clip=False) data = normalizer(image, clip=True).filled(0) data = np.nan_to_num(data) @@ -129,7 +128,7 @@ except ImportError: raise ImportError("The Python Imaging Library (PIL) is required to make an RGB image") - if isinstance(data, six.string_types): + if isinstance(data, str): image = fits.getdata(data) image_r = image[indices[0], :, :] @@ -228,19 +227,19 @@ warnings.warn("AVM tags will not be embedded in RGB image, as only JPEG and PNG files are supported") -def make_rgb_cube(files, output, north=False, system=None, equinox=None): +def make_rgb_cube(files, output, north=True): """ Make an RGB data cube from a list of three FITS images. This method can read in three FITS files with different projections/sizes/resolutions and uses the `reproject - `_ package to reproject them all + `_ package to reproject them all to the same projection. Two files are produced by this function. The first is a three-dimensional - FITS cube with a filename give by `output`, where the third dimension + FITS cube with a filename give by ``output``, where the third dimension contains the different channels. The second is a two-dimensional FITS - image with a filename given by `output` with a `_2d` suffix. This file + image with a filename given by ``output`` with a `_2d` suffix. This file contains the mean of the different channels, and is required as input to FITSFigure if show_rgb is subsequently used to show a color image generated from the FITS cube (to provide the correct WCS information to @@ -261,14 +260,6 @@ assumed to be 'north' in the ICRS frame, but you can also pass any astropy :class:`~astropy.coordinates.BaseCoordinateFrame` to indicate to use the north of that frame. - - system : str, optional - Specifies the system for the header (default is EQUJ). - Possible values are: EQUJ EQUB ECLJ ECLB GAL SGAL - - equinox : str, optional - If a coordinate system is specified, the equinox can also be given - in the form YYYY. Default is J2000. """ # Check that input files exist @@ -276,13 +267,15 @@ if not os.path.exists(f): raise Exception("File does not exist : " + f) - if north: + if north is not False: frame = ICRS() if north is True else north + auto_rotate = False else: frame = None + auto_rotate = True # Find optimal WCS and shape based on input images - wcs, shape = find_optimal_celestial_wcs(files, frame=frame) + wcs, shape = find_optimal_celestial_wcs(files, frame=frame, auto_rotate=auto_rotate) header = wcs.to_header() # Generate empty datacube diff -Nru aplpy-2.0~rc2/aplpy/tests/test_downsample.py aplpy-2.0.3/aplpy/tests/test_downsample.py --- aplpy-2.0~rc2/aplpy/tests/test_downsample.py 2018-12-30 15:08:21.000000000 +0000 +++ aplpy-2.0.3/aplpy/tests/test_downsample.py 2019-02-19 11:20:49.000000000 +0000 @@ -1,5 +1,6 @@ from __future__ import absolute_import, print_function, division +import pytest import numpy as np from .. import FITSFigure diff -Nru aplpy-2.0~rc2/aplpy/tests/test_images.py aplpy-2.0.3/aplpy/tests/test_images.py --- aplpy-2.0~rc2/aplpy/tests/test_images.py 2018-12-31 21:30:00.000000000 +0000 +++ aplpy-2.0.3/aplpy/tests/test_images.py 2019-02-19 11:20:49.000000000 +0000 @@ -6,20 +6,6 @@ import pytest import numpy as np -try: - import pyregion # noqa -except ImportError: - PYREGION_INSTALLED = False -else: - PYREGION_INSTALLED = True - -try: - import reproject # noqa -except ImportError: - REPROJECT_INSTALLED = False -else: - REPROJECT_INSTALLED = True - from .. import FITSFigure from .helpers import generate_file from . import baseline_dir @@ -208,7 +194,6 @@ # Test for ds9 regions @pytest.mark.remote_data - @pytest.mark.skipif("not PYREGION_INSTALLED") @pytest.mark.mpl_image_compare(style={}, savefig_kwargs={'adjust_bbox': False}, baseline_dir=baseline_dir, tolerance=5) def test_regions(self): f = FITSFigure(self.filename_2, figsize=(7, 5)) @@ -224,7 +209,6 @@ return f._figure @pytest.mark.remote_data - @pytest.mark.skipif("not REPROJECT_INSTALLED") @pytest.mark.mpl_image_compare(style={}, savefig_kwargs={'adjust_bbox': False}, baseline_dir=baseline_dir, tolerance=5) def test_north(self): f = FITSFigure(self.filename_4, figsize=(3, 3), north=True) @@ -233,3 +217,24 @@ f.tick_labels.hide() f.ticks.hide() return f._figure + + @pytest.mark.remote_data + @pytest.mark.mpl_image_compare(style={}, savefig_kwargs={'adjust_bbox': False}, baseline_dir=baseline_dir, tolerance=5) + def test_downsample(self): + data = np.arange(256).reshape((16, 16)) + f = FITSFigure(data, downsample=2) + f.show_grayscale() + return f._figure + + @pytest.mark.remote_data + @pytest.mark.mpl_image_compare(style={}, savefig_kwargs={'adjust_bbox': False}, baseline_dir=baseline_dir, tolerance=5) + def test_set_nan_color(self): + data = np.arange(56, dtype=float).reshape((8, 7)) + data[3, :] = np.nan + f = FITSFigure(data, figsize=(3, 3)) + f.show_colorscale() + f.axis_labels.hide() + f.tick_labels.hide() + f.ticks.hide() + f.set_nan_color('black') + return f._figure diff -Nru aplpy-2.0~rc2/aplpy/tests/test_misc.py aplpy-2.0.3/aplpy/tests/test_misc.py --- aplpy-2.0~rc2/aplpy/tests/test_misc.py 2018-12-30 15:08:21.000000000 +0000 +++ aplpy-2.0.3/aplpy/tests/test_misc.py 2019-02-19 11:42:15.000000000 +0000 @@ -23,3 +23,21 @@ assert f1.image.get_cmap()._rgba_bad == (0.0, 0.0, 1.0, 1.0) assert f2.image.get_cmap()._rgba_bad == (1.0, 0.0, 0.0, 1.0) + + +def test_stretches(): + + # Regression test to make sure none of the stretches crash + + data = np.arange(256).reshape((16, 16)) + f = FITSFigure(data) + f.show_grayscale() + f.show_grayscale(stretch='linear') + f.show_grayscale(stretch='sqrt') + f.show_grayscale(stretch='log') + f.show_grayscale(stretch='arcsinh') + f.show_grayscale(stretch='power') + f.show_grayscale(stretch='log', vmid=-10) + f.show_grayscale(stretch='arcsinh', vmid=10) + f.show_grayscale(stretch='power', exponent=3.0) + f.close() diff -Nru aplpy-2.0~rc2/aplpy/tests/test_rgb.py aplpy-2.0.3/aplpy/tests/test_rgb.py --- aplpy-2.0~rc2/aplpy/tests/test_rgb.py 2018-12-31 21:30:00.000000000 +0000 +++ aplpy-2.0.3/aplpy/tests/test_rgb.py 2019-02-19 11:20:49.000000000 +0000 @@ -6,13 +6,7 @@ import pytest import numpy as np from astropy.io import fits - -try: - import pyavm # noqa -except ImportError: - PYAVM_INSTALLED = False -else: - PYAVM_INSTALLED = True +from astropy.coordinates import Galactic from .. import FITSFigure from ..rgb import make_rgb_image, make_rgb_cube @@ -34,9 +28,6 @@ @pytest.mark.parametrize('embed_avm_tags', (False, True)) def test_rgb(self, tmpdir, embed_avm_tags): - if embed_avm_tags: - pytest.importorskip('pyavm') - # Regression test to check that RGB recenter works properly r_file = tmpdir.join('r.fits').strpath @@ -76,14 +67,13 @@ return f._figure @pytest.mark.remote_data + @pytest.mark.parametrize('north', ['default', 'galactic', 'false']) @pytest.mark.mpl_image_compare(style={}, savefig_kwargs={'adjust_bbox': False}, baseline_dir=baseline_dir, tolerance=7.5) - def test_make_rgb_cube(self, tmpdir): + def test_make_rgb_cube(self, tmpdir, north): # Regression test to check that RGB recenter works properly - pytest.importorskip('pyavm') - header = generate_header(os.path.join(ROOT, 'data', '2d_fits', '2MASS_k_rot.hdr')) header['CRPIX1'] = 6.5 @@ -104,16 +94,23 @@ header = fits.Header.fromtextfile(HEADER) - r = fits.PrimaryHDU(np.ones((12, 12)), header_r) + r = fits.PrimaryHDU(np.ones((128, 128)), header_r) r.writeto(r_file) - g = fits.PrimaryHDU(np.ones((12, 12)), header_g) + g = fits.PrimaryHDU(np.ones((128, 128)), header_g) g.writeto(g_file) - b = fits.PrimaryHDU(np.ones((12, 12)), header_b) + b = fits.PrimaryHDU(np.ones((128, 128)), header_b) b.writeto(b_file) - make_rgb_cube([r_file, g_file, b_file], rgb_cube) + if north == 'default': + kwargs = {} + elif north == 'galactic': + kwargs = {'north': Galactic()} + elif north == 'false': + kwargs = {'north': False} + + make_rgb_cube([r_file, g_file, b_file], rgb_cube, **kwargs) make_rgb_image(rgb_cube, rgb_file, embed_avm_tags=True, vmin_r=0, vmax_r=1, vmin_g=0, vmax_g=1, vmin_b=0, vmax_b=1) @@ -126,5 +123,6 @@ f.tick_labels.hide() f.axis_labels.hide() + f.add_grid() return f._figure diff -Nru aplpy-2.0~rc2/aplpy/tests/test_save.py aplpy-2.0.3/aplpy/tests/test_save.py --- aplpy-2.0~rc2/aplpy/tests/test_save.py 2018-12-30 15:08:21.000000000 +0000 +++ aplpy-2.0.3/aplpy/tests/test_save.py 2019-02-19 11:20:49.000000000 +0000 @@ -2,7 +2,6 @@ import os import sys -from astropy.extern import six from io import BytesIO as StringIO @@ -16,7 +15,7 @@ def is_format(filename, format): - if isinstance(filename, six.string_types): + if isinstance(filename, str): f = open(filename, 'rb') else: f = filename diff -Nru aplpy-2.0~rc2/aplpy/ticks.py aplpy-2.0.3/aplpy/ticks.py --- aplpy-2.0~rc2/aplpy/ticks.py 2018-12-12 11:35:47.000000000 +0000 +++ aplpy-2.0.3/aplpy/ticks.py 2019-02-19 11:20:49.000000000 +0000 @@ -14,6 +14,10 @@ self._wcs = self._ax.wcs def set_tick_direction(self, direction): + """ + Set the direction of the ticks to be facing out of the axes (``out``) + or into the axes (``in``). + """ if direction in ('in', 'out'): self.ax.coords[self.x].ticks.set_tick_out(direction == 'out') self.ax.coords[self.y].ticks.set_tick_out(direction == 'out') diff -Nru aplpy-2.0~rc2/aplpy/version.py aplpy-2.0.3/aplpy/version.py --- aplpy-2.0~rc2/aplpy/version.py 2018-12-31 21:31:30.000000000 +0000 +++ aplpy-2.0.3/aplpy/version.py 2019-02-19 11:43:15.000000000 +0000 @@ -1,4 +1,4 @@ -# Autogenerated by Astropy-affiliated package aplpy's setup.py on 2018-12-31 21:31:30 UTC +# Autogenerated by Astropy-affiliated package aplpy's setup.py on 2019-02-19 11:43:15 UTC from __future__ import unicode_literals import datetime @@ -187,8 +187,8 @@ _packagename = "aplpy" -_last_generated_version = "2.0rc2" -_last_githash = "80493a087c524582c35f4f9159da6ee515d170a3" +_last_generated_version = "2.0.3" +_last_githash = "70f1a5fedfc04f8d97ef71d2078c47cf5efec9b3" # Determine where the source code for this module # lives. If __file__ is not a filesystem path then @@ -206,15 +206,15 @@ major = 2 minor = 0 -bugfix = 0 +bugfix = 3 version_info = (major, minor, bugfix) release = True -timestamp = datetime.datetime(2018, 12, 31, 21, 31, 30) +timestamp = datetime.datetime(2019, 2, 19, 11, 43, 15) debug = False -astropy_helpers_version = "2.0" +astropy_helpers_version = "3.1" try: from ._compiler import compiler Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/commands/build_ext.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/commands/build_ext.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/commands/build_py.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/commands/build_py.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/commands/__init__.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/commands/__init__.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/commands/install_lib.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/commands/install_lib.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/commands/install.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/commands/install.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/commands/__pycache__/build_ext.cpython-35.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/commands/__pycache__/build_ext.cpython-35.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/commands/__pycache__/build_ext.cpython-36.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/commands/__pycache__/build_ext.cpython-36.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/commands/__pycache__/build_ext.cpython-37.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/commands/__pycache__/build_ext.cpython-37.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/commands/__pycache__/build_py.cpython-35.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/commands/__pycache__/build_py.cpython-35.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/commands/__pycache__/build_py.cpython-36.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/commands/__pycache__/build_py.cpython-36.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/commands/__pycache__/build_py.cpython-37.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/commands/__pycache__/build_py.cpython-37.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/commands/__pycache__/build_sphinx.cpython-36.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/commands/__pycache__/build_sphinx.cpython-36.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/commands/__pycache__/build_sphinx.cpython-37.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/commands/__pycache__/build_sphinx.cpython-37.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/commands/__pycache__/_dummy.cpython-36.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/commands/__pycache__/_dummy.cpython-36.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/commands/__pycache__/__init__.cpython-35.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/commands/__pycache__/__init__.cpython-35.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/commands/__pycache__/__init__.cpython-36.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/commands/__pycache__/__init__.cpython-36.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/commands/__pycache__/__init__.cpython-37.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/commands/__pycache__/__init__.cpython-37.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/commands/__pycache__/install.cpython-35.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/commands/__pycache__/install.cpython-35.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/commands/__pycache__/install.cpython-36.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/commands/__pycache__/install.cpython-36.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/commands/__pycache__/install.cpython-37.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/commands/__pycache__/install.cpython-37.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/commands/__pycache__/install_lib.cpython-35.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/commands/__pycache__/install_lib.cpython-35.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/commands/__pycache__/install_lib.cpython-36.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/commands/__pycache__/install_lib.cpython-36.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/commands/__pycache__/install_lib.cpython-37.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/commands/__pycache__/install_lib.cpython-37.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/commands/__pycache__/register.cpython-35.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/commands/__pycache__/register.cpython-35.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/commands/__pycache__/register.cpython-36.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/commands/__pycache__/register.cpython-36.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/commands/__pycache__/register.cpython-37.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/commands/__pycache__/register.cpython-37.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/commands/__pycache__/setup_package.cpython-36.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/commands/__pycache__/setup_package.cpython-36.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/commands/__pycache__/test.cpython-35.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/commands/__pycache__/test.cpython-35.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/commands/__pycache__/test.cpython-36.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/commands/__pycache__/test.cpython-36.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/commands/__pycache__/test.cpython-37.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/commands/__pycache__/test.cpython-37.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/commands/register.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/commands/register.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/commands/test.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/commands/test.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/distutils_helpers.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/distutils_helpers.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/extern/automodapi/__pycache__/autodoc_enhancements.cpython-36.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/extern/automodapi/__pycache__/autodoc_enhancements.cpython-36.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/extern/automodapi/__pycache__/automodapi.cpython-36.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/extern/automodapi/__pycache__/automodapi.cpython-36.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/extern/automodapi/__pycache__/automodsumm.cpython-36.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/extern/automodapi/__pycache__/automodsumm.cpython-36.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/extern/automodapi/__pycache__/__init__.cpython-36.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/extern/automodapi/__pycache__/__init__.cpython-36.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/extern/automodapi/__pycache__/smart_resolver.cpython-36.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/extern/automodapi/__pycache__/smart_resolver.cpython-36.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/extern/automodapi/__pycache__/utils.cpython-36.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/extern/automodapi/__pycache__/utils.cpython-36.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/extern/numpydoc/__pycache__/docscrape.cpython-36.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/extern/numpydoc/__pycache__/docscrape.cpython-36.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/extern/numpydoc/__pycache__/docscrape_sphinx.cpython-36.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/extern/numpydoc/__pycache__/docscrape_sphinx.cpython-36.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/extern/numpydoc/__pycache__/__init__.cpython-36.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/extern/numpydoc/__pycache__/__init__.cpython-36.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/extern/numpydoc/__pycache__/numpydoc.cpython-36.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/extern/numpydoc/__pycache__/numpydoc.cpython-36.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/extern/__pycache__/__init__.cpython-36.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/extern/__pycache__/__init__.cpython-36.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/extern/__pycache__/setup_package.cpython-36.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/extern/__pycache__/setup_package.cpython-36.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/git_helpers.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/git_helpers.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/__init__.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/__init__.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/__pycache__/distutils_helpers.cpython-35.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/__pycache__/distutils_helpers.cpython-35.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/__pycache__/distutils_helpers.cpython-36.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/__pycache__/distutils_helpers.cpython-36.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/__pycache__/distutils_helpers.cpython-37.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/__pycache__/distutils_helpers.cpython-37.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/__pycache__/git_helpers.cpython-35.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/__pycache__/git_helpers.cpython-35.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/__pycache__/git_helpers.cpython-36.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/__pycache__/git_helpers.cpython-36.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/__pycache__/git_helpers.cpython-37.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/__pycache__/git_helpers.cpython-37.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/__pycache__/__init__.cpython-35.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/__pycache__/__init__.cpython-35.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/__pycache__/__init__.cpython-36.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/__pycache__/__init__.cpython-36.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/__pycache__/__init__.cpython-37.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/__pycache__/__init__.cpython-37.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/__pycache__/openmp_helpers.cpython-36.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/__pycache__/openmp_helpers.cpython-36.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/__pycache__/setup_helpers.cpython-35.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/__pycache__/setup_helpers.cpython-35.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/__pycache__/setup_helpers.cpython-36.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/__pycache__/setup_helpers.cpython-36.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/__pycache__/setup_helpers.cpython-37.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/__pycache__/setup_helpers.cpython-37.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/__pycache__/utils.cpython-35.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/__pycache__/utils.cpython-35.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/__pycache__/utils.cpython-36.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/__pycache__/utils.cpython-36.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/__pycache__/utils.cpython-37.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/__pycache__/utils.cpython-37.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/__pycache__/version.cpython-35.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/__pycache__/version.cpython-35.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/__pycache__/version.cpython-36.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/__pycache__/version.cpython-36.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/__pycache__/version.cpython-37.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/__pycache__/version.cpython-37.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/__pycache__/version_helpers.cpython-35.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/__pycache__/version_helpers.cpython-35.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/__pycache__/version_helpers.cpython-36.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/__pycache__/version_helpers.cpython-36.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/__pycache__/version_helpers.cpython-37.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/__pycache__/version_helpers.cpython-37.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/setup_helpers.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/setup_helpers.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/sphinx/ext/__pycache__/changelog_links.cpython-36.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/sphinx/ext/__pycache__/changelog_links.cpython-36.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/sphinx/ext/__pycache__/doctest.cpython-36.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/sphinx/ext/__pycache__/doctest.cpython-36.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/sphinx/ext/__pycache__/__init__.cpython-36.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/sphinx/ext/__pycache__/__init__.cpython-36.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/sphinx/ext/__pycache__/tocdepthfix.cpython-36.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/sphinx/ext/__pycache__/tocdepthfix.cpython-36.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/sphinx/__pycache__/conf.cpython-36.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/sphinx/__pycache__/conf.cpython-36.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/sphinx/__pycache__/__init__.cpython-36.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/sphinx/__pycache__/__init__.cpython-36.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/sphinx/__pycache__/setup_package.cpython-36.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/sphinx/__pycache__/setup_package.cpython-36.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/utils.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/utils.pyc differ Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/version_helpers.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/version_helpers.pyc differ diff -Nru aplpy-2.0~rc2/astropy_helpers/astropy_helpers/version.py aplpy-2.0.3/astropy_helpers/astropy_helpers/version.py --- aplpy-2.0~rc2/astropy_helpers/astropy_helpers/version.py 2017-07-29 15:14:44.000000000 +0000 +++ aplpy-2.0.3/astropy_helpers/astropy_helpers/version.py 2019-02-17 11:49:47.000000000 +0000 @@ -1,19 +1,23 @@ -# Autogenerated by Astropy-affiliated package astropy_helpers's setup.py on 2017-07-29 16:14:44.427577 +# Autogenerated by Astropy-affiliated package astropy_helpers's setup.py on 2019-02-17 11:49:47 UTC from __future__ import unicode_literals import datetime -version = "2.0" -githash = "ed2e7897862ae9e979b336df670d7a5541cdd8f0" +version = "3.1" +githash = "9f82aac6c2141b425e2d639560f7260189d90b54" -major = 2 -minor = 0 +major = 3 +minor = 1 bugfix = 0 +version_info = (major, minor, bugfix) + release = True -timestamp = datetime.datetime(2017, 7, 29, 16, 14, 44, 427577) +timestamp = datetime.datetime(2019, 2, 17, 11, 49, 47) debug = False +astropy_helpers_version = "" + try: from ._compiler import compiler except ImportError: Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/astropy_helpers/astropy_helpers/version.pyc and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/astropy_helpers/astropy_helpers/version.pyc differ diff -Nru aplpy-2.0~rc2/astropy_helpers/astropy_helpers.egg-info/PKG-INFO aplpy-2.0.3/astropy_helpers/astropy_helpers.egg-info/PKG-INFO --- aplpy-2.0~rc2/astropy_helpers/astropy_helpers.egg-info/PKG-INFO 2017-07-29 15:14:44.000000000 +0000 +++ aplpy-2.0.3/astropy_helpers/astropy_helpers.egg-info/PKG-INFO 2019-02-17 11:49:47.000000000 +0000 @@ -1,6 +1,6 @@ -Metadata-Version: 1.1 +Metadata-Version: 1.2 Name: astropy-helpers -Version: 2.0 +Version: 3.1 Summary: Utilities for building and installing Astropy, Astropy affiliated packages, and their respective documentation. Home-page: https://github.com/astropy/astropy-helpers Author: The Astropy Developers @@ -9,54 +9,351 @@ Description: astropy-helpers =============== - * Stable versions: https://pypi.org/project/astropy-helpers/ - * Development version, issue tracker: https://github.com/astropy/astropy-helpers + .. image:: https://travis-ci.org/astropy/astropy-helpers.svg + :target: https://travis-ci.org/astropy/astropy-helpers + + .. image:: https://ci.appveyor.com/api/projects/status/rt9161t9mhx02xp7/branch/master?svg=true + :target: https://ci.appveyor.com/project/Astropy/astropy-helpers + + .. image:: https://codecov.io/gh/astropy/astropy-helpers/branch/master/graph/badge.svg + :target: https://codecov.io/gh/astropy/astropy-helpers + + **Warning:** Please note that version ``v3.0`` and later of ``astropy-helpers`` + requires Python 3.5 or later. If you wish to maintain Python 2 support + for your package that uses ``astropy-helpers``, then do not upgrade the + helpers to ``v3.0+``. We will still provide Python 2.7 compatible + releases on the ``v2.0.x`` branch during the lifetime of the ``astropy`` + core package LTS of ``v2.0.x``. + + About + ----- This project provides a Python package, ``astropy_helpers``, which includes many build, installation, and documentation-related tools used by the Astropy project, but packaged separately for use by other projects that wish to leverage this work. The motivation behind this package and details of its - implementation are in the accepted + implementation are in the accepted `Astropy Proposal for Enhancement (APE) 4 `_. - The ``astropy_helpers.extern`` sub-module includes modules developed elsewhere - that are bundled here for convenience. At the moment, this consists of the - following two sphinx extensions: - - * `numpydoc `_, a Sphinx extension - developed as part of the Numpy project. This is used to parse docstrings - in Numpy format - - * `sphinx-automodapi `_, a Sphinx - developed as part of the Astropy project. This used to be developed directly - in ``astropy-helpers`` but is now a standalone package. - - Issues with these sub-modules should be reported in their respective repositories, - and we will regularly update the bundled versions to reflect the latest released - versions. - ``astropy_helpers`` includes a special "bootstrap" module called ``ah_bootstrap.py`` which is intended to be used by a project's setup.py in order to ensure that the ``astropy_helpers`` package is available for - build/installation. This is similar to the ``ez_setup.py`` module that is - shipped with some projects to bootstrap `setuptools - `_. - - As described in APE4, the version numbers for ``astropy_helpers`` follow the - corresponding major/minor version of the `astropy core package - `_, but with an independent sequence of micro (bugfix) - version numbers. Hence, the initial release is 0.4, in parallel with Astropy - v0.4, which will be the first version of Astropy to use ``astropy-helpers``. + build/installation. + + As described in `APE4 `_, the version + numbers for ``astropy_helpers`` follow the corresponding major/minor version of + the `astropy core package `_, but with an independent + sequence of micro (bugfix) version numbers. Hence, the initial release is 0.4, + in parallel with Astropy v0.4, which will be the first version of Astropy to + use ``astropy-helpers``. For examples of how to implement ``astropy-helpers`` in a project, - see the ``setup.py`` and ``setup.cfg`` files of the + see the ``setup.py`` and ``setup.cfg`` files of the `Affiliated package template `_. - .. image:: https://travis-ci.org/astropy/astropy-helpers.svg - :target: https://travis-ci.org/astropy/astropy-helpers + What does astropy-helpers provide? + ---------------------------------- + + Astropy-helpers' big-picture purpose is to provide customization to Python's + packaging infrastructure process in ways that the Astropy Project has found to + help simplifying the developint and releasing packages. This is primarily + build around ``setup.py`` commands, as outlined below, as well as code to help + manage version numbers and better control the build process of larger packages. + + Custom setup.py commands + ^^^^^^^^^^^^^^^^^^^^^^^^ + + The main part of astropy-helpers is to provide customized setuptools commands. + For example, in a package that uses astropy-helpers, the following command + will be available:: + + python setup.py build_docs + + and this command is implemented in astropy-helpers. To use the custom + commands described here, add:: + + from astropy_helpers.setup_helpers import register_commands + + to your ``setup.py`` file, then do:: + + cmdclassd = register_commands(NAME, VERSION, RELEASE) + + where ``NAME`` is the name of your package, ``VERSION`` is the full version + string, and ``RELEASE`` is a boolean value indicating whether the version is + a stable released version (``True``) or a developer version (``False``). + Finally, pass ``cmdclassd`` to the ``setup`` function:: + + setup(..., + cmdclass=cmdclassd) + + The commands we provide or customize are: + + **python setup.py test** + + This command will automatically build the package, install it to a temporary + directory, and run the tests using `pytest `_ on this + installed version. Note that the bulk of this command is actually defined + in ``astropy.tests.command.AstropyTest``, because that allows the test + machinery to operate outside a setuptools command. This, here we + simply define the custom + setuptools command. + + **python setup.py sdist** + + We redefine ``sdist`` to use the version from distutils rather than from + setuptools, as the setuptools version requires duplication of information + in ``MANIFEST.in``. + + **python setup.py build_docs** + + This command will automatically build the package, then run sphinx to build + the documentation. This makes development much easier because it ensures + sphinx extensions that use the package's code to make documentation are + actually using the in-development version of the code. Sphinx itself + provides a custom setuptools command, which we + expand with the following options: + + * ``-w``: set the return code to 1 if there are any warnings during the build + process. + + * ``-l``: completely clean previous builds, including files generated by + the sphinx-automodapi package (which creates API pages for different + functions/classes). + + * ``-n``: disable the intersphinx option. + + * ``-o``: open the documentation in a browser if a build finishes successfully. + + In addition, ``build_docs`` will automatically download and temporarily install + sphinx-astropy (which is a meta-package that + provides standardized configuration and documentation dependencies for astropy + packages) if it isn't already installed. Temporary installation means that the + package will be installed into an ``.eggs`` directory in the current working + directory, and it will only be available for the duration of the call to + ``build_docs``. + + **python setup.py build_ext** + + This is also used when running ``build`` or ``install``. We add several features + compared to the default ``build_ext`` command: + + * For packages with C/Cython extensions, we create a ``packagename._compiler`` + submodule that contains information about the compilers used. + + * Packages that need to build C extensions using the Numpy C API, we allow + those packages to define the include path as ``'numpy'`` as opposed to having + to import Numpy and call ``get_include``. The goal is to solve the issue that + if one has to import Numpy to define extensions, then Numpy has to be + installed/available before the package is installed, which means that one + needs to install Numpy in a separate installation step. + + * We detect broken compilers and replace them with other compilers on-the-fly + unless the compiler is explicitly specified with the ``CC`` environment + variable. + + * If Cython is not installed, then we automatically check for generated C files + (which are normally present in the stable releases) and give a nice error + if these are not found. + + Version helpers + ^^^^^^^^^^^^^^^^ + + Another piece of functionality we provide in astropy-helpers is the ability + to generate a ``packagename.version`` file that includes functions that + automatically set the version string for developer versions, to e.g. + ``3.2.dev22213`` so that each developer version has a unique number (although + note that branches an equal number of commits away from the master branch will + share the same version number). To use this, import:: + + from astropy_helpers.git_helpers import get_git_devstr + + in your ``setup.py`` file, and you will then be able to use:: + + VERSION += get_git_devstr() + + where ``VERSION`` is a version string without any developer version suffix. + + We then also provide a function that generates a ``version.py`` file inside your + package (which can then be imported as ``packagename.version``) that contains + variables such as ``major``, ``minor``, and ``bugfix``, as well as + ``version_info`` (a tuple of the previous three values), a ``release`` flag that + indicates whether we are using a stable release, and several other complementary + variables. To use this, import:: + + from astropy_helpers.version_helpers import generate_version_py + + in your ``setup.py`` file, and call:: + + generate_version_py(NAME, VERSION, RELEASE, uses_git=not RELEASE) + + where ``NAME`` is the name of your package, ``VERSION`` is the full version string + (including any developer suffix), ``RELEASE`` indicates whether the version is a + stable or developer version, and ``uses_git`` indicates whether we are in a git + repository (using ``not RELEASE`` is sensible since git is not available in a + stable release). + + Collecting package information + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + + The ``setup`` function from setuptools can take a number of options that indicate + for example what extensions to build, and what package data to include. However, + for large packages this can become cumbersome. We therefore provide a mechanism + for defining extensions and package data inside individual sub-packages. To do + this, you can create ``setup_package.py`` files anywhere in your package, and + these files can include one or more of the following functions: + + * ``get_package_data``: + This function, if defined, should return a dictionary mapping the name of + the subpackage(s) that need package data to a list of data file paths + (possibly including wildcards) relative to the path of the package's source + code. e.g. if the source distribution has a needed data file + ``astropy/wcs/tests/data/3d_cd.hdr``, this function should return + ``{'astropy.wcs.tests':['data/3d_cd.hdr']}``. See the ``package_data`` + option of the :func:`distutils.core.setup` function. + + It is recommended that all such data be in a directory named ``data`` inside + the package within which it is supposed to be used. This package data + should be accessed via the ``astropy.utils.data.get_pkg_data_filename`` and + ``astropy.utils.data.get_pkg_data_fileobj`` functions. + + * ``get_extensions``: + This provides information for building C or Cython extensions. If defined, + it should return a list of ``distutils.core.Extension`` objects. + + * ``get_build_options``: + This function allows a package to add extra build options. It + should return a list of tuples, where each element has: + + - *name*: The name of the option as it would appear on the + commandline or in the ``setup.cfg`` file. + + - *doc*: A short doc string for the option, displayed by + ``setup.py build --help``. + + - *is_bool* (optional): When `True`, the option is a boolean + option and doesn't have an associated value. + + Once an option has been added, its value can be looked up using + ``astropy_helpers.setup_helpers.get_distutils_build_option``. + + * ``get_external_libraries``: + This function declares that the package uses libraries that are + included in the astropy distribution that may also be distributed + elsewhere on the users system. It should return a list of library + names. For each library, a new build option is created, + ``'--use-system-X'`` which allows the user to request to use the + system's copy of the library. The package would typically call + ``astropy_helpers.setup_helpers.use_system_library`` from its + ``get_extensions`` function to determine if the package should use + the system library or the included one. + + * ``get_entry_points()``: + This function can returns a dict formatted as required by + the ``entry_points`` argument to ``setup()``. + + With these files in place, you can then add the following to your ``setup.py`` + file:: + + from astropy_helpers.setup_helpers import get_package_info + + ... + + package_info = get_package_info() + + ... + + setup(..., **package_info) + + OpenMP helpers + ^^^^^^^^^^^^^^ + + We provide a helper function ``add_openmp_flags_if_available`` that can be used + to automatically add OpenMP flags for C/Cython extensions, based on whether + OpenMP is available and produces executable code. To use this, edit the + ``setup_package.py`` file where you define a C extension, import the helper + function:: + + from astropy_helpers.openmp_helpers import add_openmp_flags_if_available + + then once you have defined the extension and before returning it, use it as:: + + extension = Extension(...) + + add_openmp_flags_if_available(extension) + + return [extension] + + Using astropy-helpers + --------------------- + + The easiest way to get set up with astropy-helpers in a new package is to use + the `package-template `_ + that we provide. This template is specifically designed for use with the helpers, + so using it avoids some of the tedium of setting up the heleprs. + + However, we now go through the steps of adding astropy-helpers + as a submodule to a package in case you wish to do so manually. First, add + astropy-helpers as a submodule at the root of your repository:: + + git submodule add git://github.com/astropy/astropy-helpers astropy_helpers + + Then go inside the submodule and check out a stable version of astropy-helpers. + You can see the available versions by running:: + + $ cd astropy_helpers + $ git tag + ... + v2.0.6 + v2.0.7 + ... + v3.0.1 + v3.0.2 + + If you want to support Python 2, pick the latest v2.0.x version (in the above + case ``v2.0.7``) and if you don't need to support Python 2, just pick the latest + stable version (in the above case ``v3.0.2``). Check out this version with e.g.:: + + $ git checkout v3.0.2 + + Then go back up to the root of your repository and copy the ``ah_bootstrap.py`` + file from the submodule to the root of your repository:: + + $ cd .. + $ cp astropy_helpers/ah_bootstrap.py . + + Finally, add:: + + import ah_bootstrap + + at the top of your ``setup.py`` file. This will ensure that ``astropy_helpers`` + is now available to use in your ``setup.py`` file. Finally, add then commit your + changes:: + + git add astropy_helpers ah_bootstrap.py setup.py + git commit -m "Added astropy-helpers" + + Updating astropy-helpers + ------------------------ + + If you would like the Astropy team to automatically open pull requests to update + astropy-helpers in your package, then see the instructions `here + `_. + + To instead update astropy-helpers manually, go inside the submodule and do:: + + cd astropy_helpers + git fetch origin + + Then checkout the version you want to use, e.g.:: + + git checkout v3.0.3 + + Go back up to the root of the repository and update the ``ah_bootstap.py`` file + too, then add your changes:: - .. image:: https://coveralls.io/repos/astropy/astropy-helpers/badge.svg - :target: https://coveralls.io/r/astropy/astropy-helpers + cp astropy_helpers/ah_bootstrap.py . + git add astropy_helpers ah_bootstrap.py + git commit ... Platform: UNKNOWN Classifier: Development Status :: 5 - Production/Stable @@ -71,3 +368,4 @@ Classifier: Topic :: Software Development :: Build Tools Classifier: Topic :: Software Development :: Libraries :: Python Modules Classifier: Topic :: System :: Archiving :: Packaging +Requires-Python: >=3.5 diff -Nru aplpy-2.0~rc2/astropy_helpers/astropy_helpers.egg-info/SOURCES.txt aplpy-2.0.3/astropy_helpers/astropy_helpers.egg-info/SOURCES.txt --- aplpy-2.0~rc2/astropy_helpers/astropy_helpers.egg-info/SOURCES.txt 2017-07-29 15:14:44.000000000 +0000 +++ aplpy-2.0.3/astropy_helpers/astropy_helpers.egg-info/SOURCES.txt 2019-02-17 11:49:47.000000000 +0000 @@ -3,14 +3,14 @@ MANIFEST.in README.rst ah_bootstrap.py -ez_setup.py setup.cfg setup.py astropy_helpers/__init__.py +astropy_helpers/conftest.py astropy_helpers/distutils_helpers.py astropy_helpers/git_helpers.py +astropy_helpers/openmp_helpers.py astropy_helpers/setup_helpers.py -astropy_helpers/test_helpers.py astropy_helpers/utils.py astropy_helpers/version.py astropy_helpers/version_helpers.py @@ -21,56 +21,11 @@ astropy_helpers.egg-info/top_level.txt astropy_helpers/commands/__init__.py astropy_helpers/commands/_dummy.py -astropy_helpers/commands/_test_compat.py astropy_helpers/commands/build_ext.py -astropy_helpers/commands/build_py.py astropy_helpers/commands/build_sphinx.py -astropy_helpers/commands/install.py -astropy_helpers/commands/install_lib.py -astropy_helpers/commands/register.py astropy_helpers/commands/setup_package.py astropy_helpers/commands/test.py astropy_helpers/commands/src/compiler.c -astropy_helpers/compat/__init__.py -astropy_helpers/extern/__init__.py -astropy_helpers/extern/setup_package.py -astropy_helpers/extern/automodapi/__init__.py -astropy_helpers/extern/automodapi/autodoc_enhancements.py -astropy_helpers/extern/automodapi/automodapi.py -astropy_helpers/extern/automodapi/automodsumm.py -astropy_helpers/extern/automodapi/smart_resolver.py -astropy_helpers/extern/automodapi/utils.py -astropy_helpers/extern/automodapi/templates/autosummary_core/base.rst -astropy_helpers/extern/automodapi/templates/autosummary_core/class.rst -astropy_helpers/extern/automodapi/templates/autosummary_core/module.rst -astropy_helpers/extern/numpydoc/__init__.py -astropy_helpers/extern/numpydoc/docscrape.py -astropy_helpers/extern/numpydoc/docscrape_sphinx.py -astropy_helpers/extern/numpydoc/linkcode.py -astropy_helpers/extern/numpydoc/numpydoc.py astropy_helpers/sphinx/__init__.py astropy_helpers/sphinx/conf.py -astropy_helpers/sphinx/setup_package.py -astropy_helpers/sphinx/ext/__init__.py -astropy_helpers/sphinx/ext/changelog_links.py -astropy_helpers/sphinx/ext/doctest.py -astropy_helpers/sphinx/ext/edit_on_github.py -astropy_helpers/sphinx/ext/tocdepthfix.py -astropy_helpers/sphinx/ext/tests/__init__.py -astropy_helpers/sphinx/local/python2_local_links.inv -astropy_helpers/sphinx/local/python3_local_links.inv -astropy_helpers/sphinx/themes/bootstrap-astropy/globaltoc.html -astropy_helpers/sphinx/themes/bootstrap-astropy/layout.html -astropy_helpers/sphinx/themes/bootstrap-astropy/localtoc.html -astropy_helpers/sphinx/themes/bootstrap-astropy/searchbox.html -astropy_helpers/sphinx/themes/bootstrap-astropy/theme.conf -astropy_helpers/sphinx/themes/bootstrap-astropy/static/astropy_linkout.svg -astropy_helpers/sphinx/themes/bootstrap-astropy/static/astropy_linkout_20.png -astropy_helpers/sphinx/themes/bootstrap-astropy/static/astropy_logo.ico -astropy_helpers/sphinx/themes/bootstrap-astropy/static/astropy_logo.svg -astropy_helpers/sphinx/themes/bootstrap-astropy/static/astropy_logo_32.png -astropy_helpers/sphinx/themes/bootstrap-astropy/static/bootstrap-astropy.css -astropy_helpers/sphinx/themes/bootstrap-astropy/static/copybutton.js -astropy_helpers/sphinx/themes/bootstrap-astropy/static/sidebar.js -licenses/LICENSE_COPYBUTTON.rst -licenses/LICENSE_NUMPYDOC.rst \ No newline at end of file +licenses/LICENSE_ASTROSCRAPPY.rst \ No newline at end of file diff -Nru aplpy-2.0~rc2/CHANGES.rst aplpy-2.0.3/CHANGES.rst --- aplpy-2.0~rc2/CHANGES.rst 2018-12-30 15:50:31.000000000 +0000 +++ aplpy-2.0.3/CHANGES.rst 2019-02-19 11:42:21.000000000 +0000 @@ -1,7 +1,25 @@ CHANGES -------- -2.0 (2018-12-30) +2.0.3 (2019-02-19) +------------------ + +- Fix 'arcsinh' stretch and fix definition of vmid to match that in 1.x. [#421] + +2.0.2 (2019-02-18) +------------------ + +- Fixed ``set_nan_color``. [#419] + +2.0.1 (2019-02-18) +------------------ + +- Remove unused arguments in ``make_rgb_cube`` and fix behavior of + ``north=False``. [#417] + +- Fixed bug in image extent for non-square RGB images. [#417] + +2.0 (2019-02-17) ---------------- - Refactored APLpy to make use of WCSAxes to draw coordinate frames and diff -Nru aplpy-2.0~rc2/CITATION aplpy-2.0.3/CITATION --- aplpy-2.0~rc2/CITATION 1970-01-01 00:00:00.000000000 +0000 +++ aplpy-2.0.3/CITATION 2019-02-19 11:20:49.000000000 +0000 @@ -0,0 +1,36 @@ +If you use APLpy for a publication, you can use the following acknowledgment: + + This research made use of APLpy, an open-source plotting package for Python + (Robitaille and Bressert, 2012; Robitaille, 2019) + +where (Robitaille and Bressert, 2012) is a citation to this ADS/ASCL entry: + + http://adsabs.harvard.edu/abs/2012ascl.soft08017R + +and (Robitaille, 2019) is a citation to the following Zenodo entry: + + https://zenodo.org/record/2567476#.XGmAA5P7RZo + +The BibTex entries are: + + @misc{aplpy2012, + author = {{Robitaille}, T. and {Bressert}, E.}, + title = "{APLpy: Astronomical Plotting Library in Python}", + keywords = {Software }, + howpublished = {Astrophysics Source Code Library}, + year = 2012, + month = aug, + archivePrefix = "ascl", + eprint = {1208.017}, + adsurl = {http://adsabs.harvard.edu/abs/2012ascl.soft08017R}, + adsnote = {Provided by the SAO/NASA Astrophysics Data System} + } + + @misc{aplpy2019, + author = {Robitaille, Thomas}, + title = {{APLpy v2.0: The Astronomical Plotting Library in Python}}, + month = feb, + year = 2019, + doi = {10.5281/zenodo.2567476}, + url = {https://doi.org/10.5281/zenodo.2567476} + } diff -Nru aplpy-2.0~rc2/debian/changelog aplpy-2.0.3/debian/changelog --- aplpy-2.0~rc2/debian/changelog 2019-01-05 20:36:32.000000000 +0000 +++ aplpy-2.0.3/debian/changelog 2019-02-21 07:36:25.000000000 +0000 @@ -1,3 +1,17 @@ +aplpy (2.0.3-1) unstable; urgency=low + + * New bugfix upstream version 2.0.3 + + -- Ole Streicher Thu, 21 Feb 2019 08:36:25 +0100 + +aplpy (2.0-1) unstable; urgency=low + + * New upstream version 2.0 + * Add gitlab-ci.yml + * Push compat to 12 + + -- Ole Streicher Sun, 17 Feb 2019 21:45:03 +0100 + aplpy (2.0~rc2-2) unstable; urgency=medium * Add skimage to test deps diff -Nru aplpy-2.0~rc2/debian/compat aplpy-2.0.3/debian/compat --- aplpy-2.0~rc2/debian/compat 2019-01-05 20:36:32.000000000 +0000 +++ aplpy-2.0.3/debian/compat 2019-02-17 20:44:36.000000000 +0000 @@ -1 +1 @@ -11 +12 diff -Nru aplpy-2.0~rc2/debian/control aplpy-2.0.3/debian/control --- aplpy-2.0~rc2/debian/control 2019-01-05 20:36:32.000000000 +0000 +++ aplpy-2.0.3/debian/control 2019-02-21 07:36:25.000000000 +0000 @@ -3,15 +3,19 @@ Priority: optional Maintainer: Debian Astronomy Team Uploaders: Ole Streicher -Build-Depends: debhelper (>= 11), +Build-Depends: debhelper (>= 12), dh-python, python3-all, - python3-astropy, + python3-astropy (>= 3.1), python3-astropy-helpers, - python3-matplotlib, - python3-reproject, + python3-matplotlib (>= 2.0), + python3-pil (>= 4.0), + python3-pyavm (>= 0.9.4), + python3-pyregion (>= 2.0), + python3-reproject (>= 0.4), python3-setuptools, - python3-skimage, + python3-shapely (>= 1.6), + python3-skimage (>= 0.14), python3-tk, xauth, xvfb @@ -22,11 +26,8 @@ Package: python3-aplpy Architecture: all -Depends: python3-tk, - ${misc:Depends}, - ${python3:Depends} -Suggests: python3-pyavm, - python3-pyregion +Depends: python3-tk, ${misc:Depends}, ${python3:Depends} +Suggests: python3-pyavm, python3-pyregion Description: Astronomical Plotting Library in Python APLpy is a Python module aimed at producing publication-quality plots of astronomical imaging data in FITS format. The module uses diff -Nru aplpy-2.0~rc2/debian/gitlab-ci.yml aplpy-2.0.3/debian/gitlab-ci.yml --- aplpy-2.0~rc2/debian/gitlab-ci.yml 1970-01-01 00:00:00.000000000 +0000 +++ aplpy-2.0.3/debian/gitlab-ci.yml 2019-02-17 20:44:10.000000000 +0000 @@ -0,0 +1,8 @@ + +include: + - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/salsa-ci.yml + - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/pipeline-jobs.yml + +variables: + RELEASE: 'unstable' + \ No newline at end of file diff -Nru aplpy-2.0~rc2/debian/tests/control aplpy-2.0.3/debian/tests/control --- aplpy-2.0~rc2/debian/tests/control 2019-01-05 20:36:32.000000000 +0000 +++ aplpy-2.0.3/debian/tests/control 2019-02-21 07:36:25.000000000 +0000 @@ -1,3 +1,3 @@ Test-Command: xvfb-run --server-args="-screen 0 1024x768x24" -a debian/tests/python3-aplpy -Depends: python3-aplpy, python3-tk, xauth, xvfb, python3-skimage +Depends: python3-aplpy, python3-skimage, python3-tk, xauth, xvfb Restrictions: allow-stderr diff -Nru aplpy-2.0~rc2/debian/watch aplpy-2.0.3/debian/watch --- aplpy-2.0~rc2/debian/watch 2019-01-05 20:36:32.000000000 +0000 +++ aplpy-2.0.3/debian/watch 2019-02-17 20:49:20.000000000 +0000 @@ -1,3 +1,3 @@ -version=3 +version=4 opts=uversionmangle=s/(rc|a|b|c)/~$1/ \ -https://pypi.debian.net/aplpy/(?:APLpy|aplpy)-(.+)\.(?:zip|tgz|tbz|txz|(?:tar\.(?:gz|bz2|xz))) +https://pypi.debian.net/APLpy/(?:APLpy|aplpy)-(.+)\.(?:zip|tgz|tbz|txz|(?:tar\.(?:gz|bz2|xz))) diff -Nru aplpy-2.0~rc2/docs/conf.py aplpy-2.0.3/docs/conf.py --- aplpy-2.0~rc2/docs/conf.py 2018-12-30 15:08:21.000000000 +0000 +++ aplpy-2.0.3/docs/conf.py 2019-02-19 11:20:49.000000000 +0000 @@ -149,3 +149,8 @@ edit_on_github_source_root = "" edit_on_github_doc_root = "docs" + +# Use nitpicky mode to avoid broken links in docs +nitpicky = True +nitpick_ignore = [('py:class', 'aplpy.layers.Layers'), + ('py:class', 'aplpy.regions.Regions')] diff -Nru aplpy-2.0~rc2/docs/fitsfigure/arbitrary_coordinate_systems.rst aplpy-2.0.3/docs/fitsfigure/arbitrary_coordinate_systems.rst --- aplpy-2.0~rc2/docs/fitsfigure/arbitrary_coordinate_systems.rst 2018-12-12 11:35:47.000000000 +0000 +++ aplpy-2.0.3/docs/fitsfigure/arbitrary_coordinate_systems.rst 2019-02-19 11:20:49.000000000 +0000 @@ -12,13 +12,13 @@ latitudes, and arbitrary scalar values, APLpy keeps track of the axis coordinate 'type' for each axis, and will try and guess these based on the header. However, it is possible to explicitly specify the coordinate type with -the :meth:`~aplpy.aplpy.FITSFigure.set_xaxis_coord_type` and :meth:`~aplpy.aplpy.FITSFigure.set_yaxis_coord_type` methods in the -:class:`~aplpy.aplpy.FITSFigure` object:: +the :meth:`~aplpy.FITSFigure.set_xaxis_coord_type` and :meth:`~aplpy.FITSFigure.set_yaxis_coord_type` methods in the +:class:`~aplpy.FITSFigure` object:: f = FITSFigure('2MASS_k.fits') f.set_xaxis_coord_type('scalar') f.set_xaxis_coord_type('latitude') - + Valid coordinate types are ``longitude``, ``latitude``, and ``scalar``. Longitudes are forced to be in the 0 to 360 degree range, latitudes are forced to be in the -90 to 90 degree range, and scalars are not constrained. @@ -46,7 +46,7 @@ valid Python format. For example, ``%g`` is the default Python format, ``%10.3f`` means decimal notation with three decimal places, etc. For more information, see `String Formatting Operations -`_. +`_. In both cases, the default label format can be overridden:: @@ -58,6 +58,6 @@ When plotting images in sky coordinates, APLpy makes pixel square by default, but it is possible to change this, which can be useful for non-sky -coordinates. When calling :meth:`~aplpy.aplpy.FITSFigure.show_grayscale` or -:meth:`~aplpy.aplpy.FITSFigure.show_colorscale`, simply add ``aspect='auto'`` -which will override the ``aspect='equal'`` default. \ No newline at end of file +coordinates. When calling :meth:`~aplpy.FITSFigure.show_grayscale` or +:meth:`~aplpy.FITSFigure.show_colorscale`, simply add ``aspect='auto'`` +which will override the ``aspect='equal'`` default. diff -Nru aplpy-2.0~rc2/docs/fitsfigure/howto_avm.rst aplpy-2.0.3/docs/fitsfigure/howto_avm.rst --- aplpy-2.0~rc2/docs/fitsfigure/howto_avm.rst 2018-12-12 11:35:47.000000000 +0000 +++ aplpy-2.0.3/docs/fitsfigure/howto_avm.rst 2019-02-19 11:20:49.000000000 +0000 @@ -11,10 +11,10 @@ f = aplpy.FITSFigure('example.jpg') f.show_rgb() -Note that no filename is required for :meth:`~aplpy.aplpy.FITSFigure.show_rgb` +Note that no filename is required for :meth:`~aplpy.FITSFigure.show_rgb` in this case. -If PyAVM is installed, :func:`~aplpy.rgb.make_rgb_image` can embed AVM +If PyAVM is installed, :func:`~aplpy.make_rgb_image` can embed AVM meta-data into RGB images it creates, although only JPEG and PNG files support this:: @@ -29,13 +29,13 @@ f.show_rgb() In other words, this means that when creating an RGB image with APLpy, it is -no longer necessary to initialize :class:`~aplpy.aplpy.FITSFigure` with a FITS -file and then use :meth:`~aplpy.aplpy.FITSFigure.show_rgb` with the RGB image -filename - instead, :class:`~aplpy.aplpy.FITSFigure` can be directly +no longer necessary to initialize :class:`~aplpy.FITSFigure` with a FITS +file and then use :meth:`~aplpy.FITSFigure.show_rgb` with the RGB image +filename - instead, :class:`~aplpy.FITSFigure` can be directly initialized with the AVM-tagged image. To disable the embedding of AVM tags, you can use the ``embed_avm_tags=False`` -option for :func:`~aplpy.rgb.make_rgb_image`. +option for :func:`~aplpy.make_rgb_image`. These features require `PyAVM 0.9.1 `_ or later. Please report any issues you encounter `here diff -Nru aplpy-2.0~rc2/docs/fitsfigure/howto_subplot.rst aplpy-2.0.3/docs/fitsfigure/howto_subplot.rst --- aplpy-2.0~rc2/docs/fitsfigure/howto_subplot.rst 2018-12-12 11:35:47.000000000 +0000 +++ aplpy-2.0.3/docs/fitsfigure/howto_subplot.rst 2019-02-19 11:20:49.000000000 +0000 @@ -1,10 +1,10 @@ Creating subplots ----------------- -By default, :class:`~aplpy.aplpy.FITSFigure` creates a figure with a single +By default, :class:`~aplpy.FITSFigure` creates a figure with a single subplot that occupies the entire figure. However, APLpy can be used to place a subplot in an existing matplotlib figure instance. To do this, -:class:`~aplpy.aplpy.FITSFigure` should be called with the ``figure=`` +:class:`~aplpy.FITSFigure` should be called with the ``figure=`` argument as follows:: import aplpy Binary files /tmp/tmpzsq5Cz/Sw7ypzqkQZ/aplpy-2.0~rc2/docs/fitsfigure/myfirstplot.png and /tmp/tmpzsq5Cz/Hag9vWjRhZ/aplpy-2.0.3/docs/fitsfigure/myfirstplot.png differ diff -Nru aplpy-2.0~rc2/docs/fitsfigure/quick_reference.rst aplpy-2.0.3/docs/fitsfigure/quick_reference.rst --- aplpy-2.0~rc2/docs/fitsfigure/quick_reference.rst 2018-12-12 11:35:47.000000000 +0000 +++ aplpy-2.0.3/docs/fitsfigure/quick_reference.rst 2019-02-19 11:20:49.000000000 +0000 @@ -9,9 +9,9 @@ this page, these are given in the form of example values. In addition, not all of the optional keywords are mentioned here. For more information on a specific command and all the options - available, type ``help`` followed by the method name, e.g. ``help - fig.show_grayscale``. When multiple optional arguments are given, - this does not mean that all of them have to be specified, but + available, use the ``help()`` function, e.g. + ``help(fig.show_grayscale)``. When multiple optional arguments are + given, this does not mean that all of them have to be specified, but just shows all the options available. Introduction @@ -145,7 +145,7 @@ fig.add_colorbar() fig.remove_colorbar() -Once :meth:`~aplpy.aplpy.FITSFigure.add_colorbar` has been called, the ``fig.colorbar`` object is created and the following methods are then available: +Once :meth:`~aplpy.FITSFigure.add_colorbar` has been called, the ``fig.colorbar`` object is created and the following methods are then available: * Show and hide the colorbar:: @@ -196,7 +196,7 @@ fig.add_grid() fig.remove_grid() -Once :meth:`~aplpy.aplpy.FITSFigure.add_grid` has been called, the ``fig.grid`` object is created and the following methods are then available: +Once :meth:`~aplpy.FITSFigure.add_grid` has been called, the ``fig.grid`` object is created and the following methods are then available: * Show and hide the grid:: @@ -229,7 +229,7 @@ fig.add_scalebar() fig.remove_scalebar() -Once :meth:`~aplpy.aplpy.FITSFigure.add_scalebar` has been called, the ``fig.scalebar`` object is created and the following methods are then available: +Once :meth:`~aplpy.FITSFigure.add_scalebar` has been called, the ``fig.scalebar`` object is created and the following methods are then available: * Show and hide the scalebar:: @@ -291,7 +291,7 @@ fig.add_beam() fig.remove_beam() -Once :meth:`~aplpy.aplpy.FITSFigure.add_beam` has been called, the ``fig.beam`` object is created and the following methods are then available: +Once :meth:`~aplpy.FITSFigure.add_beam` has been called, the ``fig.beam`` object is created and the following methods are then available: * Show and hide the beam:: diff -Nru aplpy-2.0~rc2/docs/fitsfigure/quickstart.rst aplpy-2.0.3/docs/fitsfigure/quickstart.rst --- aplpy-2.0~rc2/docs/fitsfigure/quickstart.rst 2018-12-30 15:08:21.000000000 +0000 +++ aplpy-2.0.3/docs/fitsfigure/quickstart.rst 2019-02-19 11:20:49.000000000 +0000 @@ -5,7 +5,7 @@ :maxdepth: 1 The following tutorial will take you, step by step, through the main features -of APLpy. You will need to download the following `file `_. +of APLpy. You will need to download the following `file `_. First, unpack the example files and go to the ``tutorial`` directory:: @@ -20,7 +20,7 @@ import aplpy -To start off, use the :class:`~aplpy.aplpy.FITSfigure` class to create a +To start off, use the :class:`~aplpy.FITSFigure` class to create a canvas to where your data will be plotted:: gc = aplpy.FITSFigure('fits/2MASS_k.fits') @@ -49,8 +49,8 @@ gc.show_colorscale(cmap='gist_heat') to show the image showing a 'heat' map. You can find more information in the -:meth:`~aplpy.aplpy.FITSFigure.show_grayscale` and -:meth:`~aplpy.aplpy.FITSFigure.show_colorscale` documentation. For +:meth:`~aplpy.FITSFigure.show_grayscale` and +:meth:`~aplpy.FITSFigure.show_colorscale` documentation. For example, you can control the minimum and maximum pixel values to show and the stretch function to use. @@ -74,9 +74,9 @@ gc.show_contour('fits/mips_24micron.fits', colors='white') -There are a number of arguments that can be passed to :meth:`~aplpy.aplpy.FITSFigure.show_contour` to +There are a number of arguments that can be passed to :meth:`~aplpy.FITSFigure.show_contour` to control the appearance of the contours as well as the number of levels to -show. For more information, see the see the :meth:`~aplpy.aplpy.FITSFigure.show_contour` documentation. +show. For more information, see the see the :meth:`~aplpy.FITSFigure.show_contour` documentation. Display a coordinate grid using:: @@ -91,16 +91,15 @@ or numpy arrays that are already defined:: import numpy - data = numpy.loadtxt('data/yso_wcs_only.txt') - ra, dec = data[:, 0], data[:, 1] + ra, dec = numpy.loadtxt('data/yso_wcs_only.txt', unpack=True) gc.show_markers(ra, dec, edgecolor='green', facecolor='none', marker='o', s=10, alpha=0.5) -For more information, see the :meth:`~aplpy.aplpy.FITSFigure.show_markers` +For more information, see the :meth:`~aplpy.FITSFigure.show_markers` documentation. It's often the case that you might want to change the look of a contour or -markers, but if you run :meth:`~aplpy.aplpy.FITSFigure.show_contour` or :meth:`~aplpy.aplpy.FITSFigure.show_markers` a second time, it +markers, but if you run :meth:`~aplpy.FITSFigure.show_contour` or :meth:`~aplpy.FITSFigure.show_markers` a second time, it will overplot rather than replacing. To solve this problem APLpy has 'layers' which can be manipulated in a basic way. Type:: @@ -113,9 +112,9 @@ -> contour_set_1 -> marker_set_1 -You can use :meth:`~aplpy.aplpy.FITSFigure.remove_layer`, :meth:`~aplpy.aplpy.FITSFigure.hide_layer`, and :meth:`~aplpy.aplpy.FITSFigure.show_layer` to manipulate +You can use :meth:`~aplpy.FITSFigure.remove_layer`, :meth:`~aplpy.FITSFigure.hide_layer`, and :meth:`~aplpy.FITSFigure.show_layer` to manipulate the layers, and you can also specify the ``layer=name`` argument to -:meth:`~aplpy.aplpy.FITSFigure.show_contour` or :meth:`~aplpy.aplpy.FITSFigure.show_markers`. Using the latter forces APLpy to name +:meth:`~aplpy.FITSFigure.show_contour` or :meth:`~aplpy.FITSFigure.show_markers`. Using the latter forces APLpy to name the layer you are creating with the name provided, and can also be used to replace an existing layer. For example, let's change the color of the markers from green to red:: @@ -124,7 +123,7 @@ facecolor='none', marker='o', s=10, alpha=0.5) Note the presence of the ``layer='marker_set_1'`` which means that the -current markers plot will be replaced. To view active layers, you can use the :meth:`~aplpy.aplpy.FITSFigure.list_layers` documentation. +current markers plot will be replaced. To view active layers, you can use the :meth:`~aplpy.FITSFigure.list_layers` documentation. To wrap up this tutorial, we will save the plot to a file. Type the following:: @@ -149,8 +148,7 @@ gc.show_contour('fits/mips_24micron.fits', colors='white') - data = numpy.loadtxt('data/yso_wcs_only.txt') - ra, dec = data[:, 0], data[:, 1] + ra, dec = numpy.loadtxt('data/yso_wcs_only.txt', unpack=True) gc.show_markers(ra, dec, layer='marker_set_1', edgecolor='red', facecolor='none', marker='o', s=10, alpha=0.5) diff -Nru aplpy-2.0~rc2/docs/fitsfigure/slicing.rst aplpy-2.0.3/docs/fitsfigure/slicing.rst --- aplpy-2.0~rc2/docs/fitsfigure/slicing.rst 2018-12-30 15:08:21.000000000 +0000 +++ aplpy-2.0.3/docs/fitsfigure/slicing.rst 2019-02-19 11:20:49.000000000 +0000 @@ -6,8 +6,8 @@ APLpy supports extracting a slice from n-dimensional FITS cubes, and re-ordering dimensions. The two key arguments to -:class:`~aplpy.aplpy.FITSFigure` to control this are ``dimensions`` and -``slices``. These arguments can also be passed to :meth:`~aplpy.aplpy.FITSFigure.show_contour`. +:class:`~aplpy.FITSFigure` to control this are ``dimensions`` and +``slices``. These arguments can also be passed to :meth:`~aplpy.FITSFigure.show_contour`. The ``dimensions`` argument is used to specify which dimensions should be used for the x- and y-axis respectively (zero based). The default values are ``[0, @@ -44,8 +44,8 @@ When plotting images in sky coordinates, APLpy makes pixel square by default, but it is possible to change this. When calling -:meth:`~aplpy.aplpy.FITSFigure.show_grayscale` or -:meth:`~aplpy.aplpy.FITSFigure.show_colorscale`, simply add ``aspect='auto'`` +:meth:`~aplpy.FITSFigure.show_grayscale` or +:meth:`~aplpy.FITSFigure.show_colorscale`, simply add ``aspect='auto'`` which will override the ``aspect='equal'`` default. The ``aspect='auto'`` is demonstrated below. diff -Nru aplpy-2.0~rc2/docs/index.rst aplpy-2.0.3/docs/index.rst --- aplpy-2.0~rc2/docs/index.rst 2018-12-30 15:50:30.000000000 +0000 +++ aplpy-2.0.3/docs/index.rst 2019-02-19 11:20:49.000000000 +0000 @@ -10,13 +10,16 @@ Since APLpy 2.0, APLpy relies on Astropy's `WCSAxes `_ package to draw the coordinate axes and grids, which in turn uses `Matplotlib -`_ to do the rendering. This is a big change compared to +`_ to do the rendering. This is a big change compared to previous versions of APLpy, which handled the drawing of the coordinate axes and grids directly. For information about backward-compatibility, see the `Backward-compatibility notes`_. Note that APLpy 2.x is only compatible with Python 3.5 and later. +If you use APLpy for a publication, please consider citing it as described in +the `CITATION `__ file. + Should you use APLpy? ===================== @@ -37,9 +40,9 @@ pip install aplpy -To include all optional dependencies, you can do:: +If you prefer to use conda, you can install APLpy with:: - pip install aplpy[all] + conda install -c astropy aplpy Using APLpy =========== @@ -100,3 +103,4 @@ :no-main-docstr: :no-heading: :no-inheritance-diagram: + :inherited-members: diff -Nru aplpy-2.0~rc2/docs/index.txt aplpy-2.0.3/docs/index.txt --- aplpy-2.0~rc2/docs/index.txt 2015-06-12 12:40:34.000000000 +0000 +++ aplpy-2.0.3/docs/index.txt 2019-02-19 11:20:49.000000000 +0000 @@ -1,7 +1,7 @@ APLpy documentation =================== -This is the documentation for APLpy. The APLpy homepage is located at http://aplpy.github.com +This is the documentation for APLpy. The APLpy homepage is located at http://aplpy.github.io .. toctree:: :maxdepth: 1 diff -Nru aplpy-2.0~rc2/docs/rgb.rst aplpy-2.0.3/docs/rgb.rst --- aplpy-2.0~rc2/docs/rgb.rst 2018-12-30 15:08:21.000000000 +0000 +++ aplpy-2.0.3/docs/rgb.rst 2019-02-19 11:20:49.000000000 +0000 @@ -10,13 +10,13 @@ If you are starting from three images with different projections/resolutions, the first step is to reproject these to a common projection/resolution. The following code shows how this can be done using the -:func:`~aplpy.rgb.make_rgb_cube` function:: +:func:`~aplpy.make_rgb_cube` function:: aplpy.make_rgb_cube(['2mass_k.fits', '2mass_h.fits', '2mass_j.fits'], '2mass_cube.fits') This method makes use of the `reproject -`_ package to reproject the images +`_ package to reproject the images to a common projection. The above example produces a FITS cube named ``2mass_cube.fits`` which contains the three channels in the same projection. This can be used to then produce an RGB image (see next section) @@ -24,10 +24,10 @@ Producing an RGB image from images in a common projection ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -The :func:`~aplpy.rgb.make_rgb_image` function can be used to produce an RGB +The :func:`~aplpy.make_rgb_image` function can be used to produce an RGB image from either three FITS files in the exact same projection, or a FITS cube containing the three channels (such as that output by -:func:`~aplpy.rgb.make_rgb_cube`). The following example illustrates how to do +:func:`~aplpy.make_rgb_cube`). The following example illustrates how to do this:: aplpy.make_rgb_image('2mass_cube.fits','2mass_rgb.png') @@ -59,11 +59,11 @@ On the other hand, if you are not able to use PyAVM, or need to use a format other than JPEG or PNG, then you need to instantiate the -:class:`~aplpy.aplpy.FITSFigure` class with a FITS file with exactly the same -dimensions and WCS as the RGB image. The :func:`~aplpy.rgb.make_rgb_cube` +:class:`~aplpy.FITSFigure` class with a FITS file with exactly the same +dimensions and WCS as the RGB image. The :func:`~aplpy.make_rgb_cube` function will in fact produce a file with the same name as the main output, but including a ``_2d`` suffix, and this can be used to instantiate -:class:`~aplpy.aplpy.FITSFigure`:: +:class:`~aplpy.FITSFigure`:: # Reproject the images to a common projection - this will also # produce 2mass_cube_2d.fits diff -Nru aplpy-2.0~rc2/docs/rtd-pip-requirements aplpy-2.0.3/docs/rtd-pip-requirements --- aplpy-2.0~rc2/docs/rtd-pip-requirements 2018-12-30 15:08:21.000000000 +0000 +++ aplpy-2.0.3/docs/rtd-pip-requirements 1970-01-01 00:00:00.000000000 +0000 @@ -1,5 +0,0 @@ -numpy -Cython -astropy -matplotlib -sphinx-astropy diff -Nru aplpy-2.0~rc2/PKG-INFO aplpy-2.0.3/PKG-INFO --- aplpy-2.0~rc2/PKG-INFO 2018-12-31 21:34:22.000000000 +0000 +++ aplpy-2.0.3/PKG-INFO 2019-02-19 11:43:16.000000000 +0000 @@ -1,14 +1,61 @@ Metadata-Version: 2.1 -Name: aplpy -Version: 2.0rc2 +Name: APLpy +Version: 2.0.3 Summary: The Astronomical Plotting Library in Python Home-page: http://aplpy.github.io Author: Thomas Robitaille and Eli Bressert Author-email: thomas.robitaille@gmail.com, elibre@users.sourceforge.net License: MIT -Description: The Astronomical Plotting Library in Python +Description: |Build Status| |CircleCI| |codecov| |Documentation Status| + + About + ----- + + APLpy (the Astronomical Plotting Library in Python) is a Python module + aimed at producing publication-quality plots of astronomical imaging + data in FITS format. + + PyPI: https://pypi.python.org/pypi/APLpy + + Website: http://aplpy.github.io + + Documentation: http://aplpy.readthedocs.io + + APLpy is released under an MIT open-source license. + + Installing + ---------- + + The following dependencies are required: + + - `Numpy `__ 1.11 or later + - `Matplotlib `__ 2.0 or later + - `Astropy `__ 3.1 or later + - `reproject `__ 0.4 or later + - `PyAVM `__ 0.9.4 or later + - `pyregion `__ 2.0 or later + - `pillow `__ 4.0 or later + - `scikit-image `__ 0.14 or later + - `shapely `__ 1.6 or later + + You can install APLpy and all its dependencies with:: + + pip install aplpy + + or if you use conda:: + + conda install -c astropy aplpy + + .. |Build Status| image:: https://travis-ci.org/aplpy/aplpy.svg?branch=master + :target: https://travis-ci.org/aplpy/aplpy + .. |CircleCI| image:: https://circleci.com/gh/aplpy/aplpy/tree/master.svg?style=svg + :target: https://circleci.com/gh/aplpy/aplpy/tree/master + .. |codecov| image:: https://codecov.io/gh/aplpy/aplpy/branch/master/graph/badge.svg + :target: https://codecov.io/gh/aplpy/aplpy + .. |Documentation Status| image:: https://img.shields.io/badge/docs-latest-brightgreen.svg?style=flat + :target: https://aplpy.readthedocs.io/en/latest/ + Platform: UNKNOWN Requires-Python: >=3.5 -Provides-Extra: docs -Provides-Extra: all Provides-Extra: test +Provides-Extra: docs diff -Nru aplpy-2.0~rc2/README.md aplpy-2.0.3/README.md --- aplpy-2.0~rc2/README.md 2018-12-31 21:30:00.000000000 +0000 +++ aplpy-2.0.3/README.md 1970-01-01 00:00:00.000000000 +0000 @@ -1,45 +0,0 @@ -[![Build Status](https://travis-ci.org/aplpy/aplpy.svg?branch=master)](https://travis-ci.org/aplpy/aplpy) -[![CircleCI](https://circleci.com/gh/aplpy/aplpy/tree/master.svg?style=svg)](https://circleci.com/gh/aplpy/aplpy/tree/master) -[![codecov](https://codecov.io/gh/aplpy/aplpy/branch/master/graph/badge.svg)](https://codecov.io/gh/aplpy/aplpy) -[![Documentation Status](https://img.shields.io/badge/docs-latest-brightgreen.svg?style=flat)](https://aplpy.readthedocs.io/en/latest/) - - -About ------ - -APLpy (the Astronomical Plotting Library in Python) is a -Python module aimed at producing publication-quality plots -of astronomical imaging data in FITS format. - -PyPI: https://pypi.python.org/pypi/APLpy - -Website: http://aplpy.github.io - -Documentation: http://aplpy.readthedocs.io - -APLpy is released under an MIT open-source license. - -Installing ----------- - -The following dependencies are required: - -* [Numpy](http://www.numpy.org) 1.11 or later -* [Matplotlib](http://www.matplotlib.org) 2.0 or later -* [Astropy](http://www.astropy.org) 3.1 or later -* [reproject](http://reproject.readthedocs.org) 0.4 or later - -and the following are optional: - -* [PyAVM](http://astrofrog.github.io/pyavm/) 0.9.4 or later -* [pyregion](http://pyregion.readthedocs.org/) 2.0 or later -* [pillow](https://pypi.org/project/Pillow/) 4.0 or later -* [scikit-image](https://pypi.org/project/scikit-image/) 0.14 or later - -You can install APLpy with: - - pip install aplpy - -If you want to install all optional dependencies, you can do: - - pip install aplpy[all] diff -Nru aplpy-2.0~rc2/README.rst aplpy-2.0.3/README.rst --- aplpy-2.0~rc2/README.rst 1970-01-01 00:00:00.000000000 +0000 +++ aplpy-2.0.3/README.rst 2019-02-19 11:42:03.000000000 +0000 @@ -0,0 +1,48 @@ +|Build Status| |CircleCI| |codecov| |Documentation Status| + +About +----- + +APLpy (the Astronomical Plotting Library in Python) is a Python module +aimed at producing publication-quality plots of astronomical imaging +data in FITS format. + +PyPI: https://pypi.python.org/pypi/APLpy + +Website: http://aplpy.github.io + +Documentation: http://aplpy.readthedocs.io + +APLpy is released under an MIT open-source license. + +Installing +---------- + +The following dependencies are required: + +- `Numpy `__ 1.11 or later +- `Matplotlib `__ 2.0 or later +- `Astropy `__ 3.1 or later +- `reproject `__ 0.4 or later +- `PyAVM `__ 0.9.4 or later +- `pyregion `__ 2.0 or later +- `pillow `__ 4.0 or later +- `scikit-image `__ 0.14 or later +- `shapely `__ 1.6 or later + +You can install APLpy and all its dependencies with:: + + pip install aplpy + +or if you use conda:: + + conda install -c astropy aplpy + +.. |Build Status| image:: https://travis-ci.org/aplpy/aplpy.svg?branch=master + :target: https://travis-ci.org/aplpy/aplpy +.. |CircleCI| image:: https://circleci.com/gh/aplpy/aplpy/tree/master.svg?style=svg + :target: https://circleci.com/gh/aplpy/aplpy/tree/master +.. |codecov| image:: https://codecov.io/gh/aplpy/aplpy/branch/master/graph/badge.svg + :target: https://codecov.io/gh/aplpy/aplpy +.. |Documentation Status| image:: https://img.shields.io/badge/docs-latest-brightgreen.svg?style=flat + :target: https://aplpy.readthedocs.io/en/latest/ diff -Nru aplpy-2.0~rc2/setup.cfg aplpy-2.0.3/setup.cfg --- aplpy-2.0~rc2/setup.cfg 2018-12-31 21:30:20.000000000 +0000 +++ aplpy-2.0.3/setup.cfg 2019-02-19 11:42:51.000000000 +0000 @@ -22,18 +22,16 @@ [metadata] package_name = aplpy description = The Astronomical Plotting Library in Python -long_description = The Astronomical Plotting Library in Python author = Thomas Robitaille and Eli Bressert author_email = thomas.robitaille@gmail.com, elibre@users.sourceforge.net license = MIT url = http://aplpy.github.io edit_on_github = False github_project = aplpy/aplpy -install_requires = numpy, astropy>=3.1, matplotlib>=2.0, reproject>=0.4 +install_requires = numpy, astropy>=3.1, matplotlib>=2.0, reproject>=0.4, pyregion>=2.0, pillow>=4.0, pyavm>=0.9.4, scikit-image>=0.14, shapely>=1.6 # version should be PEP440 compatible (https://www.python.org/dev/peps/pep-0440/) -version = 2.0rc2 +version = 2.0.3 [options.extras_require] docs = sphinx-astropy test = pytest-astropy; codecov; pytest-mpl -all = pyregion>=2.0; pillow>=4.0; pyavm>=0.9.4; scikit-image>=0.14 diff -Nru aplpy-2.0~rc2/setup.py aplpy-2.0.3/setup.py --- aplpy-2.0~rc2/setup.py 2018-12-31 21:33:49.000000000 +0000 +++ aplpy-2.0.3/setup.py 2019-02-19 11:20:49.000000000 +0000 @@ -122,7 +122,7 @@ # ``setup``, since these are now deprecated. See this link for more details: # https://groups.google.com/forum/#!topic/astropy-dev/urYO8ckB2uM -setup(name=PACKAGENAME, +setup(name='APLpy', version=VERSION, description=DESCRIPTION, scripts=scripts,