Blob Blame History Raw
%global srcname filelock

%if 0%{?fedora}
%bcond_without docs
%bcond_without tests
%else
%bcond_with docs
%bcond_with tests
%endif

Name:           python-%{srcname}
Version:        3.15.4
Release:        3%{?dist}
Summary:        A platform independent file lock

License:        Unlicense
URL:            https://github.com/tox-dev/filelock
Source0:        https://github.com/tox-dev/filelock/archive/%{version}/%{srcname}-%{version}.tar.gz

BuildArch:      noarch

BuildRequires:  python3-devel
BuildRequires:  pyproject-rpm-macros
%if %{with tests}
# We cannot install extra dependencies because there are some
# we do not have in Fedora like covdefaults in testing.
# Test dependencies
BuildRequires:  python3-pytest
BuildRequires:  python3-pytest-asyncio
BuildRequires:  python3-pytest-mock
BuildRequires:  python3-pytest-timeout
BuildRequires:  python3-virtualenv
%endif
%if %{with docs}
# Doc dependencies
BuildRequires:  python3-furo
BuildRequires:  python3-sphinx
BuildRequires:  python3-sphinx-autodoc-typehints
%endif

%description
This package contains a single module, which implements a platform independent
file locking mechanism for Python.

The lock includes a lock counter and is thread safe. This means, when locking
the same lock object twice, it will not block.

%package -n python%{python3_pkgversion}-%{srcname}
Summary:        %{summary}

%if 0%{?fedora}
Suggests:       %{name}-doc
%endif

%description -n python%{python3_pkgversion}-%{srcname}
This package contains a single module, which implements a platform independent
file locking mechanism for Python.

The lock includes a lock counter and is thread safe. This means, when locking
the same lock object twice, it will not block.

%if %{with docs}
%package doc
Summary:        Documentation for %{srcname}, %{summary}

%description doc
%{summary}
%endif

%prep
%autosetup -p1 -n %{srcname}-%{version}

%generate_buildrequires
SETUPTOOLS_SCM_PRETEND_VERSION=%{version}; export SETUPTOOLS_SCM_PRETEND_VERSION
%pyproject_buildrequires -r

%build
SETUPTOOLS_SCM_PRETEND_VERSION=%{version}; export SETUPTOOLS_SCM_PRETEND_VERSION
%pyproject_wheel

%if %{with docs}
pushd docs
PYTHONPATH=../src sphinx-build ./ html --color -b html -d doctrees
rm html/.buildinfo
popd
%endif

%install
%pyproject_install
%pyproject_save_files -l %{srcname}

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

%if %{with docs}
%files doc
%license LICENSE
%doc docs/html
%endif

%files -n python%{python3_pkgversion}-%{srcname} -f %{pyproject_files}
%doc README.md


%changelog
* Wed Aug 21 2024 Miro Hrončok <miro@hroncok.cz> - 3.15.4-3
- Disable tests in EPEL until dependencies are ready in EPEL 10

* Fri Jul 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 3.15.4-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild

