parent
138e3931a6
commit
0ab886147a
1
.gitignore
vendored
1
.gitignore
vendored
@ -32,3 +32,4 @@ scipy-0.7.2.tar.gz
|
|||||||
/scipy-1.5.2.tar.gz
|
/scipy-1.5.2.tar.gz
|
||||||
/scipy-1.5.3.tar.gz
|
/scipy-1.5.3.tar.gz
|
||||||
/scipy-1.5.4.tar.gz
|
/scipy-1.5.4.tar.gz
|
||||||
|
/scipy-1.6.0.tar.gz
|
||||||
|
14
scipy.spec
14
scipy.spec
@ -14,8 +14,8 @@
|
|||||||
|
|
||||||
Summary: Scientific Tools for Python
|
Summary: Scientific Tools for Python
|
||||||
Name: scipy
|
Name: scipy
|
||||||
Version: 1.5.4
|
Version: 1.6.0
|
||||||
Release: 2%{?dist}
|
Release: 1%{?dist}
|
||||||
|
|
||||||
# BSD -- whole package except:
|
# BSD -- whole package except:
|
||||||
# Boost -- scipy/special/cephes/scipy_iv.c
|
# Boost -- scipy/special/cephes/scipy_iv.c
|
||||||
@ -24,10 +24,8 @@ License: BSD and Boost and Public Domain
|
|||||||
Url: http://www.scipy.org/scipylib/index.html
|
Url: http://www.scipy.org/scipylib/index.html
|
||||||
Source0: https://github.com/scipy/scipy/releases/download/v%{version}/scipy-%{version}.tar.gz
|
Source0: https://github.com/scipy/scipy/releases/download/v%{version}/scipy-%{version}.tar.gz
|
||||||
|
|
||||||
# https://github.com/scipy/scipy/pull/12899
|
# https://github.com/scipy/scipy/pull/13387
|
||||||
Patch0: skip-certain-tests-on-32-bit-arches.patch
|
Patch0: wavfile.patch
|
||||||
# https://github.com/scipy/scipy/pull/13130
|
|
||||||
Patch1: skip-factorial-float-tests-on-py310.patch
|
|
||||||
|
|
||||||
BuildRequires: fftw-devel, suitesparse-devel
|
BuildRequires: fftw-devel, suitesparse-devel
|
||||||
BuildRequires: %{blaslib}-devel
|
BuildRequires: %{blaslib}-devel
|
||||||
@ -173,6 +171,10 @@ popd
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Mon Jan 04 2021 Nikola Forró <nforro@redhat.com> - 1.6.0-1
|
||||||
|
- New upstream release 1.6.0
|
||||||
|
resolves: #1906692
|
||||||
|
|
||||||
* Wed Nov 25 2020 Nikola Forró <nforro@redhat.com> - 1.5.4-2
|
* Wed Nov 25 2020 Nikola Forró <nforro@redhat.com> - 1.5.4-2
|
||||||
- Skip factorial() float tests on Python 3.10
|
- Skip factorial() float tests on Python 3.10
|
||||||
resolves: #1898157
|
resolves: #1898157
|
||||||
|
2
sources
2
sources
@ -1 +1 @@
|
|||||||
SHA512 (scipy-1.5.4.tar.gz) = d23f68911a8880f87767819750d4d175ba8f9c72fcb9b8080305ee65722c046d4485fde4f0c85cc53c46247dd99813afe675a38b3b0569a683ddc2c2e021b8fc
|
SHA512 (scipy-1.6.0.tar.gz) = 995ffaf56b713cdd4bdb98d8525b892e9ad84a511878b43213cb71a67f34d87c111da36cf1e0b044c75c0d5af64bfde4ad0f3e9c5e71cae2dbf053251f37064e
|
||||||
|
36
wavfile.patch
Normal file
36
wavfile.patch
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
commit 09d753f0ae71441906f5cee7a44b2d2b80212082
|
||||||
|
Author: Nikola Forró <nforro@redhat.com>
|
||||||
|
Date: Thu Jan 14 14:34:14 2021 +0100
|
||||||
|
|
||||||
|
ENH: Support big-endian platforms and big-endian WAVs
|
||||||
|
|
||||||
|
PR #12287 added support for reading arbitrary-bit-depth WAVs, but
|
||||||
|
the code doesn't consider big-endian WAVs, and doesn't work as expected
|
||||||
|
on big-endian platforms due to the use of native-byte-order data-types.
|
||||||
|
This change fixes that.
|
||||||
|
|
||||||
|
There is also a simple test case that compares euqivalent RIFX
|
||||||
|
(big-endian) and RIFF (little-endian) files to verify the data read
|
||||||
|
are the same.
|
||||||
|
|
||||||
|
diff --git a/scipy/io/wavfile.py b/scipy/io/wavfile.py
|
||||||
|
index 9b5845d6b..951f8d201 100644
|
||||||
|
--- a/scipy/io/wavfile.py
|
||||||
|
+++ b/scipy/io/wavfile.py
|
||||||
|
@@ -458,10 +458,13 @@ def _read_data_chunk(fid, format_tag, channels, bit_depth, is_big_endian,
|
||||||
|
|
||||||
|
if dtype == 'V1':
|
||||||
|
# Rearrange raw bytes into smallest compatible numpy dtype
|
||||||
|
- dt = numpy.int32 if bytes_per_sample == 3 else numpy.int64
|
||||||
|
- a = numpy.zeros((len(data) // bytes_per_sample, dt().itemsize),
|
||||||
|
+ dt = f'{fmt}i4' if bytes_per_sample == 3 else f'{fmt}i8'
|
||||||
|
+ a = numpy.zeros((len(data) // bytes_per_sample, numpy.dtype(dt).itemsize),
|
||||||
|
dtype='V1')
|
||||||
|
- a[:, -bytes_per_sample:] = data.reshape((-1, bytes_per_sample))
|
||||||
|
+ if is_big_endian:
|
||||||
|
+ a[:, :bytes_per_sample] = data.reshape((-1, bytes_per_sample))
|
||||||
|
+ else:
|
||||||
|
+ a[:, -bytes_per_sample:] = data.reshape((-1, bytes_per_sample))
|
||||||
|
data = a.view(dt).reshape(a.shape[:-1])
|
||||||
|
else:
|
||||||
|
if bytes_per_sample in {1, 2, 4, 8}:
|
Loading…
Reference in New Issue
Block a user