Changelogs for 4.3.x
====================

.. changelog::
  :version: 4.3.2
  :released: 12th of March 2021

  This is version 4.3.2 of the Authoritative Server.
  This release fixes latency calculations to match the approach used in 4.4.0, to make comparisons between 4.3 and 4.4 more useful.
  It also contains a few build-related improvements.

  .. change::
    :tags: Bug Fixes
    :pullreq: 9786

    fix rounding inaccuracy in latency statistics (Kees Monshouwer)

.. changelog::
  :version: 4.3.1
  :released: 22nd of September 2020

  This is version 4.3.1 of the Authoritative Server.
  This release contains the fix for :doc:`PowerDNS Security Advisory 2020-05 <../security-advisories/powerdns-advisory-2020-05>` (CVE-2020-17482).
  It also contains several other fixes and improvements:

  .. change::
    :tags: Bug Fixes
    :pullreq: 9498

    Raise an exception on invalid hex content in unknown records.

  .. change::
    :tags: Bug Fixes
    :pullreq: 9444

    Handle the extra single-row result set of MySQL stored procedures (Chris Hofstaedtler)

  .. change::
    :tags: Improvements
    :pullreq: 9036

    EL8 pkgs: Build mysql backend against mariadb-connector-c-devel

  .. change::
    :tags: Improvements
    :pullreq: 9219

    gpgsql: Reintroduce prepared statements (Chris Hofstaedtler)

  .. change::
    :tags: Improvements
    :pullreq: 9233

    gsqlite3backend: add missing indexes (Kees Monshouwer)

  .. change::
    :tags: Improvements
    :pullreq: 9224

    use real remote for supermaster createSlaveDomain() (Kees Monshouwer)

  .. change::
    :tags: Improvements
    :pullreq: 9176

    Optimize IXFR-to-AXFR fallback path (Chris Hofstaedtler)

  .. change::
    :tags: Improvements
    :pullreq: 9013

    Install bind SQL schema files as part of bindbackend (Chris Hofstaedtler)

  .. change::
    :tags: New Features
    :pullreq: 9083

    add ubuntu focal target

  .. change::
    :tags: Improvements
    :pullreq: 9480

    Do not send out of zone lookups to the backends (Kees Monshouwer)

.. changelog::
  :version: 4.3.0
  :released: 7th of April 2020

  This is version 4.3.0 of the Authoritative Server.
  It contains all changes mentioned in the alpha, beta and RC versions below, plus two more bugfixes.

  If you are upgrading from beta2 or rc2, AND ONLY THEN, please read `pull request #8975 <https://github.com/PowerDNS/pdns/pull/8975>`__ very carefully.

  .. change::
    :tags: Bug Fixes
    :pullreq: 8977

    avoid IXFR-in corruption when deltas come in close together (please see the :ref:`ixfr-in-corruption-4.3.0` upgrade notes)

  .. change::
    :tags: Bug Fixes
    :pullreq: 8975

    improve sql schema updates

  .. change::
    :tags: Improvements
    :pullreq: 8951

    reduce the number of temporary memory allocations

  .. change::
    :tags: Bug Fixes
    :pullreq: 8973

    Fix NSECx for unpublished DNSKEYs properly

.. changelog::
  :version: 4.3.0-rc2
  :released: 18th of March 2020

  This is the first Release Candidate for version 4.3.0 of the Authoritative Server.
  The version called 4.3.0-rc1 was never released because of the cache cleanup change mentioned below.

  .. change::
    :tags: Improvements
    :pullreq: 8924

    Make sure we look at 10% of all cached items during cleanup (Kees Monshouwer)

  .. change::
    :tags: Bug Fixes
    :pullreq: 8936

    emit correct NSEC/NSEC3 bitmaps in hidden key situations (Robin Geuze)

