Accepting request 867960 from devel:languages:python:numeric
OBS-URL: https://build.opensuse.org/request/show/867960 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-librosa?expand=0&rev=8
This commit is contained in:
commit
bf36f21b22
47
librosa-create-pooch-cache.py
Normal file
47
librosa-create-pooch-cache.py
Normal file
@ -0,0 +1,47 @@
|
||||
""" librosa-create-pooch-cache.py
|
||||
|
||||
Create the pooch cache tarball for testing the package.
|
||||
|
||||
Copyright (c) 2021 SUSE LLC
|
||||
Copyright (c) 2021 Ben Greiner <code@bnavigator.de>
|
||||
|
||||
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/
|
||||
"""
|
||||
|
||||
import os
|
||||
import subprocess
|
||||
import sys
|
||||
|
||||
import pooch
|
||||
|
||||
data_name = "librosa-pooch-cache"
|
||||
registry_file = "librosa/util/example_data/registry.txt"
|
||||
|
||||
if len(sys.argv) != 2:
|
||||
print(f"Usage: python3 {sys.argv[0]} <librosa-srcdir>")
|
||||
print(f"Download test data into $PWD/{data_name} and compress the directory into $PWD/{data_name}.tar.gz")
|
||||
sys.exit(1)
|
||||
|
||||
srcdir = os.path.abspath(sys.argv[1])
|
||||
data_path = os.path.abspath(os.getcwd() + "/" + data_name)
|
||||
|
||||
|
||||
pc = pooch.create(
|
||||
data_path, base_url="https://librosa.org/data/audio/", registry=None
|
||||
)
|
||||
pc.load_registry(srcdir + "/" + registry_file)
|
||||
with open(srcdir + "/" + registry_file) as fh:
|
||||
for line in fh:
|
||||
filename, hsum = line.split(" ")
|
||||
pc.fetch(filename)
|
||||
|
||||
subprocess.run(["tar", "czf", f"{data_name}.tar.gz", data_name], check=True)
|
3
librosa-pooch-cache.tar.gz
Normal file
3
librosa-pooch-cache.tar.gz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:aa4239679808fe7a814eb692ef58c9d1991b45e64ee3792c5dadc8f03baa79c4
|
||||
size 8934562
|
@ -1,3 +1,14 @@
|
||||
-------------------------------------------------------------------
|
||||
Thu Jan 28 23:09:45 UTC 2021 - Ben Greiner <code@bnavigator.de>
|
||||
|
||||
- Disable python36 build because SciPy 1.6.0 dropped support for
|
||||
Python 3.6. Other packages from the NumPy family do the same
|
||||
(NEP29)
|
||||
- Update requirements
|
||||
- Enable tests. Use librosa-create-pooch-cache.py to provide the
|
||||
test data in librosa-pooch-cache.tar.gz. These files are under
|
||||
CC-BY-3.0 license.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jan 8 14:29:45 UTC 2021 - Dilawar Singh <dilawar.s.rajput@gmail.com>
|
||||
|
||||
|
@ -18,13 +18,29 @@
|
||||
|
||||
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
|
||||
%define skip_python2 1
|
||||
# SciPy 1.6.0 dropped support for Python 3.6, many packages from the NumPy family follow. (NEP 29)
|
||||
%define skip_python36 1
|
||||
Name: python-librosa
|
||||
Version: 0.8.0
|
||||
Release: 0
|
||||
Summary: Python module for audio and music processing
|
||||
License: ISC
|
||||
License: ISC AND CC-BY-3.0
|
||||
URL: https://github.com/librosa/librosa
|
||||
# The github archive has the tests
|
||||
Source0: https://github.com/librosa/librosa/archive/%{version}.tar.gz#/librosa-%{version}.tar.gz
|
||||
Source1: librosa-create-pooch-cache.py
|
||||
# Test data. Use create librosa-create-pooch-cache.py to create this file
|
||||
Source2: librosa-pooch-cache.tar.gz
|
||||
BuildRequires: %{python_module SoundFile >= 0.9.0}
|
||||
BuildRequires: %{python_module audioread >= 2.0.0}
|
||||
BuildRequires: %{python_module decorator >= 3.0.0}
|
||||
BuildRequires: %{python_module joblib >= 0.12}
|
||||
BuildRequires: %{python_module numba >= 0.43.0}
|
||||
BuildRequires: %{python_module numpy >= 1.15.0}
|
||||
BuildRequires: %{python_module pooch >= 1.0}
|
||||
BuildRequires: %{python_module resampy >= 0.2.0}
|
||||
BuildRequires: %{python_module scikit-learn >= 0.14.0}
|
||||
BuildRequires: %{python_module scipy >= 1.0.0}
|
||||
BuildRequires: %{python_module setuptools}
|
||||
BuildRequires: fdupes
|
||||
BuildRequires: python-rpm-macros
|
||||
@ -32,27 +48,22 @@ Requires: python-SoundFile >= 0.9.0
|
||||
Requires: python-audioread >= 2.0.0
|
||||
Requires: python-decorator >= 3.0.0
|
||||
Requires: python-joblib >= 0.12
|
||||
Requires: python-numba >= 0.38.0
|
||||
Requires: python-numba >= 0.43.0
|
||||
Requires: python-numpy >= 1.15.0
|
||||
Requires: python-pooch >= 1.0
|
||||
Requires: python-resampy >= 0.2.0
|
||||
Requires: python-scikit-learn >= 0.14.0
|
||||
Requires: python-scipy >= 1.0.0
|
||||
Requires: python-six >= 1.3
|
||||
BuildArch: noarch
|
||||
# SECTION test requirements
|
||||
BuildRequires: %{python_module SoundFile >= 0.9.0}
|
||||
BuildRequires: %{python_module audioread >= 2.0.0}
|
||||
BuildRequires: %{python_module decorator >= 3.0.0}
|
||||
BuildRequires: %{python_module joblib >= 0.12}
|
||||
BuildRequires: %{python_module numba >= 0.38.0}
|
||||
BuildRequires: %{python_module numpy >= 1.15.0}
|
||||
BuildRequires: %{python_module pytest-cov}
|
||||
BuildRequires: %{python_module contextlib2}
|
||||
BuildRequires: %{python_module matplotlib >= 2.0}
|
||||
BuildRequires: %{python_module pytest-mpl}
|
||||
# xdist not specified upstream but it uses resources more efficiently
|
||||
BuildRequires: %{python_module pytest-xdist}
|
||||
BuildRequires: %{python_module pytest}
|
||||
BuildRequires: %{python_module resampy >= 0.2.0}
|
||||
BuildRequires: %{python_module scikit-learn >= 0.14.0}
|
||||
BuildRequires: %{python_module scipy >= 1.0.0}
|
||||
BuildRequires: %{python_module six >= 1.3}
|
||||
BuildRequires: %{python_module samplerate}
|
||||
BuildRequires: ffmpeg
|
||||
# /SECTION
|
||||
%python_subpackages
|
||||
|
||||
@ -62,9 +73,11 @@ the building blocks necessary to create music information retrieval
|
||||
systems.
|
||||
|
||||
%prep
|
||||
%setup -q -n librosa-%{version}
|
||||
%setup -q -n librosa-%{version} -a 2
|
||||
# Remove unneeded shebangs
|
||||
find librosa -name "*.py" -exec sed -i -e '/^#!\//, 1d' {} \;
|
||||
# don't measure test coverage
|
||||
sed -i '/tool:pytest/,/addopts/ s/--cov-report.*--cov librosa//' setup.cfg
|
||||
|
||||
%build
|
||||
%python_build
|
||||
@ -73,13 +86,20 @@ find librosa -name "*.py" -exec sed -i -e '/^#!\//, 1d' {} \;
|
||||
%python_install
|
||||
%python_expand %fdupes %{buildroot}%{$python_sitelib}
|
||||
|
||||
# Tests files are missing, even from github sources
|
||||
# %%check
|
||||
# %%pytest
|
||||
%check
|
||||
export LIBROSA_DATA_DIR=$PWD/librosa-pooch-cache
|
||||
# test data files not packaged
|
||||
donttest+=" or (test_core and test_iirt)"
|
||||
donttest+=" or (test_features and test_cens)"
|
||||
donttest+=" or (test_filters and test_semitone_filterbank)"
|
||||
# image files do not match without exact mpl version
|
||||
donttest+=" or test_display"
|
||||
%pytest -n auto -k "not (${donttest:4})"
|
||||
|
||||
%files %{python_files}
|
||||
%doc AUTHORS.md README.md
|
||||
%license LICENSE.md
|
||||
%{python_sitelib}/*
|
||||
%{python_sitelib}/librosa
|
||||
%{python_sitelib}/librosa-%{version}*-info
|
||||
|
||||
%changelog
|
||||
|
Loading…
Reference in New Issue
Block a user