Immutable, Pythonic, correct URLs. (LADI project)
Go to file
Wilfredo Sánchez Vega ec7d172688
Merge pull request #175 from python-hyper/requires-io-master
[requires.io] dependency update on master branch
2021-08-08 16:10:21 -07:00
.github/workflows Argh, can't do version slugs except in the default test env… let's do the XML dance there. 2021-01-14 12:12:29 -08:00
docs Update conf.py 2021-03-07 18:37:51 +01:00
src/hyperlink Merge branch 'master' into fix_some_type_issues 2021-04-04 11:53:37 -07:00
.appveyor.yml Remove Python 2.7 and Python 3.5 from the Windows build matrix. 2021-03-26 14:37:37 -07:00
.coveragerc Exclude `if TYPE_CHECKING` and `...` from coverage. 2021-04-06 15:03:02 -07:00
.gitignore Merge branch 'master' into strategies 2020-04-14 17:18:58 -07:00
CHANGELOG.md Remove merge turd 2021-01-14 11:35:34 -08:00
LICENSE Disable HealthCheck.too_slow in CI. 2019-11-06 16:42:28 -08:00
MANIFEST.in Compress the IDNA table 2020-03-30 15:42:18 -07:00
README.md fix pypi badge typo 2020-08-03 23:35:40 -07:00
TODO.md Fix a typo in the docs 2019-10-21 18:27:19 +01:00
pyproject.toml Check in black config 2020-01-25 15:25:47 -08:00
pytest.ini add pytest.ini to enable doctest ALLOW_UNICODE (to get rid of errors on u'') 2017-03-13 23:09:25 -07:00
setup.cfg add setup.cfg for universal wheels 2017-05-06 17:21:52 -07:00
setup.py bump version for v21.0.1dev 2021-01-07 22:01:07 -08:00
tox.ini [requires.io] dependency update 2021-08-08 11:30:11 -07:00

README.md

Hyperlink

Cool URLs that don't change.

Documentation PyPI Calendar Versioning Python Version Compatibility Code Coverage Requirements Status

Hyperlink provides a pure-Python implementation of immutable URLs. Based on RFC 3986 and 3987, the Hyperlink URL makes working with both URIs and IRIs easy.

Hyperlink is tested against Python 2.7, 3.4, 3.5, 3.6, 3.7, 3.8, and PyPy.

Full documentation is available on Read the Docs.

Installation

Hyperlink is a pure-Python package and requires nothing but Python. The easiest way to install is with pip:

pip install hyperlink

Then, hyperlink away!

from hyperlink import URL

url = URL.from_text(u'http://github.com/python-hyper/hyperlink?utm_source=README')
utm_source = url.get(u'utm_source')
better_url = url.replace(scheme=u'https', port=443)
org_url = better_url.click(u'.')

See the full API docs on Read the Docs.

More information

Hyperlink would not have been possible without the help of Glyph Lefkowitz and many other community members, especially considering that it started as an extract from the Twisted networking library. Thanks to them, Hyperlink's URL has been production-grade for well over a decade.

Still, should you encounter any issues, do file an issue, or submit a pull request.