summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2023-05-31 04:22:05 +0000
committerCoprDistGit <infra@openeuler.org>2023-05-31 04:22:05 +0000
commit9af2dbb13e538f18687e322bc9ab8fff6f59f0a7 (patch)
treec2a9868833ac3283095ba4078ec903d7c45b2b93
parentb86454cc9bc422764cdc2284eb5cb91650cf38e8 (diff)
automatic import of python-generic-parser
-rw-r--r--.gitignore1
-rw-r--r--python-generic-parser.spec421
-rw-r--r--sources1
3 files changed, 423 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..18c73ee 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/generic_parser-1.1.1.tar.gz
diff --git a/python-generic-parser.spec b/python-generic-parser.spec
new file mode 100644
index 0000000..48df616
--- /dev/null
+++ b/python-generic-parser.spec
@@ -0,0 +1,421 @@
+%global _empty_manifest_terminate_build 0
+Name: python-generic-parser
+Version: 1.1.1
+Release: 1
+Summary: A parser for arguments and config-files that also allows direct python input.
+License: MIT
+URL: https://github.com/pylhc/generic_parser
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/ba/08/56ca64678aaa2d3ece1abda3147dcbb7a685aebf57cc3f9ca08182cb88ab/generic_parser-1.1.1.tar.gz
+BuildArch: noarch
+
+Requires: python3-sphinx
+Requires: python3-travis-sphinx
+Requires: python3-sphinx-rtd-theme
+Requires: python3-pytest
+Requires: python3-pytest-cov
+Requires: python3-hypothesis
+Requires: python3-attrs
+
+%description
+# Generic Parser
+[![Cron Testing](https://github.com/pylhc/generic_parser/workflows/Cron%20Testing/badge.svg)](https://github.com/pylhc/generic_parser/actions?query=workflow%3A%22Cron+Testing%22)
+[![Code Climate coverage](https://img.shields.io/codeclimate/coverage/pylhc/generic_parser.svg?style=popout)](https://codeclimate.com/github/pylhc/generic_parser)
+[![Code Climate maintainability (percentage)](https://img.shields.io/codeclimate/maintainability-percentage/pylhc/generic_parser.svg?style=popout)](https://codeclimate.com/github/pylhc/generic_parser)
+<!-- [![GitHub last commit](https://img.shields.io/github/last-commit/pylhc/generic_parser.svg?style=popout)](https://github.com/pylhc/generic_parser/) -->
+[![PyPI Version](https://img.shields.io/pypi/v/generic_parser?label=PyPI&logo=pypi)](https://pypi.org/project/generic_parser/)
+[![GitHub release](https://img.shields.io/github/v/release/pylhc/generic_parser?logo=github)](https://github.com/pylhc/generic_parser/)
+[![Conda-forge Version](https://img.shields.io/conda/vn/conda-forge/generic_parser?color=orange&logo=anaconda)](https://anaconda.org/conda-forge/generic_parser)
+[![DOI](https://zenodo.org/badge/201085116.svg)](https://zenodo.org/badge/latestdoi/201085116)
+
+The package provides an all-around parser for arguments and config-files.
+The creation of the arguments is similar to the ones from argparse, but the input can then be either from command line, a config file or directly from python.
+
+See the [API documentation](https://pylhc.github.io/generic_parser/) for details.
+
+## Installing
+
+Installation is easily done via `pip`. The package is then used as `generic_parser`.
+```bash
+python -m pip install generic-parser
+```
+
+One can also install in a `conda` environment via the `conda-forge` channel with:
+```bash
+conda install -c conda-forge generic_parser
+```
+
+## Example Usage:
+
+Content of `myscript.py`
+```python
+from generic_parser import entrypoint, EntryPointParameters
+
+
+def get_arguments():
+ args = EntryPointParameters()
+ args.add_parameter(name="first",
+ flags=["-f", "--first"],
+ help="First Parameter, an int",
+ choices=[1, 2, 3],
+ type=int,
+ required=True,
+ )
+ args.add_parameter(name="second",
+ flags=["-s", "--second"],
+ help="Second Parameter, a string",
+ type=str,
+ default="default",
+ required=False,
+ )
+ return args
+
+
+@entrypoint(get_arguments())
+def main(opt, unknown):
+ print(opt.first == 1)
+ print(opt.second == "default")
+
+
+if __name__ == '__main__':
+ main()
+```
+
+### Commandline
+
+Calling that script with ``python myscript.py -f 1 -s "test"`` will result in:
+```
+True
+False
+```
+
+It is assumed, that this is the standard mode of operation for your functions.
+
+#### Config File
+
+Further, one can also use a config file `config.ini` containing:
+```
+[Section]
+first = 2
+second = "Hello"
+```
+
+and run the script with `python myscript.py --entry_cfg config.ini` leading to
+```
+False
+False
+```
+
+Config files are very useful if you want to rerun your code with the same or similar parameters.
+Especially the declaration of a `[DEFAULT]` section can be helpful.
+For further information about config files, check the python [Config Parser](https://docs.python.org/3/library/configparser.html).
+
+### Python
+Or call the function directly from python code:
+```python
+if __name__ == '__main__':
+ main(first=1, second="World")
+```
+
+```
+True
+False
+```
+
+This is incredibly helpful if one wants to write python-wrappers around entrypoint-functions,
+and does not want to resort to commandline calls from python.
+
+Note that also in this case all variables are validated, courtesy of the `dict_parser`.
+`dict_parser` provides even multi-level dictionary checking functionality,
+which is not used in the `Entrypoint`, but can be handy in other use-cases.
+
+## License
+
+This project is licensed under the MIT License - see the [LICENSE.md](LICENSE.md) file for details
+
+
+%package -n python3-generic-parser
+Summary: A parser for arguments and config-files that also allows direct python input.
+Provides: python-generic-parser
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-generic-parser
+# Generic Parser
+[![Cron Testing](https://github.com/pylhc/generic_parser/workflows/Cron%20Testing/badge.svg)](https://github.com/pylhc/generic_parser/actions?query=workflow%3A%22Cron+Testing%22)
+[![Code Climate coverage](https://img.shields.io/codeclimate/coverage/pylhc/generic_parser.svg?style=popout)](https://codeclimate.com/github/pylhc/generic_parser)
+[![Code Climate maintainability (percentage)](https://img.shields.io/codeclimate/maintainability-percentage/pylhc/generic_parser.svg?style=popout)](https://codeclimate.com/github/pylhc/generic_parser)
+<!-- [![GitHub last commit](https://img.shields.io/github/last-commit/pylhc/generic_parser.svg?style=popout)](https://github.com/pylhc/generic_parser/) -->
+[![PyPI Version](https://img.shields.io/pypi/v/generic_parser?label=PyPI&logo=pypi)](https://pypi.org/project/generic_parser/)
+[![GitHub release](https://img.shields.io/github/v/release/pylhc/generic_parser?logo=github)](https://github.com/pylhc/generic_parser/)
+[![Conda-forge Version](https://img.shields.io/conda/vn/conda-forge/generic_parser?color=orange&logo=anaconda)](https://anaconda.org/conda-forge/generic_parser)
+[![DOI](https://zenodo.org/badge/201085116.svg)](https://zenodo.org/badge/latestdoi/201085116)
+
+The package provides an all-around parser for arguments and config-files.
+The creation of the arguments is similar to the ones from argparse, but the input can then be either from command line, a config file or directly from python.
+
+See the [API documentation](https://pylhc.github.io/generic_parser/) for details.
+
+## Installing
+
+Installation is easily done via `pip`. The package is then used as `generic_parser`.
+```bash
+python -m pip install generic-parser
+```
+
+One can also install in a `conda` environment via the `conda-forge` channel with:
+```bash
+conda install -c conda-forge generic_parser
+```
+
+## Example Usage:
+
+Content of `myscript.py`
+```python
+from generic_parser import entrypoint, EntryPointParameters
+
+
+def get_arguments():
+ args = EntryPointParameters()
+ args.add_parameter(name="first",
+ flags=["-f", "--first"],
+ help="First Parameter, an int",
+ choices=[1, 2, 3],
+ type=int,
+ required=True,
+ )
+ args.add_parameter(name="second",
+ flags=["-s", "--second"],
+ help="Second Parameter, a string",
+ type=str,
+ default="default",
+ required=False,
+ )
+ return args
+
+
+@entrypoint(get_arguments())
+def main(opt, unknown):
+ print(opt.first == 1)
+ print(opt.second == "default")
+
+
+if __name__ == '__main__':
+ main()
+```
+
+### Commandline
+
+Calling that script with ``python myscript.py -f 1 -s "test"`` will result in:
+```
+True
+False
+```
+
+It is assumed, that this is the standard mode of operation for your functions.
+
+#### Config File
+
+Further, one can also use a config file `config.ini` containing:
+```
+[Section]
+first = 2
+second = "Hello"
+```
+
+and run the script with `python myscript.py --entry_cfg config.ini` leading to
+```
+False
+False
+```
+
+Config files are very useful if you want to rerun your code with the same or similar parameters.
+Especially the declaration of a `[DEFAULT]` section can be helpful.
+For further information about config files, check the python [Config Parser](https://docs.python.org/3/library/configparser.html).
+
+### Python
+Or call the function directly from python code:
+```python
+if __name__ == '__main__':
+ main(first=1, second="World")
+```
+
+```
+True
+False
+```
+
+This is incredibly helpful if one wants to write python-wrappers around entrypoint-functions,
+and does not want to resort to commandline calls from python.
+
+Note that also in this case all variables are validated, courtesy of the `dict_parser`.
+`dict_parser` provides even multi-level dictionary checking functionality,
+which is not used in the `Entrypoint`, but can be handy in other use-cases.
+
+## License
+
+This project is licensed under the MIT License - see the [LICENSE.md](LICENSE.md) file for details
+
+
+%package help
+Summary: Development documents and examples for generic-parser
+Provides: python3-generic-parser-doc
+%description help
+# Generic Parser
+[![Cron Testing](https://github.com/pylhc/generic_parser/workflows/Cron%20Testing/badge.svg)](https://github.com/pylhc/generic_parser/actions?query=workflow%3A%22Cron+Testing%22)
+[![Code Climate coverage](https://img.shields.io/codeclimate/coverage/pylhc/generic_parser.svg?style=popout)](https://codeclimate.com/github/pylhc/generic_parser)
+[![Code Climate maintainability (percentage)](https://img.shields.io/codeclimate/maintainability-percentage/pylhc/generic_parser.svg?style=popout)](https://codeclimate.com/github/pylhc/generic_parser)
+<!-- [![GitHub last commit](https://img.shields.io/github/last-commit/pylhc/generic_parser.svg?style=popout)](https://github.com/pylhc/generic_parser/) -->
+[![PyPI Version](https://img.shields.io/pypi/v/generic_parser?label=PyPI&logo=pypi)](https://pypi.org/project/generic_parser/)
+[![GitHub release](https://img.shields.io/github/v/release/pylhc/generic_parser?logo=github)](https://github.com/pylhc/generic_parser/)
+[![Conda-forge Version](https://img.shields.io/conda/vn/conda-forge/generic_parser?color=orange&logo=anaconda)](https://anaconda.org/conda-forge/generic_parser)
+[![DOI](https://zenodo.org/badge/201085116.svg)](https://zenodo.org/badge/latestdoi/201085116)
+
+The package provides an all-around parser for arguments and config-files.
+The creation of the arguments is similar to the ones from argparse, but the input can then be either from command line, a config file or directly from python.
+
+See the [API documentation](https://pylhc.github.io/generic_parser/) for details.
+
+## Installing
+
+Installation is easily done via `pip`. The package is then used as `generic_parser`.
+```bash
+python -m pip install generic-parser
+```
+
+One can also install in a `conda` environment via the `conda-forge` channel with:
+```bash
+conda install -c conda-forge generic_parser
+```
+
+## Example Usage:
+
+Content of `myscript.py`
+```python
+from generic_parser import entrypoint, EntryPointParameters
+
+
+def get_arguments():
+ args = EntryPointParameters()
+ args.add_parameter(name="first",
+ flags=["-f", "--first"],
+ help="First Parameter, an int",
+ choices=[1, 2, 3],
+ type=int,
+ required=True,
+ )
+ args.add_parameter(name="second",
+ flags=["-s", "--second"],
+ help="Second Parameter, a string",
+ type=str,
+ default="default",
+ required=False,
+ )
+ return args
+
+
+@entrypoint(get_arguments())
+def main(opt, unknown):
+ print(opt.first == 1)
+ print(opt.second == "default")
+
+
+if __name__ == '__main__':
+ main()
+```
+
+### Commandline
+
+Calling that script with ``python myscript.py -f 1 -s "test"`` will result in:
+```
+True
+False
+```
+
+It is assumed, that this is the standard mode of operation for your functions.
+
+#### Config File
+
+Further, one can also use a config file `config.ini` containing:
+```
+[Section]
+first = 2
+second = "Hello"
+```
+
+and run the script with `python myscript.py --entry_cfg config.ini` leading to
+```
+False
+False
+```
+
+Config files are very useful if you want to rerun your code with the same or similar parameters.
+Especially the declaration of a `[DEFAULT]` section can be helpful.
+For further information about config files, check the python [Config Parser](https://docs.python.org/3/library/configparser.html).
+
+### Python
+Or call the function directly from python code:
+```python
+if __name__ == '__main__':
+ main(first=1, second="World")
+```
+
+```
+True
+False
+```
+
+This is incredibly helpful if one wants to write python-wrappers around entrypoint-functions,
+and does not want to resort to commandline calls from python.
+
+Note that also in this case all variables are validated, courtesy of the `dict_parser`.
+`dict_parser` provides even multi-level dictionary checking functionality,
+which is not used in the `Entrypoint`, but can be handy in other use-cases.
+
+## License
+
+This project is licensed under the MIT License - see the [LICENSE.md](LICENSE.md) file for details
+
+
+%prep
+%autosetup -n generic-parser-1.1.1
+
+%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-generic-parser -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Wed May 31 2023 Python_Bot <Python_Bot@openeuler.org> - 1.1.1-1
+- Package Spec generated
diff --git a/sources b/sources
new file mode 100644
index 0000000..56b9adb
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+20554933a4bd317f75eac518dfc766be generic_parser-1.1.1.tar.gz