Skip to main content

PyPI version PyPI - Downloads License: MIT

An Upgraded version of pycares with faster and safer features.

Installation

How to install

pip install cyares

How to install with Trio bundle

pip install cyares[trio]

How to install with anyio bundle

pip install cyares[anyio]

How to install with optional IDNA Plugin

pip install cyares[idna]

How to install with optional aiohttp extension

pip install cyares[aiohttp]

Installing all bundles

pip install cyares[all]

Small Examples of How to Use

from cyares import Channel

# NOTE: Dns Queries contain a Future object
# This is a little bit different from pycares 
# Handles were used to prevent new or unwanted vulnerabilities along
# with easier control given to the user...
# The Future object comes from the python concurrent.futures standard library

def main():
    with Channel(servers=["8.8.8.8", "8.8.4.4"], event_thread=True) as channel:
        data = channel.query("google.com", "A").result()
    print(data)

if __name__ == "__main__":
    main()

In Asyncio

There's a module for an aiodns version if aiodns were using cyares.

import winloop # or uvloop (asyncio will also work) 
from cyares.aio import DNSResolver

async def test():
    async with DNSResolver(["8.8.8.8", "8.8.4.4"]) as dns:
        data = await dns.query("google.com", "A")
    print(data)

if __name__ == "__main__":
    winloop.run(test())

Trio

Trio is now supported as well which means this library is not just limited to synchronous python or asyncio.

from cyares.trio import DNSResolver
import trio

async def test():
    async with DNSResolver(["8.8.8.8", "8.8.4.4"], rotate=True, event_thread=False) as dns:
        result = await dns.query("google.com", "A")
        print(result)

if __name__ == "__main__":
    trio.run(test)

Anyio

As of 0.4.0 anyio is now supported if you need use an anyio implementation

from cyares.anyio import DNSResolver
import anyio

async def test():
    async with DNSResolver(["8.8.8.8", "8.8.4.4"], rotate=True, event_thread=False) as dns:
        result = await dns.query("google.com", "A")
        print(result)

if __name__ == "__main__":
    anyio.run(test)

Aiohttp

Using Globally (Monkey Patch Method)

[!WARNING] aiohttp implementation is still buggy. Use at your own risk.

install() applies a monkeypatch globally Know that if you wanted to use different resolvers with aiohttp you can do that by passing CyAresResolver through to the ClientSession. another way to avoid install() not being threadsafe is by installing before the rest of your code begins running. Same as how uvloop and winloop both work

from cyares.aiohttp import install
from aiohttp import ClientSession
import asyncio

async def main():
    # CyAres should be monkeypatched to be the default 
    # DNS Resolver for this http request
    async with ClientSession() as client:
        async with client.get("https://httpbin.org/ip") as result:
            data = await result.json()
            print(f'YOUR IP ADDRESS IS: {data["origin"]}')

if __name__ == "__main__":
    install()
    asyncio.run(main())

when your done with an evenloop run and want to rerun another but with an alternate dnsresolver such as aiodns or the ThreadedResolver use uninstall()

Using Non-Globally

Although slightly more tricky it is possible to pass along CyAresResolver with the right setup without resorting to install(). This will also work with aiohttp_socks or using aiohttp_socks with a proxy or tor or i2p. If you feel uncomfortable with sending this much stuff to ClientSession yourself it's encouraged to use globally with install() or via monkeypatching aiohttp's default dns resolver in your own way.

from cyares.aiohttp import CyAresResolver
from aiohttp import ClientSession, TCPConnector

# NOTE: This should also be respected when aiohttp_socks is in use
# Such as the ProxyConnector which is another connector type of it's
# own

async def main():
    async with ClientSession(
        connector=TCPConnector(CyAresResolver()
    )) as client:
        async with client.get("https://httpbin.org/ip") as result:
            data = await result.json()
            print(f'YOUR IP ADDRESS IS: {data["origin"]}')

In Cython

from cyares cimport Channel, Future, AresError


def dns_resolve_a(str domain):
    """Resolves IPV4 Using cython"""
    cdef Future fut
    with Channel(['8.8.8.8', '8.8.4.4'], event_thread=True) as   channel:
        fut = cannel.query(domain, "A")
    return fut.wait()

Story

