Skip to main content

yarl

https://dev.azure.com/aio-libs/yarl/_apis/build/status/CI?branchName=master https://codecov.io/gh/aio-libs/yarl/branch/master/graph/badge.svg https://badge.fury.io/py/yarl.svg https://readthedocs.org/projects/yarl/badge/?version=latest https://img.shields.io/pypi/pyversions/yarl.svg Chat on Gitter

Introduction

Url is constructed from str:

>>> from yarl import URL
>>> url = URL('https://www.python.org/~guido?arg=1#frag')
>>> url
URL('https://www.python.org/~guido?arg=1#frag')

All url parts: scheme, user, password, host, port, path, query and fragment are accessible by properties:

>>> url.scheme
'https'
>>> url.host
'www.python.org'
>>> url.path
'/~guido'
>>> url.query_string
'arg=1'
>>> url.query
<MultiDictProxy('arg': '1')>
>>> url.fragment
'frag'

All url manipulations produce a new url object:

>>> url = URL('https://www.python.org')
>>> url / 'foo' / 'bar'
URL('https://www.python.org/foo/bar')
>>> url / 'foo' % {'bar': 'baz'}
URL('https://www.python.org/foo?bar=baz')

Strings passed to constructor and modification methods are automatically encoded giving canonical representation as result:

>>> url = URL('https://www.python.org/путь')
>>> url
URL('https://www.python.org/%D0%BF%D1%83%D1%82%D1%8C')

Regular properties are percent-decoded, use raw_ versions for getting encoded strings:

>>> url.path
'/путь'

>>> url.raw_path
'/%D0%BF%D1%83%D1%82%D1%8C'

Human readable representation of URL is available as .human_repr():

>>> url.human_repr()
'https://www.python.org/путь'

For full documentation please read https://yarl.readthedocs.org.

Installation

$ pip install yarl

The library is Python 3 only!

PyPI contains binary wheels for Linux, Windows and MacOS. If you want to install yarl on another operating system (like Alpine Linux, which is not manylinux-compliant because of the missing glibc and therefore, cannot be used with our wheels) the the tarball will be used to compile the library from the source code. It requires a C compiler and and Python headers installed.

To skip the compilation you must explicitly opt-in by setting the YARL_NO_EXTENSIONS environment variable to a non-empty value, e.g.:

$ YARL_NO_EXTENSIONS=1 pip install yarl

Please note that the pure-Python (uncompiled) version is much slower. However, PyPy always uses a pure-Python implementation, and, as such, it is unaffected by this variable.

Dependencies

YARL requires multidict library.

API documentation

The documentation is located at https://yarl.readthedocs.org

Why isn’t boolean supported by the URL query API?

There is no standard for boolean representation of boolean values.

Some systems prefer true/false, others like yes/no, on/off, Y/N, 1/0, etc.

yarl cannot make an unambiguous decision on how to serialize bool values because it is specific to how the end-user’s application is built and would be different for different apps. The library doesn’t accept booleans in the API; a user should convert bools into strings using own preferred translation protocol.

