%global _empty_manifest_terminate_build 0
Name:		python-lynx
Version:	0.3.1
Release:	1
Summary:	Python configuration library
License:	The MIT License (MIT)
URL:		https://github.com/omershelef/lynx/
Source0:	https://mirrors.nju.edu.cn/pypi/web/packages/ae/ad/82353da78e6ab95fce445c44afce6a1230fffe25f57c4652f27c2ecfc447/lynx-0.3.1.tar.gz
BuildArch:	noarch


%description
Simple python configuration library and format. The format is very similar to YAML with the enhancment of sections.
##Installation
Install the ``lynx`` package with [pip](<https://pypi.python.org/pypi/lynx>):
    pip install lynx
##Example use
Configuration example:
```
# section example
section {
	# fields
	field1: myfield1 value
	field2: Another field value
	# lists
	mylist: [5, mystr, value, 8]
}
# Another section
section2 {
	# sub section example
	my_section {
		name: lynx
	}
	# sections can have same name.	
	my_section {
	    # multiline fields
		Library description:|
		    Lynx is a python
		    Configuration library
		    supporting many features
		    including multiline fields!$%$!%#@
		    Yay!
		myfloat: 5.3
	}
}
```
Load the configuration:
```
>>> import lynx
# Load file
>>> with open("config.conf", "r") as fp:
# Get the first section
>>> config[0].name()
'section'
>>> config[0].fields()
{'field2': 'Another field value', 'field1': 'myfield1 value', 'mylist': [5, 'mystr', 'value', 8]}
# Get sub sections
>>> config[1].sub_sections()
[<lynx.Section object at 0x7f4ab28dfdd0>, <lynx.Section object at 0x7f4ab28dfe10>]
>>> config[1].sub_sections()[0].name()
'my_section'
```
## Features
Features include:
* Sections
* Sub sections
* Lists
* Multiline fields
* Load & dump
* Types:
    * Strings
    * Integers
    * Floats

%package -n python3-lynx
Summary:	Python configuration library
Provides:	python-lynx
BuildRequires:	python3-devel
BuildRequires:	python3-setuptools
BuildRequires:	python3-pip
%description -n python3-lynx
Simple python configuration library and format. The format is very similar to YAML with the enhancment of sections.
##Installation
Install the ``lynx`` package with [pip](<https://pypi.python.org/pypi/lynx>):
    pip install lynx
##Example use
Configuration example:
```
# section example
section {
	# fields
	field1: myfield1 value
	field2: Another field value
	# lists
	mylist: [5, mystr, value, 8]
}
# Another section
section2 {
	# sub section example
	my_section {
		name: lynx
	}
	# sections can have same name.	
	my_section {
	    # multiline fields
		Library description:|
		    Lynx is a python
		    Configuration library
		    supporting many features
		    including multiline fields!$%$!%#@
		    Yay!
		myfloat: 5.3
	}
}
```
Load the configuration:
```
>>> import lynx
# Load file
>>> with open("config.conf", "r") as fp:
# Get the first section
>>> config[0].name()
'section'
>>> config[0].fields()
{'field2': 'Another field value', 'field1': 'myfield1 value', 'mylist': [5, 'mystr', 'value', 8]}
# Get sub sections
>>> config[1].sub_sections()
[<lynx.Section object at 0x7f4ab28dfdd0>, <lynx.Section object at 0x7f4ab28dfe10>]
>>> config[1].sub_sections()[0].name()
'my_section'
```
## Features
Features include:
* Sections
* Sub sections
* Lists
* Multiline fields
* Load & dump
* Types:
    * Strings
    * Integers
    * Floats

%package help
Summary:	Development documents and examples for lynx
Provides:	python3-lynx-doc
%description help
Simple python configuration library and format. The format is very similar to YAML with the enhancment of sections.
##Installation
Install the ``lynx`` package with [pip](<https://pypi.python.org/pypi/lynx>):
    pip install lynx
##Example use
Configuration example:
```
# section example
section {
	# fields
	field1: myfield1 value
	field2: Another field value
	# lists
	mylist: [5, mystr, value, 8]
}
# Another section
section2 {
	# sub section example
	my_section {
		name: lynx
	}
	# sections can have same name.	
	my_section {
	    # multiline fields
		Library description:|
		    Lynx is a python
		    Configuration library
		    supporting many features
		    including multiline fields!$%$!%#@
		    Yay!
		myfloat: 5.3
	}
}
```
Load the configuration:
```
>>> import lynx
# Load file
>>> with open("config.conf", "r") as fp:
# Get the first section
>>> config[0].name()
'section'
>>> config[0].fields()
{'field2': 'Another field value', 'field1': 'myfield1 value', 'mylist': [5, 'mystr', 'value', 8]}
# Get sub sections
>>> config[1].sub_sections()
[<lynx.Section object at 0x7f4ab28dfdd0>, <lynx.Section object at 0x7f4ab28dfe10>]
>>> config[1].sub_sections()[0].name()
'my_section'
```
## Features
Features include:
* Sections
* Sub sections
* Lists
* Multiline fields
* Load & dump
* Types:
    * Strings
    * Integers
    * Floats

%prep
%autosetup -n lynx-0.3.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-lynx -f filelist.lst
%dir %{python3_sitelib}/*

%files help -f doclist.lst
%{_docdir}/*

%changelog
* Mon May 29 2023 Python_Bot <Python_Bot@openeuler.org> - 0.3.1-1
- Package Spec generated