From 17a89143ceaacc048ff19151f57b34df029a7f20 Mon Sep 17 00:00:00 2001 From: CoprDistGit Date: Thu, 18 May 2023 06:30:32 +0000 Subject: automatic import of python-pyfastcopy --- python-pyfastcopy.spec | 123 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 123 insertions(+) create mode 100644 python-pyfastcopy.spec (limited to 'python-pyfastcopy.spec') diff --git a/python-pyfastcopy.spec b/python-pyfastcopy.spec new file mode 100644 index 0000000..29437a0 --- /dev/null +++ b/python-pyfastcopy.spec @@ -0,0 +1,123 @@ +%global _empty_manifest_terminate_build 0 +Name: python-pyfastcopy +Version: 1.0.3 +Release: 1 +Summary: Speed up shutil.copyfile by using sendfile system call +License: Python Software Foundation License +URL: https://github.com/desbma/pyfastcopy +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/43/80/535d6b3de415e26d0a1cb774c6895dd07aa5986d2f8bde200393bd916790/pyfastcopy-1.0.3.tar.gz +BuildArch: noarch + + +%description +|Latest version| |Tests status| |Coverage| |Supported Python versions| +pyfastcopy is a simple Python module that monkey patches the +``shutil.copyfile`` function of Python standard library to internally +use the sendfile system call. +It can provide important performance improvements for large file copy +(typically 30-40%). See `the performance section <#performance>`__ for +some numbers. +Because ``shutil.copyfile`` is used by other fonctions in the ``shutil`` +module, the following functions also automatically benefit from the +performance boost: +- ``shutil.copy`` +- ``shutil.copy2`` +- ``shutil.copytree`` +If ``sendfile`` is not available on your system or fails, the classic, +slower chunk file copy is used, so there is no downside to using this +module. +For more information, see `my proposed +patch `__ for Python. + +%package -n python3-pyfastcopy +Summary: Speed up shutil.copyfile by using sendfile system call +Provides: python-pyfastcopy +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-pyfastcopy +|Latest version| |Tests status| |Coverage| |Supported Python versions| +pyfastcopy is a simple Python module that monkey patches the +``shutil.copyfile`` function of Python standard library to internally +use the sendfile system call. +It can provide important performance improvements for large file copy +(typically 30-40%). See `the performance section <#performance>`__ for +some numbers. +Because ``shutil.copyfile`` is used by other fonctions in the ``shutil`` +module, the following functions also automatically benefit from the +performance boost: +- ``shutil.copy`` +- ``shutil.copy2`` +- ``shutil.copytree`` +If ``sendfile`` is not available on your system or fails, the classic, +slower chunk file copy is used, so there is no downside to using this +module. +For more information, see `my proposed +patch `__ for Python. + +%package help +Summary: Development documents and examples for pyfastcopy +Provides: python3-pyfastcopy-doc +%description help +|Latest version| |Tests status| |Coverage| |Supported Python versions| +pyfastcopy is a simple Python module that monkey patches the +``shutil.copyfile`` function of Python standard library to internally +use the sendfile system call. +It can provide important performance improvements for large file copy +(typically 30-40%). See `the performance section <#performance>`__ for +some numbers. +Because ``shutil.copyfile`` is used by other fonctions in the ``shutil`` +module, the following functions also automatically benefit from the +performance boost: +- ``shutil.copy`` +- ``shutil.copy2`` +- ``shutil.copytree`` +If ``sendfile`` is not available on your system or fails, the classic, +slower chunk file copy is used, so there is no downside to using this +module. +For more information, see `my proposed +patch `__ for Python. + +%prep +%autosetup -n pyfastcopy-1.0.3 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-pyfastcopy -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Thu May 18 2023 Python_Bot - 1.0.3-1 +- Package Spec generated -- cgit v1.2.3