From af5c7e3c9f9fe1b4611cac53235caf9cf84bea48a244e35f0fa2152f5bf3b0d4 Mon Sep 17 00:00:00 2001 From: Benjamin Greiner Date: Wed, 12 Feb 2025 14:43:40 +0000 Subject: [PATCH] - Update to 0.24.0 * Coordinate frames now have a "native" order and then are sorted based on axes_order. [#457] * WCS.numerical_inverse no longer accepts high level objects (with_units= is not supported) use WCS.inverse. [#457] * CoordinateFrame.coordinates has been replaced by CoordinateFrame.to_high_level_coordinates [#457] * CoordinateFrame.to_quantity has been replaced by CoordinateFrame.from_high_level_coordinates. [#457] * Inputs to CelestialFrame, such as axes_names are now explicitly in lon, lat order and will re sorted based on axes_order=. [#457] * Implement code linting and automatic formatting. [#544] * Refactor WCS to use a Pipeline base class which adds basic checks to ensure that the pipeline is valid. These include checking for duplicate frame names and that the last transform is None. [#545] * Bugfix for WCS.invert and WCS.to_fits that prevented evaluation when the attached bounding box happened to have units on its values. [#554] - No release 0.23.0 (skipped) * This was skipped to avoid issues with an ongoing JWST release. - Release 0.22.0 * Replace usages of copy_arrays with memmap [#503] * Fix an issue with units in wcs_from_points. [#507] * Fix incorrect units being returned in the low level WCS API. [#512] * Synchronize region.py with the copies of it in JWST and Romancal. [#517] * Add support for compound bounding boxes and ignored bounding OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:numeric/python-gwcs?expand=0&rev=27 --- .gitattributes | 23 ++++ .gitignore | 1 + gwcs-0.21.0.tar.gz | 3 + gwcs-0.24.0.tar.gz | 3 + python-gwcs.changes | 249 ++++++++++++++++++++++++++++++++++++++++++++ python-gwcs.spec | 77 ++++++++++++++ 6 files changed, 356 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 gwcs-0.21.0.tar.gz create mode 100644 gwcs-0.24.0.tar.gz create mode 100644 python-gwcs.changes create mode 100644 python-gwcs.spec diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/gwcs-0.21.0.tar.gz b/gwcs-0.21.0.tar.gz new file mode 100644 index 0000000..4a622d6 --- /dev/null +++ b/gwcs-0.21.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8cd27f1ce6b25ad72cc33ca2e4178ab29d82050344c710713f74992136a1c5ba +size 195866 diff --git a/gwcs-0.24.0.tar.gz b/gwcs-0.24.0.tar.gz new file mode 100644 index 0000000..357ab5b --- /dev/null +++ b/gwcs-0.24.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6387bd4492ab25e74522b6ead1971602462ed57432e4eb274a3734426d166e60 +size 212592 diff --git a/python-gwcs.changes b/python-gwcs.changes new file mode 100644 index 0000000..15ec064 --- /dev/null +++ b/python-gwcs.changes @@ -0,0 +1,249 @@ +------------------------------------------------------------------- +Wed Feb 12 14:39:07 UTC 2025 - Ben Greiner + +- Update to 0.24.0 + * Coordinate frames now have a "native" order and then are sorted + based on axes_order. [#457] + * WCS.numerical_inverse no longer accepts high level objects + (with_units= is not supported) use WCS.inverse. [#457] + * CoordinateFrame.coordinates has been replaced by + CoordinateFrame.to_high_level_coordinates [#457] + * CoordinateFrame.to_quantity has been replaced by + CoordinateFrame.from_high_level_coordinates. [#457] + * Inputs to CelestialFrame, such as axes_names are now explicitly + in lon, lat order and will re sorted based on axes_order=. + [#457] + * Implement code linting and automatic formatting. [#544] + * Refactor WCS to use a Pipeline base class which adds basic + checks to ensure that the pipeline is valid. These include + checking for duplicate frame names and that the last transform + is None. [#545] + * Bugfix for WCS.invert and WCS.to_fits that prevented evaluation + when the attached bounding box happened to have units on its + values. [#554] +- No release 0.23.0 (skipped) + * This was skipped to avoid issues with an ongoing JWST release. +- Release 0.22.0 + * Replace usages of copy_arrays with memmap [#503] + * Fix an issue with units in wcs_from_points. [#507] + * Fix incorrect units being returned in the low level WCS API. + [#512] + * Synchronize region.py with the copies of it in JWST and + Romancal. [#517] + * Add support for compound bounding boxes and ignored bounding + box entries. [#519] + * Add gwcs.examples module, based on the examples located in the + testing conftest.py. [#521] + * Force bounding_box to always be returned as a F ordered box. + [#522] + * Move the bounding box attachment to the forward transform + property. [#532] + * Adjust world_to_array_index_values to round to integer + coordinates as specified by APE 14. [#525] + * Add warning filter to asdf extension to prevent the + bounding_box order warning for gwcs objects originating from a + file. [#526] + * Fixed a bug where evaluating the inverse transform did not + respect the bounding box. [#498] + * Improved reliability of inside/outside footprint computations + when evaluating inverse transform with bounding box. [#536] + +------------------------------------------------------------------- +Sun Apr 7 13:03:20 UTC 2024 - Ben Greiner + +- Actually declare the minimum version requirement for + asdf-wcs-schemas. + +------------------------------------------------------------------- +Sun Apr 7 09:03:23 UTC 2024 - Dirk Müller + +- update to 0.21.0: + * Add a minimum version requirement for asdf-wcs-schemas. + * Fix WCS.__str__ for instances without transforms. + +------------------------------------------------------------------- +Thu Dec 7 22:39:29 UTC 2023 - Dirk Müller + +- update to 0.20.0: + * Replace ``pkg_resources`` with ``importlib.metadata``. [#478] + * Serialize and deserialize ``pixel_shape`` with asdf. [#480] + * Synchronize ``array_shape`` and ``pixel_shape`` attributes of + WCS objects. [#439] + * Fix failures and warnings with numpy 2.0. [#472] + * Remove deprecated old ``bounding_box``. The new + implementation is released with + * Refactor ``CoordinateFrame.axis_physical_types``. [#459] + * ``StokesFrame`` uses now ``astropy.coordinates.StokesCoord``. + * Dropped support for Python 3.8. [#451] + * Fixed a call to ``astropy.coordinates`` in + ``wcstools.wcs_from_points``. [#448] + * Code and docstrings clean up. [#460] + * Register all available asdf extension manifests from ``asdf- + wcs-schemas`` + +------------------------------------------------------------------- +Fri Jan 13 13:47:14 UTC 2023 - Ben Greiner + +- Update to 0.18.3 + * Fix pixel scale formula used by iterative inverse by @mcara in + #423 + * refactor for Tox 4 by @zacharyburnett in #428 + * Improve stability of SIP fitting. Fix constant term - CRPIX - + in SIP by @mcara in #427 + * use canonical name of RTD config and enable nitpicky mode to + catch broken links in docs by @zacharyburnett in #430 + * add downstream tests for JWST and Roman calibration pipelines + by @zacharyburnett in #415 + * fix CRDS_PATH in CI when running downstream tests by + @zacharyburnett in #432 + +------------------------------------------------------------------- +Thu Oct 27 17:04:18 UTC 2022 - Ben Greiner + +- Update to 0.18.2 + * Corrected the reported requested forward SIP accuracy and + reported fit residuals by to_fits_sip() and to_fits(). [#413, + #419] + * Fixed a bug due to which the check for divergence in + _fit_2D_poly() and hence in to_fits() and to_fits_sip() was + ignored. [#414] + +------------------------------------------------------------------- +Thu Mar 17 07:59:13 UTC 2022 - Ben Greiner + +- Update to 0.18.1 + * Bug fix update + * Remove references to the ``six`` package. [#402] + * Fix asdf-astropy related test failure + +------------------------------------------------------------------- +Tue Dec 28 14:59:01 UTC 2021 - Ben Greiner + +- Update to 0.18.0 + * Bug Fixes + * Updated code in region.py with latest improvements and bug + fixes from stsci.skypac.regions.py [#382] + * New Features + * Enabled CompoundBoundingBox support for wcs. [#375] + * Moved schemas to standalone package asdf-wcs-schemas. Reworked + the serialization code to use ASDF converters. [#388] +- Release 0.17.1 + * Bug Fixes + * Fixed a bug with StokesProfile and array types. [#384] +- Release 0.17.0 + * Bug Fixes + * world_axis_object_components and world_axis_object_classes now + ensure unique keys in CompositeFrame and CoordinateFrame. + [#356] + * Fix issue where RuntimeWarning is raised when there are NaNs in + coordinates in angle wrapping code [#367] + * Fix deprecation warning when wcs is initialized with a pipeline + [#368] + * Use CD formalism in WCS.to_fits_sip(). [#380] + * New Features + * wcs_from_points now includes fitting for the inverse transform. + [#349] + * Generalized WCS.to_fits_sip to be able to create a 2D celestial + FITS WCS from celestial subspace of the WCS. Also, now + WCS.to_fits_sip` supports arbitrary order of output axes. + [#357] + * API Changes + * Modified interface to wcs_from_points function to better match + analogous function in astropy. [#349] + * Model._BoundingBox was renamed to Model.ModelBoundingBox. + [#376, #377] + +------------------------------------------------------------------- +Thu Feb 11 10:24:44 UTC 2021 - Ben Greiner + +- Actually do the update to 0.16.1 m-) +- Skip schema tests not tolerating any deprecation warnings from + numpy 1.20 -- Already fixed upstream, but patch is too + unspecific gh#spacetelescope/gwcs#353 + +------------------------------------------------------------------- +Mon Jan 18 00:46:44 UTC 2021 - Benjamin Greiner + +- Update to 0.16.1 + * Fix a regression with pixel_to_world for output frames with one + axis. [#342] +- Skip python36 because python36-astropy is not available. + +------------------------------------------------------------------- +Sat Dec 19 00:24:06 UTC 2020 - Benjamin Greiner + +- Update to 0.16.0 + * Added an option to to_fits_sip() to be able to specify the + reference point (crpix) of the FITS WCS. [#337] + * Added support for providing custom range of degrees in + to_fits_sip. [#339] + * Bounding_box now works with tuple of Quantities. [#331] + * Fix a formula for estimating crpix in to_fits_sip() so that + crpix is near the center of the bounding box. [#337] + * Allow sub-pixel sampling of the WCS model when computing SIP + approximation in to_fits_sip(). [#338] + * Fixed a bug in to_fits_sip due to which inv_degree was + ignored. [#339] +- 0.15.0 changelog + * Added insert_frame method to modify the pipeline of a + WCS object. [#299] + * Added to_fits_tab method to generate FITS header and binary + table extension following FITS WCS -TAB convention. [#295] + * Added in_image function for testing whether a point in world + coordinates maps back to the domain of definition of the + forward transformation. [#322] + * Implemented iterative inverse for imaging WCS. [#324] +- 0.14.0 changelog + * Updated versions of schemas for gwcs objects based on + latest versions of transform schemas in asdf-standard. + [#307] + * Added a wcs.Step class to allow serialization to ASDF to + use references. [#317] + * WCS.pipeline now is a list of Step instances instead of + a (frame, transform) tuple. Use WCS.pipeline.transform and + WCS.pipeline.frame to access them. [#319] + * Fix a bug in polygon fill for zero-width bounding boxes. + [#293] + * Add an optional parameter input_frame to + ``wcstools.wcs_from_fiducial`. [#312] + +------------------------------------------------------------------- +Mon Jun 8 13:14:28 UTC 2020 - Dirk Mueller + +- update to 0.13.0 + - Added two new transforms - ``SphericalToCartesian`` and + ``CartesianToSpherical``. [#275, #284, #285] + - Added ``to_fits_sip`` method to generate FITS header with SIP keywords [#286] + - Added ``get_ctype_from_ucd`` function. [#288] + - Fixed an off by one issue in ``utils.make_fitswcs_transform``. [#290] + +------------------------------------------------------------------- +Mon Jan 6 15:57:28 UTC 2020 - Todd R + +- Update to 0.12.0 + + New Features + * ``gwcs.WCS`` now supports the ``world_axis_object_components`` and + ``world_axis_object_classes`` methods of the low level WCS API as specified by + APE 14. + * Removed astropy-helpers from package. + * Added a method ``fix_inputs`` which rturns an unique WCS from a compound + WCS by fixing inputs. + * Added two new transforms - ``ToDirectionCosines`` and ``FromDirectionCosines``. + * Added new transforms ``WavelengthFromGratingEquation``, ``AnglesFromGratingEquation3D``. + * ``gwcs.WCS`` now supports the new ``world_axis_names`` and + ``pixel_axis_names`` properties on ``LowLevelWCS`` objects. + * Update the ``StokesFrame`` to work for arrays of coordinates and integrate + with APE 14. + * Added ``Snell3D``, ``SellmeierGlass`` and ``SellmeierZemax`` transforms. + + API Changes + * Changed the initialization of ``TemporalFrame`` to be consistent with other + coordinate frames. + + Bug Fixes + * Ensure that ``world_to_pixel_values`` and ``pixel_to_world_values`` always + accept and return floats, even if the underlying transform uses units. +- Drop python2 subpackage due to dependencies dropping python2. + +------------------------------------------------------------------- +Sat Sep 14 10:01:43 UTC 2019 - Benjamin Greiner + +- initial spec diff --git a/python-gwcs.spec b/python-gwcs.spec new file mode 100644 index 0000000..5b202c4 --- /dev/null +++ b/python-gwcs.spec @@ -0,0 +1,77 @@ +# +# spec file for package python-gwcs +# +# Copyright (c) 2025 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +Name: python-gwcs +Version: 0.24.0 +Release: 0 +Summary: Generalized World Coordinate System +License: BSD-3-Clause +Group: Productivity/Scientific/Astronomy +URL: https://gwcs.readthedocs.io/en/latest/ +# SourceRepository: https://github.com/spacetelescope/gwcs +Source: https://files.pythonhosted.org/packages/source/g/gwcs/gwcs-%{version}.tar.gz +BuildRequires: %{python_module asdf >= 3.3.0} +BuildRequires: %{python_module asdf-astropy >= 0.5.0} +BuildRequires: %{python_module asdf_wcs_schemas >= 0.4.0} +BuildRequires: %{python_module astropy >= 6} +BuildRequires: %{python_module base >= 3.10} +BuildRequires: %{python_module numpy >= 1.24} +BuildRequires: %{python_module pip} +BuildRequires: %{python_module scipy >= 1.14.1} +BuildRequires: %{python_module setuptools_scm} +BuildRequires: %{python_module setuptools} +BuildRequires: %{python_module wheel} +BuildRequires: fdupes +BuildRequires: python-rpm-macros +Requires: python-asdf >= 3.3.0 +Requires: python-asdf-astropy >= 0.5.0 +Requires: python-asdf_wcs_schemas >= 0.4.0 +Requires: python-astropy >= 6 +Requires: python-numpy >= 1.24 +Requires: python-scipy >= 1.14.1 +BuildArch: noarch +# SECTION test requirements +BuildRequires: %{python_module pytest-astropy >= 0.11.0} +BuildRequires: %{python_module pytest >= 8} +# /SECTION +%python_subpackages + +%description +An Astropy affiliated package providing tools for managing the +World Coordinate System of astronomical data. + +%prep +%setup -q -n gwcs-%{version} + +%build +%pyproject_wheel + +%install +%pyproject_install +%python_expand %fdupes %{buildroot}%{$python_sitelib} + +%check +%pytest -ra + +%files %{python_files} +%doc README.rst +%license licenses/LICENSE.rst licenses/README.rst +%{python_sitelib}/gwcs +%{python_sitelib}/gwcs-%{version}*-info + +%changelog