As Someone who as recently started to contribute to projects such as aiohttp and a few of it's smaller libraries. The asynchronous dns resolver aiodns that aiohttp can optionally use, felt like the oddest one in the group. With aiodns using pycares under the hood I wanted to learn how it worked to see if I could use my skills to optimize it like I had previously done with propcache and multidict as well but I soon came to learn of it's many problems and when pycares started to hang on me with lingering threads when it ran, something didn't feel right to me and it lead me down a very large rabbit-hole waiting to be re-explored.

Pycares was quick, dirty and fast but as the years of it's existance went by something wasn't exactly right with it and it could use safer features, better optimization and safety practices. While cffi might be both quick and easy to use I didn't see the benefit of using it. The many vulnerabilities it was getting told me something needed to change if not big. With Pycares reaching version 5.0.0 I wanted to celebrate it the same way node-js celebrated the 10 year annversery of the original http-parser. Write a new one.

The Rewrite

While contributing to the aio-libs repos whenever I had a gap of free-time on hand while waiting on a question to be answered and when my other python libraries felt stable enough such as (deprecated-params, aiocallback, aiothreading & winloop) this is where I spent my time on. It had a total of 3 re-writes until I was satisfied with the result. Turns out just doing everything in small chunks makes all the difference.

It only felt right to me that migrating the library from cffi to cython would be the best solution to the problem. Not Rust or C, just pure-cython and small amounts of C whenever nessesary and re-changing many of the internals to incorperate a safer approch. The reason for not picking Rust is that there wasn't nessesarly a need to be memory-safe. What I cared about was speed, when people are doing DNS Lookups, speed matters and Rust did not have a friendly enough archetecture that would set a future or allow me to access the parent from the child.

There was no better canadate than to move to using handles the same way uvloop & winloop do it and having authored one of them I was familliar with this concept.

The idea was not to reinvent the wheel rather move parts of the library over in chunks and look at pycares for clues on how certain things should be laid out. At the end of the day, Pycares was the blueprint and using concurrent.futures & Cython was the cure. Py_buffer techniques brought over from msgspec were utilized incase users were planning to use any bytes or string objects of any sort and I made sure the license was on it incase users wanted to know where it came from.

If there was a deprecated function with an alternative & safer approch to use I felt using it would be a better move. For example, servers are now set with the csv functions rather than the original setup and because of that change you could now set dns servers in url formats and I might possibly look at adding in yarl to be the cherry on top for those who might wish to get real creative about dns server urls.