Comparison with other URL libraries

  • furl (https://pypi.python.org/pypi/furl)

    The library has rich functionality but the furl object is mutable.

    I’m afraid to pass this object into foreign code: who knows if the code will modify my url in a terrible way while I just want to send URL with handy helpers for accessing URL properties.

    furl has other non-obvious tricky things but the main objection is mutability.

  • URLObject (https://pypi.python.org/pypi/URLObject)

    URLObject is immutable, that’s pretty good.

    Every URL change generates a new URL object.

    But the library doesn’t do any decode/encode transformations leaving the end user to cope with these gory details.

Source code

The project is hosted on GitHub

Please file an issue on the bug tracker if you have found a bug or have some suggestion in order to improve the library.

The library uses Azure Pipelines for Continuous Integration.

Discussion list

aio-libs google group: https://groups.google.com/forum/#!forum/aio-libs

Feel free to post your questions and ideas here.

Authors and License

The yarl package is written by Andrew Svetlov.

It’s Apache 2 licensed and freely available.

Changelog

1.6.1 (2020-10-12)

Features

  • Provide wheels for aarch64, i686, ppc64le, s390x architectures on Linux as well as x86_64. #507

  • Provide wheels for Python 3.9. #526

Bugfixes

  • human_repr() now always produces valid representation equivalent to the original URL (if the original URL is valid). #511

  • Fixed requoting a single percent followed by a percent-encoded character in the Cython implementation. #514

  • Fix ValueError when decoding % which is not followed by two hexadecimal digits. #516

  • Fix decoding % followed by a space and hexadecimal digit. #520

  • Fix annotation of with_query()/update_query() methods for key=[val1, val2] case. #528

Removal

  • Drop Python 3.5 support; Python 3.6 is the minimal supported Python version.


1.6.0 (2020-09-23)

Features

  • Allow for int and float subclasses in query, while still denying bool. #492

Bugfixes

  • Do not requote arguments in URL.build(), with_xxx() and in / operator. #502

  • Keep IPv6 brackets in origin(). #504


1.5.1 (2020-08-01)

Bugfixes

  • Fix including relocated internal yarl._quoting_c C-extension into published PyPI dists. #485

Misc


1.5.0 (2020-07-26)

Features

  • Convert host to lowercase on URL building. #386

  • Allow using mod operator (%) for updating query string (an alias for update_query() method). #435

  • Allow use of sequences such as list and tuple in the values of a mapping such as dict to represent that a key has many values:

    url = URL("http://example.com")
    assert url.with_query({"a": [1, 2]}) == URL("http://example.com/?a=1&a=2")

    #443

  • Support URL.build() with scheme and path (creates a relative URL). #464

  • Cache slow IDNA encode/decode calls. #476

  • Add @final / Final type hints #477

  • Support URL authority/raw_authority properties and authority argument of URL.build() method. #478

  • Hide the library implementation details, make the exposed public list very clean. #483

Bugfixes

  • Fix tests with newer Python (3.7.6, 3.8.1 and 3.9.0+). #409

  • Fix a bug where query component, passed in a form of mapping or sequence, is unquoted in unexpected way. #426

  • Hide Query and QueryVariable type aliases in __init__.pyi, now they are prefixed with underscore. #431

  • Keep ipv6 brackets after updating port/user/password. #451


1.4.2 (2019-12-05)

Features

  • Workaround for missing str.isascii() in Python 3.6 #389


1.4.1 (2019-11-29)

  • Fix regression, make the library work on Python 3.5 and 3.6 again.

1.4.0 (2019-11-29)

  • Distinguish an empty password in URL from a password not provided at all (#262)

  • Fixed annotations for optional parameters of URL.build (#309)

  • Use None as default value of user parameter of URL.build (#309)

  • Enforce building C Accelerated modules when installing from source tarball, use YARL_NO_EXTENSIONS environment variable for falling back to (slower) Pure Python implementation (#329)

  • Drop Python 3.5 support

  • Fix quoting of plus in path by pure python version (#339)

  • Don’t create a new URL if fragment is unchanged (#292)

  • Included in error msg the path that produces starting slash forbidden error (#376)

  • Skip slow IDNA encoding for ASCII-only strings (#387)

1.3.0 (2018-12-11)

  • Fix annotations for query parameter (#207)

  • An incoming query sequence can have int variables (the same as for Mapping type) (#208)

  • Add URL.explicit_port property (#218)

  • Give a friendlier error when port cant be converted to int (#168)

  • bool(URL()) now returns False (#272)

1.2.6 (2018-06-14)

  • Drop Python 3.4 trove classifier (#205)

1.2.5 (2018-05-23)

  • Fix annotations for build (#199)

1.2.4 (2018-05-08)

  • Fix annotations for cached_property (#195)

1.2.3 (2018-05-03)

  • Accept str subclasses in URL constructor (#190)

1.2.2 (2018-05-01)

  • Fix build

1.2.1 (2018-04-30)

  • Pin minimal required Python to 3.5.3 (#189)

1.2.0 (2018-04-30)

  • Forbid inheritance, replace __init__ with __new__ (#171)

  • Support PEP-561 (provide type hinting marker) (#182)

1.1.1 (2018-02-17)

  • Fix performance regression: don’t encode enmpty netloc (#170)

1.1.0 (2018-01-21)

  • Make pure Python quoter consistent with Cython version (#162)

1.0.0 (2018-01-15)

  • Use fast path if quoted string does not need requoting (#154)

  • Speed up quoting/unquoting by _Quoter and _Unquoter classes (#155)

  • Drop yarl.quote and yarl.unquote public functions (#155)

  • Add custom string writer, reuse static buffer if available (#157) Code is 50-80 times faster than Pure Python version (was 4-5 times faster)

  • Don’t recode IP zone (#144)

  • Support encoded=True in yarl.URL.build() (#158)

  • Fix updating query with multiple keys (#160)

0.18.0 (2018-01-10)

  • Fallback to IDNA 2003 if domain name is not IDNA 2008 compatible (#152)

0.17.0 (2017-12-30)

  • Use IDNA 2008 for domain name processing (#149)

0.16.0 (2017-12-07)

  • Fix raising TypeError by url.query_string() after url.with_query({}) (empty mapping) (#141)

0.15.0 (2017-11-23)

  • Add raw_path_qs attribute (#137)

0.14.2 (2017-11-14)

  • Restore strict parameter as no-op in quote / unquote

0.14.1 (2017-11-13)

  • Restore strict parameter as no-op for sake of compatibility with aiohttp 2.2

0.14.0 (2017-11-11)

  • Drop strict mode (#123)

  • Fix "ValueError: Unallowed PCT %" when there’s a "%" in the url (#124)

0.13.0 (2017-10-01)

  • Document encoded parameter (#102)

  • Support relative urls like '?key=value' (#100)

  • Unsafe encoding for QS fixed. Encode ; char in value param (#104)

  • Process passwords without user names (#95)

0.12.0 (2017-06-26)

  • Properly support paths without leading slash in URL.with_path() (#90)

  • Enable type annotation checks

0.11.0 (2017-06-26)

  • Normalize path (#86)

  • Clear query and fragment parts in .with_path() (#85)

0.10.3 (2017-06-13)

  • Prevent double URL args unquoting (#83)

0.10.2 (2017-05-05)

  • Unexpected hash behaviour (#75)

0.10.1 (2017-05-03)

  • Unexpected compare behaviour (#73)

  • Do not quote or unquote + if not a query string. (#74)

0.10.0 (2017-03-14)

  • Added URL.build class method (#58)

  • Added path_qs attribute (#42)

0.9.8 (2017-02-16)

  • Do not quote : in path

0.9.7 (2017-02-16)

  • Load from pickle without _cache (#56)

  • Percent-encoded pluses in path variables become spaces (#59)

0.9.6 (2017-02-15)

  • Revert backward incompatible change (BaseURL)

0.9.5 (2017-02-14)

  • Fix BaseURL rich comparison support

0.9.4 (2017-02-14)

  • Use BaseURL

0.9.3 (2017-02-14)

  • Added BaseURL

0.9.2 (2017-02-08)

  • Remove debug print

0.9.1 (2017-02-07)

  • Do not lose tail chars (#45)

0.9.0 (2017-02-07)

  • Allow to quote % in non strict mode (#21)

  • Incorrect parsing of query parameters with %3B (;) inside (#34)

  • Fix core dumps (#41)

  • tmpbuf - compiling error (#43)

  • Added URL.update_path() method

  • Added URL.update_query() method (#47)

0.8.1 (2016-12-03)

  • Fix broken aiohttp: revert back quote / unquote.

0.8.0 (2016-12-03)

  • Support more verbose error messages in .with_query() (#24)

  • Don’t percent-encode @ and : in path (#32)

  • Don’t expose yarl.quote and yarl.unquote, these functions are part of private API

0.7.1 (2016-11-18)

  • Accept not only str but all classes inherited from str also (#25)

0.7.0 (2016-11-07)

  • Accept int as value for .with_query()

0.6.0 (2016-11-07)

  • Explicitly use UTF8 encoding in setup.py (#20)

  • Properly unquote non-UTF8 strings (#19)

0.5.3 (2016-11-02)

  • Don’t use namedtuple fields but indexes on URL construction

0.5.2 (2016-11-02)

  • Inline _encode class method

0.5.1 (2016-11-02)

  • Make URL construction faster by removing extra classmethod calls

0.5.0 (2016-11-02)

  • Add cython optimization for quoting/unquoting

  • Provide binary wheels

0.4.3 (2016-09-29)

  • Fix typing stubs

0.4.2 (2016-09-29)

  • Expose quote() and unquote() as public API

0.4.1 (2016-09-28)

  • Support empty values in query ('/path?arg')

0.4.0 (2016-09-27)

  • Introduce relative() (#16)

0.3.2 (2016-09-27)

  • Typo fixes #15

0.3.1 (2016-09-26)

  • Support sequence of pairs as with_query() parameter

0.3.0 (2016-09-26)

  • Introduce is_default_port()

0.2.1 (2016-09-26)

0.2.0 (2016-09-18)

  • Avoid doubling slashes when joining paths (#13)

  • Appending path starting from slash is forbidden (#12)

0.1.4 (2016-09-09)

  • Add kwargs support for with_query() (#10)

0.1.3 (2016-09-07)

  • Document with_query(), with_fragment() and origin()

  • Allow None for with_query() and with_fragment()

0.1.2 (2016-09-07)

  • Fix links, tune docs theme.

0.1.1 (2016-09-06)

  • Update README, old version used obsolete API

0.1.0 (2016-09-06)

  • The library was deeply refactored, bytes are gone away but all accepted strings are encoded if needed.

0.0.1 (2016-08-30)

  • The first release.

Metadata

Release files for yarl 1.6.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for yarl 1.6.1
File Size Uploaded
yarl-1.6.1.tar.gz 116.2 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for yarl 1.6.1
File
yarl-1.6.1-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details
yarl-1.6.1-cp39-cp39-manylinux2014_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.17+ x86-64 Details
yarl-1.6.1-cp39-cp39-manylinux2014_s390x.whl CPython 3.9 CPython 3.9 Linux glibc 2.17+ IBM System/390x Details
yarl-1.6.1-cp39-cp39-manylinux2014_ppc64le.whl CPython 3.9 CPython 3.9 Linux glibc 2.17+ PowerPC 64-le Details
yarl-1.6.1-cp39-cp39-manylinux2014_i686.whl CPython 3.9 CPython 3.9 Linux glibc 2.17+ x86-32 Details
yarl-1.6.1-cp39-cp39-manylinux2014_aarch64.whl CPython 3.9 CPython 3.9 Linux glibc 2.17+ ARM64 Details
yarl-1.6.1-cp39-cp39-manylinux1_i686.whl CPython 3.9 CPython 3.9 Linux glibc 2.5+ x86-32 Details
yarl-1.6.1-cp39-cp39-macosx_10_14_x86_64.whl CPython 3.9 CPython 3.9 macOS 10.14+ x86-64 Details
yarl-1.6.1-cp38-cp38-win_amd64.whl CPython 3.8 CPython 3.8 Windows x86-64 Details
yarl-1.6.1-cp38-cp38-manylinux2014_x86_64.whl CPython 3.8 CPython 3.8 Linux glibc 2.17+ x86-64 Details
yarl-1.6.1-cp38-cp38-manylinux2014_s390x.whl CPython 3.8 CPython 3.8 Linux glibc 2.17+ IBM System/390x Details
yarl-1.6.1-cp38-cp38-manylinux2014_ppc64le.whl CPython 3.8 CPython 3.8 Linux glibc 2.17+ PowerPC 64-le Details
yarl-1.6.1-cp38-cp38-manylinux2014_i686.whl CPython 3.8 CPython 3.8 Linux glibc 2.17+ x86-32 Details
yarl-1.6.1-cp38-cp38-manylinux2014_aarch64.whl CPython 3.8 CPython 3.8 Linux glibc 2.17+ ARM64 Details
yarl-1.6.1-cp38-cp38-manylinux1_i686.whl CPython 3.8 CPython 3.8 Linux glibc 2.5+ x86-32 Details
yarl-1.6.1-cp38-cp38-macosx_10_14_x86_64.whl CPython 3.8 CPython 3.8 macOS 10.14+ x86-64 Details
yarl-1.6.1-cp37-cp37m-win_amd64.whl CPython 3.7 CPython 3.7 pymalloc Windows x86-64 Details
yarl-1.6.1-cp37-cp37m-manylinux2014_x86_64.whl CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.17+ x86-64 Details
yarl-1.6.1-cp37-cp37m-manylinux2014_s390x.whl CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.17+ IBM System/390x Details
yarl-1.6.1-cp37-cp37m-manylinux2014_ppc64le.whl CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.17+ PowerPC 64-le Details
yarl-1.6.1-cp37-cp37m-manylinux2014_i686.whl CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.17+ x86-32 Details
yarl-1.6.1-cp37-cp37m-manylinux2014_aarch64.whl CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.17+ ARM64 Details
yarl-1.6.1-cp37-cp37m-manylinux1_i686.whl CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.5+ x86-32 Details
yarl-1.6.1-cp37-cp37m-macosx_10_14_x86_64.whl CPython 3.7 CPython 3.7 pymalloc macOS 10.14+ x86-64 Details
yarl-1.6.1-cp36-cp36m-win_amd64.whl CPython 3.6 CPython 3.6 pymalloc Windows x86-64 Details
yarl-1.6.1-cp36-cp36m-manylinux2014_x86_64.whl CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.17+ x86-64 Details
yarl-1.6.1-cp36-cp36m-manylinux2014_s390x.whl CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.17+ IBM System/390x Details
yarl-1.6.1-cp36-cp36m-manylinux2014_ppc64le.whl CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.17+ PowerPC 64-le Details
yarl-1.6.1-cp36-cp36m-manylinux2014_i686.whl CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.17+ x86-32 Details
yarl-1.6.1-cp36-cp36m-manylinux2014_aarch64.whl CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.17+ ARM64 Details
yarl-1.6.1-cp36-cp36m-manylinux1_i686.whl CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.5+ x86-32 Details
yarl-1.6.1-cp36-cp36m-macosx_10_14_x86_64.whl CPython 3.6 CPython 3.6 pymalloc macOS 10.14+ x86-64 Details

Total release size: 8.6 MB

Release files / yarl-1.6.1.tar.gz

Download URL yarl-1.6.1.tar.gz
Size 116.2 kB
Tags Source
SHA-256 checksum
How to use checksums
f7702b27b4069b1ae8816b68287ee0b32e2973c3497acd28ef047d8f1754e73e
BLAKE2b-256 checksum
How to use checksums
d716de7f1a8bee0abe00478bef64c217ad2656b9b33a483e8e0b980250e2a850
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

Release files / yarl-1.6.1-cp39-cp39-win_amd64.whl

Download URL yarl-1.6.1-cp39-cp39-win_amd64.whl
Size 127.2 kB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
9c8a5ec2364cdce2766a69c7dfef3d4fc5c9bf7ad3b35f2b12e4d8459379944f
BLAKE2b-256 checksum
How to use checksums
830f33809d7fa744641a768918627e983501d4e909edc62a5878acb996bb8cac
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

Release files / yarl-1.6.1-cp39-cp39-manylinux2014_x86_64.whl

Download URL yarl-1.6.1-cp39-cp39-manylinux2014_x86_64.whl
Size 320.9 kB
Tags CPython 3.9 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
9d68716ffcddd02c9b7878d916eb0bc66a9b656ac9ae72dc7c314fa82e4476fa
BLAKE2b-256 checksum
How to use checksums
f533714c41b7953828530ab61cd5a803fd82a3505758347ab37bb916b1c0baee
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

Release files / yarl-1.6.1-cp39-cp39-manylinux2014_s390x.whl

Download URL yarl-1.6.1-cp39-cp39-manylinux2014_s390x.whl
Size 330.5 kB
Tags CPython 3.9 Linux glibc 2.17+ IBM System/390x
SHA-256 checksum
How to use checksums
e29d9b337bce2aed1f9b1e608398327581f1f66c98400bf746fdb81a28e43cf8
BLAKE2b-256 checksum
How to use checksums
a41b277ae11ddb8e345833e0aa9b54d888d49cefe179c57cbf0b6dbf1c812924
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

Release files / yarl-1.6.1-cp39-cp39-manylinux2014_ppc64le.whl

Download URL yarl-1.6.1-cp39-cp39-manylinux2014_ppc64le.whl
Size 329.2 kB
Tags CPython 3.9 Linux glibc 2.17+ PowerPC 64-le
SHA-256 checksum
How to use checksums
4ecf1b0663afcb254a0aca2fd93d85ddd235e60da1d0bee746b335e85af375a6
BLAKE2b-256 checksum
How to use checksums
ae5cf3278f6919faf44cd5b8cfbc04287e3a9c4c8e89609deb95378f25fbbe62
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

Release files / yarl-1.6.1-cp39-cp39-manylinux2014_i686.whl

Download URL yarl-1.6.1-cp39-cp39-manylinux2014_i686.whl
Size 316.0 kB
Tags CPython 3.9 Linux glibc 2.17+ x86-32
SHA-256 checksum
How to use checksums
cd4ff04cd075372ace72c4da3893a417d88024a5ee75d3edc182bc5714a7b7f0
BLAKE2b-256 checksum
How to use checksums
81b4ffb7f1c7b5646361b8edb54f81a7ec4bfedd6fc020f14f17a74312508ed5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

Release files / yarl-1.6.1-cp39-cp39-manylinux2014_aarch64.whl

Download URL yarl-1.6.1-cp39-cp39-manylinux2014_aarch64.whl
Size 318.5 kB
Tags CPython 3.9 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
7e0345cff8a141d894838e2764ce9aa53925958b958ac954226565a484dacb9e
BLAKE2b-256 checksum
How to use checksums
2e749115fe7f79663f1586ab6ae93d3a30010e4576372a2b5bd3b6ec15f44700
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

Release files / yarl-1.6.1-cp39-cp39-manylinux1_i686.whl

Download URL yarl-1.6.1-cp39-cp39-manylinux1_i686.whl
Size 316.0 kB
Tags CPython 3.9 Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
57453e2b568f8c9a5ee9d5f24e1387d19b4b5a5be5d447f7197457fdaf5ec24f
BLAKE2b-256 checksum
How to use checksums
7877b33bcdfa01af7a33e4ec8a2474553b8b5ee992349a81137818000e0b8240
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

Release files / yarl-1.6.1-cp39-cp39-macosx_10_14_x86_64.whl

Download URL yarl-1.6.1-cp39-cp39-macosx_10_14_x86_64.whl
Size 127.6 kB
Tags CPython 3.9 macOS 10.14+ x86-64
SHA-256 checksum
How to use checksums
731fa2751c0cf30b3ba635b8f66869dc1493eb2ca52832f34499de19e1f4f1a5
BLAKE2b-256 checksum
How to use checksums
821597d130d3f6a6b7e3ad407ad2d06ef67e1d525a6f578224b2f842cff58422
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

Release files / yarl-1.6.1-cp38-cp38-win_amd64.whl

Download URL yarl-1.6.1-cp38-cp38-win_amd64.whl
Size 127.4 kB
Tags CPython 3.8 Windows x86-64
SHA-256 checksum
How to use checksums
ff144aa4f95d41d304b190e775fa3f9bf949a400d0d780f70c5f76bff44e5c38
BLAKE2b-256 checksum
How to use checksums
d9dbfbef101b9c5ea6dcc8ddf9f8d2a5129c96f7d6b6ed5c52a1a7f8942fe6f3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

Release files / yarl-1.6.1-cp38-cp38-manylinux2014_x86_64.whl

Download URL yarl-1.6.1-cp38-cp38-manylinux2014_x86_64.whl
Size 330.9 kB
Tags CPython 3.8 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
762b4ff439bb79917098ba1bd98328a4d4dba7500ebe90406e3c4b19b75d7b6c
BLAKE2b-256 checksum
How to use checksums
b8cf55e229c992a237244a2ab673e9a445593470ace95b6e401f70be23a800ef
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

Release files / yarl-1.6.1-cp38-cp38-manylinux2014_s390x.whl

Download URL yarl-1.6.1-cp38-cp38-manylinux2014_s390x.whl
Size 340.7 kB
Tags CPython 3.8 Linux glibc 2.17+ IBM System/390x
SHA-256 checksum
How to use checksums
565551d13885cd870af13366e569d92cfd48a38df74e69c052eb87b1ba729a4d
BLAKE2b-256 checksum
How to use checksums
b445d98def11684f478ba2e6747b1282ba308625ba5b51f6b275e1fe16f3770d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

Release files / yarl-1.6.1-cp38-cp38-manylinux2014_ppc64le.whl

Download URL yarl-1.6.1-cp38-cp38-manylinux2014_ppc64le.whl
Size 340.0 kB
Tags CPython 3.8 Linux glibc 2.17+ PowerPC 64-le
SHA-256 checksum
How to use checksums
c3ada6eff1edab6bf7c52b0c1af14370f7d4a42ae48492f3587545fbc6e0f218
BLAKE2b-256 checksum
How to use checksums
2ffd85436beab9ba8b246610f5dab8624f5f0f9b9b349b55669f565128c08ef7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

Release files / yarl-1.6.1-cp38-cp38-manylinux2014_i686.whl

Download URL yarl-1.6.1-cp38-cp38-manylinux2014_i686.whl
Size 328.0 kB
Tags CPython 3.8 Linux glibc 2.17+ x86-32
SHA-256 checksum
How to use checksums
f36909b7c55c5a2376272d5b9967b4be77b12080da4cca6a2cbe0fe54a694ea8
BLAKE2b-256 checksum
How to use checksums
82ccdacca9f382640da0690018b6a38a0b18cdb5860188360a452d6358e9f5e1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

Release files / yarl-1.6.1-cp38-cp38-manylinux2014_aarch64.whl

Download URL yarl-1.6.1-cp38-cp38-manylinux2014_aarch64.whl
Size 328.3 kB
Tags CPython 3.8 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
6687765b69ac6ca968d118fb4bcb4e0b03f58de36e49695e03a29bc2dbad19c5
BLAKE2b-256 checksum
How to use checksums
82b15e8e8b831a103079931388b745de4ae2003d4e1496e1c0412f9db6d1b40c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

Release files / yarl-1.6.1-cp38-cp38-manylinux1_i686.whl

Download URL yarl-1.6.1-cp38-cp38-manylinux1_i686.whl
Size 328.0 kB
Tags CPython 3.8 Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
05293ee62072969725a54323151c1e9612e147cb8ae05f41bd0318f916aff8ce
BLAKE2b-256 checksum
How to use checksums
0c1346068d3c74d67f4c3c67aa801223ee4ac690cf9a0aa991e0399c427f640a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

Release files / yarl-1.6.1-cp38-cp38-macosx_10_14_x86_64.whl

Download URL yarl-1.6.1-cp38-cp38-macosx_10_14_x86_64.whl
Size 127.4 kB
Tags CPython 3.8 macOS 10.14+ x86-64
SHA-256 checksum
How to use checksums
43bdba752ebbd1f6c6fb367ab1a5a0ca0de163911ec756e3f79e0bc2008ff6f9
BLAKE2b-256 checksum
How to use checksums
a6ab1689ffd4f8bfee742c5cf58baba8dea9568ac32ea41c463b4463b9579577
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

Release files / yarl-1.6.1-cp37-cp37m-win_amd64.whl

Download URL yarl-1.6.1-cp37-cp37m-win_amd64.whl
Size 126.3 kB
Tags CPython 3.7 CPython 3.7 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
352730f09a55264f91b598e7a61154fe747671f9b6ab6483e666d31a57890972
BLAKE2b-256 checksum
How to use checksums
6022602248a708c2d35ce8c3df3b8103f46fa81c518f335eb1ed43b3a8fcfba9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

Release files / yarl-1.6.1-cp37-cp37m-manylinux2014_x86_64.whl

Download URL yarl-1.6.1-cp37-cp37m-manylinux2014_x86_64.whl
Size 295.0 kB
Tags CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
c630433d37c518799c5bf59afee141688db940193623965b702086ab95cdf67b
BLAKE2b-256 checksum
How to use checksums
401be6d3f5a005144dc1a8387e53b8b83547013311bb68c6a46705ed38a06a55
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

Release files / yarl-1.6.1-cp37-cp37m-manylinux2014_s390x.whl

Download URL yarl-1.6.1-cp37-cp37m-manylinux2014_s390x.whl
Size 302.1 kB
Tags CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.17+ IBM System/390x
SHA-256 checksum
How to use checksums
9f70abf8ccfbb6724891c449a4f8d95205769691f2f2e416b95f9d3706b8b902
BLAKE2b-256 checksum
How to use checksums
c2564bbdb06b373b51e6541e7793ce9ccdbf032dbe9c489a65743bde79836f73
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

Release files / yarl-1.6.1-cp37-cp37m-manylinux2014_ppc64le.whl

Download URL yarl-1.6.1-cp37-cp37m-manylinux2014_ppc64le.whl
Size 303.0 kB
Tags CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.17+ PowerPC 64-le
SHA-256 checksum
How to use checksums
123330c32e02c537ba8af23e6edaa55593f14606c1c061f227e2778b3b25c74f
BLAKE2b-256 checksum
How to use checksums
3b36585e01d93c3c59eb5ae361ba71728ea89da37fcace60691cfb7d52c9862b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

Release files / yarl-1.6.1-cp37-cp37m-manylinux2014_i686.whl

Download URL yarl-1.6.1-cp37-cp37m-manylinux2014_i686.whl
Size 292.1 kB
Tags CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.17+ x86-32
SHA-256 checksum
How to use checksums
e10aabd1ed18a2e3900f02b7bef24b0e5023e0ff7b20691e17e6219d825d0579
BLAKE2b-256 checksum
How to use checksums
c3e4c7cc9c3dc3749e33378df2e83835e9af0c4db2eac06578c8ce93ec544d75
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

Release files / yarl-1.6.1-cp37-cp37m-manylinux2014_aarch64.whl

Download URL yarl-1.6.1-cp37-cp37m-manylinux2014_aarch64.whl
Size 294.4 kB
Tags CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
c6c441b3b21fbff6de1b7886b3c9225e3285204d53bc16520436d94fd9652fbd
BLAKE2b-256 checksum
How to use checksums
ab40cd58b103ffd64b5ab9ed68b4028c687fe637cf65a4115035314cfa739d16
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

Release files / yarl-1.6.1-cp37-cp37m-manylinux1_i686.whl

Download URL yarl-1.6.1-cp37-cp37m-manylinux1_i686.whl
Size 292.1 kB
Tags CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
5267cbbfe1cc336dbe34784660fbcb7767ef313f2783177167af316412526c0f
BLAKE2b-256 checksum
How to use checksums
6f5948863f4dc86f3ff7acb20d44a5c0a2cf9aba04e23f0afafaabbe9e2e5044
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

Release files / yarl-1.6.1-cp37-cp37m-macosx_10_14_x86_64.whl

Download URL yarl-1.6.1-cp37-cp37m-macosx_10_14_x86_64.whl
Size 126.7 kB
Tags CPython 3.7 CPython 3.7 pymalloc macOS 10.14+ x86-64
SHA-256 checksum
How to use checksums
5003559955af4d45142c6503f8cb4603ecf6a5005a416170b4f9ebcc0ff02743
BLAKE2b-256 checksum
How to use checksums
c935437618566d41ad7a0ba4df6c1b3961a920b9cf1766e8aa935ae77c7f6f5e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

Release files / yarl-1.6.1-cp36-cp36m-win_amd64.whl

Download URL yarl-1.6.1-cp36-cp36m-win_amd64.whl
Size 126.3 kB
Tags CPython 3.6 CPython 3.6 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
8a6efc6fb080083bbd0f691f06647555d68bd636440f7c3c3b98c4653ff8ee6e
BLAKE2b-256 checksum
How to use checksums
4cf70644386b66b8c6a10c90969bd1c9966462078ba67a88efe46c68bf2a864e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

Release files / yarl-1.6.1-cp36-cp36m-manylinux2014_x86_64.whl

Download URL yarl-1.6.1-cp36-cp36m-manylinux2014_x86_64.whl
Size 295.2 kB
Tags CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
3061b26843c82082d8fb4edb611044c7881d5e76dfdb98bc22854ec9bb88b6dd
BLAKE2b-256 checksum
How to use checksums
026537fd99813d26c5a827cc25838306cec4051fde51cb4de32e3d3de31f2bf1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

Release files / yarl-1.6.1-cp36-cp36m-manylinux2014_s390x.whl

Download URL yarl-1.6.1-cp36-cp36m-manylinux2014_s390x.whl
Size 302.3 kB
Tags CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.17+ IBM System/390x
SHA-256 checksum
How to use checksums
35412c4aa59df28be2d019f4a399a82098e9b4a99f9b00bbe996adcc2b7f4ad5
BLAKE2b-256 checksum
How to use checksums
64b19dc21490632fb53346e8150bb0fe598e5491287049b783efbba5e92f5272
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

Release files / yarl-1.6.1-cp36-cp36m-manylinux2014_ppc64le.whl

Download URL yarl-1.6.1-cp36-cp36m-manylinux2014_ppc64le.whl
Size 302.5 kB
Tags CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.17+ PowerPC 64-le
SHA-256 checksum
How to use checksums
5784a23a4488d64fd51bbd487cda036b1482098fc81563e8c8ea845500ba38c3
BLAKE2b-256 checksum
How to use checksums
5d84476c4f518fe4b4be63cdda437e64191499dd6be1e5d4a1ae53593193e0c0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

Release files / yarl-1.6.1-cp36-cp36m-manylinux2014_i686.whl

Download URL yarl-1.6.1-cp36-cp36m-manylinux2014_i686.whl
Size 293.5 kB
Tags CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.17+ x86-32
SHA-256 checksum
How to use checksums
2bf09f4ac2b195e87b2256a1707d146442516c7fa1abaadeffb75a3ba59ca56e
BLAKE2b-256 checksum
How to use checksums
1e70c141ce32bbbdc679a9cf16a65d445e738c3928683ad144dfb8053c0ee80e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

Release files / yarl-1.6.1-cp36-cp36m-manylinux2014_aarch64.whl

Download URL yarl-1.6.1-cp36-cp36m-manylinux2014_aarch64.whl
Size 294.5 kB
Tags CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
5404e53a84d4acbf0b30c50494434cde3ca208e61394ae9c4e157bd3b2c24af0
BLAKE2b-256 checksum
How to use checksums
619333d750661f4aab5d6cd32d65c32d7cdd142ad9a4c2918ed7a246fd92a92d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

Release files / yarl-1.6.1-cp36-cp36m-manylinux1_i686.whl

Download URL yarl-1.6.1-cp36-cp36m-manylinux1_i686.whl
Size 293.5 kB
Tags CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
28bc2d357e858447402d5a85a38e21b4f7628a3d02e3aab142463565112aa0ce
BLAKE2b-256 checksum
How to use checksums
a083d90f0e765a004c8d1a6b9471c25859702779b35d8aca316a421a4445d072
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

Release files / yarl-1.6.1-cp36-cp36m-macosx_10_14_x86_64.whl

Download URL yarl-1.6.1-cp36-cp36m-macosx_10_14_x86_64.whl
Size 128.3 kB
Tags CPython 3.6 CPython 3.6 pymalloc macOS 10.14+ x86-64
SHA-256 checksum
How to use checksums
dfe45d7b0badbd8ca2af3bc0e2207ef930e2fc835a6ea743b1acf0e75b784eb6
BLAKE2b-256 checksum
How to use checksums
9ddd94fd53a032498c27527849da48ee61c7131f6e0ec623895300da88ecc602
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

Release history Release notifications | RSS feed

1.9.6

92 release files

1.9.5

92 release files

1.9.3

90 release files

1.9.2

74 release files

1.9.1

74 release files

1.6.3

37 release files

1.6.2

33 release files

This release

1.6.1 This release

33 release files

1.6.0

17 release files

1.5.0

17 release files

1.4.1

17 release files

1.4.0

17 release files

1.3.0

11 release files

1.2.6

9 release files

1.2.5

9 release files

1.2.4

9 release files

1.2.3

9 release files

1.2.2

9 release files

1.2.1

9 release files

1.2.0

13 release files

1.1.1

13 release files

1.1.0

13 release files

1.0.0

13 release files

0.11.1

6 release files

0.10.0

9 release files

0.9.8

9 release files

0.9.7

9 release files

0.9.6

9 release files

0.9.5

9 release files

0.9.4

9 release files

0.9.3

9 release files

0.9.2

9 release files

0.9.1

9 release files

0.9.0

9 release files

0.8.1

9 release files

0.8.0

9 release files

0.7.1

9 release files

0.7.0

9 release files

0.6.0

9 release files

0.5.3

9 release files

0.5.2

9 release files

0.5.1

9 release files

0.5.0

9 release files

0.5.0b1

0.5.0b0

0.4.3

2 release files

0.4.2

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page