diff options
author | CoprDistGit <infra@openeuler.org> | 2023-04-10 10:16:37 +0000 |
---|---|---|
committer | CoprDistGit <infra@openeuler.org> | 2023-04-10 10:16:37 +0000 |
commit | b3dc8a3ff0f087c3719415ac74ca058efe8983d0 (patch) | |
tree | cc45d13660605f315cab0fd2d0df482f2ae1a4ec | |
parent | 49b7f6b154e0734345162c59b308cf332ba8691f (diff) |
automatic import of python-uritools
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | python-uritools.spec | 174 | ||||
-rw-r--r-- | sources | 1 |
3 files changed, 176 insertions, 0 deletions
@@ -0,0 +1 @@ +/uritools-4.0.1.tar.gz diff --git a/python-uritools.spec b/python-uritools.spec new file mode 100644 index 0000000..f437647 --- /dev/null +++ b/python-uritools.spec @@ -0,0 +1,174 @@ +%global _empty_manifest_terminate_build 0 +Name: python-uritools +Version: 4.0.1 +Release: 1 +Summary: URI parsing, classification and composition +License: MIT +URL: https://github.com/tkem/uritools/ +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/4d/8b/f49813253c29c49a3767256cbe94a2450d3377953fedcd8e62be200c0ba0/uritools-4.0.1.tar.gz +BuildArch: noarch + + +%description +This module provides RFC 3986 compliant functions for parsing, +classifying and composing URIs and URI references, largely replacing +the Python Standard Library's ``urllib.parse`` module. + >>> from uritools import uricompose, urijoin, urisplit, uriunsplit + >>> uricompose(scheme='foo', host='example.com', port=8042, + 'foo://example.com:8042/over/there?name=ferret#nose' + >>> parts = urisplit(_) + >>> parts.scheme + 'foo' + >>> parts.authority + 'example.com:8042' + >>> parts.getport(default=80) + 8042 + >>> parts.getquerydict().get('name') + ['ferret'] + >>> parts.isuri() + True + >>> parts.isabsuri() + False + >>> urijoin(uriunsplit(parts), '/right/here?name=swallow#beak') + 'foo://example.com:8042/right/here?name=swallow#beak' +For various reasons, ``urllib.parse`` and its Python 2 predecessor +``urlparse`` are not compliant with current Internet standards. As +stated in `Lib/urllib/parse.py +<https://github.com/python/cpython/blob/3.8/Lib/urllib/parse.py>`_: + RFC 3986 is considered the current standard and any future changes + to urlparse module should conform with it. The urlparse module is + currently not entirely compliant with this RFC due to defacto + scenarios for parsing, and for backward compatibility purposes, + some parsing quirks from older RFCs are retained. +This module aims to provide fully RFC 3986 compliant replacements for +the most commonly used functions found in ``urllib.parse``. It also +includes functions for distinguishing between the different forms of +URIs and URI references, and for conveniently creating URIs from their +individual components. + +%package -n python3-uritools +Summary: URI parsing, classification and composition +Provides: python-uritools +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-uritools +This module provides RFC 3986 compliant functions for parsing, +classifying and composing URIs and URI references, largely replacing +the Python Standard Library's ``urllib.parse`` module. + >>> from uritools import uricompose, urijoin, urisplit, uriunsplit + >>> uricompose(scheme='foo', host='example.com', port=8042, + 'foo://example.com:8042/over/there?name=ferret#nose' + >>> parts = urisplit(_) + >>> parts.scheme + 'foo' + >>> parts.authority + 'example.com:8042' + >>> parts.getport(default=80) + 8042 + >>> parts.getquerydict().get('name') + ['ferret'] + >>> parts.isuri() + True + >>> parts.isabsuri() + False + >>> urijoin(uriunsplit(parts), '/right/here?name=swallow#beak') + 'foo://example.com:8042/right/here?name=swallow#beak' +For various reasons, ``urllib.parse`` and its Python 2 predecessor +``urlparse`` are not compliant with current Internet standards. As +stated in `Lib/urllib/parse.py +<https://github.com/python/cpython/blob/3.8/Lib/urllib/parse.py>`_: + RFC 3986 is considered the current standard and any future changes + to urlparse module should conform with it. The urlparse module is + currently not entirely compliant with this RFC due to defacto + scenarios for parsing, and for backward compatibility purposes, + some parsing quirks from older RFCs are retained. +This module aims to provide fully RFC 3986 compliant replacements for +the most commonly used functions found in ``urllib.parse``. It also +includes functions for distinguishing between the different forms of +URIs and URI references, and for conveniently creating URIs from their +individual components. + +%package help +Summary: Development documents and examples for uritools +Provides: python3-uritools-doc +%description help +This module provides RFC 3986 compliant functions for parsing, +classifying and composing URIs and URI references, largely replacing +the Python Standard Library's ``urllib.parse`` module. + >>> from uritools import uricompose, urijoin, urisplit, uriunsplit + >>> uricompose(scheme='foo', host='example.com', port=8042, + 'foo://example.com:8042/over/there?name=ferret#nose' + >>> parts = urisplit(_) + >>> parts.scheme + 'foo' + >>> parts.authority + 'example.com:8042' + >>> parts.getport(default=80) + 8042 + >>> parts.getquerydict().get('name') + ['ferret'] + >>> parts.isuri() + True + >>> parts.isabsuri() + False + >>> urijoin(uriunsplit(parts), '/right/here?name=swallow#beak') + 'foo://example.com:8042/right/here?name=swallow#beak' +For various reasons, ``urllib.parse`` and its Python 2 predecessor +``urlparse`` are not compliant with current Internet standards. As +stated in `Lib/urllib/parse.py +<https://github.com/python/cpython/blob/3.8/Lib/urllib/parse.py>`_: + RFC 3986 is considered the current standard and any future changes + to urlparse module should conform with it. The urlparse module is + currently not entirely compliant with this RFC due to defacto + scenarios for parsing, and for backward compatibility purposes, + some parsing quirks from older RFCs are retained. +This module aims to provide fully RFC 3986 compliant replacements for +the most commonly used functions found in ``urllib.parse``. It also +includes functions for distinguishing between the different forms of +URIs and URI references, and for conveniently creating URIs from their +individual components. + +%prep +%autosetup -n uritools-4.0.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-uritools -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Mon Apr 10 2023 Python_Bot <Python_Bot@openeuler.org> - 4.0.1-1 +- Package Spec generated @@ -0,0 +1 @@ +756ebb6b54b5bc280e5bb3dda5bd8134 uritools-4.0.1.tar.gz |