.. changelog::
  :version: 4.3.0-beta2
  :released: 21st of February 2020

  This is the second beta for version 4.3.0 of the Authoritative Server.
  We expect this to be the final beta.
  Please see :doc:`the upgrade notes <../upgrading>` for some breaking changes including a mandatory schema upgrade for database backends.

  Some minor fixes have been left out from the list below; some other bugs may have been fixed accidentally as a result of the tremendous amount of work that goes into each of our major releases.

  As announced in `Backend removals in the upcoming Authoritative Server release <https://blog.powerdns.com/2019/10/17/backend-removals-in-the-upcoming-authoritative-server-release/>`_, we have removed five backends.


  .. change::
    :tags: Improvements
    :pullreq: 8811

    adjust NSEC TTLs to negative TTL

  .. change::
    :tags: Improvements
    :pullreq: 8776

    Add more SQL schema files to packages and tarballs (Matt Nordhoff)

  .. change::
    :tags: Improvements
    :pullreq: 8828
    :tickets: 7970

    only log "No question section in packet" at Debug logging level

  .. change::
    :tags: Improvements
    :pullreq: 8096

    do not update identical notified serials (Kees Monshouwer)

  .. change::
    :tags: Bug Fixes
    :pullreq: 8826

    Refuse NSEC records with a bitmap length > 32

  .. change::
    :tags: New Features
    :pullreq: 8094

    add full option to 'pdns_control show-config' (Kees Monshouwer)

  .. change::
    :tags: Bug Fixes
    :pullreq: 8815

    YaHTTP: Support bracketed IPv6 addresses

  .. change::
    :tags: Improvements
    :pullreq: 8779

    IXFR: only sign SOA in empty response for +DO queries

  .. change::
    :tags: Improvements
    :pullreq: 8793

    Prepare the caches' buckets in advance

  .. change::
    :tags: Improvements
    :pullreq: 8355

    Rework NetmaskTree for better CPU and memory efficiency. (Stephan Bosch)

  .. change::
    :tags: New Features
    :pullreq: 8783

    Add 'IO wait' and 'steal' metrics on Linux

  .. change::
    :tags: Bug Fixes
    :pullreq: 8788

    Make sure the default-publish-cds and default-publish-cdnskey options are respected for AXFR (Robin Geuze)

  .. change::
    :tags: New Features
    :pullreq: 8784

    API: add includerings option to statistics endpoint

  .. change::
    :tags: New Features
    :pullreq: 8682

    Add an extended status report in the bind backend


.. changelog::
  :version: 4.3.0-beta1
  :released: 31st of January 2020

  This is the first beta for version 4.3.0 of the Authoritative Server.
  Please see :doc:`the upgrade notes <../upgrading>` for some minor breaking changes.

  Some minor fixes have been left out from the list below; some other bugs may have been fixed accidentally as a result of the tremendous amount of work that goes into each of our major releases.

  As announced in `Backend removals in the upcoming Authoritative Server release <https://blog.powerdns.com/2019/10/17/backend-removals-in-the-upcoming-authoritative-server-release/>`_, we have removed five backends.

  .. change::
    :tags: Changes
    :pullreq: 8754

    remove the implicit 5->7 algorithm upgrade

  .. change::
    :tags: Improvements
    :pullreq: 8749

    allow local-ipv6 until 4.4.0

  .. change::
    :tags: New Features
    :pullreq: 8594

    add default-publish-{cds|cdnskey} options

  .. change::
    :tags: Changes
    :pullreq: 8744

    Make Lua mandatory for Auth (Chris Hofstaedtler)

  .. change::
    :tags: Improvements
    :pullreq: 8681

    Add metrics about the size of our in-memory rings

  .. change::
    :tags: Bug Fixes
    :pullreq: 8628

    make sure records from LMDB backend end up in the right packet section (Kees Monshouwer)

  .. change::
    :tags: Improvements
    :pullreq: 8627

    gpgsqlbackend: stop using prepared statements (Chris Hofstaedtler)

  .. change::
    :tags: Improvements
    :pullreq: 8713

    Enforce a strict maximum size for the packet and records caches

  .. change::
    :tags: New Features
    :pullreq: 8701, 8732

    remotebackend: Support alsoNotifies, setFresh, getUnfreshSlaveInfos

  .. change::
    :tags: Bug Fixes
    :pullreq: 8649

    Clear the TSIG algo between iterations in the API

  .. change::
    :tags: New Features
    :pullreq: 8177

    Add support for managing unpublished DNSSEC keys (Robin Geuze, TransIP)

  .. change::
    :tags: Bug Fixes
    :pullreq: 8668

    HTTP API: Allow DNAME in apex with SOA and NS records

