From 4386646c8721dd355f8528b66811eab02db10d74ba3efcef3af61a97b53f9d86 Mon Sep 17 00:00:00 2001 From: Steve Kowalik Date: Tue, 25 Jun 2024 06:16:51 +0000 Subject: [PATCH] - Update to 6.1.1: * Let fitsdiff compare files with lower case HIERARCH keywords * Fix writing a ``HDUList`` to file when numpy 2 is installed and at least some of the data is represented as dask arrays. * Fix display of diff reports with numpy 2. * Ensure that also zero-length tables preserve whether integer data are signed or unsigned. * Fix YAML table serialization compatibility with numpy 2. * Fix bugs in io.votable related to numpy 2's representation of scalars. * Ensure that return types from ``sigma_clip`` ``cenfunc`` and ``stdfunc`` are np.float64 for scalar values. * Ensure structured ``MaskedColumn`` are serialized correctly, including the mask. * Fix problems converting Pandas Series to ``Table`` with numpy >=2.0. * Ensure Time in ymdhms format can also be serialized to files as part of a table if it is masked. * Ensure Masked versions of ``np.recarray`` will show the correct class name of ``MaskedRecarray`` in their ``repr``, and that they will be serialized correctly if part of a table. * Fix bugs with how masked structured arrays were represented with numpy 2. * ``MaskedQuantity`` now works properly with ``np.block``. * Fix a bug where ``WCSAxes`` could be missing negative signs on axis labels when using matplotlib's ``usetex`` mode. * Fix compilation with gcc 14, avoid implicit pointer conversions. - Drop patch 16450.patch, included upstream. - Remove upper bound on pytest, no longer required. OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:numeric/python-astropy?expand=0&rev=124 --- 16450.patch | 143 ----------------------------------------- astropy-6.1.0.tar.gz | 3 - astropy-6.1.1.tar.gz | 3 + python-astropy.changes | 30 +++++++++ python-astropy.spec | 7 +- 5 files changed, 36 insertions(+), 150 deletions(-) delete mode 100644 16450.patch delete mode 100644 astropy-6.1.0.tar.gz create mode 100644 astropy-6.1.1.tar.gz diff --git a/16450.patch b/16450.patch deleted file mode 100644 index c6168db..0000000 --- a/16450.patch +++ /dev/null @@ -1,143 +0,0 @@ -From ce38ef47e858e86518db1aeb2f299cd9ce1a5d29 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Cl=C3=A9ment=20Robert?= -Date: Tue, 14 May 2024 09:59:01 +0200 -Subject: [PATCH] BUG: Fix broken compilation with gcc 14: avoid implicit - conversions between ``PyObject*`` and ``PyArrayObject*`` pointer types - ---- - astropy/wcs/src/wcslib_celprm_wrap.c | 4 ++-- - astropy/wcs/src/wcslib_prjprm_wrap.c | 27 +++++++++++++++------------ - docs/changes/wcs/16450.bugfix.rst | 1 + - 3 files changed, 18 insertions(+), 14 deletions(-) - create mode 100644 docs/changes/wcs/16450.bugfix.rst - -diff --git a/astropy/wcs/src/wcslib_celprm_wrap.c b/astropy/wcs/src/wcslib_celprm_wrap.c -index 3694ac4efe9..a25dbf4eea6 100644 ---- a/astropy/wcs/src/wcslib_celprm_wrap.c -+++ b/astropy/wcs/src/wcslib_celprm_wrap.c -@@ -164,7 +164,7 @@ static PyObject* PyCelprm_copy(PyCelprm* self) - - static PyObject* PyCelprm_deepcopy(PyCelprm* self) - { -- PyCelprm* copy = PyCelprm_new(&PyCelprmType, NULL, NULL); -+ PyCelprm* copy = (PyCelprm*) PyCelprm_new(&PyCelprmType, NULL, NULL); - if (copy == NULL) return NULL; - - memcpy(copy->x, self->x, sizeof(struct celprm)); -@@ -321,7 +321,7 @@ static int PyCelprm_set_ref(PyCelprm* self, PyObject* value, void* closure) - return 0; - } - -- PyObject* value_array = PyArray_ContiguousFromAny(value, NPY_DOUBLE, 1, 1); -+ PyArrayObject* value_array = (PyArrayObject*) PyArray_ContiguousFromAny(value, NPY_DOUBLE, 1, 1); - if (!value_array) return -1; - - size = PyArray_SIZE(value_array); -diff --git a/astropy/wcs/src/wcslib_prjprm_wrap.c b/astropy/wcs/src/wcslib_prjprm_wrap.c -index 2eeda9dfb5b..7a312f3d02d 100644 ---- a/astropy/wcs/src/wcslib_prjprm_wrap.c -+++ b/astropy/wcs/src/wcslib_prjprm_wrap.c -@@ -146,7 +146,7 @@ static PyObject* PyPrjprm_copy(PyPrjprm* self) - - static PyObject* PyPrjprm_deepcopy(PyPrjprm* self) - { -- PyPrjprm* copy = PyPrjprm_new(&PyPrjprmType, NULL, NULL); -+ PyPrjprm* copy = (PyPrjprm*) PyPrjprm_new(&PyPrjprmType, NULL, NULL); - if (copy == NULL) return NULL; - - memcpy(copy->x, self->x, sizeof(struct prjprm)); -@@ -510,11 +510,12 @@ static PyObject* PyPrjprm_get_pv(PyPrjprm* self, void* closure) - int k; - Py_ssize_t size = PVN; - double *pv; -- PyObject* pv_array; -- -+ PyObject* pv_pyobj; -+ PyArrayObject* pv_array; - if (is_prj_null(self)) return NULL; - -- pv_array = (PyArrayObject*) PyArray_SimpleNew(1, &size, NPY_DOUBLE); -+ pv_pyobj = PyArray_SimpleNew(1, &size, NPY_DOUBLE); -+ pv_array = (PyArrayObject*) pv_pyobj; - if (pv_array == NULL) return NULL; - pv = (double*) PyArray_DATA(pv_array); - -@@ -526,7 +527,7 @@ static PyObject* PyPrjprm_get_pv(PyPrjprm* self, void* closure) - } - } - -- return pv_array; -+ return pv_pyobj; - } - - -@@ -535,7 +536,7 @@ static int PyPrjprm_set_pv(PyPrjprm* self, PyObject* value, void* closure) - int k, modified; - npy_intp size; - double *data; -- PyObject* value_array = NULL; -+ PyArrayObject* value_array = NULL; - int skip[PVN]; - - if (is_prj_null(self) || is_readonly(self)) return -1; -@@ -550,7 +551,7 @@ static int PyPrjprm_set_pv(PyPrjprm* self, PyObject* value, void* closure) - return 0; - } - -- value_array = PyArray_ContiguousFromAny(value, NPY_DOUBLE, 1, 1); -+ value_array = (PyArrayObject*) PyArray_ContiguousFromAny(value, NPY_DOUBLE, 1, 1); - if (!value_array) return -1; - - size = PyArray_SIZE(value_array); -@@ -654,7 +655,8 @@ static PyObject* PyPrjprm_set_pvi(PyPrjprm* self, PyObject* args, PyObject* kwds - PyObject* index = NULL; - PyObject* value = NULL; - PyObject* flt_value = NULL; -- PyObject* value_array = NULL; -+ PyObject* value_array_pyobj = NULL; -+ PyArrayObject* value_array = NULL; - const char* keywords[] = { "index", "value", NULL }; - PyArray_Descr* dbl_descr = PyArray_DescrNewFromType(NPY_DOUBLE); - -@@ -705,9 +707,10 @@ static PyObject* PyPrjprm_set_pvi(PyPrjprm* self, PyObject* args, PyObject* kwds - } - - } else { -- if (PyArray_Converter(value, &value_array) == NPY_FAIL) { -+ if (PyArray_Converter(value, &value_array_pyobj) == NPY_FAIL) { - return NULL; - } -+ value_array = (PyArrayObject*) value_array_pyobj; - - size = PyArray_SIZE(value_array); - if (size != 1) { -@@ -771,11 +774,11 @@ static PyObject* PyPrjprm_get_w(PyPrjprm* self, void* closure) - Py_ssize_t size = 10; - int k; - double *w; -- PyObject* w_array; -+ PyArrayObject* w_array; - - if (is_prj_null(self)) return NULL; - -- w_array = (PyObject*) PyArray_SimpleNew(1, &size, NPY_DOUBLE); -+ w_array = (PyArrayObject*) PyArray_SimpleNew(1, &size, NPY_DOUBLE); - if (w_array == NULL) return NULL; - w = (double*) PyArray_DATA(w_array); - -@@ -787,7 +790,7 @@ static PyObject* PyPrjprm_get_w(PyPrjprm* self, void* closure) - } - } - -- return w_array; -+ return (PyObject*) w_array; - } - - -diff --git a/docs/changes/wcs/16450.bugfix.rst b/docs/changes/wcs/16450.bugfix.rst -new file mode 100644 -index 00000000000..40eb16295ed ---- /dev/null -+++ b/docs/changes/wcs/16450.bugfix.rst -@@ -0,0 +1 @@ -+Fix compilation with gcc 14, avoid implicit pointer conversions. diff --git a/astropy-6.1.0.tar.gz b/astropy-6.1.0.tar.gz deleted file mode 100644 index e52625e..0000000 --- a/astropy-6.1.0.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:6c3b915f10b1576190730ddce45f6245f9927dda3de6e3f692db45779708950f -size 7034312 diff --git a/astropy-6.1.1.tar.gz b/astropy-6.1.1.tar.gz new file mode 100644 index 0000000..7b0f7b3 --- /dev/null +++ b/astropy-6.1.1.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5c6f45d911c30acb8d556c7f8ed994aec71b108e61eee5067f00af1e4e36138 +size 7050022 diff --git a/python-astropy.changes b/python-astropy.changes index d7c9ba0..033669f 100644 --- a/python-astropy.changes +++ b/python-astropy.changes @@ -1,3 +1,33 @@ +------------------------------------------------------------------- +Tue Jun 25 06:14:33 UTC 2024 - Steve Kowalik + +- Update to 6.1.1: + * Let fitsdiff compare files with lower case HIERARCH keywords + * Fix writing a ``HDUList`` to file when numpy 2 is installed and at least + some of the data is represented as dask arrays. + * Fix display of diff reports with numpy 2. + * Ensure that also zero-length tables preserve whether integer data are + signed or unsigned. + * Fix YAML table serialization compatibility with numpy 2. + * Fix bugs in io.votable related to numpy 2's representation of scalars. + * Ensure that return types from ``sigma_clip`` ``cenfunc`` and ``stdfunc`` + are np.float64 for scalar values. + * Ensure structured ``MaskedColumn`` are serialized correctly, including + the mask. + * Fix problems converting Pandas Series to ``Table`` with numpy >=2.0. + * Ensure Time in ymdhms format can also be serialized to files as part of a + table if it is masked. + * Ensure Masked versions of ``np.recarray`` will show the correct class + name of ``MaskedRecarray`` in their ``repr``, and that they will be + serialized correctly if part of a table. + * Fix bugs with how masked structured arrays were represented with numpy 2. + * ``MaskedQuantity`` now works properly with ``np.block``. + * Fix a bug where ``WCSAxes`` could be missing negative signs on axis + labels when using matplotlib's ``usetex`` mode. + * Fix compilation with gcc 14, avoid implicit pointer conversions. +- Drop patch 16450.patch, included upstream. +- Remove upper bound on pytest, no longer required. + ------------------------------------------------------------------- Mon May 27 09:49:39 UTC 2024 - John Paul Adrian Glaubitz diff --git a/python-astropy.spec b/python-astropy.spec index 7c0943c..f73e46a 100644 --- a/python-astropy.spec +++ b/python-astropy.spec @@ -49,7 +49,7 @@ %{?sle15_python_module_pythons} Name: python-astropy%{psuffix} -Version: 6.1.0 +Version: 6.1.1 Release: 0 Summary: Community-developed python astronomy tools License: BSD-3-Clause @@ -59,8 +59,6 @@ Source: https://files.pythonhosted.org/packages/source/a/astropy/astropy # Mark wcs headers as false positives for devel-file-in-non-devel-package # These are used by the python files so they must be available. Source100: python-astropy-rpmlintrc -# PATCH-FIX-UPSTREAM - BUG: fix compilation with gcc 14, avoid implicit pointer conversions -Patch: https://github.com/astropy/astropy/pull/16450.patch # https://docs.astropy.org/en/v6.1/install.html#requirements BuildRequires: %{python_module Cython >= 3 with %python-Cython < 3.1} BuildRequires: %{python_module devel >= 3.9} @@ -117,6 +115,7 @@ BuildRequires: %{python_module Bottleneck} BuildRequires: %{python_module asdf-astropy >= 0.3} BuildRequires: %{python_module beautifulsoup4} BuildRequires: %{python_module bleach} +BuildRequires: %{python_module dask-array} BuildRequires: %{python_module fsspec >= 2023.4.0} BuildRequires: %{python_module h5py} BuildRequires: %{python_module html5lib} @@ -138,12 +137,12 @@ BuildRequires: libxml2-tools BuildRequires: %{python_module astropy = %{version}} BuildRequires: %{python_module ipython >= 4.2 if %python-base >= 3.10} BuildRequires: %{python_module objgraph} -BuildRequires: %{python_module pytest >= 7 with %python-pytest < 8} BuildRequires: %{python_module pytest-astropy >= 0.10} BuildRequires: %{python_module pytest-astropy-header >= 0.2.1} BuildRequires: %{python_module pytest-doctestplus >= 0.12} BuildRequires: %{python_module pytest-mpl} BuildRequires: %{python_module pytest-xdist} +BuildRequires: %{python_module pytest} BuildRequires: %{python_module sgp4 >= 2.3} BuildRequires: %{python_module skyfield >= 1.20 if %python-base < 3.11} BuildRequires: %{python_module threadpoolctl}