Moving over the ares_query function to use the dns recursion function is planned for the future (maybe after I do the first release of cyares). I still wanted to retain the original response data it gives so that migrating from pycares to cyares wouldn't be a pain to anyone who planned on moving and I also didn't want to take away from pycares either if you prefer using cffi over cython the same way curl-cffi and cycurl were both done. I have my fingers crossed that aiodns will adopt this library in the future or allow users to choose between pycares and cyares.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cyares-0.9.0.tar.gz (963.5 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

cyares-0.9.0-cp314-cp314t-win_arm64.whl (1.4 MB view details)

Uploaded CPython 3.14tWindows ARM64

cyares-0.9.0-cp314-cp314t-win_amd64.whl (1.5 MB view details)

Uploaded CPython 3.14tWindows x86-64

cyares-0.9.0-cp314-cp314t-musllinux_1_2_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ x86-64

cyares-0.9.0-cp314-cp314t-manylinux_2_28_x86_64.whl (5.0 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.28+ x86-64

cyares-0.9.0-cp314-cp314t-macosx_11_0_arm64.whl (1.6 MB view details)

Uploaded CPython 3.14tmacOS 11.0+ ARM64

cyares-0.9.0-cp314-cp314t-macosx_10_15_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.14tmacOS 10.15+ x86-64

cyares-0.9.0-cp314-cp314-win_arm64.whl (1.4 MB view details)

Uploaded CPython 3.14Windows ARM64

cyares-0.9.0-cp314-cp314-win_amd64.whl (1.5 MB view details)

Uploaded CPython 3.14Windows x86-64

cyares-0.9.0-cp314-cp314-musllinux_1_2_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ x86-64

cyares-0.9.0-cp314-cp314-manylinux_2_28_x86_64.whl (4.9 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ x86-64

cyares-0.9.0-cp314-cp314-macosx_11_0_arm64.whl (1.6 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

cyares-0.9.0-cp314-cp314-macosx_10_15_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.14macOS 10.15+ x86-64

cyares-0.9.0-cp313-cp313-win_arm64.whl (1.4 MB view details)

Uploaded CPython 3.13Windows ARM64

cyares-0.9.0-cp313-cp313-win_amd64.whl (1.5 MB view details)

Uploaded CPython 3.13Windows x86-64

cyares-0.9.0-cp313-cp313-musllinux_1_2_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

cyares-0.9.0-cp313-cp313-manylinux_2_28_x86_64.whl (4.9 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

cyares-0.9.0-cp313-cp313-macosx_11_0_arm64.whl (1.6 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

cyares-0.9.0-cp313-cp313-macosx_10_13_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

cyares-0.9.0-cp312-cp312-win_arm64.whl (1.4 MB view details)

Uploaded CPython 3.12Windows ARM64

cyares-0.9.0-cp312-cp312-win_amd64.whl (1.5 MB view details)

Uploaded CPython 3.12Windows x86-64

cyares-0.9.0-cp312-cp312-musllinux_1_2_x86_64.whl (4.8 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

cyares-0.9.0-cp312-cp312-manylinux_2_28_x86_64.whl (5.0 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

cyares-0.9.0-cp312-cp312-macosx_11_0_arm64.whl (1.6 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

cyares-0.9.0-cp312-cp312-macosx_10_13_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

cyares-0.9.0-cp311-cp311-win_arm64.whl (1.4 MB view details)

Uploaded CPython 3.11Windows ARM64

cyares-0.9.0-cp311-cp311-win_amd64.whl (1.5 MB view details)

Uploaded CPython 3.11Windows x86-64

cyares-0.9.0-cp311-cp311-musllinux_1_2_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

cyares-0.9.0-cp311-cp311-manylinux_2_28_x86_64.whl (4.9 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

cyares-0.9.0-cp311-cp311-macosx_11_0_arm64.whl (1.6 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

cyares-0.9.0-cp311-cp311-macosx_10_9_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

cyares-0.9.0-cp310-cp310-win_arm64.whl (1.4 MB view details)

Uploaded CPython 3.10Windows ARM64

cyares-0.9.0-cp310-cp310-win_amd64.whl (1.5 MB view details)

Uploaded CPython 3.10Windows x86-64

cyares-0.9.0-cp310-cp310-musllinux_1_2_x86_64.whl (4.5 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

cyares-0.9.0-cp310-cp310-manylinux_2_28_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

cyares-0.9.0-cp310-cp310-macosx_11_0_arm64.whl (1.6 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

cyares-0.9.0-cp310-cp310-macosx_10_9_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

File details

Details for the file cyares-0.9.0.tar.gz.

File metadata

  • Download URL: cyares-0.9.0.tar.gz
  • Upload date:
  • Size: 963.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for cyares-0.9.0.tar.gz
Algorithm Hash digest
SHA256 48c6655d1150553b7842f170dfd0c83180d04b9657cffc551266801e23d2bc55
MD5 a5b9d655dfd71f8d48d9db0f8e52a56e
BLAKE2b-256 0cfbb0d9dc35acbf98690a0ffd608f155da97e638f436abe631d7c9b73bd16cb

See more details on using hashes here.

Provenance

The following attestation bundles were made for cyares-0.9.0.tar.gz:

Publisher: release-wheels.yml on Vizonex/cyares

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cyares-0.9.0-cp314-cp314t-win_arm64.whl.

File metadata

  • Download URL: cyares-0.9.0-cp314-cp314t-win_arm64.whl
  • Upload date:
  • Size: 1.4 MB
  • Tags: CPython 3.14t, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for cyares-0.9.0-cp314-cp314t-win_arm64.whl
Algorithm Hash digest
SHA256 382be5d712e92f52688a68c082d57f79ab779e7538e6743994f6f61576b4f761
MD5 317da7bb62b1c8ba64879173fc0b6ebb
BLAKE2b-256 00f92d3ccd07fa931cc8e795e432e18d345c87241932b065c8caafd2d57f416b

See more details on using hashes here.

Provenance

The following attestation bundles were made for cyares-0.9.0-cp314-cp314t-win_arm64.whl:

Publisher: release-wheels.yml on Vizonex/cyares

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cyares-0.9.0-cp314-cp314t-win_amd64.whl.

File metadata

  • Download URL: cyares-0.9.0-cp314-cp314t-win_amd64.whl
  • Upload date:
  • Size: 1.5 MB
  • Tags: CPython 3.14t, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for cyares-0.9.0-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 dc273a4644ad7ff37ca584720c07366e8f15c496e70e62ca79c03083f6c8af0b
MD5 60a5cef3facf1bb07b89db737abf0f8e
BLAKE2b-256 49a778c3f055e9490ed21bc6043706b145c3677c4a1b78b0b7d263b52f736f6c

See more details on using hashes here.

Provenance

The following attestation bundles were made for cyares-0.9.0-cp314-cp314t-win_amd64.whl:

Publisher: release-wheels.yml on Vizonex/cyares

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cyares-0.9.0-cp314-cp314t-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for cyares-0.9.0-cp314-cp314t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 f384f237bb2ab7bdd51f990fdccc4fab183676a6ecdb7911f1d963e2373a0cd8
MD5 591260ca877193ade900cc284e9a3295
BLAKE2b-256 1ab00e806c94556136592b60f051c22707e42812cdc24a61c43acfd08a8fc418

See more details on using hashes here.

Provenance

The following attestation bundles were made for cyares-0.9.0-cp314-cp314t-musllinux_1_2_x86_64.whl:

Publisher: release-wheels.yml on Vizonex/cyares

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cyares-0.9.0-cp314-cp314t-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for cyares-0.9.0-cp314-cp314t-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 2eed21a8c6e7c31dde8221f6ddee9707739e8b07e34b93e5b9da573cd8b36165
MD5 5f6fec37653d354cf8b80e3a592b8d80
BLAKE2b-256 792f006a2f64e211286b5e69bc6d04f28cffbdcafcff6242e68e7fb631c4c9e0

See more details on using hashes here.

Provenance

The following attestation bundles were made for cyares-0.9.0-cp314-cp314t-manylinux_2_28_x86_64.whl:

Publisher: release-wheels.yml on Vizonex/cyares

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cyares-0.9.0-cp314-cp314t-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for cyares-0.9.0-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0f2d9f98e3df67ad18913d8dc4396a9abcc720d0a6384a220d16ccb2e7734511
MD5 5829abd0b7c75e142121b8c78c7c992e
BLAKE2b-256 e9a3daad03f5df1c2d09fd849a45c891f4aeb70d96fbe47b255fa5928a658d78

See more details on using hashes here.

Provenance

The following attestation bundles were made for cyares-0.9.0-cp314-cp314t-macosx_11_0_arm64.whl:

Publisher: release-wheels.yml on Vizonex/cyares

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cyares-0.9.0-cp314-cp314t-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for cyares-0.9.0-cp314-cp314t-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 2ffbb580163555cd79285c49bba98e00667e3305775110b892bc8778407cae6c
MD5 bbc90e9c00c640d155da269cc7905ce8
BLAKE2b-256 eadfa3ec77e7f7ba331dd50ebd560766f72464ba07405dc9db9aecea2157cdcd

See more details on using hashes here.

Provenance

The following attestation bundles were made for cyares-0.9.0-cp314-cp314t-macosx_10_15_x86_64.whl:

Publisher: release-wheels.yml on Vizonex/cyares

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cyares-0.9.0-cp314-cp314-win_arm64.whl.

File metadata

  • Download URL: cyares-0.9.0-cp314-cp314-win_arm64.whl
  • Upload date:
  • Size: 1.4 MB
  • Tags: CPython 3.14, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for cyares-0.9.0-cp314-cp314-win_arm64.whl
Algorithm Hash digest
SHA256 f7a89594a46e40a2b2a500558bc7927cf0e4ffab14fc80b8ac66ffc79518bd90
MD5 e90cce6a8fd3f67cf562228744c40a5f
BLAKE2b-256 b903d069fb6d1f5aa86995d6aaba841d29b76e45c7b81b9db6745984a6d66d98

See more details on using hashes here.

Provenance

The following attestation bundles were made for cyares-0.9.0-cp314-cp314-win_arm64.whl:

Publisher: release-wheels.yml on Vizonex/cyares

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cyares-0.9.0-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: cyares-0.9.0-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 1.5 MB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for cyares-0.9.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 5549eb391bf8f6e1e9d0d5aee5614c95c29d91764be582d4b184b743edac7966
MD5 7509d2474bc4fe2512b87c4c9f030e9f
BLAKE2b-256 3373bfa89b8e5e08626e4272a2281e64678f2c2d0b3734597b68eeb8d40bc1a2

See more details on using hashes here.

Provenance

The following attestation bundles were made for cyares-0.9.0-cp314-cp314-win_amd64.whl:

Publisher: release-wheels.yml on Vizonex/cyares

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cyares-0.9.0-cp314-cp314-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for cyares-0.9.0-cp314-cp314-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 a69e997f42575f54fc360627222db60e85e58a665c35c80a80b855abbab303f0
MD5 a3589c82a98e7e0ac6eea5e81a370cb3
BLAKE2b-256 8a6e9d42d140a41937335a2fbbfc111a22d846ce80af2312a469c2464425e4bb

See more details on using hashes here.

Provenance

The following attestation bundles were made for cyares-0.9.0-cp314-cp314-musllinux_1_2_x86_64.whl:

Publisher: release-wheels.yml on Vizonex/cyares

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cyares-0.9.0-cp314-cp314-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for cyares-0.9.0-cp314-cp314-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 6f940296fbda84ca2398efae73c41fdb5141d191fe6e2dec994ba8984ec9c10e
MD5 0006f87760c3621ac0b72d840fcd4e74
BLAKE2b-256 c5273e8a5578d8981ebd7d30fc3b1ed7c7767f53952f2f1a154ebd755894884c

See more details on using hashes here.

Provenance

The following attestation bundles were made for cyares-0.9.0-cp314-cp314-manylinux_2_28_x86_64.whl:

Publisher: release-wheels.yml on Vizonex/cyares

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cyares-0.9.0-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for cyares-0.9.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 573443f013b1db9e9b1a41cfd5b9adaab7877ba62eb9f57d3e818eb5acbf70e9
MD5 1b1da066c6101eb7773cea4fffcc2cb8
BLAKE2b-256 b75d87f67d77cd7bc0b5d0d8b1d198a2cf029ba43d4c2804b73e801f47023756

See more details on using hashes here.

Provenance

The following attestation bundles were made for cyares-0.9.0-cp314-cp314-macosx_11_0_arm64.whl:

Publisher: release-wheels.yml on Vizonex/cyares

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cyares-0.9.0-cp314-cp314-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for cyares-0.9.0-cp314-cp314-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 d0bcf1df3e067d43e176a23255d8f9c8c9ba187c0dbd165327e67e40efc11b13
MD5 67f6e12652b88d4ba6f95536cbf4662e
BLAKE2b-256 04b50bde46f379194d6791de94a2c30c4fdca8d6d7b1e209285e3f91fb5db62b

See more details on using hashes here.

Provenance

The following attestation bundles were made for cyares-0.9.0-cp314-cp314-macosx_10_15_x86_64.whl:

Publisher: release-wheels.yml on Vizonex/cyares

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cyares-0.9.0-cp313-cp313-win_arm64.whl.

File metadata

  • Download URL: cyares-0.9.0-cp313-cp313-win_arm64.whl
  • Upload date:
  • Size: 1.4 MB
  • Tags: CPython 3.13, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for cyares-0.9.0-cp313-cp313-win_arm64.whl
Algorithm Hash digest
SHA256 74eda9c9193c8c9fb437b06cc22fcf4db6c392d733def894a1996647b4d6e7ee
MD5 6b2dcf8c066ff83555594c70172d6d08
BLAKE2b-256 c423360204d15ddb7606d10e27237b246286042d6e79d06df348c184b4f91a85

See more details on using hashes here.

Provenance

The following attestation bundles were made for cyares-0.9.0-cp313-cp313-win_arm64.whl:

Publisher: release-wheels.yml on Vizonex/cyares

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cyares-0.9.0-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: cyares-0.9.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 1.5 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for cyares-0.9.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 a537c730b1ef64482264ab2f153019a57eb0e42408ef10274b658dcd631c2469
MD5 276c87666a96038557c50b92df7fb80c
BLAKE2b-256 2e4dbac316596d2d408f30dec95627a76ceef2fdbfb84bf2ea199245dc9532ef

See more details on using hashes here.

Provenance

The following attestation bundles were made for cyares-0.9.0-cp313-cp313-win_amd64.whl:

Publisher: release-wheels.yml on Vizonex/cyares

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cyares-0.9.0-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for cyares-0.9.0-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 ae86b418c9a0a9b569b28fc5d51983a519cf491999baa66775fbc89c632be42a
MD5 d828320c7f44f4645f6a243d32ada961
BLAKE2b-256 b5ad2088d9a0df5343b8b4c3f0fa74b58260ee55d386d306323c9eb49c93bf0d

See more details on using hashes here.

Provenance

The following attestation bundles were made for cyares-0.9.0-cp313-cp313-musllinux_1_2_x86_64.whl:

Publisher: release-wheels.yml on Vizonex/cyares

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cyares-0.9.0-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for cyares-0.9.0-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e072ea422e0caccc8a94031fd90f0821187203663147dfa63e30aeaff4f063e3
MD5 a10f8f6f3fee44631cf4e4bc1874d05e
BLAKE2b-256 df92694558727b6720ae81a4b42ea9b64aef4b525714acbce2d068d75e16306e

See more details on using hashes here.

Provenance

The following attestation bundles were made for cyares-0.9.0-cp313-cp313-manylinux_2_28_x86_64.whl:

Publisher: release-wheels.yml on Vizonex/cyares

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cyares-0.9.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for cyares-0.9.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 885d0f4d3f24a77b808b4283d73767a92809aa88da313ca25e7c3b87e7420587
MD5 e8d411419d40f38c5e621b03fe7f74c7
BLAKE2b-256 87cefda3f9e803406448634024690a33cbf560a391198b6dc9bfbe78590302b2

See more details on using hashes here.

Provenance

The following attestation bundles were made for cyares-0.9.0-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: release-wheels.yml on Vizonex/cyares

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cyares-0.9.0-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for cyares-0.9.0-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 9ecd9cf59845a8547893a81e58efa23c2d8efe365afa886c7cef4fe936c8da01
MD5 f678bf7cc2ebbba1c76f88631caf9d1a
BLAKE2b-256 882cc860d2023a55120f86e9e3354ce5f72c8bfc7b241284f2d987c018816ac2

See more details on using hashes here.

Provenance

The following attestation bundles were made for cyares-0.9.0-cp313-cp313-macosx_10_13_x86_64.whl:

Publisher: release-wheels.yml on Vizonex/cyares

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cyares-0.9.0-cp312-cp312-win_arm64.whl.

File metadata

  • Download URL: cyares-0.9.0-cp312-cp312-win_arm64.whl
  • Upload date:
  • Size: 1.4 MB
  • Tags: CPython 3.12, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for cyares-0.9.0-cp312-cp312-win_arm64.whl
Algorithm Hash digest
SHA256 2b611b400dd48ca7f8929742840f42a431f343e172d3d020aab638c78cbe7c05
MD5 d8a3793f61b7d2fec6a1dee2826d1fb0
BLAKE2b-256 892f5a3a01f1eb404aa2aa6707cfc40f95bc79f22be915d957879a8ebc8aa872

See more details on using hashes here.

Provenance

The following attestation bundles were made for cyares-0.9.0-cp312-cp312-win_arm64.whl:

Publisher: release-wheels.yml on Vizonex/cyares

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cyares-0.9.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: cyares-0.9.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 1.5 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for cyares-0.9.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 6c56178a2b90a3700981f5def4a6e4fca3b1f485f2ea8992d70df1d32d0827c5
MD5 badb948b7de064a8f46b148d58683687
BLAKE2b-256 ae3ef1b20c767a474893f249419728cf1f2485c7f7dad539e411d3540a166a67

See more details on using hashes here.

Provenance

The following attestation bundles were made for cyares-0.9.0-cp312-cp312-win_amd64.whl:

Publisher: release-wheels.yml on Vizonex/cyares

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cyares-0.9.0-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for cyares-0.9.0-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 7ae1b2470d4228b4eeec015aba2cf853648f8b918ab6b8452e8141fca0f8b841
MD5 b5ebdff790297d72ba95e1c5498eaa06
BLAKE2b-256 14e698bfa5e52f60f54469595c65f0b6bbcc35a2c86886194dfda2276ad529fa

See more details on using hashes here.

Provenance

The following attestation bundles were made for cyares-0.9.0-cp312-cp312-musllinux_1_2_x86_64.whl:

Publisher: release-wheels.yml on Vizonex/cyares

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cyares-0.9.0-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for cyares-0.9.0-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ada678f586da39ab31ecb375230e8db88a1fd53233c7060aee3c8757cfec10af
MD5 c3cafb317dcfca00227a16324bfef5fe
BLAKE2b-256 2532e8d8434d3949ec352d4e9505f96d67c929d35d212806338a92da1bc908f9

See more details on using hashes here.

Provenance

The following attestation bundles were made for cyares-0.9.0-cp312-cp312-manylinux_2_28_x86_64.whl:

Publisher: release-wheels.yml on Vizonex/cyares

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cyares-0.9.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for cyares-0.9.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7c41faa5804f67231408c4edcc1bcc10710ac7668b9b03c96801b8c259fc0cc5
MD5 d88a5e49f1804628a1e2a0f2a471f861
BLAKE2b-256 b0d489141c41a2d757fefaf007aae119159cd3697de8f35a7269fcb66c1bbca0

See more details on using hashes here.

Provenance

The following attestation bundles were made for cyares-0.9.0-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: release-wheels.yml on Vizonex/cyares

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cyares-0.9.0-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for cyares-0.9.0-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 72d781ab329c41aaac4aaee656bd525c248ae6b3fa4699a96bc402ebf73d4130
MD5 7f972e8171fb46257d2dec0c5328945d
BLAKE2b-256 9f7f249bd544d28930631ecd5159a3a299a75cd6ee512a0799b97cd1ce96eba0

See more details on using hashes here.

Provenance

The following attestation bundles were made for cyares-0.9.0-cp312-cp312-macosx_10_13_x86_64.whl:

Publisher: release-wheels.yml on Vizonex/cyares

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cyares-0.9.0-cp311-cp311-win_arm64.whl.

File metadata

  • Download URL: cyares-0.9.0-cp311-cp311-win_arm64.whl
  • Upload date:
  • Size: 1.4 MB
  • Tags: CPython 3.11, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for cyares-0.9.0-cp311-cp311-win_arm64.whl
Algorithm Hash digest
SHA256 68e86d26469cb14a95fd29d1c3ff25c741df6aa1b522ea197b9cc574fbbe317a
MD5 d3f5014768128d959f051b42192e81d7
BLAKE2b-256 0bc2c84199892c4f502148eb85eb4cf4485f1176147b883457be767073800556

See more details on using hashes here.

Provenance

The following attestation bundles were made for cyares-0.9.0-cp311-cp311-win_arm64.whl:

Publisher: release-wheels.yml on Vizonex/cyares

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cyares-0.9.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: cyares-0.9.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 1.5 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for cyares-0.9.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 0d5c029d403af6dbff325b743f4e1a7b9d4e71009308b31938dbd85a36c6ed1a
MD5 8720185bd854d0a9696750d7fae2a751
BLAKE2b-256 97ea7ea0658ed64c35afee293677ef9e7226fe22d4b4f8cf1a344a55f338a788

See more details on using hashes here.

Provenance

The following attestation bundles were made for cyares-0.9.0-cp311-cp311-win_amd64.whl:

Publisher: release-wheels.yml on Vizonex/cyares

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cyares-0.9.0-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for cyares-0.9.0-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 8032b087bbe1937d09b7c58729ad854f0b02f4526424ba44eb1b6040436725e9
MD5 e2e122026fe4fd2c42b2b1a86bab81e5
BLAKE2b-256 1b0df7664daea9b68d77d54879968866a453fefd4a6bf7a082857fee30fdd9b5

See more details on using hashes here.

Provenance

The following attestation bundles were made for cyares-0.9.0-cp311-cp311-musllinux_1_2_x86_64.whl:

Publisher: release-wheels.yml on Vizonex/cyares

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cyares-0.9.0-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for cyares-0.9.0-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 3e9ab445c7f1e71b3d00dc663d94bfbc6a05f5ae9980604e055163fe295359bc
MD5 f34895fb3a9d6d0659c60ddd7f3b4691
BLAKE2b-256 50f67f2b07cb301a683fbf6886328528446e9273da22d9b774ee499fd4f1926b

See more details on using hashes here.

Provenance

The following attestation bundles were made for cyares-0.9.0-cp311-cp311-manylinux_2_28_x86_64.whl:

Publisher: release-wheels.yml on Vizonex/cyares

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cyares-0.9.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for cyares-0.9.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3106488e668a9a74a2a10ea0b89809ba92aea07dc34002a6f7891f1f3a4e88a4
MD5 319469cfcfe616258e71096921082654
BLAKE2b-256 8491e797b3f25bd9378cb0c209842f1bbb8055ae9e6846b0b829d73d3c2beb25

See more details on using hashes here.

Provenance

The following attestation bundles were made for cyares-0.9.0-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: release-wheels.yml on Vizonex/cyares

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cyares-0.9.0-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for cyares-0.9.0-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 04ab869fee1bf18aeabcddc959bf65fa659a617b97ab741b77ea6c59c3d3006c
MD5 1df24288abacb1bc73e0c5f8025c7445
BLAKE2b-256 09518576b58a36bb1923c3a9837f386ea1328f4d24cda775f1db038c0461852e

See more details on using hashes here.

Provenance

The following attestation bundles were made for cyares-0.9.0-cp311-cp311-macosx_10_9_x86_64.whl:

Publisher: release-wheels.yml on Vizonex/cyares

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cyares-0.9.0-cp310-cp310-win_arm64.whl.

File metadata

  • Download URL: cyares-0.9.0-cp310-cp310-win_arm64.whl
  • Upload date:
  • Size: 1.4 MB
  • Tags: CPython 3.10, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for cyares-0.9.0-cp310-cp310-win_arm64.whl
Algorithm Hash digest
SHA256 9c74b74ffad878117e2abc2ac16c4ea5ad021f5de50ad1268a79063d035c8109
MD5 8eadcd03263dcf1284b2aa378b5c8ed8
BLAKE2b-256 fcd295e6e260b90c61f58eec939b3086d1559202d2be69ed3ed6079b6ea205b3

See more details on using hashes here.

Provenance

The following attestation bundles were made for cyares-0.9.0-cp310-cp310-win_arm64.whl:

Publisher: release-wheels.yml on Vizonex/cyares

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cyares-0.9.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: cyares-0.9.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 1.5 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for cyares-0.9.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 2232028e691f2b0cf8ca7c0e2e88a48d6500bd385b789aa48bc7ed6464e0f08e
MD5 9345965c2c21164b3183096fa7623f08
BLAKE2b-256 5394b59a5fbcd6edc42896debacf91fac812ce3fdbd1e7a25f58d8e865cf1a3b

See more details on using hashes here.

Provenance

The following attestation bundles were made for cyares-0.9.0-cp310-cp310-win_amd64.whl:

Publisher: release-wheels.yml on Vizonex/cyares

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cyares-0.9.0-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for cyares-0.9.0-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 cb74bccdd8bbc92f80b0b4ec4022a541f5c8293c6ccfbb80aee8079e528bee42
MD5 e08c90fb88c527a7730ca3075afb0214
BLAKE2b-256 fd08715cb4308dac629d7e214036c2d6e70acd5178365ee9067fed391e8d68f7

See more details on using hashes here.

Provenance

The following attestation bundles were made for cyares-0.9.0-cp310-cp310-musllinux_1_2_x86_64.whl:

Publisher: release-wheels.yml on Vizonex/cyares

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cyares-0.9.0-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for cyares-0.9.0-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 32c43ef9aa8ad324ed1d58d9749c8e0bd6ae3141af7584a7e828963472b1f9b1
MD5 372d33fea8c2dc8c1f4a1474c8a08bce
BLAKE2b-256 ef50a9317969887ea413e025ae5ae070eac2738ccca9b84ba3c5d240dfeb67c0

See more details on using hashes here.

Provenance

The following attestation bundles were made for cyares-0.9.0-cp310-cp310-manylinux_2_28_x86_64.whl:

Publisher: release-wheels.yml on Vizonex/cyares

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cyares-0.9.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for cyares-0.9.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 fb1e15b289e86efe2563f3c423472c5a3726b2ce7c3ebd7138f5c84049da762f
MD5 f6e1a5e23d1d39ae71836037dc2531d8
BLAKE2b-256 f22cec145b334f2b94dd32c1eeb9149dec2162f99f7cf1475d535587ce856237

See more details on using hashes here.

Provenance

The following attestation bundles were made for cyares-0.9.0-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: release-wheels.yml on Vizonex/cyares

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cyares-0.9.0-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for cyares-0.9.0-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 dcb36e011ea78eec85b734edec5e3a9aa1d59ba5da2055368fff2c6378dcf3e5
MD5 30ce22bc7edf95beac020f662b90d071
BLAKE2b-256 3b989b1515e6c506737e3afe0318603d92e8a84e2c5ad99892d6351a9e10a0ba

See more details on using hashes here.

Provenance

The following attestation bundles were made for cyares-0.9.0-cp310-cp310-macosx_10_9_x86_64.whl:

Publisher: release-wheels.yml on Vizonex/cyares

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page