.. changelog::
  :version: 4.3.0-alpha1
  :released: 10th of December 2019

  This is the first alpha for version 4.3.0 of the Authoritative Server.
  Please see :doc:`the upgrade notes <../upgrading>` for some minor breaking changes.



  .. change::
    :tags: Removed Features
    :pullreq: 8435, 8313, 7455, 8436, 8434, 8432

    remove goracle, lua, mydns, opendbx, oracle backends (Kees Monshouwer, Robin Geuze)

  .. change::
    :tags: Bug Fixes
    :pullreq: 8601, 8580, 8351, 8350, 8208, 8006

    various memory/thread correctness fixes

  .. change::
    :tags: Bug Fixes
    :pullreq: 8575
    :tickets: 8572

    LUA view: do not crash on empty IP list

  .. change::
    :tags: Bug Fixes
    :pullreq: 8562

    REST API: accept headers without spaces

  .. change::
    :tags: Bug Fixes
    :pullreq: 8301
    :tickets: 8299

    on luaSynth exception, drain db output

  .. change::
    :tags: Bug Fixes
    :pullreq: 8225
    :tickets: 7439

    tinydnsbackend: limit timestamp-based TTLs (smellyspice)

  .. change::
    :tags: Improvements
    :pullreq: 4628

    API: optionally, do not return dnssec info in domain list (zeha)

  .. change::
    :tags: Improvements
    :pullreq: 8492, 8451

    zone file parser: Add a parameter to limit the number of '$GENERATE' steps

  .. change::
    :tags: Improvements
    :pullreq: 8457

    api: avoid a large number of new database connections (Kees Monshouwer)

  .. change::
    :tags: Bug Fixes
    :pullreq: 8352

    Ensure that pdns can read pdns.conf when upgrading from an older package (mnordhoff)

  .. change::
    :tags: Bug Fixes
    :pullreq: 8424

    Ixfrdist: handle reading of empty files gracefully

  .. change::
    :tags: Improvements
    :pullreq: 8159

    Emulate a buffered read in the pipe backend, ~3x faster

  .. change::
    :tags: New Features
    :pullreq: 8328

    gmysql backend, add an option to send the SSL capability flag (Kees Monshouwer)

  .. change::
    :tags: New Features
    :pullreq: 6496

    pdnsutil: offer to increase serial after edit-zone

  .. change::
    :tags: Improvements
    :pullreq: 8307

    LUA performance: register lua functions only once (chbruyand)

  .. change::
    :tags: Bug Fixes
    :pullreq: 8296

    webserver: handle exceptions instead of SIGABRTing the world

  .. change::
    :tags: Removed Features
    :pullreq: 7918

    deprecate SOA autocomplete in pdnsutil check-zone (Kees Monshouwer)

  .. change::
    :tags: Improvements
    :pullreq: 7550

    API: make max request/response body size configurable

  .. change::
    :tags: Improvements
    :pullreq: 7962

    API: add edited_serial to Zone object

  .. change::
    :tags: Improvements
    :pullreq: 7943

    Improve error when notification comes in for non-slave zone

 .. change::
    :tags: Improvements
    :pullreq: 8249

    LUA record: rewrote the health checking system

