## START: Set by rpmautospec
## (rpmautospec version 0.3.5)
## RPMAUTOSPEC: autorelease, autochangelog
%define autorelease(e:s:pb:n) %{?-p:0.}%{lua:
    release_number = 3;
    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

# These may be disabled if they become unreliable
%bcond xvfb_tests 1

%global desc %{expand:
fsleyes-props is a library which is used by FSLeyes, and which allows you to:

- Listen for change to attributes on a python object,
- Automatically generate wxpython widgets which are bound to attributes of a
  python object
- Automatically generate a command line interface to set values of the
  attributes of a python object.}

Name:           python-fsleyes-props
Version:        1.11.0
Release:        %autorelease
Summary:        [wx]Python event programming framework

License:        Apache-2.0
URL:            https://pypi.python.org/pypi/fsleyes-props
Source:         %{pypi_source fsleyes-props}

BuildArch:      noarch

# https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval
ExcludeArch:    %{ix86}

%description %{desc}


%package -n python3-fsleyes-props
Summary:        %{summary}
BuildRequires:  python3-devel
%if %{with xvfb_tests}
BuildRequires:  xorg-x11-server-Xvfb
BuildRequires:  %{py3_dist pytest}
%endif


%description -n python3-fsleyes-props %{desc}


%prep
%autosetup -n fsleyes-props-%{version}

find fsleyes_props -name '*.py' -exec sed -r -i '1{/^#!/d}' '{}' '+'

# disable coverage
sed -i 's/--cov=fsleyes_props//' pyproject.toml


%generate_buildrequires
%pyproject_buildrequires


%build
%pyproject_wheel


%install
%pyproject_install
%pyproject_save_files fsleyes_props


%check
%if %{with xvfb_tests}
# These tests fail. Upstream says tests are not reliable, but work on his Ubuntu setup.
ignore="${ignore-} --ignore=tests/test_widget_boolean.py"
ignore="${ignore-} --ignore=tests/test_widget_number.py"
ignore="${ignore-} --ignore=tests/test_widget_point.py"

%global __pytest xvfb-run -a pytest
%pytest -v ${ignore-}
%endif


%files -n python3-fsleyes-props -f %{pyproject_files}
%license LICENSE COPYRIGHT
%doc CHANGELOG.rst
%doc README.rst

%changelog
* Tue Oct 24 2023 Benjamin A. Beasley <code@musicinmybrain.net> - 1.11.0-3
- Exclude i686 (leaf package)

* Tue Oct 24 2023 Benjamin A. Beasley <code@musicinmybrain.net> - 1.11.0-2
- Re-enable the xvfb tests, as they seem to be reliable now

* Tue Oct 24 2023 Benjamin A. Beasley <code@musicinmybrain.net> - 1.11.0-1
- Update to 1.11.0 (close RHBZ#2239464)

* Tue Oct 24 2023 Benjamin A. Beasley <code@musicinmybrain.net> - 1.10.0-10
- Package the changelog as documentation

* Tue Oct 24 2023 Benjamin A. Beasley <code@musicinmybrain.net> - 1.10.0-3
- Description typo fix

* Tue Oct 24 2023 Benjamin A. Beasley <code@musicinmybrain.net> - 1.10.0-2
- Fix initial blank lines in descriptions

* Sat Jul 22 2023 Ankur Sinha (Ankur Sinha Gmail) <sanjay.ankur@gmail.com> - 1.10.0-1
- feat: update to 1.10.0 (fixes rhbz#2220242, rhbz#2220902)

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

* Mon Jun 12 2023 Ankur Sinha (Ankur Sinha Gmail) <sanjay.ankur@gmail.com> - 1.9.3-1
- feat: update to 1.9.3

* Mon Feb 27 2023 Ankur Sinha (Ankur Sinha Gmail) <sanjay.ankur@gmail.com> - 1.9.1-1
- feat: update to 1.9.1 (fixes rhbz#2171872)

* Fri Feb 17 2023 Ankur Sinha (Ankur Sinha Gmail) <sanjay.ankur@gmail.com> - 1.8.3-1
- feat: update to 1.8.3 (fixes rhbz#2169358)

* Fri Feb 17 2023 Ankur Sinha (Ankur Sinha Gmail) <sanjay.ankur@gmail.com> - 1.8.2-3
- feat: use spdx license terminology

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

* Sun Oct 16 2022 Ankur Sinha (Ankur Sinha Gmail) <sanjay.ankur@gmail.com> - 1.8.2-1
- feat: update to 1.8.2 (fixes rhbz#2119319)

* Sun Oct 16 2022 Ankur Sinha (Ankur Sinha Gmail) <sanjay.ankur@gmail.com> - 1.7.3-6
- chore: modernise spec to use pyproject macros

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

* Tue Jun 28 2022 Python Maint <python-maint@redhat.com> - 1.7.3-3
- Rebuilt for Python 3.11

* Fri Jan 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild

* Sat Aug 07 2021 Ankur Sinha <ankursinha AT fedoraproject DOT org> - 1.7.3-1
- Update to latest release

* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.2-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild

* Fri Jun 04 2021 Python Maint <python-maint@redhat.com> - 1.7.2-2
- Rebuilt for Python 3.10

* Sun Mar 28 2021 Ankur Sinha <ankursinha AT fedoraproject DOT org> - 1.7.2-1
- Update to latest release

* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.0-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild

* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild

* Thu Jun 25 2020 Ankur Sinha <ankursinha AT fedoraproject DOT org> - 1.7.0-2
- Explicitly BR setuptools

* Sun Jun 21 2020 Ankur Sinha <ankursinha AT fedoraproject DOT org> - 1.7.0-1
- Update to 1.7.0

* Tue May 26 2020 Miro Hrončok <mhroncok@redhat.com> - 1.6.7-5
- Rebuilt for Python 3.9

* Fri Mar 06 2020 Ankur Sinha <ankursinha AT fedoraproject DOT org> - 1.6.7-4
- Fix typo in requirements

* Sun Feb 16 2020 Ankur Sinha <ankursinha AT fedoraproject DOT org> - 1.6.7-3
- Work around requirement autogenerator limitations

* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.6.7-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild

* Mon Oct 28 2019 Ankur Sinha <ankursinha AT fedoraproject DOT org> - 1.6.7-1
- Update to 1.6.7
- use conditional for unreliable tests

* Mon Oct 28 2019 Ankur Sinha <ankursinha AT fedoraproject DOT org> - 1.6.6-2
- Remove python2 code from spec

* Mon Sep 23 2019 Aniket Pradhan <major AT fedoraproject DOT org> - 1.6.6-1
- Update to 1.6.6

* Mon Aug 19 2019 Miro Hrončok <mhroncok@redhat.com> - 1.6.5-3
- Rebuilt for Python 3.8

* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.6.5-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild

* Sat Feb 16 2019 Ankur Sinha <ankursinha AT fedoraproject DOT org> - 1.6.5-1
- Update to new release

* Sat Feb 02 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.6.4-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild

* Thu Nov 08 2018 Ankur Sinha <ankursinha AT fedoraproject DOT org> - 1.6.4-1
- Initial build