diff options
| author | CoprDistGit <infra@openeuler.org> | 2023-05-05 05:33:56 +0000 |
|---|---|---|
| committer | CoprDistGit <infra@openeuler.org> | 2023-05-05 05:33:56 +0000 |
| commit | 62b6deb2f0412beaeac2688c41f1b3ab67bd30cd (patch) | |
| tree | 02bf892117e71fecc8894809b51120156b83bd9f /python-pyuri.spec | |
| parent | bf2dcb117042d6a7405244478b4c58fc78c0bbab (diff) | |
automatic import of python-pyuriopeneuler20.03
Diffstat (limited to 'python-pyuri.spec')
| -rw-r--r-- | python-pyuri.spec | 192 |
1 files changed, 192 insertions, 0 deletions
diff --git a/python-pyuri.spec b/python-pyuri.spec new file mode 100644 index 0000000..b7b0231 --- /dev/null +++ b/python-pyuri.spec @@ -0,0 +1,192 @@ +%global _empty_manifest_terminate_build 0 +Name: python-pyuri +Version: 0.3.1 +Release: 1 +Summary: Better URI Handling +License: MIT +URL: https://github.com/nick-allen/pyuri +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/60/d0/d86b0a2588ca66e9b25bdfe6b8193600fb7f8cf7472cc79d689552d1a27f/pyuri-0.3.1.tar.gz +BuildArch: noarch + + +%description +## Install +`pip install pyuri` +## Usage +Raw URI string parsing: +```python +from pyuri import URI +uri = URI('http://localhost:80/path/to/file?query=value#/fragment/path') +assert uri.scheme == 'http' +assert uri.host == 'localhost' +assert uri.port == 80 +assert uri.path == '/path/to/file' +assert uri.query == 'query=value' +assert uri.fragment == '/fragment/path' +``` +Composition by parts +```python +from pyuri import URI +uri = URI(scheme='ftp', host='localhost', port=8000, query='key=value') +assert str(uri) == 'ftp://localhost:8000?key=value' +``` +Modification and comparison +```python +from pyuri import URI +uri1 = URI('https://example.com:80') +uri2 = URI('https://example.com:443/new/path') +assert uri1 != uri2 +uri1.port = 443 +uri1.path = '/new/path' +assert str(uri1) == 'https://example.com:443/new/path' +assert uri1 == uri2 +``` +Additional helpers +```python +from pyuri import URI +uri = URI('http://localhost:80/path/to/file?repeat=value1&repeat=value2&escape=escaped%20value#/fragment/path') +# Access query parameters as dictionary +assert uri.query_dict() == { + 'repeat': ['value1', 'value2'], + 'escape': ['escaped value'] +} +``` + +%package -n python3-pyuri +Summary: Better URI Handling +Provides: python-pyuri +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-pyuri +## Install +`pip install pyuri` +## Usage +Raw URI string parsing: +```python +from pyuri import URI +uri = URI('http://localhost:80/path/to/file?query=value#/fragment/path') +assert uri.scheme == 'http' +assert uri.host == 'localhost' +assert uri.port == 80 +assert uri.path == '/path/to/file' +assert uri.query == 'query=value' +assert uri.fragment == '/fragment/path' +``` +Composition by parts +```python +from pyuri import URI +uri = URI(scheme='ftp', host='localhost', port=8000, query='key=value') +assert str(uri) == 'ftp://localhost:8000?key=value' +``` +Modification and comparison +```python +from pyuri import URI +uri1 = URI('https://example.com:80') +uri2 = URI('https://example.com:443/new/path') +assert uri1 != uri2 +uri1.port = 443 +uri1.path = '/new/path' +assert str(uri1) == 'https://example.com:443/new/path' +assert uri1 == uri2 +``` +Additional helpers +```python +from pyuri import URI +uri = URI('http://localhost:80/path/to/file?repeat=value1&repeat=value2&escape=escaped%20value#/fragment/path') +# Access query parameters as dictionary +assert uri.query_dict() == { + 'repeat': ['value1', 'value2'], + 'escape': ['escaped value'] +} +``` + +%package help +Summary: Development documents and examples for pyuri +Provides: python3-pyuri-doc +%description help +## Install +`pip install pyuri` +## Usage +Raw URI string parsing: +```python +from pyuri import URI +uri = URI('http://localhost:80/path/to/file?query=value#/fragment/path') +assert uri.scheme == 'http' +assert uri.host == 'localhost' +assert uri.port == 80 +assert uri.path == '/path/to/file' +assert uri.query == 'query=value' +assert uri.fragment == '/fragment/path' +``` +Composition by parts +```python +from pyuri import URI +uri = URI(scheme='ftp', host='localhost', port=8000, query='key=value') +assert str(uri) == 'ftp://localhost:8000?key=value' +``` +Modification and comparison +```python +from pyuri import URI +uri1 = URI('https://example.com:80') +uri2 = URI('https://example.com:443/new/path') +assert uri1 != uri2 +uri1.port = 443 +uri1.path = '/new/path' +assert str(uri1) == 'https://example.com:443/new/path' +assert uri1 == uri2 +``` +Additional helpers +```python +from pyuri import URI +uri = URI('http://localhost:80/path/to/file?repeat=value1&repeat=value2&escape=escaped%20value#/fragment/path') +# Access query parameters as dictionary +assert uri.query_dict() == { + 'repeat': ['value1', 'value2'], + 'escape': ['escaped value'] +} +``` + +%prep +%autosetup -n pyuri-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-pyuri -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Fri May 05 2023 Python_Bot <Python_Bot@openeuler.org> - 0.3.1-1 +- Package Spec generated |
