# # spec file for package python-lockfile # # Copyright (c) 2020 SUSE LLC # # 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/ # %{?!python_module:%define python_module() python-%{**} python3-%{**}} %define skip_python2 1 %define skip_python36 1 %define skip_python39 1 Name: python-lockfile Version: 0.12.2 Release: 2.7 Summary: Platform-independent file locking module License: MIT Group: Development/Languages/Python URL: https://github.com/openstack/pylockfile Source: https://files.pythonhosted.org/packages/source/l/lockfile/lockfile-%{version}.tar.gz Patch0: %{name}-empty_ident.patch Patch1: convert-to-unittest.patch BuildRequires: %{python_module pbr} BuildRequires: %{python_module pytest} BuildRequires: %{python_module setuptools} BuildRequires: fdupes BuildRequires: python-rpm-macros BuildArch: noarch %python_subpackages %description The lockfile package exports a LockFile class which provides a simple API for locking files. Unlike the Windows msvcrt.locking function, the fcntl.lockf and flock functions, and the deprecated posixfile module, the API is identical across both Unix (including Linux and Mac) and Windows platforms. The lock mechanism relies on the atomic nature of the link (on Unix) and mkdir (on Windows) system calls. An implementation based on SQLite is also provided, more as a demonstration of the possibilities it provides than as production-quality code. %prep %setup -q -n lockfile-%{version} # current thread has ident = None, which causes a TypeError # http://code.google.com/p/pylockfile/issues/detail?id=8 %patch0 -p1 %patch1 -p1 %build %python_build %install %python_install %python_expand %fdupes %{buildroot}%{$python_sitelib} %check %pytest %files %{python_files} %license LICENSE %doc README.rst AUTHORS ACKS RELEASE-NOTES ChangeLog %{python_sitelib}/lockfile* %changelog * Sun Aug 16 2020 John Vandenberg - Add convert-to-unittest.patch to switch from nose to pytest - Add %%fdupes * Mon Feb 25 2019 John Vandenberg - Add AUTHORS, ACKS and ChangeLog to %%doc - Update to v0.12.2 * Add warning to README.rst - from 0.12.1 * Remove Python 2.6 classifier * Remove python 2.6 * Remove two unused variables: fix flake8 F841 warn * Fix flake8 warnings * PBR setup requirement only * Support universal wheels - from 0.11.0 * Add deprecated warnings to index.rst * Fix PIDLockFile.acquire() may loop indefinitely * Fix failure - from lockfile import * * lockfile.acquire doesn't accept a timeout of 0 * Update README format for our release script * Begin moving some of the common code to a shared base * Add pbr to dependency list * The version of sphinx being brought in is broken * Fix Git URLs * Tue Dec 4 2018 Matej Cepl - Remove superfluous devel dependency for noarch package * Thu Aug 24 2017 jmatejek@suse.com - singlespec auto-conversion * Thu May 7 2015 benoit.monin@gmx.fr - update to version 0.10.2: * Fix package name - additional changes from version 0.10.1: * Add missing cover env in tox - additional changes from version 0.10.0: * Fix documentation bug report address * Add py34 in tox * Remove old diff file * Add .gitreview, tox targets and use pbr * fix for timeout=0 * remove 2.5, 3.1 and 3.4 from the list for the time being - may get added back later * Bugfix: locking two different files in the same directory caused an error during unlocking the last unlocking * typo - update project URL - point the source URL to pypi - add new build dependencies: python-nose, python-pbr and python-setuptools - run the tests during build with nosetests * Mon Jul 21 2014 fcrozat@suse.com - Add LICENSE to %%doc * Wed Jun 27 2012 saschpe@suse.de - Less macros * Thu Feb 2 2012 iartarisi@suse.cz - added a patch to fix a TypeError in LockBase.__init__ when the current thread has ident == None * Sat Apr 16 2011 alexandre@exatati.com.br - Regenerate spec file with py2pack; - Add README and RELEASE-NOTES files as documentation. * Sun Sep 19 2010 alexandre@exatati.com.br - Update to 0.9.1; - Bzip2 source file; - Spec file cleaned with spec-cleaner. * Thu Sep 24 2009 alexandre@exatati.com.br - Initial package (0.8) for openSUSE.