diff options
author | CoprDistGit <copr-devel@lists.fedorahosted.org> | 2023-03-09 07:22:34 +0000 |
---|---|---|
committer | CoprDistGit <copr-devel@lists.fedorahosted.org> | 2023-03-09 07:22:34 +0000 |
commit | 4e305a48189d31c682c4d30c544c7e61d52080a0 (patch) | |
tree | 176cc3f394e997984d3a20a38f4a8f7166323149 /python-easyargs.spec | |
parent | ab7978037c2ab1a6cdf576280057cddca811c189 (diff) |
automatic import of python-easyargs
Diffstat (limited to 'python-easyargs.spec')
-rw-r--r-- | python-easyargs.spec | 183 |
1 files changed, 183 insertions, 0 deletions
diff --git a/python-easyargs.spec b/python-easyargs.spec new file mode 100644 index 0000000..0cdcc69 --- /dev/null +++ b/python-easyargs.spec @@ -0,0 +1,183 @@ +%global _empty_manifest_terminate_build 0 +Name: python-easyargs +Version: 0.9.4 +Release: 1 +Summary: Making argument parsing easy +License: MIT +URL: https://github.com/stedmeister/easyargs +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/45/ce/ebbce6a97305e2bd5e2bcfdeb79409ed7d43d1a383b85db52c6bbacd9e4d/easyargs-0.9.4.tar.gz +BuildArch: noarch + +Requires: python3-six +Requires: python3-check-manifest +Requires: python3-coverage + +%description +A project designed to make command line argument parsing easy. +There are many ways to create a command line parser in python: argparse, docopt, +click. These are all great options, but require quite a lot of configuration +and sometimes you just need a function to be called. Enter easyargs. Define +the function that you want to be called, decorate it and let easyargs work out +the command line. This is probably best shown with an example that takes one +required argument and two optional ones: + from __future__ import print_function + import easyargs + @easyargs + def main(name, count=1, greeting='Hello'): + """A simple greeting program""" + for i in range(count): + print('{greeting} {name}!'.format(greeting=greeting, name=name)) + if __name__ == '__main__': + main() +In this example, main is inspected, the arg keywords are turned into +positional arguments and the kwarg keywords will be turned +into optional arguments. This can be seen if we run the above script with the +help flag: + $ python simple.py -h + usage: simple_test.py [-h] [--count COUNT] [--greeting GREETING] name + A simple greeting program + positional arguments: + name + optional arguments: + -h, --help show this help message and exit + --count COUNT + --greeting GREETING +A few things worth noting. Firstly, the description is taken from the docstring +of the function. Secondly, there is no need to convert count to an integer. +Because the default argument is of type int, the value is coerced to an integer: + $ python simple.py World + Hello World + $ python simple.py everybody --count 2 --greeting Hola + Hola everybody! + Hola everybody! + +%package -n python3-easyargs +Summary: Making argument parsing easy +Provides: python-easyargs +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-easyargs +A project designed to make command line argument parsing easy. +There are many ways to create a command line parser in python: argparse, docopt, +click. These are all great options, but require quite a lot of configuration +and sometimes you just need a function to be called. Enter easyargs. Define +the function that you want to be called, decorate it and let easyargs work out +the command line. This is probably best shown with an example that takes one +required argument and two optional ones: + from __future__ import print_function + import easyargs + @easyargs + def main(name, count=1, greeting='Hello'): + """A simple greeting program""" + for i in range(count): + print('{greeting} {name}!'.format(greeting=greeting, name=name)) + if __name__ == '__main__': + main() +In this example, main is inspected, the arg keywords are turned into +positional arguments and the kwarg keywords will be turned +into optional arguments. This can be seen if we run the above script with the +help flag: + $ python simple.py -h + usage: simple_test.py [-h] [--count COUNT] [--greeting GREETING] name + A simple greeting program + positional arguments: + name + optional arguments: + -h, --help show this help message and exit + --count COUNT + --greeting GREETING +A few things worth noting. Firstly, the description is taken from the docstring +of the function. Secondly, there is no need to convert count to an integer. +Because the default argument is of type int, the value is coerced to an integer: + $ python simple.py World + Hello World + $ python simple.py everybody --count 2 --greeting Hola + Hola everybody! + Hola everybody! + +%package help +Summary: Development documents and examples for easyargs +Provides: python3-easyargs-doc +%description help +A project designed to make command line argument parsing easy. +There are many ways to create a command line parser in python: argparse, docopt, +click. These are all great options, but require quite a lot of configuration +and sometimes you just need a function to be called. Enter easyargs. Define +the function that you want to be called, decorate it and let easyargs work out +the command line. This is probably best shown with an example that takes one +required argument and two optional ones: + from __future__ import print_function + import easyargs + @easyargs + def main(name, count=1, greeting='Hello'): + """A simple greeting program""" + for i in range(count): + print('{greeting} {name}!'.format(greeting=greeting, name=name)) + if __name__ == '__main__': + main() +In this example, main is inspected, the arg keywords are turned into +positional arguments and the kwarg keywords will be turned +into optional arguments. This can be seen if we run the above script with the +help flag: + $ python simple.py -h + usage: simple_test.py [-h] [--count COUNT] [--greeting GREETING] name + A simple greeting program + positional arguments: + name + optional arguments: + -h, --help show this help message and exit + --count COUNT + --greeting GREETING +A few things worth noting. Firstly, the description is taken from the docstring +of the function. Secondly, there is no need to convert count to an integer. +Because the default argument is of type int, the value is coerced to an integer: + $ python simple.py World + Hello World + $ python simple.py everybody --count 2 --greeting Hola + Hola everybody! + Hola everybody! + +%prep +%autosetup -n easyargs-0.9.4 + +%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-easyargs -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Thu Mar 09 2023 Python_Bot <Python_Bot@openeuler.org> - 0.9.4-1 +- Package Spec generated |