--- id: aioping version: "0.4.0" license: unclear license_treatment: copyleft maintenance: dormant --- # aioping — Asyncio ping implementation License: copyleft · Maintenance: dormant · Downloads: 260.4K/mo ## What it is and what it does aioping is an asyncio-native wrapper around ICMP ping that lets you check network reachability and measure latency without blocking your async event loop. It supports both IPv4 and IPv6 addresses and accepts hostnames, resolving them via aiodns. The library offers two main interfaces: a simple ping() function that returns delay in seconds or raises TimeoutError, and a verbose_ping() function that logs results to Python's standard logger. The package depends on async-timeout for timeout handling and aiodns for asynchronous DNS resolution. It is classified as Production/Stable but has been dormant since mid-2023, meaning it receives no active maintenance. The codebase is straightforward and suitable for applications that need to perform ping checks within an async context without spawning subprocesses or blocking threads. Use it for: - Monitor host availability in async microservices or background task workers without blocking the event loop. - Implement health checks for network endpoints in async web frameworks or service meshes. - Build network diagnostics tools that measure latency to multiple targets concurrently using asyncio. - Test connectivity to remote services during application startup or periodic health verification. - Gather network metrics for logging or alerting systems that operate within async contexts. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. aioping provides an asyncio-based ICMP ping implementation for checking network reachability and measuring latency to IPv4, IPv6, or hostname targets. Yes, if you need async ping in an existing asyncio application and can accept dormant maintenance. The package is stable, has low install friction, and solves a specific problem—non-blocking ICMP ping—that is hard to replicate without subprocess overhead. However, be aware that GPLv2 copyleft applies, and no active development means you inherit any unfixed issues. Suitable for internal tools and services; evaluate carefully for production libraries or proprietary software due to the license. ## Install pip install aioping uv add aioping poetry add aioping ## Installing aioping Before you install: Low friction install with just two runtime dependencies (async-timeout and aiodns). Maintenance is dormant—last release was 2023-07-12 and last commit 2024-01-21—so expect no active bug fixes or feature updates, though the codebase is stable and classifies as Production/Stable. License in practice: Licensed under GPLv2 (copyleft). Any code that links or distributes aioping must comply with GPLv2 terms, including making source code available under the same license. Quickstart: import asyncio import aioping async def check_host(host): try: delay = await aioping.ping(host) print(f"Ping: {delay * 1000} ms") except TimeoutError: print("Timed out") asyncio.run(check_host("google.com")) Requires Python 3.5 or later; ICMP ping may require elevated privileges on some systems. Verify before relying: - Whether elevated privileges (root/admin) are required for ICMP on the target platform. - Current compatibility with Python 3.11+ given the last release was July 2023. ## Package facts - License: not declared (copyleft) - Python support: unspecified - Install friction: low - Maintenance: dormant - Downloads: 260.4K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags asyncio ping icmp, async network latency check, python ping library, icmp echo request async, network reachability test, asyncio network diagnostics, hostname latency measurement, asyncio, network-diagnostics, icmp [View on SkillFed](https://skillfed.io/packages/aioping) · [View on PyPI](https://pypi.org/project/aioping/)