Releases: ValentinBELYN/icmplib
Releases · ValentinBELYN/icmplib
v3.0.4
v3.0.3
- Add the
sockproperty to theICMPSocketclass.
v3.0.2
- Add support for IPv6 addresses with zone index.
- The
payloadproperty of anICMPRequestnow returns a random value if the payload is not defined instead ofNone. - Optimize imports.
v3.0.1
- Make the
SocketPermissionErrormore explicit when the OS does not allow instantiation of unprivileged sockets. - Delete unnecessary properties from exceptions.
- Improve SEO on GitHub.
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.
v2.1.1
- 🐛 Revert changes made to the
traceroutefunction due to a bug.
This version is the last of the 2.x branch. See you soon for the release of icmplib 3.0!
v2.1.0
- Add a
familyparameter to theresolvefunction to define the address family. - Improve the reliability of the results of the
traceroutefunction.
v2.0.2
- Rename the default branch from
mastertomain. - Add more details about the
privilegedparameter in theREADMEfile (part 2). - 🐛 Fix a bug preventing the
traceroutefunction to work with IPv6 addresses (part 2).
v2.0.1
- Handle
EACCESerrors at sockets level. - Add some details about the
privilegedparameter in theREADMEfile. - 🐛 Fix a bug preventing the
traceroutefunction to work with IPv6 addresses.
v2.0.0
icmplib 2.0 is here! 🚀
- New library architecture.
- Add a new
multipingfunction. This function will be faster and more memory efficient. - Add the ability to use the library without root privileges.
- Add the ability to set a source IP address for sending your ICMP packets.
- Add a
first_hopparameter to thetraceroutefunction to set the initial time to live value (@scoulondre). - Add two new exceptions:
NameLookupError: raised when the requested name does not exist or cannot be resolved.SocketAddressError: raised when the requested address cannot be assigned to the socket.
- Add a new
BufferedSocketclass (experimental) to send several packets simultaneously without waiting for a response. - The
receivemethod of sockets can receive all incoming packets. - Throw new exceptions when instantiating sockets, sending and receiving packets.
- Improve the
resolvefunction:- A
NameLookupErroris now raised if the requested name does not exist or cannot be resolved.
- A
- Improve compatibility with Linux, macOS and Windows.
- Delete deprecated properties.
- Update docstrings, examples and documentation.
Compatibility with existing programs is maintained.