python-uritemplate
Port variant py37
Summary URI templates (PY37)
Package version 3.0.1
Homepage https://uritemplate.readthedocs.org
Keywords python
Maintainer Python Automaton
License Not yet specified
Other variants py38
Ravenports Buildsheet | History
Ravensource Port Directory | History
Last modified 20 APR 2020, 15:00:59 UTC
Port created 02 FEB 2018, 15:29:04 UTC
Subpackage Descriptions
single uritemplate =========== Documentation_ -- GitHub_ -- Travis-CI_ Simple python library to deal with `URI Templates`_. The API looks like .. code-block:: python from uritemplate import URITemplate, expand # NOTE: URI params must be strings not integers gist_uri = 'https://api.github.com/users/sigmavirus24/gists{/gist_id}' t = URITemplate(gist_uri) print(t.expand(gist_id='123456')) # => https://api.github.com/users/sigmavirus24/gists/123456 # or print(expand(gist_uri, gist_id='123456')) # also t.expand({'gist_id': '123456'}) print(expand(gist_uri, {'gist_id': '123456'})) Where it might be useful to have a class .. code-block:: python import requests class GitHubUser(object): url = URITemplate('https://api.github.com/user{/login}') def __init__(self, name): self.api_url = url.expand(login=name) response = requests.get(self.api_url) if response.status_code == 200: self.__dict__.update(response.json()) When the module containing this class is loaded, ``GitHubUser.url`` is evaluated and so the template is created once. It's often hard to notice in Python, but object creation can consume a great deal of time and so can the re module which uritemplate relies on. Constructing the object once should reduce the amount of time your code takes to run. Installing ---------- :: pip install uritemplate License ------- Modified BSD license_ .. _Documentation: https://uritemplate.readthedocs.io/ .. _GitHub: https://github.com/python-hyper/uritemplate .. _Travis-CI: https://travis-ci.org/python-hyper/uritemplate .. _URI Templates: http://tools.ietf.org/html/rfc6570 .. _license: https://github.com/python-hyper/uritemplate/blob/master/LICENSE Changelog - uritemplate ======================= 3.0.1 - 2019-12-19 ------------------ - Update to Python 3.6, 3.7, and 3.8 - Drop support for Python 2.6, 3.2, and 3.3 - Ignore None in list argument expansion - Handle a list with an empty string appropriately 3.0.0 - 2016-08-29 ------------------ - Match major version number of uritemplate.py 2.0.0 - 2016-08-29 ------------------ - Merge uritemplate.py into uritemplate Changelog - uritemplate.py ========================== 3.0.2 - 2015-08-30 ------------------ - Fix meta-package requirements. 3.0.1 - 2015-08-29 ------------------ - Deprecate in favor of uritemplate. This package is now a metapackage that depends on uritemplate.
Configuration Switches (platform-specific settings discarded)
PY37 ON Build using Python 3.7 PY38 OFF Build using Python 3.8
Package Dependencies by Type
Build and Runtime python37:single:standard
python-setuptools:single:py37
Download groups
main mirror://PYPI/u/uritemplate
Distribution File Information
5af8ad10cec94f215e3f48112de2022e1d5a37ed427fbd88652fa908f2ab7cae 32806 uritemplate-3.0.1.tar.gz
Ports that require python-uritemplate:py37
python-coreapi:py37 Python client library for Core API (PY37)
python-drf-yasg:py37 Django Swagger/OpenAPI spec generator (PY37)