* Sat Jun 22 2024 Scott K Logan <logans@cottsay.net> - 3.15.4-1
- Update to 3.15.4 (rbhz#2293528)

* Mon Jun 17 2024 Scott K Logan <logans@cottsay.net> - 3.15.1-1
- Update to 3.15.1 (rhbz#2277856)
- Drop setuptools version workaround

* Sun Jun 09 2024 Python Maint <python-maint@redhat.com> - 3.13.4-4
- Rebuilt for Python 3.13

* Fri Jun 07 2024 Python Maint <python-maint@redhat.com> - 3.13.4-3
- Bootstrap for Python 3.13

* Mon May 20 2024 Yaakov Selkowitz <yselkowi@redhat.com> - 3.13.4-2
- Enable furo in docs

* Thu Apr 18 2024 Scott K Logan <logans@cottsay.net> - 3.13.4-1
- Update to 3.13.4 (rhbz#2271415)
- Drop explicit %%%%license in favor of one provided in wheel

* Tue Jan 23 2024 Scott K Logan <logans@cottsay.net> - 3.13.1-1
- Update to 3.13.1

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

* Tue Jul 25 2023 Scott K Logan <logans@cottsay.net> - 3.12.2-1
- Update to 3.12.0 (rhbz#2156777)
- Switch back to GitHub upstream, PyPI doesn't provide docs
- Drop man page, which no longer generates correctly and doesn't appear to
  be supported upstream

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

* Thu Jun 29 2023 Python Maint <python-maint@redhat.com> - 3.8.2-4
- Rebuilt for Python 3.12

* Tue Jun 13 2023 Python Maint <python-maint@redhat.com> - 3.8.2-3
- Bootstrap for Python 3.12

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

* Thu Dec 08 2022 Lumir Balhar <lbalhar@redhat.com> - 3.8.2-1
- Update to 3.8.2 (rhbz#2150782)

* Sun Aug 07 2022 Mikel Olasagasti Uranga <mikel@olasagasti.info> - 3.7.1-1
- Update to 3.7.1 - Closes rhbz#2018436

* Mon Jun 13 2022 Python Maint <python-maint@redhat.com> - 3.3.1-4
- Rebuilt for Python 3.11

* Mon Jun 13 2022 Python Maint <python-maint@redhat.com> - 3.3.1-3
- Bootstrap for Python 3.11

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

* Mon Oct 25 2021 Lumír Balhar <lbalhar@redhat.com> - 3.3.1-1
- Update to 3.3.1, drop Python 2 support
Resolves: rhbz#2008102

* Tue Jul 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 3.0.12-12
- Second attempt - Rebuilt for
  https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild

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

* Wed Jun 02 2021 Python Maint <python-maint@redhat.com> - 3.0.12-10
- Bootstrap for Python 3.10

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

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

* Sat May 23 2020 Miro Hrončok <mhroncok@redhat.com> - 3.0.12-7
- Rebuilt for Python 3.9

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

* Thu Oct 03 2019 Miro Hrončok <mhroncok@redhat.com> - 3.0.12-5
- Rebuilt for Python 3.8.0rc1 (#1748018)

* Sat Aug 17 2019 Miro Hrončok <mhroncok@redhat.com> - 3.0.12-4
- Rebuilt for Python 3.8

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

* Fri Jun 28 2019 Scott K Logan <logans@cottsay.net> - 3.0.12-2
- Add explicit conflict between unlike python2/3 subpackages (rhbz#1708871)
- Make the -doc subpackage dependency weaker

* Sun May 19 2019 Scott K Logan <logans@cottsay.net> - 3.0.12-1
- Update to 3.0.12 (rhbz#1711583)
- Switch to Python 3 sphinx

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

* Fri Nov 16 2018 Scott K Logan <logans@cottsay.net> - 3.0.10-1
- Update to 3.0.10

* Tue Oct 30 2018 Scott K Logan <logans@cottsay.net> - 3.0.9-1
- Update to 3.0.9
- Add spec conditionals for python version targeting (rhbz#1632320)
- Fix theme package dependency (s/sphinx_rtd_theme/sphinx-theme-alabaster/)

* Fri Sep 14 2018 Scott K Logan <logans@cottsay.net> - 3.0.8-1
- Update to 3.0.8 (rhbz#1459712)

* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.8-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild

* Tue Jun 19 2018 Miro Hrončok <mhroncok@redhat.com> - 2.0.8-6
- Rebuilt for Python 3.7

* Mon Feb 12 2018 Iryna Shcherbina <ishcherb@redhat.com> - 2.0.8-5
- Update Python 2 dependency declarations to new packaging standards
  (See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3)

* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.8-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild

* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.8-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild

* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.8-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild

* Sat Feb 04 2017 Scott K Logan <logans@cottsay.net> - 2.0.8-1
- Update to version 2.0.8

* Mon Dec 19 2016 Miro Hrončok <mhroncok@redhat.com> - 2.0.6-2
- Rebuild for Python 3.6

* Sun May 01 2016 Scott K Logan <logans@cottsay.net> - 2.0.6-1
- Initial package