diff -pruN 1:21.0.0-1/.gitignore 1:21.0.0-0ubuntu1/.gitignore
--- 1:21.0.0-1/.gitignore	2025-09-08 13:44:31.000000000 +0000
+++ 1:21.0.0-0ubuntu1/.gitignore	1970-01-01 00:00:00.000000000 +0000
@@ -1,55 +0,0 @@
-
-# Python related files
-
-*.dat
-*.egg*
-*.pyc
-TAGS
-build
-
-# Test related files
-
-*.log
-.coverage
-.coverage.*
-.tox
-.venv
-cover
-flake8_results.html
-functionaltests/.testrepository/
-functionaltests/tempest.log
-htmlcov/
-venv
-
-# Files created by releasenotes build
-releasenotes/build
-
-# Editors
-
-*.sublime-workspace
-*.swp
-
-# Misc
-
-*.DS_Store
-*.idea
-*.ipynb
-*.orig
-.stestr/
-*.sqlite
-*.sqlite3
-/.ipynb_checkpoints/*
-/bind9
-/dnsmasq
-AUTHORS
-ChangeLog
-contrib/vagrant/.vagrant/
-designate/versioninfo
-dist
-doc/source/_static/*.sample
-doc/build/*
-doc/source/api/*
-api-ref/build/*
-etc/designate/*.conf.sample
-etc/designate/*.yaml
-var/*
diff -pruN 1:21.0.0-1/.gitreview 1:21.0.0-0ubuntu1/.gitreview
--- 1:21.0.0-1/.gitreview	2025-09-08 13:44:31.000000000 +0000
+++ 1:21.0.0-0ubuntu1/.gitreview	1970-01-01 00:00:00.000000000 +0000
@@ -1,4 +0,0 @@
-[gerrit]
-host=review.opendev.org
-port=29418
-project=openstack/designate.git
diff -pruN 1:21.0.0-1/AUTHORS 1:21.0.0-0ubuntu1/AUTHORS
--- 1:21.0.0-1/AUTHORS	1970-01-01 00:00:00.000000000 +0000
+++ 1:21.0.0-0ubuntu1/AUTHORS	2025-10-01 10:46:35.000000000 +0000
@@ -0,0 +1,323 @@
+Adam Harwell <flux.adam@gmail.com>
+Ade Lee <alee@redhat.com>
+Akihiro Motoki <motoki@da.jp.nec.com>
+Alex Barclay <alex@planet-barclay.com>
+Alex Monk <krenair@gmail.com>
+Alex Schultz <aschultz@redhat.com>
+Alexander Maretskiy <amaretskiy@mirantis.com>
+Alexandra Settle <a.settle@outlook.com>
+Alexandra Settle <asettle@suse.com>
+Alin Balutoiu <abalutoiu@cloudbasesolutions.com>
+Alok Jani <alokjani.web@gmail.com>
+Andreas Jaeger <aj@suse.com>
+Andreas Jaeger <aj@suse.de>
+Andrew Bogott <abogott@wikimedia.org>
+Andrew Ruthven <puck@catalyst.net.nz>
+Andrew Spiers <andrew@andrewspiers.net>
+Andrey Perminov <d1pro@yandex.ru>
+Angus Lees <gus@inodes.org>
+Anusree <anusree.a04@gmail.com>
+Arjun Baindur <xagent@gmail.com>
+Artom Lifshitz <artom.lifshitz@enovance.com>
+Atsushi SAKAI <sakaia@jp.fujitsu.com>
+Attila Fazekas <afazekas@redhat.com>
+AvnishPal <avnish.pal@nectechnologies.in>
+Ben George <ben911993@gmail.com>
+Ben Nemec <bnemec@redhat.com>
+Bertrand Lallau <bertrand.lallau@gmail.com>
+Bertrand Lallau <bertrand.lallau@thalesgroup.com>
+Betsy Luzader <betsy.luzader@rackspace.com>
+Boris Pavlovic <boris@pavlovic.me>
+Brent Eagles <beagles@redhat.com>
+Béla Vancsics <vancsics@inf.u-szeged.hu>
+Cao Xuan Hoang <hoangcx@vn.fujitsu.com>
+CaptTofu <patg@patg.net>
+Cedric Brandily <zzelle@gmail.com>
+Chandan Kumar <chkumar246@gmail.com>
+ChangBo Guo(gcb) <eric.guo@easystack.cn>
+Chaozhe.Chen <chaozhe.chen@easystack.cn>
+Charles Neill <charles.neill@rackspace.com>
+Charles Short <zulcss@gmail.com>
+Chris Johnson <wchrisjohnson@gmail.com>
+Christian Berendt <berendt@b1-systems.de>
+Christian Rohmann <christian.rohmann@inovex.de>
+Clayton O'Neill <clayton@oneill.net>
+Clenimar Filemon <clenimar.filemon@gmail.com>
+Colleen Murphy <colleen.murphy@suse.com>
+Corey Bryant <corey.bryant@canonical.com>
+Cuong Nguyen <cuongnv@vn.fujitsu.com>
+Cyril Roelandt <cyril@redhat.com>
+Dag Stenstad <dag@stenstad.net>
+Dai Dang Van <daidv@vn.fujitsu.com>
+Damon Li <damonl@vmware.com>
+Daniel Allegood <daniel.allegood@hp.com>
+Darshan Sanghani <dsanghani@ebaysf.com>
+David Rabel <rabel@b1-systems.de>
+Davide Guerri <davide.guerri@gmail.com>
+Diana Clarke <diana.joan.clarke@gmail.com>
+Dirk Mueller <dirk@dmllr.de>
+Dmitriy Chubinidze <dcu995@gmail.com>
+Dmitry Galkin <galkindmitrii@gmail.com>
+Doug Hellmann <doug@doughellmann.com>
+Dougal Matthews <dougal@redhat.com>
+Dr. Jens Harbott <harbott@osism.tech>
+Dr. Jens Harbott <j.harbott@x-ion.de>
+Duong Ha-Quang <duonghq@vn.fujitsu.com>
+Elena Ezhova <eezhova@mirantis.com>
+Emanuel Andrecut <emanuel.andrecut@fleio.com>
+Endre Karlson <endre.karlson@gmail.com>
+Endre Karlson <endre.karlson@hp.com>
+Endre Karlson <endre.karlson@hpe.com>
+Eric Larson <eric.larson@rackspace.com>
+Eric Larson <eric@ionrock.org>
+Erik Olof Gunnar Andersson <eandersson@blizzard.com>
+Erik Olof Gunnar Andersson <me@eandersson.net>
+Federico Ceratto <federico.ceratto@gmail.com>
+Federico Ceratto <federico.ceratto@hp.com>
+Federico Ceratto <federico.ceratto@hpe.com>
+Flavio Percoco <flaper87@gmail.com>
+Gauvain Pocentek <gauvain.pocentek@objectif-libre.com>
+Ghanshyam <gmann@ghanshyammann.com>
+Ghanshyam Mann <gmann@ghanshyammann.com>
+Graham <graham.hayes@hp.com>
+Graham Hayes <gr@ham.ie>
+Graham Hayes <graham.hayes@hp.com>
+Graham Hayes <graham.hayes@hpe.com>
+Graham Hayes <graham.hayes@suse.com>
+Graham Hayes <graham@hayes.ie>
+Greg Rakauskas <gregraka@redhat.com>
+Guillaume Boutry <guillaume.boutry@canonical.com>
+Gunju Kim <gjkim042@gmail.com>
+Harm Weites <harm@weites.com>
+Hervé Beraud <hberaud@redhat.com>
+Hieu LE <hieulq@vn.fujitsu.com>
+Hironori Shiina <shiina.hironori@jp.fujitsu.com>
+Hoang Trung Hieu <hieuht@vn.fujitsu.com>
+Ian Wienand <iwienand@redhat.com>
+Igor Malinovskiy <u.glide@gmail.com>
+Ihar Hrachyshka <ihrachys@redhat.com>
+Iswarya_Vakati <v.iswarya@nectechnologies.in>
+Ivan Anfimov <lazekteam@gmail.com>
+JC Martin <jemartin@ebay.com>
+James Li <yueli.m@gmail.com>
+Jan Hartkopf <jhartkopf@inovex.de>
+Javier Ramirez <jramirez@sombrerorojo.com>
+Jayce Houtman <jhoutman@houtknots.com>
+Jean-Philippe Evrard <jean-philippe@evrard.me>
+Jeff Feng <jianhua@us.ibm.com>
+Jens Harbott <j.harbott@x-ion.de>
+Jeremy Stanley <fungi@yuggoth.org>
+Jesse Pretorius <jesse.pretorius@rackspace.co.uk>
+Jimmy McCrory <jimmy.mccrory@gmail.com>
+Joe Gordon <joe.gordon0@gmail.com>
+Joe Harrison <joehazzers@gmail.com>
+Joe McBride <jmcbride@rackspace.com>
+John Belamaric <jbelamaric@infoblox.com>
+John Schwarz <jschwarz@redhat.com>
+Jordan Cazamias <jordan.cazamias@rackspace.com>
+JordanP <jordan.pittier@cloudwatt.com>
+Jorge Niedbalski <jorge.niedbalski@canonical.com>
+Juan Pablo Suazo <jsuazo@whitestack.com>
+Julien Danjou <julien@danjou.info>
+KATO Tomoyuki <kato.tomoyuki@jp.fujitsu.com>
+Kai Zhang <kazhang2@cisco.com>
+Ken'ichi Ohmichi <ken-oomichi@wx.jp.nec.com>
+Kiall Mac Innes <kiall@hp.com>
+Kiall Mac Innes <kiall@hpe.com>
+Kiall Mac Innes <kiall@macinnes.ie>
+Kiall Mac Innes <kiall@managedit.ie>
+Kien Nguyen <kiennt@vn.fujitsu.com>
+Kieran Spear <kispear@gmail.com>
+Kiran Pawar <kinpaa@gmail.com>
+Kumar Acharya <ma501v@intl.att.com>
+Lance Bragstad <lbragstad@gmail.com>
+Lucky <Lucky@WWWLucky.local>
+Luigi Toscano <ltoscano@redhat.com>
+Luong Anh Tuan <tuanla@vn.fujitsu.com>
+MAnupama <manupama@cisco.com>
+Manish Honap <mmhonap@gmail.com>
+Mark Goddard <mark@stackhpc.com>
+MasayaAoyama <tennis.tenmasa@gmail.com>
+Matt Riedemann <mriedem.os@gmail.com>
+Matt Thompson <mattt@defunct.ca>
+Maurice Schreiber <maurice.schreiber@sap.com>
+Michael Chapman <woppin@gmail.com>
+Michael Hood <mhood@ns1.com>
+Michael Johnson <johnsomor@gmail.com>
+Michael Krotscheck <krotscheck@gmail.com>
+Michael Still <mikal@stillhq.com>
+Mike Carden <mike.carden@gmail.com>
+Mimi <mimi.lee@rackspace.com>
+Mitya_Eremeev <mitossvyaz@mail.ru>
+Monjurul Hasan <monjurul.utarlington@gmail.com>
+Monty Taylor <mordred@inaugust.com>
+Nam Nguyen Hoai <namnh@vn.fujitsu.com>
+Nate Johnston <njohnsto@redhat.com>
+Naveen Chekuri <nchekuri@cisco.com>
+Ngo Quoc Cuong <cuongnq@vn.fujitsu.com>
+Nguyen Hai <nguyentrihai93@gmail.com>
+Nguyen Hung Phuong <phuongnh@vn.fujitsu.com>
+Nguyen Phuong An <AnNP@vn.fujitsu.com>
+Nguyen Van Trung <trungnv@vn.fujitsu.com>
+Nick Silkey <nick.silkey@rackspace.com>
+Nicolas Bock <nicolas.bock@canonical.com>
+Nicolas Bock <nicolas.bock@suse.com>
+Nikolay Fedotov <nfedotov@cisco.com>
+Nobuto Murata <nobuto.murata@canonical.com>
+Olaf Seibert <o.seibert@syseleven.de>
+Omer <oschwart@redhat.com>
+Ondřej Nový <ondrej.novy@firma.seznam.cz>
+OpenStack Release Bot <infra-root@openstack.org>
+Patrick Galbraith <patg@hp.com>
+Patrick Galbraith <patg@patg.net>
+Paul Glass <paul.glass@rackspace.com>
+Pavlo Shchelokovskyy <shchelokovskyy@gmail.com>
+Petr Kovar <pkovar@redhat.com>
+Pierre Riteau <pierre@stackhpc.com>
+Pradeep Kumar Singh <pradeep.singh@nectechnologies.in>
+Praveen Yalagandula <ypraveen@avinetworks.com>
+Rafael Rivero <rafael@cloudscaling.com>
+Rahman Syed <rahman.syed@gmail.com>
+Rajath Agasthya <rajagast@cisco.com>
+Rensen <boris.rensen@gmail.com>
+Rich Megginson <rmeggins@redhat.com>
+Ritesh Anand <ritesh.anand@suse.com>
+Rocky <shi.yan@unimelb.edu.au>
+Ronald Bradford <ronald.bradford@gmail.com>
+Rossen Popov <Rossen.Popov@gamma.co.uk>
+Rudrajit Tapadar <rudrajit_tapadar@symantec.com>
+Russell Bryant <rbryant@redhat.com>
+Russell Tweed <rtweed@redhat.com>
+Ryan Bak <ryan.bak@twcable.com>
+Ryan Petrello <lists@ryanpetrello.com>
+Sascha Peilicke <speilicke@suse.com>
+Scott Solkhon <scottsolkhon@gmail.com>
+Sean McGinnis <sean.mcginnis@gmail.com>
+Selvakumar S <selvakumar.s2@hp.com>
+Selvakumar S <selvakumar.s2@hpe.com>
+Sergey Kraynev <sergejyit@gmail.com>
+Sergey Skripnick <sskripnick@mirantis.com>
+ShangXiao <shangxiaobj@inspur.com>
+Sharmin Choksey <schoksey@cisco.com>
+Shuquan Huang <huang.shuquan@99cloud.net>
+Simon McCartney <simon.mccartney@hp.com>
+Slawek Kaplonski <skaplons@redhat.com>
+Slawomir Kaplonski <slawek@kaplonski.pl>
+Stephen Finucane <stephenfin@redhat.com>
+Steve Kowalik <steven@wedontsleep.org>
+Swapnil Kulkarni (coolsvap) <me@coolsvap.net>
+THOMAS J. COCOZZELLO <tjcocozz@us.ibm.com>
+Takahito Hirose <takahito.hirose0518@gmail.com>
+Takashi Kajinami <kajinamit@oss.nttdata.com>
+Takashi Kajinami <tkajinam@redhat.com>
+Takashi NATSUME <natsume.takashi@lab.ntt.co.jp>
+Thierry Carrez <thierry@openstack.org>
+Thomas Bechtold <tbechtold@suse.com>
+Thomas Goirand <zigo@debian.org>
+Thomas Herve <therve@redhat.com>
+Tim Freund <tim@freunds.net>
+Tim Simmons <tim.simmons@rackspace.com>
+TimSimmons <tim.simmons@rackspace.com>
+Tin Lam <tl3438@att.com>
+Tobias Urdin <tobias.urdin@binero.com>
+Tobias Urdin <tobias.urdin@binero.se>
+Tom Walsh <tom.walsh@expresshosting.net>
+Tony Xu <hhktony@gmail.com>
+Tytus Kurek <tytus.kurek@canonical.com>
+Vasyl Saienko <vsaienko@mirantis.com>
+Venkata Mahesh Jonnalagadda <Venkata.Jonnalagadda@intl.att.com>
+Victor Stinner <vstinner@redhat.com>
+Vinod Mangalpally <vinod.mang@rackspace.com>
+Vu Cong Tuan <tuanvc@vn.fujitsu.com>
+XieYingYun <smokony@sina.com>
+Yaguo Zhou <zhouyaguo@gmail.com>
+Yandong Xuan <xuanyandong@inspur.com>
+Yasha Bubnov <girokompass@gmail.com>
+Yatin Kumbhare <yatinkumbhare@gmail.com>
+ZhiQiang Fan <aji.zqfan@gmail.com>
+ZhongShengping <chdzsp@163.com>
+Zhongyue Luo <zhongyue.nah@intel.com>
+alokmaurya <alok-kumar.maurya@hpe.com>
+andrewbogott <abogott@wikimedia.org>
+avnish <avnish.pal@nectechnologies.in>
+betsy luzader <betsy.luzader@rackspace.com>
+caowei <cao.wei@99cloud.net>
+caoyuan <cao.yuan@99cloud.net>
+caoyue <yue.cao@easystack.cn>
+chao liu <liuc@rc.inesa.com>
+chenxing <chason.chan@foxmail.com>
+chenxing <chen.xing@99cloud.net>
+chioleong <chio-fai-sam.leong@hp.com>
+deepakmourya <deepak.mourya@nectechnologies.in>
+dekehn <dekehn@gmail.com>
+dkehn <dekehn@gmail.com>
+dlgusrb3456 <dlgusrb3456@naver.com>
+elajkat <lajos.katona@est.tech>
+emmanuel.ankutse <emmanuel.ankutse@rackspace.com>
+eric <eric.peterson1@twcable.com>
+gaofei <gao.fei@inspur.com>
+gecong1973 <ge.cong@zte.com.cn>
+gengchc2 <geng.changcai2@zte.com.cn>
+ghanshyam <ghanshyammann@gmail.com>
+gugug <gu.jin@99cloud.net>
+hamalq <hamalq@verizonmedia.com>
+hamza alqtaishat <hamalq@verizonmedia.com>
+hamzah alqtaishat <hamalq@oath.com>
+hardik <hardik.parekh@nectechnologies.in>
+igor <igor.milovanovic@ammeon.com>
+inspurericzhang <zhanglf01@inspur.com>
+jacky06 <zhang.min@99cloud.net>
+junbo <junbo4242@gmail.com>
+kairat_kushaev <kkushaev@mirantis.com>
+keisuke_yamamoto <keisuk.yamamoto@jp.fujitsu.com>
+kenichiro matsuda <matsuda_kenichi@jp.fujitsu.com>
+koteswar <koteswara.kelam@hp.com>
+kpdev <kinpaa@gmail.com>
+leiyashuai <leiyashuai@inspur.com>
+likui <likui@yovole.com>
+lilintan <lintan.li@easystack.cn>
+lingyongxu <lyxu@fiberhome.com>
+liyou01 <liyou01@inspur.com>
+ljhuang <huang.liujie@99cloud.net>
+maaoyu <maaoyu@inspur.com>
+maestropandy <maestropandy@gmail.com>
+melissaml <ma.lei@99cloud.net>
+michael.dong@rackspace.com <michaeldong1@gmail.com>
+michaeltchapman <woppin@gmail.com>
+mikhails <mikhailsamoiloff@gmail.com>
+mimi8890 <Mimi.Lee@rackspace.com>
+minwooseo <alsdn1211@naver.com>
+naggappan <naggappan@gmail.com>
+nayna-patel <nayna.patel@hp.com>
+nizam <abdul.nizamuddin@nectechnologies.in>
+pengyuesheng <pengyuesheng@gohighsec.com>
+qinchunhua <qin.chunhua@zte.com.cn>
+ravikumar-venkatesan <ravikumar.venkatesan@hp.com>
+ricolin <rlin@vexxhost.com>
+rjrjr <rrickard@ebaysf.com>
+rmulugu <naggappan@gmail.com>
+rrickard <rrickard@paypal.com>
+saradpatel <sarad.patel@hp.com>
+shanyunfan33 <shanyunfan@inspur.com>
+sharat.sharma <sharat.sharma@nectechnologies.in>
+shihanzhang <shihanzhang@huawei.com>
+sonu.kumar <sonu.kumar@nectechnologies.in>
+stanzgy <stanzgy@gmail.com>
+swetha-chandrasekaran <swetha.chandrasekaran@hp.com>
+taoguo <guotao.bj@inspur.com>
+twm2016 <TM2086@att.com>
+venkatamahesh <venkatamaheshkotha@gmail.com>
+vishal mahajan <vishal.mahajan@nectechnologies.in>
+wangqi <wang.qi@99cloud.net>
+wangzihao <wangzihao@yovole.com>
+wengjiangang <weng.jiangang@zte.com.cn>
+wu.chunyang <wuchunyang@yovole.com>
+wu.shiming <wushiming@yovole.com>
+zhang.lei <zhang.lei@99cloud.net>
+zhangbailin <zhangbailin@inspur.com>
+zhangboye <zhangboye@inspur.com>
+zhangdebo <zhangdebo@inspur.com>
+zhangyanxian <zhang.yanxian@zte.com.cn>
+zhangyanxian <zhangyanxianmail@163.com>
+zhouhenglc <zhouhenglc@inspur.com>
+Łukasz Jernaś <deejay1@srem.org>
diff -pruN 1:21.0.0-1/ChangeLog 1:21.0.0-0ubuntu1/ChangeLog
--- 1:21.0.0-1/ChangeLog	1970-01-01 00:00:00.000000000 +0000
+++ 1:21.0.0-0ubuntu1/ChangeLog	2025-10-01 10:46:35.000000000 +0000
@@ -0,0 +1,3378 @@
+CHANGES
+=======
+
+21.0.0
+------
+
+* Restructure Designate CI jobs
+* Fix Nova issue on grenade SLURP jobs
+* Migrate designate-bind9-keystone-old-default-roles to Noble
+* Drop hacking check for old code structure
+* Remove next pagination link for floating IP list
+* Add HTTPS and SVCB record types
+* Drop description about unsupported messaging bus
+* Imported Translations from Zanata
+* Drop dead code
+* Add \`designate-manage service clean\` cmd
+* Convert email address to/from SOA
+* Zuul: do not use USE\_PYTHON3
+* Remove workaround for eventlet < 0.27.0
+* Do AXFR with latest data
+* docs: add OpenStack-Ansible as an installation method
+* Update python classifier in setup.cfg
+* Remove python3.9 support
+* Set grenade and tox-dnspython jobs as voting
+* Fix uwsgi config for grenade jobs
+* Move grenade skip-level jobs to start from 2024.2
+* Drop explicit executor argument
+* Remove installation guide for openSUSE/SLES
+* Add pyproject.toml to support pip 23.1
+* Add wsgi module to Designate and remove wsgi script
+* Remove tags from README
+* Switch the devstack upgrade to use the member role
+* Update master for stable/2025.1
+
+20.0.0
+------
+
+* Fix periodic secondary refresh task
+* tox: Remove basepython
+* Skip installation to speed up pep8
+* Add pools.yaml attributes docs section
+* Imported Translations from Zanata
+* Support "-" in region name for FIP's
+* Add docs guide updates for multi-pools
+* doc: Use dnf instead of yum
+* api: Handle duplicated query string paramters
+* Imported Translations from Zanata
+* mdns: Expose option to customize tcp keepidle
+* Drop usage of pkg\_resources
+* Update gate jobs as per the 2025.1 cycle testing runtime
+* More cleanup for the RBAC new default
+* Drop workaround for eventlet < 0.36.0
+* Remove workaround for eventlet < 0.27.0
+* reno: Update master for unmaintained/2023.1
+* Add test for zone import with different min\_ttl
+* Set a default min\_ttl for central
+* Remove default override for config options policy\_file
+* Ignore generated sample config file
+* Drop conflicting [DEFAULT] tcp\_keepidle
+* Add SLURP job
+* Revert "Disable GLOBAL\_VENV in grenade"
+* Drop redundant argument handling in designate-manage tlds import
+* devstack: Fix manage.py execution with GLOBAL\_VENV
+* Disable GLOBAL\_VENV in grenade
+* Support file watcher to trigger GMR report
+* Imported Translations from Zanata
+* Remove Python 3.8 support
+* Fix link syntax markup
+* fix blacklist list api-ref
+* Update master for stable/2024.2
+
+19.0.0
+------
+
+* Imported Translations from Zanata
+* Imported Translations from Zanata
+* Add "admin" role to the designate user created by devstack plugin
+* Imported Translations from Zanata
+* pdns: Accept hostnames for master hosts
+* Remove unused host/port options
+* Fix master host format in example
+* designate: Handle IPv6 host for masters
+* Remove deprecated and ineffective neutron options
+* Imported Translations from Zanata
+* Multi-pools implementation
+* Add Tsig empty secret validation
+* Fix invalid policy generation
+* Update functional tests for new RBAC system scope
+* Imported Translations from Zanata
+* Imported Translations from Zanata
+* Imported Translations from Zanata
+* Imported Translations from Zanata
+* Remove unnecessary generate\_uuid wrapper
+* Add designate-tempest-plugin under devstack\_plugins
+* Replace use of testtools.testcase.TestSkipped
+* Fix bashate errors
+* Improve invalidate uuid tests
+* Fix YAMLAdapter when optional attributes are missing
+* Increase minimum test coverage to 98%
+* Updated Infoblox backend
+* Fix unit tests depending on /etc/resolv.conf
+* Fix multipool sample file errors
+* [producer] Do not hard stop periodic task during exception
+* reno: Update master for unmaintained/zed
+* Switch the CentOS 9 Stream job to use etcd
+* Imported Translations from Zanata
+* Cleanup deprecated and ineffective api options
+* Simplified sink service and improved coverage
+* Remove SQLAlchemy tips jobs
+* Cleaned up coordinator and locking byte handling
+* Update master for stable/2024.1
+
+18.0.0
+------
+
+* reno: Update master for unmaintained/xena
+* reno: Update master for unmaintained/wallaby
+* reno: Update master for unmaintained/victoria
+* Add catalog zone support to devstack plugin
+* reno: Update master for unmaintained/yoga
+* Removed unused function and improved Zone Master coverage
+* vagrant: Drop reference to removed glance-registry
+* Add support for catalog zones
+* Make edgegrid-python optional
+* Stop using deprecated zake coordination driver
+* Bump hacking
+* Cleanup Heartbeat Emitter abstraction code
+* Improve Dyntext coverage and removed unusable code
+* Update python classifier in setup.cfg
+* Improved notification unit test coverage
+* Remove unused validation function
+* Cleanup cross function / unit imports
+* Increase minimum test coverage to 97%
+* Improve Scheduler coverage
+* Added basic fake network coverage
+* Improve NS1 test coverage
+* Improved V2 controller coverage
+* Improved pool move test coverage
+* Restructure testing
+* Increase minimum test coverage to 96%
+* Add new API for zone move
+* Add upgrade test coverage
+* Improved service coverage
+* Cleanup Central tests
+* Improved Notifications coverage
+* Standardized Service unit tests
+* Improved worker rpcapi coverage
+* Improve API Controllers coverage
+* Fix incorrect test IP range being used by zonefiles
+* Fix occasional failure in Service tests
+* Cleanup context code
+* Fix FloatingIP ttl not allowing zero
+* Improved producer task test coverage
+* Remove unused rpc calls
+* Cleaned up rpc loggingutils
+* Remove unused ZoneLock
+* Improved Manage coverage
+* Add missing worker delete\_zone test
+* Fix RPC tests
+* Improved dnsutils coverage
+* Cleaned up quota implementation
+* Improved MDNS Handler test coverage
+* Remove executable flag from impl\_dynect.py
+* Removed Python 2 compatibility bytes handling
+* Improved Zone Export coverage
+* Remove executable flag from recordset.py
+* Improved DNSMiddlware test coverage
+* Add shard id to zone and recordset representation
+* Fix Producer shard range ignoring the last shard
+* Add better get\_ip\_address coverage
+* Increase minimum test coverage to 95%
+* Improved coordination coverage
+* Add basic profiler test coverage
+* Improved RPC coverage
+* Improved api root test coverage
+* Fix config loading in test notifications
+* Add context hard\_delete coverage
+* Remove unused base functions
+* Add charset and engine parameters to alembic create tables
+* Add basic storage test to test config overrides
+* Remove devstack support for suse
+* Fix bug with new zone default values being ignored
+* Improved adapter base coverage
+* Increase minimum test coverage to 94%
+* Improved admin api coverage
+* Make sqlalchemy-2x tests voting again
+* Fix producer unit tests occasionally failing
+* Require correct project context for quota operations
+* Remove code for oslo.context<4.0.0
+* Use super().setUp() for APIv2AdapterTest
+* Improve object fields coverage and fixed error handling
+* Fix coverage issues with greenlet
+* Fix Zuul warnings with regexps
+* Disable tox sqlalchemy tests until fixed in oslo
+* Increase minimum test coverage to 93%
+* Improve worker test coverage
+* Add RecoverShard test coverage
+* Standardize all configuration loading
+* pyupgrade changes for Python3.8+
+* Allow base\_uri override for tests
+* Use test addresses for all unit testing
+* Improved dynect backend coverage
+* Increase minimum test coverage to 92%
+* Remove unused server object
+* Improved Objects Adapters testing
+* Improve pdns coverage
+* Improve bind coverage and fixed minor bug
+* Add missing newline in mdns release note
+* Remove python-memcached indirectly used
+* Remove unused debtcollector
+* Removed unused storage\_driver config
+* Removed deprecated mdns config
+* Drop unused os-win
+* Improved objects coverage
+* Add basic NS test coverage
+* Add basic SOA test coverage
+* Add clean\_zonefile to BIND9 pool.yaml doc
+* Fix python shebang
+* Improve middleware coverage
+* Add manage tlds test coverage
+* Add recordset api test coverage
+* Remove legacy unused devstack code
+* Add release note about max\_request\_body\_size
+* Always run all tests when changing default config
+* Remove deprecated designate-agent
+* Fix AXFR loop when updating secondary zone
+* Prevent XFR from being used on PRIMARY zones
+* Fix bug with designate-manage pool update losing existing record data
+* Add middleware to limit request body size to api-paste
+* Update master for stable/2023.2
+
+17.0.0.0rc1
+-----------
+
+* Imported Translations from Zanata
+* Add mysql\_engine and mysql\_charset options to shared\_zones table
+* Remove non-functional contrib code
+* Remove unused storage/quota attributes in producer
+* Raise error if producer configured with no valid tasks
+* Fix DB upgrade with using SQLAlchemy 2.x
+* Added simple tldname regex test
+* Simplify schema implementation
+* Moved all regexes to constants
+* Additional recordset validation testing
+* Added basic PTR Tests
+* Added basic CNAME Tests
+* Fix missing oslo.versionedobjects library option
+* Removed unused object fields code
+* Simplify test\_purge\_zones to fix race condition
+* Increase minimum test coverage to 90%
+* Fix indentation of user documentation code blocks
+* Add basic SRV record unit test
+* Add python3.9 support in testing runtime
+* Use i18n and not gettext for infoblox
+* Additional infoblox test coverage
+* Added unit test coverage for verify\_project\_id
+* Replace blockdiag with graphviz
+* Cleanup DNS Middleware
+* Improve DNS Service test coverage
+* Removed unused code path in sql base
+* Imported Translations from Zanata
+* Add a tempest test job with sqlalchemy 2.x
+* Add job to test with SQLAlchemy master (2.x)
+* Fix a sqlalchemy 2.x compatibility issue
+* Imported Translations from Zanata
+* Fix list zones if shared with multiple projects
+* Fix TsigKeyring issues with dnspython 2.x
+* Imported Translations from Zanata
+* Add docs describing classless PTR delegation
+* Add basic managed records coverage
+* Removing old archive code
+* Update notification handler sample
+* Update Unit Test README
+* Use TEST-NET-1 for most unit testing
+* Fix zone list with system scoped tokens
+* Re-enable test jobs
+* Fix zone list/show for shared zones
+* Fix bug in update\_zone with recordsets
+* Increase minimum acceptable test coverage
+* Improve storage unit test coverage
+* Remove unused find\_zone\_share code
+* Improve central unit test coverage
+* Add manage cmd tests
+* Fix create zone export RBAC
+* Add cmd tests
+* Omit hacking from cover
+* Add basic api wsgi tests
+* Improve NAPTR support
+* Restructured SQL code
+* Refactor managed record logic
+* Imported Translations from Zanata
+* Use monotonic time to protect from system time jumps
+* Clean up test imports
+* Remove unused test code for coordination
+* Fix invalid fallback value for BaseAddressHandler
+* Fix shared zones missing project ID error
+* Use ids when removing sink managed records
+* Use ids when removing ptr records
+* Secondary zone loops AXFR transfer during zone creation
+* Move to a batch model for incrementing serial
+* Fix sharing a zone with the zone owner
+* Update designate for RBAC "direction change"
+* Removed unnecessary import in sql code
+* Use SDK instead of neutronclient
+* Restart neutron on grenade client update
+* [coordination] backend\_url should be secret
+* Update for sqlalchemy v2.x compatibility
+* Removed unsupported test B309 from bandit
+* Imported Translations from Zanata
+* Update master for stable/2023.1
+
+16.0.0
+------
+
+* Add hacking check for line continuation backslash
+* [CI] Reduce workers and disable cinder to save on memory
+* Remove unused werkzeug requirement
+* Enable fail-fast on the gate queue
+* Do not use Docutil's set\_class()
+* Implement sharing of zones
+* Fix mdns deprecation warning and minor improvements
+* Imported Translations from Zanata
+* Fix dns.resolver import for mdns
+* Deprecate the agent framework and drivers
+* Imported Translations from Zanata
+* Fix missing default for hard\_delete and bump rpc version
+* Add oslo.policy.enforcer entry point
+* Imported Translations from Zanata
+* Use new get\_rpc\_client API from oslo.messaging
+* Bump minimum dnspython to 2.2.1 for python 3.10
+* Workaround issue with dnspython >= 2.3.0
+* Fix missing space IllegalChildZone
+* Make sure proxy\_http is always loaded for devstack
+* Fix tox4 error
+* Imported Translations from Zanata
+* Remove unused get\_migration\_manager function
+* Fix configuration leak in unit tests
+* Cleaned up and optimized sqlalchemy base
+* Update metadata in setup.cfg
+* Reload Infoblox config after deleting zone
+* Imported Translations from Zanata
+* Add basic api version test coverage
+* Improved Zone Lock coverage
+* Migrate Designate jobs to run on Ubuntu 22.04 (Jammy)
+* Add Ubuntu 22.04 CI support
+* Add option to force delete zone-files in delete API
+* Imported Translations from Zanata
+* CI: Move queue configuration into project-template
+* Fixes compatibility with jsonschema >= 4.16.0
+* Remove unicode
+* Removed unused SQL functions and better coverage
+* Increase minimum acceptable test coverage
+* Imported Translations from Zanata
+* Fix mdns test\_handler setup
+* Fix minimum versions in requirements.txt
+* Switch to 2023.1 Python3 unit tests and generic template name
+* Update master for stable/zed
+* Imported Translations from Zanata
+* fix delete-recordset-response.json format
+
+15.0.0.0rc1
+-----------
+
+* Fix Redis connection over TLS
+* Fix compatibility with oslo.db 12.1.0
+* Add backend validation and re-factored pool manage
+* Clean up manage pools and add additional testing
+* Imported Translations from Zanata
+* Imported Translations from Zanata
+* Fix designate-manage pool update MissingProjectID
+* Add additional backend tests
+* Validate MX records during recordset create or update
+* Add basic test for disabling the api
+* Add basic quotas api tests
+* Add basic get backend test
+* Simplified backend unit tests
+* Sync rootwrap.conf from oslo.rootwrap
+* Fixed issues with \_\_repr\_\_ and \_\_str\_\_ on objects
+* Added additional test coverage for adapters
+* Switch Designate to Alembic database migrations
+* Remove netaddr module requirement
+* Re-factored central and rpc decorators
+* Imported Translations from Zanata
+* Add a user guide for Neutron/Nova DNS integration
+* Replace deprecated readfp method with read\_file
+* Fix sqlalchemy table\_names DeprecationWarning
+* Fix pecan lookup\_controller DeprecationWarning
+* Enable cache\_ok on custom sqlalchemy UUID type
+* Cleaned up and fixed record objects and tests
+* Validate matching double quotes in TXT recordsets
+* Cleaned up adapter code
+* Remove logic for Python < 3.2
+* Added additional wsgi app testing
+* Updated dns message code and tests
+* Added basic service unit tests
+* Minmum TTL value is zero
+* Add simple API versioning to the Designate API
+* Removed RPC calls from MDNS and moved them to the Worker
+* Fix FIPS job - nslookup\_target
+* Update requirements for oslo.context>=4.0.0
+* Imported Translations from Zanata
+* Bump hacking version
+* Remove invalid use of jsonschema.compat
+* Do not declare queue at a pipeline level
+* Check zone\_id in notification\_handler to avoid UUID format issue
+* Drop python3.6/3.7 support in testing runtime
+* Fix misleading release note for RBAC changes
+* Update neutron integration link
+* Add zone ownership transfer user guide
+* Fixed incorrect quota exception message
+* Remove deprecated docs section
+* Imported Translations from Zanata
+* Fix issue with mdns rpc and make mdns safer to upgrade
+* Update zuul queue configuration
+* Improve quota API validations
+* Adds api\_ca\_cert configuration variable to pools.yaml
+* Remove unused render\_template\_to\_file method
+* Stop double compressing pdns logs
+* Fix BIND9 log collection
+* Enable ptr unset tempest test
+* Remove deprecated and unused MDNS RPC calls
+* Fixed rare race condition in unit test
+* Cleaned up agent backend code
+* Added additional worker unit test coverage
+* Set a minimum coverage limit
+* designate-tox-dnspython-latest irrelevant files
+* Validate worker actions before retrying poll
+* Minimum TTL value allowed is zero
+* Drop lower-constraints.txt and its testing
+* Add a grenade job for bind9
+* Switch CentOS jobs over to CentOS 9 Stream
+* Removing more unused rpc calls
+* Clarifies the zone import error message
+* Improved logging and minor cleanup of worker api
+* Deprecate ineffective [service:api] max\_header\_line
+* Fix tox docs env to have the correct dependencies
+* Fix delete zone transfer request with scoped token
+* Improve quota object coverage
+* Fix grenade job API startup for uwsgi
+* Remove unused log hook code
+* Fix set-quotas for non-project scoped tokens
+* Remove unused downgrade functions
+* Add Python3 zed unit tests
+* Update master for stable/yoga
+
+14.0.0
+------
+
+* Fix zone update when adding new Bind9 target to pool
+* Add inactive value to floating ip status
+* Fix Designate for use with oslo.context>=4.0.0
+* Make CentOS 9 Stream job non-voting
+* Checks for invalid denylist regex patterns
+* Fix grenade job for mod\_wsgi to uwsgi transition
+* Add proper quota error messages
+* Fixed incorrect message when zone import failed due to quota
+* Simplify create zone import implementation
+* Remove legacy logic for deleting records
+* Remove unused central code
+* Fix recordset\_records quota enforcement
+* Integrate OSprofiler and Designate
+* Updated status logic to always NOTIFY on change
+* setup.cfg: Replace dashes by underscores
+* Fix typo of intro document
+* Add non-voting dnspython latest release unit test
+* Fix duplicate zone when creating ptr records
+* Add a BIND9 job on CentOS 9 Stream
+* Allow email subadresses to be used within mail url of CAA records
+* Move context from tenant to project\_id
+* Fix designate-manage pool update bugs
+* Fix a typo in the tsigkey policy file
+* Modernize PTR implementation in Central
+* Add dig command to devstack instructions
+* Fix API reference for service statuses
+* Add RBAC policy admin guide
+* Updating python testing classifier as per Yoga testing runtime
+* Fix support for scoped tokens and default roles
+* Improve wording for validation error messages
+* Add hacking check D710 for LOG.warn()
+* Fix dns.query.tcp/udp not always handling ipv6 properly
+* Remove LOG.exceptions from \_\_call\_\_
+* Fix apache wsgi config for CentOS
+* Fix test\_dispatch\_opcode\_update unit test
+* bump py37 to py3 in tox.ini
+* Enable H306 check and fix import ordering
+* Deprecate parameters of SSLMiddleware
+* Run neutron integration job in gate
+* Revert "Move back to mod\_wsgi for devstack"
+* Add fips jobs
+* Allow TXT record over 255 characters if split
+* Fix race condition in the sink when deleting records
+* Remove Akamai (eDNS SOAP API) backend
+* Fix test failures with dnspython>=2
+* Update Quotas documentation
+* Imported Translations from Zanata
+* Remove references to sys.version\_info
+* Add Python3 yoga unit tests
+* Update master for stable/xena
+
+13.0.0
+------
+
+* Zone import and export documentation
+* Fix count\_record policy to use the right deprecation variable
+* Fix typo in the find\_pool deprecated rule
+* Fix typos in zone policy deprecations
+* Fix update blacklist policy deprecation
+* Imported Translations from Zanata
+* Replace deprecated assertDictContainsSubset
+* Add missing [oslo\_reports] options
+* Replace deprecated assertRaisesRegexp
+* Fix grenade upgrade API check URL path
+* Fix doc building for sphinx 4.x
+* CERT DNS records
+* Fix oslo policy DeprecatedRule warnings
+* Replace md5 for fips
+* Improvements to zone blacklist doc
+* Cleanup scheduler
+* Remove six
+* replace whitelist\_externals by allowlist\_externals
+* Support filtering on zone import/export list
+* Add simple scheduler permutation tests
+* TLD Doc update
+* Changed minversion in tox to 3.18.0
+* Re-enable the tempest scenario jobs
+* Fix migration for sqlalchemy 1.4
+* Add user doc for managing recordsets
+* Fixed a potential circular dependency
+* Moving to OFTC
+* setup.cfg: Replace dashes with underscores
+* Add user doc for managing zones
+* Imported Translations from Zanata
+* Add Python3 xena unit tests
+* Update master for stable/wallaby
+* Fix API reference for list service statuses
+
+12.0.0
+------
+
+* [goal] Deprecate the JSON formatted policy file
+* Add NS1 backend
+* New Doc intro section
+* Fix lower-constraints
+* Add template for testing review or branch
+* Remove unused notification handler config from central
+* Implement secure RBAC for zone transfer requests
+* Implement secure RBAC for zone transfer accepts
+* Implement secure RBAC for zone imports
+* Implement secure RBAC for zone exports
+* Implement secure RBAC for zones
+* Implement secure RBAC for tsigkeys
+* Implement secure RBAC for top-level domains
+* Implement secure RBAC for tenant policies
+* Implement secure RBAC for service status
+* Implement secure RBAC for recordsets
+* Implement secure RBAC for records
+* Implement secure RBAC for quotas
+* Implement secure RBAC for pools
+* Implement secure RBAC for blacklists
+* Add useful common policies to base.py
+* Bump minimum version of oslo.policy to 2.1.0
+* Bump minimum version of oslo.log to 4.3.0
+* Add timeout to rndc commands
+* Update requirements URLs in tox config
+* Imported Translations from Zanata
+* Drop deprecated tail\_log function from devstack plugin
+* Be explicit about the coordination URL
+* Work around broken json parsing in latest pygments
+* requirements: Drop os-testr
+* Fix resource links in API endpoints
+* Fix lower-constraints test not constraining properly
+* Remove the unused coding style modules
+* Add Python3 wallaby unit tests
+* Remove unnecessary lower constraints
+* Imported Translations from Zanata
+* Imported Translations from Zanata
+* Increase lower-constraint for kombu
+* Fix pool update with duplicate masters
+* Fix pdns4 devstack plugin
+* Update master for stable/victoria
+* Remove install unnecessary packages
+
+11.0.0
+------
+
+* Move back to mod\_wsgi for devstack
+* Fix l-c testing for ubuntu focal
+* fix database sync always get the wrong  value
+* Add link to openstack client commands in cli doc section
+* Native Zuul v3 designate-grenade-pdns4 job
+* Fix multi messages AXFR with TSIG
+* Remove Babel from lower-constraints
+* Update zones masters using pool target masters
+* Add a /healthcheck middleware
+* Imported Translations from Zanata
+* Fix inspect module deprecation warning
+* Remove broken and outdated related doc page
+* Remove translation sections from setup.cfg
+* Imported Translations from Zanata
+* Imported Translations from Zanata
+* [part1]:Remove six
+* Fix uwsgi path
+* Use unittest.mock instead of mock
+* Stop to use the \_\_future\_\_ module
+* Add CLI examples to user section
+* pdns4 backend: check if zone exists before attempting delete
+* Add examples using the OpenStack CLI
+* Fix some spelling
+* Use unittest.mock instead of third party mock
+* Imported Translations from Zanata
+* Switch to uwsgi as default for devstack
+* Cap jsonschema 3.2.0 as the minimal version
+* Add py38 package metadata
+* Imported Translations from Zanata
+* Switch to newer openstackdocstheme and reno versions
+* Fix hacking min version to 3.0.1
+* Adding the option to set the zone quota to unlimited
+* Update contributor docs
+* Fix issues with newer flake8
+* Switch to dnspython package
+* Fix designate-sink shutdown issue
+* Imported Translations from Zanata
+* Monkey patch original current\_thread \_active
+* Add Python3 victoria unit tests
+* Update master for stable/ussuri
+* Simplify Coordination implementation
+* Fix slow zone imports
+
+10.0.0.0rc1
+-----------
+
+* Imported Translations from Zanata
+* Imported Translations from Zanata
+* Community Goal: Project PTL & Contrib Docs Update
+* Imported Translations from Zanata
+* Imported Translations from Zanata
+* Adding distributed locking to central
+* Stop setting version specific basepython binaries
+* Cleanup py27 support
+* Update hacking for Python3
+* Clean up api middlewares
+* Fix issue with neutron\_api tests
+* Imported Translations from Zanata
+* Re-factored Heartbeat implementation
+* Cleanup docs building
+* Update the Akamai DNS Driver matrix information
+* Make the postgres job experimental
+* Use Tempest 'all' tox env
+* Remove unused legacy playbooks
+* Drop setcap on python binary
+* Drop use of USE\_SYSTEMD var in devstack plugin
+* Fixing services getting stuck on shutdown
+* Implement create/delete zone for Akamai v2 API
+* Fixed neutron endpoint override
+* Improve sink recordset creation
+* Imported Translations from Zanata
+* Updated reno for dropping Python 2 support
+* Simplified network api implementation
+* Don't use hasattr to lazy-load properties
+* [ussuri][goal] Drop python 2.7 support and testing
+* Delete removed dashboard panel when upgrading
+* Removed unused SSLMiddleware
+* Clean up pecan Request patching
+* Move pecan\_debug into cfg section
+* Remove broken target sync extension
+* Run grenade old side with python3
+* Don't install Horizon as part of the upgrade test
+* Make designate reproducible
+* Renamed enable\_host\_header by default reno
+* Fix api version not providing the full url
+* Switch to Ussuri jobs
+* Remove wsgi eventlet monkey patch
+* Switch to apache for designate-api
+* Enable graceful shutdown of mdns
+* Don't install v1 dashboard panel
+* designate-manage pool update --dry-run not should pass argument
+* fix Secondary zone can not xfr
+* fix ListObjectMixin.\_obj\_from\_primitive bug
+* Updated Readme
+* Drop use of DESIGNATE\_AUTH\_CACHE\_DIR
+* Reduce log spam from coordinator
+* Update devstack to use workers
+* Update master for stable/train
+
+9.0.0
+-----
+
+* Experimental wsgi support
+* fix call obj\_reset\_changes with recursive=True raise error
+* Set enable\_host\_header in documentation
+* Removed deprecated powerdns 3 driver
+* Removed deprecated pool-manager implementation
+* Refactored service layer
+* fix get the name servers for a zone not validate zone\_id
+* Add missing RabbitMQ configuration to install guides
+* Build man pages for the commands that are documented
+* Make IPv6 jobs voting
+* Add pdf-docs env to tox.ini
+* Adjusted default heartbeat interval and renamed file
+* Only log zone not found when notifing
+* Only log unexpected rndc errors
+* Fix bug in recordset status
+* Standardizing install guides
+* Updated install guide
+* Blacklist eventlet 0.21.0,0.23.0,0.25.0
+* Fixed error in install guide
+* Fixed broken kolla install link
+* Skip grenade jobs on Release note changes
+* Updated Release notes for Train
+* Fix ipv6 bugs with devstack and pdns4 driver
+* Docs: Fix broken links and make more robust
+* Add non voting ipv6 only jobs
+* Fix missing \_static folder breaking gate
+* Ensure coordination IDs are encoded
+* Drop creating extra endpoints in devstack
+* Fixing 404 link
+* Use zone.tenant\_id when context.project\_id is None for pdns3
+* Blacklist sphinx 2.1.0 (autodoc bug)
+* Use zone.tenant\_id as tenant if context.project\_id is None
+* Update api-ref location
+* Cleaned up mdns handler and added better test coverage
+* Improve log message for better understanding
+* Bump to hacking 1.1.0
+* Fix postgres job and make it non-voting for now
+* Fixed akamai default wsdl path
+* Add some additional logging for failing task test
+* Remove unused code in utils and improved utils testing
+* Change configuration to be consistent with underlines
+* Rewrote bind9 backend unit tests
+* Add Python 3 Train unit tests
+* Moved test\_context to designate.tests.unit
+* Removing manage command for akamai backend
+* Update vagrant config
+* Improved CAA record test coverage
+* Improved worker test coverage
+* Only register dynamic pool options when running designate-manage
+* Fixed oslo deprecated warning when running devstack
+* Finalized centralization of configuration
+* Improving test coverage of designate backend
+* Fixed renaming topic breaking service
+* Fixed issue with documentation breaking CI
+* Updated context to use project\_id
+* Added config opts unit tests
+* Added sink unit tests
+* Simplified metrics implementation
+* Modernized agent tests
+* Modernized dnsutils tests
+* Modernized mdns tests
+* Renamed unit.test\_api to unit.api
+* Moved most configuration into designate.conf
+* Remove KS v2 support and add region support
+* Removing unused code and updated unit tests readme
+* Fix api-ref building
+* Adding basic socket tests and fixed a typo
+* Modernized backend tests
+* Modernized pool manager tests
+* Modernized scheduler tests
+* Modernized object tests
+* Lazy-load PowerDNS 4 logs + cleaned up tests
+* Modernized producer tests
+* Modernized workers tests
+* Added PowerDNS 4 unit tests
+* Fixed typo in PowerDNS tests
+* Added basic synchronized\_zone tests
+* Don't bind to tcp/udp when running unit-tests
+* Clean fix for bandit exclusions change
+* Cap to sphinx 2.0.0 on Python 2.7
+* Clean up zone locking
+* Blacklist Bandit 1.6.0 due to directory exclusion bug
+* Update Python 3 test runtimes for Train
+* Designate service\_statuses is not working
+* Remove unused debug code
+* Ensure pdns4 driver is consistent with other drivers
+* Replace git.openstack.org URLs with opendev.org URLs
+* OpenDev Migration Patch
+* Dropping the py35 testing
+* Replace RCPDispatcher with decorator
+* Update Driver statuses
+* Added missing service\_statuses metadata
+* Switch to using project\_id for network\_api
+* Modernize tox
+* Fix DBDeadLock error resulting into 500
+* Update Zuul Jobs
+* Check TXT/SPF records for RFC1035 sec. 5.1
+* Replace openstack.org git:// URLs with https://
+* Allow pdns4 backend to select tsigkey
+* Fixing stevedore warning when running devstack
+* Update master for stable/stein
+* Update json module to jsonutils
+
+8.0.0
+-----
+
+* Allow non localhost connections to pdns api
+* Modernized RPC impl and fixed service tests
+* Set worker model to be the default
+* Add devstack VENV build support
+* Setup designate with default zones quota
+* Make unit-testing more robust
+* Use oslo\_serialization instead of the json module directly
+* nit: remove downgrade methods and add release note
+* Fix the child search logic during zone deletion
+* Drop python3.5 job after switching to Bionic
+* Fix test failures for new dnspython module
+* Add designate-status command for upgrade checks
+* Imported Translations from Zanata
+* Change openstack-dev to openstack-discuss
+* Fix the record\_types for CAA and NAPTR
+* Imported Translations from Zanata
+* Imported Translations from Zanata
+* Add blueprint in README.rst
+* Imported Translations from Zanata
+* CAA DNS records
+* NAPTR DNS records
+* Imported Translations from Zanata
+* Standardize colorized logging
+* Replace deprecated "decodestring()"
+* Add openstack-python37-jobs template
+* Move to GreenThreadPoolExecutor
+* Increment versioning with pbr instruction
+* Update sphinx extension logging
+* Don't quote {posargs} in tox.ini
+* Fixing RabbitMQ gate timeouts
+* Add top-level CLI reference page in docs
+* Fix venv target for creating release notes
+* Imported Translations from Zanata
+* Imported Translations from Zanata
+* Fixing Python 3.x issues introduced with eventlet update
+* Imported Translations from Zanata
+* Use templates for cover and lower-constraints
+* Improve configuration guide
+* Check the project zone quota when accepting zone transfer
+* Update link tags in README
+* Remove install-guide-jobs
+* Add docs for project-id verification feature
+* Remove -u root as mysql is executed with root user
+* Update links in README
+* switch documentation job to new PTI
+* import zuul job settings from project-config
+* Removing removed bandit plugins to fix gate
+* Imported Translations from Zanata
+* Update reno for stable/rocky
+
+7.0.0
+-----
+
+* Imported Translations from Zanata
+* Worker should send NOTIFY also to all servers in 'also\_notifies' pool settings
+* Simplify olso.log setup
+* Make update\_status use synchronized\_zone
+* Change Bad Action from a traceback into a warning
+
+7.0.0.0b3
+---------
+
+* Enable mutable config in designate
+* Reenable py3.6 tempest jobs + add py36 tox
+* Removed deprecated managed option in notification handler
+* Set py36 gate non voting
+* Replace use of os.errno.\* with errno.\*
+* Replace StopIteration with return for PEP 0479
+* Remove testrepository
+* Replace testr to stestr
+* Added CONTRIBUTING.rst file to the project
+* Don't run tempest jobs when patching releasenote
+* Verify project-id when setting quota
+* Allow newer versions of Flask
+* Use listener pools in designate-sink
+* Init config before service start
+* Fix systemctl command in Ubuntu installation guide
+* Imported Translations from Zanata
+* Document --record instead of --records
+* [Docs] Fix the incorrect designate service name
+* Switch to oslo\_messaging.ConfFixture.transport\_url
+
+7.0.0.0b2
+---------
+
+* fix tox python3 overrides
+* fix a typo in code
+* Switch to using stestr
+* Ensure the old files before build
+* Allow to check pep8 along with D000
+* Add unique constraint to service\_statuses
+* Fix contents render for notification.rst
+* Replace Chinese punctuation with English punctuation
+* Start replacing designate legacy jobs
+* Make Neutron integration job voting
+* Change copyright information for field.py
+* Add release notes link to README
+* fix a typo: s/extention/extension
+
+7.0.0.0b1
+---------
+
+* uncap eventlet
+* Ensure we do not pass invalid data for A records
+* Update auth\_uri option to www\_authenticate\_uri
+* Move pep8 checks to py3 by default
+* Replace deprecated LOG.warn with LOG.warning
+* Updated from global requirements
+* Follow the new PTI for document build
+* Updated from global requirements
+* add lower-constraints job
+* Updated from global requirements
+* Fix policy name
+* Updated from global requirements
+* Remove translation of log messages
+* Updated from global requirements
+* Updated from global requirements
+* Do not filter pools by attributes when non are provided
+* Imported Translations from Zanata
+* Updated from global requirements
+* Updated from global requirements
+* Removing downgrade commands
+* Resolve get\_dns\_view error after selecting multi-tenant view
+* Add os-testr in test-requirements.txt
+* Updated from global requirements
+* Updated from global requirements
+* Imported Translations from Zanata
+* Migrate object to OVO (7)
+* Migrate object to OVO (6)
+* Migrate object to OVO (5)
+* Migrate object to OVO (4)
+* Migrate object to OVO (3)
+* Migrate object to OVO (2)
+* Migrate object to OVO
+* Remove empty files
+* Remove install-guide tox env
+* Keep NS records for subdomains during Zone import
+* Skip grenade job on irrelevant changes
+* Fix unicode not define in doc with py3
+* Updated from global requirements
+* Remove Hacking check for log translation
+* Updated from global requirements
+* Imported Translations from Zanata
+* Add sample\_default for pybasedir in \_\_init\_\_.py
+* Update reno for stable/queens
+
+6.0.0
+-----
+
+* Fix typo
+* Imported Translations from Zanata
+* os-loganayze fix
+* Correct link address in docs
+* Zuul: Remove project name
+* Updated from global requirements
+
+6.0.0.0b3
+---------
+
+* Updated from global requirements
+* Remove use of unsupported TEMPEST\_SERVICES variable
+* Use secure random to generate transfer key
+* Make requirements voting again, update .zuul.yaml
+* Updated from global requirements
+* Updated from global requirements
+* Remove the deprecated "giturl" option
+* Remove v1 API
+* Run neutron-tempest-plugin-designate-scenario job
+* PyMySQL 0.8.0 compat fix
+* Imported Translations from Zanata
+* Update deletion date for (zone|pool)-manager
+* Updated from global requirements
+* Updated from global requirements
+* Remove debug line from grenade plugin
+* Remove sample config from setup.cfg
+
+6.0.0.0b2
+---------
+
+* Updated from global requirements
+* Make designate.conf reproducible
+* Remove unneeded requirements file
+* Remove partial sample config
+* Update CI Jobs
+* Docs Refactor
+* Add zone 'attributes' to api-ref
+* Update installation docs
+* Enable worker and producer by default in devstack local.conf
+* Update .gitignore
+* Fix running gate jobs
+* Enable worker and producer by default in devstack
+* Update to correct status tables
+* Migrate to Zuul v3
+* Fix servicing IPv6 based TCP connections
+* Add validation to improve pep8 check for designate project
+* Revise the Installation Guide structure
+* Remove setting of version/release from releasenotes
+* Updated from global requirements
+* Update devstack.rst
+* Add kolla installation guide
+* Update PTR Record example
+* Updated from global requirements
+* Imported Translations from Zanata
+* Update the description of pool-2 in multiple-pools.yaml
+* Show the correct ptr record instead of the first one
+* Improve powerdns pools in yaml file
+* Add pools.yaml.sample-infoblox file
+* correct LOG.warning args in object\_manipulator.py
+* Use oslo.context from\_dict unmodified
+* Imported Translations from Zanata
+* Updated from global requirements
+* Imported Translations from Zanata
+* Add Docs for the policy in code work
+* Imported Translations from Zanata
+
+6.0.0.0b1
+---------
+
+* Remove explicit lockdown of flake8
+* Implement policy in code (4)
+* Implement policy in code (3)
+* Implement policy in code (2)
+* Implement policy in code (1)
+* Imported Translations from Zanata
+* Remove SCREEN\_LOGDIR from devstack
+* Don't attempt to escalate designate-manage privileges
+* Copy all dashboard panel files in devstack install
+* Update gitignore list
+* Check for multi level tlds
+* Use generic user for both zuul v2 and v3
+* Ignore .stestr/
+* Updated from global requirements
+* Remove user\_identity dummy param from context
+* Call base from\_dict in DesignateContext
+* Cleanup test-requirements
+* Dev docs cleanup
+* Update vagrant boxes
+* Include all rootwrap filters when building wheels
+* Update tests to fix gate
+* Updated from global requirements
+* Move default DNS driver to bind9
+* Updated from global requirements
+* Updated from global requirements
+* Delay rpc initialization until config is available
+* Skip test failing after oslo.messaging update
+* Fix broken /developer/ links
+* infoblox backend multi\_tenant always return true, because the value of multi\_tenant is a unicode 0
+* Replace DbMigrationError with DBMigrationError
+* Update docs formatting
+* Updated from global requirements
+* Stop creating admin and internal endpoints in devstack plugin
+* Fix tls startup in devstack plugin
+* Fix to use "." to source script files
+* writing convention: do not use “-y” for package install
+* Updated from global requirements
+* Improving the designate topology
+* Remove unused cfg import and fix uuid format in test-case
+* Imported Translations from Zanata
+* Update reno for stable/pike
+
+5.0.0
+-----
+
+* Improve and update docs
+* Improving auto-genconfig for producer cfg
+* Fix a integrations doc link
+* Change correctly producer-task conf
+* Updated from global requirements
+* use oslo\_utils.uuidutils module
+* doc: Populate the 'install' section
+* doc: Populate the 'configuration' section
+* Fix AXFR queries under py3.5
+
+5.0.0.0b3
+---------
+
+* Updated from global requirements
+* Updated from global requirements
+* Remove deprecated cfg in notification and add format-v6 test
+* Updated from global requirements
+* Update the documentation link
+* Update URLs in documents according to document migration
+* Auto-generate designate.conf.sample via genconfig testenv
+* use the same command for 'docs' env build as CI uses for real doc builds
+* complete the migration from oslosphinx to openstackdocstheme
+* rearrange existing documentation according to the new standard layout
+* Fix task tests under py3
+* Fix pool tests in py3
+* Make central service tests py3 compatible
+* Eliminate annoying oslo.messaging timed out message
+* Fix missing database privileges and config references
+* Updated from global requirements
+* Stop using deprecated 'message' attribute in Exception
+* Improving cover testenv
+* Optimize the link address
+* Improving check warning build\_sphinx
+* Fix missing format of impl\_infoblox config file
+* Updated from global requirements
+* Remove unnecessary setUp function in testcase
+* Remove .testrepository/times.dbm
+* Return PoolList as a right list object
+* Fix UUID and String value in test\_pool
+* Improve testcase
+* Fix issue with value in nsd4 and powerdns test-case
+* Fix wrong Tld name
+* Fix issues with value pool-manger and bind9 tests
+* Fix issue with 'priority' value in pool\_ns\_record
+* Updated from global requirements
+* Add 'DELETED', 'NO\_ZONE' and 'SUCCESS' status for objects
+* Fix doc generation for Python3
+* Ensure TTL is not 0 for zone imports
+* Make the Zone object py3 compatible
+* Fix remaining API tests under python3
+* Fix testcase with ttl value
+* Add '.' into zone format in \_build\_zones method
+* Fix mistaken object
+* Updated from global requirements
+* Unskip and fix handler tests in py3
+* Updated from global requirements
+* Fix agent unit tests on py3
+* Fix test notification driver configuration
+* nova/neutron format integration is failed
+* Remove usage of parameter enforce\_type
+* Trivial fix typos while reading doc
+* Updated from global requirements
+* Blacklist python 3 UT because of eventlet bug
+* Remove unused variable
+* Remove old oslo.messaging transport aliases
+* Unskip py3 tests that depend on eventlet 0.21.0
+* Fix wrong usage of producer interval type in UT
+* Trivial fix pep8 and typos
+* Updated from global requirements
+* Unskip py3 tests that no longer fail
+* Enable posargs for the py35 tests
+* Refactor NSD4 UT for using upstream eventlet
+* [docs] Rearranges index.rst to build nicer with the theme
+* Move RPC topics which hard-coded in Designate project
+* Fix some reST field lists in docstrings
+* Fix zone creation example in install guide
+* Fix pools.yaml examples in install guide
+* Add instructions for SUSE to install guide
+* Updated from global requirements
+* Add SOA to RECORD\_TYPES in sqlalchemy.tables and remove eventlet constraint
+
+5.0.0.0b1
+---------
+
+* Make Pools documentation better
+* Switch to the OpenStack Docs Theme
+* [install-guide] Add install-rdo
+* Remove usage of option 'verbose'
+* Use https instead of http for git.openstack.org in designate
+* [docs] Add missing upgrade guides
+* Indicating the location tests directory in oslo\_debug\_helper
+* Updated from global requirements
+* Move docs to tempest plugin repo
+* Actually write out tempest config file
+* Remove old functional tests
+* New Docs toctree
+* Bump hacking to new required version
+* Change 'tocreate' to 'to create'
+* Updated from global requirements
+* [doc] Update Ubuntu dev environment doc
+* Updated from global requirements
+* Update Architecture Doc
+* Updated from global requirements
+* [docs] Merge Developer Guidelines into Getting Involved page
+* Add basic information on sink + neutron
+* Point Users at the main install guide site
+* Remove old docs content
+* Add note for running designate-tempest-plugins
+* load default pool from storage
+* fix \`tox -e docs\` errors
+* Remove a py34 environment from tox
+* Turn off V1 API by default
+* pool not pools
+* Updated from global requirements
+* Install Guide Plugin
+* Added in doubt default pool filter to scheduler
+* Fix broken grenade gate
+* Updated from global requirements
+* Fix warnings in api-ref
+* Update reno for stable/ocata
+
+4.0.0
+-----
+
+* Add warning message to akamai driver
+* Do not send DNS queries against hostnames
+* Validate NS records on a pool during an update
+* Allow for zones / pools with no attributes
+* Use exit code 1 for failed designate-manage pool commands
+* Switch to decorators.idempotent\_id
+* Fix noop metrics timed decorator
+
+4.0.0.0b3
+---------
+
+* Updated from global requirements
+* Make notifications pluggable
+* Use the oslo\_utils address parser
+* Make exception catching more python3-ish
+* Updated from global requirements
+* Use designate.utils.generate\_uuid instead of str(uuid.uuid4)
+* change from domain to zone at configfile
+* DOC Remove a couple of repeated words
+* Fix a typo in designate/worker/tasks/zone.py
+* Updated from global requirements
+* [api-ref] fix create zone export endpoint
+* Fix typo in upgrade doc
+* Use tenacity instead of retrying
+* The usage of LOG mismatch in the code
+* [backend:akamai] fix retrieval of tsig\_key\_name
+
+4.0.0.0b2
+---------
+
+* Remove lowercase constarint for pgsql
+* Use modules for import not objects
+* Updated from global requirements
+* Add pGSQL support for pdns4 driver in devstack
+* Fix grenade to use the driver specified in the gate
+* Update Devstack plugin
+* Set import exceptions in tox.ini configuration
+* Show team and repo badges on README
+* Add v6 support in \_get\_ip\_data
+* Fix a typo in parameters.yaml
+* Fix DB migration with postgresql
+* Updated from global requirements
+* Updated from global requirements
+* Updated from global requirements
+* Fix noop client getters
+* [api-ref] add optional zone create parameter 'masters'
+* Remove tests ported to tempest plugin
+* Fix typo
+* Switch stats client import to use oslo\_utils
+* cors: update default configuration in config
+* Updated from global requirements
+* Follow up - removing old dirs + config
+* Remove the method \_dispatch in rpc
+* Don't include openstack/common in flake8 exclude list
+* Add noop metrics client
+* Remove Oslo Incubator Code
+* Updated from global requirements
+* fix link to docs.openstack.org in release notes for mitaka
+* [Trivial] Fix some typos in designate
+* Fix unit tests for oslo.config 3.18.0
+* Fix for allowing user to create zone other than ending with TLD
+* Update .coveragerc after the removal of respective directory
+* Fix Mitaka Upgrade Doc
+* Changed the home-page link
+* Use ConfigParser instead of SafeConfigParser
+* Updated from global requirements
+* Fix a typo
+* Updated from global requirements
+* Enable release notes translation
+* Updated from global requirements
+* Remove vim header from source files
+* Fix typo a-an, than-then, wrong character case
+* Fix typos in models.py & bind9.filters
+* Updated from global requirements
+* Infoblox: Reverse lookup zone creation fails
+* Fix for the exception on creating secondary zone
+* Add API description for deleting zone export record to api-ref
+* TrivialFix: Remove default=None when set value in Config
+* Using sys.exit(main()) instead of main()
+* Trivial: Remove vim header from source files
+* Remove Routes from requirements
+* api-ref v2 recordset: document X-Designate-Edit-Managed-Records header
+* Updated from global requirements
+* Fix typos in zone.py & pools.rst & scheduler.rst
+* Update reno for stable/newton
+
+3.0.0.0rc1
+----------
+
+* Some typos need to be fixed
+* Updating the sample handler to be compatible with mitaka/newton
+* Add PowerDNS 4 driver
+* Updated from global requirements
+* RC1 Relnotes
+* delete python bytecode including pyo before every test run
+* Resolve description parameter in v2:set floating ip
+* Add Monasca-statsd metric generation
+* [api-ref] Remove temporary block in conf.py
+* Fix Grenade Gate
+* Infoblox backend:Fixed sslverify value from option
+* Change PATCH method to PUT for recordset update in api-ref
+* Config logABug feature for Designate api-ref
+* Add name parameter to recordset create request description
+* Replace POST with PATCH in api-ref for set floatingIP's ptr record
+* Remove recordset tests migrated to designate\_tempest\_plugin
+* TrivialFix: Remove cfg import unused
+* Clean imports in code
+* TrivialFix: Remove logging import unused
+
+3.0.0.0b3
+---------
+
+* Fix ZTA API to prevent HTTP 500 upon empty body
+* Add api-ref dropdown
+* Worker Model
+* Updated from global requirements
+* Remove white space between print and ()
+* Minor cleanup
+* Add support for Microsoft DNS Server backend
+* Use upper constraints for all jobs in tox.ini
+* Updated from global requirements
+* Get ready for os-api-ref sphinx theme change
+* Fix recordset changes so that they preserve object changes fields
+* Updated from global requirements
+* Replace assertEqual(None, \*) with assertIsNone in the tests
+* Cleaned up notification\_handler/base.py
+* Fix typo 'leve'->'level'
+* Remove unnecessary \_\_init\_\_ from functionaltests
+* Use tempest.lib instead of tempest-lib
+* Improve performance of recordsets API
+* Replace  assertDictEqual() with assertEqual()
+* Language fix 'imports' to 'exports'
+* Fix SSHFP validation for ECDSA, ED25519, and SHA256
+* Updated from global requirements
+* Fix api-ref methods for getting, updating and deleting recordsets
+* Revert 372057bddb27716acd42a88591552a8dee7b519b
+* Fix some typo in the files
+* Change bind -> bind9 in docs, sample configs
+* Fix recordset changes so that they preserve object changes fields
+* Add DESIGNATE\_AGENT\_BACKEND\_DRIVER to devstack sample conf
+* Fix typo in tempest.rst
+* Python 3: dict.itervalues()
+* Typo in mitaka.rst
+* Python 3: dict.iteritems()
+* Documentation fix up
+* Remove unused LOG
+* different-format-for-ipv4-and-ipv6
+* Updated from global requirements
+* update doc index, add ops FAQ and notifications
+* Grenade Plugin
+* Docs for working with multiple pools
+
+3.0.0.0b2
+---------
+
+* Don't hardcode options we pass to oslo.context
+* Correct reraising of exception
+* Consolidate How Tos and add Admin How Tos
+* Added docs for Floatingip ptr records to api ref
+* Update UUID type for py3.5 compat
+* Add Python 3.5 classifier and venv
+* Add gdnsd backend
+* Updated from global requirements
+* Updated from global requirements
+* Add v2/quotas
+* Updated from global requirements
+* Fixes log statement typo in coordination.py
+* Fix typo in designate-manage.rst
+* Fixing several typos
+* Fixing typo availible->available
+* Updated from global requirements
+* Add missing zake lib to t-r
+* zone\_name is null in zone trasfer request response
+* Updated from global requirements
+* Fix Invalid UUID error message to make it consistent with others
+* Add test cases for GET /v2/zones/tasks/transfer\_accepts/<id>
+* Add missing parameters to docs of zone\_ownership\_transfer\_accept
+* Catch duplicate db inserts in powerdns plugin
+* Add docs for SSHFP, SRV, SPF and MX recordsets to api-ref
+* Updated from global requirements
+* Fix output of datetime objects in API
+* Add API for listing zone transfer accepts
+* Fix 'Duplicate explicit target name' error in 'tox -e docs'
+* Remove unneeded renames in v2 Adapters
+* Move APIv2 Docs to api-ref site
+* Remove migrated "unauthed" functional tests
+* Remove migrated negative tests for pools, tlds, blacklists
+* Ensure HTTP 204 responses have 0 Content-Length
+* Add docs for zone ownership transfer\_accept API
+* Updated from global requirements
+* Removed erronous extra file
+* Updated from global requirements
+* Add etc/designate/\*.yaml to .gitignore
+* Only load Suds when using Akamai backend
+* Add centos7, remove Fedora Vagrant VM
+* Add Blacklist to api-ref docs
+* DOC: Minor grammar and typo fixes
+* Fix typo in Docs
+* Updated from global requirements
+
+3.0.0.0b1
+---------
+
+* Updated from global requirements
+* Add "project-id" to rrset API output
+* Make registering error handlers compliant with Flask 0.11
+* Fix parameters.yaml order
+* Support binding to IPv6 addresses in UDP sockets
+* Updated from global requirements
+* Fix tsig param names
+* Docs update to make it consistent with other docs
+* remove verbose option in devstack plugin
+* Updated from global requirements
+* DOC: Update Ubuntu developer environment doc
+* Add Wily and Xenial devstack VMs
+* Support binding to IPv6 addresses in TCP sockets
+* Cleanup rndc backend
+* Modify assert statement when comparing with None
+* DevStack: Support setting default quotas
+* Updated from global requirements
+* Enable v2/recordsets API for tempest plugin
+* Imported Translations from Zanata
+* Add djbdns backend
+* Refactor UDP query handling, add tests
+* Catch all exceptions in PM's call to get\_pool()
+* Fix typo
+* Improve response codes display in api-ref docs
+* Support TCP connection pipelining
+* Updated from global requirements
+* Roll up migrations to start from liberty
+* Removing cruft from before os-api-ref was a lib
+* Fix Optional Tag for X-OpenStack-Request-ID
+* Partitioner - Rety on failure to get members
+* Add Tsigkey to api-ref docs
+* Ensure L to M DB migrations correctly inspect current DB state
+* Fix a typo. their -> there
+* Updated from global requirements
+* Remove test cases which are moved to designate\_tempest\_plugin
+* Add Tld to api-ref docs
+* Fix gate trying to use u-c for api-ref
+* Resolve incorrect description and response codes in api-ref docs
+* Integration/stress test using a simulated network
+* DevStack: Set tempest nameservers config option correctly
+* Add a style guide
+* Add Knot DNS backend
+* Remove zone import and export client methods + tests
+* Add explanation of connection string in pdns sample\_yaml\_snippets
+* Updated from global requirements
+* Add "/" to API-Ref Docs
+* Add Pools to API-Ref Docs
+* Add Limits to API-Ref Docs
+* Update devstack dashboard+client clone+install method
+* Add Zone Transfer Request + Accept API-Ref docs
+* Add Zone Tasks, Export and Import API Docs
+* Add Recordset to api-ref docs
+* Start Designate API-Ref style documentation
+* Ensure services shutdown during unit testing
+* Skip zone import count test, reenable pool tests
+* Type checking in pool manager target sync
+* Docs Update
+* Remove tempest plugin from non-tempest gate
+* Remove more tests migrated to tempest plugin
+* Updated from global requirements
+* Update Designate Architecture document
+* Expose /v2/recordsets api endpoint
+* Fix rrset serialization, improve mdns tests
+* Move bandit job to voting
+* Trivalfix of option name in designate.conf.sample
+* Enable V2 API as default
+* Support both olso.m v4 and v5
+* Fix the memory of the VM in VirtualBox
+* Typo fix
+* Migrate service\_statuses table charset to UTF8
+* Fix the service\_status objects \_\_str\_\_() output
+* Move heartbeat emit log messages to TRACE
+* Remove msdns from the drivers list
+* Fix parameterized class decorator
+* Fix \_get\_listen\_on\_addresses to handle port 0
+* Consolidate default port numbers into utils.py
+* Support multiple API and mDNS listen address pairs
+* DevStack: Allow disabling of API versions
+* Return early from \_find\_recordsets\_with\_records
+* Skip Pools APIv2 tests
+* Added attribute filter to scheduler
+* Fix service\_status docs page
+* Remove execute privilege of designate/backend/impl\_bind9.py
+* Updated from global requirements
+* Add descriptions
+* Minor documentation fix
+* Add setup\_ubuntu\_devstack
+* replace logging with oslo.log
+* Add exception description, minor cleanup
+* Allow api\_export\_size to be updated
+* Improve exception handling, add comments
+* Remove contrib/tempest, as they have moved to the tempest plugin
+* Add Decorator to log RPCAPI Calls
+* Use upper-constraints.txt for tox tests
+* Move DNS OPCODEs/Classes into private\_codes.py
+* Fix data filtering with pagination
+* Added "experimental" status for backends
+* Updated from global requirements
+* Set default sslverify value to True
+* Ubuntu dev doc updates
+* Removed old tooling for ks CLI
+* Changed the spelling of command in sample file
+* Add missing response codes in V2 API's doc
+* Remove tests moved to tempest
+* Add Agent DevStack Backend
+* Fix all doc warnings and enforce clean docs
+* Moved doc file and releasenote from service\_status
+* Updated from global requirements
+* Update tempest docs re scenario and slow tests
+* Vagrant: Suppport local devstack / tempest clones
+* Add support for getting Service Status
+* Update bandit.yaml + fix failing test
+* Updated from global requirements
+* Remove workaround for bug #1467907
+* Add Tempest Plugin to DevStack Plugin
+* Refactor central/service and others
+* Refactor pool and pool\_manager attribute update
+* Add Designate Tempest Docs
+* Resolves metadata field output on rest call to  zone import and export
+* Give better error messages for zone imports
+* Define context.roles with base class
+* Update vagrant local.conf for rally DS plugin
+* Give proper ERROR for too large exports
+* Move successfull policy checks to trace
+* Add Memcached documentation
+* Remove pool config from sample config
+* Make cache\_result safer to use
+* Add Enhanced Logging to APIs
+* Updated from global requirements
+* Handle async Tooz calls appropriately
+* Docs update for zone import and export
+* Updated from global requirements
+* Better organize the tox.ini passenv vars
+
+2.0.0
+-----
+
+* Adding v2 namespaced event to zone manager
+* Adding v2 namespaced event to zone manager
+* Do not log pool-manager-caches SQL transactions
+* Added "view" option to bind9 rndc options
+* Partitoner references invalid exception class
+* Docs update
+* Run the cli functional tests in openstack ci
+* Add placeholders for Mitaka DB Backports
+* Update config samples to show Identity v3 params
+* devstack: compile message catalogs during stack.sh
+* devstack: compile message catalogs during stack.sh
+* Partitoner references invalid exception class
+* Adds missing metadata section to API docs
+* Added "view" option to bind9 rndc options
+* Do not log pool-manager-caches SQL transactions
+* Update reno for stable/mitaka
+* Update .gitreview for stable/mitaka
+
+2.0.0.0rc1
+----------
+
+* Log zone serial on fetch and update
+* Enable use of Pools YAML
+* Add New Pools DB Tables and Code
+* Default to not logging all SQL Quries made during a test run
+* DevStack: Explicitly install libcap2-bin and don't fail without AA
+* Documentation changes for Admin API Quotas page
+* Add release note for not allowing .json on urls
+* Avoid logging tracebacks for EAGAIN errors
+* Fix devstack/fedora/bind9 support
+* Add scheduler for pools
+* Switch get\_serial\_number logging to debug
+* Do not allow GET /resource.json
+* Fix \_find\_masters + unit tests
+* Replace deprecated LOG.warn with LOG.warning
+* Strip "\n" character from result
+* Move zone masters to a new table
+* Cleanup unused Oslo Incubator \_i18n
+* Added "expected" to OverQuota Exceptions
+* Add warning to devstack/README.rst
+* Updated from global requirements
+* Fix for TCP connections not sending full content
+* Moved CORS middleware configuration into set\_defaults
+* Updated from global requirements
+
+2.0.0.0b3
+---------
+
+* Use a single recordset validation method
+* Ensure the zone records quota is enforced
+* Use assertGreater()
+* Improve error handling for TCP connections
+* Use lazy properties in services
+* Fixed typos in docstrings
+* Add syntax highlighting to backend docs
+* Updated from global requirements
+* Move SOA refresh interval into unit tests
+* Fix AutoDoc line for non existent modules
+* Update README to RST
+* Set Ubuntu as primary Vagrantfile VM
+* Update PoolAlsoNotify object name
+* Fix bug where building validators for ListObjects fails
+* Add AttributeListObjectMixin class
+* Set InvalidRecordSetName and InvalidRecordSetLocation as expected
+* Stop using WritableLogger() which is deprecated
+* Add an on-demand single-target sync method
+* Update Bind 9 backend and other documentation
+* Cleanup after enable files refactor
+* Randomize SOA refresh interval
+* Allow to use project\_name in handler formats
+* Updated from global requirements
+* Syntax, grammar, and typo fixes
+* Fix a missing '\' in doc
+* Minor unicode test fixes
+* Add delayed NOTIFY
+* Actually poll for zone deletes
+* Improve performance and utility of Recovery
+* A request hook interface for the functional test client
+* Ensure ZoneManager emits valid objects
+* Update numbering of dashboard enable files
+* Updated from global requirements
+* Functional tests for MX, TXT, SPF, SSHFP validation
+* Use "# noqa" instead of "#flake8: noqa"
+* Simplify NeutronFloatingHandler process\_notification
+* Change the name of the test\_create\_wildcard\_NS test
+* Updated from global requirements
+* Switch "managed" fields from unicode to string
+* Minor test cleanup
+* Use unicode strings in description fields
+* Fix misspellings
+* Make supported record type configurable
+* Log stacktraces of MultipleExceptions in functionaltests
+* Added Keystone and RequestID headers to CORS middleware
+* Remove outdated pot files
+* Fix wildcard NS record
+* Updated from global requirements
+* Update functional test TLDCLient
+* Policy.json still has references to domain
+* Add docs for PATCH and DELETE call of Zone transfer request
+* Switch to  mock fixtures, minor cleanup
+* Add validation for MX, TXT, and SSHFP records
+* Do not create /dev/shm/designate
+* Fix integration doc that example config not formatted
+* Fix order of installation in Devstack
+* Fix \_assert\_exception()
+* Ensure mocks are stopped after use
+* Fixes wording of exceptions for delete
+* Fix the python34 check job
+* Rename zone > domain for errors in V1
+* Updated from global requirements
+* Replace assertEqual(None, \*) with assertIsNone in tests
+* test: make enforce\_type=True in CONF.set\_override
+* Update the link to CLI Reference
+* Add retry logic on periodic\_sync
+* Skip possible heisenbug test\_init\_no\_pool\_targets
+* Fix V1 Quotas API Extension
+* Use tmpfs on /dev/shm for database if available
+* Update unit test execution syntax Closes-Bug: #1532802
+* Document that keystone auth can use memcached
+* Added bandit to designate
+* Updated from global requirements
+
+2.0.0.0b2
+---------
+
+* Update email addresses hp.com to hpe.com
+* Add FloatingIPs reverse endpoint
+* Improve unit testing
+* Added doc for /v2/tsigkeys endpoint
+* Updated from global requirements
+* Update periodic-sync-seconds help
+* Retry Coordinator start indefinitely
+* Fix CI Tempest jobs
+* [docs] Create installing Liberty on Ubuntu
+* Add UniqueConstraint for pool\_id + hostname
+* Tox: ignore Rope dirs
+* Replace deprecated LOG.warn with LOG.warning
+* Add Pool Manager tests
+* Move to [oslo\_messaging\_rabbit]
+* Add test of BIND9 backend
+* Remove unused comments in create zone
+* Improve logging in designate.zone\_manager
+* Update Devstack docs
+* Improve logging in designate.notification\_handler
+* Improve logging in designate.agent
+* Fix tox ValueError: No closing quotation
+* Use keystoneauth instead of keystoneclient
+* Add documentation for Limits
+* Deprecated tox -downloadcache option removed
+* Describe how to install Designate client
+* Set zone in ERROR status on periodic sync fail
+* Remove iso8601 dependency
+* Object model: require "priority" field
+* Emit notification on update\_status() on a zone
+* Removes MANIFEST.in as it is not needed explicitely by PBR
+* Use git.openstack.org as Git repository
+* Switch devstack to use local.conf
+* pass environment variables of proxy to tox
+* Fix NO\_DOMAIN handling with The Big Rename
+* Remove version from setup.cfg
+
+2.0.0.0b1
+---------
+
+* Remove py26 support from designate
+* Updated from global requirements
+* Check TXT record length limit
+* Remove deprecated devstack in contrib
+* Updated from global requirements
+* Migrate existing Devstack integration into a Devstack plugin
+* Another improvement of info level log messages
+* Improving info level log messages
+* Test database schema and indexes
+* Replaces map() with six.moves.map() to provide py2/3 compatibility
+* Added HTTP\_X\_FORWARDED\_PROTO/HOST support to API
+* Updated from global requirements
+* Ensure designate-manage reads config before policy
+* Adds api\_export\_size attribute to admin  API
+* Add Reno for release notes tracking
+* Add mdns unit tests for main service handler
+* Hide zones flagged for deletion in API v1
+* Rename all references of Domain to Zone
+* Added placeholder migrations for stable/liberty
+* Improve logging in designate.network\_api
+* Add support for interface and service
+* Handle NO\_DOMAIN status
+* remove default=None for config options
+* Fix argument order in assertEqual to (expect, obs)
+* Switch to oslo.reports
+* Use oslo\_config PortOpt type for port options
+* Removes zone files when a zone is deleted
+* Use assertIn and assertNotIn
+* Use assertTrue/False instead of assertEqual(T/F)
+* Uses assertIsNone instead of assertEqual(None, \*\*\*)
+* Use oslo\_config IPOpt support
+* Updated from global requirements
+* Fixes Output for zone type filter
+* Added CORS support to Designate
+* Fix order of argument in assertEqual
+* Updated api-export-size attribute in quota update docs
+* Add functional tests for TLDs
+* Fix typos in sample config files
+* Block oslo.messaging 2.6.0 release
+* retry creates/deletes in the pool manager
+* Use assertFalse instead of assertEqual(False, \*\*\*)
+
+1.0.0
+-----
+
+* Fix handling of Pool NS changes
+* Fix order of arguments in assertEqual
+* Functional tests: optionally disable ssl cert validation
+* Functional tests: Use a configurable url pattern
+* Fix order of argument in assertEqual
+* Functional tests: optionally skip admin actions in setups
+* Added test cases for records
+* Fix handling of Pool NS changes
+* Clear out pyc files before a tox run
+* Fix order of argument in assertEqual
+* Fix order of argument in assertEqual
+* Fix order of argument in assertEqual
+* Unauthed tests for Pools (Security)
+* Unauthed tests for Blacklists (Security)
+* Unauthed tests for Zones (Security)
+* Cleanup of Translations
+* Cleanup of Translations
+* Added test cases for tsigkeys extention for V1 api
+* Functional tests: configure putting the version in the url
+* Open Mitaka development
+
+1.0.0.0rc1
+----------
+
+* Add zone type specific validators
+* Ensure recordset name checking accounts for child domains
+* Ensure blacklists complete in a reasonable time
+* Fix unhandled exceptions in adapters parsing
+* Add Kilo upgrade nodes
+* Fix #1494799 handle limit=max on v2 and Admin APIs
+* Ensure unique records when listing recordsets
+* Fix race condition in V1 Records API
+* Fix Vagrantfile for Rally repo changes
+* Correct a possible DNSService connection leak
+* Ensure API workers > 1 starts correctly
+* Updated from global requirements
+* Change ignore-errors to ignore\_errors
+* A functional test to check CNAME recordsets allow only 1 record
+* Unauthed tests for RecordSets (Security)
+* Ensure CNAME RRSets only have one record
+* Remove functional-tests.log, update .gitignore
+* Updated from global requirements
+* Imported Translations from Zanata
+* Add backend for Designate using SECONDARY zones
+* [zm] Periodic Secondary zone refresh task
+* Replace request.request\_mac with request.mac
+* Handling Forbidden Exception
+* Check the contents of a zone export in the functional tests
+* Cleanup data created in the functional tests
+* Agent - If no allow\_notify hosts are specified, allow all
+* Change ip->host in the agent
+* Updated from global requirements
+* Modify centrals 'purge\_domains' arguments
+* Implement deleted zone purging
+* Fix AXFR / Secondary zone functionality
+* Activate pep8 check that \_ is imported
+* Fix typos in comments
+
+1.0.0.0b3
+---------
+
+* Updated from global requirements
+* Updated from global requirements
+* Correct generated links when behind an SSL terminating proxy
+* Correct pool\_target options in sample config
+* The address for cloning designate is corrected
+* Asynchronous Zone Export
+* Add a service catalog override url for the functional tests
+* Refactor Zone Import Internals
+* Remove unused dependency: discover
+* Add functional tests that query for wildcard records
+* Grammar mistakes have been corrected
+* Show functional test request logging
+* Update docs for the functional tests
+* Fixes bug 1484332 git url was wrong. Modified to proper url
+* Add DomainMaster Object to designate objects
+* Add functional tests for wildcard records
+* Updated from global requirements
+* Refactor notify logic into backends
+* Replaces str to byte to provide py3 compatibility
+* Replaces  x.keys() with six.iterkeys(x)
+* Export Zones
+* Provide error messages on CRUD actions
+* Verify DNS changes when updating RRSet
+* Fixing datagen random\_pool\_data
+* Move iteration code to base task
+* Updated from global requirements
+* Fix zone transfer requests + add tempest tests
+* Cleaning up add\_filters
+* Add a iteritems = items on DictObjectMixin
+* Remove auth\* related param keys in middleware
+* Convert str to byte for py3 compatibility
+* Added 'add\_filters' to ClientMixin for GET vars
+* Updated from global requirements
+* Imported Translations from Transifex
+* Updated from global requirements
+* Fix eleven typos on designate documentation
+* Implement test timeout helper. Minor fixes
+* Install dnspython3 on py3
+* Added some unit tests to test\_domains.py
+* Added some unit tests in test\_servers.py
+* Add \_\_str\_\_() methods to DesignateObjects
+* Wildcard records
+* Fixed a test case name
+* Enable filter on get pools
+* Add support for Host header in REST queries
+* Increase unit tests coverage
+* Updated from global requirements
+* Add tests for limits api in V1 api
+* Imported Translations from Transifex
+* Replace assertTrue(a in b) with assertIn(a, b)
+
+1.0.0.0b2
+---------
+
+* Ensure RecordSet quotas are enforced
+* Ensure a single RRSet over max\_packet\_size doesn't loop forever
+* Introduce a Production Guidelines document
+* Fix the incorrect JSON format in v1 REST API doc
+* Updated from global requirements
+* Reject invalid filters
+* Add unit testing for pool
+* Imported Translations from Transifex
+* Fixes designate-manage tld's command by passing the correct params
+* Fixed timeout variable scope issues
+* Updated from global requirements
+* Fix test in test\_coordination.py for py3 compatibility
+* Fixup v2 API Validation
+* Remove unused V2 schemas
+* Fix duplicate domain error handling
+* Only print flake8 table if there is results
+* Create unit tests dir, move objects tests there
+* Replacing dict.iteritems() with dict.items()
+* Replaced print with print() to provide py 2/3 compatibility
+* Updated from global requirements
+* Modify UT in test\_limits.py
+* Add some UTs to test\_pools.py
+* Add some UTs to test\_zones.py
+* Allow multiple reader/writers to UDP DNS Sockets
+* Add some UTs to test\_tsigkeys.py
+* Add some UTs to test\_recordsets.py
+* DevStack: Support installing client at released versions
+* Added some UTs to test\_tlds.py
+* Correct exists event field names
+* Add functional tox env
+* Add some UTs to test\_records.py for record update
+* Fix the displayed error message in V2 API
+* Add Zone Manager Service options to sample config
+* Add some UTs to test\_records.py
+* Fix iteritems > items to avoid recursion loops
+* Add some missing UTs to test\_domains.py
+* Pass configration of what tasks are enabled
+* Update ubuntu-dev guide
+* Add some basic missing UTs to test\_utils.py
+* Fix broken UTs due to PY3 in test\_import\_export
+* Convert old style class to new style class
+* Refactor mDNS packet finalization
+* Add \_\_pycache\_\_ to ST2 Ignore
+* Correct sample coord URL
+* Default to memcache for PM cache
+* Ensure only one pool-manager performs periodic tasks
+* Implement support for LeaderElections
+* Standup coordination during start
+* Increase coverage of RRset tests
+* Handle unhandled exception in dnsutils.py for py3
+* Imported Translations from Transifex
+* Fix for ttl values
+* Test - add nicer formating to flake8 output
+* Functional tests for Blacklists
+* Enable filter on blacklists & tlds
+* Switch from MySQL-python to PyMySQL
+* Error message for database config
+* Correct 'DESIGNATE\_SQL\_DEBUG' export behaviour
+* Add tasks and periodic emits
+* Resolve one py3 compatibility issue
+* Add support for BETWEEN and add tests
+* Fixed broken UTs in notification\_handler module
+* Fix broken UTs for python3
+* Ensure test\_find\_zone\_imports waits for all imports
+* Ensure validations account for trailing newlines
+* Fix broken UTs in test\_mdns.test\_handler
+* Updated from global requirements
+* Fix broken UTs in test\_coordination for py34
+* Add v1 API deprecation warnings
+* Designate Dashboard now has it's own repo
+* Replace Exception.message with six.text\_type(Exception)
+* Fix broken UTs due to py3
+* Updated from global requirements
+* Add zone filter for TTL, description, & status
+* Use released versions of tempest-lib
+* DevStack: Keystone V3 Service/Endpoint Creation
+* DevStack: Keystone V3 User Creation
+* Return the correct recordsets total\_count
+* Use six.iterkeys(x) instead of x.keys()
+* Replace dict.items() with list(dict.items())
+* fix broken UTs for python3 compatibility
+* Standardize API service launcher
+* Add DevStack support for coordination URL
+* Rename coordination tests to match established naming pattern
+* Silence some DEBUG logs
+* oslo.service triggers shutdown
+* Replace dict.iterkeys() with six.iterkeys(dict)
+* Remove 'L' from long int
+* Add shard and domain\_shard to tables
+* Enable designate-zone-manager in DSVM gates
+* Replace dict.iteritems() with dict.items()
+* Update urllib/urlparse to use six.moves
+* Use six.moves.map/zip in place of map/zip
+* Allow logging hookpoint intialization
+* Add Zone Manager service shim
+* Remove leftover print statement in tests
+* Add a couple of new hacking checks
+* Add base for coordination as a mixin / tooz
+* Updated from global requirements
+* Add py3 compatibility related changes
+* Ensure quotas ext doesn't mutate dict during iteration
+* Re-arrange default log levels and add iso8601
+* Updated from global requirements
+
+1.0.0.0b1
+---------
+
+* port to oslo.service
+* Edits to dev guide, juno guide, and kilo guide
+* Updated from global requirements
+* Asynchronous Zone Import
+* Fix incorrect status code on Pool update
+* Updated from global requirements
+* Enable random hash seeds
+* Update version for Liberty
+* Updated from global requirements
+
+1.0.0a0
+-------
+
+* Added expected=True to InvalidDomainName
+* Eventlet+DNSPython breaks /etc/hosts resolution
+* Add Tempest tests for V2 Pools
+* Add utility code for negative testing
+* Updated from global requirements
+* Add tempest-lib from git for gate devstack
+* Reset check\_for\_tlds after deleting the last TLD
+* Updated from global requirements
+* Updated from global requirements
+* Sync with oslo-incubator 61f4461f91
+* Correcting missing import for dashboard messaging
+* Changes in rally-jobs/README.rst
+* Updated from global requirements
+* Enforce usage of project scoped token
+* Agent: Optional middleware to rate limit NOTIFYs
+* Mark Infoblox as Release Compatible
+* Give a nicer error upon 401 from Akamai
+* Add domain record detail screen
+* Add .eggs to .gitignore
+* Updated from global requirements
+* Add the Hook Point API
+* Fix exceptions on pep8 check due to missing tempest.conf
+* Pin python version to 2.7
+* Add filter for status on recordsets
+* Fix the v2 XFR task API
+* Add Backend grading, and associated docs page
+* Fix designate-manage pool show\_config command
+* Imported Translations from Transifex
+* Drop incubating theme from docs
+* Updating cmd/manage.py get\_arg\_string() argument parser
+* Infoblox Backend
+* Update Dashboard requirements
+* Drop use of 'oslo' namespace package
+* Disable recursive queries with bind in Devstack
+* DevStack: Attempt to cleanup stale domains
+* DevStack: Remove SOA/NS checks
+* Add some more settings to the sample conf file
+* Add NSD4 backend
+* Add tests for dynect
+* Add Akamai Management comamnds
+* Fix check+set race condition in APIv1/Sink
+* Remove unnecessary RestController usage
+* Set cfg.pool\_target.options as secret
+* Allow sink to create multiple entries per instance
+* updating tox pep8 issues
+* Add quota check for domain create
+* Moved RecordSet lookup to a custom join query
+* Add support for settings wsgi MAX\_HEADER\_LINE
+* Switch pip-missing-reqs for pip-check-reqs
+* Add suds-jurko to requirements.txt
+* Utility script to help create n+ records at a time
+* Updated from global requirements
+* Ensure Sink Handlers encode UTF8 names
+* Add docs for X-Auth-Sudo-Tenant-ID api header
+* Drop use of 'oslo' namespace package
+* Updated from global requirements
+* Improve UX of create and update record screen
+* Vagrant: NFS should only be used for libvirt
+* Fixed SO\_REUSEPORT not supported by Linux <3.9
+* Fix a wrong obj\_reset\_changes field
+* Imported Translations from Transifex
+* Updated from global requirements
+* Drop use of 'oslo' namespace package
+* Updated from global requirements
+
+2015.1.0
+--------
+
+* Remove duplicated index on table 'records' of pDNS backend
+* central.update\_status should be transactional
+* Add an index to speed up update\_status
+* Add the /v2/zones/<id>/nameservers endpoint back
+* Add the /v2/zones/<id>/nameservers endpoint back
+* Update JSON in howtos examples to match the API
+* Service ThreadPool size should be configurable
+* Handle socket.error's in mDNS
+* Move the Central rpcapi update\_status to cast
+* PM: Ensure only one periodic task runs per host
+* Ensure addition of TSIG do not trigger a TooBig exception
+* Simplify designate.api.versions
+* Allow to use network label in nova\_fixed handler format
+* Denominator Agent
+* Imported Translations from Transifex
+* Minor fixes: pep8 and redundant code
+* central.update\_status should be transactional
+* Include README.rst in dashboard sdist
+* Functional tests to check recordset ownership
+* Zone ownership tests
+* Rally is now openstack/rally
+* Handle socket.error's in mDNS
+* Remove duplicated index on table 'records' of pDNS backend
+* Imported Translations from Transifex
+* PM: Ensure only one periodic task runs per host
+* Functional tests: minus tempest, plus noauth support
+* Service ThreadPool size should be configurable
+* Ensure addition of TSIG do not trigger a TooBig exception
+* Release Import of Translations from Transifex
+* Correct designate-dashboard domain detail screen
+* Update PM pooling defaults
+* Add policy support to designatedashboard
+* update .gitreview for stable/kilo
+* Correct mDNS TCP/UDP socket flags
+* Move the Central rpcapi update\_status to cast
+* Shuffle of the order of BIND9 masters
+* Updated from global requirements
+* Update JSON in howtos examples to match the API
+* Shuffle of the order of BIND9 masters
+* Correct mDNS TCP/UDP socket flags
+* Imported Translations from Transifex
+
+2015.1.0rc1
+-----------
+
+* Fix missing '/' in self link after zone import
+* Reduce excessive stacktraces in logs
+* Move Zone Import / Export to /admin API
+* Ensure mDNS TCP/UDP threads service unhandled exceptions
+* Correct the max\_zone\_name\_length name
+* Add validation of RRSet Type
+* Change rackspace.com > example.com in docs
+* Remove unused pool view
+* Refactored BaseAddressHandler
+* Switch to API v2 as the new CURRENT
+* Add stable/kilo placeholder migrations
+* DevStack: Reduce periodic intervals in the gate
+* Open Liberty development
+* Restrict editing of managed records to policy based ACL
+* Imported Translations from Transifex
+* Added tenant impersonation to API
+* Fixup DevStack Horizon install
+* Validate SRV records have the correct name on the recordset
+* Fixed sort key to not sort by an un-indexed field by default
+* Fix Record Object conversions
+* Fix handling of filtering params
+* Add Ceilometer support to DevStack plugin
+* DevStack: Akamai/Dyn Support for Jenkins Credentials and Exercises
+* Split out Optional OpenStack services in localrc
+* Support Vagrant Libvirt
+* First Tempest tests for recordsets
+* Remove zone wrapper object in Tempest tests
+* Add global limits to V2 limits endpoint
+* Fix min\_ttl config to be an IntOpt
+* Implement default and max page size for V2 API
+* Fix output of errors on base recordset properties
+* Correct min-ttl default config value
+* Update periodic sync defaults
+* Ensure mDNS can AXFR zones over 65k
+* Fixup updates in the agent backend
+* Fix support for PostgreSQL
+* Imported Translations from Transifex
+* Akamai: mDNS must run on port 53
+* Agent Pool Manager Backend
+* Add Akamai EDNS Backend
+* DynECT: Convert to a Pool Backend
+* Add also-notifies support to Pool Manager
+* Implement Pool Targets
+* Reduce the # of SQL queries during AXFRs
+* Add code to allow triggering of AXFR from API
+* Fix 'zone' link in transfer\_accepts
+* Imported Translations from Transifex
+* Enable Record Data Validation in v2 API
+* Sync up FIP behaviour to match latest PoolManager
+* Fix ownership issue with Zone's created on set fip
+* Fixed rootwrap file installation
+* Add \_to\_string() methods on RRData Objects
+* Add Schema to RRData Objects
+* Replace API\_v2 views with Adapters
+* RFC1996 Requires NOTIFY packets have the AA flag set
+* Ensure mDNS originated queries are non-blocking
+* Unwind mDNS XFRMixin from NotifyEndpoint and Handler
+* Correct Pool Object
+* Add API\_v2 Adapter Objects
+* Support mDNS response up to 65k
+* Install etc/designate/\* files
+* forgot missing \_\_init\_\_.py file
+* Allow for duplicate domains in different pools
+* Remove usage of relative\_path in ValidationError Objects
+* Fix handling of wildcards in api / storage
+* Reduce the # of records loaded by Central.update\_status
+* improving designatedashboard packaging
+* Imported Translations from Transifex
+* Fixed misspellings in central
+* Validation Error Middleware does translation of keys to new format
+* Added FloatingIP object to DesignateObjects
+* Omit deleting zones from mass ns record updates
+* Imported Translations from Transifex
+* Archive non-pool backends
+* Combine Backend and PoolBackend
+* Refacor function for parsing host:port strings
+* Spelling & formatting doc fixes
+* Updated from global requirements
+* Revert "Disable tempest in the gate, for now"
+* Retry serial number check in one more case
+* Move Pool NS Records to their own table
+* Imported Translations from Transifex
+* Don't allow updates to zones that are being deleted
+
+2015.1.0b3
+----------
+
+* Imported Translations from Transifex
+* Remove "Including all tenants items" debug log
+* Disable tempest in the gate, for now
+* Fix the use of private symbols from oslo.messaging
+* Ensure Quotas can be updated concurrently
+* Only attempt XFR if zone.type is SECONDARY
+* Add Admin API and add extensions
+* Add DESIGNATE\_SQL\_DEBUG toggle
+* Move the DesignateAdapter to return non-wrapped objects
+* Imported Translations from Transifex
+* Added ValidationErrorMiddleware
+* Added Schemas to DesignateObjects
+* MDNS part of Secondary zones
+* Support secondary zones
+* Add iPythonNotebook files to git ignore
+* Implement TSIG Support in mDNS
+* Imported Translations from Transifex
+* Add Tempest zone tests
+* Enable Tempest Functional Tests
+* Use the oslo.policy package
+* Smarter Create/Delete in BIND9/Agent
+* Imported Translations from Transifex
+* Send the correct domain object to update\_domain
+* Update localrc docs sample
+* Fix DesignateObjects ListObjectMixin interactions
+* Introduce Guru Meditation Reports into Designate
+* Call central's update\_status correctly
+* Initial Pool API docs
+* Fixed ssl.PROTOCOL\_SSLv3 not supported by Python 2.7.9
+* Agent configuration and BIND9 improvements
+* Validate SSHFP records
+* Create DesignateAdapter and surrounding infrastructure
+* Imported Translations from Transifex
+* Updated from global requirements
+* Updated from global requirements
+* Fix exception handling
+* Imported Translations from Transifex
+* Add initial code for tempest tests
+* Updated from global requirements
+* devstack/install.sh shouldn't rely on exact paths
+* Add designate-agent to DevStack
+* Updated from global requirements
+* Rename \_retrieve\_from\_cache to \_retrieve\_statuses
+* Updated from global requirements
+* Imported Translations from Transifex
+* Updated from global requirements
+* Implement Scoped TSIG Key Support
+* Service Class Cleanup - Part 3/3
+* Service Class Cleanup - Part 2/3
+* Service Class Cleanup - Part 1/3
+* Fixed \_is\_superdomain check in central
+* Imported Translations from Transifex
+* Add Developer Guidelines docs page
+* Update default managed\_resource\_email
+* Update tests to use Object.from\_dict() method
+* Sync with oslo-incubator
+* Remove explicit thread-local update in context
+* Ensure pool\_manager cache keys are strings
+* Remove bulk actions from records page
+* Add python-memcached>=1.48 to requirements.txt
+* Add error state transition for creation of domains
+* Modifications for Resilient Pool Manager Cache
+* Ensure DNSPython modules are imported correctly
+* Add howto for creating PTR records
+* Imported Translations from Transifex
+* A small intro to the REST API
+* Implement an Object.from\_dict() method
+* Updated from global requirements
+* Deprecate designate-sink non managed mode
+* Retry transactions on database deadlocks
+* Correct PoolAttribute module name
+* Set PYTHONDONTWRITEBYTECODE=1 in tox.ini
+* Use fully qualified domain names in the mx record examples
+* Workaround eventlet 0.17's broken monkeypatching
+* Pass SSL CA Cert to client
+* Pass ssl no verify to client
+* Assume a new developer won't create a "designate" user in the dev guide
+* Add noop cache support to Pool Manager
+* Allow MiniDNS to Send Everything Over TCP
+* Replace nova with designate in pybasedir help
+* Updated from global requirements
+* Add memcache support to Pool Manager
+* Get on an abandon zone returns 405
+* Ensure count record/recordsets respect deleted domains
+* Deleting a recordset returns 202
+* Fix up links in Ubuntu Dev Environment
+* Imported Translations from Transifex
+* Docs: Top level Install Guides section
+* Docs: Automate How To Index
+* Fix Production Arch docs
+* Update Designate Architecture Docs
+* Docs: Howto Create and Manage Domains
+* Added docs env to tox
+* Updated Sample Config and Documentation Page
+* Update Getting Started Guide
+* Doc sprint: Update glossary
+* Doc sprint: Update Getting Involved
+* Update zone status when recordsets are changed
+* DevStack: Sync function rename with DevStack
+* Updated from global requirements
+* Return correct response codes for v2 recordset api
+* Fix a reference link in the doc
+* Doc: fix the designate-manage powerdns sync command
+* Fix some typos in 6 files
+* Nameservers added via /v2/pools are not validated
+* Imported Translations from Transifex
+* Return a status field from the recordsets API
+* Remove dead server code in storage and add tests
+
+2015.1.0b2
+----------
+
+* Updated from global requirements
+* Add pretty\_tox subunit wrapper
+* Add a new API for abandoning a zone from storage
+* Allow Periodic Sync to be restricted to a subset of zones
+* Add pool\_manager migrate.cfg in MANIFEST.in
+* Updated from global requirements
+* Cleanup use of oslo.messaging's ConfFixture
+* Add a debug tox environment
+* Imported Translations from Transifex
+* Extract fixtures into their own module
+* Updated from global requirements
+* Agent cleanup/refactoring
+* Imported Translations from Transifex
+* The New Agent
+* Imported Translations from Transifex
+* Refactor RecordSet Relation Loads
+* Ensure Pool Manager Cache is Cleared
+* Move some methods from mdns to dnsutils
+* Switch to oslo.log
+* Imported Translations from Transifex
+* Fix v2 api update\_recordset
+* Fix sink neutron\_floatingip handler passing payload
+* Temporary fix for bad \_dispatch() invocation
+*   Server Pool Storage Clean Up
+* Call the Correct Pool Manager Instance for the Domain
+* Clean requirements
+* Periodic sync and recover Timers Throw Descriptive Errors
+* Updated from global requirements
+* Imported Translations from Transifex
+* Move PM warning log inside the correct if block
+*  Update mDNS to accept server object
+* Pool Manager should reuse the existing threadgroup
+* Pool Manager Throws An Error When No Servers are Defined
+* Add Unit Tests for Pool Manager
+* Ensure Pool Manager Works for Multiple Backend Servers
+* Add more tests to the central service
+* Add more unit tests to mdns service
+* Add more unit tests to Base Object class
+*   Add Unit Tests for v2 API Reports
+* PowerDNS Backend Tests
+* Updated from global requirements
+* Moved to oslo\_utils namespace
+* Remove dead designate.wsgi
+* Remove dead SQLAlchemy code
+* Add .coveragerc configuration file
+* Update Vagrantfile with new Ubuntu box
+* Moved to oslo\_db namespace
+* Imported Translations from Transifex
+* Fix powerdns db table records missing column disabled
+* Update README.md doc build instructions
+* Switch to oslo\_middleware namespace
+* Imported Translations from Transifex
+* Updated from global requirements
+* Updated from global requirements
+* Allow Domain to Be Created on More Than One Server
+* Better Logging for Pool Manager
+* Separate Periodic Recovery from Periodic Sync
+* Domain Creation Includes Zone Transfer For Proper Status
+* Updated from global requirements
+*   Migrate Server table
+* Updated from global requirements
+*   Pool\_Attribute Storage Tests
+* Change SLA check for Designate
+* Adds negative unittests to test\_domains.py and test\_records.py
+* Adds negative tests to test\_records.py
+* Imported Translations from Transifex
+
+2015.1.0b1
+----------
+
+* Remove duplicate fields from ZoneTransferRequest object
+* Documentation, comments, and extraneous code fixes
+* Post-pool merge cleanup
+* Adds negative tests to test\_records.py
+* Imported Translations from Transifex
+* Added smart update of Records Objects in v2
+* Changed oslo.messaging's default log level
+* Fixed the syntax of obj\_reset\_changes in SQLA
+* Pool Manager Integration with Central
+* Remove the agent service and old-style backend tests
+* Remove the non-pools bind9 backend
+* Convert PowerDNS to a Pools Backend
+* Pools Config Changes
+* Add Werkzeug>=0.7 to requirements.txt
+* Adds "domain-servers-list" to test\_domains.py
+* Cleanup validation regex's
+* Adds negative tests to test\_servers.py
+* Updated from global requirements
+* Imported Translations from Transifex
+* Switch to oslo.context and sync from incubator
+* Standardize creation of rpcapi client instances
+* Updated from global requirements
+* rename oslo.concurrency to oslo\_concurrency
+* Updated from global requirements
+* Imported Translations from Transifex
+* Workflow documentation is now in infra-manual
+* Updated from global requirements
+* Add DynECT DevStack plugin
+* Handle multi-packet TCP queries
+* Allow DevStack to retry DNS queries to handle async CRUD
+* Handle priority the same way as when create\_record
+* Correct RRSet delete notification
+* Pool Manager
+* Add docs for MX, SSHFP, SPF and SRV record set types
+* Add metadata, totalcount fields to zones/recordsets collections
+* Add bashate tox env for DevStack plugin
+* Update DevStack PORT vars for naming consistency
+* Update gate\_hook to support multiple drivers
+* Added designate-dashboard code to contrib/designate-dashboard
+* Rename rally-scenarios/ to rally-jobs/
+* Imported Translations from Transifex
+* Updated from global requirements
+* Added functionality to allow for zone ownership transfers
+* Updated from global requirements
+* Add Rally to Vagrant VM
+* Move Central notifications to a decorator
+* Add a reverse name columns to domains/recordsets
+* Updated from global requirements
+* Fix rally job readme file
+* Add synchronized\_domain decorator
+* Add some helpful SQL indices
+* Return the correct RRSet object in Central.create\_recordset
+* Updated from global requirements
+* Detect CPU on OSX as well
+* Fix rally gates
+*   Can't Access Default Pool through API
+* Add tox check for missing pip requirements
+* Add rally job related files
+* Updated from global requirements
+* Support Nested/Recursive Object Validations
+* Add basic validation functionality to DesignateObjects
+* Updated from global requirements
+* Move import code to dnsutils
+* Add a new field type 'relation' to objects
+* Imported Translations from Transifex
+*   Missing Unique Constraint on Pool Attributes table
+* Add ability to configure extensions via local.conf
+* Move from incubator to o.concurrency
+* Fixed API v1 issue with horizon
+* Add Symantec's nova and neutron plugins to docs
+*  Add pool\_id column to Domains Table
+* Imported Translations from Transifex
+* Pool Manager - Central/Storage Changes
+* Pool Manager - BIND9 Pool Backend Driver Fixes
+* Updated from global requirements
+* Pool Manager - Pool Manager Proxy Backend and Devstack
+* Imported Translations from Transifex
+* Imported Translations from Transifex
+* Support for server pools in minidns
+* Initial documentation for v2 API record sets
+* Move rec.priority into rec.data
+* Imported Translations from Transifex
+* API for pools
+*  Server Pools Storage
+* Updated from global requirements
+* Pool Manager Service Changes
+* Ensure version column is correctly incremented
+* Updated from global requirements
+* Updated from global requirements
+* Implement a DesignateObject Registry
+* Correct int datatypes during zone import
+* Enforce all Object attributes are private or well defined
+* Add a UUID Schema format checker
+* Convert Object FIELDS from list to dict
+* Reduce SQLAlchemy loglevel during tests
+* Updated from global requirements
+* Imported Translations from Transifex
+* Imported Translations from Transifex
+* Updated from global requirements
+* Add a new PowerDNS backend based on MiniDNS
+* Ensure mDNS sends NOTIFYs on all zone changes
+* PowerDNS schema should cascade domain deletes
+* Add Jinja2 to requirements.txt
+* Switch to oslo.middleware and remove deprecated incubator
+* Sync oslo-incubator and remove json|str utils
+* Imported Translations from Transifex
+* Multi backend attepts to read a deleted domain
+* Bind a random port for MDNS tests
+* Open Kilo development
+
+2014.2.rc1
+----------
+
+* Use devstack's new way of doing things
+* Updated from global requirements
+* Fixes missing Module Index in Sphinx-build
+* Make use of SQLA Core in PowerDNS
+* Prevent update/delete of managed records in v1 API
+* Fixes minor errors and warning in Sphinx build
+* Fixes docstring typos
+* Updated from global requirements
+* Notif handlers:remove double check of event type
+* Imported Translations from Transifex
+*  Missing Tests for Blacklist storage layer methods
+* Fix example response for reports/tenant
+* Update oslosphinx requirement
+* Fix issues with timeout and if a domain exists
+* Add v1 missing api docs
+* Backends need to implement c/u/d\_recordset
+* Updated from global requirements
+*  Missing tests for TLD storage layer methods
+* Updating README
+* Removing \*.shapes files from Desginate diagrams
+* Add png for \`Designate-PowerDNS-Detail\`
+* Adding Dia file for \`Designate-PowerDNS-Detail\`
+* Adding Dia file for \`Designate-MultiZone\`
+* Adding Dia file for \`Designate-Simple\`
+* Bind9 zone file should end with a new line
+* Correct Vagrant+DevStack paths
+* Use non-deprecated notification\_driver
+* Split Vagrant out of contrib/devstack
+* Fixed the logging of powerdns metadata addition / removals
+* Updated from global requirements
+* Fix warnings made by keystone\_authtoken
+* Devstack Integration : Coding style fix
+* Getting deleted recordsets returns a 404
+* Devstack setup : use get\_or\_create\_\* helpers
+* Updated from global requirements
+*  Downgrade in 039 does not delete NS recordsets
+* Add index on powerdns.records.designate\_record\_id
+* Updated from global requirements
+* Support filtering on Zone/RecordSet status
+* \_find\_recordsets returns active recordsets only
+* Ensure designate-api has policy initialized
+* Ensure designate-sink has policy initialized
+* Rollback master backend on all exceptions in multi backend
+* Delete SOA records correctly on a downgrade
+* Call \_handle\_query\_error correctly
+* Updated from global requirements
+* Update README.md doc links
+
+2014.2.b3
+---------
+
+* warn against sorting requirements
+*  Creating a Recordset doesn't increment the serial number
+* Support the same api versions format as keystone
+* Imported Translations from Transifex
+* Fixed policy loading in agent service
+* Imported Translations from Transifex
+* Implement mDNS Middleware
+* Squash Icehouse DB Migrations
+* Move DNS packet serialization into mDNS service
+* Update default notification-topics for nova/neutron
+* Received notifications context is not a DesignateContext
+* Add support for AXFR requests
+* Expose SOA and NS records
+* Fix get\_record\_id to return only the requested id
+* Fix DevStack xtrace output
+* Updated from global requirements
+* Updated from global requirements
+* Updated from global requirements
+* Imported Translations from Transifex
+* Validate that no parent zones are created in another tenant
+* Issue one SQL statement per execute() call
+* Added policy checking for all all\_tenent=True contexts
+* Add two more hacking checks
+* Updated from global requirements
+* Imported Translations from Transifex
+* V2 Report Uses 'Domains'
+* Ensure Object change lists are sorted during to\_primitive
+* Reimplement Filtering by Record Data
+* API v1 for creating domains ignore some attributes now
+* Fixes a typo in the binary name for test's service fixture
+* Designate API tests for Tempest Framework
+* Add proxy support to dynect client
+* Add instructions on installing Designate with MySQL backend
+* Imported Translations from Transifex
+* Migrate to SQLAlchemy Core
+* Update testr config for better logging
+* Remove obsolete methods from Storage
+* Empty RecordSets can be re-provisioned
+* Install only the necessary files during a DevStack gate run
+* devstack exercise for deletion, dns checking
+* Set python hash seed to 0 in tox.ini
+* Add quotas documentation
+* Imported Translations from Transifex
+* Switchover to oslo.i18n package
+* Remove the Priority Field in V2
+* Moved the thread storage to a per instance level, vs global
+* Update from oslo-incubator
+* Use auth\_token from keystonemiddleware
+* Move oslotest into test-requirements.txt
+* Imported Translations from Transifex
+* Updated from global requirements
+
+2014.2.b2
+---------
+
+* Revert o.m and o.c 1.4.0 alpha updates
+* Add a minimal gate\_hook.sh script
+* Moved v2 API errors to separate controller
+* Enable X-Auth-Project flag in HTTP headers
+* Cleaning up index.rst file
+* Imported Translations from Transifex
+* Handle tcp requests correctly in mdns
+* Modify Recordset API
+* Clear out junk from Vagrant+DevStack configs
+* Correct JSON Syntax is v2 Collections Docs
+* Ensure o.c.local is populated with the current Context
+* DevStack: Enable V2 API
+* DevStack: Correct the key's passed to setup\_colorized\_logging
+* PowerDNS: Ensure each greenthread uses it's own Session instance
+* Ensure eventlet monkey patching happens as early as possible
+* Attach records to RecordSet objects
+* Ensure each greenthread uses it's own Session instance
+* Add docs for links, pagination, filtering
+* Enable hacking check H104
+* Add validate\_log\_translations flake8 check
+* Imported Translations from Transifex
+* Avoid logging "Expected" exceptions returned over RPC
+* Fixed issue with elevated contexts modifying the original context
+* Imported Translations from Transifex
+* Port Report Extensions from v1 to v2
+* Added proper handling for 405 errors
+* Fixed D701 Hacking check
+* Implement a ListObjectMixin class
+* Implement equality methods on DesignateObject
+* Updated from global requirements
+* Answer dns record queries
+* Iterator methods should be on DictObjectMixin
+* Added oslosphinx theme & enabled the incubating theme
+* Enabled hacking check H401
+* Update's should use objects
+* Provide a standard method for populating an object from a model
+* Expand Zones Documentation
+* Updated from global requirements
+* Don't create new objects when doing a create\_\*
+* Track the original/persisted values in Objects
+* Object fields should not be marked changed if the value has not changed
+* Ensure RPC serializes all types to primitives
+* Setup for translation
+* Implement DesignateObject.\_\_deepcopy\_\_
+* Change API filter wildcard from '%' to '\*'
+* Updated from global requirements
+* Ensure contrib/devstack/install.sh works from any path
+* Ensure we always accept trailing /'s in URLs
+* Updated from global requirements
+* Change logging level AUDIT to INFO
+* Ensure DesignateObject.from\_sqla does not trigger change tracking
+* Update stackforge references to openstack
+* Support recursive object serialization
+* Revert "Added olso sphinx, and enabled it for building docs"
+* Update .gitreview for repository move
+* Specify minimum and maximum correctly in schemas
+* Add Extensions to the v2 API
+* Added olso sphinx, and enabled it for building docs
+* Don't monkeypatch pecan.core.Request in newer versions of pecan
+* mdns: Add support for NOTIFY's
+* Implement change tracking in DesignateObjects
+* Ensure that 404's are returned as JSON
+* Change log string format to '%' for consistency
+* Objects should have a concrete list of their fields
+* Added all fields to limits endpoint, and corrected casing
+* Fixes default content type on /v2/zones endpoint
+* Unify Storage vs Rest of World fixture creation
+* Switch to oslo.db and fix cmd.manage
+* Added \*.sqlite3 to gitignore
+* Remove the StorageAPI class
+* Indent lines for readability
+* Switch to oslotest library
+* Finalize tox.ini codes
+* Fix style errors H305 and H307
+* Fix style error E265
+* Fix style error E251
+* Fix style error E111
+* Fix style error H236
+* Update hacking package, fix I18n style issues
+* Sync with global-requirements
+* Sync in o.middleware and replace our own
+* DevStack: PowerDNS and Bind9 should listen on SERVICE\_HOST
+* DevStack: Fix Bind9 Apparmor profile
+* Change log statements to meet I18n guidelines
+* DevStack: Additional exercises for records and domain-servers-list
+* DevStack/Vagrant: Specify the minimum supported Vagrant version
+* DevStack Gate: Enable Designate exercises
+* DevStack: Sync up our logging options
+* DevStack: Sync up our service startup commands
+* DevStack/Vagrant: Set # of CPU's to # of physical cores
+* DevStack/Vagrant: Don't configure LOGFILE by default
+* DevStack: Support configuring bind host/port
+* DevStack: Migrate from keystone CLI to OpenStack CLI
+* DevStack: Support PowerDNS on Fedora
+* DevStack: Support devstack with bind9 backend on Fedora
+* DevStack: Split backends out into plugins
+* DevStack: Use a timeout rather than hard sleep
+* DevStack: Support running with bind9 as non-root user
+* DevStack: Default to PowerDNS rather than the fake backend
+* DevStack: Ensure PowerDNS is configured correctly
+* Add DevStack Vagrantfile
+* Sync test-requirements with global-requirements
+* Partial sync with global-requirements
+* Add pre/post dsvm test hooks
+* Added detection of powerdns package name to devstack script
+* Wait a little after starting Designate
+* Revert "add sink support to designate devstack"
+* Bug #1261894: Deleting Record With BIND 9 Driver Fails
+* Ensure we configure all keystone middleware options
+* Ensure our DevStack plugin cleans up services it starts
+* Switch stop\_designate to use screen\_stop rather than \`kill\`
+* Ensure designte-sink does not exit when no handlers are enabled
+* Implement mDNS Service
+* API now passes objects to central
+* Ability to pass along multiple endpoints
+* Fix FreeIPA tests mock's
+* Adding custom flake8 check for mutable default arguments
+* DynECT backend exceptions should be added to allowed exmods
+* Create missing domains during Bind9Backend start
+* Update DevStack docs for the contrib/devstack plugin
+* Correct DESIGNATE\_TEST\_NSREC default value
+* Correct typo in DynECT backend
+* set default auth\_strategy to keystone
+* Allow Roles to be Passed When Using Noauth Middleware
+* add support for FreeIPA backend - phase 6 - devstack
+* add support for FreeIPA backend - phase 5 - requirements
+* add support for FreeIPA backend - phase 4 - migration
+* add support for FreeIPA backend - phase 3 - live tests
+* add support for FreeIPA backend - phase 2 - tests
+* add support for FreeIPA backend - phase 1
+* Ensure objects are passed over RPC
+* add sink support to designate devstack
+* Update oslo.policy
+* only call sink handlers for supported event types
+* Print versions
+* Raise correct exception on blocked operation
+* Ignore 404 on deletion
+* Remove redundant setup.cfg entry points
+* Correct DynECT backend config option types
+* Fixed the self link returned for floating IPs
+* sink crashes due to a missing \_get\_handler\_event\_types
+* Update Record object with structured RRdata
+* Post oslo.messaging fixes
+* DynECT support
+* Remove leftover bin/\* files
+* Set a Configurable Minimum TTL
+* Allow targeting of specific agent
+* Update Storage layer to return objects
+* Update install\_venv from Oslo
+* Sync with openstack/oslo-incubator
+* Sync with openstack/requirements
+* Sync up openstack-common.conf
+* Switch to oslo.messaging
+* v1 api does not allow priority of 0
+* WIP - Implement Capture the Notification Context in Designate Sink
+* Sync requirements with openstack/requirements
+* Open Juno development
+
+2014.1
+------
+
+* Read the Docs needs a single requirements file
+* Remove designate-manage dependancy on cliff
+* Fix sync functionality in V1 / central
+* Provide a production like guide for Ubuntu
+* Blacklists API Documentation
+* Document the PowerDNS backend
+
+2014.1.b3
+---------
+
+* Ensure that request body in v2 contains valid fields
+* Remove JSONSchema 1.3 compatibility code
+* Support more record types
+* create\_server fails if server is not unique
+* Sync with global-requirements repo
+* V2 API zone import/export documentation
+* Return 404 for empty parameters in URLs
+* Ensure that URL is valid while validating UUID
+* Return 400 for invalid Json for api v2
+* Introduce nameservers endpoint for zones
+* Standardize doc requirements
+* Ensure Storage Implementions match the Interface
+* Ensure that wanted API calls returns exceptions
+* Fill in missing Records tests for V2 api
+* UUID changes to api / utils
+* Remove use of uuidutils.generate\_uuid
+* Fixes filtering in delete and update in PowerDNS
+* Register as a endpoint without version
+* Handle invalid pagination parameters
+* Add the handler plugin example to the contrib folder
+* Add Bind9 Support to the DevStack Plugin
+* Correct misspelled words
+
+2014.1.b2
+---------
+
+* DevStack: Set the correct state\_path
+* Disabled paging by default
+* Don't install designate packages twice with Devstack
+* Add support for paging in V2 api for collections
+* Add RMQ+Other options to sample config
+* Switch to oslo.rootwrap
+* Sync with oslo-incubator 9a7f2f85
+* Sync with global-requirements
+* Blacklists mysql error
+* Add paging to Central rpcapi and service
+* Adds support for paging in the storage layer
+* Shouldn't pass items to get\_collection\_href here
+* Ensure default DB connection strings use unique defaults
+* Fix arguments in get\_collection\_href
+* Default state-path to /var/lib/designate
+* Adds a setting for the location of the nzf files
+* Stop abusing state\_path in find\_config
+* Add a new ExtensionPlugin class
+* Add Unit Tests for Blacklists V2
+* Update notification\_driver documentation
+* Import TLDs to Designate
+* Prevent Schema regex's from capturing input
+* General Plugin Cleanups
+* Create API calls to Manage Blacklisted Domains
+* Fix TLD Delete From Storage
+* Sync with oslo-incubator rev fa785cea
+* Sync with openstack/requirements rev 661e6bad
+* Various small fixes to documentation
+* Keep the DevStack plugin in-tree
+* Add TLD Api documentation
+* Make Database Interactions More Transactional
+* Remote Designate Agent Calls Fail
+* Remove dnsmasq backend
+* Replace os.exists with os.path.exists
+* Validate name during v2 zone create
+* Sink - Delete record on floatingip.delete event
+* Check if RS belongs in childzone
+* Add APIs for managing TLDs
+* provide designate getting started instructions for Fedora 19
+* Update setup.cfg for the Neutron -> Quantum handler rename
+* Remove dependencies on pep8, pyflakes and flake8
+* Sync with global requirements
+* Ensure APIv2 list respose formats are correct
+* FloatingIP PTR record functionality
+* Moved Limits API endpoint to a RESTController
+* Return a HTTP 405 for unsupported HTTP methods
+* six is now a requirement of many of the oslo-incubator modules
+* Made Pecan HTML debugging an option for v2 API
+* PowerDNS backend tests
+* Ensure Flask uses our JSON Encoder
+* Add support for specifying tenant/user/token in the NoAuthMiddleware
+* Removing Docs about the old Sudo mechanismn
+* Designate requires Babel during runtime now
+* Cleanup API v2 Link Generation and Views
+* Ensure migrations run on PostgreSQL
+* Switch out designate.notifier for oslo's version
+* Reinstate RecordSet placement validation
+* Sync with oslo-incubator
+* The default port is not 0.0.0.0, it is 9001
+* Ensure JSON Schema format validators operate only on strings
+* Database fixture
+* Ensure SQLite has the correct unique\_record index
+* Docs spelling/capitalization fixes
+* Specify column names during the PowerDNS backends InsertFromSelect's
+* Do not try to update records if there are none
+* Introduce RecordSets concept to core, and add initial RRSet API to v2
+* Provide support for "All Tenants" access
+* Correct migration 33
+* Fixed bug where sync\_all could not be run
+* Use % when printing keyfile/certfile errors
+* Make sure that certfile and keyfile are readable
+* BUG# 1258262 Added secret parameter to options for sensitive data
+* Bug #1257888: Remote Designate Agent Call Fails
+* Denormalize tenant\_id into the records table
+* Multi-backend
+* Put test resources into own folder
+* Backend tests restructure
+* Ensure logs are captured and displayed when tests fail
+* Fix typo in config and rename Quantrum > Neutron everywhere
+* Multiple testing fixes
+* Allow a context to be elevated to admin status
+* Don't require domain\_id in find\_record\* methods
+* Pass the service-catalog if any to the context
+* Add placeholder migrations to allow backports to Havana
+* Added a check for HTTP\_X\_IDENTITY\_STATUS
+* Add SLDs that act like TLDs
+* Support building wheels (PEP-427)
+* Add .testrepository to ST2 project ignore
+* nsd4slave backend
+* Update notifications towards oslo.messaging
+* Switch to testr / testtools / fixtures, remove nose
+* Update PPA URL
+* Expose touch\_domain via an API extension
+* Update TLD list per IANA list version 2013110700
+* Fix inconsistent dnspython imports bug
+* Domain Import/Export
+* Update setup.cfg for Icehouse development cycle
+
+2013.2
+------
+
+* Ensure we're compatible with JSONSchema 1.3.0 through 2.2.0
+* Sync requirements with stable/havana requirements
+* Zoneextractor tool
+* Ensure all FakeBackend methods use info level logs
+* Abstract quota enforcement in central service
+* Minor tox.ini changes, should speed things up
+* Add status fields for domains and records
+* Correct JSONSchemas for min/max TTLs
+* Added info on flake8 to docs
+* Update domains when servers are created, modified or deleted
+* Add rudimentary migration testing
+* docs: Correct errors in the Create Record examples
+* BIND9 Plugin Cleanup
+* Ensure beta versions are not downloaded from pypi
+* Correct PowerDNS migration 006
+* Monkeypatch WebTest to support HTTP PATCH
+* Give more meaningful error message when no servers are configured
+* Add initial BIND9 backend docs
+* Ensure default TTL is respected by PowerDNS backend
+* Allow default SOA values to be configured
+* Ensure tables are InnoDB and UTF8
+* Cleaned up fake backend backend
+* Central RPCAPI should call the correct sync methods
+* Add APIv2 Zones Controller
+* Fixed broken links in README.md
+* Fixup CNAME placement validation
+* PowerDNS - Correctly quote TXT and SPF record
+* Fix utils.render\_temaplate\_to\_file() test case name
+* Revert "PowerDNS - Ensure SPF records are quoted correctly"
+* docs: Add 'description' field to domains
+* Cleanup v2 schema links
+* Add description field to v2 schemas
+* Minor v1 records schema corrections
+* Add "Invalid TLD" error message
+* Correct V2 limits schema
+* Switch to EntryPoints for the binaries
+* Add API v2 /limits endpoint
+* Update Getting Started Guide
+* Sync doc/requirements.txt with openstack/requirements
+* API Version 2 - Initial Framework
+* Sync requirements with openstack/requirements
+* Add more API documentation for record types
+* Bug 1206849: Add more logging to the API Layer
+* PowerDNS - Ensure SPF records are quoted correctly
+* Add Description Field to Domains/Records
+* Update PBR to 0.5.21
+* Fixup incorrect exception handler
+* Update PBR
+* Restore JSONSchema 1.1.0 compatibility
+* Fix a minor doc build warning
+* Ensure all errors raised from netaddr are caught
+* Internal SQLA Storage Consistency Cleanup
+* Ensure the deleted column is not truncated
+* Update 'Getting Started' Doc
+* Reduce logspam from amqp
+* Ensure backend resources are always deletable
+* Refactor JSONSchema handling code
+* Remove out of date TODOs from README
+* Move doc/examples to doc/source/examples
+* Move Keystone config to main designate config
+* re-org docs & add details on production architecture
+* Ensure Code Coverage only includes designate
+* better ipv4 validation
+* Replace missing indexes for SQLite
+* Ensure StorageAPI always re-raises exceptions appropriately
+* corrected event details in Nova Handler notes
+* Logging & docs improvement for notification\_handler
+* Remove unnecessary default criterion value
+* find\_record should take a domain\_id argument
+* find\_records does not need to perform an is\_admin check
+* Sync requirements with openstack/requirements
+* Remove openstack.common.cfg
+* Remove invalid entrypoints
+* Accept trailing /'s on URLs
+* Add 'Getting Started' Doc
+* Implement a Quota management API extension
+* bug# 1198890 internal api tidy
+* Update docs links from moniker.rtfd.org to designate.rtfd.org
+* Add DevStack documentation page
+* Override default config values correctly
+* Middlewares should tell you they have started
+* Sync with oslo-incubator stable/grizzly
+* Update link to designate-cookbook
+* Add doc link to sample plugin repo
+* Add a related links page to the docs
+* Remove comments from \*requirements.txt (workaround pbr bug)
+* bug# 1198849 - from blallau
+* Update the outdated install document
+* Ensure sphinx and sphinxcontrib-httpdomain are installed for doc builds
+* Ensure RTD builds install all the necessary deps
+* bug# 1198885 - report 'latest' instead 'None' on database-sync
+* Ensure central cleans up storage if the backend fails
+* Add the Request-ID as a HTTP reponse header
+* Carry oslo-incubator review #34949
+* Sync with oslo stable/grizzly c7862b5239822d701b7fb155faa4607eff602627
+* Ensure all backend methods respect deleted domains
+* quota-domain-records sould be an IntOpt
+* Ensure the unique index on domains.name is correctly dropped
+* Bug #1194889 - Fix migration 16 on SQLite
+* Added notes on setting up a designate dev environment
+* bug/1195284 - correct ttl checks to match RFC
+* Add simple Maintenance Mode WSGI middleware
+* Update jsonschema dependancy
+* Sync requirements with openstack/requirements (except jsonschema)
+* Keep deleted domains in the DB
+* Ensure domains that fail to create are cleaned
+* Ensure request media-types are sane
+* Ensure records are unique, per RFC2181 Sec 5.0
+* Add LICENSE file
+* Rename to designate in .gitreview
+* Rename keystone-setup script for designate
+* Correct some overzealous s/moniker/designate/'s
+* Bump version to 2013.2
+* Correct a few links broken during the s/moniker/designate/
+* Rename Moniker -> Designate
+* Switch to Flake8 and add Hacking checks
+* Sync requirements with openstack/requirements. (Except jsonschema)
+* Fix pyflakes error
+* Guard against deletion of a parent domain
+* Remove unused SQLA utils code
+* Ensure record placement validation does not prevent updates
+* Validate UUID URL parameters
+* Add request-id to the API's fault responses
+* Switch to PBR
+* Helper utilities
+* The utils module in oslo is no more
+* Ensure create domain/record records call the correct count\_\* methods
+* Ensure our quotas/limits are consistent with other OpenStack projects
+* Implement Quota Support
+* Ensure two PTR records cannot have the same name
+* Update import of oslo's processutils
+* Extend reports API extension with more information
+* Cleanup method/varible ordering in the various places they are defined
+* Update report API ext method names to match URLs
+* Remove unnecessary try/catches from API extensions
+* Ensure all error responses are JSON
+* Ensure API calls fail when junk/unexpected properties are supplied
+* Add tests to ensure domain notifications are sent correctly
+* Removing unused test helpers
+* Add periodic\_task from Oslo
+* Correct the service name used in notifications
+* Add a "force" option to context sudo
+* Add Central.find\_\*() methods
+* Show log level in moniker-manage output
+* Commands should extend our Base Command, rather than cliff.Command
+* Remove un-used base CLI command classes
+* Update to the latest loopingcall from oslo
+* Convert openstack-common.conf to the new format
+* Ensure X-Moniker-Sudo-Tenant-ID values are either a UUID or int
+* Prefix all Moniker notifications with "dns."
+* Add a test case for email addr's with a trailing period
+* 0.0.0.0 is an invalid IPv4 address
+* Cleanup PowerDNS database schema
+* Support all valid (per RFC1035) email addresses
+* Implement support for RPC Versioning
+* Remove redundant moniker-manage commands
+* Ensure record changes trigger a backend serial increment
+* Abstract API exception handling
+* Tighten up TTL and Priority acceptable value ranges
+* Added /reports, /reports/domains, /reports/records & /reports/tenants
+* A domain may not have a NULL TTL
+* Ensure supplied email addresses are valid for use in the SOA RNAME field
+* Add support for specifying custom domain/record name max lengths
+* Validate SRV record format
+* Add localhost, localdomain and local and remove com, net, org from default blacklist
+* Set the default value for accepted TLD's to match the IANA TLD list
+* Quick fix to oslo-wsgi for wsgi.Service compat with service.ProcessLauncher
+* Domain name's should not be accepted with wildcards
+* Add 'accepted\_tld\_list' config option
+* Add ability to "touch" a domain via the API
+* Allow for record create/update/delete's and domain updates's without incrementing the serial number
+* Add a simple profiling decorator
+* Prevent is\_subrecord iterating past the domain name itself
+* Revert "A domain's TTL must not be null."
+* A domain's TTL must not be null
+* Use the 'fake' backend by default
+* Make Diagnostics and Sync API's optional
+* Separate notification handling from the central service
+* Remove base Plugin testcase
+* API tests should tearDown in the correct order
+* Refactor DNSMasq plugin for easier transition to the upcoming transactional changes
+* Remove the distinction between a storage engine and connection
+* Add Also-Notify support to PowerDNS backend
+* Wrap backend interactions in try/catch blocks
+* Add a base 'Backend' exception class for backend specific exceptions to extend from
+* Fetching a domain's list of authoritative name servers should not be filtered by tenant\_id
+* Ensure database-sync works when no version is specified
+* Rename sync-all to the more accurate "sync-domains"
+* Ensure we enforce the various rules for CNAME records
+* Add novalocal to the default domain name blacklist
+* Fixup migration #12 and support a target version when doing a database-sync
+* Ensure migrate.cfg's are included in the sdist tarball
+* Saner default values for SOA
+* Ensure serial number does not go backwards
+* Pin to jsonschema less than 1.0
+* Rename the X-Moniker-Tenant-ID header to X-Moniker-Sudo-Tenant-ID to make more clear its meaning and use
+* Support SSHFP records
+* Correct migration #10
+* Massively improve hostname validation
+* Move diagnostics API resource under /v1/ and split out the sync methods
+* Add support for plugin provided API resources
+* Add 'servers' link to domain schema
+* Drop the ipv4 and ipv6 columns from servers. It's never been used and makes little sense
+* Add ability to fetch the list of nameservers hosting a particular domain
+* Consistently use try/except/else
+* Ensure doc examples use valid JSON
+* Correct Context-Type -> Content-Type typo in docs
+* Attach context to local.store a little earlier
+* Ensure tools/\* is included in sdist
+* Remove unnecessary test api-paste and policy.json
+* Ensure resources are included in dist packages
+* Ensure we attach the context object to oslo-local for oslo-log to find
+* Simple implementation of DNSMasq backend
+* PowerDNS: Allow domain type to be configured
+* Ensure PowerDNS backup updates the SOA serial when necessary
+* Add ordername/auth cols to PowerDNS Record model
+* Set the auth field correctly for PowerDNS
+* Allow Context properties to be passed through get\_admin\_context()
+* Fixup moniker-manage sync commands
+* Add moniker-manage CLI commands to trigger sync's
+* Allow admin context's to retrieve domains from all tenants
+* PowerDNS currently only supports hmac-md5 TSIG
+* Calls to get\_servers from backends should use an admin context
+* Add moniker-manage commands for maintaining servers and TSIG keys
+* Use a dash as the command separater in moniker-manage
+* Fix incorrect column name used when updating a TSIG key
+* Add support for TSIG to PowerDNS backend
+* Add tests for incorrect domain\_id checks
+* Ensure records belong to the domain\_id supplied in the URL
+* Pass TSIG Key Create/Update/Delete to backend implementations
+* Fixup a rebase gone wrong.
+* Provide initial support for TSIG
+* Pass an instance of the central service, or the central\_api proxy to backends
+* Add initial PowerDNS migration repo
+* Fixup bug in bind9 backend
+* Domain Sync should not attempt to delete records after deleting the domain
+* Prevent renaming of a domain, and ensure records are contained in their parent domain
+* Add SPF to type ENUM in Records Table
+* Update REST API docs to remove links
+* Remove some magic from the RPC Backend API
+* Add naive domain/record synchronization implementations
+
+2013.1.alpha1
+-------------
+
+* Ensure config files are included in sdist tarball
+* Rename moniker-api-paste.ini -> api-paste.ini
+* Cleanup and simplify Tenant "Sudo" Code
+* Cleanup Blacklist code, Protect from sub-domain hijacking. Upgrade to pyflakes 0.6.1
+* Override the format for records
+* Replace reserved domain suffixes with regex based domain name blacklist
+* Use Policy enforcement to record an Audit trail
+* Update to JSONSchema 0.8 final
+* Re-add version.py
+* Initial Diagnostics API endpoint
+* Sync with Oslo 30a50c8a
+* Move config files from 'etc/' to 'etc/moniker/' to match what oslo's update.py expects
+* Allow Moniker Services to Spawn N processes each
+* Add sample config entry for reserved\_domain\_suffixes
+* Change to rootwrapper - bug #1075120
+* A Domain's TTL should be optional
+* Sanitize content field for certain record types
+* Pass server list from central -> backend for domain operations
+* Add sample PowerDNS backend config
+* Minor doc cleanup's
+* Update Docs with GetRecord call
+* PowerDNS Backend Driver
+* Fix bug #1075268 - Support multiple notification handlers listening to the same notification type
+* Log messages produced by the Keystone Auth Token middleware
+* Add support for a "sudo" like mechanism in the API
+* Add dummy versions list endpoint
+* Add support for admin-reserved DNS domain name suffixes
+* Add support for PTR records
+* \*Really\* cleanup the sample config this time
+* Sync with oslo a8973c52
+* Add tests for API 409 Handling (Duplicates / Conflicts)
+* Add tests for API 404 Handling
+* Handle RPC timeout's appropriately in the API
+* Updated Docs with recent API changes, particularly records
+* Cleanup sample config file
+* Add tests for KeystoneContextMiddleware and NoAuthMiddleware
+* Allow wildcard DNS records using a \*
+* Update MANIFEST.in to ensure only sample configs are included
+* Ensure \`moniker-manage --version\` reports the correct version number
+* Sync with oslo-incubator ad93e4e3
+* Fix coverage output folder
+* Switch to a single config file, using a config group per service
+* Fixup default policy.json
+* Allow configuration file to be specified via --config-file
+* Add more happy path API tests for servers/domains/records
+* Ensure Schema handle datetime objects appropriately
+* Centralize argv slicing
+* Use consistent base class name for moniker.backend tests
+* Remove dead code from moniker.storage
+* Fixup hostname regex + add some tests for valid host names
+* Provide sample logdir config option
+* Sync with oslo 8888ad01
+* Ensure bin/moniker-manage is executable
+* Ensure MANIFEST.in is correct - No longer include \*.pyc
+* Exclude ST2 project file from sdist
+* Ditch pre\_version argument to oslo-version
+* Added generic SQLOPTS
+* Record TTL should default to, and accept, NULL values
+* Remove unnecessary if/else block from the bind9 zone template
+* Move database\_connection sample config to the correct section
+* Remove unnecessary steps from the install guide
+* Ensure partial API updates are validated correctly
+* Include setup-requires in tox.ini
+* Sync with Oslo e6c576d9
+* Fixup sample moniker-api.conf
+* moniker-manage CLI should read DB connection string from correct config group
+* Minor install doc corrections
+* Ensure Plugin config declarations are compatible with oslo-config's \`import\_opt\` method
+* Partial fix for bug #1074093
+* Correctly raise Duplicate exceptions with MySQL
+* Fixup migration #3 for MySQL
+* Add /bind9 to .gitignore
+* Fixup bind9 zone template
+* bug #1086467, fixed by using moniker record ID in dns\_domains column
+* Fixup final pyflakes error + enable pyflakes check by default
+* Fixup Server JSONSchema
+* Allow the central and agent services to have separate defaults for the backend\_driver config option
+* cfg.CONF is a global, let's not pass it around unnecessarily
+* Add backend\_driver default to moniker-central.conf
+* Switch to plain .json schemas and improve Schema handling
+* Added central backend changes and rpc plugin. Added write\_database flag to mysqlbind agent
+* Fix inconsistencies in use of IPAddr and UUID instances
+* Fixup API after breakage in change Ie65b6d25
+* Cleanup use of Flask Blueprint's in the API
+* Sync with Oslo-Incubator 1fd7694e
+* Move SQLA types to shared location
+* Add empty testcase for the MySQL Bind9 backend
+* Working mysqlbind agent. Thank you to Endre and Kiall for the help!
+* Fixed a single-letter typo in docs
+* Move out session from the sqlalchemy impl to a more re-usable place
+* Keystone helper
+* Change the use of self.conf to cfg.CONF[self.name]
+* Fixup sample agent config
+* Tests cleanup and add helpers
+* Add more test helpers
+* More install doc corrections
+* Install doc corrections
+* POST helper for API tests
+* Do teardown properly
+* Abstract test functionality a bit more - make more use of get\_\*\_fixture
+* Fixup config access in bind9 backend
+* Add DB init commands to README.md
+* Add first API test for listing servers
+* The PyFlakes tox env should not run by default
+* Process only events with handlers - skip the rest
+* Fixes bug #1081525
+* Typo fix in install docs
+* Move fixtures to be available to all tests
+* Move docs where they belong (RTFD)
+* Add cliff to pip-requires and ensure all bin/ files are checked with pep8
+* Make us client library independent for server side operations
+* Fix so it invokes on load
+* Generalize tests of plugins take 2, bug #1080415
+* Add Quantum handlers for floating ip with tests
+* Fixes bug #1080467
+* Generalize testcases for handlers, bug #1080415
+* Fix broken version for migrate.
+* Implemented deltetion in the bind9 agent, fixed deletion in the backend, added migrate for foreign key changes
+* Cleanup tox / test deps
+* Fix most issues identified by PyFlakes
+* Add PyFlakes tox env
+* Update readme a bit
+* Add Quantum samples
+* Minor test cleanups
+* Remove \`get\_config\_overrides\` method from tests
+* Add policy checks for all resource create/update/delete/get/list actions
+* Pull Keystone middleware from the keystone client package
+* Restrict the Servers resource to admin users
+* Parse roles from Keystone into the Context
+* Track plugin name and type within records
+* Update the docs to use virtualenv's --no-site-packages flag
+* Update docs according to latest plugin change
+* Abstract out functionality into plugins
+* Fixed bind9 agent backend to handle new domains properly
+* Add \*.egg to .gitignore
+* Subclass OS-Common's Context class
+* Added fix to zone template to append dot to end of data for various records that require it
+* Add utils.resource\_string() method
+* Ensure Agent service calls the backends register\_opts() method
+* Be consistent with sample state\_path configuration value
+* Switch bind9 agent to a driver based implementation
+* Sync up notification handler test naming
+* Remove backported unittest assertions in favour of unittest2
+* Ensure database-connection config variable is defined correctly
+* Minor sample config file fixes
+* Make notification handler config option name consistent
+* Add nosexcover and nosehtmloutput Nosetests plugins to tools/test-requires
+* Document state-path configuration option
+* Fix bug #1075595 - Ensure a missing configuration file raises an error
+* Ensure the bind9 agent logs an error when there are no servers configured
+* Provide a sane sample database\_connection config value
+* Ensure we depend on SQLAlchemy 7.x
+* Added moniker API documentation
+* Re-order tox.ini sections
+* Fixup broken migration
+* Cleanup UnitTest assert backports
+* Add initial support for handling notifications from other OpenStack services
+* Add filtering to the storage layers get\_\* methods
+* Split on "+" to determine driver.
+* Update requirements for monikerclient -> python-monikerclient
+* Add pypi trove classifiers
+* Import and make use of openstack.common.version module
+* Sync with OS-Common 3d6c2368a5de16d875341426db8ddc9888213264
+* Remove duplicated line from docs
+* Update docs a little
+* Add requirements for RTD
+* Cache pip downloads on Jenkins
+* Remove Travis CI config, now that Moniker is on Gerrit
+* Fixup deps and tox.ini for Stackforge+Gerrit
+* Update docs for Servers API
+* Hide autogenated doc files in Sublime Text 2 project
+* Add sample API call to the sphinx docs (It's not necessarily accurate!)
+* Add sphinx doc skeleton
+* Update MANIFEST.in
+* Ensure CLI only loads local file if it exists
+* Move optional dep's to their own file
+* Use a local config file only when it exists
+* Sync with OS Common aca1805d911caefe14a73edb6ced281cf54e7ad2
+* Update default config files
+* Remove DB migrations from TODO list
+* Move SQLA dep in pip-requires to indicate it is optional (kinda)
+* Complete Skipped storage tests
+* Ensure we use a single Service instance per test case
+* Ensure tearDown is performed in the reverse order of setUp
+* Switch from Query.filter() -> Query.get() for single record fetches
+* Add Storage test for get\_record/get\_records
+* Minor cleanup
+* Lower the default SQL debug level
+* NULL is an acceptable value for tenant\_id
+* Ensure \`moniker database\` commands read the moniker-central config file
+* Cleanup SQLA migrate changes + "Un-Abstract" the type definitions
+* Migrate scripts now work! Also re-coded the tenant\_id NULL fix
+* Found a bug that allows insertion into domains with NULL tenant\_id
+* Changes to get sqlalchemy migrate to work. Still not there
+* Move create/destroy DB hacks to the tests themselves, and ensure they respect the storage driver choice
+* Update DB CLI commands for database -> storage changes
+* Fixup previous commit
+* Saner default values for Path+DB configs
+* Ensure the SQLA tests actually use the SQLA driver
+* Remove unnecessary hack inherited from ceilometer
+* Rename "sqla" to "impl\_sqlalchemy"
+* Fix license headers and skip setting engine before connection
+* Attempt to make backends more driver based like in Ceilometer
+* Switch from git:// to GubHub tarball via https for python-monikerclient dep
+* Rename sql\_connection to the more generic database\_connection
+* PEP8 Fix
+* Add database init + sync commands
+* Backport a few of assert methods not present in Py26. Fixes the tests on Py26
+* Remove pypi from travis-ci config
+* Add openstack.nose\_plugin as a test dep
+* Add Openstack-Nose test dep
+* Fixup Travis-CI and tox config
+* Two newlines needed for zone files that have more than one RR to have one newline at end
+* Add Travis-CI config file
+* Final fixes for migrations addition
+* Add tests policy.json
+* Ensure utils.find\_config() raises correctly on failure to find config
+* Policy implementation (part 1)
+* Add Database driver server method tests
+* Ensure agents recieve the correct params for delete\_domain calls
+* Handle \`exceptions.Forbidden\` appropriately in the API
+* Correct handling of duplicates
+* Fixup PEP8 errors in previous merge + remove license info from empty files
+* Add SQLAlchemy Migrate dep
+* Add some missing deps required by OS-Common
+* Delete duplicated schemas.py
+* Include newer bin/ files on tox pep8 checks
+* Use the latest version of PEP8
+* Re-creating changes, this time with Git identity set! \* Changes to models.py to set column width \* Added initial migration scripts
+* Add PasteDeploy dep to tools/pip-requires
+* Remove duplicate requirement on setuptools-git
+* Extract setup-requires from setup.py
+* Add tests\_require to setup.py
+* Move TODO's to the bottom on the readme
+* Move some dep's from test-requires to pip-requires
+* Add some \*really\* basic instructions
+* Add .venv to gitignore file
+* Ensure all bin/ files are as "dumb" as possible
+* Add Moniker Central tests for domains and records
+* Remove temporary keystone config options
+* Remove Debug API endpoint + Remove some unneeded imports
+* Switch from Flask's WSGI Server to OpenStack Commons + Use PasteDeploy for easier Keystone integration
+* Add OpenStack Common WSGI module
+* Ensuring fitering a empty collection works
+* Move API app from \_\_init\_\_.py -> app.py
+* Use fake RPC backend for testing
+* Add Moniker Central server management tests
+* Remove some un-used imports
+* Move create schema hack into into it's own method
+* Add tox and venv to ST2 folder ignores
+* Fix another missing license header
+* Add skeleton test framework
+* Fix license headers
+* Make use of OpenStack Common setup module
+* Ensure the bind9 agent's output path is created, if necessary
+* Ensure delete's are flushed to the DB immediately
+* Ensure moniker's exceptions are re-raised over RPC
+* Reapply WIP openstack common patch from https://review.openstack.org/#/c/13953/
+* Ensure the RNDC call only supplies a config file option if one has been explicitly set
+* Remove leftover config file
+* Sync with OpenStack Common rev f182936b
+* Add some temp config vars to disable keystone and use a default tenant/user instead
+* Lots of changes:
+* Add utils and exception modules from openstack-common
+* Switch default sql\_connection to an in-memory sqlite DB
+* Sync to openstack-common rev 974989d9
+* Remove leftover file
+* Add TODO note
+* Rename TODO list
+* Initial Public Commit
diff -pruN 1:21.0.0-1/PKG-INFO 1:21.0.0-0ubuntu1/PKG-INFO
--- 1:21.0.0-1/PKG-INFO	1970-01-01 00:00:00.000000000 +0000
+++ 1:21.0.0-0ubuntu1/PKG-INFO	2025-10-01 10:46:36.035539200 +0000
@@ -0,0 +1,87 @@
+Metadata-Version: 2.1
+Name: designate
+Version: 21.0.0
+Summary: DNS as a Service
+Home-page: https://docs.openstack.org/designate/latest/
+Author: OpenStack
+Author-email: openstack-discuss@lists.openstack.org
+Classifier: Environment :: OpenStack
+Classifier: Environment :: No Input/Output (Daemon)
+Classifier: Intended Audience :: Information Technology
+Classifier: Intended Audience :: System Administrators
+Classifier: License :: OSI Approved :: Apache Software License
+Classifier: Operating System :: POSIX :: Linux
+Classifier: Programming Language :: Python
+Classifier: Programming Language :: Python :: Implementation :: CPython
+Classifier: Programming Language :: Python :: 3 :: Only
+Classifier: Programming Language :: Python :: 3
+Classifier: Programming Language :: Python :: 3.10
+Classifier: Programming Language :: Python :: 3.11
+Classifier: Programming Language :: Python :: 3.12
+Classifier: Topic :: Internet :: Name Service (DNS)
+Requires-Python: >=3.10
+License-File: LICENSE
+Requires-Dist: alembic>=1.8.0
+Requires-Dist: eventlet>=0.36.0
+Requires-Dist: Flask!=0.11,>=0.10
+Requires-Dist: greenlet>=0.4.15
+Requires-Dist: Jinja2>=2.10
+Requires-Dist: jsonschema>=3.2.0
+Requires-Dist: keystoneauth1>=3.4.0
+Requires-Dist: keystonemiddleware>=4.17.0
+Requires-Dist: openstacksdk>=0.103.0
+Requires-Dist: oslo.config>=6.8.0
+Requires-Dist: oslo.concurrency>=4.2.0
+Requires-Dist: oslo.messaging>=14.1.0
+Requires-Dist: oslo.middleware>=3.31.0
+Requires-Dist: oslo.log>=4.3.0
+Requires-Dist: oslo.reports>=1.18.0
+Requires-Dist: oslo.rootwrap>=5.15.0
+Requires-Dist: oslo.serialization>=2.25.0
+Requires-Dist: oslo.service>=1.31.0
+Requires-Dist: oslo.upgradecheck>=1.3.0
+Requires-Dist: oslo.utils>=4.7.0
+Requires-Dist: oslo.versionedobjects>=1.31.2
+Requires-Dist: osprofiler>=3.4.0
+Requires-Dist: Paste>=2.0.2
+Requires-Dist: PasteDeploy>=1.5.0
+Requires-Dist: pbr>=3.1.1
+Requires-Dist: pecan!=1.0.2,!=1.0.3,!=1.0.4,!=1.2,>=1.0.0
+Requires-Dist: python-designateclient>=2.12.0
+Requires-Dist: requests>=2.23.0
+Requires-Dist: tenacity>=6.0.0
+Requires-Dist: SQLAlchemy>=1.4.41
+Requires-Dist: stevedore>=1.20.0
+Requires-Dist: WebOb>=1.7.1
+Requires-Dist: dnspython>=2.2.1
+Requires-Dist: oslo.db>=8.3.0
+Requires-Dist: oslo.i18n>=3.20.0
+Requires-Dist: oslo.context>=4.0.0
+Requires-Dist: oslo.policy>=4.5.0
+Requires-Dist: tooz>=1.58.0
+Requires-Dist: futurist>=1.2.0
+Provides-Extra: edgegrid
+Requires-Dist: edgegrid-python>=1.1.1; extra == "edgegrid"
+Provides-Extra: infoblox
+Requires-Dist: infoblox-client>=0.6.0; extra == "infoblox"
+Provides-Extra: test
+Requires-Dist: hacking<6.2.0,>=6.1.0; extra == "test"
+Requires-Dist: coverage!=4.4,>=4.0; extra == "test"
+Requires-Dist: fixtures>=3.0.0; extra == "test"
+Requires-Dist: stestr>=2.0.0; extra == "test"
+Requires-Dist: oslotest>=3.2.0; extra == "test"
+Requires-Dist: requests-mock>=1.2.0; extra == "test"
+Requires-Dist: testtools>=2.2.0; extra == "test"
+Requires-Dist: testscenarios>=0.4; extra == "test"
+Requires-Dist: WebTest>=2.0.27; extra == "test"
+Requires-Dist: tempest>=21.0.0; extra == "test"
+Requires-Dist: bandit>=1.1.0; extra == "test"
+Requires-Dist: doc8>=0.6.0; extra == "test"
+Requires-Dist: Pygments>=2.2.0; extra == "test"
+Requires-Dist: pymemcache!=1.3.0,>=1.2.9; extra == "test"
+Requires-Dist: PyMySQL>=0.8.0; extra == "test"
+Requires-Dist: edgegrid-python>=1.1.1; extra == "test"
+Requires-Dist: infoblox-client>=0.6.0; extra == "test"
+Requires-Dist: bashate>=0.5.1; extra == "test"
+
+file: README.rst
diff -pruN 1:21.0.0-1/debian/README.source 1:21.0.0-0ubuntu1/debian/README.source
--- 1:21.0.0-1/debian/README.source	2025-10-01 19:51:25.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/README.source	1970-01-01 00:00:00.000000000 +0000
@@ -1,2 +0,0 @@
-The package is +dfsg1 because of the removal of bootstrap.min.{js,css}
-in the api-ref folder.
diff -pruN 1:21.0.0-1/debian/changelog 1:21.0.0-0ubuntu1/debian/changelog
--- 1:21.0.0-1/debian/changelog	2025-10-01 19:51:25.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/changelog	2025-10-01 13:47:16.000000000 +0000
@@ -1,797 +1,981 @@
-designate (1:21.0.0-1) unstable; urgency=medium
+designate (1:21.0.0-0ubuntu1) questing; urgency=medium
 
-  * New upstream release.
+  * New upstream release for OpenStack Flamingo (LP: #2125956).
 
- -- Thomas Goirand <zigo@debian.org>  Wed, 01 Oct 2025 21:51:25 +0200
+ -- Guillaume Boutry <guillaume.boutry@canonical.com>  Wed, 01 Oct 2025 15:47:16 +0200
 
-designate (1:21.0.0~rc1-4) unstable; urgency=medium
+designate (1:21.0.0~rc1-0ubuntu1) questing; urgency=medium
 
-  * Uploading to unstable.
+  * New upstream release for OpenStack Flamingo (LP: #2125012).
+  * d/watch: Add Flamingo key verification.
+  * d/u/signing-key.asc: Add Flamingo public key.
 
- -- Thomas Goirand <zigo@debian.org>  Mon, 29 Sep 2025 00:33:08 +0200
+ -- Myles Penner <myles.penner@canonical.com>  Thu, 18 Sep 2025 14:20:43 -0700
 
-designate (1:21.0.0~rc1-3) experimental; urgency=medium
+designate (1:20.0.0+git2025070714.fe86055b-0ubuntu3) questing; urgency=medium
 
-  * Fix UWSGI_INI_APP in init script.
+  * d/designate_sudoers: Drop override causing compatibility issues with
+    sudo-rs. (LP: #2120708)
 
- -- Thomas Goirand <zigo@debian.org>  Tue, 23 Sep 2025 21:41:17 +0200
+ -- Guillaume Boutry <guillaume.boutry@canonical.com>  Tue, 19 Aug 2025 12:34:06 +0200
 
-designate (1:21.0.0~rc1-2) experimental; urgency=medium
+designate (1:20.0.0+git2025070714.fe86055b-0ubuntu2) questing; urgency=medium
 
-  * Fixed UWSGI_INI_APP in api init script.
+  * d/control: Drop unnecessary python-bashate dependency.
 
- -- Thomas Goirand <zigo@debian.org>  Thu, 18 Sep 2025 22:11:40 +0200
+ -- Myles Penner <myles.penner@canonical.com>  Wed, 23 Jul 2025 15:33:36 -0700
 
-designate (1:21.0.0~rc1-1) experimental; urgency=medium
+designate (1:20.0.0+git2025070714.fe86055b-0ubuntu1) questing; urgency=medium
 
-  * New upstream release.
-  * Switch designate-api to module=designate.wsgi.api:application instead of
-    wsgi-script which is gone from upstream.
-  * Removed versions of (build-)depends, satisfied in Trixie.
-  * Refreshed add-new-floatingip-handler.patch.
+  [ Guillaume Boutry ]
+  * d/gbp.conf, .launchpad.yaml: Sync from cloud-archive-tools for
+    flamingo.
 
- -- Thomas Goirand <zigo@debian.org>  Fri, 12 Sep 2025 19:30:18 +0200
+  [ Myles Penner ]
+  * New upstream release for OpenStack Flamingo. (LP: #2116155)
+  * d/s/options: Ignore .launchpad.yaml when generating diffs.
+  * d/control: Align (Build-)Depends with upstream. 
 
-designate (1:20.0.0-2) unstable; urgency=medium
+ -- Myles Penner <myles.penner@canonical.com>  Wed, 16 Jul 2025 11:40:31 -0700
 
-  * export OS_OSLO_MESSAGING_RABBIT__PROCESSNAME for all daemons.
+designate (1:20.0.0-0ubuntu1) plucky; urgency=medium
 
- -- Thomas Goirand <zigo@debian.org>  Sat, 05 Apr 2025 14:01:54 +0200
+  * d/watch: Track Epoxy series releases.
+  * New upstream release for OpenStack Epoxy.
 
-designate (1:20.0.0-1) unstable; urgency=medium
+ -- Guillaume Boutry <guillaume.boutry@canonical.com>  Thu, 03 Apr 2025 17:45:44 +0200
 
-  * New upstream release.
+designate (1:19.0.0+git2025030311.05ffe294-0ubuntu1) plucky; urgency=medium
 
- -- Thomas Goirand <zigo@debian.org>  Wed, 02 Apr 2025 13:22:03 +0200
+  * New upstream release for OpenStack Epoxy.
 
-designate (1:20.0.0~rc1-2) unstable; urgency=medium
+ -- Guillaume Boutry <guillaume.boutry@canonical.com>  Tue, 04 Mar 2025 09:15:34 +0000
 
-  * Blacklist failing in Bookworm backports:
-    - TestPartitioner.test_three_even_partitions
-  * Uploading to unstable.
+designate (1:19.0.0+git2025011509.d6e3f96c-0ubuntu1) plucky; urgency=medium
 
- -- Thomas Goirand <zigo@debian.org>  Thu, 20 Mar 2025 21:05:52 +0100
+  * d/gbp.conf, .launchpad.yaml: Sync from cloud-archive-tools for
+    epoxy.
+  * New upstream release for OpenStack Epoxy.
+  * d/control: Drop surplus dependencies.
+  * d/control: Align (Build-)Depends with upstream.
+  * d/rules,designate-common.install: Install rootwrap.conf directly
+    from upstream source.
 
-designate (1:20.0.0~rc1-1) experimental; urgency=medium
+ -- James Page <james.page@ubuntu.com>  Mon, 20 Jan 2025 13:47:12 +0000
 
-  * New upstream release.
-  * Fixed (build-)depends for this release.
-  * Blacklist tests:
-    - BasicInfobloxBackendTestCase.test_create_zone_handle_error
-    - BasicInfobloxBackendTestCase.test_delete_zone_handle_error
-  * Fix installing /etc/designate/rootwrap.conf as upstream source filename
-    changed.
+designate (1:19.0.0-0ubuntu1) oracular; urgency=medium
 
- -- Thomas Goirand <zigo@debian.org>  Thu, 20 Mar 2025 17:48:51 +0100
+  * New upstream release for OpenStack Dalmatian.
 
-designate (1:19.0.0-3) unstable; urgency=medium
+ -- James Page <james.page@ubuntu.com>  Thu, 03 Oct 2024 10:21:24 +0100
 
-  * Switch to libjs-bootstrap5 (Closes: #1088451).
+designate (1:19.0.0~rc1-0ubuntu1) oracular; urgency=medium
 
- -- Thomas Goirand <zigo@debian.org>  Fri, 20 Dec 2024 15:40:18 +0100
+  [ James Page ]
+  * d/gbp.conf: upstream-branch -> upstream-dalmatian.
 
-designate (1:19.0.0-2) unstable; urgency=medium
+  [ Jadon Naas ]
+  * New upstream release candidate for OpenStack Dalmatian
 
-  * Switch to pybuild (Closes: #1090411).
-    - Add override_dh_auto_test.
+ -- Jadon Naas <jadon.naas@canonical.com>  Wed, 25 Sep 2024 10:34:35 +0100
 
- -- Thomas Goirand <zigo@debian.org>  Thu, 19 Dec 2024 17:08:45 +0100
+designate (1:18.0.0+git2024080716.50f686fc-0ubuntu1) oracular; urgency=medium
 
-designate (1:19.0.0-1) unstable; urgency=medium
+  * New upstream snapshot for OpenStack Dalmatian:
+    - d/p/skip-infoblox-backend-test.patch: Skip execution of infoblox tests
+      as the Python client is not yet packaged.
 
-  * New upstream release.
+ -- Jadon Naas <jadon.naas@canonical.com>  Wed, 14 Aug 2024 09:23:18 +0100
 
- -- Thomas Goirand <zigo@debian.org>  Wed, 02 Oct 2024 15:56:36 +0200
+designate (1:18.0.0-0ubuntu1) noble; urgency=medium
 
-designate (1:19.0.0~rc1-2) unstable; urgency=medium
+  * New upstream release for OpenStack Caracal.
 
-  * Uploading to unstable.
+ -- James Page <james.page@ubuntu.com>  Fri, 05 Apr 2024 14:03:23 +0100
 
- -- Thomas Goirand <zigo@debian.org>  Fri, 20 Sep 2024 16:50:31 +0200
+designate (1:18.0.0~rc1-0ubuntu1) noble; urgency=medium
 
-designate (1:19.0.0~rc1-1) experimental; urgency=medium
+  * New upstream release candidate for OpenStack Caracal.
+  * d/p/disable-edgegrid.patch,series: Drop patch to make edgegrid
+    optional as this is the default upstream.
 
-  * New upstream release.
-  * Add python3-infoblox-client as (build-)depends.
-  * Removed Fix_unit_tests_depending_on_resolv.conf.patch applied upstream.
+ -- James Page <james.page@ubuntu.com>  Wed, 20 Mar 2024 13:36:08 +0000
 
- -- Thomas Goirand <zigo@debian.org>  Tue, 17 Sep 2024 08:56:18 +0200
+designate (1:17.0.1+git2024011916.002005a4-0ubuntu2) noble; urgency=medium
 
-designate (1:18.0.0-4) unstable; urgency=medium
+  * d/p/disable-edgegrid.patch: Restore patch dropped by mistake in
+    previous upload, making python3-edgegrid an optional dependency
+    again.
 
-  * Removed python3-migrate from (build-)depends.
+ -- James Page <james.page@ubuntu.com>  Tue, 06 Feb 2024 15:57:48 +0000
 
- -- Thomas Goirand <zigo@debian.org>  Fri, 12 Jul 2024 04:39:31 +0200
+designate (1:17.0.1+git2024011916.002005a4-0ubuntu1) noble; urgency=medium
 
-designate (1:18.0.0-3) unstable; urgency=medium
+  * New upstream snapshot for OpenStack Caracal.
+  * d/control: Align (Build-)Depends with upstream.
+  * d/p/skip-nameserver-tests.patch: Drop, no longer needed.
+  * d/p/*: Tidy obsolete patches.
 
-  [ Axel Jacquet ]
-  * Add fix-regex-to-create-floating-ptr.patch.
-  * Update add-new-floatingip-handler.patch so it works in Caracal.
+ -- James Page <james.page@ubuntu.com>  Fri, 02 Feb 2024 16:19:11 +0000
 
- -- Thomas Goirand <zigo@debian.org>  Thu, 27 Jun 2024 12:06:45 +0200
+designate (1:17.0.1+git2023121308.d90691f3-0ubuntu1) noble; urgency=medium
 
-designate (1:18.0.0-2) unstable; urgency=medium
+  * d/gbp.conf, .launchpad.yaml: Sync from cloud-archive-tools for
+    caracal.
+  * New upstream snapshot for OpenStack Caracal.
+  * d/control: Align (Build-)Depends with upstream.
+  * d/p/*: Rebased.
 
-  * Add Fix_unit_tests_depending_on_resolv.conf.patch (Closes: #1070332).
+ -- Corey Bryant <corey.bryant@canonical.com>  Wed, 13 Dec 2023 08:32:56 -0500
 
- -- Thomas Goirand <zigo@debian.org>  Thu, 09 May 2024 13:58:59 +0200
+designate (1:17.0.0-0ubuntu2) mantic; urgency=medium
 
-designate (1:18.0.0-1) unstable; urgency=medium
+  * d/p/install-missing-db-files.patch: Install missing db files, including
+    designate/storage/sqlalchemy/ files.
 
-  * New upstream release.
-  * Uploading to unstable.
+ -- Corey Bryant <corey.bryant@canonical.com>  Thu, 05 Oct 2023 16:58:32 -0400
 
- -- Thomas Goirand <zigo@debian.org>  Thu, 04 Apr 2024 09:08:43 +0200
+designate (1:17.0.0-0ubuntu1) mantic; urgency=medium
 
-designate (1:18.0.0~rc1-1) experimental; urgency=medium
+  * New upstream release for OpenStack Bobcat.
 
-  * Add close-on-exec{2,} = true in uwsgi config.
-  * New upstream release.
-  * Fixed (build-)depends for this release.
+ -- Corey Bryant <corey.bryant@canonical.com>  Wed, 04 Oct 2023 08:51:14 -0400
 
- -- Thomas Goirand <zigo@debian.org>  Sun, 17 Mar 2024 12:15:17 +0100
+designate (1:16.0.1+git2023091114.4ba42190-0ubuntu1) mantic; urgency=medium
 
-designate (1:17.0.0-2) unstable; urgency=medium
+  * New upstream snapshot for OpenStack Bobcat.
+  * d/control: Align (Build-)Depends with upstream.
+  * d/p/skip-nameserver-tests.patch: Skip tests that need nameserver access.
 
-  * Add missing oslo.versionedobjects namespace when generating
-    designate.conf.
+ -- Corey Bryant <corey.bryant@canonical.com>  Mon, 11 Sep 2023 14:17:55 -0400
 
- -- Thomas Goirand <zigo@debian.org>  Tue, 10 Oct 2023 14:35:50 +0200
+designate (1:16.0.0+git2023071215.963751f2-0ubuntu1) mantic; urgency=medium
 
-designate (1:17.0.0-1) unstable; urgency=medium
+  * d/gbp.conf, .launchpad.yaml: Sync from cloud-archive-tools for
+    bobcat.
+  * New upstream snapshot for OpenStack Bobcat.
+  * d/control: Align (Build-)Depends with upstream.
+  * New upstream snapshot for OpenStack Bobcat.
 
-  * New upstream release.
-  * Uploading to unstable.
+ -- Corey Bryant <corey.bryant@canonical.com>  Wed, 12 Jul 2023 15:24:00 -0400
 
- -- Thomas Goirand <zigo@debian.org>  Thu, 05 Oct 2023 10:01:46 +0200
+designate (1:16.0.0-0ubuntu1) lunar; urgency=medium
 
-designate (1:17.0.0~rc1-3) experimental; urgency=medium
+  * New upstream release for OpenStack Antelope.
 
-  * Also blacklist test_service.TestRpcService.*
+ -- Corey Bryant <corey.bryant@canonical.com>  Thu, 23 Mar 2023 14:24:20 -0400
 
- -- Thomas Goirand <zigo@debian.org>  Sun, 17 Sep 2023 13:49:24 +0200
+designate (1:15.0.0+git2023030211.8910a201-0ubuntu1) lunar; urgency=medium
 
-designate (1:17.0.0~rc1-2) experimental; urgency=medium
+  * d/watch: Drop major version.
+  * New upstream snapshot for OpenStack Antelope.
+  * d/control: Align (Build-)Depends with upstream.
+  * d/p/disable-edgegrid.patch: Rebased.
 
-  * Disable TestServiceInit.* that's not deterministic.
+ -- Corey Bryant <corey.bryant@canonical.com>  Thu, 02 Mar 2023 11:45:30 -0500
 
- -- Thomas Goirand <zigo@debian.org>  Sun, 17 Sep 2023 13:38:51 +0200
+designate (1:15.0.0+git2023011009.de000517-0ubuntu1) lunar; urgency=medium
 
-designate (1:17.0.0~rc1-1) experimental; urgency=medium
+  * New upstream snapshot for OpenStack Antelope.
 
-  * New upstream release.
-  * Fixed (build-)depends for this release.
-  * Remove remove-blockdiag-from-admin-ha-doc.patch, refreshed patches.
-  * Cleans better.
+ -- Corey Bryant <corey.bryant@canonical.com>  Tue, 10 Jan 2023 09:40:34 -0500
 
- -- Thomas Goirand <zigo@debian.org>  Sat, 16 Sep 2023 16:41:31 +0200
+designate (1:15.0.0-0ubuntu1) kinetic; urgency=medium
 
-designate (1:16.0.0-5) unstable; urgency=medium
+  * d/watch: Scope to 15.x.
+  * New upstream release for OpenStack Zed.
+  * d/p/disable-edgegrid.patch: Rebased.
 
-  * Cleans properly (Closes: #1044979).
+ -- Corey Bryant <corey.bryant@canonical.com>  Wed, 05 Oct 2022 14:32:57 -0400
 
- -- Thomas Goirand <zigo@debian.org>  Mon, 14 Aug 2023 17:53:50 +0200
+designate (1:14.0.1+git2022091212.7460ae30-0ubuntu2) kinetic; urgency=medium
 
-designate (1:16.0.0-4) unstable; urgency=medium
+  * d/control: Bump min version of alembic to 1.8.1. This fixes several
+    sqlalchemy.exc.OperationalError issues hit by unit tests.
 
-  * Add remove-blockdiag-from-admin-ha-doc.patch (Closes: #1042128).
+ -- Corey Bryant <corey.bryant@canonical.com>  Wed, 14 Sep 2022 10:23:22 -0400
 
- -- Thomas Goirand <zigo@debian.org>  Wed, 09 Aug 2023 14:06:16 +0200
+designate (1:14.0.1+git2022091212.7460ae30-0ubuntu1) kinetic; urgency=medium
 
-designate (1:16.0.0-3) unstable; urgency=medium
+  * New upstream snapshot for OpenStack Zed.
+  * d/control: Align (Build-)Depends with upstream.
+  * d/p/disable-edgegrid.patch: Rebased.
 
-  * Uploading to unstable.
+ -- Corey Bryant <corey.bryant@canonical.com>  Mon, 12 Sep 2022 12:40:01 -0400
 
- -- Thomas Goirand <zigo@debian.org>  Mon, 19 Jun 2023 14:03:58 +0200
+designate (1:14.0.1+git2022071413.cc660ca0-0ubuntu1) kinetic; urgency=medium
 
-designate (1:16.0.0-2) experimental; urgency=medium
+  * New upstream snapshot for OpenStack Zed.
+  * d/control: Ensure openstack-pkg-tools has CIS hardening for log files
+    and pkgos_adduser.
+  * d/designate-common.postinst: CIS hardening update to switch adduser to use
+    /usr/sbin/nologin when creating system account that does not run a shell.
 
-  * Build-depends on openstack-pkg-tools (>= 123~).
+ -- Corey Bryant <corey.bryant@canonical.com>  Thu, 14 Jul 2022 13:41:58 -0400
 
- -- Thomas Goirand <zigo@debian.org>  Fri, 14 Apr 2023 13:14:52 +0200
+designate (1:14.0.1+git2022070708.d05232fc-0ubuntu1) kinetic; urgency=medium
 
-designate (1:16.0.0-1) experimental; urgency=medium
+  * New upstream snapshot for OpenStack Zed.
+  * d/control: Align (Build-)Depends with upstream.
+  * d/p/disable-edgegrid.patch: Rebased.
 
-  * Add add-new-floatingip-handler.patch.
-  * New upstream release.
+ -- Corey Bryant <corey.bryant@canonical.com>  Thu, 07 Jul 2022 08:46:56 -0400
 
- -- Thomas Goirand <zigo@debian.org>  Wed, 22 Mar 2023 13:26:31 +0100
+designate (1:14.0.0+git2022060209.404db698-0ubuntu1) kinetic; urgency=medium
 
-designate (1:16.0.0~rc1-1) experimental; urgency=medium
+  * New upstream snapshot for OpenStack Zed.
+  * d/control: Align (Build-)Depends with upstream.
+  * d/control: Update standards version to 4.6.1.
 
-  * New upstream release.
-  * Switch to debhelper 11.
-  * Removed (build-)depends version when satisfied in Bookworm.
-  * Fixed (build-)depends for this release.
-  * Removed lsb-base depends.
-  * Removed patches applied upstream:
-    - Fix-mdns-test_handler-setup.patch
-    - do-not-use-docutils-set_class.patch
+ -- Corey Bryant <corey.bryant@canonical.com>  Thu, 02 Jun 2022 09:12:53 -0400
 
- -- Thomas Goirand <zigo@debian.org>  Mon, 06 Mar 2023 15:45:49 +0100
+designate (1:14.0.0-0ubuntu1) jammy; urgency=medium
 
-designate (1:15.0.0-3) unstable; urgency=medium
+  * d/watch: Scope to 14.x.
+  * New upstream release for OpenStack Yoga.
 
-  * Blacklist TestDesignateRpcService.
+ -- Corey Bryant <corey.bryant@canonical.com>  Wed, 30 Mar 2022 16:15:28 -0400
 
- -- Thomas Goirand <zigo@debian.org>  Wed, 25 Jan 2023 13:28:32 +0100
+designate (1:13.0.0+git2022030310.8ce022a7-0ubuntu1) jammy; urgency=medium
 
-designate (1:15.0.0-2) unstable; urgency=medium
+  * New upstream snapshot for OpenStack Yoga.
+  * d/control: Align (Build-)Depends with upstream.
 
-  * Blacklist all agent tests, as:
-    - they are deprecated and will be gone upstream soon.
-    - they break with dnspython >= 2.3.0.
-  * Add do-not-use-docutils-set_class.patch.
+ -- Corey Bryant <corey.bryant@canonical.com>  Thu, 03 Mar 2022 10:59:05 -0500
 
- -- Thomas Goirand <zigo@debian.org>  Tue, 24 Jan 2023 15:35:32 +0100
+designate (1:13.0.0+git2022011215.bff3d5f6-0ubuntu1) jammy; urgency=medium
 
-designate (1:15.0.0-1) unstable; urgency=medium
+  * New upstream snapshot for OpenStack Yoga.
+  * d/control, d/rules: Bump debhelper compat to 13.
 
-  * New upsteram release.
+ -- Corey Bryant <corey.bryant@canonical.com>  Wed, 12 Jan 2022 15:58:02 -0500
 
- -- Thomas Goirand <zigo@debian.org>  Wed, 05 Oct 2022 21:38:36 +0200
+designate (1:13.0.0+git2021120810.aa798fc0-0ubuntu1) jammy; urgency=medium
 
-designate (1:15.0.0~rc1-3) unstable; urgency=medium
+  * New upstream snapshot for OpenStack Yoga.
+  * d/pydist-overrides: Drop suds-jurko which is no longer a dependency.
 
-  * Uploading to unstable.
+ -- Corey Bryant <corey.bryant@canonical.com>  Wed, 08 Dec 2021 10:45:54 -0500
 
- -- Thomas Goirand <zigo@debian.org>  Fri, 23 Sep 2022 18:10:24 +0200
+designate (1:13.0.0-0ubuntu1) impish; urgency=medium
 
-designate (1:15.0.0~rc1-2) experimental; urgency=medium
+  * d/watch: Scope to 13.x.
+  * New upstream release for OpenStack Xena.
 
-  * Add Fix-mdns-test_handler-setup.patch and re-enable previous disabled
-    tests, fixed with this upstream patch.
+ -- Chris MacNaughton <chris.macnaughton@ubuntu.com>  Wed, 06 Oct 2021 15:13:29 +0000
 
- -- Thomas Goirand <zigo@debian.org>  Wed, 21 Sep 2022 08:39:55 +0200
+designate (1:12.0.0+git2021090814.17357884-0ubuntu1) impish; urgency=medium
 
-designate (1:15.0.0~rc1-1) experimental; urgency=medium
+  * New upstream release for OpenStack Xena.
 
-  * New upstream release.
-  * Fixed (build-)depends for this release.
-  * Removed Remove_invalid_use_of_jsonschema.compat.patch applied upstream.
-  * Blacklist *mdns.test_handler.MdnsHandleTest\.test_notify and
-    mdns.test_handler.MdnsHandleTest.test_worker_api that break depending on
-    the order which tests are run (to be fixed upstream).
+ -- Chris MacNaughton <chris.macnaughton@ubuntu.com>  Thu, 09 Sep 2021 07:59:55 +0000
 
- -- Thomas Goirand <zigo@debian.org>  Sat, 17 Sep 2022 17:28:05 +0200
+designate (1:12.0.0+git2021072116.6fc04e72-0ubuntu1) impish; urgency=medium
 
-designate (1:14.0.0-2) unstable; urgency=medium
+  * New upstream snapshot for OpenStack Xena.
+  * d/control: Align (Build-)Depends with upstream.
 
-  * Add Remove_invalid_use_of_jsonschema.compat.patch.
+ -- Corey Bryant <corey.bryant@canonical.com>  Wed, 21 Jul 2021 16:38:13 -0400
 
- -- Thomas Goirand <zigo@debian.org>  Thu, 14 Jul 2022 17:56:31 +0200
+designate (1:12.0.0+git2021061112.ddbbd430-0ubuntu1) impish; urgency=medium
 
-designate (1:14.0.0-1) unstable; urgency=medium
+  * New upstream snapshot for OpenStack Xena.
 
-  * New upstream release.
+ -- Chris MacNaughton <chris.macnaughton@ubuntu.com>  Fri, 11 Jun 2021 12:51:17 +0000
 
- -- Thomas Goirand <zigo@debian.org>  Wed, 30 Mar 2022 16:14:13 +0200
+designate (1:12.0.0-0ubuntu1) hirsute; urgency=medium
 
-designate (1:14.0.0~rc1-2) unstable; urgency=medium
+  * New upstream release for OpenStack Wallaby.
 
-  * Uploading to unstable.
+ -- Corey Bryant <corey.bryant@canonical.com>  Wed, 14 Apr 2021 14:59:34 -0400
 
- -- Thomas Goirand <zigo@debian.org>  Fri, 25 Mar 2022 15:03:49 +0100
+designate (1:12.0.0~rc1-0ubuntu1) hirsute; urgency=medium
 
-designate (1:14.0.0~rc1-1) experimental; urgency=medium
+  * d/watch: Scope to 12.x series
+  * New upstream release candidate for OpenStack Wallaby.
+  * d/control: Align (Build-)Depends with upstream.
 
-  * Better long description of each daemons.
-  * New upstream release.
-  * Fixed (build-)depends for this release.
-  * Removed Fix_test_failures_with_dnspython2.x.patch applied upstream.
-  * Add autopkgtest.
+ -- Chris MacNaughton <chris.macnaughton@ubuntu.com>  Mon, 29 Mar 2021 12:12:27 +0000
 
- -- Thomas Goirand <zigo@debian.org>  Thu, 10 Mar 2022 17:47:08 +0100
+designate (1:11.0.0+git2021012507.e8c901c3-0ubuntu1) hirsute; urgency=medium
 
-designate (1:13.0.0-4) unstable; urgency=medium
+  [ Corey Bryant ]
+  * d/rules: Override Python 3 shebang.
 
-  * Switch treads to 1 by default.
+  [ Chris MacNaughton ]
+  * New upstream snapshot for OpenStack Wallaby.
+  * d/control: Align (Build-)Depends with upstream.
+  * d/p/disable-edgegrid.patch: Refreshed.
 
- -- Thomas Goirand <zigo@debian.org>  Fri, 21 Jan 2022 18:31:09 +0100
+ -- Chris MacNaughton <chris.macnaughton@ubuntu.com>  Mon, 25 Jan 2021 08:19:52 +0000
 
-designate (1:13.0.0-3) unstable; urgency=medium
+designate (1:11.0.0+git2020120911.1ea6d44a-0ubuntu1) hirsute; urgency=medium
 
-  * Blacklist tests that require resolv.conf (Closes: #987672).
+  * New upstream snapshot for OpenStack Wallaby.
+  * d/control: Align (Build-)Depends with upstream.
 
- -- Thomas Goirand <zigo@debian.org>  Tue, 28 Dec 2021 20:29:20 +0100
+ -- Corey Bryant <corey.bryant@canonical.com>  Wed, 09 Dec 2020 11:56:39 -0500
 
-designate (1:13.0.0-2) unstable; urgency=medium
+designate (1:11.0.0-0ubuntu1) groovy; urgency=medium
 
-  * Add Fix_test_failures_with_dnspython2.x.patch (Closes: #1002413).
+  * New upstream release for OpenStack Victoria.
 
- -- Thomas Goirand <zigo@debian.org>  Thu, 23 Dec 2021 11:45:21 +0100
+ -- Chris MacNaughton <chris.macnaughton@ubuntu.com>  Thu, 15 Oct 2020 09:59:33 +0000
 
-designate (1:13.0.0-1) unstable; urgency=medium
+designate (1:11.0.0~rc1-0ubuntu1) groovy; urgency=medium
 
-  * New upstream release.
+  * d/control: Remove Breaks/Replaces that are older than Focal (LP: #1878419).
+  * d/control: Update VCS paths for move to lp:~ubuntu-openstack-dev.
+  * d/watch: Track 11.x series.
+  * New upstream release candidate for OpenStack Victoria.
+  * d/p/disable-edgegrid.patch: Refreshed.
 
- -- Thomas Goirand <zigo@debian.org>  Wed, 06 Oct 2021 17:03:11 +0200
+ -- Chris MacNaughton <chris.macnaughton@ubuntu.com>  Tue, 13 Oct 2020 08:07:26 +0000
 
-designate (1:13.0.0~rc1-2) unstable; urgency=medium
+designate (1:11.0.0~b2~git2020073012.45cb4376-0ubuntu1) groovy; urgency=medium
 
-  * Uploading to unstable.
-  * Fix 00_default_policy.yaml.
-  * d/rules: Removed --with systemd.
+  * New upstream snapshot for OpenStack Victoria.
 
- -- Thomas Goirand <zigo@debian.org>  Wed, 29 Sep 2021 22:34:53 +0200
+ -- Chris MacNaughton <chris.macnaughton@canonical.com>  Thu, 30 Jul 2020 12:39:24 +0000
 
-designate (1:13.0.0~rc1-1) experimental; urgency=medium
+designate (1:11.0.0~b1~git2020062612.eac003cb-0ubuntu1) groovy; urgency=medium
 
-  * New upstream release.
-  * Fixed (build-)depends for this release.
+  * New upstream snapshot for OpenStack Victoria.
+  * Align (Build-)Depends with Upstream.
+  * d/p/disable-edgegrid.patch: Rebased.
+  * d/p/monkey-patch-original-current-thread.patch: Dropped. No longer needed.
+  * d/control: Remove version specification for openstack-pkg-tools.
+  * d/control: Update Standards-Version to 4.5.0.
 
- -- Thomas Goirand <zigo@debian.org>  Mon, 20 Sep 2021 12:03:19 +0200
+ -- Chris MacNaughton <chris.macnaughton@canonical.com>  Fri, 26 Jun 2020 12:48:00 +0000
 
-designate (1:12.0.0-2) unstable; urgency=medium
+designate (1:10.0.0-0ubuntu1) groovy; urgency=medium
 
-  * Upload to unstable.
+  * d/watch: Get tarballs from opendev.org and scope to 10.x series.
+  * d/p/monkey-patch-original-current-thread.patch: Cherry-picked
+    from upstream review (https://review.opendev.org/#/c/725346/)
+    to fix Python 3.8 monkey patching (LP: #1863021).
+  * d/p/disable-edgegrid.patch: Rebased.
+  * New upstream release for OpenStack Ussuri (LP: #1877642).
 
- -- Thomas Goirand <zigo@debian.org>  Mon, 16 Aug 2021 19:33:28 +0200
+ -- Corey Bryant <corey.bryant@canonical.com>  Wed, 13 May 2020 16:50:55 -0400
 
-designate (1:12.0.0-1) experimental; urgency=medium
+designate (1:10.0.0~b3~git2020041012.9ed2623a-0ubuntu1) focal; urgency=medium
 
-  * New upstream release.
+  * New upstream snapshot for OpenStack Ussuri.
+  * d/designate-common.postinst: Set ownership and permissions for all /var/lib
+    files and directories.
+  * d/p/disable-edgegrid.patch: Rebased.
 
- -- Thomas Goirand <zigo@debian.org>  Wed, 14 Apr 2021 22:59:47 +0200
+ -- Corey Bryant <corey.bryant@canonical.com>  Fri, 10 Apr 2020 12:57:22 -0400
 
-designate (1:12.0.0~rc1-1) experimental; urgency=medium
+designate (1:10.0.0~b3~git2020032414.dd359ba3-0ubuntu1) focal; urgency=medium
 
-  * Tune designate-api-uwsgi.ini for performance.
-  * New upstream release.
-  * Removed (build-)depends versions when satisfied in Bullseye.
-  * Fixed (build-)depends for this release.
-  * Add removed-httpdomain-sphinx-ext.patch.
+  * New upstream snapshot for OpenStack Ussuri.
+  * d/control: Align (Build-)Depends with upstream.
+  * d/p/skip-test.patch: Dropped. No longer needed (LP: #1863936).
+  * d/designate-common.postinst: Set default ownership and permissions for
+    /etc/<pkg>, /var/lib/<pkg>, and /var/log/<pkg> (LP: #1859422).
 
- -- Thomas Goirand <zigo@debian.org>  Sat, 27 Mar 2021 00:02:47 +0100
+ -- Corey Bryant <corey.bryant@canonical.com>  Tue, 24 Mar 2020 14:48:35 -0400
 
-designate (1:11.0.0-3) unstable; urgency=medium
+designate (1:10.0.0~b2~git2020021416.8b5ec128-0ubuntu2) focal; urgency=medium
 
-  * mv /etc/designate/policy.json /etc/designate/disabled.policy.json.old
-    instead of deleting /etc/designate/policy.json.
+  * d/p/disable-edgegrid.patch: Drop hard requirement on optional
+    edgegrid dependency for the akamai-v2 driver.
 
- -- Thomas Goirand <zigo@debian.org>  Tue, 15 Dec 2020 11:33:41 +0100
+ -- James Page <james.page@ubuntu.com>  Tue, 17 Mar 2020 14:42:02 +0000
 
-designate (1:11.0.0-2) unstable; urgency=medium
+designate (1:10.0.0~b2~git2020021416.8b5ec128-0ubuntu1) focal; urgency=medium
 
-  * Fixed not installing policy.json.
+  [ Sahid Orentino Ferdjaoui ]
+  * New upstream snapshot for OpenStack Ussuri.
+  * d/p/disable-notstable-test.patch: Removed unstable test.
 
- -- Thomas Goirand <zigo@debian.org>  Sat, 17 Oct 2020 16:32:37 +0200
+  [ Corey Bryant ]
+  * d/p/disable-notstable-test.patch: Reverted.
+  * d/control: Add python3-pymemcache BD.
+  * New upstream snapshot for OpenStack Ussuri.
+  * d/control: Add python3-edgegrid to Build-Depends/Suggests.
+  * d/p/skip-test.patch: Temporarily skip test_network_api tests that are failing
+    on Ubuntu builds.
 
-designate (1:11.0.0-1) unstable; urgency=medium
+ -- Corey Bryant <corey.bryant@canonical.com>  Fri, 14 Feb 2020 16:42:25 -0500
 
-  * New upstream release.
-  * Uploading to unstable.
-  * Fixed debian/watch.
-  * Add a salsa-ci.yml.
+designate (1:10.0.0~b1~git2019121610.cdac0fc2-0ubuntu1) focal; urgency=medium
 
- -- Thomas Goirand <zigo@debian.org>  Sat, 17 Oct 2020 16:10:24 +0200
+  * New upstream snapshot for OpenStack Ussuri.
+  * d/control: Drop. Dropped Python2 support
+  * d/rules: Switch to pybuild.
 
-designate (1:11.0.0~rc1-1) experimental; urgency=medium
+ -- Sahid Orentino Ferdjaoui <sahid.ferdjaoui@canonical.com>  Mon, 16 Dec 2019 11:47:56 +0100
 
-  * New upstream release.
-  * Fixed (build-)depends for this release.
-  * Use a yaml policy file in /etc/designate/policy.d.
-  * Drop add-a-healthcheck-url.patch applied upstream.
-  * Black list some failed unit tests:
-    - DenominatorAgentBackendTestCase.test_create_zone
-    - DenominatorAgentBackendTestCase.test_update_zone
+designate (1:9.0.0-0ubuntu1) eoan; urgency=medium
 
- -- Thomas Goirand <zigo@debian.org>  Thu, 01 Oct 2020 09:04:03 +0200
+  * New stable point release for OpenStack Train.
 
-designate (1:10.0.0-3) unstable; urgency=medium
+ -- Sahid Orentino Ferdjaoui <sahid.ferdjaoui@canonical.com>  Wed, 16 Oct 2019 17:36:28 +0100
 
-  * Add add-a-healthcheck-url.patch.
+designate (1:9.0.0~rc1-0ubuntu1) eoan; urgency=medium
 
- -- Thomas Goirand <zigo@debian.org>  Mon, 18 May 2020 18:06:09 +0200
+  * d/watch: Scope to 9.x series.
+  * New upstream release candidate for OpenStack Train.
+  * d/control: Align (Build-)Depends with upstream.
 
-designate (1:10.0.0-2) unstable; urgency=medium
+ -- Corey Bryant <corey.bryant@canonical.com>  Fri, 27 Sep 2019 08:50:50 -0400
 
-  * Fix-up designate.conf generation (wrong namespace list).
+designate (1:9.0.0~b2~git2019073016.076f9fce-0ubuntu1) eoan; urgency=medium
 
- -- Thomas Goirand <zigo@debian.org>  Mon, 18 May 2020 00:41:53 +0200
+  * New upstream snapshot for OpenStack Train.
+  * d/control: Align (Build-)Depends with upstream.
 
-designate (1:10.0.0-1) unstable; urgency=medium
+ -- Sahid Orentino Ferdjaoui <sahid.ferdjaoui@canonical.com>  Tue, 30 Jul 2019 16:34:14 +0200
 
-  * New upstream release.
+designate (1:9.0.0~b1~git2019061315.fc5700bd-0ubuntu1) eoan; urgency=medium
 
- -- Thomas Goirand <zigo@debian.org>  Wed, 13 May 2020 15:22:47 +0200
+  * New upstream release 9.0.0~b1.
+  * d/control: Align (Build-)Depends with upstream.
 
-designate (1:10.0.0~rc2-1) unstable; urgency=medium
+ -- Sahid Orentino Ferdjaoui <sahid.ferdjaoui@canonical.com>  Fri, 14 Jun 2019 16:34:47 +0100
 
-  * New upstream release.
-  * Uploading to unstable.
+designate (1:8.0.0-0ubuntu1) disco; urgency=medium
 
- -- Thomas Goirand <zigo@debian.org>  Sat, 09 May 2020 13:53:29 +0200
+  * New upstream release for OpenStack Stein.
 
-designate (1:10.0.0~rc1-1) experimental; urgency=medium
+ -- James Page <james.page@ubuntu.com>  Fri, 12 Apr 2019 08:47:07 +0100
 
-  * New upstream release.
-  * Fixed (build-)depends for this release.
-  * Removed Experimental_wsgi_support.patch applied upstream.
+designate (1:8.0.0~rc1-0ubuntu1) disco; urgency=medium
 
- -- Thomas Goirand <zigo@debian.org>  Thu, 23 Apr 2020 21:22:27 +0200
+  * New upstream release candidate for OpenStack Stein.
 
-designate (1:9.0.0-3) unstable; urgency=medium
+ -- James Page <james.page@ubuntu.com>  Fri, 22 Mar 2019 11:26:42 +0000
 
-  * d/watch: Fix debian/watch file
+designate (1:8.0.0~b1~git2019031855.59d8cab9-0ubuntu1) disco; urgency=medium
 
- -- Michal Arbet <michal.arbet@ultimum.io>  Fri, 13 Mar 2020 15:56:35 +0100
+  [ Corey Bryant ]
+  * d/designate-common.postinst: Change /etc/designate to 0750 root:designate.
 
-designate (1:9.0.0-2) unstable; urgency=medium
+  [ James Page ]
+  * New upstream snapshot for OpenStack Stein.
 
-  * Uploading to unstable.
+ -- James Page <james.page@ubuntu.com>  Mon, 18 Mar 2019 16:37:08 +0000
 
- -- Thomas Goirand <zigo@debian.org>  Tue, 22 Oct 2019 00:28:08 +0200
+designate (1:8.0.0~b1~git2019013020.717b94c2-0ubuntu1) disco; urgency=medium
 
-designate (1:9.0.0-1) experimental; urgency=medium
+  * New upstream snapshot for OpenStack Stein.
+  * d/control: Align (Build-)Depends with upstream.
 
-  * New upstream release.
+ -- James Page <james.page@ubuntu.com>  Wed, 30 Jan 2019 15:42:47 +0000
 
- -- Thomas Goirand <zigo@debian.org>  Wed, 16 Oct 2019 18:07:50 +0200
+designate (1:8.0.0~b1~git2018111615.6a368fb5-0ubuntu2) disco; urgency=medium
 
-designate (1:9.0.0~rc1-1) experimental; urgency=medium
+  * d/py(3)dist-overrides: Rename pydist-overrides to py3dist-overrides to
+    align with dropping of Python 2 support.
 
-  [ Ondřej Nový ]
-  * Use debhelper-compat instead of debian/compat.
+ -- Corey Bryant <corey.bryant@canonical.com>  Tue, 20 Nov 2018 12:25:16 -0500
 
-  [ Thomas Goirand ]
-  * New upstream release.
-  * Add Experimental_wsgi_support.patch from upstream.
-  * Use uwsgi for designate-api.
+designate (1:8.0.0~b1~git2018111615.6a368fb5-0ubuntu1) disco; urgency=medium
 
- -- Thomas Goirand <zigo@debian.org>  Sat, 28 Sep 2019 23:16:42 +0200
+  * New upstream snapshot for OpenStack Stein.
+  * d/watch: Scope to 8.x series.
+  * d/control, d/rules, d/python(3)-designate.*, d/tests/*: Drop Python 2
+    support.
 
-designate (1:8.0.0-3) unstable; urgency=medium
+ -- Corey Bryant <corey.bryant@canonical.com>  Fri, 16 Nov 2018 15:52:27 -0500
 
-  * Uploading to unstable.
+designate (1:8.0.0~b1~git20181108.f182ec8d-0ubuntu1) disco; urgency=medium
 
- -- Michal Arbet <michal.arbet@ultimum.io>  Wed, 17 Jul 2019 15:31:17 +0200
+  * d/tests/designate-shebangs-py3: Update shebang for Python 3.7.
+  * New upstream snapshot for OpenStack Stein.
+  * d/rules: Add PBR_VERSION to set correct distro version for package build.
+  * d/control: Align (Build-)Depends with upstream.
+  * d/rules: Enable Python 3.7 tests.
 
-designate (1:8.0.0-2) experimental; urgency=medium
+ -- Corey Bryant <corey.bryant@canonical.com>  Fri, 09 Nov 2018 11:39:49 -0500
 
-  * d/control:
-      - Bump openstack-pkg-tools to version 99
-      - Add me to uploaders field
-  * d/copyright: Add me to copyright file
+designate (1:7.0.0-0ubuntu1) cosmic; urgency=medium
 
- -- Michal Arbet <michal.arbet@ultimum.io>  Fri, 03 May 2019 18:18:53 +0200
+  * New upstream release for OpenStack Rocky.
 
-designate (1:8.0.0-1) experimental; urgency=medium
+ -- Corey Bryant <corey.bryant@canonical.com>  Thu, 30 Aug 2018 10:35:07 -0400
 
-  * New upstream release.
+designate (1:7.0.0~rc1-0ubuntu3) cosmic; urgency=medium
 
- -- Thomas Goirand <zigo@debian.org>  Thu, 11 Apr 2019 09:28:25 +0200
+  [ James Page ]
+  * d/*: Tidy misc lintian warnings and errors.
 
-designate (1:8.0.0~rc1-2) experimental; urgency=medium
+  [ Corey Bryant ]
+  * Additional support for Python 3:
+    - d/control: All common files are installed by designate-common. Only have
+      python(3)-designate depend on designate-common. Other packages that used to
+      depend on designate-common now depend on python-designate | python3-designate.
+    - d/control: Drop python(3)-designate conflicts on each other.
+    - d/python(3)-designate.postinst: Ensure alternatives priority is 300
+      for Py2 and 200 for Py3.
+    - d/tests/control: Run Py3 tests first due to alternatives priority.
 
-  * Do not use python3- prefix when calling config generators.
+ -- Corey Bryant <corey.bryant@canonical.com>  Mon, 27 Aug 2018 13:26:46 -0400
 
- -- Thomas Goirand <zigo@debian.org>  Fri, 29 Mar 2019 22:19:05 +0100
+designate (1:7.0.0~rc1-0ubuntu2) cosmic; urgency=medium
 
-designate (1:8.0.0~rc1-1) experimental; urgency=medium
+  * d/control: Drop py2 BD's on openstackdocstheme and os-api-ref as
+    package uses python3-sphinx for documentation build.
 
-  * New upstream release.
-  * Removed versions when satisfied in Buster.
-  * Fixed (build-)depends for this release.
+ -- James Page <james.page@ubuntu.com>  Thu, 16 Aug 2018 06:37:29 +0100
 
- -- Thomas Goirand <zigo@debian.org>  Fri, 29 Mar 2019 21:46:29 +0100
+designate (1:7.0.0~rc1-0ubuntu1) cosmic; urgency=medium
 
-designate (1:7.0.0-2) unstable; urgency=medium
+  * New upstream release candidate for OpenStack Rocky.
 
-  * Really fixes removal of config files and folder (Closes: #905497).
+ -- Corey Bryant <corey.bryant@canonical.com>  Fri, 10 Aug 2018 15:17:32 -0400
 
- -- Thomas Goirand <zigo@debian.org>  Tue, 08 Jan 2019 09:14:38 +0100
+designate (1:7.0.0~b3-0ubuntu1) cosmic; urgency=medium
 
-designate (1:7.0.0-1) unstable; urgency=medium
+  * New upstream milestone for OpenStack Rocky.
+  * d/control: Align (Build-)Depends with upstream.
+  * d/p/0001-Replace-StopIteration-with-return-for-pep-0479.patch: Dropped.
+    Fixed in new upstream release.
 
-  * New upstream release.
-  * Uploading to unstable.
-  * Remove /etc/designate/{api-paste.ini,policy.json} on purge.
-    (Closes: #905497)
+ -- Corey Bryant <corey.bryant@canonical.com>  Tue, 07 Aug 2018 13:32:07 -0400
 
- -- Thomas Goirand <zigo@debian.org>  Thu, 30 Aug 2018 11:35:27 +0200
+designate (1:7.0.0~b2-0ubuntu2) cosmic; urgency=medium
 
-designate (1:7.0.0~rc1-1) experimental; urgency=medium
+  * Add support for Python 3:
+    - d/control: Add Py3 BDs and python3-designate package.
+    - d/control: Support Py2 first and Py3 as alternative.
+    - d/control: Move all python deps to python(3)-designate Depends.
+    - d/control: Make python(3)-designate conflict against each other.
+    - d/rules: Add Py3 support.
+    - d/rules: Use pkgos-dh_auto_install as this helps name binaries for
+      update-alternatives.
+    - d/rules: Run tests with pkgos-dh_auto_test.
+    - d/python-designate.install: Drop, not needed.
+    - d/designate-common.install: Drop usr/bin/* as pkgos-dh_auto_install handles
+      install of those files.
+    - d/python(3)-designate.post*, d/python(3)-designate.prerm: Add update-alternatives
+      to enable correct shebangs for Python binaries.
+    - d/tests/*: Enable Py3 tests for designate daemons and add shebang tests.
+    - d/p/0001-Replace-StopIteration-with-return-for-pep-0479.patch: Cherry-pick
+      fix for pep 0479.
+    - d/rules: Skip Py3.7 tests until they run successfully upstream.
 
-  [ Ondřej Nový ]
-  * d/control: Use team+openstack@tracker.debian.org as maintainer
+ -- Corey Bryant <corey.bryant@canonical.com>  Fri, 06 Jul 2018 16:12:26 -0400
 
-  [ Thomas Goirand ]
-  * New upstream release.
-  * Fixed (build-)depends for this release.
-  * Removed fixes-sphinx-doc-with-python3.patch applied upstream.
+designate (1:7.0.0~b2-0ubuntu1) cosmic; urgency=medium
 
- -- Thomas Goirand <zigo@debian.org>  Fri, 24 Aug 2018 10:54:27 +0200
+  * New upstream milestone for OpenStack Rocky.
 
-designate (1:6.0.0-1) unstable; urgency=medium
+ -- Corey Bryant <corey.bryant@canonical.com>  Wed, 13 Jun 2018 13:16:03 -0400
 
-  * New upstream release.
-  * Uploading to unstable.
-  * Switch to openstack-pkg-tools >= 70~ shared debconf templates.
+designate (1:7.0.0~b1-0ubuntu1) cosmic; urgency=medium
 
- -- Thomas Goirand <zigo@debian.org>  Tue, 27 Feb 2018 09:30:04 +0000
+  * d/watch: Scope to 7.x series.
+  * New upstream milestone for OpenStack Rocky.
+  * d/control: Align (Build-)Depends with upstream.
+  * d/control: Update Standards-Version to 4.1.4.
+  * d/watch, d/copyright: Use https URLs.
+  * d/control: Drop obsolete XS-Testsuite: autopkgtest header.
+  * d/control, d/tests/*: Enable autopkgtest-pkg-python testsuite.
 
-designate (1:6.0.0~rc1-1) experimental; urgency=medium
+ -- Corey Bryant <corey.bryant@canonical.com>  Thu, 24 May 2018 15:37:55 -0700
 
-  [ David Rabel ]
-  * Fix d/copyright (Closes: #890715).
+designate (1:6.0.1-0ubuntu2) cosmic; urgency=medium
 
-  [ Thomas Goirand ]
-  * New upstream release.
-  * Fixed (build-)depends for this release.
-  * Remove make-designate.conf-build-reproducibly.patch applied upstream.
-  * Install other config files correctly.
-  * Switch package to Python 3.
-  * Add fixes-sphinx-doc-with-python3.patch.
+  * New stable point release for OpenStack Queens (LP: #1767128).
 
- -- Thomas Goirand <zigo@debian.org>  Sat, 24 Feb 2018 22:21:45 +0000
+ -- Corey Bryant <corey.bryant@canonical.com>  Wed, 02 May 2018 15:11:05 -0400
 
-designate (1:5.0.1-1) unstable; urgency=medium
+designate (1:6.0.0-0ubuntu1) bionic; urgency=medium
 
-  [ Michal Arbet ]
-  * Team upload.
-  * New upstream version
-  * Add designate{,-worker,-producer} packages
-  * Edit make-designate.conf-build-reproducibly.patch
-  * Add designate-worker.init.in
-  * Add designate-producer.init.in
-  * Add deletion of generated files/dirs to debian/rules
-  * Add dependencies to designate-doc
-  * Replace ext js library by symlink to library package file
-  * Raise Standards Version to 4.1.3
+  * New upstream release for OpenStack Queens.
 
-  [ Ondřej Nový ]
-  * Running wrap-and-sort -bast
-  * d/control: Set Vcs-* to salsa.debian.org
+ -- Corey Bryant <corey.bryant@canonical.com>  Wed, 28 Feb 2018 13:37:02 -0500
 
- -- Thomas Goirand <zigo@debian.org>  Fri, 16 Feb 2018 20:57:24 +0000
+designate (1:6.0.0~rc1-0ubuntu1) bionic; urgency=medium
 
-designate (1:5.0.0-5) unstable; urgency=medium
+  * New upstream milestone for OpenStack Queens.
 
-  [ David Rabel ]
-  * Team upload.
-  * Add Chris Lamb's patch to make build reproducible (Closes: #889315).
-  * Remove unused debian/patches/set_enable-api-v2_to_true_by_default.patch.
+ -- James Page <james.page@ubuntu.com>  Wed, 14 Feb 2018 17:06:14 +0000
 
- -- Thomas Goirand <zigo@debian.org>  Sat, 10 Feb 2018 13:02:29 +0000
+designate (1:6.0.0~b3-0ubuntu1) bionic; urgency=medium
 
-designate (1:5.0.0-4) unstable; urgency=medium
+  [ James Page ]
+  * d/rules,designate-common.install: Generate and install sample policy
+    file only, as default policy is now in code.
+  * d/control: Add python-sphinxcontrib.httpdomain to BD's.
 
-  * Fixed debconf english template about admin auth token (Closes: #874199).
-  * Tweak default lock_path to /run/lock/designate.
-  * Fixed default openstack-pkg-tools to >= 56~.
+  [ Corey Bryant ]
+  * New upstream milestone for OpenStack Queens.
+  * d/control: Align (Build-)Depends with upstream.
 
- -- Thomas Goirand <zigo@debian.org>  Thu, 07 Dec 2017 09:07:46 +0100
+ -- Corey Bryant <corey.bryant@canonical.com>  Fri, 26 Jan 2018 08:43:46 -0500
 
-designate (1:5.0.0-3) unstable; urgency=medium
+designate (1:6.0.0~b2-0ubuntu1) bionic; urgency=medium
 
-  * Add make-designate.conf-build-reproducibly.patch.
-  * Set pybasedir on build.
+  * d/watch: Pin to Queens series.
+  * New upstream milestone for OpenStack Queens.
+  * d/control: Align (Build-)Depends with upstream.
+  * d/*: wrap-and-sort -bast.
+  * d/control: Bump minimum debhelper version to 10, drop BD on dh-
+    systemd.
+  * d/control: Bumped Standards-Version to 4.1.2.
+  * d/rules,designate-common.install: Generate configuration and policy
+    files and install directly from etc/designate.
 
- -- Thomas Goirand <zigo@debian.org>  Wed, 06 Dec 2017 21:22:28 +0000
+ -- James Page <james.page@ubuntu.com>  Mon, 18 Dec 2017 16:25:33 +0000
 
-designate (1:5.0.0-2) unstable; urgency=medium
+designate (1:6.0.0~b1-0ubuntu2) bionic; urgency=low
 
-  * Updated fr.po (Closes: #875752).
-  * Removed dh-systemd build-depends.
+  * Switch Build-Depends: to python-sphinxcontrib.httpdomain to follow
+    upstream rename.
 
- -- Thomas Goirand <zigo@debian.org>  Sun, 29 Oct 2017 17:04:01 +0000
+ -- Andy Whitcroft <apw@ubuntu.com>  Wed, 22 Nov 2017 14:33:42 +0000
 
-designate (1:5.0.0-1) experimental; urgency=medium
+designate (1:6.0.0~b1-0ubuntu1) bionic; urgency=medium
 
-  * New upstream release.
-  * Update VCS URLs.
-  * Update Maintainer field.
-  * Deprecating priority extra as per policy 4.0.1.
-  * Updating standards version to 4.1.1.
-  * Fixed (build-)package for this release.
-  * Generating designate.conf with oslo-config-generator.
-  * Remove most patches, now not needed.
-  * Switch to python-sphinxcontrib.httpdomain instead of the transition
-    package.
+  * New upstream milestone for OpenStack Queens.
+  * d/control: Align (Build-)Depends with upstream.
+  * d/p/drop-openstackdoctheme.patch: Dropped. No longer needed.
 
- -- Thomas Goirand <zigo@debian.org>  Mon, 16 Oct 2017 03:29:54 +0200
+ -- Corey Bryant <corey.bryant@canonical.com>  Tue, 14 Nov 2017 15:46:56 -0500
 
-designate (1:3.0.0-4) unstable; urgency=medium
+designate (1:5.0.0-0ubuntu1) artful; urgency=medium
 
-  * Updated German debconf translation (Closes: #857524).
+  * New upstream release for OpenStack Pike.
 
- -- Thomas Goirand <zigo@debian.org>  Tue, 04 Apr 2017 17:29:47 +0200
+ -- Corey Bryant <corey.bryant@canonical.com>  Wed, 30 Aug 2017 09:15:56 -0400
 
-designate (1:3.0.0-3) unstable; urgency=medium
+designate (1:5.0.0~rc1-0ubuntu1) artful; urgency=medium
 
-  * Build-depends on openstack-pkg-tools >= 54~ to ensure config script doesn't
-    use net-tools or iproute2, which aren't essential (Closes: #859443).
+  * New upstream release candidate for OpenStack Pike.
+  * d/control: Align (Build-)Depends with upstream.
+  * d/p/drop-openstackdoctheme.patch: Rebased.
 
- -- Thomas Goirand <zigo@debian.org>  Mon, 03 Apr 2017 16:50:31 +0200
+ -- Corey Bryant <corey.bryant@canonical.com>  Wed, 16 Aug 2017 14:55:38 -0400
 
-designate (1:3.0.0-2) unstable; urgency=medium
+designate (1:5.0.0~b3-0ubuntu2) artful; urgency=medium
 
-  [ Ondřej Nový ]
-  * Bumped debhelper compat version to 10
+  * d/control: Set min python-requests to 2.14.2.
 
-  [ Thomas Goirand ]
-  * Added lsb-base to depends.
-  * Allow SQLAlchemy >= 1.1.
+ -- Corey Bryant <corey.bryant@canonical.com>  Thu, 03 Aug 2017 16:18:26 -0400
 
- -- Thomas Goirand <zigo@debian.org>  Tue, 13 Dec 2016 17:23:04 +0100
+designate (1:5.0.0~b3-0ubuntu1) artful; urgency=medium
 
-designate (1:3.0.0-1) unstable; urgency=medium
+  [ James Page ]
+  * d/p/*: Drop, no longer required.
+  * New snapshot.
 
-  * New upstream release.
+  [ Corey Bryant ]
+  * New upstream milestone for OpenStack Pike.
+  * d/control: Align (Build-)Depends with upstream.
+  * d/p/drop-openstackdoctheme.patch: Temporarily drop openstackdocstheme
+    sphinx extension until sphinx>=1.6.2 is available.
 
- -- Thomas Goirand <zigo@debian.org>  Thu, 06 Oct 2016 17:35:57 +0200
+ -- Corey Bryant <corey.bryant@canonical.com>  Fri, 28 Jul 2017 14:02:36 -0400
 
-designate (1:3.0.0~rc1-2) unstable; urgency=medium
+designate (1:5.0.0~b1-0ubuntu2) artful; urgency=medium
 
-  [ Ondřej Nový ]
-  * d/s/options: extend-diff-ignore of .gitreview
-  * d/control: Using OpenStack's Gerrit as VCS URLs.
+  * d/p/fix-sqla-versions.patch: Lift upper version bound on sqlalchemy.
+  * d/p/sqla-1.1-compat.patch: Cherry pick fixes for SQLAlchemy 1.1
+    compatibility.
+  * d/rules,test-blacklist.txt: Drop blacklisting of tests.
 
-  [ Thomas Goirand ]
-  * Uploading to unstable (Closes: #837255).
-  * Build-Depends on openstack-pkg-tools >= 53~.
-  * Fixed oslotest EPOCH.
+ -- James Page <james.page@ubuntu.com>  Fri, 05 May 2017 15:06:24 -0400
 
- -- Thomas Goirand <zigo@debian.org>  Wed, 28 Sep 2016 09:39:40 +0200
+designate (1:5.0.0~b1-0ubuntu1) artful; urgency=medium
 
-designate (1:3.0.0~rc1-1) experimental; urgency=medium
+  * New upstream milestone for OpenStack Pike.
+  * Align (Build-)Depends with upstream milestone.
+  * Disable sphinxdoc helper until document index fixed.
+  * Drop all patches, no longer required.
+  * Switch Depends on retrying -> tenacity.
+  * d/rules,test-blacklist.txt: Blacklist failing tests for SOA record
+    retrieval (see http://pad.lv/1688351).
 
-  * New upstream release.
-  * Fixed (build-)depends for this release.
-  * Rebased patches.
-  * Remove /v1/ from endpoint and just use /.
-  * Copy all pools.yaml.sample* in /usr/share/doc/designate-common/examples.
+ -- James Page <james.page@ubuntu.com>  Thu, 04 May 2017 13:09:23 -0400
 
- -- Thomas Goirand <zigo@debian.org>  Tue, 26 Jul 2016 17:33:51 +0200
+designate (1:4.0.0-0ubuntu1) zesty; urgency=medium
 
-designate (1:3.0.0~b2-1) experimental; urgency=medium
+  * New upstream release for Openstack Ocata. 
+  * d/control: Cleanup dependencies.
 
-  * New upstream release.
-  * Fixed (build-)depends for this release.
-  * Rebased fix-requirements.txt.patch.
+ -- Chuck Short <zulcss@ubuntu.com>  Wed, 22 Feb 2017 09:44:20 -0500
 
- -- Thomas Goirand <zigo@debian.org>  Fri, 15 Jul 2016 19:22:30 +0200
+designate (1:4.0.0~rc1-0ubuntu1) zesty; urgency=medium
 
-designate (1:3.0.0~b1+dfsg1-1) experimental; urgency=medium
+  * d/p/fix-noop-metrics-timed-decorator.patch: Dropped no longer needed.
+  * New upstream milestone for Openstack Ocata. 
+
+ -- Chuck Short <zulcss@ubuntu.com>  Mon, 06 Feb 2017 09:29:59 -0500
+
+designate (1:4.0.0~b3-0ubuntu1) zesty; urgency=medium
 
   * New upstream release.
-  * Fixed (build-)depends for this release.
-  * Do not run dh_auto_clean, as it breaks jenkins build.
-  * Rebase fixes-keystone-authtoken.patch.
-  * Added fix-requirements.txt.patch.
-  * Disable export OSLO_PACKAGE_VERSION and use the one from
-    openstack-pkg-tools 50~.
-
- -- Thomas Goirand <zigo@debian.org>  Thu, 09 Jun 2016 10:15:24 +0200
-
-designate (1:2.0.0-2) unstable; urgency=medium
-
-  [ Ondřej Nový ]
-  * Standards-Version is 3.9.8 now (no change)
-  * d/rules: Removed UPSTREAM_GIT with default value
-  * d/copyright: Changed source URL to new one
+  * d/control: Align (Build-)Depends with upstream.
 
-  [ Thomas Goirand ]
-  * Updated Portuguese translation for debconf messages (Closes: #821242).
-  * Updated Dutch translation for debconf messages (Closes: #822968).
+ -- Chuck Short <zulcss@ubuntu.com>  Mon, 30 Jan 2017 06:41:29 -0500
 
- -- Thomas Goirand <zigo@debian.org>  Sat, 23 Apr 2016 18:47:14 +0200
+designate (1:4.0.0~b2-0ubuntu5) zesty; urgency=medium
 
-designate (1:2.0.0-1) unstable; urgency=medium
+  [ Chuck Short ]
+  * debian/control, debian/tests: Add autopgktest. 
 
-  * New upstream release.
+  [ Corey Bryant ]
+  * d/p/fix-noop-metrics-timed-decorator.patch: Cherry-pick patch from gerrit
+    to enable designate-mdns execution when monasca-statsd is not installed or
+    (LP: #1659638).
 
- -- Thomas Goirand <zigo@debian.org>  Thu, 07 Apr 2016 21:36:17 +0200
+ -- Corey Bryant <corey.bryant@canonical.com>  Fri, 27 Jan 2017 07:58:46 -0500
 
-designate (1:2.0.0~rc2-1) unstable; urgency=medium
+designate (1:4.0.0~b2-0ubuntu4) zesty; urgency=medium
 
-  * New upstream release.
-  * Uploading to unstable.
+  * d/control: Move python-monasca-statsd back to Suggests. It is optional
+    and disabled by default (see [monasca:statsd] config section).
 
- -- Thomas Goirand <zigo@debian.org>  Tue, 05 Apr 2016 11:55:27 +0200
+ -- Corey Bryant <corey.bryant@canonical.com>  Wed, 25 Jan 2017 10:59:18 -0500
 
-designate (1:2.0.0~rc1-2) experimental; urgency=medium
+designate (1:4.0.0~b2-0ubuntu3) zesty; urgency=medium
 
-  * Do not use the Keystone admin auth token to register API endpoints.
-  * Add all the rest of the services in the "designate" meta-package.
-  * Added install-missing-files.patch (because of the missing migration files).
-  * Standards-Version: 3.9.7 (no change).
+  * d/control: Move python-monasca-statsd to Depends section since it is
+    a required dependency.
 
- -- Thomas Goirand <zigo@debian.org>  Tue, 29 Mar 2016 12:52:29 +0000
+ -- Corey Bryant <corey.bryant@canonical.com>  Wed, 25 Jan 2017 08:55:26 -0500
 
-designate (1:2.0.0~rc1-1) experimental; urgency=medium
+designate (1:4.0.0~b2-0ubuntu2) zesty; urgency=medium
 
-  * New upstream release.
-  * Updated (build-)depends of oslo.config version.
+  * d/control, d/pydist-overrides: Add python-monasca-statsd as Suggests
+    for binary package as it is optional and not in main.
 
- -- Thomas Goirand <zigo@debian.org>  Tue, 22 Mar 2016 11:42:21 +0100
+ -- Corey Bryant <corey.bryant@canonical.com>  Tue, 03 Jan 2017 11:57:00 -0500
 
-designate (1:2.0.0~b3-1) experimental; urgency=medium
+designate (1:4.0.0~b2-0ubuntu1) zesty; urgency=medium
 
-  [ Thomas Goirand ]
-  * New upstream release.
-  * Fixed (build-)depends for this release.
-  * Do not use the -S option of dpkg-parsechangelog (incompatible with Trusty).
-  * Rebased config file patch.
-  * Removed skip test patch (applied upstream).
+  [ Chuck Short ]
+  * New upstream version.
+  * debian/control: Add python-monasca-statsd. 
+  * debian/patches/skip-tests.patch: Skip failing unit tests.
 
-  [ Ondřej Nový ]
-  * Fixed VCS URLs (https).
+  [ Corey Bryant ]
+  * New upstream milestone for OpenStack Ocata.
+  * d/control: Align (Build-)Depends with upstream.
 
- -- Thomas Goirand <zigo@debian.org>  Wed, 27 Jan 2016 17:55:31 +0000
+ -- Corey Bryant <corey.bryant@canonical.com>  Fri, 16 Dec 2016 12:15:59 -0500
 
-designate (1:2.0.0~b2-1) experimental; urgency=medium
+designate (1:3.0.0-0ubuntu1) yakkety; urgency=medium
 
-  * New upstream release.
-  * Fixed (build-)depends for this release.
-  * Black list unit test:
-    - PoolManagerInitTest.test_init_no_pool_targets
-  * Fixed debian/copyright ordering.
+  * New upstream release for OpenStack Newton.
 
- -- Thomas Goirand <zigo@debian.org>  Thu, 10 Dec 2015 18:03:30 +0100
+ -- Corey Bryant <corey.bryant@canonical.com>  Thu, 06 Oct 2016 10:40:22 -0400
 
-designate (1:1.0.0-3) unstable; urgency=medium
+designate (1:3.0.0~rc2-0ubuntu1) yakkety; urgency=medium
 
-  * Added q-text-as-data in the depends: of designate-api.
+  * d/control: oslo.log min version level in global-requirements is too low,
+    so set min version to upper-constraints level (LP: #1628883).
+  * New upstream release candidate for OpenStack Newton.
 
- -- Thomas Goirand <zigo@debian.org>  Tue, 03 Nov 2015 11:39:36 +0000
+ -- Corey Bryant <corey.bryant@canonical.com>  Mon, 03 Oct 2016 10:41:21 -0400
 
-designate (1:1.0.0-2) unstable; urgency=medium
+designate (1:3.0.0~rc1-0ubuntu1) yakkety; urgency=medium
 
-  * Rebuilt with openstack-pkg-tools 37 to use Keystone API v3.
+  * New upstream release candidate for OpenStack Newton (LP: #1590429).
+  * Switch unit test execution to ostestr.
 
- -- Thomas Goirand <zigo@debian.org>  Tue, 03 Nov 2015 08:18:25 +0000
+ -- James Page <james.page@ubuntu.com>  Tue, 20 Sep 2016 08:58:04 +0100
 
-designate (1:1.0.0-1) unstable; urgency=medium
+designate (1:3.0.0~b3-0ubuntu1) yakkety; urgency=medium
 
+  [ James Page ]
   * New upstream release.
-  * Uploading to unstable.
-  * Added python-pymysql as runtime dependency.
+  * Add python-os-win to (Build-)Depends.
 
- -- Thomas Goirand <zigo@debian.org>  Tue, 13 Oct 2015 15:00:14 +0200
+  [ Corey Bryant ]
+  * New upstream version.
+  * d/designate-common.install: Install designate-worker and designate-producer
+    binaries.
+  * d/designate-producer.init.in, designate-worker.init.in: Add init scripts
+    for new services.
+  * d/control: Add designate-producer and designate-worker binary packages.
 
-designate (1:1.0.0~rc2-1) experimental; urgency=medium
+  [ David Della Vecchia ]
+  * New upstream milestone for OpenStack Newton.
+  * d/control: Align (build-)depends with upstream.
 
-  * New upstream release.
-  * Added BSD license for designate/api/v2/controllers/rest.py.
-  * Added designate-zone-manager service which was missing.
+  [ Corey Bryant ]
+  * d/control: Add epoch to python-tempest.
 
- -- Thomas Goirand <zigo@debian.org>  Fri, 02 Oct 2015 14:00:40 +0200
+ -- David Della Vecchia <ddv@canonical.com>  Tue, 30 Aug 2016 11:19:21 -0400
 
-designate (1:1.0.0~rc1-1) experimental; urgency=medium
+designate (1:3.0.0~b2-0ubuntu1) yakkety; urgency=medium
 
-  * New upstream release.
-  * Fixed (build-)depends for this release.
-  * Now designate-api depends on python-openstackclient.
+  * New upstream milestone for OpenStack Newton.
+  * Align (Build-)Depends with upstream.
 
- -- Thomas Goirand <zigo@debian.org>  Fri, 25 Sep 2015 13:31:11 +0200
+ -- Corey Bryant <corey.bryant@canonical.com>  Thu, 14 Jul 2016 15:11:00 -0400
 
-designate (1:1.0.0~b3-1) experimental; urgency=medium
+designate (1:3.0.0~b1-0ubuntu1) yakkety; urgency=medium
 
-  * New upstream release.
-  * Fixed (build-)depends for this release.
+  [ James Page ]
+  * New upstream version.
+  * debian/patches/fixes-keystone-authtoken.patch: Refreshed.
+  * Align (Build-)Depends with upstream.
 
- -- Thomas Goirand <zigo@debian.org>  Wed, 09 Sep 2015 10:41:50 +0200
+  [ David Della Vecchia ]
+  * New upstream milestone for OpenStack Newton.
+  * d/control: Align (Build-)Depends with upstream.
 
-designate (1:1.0.0~b2-1) experimental; urgency=medium
+ -- David Della Vecchia <ddv@canonical.com>  Mon, 06 Jun 2016 16:55:33 -0400
 
-  * New upstream release.
-  * Fixed (build-)depends for this release.
-  * Rebase patches.
+designate (1:2.0.0-0ubuntu1) xenial; urgency=medium
+
+  * New upstream release for OpenStack Mitaka.
+
+ -- Corey Bryant <corey.bryant@canonical.com>  Thu, 07 Apr 2016 12:02:43 -0400
+
+designate (1:2.0.0~rc1-0ubuntu1) xenial; urgency=medium
+
+  * New upstream release candidate for OpenStack Mitaka.
+  * d/control: Align (Build-)Depends with upstream.
+
+ -- Corey Bryant <corey.bryant@canonical.com>  Thu, 24 Mar 2016 08:05:18 -0400
+
+designate (1:2.0.0~b3-0ubuntu2) xenial; urgency=medium
+
+  * d/man/*, d/designate-common.manpages: Add manpage stubs.
+  * d/designate-common.dirs: Dropped usr/share/designate as it is not used.
+
+ -- Corey Bryant <corey.bryant@canonical.com>  Mon, 21 Mar 2016 15:07:38 -0400
+
+designate (1:2.0.0~b3-0ubuntu1) xenial; urgency=medium
+
+  * New upstream milestone for OpenStack Mitaka.
+  * d/control: Align (Build-)Depends with upstream.
+  * d/p/fixes-keystone-authtoken.patch: Rebased.
+  * d/p/disable_pool_manager_unit_test.patch: Dropped. Fixed upstream.
+
+ -- Corey Bryant <corey.bryant@canonical.com>  Wed, 09 Mar 2016 14:56:21 -0500
+
+designate (1:2.0.0~b2-0ubuntu2) xenial; urgency=medium
+
+  * d/designate-common.install: Install config files in /etc/designate and
+    install individual /usr/bin files.
+  * d/designate-common.postinst: Add post install user/group/dir/perm config.
+  * d/rules: Install designate.conf.sample to /etc/designate/designate.conf.
+
+ -- Corey Bryant <corey.bryant@canonical.com>  Thu, 18 Feb 2016 10:36:15 -0500
+
+designate (1:2.0.0~b2-0ubuntu1) xenial; urgency=medium
+
+  * New upstream milestone for OpenStack Mitaka.
+  * d/control: Align (build-)depends wth upstream.
+  * d/p/disable_pool_manager_unit_test.patch: Cherry pick upstream patch to
+    skip test_init_no_pool_targets.
+  * d/p/skipped-tests.patch: Dropped. No longer needed.
+  * d/*: Remove debconf and dbconfig support.
+
+ -- David Della Vecchia <ddv@canonical.com>  Mon, 25 Jan 2016 10:41:58 -0500
+
+designate (1:2.0.0~b1-0ubuntu1) xenial; urgency=medium
+
+  * New upstream release for OpenStack Mitaka.
+  * d/control: Align (build-)depends with upstream.
+
+ -- Corey Bryant <corey.bryant@canonical.com>  Tue, 15 Dec 2015 13:27:23 -0500
+
+designate (1:1.0.0-0ubuntu1) wily; urgency=medium
+
+  * New upstream release for OpenStack Liberty.
+
+ -- Corey Bryant <corey.bryant@canonical.com>  Thu, 15 Oct 2015 12:39:43 -0400
+
+designate (1:1.0.0~rc2-0ubuntu1) wily; urgency=medium
+
+  * New upstream release candidate for OpenStack Liberty.
+
+ -- Corey Bryant <corey.bryant@canonical.com>  Tue, 06 Oct 2015 11:40:30 -0400
+
+designate (1:1.0.0~rc1-0ubuntu3) wily; urgency=medium
+
+  * d/control,designate-zone-manager.init.in: Add binary package an init script
+    for missing zone-manager function.
+
+ -- James Page <james.page@ubuntu.com>  Fri, 02 Oct 2015 13:23:04 +0100
+
+designate (1:1.0.0~rc1-0ubuntu2) wily; urgency=medium
+
+  * d/control: Drop python-dnspython3.
 
- -- Thomas Goirand <zigo@debian.org>  Thu, 06 Aug 2015 09:13:44 +0200
+ -- Corey Bryant <corey.bryant@canonical.com>  Tue, 29 Sep 2015 16:28:13 -0400
 
-designate (2015.1.0-2) unstable; urgency=medium
+designate (1:1.0.0~rc1-0ubuntu1) wily; urgency=medium
 
-  * Added -mdns and -pool-manager services through new .deb which were missing.
-    Thanks to Graham Hayes <graham@hayes.ie> for the report (Closes: #792034)
+  * d/watch: Update for upstream rc versioning.
+  * New upstream milestone for OpenStack Liberty.
+  * d/control: Align (build-)depends with upstream.
+
+ -- James Page <james.page@ubuntu.com>  Mon, 28 Sep 2015 10:42:26 +0100
+
+designate (1:1.0.0~b3-0ubuntu1) wily; urgency=medium
+
+  * New upstream milestone for OpenStack Liberty.
+  * d/control: Align (build-)depends with upstream.
+
+ -- Corey Bryant <corey.bryant@canonical.com>  Tue, 08 Sep 2015 15:50:31 -0400
+
+designate (1:1.0.0~b2-0ubuntu1) wily; urgency=medium
+
+  * New upstream milestone for OpenStack Liberty.
+  * d/control: Align (build-)depends with upstream.
+  * d/rules: Remove .eggs directory in override_dh_auto_clean.
+
+ -- Corey Bryant <corey.bryant@canonical.com>  Wed, 19 Aug 2015 10:02:09 -0400
+
+designate (1:1.0.0~b1-0ubuntu5) wily; urgency=medium
+
+  * d/pydist-overrides: Ignore dependency on suds-jurko, provided by
+    python-suds in Ubuntu.
+
+ -- James Page <james.page@ubuntu.com>  Wed, 05 Aug 2015 10:52:36 +0200
+
+designate (1:1.0.0~b1-0ubuntu4) wily; urgency=medium
+
+  * No change rebuild with SQLAlchemy 1.0.6.
+
+ -- James Page <james.page@ubuntu.com>  Fri, 24 Jul 2015 09:24:47 +0100
+
+designate (1:1.0.0~b1-0ubuntu3) wily; urgency=medium
+
+  [ Thomas Goirand ]
+  * Added -mdns and -pool-manager services through new .deb which were missing
+    (LP: #1473460).
   * Removed all individual debian/*.logrotate files, using only a single
     designate-common.logrotate file now.
-  * Added do-not-use-namespace-oslo.concurrency.patch.
 
- -- Thomas Goirand <zigo@debian.org>  Tue, 14 Jul 2015 19:25:17 +0200
+ -- James Page <james.page@ubuntu.com>  Thu, 16 Jul 2015 11:29:49 +0100
+
+designate (1:1.0.0~b1-0ubuntu2) wily; urgency=medium
+
+  * d/rules: Drop use of OSLO_PACKAGE_VERSION as we always build from
+    upstream release tarballs.
+
+ -- James Page <james.page@ubuntu.com>  Fri, 26 Jun 2015 14:08:49 +0100
+
+designate (1:1.0.0~b1-0ubuntu1) wily; urgency=medium
+
+  * Merge from Debian unstable.  Remaining changes:
+    - d/p/skipped-tests.patch: Skip tests that fail in the buildds due to
+      use of multicast.
+    - d/p/fix-SO_REUSEPORT-usage.patch: Cherry pick workaround for use of
+      SO_REUSEPORT socket option with older kernel versions.
+    - d/watch: Use tarballs.openstack.org for upstream releases.
+    - d/rules: Generalize exclusion of usr/etc installed files with use
+      of --fail-missing.
+  * New upstream milestone for OpenStack Liberty:
+    - d/control: Align (build-)depends with upstream.
+    - d/*: wrap-and-sort -a -t.
+    - d/p/fix-SO_REUSEPORT-usage.patch: Dropped, included upstream.
+  * d/control: Update Vcs fields for Launchpad Git repositories.
+
+ -- James Page <james.page@ubuntu.com>  Thu, 25 Jun 2015 12:06:57 +0100
 
 designate (2015.1.0-1) unstable; urgency=medium
 
@@ -801,6 +985,40 @@ designate (2015.1.0-1) unstable; urgency
 
  -- Thomas Goirand <zigo@debian.org>  Wed, 24 Dec 2014 14:43:36 +0800
 
+designate (2015.1.0-0ubuntu1.1) vivid; urgency=medium
+
+  * d/p/fix-SO_REUSEPORT-usage.patch: Cherry pick workaround for use of
+    SO_REUSEPORT socket option with older kernel versions, resolving
+    FTBFS on distro builders which use 3.2.0 kernels (LP: #1451691).
+
+ -- James Page <james.page@ubuntu.com>  Mon, 11 May 2015 12:00:25 +0100
+
+designate (2015.1.0-0ubuntu1) vivid; urgency=medium
+
+  * New upstream release for OpenStack Kilo. (LP: #1449744) 
+
+ -- Chuck Short <zulcss@ubuntu.com>  Fri, 01 May 2015 08:33:33 +0200
+
+designate (2015.1~rc1-0ubuntu1) vivid; urgency=medium
+
+  * New upstream milestone release for OpenStack Kilo:
+    - d/control: Align dependencies and versions with upstream.
+    - debian/patches/fixup-jsonschema.patch: Dropped no longer needed.
+    - debian/patches/skipped-tests.patch: Skip tests that fail
+      in the buildds.
+
+ -- Chuck Short <zulcss@ubuntu.com>  Thu, 16 Apr 2015 08:44:15 -0400
+
+designate (2015.1~b3-0ubuntu1) vivid; urgency=medium
+
+  * New upstream milestone release for OpenStack Kilo:
+    - d/control: Align dependencies and versions with upstream.
+    - d/p/fixup-jsonschema.patch: Fixup compat with jsonschema 2.3.0.
+  * d/watch: Use tarballs.openstack.org for releases.
+  * d/designate-api.init.in: Fixup name for designate-api binary.
+
+ -- James Page <james.page@ubuntu.com>  Mon, 30 Mar 2015 11:05:29 +0100
+
 designate (2014.2-3) experimental; urgency=medium
 
   * Fix upgrade from Icehouse to Juno failing because of the directive
@@ -915,3 +1133,4 @@ designate (2014.1~b3-1) experimental; ur
   * Initial release (Closes: #731406).
 
  -- Thomas Goirand <zigo@debian.org>  Thu, 05 Dec 2013 09:55:26 +0800
+
diff -pruN 1:21.0.0-1/debian/control 1:21.0.0-0ubuntu1/debian/control
--- 1:21.0.0-1/debian/control	2025-10-01 19:51:25.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/control	2025-10-01 13:47:16.000000000 +0000
@@ -1,84 +1,86 @@
 Source: designate
 Section: net
 Priority: optional
-Maintainer: Debian OpenStack <team+openstack@tracker.debian.org>
+Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
+XSBC-Original-Maintainer: PKG OpenStack <openstack-devel@lists.alioth.debian.org>
 Uploaders:
  Thomas Goirand <zigo@debian.org>,
- Michal Arbet <michal.arbet@ultimum.io>,
+ David Della Vecchia <ddv@canonical.com>,
 Build-Depends:
- debhelper-compat (= 11),
+ debhelper-compat (= 13),
  dh-python,
- openstack-pkg-tools (>= 123~),
- po-debconf,
+ openstack-pkg-tools (>= 119ubuntu1~),
  python3-all,
- python3-pbr,
+ python3-pbr (>= 3.1.1),
  python3-setuptools,
- python3-sphinx,
+ python3-sphinx (>= 2.0.0),
+ python3-sphinxcontrib.httpdomain (>= 1.3.0),
 Build-Depends-Indep:
- alembic,
- bandit,
- python3-coverage,
- python3-designateclient,
- python3-dnspython,
- python3-edgegrid,
- python3-eventlet,
- python3-fixtures,
- python3-flask,
- python3-futurist,
- python3-greenlet,
+ python3-alembic (>= 1.8.0),
+ python3-babel (>= 2.3.4),
+ python3-designateclient (>= 2.12.0),
+ python3-dnspython (>= 2.2.1),
+ python3-doc8 (>= 0.6.0),
+ python3-edgegrid (>= 1.1.1),
+ python3-eventlet (>= 0.36.0),
+ python3-fixtures (>= 3.0.0),
+ python3-flask (>= 0.10),
+ python3-futurist (>= 1.2.0),
+ python3-greenlet (>= 0.4.15),
  python3-hacking,
- python3-infoblox-client,
- python3-jinja2,
- python3-jsonschema,
- python3-kerberos,
- python3-keystoneauth1,
- python3-keystonemiddleware,
- python3-openstackdocstheme <!nodoc>,
- python3-openstacksdk,
- python3-os-api-ref <!nodoc>,
- python3-oslo.concurrency,
- python3-oslo.config,
- python3-oslo.context,
- python3-oslo.db,
- python3-oslo.i18n,
- python3-oslo.log,
- python3-oslo.messaging,
- python3-oslo.middleware,
- python3-oslo.policy,
- python3-oslo.reports,
- python3-oslo.rootwrap,
- python3-oslo.serialization,
- python3-oslo.service,
- python3-oslo.upgradecheck,
- python3-oslo.utils,
- python3-oslo.versionedobjects,
- python3-oslotest <!nocheck>,
- python3-osprofiler,
- python3-paste,
- python3-pastedeploy,
- python3-pecan,
- python3-pygments,
- python3-pymysql,
- python3-requests,
- python3-requests-mock <!nocheck>,
- python3-sphinxcontrib.blockdiag <!nodoc>,
- python3-sphinxcontrib.httpdomain <!nodoc>,
- python3-sqlalchemy,
- python3-stestr <!nocheck>,
- python3-stevedore,
- python3-tempest <!nocheck>,
- python3-tenacity,
- python3-testscenarios <!nocheck>,
- python3-testtools <!nocheck>,
- python3-tooz,
- python3-webob,
- python3-webtest <!nocheck>,
- sqlite3,
- subunit,
-Standards-Version: 4.1.3
-Vcs-Browser: https://salsa.debian.org/openstack-team/services/designate
-Vcs-Git: https://salsa.debian.org/openstack-team/services/designate.git
-Homepage: https://github.com/openstack/designate
+ python3-jinja2 (>= 2.10),
+ python3-jsonschema (>= 3.2.0),
+ python3-keystoneauth1 (>= 3.4.0),
+ python3-keystonemiddleware (>= 4.17.0),
+ python3-mock (>= 2.0.0),
+ python3-neutronclient (>= 1:6.7.0),
+ python3-openstackdocstheme (>= 2.2.0),
+ python3-openstacksdk (>= 0.103.0),
+ python3-os-api-ref (>= 1.4.0),
+ python3-os-testr (>= 1.0.0),
+ python3-oslo.concurrency (>= 4.2.0),
+ python3-oslo.config (>= 1:6.8.0),
+ python3-oslo.context (>= 1:4.0.0),
+ python3-oslo.db (>= 8.3.0),
+ python3-oslo.i18n (>= 3.20.0),
+ python3-oslo.log (>= 4.3.0),
+ python3-oslo.messaging (>= 14.1.0),
+ python3-oslo.middleware (>= 3.31.0),
+ python3-oslo.policy (>= 4.5.0),
+ python3-oslo.reports (>= 1.18.0),
+ python3-oslo.rootwrap (>= 5.15.0),
+ python3-oslo.serialization (>= 2.25.0),
+ python3-oslo.service (>= 1.31.0),
+ python3-oslo.upgradecheck (>= 1.3.0),
+ python3-oslo.utils (>= 4.7.0),
+ python3-oslo.versionedobjects (>= 1.31.2),
+ python3-oslotest (>= 1:3.2.0),
+ python3-osprofiler (>= 3.4.0),
+ python3-paste (>= 2.0.2),
+ python3-pastedeploy (>= 1.5.0),
+ python3-pecan (>= 1.0.0),
+ python3-pygments (>= 2.2.0),
+ python3-pymemcache (>= 1.2.9),
+ python3-pymysql (>= 0.8.0),
+ python3-requests (>= 2.23.0),
+ python3-requests-mock (>= 1.2.0),
+ python3-sqlalchemy (>= 1.4.41),
+ python3-stestr (>= 2.0.0),
+ python3-stevedore (>= 1:1.20.0),
+ python3-suds (>= 0.6),
+ python3-tempest (>= 1:21.0.0),
+ python3-tenacity (>= 6.0.0),
+ python3-testrepository (>= 0.0.18),
+ python3-testscenarios (>= 0.4),
+ python3-testtools (>= 2.2.0),
+ python3-tooz (>= 1.58.0),
+ python3-webob (>= 1:1.7.1),
+ python3-webtest (>= 2.0.27),
+ python3-werkzeug (>= 0.9),
+ python3-zake (>= 0.1.6),
+Standards-Version: 4.6.1
+Vcs-Git: https://git.launchpad.net/~ubuntu-openstack-dev/ubuntu/+source/designate
+Homepage: https://opendev.org/openstack/designate
 
 Package: designate
 Architecture: all
@@ -86,9 +88,7 @@ Depends:
  designate-agent (= ${binary:Version}),
  designate-api (= ${binary:Version}),
  designate-central (= ${binary:Version}),
- designate-common (= ${binary:Version}),
  ${misc:Depends},
- ${python3:Depends},
 Description: OpenStack DNS as a Service - metapackage
  Designate provides DNSaaS services for OpenStack. It provides a multi-tenant
  REST API for domain & record management. It is Integrated with Keystone for
@@ -101,10 +101,8 @@ Description: OpenStack DNS as a Service
 Package: designate-agent
 Architecture: all
 Depends:
- designate-common (= ${binary:Version}),
  python3-designate (= ${binary:Version}),
  ${misc:Depends},
- ${python3:Depends},
 Description: OpenStack DNS as a Service - agent
  Designate provides DNSaaS services for OpenStack. It provides a multi-tenant
  REST API for domain & record management. It is Integrated with Keystone for
@@ -118,16 +116,8 @@ Package: designate-api
 Architecture: all
 Depends:
  adduser,
- debconf,
- designate-common (= ${binary:Version}),
  python3-designate (= ${binary:Version}),
- python3-keystoneclient,
- python3-openstackclient,
- python3-pastescript,
- q-text-as-data,
- uwsgi-plugin-python3,
  ${misc:Depends},
- ${python3:Depends},
 Description: OpenStack DNS as a Service - API server
  Designate provides DNSaaS services for OpenStack. It provides a multi-tenant
  REST API for domain & record management. It is Integrated with Keystone for
@@ -135,18 +125,13 @@ Description: OpenStack DNS as a Service
  Neutron notifications (for auto-generated records). Designate supports
  PowerDNS and Bind9 out of the box.
  .
- This package provides the REST API server, accepting HTTP requests, validating
- authentication tokens with Keystone and passing them to the Designate Central
- service over AMQP. Multiple versions of the API can be hosted, as well as API
- extensions, allowing for pluggable extensions to the core API.
+ This package provides the REST API server.
 
 Package: designate-central
 Architecture: all
 Depends:
- designate-common (= ${binary:Version}),
  python3-designate (= ${binary:Version}),
  ${misc:Depends},
- ${python3:Depends},
 Description: OpenStack DNS as a Service - central daemon
  Designate provides DNSaaS services for OpenStack. It provides a multi-tenant
  REST API for domain & record management. It is Integrated with Keystone for
@@ -154,19 +139,14 @@ Description: OpenStack DNS as a Service
  Neutron notifications (for auto-generated records). Designate supports
  PowerDNS and Bind9 out of the box.
  .
- This package provides the central daemon. It is the service that handles RPC
- requests via the MQ, it coordinates the persistent storage of data and applies
- business logic to data from the API.
+ This package provides the central daemon.
 
 Package: designate-common
 Architecture: all
 Depends:
  adduser,
- dbconfig-common,
- python3-designate (= ${binary:Version}),
  sqlite3,
  ${misc:Depends},
- ${python3:Depends},
 Description: OpenStack DNS as a Service - common files
  Designate provides DNSaaS services for OpenStack. It provides a multi-tenant
  REST API for domain & record management. It is Integrated with Keystone for
@@ -174,15 +154,12 @@ Description: OpenStack DNS as a Service
  Neutron notifications (for auto-generated records). Designate supports
  PowerDNS and Bind9 out of the box.
  .
- This package contains common files.
+ This package provides common files.
 
 Package: designate-doc
-Build-Profiles: <!nodoc>
 Section: doc
 Architecture: all
 Depends:
- libjs-bootstrap5,
- libjs-jquery,
  ${misc:Depends},
  ${sphinxdoc:Depends},
 Description: OpenStack DNS as a Service - doc
@@ -197,10 +174,8 @@ Description: OpenStack DNS as a Service
 Package: designate-mdns
 Architecture: all
 Depends:
- designate-common (= ${binary:Version}),
  python3-designate (= ${binary:Version}),
  ${misc:Depends},
- ${python3:Depends},
 Description: OpenStack DNS as a Service - mdns
  Designate provides DNSaaS services for OpenStack. It provides a multi-tenant
  REST API for domain & record management. It is Integrated with Keystone for
@@ -208,20 +183,13 @@ Description: OpenStack DNS as a Service
  Neutron notifications (for auto-generated records). Designate supports
  PowerDNS and Bind9 out of the box.
  .
- This package provides the mini-dns service. It is the service that sends DNS
- NOTIFY and answers zone transfer (AXFR) requests. This allows Designate to
- integrate with any DNS server that supports these very standard methods of
- communicating. designate-mdns also encapsulates all other forms of DNS
- protocol that Designate performs. For example, sending SOA queries to check
- that a change is live.
+ This package provides the mdns service.
 
 Package: designate-pool-manager
 Architecture: all
 Depends:
- designate-common (= ${binary:Version}),
  python3-designate (= ${binary:Version}),
  ${misc:Depends},
- ${python3:Depends},
 Description: OpenStack DNS as a Service - pool manager
  Designate provides DNSaaS services for OpenStack. It provides a multi-tenant
  REST API for domain & record management. It is Integrated with Keystone for
@@ -234,10 +202,8 @@ Description: OpenStack DNS as a Service
 Package: designate-producer
 Architecture: all
 Depends:
- designate-common (= ${binary:Version}),
  python3-designate (= ${binary:Version}),
  ${misc:Depends},
- ${python3:Depends},
 Description: OpenStack DNS as a Service - producer
  Designate provides DNSaaS services for OpenStack. It provides a multi-tenant
  REST API for domain & record management. It is Integrated with Keystone for
@@ -245,27 +211,13 @@ Description: OpenStack DNS as a Service
  Neutron notifications (for auto-generated records). Designate supports
  PowerDNS and Bind9 out of the box.
  .
- This package provides the producer service. It is a service that handles the
- invocation of long-running and potentially large jobs. Producer processes
- start work for an automatically assigned shard of the zones Designate manages.
- Shards are allocated based on the first three characters of the zone ID (a
- UUID field). The number of shards under management of a single producer
- process is equal to the total number of shards divided by the number of
- producer processes. This means the more producer processes are started, the
- less work is created at any one time.
- .
- The current implemented tasks in producer include emitting dns.zone.exists
- events for Ceilometer, purging deleted zones from database, polling secondary
- zones at their refresh intervals, generating delayed NOTIFY transactions, and
- invoking a periodic recovery of zones in an error state.
+ This package provides the producer service.
 
 Package: designate-sink
 Architecture: all
 Depends:
- designate-common (= ${binary:Version}),
  python3-designate (= ${binary:Version}),
  ${misc:Depends},
- ${python3:Depends},
 Description: OpenStack DNS as a Service - sink
  Designate provides DNSaaS services for OpenStack. It provides a multi-tenant
  REST API for domain & record management. It is Integrated with Keystone for
@@ -273,22 +225,13 @@ Description: OpenStack DNS as a Service
  Neutron notifications (for auto-generated records). Designate supports
  PowerDNS and Bind9 out of the box.
  .
- This package provides the sink service. It is an optional service which
- listens for event Notifications, such as compute.instance.create.end, handlers
- are available for Nova and Neutron. Notification events can then be used to
- trigger record creation & deletion.
- .
- The current sink implementations generate simple forward lookup A records,
- using a format specified in handler-nova configuration. Any field in the event
- notification can be used to generate a record.
+ This package provides the sink service.
 
 Package: designate-worker
 Architecture: all
 Depends:
- designate-common (= ${binary:Version}),
  python3-designate (= ${binary:Version}),
  ${misc:Depends},
- ${python3:Depends},
 Description: OpenStack DNS as a Service - worker
  Designate provides DNSaaS services for OpenStack. It provides a multi-tenant
  REST API for domain & record management. It is Integrated with Keystone for
@@ -296,22 +239,13 @@ Description: OpenStack DNS as a Service
  Neutron notifications (for auto-generated records). Designate supports
  PowerDNS and Bind9 out of the box.
  .
- This package provides the worker service. It is a service that manages state
- of the DNS servers Designate manages, and any other long-running or otherwise
- complicated piece of work. The worker reads configuration for DNS servers from
- the Designate database, which is populated via the pools.yaml file. These DNS
- server backends are loaded into the worker so it understands how to create,
- update, and delete zones and recordsets on each DNS server. The Worker is
- fully aware of DNS Server 'Pools', so a single worker process can manage many
- pools of DNS servers.
+ This package provides the worker service.
 
 Package: designate-zone-manager
 Architecture: all
 Depends:
- designate-common (= ${binary:Version}),
  python3-designate (= ${binary:Version}),
  ${misc:Depends},
- ${python3:Depends},
 Description: OpenStack DNS as a Service - zone manager
  Designate provides DNSaaS services for OpenStack. It provides a multi-tenant
  REST API for domain & record management. It is Integrated with Keystone for
@@ -325,56 +259,62 @@ Package: python3-designate
 Section: python
 Architecture: all
 Depends:
- alembic,
- python3-designateclient,
- python3-dnspython,
- python3-eventlet,
- python3-flask,
- python3-futurist,
- python3-greenlet,
- python3-infoblox-client,
- python3-jinja2,
- python3-jsonschema,
- python3-kerberos,
- python3-keystoneauth1,
- python3-keystonemiddleware,
- python3-mysqldb,
- python3-openstacksdk,
- python3-oslo.concurrency,
- python3-oslo.config,
- python3-oslo.context,
- python3-oslo.db,
- python3-oslo.i18n,
- python3-oslo.log,
- python3-oslo.messaging,
- python3-oslo.middleware,
- python3-oslo.policy,
- python3-oslo.reports,
- python3-oslo.rootwrap,
- python3-oslo.serialization,
- python3-oslo.service,
- python3-oslo.upgradecheck,
- python3-oslo.utils,
- python3-oslo.versionedobjects,
- python3-osprofiler,
- python3-paste,
- python3-pastedeploy,
- python3-pbr,
- python3-pecan,
- python3-pymysql,
- python3-requests,
- python3-sqlalchemy,
- python3-stevedore,
- python3-tenacity,
- python3-tooz,
- python3-webob,
- ${misc:Depends},
- ${python3:Depends},
-Description: OpenStack DNS as a Service - Python libs
+ designate-common (= ${binary:Version}),
+ python3-alembic (>= 1.8.0),
+ python3-babel (>= 2.3.4),
+ python3-designateclient (>= 2.12.0),
+ python3-dnspython (>= 2.2.1),
+ python3-eventlet (>= 0.36.0),
+ python3-flask (>= 0.10),
+ python3-futurist (>= 1.2.0),
+ python3-greenlet (>= 0.4.15),
+ python3-jinja2 (>= 2.10),
+ python3-jsonschema (>= 3.2.0),
+ python3-keystoneauth1 (>= 3.4.0),
+ python3-keystonemiddleware (>= 4.17.0),
+ python3-neutronclient (>= 1:6.7.0),
+ python3-openstacksdk (>= 0.103.0),
+ python3-oslo.concurrency (>= 4.2.0),
+ python3-oslo.config (>= 1:6.8.0),
+ python3-oslo.context (>= 1:4.0.0),
+ python3-oslo.db (>= 8.3.0),
+ python3-oslo.i18n (>= 3.20.0),
+ python3-oslo.log (>= 4.3.0),
+ python3-oslo.messaging (>= 14.1.0),
+ python3-oslo.middleware (>= 3.31.0),
+ python3-oslo.policy (>= 4.5.0),
+ python3-oslo.reports (>= 1.18.0),
+ python3-oslo.rootwrap (>= 5.15.0),
+ python3-oslo.serialization (>= 2.25.0),
+ python3-oslo.service (>= 1.31.0),
+ python3-oslo.upgradecheck (>= 1.3.0),
+ python3-oslo.utils (>= 4.7.0),
+ python3-oslo.versionedobjects (>= 1.31.2),
+ python3-osprofiler (>= 3.4.0),
+ python3-paste (>= 2.0.2),
+ python3-pastedeploy (>= 1.5.0),
+ python3-pbr (>= 3.1.1),
+ python3-pecan (>= 1.0.0),
+ python3-requests (>= 2.23.0),
+ python3-sqlalchemy (>= 1.4.41),
+ python3-stevedore (>= 1:1.20.0),
+ python3-suds (>= 0.6),
+ python3-tenacity (>= 6.0.0),
+ python3-tooz (>= 1.58.0),
+ python3-webob (>= 1:1.7.1),
+ python3-werkzeug (>= 0.9),
+ ${misc:Depends},
+ ${python3:Depends},
+Suggests:
+ python3-edgegrid (>= 1.1.1),
+Provides:
+ ${python3:Provides},
+XB-Python-Version: ${python3:Versions}
+Description: OpenStack DNS as a Service - Python 3 libs
  Designate provides DNSaaS services for OpenStack. It provides a multi-tenant
  REST API for domain & record management. It is Integrated with Keystone for
  authentication, and provides a framework in place to integrate with Nova and
  Neutron notifications (for auto-generated records). Designate supports
  PowerDNS and Bind9 out of the box.
  .
- This package provides the Python libraries.
+ This package provides the Python 3 libraries.
diff -pruN 1:21.0.0-1/debian/copyright 1:21.0.0-0ubuntu1/debian/copyright
--- 1:21.0.0-1/debian/copyright	2025-10-01 19:51:25.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/copyright	2025-10-01 13:47:16.000000000 +0000
@@ -1,46 +1,17 @@
 Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
 Upstream-Name: designate
 Upstream-Contact: OpenStack Development Mailing List <openstack-dev@lists.openstack.org>
-Source: https://github.com/openstack/designate.git
+Source: git://github.com/stackforge/designate.git
 
 Files: *
-Copyright: 2013 Designate Developers
-           2012 Bouvet ASA
-           2016 Cloudbase Solutions Srl
-           2012 Cloudscaling
-           2014 Cloudwatt
-           2015 Dyn Inc.
-           2014 eBay Inc.
-           2013 eNovance SAS <licensing@enovance.com>
-           2015, 2017 Fujitsu Ltd.
-           2012-2016 Hewlett-Packard Development Company, L.P.
-           2012-2016 Hewlett Packard Enterprise Development Company, L.P.
-           2015 Infoblox Inc.
-           2011, 2012 Justin Santa Barbara
-           2012 Managed I.T.
-           2015 NEC Corporation
-           2015 NetEase, Inc.
-           2010-2012 OpenStack Foundation
-           2014, 2015 Rackspace Hosting
-           2014-2016 Rackspace Inc.
-           2013-2016 Red Hat, Inc.
-           2017 SAP SE
-           2010 United States Government
-           2015 Zetta.IO.
-           2013 IBM Corp.
+Copyright: (c) 2013 Designate Developers
 License: Apache-2.0
 
 Files: debian/*
-Copyright: (c) 2013 Hewlett-Packard Development Company, L.P.
-           (c) 2013-2024, Thomas Goirand <zigo@debian.org>
-           (c) 2019, Michal Arbet <michal.arbet@ultimum.io>
-           (c) 2024, Axel Jacquet <axel.jacquet@infomaniak.com>
+Copyright: (c) 2013, Hewlett-Packard Development Company, L.P.
+           (c) 2013, Thomas Goirand <zigo@debian.org>
 License: Apache-2.0
 
-Files: designate/api/v2/controllers/rest.py
-Copyright: 2011 Jonathan LaCour
-License: BSD-3-clause
-
 License: Apache-2.0
  Licensed under the Apache License, Version 2.0 (the "License"); you may
  not use this file except in compliance with the License. You may obtain
@@ -56,27 +27,3 @@ License: Apache-2.0
  .
  On Debian-based systems the full text of the Apache version 2.0 license
  can be found in `/usr/share/common-licenses/Apache-2.0'.
-
-License: BSD-3-clause
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions are met:
- .
-  * Redistributions of source code must retain the above copyright
-    notice, this list of conditions and the following disclaimer.
-  * Redistributions in binary form must reproduce the above copyright
-    notice, this list of conditions and the following disclaimer in the
-    documentation and/or other materials provided with the distribution.
-  * Neither the name of the <organization> nor the
-    names of its contributors may be used to endorse or promote products
-    derived from this software without specific prior written permission.
- .
- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
- DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
- SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff -pruN 1:21.0.0-1/debian/designate-agent.init.in 1:21.0.0-0ubuntu1/debian/designate-agent.init.in
--- 1:21.0.0-1/debian/designate-agent.init.in	2025-10-01 19:51:25.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/designate-agent.init.in	2025-10-01 13:47:16.000000000 +0000
@@ -13,7 +13,6 @@
 
 # Author: Thomas Goirand <zigo@debian.org>
 
-DESC="OpenStack Designate DNSaaS Agent (designate-agent)"
+DESC="OpenStack Designate DNSaaS Agent"
 PROJECT_NAME=designate
 NAME=${PROJECT_NAME}-agent
-export OS_OSLO_MESSAGING_RABBIT_PROCESSNAME=designate-agent
diff -pruN 1:21.0.0-1/debian/designate-api-uwsgi.ini 1:21.0.0-0ubuntu1/debian/designate-api-uwsgi.ini
--- 1:21.0.0-1/debian/designate-api-uwsgi.ini	2025-10-01 19:51:25.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/designate-api-uwsgi.ini	1970-01-01 00:00:00.000000000 +0000
@@ -1,86 +0,0 @@
-[uwsgi]
-############################
-### Generic UWSGI config ###
-############################
-
-# Override the default size for headers from the 4k default.
-buffer-size = 65535
-
-# This avoids error 104: "Connection reset by peer"
-rem-header = Content-Length
-
-# This is running standalone
-master = true
-
-# uwsgi recommends this to prevent thundering herd on accept.
-thunder-lock = true
-
-plugins = python3
-#,gevent_python3
-
-#gevent = 100
-
-# This ensures that file descriptors aren't shared between the WSGI application processes.
-lazy-apps = true
-
-# Log from the wsgi application: needs python3-pastescript as runtime depends.
-paste-logger = true
-
-# automatically kill workers if master dies
-no-orphans = true
-
-# exit instead of brutal reload on SIGTERM
-die-on-term = true
-
-# Avoid memcached connections to remain opened
-close-on-exec = true
-close-on-exec2 = true
-
-##########################
-### Performance tuning ###
-##########################
-# Threads and processes
-enable-threads = true
-
-# For max perf, set this to number of core*2
-processes = 8
-
-# This was benchmarked as a good value
-threads = 1
-
-# This is the number of sockets in the queue.
-# It improves a lot performances. This is comparable
-# to the Apache ServerLimit/MaxClients option.
-listen = 100
-
-##################################
-### OpenStack service specific ###
-##################################
-env = OS_OSLO_MESSAGING_RABBIT__PROCESSNAME=designate-api
-
-# This is needed, otherwise connections stay open
-add-header = Connection: close
-
-# Important stuff...
-paste = config:/etc/designate/api-paste.ini
-
-# This is the standard port for the WSGI application, listening on all available IPs
-logto = /var/log/designate/designate-api.log
-name = designate-api
-uid = designate
-gid = designate
-chdir = /var/lib/designate
-module = designate.wsgi.api:application
-
-# This is controled by the init script using the --http-socket
-# or using the --https thing. https will be activated if a file
-# /etc/designate/ssl/private/*.pem is found. In both case, port 9292
-# on all IPs will be used.
-# The partern to search for the private key file is:
-# find /etc/designate/ssl/private -type f -iname '*.pem' | head -n 1
-# and for the certificate:
-# find /etc/designate/ssl/private -type f -iname '*.crt' | head -n 1
-# just drop files there and restart the daemon, and you'll have
-# SSL up and running.
-#http-socket = :9001
-#https-socket = 0.0.0.0:9001,foobar.crt,foobar.key
diff -pruN 1:21.0.0-1/debian/designate-api.config.in 1:21.0.0-0ubuntu1/debian/designate-api.config.in
--- 1:21.0.0-1/debian/designate-api.config.in	2025-10-01 19:51:25.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/designate-api.config.in	1970-01-01 00:00:00.000000000 +0000
@@ -1,11 +0,0 @@
-#!/bin/sh
-
-set -e
-
-. /usr/share/debconf/confmodule
-
-#PKGOS-INCLUDE#
-
-pkgos_register_endpoint_config designate
-
-exit 0
diff -pruN 1:21.0.0-1/debian/designate-api.init.in 1:21.0.0-0ubuntu1/debian/designate-api.init.in
--- 1:21.0.0-1/debian/designate-api.init.in	2025-10-01 19:51:25.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/designate-api.init.in	2025-10-01 13:47:16.000000000 +0000
@@ -13,11 +13,6 @@
 
 # Author: Thomas Goirand <zigo@debian.org>
 
-DESC="OpenStack Designate DNSaaS API (designate-api)"
+DESC="OpenStack Designate DNSaaS API"
 PROJECT_NAME=designate
 NAME=${PROJECT_NAME}-api
-UWSGI_PORT=9001
-UWSGI_INI_PATH=/etc/designate/designate-api-uwsgi.ini
-UWSGI_INI_APP=/usr/lib/python3/dist-packages/designate/wsgi/api.py
-export OS_OSLO_MESSAGING_RABBIT_PROCESSNAME=designate-api
-
diff -pruN 1:21.0.0-1/debian/designate-api.install 1:21.0.0-0ubuntu1/debian/designate-api.install
--- 1:21.0.0-1/debian/designate-api.install	2025-10-01 19:51:25.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/designate-api.install	1970-01-01 00:00:00.000000000 +0000
@@ -1 +0,0 @@
-debian/designate-api-uwsgi.ini	/etc/designate
diff -pruN 1:21.0.0-1/debian/designate-api.postinst.in 1:21.0.0-0ubuntu1/debian/designate-api.postinst.in
--- 1:21.0.0-1/debian/designate-api.postinst.in	2025-10-01 19:51:25.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/designate-api.postinst.in	1970-01-01 00:00:00.000000000 +0000
@@ -1,15 +0,0 @@
-#!/bin/sh
-
-set -e
-
-#PKGOS-INCLUDE#
-
-if [ "$1" = "configure" ]  || [ "$1" = "reconfigure" ] ; then
-	. /usr/share/debconf/confmodule
-	pkgos_register_endpoint_postinst designate designate dns "Designate DNS Service" 9001 "/"
-	db_stop
-fi
-
-#DEBHELPER#
-
-exit 0
diff -pruN 1:21.0.0-1/debian/designate-central.init.in 1:21.0.0-0ubuntu1/debian/designate-central.init.in
--- 1:21.0.0-1/debian/designate-central.init.in	2025-10-01 19:51:25.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/designate-central.init.in	2025-10-01 13:47:16.000000000 +0000
@@ -13,7 +13,6 @@
 
 # Author: Thomas Goirand <zigo@debian.org>
 
-DESC="OpenStack Designate DNSaaS central (designate-central)"
+DESC="OpenStack Designate DNSaaS central"
 PROJECT_NAME=designate
 NAME=${PROJECT_NAME}-central
-export OS_OSLO_MESSAGING_RABBIT__PROCESSNAME=designate-central
diff -pruN 1:21.0.0-1/debian/designate-common.config.in 1:21.0.0-0ubuntu1/debian/designate-common.config.in
--- 1:21.0.0-1/debian/designate-common.config.in	2025-10-01 19:51:25.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/designate-common.config.in	1970-01-01 00:00:00.000000000 +0000
@@ -1,15 +0,0 @@
-#!/bin/sh
-
-set -e
-
-. /usr/share/debconf/confmodule
-
-CONF=/etc/designate/designate.conf
-
-#PKGOS-INCLUDE#
-
-pkgos_dbc_read_conf -pkg designate-common ${CONF} storage:sqlalchemy connection designate $@
-pkgos_rabbit_read_conf ${CONF} DEFAULT designate
-pkgos_read_admin_creds ${CONF} keystone_authtoken designate
-
-exit 0
diff -pruN 1:21.0.0-1/debian/designate-common.dirs 1:21.0.0-0ubuntu1/debian/designate-common.dirs
--- 1:21.0.0-1/debian/designate-common.dirs	1970-01-01 00:00:00.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/designate-common.dirs	2025-10-01 13:47:16.000000000 +0000
@@ -0,0 +1,4 @@
+etc/designate
+etc/designate/conf.d
+var/lib/designate
+var/log/designate
diff -pruN 1:21.0.0-1/debian/designate-common.install 1:21.0.0-0ubuntu1/debian/designate-common.install
--- 1:21.0.0-1/debian/designate-common.install	2025-10-01 19:51:25.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/designate-common.install	2025-10-01 13:47:16.000000000 +0000
@@ -1,3 +1,6 @@
-debian/designate_sudoers	/etc/sudoers.d/
-etc/designate/api-paste.ini	/usr/share/designate-common
-usr/bin/*
+debian/designate_sudoers etc/sudoers.d/
+etc/designate/api-paste.ini
+etc/designate/designate.conf
+etc/designate/policy.json.sample
+etc/designate/rootwrap.conf
+etc/designate/rootwrap.d
diff -pruN 1:21.0.0-1/debian/designate-common.manpages 1:21.0.0-0ubuntu1/debian/designate-common.manpages
--- 1:21.0.0-1/debian/designate-common.manpages	1970-01-01 00:00:00.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/designate-common.manpages	2025-10-01 13:47:16.000000000 +0000
@@ -0,0 +1,9 @@
+debian/man/designate-agent.8
+debian/man/designate-api.8
+debian/man/designate-central.8
+debian/man/designate-manage.8
+debian/man/designate-mdns.8
+debian/man/designate-pool-manager.8
+debian/man/designate-rootwrap.8
+debian/man/designate-sink.8
+debian/man/designate-zone-manager.8
diff -pruN 1:21.0.0-1/debian/designate-common.postinst 1:21.0.0-0ubuntu1/debian/designate-common.postinst
--- 1:21.0.0-1/debian/designate-common.postinst	1970-01-01 00:00:00.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/designate-common.postinst	2025-10-01 13:47:16.000000000 +0000
@@ -0,0 +1,24 @@
+#!/bin/sh -e
+
+if [ "$1" = "configure" ]; then
+    if ! getent group designate > /dev/null 2>&1; then
+        addgroup --system designate >/dev/null
+    fi
+
+    if ! getent passwd designate > /dev/null 2>&1; then
+        adduser --system --home /var/lib/designate --ingroup designate --no-create-home --shell /usr/sbin/nologin designate
+    fi
+
+    chown designate:adm /var/log/designate
+    chmod 0750 /var/log/designate
+
+    find /etc/designate -exec chown root:designate "{}" +
+    find /etc/designate -type f -exec chmod 0640 "{}" + -o -type d -exec chmod 0750 "{}" +
+
+    find /etc/designate/rootwrap.d -exec chown root:root "{}" +
+    find /etc/designate/rootwrap.d -type f -exec chmod 0644 "{}" + -o -type d -exec chmod 0755 "{}" +
+
+    find /var/lib/designate -exec chown designate:designate "{}" +
+    find /var/lib/designate -type f -exec chmod 0640 "{}" + -o -type d -exec chmod 0750 "{}" +
+fi
+#DEBHELPER#
diff -pruN 1:21.0.0-1/debian/designate-common.postinst.in 1:21.0.0-0ubuntu1/debian/designate-common.postinst.in
--- 1:21.0.0-1/debian/designate-common.postinst.in	2025-10-01 19:51:25.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/designate-common.postinst.in	1970-01-01 00:00:00.000000000 +0000
@@ -1,43 +0,0 @@
-#!/bin/sh
-
-set -e
-
-#PKGOS-INCLUDE#
-
-CONF=/etc/designate/designate.conf
-
-if [ "${1}" = "configure" ] ; then
-	. /usr/share/debconf/confmodule
-	. /usr/share/dbconfig-common/dpkg/postinst
-
-	pkgos_var_user_group designate
-	pkgos_write_new_conf designate designate.conf
-	if [ -r /etc/designate/policy.json ] ; then
-		mv /etc/designate/policy.json /etc/designate/disabled.policy.json.old
-	fi
-	pkgos_write_new_conf designate api-paste.ini
-
-	# Fix old directive from Icehouse to Juno (otherwise upgrade may fail: #769765)
-	if [ -r "${CONF}" ] ; then
-		sed -i -e 's/^[ \t]*database_connection[ \t]*=/connection =/' ${CONF}
-	fi
-
-	db_get designate/configure_db
-	if [ "$RET" = "true" ] ; then
-		 pkgos_dbc_postinst ${CONF} storage:sqlalchemy connection designate $@
-	fi
-	pkgos_rabbit_write_conf ${CONF} DEFAULT designate
-	pkgos_write_admin_creds ${CONF} keystone_authtoken designate
-
-	db_get designate/configure_db
-	if [ "$RET" = "true" ] ; then
-		echo "Now doing 'designate-manage database sync': this may take a while..."
-		#su -s /bin/sh -c 'cd /tmp && designate-manage database-init' designate || true
-		su -s /bin/sh -c 'cd /tmp && designate-manage database sync' designate
-	fi
-	db_stop
-fi
-
-#DEBHELPER#
-
-exit 0
diff -pruN 1:21.0.0-1/debian/designate-common.postrm.in 1:21.0.0-0ubuntu1/debian/designate-common.postrm.in
--- 1:21.0.0-1/debian/designate-common.postrm.in	2025-10-01 19:51:25.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/designate-common.postrm.in	1970-01-01 00:00:00.000000000 +0000
@@ -1,16 +0,0 @@
-#!/bin/sh
-
-set -e
-
-#PKGOS-INCLUDE#
-
-if [ "${1}" = "purge" ] ; then
-	pkgos_dbc_postrm designate designate-common "$@"
-
-	rm -rf /var/lib/designate /var/log/designate || true
-	rm -f /etc/designate/designate.conf
-	rm -f /etc/designate/api-paste.ini /etc/designate/policy.json
-	[ -d /etc/designate ] && rmdir --ignore-fail-on-non-empty /etc/designate || true
-fi
-
-#DEBHELPER#
diff -pruN 1:21.0.0-1/debian/designate-common.prerm 1:21.0.0-0ubuntu1/debian/designate-common.prerm
--- 1:21.0.0-1/debian/designate-common.prerm	2025-10-01 19:51:25.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/designate-common.prerm	1970-01-01 00:00:00.000000000 +0000
@@ -1,17 +0,0 @@
-#!/bin/sh
-
-set -e
-
-if [ "${1}" = "remove" ] && [ -r /usr/share/debconf/confmodule ] && [ -r /usr/share/dbconfig-common/dpkg/prerm ] ; then
-	. /usr/share/debconf/confmodule
-
-	db_get designate/configure_db
-	if [ "$RET" = "true" ]; then
-		. /usr/share/dbconfig-common/dpkg/prerm
-		dbc_go ${DPKG_MAINTSCRIPT_PACKAGE} $@
-	fi
-fi
-
-#DEBHELPER#
-
-exit 0
diff -pruN 1:21.0.0-1/debian/designate-doc.links 1:21.0.0-0ubuntu1/debian/designate-doc.links
--- 1:21.0.0-1/debian/designate-doc.links	2025-10-01 19:51:25.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/designate-doc.links	1970-01-01 00:00:00.000000000 +0000
@@ -1,4 +0,0 @@
-usr/share/javascript/bootstrap/js/bootstrap.js usr/share/doc/designate-doc/html/_static/js/bootstrap.js
-usr/share/javascript/bootstrap/js/bootstrap.min.js usr/share/doc/designate-doc/html/_static/js/bootstrap.min.js
-usr/share/javascript/jquery/jquery.js usr/share/doc/designate-doc/html/_static/js/jquery-3.2.1.js
-usr/share/javascript/jquery/jquery.min.js usr/share/doc/designate-doc/html/_static/js/jquery-3.2.1.min.js
diff -pruN 1:21.0.0-1/debian/designate-mdns.init.in 1:21.0.0-0ubuntu1/debian/designate-mdns.init.in
--- 1:21.0.0-1/debian/designate-mdns.init.in	2025-10-01 19:51:25.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/designate-mdns.init.in	2025-10-01 13:47:16.000000000 +0000
@@ -13,7 +13,6 @@
 
 # Author: Thomas Goirand <zigo@debian.org>
 
-DESC="OpenStack Designate DNSaaS minidns (designate-mdns)"
+DESC="OpenStack Designate DNSaaS mdns"
 PROJECT_NAME=designate
 NAME=${PROJECT_NAME}-mdns
-export OS_OSLO_MESSAGING_RABBIT__PROCESSNAME=designate-mdns
diff -pruN 1:21.0.0-1/debian/designate-pool-manager.init.in 1:21.0.0-0ubuntu1/debian/designate-pool-manager.init.in
--- 1:21.0.0-1/debian/designate-pool-manager.init.in	2025-10-01 19:51:25.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/designate-pool-manager.init.in	2025-10-01 13:47:16.000000000 +0000
@@ -13,7 +13,6 @@
 
 # Author: Thomas Goirand <zigo@debian.org>
 
-DESC="OpenStack Designate DNSaaS pool manager (designate-pool-manager)"
+DESC="OpenStack Designate DNSaaS pool manager"
 PROJECT_NAME=designate
 NAME=${PROJECT_NAME}-pool-manager
-export OS_OSLO_MESSAGING_RABBIT__PROCESSNAME=designate-pool-manager
diff -pruN 1:21.0.0-1/debian/designate-producer.init.in 1:21.0.0-0ubuntu1/debian/designate-producer.init.in
--- 1:21.0.0-1/debian/designate-producer.init.in	2025-10-01 19:51:25.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/designate-producer.init.in	2025-10-01 13:47:16.000000000 +0000
@@ -13,7 +13,6 @@
 
 # Author: Corey Bryant <corey.bryant@ubuntu.com>
 
-DESC="OpenStack Designate DNSaaS producer (designate-producer)"
+DESC="OpenStack Designate DNSaaS producer"
 PROJECT_NAME=designate
 NAME=${PROJECT_NAME}-producer
-export OS_OSLO_MESSAGING_RABBIT__PROCESSNAME=designate-producer
diff -pruN 1:21.0.0-1/debian/designate-sink.init.in 1:21.0.0-0ubuntu1/debian/designate-sink.init.in
--- 1:21.0.0-1/debian/designate-sink.init.in	2025-10-01 19:51:25.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/designate-sink.init.in	2025-10-01 13:47:16.000000000 +0000
@@ -13,7 +13,6 @@
 
 # Author: Thomas Goirand <zigo@debian.org>
 
-DESC="OpenStack Designate DNSaaS Sink (designate-sink)"
+DESC="OpenStack Designate DNSaaS Sink"
 PROJECT_NAME=designate
 NAME=${PROJECT_NAME}-sink
-export OS_OSLO_MESSAGING_RABBIT__PROCESSNAME=designate-sink
diff -pruN 1:21.0.0-1/debian/designate-worker.init.in 1:21.0.0-0ubuntu1/debian/designate-worker.init.in
--- 1:21.0.0-1/debian/designate-worker.init.in	2025-10-01 19:51:25.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/designate-worker.init.in	2025-10-01 13:47:16.000000000 +0000
@@ -13,7 +13,6 @@
 
 # Author: Thomas Goirand <zigo@debian.org>
 
-DESC="OpenStack Designate DNSaaS worker (designate-worker)"
+DESC="OpenStack Designate DNSaaS worker"
 PROJECT_NAME=designate
 NAME=${PROJECT_NAME}-worker
-export OS_OSLO_MESSAGING_RABBIT__PROCESSNAME=designate-worker
diff -pruN 1:21.0.0-1/debian/designate-zone-manager.init.in 1:21.0.0-0ubuntu1/debian/designate-zone-manager.init.in
--- 1:21.0.0-1/debian/designate-zone-manager.init.in	2025-10-01 19:51:25.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/designate-zone-manager.init.in	2025-10-01 13:47:16.000000000 +0000
@@ -13,7 +13,6 @@
 
 # Author: Thomas Goirand <zigo@debian.org>
 
-DESC="OpenStack Designate DNSaaS zone manager (designate-zone-manager)"
+DESC="OpenStack Designate DNSaaS zone manager"
 PROJECT_NAME=designate
 NAME=${PROJECT_NAME}-zone-manager
-export OS_OSLO_MESSAGING_RABBIT__PROCESSNAME=designate-zone-manager
diff -pruN 1:21.0.0-1/debian/designate_sudoers 1:21.0.0-0ubuntu1/debian/designate_sudoers
--- 1:21.0.0-1/debian/designate_sudoers	2025-10-01 19:51:25.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/designate_sudoers	2025-10-01 13:47:16.000000000 +0000
@@ -1,4 +1,2 @@
-Defaults:designate !requiretty
-
 designate ALL = (root) NOPASSWD: /usr/sbin/rndc
 designate ALL = (root) NOPASSWD: /usr/bin/designate-rootwrap /etc/designate/rootwrap.conf *
diff -pruN 1:21.0.0-1/debian/gbp.conf 1:21.0.0-0ubuntu1/debian/gbp.conf
--- 1:21.0.0-1/debian/gbp.conf	1970-01-01 00:00:00.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/gbp.conf	2025-10-01 13:47:16.000000000 +0000
@@ -0,0 +1,9 @@
+[DEFAULT]
+debian-branch = master
+upstream-tag = %(version)s
+pristine-tar = True
+upstream-branch = upstream-flamingo
+
+[buildpackage]
+export-dir = ../build-area
+prebuild = [ ! -f .launchpad.yaml ] || rm .launchpad.yaml
diff -pruN 1:21.0.0-1/debian/man/designate-agent.8 1:21.0.0-0ubuntu1/debian/man/designate-agent.8
--- 1:21.0.0-1/debian/man/designate-agent.8	1970-01-01 00:00:00.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/man/designate-agent.8	2025-10-01 13:47:16.000000000 +0000
@@ -0,0 +1,11 @@
+.TH designate-agent 8
+.SH NAME
+designate-agent \- OpenStack DNS as a Service \- agent
+
+.SH SYNOPSIS
+.B designate-agent
+
+.SH DESCRIPTION
+.B designate-agent
+
+This man page is a stub. Please contribute.
diff -pruN 1:21.0.0-1/debian/man/designate-api.8 1:21.0.0-0ubuntu1/debian/man/designate-api.8
--- 1:21.0.0-1/debian/man/designate-api.8	1970-01-01 00:00:00.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/man/designate-api.8	2025-10-01 13:47:16.000000000 +0000
@@ -0,0 +1,11 @@
+.TH designate-api 8
+.SH NAME
+designate-api \- OpenStack DNS as a Service \- API server
+
+.SH SYNOPSIS
+.B designate-api
+
+.SH DESCRIPTION
+.B designate-api
+
+This man page is a stub. Please contribute.
diff -pruN 1:21.0.0-1/debian/man/designate-central.8 1:21.0.0-0ubuntu1/debian/man/designate-central.8
--- 1:21.0.0-1/debian/man/designate-central.8	1970-01-01 00:00:00.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/man/designate-central.8	2025-10-01 13:47:16.000000000 +0000
@@ -0,0 +1,11 @@
+.TH designate-central 8
+.SH NAME
+designate-central \- OpenStack DNS as a Service \- central daemon
+
+.SH SYNOPSIS
+.B designate-central
+
+.SH DESCRIPTION
+.B designate-central
+
+This man page is a stub. Please contribute.
diff -pruN 1:21.0.0-1/debian/man/designate-manage.8 1:21.0.0-0ubuntu1/debian/man/designate-manage.8
--- 1:21.0.0-1/debian/man/designate-manage.8	1970-01-01 00:00:00.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/man/designate-manage.8	2025-10-01 13:47:16.000000000 +0000
@@ -0,0 +1,11 @@
+.TH designate-manage 8
+.SH NAME
+designate-manage \- OpenStack DNS as a Service \- database service
+
+.SH SYNOPSIS
+.B designate-manage
+
+.SH DESCRIPTION
+.B designate-manage
+
+This man page is a stub. Please contribute.
diff -pruN 1:21.0.0-1/debian/man/designate-mdns.8 1:21.0.0-0ubuntu1/debian/man/designate-mdns.8
--- 1:21.0.0-1/debian/man/designate-mdns.8	1970-01-01 00:00:00.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/man/designate-mdns.8	2025-10-01 13:47:16.000000000 +0000
@@ -0,0 +1,11 @@
+.TH designate-mdns 8
+.SH NAME
+designate-mdns \- OpenStack DNS as a Service \- Mini DNS
+
+.SH SYNOPSIS
+.B designate-mdns
+
+.SH DESCRIPTION
+.B designate-mdns
+
+This man page is a stub. Please contribute.
diff -pruN 1:21.0.0-1/debian/man/designate-pool-manager.8 1:21.0.0-0ubuntu1/debian/man/designate-pool-manager.8
--- 1:21.0.0-1/debian/man/designate-pool-manager.8	1970-01-01 00:00:00.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/man/designate-pool-manager.8	2025-10-01 13:47:16.000000000 +0000
@@ -0,0 +1,11 @@
+.TH designate-pool-manager 8
+.SH NAME
+designate-pool-manager \- OpenStack DNS as a Service \- Pool manager service
+
+.SH SYNOPSIS
+.B designate-pool-manager
+
+.SH DESCRIPTION
+.B designate-pool-manager
+
+This man page is a stub. Please contribute.
diff -pruN 1:21.0.0-1/debian/man/designate-rootwrap.8 1:21.0.0-0ubuntu1/debian/man/designate-rootwrap.8
--- 1:21.0.0-1/debian/man/designate-rootwrap.8	1970-01-01 00:00:00.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/man/designate-rootwrap.8	2025-10-01 13:47:16.000000000 +0000
@@ -0,0 +1,11 @@
+.TH designate-rootwrap 8
+.SH NAME
+designate-rootwrap \- OpenStack DNS as a Service \- sudo helper
+
+.SH SYNOPSIS
+.B designate-rootwrap
+
+.SH DESCRIPTION
+.B designate-rootwrap
+
+This man page is a stub. Please contribute.
diff -pruN 1:21.0.0-1/debian/man/designate-sink.8 1:21.0.0-0ubuntu1/debian/man/designate-sink.8
--- 1:21.0.0-1/debian/man/designate-sink.8	1970-01-01 00:00:00.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/man/designate-sink.8	2025-10-01 13:47:16.000000000 +0000
@@ -0,0 +1,11 @@
+.TH designate-sink 8
+.SH NAME
+designate-sink \- OpenStack DNS as a Service \- sink service
+
+.SH SYNOPSIS
+.B designate-sink
+
+.SH DESCRIPTION
+.B designate-sink
+
+This man page is a stub. Please contribute.
diff -pruN 1:21.0.0-1/debian/man/designate-zone-manager.8 1:21.0.0-0ubuntu1/debian/man/designate-zone-manager.8
--- 1:21.0.0-1/debian/man/designate-zone-manager.8	1970-01-01 00:00:00.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/man/designate-zone-manager.8	2025-10-01 13:47:16.000000000 +0000
@@ -0,0 +1,11 @@
+.TH designate-zone-manager 8
+.SH NAME
+designate-zone-manager \- OpenStack DNS as a Service \- zone manager
+
+.SH SYNOPSIS
+.B designate-zone-manager
+
+.SH DESCRIPTION
+.B designate-zone-manager
+
+This man page is a stub. Please contribute.
diff -pruN 1:21.0.0-1/debian/patches/add-new-floatingip-handler.patch 1:21.0.0-0ubuntu1/debian/patches/add-new-floatingip-handler.patch
--- 1:21.0.0-1/debian/patches/add-new-floatingip-handler.patch	2025-10-01 19:51:25.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/patches/add-new-floatingip-handler.patch	1970-01-01 00:00:00.000000000 +0000
@@ -1,208 +0,0 @@
-Description: Add new floating IP handler for sink
-Author: Axel Jacquet <axel.jacquet@infomaniak.com>
-Forwarded: no
-Last-Update: 2023-03-08
-
-Index: designate/designate/notification_handler/neutron_floatingip_ng.py
-===================================================================
---- /dev/null
-+++ designate/designate/notification_handler/neutron_floatingip_ng.py
-@@ -0,0 +1,72 @@
-+# Copyright 2023 Infomaniak Networks SA
-+#
-+# Author: Axel Jacquet <axel.jacquet@infomaniak.com>
-+#
-+# Licensed under the Apache License, Version 2.0 (the "License"); you may
-+# not use this file except in compliance with the License. You may obtain
-+# a copy of the License at
-+#
-+#      http://www.apache.org/licenses/LICENSE-2.0
-+#
-+# Unless required by applicable law or agreed to in writing, software
-+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-+# License for the specific language governing permissions and limitations
-+# under the License.
-+
-+from oslo_config import cfg
-+from oslo_log import log as logging
-+
-+from designate.notification_handler import base
-+from designate.context import DesignateContext
-+
-+LOG = logging.getLogger(__name__)
-+
-+
-+class NeutronFloatingHandlerNG(base.NotificationHandler):
-+    """Handler for Neutron's notifications"""
-+    __plugin_name__ = 'neutron_floatingip_ng'
-+
-+    def get_exchange_topics(self):
-+        exchange = cfg.CONF[self.name].control_exchange
-+
-+        topics = [topic for topic in cfg.CONF[self.name].notification_topics]
-+
-+        return (exchange, topics)
-+
-+    def get_event_types(self):
-+        return [
-+            'floatingip.update.end',
-+            'floatingip.delete.start'
-+        ]
-+
-+    def delete_ptr(self, payload):
-+        """
-+        Handle a generic delete of a fixed ip within a zone
-+
-+        :param zone_id: The ID of the designate zone.
-+        :param resource_id: The managed resource ID
-+        :param resource_type: The managed resource type
-+        :param criterion: Criterion to search and destroy records
-+        """
-+        context = DesignateContext().elevated()
-+        context.all_tenants = True
-+        context.edit_managed_records = True
-+
-+        criterion = {
-+            'managed': True,
-+            'managed_resource_id': payload['floatingip_id'],
-+            'managed_resource_type': 'ptr:floatingip'
-+        }
-+
-+        records = self.central_api.find_records(context, criterion)
-+        for record in records:
-+            self._update_or_delete_recordset(
-+                context, record['zone_id'], record['recordset_id'], record['id']
-+            )
-+    def process_notification(self, context, event_type, payload):
-+        LOG.debug('%s received notification - %s',
-+                  self.get_canonical_name(), event_type)
-+
-+        if event_type.startswith('floatingip.delete'):
-+            self.delete_ptr(payload)
-Index: designate/setup.cfg
-===================================================================
---- designate.orig/setup.cfg
-+++ designate/setup.cfg
-@@ -71,6 +71,7 @@ designate.notification.handler =
-     fake = designate.notification_handler.fake:FakeHandler
-     nova_fixed = designate.notification_handler.nova:NovaFixedHandler
-     neutron_floatingip = designate.notification_handler.neutron:NeutronFloatingHandler
-+    neutron_floatingip_ng = designate.notification_handler.neutron_floatingip_ng:NeutronFloatingHandlerNG
- 
- designate.backend =
-     bind9 = designate.backend.impl_bind9:Bind9Backend
-Index: designate/designate/conf/sink.py
-===================================================================
---- designate.orig/designate/conf/sink.py
-+++ designate/designate/conf/sink.py
-@@ -84,6 +84,21 @@ SINK_NOVA_OPTS = [
-     cfg.MultiStrOpt('formatv6', help='IPv6 format'),
- ]
- 
-+SINK_NEUTRON_NG_GROUP = cfg.OptGroup(
-+    name='handler:neutron_floatingip_ng',
-+    title="Configuration for PTR delete Notification Handler"
-+)
-+
-+SINK_NEUTRON_NG_OPTS = [
-+    cfg.ListOpt('notification_topics', default=['notifications_designate'],
-+               help='notification any events from neutron'),
-+    cfg.StrOpt('control_exchange', default='neutron',
-+              help='control-exchange for neutron notification'),
-+    cfg.MultiStrOpt('format', deprecated_for_removal=True,
-+                    deprecated_reason="Replaced by 'formatv4/formatv6'",
-+                    help='format which replaced by formatv4/formatv6'),
-+]
-+
- 
- def register_opts(conf):
-     conf.register_group(SINK_GROUP)
-@@ -94,6 +109,8 @@ def register_opts(conf):
-     conf.register_opts(SINK_NEUTRON_OPTS, group=SINK_NEUTRON_GROUP)
-     conf.register_group(SINK_NOVA_GROUP)
-     conf.register_opts(SINK_NOVA_OPTS, group=SINK_NOVA_GROUP)
-+    conf.register_group(SINK_NEUTRON_NG_GROUP)
-+    conf.register_opts(SINK_NEUTRON_NG_OPTS, group=SINK_NEUTRON_NG_GROUP)
- 
- 
- def list_opts():
-@@ -101,4 +118,5 @@ def list_opts():
-         SINK_GROUP: SINK_OPTS,
-         SINK_NEUTRON_GROUP: SINK_NEUTRON_OPTS,
-         SINK_NOVA_GROUP: SINK_NOVA_OPTS,
-+        SINK_NEUTRON_NG_GROUP: SINK_NEUTRON_NG_OPTS,
-     }
-Index: designate/designate/central/rpcapi.py
-===================================================================
---- designate.orig/designate/central/rpcapi.py
-+++ designate/designate/central/rpcapi.py
-@@ -237,6 +237,14 @@ class CentralAPI:
-                                 limit=limit, sort_key=sort_key,
-                                 sort_dir=sort_dir, force_index=force_index)
- 
-+    def find_records(self, context, criterion=None, marker=None, limit=None,
-+                     sort_key=None, sort_dir=None):
-+        return self.client.call(context, 'find_records', criterion=criterion,
-+                                marker=marker, limit=limit, sort_key=sort_key,
-+                                sort_dir=sort_dir)
-+    def find_recordset(self, context, criterion=None):
-+        return self.client.call(context, 'find_recordset', criterion=criterion)
-+
-     def create_managed_records(self, context, zone_id, records_values,
-                                recordset_values):
-         return self.client.call(context, 'create_managed_records',
-Index: designate/designate/notification_handler/base.py
-===================================================================
---- designate.orig/designate/notification_handler/base.py
-+++ designate/designate/notification_handler/base.py
-@@ -63,7 +63,49 @@ class NotificationHandler(ExtensionPlugi
-         context = DesignateContext.get_admin_context(all_tenants=True)
-         return self.central_api.get_zone(context, zone_id)
- 
-+    def _update_or_delete_recordset(self, context, zone_id, recordset_id,
-+                                    record_to_delete_id):
-+        LOG.debug(
-+            'Deleting record in %s / %s',
-+            zone_id, record_to_delete_id
-+        )
- 
-+        try:
-+            recordset = self.central_api.find_recordset(
-+                context, {'id': recordset_id, 'zone_id': zone_id}
-+            )
-+            record_ids = [record['id'] for record in recordset.records]
-+
-+            # Record no longer in recordset. Let's abort.
-+            if record_to_delete_id not in record_ids:
-+                LOG.debug(
-+                    'Record %s not found in recordset %s',
-+                    record_to_delete_id, recordset_id
-+                )
-+                return
-+
-+            # Remove the record from the recordset.
-+            for record in list(recordset.records):
-+                if record['id'] != record_to_delete_id:
-+                    continue
-+                recordset.records.remove(record)
-+                break
-+
-+            if not recordset.records:
-+                # Recordset is now empty. Remove it.
-+                self.central_api.delete_recordset(
-+                    context, zone_id, recordset_id
-+                )
-+                return
-+
-+            # Recordset still has records, validate it and update it.
-+            recordset.validate()
-+            self.central_api.update_recordset(context, recordset)
-+        except exceptions.RecordSetNotFound:
-+            LOG.info(
-+                'Recordset %s for record %s was already removed',
-+                recordset_id, record_to_delete_id
-+            )
- class BaseAddressHandler(NotificationHandler):
-     default_formatv4 = ('%(hostname)s.%(zone)s',)
-     default_formatv6 = ('%(hostname)s.%(zone)s',)
diff -pruN 1:21.0.0-1/debian/patches/fix-regex-to-create-floating-ptr.patch 1:21.0.0-0ubuntu1/debian/patches/fix-regex-to-create-floating-ptr.patch
--- 1:21.0.0-1/debian/patches/fix-regex-to-create-floating-ptr.patch	2025-10-01 19:51:25.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/patches/fix-regex-to-create-floating-ptr.patch	1970-01-01 00:00:00.000000000 +0000
@@ -1,31 +0,0 @@
-Description: Fix regex to create floating PTR.
-Author: Axel Jacquet <axel.jacquet@infomaniak.com>
-Forwarded: no
-Last-Update: 2024-06-27
-
---- designate-18.0.0.orig/designate/api/v2/controllers/floatingips.py
-+++ designate-18.0.0/designate/api/v2/controllers/floatingips.py
-@@ -15,6 +15,7 @@
- # under the License.
- from oslo_log import log as logging
- import pecan
-+import re
- 
- from designate.api.v2.controllers import rest
- from designate.common import constants
-@@ -25,9 +26,13 @@ from designate.objects.adapters import D
- LOG = logging.getLogger(__name__)
- 
- 
--def fip_key_to_data(key):
--    m = constants.RE_FIP.match(key)
-+FIP_REGEX = ('^(?P<region>[A-Za-z0-9\\.\\-_]{1,100}):'
-+             '(?P<id>[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-'
-+             '[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$')
- 
-+def fip_key_to_data(key):
-+    # m = constants.RE_FIP.match(key)
-+    m = re.match(FIP_REGEX, key)
-     # NOTE: Ensure that the fip matches region:floatingip_id or raise, if
-     # not this will cause a 500.
-     if m is None:
diff -pruN 1:21.0.0-1/debian/patches/install-missing-db-files.patch 1:21.0.0-0ubuntu1/debian/patches/install-missing-db-files.patch
--- 1:21.0.0-1/debian/patches/install-missing-db-files.patch	1970-01-01 00:00:00.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/patches/install-missing-db-files.patch	2025-10-01 13:47:16.000000000 +0000
@@ -0,0 +1,10 @@
+Description: Install missing db files, including
+  designate/storage/sqlalchemy/ files.
+Author: Corey Bryant <corey.bryant@canonical.com>
+
+Index: designate/MANIFEST.in
+===================================================================
+--- /dev/null
++++ designate/MANIFEST.in
+@@ -0,0 +1 @@
++recursive-include designate/storage/sqlalchemy/ *
diff -pruN 1:21.0.0-1/debian/patches/install-missing-files.patch 1:21.0.0-0ubuntu1/debian/patches/install-missing-files.patch
--- 1:21.0.0-1/debian/patches/install-missing-files.patch	2025-10-01 19:51:25.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/patches/install-missing-files.patch	1970-01-01 00:00:00.000000000 +0000
@@ -1,13 +0,0 @@
-Description: Install missing files
-Author: Thomas Goirand <zigo@debian.org>
-Forwarded: not-needed
-Last-Update: 2016-03-25
-
---- /dev/null	2016-03-15 18:18:48.046095192 +0100
-+++ b/MANIFEST.in	2016-03-25 11:24:52.877037638 +0100
-@@ -0,0 +1,5 @@
-+recursive-include designate/tests *
-+recursive-include designate/pool_manager *
-+recursive-include designate/resources *
-+recursive-include designate/backend *
-+recursive-include designate/storage *
diff -pruN 1:21.0.0-1/debian/patches/removed-httpdomain-sphinx-ext.patch 1:21.0.0-0ubuntu1/debian/patches/removed-httpdomain-sphinx-ext.patch
--- 1:21.0.0-1/debian/patches/removed-httpdomain-sphinx-ext.patch	2025-10-01 19:51:25.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/patches/removed-httpdomain-sphinx-ext.patch	1970-01-01 00:00:00.000000000 +0000
@@ -1,17 +0,0 @@
-Description: Removed httpdomain sphinx ext
-Author: Thomas Goirand <zigo@debian.org>
-Forwarded: no
-Last-Update: 2021-03-26
-
-Index: designate/doc/source/conf.py
-===================================================================
---- designate.orig/doc/source/conf.py
-+++ designate/doc/source/conf.py
-@@ -32,7 +32,6 @@ sys.path.insert(0, os.path.abspath('./')
- extensions = ['sphinx.ext.autodoc',
-               'sphinx.ext.viewcode',
-               'sphinx.ext.graphviz',
--              'sphinxcontrib.httpdomain',
-               'ext.support_matrix',
-               'ext.custom_css',
-               'openstackdocstheme',
diff -pruN 1:21.0.0-1/debian/patches/series 1:21.0.0-0ubuntu1/debian/patches/series
--- 1:21.0.0-1/debian/patches/series	2025-10-01 19:51:25.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/patches/series	2025-10-01 13:47:16.000000000 +0000
@@ -1,4 +1,2 @@
-install-missing-files.patch
-removed-httpdomain-sphinx-ext.patch
-add-new-floatingip-handler.patch
-fix-regex-to-create-floating-ptr.patch
+install-missing-db-files.patch
+skip-infoblox-backend-test.patch
diff -pruN 1:21.0.0-1/debian/patches/skip-infoblox-backend-test.patch 1:21.0.0-0ubuntu1/debian/patches/skip-infoblox-backend-test.patch
--- 1:21.0.0-1/debian/patches/skip-infoblox-backend-test.patch	1970-01-01 00:00:00.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/patches/skip-infoblox-backend-test.patch	2025-10-01 13:47:16.000000000 +0000
@@ -0,0 +1,514 @@
+Index: designate/designate/tests/unit/backend/test_infoblox.py
+===================================================================
+--- designate.orig/designate/tests/unit/backend/test_infoblox.py
++++ /dev/null
+@@ -1,509 +0,0 @@
+-# Copyright 2015 Infoblox Inc.
+-# All Rights Reserved.
+-#
+-# Licensed under the Apache License, Version 2.0 (the "License"); you may
+-# not use this file except in compliance with the License. You may obtain
+-# a copy of the License at
+-#
+-#      http://www.apache.org/licenses/LICENSE-2.0
+-#
+-# Unless required by applicable law or agreed to in writing, software
+-# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+-# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+-# License for the specific language governing permissions and limitations
+-# under the License.
+-
+-
+-from unittest import mock
+-
+-from infoblox_client import connector as infoblox_connector
+-from infoblox_client import exceptions as infoblox_exceptions
+-from infoblox_client import objects as infoblox_objects
+-import oslotest.base
+-import requests_mock
+-
+-from designate.backend import impl_infoblox
+-from designate import context
+-from designate import exceptions
+-from designate import objects
+-from designate.tests import base_fixtures
+-
+-
+-class InfobloxBackendTestCase(oslotest.base.BaseTestCase):
+-    def setUp(self):
+-        super().setUp()
+-        self.stdlog = base_fixtures.StandardLogging()
+-        self.useFixture(self.stdlog)
+-
+-        self.project_id = 'f532f66e-0fea-4698-895c-bb7caef815ef'
+-        self.admin_context = mock.Mock()
+-        self.admin_context.project_id = self.project_id
+-        mock.patch.object(
+-            context.DesignateContext, 'get_admin_context',
+-            return_value=self.admin_context).start()
+-
+-        self.zone = objects.Zone(
+-            id='e2bed4dc-9d01-11e4-89d3-123b93f75cba',
+-            name='example.com.',
+-            email='example@example.com',
+-        )
+-        self.base_address = 'https://192.0.2.1/wapi/v2.10/'
+-        self.dns_view = 'my_dns_view'
+-        self.network_view = 'my_net_view'
+-        self.ns_group = 'my_ns_group'
+-
+-        self.target = {
+-            'id': '4588652b-50e7-46b9-b688-a9bad40a873e',
+-            'type': 'designate',
+-            'masters': [
+-                {'host': '192.0.2.1', 'port': 53},
+-            ],
+-            'options': [
+-                {'key': 'wapi_url', 'value': self.base_address},
+-                {'key': 'username', 'value': 'user'},
+-                {'key': 'password', 'value': 'secret'},
+-                {'key': 'dns_view', 'value': self.dns_view},
+-                {'key': 'network_view', 'value': self.network_view},
+-                {'key': 'ns_group', 'value': self.ns_group},
+-            ],
+-        }
+-
+-
+-class BasicInfobloxBackendTestCase(InfobloxBackendTestCase):
+-    def setUp(self):
+-        super().setUp()
+-
+-        self.target['options'].append(
+-            {'key': 'multi_tenant', 'value': '0'},
+-        )
+-
+-        self.backend = impl_infoblox.InfobloxBackend(
+-            objects.PoolTarget.from_dict(self.target)
+-        )
+-
+-        self.backend.connection = mock.Mock()
+-        self.backend.infoblox = mock.Mock()
+-
+-    @mock.patch.object(impl_infoblox, 'infoblox_connector', None)
+-    def test_no_library_installed(self):
+-        pool_target = objects.PoolTarget.from_dict(self.target)
+-        self.assertRaisesRegex(
+-            exceptions.Backend,
+-            'The infoblox-client library is not available',
+-            impl_infoblox.InfobloxBackend, pool_target
+-        )
+-
+-    def test_get_options(self):
+-        self.assertEqual('my_dns_view', self.backend.dns_view)
+-        self.assertEqual('my_net_view', self.backend.network_view)
+-        self.assertEqual('my_ns_group', self.backend.ns_group)
+-        self.assertEqual('0', self.backend.multi_project)
+-
+-    @mock.patch.object(infoblox_connector, 'Connector', mock.Mock())
+-    def test_backend_with_invalid_master_port(self):
+-        self.target['masters'] = [
+-            {'host': '192.0.2.1', 'port': 5354},
+-        ]
+-        pool_target = objects.PoolTarget.from_dict(self.target)
+-        self.assertRaisesRegex(
+-            exceptions.ConfigurationError,
+-            'Infoblox only supports mDNS instances on port 53',
+-            impl_infoblox.InfobloxBackend, pool_target
+-        )
+-
+-    @mock.patch.object(infoblox_connector, 'Connector')
+-    def test_backend_with_host(self, mock_infoblox_connector):
+-        self.target['options'] = [
+-            {'key': 'wapi_host', 'value': '192.0.2.100'},
+-            {'key': 'wapi_version', 'value': '1'},
+-            {'key': 'username', 'value': 'user'},
+-            {'key': 'password', 'value': 'secret'},
+-        ]
+-        impl_infoblox.InfobloxBackend(
+-            objects.PoolTarget.from_dict(self.target)
+-        )
+-        mock_infoblox_connector.assert_called_with(
+-            {
+-                'host': '192.0.2.100',
+-                'username': 'user',
+-                'password': 'secret',
+-                'http_pool_connections': None,
+-                'http_pool_maxsize': None,
+-                'wapi_version': '1',
+-                'ssl_verify': None,
+-                'cert': None,
+-                'key': None
+-            }
+-        )
+-
+-    @mock.patch.object(infoblox_connector, 'Connector')
+-    def test_backend_with_wapi_url(self, mock_infoblox_connector):
+-        impl_infoblox.InfobloxBackend(
+-            objects.PoolTarget.from_dict(self.target)
+-        )
+-        mock_infoblox_connector.assert_called_with(
+-            {
+-                'host': '192.0.2.1',
+-                'username': 'user',
+-                'password': 'secret',
+-                'http_pool_connections': None,
+-                'http_pool_maxsize': None,
+-                'wapi_version': '2.10',
+-                'ssl_verify': None,
+-                'cert': None,
+-                'key': None
+-            }
+-        )
+-
+-    def test_is_multi_project(self):
+-        self.backend.multi_project = True
+-        self.assertTrue(self.backend.is_multi_project)
+-
+-        self.backend.multi_project = 1
+-        self.assertTrue(self.backend.is_multi_project)
+-
+-        self.backend.multi_project = '1'
+-        self.assertTrue(self.backend.is_multi_project)
+-
+-        self.backend.multi_project = False
+-        self.assertFalse(self.backend.is_multi_project)
+-
+-        self.backend.multi_project = 0
+-        self.assertFalse(self.backend.is_multi_project)
+-
+-        self.backend.multi_project = '0'
+-        self.assertFalse(self.backend.is_multi_project)
+-
+-    def test_parse_wapi_url(self):
+-        self.assertEqual(
+-            ('192.0.2.1', None),
+-            self.backend.parse_wapi_url('https://192.0.2.1/')
+-        )
+-        self.assertEqual(
+-            ('192.0.2.2', '1'),
+-            self.backend.parse_wapi_url('https://192.0.2.2/wapi/v1/')
+-        )
+-        self.assertEqual(
+-            ('192.0.2.3', '2.10'),
+-            self.backend.parse_wapi_url('https://192.0.2.3/wapi/v2.10/')
+-        )
+-        self.assertEqual(
+-            ('192.0.2.3:443', '2.10'),
+-            self.backend.parse_wapi_url('https://192.0.2.3:443/wapi/v2.10/')
+-        )
+-
+-    def test_get_network_view(self):
+-        self.backend.connection.get_object.return_value = [{'name': 'fake'}]
+-
+-        self.assertEqual('fake', self.backend.get_network_view('project_id'))
+-
+-    def test_get_network_view_no_result(self):
+-        self.backend.connection.get_object.return_value = []
+-
+-        self.assertIsNone(self.backend.get_network_view('project_id'))
+-
+-    def test_get_or_create_network_view(self):
+-        mock_network_view = mock.Mock()
+-        mock_network_view.name = 'fake'
+-
+-        self.backend.connection.get_object.return_value = []
+-        self.backend.infoblox.create_network_view.return_value = (
+-            mock_network_view
+-        )
+-
+-        self.assertEqual(
+-            'fake', self.backend.get_or_create_network_view('project_id')
+-        )
+-
+-    def test_get_or_create_network_view_not_found(self):
+-        self.backend.connection.get_object.return_value = [{'name': 'fake'}]
+-
+-        self.assertEqual(
+-            'fake', self.backend.get_or_create_network_view('project_id')
+-        )
+-
+-    def test_get_or_create_network_view_already_found(self):
+-        self.backend.connection.get_object.return_value = [{'name': 'fake'}]
+-
+-        self.assertEqual(
+-            'fake', self.backend.get_or_create_network_view('project_id')
+-        )
+-
+-    @mock.patch.object(infoblox_objects.DNSView, 'search')
+-    def test_get_or_create_dns_view(self, mock_search):
+-        mock_dns_view = mock.Mock()
+-        mock_dns_view.name = 'fake'
+-
+-        mock_search.return_value = None
+-        self.backend.infoblox.create_dns_view.return_value = mock_dns_view
+-
+-        self.assertEqual(
+-            'fake', self.backend.get_or_create_dns_view('net_view')
+-        )
+-
+-    def test_get_or_create_dns_view_no_network_provided(self):
+-        self.assertFalse(self.backend.get_or_create_dns_view(None))
+-
+-    @mock.patch.object(infoblox_objects.DNSView, 'search')
+-    def test_get_or_create_dns_view_not_found(self, mock_search):
+-        mock_search.return_value = None
+-
+-        self.assertFalse(
+-            self.backend.get_or_create_dns_view(
+-                'net_view', create_if_missing=False
+-            )
+-        )
+-
+-    @mock.patch.object(infoblox_objects.DNSView, 'search')
+-    def test_get_or_create_dns_view_already_found(self, mock_search):
+-        mock_dns_view = mock.Mock()
+-        mock_dns_view.name = 'fake'
+-
+-        mock_search.return_value = mock_dns_view
+-
+-        self.assertEqual(
+-            'fake', self.backend.get_or_create_dns_view('net_view')
+-        )
+-
+-    @mock.patch.object(infoblox_objects, 'Grid', mock.Mock())
+-    def test_restart_if_needed_unable_to_restart(self):
+-        self.backend.connection.call_func.side_effect = (
+-            infoblox_exceptions.InfobloxException('')
+-        )
+-
+-        self.backend.restart_if_needed()
+-
+-        self.assertIn(
+-            'Unable to restart the infoblox dns service.',
+-            self.stdlog.logger.output
+-        )
+-
+-    def test_create_zone(self):
+-        self.backend.restart_if_needed = mock.Mock()
+-
+-        self.backend.create_zone(self.admin_context, self.zone)
+-
+-        self.backend.infoblox.create_dns_zone.assert_called_with(
+-            dns_zone='example.com',
+-            dns_view='my_dns_view',
+-            zone_format='FORWARD',
+-            ns_group='my_ns_group'
+-        )
+-        self.backend.restart_if_needed.assert_called()
+-
+-    def test_create_zone_handle_error(self):
+-        self.backend.infoblox.create_dns_zone.side_effect = (
+-            infoblox_exceptions.InfobloxTimeoutError('error')
+-        )
+-
+-        self.assertRaisesRegex(
+-            exceptions.Backend,
+-            'Connection to NIOS timed out',
+-            self.backend.create_zone, self.admin_context, self.zone
+-        )
+-
+-    def test_create_zone_ptr(self):
+-        zone = objects.Zone(
+-            id='e2bed4dc-9d01-11e4-89d3-123b93f75cba',
+-            name='example.in-addr.arpa.',
+-            email='example@example.com',
+-        )
+-
+-        self.backend.restart_if_needed = mock.Mock()
+-
+-        self.backend.create_zone(self.admin_context, zone)
+-
+-        self.backend.infoblox.create_dns_zone.assert_called_with(
+-            dns_zone='example.in-addr.arpa',
+-            dns_view='my_dns_view',
+-            zone_format='IPV4',
+-            ns_group='my_ns_group'
+-        )
+-        self.backend.restart_if_needed.assert_called()
+-
+-    def test_create_zone_ipv6_ptr(self):
+-        zone = objects.Zone(
+-            id='e2bed4dc-9d01-11e4-89d3-123b93f75cba',
+-            name='example.ip6.arpa.',
+-            email='example@example.com',
+-        )
+-
+-        self.backend.restart_if_needed = mock.Mock()
+-
+-        self.backend.create_zone(self.admin_context, zone)
+-
+-        self.backend.infoblox.create_dns_zone.assert_called_with(
+-            dns_zone='example.ip6.arpa',
+-            dns_view='my_dns_view',
+-            zone_format='IPV6',
+-            ns_group='my_ns_group'
+-        )
+-        self.backend.restart_if_needed.assert_called()
+-
+-    def test_create_zone_no_dns_view(self):
+-        self.backend.dns_view = None
+-
+-        self.assertRaisesRegex(
+-            exceptions.Backend,
+-            'Unable to create zone. No DNS View found',
+-            self.backend.create_zone, self.admin_context, self.zone
+-        )
+-
+-    def test_delete_zone(self):
+-        self.backend.restart_if_needed = mock.Mock()
+-
+-        self.backend.delete_zone(self.admin_context, self.zone)
+-
+-        self.backend.infoblox.delete_dns_zone.assert_called_with(
+-            'my_dns_view',
+-            'example.com'
+-        )
+-        self.backend.restart_if_needed.assert_called()
+-
+-    def test_delete_zone_handle_error(self):
+-        self.backend.infoblox.delete_dns_zone.side_effect = (
+-            infoblox_exceptions.InfobloxTimeoutError('error')
+-        )
+-
+-        self.assertRaisesRegex(
+-            exceptions.Backend,
+-            'Connection to NIOS timed out',
+-            self.backend.delete_zone, self.admin_context, self.zone
+-        )
+-
+-    def test_delete_zone_no_dns_view(self):
+-        self.backend.dns_view = None
+-
+-        self.assertRaisesRegex(
+-            exceptions.Backend,
+-            'Unable to delete zone. No DNS View found',
+-            self.backend.delete_zone, self.admin_context, self.zone
+-        )
+-
+-
+-class AdvancedInfobloxBackendTestCase(InfobloxBackendTestCase):
+-    def setUp(self):
+-        super().setUp()
+-
+-        self.target['options'].append(
+-            {'key': 'multi_tenant', 'value': '1'},
+-        )
+-
+-        self.backend = impl_infoblox.InfobloxBackend(
+-            objects.PoolTarget.from_dict(self.target)
+-        )
+-
+-    @requests_mock.mock()
+-    def test_create_zone(self, req_mock):
+-        zone_name = self.zone['name'][0:-1]
+-        network_view = f'{self.network_view}.{self.project_id}'
+-        view_name = f'{self.dns_view}.{self.network_view}.{self.project_id}'
+-
+-        req_mock.get(
+-            f'{self.base_address}networkview?*TenantID={self.project_id}'
+-            '&_return_fields=name',
+-            json=[{
+-                '_ref': f'networkview/mock:{network_view}/false',
+-                'name': f'{network_view}'
+-            }]
+-        )
+-        req_mock.get(
+-            f'{self.base_address}view?name={view_name}&_return_fields=name',
+-            json=[{
+-                '_ref': f'view/mock:{view_name}/false',
+-                'name': f'{view_name}'
+-            }]
+-        )
+-        req_mock.get(
+-            f'{self.base_address}zone_auth?fqdn={zone_name}&view={view_name}',
+-            json=[{
+-                '_ref': f'zone_auth/mock:{zone_name}/{view_name}',
+-                'extattrs': {},
+-                'fqdn': zone_name,
+-                'grid_primary': [],
+-                'grid_secondaries': [],
+-                'ns_group': self.ns_group,
+-                'view': view_name
+-            }]
+-        )
+-        req_mock.get(
+-            f'{self.base_address}grid',
+-            json=[{'_ref': 'grid/mock:Infoblox'}]
+-        )
+-        req_mock.post(
+-            f'{self.base_address}grid/mock%3AInfoblox?'
+-            '_function=restartservices',
+-            json=[]
+-        )
+-
+-        self.backend.create_zone(self.admin_context, self.zone)
+-
+-        self.assertEqual(
+-            req_mock.last_request.json(),
+-            {
+-                'mode': 'GROUPED',
+-                'restart_option': 'RESTART_IF_NEEDED',
+-                'services': ['DNS']
+-            }
+-        )
+-        self.assertIn('Create Zone', self.stdlog.logger.output)
+-
+-    @requests_mock.mock()
+-    def test_delete_zone(self, req_mock):
+-        zone_name = self.zone['name'][0:-1]
+-        network_view = f'{self.network_view}.{self.project_id}'
+-        view_name = f'{self.dns_view}.{self.network_view}.{self.project_id}'
+-
+-        req_mock.get(
+-            f'{self.base_address}networkview?*TenantID={self.project_id}'
+-            '&_return_fields=name',
+-            json=[{
+-                '_ref': f'networkview/mock:{network_view}/false',
+-                'name': f'{network_view}'
+-            }]
+-        )
+-        req_mock.get(
+-            f'{self.base_address}view?name={view_name}&_return_fields=name',
+-            json=[{
+-                '_ref': f'view/mock:{view_name}/false',
+-                'name': f'{view_name}'
+-            }]
+-        )
+-        req_mock.get(
+-            f'{self.base_address}zone_auth?fqdn={zone_name}&view={view_name}',
+-            json=[{
+-                '_ref': f'zone_auth/mock:{zone_name}/{view_name}',
+-                'extattrs': {},
+-                'fqdn': zone_name,
+-                'grid_primary': [],
+-                'grid_secondaries': [],
+-                'ns_group': self.ns_group,
+-                'view': view_name
+-            }]
+-        )
+-        req_mock.delete(
+-            f'{self.base_address}zone_auth/mock%3A{zone_name}/{view_name}',
+-            json=[]
+-        )
+-        req_mock.get(
+-            f'{self.base_address}grid',
+-            json=[{'_ref': 'grid/mock:Infoblox'}]
+-        )
+-        req_mock.post(
+-            f'{self.base_address}grid/mock%3AInfoblox?'
+-            '_function=restartservices',
+-            json=[]
+-        )
+-
+-        self.backend.delete_zone(self.admin_context, self.zone)
+-
+-        self.assertEqual(
+-            req_mock.last_request.json(),
+-            {
+-                'mode': 'GROUPED',
+-                'restart_option': 'RESTART_IF_NEEDED',
+-                'services': ['DNS']
+-            }
+-        )
+-
+-        self.assertIn('Delete Zone', self.stdlog.logger.output)
diff -pruN 1:21.0.0-1/debian/python3-designate.install 1:21.0.0-0ubuntu1/debian/python3-designate.install
--- 1:21.0.0-1/debian/python3-designate.install	2025-10-01 19:51:25.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/python3-designate.install	1970-01-01 00:00:00.000000000 +0000
@@ -1 +0,0 @@
-usr/lib/python*/dist-packages/*
diff -pruN 1:21.0.0-1/debian/rules 1:21.0.0-0ubuntu1/debian/rules
--- 1:21.0.0-1/debian/rules	2025-10-01 19:51:25.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/rules	2025-10-01 13:47:16.000000000 +0000
@@ -1,112 +1,52 @@
 #!/usr/bin/make -f
 
+# Verbose mode
+#export DH_VERBOSE=1
+
+DEBVERS ?= $(shell dpkg-parsechangelog | sed -n -e 's/^Version: //p')
+VERSION ?= $(shell echo '$(DEBVERS)' | sed -e 's/^[[:digit:]]*://' -e 's/[-].*//' -e 's/[+].*//' -e 's/~git.*//g' -e 's/~/./g')
+export OSLO_PACKAGE_VERSION=$(VERSION)
+export PBR_VERSION=$(VERSION)
+
+
+UPSTREAM_GIT = git://github.com/openstack/designate.git
 include /usr/share/openstack-pkg-tools/pkgos.make
 
 %:
 	dh $@ --buildsystem=pybuild --with python3,sphinxdoc
 
-override_dh_auto_test:
-	echo "Do nothing..."
+override_dh_auto_install:
+	pkgos-dh_auto_install --no-py2
+	rm -rf $(CURDIR)/debian/python*/usr/etc
 
 override_dh_auto_clean:
-	python3 setup.py clean
-	rm -f debian/designate-common.postinst debian/designate-common.config debian/designate-api.config debian/designate-api.postinst debian/designate-common.postrm
-	rm -rf doc/build build *.egg-info
+	dh_auto_clean -O--buildsystem=pybuild
+	rm -rf doc/build build debian/doctrees
 	rm -f debian/*.init debian/*.upstart debian/*.service
-	find . -name '*.pyc' -exec rm {} \;
-	rm -f ChangeLog
-	rm -f AUTHORS
-	rm -rf .testrepository
-	rm -f doc/source/_static/designate.conf.sample
-	rm -rf debian/*.templates debian/po
-	rm -f doc/source/_static/designate.policy.yaml.sample
-	find . -iname '*.pyc' -delete
-	for i in $$(find . -type d -iname __pycache__) ; do rm -rf $$i ; done
-
-override_dh_auto_build:
-	/usr/share/openstack-pkg-tools/pkgos_insert_include pkgos_func designate-common.postinst
-	/usr/share/openstack-pkg-tools/pkgos_insert_include pkgos_func designate-common.config
-	/usr/share/openstack-pkg-tools/pkgos_insert_include pkgos_func designate-api.config
-	/usr/share/openstack-pkg-tools/pkgos_insert_include pkgos_func designate-api.postinst
-	/usr/share/openstack-pkg-tools/pkgos_insert_include pkgos_postrm designate-common.postrm
-	pkgos-merge-templates designate-api designate endpoint
-	pkgos-merge-templates designate-common designate db rabbit ksat
-
-override_dh_auto_install:
-	echo "Do nothing..."
+	rm -rf .eggs
+	rm -f etc/designate/policy.json.sample etc/designate/designate.conf
 
 override_dh_install:
-	for i in $(PYTHON3S) ; do \
-		python$$i setup.py install --install-layout=deb --root=$(CURDIR)/debian/tmp ; \
-	done
+	dh_install -O--buildsystem=pybuild -Xusr/etc
+	dh_missing -O--buildsystem=pybuild --fail-missing -Xusr/etc
 
-ifeq (,$(findstring nocheck, $(DEB_BUILD_OPTIONS)))
-	# Blacklist:
-	# These 2 unit tests are failing, though I personally don't care about infoblox
-	# support: anyone interested supporting such non-free service is welcome to investigate.
-	# backend.test_infoblox.BasicInfobloxBackendTestCase.test_create_zone_handle_error
-	# backend.test_infoblox.BasicInfobloxBackendTestCase.test_delete_zone_handle_error
-	# test_coordination.TestPartitioner.test_three_even_partitions
-	pkgos-dh_auto_test --no-py2 'designate\.tests\.unit\.(?!.*test_pool_manager\.test_service\.PoolManagerInitTest\.test_init_no_pool_targets.*|.*agent.*|.*designate\.tests\.unit\.mdns\.test_handler\.MdnsHandleTest\.test_notify.*|.*test_service\.TestDesignateRpcService.*|.*test_service\.TestDesignateServiceInit.*|.*test_service\.TestServiceInit.*|.*test_service\.TestRpcService.*|backend\.test_infoblox\.BasicInfobloxBackendTestCase\.test_create_zone_handle_error|backend\.test_infoblox\.BasicInfobloxBackendTestCase\.test_delete_zone_handle_error|test_coordination\.TestPartitioner\.test_three_even_partitions)'
+override_dh_auto_build:
+	PYTHONPATH=$(CURDIR) oslopolicy-sample-generator \
+		--config-file=$(CURDIR)/etc/designate/designate-policy-generator.conf \
+		--output-file=$(CURDIR)/etc/designate/policy.json.sample
+	PYTHONPATH=$(CURDIR) oslo-config-generator \
+		--config-file=$(CURDIR)/etc/designate/designate-config-generator.conf \
+		--output-file=$(CURDIR)/etc/designate/designate.conf
+	dh_auto_build -O--buildsystem=pybuild
 
+override_dh_auto_test:
+ifeq (,$(findstring nocheck, $(DEB_BUILD_OPTIONS)))
+	pkgos-dh_auto_test --no-py2
 endif
 
-	rm -rf $(CURDIR)/debian/tmp/usr/etc
-	mkdir -p $(CURDIR)/debian/designate-common/usr/share/designate-common
-	PYTHONPATH=$(CURDIR)/debian/tmp/usr/lib/python3/dist-packages oslo-config-generator \
-		--output-file $(CURDIR)/debian/designate-common/usr/share/designate-common/designate.conf \
-		--wrap-width 140 \
-		--namespace designate.conf \
-		--namespace oslo.log \
-		--namespace oslo.messaging \
-		--namespace oslo.policy \
-		--namespace oslo.reports \
-		--namespace oslo.service.periodic_task \
-		--namespace oslo.service.service \
-		--namespace oslo.service.sslutils \
-		--namespace oslo.service.wsgi \
-		--namespace oslo.db \
-		--namespace oslo.middleware \
-		--namespace oslo.concurrency \
-		--namespace oslo.versionedobjects \
-		--namespace keystonemiddleware.auth_token
-	pkgos-readd-keystone-authtoken-missing-options $(CURDIR)/debian/designate-common/usr/share/designate-common/designate.conf keystone_authtoken designate
-
-	mkdir -p $(CURDIR)/debian/designate-common/etc/designate/policy.d
-	PYTHONPATH=$(CURDIR)/debian/tmp/usr/lib/python3/dist-packages oslopolicy-sample-generator \
-		--output-file $(CURDIR)/debian/designate-common/etc/designate/policy.d/00_default_policy.yaml \
-		--format yaml \
-		--namespace designate
-
-	# Comment out deprecated policies
-	sed -i 's/^"/#"/' $(CURDIR)/debian/designate-common/etc/designate/policy.d/00_default_policy.yaml
-
-
-	# Use the policy.d folder
-	pkgos-fix-config-default $(CURDIR)/debian/designate-common/usr/share/designate-common/designate.conf oslo_policy policy_dirs /etc/designate/policy.d
-
-	pkgos-fix-config-default $(CURDIR)/debian/designate-common/usr/share/designate-common/designate.conf DEFAULT pybasedir /usr/lib/python3/dist-packages
-	pkgos-fix-config-default $(CURDIR)/debian/designate-common/usr/share/designate-common/designate.conf oslo_concurrency lock_path /run/lock/designate
-
-	dh_install
-	dh_missing --fail-missing
-
-	# Install other config files
-	mkdir -p $(CURDIR)/debian/designate-common/etc/designate
-	cp etc/designate/rootwrap.conf $(CURDIR)/debian/designate-common/etc/designate/rootwrap.conf
-	cp -r etc/designate/rootwrap.d $(CURDIR)/debian/designate-common/etc/designate
-
-	cp etc/designate/pools.yaml.sample $(CURDIR)/debian/designate-common/usr/share/designate-common/pools.yaml
-	mkdir -p $(CURDIR)/debian/designate-common/usr/share/designate-common/examples
-	cp etc/designate/pools.yaml.* $(CURDIR)/debian/designate-common/usr/share/designate-common/examples
-
 override_dh_sphinxdoc:
 ifeq (,$(findstring nodocs, $(DEB_BUILD_OPTIONS)))
-	if ! PYTHONPATH=. PYTHON=python3 python3 -m sphinx -b html doc/source $(CURDIR)/debian/designate-doc/usr/share/doc/designate-doc/html ; then \
-		cat /tmp/sphinx-err-* ; \
-		exit 1 ; \
-	fi
-	dh_sphinxdoc
+	PYTHONPATH=. sphinx-build -b html doc/source -d debian/doctrees $(CURDIR)/debian/designate-doc/usr/share/doc/designate-doc/html
 endif
 
 override_dh_python3:
diff -pruN 1:21.0.0-1/debian/salsa-ci.yml 1:21.0.0-0ubuntu1/debian/salsa-ci.yml
--- 1:21.0.0-1/debian/salsa-ci.yml	2025-10-01 19:51:25.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/salsa-ci.yml	1970-01-01 00:00:00.000000000 +0000
@@ -1,3 +0,0 @@
-include:
-  - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/salsa-ci.yml
-  - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/pipeline-jobs.yml
diff -pruN 1:21.0.0-1/debian/source/options 1:21.0.0-0ubuntu1/debian/source/options
--- 1:21.0.0-1/debian/source/options	2025-10-01 19:51:25.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/source/options	2025-10-01 13:47:16.000000000 +0000
@@ -1 +1,2 @@
-extend-diff-ignore = "^[.]gitreview$"
+extend-diff-ignore = "^[^/]*[.]egg-info/"
+extend-diff-ignore = "^.launchpad.yaml"
diff -pruN 1:21.0.0-1/debian/tests/control 1:21.0.0-0ubuntu1/debian/tests/control
--- 1:21.0.0-1/debian/tests/control	2025-10-01 19:51:25.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/tests/control	2025-10-01 13:47:16.000000000 +0000
@@ -1,5 +1,12 @@
-Tests: unittests
+Tests:
+ designate-daemons,
 Depends:
- @,
- @builddeps@,
-Restrictions: allow-stderr needs-root
+ designate,
+ designate-api,
+ designate-mdns,
+ designate-pool-manager,
+ designate-sink,
+ designate-worker,
+ designate-zone-manager,
+Restrictions:
+ needs-root,
diff -pruN 1:21.0.0-1/debian/tests/designate-daemons 1:21.0.0-0ubuntu1/debian/tests/designate-daemons
--- 1:21.0.0-1/debian/tests/designate-daemons	1970-01-01 00:00:00.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/tests/designate-daemons	2025-10-01 13:47:16.000000000 +0000
@@ -0,0 +1,27 @@
+#!/bin/bash
+#---------------------------
+# Testing designate daemons
+#--------------------------
+set -e
+DAEMONS=('designate-agent', 
+	'designate-api', 
+	'designate-central',
+ 	'designate-mdns', 
+	'designate-pool-manager', 
+	'designate-producer', 
+	'designate-sink',
+ 	'designate-worker', 
+	'designate-zone-manager')
+
+ret=0
+
+for service in "${SERVICES[@]}"; do
+    if systemctl is-active $service > /dev/null; then
+       echo "OK"
+    else
+       echo "ERROR: ${service} IS NOT RUNNING"
+       ret=1
+    fi
+done
+
+exit $ret
diff -pruN 1:21.0.0-1/debian/tests/unittests 1:21.0.0-0ubuntu1/debian/tests/unittests
--- 1:21.0.0-1/debian/tests/unittests	2025-10-01 19:51:25.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/tests/unittests	1970-01-01 00:00:00.000000000 +0000
@@ -1,5 +0,0 @@
-#!/bin/sh
-
-set -e
-
-pkgos-dh_auto_test --no-py2 'designate\.tests\.unit\.(?!.*test_pool_manager\.test_service\.PoolManagerInitTest\.test_init_no_pool_targets.*|.*agent.*|.*designate\.tests\.unit\.mdns\.test_handler\.MdnsHandleTest\.test_notify.*|.*test_service\.TestDesignateRpcService.*|.*test_service\.TestDesignateServiceInit.*|.*test_service\.TestServiceInit.*|backend\.test_infoblox\.BasicInfobloxBackendTestCase\.test_create_zone_handle_error|backend\.test_infoblox\.BasicInfobloxBackendTestCase\.test_delete_zone_handle_error)'
diff -pruN 1:21.0.0-1/debian/upstream/signing-key.asc 1:21.0.0-0ubuntu1/debian/upstream/signing-key.asc
--- 1:21.0.0-1/debian/upstream/signing-key.asc	1970-01-01 00:00:00.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/upstream/signing-key.asc	2025-10-01 13:47:16.000000000 +0000
@@ -0,0 +1,34 @@
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+
+mDMEZ92jlhYJKwYBBAHaRw8BAQdAnSMr01EpuQHlcTQ8c0ENVDFs9mi/TdWB0IlG
+ZF1eC2S0Qk9wZW5TdGFjayBJbmZyYSAoMjAyNS4yL0ZsYW1pbmdvIEN5Y2xlKSA8
+aW5mcmEtcm9vdEBvcGVuc3RhY2sub3JnPoiWBBMWCAA+FiEExxsAfvl4h/2PtjZc
+60/W1hjmIYEFAmfdo5YCGwMFCQFj9QAFCwkIBwIGFQoJCAsCBBYCAwECHgECF4AA
+CgkQ60/W1hjmIYElLAEAkMjANVr+kVjZGp8KtliT+ySFAqoCQceuscYt7WmeD4wA
+/2gHNfFDJwkWn9JY9mCR2y7gwf6skTWl3ssPogTa84wDiHUEEBYIAB0WIQQiKE9p
+2ezN8994GXkccRrxk/+OVAUCZ92k6wAKCRAccRrxk/+OVMQGAQD0X/Eow2mK/YzZ
+rMO60g2KI767/rnKJWKFUTCZCfswxwD/WxuGjGRB98RZ9IbCcmaUvRqHf9812h60
+/RCoB4AtiwSJAjMEEAEKAB0WIQSXrklvwC3sn8NTsudI+ZYRQ0lYKQUCZ92vKwAK
+CRBI+ZYRQ0lYKdthD/wJh0uxw05WsmFwjuds82JdnH9ow3OdG/0bhds8eEvgYuQe
+ZEQ9/RC5hJ+SiV+/zclIaG+xYHW3VkZUgOmmLxRzmqFbWbDm5yKp7jTqM2zYB4Jx
+EiLB4dWHZFmrcqfkJ06nXVMjGkj73N+DqHWQ6hleaiE7tcbI++w1AN7niL0rW008
+iP8IHoWLh2dJxQlcheVdjCe0jEU3qO8KxhUTeARPD/Vp1CpJWlq9vWs9/bweMrtj
+FsQwxBiZcQ/0zXDnQFUKpbNDFjQZnjmmwTqhopquL5e5mZWr0NussI20JXyZHj7T
+N5ikDAFPf9iM1Apb+/g9njGUgYFEOgEJuDr1oLolZ+9+7uZrKGD1gmdY7pVG12Xn
+2QJ3rft/Wy8Obac+TdA+UoEYQu4LOUpUOmPOcXE/8/fTxybkQGOZm1Ufaddz+6ee
+uHBbIaxI1kh5MrxH5cIaEkvdjOGg+bMyq7C8CE8WgSEN/JiupEZYgDduOSuqGHDp
++9ydEkanNjGN+K4rXJ7ABBv9freINx5kmCAaDzXeIAL8n1/Rzd6Z/acOlC9omDM0
+mYKKIfLMp6Rp7SKnB37Tp0dKGP4r/SJsx5Sxn7XrktVJ1ht5ByipDD6VBN3+OQPx
+56pRLDCk9EFDjbOW0iKzyPx+Nya5G9CN9AqQXe1MlHsFn+q7DEUSmlGZfvtjN7g4
+BGfdo5YSCisGAQQBl1UBBQEBB0DHSvmmZUEZ94olzKZSHa2HBCWhrhOVNFn/0ag8
+KyY5fQMBCAeIfgQYFggAJhYhBMcbAH75eIf9j7Y2XOtP1tYY5iGBBQJn3aOWAhsM
+BQkBY/UAAAoJEOtP1tYY5iGB6XcA+wY0JUi2ZUqH0CRs4EfS6VML/7u08g8ZByN4
+DZ2htqOGAQDmGHHjpMhKz04eDXLpNO6UZ/Q6LnqEXztW8eBXVtiZALgzBGfdpHYW
+CSsGAQQB2kcPAQEHQKH/4Td8MRK/9UxGyPqWWaZl88m4xE48XM4kP6w3asRViO8E
+GBYIACAWIQTHGwB++XiH/Y+2NlzrT9bWGOYhgQUCZ92kdgIbAgCBCRDrT9bWGOYh
+gXYgBBkWCAAdFiEE3cFPzrMpT3Q4I7HG9zFcLOa3NF0FAmfdpHYACgkQ9zFcLOa3
+NF1xqwEA3muioM6tJtSbiCUCDau2QnalBkfov/A2FFIxvnyHbH0A/051M0O09Tcl
+E7tAieH8W63Jhg3n/GzKl36hXqh3ANML8kIA/0eu6JgK+F0s8iiy+sQecTD7W38B
+A8CSZ29ANdlMwzf7AP9araqMvKRpTMAzhQ+1Eluh8FmXQhzeZDhlIZ8DQDQ/CQ==
+=FVKc
+-----END PGP PUBLIC KEY BLOCK-----
diff -pruN 1:21.0.0-1/debian/watch 1:21.0.0-0ubuntu1/debian/watch
--- 1:21.0.0-1/debian/watch	2025-10-01 19:51:25.000000000 +0000
+++ 1:21.0.0-0ubuntu1/debian/watch	2025-10-01 13:47:16.000000000 +0000
@@ -1,3 +1,3 @@
 version=3
-opts="uversionmangle=s/\.0rc/~rc/;s/\.0b1/~b1/;s/\.0b2/~b2/;s/\.0b3/~b3/" \
-https://github.com/openstack/designate/tags .*/(\d[brc\d\.]+)\.tar\.gz
+opts=uversionmangle=s/\.([a-zA-Z])/~$1/;s/%7E/~/;s/\.0b/~b/;s/\.0rc/~rc/,pgpsigurlmangle=s/$/.asc/ \
+ https://tarballs.opendev.org/openstack/designate/ designate-(\d{1,2}\.\d+\.\d+(?:\.\d+)?(?:rc\d+|b\d+)?)\.tar\.gz
diff -pruN 1:21.0.0-1/designate.egg-info/PKG-INFO 1:21.0.0-0ubuntu1/designate.egg-info/PKG-INFO
--- 1:21.0.0-1/designate.egg-info/PKG-INFO	1970-01-01 00:00:00.000000000 +0000
+++ 1:21.0.0-0ubuntu1/designate.egg-info/PKG-INFO	2025-10-01 10:46:35.000000000 +0000
@@ -0,0 +1,87 @@
+Metadata-Version: 2.1
+Name: designate
+Version: 21.0.0
+Summary: DNS as a Service
+Home-page: https://docs.openstack.org/designate/latest/
+Author: OpenStack
+Author-email: openstack-discuss@lists.openstack.org
+Classifier: Environment :: OpenStack
+Classifier: Environment :: No Input/Output (Daemon)
+Classifier: Intended Audience :: Information Technology
+Classifier: Intended Audience :: System Administrators
+Classifier: License :: OSI Approved :: Apache Software License
+Classifier: Operating System :: POSIX :: Linux
+Classifier: Programming Language :: Python
+Classifier: Programming Language :: Python :: Implementation :: CPython
+Classifier: Programming Language :: Python :: 3 :: Only
+Classifier: Programming Language :: Python :: 3
+Classifier: Programming Language :: Python :: 3.10
+Classifier: Programming Language :: Python :: 3.11
+Classifier: Programming Language :: Python :: 3.12
+Classifier: Topic :: Internet :: Name Service (DNS)
+Requires-Python: >=3.10
+License-File: LICENSE
+Requires-Dist: alembic>=1.8.0
+Requires-Dist: eventlet>=0.36.0
+Requires-Dist: Flask!=0.11,>=0.10
+Requires-Dist: greenlet>=0.4.15
+Requires-Dist: Jinja2>=2.10
+Requires-Dist: jsonschema>=3.2.0
+Requires-Dist: keystoneauth1>=3.4.0
+Requires-Dist: keystonemiddleware>=4.17.0
+Requires-Dist: openstacksdk>=0.103.0
+Requires-Dist: oslo.config>=6.8.0
+Requires-Dist: oslo.concurrency>=4.2.0
+Requires-Dist: oslo.messaging>=14.1.0
+Requires-Dist: oslo.middleware>=3.31.0
+Requires-Dist: oslo.log>=4.3.0
+Requires-Dist: oslo.reports>=1.18.0
+Requires-Dist: oslo.rootwrap>=5.15.0
+Requires-Dist: oslo.serialization>=2.25.0
+Requires-Dist: oslo.service>=1.31.0
+Requires-Dist: oslo.upgradecheck>=1.3.0
+Requires-Dist: oslo.utils>=4.7.0
+Requires-Dist: oslo.versionedobjects>=1.31.2
+Requires-Dist: osprofiler>=3.4.0
+Requires-Dist: Paste>=2.0.2
+Requires-Dist: PasteDeploy>=1.5.0
+Requires-Dist: pbr>=3.1.1
+Requires-Dist: pecan!=1.0.2,!=1.0.3,!=1.0.4,!=1.2,>=1.0.0
+Requires-Dist: python-designateclient>=2.12.0
+Requires-Dist: requests>=2.23.0
+Requires-Dist: tenacity>=6.0.0
+Requires-Dist: SQLAlchemy>=1.4.41
+Requires-Dist: stevedore>=1.20.0
+Requires-Dist: WebOb>=1.7.1
+Requires-Dist: dnspython>=2.2.1
+Requires-Dist: oslo.db>=8.3.0
+Requires-Dist: oslo.i18n>=3.20.0
+Requires-Dist: oslo.context>=4.0.0
+Requires-Dist: oslo.policy>=4.5.0
+Requires-Dist: tooz>=1.58.0
+Requires-Dist: futurist>=1.2.0
+Provides-Extra: edgegrid
+Requires-Dist: edgegrid-python>=1.1.1; extra == "edgegrid"
+Provides-Extra: infoblox
+Requires-Dist: infoblox-client>=0.6.0; extra == "infoblox"
+Provides-Extra: test
+Requires-Dist: hacking<6.2.0,>=6.1.0; extra == "test"
+Requires-Dist: coverage!=4.4,>=4.0; extra == "test"
+Requires-Dist: fixtures>=3.0.0; extra == "test"
+Requires-Dist: stestr>=2.0.0; extra == "test"
+Requires-Dist: oslotest>=3.2.0; extra == "test"
+Requires-Dist: requests-mock>=1.2.0; extra == "test"
+Requires-Dist: testtools>=2.2.0; extra == "test"
+Requires-Dist: testscenarios>=0.4; extra == "test"
+Requires-Dist: WebTest>=2.0.27; extra == "test"
+Requires-Dist: tempest>=21.0.0; extra == "test"
+Requires-Dist: bandit>=1.1.0; extra == "test"
+Requires-Dist: doc8>=0.6.0; extra == "test"
+Requires-Dist: Pygments>=2.2.0; extra == "test"
+Requires-Dist: pymemcache!=1.3.0,>=1.2.9; extra == "test"
+Requires-Dist: PyMySQL>=0.8.0; extra == "test"
+Requires-Dist: edgegrid-python>=1.1.1; extra == "test"
+Requires-Dist: infoblox-client>=0.6.0; extra == "test"
+Requires-Dist: bashate>=0.5.1; extra == "test"
+
+file: README.rst
diff -pruN 1:21.0.0-1/designate.egg-info/SOURCES.txt 1:21.0.0-0ubuntu1/designate.egg-info/SOURCES.txt
--- 1:21.0.0-1/designate.egg-info/SOURCES.txt	1970-01-01 00:00:00.000000000 +0000
+++ 1:21.0.0-0ubuntu1/designate.egg-info/SOURCES.txt	2025-10-01 10:46:35.000000000 +0000
@@ -0,0 +1,951 @@
+.coveragerc
+.stestr.conf
+AUTHORS
+CONTRIBUTING.rst
+ChangeLog
+LICENSE
+README.rst
+bindep.txt
+designate.sublime-project
+pyproject.toml
+requirements.txt
+setup.cfg
+setup.py
+test-requirements.txt
+tox.ini
+api-ref/source/conf.py
+api-ref/source/dns-api-v2-blacklist.inc
+api-ref/source/dns-api-v2-index.rst
+api-ref/source/dns-api-v2-limits.inc
+api-ref/source/dns-api-v2-pool.inc
+api-ref/source/dns-api-v2-quota.inc
+api-ref/source/dns-api-v2-recordset.inc
+api-ref/source/dns-api-v2-reverse-floatingips.inc
+api-ref/source/dns-api-v2-service-status.inc
+api-ref/source/dns-api-v2-shared-zones.inc
+api-ref/source/dns-api-v2-tld.inc
+api-ref/source/dns-api-v2-tsigkey.inc
+api-ref/source/dns-api-v2-zone-export.inc
+api-ref/source/dns-api-v2-zone-import.inc
+api-ref/source/dns-api-v2-zone-ownership-transfer-accept.inc
+api-ref/source/dns-api-v2-zone-ownership-transfer-request.inc
+api-ref/source/dns-api-v2-zone-tasks.inc
+api-ref/source/dns-api-v2-zone.inc
+api-ref/source/index.rst
+api-ref/source/parameters.yaml
+api-ref/source/status.yaml
+api-ref/source/samples/blacklists/blacklist-response.json
+api-ref/source/samples/blacklists/create-blacklist-request.json
+api-ref/source/samples/blacklists/list-blacklists-response.json
+api-ref/source/samples/blacklists/update-blacklist-request.json
+api-ref/source/samples/blacklists/update-blacklist-response.json
+api-ref/source/samples/limits/get-limits-response.json
+api-ref/source/samples/pools/list-pools-response.json
+api-ref/source/samples/pools/show-pool-response.json
+api-ref/source/samples/quotas/get-quotas-response.json
+api-ref/source/samples/quotas/set-quotas-request.json
+api-ref/source/samples/quotas/set-quotas-response.json
+api-ref/source/samples/recordsets/create-mx-recordset-request.json
+api-ref/source/samples/recordsets/create-mx-recordset-response.json
+api-ref/source/samples/recordsets/create-recordset-request.json
+api-ref/source/samples/recordsets/create-recordset-response.json
+api-ref/source/samples/recordsets/create-spf-recordset-request.json
+api-ref/source/samples/recordsets/create-spf-recordset-response.json
+api-ref/source/samples/recordsets/create-srv-recordset-request.json
+api-ref/source/samples/recordsets/create-srv-recordset-response.json
+api-ref/source/samples/recordsets/create-sshfp-recordset-request.json
+api-ref/source/samples/recordsets/create-sshfp-recordset-response.json
+api-ref/source/samples/recordsets/delete-recordset-response.json
+api-ref/source/samples/recordsets/list-all-recordset-response.json
+api-ref/source/samples/recordsets/list-recordset-in-zone-response.json
+api-ref/source/samples/recordsets/show-recordset-response.json
+api-ref/source/samples/recordsets/update-recordset-request.json
+api-ref/source/samples/recordsets/update-recordset-response.json
+api-ref/source/samples/reverse_floatingips/list-ptr-record-response.json
+api-ref/source/samples/reverse_floatingips/ptr-record-response.json
+api-ref/source/samples/reverse_floatingips/set-ptr-record-request.json
+api-ref/source/samples/reverse_floatingips/unset-ptr-record-request.json
+api-ref/source/samples/service_status/service_status_list.json
+api-ref/source/samples/service_status/service_status_show.json
+api-ref/source/samples/tlds/create-tld-request.json
+api-ref/source/samples/tlds/list-tlds-response.json
+api-ref/source/samples/tlds/tld-response.json
+api-ref/source/samples/tlds/update-tld-request.json
+api-ref/source/samples/tlds/update-tld-response.json
+api-ref/source/samples/tsigkeys/create-tsigkey-request.json
+api-ref/source/samples/tsigkeys/list-tsigkeys-response.json
+api-ref/source/samples/tsigkeys/tsigkey-response.json
+api-ref/source/samples/tsigkeys/update-tsigkey-request.json
+api-ref/source/samples/tsigkeys/update-tsigkey-response.json
+api-ref/source/samples/versions/get-versions-response.json
+api-ref/source/samples/zones/create-zone-export-response.json
+api-ref/source/samples/zones/create-zone-import-response.json
+api-ref/source/samples/zones/create-zone-request.json
+api-ref/source/samples/zones/create-zone-transfer-accept-request.json
+api-ref/source/samples/zones/create-zone-transfer-accept-response.json
+api-ref/source/samples/zones/create-zone-transfer-request-request.json
+api-ref/source/samples/zones/create-zone-transfer-request-response.json
+api-ref/source/samples/zones/delete-zone-response.json
+api-ref/source/samples/zones/list-share-zone-response.json
+api-ref/source/samples/zones/list-zone-export-response.json
+api-ref/source/samples/zones/list-zone-import-response.json
+api-ref/source/samples/zones/list-zone-transfer-accept-response.json
+api-ref/source/samples/zones/list-zone-transfer-request-response.json
+api-ref/source/samples/zones/list-zones-response.json
+api-ref/source/samples/zones/poolmove-zone-request.json
+api-ref/source/samples/zones/share-zone-request.json
+api-ref/source/samples/zones/share-zone-response.json
+api-ref/source/samples/zones/show-zone-export-content.txt
+api-ref/source/samples/zones/show-zone-export-response.json
+api-ref/source/samples/zones/show-zone-import-response.json
+api-ref/source/samples/zones/show-zone-nameservers-response.json
+api-ref/source/samples/zones/show-zone-transfer-request-response.json
+api-ref/source/samples/zones/update-zone-request.json
+api-ref/source/samples/zones/update-zone-response.json
+api-ref/source/samples/zones/update-zone-transfer-request-request.json
+api-ref/source/samples/zones/update-zone-transfer-request-response.json
+api-ref/source/samples/zones/zone-response.json
+contrib/dns_dump_dnspy.py
+contrib/dns_dump_hex_to_text.py
+contrib/dns_dump_raw.py
+contrib/dns_dump_server.py
+contrib/zoneextractor.py
+contrib/designate-ext-samplehandler/.gitignore
+contrib/designate-ext-samplehandler/MANIFEST.in
+contrib/designate-ext-samplehandler/README.rst
+contrib/designate-ext-samplehandler/requirements.txt
+contrib/designate-ext-samplehandler/setup.cfg
+contrib/designate-ext-samplehandler/setup.py
+contrib/designate-ext-samplehandler/test-requirements.txt
+contrib/designate-ext-samplehandler/designate_ext_samplehandler/__init__.py
+contrib/designate-ext-samplehandler/designate_ext_samplehandler/version.py
+contrib/designate-ext-samplehandler/designate_ext_samplehandler/notification_handler/__init__.py
+contrib/designate-ext-samplehandler/designate_ext_samplehandler/notification_handler/sample.py
+contrib/vagrant/README.rst
+contrib/vagrant/Vagrantfile
+contrib/vagrant/local.conf
+contrib/vagrant/setup_ubuntu_devstack
+designate/__init__.py
+designate/context.py
+designate/coordination.py
+designate/dnsmiddleware.py
+designate/dnsutils.py
+designate/exceptions.py
+designate/heartbeat_emitter.py
+designate/i18n.py
+designate/notifications.py
+designate/plugin.py
+designate/policy.py
+designate/rpc.py
+designate/schema.py
+designate/service.py
+designate/utils.py
+designate/version.py
+designate.egg-info/PKG-INFO
+designate.egg-info/SOURCES.txt
+designate.egg-info/dependency_links.txt
+designate.egg-info/entry_points.txt
+designate.egg-info/not-zip-safe
+designate.egg-info/pbr.json
+designate.egg-info/requires.txt
+designate.egg-info/top_level.txt
+designate/api/__init__.py
+designate/api/middleware.py
+designate/api/service.py
+designate/api/versions.py
+designate/api/wsgi.py
+designate/api/admin/__init__.py
+designate/api/admin/app.py
+designate/api/admin/controllers/__init__.py
+designate/api/admin/controllers/root.py
+designate/api/admin/controllers/extensions/__init__.py
+designate/api/admin/controllers/extensions/counts.py
+designate/api/admin/controllers/extensions/export.py
+designate/api/admin/controllers/extensions/quotas.py
+designate/api/admin/controllers/extensions/reports.py
+designate/api/admin/controllers/extensions/tenants.py
+designate/api/admin/controllers/extensions/zones.py
+designate/api/admin/views/__init__.py
+designate/api/admin/views/base.py
+designate/api/admin/views/extensions/__init__.py
+designate/api/admin/views/extensions/quotas.py
+designate/api/admin/views/extensions/reports.py
+designate/api/v2/__init__.py
+designate/api/v2/app.py
+designate/api/v2/patches.py
+designate/api/v2/controllers/__init__.py
+designate/api/v2/controllers/blacklists.py
+designate/api/v2/controllers/common.py
+designate/api/v2/controllers/errors.py
+designate/api/v2/controllers/floatingips.py
+designate/api/v2/controllers/limits.py
+designate/api/v2/controllers/pools.py
+designate/api/v2/controllers/quotas.py
+designate/api/v2/controllers/recordsets.py
+designate/api/v2/controllers/rest.py
+designate/api/v2/controllers/reverse.py
+designate/api/v2/controllers/root.py
+designate/api/v2/controllers/service_status.py
+designate/api/v2/controllers/tlds.py
+designate/api/v2/controllers/tsigkeys.py
+designate/api/v2/controllers/zones/__init__.py
+designate/api/v2/controllers/zones/nameservers.py
+designate/api/v2/controllers/zones/recordsets.py
+designate/api/v2/controllers/zones/sharedzones.py
+designate/api/v2/controllers/zones/tasks/__init__.py
+designate/api/v2/controllers/zones/tasks/abandon.py
+designate/api/v2/controllers/zones/tasks/exports.py
+designate/api/v2/controllers/zones/tasks/imports.py
+designate/api/v2/controllers/zones/tasks/pool_move.py
+designate/api/v2/controllers/zones/tasks/transfer_accepts.py
+designate/api/v2/controllers/zones/tasks/transfer_requests.py
+designate/api/v2/controllers/zones/tasks/xfr.py
+designate/backend/__init__.py
+designate/backend/base.py
+designate/backend/impl_akamai_v2.py
+designate/backend/impl_bind9.py
+designate/backend/impl_designate.py
+designate/backend/impl_dynect.py
+designate/backend/impl_fake.py
+designate/backend/impl_infoblox.py
+designate/backend/impl_ns1.py
+designate/backend/impl_nsd4.py
+designate/backend/impl_pdns4.py
+designate/central/__init__.py
+designate/central/rpcapi.py
+designate/central/service.py
+designate/cmd/__init__.py
+designate/cmd/api.py
+designate/cmd/central.py
+designate/cmd/manage.py
+designate/cmd/mdns.py
+designate/cmd/producer.py
+designate/cmd/sink.py
+designate/cmd/status.py
+designate/cmd/worker.py
+designate/common/__init__.py
+designate/common/config.py
+designate/common/constants.py
+designate/common/keystone.py
+designate/common/profiler.py
+designate/common/decorators/__init__.py
+designate/common/decorators/lock.py
+designate/common/decorators/notification.py
+designate/common/decorators/rpc.py
+designate/common/policies/__init__.py
+designate/common/policies/base.py
+designate/common/policies/blacklist.py
+designate/common/policies/context.py
+designate/common/policies/pool.py
+designate/common/policies/quota.py
+designate/common/policies/record.py
+designate/common/policies/recordset.py
+designate/common/policies/service_status.py
+designate/common/policies/shared_zones.py
+designate/common/policies/tenant.py
+designate/common/policies/tld.py
+designate/common/policies/tsigkey.py
+designate/common/policies/zone.py
+designate/common/policies/zone_export.py
+designate/common/policies/zone_import.py
+designate/common/policies/zone_transfer_accept.py
+designate/common/policies/zone_transfer_request.py
+designate/conf/__init__.py
+designate/conf/api.py
+designate/conf/base.py
+designate/conf/central.py
+designate/conf/coordination.py
+designate/conf/dynect.py
+designate/conf/heartbeat_emitter.py
+designate/conf/keystone.py
+designate/conf/mdns.py
+designate/conf/network_api.py
+designate/conf/opts.py
+designate/conf/producer.py
+designate/conf/proxy.py
+designate/conf/sink.py
+designate/conf/storage.py
+designate/conf/worker.py
+designate/hacking/__init__.py
+designate/hacking/checks.py
+designate/locale/en_GB/LC_MESSAGES/designate.po
+designate/locale/ko_KR/LC_MESSAGES/designate.po
+designate/locale/ru/LC_MESSAGES/designate.po
+designate/manage/__init__.py
+designate/manage/base.py
+designate/manage/database.py
+designate/manage/pool.py
+designate/manage/service.py
+designate/manage/tlds.py
+designate/mdns/__init__.py
+designate/mdns/handler.py
+designate/mdns/service.py
+designate/network_api/__init__.py
+designate/network_api/base.py
+designate/network_api/fake.py
+designate/network_api/neutron.py
+designate/notification_handler/__init__.py
+designate/notification_handler/base.py
+designate/notification_handler/fake.py
+designate/notification_handler/neutron.py
+designate/notification_handler/nova.py
+designate/objects/__init__.py
+designate/objects/base.py
+designate/objects/blacklist.py
+designate/objects/fields.py
+designate/objects/floating_ip.py
+designate/objects/pool.py
+designate/objects/pool_also_notify.py
+designate/objects/pool_attribute.py
+designate/objects/pool_catalog_zone.py
+designate/objects/pool_nameserver.py
+designate/objects/pool_ns_record.py
+designate/objects/pool_target.py
+designate/objects/pool_target_master.py
+designate/objects/pool_target_option.py
+designate/objects/quota.py
+designate/objects/record.py
+designate/objects/recordset.py
+designate/objects/rrdata_a.py
+designate/objects/rrdata_aaaa.py
+designate/objects/rrdata_caa.py
+designate/objects/rrdata_cert.py
+designate/objects/rrdata_cname.py
+designate/objects/rrdata_https.py
+designate/objects/rrdata_mx.py
+designate/objects/rrdata_naptr.py
+designate/objects/rrdata_ns.py
+designate/objects/rrdata_ptr.py
+designate/objects/rrdata_soa.py
+designate/objects/rrdata_spf.py
+designate/objects/rrdata_srv.py
+designate/objects/rrdata_sshfp.py
+designate/objects/rrdata_svcb.py
+designate/objects/rrdata_txt.py
+designate/objects/service_status.py
+designate/objects/shared_zone.py
+designate/objects/tenant.py
+designate/objects/tld.py
+designate/objects/tsigkey.py
+designate/objects/validation_error.py
+designate/objects/zone.py
+designate/objects/zone_attribute.py
+designate/objects/zone_export.py
+designate/objects/zone_import.py
+designate/objects/zone_master.py
+designate/objects/zone_transfer_accept.py
+designate/objects/zone_transfer_request.py
+designate/objects/adapters/__init__.py
+designate/objects/adapters/base.py
+designate/objects/adapters/api_v2/__init__.py
+designate/objects/adapters/api_v2/base.py
+designate/objects/adapters/api_v2/blacklist.py
+designate/objects/adapters/api_v2/floating_ip.py
+designate/objects/adapters/api_v2/pool.py
+designate/objects/adapters/api_v2/pool_attribute.py
+designate/objects/adapters/api_v2/pool_ns_record.py
+designate/objects/adapters/api_v2/quota.py
+designate/objects/adapters/api_v2/record.py
+designate/objects/adapters/api_v2/recordset.py
+designate/objects/adapters/api_v2/service_status.py
+designate/objects/adapters/api_v2/shared_zone.py
+designate/objects/adapters/api_v2/tld.py
+designate/objects/adapters/api_v2/tsigkey.py
+designate/objects/adapters/api_v2/validation_error.py
+designate/objects/adapters/api_v2/zone.py
+designate/objects/adapters/api_v2/zone_attribute.py
+designate/objects/adapters/api_v2/zone_export.py
+designate/objects/adapters/api_v2/zone_import.py
+designate/objects/adapters/api_v2/zone_master.py
+designate/objects/adapters/api_v2/zone_transfer_accept.py
+designate/objects/adapters/api_v2/zone_transfer_request.py
+designate/objects/adapters/yaml/__init__.py
+designate/objects/adapters/yaml/base.py
+designate/objects/adapters/yaml/pool.py
+designate/objects/adapters/yaml/pool_also_notify.py
+designate/objects/adapters/yaml/pool_attribute.py
+designate/objects/adapters/yaml/pool_catalog_zone.py
+designate/objects/adapters/yaml/pool_nameserver.py
+designate/objects/adapters/yaml/pool_ns_record.py
+designate/objects/adapters/yaml/pool_target.py
+designate/objects/adapters/yaml/pool_target_master.py
+designate/objects/adapters/yaml/pool_target_option.py
+designate/producer/__init__.py
+designate/producer/service.py
+designate/producer/tasks.py
+designate/quota/__init__.py
+designate/quota/base.py
+designate/quota/impl_noop.py
+designate/quota/impl_storage.py
+designate/resources/schemas/admin/quota.json
+designate/resources/templates/bind9-zone.jinja2
+designate/resources/templates/dnsmasq-zone.jinja2
+designate/resources/templates/export-zone.jinja2
+designate/scheduler/__init__.py
+designate/scheduler/base.py
+designate/scheduler/filters/__init__.py
+designate/scheduler/filters/attribute_filter.py
+designate/scheduler/filters/base.py
+designate/scheduler/filters/default_pool_filter.py
+designate/scheduler/filters/fallback_filter.py
+designate/scheduler/filters/in_doubt_default_pool_filter.py
+designate/scheduler/filters/pool_id_attribute_filter.py
+designate/scheduler/filters/random_filter.py
+designate/sink/__init__.py
+designate/sink/service.py
+designate/storage/__init__.py
+designate/storage/sql.py
+designate/storage/sqlalchemy/__init__.py
+designate/storage/sqlalchemy/alembic.ini
+designate/storage/sqlalchemy/base.py
+designate/storage/sqlalchemy/tables.py
+designate/storage/sqlalchemy/types.py
+designate/storage/sqlalchemy/utils.py
+designate/storage/sqlalchemy/alembic/README
+designate/storage/sqlalchemy/alembic/env.py
+designate/storage/sqlalchemy/alembic/legacy_utils.py
+designate/storage/sqlalchemy/alembic/script.py.mako
+designate/storage/sqlalchemy/alembic/versions/0bcf910ea823_add_zone_attributes.py
+designate/storage/sqlalchemy/alembic/versions/15b34ff3ecb8_fix_service_charset.py
+designate/storage/sqlalchemy/alembic/versions/304d41c3847a_add_services.py
+designate/storage/sqlalchemy/alembic/versions/7977deaa5167_add_rrset_indexes_for_filtering_perf.py
+designate/storage/sqlalchemy/alembic/versions/867a331ce1fc_domain_to_zone_rename.py
+designate/storage/sqlalchemy/alembic/versions/9099de8ae11c_add_catalog_zones.py
+designate/storage/sqlalchemy/alembic/versions/91eb1eb7c882_support_caa_records.py
+designate/storage/sqlalchemy/alembic/versions/93a00a815f07_unique_service_status.py
+designate/storage/sqlalchemy/alembic/versions/a005af3aa38e_add_increment_serial.py
+designate/storage/sqlalchemy/alembic/versions/a69b45715cc1_add_delayed_notify_column.py
+designate/storage/sqlalchemy/alembic/versions/b20189fd288e_shared_zone.py
+designate/storage/sqlalchemy/alembic/versions/b8999fd10721_support_naptr_records.py
+designate/storage/sqlalchemy/alembic/versions/bfcfc4a07487_unique_ns_record.py
+designate/storage/sqlalchemy/alembic/versions/c9f427f7180a_liberty.py
+designate/storage/sqlalchemy/alembic/versions/d04819112169_new_pools_tables.py
+designate/storage/sqlalchemy/alembic/versions/d9a1883e93e9_add_fks.py
+designate/storage/sqlalchemy/alembic/versions/e5e2199ed76e_support_cert_records.py
+designate/storage/sqlalchemy/alembic/versions/f828412479ee_add_svcb_and_https_record_types.py
+designate/storage/sqlalchemy/alembic/versions/f9f969f9d85e_change_managed_column_types.py
+designate/tests/README
+designate/tests/__init__.py
+designate/tests/base_fixtures.py
+designate/tests/functional/README
+designate/tests/functional/__init__.py
+designate/tests/functional/test_context.py
+designate/tests/functional/test_dnsmiddleware.py
+designate/tests/functional/test_dnsutils.py
+designate/tests/functional/test_migration.py
+designate/tests/functional/test_sqlalchemy.py
+designate/tests/functional/test_storage.py
+designate/tests/functional/test_upgrade_checks.py
+designate/tests/functional/api/__init__.py
+designate/tests/functional/api/test_middleware.py
+designate/tests/functional/api/test_service.py
+designate/tests/functional/api/admin/__init__.py
+designate/tests/functional/api/admin/extensions/__init__.py
+designate/tests/functional/api/admin/extensions/test_quotas.py
+designate/tests/functional/api/admin/extensions/test_reports.py
+designate/tests/functional/api/v2/__init__.py
+designate/tests/functional/api/v2/test_api.py
+designate/tests/functional/api/v2/test_blacklists.py
+designate/tests/functional/api/v2/test_floatingips.py
+designate/tests/functional/api/v2/test_hostheaders.py
+designate/tests/functional/api/v2/test_import_export.py
+designate/tests/functional/api/v2/test_limits.py
+designate/tests/functional/api/v2/test_pools.py
+designate/tests/functional/api/v2/test_quotas.py
+designate/tests/functional/api/v2/test_recordsets.py
+designate/tests/functional/api/v2/test_service_status.py
+designate/tests/functional/api/v2/test_shared_zones.py
+designate/tests/functional/api/v2/test_tlds.py
+designate/tests/functional/api/v2/test_tsigkeys.py
+designate/tests/functional/api/v2/test_zone_exports.py
+designate/tests/functional/api/v2/test_zone_recordsets.py
+designate/tests/functional/api/v2/test_zone_transfers.py
+designate/tests/functional/api/v2/test_zones.py
+designate/tests/functional/central/__init__.py
+designate/tests/functional/central/test_basic.py
+designate/tests/functional/central/test_service.py
+designate/tests/functional/manage/__init__.py
+designate/tests/functional/manage/test_database.py
+designate/tests/functional/manage/test_pool.py
+designate/tests/functional/manage/test_service.py
+designate/tests/functional/manage/test_tlds.py
+designate/tests/functional/manage/test_update_pool.py
+designate/tests/functional/mdns/__init__.py
+designate/tests/functional/mdns/test_handler.py
+designate/tests/functional/mdns/test_service.py
+designate/tests/functional/notification_handler/__init__.py
+designate/tests/functional/notification_handler/test_base.py
+designate/tests/functional/notification_handler/test_neutron.py
+designate/tests/functional/notification_handler/test_nova.py
+designate/tests/functional/producer/__init__.py
+designate/tests/functional/producer/test_service.py
+designate/tests/functional/producer/test_tasks.py
+designate/tests/functional/quota/__init__.py
+designate/tests/functional/quota/test_quota.py
+designate/tests/functional/quota/test_storage.py
+designate/tests/functional/worker/__init__.py
+designate/tests/functional/worker/test_notify.py
+designate/tests/functional/worker/test_worker_tasks.py
+designate/tests/resources/__init__.py
+designate/tests/resources/pools_yaml/bind9_pools.yaml
+designate/tests/resources/pools_yaml/multiple-pools.yaml
+designate/tests/resources/pools_yaml/pools-catalog-zone.yaml
+designate/tests/resources/pools_yaml/pools.yaml
+designate/tests/resources/pools_yaml/sample_output.yaml
+designate/tests/resources/sample_notifications/neutron/floatingip.delete.start.json
+designate/tests/resources/sample_notifications/neutron/floatingip.update.end_associate.json
+designate/tests/resources/sample_notifications/neutron/floatingip.update.end_disassociate.json
+designate/tests/resources/sample_notifications/neutron/port.create.end.json
+designate/tests/resources/sample_notifications/neutron/port.create.start.json
+designate/tests/resources/sample_notifications/neutron/port.delete.end.json
+designate/tests/resources/sample_notifications/neutron/port.delete.start.json
+designate/tests/resources/sample_notifications/nova/compute.instance.create.end-2.json
+designate/tests/resources/sample_notifications/nova/compute.instance.create.end.json
+designate/tests/resources/sample_notifications/nova/compute.instance.create.start.json
+designate/tests/resources/sample_notifications/nova/compute.instance.delete.start.json
+designate/tests/resources/sample_notifications/nova/compute.instance.shutdown.end.json
+designate/tests/resources/sample_notifications/nova/compute.instance.shutdown.start.json
+designate/tests/resources/sample_notifications/nova/network.floating_ip.allocate.json
+designate/tests/resources/sample_notifications/nova/network.floating_ip.associate.json
+designate/tests/resources/sample_notifications/nova/network.floating_ip.deallocate.json
+designate/tests/resources/sample_notifications/nova/network.floating_ip.disassociate.json
+designate/tests/resources/sample_notifications/nova/scheduler.run_instance.end.json
+designate/tests/resources/sample_notifications/nova/scheduler.run_instance.scheduled.json
+designate/tests/resources/sample_notifications/nova/scheduler.run_instance.start.json
+designate/tests/resources/tlds/tlds_list
+designate/tests/resources/tlds/tlds_list_with_descriptions
+designate/tests/resources/tlds/tlds_list_with_extra_fields
+designate/tests/resources/tlds/tlds_list_with_invalid_tlds
+designate/tests/resources/zonefiles/escaped_example.com.zone
+designate/tests/resources/zonefiles/example.com.zone
+designate/tests/resources/zonefiles/malformed_example.com.zone
+designate/tests/resources/zonefiles/noorigin_example.com.zone
+designate/tests/resources/zonefiles/nosoa_example.com.zone
+designate/tests/resources/zonefiles/two_example.com.zone
+designate/tests/resources/zonefiles/zerosoa_example.com.zone
+designate/tests/unit/README
+designate/tests/unit/__init__.py
+designate/tests/unit/test_conf.py
+designate/tests/unit/test_context.py
+designate/tests/unit/test_coordination.py
+designate/tests/unit/test_dnsmiddleware.py
+designate/tests/unit/test_dnsutils.py
+designate/tests/unit/test_heartbeat_emitter.py
+designate/tests/unit/test_notifications.py
+designate/tests/unit/test_rpc.py
+designate/tests/unit/test_schema.py
+designate/tests/unit/test_service.py
+designate/tests/unit/test_utils.py
+designate/tests/unit/utils.py
+designate/tests/unit/api/__init__.py
+designate/tests/unit/api/test_admin_api.py
+designate/tests/unit/api/test_middleware.py
+designate/tests/unit/api/test_root.py
+designate/tests/unit/api/test_version.py
+designate/tests/unit/api/test_wsgi.py
+designate/tests/unit/api/v2/__init__.py
+designate/tests/unit/api/v2/test_abandon.py
+designate/tests/unit/api/v2/test_api_v2.py
+designate/tests/unit/api/v2/test_floatingips.py
+designate/tests/unit/api/v2/test_patches.py
+designate/tests/unit/api/v2/test_pool_move.py
+designate/tests/unit/api/v2/test_quotas.py
+designate/tests/unit/api/v2/test_recordsets.py
+designate/tests/unit/api/v2/test_rest_controller.py
+designate/tests/unit/api/v2/test_zones.py
+designate/tests/unit/backend/__init__.py
+designate/tests/unit/backend/test_akamai_v2.py
+designate/tests/unit/backend/test_base.py
+designate/tests/unit/backend/test_bind9.py
+designate/tests/unit/backend/test_designate.py
+designate/tests/unit/backend/test_dynect.py
+designate/tests/unit/backend/test_fake.py
+designate/tests/unit/backend/test_infoblox.py
+designate/tests/unit/backend/test_ns1.py
+designate/tests/unit/backend/test_nsd4.py
+designate/tests/unit/backend/test_pdns4.py
+designate/tests/unit/central/__init__.py
+designate/tests/unit/central/test_central.py
+designate/tests/unit/central/test_lock_decorator.py
+designate/tests/unit/cmd/__init__.py
+designate/tests/unit/cmd/test_cmd.py
+designate/tests/unit/cmd/test_manage.py
+designate/tests/unit/common/__init__.py
+designate/tests/unit/common/test_keystone.py
+designate/tests/unit/common/test_profiler.py
+designate/tests/unit/common/test_regex.py
+designate/tests/unit/common/test_rpc_logging.py
+designate/tests/unit/common/test_zone_lock.py
+designate/tests/unit/manage/__init__.py
+designate/tests/unit/manage/test_base.py
+designate/tests/unit/manage/test_pool.py
+designate/tests/unit/mdns/__init__.py
+designate/tests/unit/mdns/test_handler.py
+designate/tests/unit/mdns/test_service.py
+designate/tests/unit/network_api/__init__.py
+designate/tests/unit/network_api/test_base.py
+designate/tests/unit/network_api/test_fake.py
+designate/tests/unit/network_api/test_neutron.py
+designate/tests/unit/notification_handler/__init__.py
+designate/tests/unit/notification_handler/test_fake.py
+designate/tests/unit/notification_handler/test_neutron.py
+designate/tests/unit/notification_handler/test_nova.py
+designate/tests/unit/objects/__init__.py
+designate/tests/unit/objects/test_adapters.py
+designate/tests/unit/objects/test_adapters_v2_api.py
+designate/tests/unit/objects/test_adapters_yaml.py
+designate/tests/unit/objects/test_base.py
+designate/tests/unit/objects/test_fields.py
+designate/tests/unit/objects/test_floating_ip.py
+designate/tests/unit/objects/test_quota.py
+designate/tests/unit/objects/test_recordset.py
+designate/tests/unit/objects/test_rrdata_a.py
+designate/tests/unit/objects/test_rrdata_aaaa.py
+designate/tests/unit/objects/test_rrdata_caa.py
+designate/tests/unit/objects/test_rrdata_cert.py
+designate/tests/unit/objects/test_rrdata_cname.py
+designate/tests/unit/objects/test_rrdata_https.py
+designate/tests/unit/objects/test_rrdata_mx.py
+designate/tests/unit/objects/test_rrdata_naptr.py
+designate/tests/unit/objects/test_rrdata_ns.py
+designate/tests/unit/objects/test_rrdata_ptr.py
+designate/tests/unit/objects/test_rrdata_soa.py
+designate/tests/unit/objects/test_rrdata_spf.py
+designate/tests/unit/objects/test_rrdata_srv.py
+designate/tests/unit/objects/test_rrdata_sshfp.py
+designate/tests/unit/objects/test_rrdata_svcb.py
+designate/tests/unit/objects/test_rrdata_txt.py
+designate/tests/unit/objects/test_zone.py
+designate/tests/unit/objects/test_zone_master.py
+designate/tests/unit/producer/__init__.py
+designate/tests/unit/producer/test_service.py
+designate/tests/unit/producer/test_tasks.py
+designate/tests/unit/scheduler/__init__.py
+designate/tests/unit/scheduler/test_basic.py
+designate/tests/unit/scheduler/test_filters.py
+designate/tests/unit/scheduler/test_permutations.py
+designate/tests/unit/sink/__init__.py
+designate/tests/unit/sink/test_notifications.py
+designate/tests/unit/sink/test_service.py
+designate/tests/unit/storage/__init__.py
+designate/tests/unit/storage/impl_sqlalchemy/__init__.py
+designate/tests/unit/storage/impl_sqlalchemy/test_sqlalchemy.py
+designate/tests/unit/storage/impl_sqlalchemy/alembic/__init__.py
+designate/tests/unit/storage/impl_sqlalchemy/alembic/test_legacy_utils.py
+designate/tests/unit/workers/__init__.py
+designate/tests/unit/workers/test_base_task.py
+designate/tests/unit/workers/test_notify.py
+designate/tests/unit/workers/test_processing.py
+designate/tests/unit/workers/test_rpcapi.py
+designate/tests/unit/workers/test_service.py
+designate/tests/unit/workers/test_task_config.py
+designate/tests/unit/workers/test_xfr.py
+designate/tests/unit/workers/test_zone_tasks.py
+designate/worker/README.md
+designate/worker/__init__.py
+designate/worker/processing.py
+designate/worker/rpcapi.py
+designate/worker/service.py
+designate/worker/tasks/__init__.py
+designate/worker/tasks/base.py
+designate/worker/tasks/zone.py
+designate/wsgi/__init__.py
+designate/wsgi/api.py
+devstack/README.rst
+devstack/exercise.sh
+devstack/plugin.sh
+devstack/settings
+devstack/designate_plugins/backend-akamai-v2
+devstack/designate_plugins/backend-bind9
+devstack/designate_plugins/backend-designate
+devstack/designate_plugins/backend-dynect
+devstack/designate_plugins/backend-fake
+devstack/designate_plugins/backend-infoblox
+devstack/designate_plugins/backend-multipool-bind9
+devstack/designate_plugins/backend-ns1
+devstack/designate_plugins/backend-pdns4
+devstack/designate_plugins/backend-pdns4-mysql-db.sql
+devstack/designate_plugins/backend-pdns4-pgsql-db.sql
+devstack/files/apache-designate-api.template
+devstack/gate/gate_hook.sh
+devstack/gate/post_test_hook.sh
+devstack/gate/run_cli_tests.sh
+devstack/gate/run_tempest_tests.sh
+devstack/lib/wsgi
+devstack/upgrade/resources.sh
+devstack/upgrade/settings
+devstack/upgrade/shutdown.sh
+devstack/upgrade/upgrade.sh
+devstack/upgrade/from-2024.2/upgrade-designate
+devstack/upgrade/from-2025.1/upgrade-designate
+devstack/upgrade/from-xena/upgrade-designate
+doc/requirements.txt
+doc/ext/__init__.py
+doc/ext/custom_css.py
+doc/ext/support_matrix.py
+doc/ext/assets/support-matrix.css
+doc/ext/assets/support-matrix.js
+doc/source/conf.py
+doc/source/index.rst
+doc/source/_extra/.htaccess
+doc/source/_static/.placeholder
+doc/source/admin/blacklists.rst
+doc/source/admin/config.rst
+doc/source/admin/ha.rst
+doc/source/admin/index.rst
+doc/source/admin/multiple-pools.rst
+doc/source/admin/notifications.rst
+doc/source/admin/policy.rst
+doc/source/admin/pool-scheduler.rst
+doc/source/admin/pools.rst
+doc/source/admin/production-guidelines.rst
+doc/source/admin/quotas.rst
+doc/source/admin/support-matrix.ini
+doc/source/admin/support-matrix.rst
+doc/source/admin/tlds.rst
+doc/source/admin/troubleshooting.rst
+doc/source/admin/backends/akamai_v2.rst
+doc/source/admin/backends/bind9.rst
+doc/source/admin/backends/index.rst
+doc/source/admin/backends/infoblox.rst
+doc/source/admin/backends/ns1.rst
+doc/source/admin/backends/pdns4.rst
+doc/source/admin/backends/sample_yaml_snippets/akamai-v2.yaml
+doc/source/admin/backends/sample_yaml_snippets/bind.yaml
+doc/source/admin/backends/sample_yaml_snippets/ns1.yaml
+doc/source/admin/backends/sample_yaml_snippets/pdns4.yaml
+doc/source/admin/samples/config.rst
+doc/source/admin/samples/index.rst
+doc/source/admin/samples/policy-yaml.rst
+doc/source/admin/upgrades/index.rst
+doc/source/admin/upgrades/kilo.rst
+doc/source/admin/upgrades/mitaka.rst
+doc/source/admin/upgrades/newton.rst
+doc/source/admin/upgrades/ocata.rst
+doc/source/cli/designate-manage.rst
+doc/source/cli/designate-status.rst
+doc/source/cli/index.rst
+doc/source/configuration/index.rst
+doc/source/contributor/architecture.rst
+doc/source/contributor/devstack.rst
+doc/source/contributor/getting-involved.rst
+doc/source/contributor/gmr.rst
+doc/source/contributor/index.rst
+doc/source/contributor/integrations.rst
+doc/source/contributor/ubuntu-dev.rst
+doc/source/contributor/sourcedoc/api.rst
+doc/source/contributor/sourcedoc/backend.rst
+doc/source/contributor/sourcedoc/central.rst
+doc/source/contributor/sourcedoc/index.rst
+doc/source/contributor/sourcedoc/mdns.rst
+doc/source/contributor/sourcedoc/objects.rst
+doc/source/contributor/sourcedoc/quota.rst
+doc/source/contributor/sourcedoc/sink.rst
+doc/source/contributor/sourcedoc/storage.rst
+doc/source/diagrams/Designate-MultiZone.dia
+doc/source/diagrams/Designate-PowerDNS-Detail.dia
+doc/source/diagrams/Designate-Simple.dia
+doc/source/diagrams/README
+doc/source/examples/basic-pools-sample.yaml
+doc/source/images/Designate-Arch.png
+doc/source/images/Designate-Arch.svg
+doc/source/images/Designate-DNS-Integration.png
+doc/source/images/Designate-DNS-Integration.svg
+doc/source/images/Designate-DNS-Overview.png
+doc/source/images/Designate-DNS-Overview.svg
+doc/source/images/Designate-DNS-Resolvers.png
+doc/source/images/Designate-DNS-Resolvers.svg
+doc/source/install/common_prerequisites.rst
+doc/source/install/create-zone.rst
+doc/source/install/get_started.rst
+doc/source/install/index.rst
+doc/source/install/install-rdo.rst
+doc/source/install/install-ubuntu.rst
+doc/source/install/install.rst
+doc/source/install/next-steps.rst
+doc/source/install/verify.rst
+doc/source/intro/index.rst
+doc/source/reference/glossary.rst
+doc/source/reference/index.rst
+doc/source/user/importexport.rst
+doc/source/user/index.rst
+doc/source/user/manage-ptr-records.rst
+doc/source/user/manage-recordsets.rst
+doc/source/user/manage-zones.rst
+doc/source/user/neutron-integration.rst
+doc/source/user/secondary-zones.rst
+doc/source/user/shared-zones.rst
+doc/source/user/zone-transfer.rst
+etc/designate/README-designate.conf.txt
+etc/designate/api-paste.ini
+etc/designate/designate-config-generator.conf
+etc/designate/designate-policy-generator.conf
+etc/designate/policy.yaml.sample
+etc/designate/pools.yaml.sample
+etc/designate/pools.yaml.sample-akamai_v2
+etc/designate/pools.yaml.sample-bind
+etc/designate/pools.yaml.sample-infoblox
+etc/designate/pools.yaml.sample-multiple-pools
+etc/designate/rootwrap.conf
+etc/designate/rootwrap.d/bind9.filters
+etc/designate/rootwrap.d/djbdns.filters
+etc/designate/rootwrap.d/knot2.filters
+playbooks/enable-fips.yaml
+playbooks/designate-bind9/post.yaml
+playbooks/designate-pdns4/post.yaml
+rally-jobs/README.rst
+rally-jobs/designate-designate.yaml
+rally-jobs/extra/README.rst
+rally-jobs/plugins/README.rst
+rally-jobs/plugins/__init__.py
+releasenotes/notes/.placeholder
+releasenotes/notes/Add-API-versioning-f5747a0bc766fb14.yaml
+releasenotes/notes/Add-Shared-Zones-47df0368bb3ee466.yaml
+releasenotes/notes/Add-Tsig-secret-validation-5d2f3875d32efd83.yaml
+releasenotes/notes/Bump-dnspython-requirement-to-2.2.1-a3d062a1e16cc8a9.yaml
+releasenotes/notes/CAA_NAPTR_records-5e2e466a5bc18a31.yaml
+releasenotes/notes/CERT_records-eb9b786f480851ff.yaml
+releasenotes/notes/Deprecate-the-agent-framework-a87c5e286694fb38.yaml
+releasenotes/notes/Fix-Delete-back-end-zone-resources-upon-zone-deletion-da0051432c95c8e2.yaml
+releasenotes/notes/Fix-designate-manage-pool-update-with-missing-attributes-3037b2dad30f84e2.yaml
+releasenotes/notes/Fix-dotted-SOA-email-address-07ab8cc1f5956bf5.yaml
+releasenotes/notes/Fix-jsonschema-4.16.0-compatibility-aa65062bc55552f2.yaml
+releasenotes/notes/Fix-list-and-show-shared-zones-8a42a6b5f4910fc7.yaml
+releasenotes/notes/Fix-metadata.bind-use-on-upgrade-3ca33425f341ac5b.yaml
+releasenotes/notes/Fix-recordset-records-quota-76ed3095dd2afbbe.yaml
+releasenotes/notes/Fix-share-zone-with-zone-owner-31a20c57a65c0cc4.yaml
+releasenotes/notes/Fix-to-address-denylist-invalid-patterns-not-being-checked-ec1f1316ccc6cb1d.yaml
+releasenotes/notes/Fix-update-zone-create-zone-ada1fd81de479492.yaml
+releasenotes/notes/Fix-zone-list-when-zone-shared-more-than-once-288b57cafeba82df.yaml
+releasenotes/notes/Mention-sizelimit-tuning-for-zone-import-6d806b32c668c9c9.yaml
+releasenotes/notes/RFC9460_svcb_records-f828412479ee.yaml
+releasenotes/notes/Remove-Akamai-eNDS-backend-1c73a734e8f8ddfa.yaml
+releasenotes/notes/Replace-neutronclient-with-openstacksdk-5ae199bc327376b9.yaml
+releasenotes/notes/Require-all-projects-for-set-quotas-with-non-project-scoped-tokens-ffe3082db3dbb55b.yaml
+releasenotes/notes/Support-scoped-tokens-6b7d6052a258cd11.yaml
+releasenotes/notes/Switch-to-alembic-migrations-15b7701f4e8b37c1.yaml
+releasenotes/notes/Update-for-SQLAlchemy-2.x-d4a5e2e3227f199e.yaml
+releasenotes/notes/Workaround-unassigned-opcode-14-d5e1c759db58bb10.yaml
+releasenotes/notes/add-catalog-zone-support-8e9c14c3f01e00fc.yaml
+releasenotes/notes/add-designate-manage_service_clean_cmd-8756ff607ff74d9b.yaml
+releasenotes/notes/add-multiple-pools-docs-19071225709c5702.yaml
+releasenotes/notes/agent-port-number-c28462562a74cbf9.yaml
+releasenotes/notes/akamai-v2-5a3edb35f59a17c2.yaml
+releasenotes/notes/api-dot-json-324038360202e86b.yaml
+releasenotes/notes/api-mdns-multiple-bind-c78853de46ee587d.yaml
+releasenotes/notes/attribute-filter-f06a53b61f5fd111.yaml
+releasenotes/notes/batch-increment-serial-07485eb3bbbac6c3.yaml
+releasenotes/notes/bp-designate-os-profiler-3f507d5e1e319f3d.yaml
+releasenotes/notes/bug-1755788-txt-spf-validation-d18e43c12691132a.yaml
+releasenotes/notes/bug-1768824-service_statuses-constraint-7a30eb78dc63b86f.yaml
+releasenotes/notes/bug-1827070-service_status-multiple-workers-cf99fe9e4eaf57ff.yaml
+releasenotes/notes/bug-1828534-ensure-coordination-ids-are-encoded-b5f32b9e16339251.yaml
+releasenotes/notes/bug-1832799-allow-topic-override-7540c14a10b8e3ae.yaml
+releasenotes/notes/bug-1926429-allow-ttl-min-of-zero-688f7c2cf095d89d.yaml
+releasenotes/notes/bug-1958533-allow-caa-mail-subaddr-d02cdc46bbb118ad.yaml
+releasenotes/notes/bug-1967825-c3463edde9a9dd7a.yaml
+releasenotes/notes/bug-2015762-sink-delete-fails-intermittently-53168cf5cd830b59.yaml
+releasenotes/notes/bug-2106112-357c75809fd4e8f4.yaml
+releasenotes/notes/bugfix-1971856-3938a55b5494b8b8.yaml
+releasenotes/notes/cfg-notification-remove.yaml
+releasenotes/notes/clean-up-neutron-opts-1ff35105972d3acb.yaml
+releasenotes/notes/cleanup-api-options-dalmetian-32e879f025ab6580.yaml
+releasenotes/notes/deprecate-json-formatted-policy-file-a6a464a8d35e02a5.yaml
+releasenotes/notes/deprecate-ssl-middleware-opts-bee401944e40fc63.yaml
+releasenotes/notes/djbdns-agent-backend-c84e9eeab48d2e01.yaml
+releasenotes/notes/drop-py-2-7-737ea2547cb7ea06.yaml
+releasenotes/notes/edgegrid-optional-ab7662a9e71612d3.yaml
+releasenotes/notes/enable-host-header-d759b65d8b0e67a1.yaml
+releasenotes/notes/enforce-utf8-tables-mysql-274b5c3c1afe4b3b.yaml
+releasenotes/notes/experimental-wsgi-support-8370a8d9b298d5ca.yaml
+releasenotes/notes/fix-axfr-actions-order-4fa6c792bcfe67a9.yaml
+releasenotes/notes/fix-backlog-1a13bd80729c2bed.yaml
+releasenotes/notes/fix-designate-manage-pool-7d812f938e894133.yaml
+releasenotes/notes/fix-recordset-status-204e2747ef47d5ad.yaml
+releasenotes/notes/fix-refresh-secondary-zone-task-79f68d3f7377181c.yaml
+releasenotes/notes/fix-service-status-ba18270651011ee6.yaml
+releasenotes/notes/fix-zone-transfer-request-scoped-token-fc9d3be407e1a50a.yaml
+releasenotes/notes/improved-infoblox-backend-e24cee40ba568e65.yaml
+releasenotes/notes/knot-agent-backend-db2893aa97d85a1d.yaml
+releasenotes/notes/mdns-rpc-moved-0e7eea194064834a.yaml
+releasenotes/notes/mdns-tcp-keepidle-5ef6ec194a892f8a.yaml
+releasenotes/notes/mini-dns-tcp-c1a15742f5c71739.yaml
+releasenotes/notes/multilevel-tlds-3dadd285fed82715.yaml
+releasenotes/notes/new-ptr-status-69958252a2f294c9.yaml
+releasenotes/notes/new-service-layer-8023c242de89075a.yaml
+releasenotes/notes/newton-rc-1-eddc78fac760b98a.yaml
+releasenotes/notes/pdns4-tsig-1fda534c01d90138.yaml
+releasenotes/notes/pluggable-notifications-bd049b755a2ace9c.yaml
+releasenotes/notes/policy-in-code-8d3f4f89e2ede50f.yaml
+releasenotes/notes/pool-config-db-45a2cad74e22d95e.yaml
+releasenotes/notes/pool-listener-6689ffa50345ba6e.yaml
+releasenotes/notes/pool-manager-disabled-ff8582b5f86d2360.yaml
+releasenotes/notes/pool_scheduler-32e34dda9484ef9a.yaml
+releasenotes/notes/quotas-validate-project-36a2a88b66bc6d63.yaml
+releasenotes/notes/recordset-api-2c82abf569f7623e.yaml
+releasenotes/notes/remove-deprecated-agent-1ef95b8608e2a41b.yaml
+releasenotes/notes/remove-deprecated-mdns-options-d720efab5ab275d6.yaml
+releasenotes/notes/remove-deprecated-storage-driver-option-e3b5e3448e81c8cb.yaml
+releasenotes/notes/remove-more-unused-rpc-calls-d0199cf5518da6d6.yaml
+releasenotes/notes/remove-netaddr-requirement-ab9b9c2d15aa8e1c.yaml
+releasenotes/notes/remove-py38-28e9b2f3df6af4ac.yaml
+releasenotes/notes/remove-unused-rpc-calls-b123902ea0c55c19.yaml
+releasenotes/notes/remove-v1-api-e38de408c6454de2.yaml
+releasenotes/notes/remove-wsgi-scripts-d848069ac50cf062.yaml
+releasenotes/notes/removed-deprecated-managed-210a00cdaf975b8f.yaml
+releasenotes/notes/removed-mdns-notify-cae01bac02d214a9.yaml
+releasenotes/notes/removed-metrics-11a53cf88e1ea224.yaml
+releasenotes/notes/removed-pool-manager-a1a9466aceb44b9f.yaml
+releasenotes/notes/removing-deprectated-pdns-mysql-backend-1babc968f5778ae6.yaml
+releasenotes/notes/rpc-version-update-f87b852b361d0aad.yaml
+releasenotes/notes/service-status-ab0e696c8f5fdef8.yaml
+releasenotes/notes/soa_refresh_interval_randomization-fcc1d0d63124699b.yaml
+releasenotes/notes/stein-upgrade-checkers-cli-b8518126fff82be6.yaml
+releasenotes/notes/unused-rpc-calls-7df4dcbcc19c6f60.yaml
+releasenotes/notes/update-designate-manage-command-af0aec02ab582d50.yaml
+releasenotes/notes/v1-disabled-ffebc0434fa0665f.yaml
+releasenotes/notes/v2-api-quotas-dd7e189cddcf7b96.yaml
+releasenotes/notes/validate-doublequotes-6c4ed4f65a9d5e4b.yaml
+releasenotes/notes/worker-executor-84d983c92dd13b49.yaml
+releasenotes/notes/zone-pool-move-7bb8e1f0839c3c0d.yaml
+releasenotes/notes/zone_name-null-zone-trasfer-request-response-a2e316872798d1df.yaml
+releasenotes/notes/zones_unlimited_quota-81a2dfba1f532c9c.yaml
+releasenotes/source/2023.1.rst
+releasenotes/source/2023.2.rst
+releasenotes/source/2024.1.rst
+releasenotes/source/2024.2.rst
+releasenotes/source/2025.1.rst
+releasenotes/source/conf.py
+releasenotes/source/index.rst
+releasenotes/source/liberty.rst
+releasenotes/source/mitaka.rst
+releasenotes/source/newton.rst
+releasenotes/source/ocata.rst
+releasenotes/source/pike.rst
+releasenotes/source/queens.rst
+releasenotes/source/rocky.rst
+releasenotes/source/stein.rst
+releasenotes/source/train.rst
+releasenotes/source/unreleased.rst
+releasenotes/source/ussuri.rst
+releasenotes/source/victoria.rst
+releasenotes/source/wallaby.rst
+releasenotes/source/xena.rst
+releasenotes/source/yoga.rst
+releasenotes/source/zed.rst
+releasenotes/source/_static/.placeholder
+releasenotes/source/_templates/.placeholder
+releasenotes/source/locale/en_GB/LC_MESSAGES/releasenotes.po
+releasenotes/source/locale/fr/LC_MESSAGES/releasenotes.po
+releasenotes/source/locale/ja/LC_MESSAGES/releasenotes.po
+roles/bind-logs-conf/defaults/main.yaml
+roles/bind-logs-conf/tasks/main.yaml
+roles/pdns4-logs-conf/defaults/main.yaml
+roles/pdns4-logs-conf/tasks/main.yaml
+tools/install_venv.py
+tools/install_venv_common.py
+tools/with_venv.sh
+tools/mysql_pending_notify_bench/README
+tools/mysql_pending_notify_bench/runner
+zuul.d/jobs.yaml
+zuul.d/projects.yaml
\ No newline at end of file
diff -pruN 1:21.0.0-1/designate.egg-info/dependency_links.txt 1:21.0.0-0ubuntu1/designate.egg-info/dependency_links.txt
--- 1:21.0.0-1/designate.egg-info/dependency_links.txt	1970-01-01 00:00:00.000000000 +0000
+++ 1:21.0.0-0ubuntu1/designate.egg-info/dependency_links.txt	2025-10-01 10:46:35.000000000 +0000
@@ -0,0 +1 @@
+
diff -pruN 1:21.0.0-1/designate.egg-info/entry_points.txt 1:21.0.0-0ubuntu1/designate.egg-info/entry_points.txt
--- 1:21.0.0-1/designate.egg-info/entry_points.txt	1970-01-01 00:00:00.000000000 +0000
+++ 1:21.0.0-0ubuntu1/designate.egg-info/entry_points.txt	2025-10-01 10:46:35.000000000 +0000
@@ -0,0 +1,81 @@
+[console_scripts]
+designate-api = designate.cmd.api:main
+designate-central = designate.cmd.central:main
+designate-manage = designate.cmd.manage:main
+designate-mdns = designate.cmd.mdns:main
+designate-producer = designate.cmd.producer:main
+designate-rootwrap = oslo_rootwrap.cmd:main
+designate-sink = designate.cmd.sink:main
+designate-status = designate.cmd.status:main
+designate-worker = designate.cmd.worker:main
+
+[designate.api.admin.extensions]
+quotas = designate.api.admin.controllers.extensions.quotas:QuotasController
+reports = designate.api.admin.controllers.extensions.reports:ReportsController
+zones = designate.api.admin.controllers.extensions.zones:ZonesController
+
+[designate.backend]
+akamai_v2 = designate.backend.impl_akamai_v2:AkamaiBackend
+bind9 = designate.backend.impl_bind9:Bind9Backend
+designate = designate.backend.impl_designate:DesignateBackend
+dynect = designate.backend.impl_dynect:DynECTBackend
+fake = designate.backend.impl_fake:FakeBackend
+infoblox = designate.backend.impl_infoblox:InfobloxBackend
+ns1 = designate.backend.impl_ns1:NS1Backend
+nsd4 = designate.backend.impl_nsd4:NSD4Backend
+pdns4 = designate.backend.impl_pdns4:PDNS4Backend
+
+[designate.heartbeat_emitter]
+noop = designate.heartbeat_emitter:NoopEmitter
+rpc = designate.heartbeat_emitter:RpcEmitter
+
+[designate.manage]
+database = designate.manage.database:DatabaseCommands
+pool = designate.manage.pool:PoolCommands
+service = designate.manage.service:ServiceCommands
+tlds = designate.manage.tlds:TLDCommands
+
+[designate.network_api]
+fake = designate.network_api.fake:FakeNetworkAPI
+neutron = designate.network_api.neutron:NeutronNetworkAPI
+
+[designate.notification.handler]
+fake = designate.notification_handler.fake:FakeHandler
+neutron_floatingip = designate.notification_handler.neutron:NeutronFloatingHandler
+nova_fixed = designate.notification_handler.nova:NovaFixedHandler
+
+[designate.notification.plugin]
+audit = designate.notifications:Audit
+default = designate.notifications:Default
+
+[designate.producer_tasks]
+delayed_notify = designate.producer.tasks:PeriodicGenerateDelayedNotifyTask
+increment_serial = designate.producer.tasks:PeriodicIncrementSerialTask
+periodic_exists = designate.producer.tasks:PeriodicExistsTask
+periodic_secondary_refresh = designate.producer.tasks:PeriodicSecondaryRefreshTask
+worker_periodic_recovery = designate.producer.tasks:WorkerPeriodicRecovery
+zone_purge = designate.producer.tasks:DeletedZonePurgeTask
+
+[designate.quota]
+noop = designate.quota.impl_noop:NoopQuota
+storage = designate.quota.impl_storage:StorageQuota
+
+[designate.scheduler.filters]
+attribute = designate.scheduler.filters.attribute_filter:AttributeFilter
+default_pool = designate.scheduler.filters.default_pool_filter:DefaultPoolFilter
+fallback = designate.scheduler.filters.fallback_filter:FallbackFilter
+in_doubt_default_pool = designate.scheduler.filters.in_doubt_default_pool_filter:InDoubtDefaultPoolFilter
+pool_id_attribute = designate.scheduler.filters.pool_id_attribute_filter:PoolIDAttributeFilter
+random = designate.scheduler.filters.random_filter:RandomFilter
+
+[oslo.config.opts]
+designate.conf = designate.conf.opts:list_opts
+
+[oslo.config.opts.defaults]
+designate.conf = designate.common.config:set_defaults
+
+[oslo.policy.enforcer]
+designate = designate.policy:get_enforcer
+
+[oslo.policy.policies]
+designate = designate.common.policies:list_rules
diff -pruN 1:21.0.0-1/designate.egg-info/not-zip-safe 1:21.0.0-0ubuntu1/designate.egg-info/not-zip-safe
--- 1:21.0.0-1/designate.egg-info/not-zip-safe	1970-01-01 00:00:00.000000000 +0000
+++ 1:21.0.0-0ubuntu1/designate.egg-info/not-zip-safe	2025-10-01 10:46:35.000000000 +0000
@@ -0,0 +1 @@
+
diff -pruN 1:21.0.0-1/designate.egg-info/pbr.json 1:21.0.0-0ubuntu1/designate.egg-info/pbr.json
--- 1:21.0.0-1/designate.egg-info/pbr.json	1970-01-01 00:00:00.000000000 +0000
+++ 1:21.0.0-0ubuntu1/designate.egg-info/pbr.json	2025-10-01 10:46:35.000000000 +0000
@@ -0,0 +1 @@
+{"git_version": "035453ff", "is_release": true}
\ No newline at end of file
diff -pruN 1:21.0.0-1/designate.egg-info/requires.txt 1:21.0.0-0ubuntu1/designate.egg-info/requires.txt
--- 1:21.0.0-1/designate.egg-info/requires.txt	1970-01-01 00:00:00.000000000 +0000
+++ 1:21.0.0-0ubuntu1/designate.egg-info/requires.txt	2025-10-01 10:46:35.000000000 +0000
@@ -0,0 +1,65 @@
+alembic>=1.8.0
+eventlet>=0.36.0
+Flask!=0.11,>=0.10
+greenlet>=0.4.15
+Jinja2>=2.10
+jsonschema>=3.2.0
+keystoneauth1>=3.4.0
+keystonemiddleware>=4.17.0
+openstacksdk>=0.103.0
+oslo.config>=6.8.0
+oslo.concurrency>=4.2.0
+oslo.messaging>=14.1.0
+oslo.middleware>=3.31.0
+oslo.log>=4.3.0
+oslo.reports>=1.18.0
+oslo.rootwrap>=5.15.0
+oslo.serialization>=2.25.0
+oslo.service>=1.31.0
+oslo.upgradecheck>=1.3.0
+oslo.utils>=4.7.0
+oslo.versionedobjects>=1.31.2
+osprofiler>=3.4.0
+Paste>=2.0.2
+PasteDeploy>=1.5.0
+pbr>=3.1.1
+pecan!=1.0.2,!=1.0.3,!=1.0.4,!=1.2,>=1.0.0
+python-designateclient>=2.12.0
+requests>=2.23.0
+tenacity>=6.0.0
+SQLAlchemy>=1.4.41
+stevedore>=1.20.0
+WebOb>=1.7.1
+dnspython>=2.2.1
+oslo.db>=8.3.0
+oslo.i18n>=3.20.0
+oslo.context>=4.0.0
+oslo.policy>=4.5.0
+tooz>=1.58.0
+futurist>=1.2.0
+
+[edgegrid]
+edgegrid-python>=1.1.1
+
+[infoblox]
+infoblox-client>=0.6.0
+
+[test]
+hacking<6.2.0,>=6.1.0
+coverage!=4.4,>=4.0
+fixtures>=3.0.0
+stestr>=2.0.0
+oslotest>=3.2.0
+requests-mock>=1.2.0
+testtools>=2.2.0
+testscenarios>=0.4
+WebTest>=2.0.27
+tempest>=21.0.0
+bandit>=1.1.0
+doc8>=0.6.0
+Pygments>=2.2.0
+pymemcache!=1.3.0,>=1.2.9
+PyMySQL>=0.8.0
+edgegrid-python>=1.1.1
+infoblox-client>=0.6.0
+bashate>=0.5.1
diff -pruN 1:21.0.0-1/designate.egg-info/top_level.txt 1:21.0.0-0ubuntu1/designate.egg-info/top_level.txt
--- 1:21.0.0-1/designate.egg-info/top_level.txt	1970-01-01 00:00:00.000000000 +0000
+++ 1:21.0.0-0ubuntu1/designate.egg-info/top_level.txt	2025-10-01 10:46:35.000000000 +0000
@@ -0,0 +1 @@
+designate
diff -pruN 1:21.0.0-1/setup.cfg 1:21.0.0-0ubuntu1/setup.cfg
--- 1:21.0.0-1/setup.cfg	2025-09-08 13:44:31.000000000 +0000
+++ 1:21.0.0-0ubuntu1/setup.cfg	2025-10-01 10:46:36.039539000 +0000
@@ -2,121 +2,111 @@
 name = designate
 description = DNS as a Service
 long_description = file: README.rst
-
 author = OpenStack
 author_email = openstack-discuss@lists.openstack.org
 url = https://docs.openstack.org/designate/latest/
 python_requires = >=3.10
-classifiers =
-    Environment :: OpenStack
-    Environment :: No Input/Output (Daemon)
-    Intended Audience :: Information Technology
-    Intended Audience :: System Administrators
-    License :: OSI Approved :: Apache Software License
-    Operating System :: POSIX :: Linux
-    Programming Language :: Python
-    Programming Language :: Python :: Implementation :: CPython
-    Programming Language :: Python :: 3 :: Only
-    Programming Language :: Python :: 3
-    Programming Language :: Python :: 3.10
-    Programming Language :: Python :: 3.11
-    Programming Language :: Python :: 3.12
-    Topic :: Internet :: Name Service (DNS)
+classifiers = 
+	Environment :: OpenStack
+	Environment :: No Input/Output (Daemon)
+	Intended Audience :: Information Technology
+	Intended Audience :: System Administrators
+	License :: OSI Approved :: Apache Software License
+	Operating System :: POSIX :: Linux
+	Programming Language :: Python
+	Programming Language :: Python :: Implementation :: CPython
+	Programming Language :: Python :: 3 :: Only
+	Programming Language :: Python :: 3
+	Programming Language :: Python :: 3.10
+	Programming Language :: Python :: 3.11
+	Programming Language :: Python :: 3.12
+	Topic :: Internet :: Name Service (DNS)
 
 [files]
-packages =
-    designate
-data_files =
-    etc/designate =
-        etc/designate/api-paste.ini
-        etc/designate/rootwrap.conf
-    etc/designate/rootwrap.d = etc/designate/rootwrap.d/*
+packages = 
+	designate
+data_files = 
+	etc/designate =
+	etc/designate/api-paste.ini
+	etc/designate/rootwrap.conf
+	etc/designate/rootwrap.d = etc/designate/rootwrap.d/*
 
 [extras]
-edgegrid =
-  edgegrid-python>=1.1.1 # Apache-2.0
-infoblox =
-  infoblox-client>=0.6.0 # Apache-2.0
+edgegrid = 
+	edgegrid-python>=1.1.1 # Apache-2.0
+infoblox = 
+	infoblox-client>=0.6.0 # Apache-2.0
 
 [entry_points]
-oslo.config.opts =
-    designate.conf = designate.conf.opts:list_opts
-
-oslo.config.opts.defaults =
-    designate.conf = designate.common.config:set_defaults
-
-oslo.policy.policies =
-    designate = designate.common.policies:list_rules
-
-oslo.policy.enforcer =
-    designate = designate.policy:get_enforcer
-
-console_scripts =
-    designate-rootwrap = oslo_rootwrap.cmd:main
-    designate-api = designate.cmd.api:main
-    designate-central = designate.cmd.central:main
-    designate-manage = designate.cmd.manage:main
-    designate-mdns = designate.cmd.mdns:main
-    designate-sink = designate.cmd.sink:main
-    designate-worker = designate.cmd.worker:main
-    designate-producer = designate.cmd.producer:main
-    designate-status = designate.cmd.status:main
-
-designate.api.admin.extensions =
-    reports = designate.api.admin.controllers.extensions.reports:ReportsController
-    quotas = designate.api.admin.controllers.extensions.quotas:QuotasController
-    zones = designate.api.admin.controllers.extensions.zones:ZonesController
-
-designate.notification.handler =
-    fake = designate.notification_handler.fake:FakeHandler
-    nova_fixed = designate.notification_handler.nova:NovaFixedHandler
-    neutron_floatingip = designate.notification_handler.neutron:NeutronFloatingHandler
-
-designate.backend =
-    bind9 = designate.backend.impl_bind9:Bind9Backend
-    designate = designate.backend.impl_designate:DesignateBackend
-    pdns4 = designate.backend.impl_pdns4:PDNS4Backend
-    dynect = designate.backend.impl_dynect:DynECTBackend
-    akamai_v2 = designate.backend.impl_akamai_v2:AkamaiBackend
-    nsd4 = designate.backend.impl_nsd4:NSD4Backend
-    infoblox = designate.backend.impl_infoblox:InfobloxBackend
-    fake = designate.backend.impl_fake:FakeBackend
-    ns1 = designate.backend.impl_ns1:NS1Backend
-
-designate.network_api =
-    fake = designate.network_api.fake:FakeNetworkAPI
-    neutron = designate.network_api.neutron:NeutronNetworkAPI
-
-designate.quota =
-    noop =  designate.quota.impl_noop:NoopQuota
-    storage = designate.quota.impl_storage:StorageQuota
-
-designate.scheduler.filters =
-    fallback = designate.scheduler.filters.fallback_filter:FallbackFilter
-    attribute = designate.scheduler.filters.attribute_filter:AttributeFilter
-    random = designate.scheduler.filters.random_filter:RandomFilter
-    pool_id_attribute = designate.scheduler.filters.pool_id_attribute_filter:PoolIDAttributeFilter
-    default_pool = designate.scheduler.filters.default_pool_filter:DefaultPoolFilter
-    in_doubt_default_pool = designate.scheduler.filters.in_doubt_default_pool_filter:InDoubtDefaultPoolFilter
-
-designate.manage =
-    database = designate.manage.database:DatabaseCommands
-    pool = designate.manage.pool:PoolCommands
-    service = designate.manage.service:ServiceCommands
-    tlds = designate.manage.tlds:TLDCommands
-
-designate.producer_tasks =
-    zone_purge = designate.producer.tasks:DeletedZonePurgeTask
-    periodic_exists = designate.producer.tasks:PeriodicExistsTask
-    periodic_secondary_refresh = designate.producer.tasks:PeriodicSecondaryRefreshTask
-    delayed_notify = designate.producer.tasks:PeriodicGenerateDelayedNotifyTask
-    increment_serial = designate.producer.tasks:PeriodicIncrementSerialTask
-    worker_periodic_recovery = designate.producer.tasks:WorkerPeriodicRecovery
-
-designate.heartbeat_emitter =
-  noop = designate.heartbeat_emitter:NoopEmitter
-  rpc = designate.heartbeat_emitter:RpcEmitter
+oslo.config.opts = 
+	designate.conf = designate.conf.opts:list_opts
+oslo.config.opts.defaults = 
+	designate.conf = designate.common.config:set_defaults
+oslo.policy.policies = 
+	designate = designate.common.policies:list_rules
+oslo.policy.enforcer = 
+	designate = designate.policy:get_enforcer
+console_scripts = 
+	designate-rootwrap = oslo_rootwrap.cmd:main
+	designate-api = designate.cmd.api:main
+	designate-central = designate.cmd.central:main
+	designate-manage = designate.cmd.manage:main
+	designate-mdns = designate.cmd.mdns:main
+	designate-sink = designate.cmd.sink:main
+	designate-worker = designate.cmd.worker:main
+	designate-producer = designate.cmd.producer:main
+	designate-status = designate.cmd.status:main
+designate.api.admin.extensions = 
+	reports = designate.api.admin.controllers.extensions.reports:ReportsController
+	quotas = designate.api.admin.controllers.extensions.quotas:QuotasController
+	zones = designate.api.admin.controllers.extensions.zones:ZonesController
+designate.notification.handler = 
+	fake = designate.notification_handler.fake:FakeHandler
+	nova_fixed = designate.notification_handler.nova:NovaFixedHandler
+	neutron_floatingip = designate.notification_handler.neutron:NeutronFloatingHandler
+designate.backend = 
+	bind9 = designate.backend.impl_bind9:Bind9Backend
+	designate = designate.backend.impl_designate:DesignateBackend
+	pdns4 = designate.backend.impl_pdns4:PDNS4Backend
+	dynect = designate.backend.impl_dynect:DynECTBackend
+	akamai_v2 = designate.backend.impl_akamai_v2:AkamaiBackend
+	nsd4 = designate.backend.impl_nsd4:NSD4Backend
+	infoblox = designate.backend.impl_infoblox:InfobloxBackend
+	fake = designate.backend.impl_fake:FakeBackend
+	ns1 = designate.backend.impl_ns1:NS1Backend
+designate.network_api = 
+	fake = designate.network_api.fake:FakeNetworkAPI
+	neutron = designate.network_api.neutron:NeutronNetworkAPI
+designate.quota = 
+	noop =  designate.quota.impl_noop:NoopQuota
+	storage = designate.quota.impl_storage:StorageQuota
+designate.scheduler.filters = 
+	fallback = designate.scheduler.filters.fallback_filter:FallbackFilter
+	attribute = designate.scheduler.filters.attribute_filter:AttributeFilter
+	random = designate.scheduler.filters.random_filter:RandomFilter
+	pool_id_attribute = designate.scheduler.filters.pool_id_attribute_filter:PoolIDAttributeFilter
+	default_pool = designate.scheduler.filters.default_pool_filter:DefaultPoolFilter
+	in_doubt_default_pool = designate.scheduler.filters.in_doubt_default_pool_filter:InDoubtDefaultPoolFilter
+designate.manage = 
+	database = designate.manage.database:DatabaseCommands
+	pool = designate.manage.pool:PoolCommands
+	service = designate.manage.service:ServiceCommands
+	tlds = designate.manage.tlds:TLDCommands
+designate.producer_tasks = 
+	zone_purge = designate.producer.tasks:DeletedZonePurgeTask
+	periodic_exists = designate.producer.tasks:PeriodicExistsTask
+	periodic_secondary_refresh = designate.producer.tasks:PeriodicSecondaryRefreshTask
+	delayed_notify = designate.producer.tasks:PeriodicGenerateDelayedNotifyTask
+	increment_serial = designate.producer.tasks:PeriodicIncrementSerialTask
+	worker_periodic_recovery = designate.producer.tasks:WorkerPeriodicRecovery
+designate.heartbeat_emitter = 
+	noop = designate.heartbeat_emitter:NoopEmitter
+	rpc = designate.heartbeat_emitter:RpcEmitter
+designate.notification.plugin = 
+	default = designate.notifications:Default
+	audit = designate.notifications:Audit
+
+[egg_info]
+tag_build = 
+tag_date = 0
 
-designate.notification.plugin =
-  default = designate.notifications:Default
-  audit = designate.notifications:Audit
