diff options
author | CoprDistGit <infra@openeuler.org> | 2023-05-18 06:11:01 +0000 |
---|---|---|
committer | CoprDistGit <infra@openeuler.org> | 2023-05-18 06:11:01 +0000 |
commit | 06aca19da45b60c0d45eddcb9849bf1d1c33cccd (patch) | |
tree | c96ecd989d2a2759e831137fb89af7262a596b77 | |
parent | 788b8b73a4f88dbdbd13bffdd6b642388c95d74b (diff) |
automatic import of python-maison
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | python-maison.spec | 264 | ||||
-rw-r--r-- | sources | 1 |
3 files changed, 266 insertions, 0 deletions
@@ -0,0 +1 @@ +/maison-1.4.0.tar.gz diff --git a/python-maison.spec b/python-maison.spec new file mode 100644 index 0000000..ff50360 --- /dev/null +++ b/python-maison.spec @@ -0,0 +1,264 @@ +%global _empty_manifest_terminate_build 0 +Name: python-maison +Version: 1.4.0 +Release: 1 +Summary: Maison +License: MIT +URL: https://github.com/dbatten5/maison +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/77/a8/45364d855087a54f575f4b946e9f66e4738780d71219b3a77e84bc00de83/maison-1.4.0.tar.gz +BuildArch: noarch + +Requires: python3-click +Requires: python3-pydantic +Requires: python3-toml + +%description +# Maison + +[](https://github.com/dbatten5/maison/actions) +[](https://github.com/dbatten5/maison/actions) +[](https://codecov.io/gh/dbatten5/maison) +[](https://badge.fury.io/py/maison) + +Read configuration settings from configuration files. + +## Motivation + +When developing a `python` application, e.g a command-line tool, it can be +helpful to allow the user to set their own configuration options to allow them +to tailor the tool to their needs. These options are typically set in files in +the root of a project directory that uses the tool, for example in a +`pyproject.toml` or an `{project_name}.ini` file. + +`maison` aims to provide a simple and flexible way to read and validate those +configuration options so that they may be used in the application. + +### Features + +- Supports multiple config files and multiple config filetypes. +- Optional merging of multiple configs. +- Optional config validation with [pydantic](https://pydantic-docs.helpmanual.io/). +- Caching of config files for quick access. +- Fully tested and typed. + +## Installation + +```bash +pip install maison +``` + +## Usage + +Suppose the following `pyproject.toml` lives somewhere in a project directory: + +```toml +[tool.acme] +enable_useful_option = true +``` + +`maison` exposes a `ProjectConfig` class to retrieve values from config files +like so: + +```python +from maison import ProjectConfig + +config = ProjectConfig(project_name="acme") + +if config.get_option("enable_useful_option"): + # include the useful option +``` + +## Help + +See the [documentation](https://dbatten5.github.io/maison) for more details. + +## Licence + +MIT + + + +%package -n python3-maison +Summary: Maison +Provides: python-maison +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-maison +# Maison + +[](https://github.com/dbatten5/maison/actions) +[](https://github.com/dbatten5/maison/actions) +[](https://codecov.io/gh/dbatten5/maison) +[](https://badge.fury.io/py/maison) + +Read configuration settings from configuration files. + +## Motivation + +When developing a `python` application, e.g a command-line tool, it can be +helpful to allow the user to set their own configuration options to allow them +to tailor the tool to their needs. These options are typically set in files in +the root of a project directory that uses the tool, for example in a +`pyproject.toml` or an `{project_name}.ini` file. + +`maison` aims to provide a simple and flexible way to read and validate those +configuration options so that they may be used in the application. + +### Features + +- Supports multiple config files and multiple config filetypes. +- Optional merging of multiple configs. +- Optional config validation with [pydantic](https://pydantic-docs.helpmanual.io/). +- Caching of config files for quick access. +- Fully tested and typed. + +## Installation + +```bash +pip install maison +``` + +## Usage + +Suppose the following `pyproject.toml` lives somewhere in a project directory: + +```toml +[tool.acme] +enable_useful_option = true +``` + +`maison` exposes a `ProjectConfig` class to retrieve values from config files +like so: + +```python +from maison import ProjectConfig + +config = ProjectConfig(project_name="acme") + +if config.get_option("enable_useful_option"): + # include the useful option +``` + +## Help + +See the [documentation](https://dbatten5.github.io/maison) for more details. + +## Licence + +MIT + + + +%package help +Summary: Development documents and examples for maison +Provides: python3-maison-doc +%description help +# Maison + +[](https://github.com/dbatten5/maison/actions) +[](https://github.com/dbatten5/maison/actions) +[](https://codecov.io/gh/dbatten5/maison) +[](https://badge.fury.io/py/maison) + +Read configuration settings from configuration files. + +## Motivation + +When developing a `python` application, e.g a command-line tool, it can be +helpful to allow the user to set their own configuration options to allow them +to tailor the tool to their needs. These options are typically set in files in +the root of a project directory that uses the tool, for example in a +`pyproject.toml` or an `{project_name}.ini` file. + +`maison` aims to provide a simple and flexible way to read and validate those +configuration options so that they may be used in the application. + +### Features + +- Supports multiple config files and multiple config filetypes. +- Optional merging of multiple configs. +- Optional config validation with [pydantic](https://pydantic-docs.helpmanual.io/). +- Caching of config files for quick access. +- Fully tested and typed. + +## Installation + +```bash +pip install maison +``` + +## Usage + +Suppose the following `pyproject.toml` lives somewhere in a project directory: + +```toml +[tool.acme] +enable_useful_option = true +``` + +`maison` exposes a `ProjectConfig` class to retrieve values from config files +like so: + +```python +from maison import ProjectConfig + +config = ProjectConfig(project_name="acme") + +if config.get_option("enable_useful_option"): + # include the useful option +``` + +## Help + +See the [documentation](https://dbatten5.github.io/maison) for more details. + +## Licence + +MIT + + + +%prep +%autosetup -n maison-1.4.0 + +%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-maison -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Thu May 18 2023 Python_Bot <Python_Bot@openeuler.org> - 1.4.0-1 +- Package Spec generated @@ -0,0 +1 @@ +4716cf85c84a0fccb272375adce8f708 maison-1.4.0.tar.gz |