Change List
-----------

* 2020-04-02 (Version 2.0.0)

    - Migrate to Python3.8 (dropped support for Python2.7)
    - Updated dnspython dependency to 1.16.0
    - Updated pycrypto dependency to pycryptodome 3.9.7

* 2016-09-18 (Version 1.1.9)

    - Added support for latest dnspython 1.14.0 changes (from 1.12.0)

* 2016-03-29 (Version 1.1.8)

    - Add missing inits of 1.1.7's new "now_offset" option, in RrsigMissing and
      RrsigOrphan __init__()'s.
    - Allow specific loader and validator parameters to be specified in "short 
      form" name as well as previous "long form" names.  For example, the
      rrsig_missing and rrsig_orphan validators both have long form "now"
      parameters, called "rrsig_missing_now" and "rrsig_orphan_now", 
      respectively.  Instead of passing "--define rrsig_missing_now=20160328120000
      --define rrsig_orphan_now=20160328120000" (i.e. the same now value), one 
      can now simply the "short form" name: "--define now=20160328120000" and 
      both validators will extract and use the same value.
    - Alter --help output:
      * Change occurrences of string "test" to "validator".
      * Include description of use of short form module parameter names.
      * Change DEFINE descriptions to indicate (long_)short forms: e.g.
        (rrsig_missing_)now.
    - Add --verbose output: Show all values used for specific module parameters.

* 2016-03-28 (Version 1.1.7)

    - Add "now_offset" option to the rrsig_missing and rrsig_orphan validators,
      to optionally offset the time "now" for validating RRSIG signatures.

* 2015-09-10 (Version 1.1.6)

    - Add output of hashed-node-names to node-names "dictionary" to the 
      nsec3_orphan validator, when --verbose flag is specified.  This output
      can be useful when troubleshooting issues.

* 2015-08-27 (Version 1.1.5)

    - Add a few sys.stdout.flush()'s to assure full output w/shell redirections.

* 2015-08-24 (Version 1.1.4)

    - Add output of test times/runs when --verbose flag is specified.

* 2015-08-21 (Version 1.1.3)

    - Optimize the nsec3_orphan validator by computing once and caching the
      NSEC3-hashed names of all node names in the zone.

* 2015-08-11 (Version 1.1.2)

    - Fix nsec3_chain and nsec_chain to not complain "Chain not ordered 
      correctly" when the zone has a single NSEC(3).

* 2015-08-04 (Version 1.1.1)

    - Oops, forgot to update this change list for 1.1.0!  :p

* 2015-08-04 (Version 1.1.0)

    - Alter dns_sprockets_lib.dns_utils.calc_node_names to accept a bool flag
      'ents_too' and a dns.name.Name 'zone_name' to properly calculate empty
      non terminals (when ents_too is True, which is when the zone under
      scrutiny is an NSEC3-style zone; otherwise ENT's are not needed).  The
      updated calc_node_names should properly account for all ENT's, not just
      those implied by wildcards.

* 2015-07-15 (Version 1.0.4)

    - Convert rest of funciton/method docstrings to sphinx-style.
    - Fix test_rrsig_orphan unit test.

* 2015-07-09 (Version 1.0.3)

    - Add some more "Sample Usage" in README.rst.
    - Add "Developer Information" section in README.rst.
    - Switch some function/method docstrings to sphinx-style (more to do...)
    - New utils.process_optargs() function contains common code.

* 2015-07-08 (Version 1.0.2)

    - More fix "Sample Usage" example in README.rst.
    - Change project homepage to ultradns GitHub group.

* 2015-07-07 (Version 1.0.1)

    - Fix "Sample Usage" example in README.rst.

* 2015-07-06 (Version 1.0.0)

    - Initial GitHub/PyPI version.
    - Loaders/validators framework completed.
    - From-file and from-XFR zone loaders present.
    - Some validators (focus mainly on DNSSEC-types) present.
    - Nosetests added for code, loaders, and validators.
