%global _empty_manifest_terminate_build 0 Name: python-fastentrypoints Version: 0.12 Release: 1 Summary: Makes entry_points specified in setup.py load more quickly License: BSD URL: https://github.com/ninjaaron/fast-entry_points Source0: https://mirrors.nju.edu.cn/pypi/web/packages/56/59/69d9ae590ca39435d409651314ec13b2abe8127c1db0231c01d034ebb6b0/fastentrypoints-0.12.tar.gz BuildArch: noarch %description Using ``entry_points`` in your setup.py makes scripts that start really slowly because it imports ``pkg_resources``, which is a horrible thing to do if you want your trivial script to execute more or less instantly. check it out: https://github.com/pypa/setuptools/issues/510 importing ``fastentrypoints`` in your setup.py file produces scripts that look like this: # -*- coding: utf-8 -*- import re import sys from package.module import entry_function if __name__ == '__main__': sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0]) sys.exit(entry_function()) This is ripped directly from the way wheels do it and is faster than whatever the heck the normal console scripts do. Note: This bug in setuptools only affects packages built with the normal setup.py method. Building wheels avoids the problem and has many other benefits as well. ``fastentrypoints`` simply ensures that your user scripts will not automatically import pkg_resources, no matter how they are built. %package -n python3-fastentrypoints Summary: Makes entry_points specified in setup.py load more quickly Provides: python-fastentrypoints BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip %description -n python3-fastentrypoints Using ``entry_points`` in your setup.py makes scripts that start really slowly because it imports ``pkg_resources``, which is a horrible thing to do if you want your trivial script to execute more or less instantly. check it out: https://github.com/pypa/setuptools/issues/510 importing ``fastentrypoints`` in your setup.py file produces scripts that look like this: # -*- coding: utf-8 -*- import re import sys from package.module import entry_function if __name__ == '__main__': sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0]) sys.exit(entry_function()) This is ripped directly from the way wheels do it and is faster than whatever the heck the normal console scripts do. Note: This bug in setuptools only affects packages built with the normal setup.py method. Building wheels avoids the problem and has many other benefits as well. ``fastentrypoints`` simply ensures that your user scripts will not automatically import pkg_resources, no matter how they are built. %package help Summary: Development documents and examples for fastentrypoints Provides: python3-fastentrypoints-doc %description help Using ``entry_points`` in your setup.py makes scripts that start really slowly because it imports ``pkg_resources``, which is a horrible thing to do if you want your trivial script to execute more or less instantly. check it out: https://github.com/pypa/setuptools/issues/510 importing ``fastentrypoints`` in your setup.py file produces scripts that look like this: # -*- coding: utf-8 -*- import re import sys from package.module import entry_function if __name__ == '__main__': sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0]) sys.exit(entry_function()) This is ripped directly from the way wheels do it and is faster than whatever the heck the normal console scripts do. Note: This bug in setuptools only affects packages built with the normal setup.py method. Building wheels avoids the problem and has many other benefits as well. ``fastentrypoints`` simply ensures that your user scripts will not automatically import pkg_resources, no matter how they are built. %prep %autosetup -n fastentrypoints-0.12 %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-fastentrypoints -f filelist.lst %dir %{python3_sitelib}/* %files help -f doclist.lst %{_docdir}/* %changelog * Tue Apr 11 2023 Python_Bot - 0.12-1 - Package Spec generated