ipaddress 0.5.0
This release achieves feature parity with the Python ipaddress module (#46).
New features
- Additional checks for reserved addresses/networks:
is_private()
,is_reserved()
,is_site_local()
(#49) - New
is_global()
checks if addresses or networks are not reserved (#49) - New
collapse_networks()
collapses contiguous and overlapping networks (#54) - New
exclude_networks()
removes networks from others (#59) - New
reverse_pointer()
returns the record used by reverse DNS (#57) - New datasets:
iana_ipv4
andiana_ipv6
contain registries of allocated blocks (#55) - New bitwise shift operators:
%<<%
and%>>%
(#52) - Reorganized C++ code to expose
IpAddressVector
andIpNetworkVector
classes to other packages (useLinkingTo: AsioHeaders, ipaddress, Rcpp
). This does not affect the public R interface. (#51)
Minor improvements and fixes
format.ip_address()
,format.ip_network()
andformat.ip_interface()
gain anexploded
parameter to display leading zeros for IPv6 addresses (#56)ip_to_integer()
gains abase
parameter to select between decimal, hexadecimal and binary outputs (#47)- Integer-like doubles are now accepted everywhere in place of an integer
- Update
vignette("ipaddress-examples")
to use the fuzzyjoin package (#61) - Update
vignette("ipaddress-examples")
with how to randomly generate public IP addresses (#62) - Fixed comparison of
ip_address()
vectors to account for machine endianness (#53) - Comparison of
ip_network()
andip_interface()
vectors is now consistent with the Python ipaddress moduleip_network()
: network address compared before prefix lengthip_interface()
: network compared before host address