## START: Set by rpmautospec
## (rpmautospec version 0.6.0)
## RPMAUTOSPEC: autorelease, autochangelog
%define autorelease(e:s:pb:n) %{?-p:0.}%{lua:
    release_number = 1;
    base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}"));
    print(release_number + base_release_number - 1);
}%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}}
## END: Set by rpmautospec

%bcond tests 1

Name:           python-lazy-loader
Version:        0.4
Release:        %autorelease
Summary:        Populate library namespace without incurring immediate import costs

License:        BSD-3-Clause
URL:            https://github.com/scientific-python/lazy_loader
Source:         %{pypi_source lazy_loader}

BuildArch:      noarch

BuildRequires:  python3-devel

%if %{with tests}
# The “test” extra includes unwanted linters, etc.; we manually BR pytest
# rather than patching out all the others from pyproject.toml.
BuildRequires:  python3dist(pytest)
# These are required for some of the tests, but are not captured in the
# metadata, so we must BR them manually as well:
BuildRequires:  python3dist(numpy)
BuildRequires:  python3dist(scipy)
%endif

%global common_description %{expand:
lazy-loader makes it easy to load subpackages and functions on demand.

Motivation:

• Allow subpackages to be made visible to users without incurring import costs.
• Allow external libraries to be imported only when used, improving import
  times.}

%description %{common_description}


%package -n python3-lazy-loader
Summary:        %{summary}

%description -n python3-lazy-loader %{common_description}


%prep
%autosetup -n lazy_loader-%{version}


%generate_buildrequires
%pyproject_buildrequires


%build
%pyproject_wheel


%install
%pyproject_install
%pyproject_save_files -l lazy_loader


%check
%if %{with tests}
%pytest
%else
%pyproject_check_import
%endif


%files -n python3-lazy-loader -f %{pyproject_files}
%doc CHANGELOG.md
%doc README.md


%changelog
## START: Generated by rpmautospec
* Fri Apr 05 2024 Benjamin A. Beasley <code@musicinmybrain.net> - 0.4-1
- Update to 0.4 (close RHBZ#2273674)

* Fri Jan 26 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.3-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild

* Mon Jan 22 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.3-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild

* Mon Dec 18 2023 Benjamin A. Beasley <code@musicinmybrain.net> - 0.3-3
- Fix missing license file

* Fri Jul 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild

* Sat Jul 01 2023 Benjamin A. Beasley <code@musicinmybrain.net> - 0.3-1
- Update to 0.3 (close RHBZ#2219067)

* Sat Jul 01 2023 Benjamin A. Beasley <code@musicinmybrain.net> - 0.2-4
- Use new (rpm 4.17.1+) bcond style

* Thu Jun 15 2023 Python Maint <python-maint@redhat.com> - 0.2-3
- Rebuilt for Python 3.12

* Wed Mar 22 2023 Benjamin A. Beasley <code@musicinmybrain.net> - 0.2-1
- Update to 0.2 (close RHBZ#2179471)

* Fri Jan 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild

* Sat Oct 22 2022 Benjamin A. Beasley <code@musicinmybrain.net> - 0.1-1
- Update to 0.1 (close RHBZ#2129267)

* Sat Oct 22 2022 Benjamin A. Beasley <code@musicinmybrain.net> - 0.1~rc3-2
- Convert License to SPDX

* Tue Aug 30 2022 Benjamin A. Beasley <code@musicinmybrain.net> - 0.1~rc3-1
- Update to 0.1~rc3 (close RHBZ#2122620)

* Fri Jul 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.1~rc2-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild

* Thu Jul 07 2022 Benjamin A. Beasley <code@musicinmybrain.net> - 0.1~rc2-3
- Fix extra newline in description

* Tue Jun 14 2022 Python Maint <python-maint@redhat.com> - 0.1~rc2-2
- Rebuilt for Python 3.11

* Sat Apr 30 2022 Benjamin A. Beasley <code@musicinmybrain.net> - 0.1~rc2-1
- Initial package (close RHBZ#2077429)
## END: Generated by rpmautospec