summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCoprDistGit <copr-devel@lists.fedorahosted.org>2023-03-09 02:19:49 +0000
committerCoprDistGit <copr-devel@lists.fedorahosted.org>2023-03-09 02:19:49 +0000
commit02301f4a874539e867e08ace556ea3dc1c19cadd (patch)
treed505015ad0829dc8ea87bee10ca27ece4147b6ce
parente667200d4ed52724093a24fd50a37337cb4ee65b (diff)
automatic import of python-configargparse
-rw-r--r--.gitignore1
-rw-r--r--python-configargparse.spec256
-rw-r--r--sources1
3 files changed, 258 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..bb478b7 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/ConfigArgParse-1.5.3.tar.gz
diff --git a/python-configargparse.spec b/python-configargparse.spec
new file mode 100644
index 0000000..27905a7
--- /dev/null
+++ b/python-configargparse.spec
@@ -0,0 +1,256 @@
+%global _empty_manifest_terminate_build 0
+Name: python-ConfigArgParse
+Version: 1.5.3
+Release: 1
+Summary: A drop-in replacement for argparse that allows options to also be set via config files and/or environment variables.
+License: MIT
+URL: https://github.com/bw2/ConfigArgParse
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/16/05/385451bc8d20a3aa1d8934b32bd65847c100849ebba397dbf6c74566b237/ConfigArgParse-1.5.3.tar.gz
+BuildArch: noarch
+
+Requires: python3-mock
+Requires: python3-PyYAML
+Requires: python3-pytest
+Requires: python3-PyYAML
+
+%description
+Overview
+~~~~~~~~
+Applications with more than a handful of user-settable options are best
+configured through a combination of command line args, config files,
+hard-coded defaults, and in some cases, environment variables.
+Python's command line parsing modules such as argparse have very limited
+support for config files and environment variables, so this module
+extends argparse to add these features.
+Available on PyPI: http://pypi.python.org/pypi/ConfigArgParse
+Features
+~~~~~~~~
+- command-line, config file, env var, and default settings can now be
+ defined, documented, and parsed in one go using a single API (if a
+ value is specified in more than one way then: command line >
+ environment variables > config file values > defaults)
+- config files can have .ini or .yaml style syntax (eg. key=value or
+ key: value)
+- user can provide a config file via a normal-looking command line arg
+ (eg. -c path/to/config.txt) rather than the argparse-style @config.txt
+- one or more default config file paths can be specified
+ (eg. ['/etc/bla.conf', '~/.my_config'] )
+- all argparse functionality is fully supported, so this module can
+ serve as a drop-in replacement (verified by argparse unittests).
+- env vars and config file keys & syntax are automatically documented
+ in the -h help message
+- new method :code:`print_values()` can report keys & values and where
+ they were set (eg. command line, env var, config file, or default).
+- lite-weight (no 3rd-party library dependencies except (optionally) PyYAML)
+- extensible (:code:`ConfigFileParser` can be subclassed to define a new
+ config file format)
+- unittested by running the unittests that came with argparse but on
+ configargparse, and using tox to test with Python 2.7 and Python 3+
+Example
+~~~~~~~
+*config_test.py*:
+Script that defines 4 options and a positional arg and then parses and prints the values. Also,
+it prints out the help message as well as the string produced by :code:`format_values()` to show
+what they look like.
+ import configargparse
+ p = configargparse.ArgParser(default_config_files=['/etc/app/conf.d/*.conf', '~/.my_settings'])
+ p.add('-c', '--my-config', required=True, is_config_file=True, help='config file path')
+ p.add('--genome', required=True, help='path to genome file') # this option can be set in a config file because it starts with '--'
+ p.add('-v', help='verbose', action='store_true')
+ p.add('-d', '--dbsnp', help='known variants .vcf', env_var='DBSNP_PATH') # this option can be set in a config file because it starts with '--'
+ p.add('vcf', nargs='+', help='variant file(s)')
+ options = p.parse_args()
+ print(options)
+ print("----------")
+ print(p.format_help())
+ print("----------")
+ print(p.format_values()) # useful for logging where different settings came from
+*config.txt:*
+Since the script above set the config file as required=True, lets create a config file to give it:
+ # settings for config_test.py
+ genome = HCMV # cytomegalovirus genome
+ dbsnp = /data/dbsnp/variants.vcf
+*command line:*
+Now run the script and pass it the config file:
+ DBSNP_PATH=/data/dbsnp/variants_v2.vcf python config_test.py --my-config config.txt f1.vcf f2.vcf
+*output:*
+Here is the result:
+
+%package -n python3-ConfigArgParse
+Summary: A drop-in replacement for argparse that allows options to also be set via config files and/or environment variables.
+Provides: python-ConfigArgParse
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-ConfigArgParse
+Overview
+~~~~~~~~
+Applications with more than a handful of user-settable options are best
+configured through a combination of command line args, config files,
+hard-coded defaults, and in some cases, environment variables.
+Python's command line parsing modules such as argparse have very limited
+support for config files and environment variables, so this module
+extends argparse to add these features.
+Available on PyPI: http://pypi.python.org/pypi/ConfigArgParse
+Features
+~~~~~~~~
+- command-line, config file, env var, and default settings can now be
+ defined, documented, and parsed in one go using a single API (if a
+ value is specified in more than one way then: command line >
+ environment variables > config file values > defaults)
+- config files can have .ini or .yaml style syntax (eg. key=value or
+ key: value)
+- user can provide a config file via a normal-looking command line arg
+ (eg. -c path/to/config.txt) rather than the argparse-style @config.txt
+- one or more default config file paths can be specified
+ (eg. ['/etc/bla.conf', '~/.my_config'] )
+- all argparse functionality is fully supported, so this module can
+ serve as a drop-in replacement (verified by argparse unittests).
+- env vars and config file keys & syntax are automatically documented
+ in the -h help message
+- new method :code:`print_values()` can report keys & values and where
+ they were set (eg. command line, env var, config file, or default).
+- lite-weight (no 3rd-party library dependencies except (optionally) PyYAML)
+- extensible (:code:`ConfigFileParser` can be subclassed to define a new
+ config file format)
+- unittested by running the unittests that came with argparse but on
+ configargparse, and using tox to test with Python 2.7 and Python 3+
+Example
+~~~~~~~
+*config_test.py*:
+Script that defines 4 options and a positional arg and then parses and prints the values. Also,
+it prints out the help message as well as the string produced by :code:`format_values()` to show
+what they look like.
+ import configargparse
+ p = configargparse.ArgParser(default_config_files=['/etc/app/conf.d/*.conf', '~/.my_settings'])
+ p.add('-c', '--my-config', required=True, is_config_file=True, help='config file path')
+ p.add('--genome', required=True, help='path to genome file') # this option can be set in a config file because it starts with '--'
+ p.add('-v', help='verbose', action='store_true')
+ p.add('-d', '--dbsnp', help='known variants .vcf', env_var='DBSNP_PATH') # this option can be set in a config file because it starts with '--'
+ p.add('vcf', nargs='+', help='variant file(s)')
+ options = p.parse_args()
+ print(options)
+ print("----------")
+ print(p.format_help())
+ print("----------")
+ print(p.format_values()) # useful for logging where different settings came from
+*config.txt:*
+Since the script above set the config file as required=True, lets create a config file to give it:
+ # settings for config_test.py
+ genome = HCMV # cytomegalovirus genome
+ dbsnp = /data/dbsnp/variants.vcf
+*command line:*
+Now run the script and pass it the config file:
+ DBSNP_PATH=/data/dbsnp/variants_v2.vcf python config_test.py --my-config config.txt f1.vcf f2.vcf
+*output:*
+Here is the result:
+
+%package help
+Summary: Development documents and examples for ConfigArgParse
+Provides: python3-ConfigArgParse-doc
+%description help
+Overview
+~~~~~~~~
+Applications with more than a handful of user-settable options are best
+configured through a combination of command line args, config files,
+hard-coded defaults, and in some cases, environment variables.
+Python's command line parsing modules such as argparse have very limited
+support for config files and environment variables, so this module
+extends argparse to add these features.
+Available on PyPI: http://pypi.python.org/pypi/ConfigArgParse
+Features
+~~~~~~~~
+- command-line, config file, env var, and default settings can now be
+ defined, documented, and parsed in one go using a single API (if a
+ value is specified in more than one way then: command line >
+ environment variables > config file values > defaults)
+- config files can have .ini or .yaml style syntax (eg. key=value or
+ key: value)
+- user can provide a config file via a normal-looking command line arg
+ (eg. -c path/to/config.txt) rather than the argparse-style @config.txt
+- one or more default config file paths can be specified
+ (eg. ['/etc/bla.conf', '~/.my_config'] )
+- all argparse functionality is fully supported, so this module can
+ serve as a drop-in replacement (verified by argparse unittests).
+- env vars and config file keys & syntax are automatically documented
+ in the -h help message
+- new method :code:`print_values()` can report keys & values and where
+ they were set (eg. command line, env var, config file, or default).
+- lite-weight (no 3rd-party library dependencies except (optionally) PyYAML)
+- extensible (:code:`ConfigFileParser` can be subclassed to define a new
+ config file format)
+- unittested by running the unittests that came with argparse but on
+ configargparse, and using tox to test with Python 2.7 and Python 3+
+Example
+~~~~~~~
+*config_test.py*:
+Script that defines 4 options and a positional arg and then parses and prints the values. Also,
+it prints out the help message as well as the string produced by :code:`format_values()` to show
+what they look like.
+ import configargparse
+ p = configargparse.ArgParser(default_config_files=['/etc/app/conf.d/*.conf', '~/.my_settings'])
+ p.add('-c', '--my-config', required=True, is_config_file=True, help='config file path')
+ p.add('--genome', required=True, help='path to genome file') # this option can be set in a config file because it starts with '--'
+ p.add('-v', help='verbose', action='store_true')
+ p.add('-d', '--dbsnp', help='known variants .vcf', env_var='DBSNP_PATH') # this option can be set in a config file because it starts with '--'
+ p.add('vcf', nargs='+', help='variant file(s)')
+ options = p.parse_args()
+ print(options)
+ print("----------")
+ print(p.format_help())
+ print("----------")
+ print(p.format_values()) # useful for logging where different settings came from
+*config.txt:*
+Since the script above set the config file as required=True, lets create a config file to give it:
+ # settings for config_test.py
+ genome = HCMV # cytomegalovirus genome
+ dbsnp = /data/dbsnp/variants.vcf
+*command line:*
+Now run the script and pass it the config file:
+ DBSNP_PATH=/data/dbsnp/variants_v2.vcf python config_test.py --my-config config.txt f1.vcf f2.vcf
+*output:*
+Here is the result:
+
+%prep
+%autosetup -n ConfigArgParse-1.5.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-ConfigArgParse -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Thu Mar 09 2023 Python_Bot <Python_Bot@openeuler.org> - 1.5.3-1
+- Package Spec generated
diff --git a/sources b/sources
new file mode 100644
index 0000000..d658416
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+33bef8918c8946e6a9e4dcaa74eb7ab8 ConfigArgParse-1.5.3.tar.gz