File python-photutils.changes of Package python-photutils

-------------------------------------------------------------------
Sun Apr  6 15:21:28 UTC 2025 - Ben Greiner <code@bnavigator.de>

- Update to 2.2.0
  ## New Features
  ###  photutils.aperture
  * Add an aperture_to_region function to convert an Aperture
    object to an astropy Region or Regions object. [#2009]
  ### photutils.profiles
  * Added data_radius and data_profile attributes to the
    RadialProfile class for calculating the raw radial profile.
    [#2001]
  ### photutils.segmentation
  * Added a to_regions method to SegmentationImage that converts
    the segment outlines to a regions.Regions object. [#2010]
  ## Bug Fixes
  ### photutils.segmentation
  * Fixed an issue where the SegmentationImage polygons attribute
    would raise an error if any source segment contained a hole.
    [#2005]
  ## API Changes
  ### photutils.aperture
  * The theta attribute of EllipticalAperture, EllipticalAnnulus,
    RectangularAperture, and RectangularAnnulus is now always
    returned as an angular Quantity. [#2008]

-------------------------------------------------------------------
Wed Feb 12 14:26:42 UTC 2025 - Ben Greiner <code@bnavigator.de>

- Update to 2.1.0
  ## General
  * The minimum required Python is now 3.11. [#1958]
  * The minimum required gwcs is now 0.20. [#1961]
  ## New Features
  ### photutils.aperture
  * The aperture_photometry output table will now include a
    sky_center column if wcs is input, even if the input aperture
    is not a sky aperture. [#1965]
  ### photutils.datasets
  * A params_map keyword was added to make_model_image to allow a
    custom mapping between model parameter names and columns names
    in the parameter table. [#1994]
  ### photutils.detection
  * The find_peaks border_width keyword can now accept two values,
    indicating the border width along the the y and x edges,
    respectively. [#1957]
  ### photutils.morphology
  * An optional mask keyword was added to the gini function.
    [#1979]
  ### photutils.segmentation
  * Added deblended_labels, deblended_labels_map, and
    deblended_labels_inverse_map properties to SegmentationImage to
    identify and map any deblended labels. [#1988]
  ## Bug Fixes
  ### photutils.segmentation
  * Fixed a bug where the table output from the SourceCatalog
    to_table method could have column names with a np.str_
    representation instead of str representation when using NumPy
    2.0+. [#1956]
  * Fixed a bug to ensure that the dtype of the SegmentationImage
    labels always matches the image dtype. [#1986]
  * Fixed a issue with the source labels after source deblending
    when using relabel=False. [#1988]
  ## API Changes
  ### photutils.aperture
  * The xcenter and ycenter columns in the table returned by
    aperture_photometry no longer have (pixel) units for
    consistency with other tools. [#1993]
  ### photutils.detection
  * When exclude_border is set to True in the DAOStarFinder and
    StarFinder classes, the excluded border region can be different
    along the x and y edges if the kernel shape is rectangular.
    [#1957]
  * Detected sources that match interval ends for sharpness,
    roundness, and maximum peak values (sharplo, sharphi, roundlo,
    roundhi, and peakmax) are now included in the returned table of
    detected sources by DAOStarFinder and IRAFStarFinder. [#1978]
  * Detected sources that match the maximum peak value (peakmax)
    are now included in the returned table of detected sources by
    StarFinder. [#1990]
  ### photutils.morphology
  * The gini function now returns zero instead of NaN if the
    (unmasked) data values sum to zero. [#1979]
    photutils.psf
  * The 'viridis' color map is now the default in the
    GriddedPSFModel plot_grid method when deltas=True. [#1954]
  * The GriddedPSFModel plot_grid color bar now matches the height
    of the displayed image. [#1955]
- Reenable scikit-image tests for python313

-------------------------------------------------------------------
Fri Dec  6 11:56:47 UTC 2024 - Ben Greiner <code@bnavigator.de>

- Skip scikit-image tests for python313

-------------------------------------------------------------------
Fri Nov  8 15:08:58 UTC 2024 - Ben Greiner <code@bnavigator.de>

- Update to 2.0.2
  ## Bug Fixes
  * Due to an upstream bug in bottleneck with float32 arrays,
    bottleneck nan-functions are now used internally only for
    float64 arrays. Performance may be impacted for computations
    involving arrays with dtype other than float64. Affected
    functions are used in the aperture, background, detection,
    profiles, psf, and segmentation subpackages. This change has no
    impact if bottleneck is not installed.
  ### photutils.background
  * Fixed a bug in Background2D where an error would be raised when
    using the BkgIDWInterpolator interpolator when any mesh was
    excluded, e.g., due to an input mask. [#1940]
  ### photutils.detection
  * Fixed a bug in the star finders (DAOStarFinder, IRAFStarFinder,
    and StarFinder) when exclude_border=True. Also, fixed an issue
    with exclude_border=True where if all sources were in the
    border region then an error would be raised. [#1943]
- Release 2.0.1
  ## Bug Fixes
  ### photutils.background
  * Fixed a bug in SExtractorBackground where the dimensionality of
    the returned value would not be preserved if the output was a
    single value. [#1934]
  * Fixed an issue in Background2D where if the box_size equals the
    input array shape the input data array could be modified.
    [#1935]
- Release 2.0.0
  ## General
  * The regions package is now an optional dependency. [#1813]
  * The minimum required Astropy is now 5.3. [#1839]
  * SciPy is now a required dependency. [#1880]
  * The minimum required SciPy is now 1.10. [#1880]
  * The minimum required NumPy is now 1.24. [#1881]
  * The minimum required Matplotlib is now 3.7. [#1881]
  * The minimum required GWCS is now 0.19. [#1881]
  * Importing tools from all subpackages now requires including the
    subpackage name. Also, PSF matching tools must now be imported
    from photutils.psf.matching instead of photutils.psf. [#1879,
    #1904]
  ## New Features
  ### photutils.aperture
  * The metadata in the tables generated by aperture_photometry and
    ApertureStats now include the aperture name and shape
    parameters. [#1849]
  * aperture_photometry and ApertureStats now accept supported
    regions.Region objects, i.e., those corresponding to circular,
    elliptical, and rectangular apertures. [#1813, #1852]
  * A new region_to_aperture convenience function has been added to
    convert supported regions.Region objects to Aperture objects.
    [#1813, #1852]
  ### photutils.background
  * The Background2D class has been refactored to significantly
    reduce its memory usage. In some cases, it is also
    significantly faster. [#1870, #1872, #1873]
  * A new npixels_mesh property was added to Background2D that
    gives a 2D array of the number of pixels used to compute the
    statistics in the low-resolution grid. [#1870]
  * A new npixels_map property was added to Background2D that gives
    a 2D array of the number of pixels used to compute the
    statistics in each mesh, resized to the shape of the input
    data. [#1871]
  ### photutils.centroids
  * Quantity arrays can now be input to centroid_1dg and
    centroid_2dg. [#1861]
  ### photutils.datasets
  * Added a new params_table_to_models function to create a list of
    models from a table of model parameters. [#1896]
  ### photutils.psf
  * Added new xy_bounds keyword to PSFPhotometry and
    IterativePSFPhotometry to allow one to bound the x and y model
    parameters during the fitting. [#1805]
  * The extract_stars function can now accept NDData inputs with
    uncertainty types other than weights. [#1821]
  * Added new GaussianPSF, CircularGaussianPSF, GaussianPRF,
    CircularGaussianPRF, and MoffatPSF PSF model classes. [#1838,
    #1898, #1918]
  * Added new AiryDiskPSF PSF model class. [#1843, #1918]
  * Added new CircularGaussianSigmaPRF PSF model class. [#1845,
    #1918]
  * The IntegratedGaussianPRF model now supports units. [#1838]
  * A new results attribute was added to PSFPhotometry to store the
    returned table of fit results. [#1858]
  * Added new fit_fwhm convenience function to estimate the FWHM of
    one or more sources in an image by fitting a circular 2D
    Gaussian PSF model. [#1859, #1887, #1899, #1918]
  * Added new fit_2dgaussian convenience function to fit a circular
    2D Gaussian PSF to one or more sources in an image. [#1859,
    #1887, #1899]
  * Added new ImagePSF model class to represent a PSF model as an
    image. [#1890]
  * The GriddedPSFModel model now has a bounding_box method to
    return the bounding box of the model. [#1891]
  * The GriddedPSFModel class has been refactored to significantly
    improve its performance. In typical PSF photometry use cases,
    it is now about 4 times faster than previous versions. [#1903]
  ### photutils.segmentation
  * Reduced the memory usage and improved the performance of source
    deblending with deblend_sources and SourceFinder. [#1924,
    #1925, #1926]
  * Improved the accuracy of the progress bar in deblend_sources
    and SourceFinder when using multiprocessing. Also added the
    source ID label number to the progress bar. [#1925, 1926]
  ## Bug Fixes
  ### photutils.aperture
  * Fixed a bug checking that the subpixels keyword is a strictly
    positive integer. [#1816]
  ### photutils.datasets
  * Fixed an issue in make_model_image where if the bbox_factor was
    input and the model bounding box did not have a factor keyword
    then an error would be raised. [#1921]
  ### photutils.detection
  * Fixed an issue where DAOStarFinder would not return any sources
    if the input threshold was set to zero due to the flux being
    non-finite. [#1882]
  ### photutils.isophote
  * Fixed a bug in build_ellipse_model where if
    high_harmonics=True, the harmonics were not correctly added to
    the model. [#1810]
  ### photutils.psf
  * Fixed a bug in make_psf_model where if the input model had
    amplitude units, an error would be raised. [#1894]
  ## API Changes
  * The sklearn version information has been removed from the meta
    attribute in output tables. sklearn was removed as an optional
    dependency in 1.13.0. [#1807]
  ### photutils.background
  * The Background2D background_mesh and background_rms_mesh
    properties will have units if the input data has units. [#1870]
  * The Background2D edge_method keyword is now deprecated. When
    edge_method is eventually removed, the 'pad' option will always
    be used. [#1870]
  * The Background2D background_mesh_masked,
    background_rms_mesh_masked, and mesh_nmasked properties are now
    deprecated. [#1870]
  * To reduce memory usage, Background2D no longer keeps a cached
    copy of the returned background and background_rms properties.
    [#1870]
  * The Background2D data, mask, total_mask, nboxes, box_npixels,
    and nboxes_tot attributes have been removed. [#1870]
  * The BkgZoomInterpolator grid_mode keyword is now deprecated.
    When grid_mode is eventually removed, the True option will
    always be used. [#1870]
  * The Background2D background, background_rms, background_mesh,
    and background_rms_mesh properties now have the same dtype as
    the input data. [#1922]
  ### photutils.centroids
  * For consistency with other fitting functions (including PSF
    fitting), the centroid_1dg and centroid_2dg functions now fit
    only a 1D or 2D Gaussian model, respectively, excluding any
    constant component. The input data are required to be
    background-subtracted. [#1861]
  * The fitter used in centroid_1dg and centroid_2dg was changed
    from LevMarLSQFitter to TRFLSQFitter. LevMarLSQFitter uses the
    legacy SciPy function scipy.optimize.leastsq, which is no
    longer recommended. [#1917]
  ### photutils.datasets
  * The deprecated make module has been removed. Instead of
    importing functions from photutils.datasets.make, import
    functions from photutils.datasets. [#1884]
  * The deprecated make_model_sources_image,
    make_gaussian_prf_sources_image, make_gaussian_sources_table,
    make_test_psf_data, make_random_gaussians_table, and
    make_imagehdu functions have been removed. [#1884]
  ### photutils.detection
  * The deprecated sky keyword in DAOStarFinder and IRAFStarFinder
    has been removed. Also, there will no longer be a sky column in
    the output table. [#1884]
  * The DAOStarFinder flux and mag columns were changed to give
    sensible values. Previously, the flux value was defined by the
    original DAOFIND algorithm as a measure of the intensity ratio
    of the amplitude of the best fitting Gaussian function at the
    object position to the detection threshold. A daofind_mag
    column was added for comparison to the original IRAF DAOFIND
    algorithm. [#1885]
  ### photutils.isophote
  * The build_ellipse_model function now raises a ValueError if the
    input isolist is empty. [#1809]
  ### photutils.profiles
  * The fitter used in RadialProfile to fit the profile with a
    Gaussian was changed from LevMarLSQFitter to TRFLSQFitter.
    LevMarLSQFitter uses the legacy SciPy function
    scipy.optimize.leastsq, which is no longer recommended. [#1899]
  ### photutils.psf
  * The IntegratedGaussianPRF class now must be initialized using
    keyword-only arguments. [#1838]
  * The IntegratedGaussianPRF class has been moved to the new
    functional_models module. [#1838]
  * The models and griddedpsfmodel modules have been renamed to
    image_models and gridded_models, respectively. [#1838]
  * The IntegratedGaussianPRF model class has been renamed to
    CircularGaussianPRF. IntegratedGaussianPRF is now deprecated.
    [#1845]
  * Some PSF tools have moved to new modules. The PRFAdapter class
    and the make_psf_model and grid_from_epsfs functions have been
    moved to the new model_helpers module. The make_psf_model_image
    function has been moved to the new simulations module. It is
    recommended that all of these tools be imported from
    photutils.psf without using the submodule name. [#1854, #1901]
  * The PSFPhotometry fit_results attribute has been renamed to
    fit_info. fit_results is now deprecated. [#1858]
  * The PRFAdapter class has been deprecated. Instead, use a
    ImagePSF model derived from the discretize_model function in
    astropy.convolution. [#1865]
  * The FittableImageModel and EPSFModel classes have been
    deprecated. Instead, use the new ImagePSF model class. [#1890]
  * The default fitter for PSFPhotometry, IterativePSFPhotometry,
    and EPSFFitter was changed from LevMarLSQFitter to
    TRFLSQFitter. LevMarLSQFitter uses the legacy SciPy function
    scipy.optimize.leastsq, which is no longer recommended. [#1899]
  * psf_shape is now an optional keyword in the make_model_image
    and make_residual_image methods of PSFPhotometry and
    IterativePSFPhotometry. The value defaults to using the model
    bounding box to define the shape and is required only if the
    PSF model does not have a bounding box attribute. [#1921]
  ### photutils.psf.matching
  * PSF matching tools must now be imported from
    photutils.psf.matching instead of photutils.psf. [#1904]
  ### photutils.segmentation
  * The SegmentationImage relabel_consecutive, resassign_label(s),
    keep_label(s), remove_label(s), remove_border_labels, and
    remove_masked_labels methods now keep the original dtype of the
    segmentation image instead of always changing it to int
    (int64). [#1878, #1923]
  * The detect_sources and deblend_sources functions now return a
    SegmentationImage instance whose data dtype is np.int32 instead
    of int (int64) unless more than (2**32 - 1) labels are needed.
    [#1878]

-------------------------------------------------------------------
Thu Jul 11 10:00:45 UTC 2024 - Ben Greiner <code@bnavigator.de>

- Update to 1.13.0
  ## General
  * scikit-learn has been removed as an optional dependency.
    [#1774]
  ## New Features
  ### photutils.datasets
  * Added a make_model_image function for generating simulated
    images with model sources. This function has more options and
    is significantly faster than the now-deprecated
    make_model_sources_image function. [#1759, #1790]
  * Added a make_model_params function to make a table of randomly
    generated model positions and fluxes for simulated sources.
    [#1766, #1796]
  ### photutils.detection
  * The find_peaks function now supports input arrays with units.
    [#1743]
  * The Table returned from find_peaks now has an id column that
    contains unique integer IDs for each peak. [#1743]
  * The DAOStarFinder, IRAFStarFinder, and StarFinder classes now
    support input arrays with units. [#1746]
  ### photutils.profiles
  * Added an unnormalize method to RadialProfile and CurveOfGrowth
    to return the profile to the state before any normalize calls
    were run. [#1732]
  * Added calc_ee_from_radius and calc_radius_from_ee methods to
    CurveOfGrowth. [#1733]
  ### photutils.psf
  * Added an include_localbkg keyword to the IterativePSFPhotometry
    make_model_image and make_residual_image methods. [#1756]
  * Added “x_fit”, “xfit”, “y_fit”, “yfit”, “flux_fit”, and
    “fluxfit” as allowed column names in the init_params table
    input to the PSF photometry objects. [#1765]
  * Added a make_psf_model_image function to generate a simulated
image from PSF models. [#1785, #1796] PSFPhotometry now has a new
fit_params attribute containing a table of the fit model parameters
and errors. [#1789]
  * The PSFPhotometry and IterativePSFPhotometry init_params table
    now allows the user to input columns for model parameters other
    than x, y, and flux. The column names must match the parameter
    names in the PSF model. They   * can also be suffixed with
    either the “_init” or “_fit” suffix. [#1793]
  ## Bug Fixes
  ### photutils.aperture
  * Fixed an issue in ApertureStats where in very rare cases the
    covariance calculation could take a long time. [#1788]
  ### photutils.background
  * No longer warn about NaNs in the data if those NaNs are masked
    in coverage_mask passed to Background2D. [#1729]
  ### photutils.psf
  * Fixed an issue where IterativePSFPhotometry would fail if the
    input data was a Quantity array. [#1746]
  * Fixed the IntegratedGaussianPRF class bounding_box limits to
    always be symmetric. [#1754]
  * Fixed an issue where IterativePSFPhotometry could sometimes
    issue a warning when merging tables if mode='all'. [#1761]
  * Fixed a bug where the first matching column in the init_params
    table was not used in PSFPhotometry and IterativePSFPhotometry.
    [#1765]
  * Fixed an issue where IterativePSFPhotometry could sometimes
    raise an error about non-overlapping data. [#1778]
  * Fixed an issue with unit handling in PSFPhotometry and
    IterativePSFPhotometry. [#1792]
  * Fixed an issue in IterativePSFPhotometry where the fit_results
    attribute was not cleared between repeated calls. [#1793]
  ### photutils.segmentation
  * Fixed an issue in SourceCatalog where in very rare cases the
    covariance calculation could take a long time. [#1788]
  ## API Changes
  * The photutils.test function has been removed. Instead use the
    pytest --pyargs photutils command. [#1725]
  ### photutils.datasets
  * The photutils.datasets subpackage has been reorganized and the
    make module has been deprecated. Instead of importing functions
    from photutils.datasets.make, import functions from
    photutils.datasets. [#1726]
  * The make_model_sources_image function has been deprecated in
    favor of the new make_model_image function. The new function
    has more options and is significantly faster. [#1759]
  * The randomly-generated optional noise in the simulated example
    images make_4gaussians_image and make_100gaussians_image is now
    slightly different. The noise sigma is the same, but the pixel
    values differ. [#1760]
  * The make_gaussian_prf_sources_image function is now deprecated.
    Use the make_model_psf_image function or the new
    make_model_image function instead. [#1762]
  * The make_gaussian_sources_table function now includes an “id”
    column and always returns both 'flux' and 'amplitude' columns.
    [#1763]
  * The make_model_sources_table function now includes an “id”
    column. [#1764]
  * The make_gaussian_sources_table function is now deprecated. Use
    the make_model_sources_table function instead. [#1764]
  * The make_test_psf_data function is now deprecated. Use the new
    make_model_psf_image function instead. [#1785]
  ### photutils.detection
  * The sky keyword in DAOStarFinder and IRAFStarFinder is now
    deprecated and will be removed in a future version. [#1747]
  * Sources that have non-finite properties (e.g., centroid,
    roundness, sharpness, etc.) are automatically excluded from the
    output table in DAOStarFinder, IRAFStarFinder, and StarFinder.
    [#1750]
  ### photutils.psf
  * PSFPhotometry and IterativePSFPhotometry now raise a ValueError
    if the input psf_model is not two-dimensional with n_inputs=2
    and n_outputs=1. [#1741]
  * The IntegratedGaussianPRF class bounding_box is now a method
    instead of an attribute for consistency with Astropy models.
    The method has a factor keyword to scale the bounding box. The
    default scale factor is 5.5 times sigma. [#1754]
  * The IterativePSFPhotometry make_model_image and
    make_residual_image methods no longer include the local
    background by default. This is a backwards-incompatible change.
    If the previous behavior is desired, set   *
    include_localbkg=True. [#1756]
  * IterativePSFPhotometry will now only issue warnings after all
    iterations are completed. [#1767]
  * The IterativePSFPhotometry psfphot attribute has been removed.
    Instead, use the fit_results attribute, which contains a list
    of PSFPhotometry instances for each fit iteration. [#1771]
  * The group_size column has been moved to come immediately after
    the group_id column in the output table from PSFPhotometry and
    IterativePSFPhotometry. [#1772]
  * The PSFPhotometry init_params table was moved from the
fit_results dictionary to an attribute. [#1773] Removed local_bkg,
psfcenter_indices, fit_residuals, npixfit, and nmodels keys from
the PSFPhotometry fit_results dictionary. [#1773]
  * Removed the deprecated BasicPSFPhotometry,
    IterativelySubtractedPSFPhotometry, DAOPhotPSFPhotometry,
    DAOGroup, DBSCANGroup, and GroupStarsBase, and NonNormalizable
    classes and the prepare_psf_model,   * get_grouped_psf_model,
    and subtract_psf functions. [#1774]
  * A ValueError is now raised if the shape of the error array does
    not match the data array when calling the PSF-fitting classes.
    [#1777]
  * The fit_param_errs key was removed from the PSFPhotometry
    fit_results dictionary. The fit parameter errors are now stored
    in the fit_params table. [#1789]
  * The cfit column in the PSFPhotometry and IterativePSFPhotometry
    result table will now be NaN for sources whose initial central
    pixel is masked. [#1789]

-------------------------------------------------------------------
Sun May  5 10:03:57 UTC 2024 - Ben Greiner <code@bnavigator.de>

- Update to 1.12
  ## General
  * The minimum required Python is now 3.10. [#1719]
  * The minimum required NumPy is now 1.23. [#1719]
  * The minimum required SciPy is now 1.8. [#1719]
  * The minimum required scikit-image is now 0.20. [#1719]
  * The minimum required scikit-learn is now 1.1. [#1719]
  * The minimum required pytest-astropy is now 0.11. [#1719]
  * The minimum required sphinx-astropy is now 1.9. [#1719]
  * NumPy 2.0 is supported.
  ## Bug Fixes
  ### photutils.background
  * No longer warn about NaNs in the data if those NaNs are masked
    in mask passed to Background2D. [#1712]
  ## API Changes
  ### photutils.utils
  * The default value for the ImageDepth mask_pad keyword is now
    set to 0. [#1714]

-------------------------------------------------------------------
Sun Feb 18 15:10:59 UTC 2024 - Ben Greiner <code@bnavigator.de>

- Update to 1.11.0
  ## New Features
  ### photutils.psf
  * An init_params table is now included in the PSFPhotometry
    fit_results dictionary. [#1681]
  * Added an include_localbkg keyword to the PSF photometry
    make_model_image and make_residual_image methods. [#1691]
  * Significantly reduced the memory usage of PSF photometry when
    using a GriddedPSFModel PSF model. [#1679]
  * Added a mode keyword to IterativePSFPhotometry for controlling
    the fitting mode. [#1708]
  ### photutils.datasets
  * Improved the performance of make_test_psf_data when generating
    random coordinates with a minimum separation. [#1668]
  ### photutils.segmentation
  * The SourceFinder npixels keyword can now be a tuple
    corresponding to the values used for the source finder and
    source deblender, respectively. [#1688]
  ### photutils.utils
  * Improved the performance of ImageDepth when generating random
    coordinates with a minimum separation. [#1668]
  ## Bug Fixes
  ### photutils.psf
  * Fixed an issue where PSF models produced by make_psf_model
    would raise an error with PSFPhotometry if the fit did not
    converge. [#1672]
  * Fixed an issue where GriddedPSFModel fixed model parameters
    were not respected when copying the model or fitting with the
    PSF photometry classes. [#1679]
  ## API Changes
  ### photutils.aperture
  * PixelAperture instances now raise an informative error message
    when positions is input as a zip object containing Astropy
    Quantity objects. [#1682]
  ### photutils.psf
  * The GridddedPSFModel string representations now include the
    model flux, x_0, and y_0 parameters. [#1680]
  * The PSF photometry make_model_image and make_residual_image
    methods no longer include the local background by default. This
    is a backwards-incompatible change. If the previous behavior is
    desired, set include_localbkg=True. [#1703]
  * The PSF photometry finder_results attribute is now returned as
    a QTable instead of a list of QTable. [#1704]
  * Deprecated the NonNormalizable custom warning class in favor of
    AstropyUserWarning. [#1710]
  ### photutils.segmentation
  * The SourceCatalog get_label and get_labels methods now raise a
    ValueError if any of the input labels are invalid. [#1694]

-------------------------------------------------------------------
Fri Nov 24 12:38:58 UTC 2023 - Ben Greiner <code@bnavigator.de>

- Update to 1.10.0
  ## General
  * The minimum required Astropy is now 5.1. [#1627]
  ## New Features
  ### photutils.datasets
  * Added a border_size keyword to make_test_psf_data. [#1665]
  * Improved the generation of random PSF positions in
    make_test_psf_data. [#1665]
  ### photutils.detection
  * Added a min_separation keyword to DAOStarFinder and
    IRAFStarFinder. [#1663]
  ### photutils.morphology
  * Added a wcs keyword to data_properties. [#1648]
  ### photutils.psf
  * The GriddedPSFModel plot_grid method now returns a
    matplotlib.figure.Figure object. [#1653]
  * Added the ability for the GriddedPSFModel read method to read
    FITS files generated by WebbPSF. [#1654]
  * Added “flux_0” and “flux0” as allowed flux column names in the
    init_params table input to the PSF photometry objects. [#1656]
  * PSF models output from prepare_psf_model can now be input into
    the PSF photometry classes. [#1657]
  * Added make_psf_model function for making a PSF model from a 2D
    Astropy model. Compound models are also supported. [#1658]
  * The GriddedPSFModel oversampling can now be different in the x
    and y directions. The oversampling attribute is now stored as a
    1D numpy.ndarray with two elements. [#1664]
  ### photutils.segmentation
  * The SegmentationImage make_source_mask method now uses a much
    faster implementation of binary dilation. [#1638]
  * Added a scale keyword to the SegmentationImage.to_patches()
    method to scale the sizes of the polygon patches. [#1641,
    #1646]
  * Improved the SegmentationImage imshow method to ensure that
    labels are plotted with unique colors. [#1649]
  * Added a imshow_map method to SegmentationImage for plotting
    segmentation images with a small number of non-consecutive
    labels. [#1649]
  * Added a reset_cmap method to SegmentationImage for resetting
    the colormap to a new random colormap. [#1649]
  ### photutils.utils
  * Improved the generation of random aperture positions in
    ImageDepth. [#1666]
  ## Bug Fixes
  ### photutils.aperture
  * Fixed an issue where the aperture plot method **kwargs were not
    reset to the default values when called multiple times. [#1655]
  ### photutils.psf
  * Fixed a bug where SourceGrouper would fail if only one source
    was input. [#1617]
  * Fixed a bug in GriddedPSFModel plot_grid where the grid could
    be plotted incorrectly if the input xygrid was not sorted in y
    then x order. [#1661]
  ### photutils.segmentation
  * Fixed an issue where deblend_sources and SourceFinder would
    raise an error if the contrast keyword was set to 1 (meaning no
    deblending). [#1636]
  * Fixed an issue where the vertices of the SegmentationImage
    polygons were shifted by 0.5 pixels in both x and y. [#1646]
  * API Changes
  * The metadata in output tables now contains a timestamp. [#1640]
  * Package versions in table metadata are now stored in the
    “versions” key. [#1640]
  * The order of the metadata in a table is now preserved when
    writing to a file. [#1640]
  ### photutils.psf
  * Deprecated the prepare_psf_model function. Use the new
    make_psf_model function instead. [#1658]
  * The GriddedPSFModel now stores the ePSF grid such that it is
    first sorted by y then by x. As a result, the order of the data
    and xygrid attributes may be different. [#1661]
  * The oversampling attribute is now stored as a 1D numpy.ndarray
    with two elements. [#1664]
  * A ValueError is raised if GriddedPSFModel is called with x and
    y arrays that have more than 2 dimensions. [#1662]
  ### photutils.segmentation
  * Removed the deprecated kernel keyword from SourceCatalog.
    [#1613]

-------------------------------------------------------------------
Fri Aug 25 14:57:13 UTC 2023 - Ben Greiner <code@bnavigator.de>

- Update to 1.9.0
  ## General
  * The minimum required Python is now 3.9. [#1569]
  * The minimum required NumPy is now 1.22. [#1572]
  ## New Features
  ### photutils.background
  * Added LocalBackground class for computing local backgrounds in
    a circular annulus aperture. [#1556]
  ### photutils.datasets
  * Added new make_test_psf_data function. [#1558, #1582, #1585]
  ### photutils.psf
  * Propagate measurement uncertainties in PSF fitting. [#1543]
  * Added new PSFPhotometry and IterativePSFPhotometry classes for
    performing PSF-fitting photometry. [#1558, #1559, #1563, #1566,
    #1567, #1581, #1586, #1590, #1594, #1603, #1604]
  * Added a new SourceGrouper class. [#1558, #1605]
  * Added a GriddedPSFModel fill_value attribute. [#1583]
  * Added a grid_from_epsfs function to make a GriddedPSFModel from
    ePSFs. [#1596]
  * Added a read method to GriddedPSFModel for reading “STDPSF”
    FITS files containing grids of ePSF models. [#1557]
  * Added a plot_grid method to GriddedPSFModel for plotting ePSF
    grids. [#1557]
  * Added a STDPSFGrid class for reading “STDPSF” FITS files
    containing grids of ePSF models and plotting the ePSF grids.
    [#1557]
  ## Bug Fixes
  ### photutils.aperture
  * Fixed a bug in the validation of PixelAperture positions.
    [#1553]
  ## API Changes
  ### photutils.psf
  * Deprecated the PSF photometry classes BasicPSFPhotometry,
    IterativelySubtractedPSFPhotometry, and DAOPhotPSFPhotometry.
    Use the new PSFPhotometry or IterativePSFPhotometry class
    instead. [#1578]
  * Deprecated the DAOGroup, DBSCANGroup, and GroupStarsBase
    classes. Use the new SourceGrouper class instead. [#1578]
  * Deprecated the get_grouped_psf_model and subtract_psf function.
    [#1578]

-------------------------------------------------------------------
Thu May 18 18:27:21 UTC 2023 - Ben Greiner <code@bnavigator.de>

- Update to 1.8.0
  ## New Features
  ### photutils.profiles
  * The RadialProfile and CurveOfGrowth radial bins can now be
    directly input, which also allows for non-uniform radial
    spacing. [#1540]
  ## Bug Fixes
  ### photutils.psf
  * Fixed an issue with the local model cache in GriddedPSFModel,
    significantly improving performance. [#1536]
  ## API Changes
  * Removed the deprecated axes keyword in favor of ax for
    consistency with other packages. [#1523]
  ## photutils.aperture
  * Removed the ApertureStats unpack_nddata method. [#1537]
  ## photutils.profiles
  * The API for defining the radial bins for the RadialProfile and
    CurveOfGrowth classes was changed. While the new API allows for
    more flexibility, unfortunately, it is not
    backwards-compatible. [#1540]
  ## photutils.segmentation
  * Removed the deprecated kernel keyword from detect_sources and
    deblend_sources. [#1524]
  * Deprecated the kernel keyword in SourceCatalog. [#1525]
  * Removed the deprecated outline_segments method from
    SegmentationImage. [#1526]
  * The SourceCatalog kron_params attribute is no longer returned
    as a ndarray. It is returned as a tuple. [#1531]

-------------------------------------------------------------------
Wed Apr 26 10:01:15 UTC 2023 - Ben Greiner <code@bnavigator.de>

- Update to 1.7.0
  ## General
  * The rasterio and shapely packages are now optional
    dependencies. [#1509]
  ## New Features
  ### photutils.aperture
  * Significantly improved the performance of aperture_photometry
    and the PixelAperture do_photometry method for large arrays.
    [#1485]
  * Significantly improved the performance of the PixelAperture
    area_overlap method, especially for large arrays. [#1490]
  ### photutils.profiles
  * Added a new profiles subpackage containing RadialProfile and
    CurveOfGrowth classes. [#1494, #1496, #1498, #1499]
  ### photutils.psf
  * Significantly improved the performance of evaluating and
    fitting GriddedPSFModel instances. [#1503]
  ### photutils.segmentation
  * Added a size keyword to the SegmentationImage make_source_mask
    method. [#1506]
  * Significantly improved the performance of SegmentationImage
    make_source_mask when using square footprints for source
    dilation. [#1506]
  * Added the polygons property and to_patches and plot_patches
    methods to SegmentationImage. [#1509]
  * Added polygon keyword to the Segment class. [#1509]
  ## Bug Fixes
  ### photutils.centroids
  * Fixed an issue where centroid_quadratic would sometimes fail if
    the input data contained NaNs. [#1495]
  ### photutils.detection
  * Fixed an issue with the starfinders (DAOStarFinder,
    IRAFStarFinder, and StarFinder) where an exception was raised
    if exclude_border=True and there were no detections. [#1512].
  ### photutils.isophote
  * Fixed a bug where the upper harmonics (a3, a4, b3, and b4) had
    the incorrect sign. [#1501]
  * Fixed a bug in the calculation of the upper harmonic errors
    (a3_err, a4_err, b3_err, and b4_err). [#1501].
  ### photutils.psf
  * Fixed an issue where the PSF-photometry progress bar was not
    shown. [#1517]
  * Fixed an issue where all PSF uncertainties were excluded if the
    last star group had no covariance matrix. [#1519]
  ### photutils.utils
  * Fixed a bug in the calculation of ImageCutout xyorigin when
    using the 'partial' mode when the cutout extended beyond the
    right or top edge. [#1508]
  ## API Changes
  ### photutils.aperture
  * The ApertureStats local_bkg keyword can now be broadcast for
    apertures with multiple positions. [#1504]
  ### photutils.centroids
  * The centroid_sources function will now raise an error if the
    cutout mask contains all True values. [#1516]
  ### photutils.datasets
  * Removed the deprecated load_fermi_image function. [#1479]
  ### photutils.psf
  * Removed the deprecated sandbox classes DiscretePRF and
    Reproject. [#1479]
  ### photutils.segmentation
  * Removed the deprecated make_source_mask function in favor of
    the SegmentationImage.make_source_mask method. [#1479]
  * The SegmentationImage imshow method now uses "nearest"
    interpolation instead of "none" to avoid rendering issues with
    some backends. [#1507]
  * The repr() notebook output for the Segment class now includes a
    SVG polygon representation of the segment if the rasterio and
    shapely packages are installed. [#1509]
  * Deprecated the SegmentationImage outline_segments method. Use
    the plot_patches method instead. [#1509]
- Drop photutils-pr1484-no-setuptools.patch

-------------------------------------------------------------------
Thu Dec 22 15:05:47 UTC 2022 - Ben Greiner <code@bnavigator.de>

- Update to 1.6.0
  ## General
  * Following NEP 29, the minimum required Numpy is now 1.20.
    [#1442]
  * The minimum required Matplotlib is now 3.3.0. [#1442]
  * The minimum required scikit-image is now 0.18.0. [#1442]
  * The minimum required scikit-learn is now 1.0. [#1442]
  ## New Features
  ### photutils.aperture
  * The ApertureStats class now accepts astropy NDData objects as
    input. [#1409]
  * Improved the performance of aperture photometry by 10-25%
    (depending on the number of aperture positions). [#1438]
  ### photutils.psf
  * Added a progress bar for fitting PSF photometry [#1426]
  * Added a subshape keyword to the PSF-fitting classes to define
    the shape over which the PSF is subtracted. [#1477]
  ### photutils.segmentation
  * Added the ability to slice SegmentationImage objects. [#1413]
  * Added mode and fill_value keywords to SourceCatalog
    make_cutouts method. [#1420]
  * Added segment_area source property and wcs, localbkg_width,
    apermask_method, and kron_params attributes to SourceCatalog.
    [#1425]
  * Added the ability to use Quantity arrays with detect_threshold,
    detect_sources, deblend_sources, and SourceFinder. [#1436]
  * The progress bar used when deblending sources now is prepended
    with “Deblending”. [#1439]
  * Added “windowed” centroids to SourceCatalog. [#1447, #1468]
  * Added quadratic centroids to SourceCatalog. [#1467, #1469]
  * Added a progress_bar option to SourceCatalog for displaying
    progress bars when calculating some source properties. [#1471]
  ### photutils.utils
  * Added xyorigin attribute to CutoutImage. [#1419]
  * Added ImageDepth class. [#1434]
  ## Bug Fixes
  ### photutils.aperture
  * Fixed a bug in the PixelAperture area_overlap method so that
    the returned value does not inherit the data units. [#1408]
  * Fixed an issue in ApertureStats get_ids for the case when the
    ID numbers are not sorted (due to slicing). [#1423]
  ### photutils.datasets
  * Fixed a bug in the various load functions where FITS files were
    not closed. [#1455]
  ### photutils.segmentation
  * Fixed an issue in the SourceCatalog kron_photometry,
    make_kron_apertures, and plot_kron_apertures methods where the
    input minimum Kron and circular radii would not be applied.
    Instead the instance-level minima would always be used. [#1421]
  * Fixed an issue where the SourceCatalog plot_kron_apertures
    method would raise an error for a scalar SourceCatalog. [#1421]
  * Fixed an issue in SourceCatalog get_labels for the case when
    the labels are not sorted (due to slicing). [#1423]
  ## API Changes
  * Deprecated axes keyword in favor of ax for consistency with
    other packages. [#1432]
  * Importing tools from all subpackages now requires including the
    subpackage name.
  ### photutils.aperture
  * Inputting PixelAperture positions as an Astropy Quantity in
    pixel units is no longer allowed. [#1398]
  * Inputting SkyAperture shape parameters as an Astropy Quantity
    in pixel units is no longer allowed. [#1398]
  * Removed the deprecated BoundingBox as_patch method. [#1462]
  ### photutils.centroids
  * Removed the deprecated oversampling keyword in centroid_com.
    [#1398]
  ### photutils.datasets
  * Deprecated the load_fermi_image function. [#1455]
  ### photutils.psf
  * Removed the deprecated flux_residual_sigclip keyword in
    EPSFBuilder. Use sigma_clip instead. [#1398]
  * PSF photometry classes will no longer emit a RuntimeWarning if
    the fitted parameter variance is negative. [#1458]
  ### photutils.segmentation
  * Removed the deprecated sigclip_sigma and sigclip_iters keywords
    in detect_threshold. Use the sigma_clip keyword instead.
    [#1398]
  * Removed the mask_value, sigclip_sigma, and sigclip_iters
    keywords in detect_threshold. Use the mask or sigma_clip
    keywords instead. [#1398]
  * Removed the deprecated the filter_fwhm and filter_size keywords
    in make_source_mask. Use the kernel keyword instead. [#1398]
  * If detection_cat is input to SourceCatalog, then the detection
    catalog source centroids and morphological/shape properties
    will be returned instead of calculating them from the input
    data. Also, if detection_cat is input, then the input wcs,
    apermask_method, and kron_params keywords will be ignored.
    [#1425]
- Add photutils-pr1484-no-setuptools.patch
  gh#astropy/photutils#1484

-------------------------------------------------------------------
Mon Aug  1 17:22:10 UTC 2022 - Ben Greiner <code@bnavigator.de>

- Update to 1.5.0
  General
  * Added tqdm as an optional dependency. [#1364]
  New Features
  * photutils.psf
    - Added a mask keyword when calling the PSF-fitting classes.
      [#1350, #1351]
    - The EPSFBuilder progress bar will use tqdm if the optional
      package is installed. [#1367]
  * photutils.segmentation
    - Added SourceFinder class, which is a convenience class
      combining detect_sources and deblend_sources. [#1344]
    - Added a sigma_clip keyword to detect_threshold. [#1354]
    - Added a make_source_mask method to SegmentationImage. [#1355]
    - Added a make_2dgaussian_kernel convenience function. [#1356]
    - Allow SegmentationImage.make_cmap background_color to be in
      any matplotlib color format. [#1361]
    - Added an imshow convenience method to SegmentationImage.
      [#1362]
    - Improved performance of deblend_sources. [#1364]
    - Added a progress_bar keyword to deblend_sources. [#1364]
    - Added a 'sinh' mode to deblend_sources. [#1368]
    - Improved the resetting of cached SegmentationImage properties
      so that custom (non-cached) attributes can be kept. [#1368]
    - Added a nproc keyword to enable multiprocessing in
      deblend_sources and SourceFinder. [#1372]
    - Added a make_cutouts method to SourceCatalog for making
      custom-shaped cutout images. [#1376]
    - Added the ability to set a minimum unscaled Kron radius in
      SourceCatalog. [#1381]
  * photutils.utils
    - Added a circular_footprint convenience function. [#1355]
    - Added a CutoutImage class. [#1376]
  Bug Fixes
  * photutils.psf
    - Fixed a warning message in EPSFFitter. [#1382]
  * photutils.segmentation
    - Fixed an issue in generating watershed markers used for
      source deblending. [#1383]
  API Changes
  * photutils.centroids
    - Changed the axes order of oversampling keyword in
      centroid_com when input as a tuple. [#1358]
    - Deprecated the oversampling keyword in centroid_com. [#1377]
  * photutils.psf
    - Invalid data values (i.e., NaN or inf) are now automatically
      masked when performing PSF fitting. [#1350]
    - Deprecated the sandbox classes DiscretePRF and Reproject.
      [#1357]
    - Changed the axes order of oversampling keywords when input as
      a tuple. [#1358]
    - Removed the unused shift_val keyword in EPSFBuilder and
      EPSFModel. [#1377]
    - Renamed the flux_residual_sigclip keyword (now deprecated) to
      sigma_clip in EPSFBuilder. [#1378]
    - The EPSFBuilder progress bar now requires that the optional
      tqdm package be installed. [#1379]
    - The tools in the PSF package now require keyword-only
      arguments. [#1386]
  * photutils.segmentation
    - Removed the deprecated circular_aperture method from
      SourceCatalog. [#1329]
    - The SourceCatalog plot_kron_apertures method now sets a
      default kron_apers value. [#1346]
    - deblend_sources no longer allows an array to be input as a
      segmentation image. It must be a SegmentationImage object.
      [#1347]
    - SegmentationImage no longer allows array-like input. It must
      be a numpy ndarray. [#1347]
    - Deprecated the sigclip_sigma and sigclip_iters keywords in
      detect_threshold. Use the sigma_clip keyword instead. [#1354]
    - Deprecated the make_source_mask function in favor of the
      SegmentationImage.make_source_mask method. [#1355]
    - Deprecated the kernel keyword in detect_sources and
      deblend_sources. Instead, if filtering is desired, input a
      convolved image directly into the data parameter. [#1365]
    - Sources with a data minimum of zero are now treated the same
      as negative minima (i.e., the mode is changed to “linear”)
      for the “exponential” deblending mode. [#1368]
    - A single warning (as opposed to 1 per source) is now raised
      about negative/zero minimum data values using the
      ‘exponential’ deblending mode. The affected labels is
      available in a new “info” attribute. [#1368]
    - If the mode in deblend_sources is “exponential” or “sinh” and
      there are too many potential deblended sources within a given
      source (watershed markers), a warning will be raised and the
      mode will be changed to “linear”. [#1369]
    - The SourceCatalog make_circular_apertures and
      make_kron_apertures methods now return a single aperture
      (instead of a list with one item) for a scalar SourceCatalog.
      [#1376]
    - The SourceCatalog kron_params keyword now has an optional
      third item representing the minimum circular radius. [#1381]
    - The SourceCatalog kron_radius is now set to the minimum Kron
      radius (the second element of kron_params) if the data or
      radially weighted data sum to zero. [#1381]
  * photutils.utils
    - The colormap returned from make_random_cmap now has colors in
      RGBA format. [#1361]

-------------------------------------------------------------------
Mon Mar 28 17:36:19 UTC 2022 - Ben Greiner <code@bnavigator.de>

- Update to 1.4.0 
  New Features
  * photutils.aperture
    * Added a copy method to Aperture objects. [#1304]
    * Added the ability to compare Aperture objects for equality.
      [#1304]
    * The theta keyword for EllipticalAperture, EllipticalAnnulus,
      RectangularAperture, and RectangularEllipse can now be an
      Astropy Angle or Quantity in angular units. [#1308]
    * Added an ApertureStats class for computing statistics of
      unmasked pixels within an aperture. [#1309, #1314, #1315,
      #1318]
    * Added a dtype keyword to the ApertureMask to_image method.
      [#1320]
  * photutils.background
    * Added an alpha keyword to the Background2D.plot_meshes
      method. [#1286]
    * Added a clip keyword to the BkgZoomInterpolator class.
      [#1324]
  * photutils.segmentation
    * Added SegmentationImage cmap attribute containing a default
      colormap. [#1319]
    * Improved the performance of SegmentationImage and
      SourceCatalog, especially for large data arrays. [#1320]
    * Added a convolved_data keyword to SourceCatalog. This is
      recommended instead of using the kernel keyword. [#1321]
  Bug Fixes
  * photutils.aperture
    * Fixed a bug in aperture_photometry where an error was not
      raised if the data and error arrays have different units.
      [#1285].
  * photutils.background
    * Fixed a bug in Background2D where using the pad edge method
      would result in incorrect image padding if only one of the
      axes needed padding. [#1292]
  * photutils.centroid
    * Fixed a bug in centroid_sources where setting error, xpeak,
      or ypeak to None would result in an error. [#1297]
    * Fixed a bug in centroid_quadratic where inputting a mask
      would alter the input data array. [#1317]
  * photutils.segmentation
    * Fixed a bug in SourceCatalog where a UFuncTypeError would be
      raised if the input data had an integer dtype [#1312].
  API Changes
  * photutils.aperture
    * A ValueError is now raised if non-positive sizes are input to
      sky-based apertures. [#1295]
    * The BoundingBox.plot() method now returns a
      matplotlib.patches.Patch object. [#1305]
    * Inputting PixelAperture positions as an Astropy Quantity in
      pixel units is deprecated. [#1310]
    * Inputting SkyAperture shape parameters as an Astropy Quantity
      in pixel units is deprecated. [#1310]
  * photutils.background
    * Removed the deprecated background_mesh_ma and
      background_rms_mesh_ma Background2D properties. [#1280]
    * By default, BkgZoomInterpolator uses clip=True to prevent the
      interpolation from producing values outside the given input
      range. If backwards-compatiblity is needed with older
      Photutils versions, set clip=False. [#1324]
  * photutils.centroid
    * Removed the deprecated centroid_epsf and gaussian1d_moments
      functions. [#1280]
    * Importing tools from the centroids subpackage now requires
      including the subpackage name. [#1280]
  * photutils.morphology
    * Importing tools from the morphology subpackage now requires
      including the subpackage name. [#1280]
  * photutils.segmentation
    * Removed the deprecated source_properties function and the
      SourceProperties and LegacySourceCatalog classes. [#1280]
    * Removed the deprecated the filter_kernel keyword in the
      detect_sources, deblend_sources, and make_source_mask
      functions. [#1280]
    * A TypeError is raised if the input array to SegmentationImage
      does not have integer type. [#1319]
    * A SegmentationImage may contain an array of all zeros.
      [#1319]
    * Deprecated the mask_value keyword in detect_threshold. Use
      the mask keyword instead. [#1322]
    * Deprecated the filter_fwhm and filter_size keywords in
      make_source_mask. Use the kernel keyword instead. [#1322]

-------------------------------------------------------------------
Fri Dec 24 14:06:32 UTC 2021 - Ben Greiner <code@bnavigator.de>

- Update to 1.3.0
  General
  * The metadata in output tables now contains version information
    for all dependencies. [#1274]
  New Features
  * photutils.centroid
    * Extra keyword arguments can be input to centroid_sources that
      are then passed on to the centroid_func if supported.
      [#1276,#1278]
  * photutils.segmentation
    * Added copy method to SourceCatalog. [#1264]
    * Added kron_photometry method to SourceCatalog. [#1264]
    * Added add_extra_property, remove_extra_property,
      remove_extra_properties, and rename_extra_property methods
      and extra_properties attribute to SourceCatalog. [#1264,
      #1268]
    * Added name and overwrite keywords to SourceCatalog
      circular_photometry and fluxfrac_radius methods. [#1264]
    * SourceCatalog fluxfrac_radius was improved for cases where
      the source flux doesn't monotonically increase with
      increasing radius. [#1264]
    * Added meta and properties attributes to SourceCatalog.
      [#1268]
    * The SourceCatalog output table (using to_table) meta
      dictionary now includes a field for the date/time. [#1268]
    * Added SourceCatalog make_kron_apertures method. [#1268]
    * Added SourceCatalog plot_circular_apertures and
      plot_kron_apertures methods. [#1268]
  Bug fixes
  * photutils.segmentation
    * If detection_catalog is input to SourceCatalog then the
      detection centroids are used to calculate the
      circular_aperture, circular_photometry, and fluxfrac_radius.
      [#1264]
    * Units are applied to SourceCatalog circular_photometry output
      if the input data has units. [#1264]
    * SourceCatalog circular_photometry returns scalar values if
      catalog is scalar. [#1264]
    * SourceCatalog fluxfrac_radius returns a Quantity with pixel
      units. [#1264]
    * Fixed a bug where the SourceCatalog detection_catalog was not
      indexed/sliced when SourceCatalog was indexed/sliced. [#1268]
    * SourceCatalog circular_photometry now returns NaN for
      completely-masked sources. [#1268]
    * SourceCatalog kron_flux is always NaN for sources where
      kron_radius is NaN. [#1268]
    * SourceCatalog fluxfrac_radius now returns NaN if kron_flux is
      zero. [#1268]
  API changes
  * photutils.centroids
    * A ValueError is now raised in centroid_sources if the input
      xpos or ypos is outside of the input data. [#1276]
    * A ValueError is now raised in centroid_quadratic if the input
      xpeak or ypeak is outside of the input data. [#1276]
    * NaNs are now returned from centroid_sources where the
      centroid failed. This is usually due to a box_size that is
      too small when using a fitting-based centroid function.
      [#1276]
  * photutils.segmentation
    * Renamed the SourceCatalog circular_aperture method to
      make_circular_apertures. The old name is deprecated. [#1268]
    * The SourceCatalog kron_params keyword must have a minimum
      circular radius that is greater than zero. The default value
      is now 1.0. [#1268]
    * detect_sources now uses astropy.convolution.convolve, which
      allows for masking pixels. [#1269]

-------------------------------------------------------------------
Sun Sep 26 14:11:48 UTC 2021 - Ben Greiner <code@bnavigator.de>

- Update to 1.2.0
  * The minimum required scipy version is 1.6.0 [#1239]
  photutils.aperture
  * Added a mask keyword to the area_overlap method. [#1241]
  photutils.background
  * Improved the performance of Background2D by up to 10-50% when
    the optional bottleneck package is installed. [#1232]
  * Added a masked keyword to the background classes
    MeanBackground, MedianBackground, ModeEstimatorBackground,
    MMMBackground, SExtractorBackground,
    BiweightLocationBackground, StdBackgroundRMS,
    MADStdBackgroundRMS, and BiweightScaleBackgroundRMS. [#1232]
  * Enable all background classes to work with Quantity inputs.
    [#1233]
  * Added a markersize keyword to the Background2D method
    plot_meshes. [#1234]
  * Added __repr__ methods to all background classes. [#1236]
  * Added a grid_mode keyword to BkgZoomInterpolator. [#1239]
  photutils.detection
  * Added a xycoords keyword to DAOStarFinder and IRAFStarFinder.
    [#1248]
  photutils.psf
  * Enabled the reuse of an output table from BasicPSFPhotometry
    and its subclasses as an initial guess for another photometry
    run. [#1251]
  * Added the ability to skip the group_maker step by inputing an
    initial guess table with a group_id column. [#1251]
  photutils.aperture
  * Fixed a bug when converting between pixel and sky apertures
    with a gwcs object. [#1221]
  photutils.background
  * Fixed an issue where Background2D could fail when using the
    'pad' edge method. [#1227]
  photutils.detection
  * Fixed the DAOStarFinder import deprecation message. [#1195]
  photutils.morphology
  * Fixed an issue in data_properties where a scalar background
    input would raise an error. [#1198]
  photutils.psf
  * Fixed an issue in prepare_psf_model when xname or yname was
    None where the model offsets were applied in the wrong
    direction, resulting in the initial photometry guesses not
    being improved by the fit. [#1199]
  photutils.segmentation
  * Fixed an issue in SourceCatalog where the user-input mask was
    ignored when apermask_method='correct' for Kron-related
    calculations. [#1210]
  * Fixed an issue in SourceCatalog where the segment array could
    incorrectly have units. [#1220]
  photutils.utils
  * Fixed an issue in ShepardIDWInterpolator to allow its
    initialization with scalar data values and coordinate arrays
    having more than one dimension. [#1226]
  API changes
  photutils.aperture
  * The ApertureMask.get_values() function now returns an empty
    array if there is no overlap with the data. [#1212]
  * Removed the deprecated BoundingBox.slices and PixelAperture.
    bounding_boxes attributes. [#1215]
  photutils.background
  * Invalid data values (i.e., NaN or inf) are now automatically
    masked in Background2D. [#1232]
  * The background classes MeanBackground, MedianBackground,
    ModeEstimatorBackground, MMMBackground, SExtractorBackground,
    BiweightLocationBackground, StdBackgroundRMS,
    MADStdBackgroundRMS, and BiweightScaleBackgroundRMS now return
    by default a numpy.ndarray with np.nan values representing
    masked pixels instead of a masked array. A masked array can be
    returned by setting masked=True. [#1232]
  * Deprecated the Background2D attributes background_mesh_ma and
    background_rms_mesh_ma. They have been renamed to
    background_mesh_masked and background_rms_mesh_masked. [#1232]
  * By default, BkgZoomInterpolator now uses grid_mode=True. For
    zooming 2D images, this keyword should be set to True, which
    makes the interpolator’s behavior consistent with scipy.
    ndimage.map_coordinates, skimage.transform.resize, and OpenCV
    (cv2.resize). If backwards-compatiblity is needed with older
    Photutils’ versions, set grid_mode=False. [#1239]
  photutils.centroid
  * Deprecated the gaussian1d_moments and centroid_epsf functions.
    [#1240]
  photutils.datasets
  * Removed the deprecated random_state keyword in the
    apply_poisson_noise, make_noise_image,
    make_random_models_table, and make_random_gaussians_table
    functions. [#1244]
  * make_random_models_table and make_random_gaussians_table now
    return an astropy QTable with version metadata. [#1247]
  photutils.detection
  * DAOStarFinder, IRAFStarFinder, and find_peaks now return an
    astropy QTable with version metadata. [#1247]
  * The StarFinder label column was renamed to id for consistency
    with the other star finder classes. [#1254]
  photutils.isophote
  * The Isophote to_table method nows return an astropy QTable
    with version metadata. [#1247]
  photutils.psf
  * BasicPSFPhotometry, IterativelySubtractedPSFPhotometry, and
    DAOPhotPSFPhotometry now return an astropy QTable with version
    metadata. [#1247]
  photutils.segmentation
  * Deprecated the filter_kernel keyword in the detect_sources,
    deblend_sources, and make_source_mask functions. It has been
    renamed to simply kernel for consistency with SourceCatalog.
    [#1242]
  * Removed the deprecated random_state keyword in the make_cmap
    method. [#1244]
  * The SourceCatalog to_table method nows return an astropy
    QTable with version metadata. [#1247]
  photutils.utils
  * Removed the deprecated check_random_state function. [#1244]
  * Removed the deprecated random_state keyword in the
    make_random_cmap function. [#1244]

-------------------------------------------------------------------
Sat Mar 20 18:02:02 UTC 2021 - Ben Greiner <code@bnavigator.de>

- Update ot Version 1.1.0
  General
  -------
  * The minimum required python version is 3.7. [#1120]
  New Features
  ------------
  photutils.aperture
  * The PixelAperture.plot() method now returns a list of
    matplotlib.patches.Patch objects. [#923]
  * Added an area_overlap method for PixelAperture objects that
    gives the overlapping area of the aperture on the data. [#874]
  * Added a get_overlap_slices method and a center attribute to
    BoundingBox. [#1157]
  * Added a get_values method to ApertureMask that returns a 1D
    array of mask-weighted values. [#1158, #1161]
  * Added get_overlap_slices method to ApertureMask. [#1165]
  photutils.background
  * The Background2D class now accepts astropy NDData,
    CCDData, and Quantity objects as data inputs. [#1140]
  photutils.detection
  * Added a StarFinder class to detect stars with a user-defined
    kernel. [#1182]
  photutils.isophote
  * Added the ability to specify the output columns in the
    IsophoteList to_table method. [#1117]
  photutils.psf
  * The EPSFStars class is now usable with multiprocessing. 
    [#1152]
  * Slicing EPSFStars now returns an EPSFStars instance. [#1185]
  photutils.segmentation
  * Added a modified, significantly faster, SourceCatalog class.
    [#1170, #1188, #1191]
  * Added circular_aperture and circular_phometry methods to the
    SourceCatalog class. [#1188]
  * Added fwhm property to the SourceCatalog class. [#1191]
  * Added fluxfrac_radius method to the SourceCatalog class.
    [#1192]
  * Added a bbox attribute to SegmentationImage. [#1187]
  Bug Fixes
  ---------
  photutils.aperture
  * Slicing a scalar Aperture object now raises an informative
    error
    message. [#1154]
  * Fixed an issue where ApertureMask.multiply fill_value was
    not applied to pixels outside of the aperture mask, but within the
    aperture bounding box. [#1158]
  * Fixed an issue where ApertureMask.cutout would raise an error
    if fill_value was non-finite and the input array was integer
    type. [#1158]
  * Fixed an issue where RectangularAnnulus with a non-default
    h_in would give an incorrect ApertureMask. [#1160]
  photutils.isophote
  * Fix computation of gradient relative error when gradient=0.
    [#1180]
  photutils.psf
  * Fixed a bug in EPSFBuild where a warning was raised if the
    input smoothing_kernel was an numpy.ndarray. [#1146]
  * Fixed a bug that caused photometry to fail on an EPSFmodel
    with multiple stars in a group. [#1135]
  * Added a fallback aperture_radius for PSF models without a FWHM
    or sigma attribute, raising a warning. [#740]
  photutils.segmentation
  * Fixed SourceProperties local_background to work with
    Quantity data inputs. [#1162]
  * Fixed SourceProperties local_background for sources near the
    image edges. [#1162]
  * Fixed SourceProperties kron_radius for sources that are
    completely masked. [#1164]
  * Fixed SourceProperties Kron properties for sources near the
    image edges. [#1167]
  * Fixed SourceProperties Kron mask correction. [#1167]
  API changes
  -----------
  photutils.aperture
  * Deprecated the BoundingBox slices attribute. Use the
    get_overlap_slices method instead. [#1157]
  photutils.centroid
  * Removed the deprecated fit_2dgaussian function and
    GaussianConst2D class. [#1147]
  * Importing tools from the centroids subpackge without
    including the subpackage name is deprecated. [#1190]
  photutils.morphology
  * Importing tools from the morphology subpackge without
    including the subpackage name is deprecated. [#1190]
  photutils.segmentation
  * Deprecated the "mask_all" option in the SourceProperties
    kron_params keyword. [#1167]
  * Deprecated source_properties, SourceProperties, and
    LegacySourceCatalog.  Use the new SourceCatalog function
    instead. [#1170]
  * The detect_threshold function was moved to the segmentation
    subpackage. [#1171]
  * Removed the ability to slice SegmentationImage. Instead slice
    the segments attribute. [#1187]

-------------------------------------------------------------------
Wed Jan 20 23:50:38 UTC 2021 - Benjamin Greiner <code@bnavigator.de>

- Update to Version 1.0.2
  General
  ------
  photutils.background
  * Improved the performance of Background2D (e.g., by a 
    factor of ~4 with 2048x2048 input arrays when using the 
    default interpolator). [#1103, #1108]
  Bug Fixes
  --------
  photutils.background
  * Fixed a bug with Background2D where using 
    BkgIDWInterpolator would give incorrect results. 
    [#1104]
  photutils.isophote
  * Corrected calculations of upper harmonics and their 
    errors [#1089]
  * Fixed bug that caused an infinite loop when the sample 
    extracted from an image has zero length. [#1129]
  * Fixed a bug where the default fixed_parameters in 
    EllipseSample.update() were not defined. [#1139]
  photutils.psf
  * Fixed a bug where very incorrect PSF-fitting 
    uncertainties could be returned when the astropy fitter 
    did not return fit uncertainties. [#1143]
  photutils.segmentation
  * Fixed an issue where negative Kron radius values could 
    be returned, which would cause an error when 
    calculating Kron fluxes. [#1132]
  * Fixed an issue where an error was raised with 
    SegmentationImage.remove_border_labels() with 
    relabel=True when no segments remain. [#1133]
  photutils.psf
  * Changed the default recentering_func in EPSFBuilder, to 
    avoid convergence issues. [#1144]
- Drop photutils-ease-background2d-tests.patch fixed upstream
  gh#astropy/photutils#1145 
 
-------------------------------------------------------------------
Fri Jan 15 14:57:42 UTC 2021 - Benjamin Greiner <code@bnavigator.de>

- Add photutils-ease-background2d-tests.patch -- ease precision
  tolerance in background 2D tests gh#astropy/photutils#1145 

-------------------------------------------------------------------
Fri Sep 25 11:41:40 UTC 2020 - Benjamin Greiner <code@bnavigator.de>

- Update to Version 1.0.1
  Bug Fixes
  * photutils.psf
    Fixed checks on oversampling factors. [#1086] 

-------------------------------------------------------------------
Wed Sep 23 09:24:36 UTC 2020 - Benjamin Greiner <code@bnavigator.de>

- Update to Version 1.0.0
  General
  * The minimum required python version is 3.6. [#952]
  * The minimum required astropy version is 4.0. [#1081]
  * The minimum required numpy version is 1.17. [#1079]
  * Removed astropy-helpers and updated the package 
    infrastructure as described in Astropy APE 17. [#915]
  New Features
  * photutils.aperture
  * Added b_in as an optional ellipse annulus keyword. [#1070]
  * Added h_in as an optional rectangle annulus keyword. 
    [#1070]
  * photutils.background
  * Added coverage_mask and fill_value keyword options to 
    Background2D. [#1061]
  * photutils.centroids
  * Added quadratic centroid estimator function 
    (centroid_quadratic). [#1067]
  * photutils.psf
  * Added the ability to use odd oversampling factors in 
    EPSFBuilder. [#1076]
  * photutils.segmentation
  * Added Kron radius, flux, flux error, and aperture to 
    SourceProperties. [#1068]
  * Added local background to SourceProperties. [#1075]
  Bug Fixes
  * photutils.isophote
  * Fixed a typo in the calculation of the b4 higher-order 
    harmonic coefficient in build_ellipse_model. [#1052]
  * Fixed a bug where build_ellipse_model falls into an 
    infinite loop when the pixel to fit is outside of the 
    image. [#1039]
  * Fixed a bug where build_ellipse_model falls into an 
    infinite loop under certain image/parameters input 
    combinations. [#1056]
  * photutils.psf
  * Fixed a bug in subtract_psf caused by using a fill_value of 
    np.nan with an integer input array. [#1062]
  * photutils.segmentation
  * Fixed a bug where source_properties would fail with 
    unitless gwcs.wcs.WCS objects. [#1020]
  * photutils.utils
  * The effective_gain parameter in calc_total_error can now be 
    zero (or contain zero values). [#1019]
  API changes
  * photutils.aperture
  * Aperture pixel positions can no longer be shaped as 2xN. 
    [#953]
  * Removed the deprecated units keyword in aperture_photometry 
    and PixelAperture.do_photometry. [#953]
  * PrimaryHDU, ImageHDU, and HDUList can no longer be input to 
    aperture_photometry. [#953]
  * Removed the deprecated the Aperture mask_area method. 
    [#953]
  * Removed the deprecated Aperture plot keywords ax and 
    indices. [#953]
  * photutils.background
  * Removed the deprecated ax keyword in 
    Background2D.plot_meshes. [#953]
  * Background2D keyword options can not be input as positional 
    arguments. [#1061]
  * photutils.centroids
  * centroid_1dg, centroid_2dg, gaussian1d_moments, 
    fit_2dgaussian, and GaussianConst2D have been moved to a 
    new photutils.centroids.gaussian module. [#1064]
  * Deprecated fit_2dgaussian and GaussianConst2D. [#1064]
  * photutils.datasets
  * Removed the deprecated type keyword in make_noise_image. 
    [#953]
  * Renamed the random_state keyword (deprecated) to seed in 
    apply_poisson_noise, make_noise_image, 
    make_random_models_table, and make_random_gaussians_table 
    functions. [#1080]
  * photutils.detection
  * Removed the deprecated snr keyword in detect_threshold. 
    [#953]
  * photutils.psf
  * Added flux_residual_sigclip as an input parameter, allowing 
    for custom sigma clipping options in EPSFBuilder. [#984]
  * Added extra_output_cols as a parameter to 
    BasicPSFPhotometry, IterativelySubtractedPSFPhotometry and 
    DAOPhotPSFPhotometry. [#745]
  * photutils.segmentation
  * Removed the deprecated SegmentationImage methods cmap and 
    relabel. [#953]
  * Removed the deprecated SourceProperties values and coords 
    attributes. [#953]
  * Removed the deprecated xmin/ymin and xmax/ymax properties. 
    [#953]
  * Removed the deprecated snr and mask_value keywords in 
    make_source_mask. [#953]
  * Renamed the random_state keyword (deprecated) to seed in 
    the make_cmap method. [#1080]
  * photutils.utils
  * Removed the deprecated random_cmap, mask_to_mirrored_num, 
    get_version_info, filter_data, and std_blocksum functions. 
    [#953]
  * Removed the deprecated wcs_helpers functions 
    pixel_scale_angle_at_skycoord, assert_angle_or_pixel, 
    assert_angle, and pixel_to_icrs_coords. [#953]
  * Deprecated the check_random_state function. [#1080]
  * Renamed the random_state keyword (deprecated) to seed in 
    the make_random_cmap function. [#1080] 
- Drop patches merged upstream
  * 0001-aperture-mask-test-assert-almost-equal.patch
  * photutils-pr1041-update-watershed-import.patch
  
-------------------------------------------------------------------
Fri Aug 14 09:13:48 UTC 2020 - Benjamin Greiner <code@bnavigator.de>

- add photutils-pr1041-update-watershed-import.patch to fix failing
  test gh#astropy/photutils#1041 

-------------------------------------------------------------------
Fri Jul 17 11:35:55 UTC 2020 - Benjamin Greiner <code@bnavigator.de>

- actually detect failures with sys.exit(photutils.test())

-------------------------------------------------------------------
Mon Jul 13 18:40:46 UTC 2020 - Benjamin Greiner <code@bnavigator.de>

- fix failing tests: use astropy's test suite logic to call pytest 
- add URL for 0001-aperture-mask-test-assert-almost-equal.patch
  gh#astropy/photutils#1014

-------------------------------------------------------------------
Fri Jan 24 17:09:13 UTC 2020 - Benjamin Greiner <code@bnavigator.de>

- 0001-aperture-mask-test-assert-almost-equal.patch:
  upstream PR#1014 to avoid occasionally failing builds 

-------------------------------------------------------------------
Wed Dec 11 14:44:27 UTC 2019 - Benjamin Greiner <code@bnavigator.de>

- update to version 0.7.2:
  photutils.isophote
    * Fixed computation of upper harmonics a3, b3, a4, and b4 
       in the ellipse fitting algorithm. [#1008]
  photutils.psf 
    * Fix to algorithm in EPSFBuilder, addressing issues where
      ePSFs failed to build (yielding striped ePSFs). [#974]
    * Fix to IterativelySubtractedPSFPhotometry where an error
      could be thrown when a Finder was passed which did not 
      return None if no sources were found. [#986]
    * Fix to centroid_epsf where the wrong oversampling factor
      was used along the y axis. [#1002]
- needs new python-pytest-astropy 0.7 because of -header package
- fix clean c source files

-------------------------------------------------------------------
Thu Oct 10 09:48:35 UTC 2019 - Benjamin Greiner <code@bnavigator.de>

- update to version 0.7.1 

-------------------------------------------------------------------
Sat Sep 14 12:17:38 UTC 2019 - Benjamin Greiner <code@bnavigator.de>

- remove generated c source files 

-------------------------------------------------------------------
Sat Sep 14 09:49:39 UTC 2019 - Benjamin Greiner <code@bnavigator.de>

- new version 0.7 

-------------------------------------------------------------------
Wed Apr 24 14:34:08 UTC 2019 - Benjamin Greiner <code@bnavigator.de>

- add astropy helpers 

-------------------------------------------------------------------
Wed Apr 24 14:23:15 UTC 2019 - Benjamin Greiner <code@bnavigator.de>

- add dmb and scikit-* modules to build deps for module tests

-------------------------------------------------------------------
Wed Apr 24 14:13:37 UTC 2019 - Benjamin Greiner <code@bnavigator.de>

- add numpy-devel as dep 

-------------------------------------------------------------------
Wed Apr 24 14:09:05 UTC 2019 - Benjamin Greiner <code@bnavigator.de>

- fix deps typos 

-------------------------------------------------------------------
Wed Apr 24 14:07:25 UTC 2019 - Benjamin Greiner <code@bnavigator.de>

- initial spec 
openSUSE Build Service is sponsored by