forked from pool/python-astropy
- 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
This commit is contained in:
parent
b04a5b6dba
commit
4386646c87
143
16450.patch
143
16450.patch
@ -1,143 +0,0 @@
|
||||
From ce38ef47e858e86518db1aeb2f299cd9ce1a5d29 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Cl=C3=A9ment=20Robert?= <cr52@protonmail.com>
|
||||
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.
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:6c3b915f10b1576190730ddce45f6245f9927dda3de6e3f692db45779708950f
|
||||
size 7034312
|
3
astropy-6.1.1.tar.gz
Normal file
3
astropy-6.1.1.tar.gz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:e5c6f45d911c30acb8d556c7f8ed994aec71b108e61eee5067f00af1e4e36138
|
||||
size 7050022
|
@ -1,3 +1,33 @@
|
||||
-------------------------------------------------------------------
|
||||
Tue Jun 25 06:14:33 UTC 2024 - Steve Kowalik <steven.kowalik@suse.com>
|
||||
|
||||
- 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 <adrian.glaubitz@suse.com>
|
||||
|
||||
|
@ -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}
|
||||
|
Loading…
Reference in New Issue
Block a user