Subject: CVS commit: pkgsrc/net/py-dns
To: None <>
From: Andreas Gustafsson <>
List: pkgsrc-changes
Date: 08/18/2003 04:02:49
Module Name:	pkgsrc
Committed By:	gson
Date:		Mon Aug 18 04:02:48 UTC 2003

Modified Files:
	pkgsrc/net/py-dns: Makefile PLIST distinfo

Log Message:
Update py-dns to 1.1.0.

Summary of changes from 1.0.0:

    * Message sections are now lists of RRsets, not lists of nodes.

    * Nodes no longer have names; owner names are associated with
      nodes in the Zone object's nodes dictionary.

    * Many tests have been added to the test suite; dnspython 1.0.0
      had 47 tests, 1.1.0 has 275. The improved testing uncovered a
      number of bugs, all of which have been fixed.

    * The NameDict class provides a dictionary whose keys are DNS
      names. In addition to behaving like a normal Python dictionary,
      it also provides the get_deepest_match() method. If, for
      example, you had a dictionary containing the keys and
      com, then get_deepest_match() of the name would
      match the key.

    * A new Renderer class for those applications which want finer
      control over the DNS wire format message generation process.

    * Support for a "TooBig" exception if the size of wire format
      output exceeds a specified limit.

    * Zones now have find_rrset() and find_rdataset() convenience
      methods. They let you retrieve rdata with the specified name
      and type in one call, e.g.:

         rrset = zone.find_rrset('foo', 'mx')

    * Other new zone convenience methods include: find_node(),
      delete_node(), delete_rdataset(), replace_rdataset(),
      iterate_rdatasets(), and iterate_rdatas().

    * get_ variants of find_ methods are provided; the difference is
      that get_ methods return None if the desired object doesn't
      exist, whereas the find_ methods raise an exception.

    * Zones now have a to_file() method.

    * The message and zone from_file() methods allow Unicode filenames
      on platforms (and versions of python) which support
      them. Universal newline support is also used if available.

    * The Zone class now implements more of the standard mapping
      interface. E.g. you can say zone.keys(), zone.get('name'),
      zone.iteritems(), etc. __iter__() has been changed to iterate
      the keys rather than values to match the standard mapping
      interface's behavior.

    * Rdatasets support more set operations

    * Zone and Node factories may be specified, allowing applications
      to subclass Zone or Node and yet still use the algorithms which
      build zones from master files or AXFR data.

    * dns.ipv6.inet_ntoa() now minimizes the text representation of
      IPv6 addresses in the usual way,
      e.g. "0000:0000:0000:0000:0000:0000:0000:0001" is minimized to

    * dns.query functions now take an optional address family parameter.

All known bugs from 1.0.0 are fixed in this release.

To generate a diff of this commit:
cvs rdiff -r1.4 -r1.5 pkgsrc/net/py-dns/Makefile
cvs rdiff -r1.1.1.1 -r1.2 pkgsrc/net/py-dns/PLIST
cvs rdiff -r1.2 -r1.3 pkgsrc/net/py-dns/distinfo

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.