v3.0.0
icmplib 3.0 is here! 🚀
- The library is now asynchronous!
- Introduce new functions:
async_ping,async_multipingandasync_resolve. - Add a new
AsyncSocketclass to make an ICMP socket asynchronous.
- Introduce new functions:
- Rewrite models:
- All the properties of
HostandHopclasses are now lazy. - Add new properties to the
HostandHopclasses: you can retrieve the list of round-trip times and calculate the jitter. - Add the metaclass
__str__to visualize the results more easily.
- All the properties of
- Rewrite the
ping,multipingandtraceroutefunctions:- The identifier of ICMP requests is now handled automatically by the library.
- Add the ability to set the address family if a hostname or an FQDN is specified.
- A new implementation is used for the
multipingfunction. It should be more reliable. - The
multipingfunction is now in a dedicated module.
- Rewrite the documentation to help you get started with icmplib.
- Improve the
resolvefunction to return all IP addresses found. - Add the
is_hostnamefunction to check if a string is a hostname or an FQDN. - Delete the experimental class
BufferedSocket, replaced byAsyncSocket. - Performance and compatibility improvement.
- Many other small changes and fixes.
Special thanks to @JonasKs and @bdraco for their suggestions, advice and feedback!
Python 3.7 or later is now required.