Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-designateclient for openSUSE:Factory checked in at 2022-06-21 16:32:20 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-designateclient (Old) and /work/SRC/openSUSE:Factory/.python-designateclient.new.1548 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-designateclient" Tue Jun 21 16:32:20 2022 rev:22 rq:984029 version:4.5.0 Changes: -------- --- /work/SRC/openSUSE:Factory/python-designateclient/python-designateclient.changes 2021-12-13 20:50:54.620654648 +0100 +++ /work/SRC/openSUSE:Factory/.python-designateclient.new.1548/python-designateclient.changes 2022-06-21 16:32:26.663814022 +0200 @@ -1,0 +2,20 @@ +Mon Jun 20 17:26:17 UTC 2022 - cloud-de...@suse.de + +- update to version 4.5.0 + - Remove H402 hacking as it is deprecated + - Update master for stable/xena + - Clarify that name or ID can be used on TLDs + - Updating python testing classifier as per Yoga testing runtime + - Add Python3 yoga unit tests + - Use py3 as the default runtime for tox + - requirements: Drop os-testr + - Remove edit-managed from unsupported commands + - setup.cfg: Replace dashes with underscores + - Add basic osc unit tests + - Add profiling support to designateclient + - Bump lower-constraint for decorator to 4.2.1 + - Add Designate hacking checks to the client + - Stop to use the __future__ module. + - Cap jsonschema 3.2.0 as the minimal version + +------------------------------------------------------------------- Old: ---- python-designateclient-4.3.0.tar.gz New: ---- python-designateclient-4.5.0.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-designateclient.spec ++++++ --- /var/tmp/diff_new_pack.sZ1BqK/_old 2022-06-21 16:32:28.311816439 +0200 +++ /var/tmp/diff_new_pack.sZ1BqK/_new 2022-06-21 16:32:28.315816445 +0200 @@ -1,7 +1,7 @@ # # spec file for package python-designateclient # -# Copyright (c) 2021 SUSE LLC +# Copyright (c) 2022 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,17 +17,17 @@ Name: python-designateclient -Version: 4.3.0 +Version: 4.5.0 Release: 0 Summary: OpenStack DNS as a Service - Client License: Apache-2.0 Group: Development/Languages/Python URL: https://docs.openstack.org/python-designateclient -Source0: https://files.pythonhosted.org/packages/source/p/python-designateclient/python-designateclient-4.3.0.tar.gz +Source0: https://files.pythonhosted.org/packages/source/p/python-designateclient/python-designateclient-4.5.0.tar.gz BuildRequires: openstack-macros BuildRequires: python3-jsonschema >= 3.2.0 BuildRequires: python3-keystoneauth1 >= 3.4.0 -BuildRequires: python3-mock +BuildRequires: python3-osc-lib >= 1.8.0 BuildRequires: python3-oslo.serialization >= 2.18.0 BuildRequires: python3-oslotest BuildRequires: python3-pbr >= 2.0.0 @@ -67,14 +67,14 @@ Documentation for the OpenStack DNS as a Service - Client. %prep -%autosetup -p1 -n python-designateclient-4.3.0 +%autosetup -p1 -n python-designateclient-4.5.0 %py_req_cleanup %build %py3_build # generate docs -PYTHONPATH=. PBR_VERSION=4.3.0 %sphinx_build -b html doc/source doc/build/html +PYTHONPATH=. PBR_VERSION=4.5.0 %sphinx_build -b html doc/source doc/build/html # remove the sphinx-build leftovers rm -rf doc/build/html/.{doctrees,buildinfo} ++++++ python-designateclient-4.3.0.tar.gz -> python-designateclient-4.5.0.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-designateclient-4.3.0/.zuul.yaml new/python-designateclient-4.5.0/.zuul.yaml --- old/python-designateclient-4.3.0/.zuul.yaml 2021-05-27 12:13:46.000000000 +0200 +++ new/python-designateclient-4.5.0/.zuul.yaml 2022-02-23 20:17:17.000000000 +0100 @@ -4,7 +4,7 @@ - designate-devstack-jobs - openstack-cover-jobs - openstack-lower-constraints-jobs - - openstack-python3-xena-jobs + - openstack-python3-yoga-jobs - openstackclient-plugin-jobs - publish-openstack-docs-pti - release-notes-jobs-python3 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-designateclient-4.3.0/AUTHORS new/python-designateclient-4.5.0/AUTHORS --- old/python-designateclient-4.3.0/AUTHORS 2021-05-27 12:14:19.000000000 +0200 +++ new/python-designateclient-4.5.0/AUTHORS 2022-02-23 20:17:49.000000000 +0100 @@ -49,6 +49,7 @@ Kiall Mac Innes <ki...@managedit.ie> Lakshmi N Sampath <lakshmi.samp...@hp.com> Marcus Furlong <furlo...@gmail.com> +Michael Chapman <wop...@gmail.com> Michael Johnson <johnso...@gmail.com> Mike Durnosvystov <glacierr....@gmail.com> Monty Taylor <mord...@inaugust.com> @@ -89,6 +90,7 @@ howardlee <lihongwe...@inspur.com> jacky06 <zhang....@99cloud.net> kangyufei <kan...@inspur.com> +kpdev <kin...@gmail.com> lingyongxu <l...@fiberhome.com> liushuobj <liushu...@inspur.com> maaoyu <maa...@inspur.com> @@ -101,4 +103,5 @@ rjrjr <rrick...@ebaysf.com> sonu.kumar <sonu.ku...@nectechnologies.in> venkatamahesh <venkatamaheshko...@gmail.com> +wu.shiming <wushim...@yovole.com> zhangboye <zhangb...@inspur.com> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-designateclient-4.3.0/ChangeLog new/python-designateclient-4.5.0/ChangeLog --- old/python-designateclient-4.3.0/ChangeLog 2021-05-27 12:14:19.000000000 +0200 +++ new/python-designateclient-4.5.0/ChangeLog 2022-02-23 20:17:49.000000000 +0100 @@ -1,6 +1,28 @@ CHANGES ======= +4.5.0 +----- + +* Add profiling support to designateclient +* Updating python testing classifier as per Yoga testing runtime +* Add basic osc unit tests +* Add Designate hacking checks to the client +* Remove edit-managed from unsupported commands +* Use py3 as the default runtime for tox +* Cap jsonschema 3.2.0 as the minimal version +* Remove H402 hacking as it is deprecated +* Stop to use the \_\_future\_\_ module +* Clarify that name or ID can be used on TLDs + +4.4.0 +----- + +* Bump lower-constraint for decorator to 4.2.1 +* Add Python3 yoga unit tests +* Update master for stable/xena +* setup.cfg: Replace dashes with underscores + 4.3.0 ----- @@ -22,6 +44,7 @@ * Add choices to \`--type\` command line argument * Increase hacking version * Update master for stable/victoria +* requirements: Drop os-testr 4.1.0 ----- diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-designateclient-4.3.0/PKG-INFO new/python-designateclient-4.5.0/PKG-INFO --- old/python-designateclient-4.3.0/PKG-INFO 2021-05-27 12:14:19.603554500 +0200 +++ new/python-designateclient-4.5.0/PKG-INFO 2022-02-23 20:17:49.755996000 +0100 @@ -1,6 +1,6 @@ Metadata-Version: 1.2 Name: python-designateclient -Version: 4.3.0 +Version: 4.5.0 Summary: OpenStack DNS-as-a-Service - Client Home-page: https://docs.openstack.org/python-designateclient/latest Author: OpenStack @@ -62,5 +62,6 @@ Classifier: Programming Language :: Python :: 3 Classifier: Programming Language :: Python :: 3.6 Classifier: Programming Language :: Python :: 3.7 +Classifier: Programming Language :: Python :: 3.9 Classifier: Topic :: Internet :: Name Service (DNS) Requires-Python: >=3.6 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-designateclient-4.3.0/designateclient/functionaltests/v2/fixtures.py new/python-designateclient-4.5.0/designateclient/functionaltests/v2/fixtures.py --- old/python-designateclient-4.3.0/designateclient/functionaltests/v2/fixtures.py 2021-05-27 12:13:46.000000000 +0200 +++ new/python-designateclient-4.5.0/designateclient/functionaltests/v2/fixtures.py 2022-02-23 20:17:17.000000000 +0100 @@ -13,8 +13,6 @@ See the License for the specific language governing permissions and limitations under the License. """ -from __future__ import absolute_import -from __future__ import print_function import sys import tempfile import traceback diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-designateclient-4.3.0/designateclient/hacking/checks.py new/python-designateclient-4.5.0/designateclient/hacking/checks.py --- old/python-designateclient-4.3.0/designateclient/hacking/checks.py 1970-01-01 01:00:00.000000000 +0100 +++ new/python-designateclient-4.5.0/designateclient/hacking/checks.py 2022-02-23 20:17:17.000000000 +0100 @@ -0,0 +1,163 @@ +# Copyright 2014 Hewlett-Packard Development Company, L.P. +# Copyright (c) 2012, Cloudscaling +# +# 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. +import re + +from hacking import core +import pycodestyle + +# D701: Default parameter value is a mutable type +# D702: Log messages require translation +# D703: Found use of _() without explicit import of _! +# D704: Found import of %s. This oslo library has been graduated! +# D705: timeutils.utcnow() must be used instead of datetime.%s() +# D706: Don't translate debug level logs +# D707: basestring is not Python3-compatible, use str instead. +# D708: Do not use xrange. Use range for large loops. +# D709: LOG.audit is deprecated, please use LOG.info! +# D710: LOG.warn() is not allowed. Use LOG.warning() + +UNDERSCORE_IMPORT_FILES = [] + + +mutable_default_argument_check = re.compile( + r"^\s*def .+\((.+=\{\}|.+=\[\])") +string_translation = re.compile(r"[^_]*_\(\s*('|\")") +translated_log = re.compile( + r"(.)*LOG\.(audit|error|info|warn|warning|critical|exception)" + r"\(\s*_\(\s*('|\")") +underscore_import_check = re.compile(r"(.)*import _(.)*") +# We need this for cases where they have created their own _ function. +custom_underscore_check = re.compile(r"(.)*_\s*=\s*(.)*") +graduated_oslo_libraries_import_re = re.compile( + r"^\s*(?:import|from) designate\.openstack\.common\.?.*?" + r"(gettextutils|rpc)" + r".*?") + + +@core.flake8ext +def mutable_default_arguments(physical_line, logical_line, filename): + if pycodestyle.noqa(physical_line): + return + + if mutable_default_argument_check.match(logical_line): + yield (0, "D701: Default parameter value is a mutable type") + + +@core.flake8ext +def no_translate_debug_logs(logical_line, filename): + """Check for 'LOG.debug(_(' + As per our translation policy, + https://wiki.openstack.org/wiki/LoggingStandards#Log_Translation + we shouldn't translate debug level logs. + * This check assumes that 'LOG' is a logger. + * Use filename so we can start enforcing this in specific folders instead + of needing to do so all at once. + N319 + """ + if logical_line.startswith("LOG.debug(_("): + yield(0, "D706: Don't translate debug level logs") + + +@core.flake8ext +def check_explicit_underscore_import(logical_line, filename): + """Check for explicit import of the _ function + + We need to ensure that any files that are using the _() function + to translate logs are explicitly importing the _ function. We + can't trust unit test to catch whether the import has been + added so we need to check for it here. + """ + # Build a list of the files that have _ imported. No further + # checking needed once it is found. + if filename in UNDERSCORE_IMPORT_FILES: + pass + elif (underscore_import_check.match(logical_line) or + custom_underscore_check.match(logical_line)): + UNDERSCORE_IMPORT_FILES.append(filename) + elif (translated_log.match(logical_line) or + string_translation.match(logical_line)): + yield(0, "D703: Found use of _() without explicit import of _!") + + +@core.flake8ext +def no_import_graduated_oslo_libraries(logical_line, filename): + """Check that we don't continue to use o.c. oslo libraries after graduation + + After a library graduates from oslo-incubator, as we make the switch, we + should ensure we don't continue to use the oslo-incubator versions. + + In many cases, it's not possible to immediately remove the code from the + openstack/common folder due to dependency issues. + """ + # We can't modify oslo-incubator code, so ignore it here. + if "designate/openstack/common" in filename: + return + + matches = graduated_oslo_libraries_import_re.match(logical_line) + if matches: + yield(0, "D704: Found import of %s. This oslo library has been " + "graduated!" % matches.group(1)) + + +@core.flake8ext +def use_timeutils_utcnow(logical_line, filename): + # tools are OK to use the standard datetime module + if "/tools/" in filename: + return + + msg = "D705: timeutils.utcnow() must be used instead of datetime.%s()" + + datetime_funcs = ['now', 'utcnow'] + for f in datetime_funcs: + pos = logical_line.find('datetime.%s' % f) + if pos != -1: + yield (pos, msg % f) + + +@core.flake8ext +def check_no_basestring(logical_line): + if re.search(r"\bbasestring\b", logical_line): + msg = ("D707: basestring is not Python3-compatible, use " + "str instead.") + yield(0, msg) + + +@core.flake8ext +def check_python3_xrange(logical_line): + if re.search(r"\bxrange\s*\(", logical_line): + yield(0, "D708: Do not use xrange. Use range for " + "large loops.") + + +@core.flake8ext +def check_no_log_audit(logical_line): + """Ensure that we are not using LOG.audit messages + Plans are in place going forward as discussed in the following + spec (https://review.opendev.org/#/c/132552/) to take out + LOG.audit messages. Given that audit was a concept invented + for OpenStack we can enforce not using it. + """ + if "LOG.audit(" in logical_line: + yield(0, "D709: LOG.audit is deprecated, please use LOG.info!") + + +@core.flake8ext +def check_no_log_warn(logical_line): + """Disallow 'LOG.warn(' + + D710 + """ + if logical_line.startswith('LOG.warn('): + yield(0, "D710:Use LOG.warning() rather than LOG.warn()") diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-designateclient-4.3.0/designateclient/tests/osc/resources/__init__.py new/python-designateclient-4.5.0/designateclient/tests/osc/resources/__init__.py --- old/python-designateclient-4.3.0/designateclient/tests/osc/resources/__init__.py 1970-01-01 01:00:00.000000000 +0100 +++ new/python-designateclient-4.5.0/designateclient/tests/osc/resources/__init__.py 2022-02-23 20:17:17.000000000 +0100 @@ -0,0 +1,21 @@ +# 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. + +import json +import os.path + +path = os.path.dirname(os.path.realpath(__file__)) + + +def load(action): + with open(os.path.join(path, f'{action}.json')) as fp: + return json.load(fp) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-designateclient-4.3.0/designateclient/tests/osc/resources/recordset_create.json new/python-designateclient-4.5.0/designateclient/tests/osc/resources/recordset_create.json --- old/python-designateclient-4.3.0/designateclient/tests/osc/resources/recordset_create.json 1970-01-01 01:00:00.000000000 +0100 +++ new/python-designateclient-4.5.0/designateclient/tests/osc/resources/recordset_create.json 2022-02-23 20:17:17.000000000 +0100 @@ -0,0 +1,22 @@ +{ + "id": "a00ac483-d74d-4555-b30f-2e0a176287e2", + "zone_id": "6f106adb-0896-4114-b34f-4ac8dfee9465", + "project_id": "15a6ae43e4dd498383e127e5f2521301", + "name": "example.internal.example.org.", + "zone_name": "internal.example.org.", + "type": "A", + "records": [ + "127.0.0.1", + "127.0.0.2" + ], + "description": null, + "ttl": null, + "status": "PENDING", + "action": "CREATE", + "version": 1, + "created_at": "2021-12-05T23:47:57.000000", + "updated_at": null, + "links": { + "self": "http://10.0.1.203/dns/v2/zones/6f106adb-0896-4114-b34f-4ac8dfee9465/recordsets/a00ac483-d74d-4555-b30f-2e0a176287e2" + } +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-designateclient-4.3.0/designateclient/tests/osc/resources/recordset_list.json new/python-designateclient-4.5.0/designateclient/tests/osc/resources/recordset_list.json --- old/python-designateclient-4.3.0/designateclient/tests/osc/resources/recordset_list.json 1970-01-01 01:00:00.000000000 +0100 +++ new/python-designateclient-4.5.0/designateclient/tests/osc/resources/recordset_list.json 2022-02-23 20:17:17.000000000 +0100 @@ -0,0 +1,74 @@ +{ + "recordsets": [ + { + "id": "393d65fe-c0f1-4a55-a91e-bf6c1725dddc", + "zone_id": "6f106adb-0896-4114-b34f-4ac8dfee9465", + "project_id": "15a6ae43e4dd498383e127e5f2521301", + "name": "internal.example.org.", + "zone_name": "internal.example.org.", + "type": "NS", + "records": [ + "ns1.example.org." + ], + "description": null, + "ttl": null, + "status": "ACTIVE", + "action": "NONE", + "version": 1, + "created_at": "2021-12-05T23:45:54.000000", + "updated_at": null, + "links": { + "self": "http://10.0.1.203/dns/v2/zones/6f106adb-0896-4114-b34f-4ac8dfee9465/recordsets/393d65fe-c0f1-4a55-a91e-bf6c1725dddc" + } + }, + { + "id": "4055914e-0f2b-4c47-a8d3-287a5286fe92", + "zone_id": "6f106adb-0896-4114-b34f-4ac8dfee9465", + "project_id": "15a6ae43e4dd498383e127e5f2521301", + "name": "internal.example.org.", + "zone_name": "internal.example.org.", + "type": "SOA", + "records": [ + "ns1.example.org. fake.example.org. 1638748076 3584 600 86400 3600" + ], + "description": null, + "ttl": null, + "status": "ACTIVE", + "action": "NONE", + "version": 4, + "created_at": "2021-12-05T23:45:54.000000", + "updated_at": "2021-12-05T23:47:57.000000", + "links": { + "self": "http://10.0.1.203/dns/v2/zones/6f106adb-0896-4114-b34f-4ac8dfee9465/recordsets/4055914e-0f2b-4c47-a8d3-287a5286fe92" + } + }, + { + "id": "a00ac483-d74d-4555-b30f-2e0a176287e2", + "zone_id": "6f106adb-0896-4114-b34f-4ac8dfee9465", + "project_id": "15a6ae43e4dd498383e127e5f2521301", + "name": "example.internal.example.org.", + "zone_name": "internal.example.org.", + "type": "A", + "records": [ + "127.0.0.2", + "127.0.0.1" + ], + "description": null, + "ttl": null, + "status": "ACTIVE", + "action": "NONE", + "version": 1, + "created_at": "2021-12-05T23:47:57.000000", + "updated_at": null, + "links": { + "self": "http://10.0.1.203/dns/v2/zones/6f106adb-0896-4114-b34f-4ac8dfee9465/recordsets/a00ac483-d74d-4555-b30f-2e0a176287e2" + } + } + ], + "links": { + "self": "http://10.0.1.203/dns/v2/zones/6f106adb-0896-4114-b34f-4ac8dfee9465/recordsets" + }, + "metadata": { + "total_count": 3 + } +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-designateclient-4.3.0/designateclient/tests/osc/resources/recordset_list_all.json new/python-designateclient-4.5.0/designateclient/tests/osc/resources/recordset_list_all.json --- old/python-designateclient-4.3.0/designateclient/tests/osc/resources/recordset_list_all.json 1970-01-01 01:00:00.000000000 +0100 +++ new/python-designateclient-4.5.0/designateclient/tests/osc/resources/recordset_list_all.json 2022-02-23 20:17:17.000000000 +0100 @@ -0,0 +1,116 @@ +{ + "recordsets": [ + { + "id": "393d65fe-c0f1-4a55-a91e-bf6c1725dddc", + "zone_id": "6f106adb-0896-4114-b34f-4ac8dfee9465", + "project_id": "15a6ae43e4dd498383e127e5f2521301", + "name": "internal.example.org.", + "zone_name": "internal.example.org.", + "type": "NS", + "records": [ + "ns1.example.org." + ], + "description": null, + "ttl": null, + "status": "ACTIVE", + "action": "NONE", + "version": 1, + "created_at": "2021-12-05T23:45:54.000000", + "updated_at": null, + "links": { + "self": "http://10.0.1.203/dns/v2/zones/6f106adb-0896-4114-b34f-4ac8dfee9465/recordsets/393d65fe-c0f1-4a55-a91e-bf6c1725dddc" + } + }, + { + "id": "4055914e-0f2b-4c47-a8d3-287a5286fe92", + "zone_id": "6f106adb-0896-4114-b34f-4ac8dfee9465", + "project_id": "15a6ae43e4dd498383e127e5f2521301", + "name": "internal.example.org.", + "zone_name": "internal.example.org.", + "type": "SOA", + "records": [ + "ns1.example.org. fake.example.org. 1638748076 3584 600 86400 3600" + ], + "description": null, + "ttl": null, + "status": "ACTIVE", + "action": "NONE", + "version": 4, + "created_at": "2021-12-05T23:45:54.000000", + "updated_at": "2021-12-05T23:47:57.000000", + "links": { + "self": "http://10.0.1.203/dns/v2/zones/6f106adb-0896-4114-b34f-4ac8dfee9465/recordsets/4055914e-0f2b-4c47-a8d3-287a5286fe92" + } + }, + { + "id": "a00ac483-d74d-4555-b30f-2e0a176287e2", + "zone_id": "6f106adb-0896-4114-b34f-4ac8dfee9465", + "project_id": "15a6ae43e4dd498383e127e5f2521301", + "name": "example.internal.example.org.", + "zone_name": "internal.example.org.", + "type": "A", + "records": [ + "127.0.0.2", + "127.0.0.1" + ], + "description": null, + "ttl": null, + "status": "ACTIVE", + "action": "NONE", + "version": 1, + "created_at": "2021-12-05T23:47:57.000000", + "updated_at": null, + "links": { + "self": "http://10.0.1.203/dns/v2/zones/6f106adb-0896-4114-b34f-4ac8dfee9465/recordsets/a00ac483-d74d-4555-b30f-2e0a176287e2" + } + }, + { + "id": "2f5b0a00-2f03-426c-a5fc-5c1c85a5156b", + "zone_id": "a5f8e94e-af03-4e3e-b3eb-688a3b9f3b31", + "project_id": "15a6ae43e4dd498383e127e5f2521301", + "name": "external.example.org.", + "zone_name": "external.example.org.", + "type": "SOA", + "records": [ + "ns1.example.org. another_fake.example.org. 1638748236 3554 600 86400 3600" + ], + "description": null, + "ttl": null, + "status": "PENDING", + "action": "CREATE", + "version": 1, + "created_at": "2021-12-05T23:50:36.000000", + "updated_at": null, + "links": { + "self": "http://10.0.1.203/dns/v2/zones/a5f8e94e-af03-4e3e-b3eb-688a3b9f3b31/recordsets/2f5b0a00-2f03-426c-a5fc-5c1c85a5156b" + } + }, + { + "id": "4aacd04d-2546-43d9-98cd-58960a0a2494", + "zone_id": "a5f8e94e-af03-4e3e-b3eb-688a3b9f3b31", + "project_id": "15a6ae43e4dd498383e127e5f2521301", + "name": "external.example.org.", + "zone_name": "external.example.org.", + "type": "NS", + "records": [ + "ns1.example.org." + ], + "description": null, + "ttl": null, + "status": "PENDING", + "action": "CREATE", + "version": 1, + "created_at": "2021-12-05T23:50:36.000000", + "updated_at": null, + "links": { + "self": "http://10.0.1.203/dns/v2/zones/a5f8e94e-af03-4e3e-b3eb-688a3b9f3b31/recordsets/4aacd04d-2546-43d9-98cd-58960a0a2494" + } + } + ], + "links": { + "self": "http://10.0.1.203/dns/v2/recordsets" + }, + "metadata": { + "total_count": 5 + } +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-designateclient-4.3.0/designateclient/tests/osc/resources/zone_create.json new/python-designateclient-4.5.0/designateclient/tests/osc/resources/zone_create.json --- old/python-designateclient-4.3.0/designateclient/tests/osc/resources/zone_create.json 1970-01-01 01:00:00.000000000 +0100 +++ new/python-designateclient-4.5.0/designateclient/tests/osc/resources/zone_create.json 2022-02-23 20:17:17.000000000 +0100 @@ -0,0 +1,22 @@ +{ + "id": "6f106adb-0896-4114-b34f-4ac8dfee9465", + "pool_id": "794ccc2c-d751-44fe-b57f-8894c9f5c842", + "project_id": "15a6ae43e4dd498383e127e5f2521301", + "name": "internal.example.org.", + "email": "f...@example.org", + "description": null, + "ttl": 3600, + "serial": 1638747953, + "status": "PENDING", + "action": "CREATE", + "version": 1, + "attributes": {}, + "type": "PRIMARY", + "masters": [], + "created_at": "2021-12-05T23:45:54.000000", + "updated_at": null, + "transferred_at": null, + "links": { + "self": "http://10.0.1.203/dns/v2/zones/6f106adb-0896-4114-b34f-4ac8dfee9465" + } +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-designateclient-4.3.0/designateclient/tests/osc/resources/zone_list.json new/python-designateclient-4.5.0/designateclient/tests/osc/resources/zone_list.json --- old/python-designateclient-4.3.0/designateclient/tests/osc/resources/zone_list.json 1970-01-01 01:00:00.000000000 +0100 +++ new/python-designateclient-4.5.0/designateclient/tests/osc/resources/zone_list.json 2022-02-23 20:17:17.000000000 +0100 @@ -0,0 +1,54 @@ +{ + "zones": [ + { + "id": "6f106adb-0896-4114-b34f-4ac8dfee9465", + "pool_id": "794ccc2c-d751-44fe-b57f-8894c9f5c842", + "project_id": "15a6ae43e4dd498383e127e5f2521301", + "name": "internal.example.org.", + "email": "f...@example.org", + "description": null, + "ttl": 3600, + "serial": 1638748076, + "status": "ACTIVE", + "action": "NONE", + "version": 8, + "attributes": {}, + "type": "PRIMARY", + "masters": [], + "created_at": "2021-12-05T23:45:54.000000", + "updated_at": "2021-12-05T23:48:02.000000", + "transferred_at": null, + "links": { + "self": "http://10.0.1.203/dns/v2/zones/6f106adb-0896-4114-b34f-4ac8dfee9465" + } + }, + { + "id": "a5f8e94e-af03-4e3e-b3eb-688a3b9f3b31", + "pool_id": "794ccc2c-d751-44fe-b57f-8894c9f5c842", + "project_id": "15a6ae43e4dd498383e127e5f2521301", + "name": "external.example.org.", + "email": "another_f...@example.org", + "description": null, + "ttl": 3600, + "serial": 1638748236, + "status": "ACTIVE", + "action": "NONE", + "version": 2, + "attributes": {}, + "type": "PRIMARY", + "masters": [], + "created_at": "2021-12-05T23:50:36.000000", + "updated_at": "2021-12-05T23:50:42.000000", + "transferred_at": null, + "links": { + "self": "http://10.0.1.203/dns/v2/zones/a5f8e94e-af03-4e3e-b3eb-688a3b9f3b31" + } + } + ], + "links": { + "self": "http://10.0.1.203/dns/v2/zones?type=PRIMARY" + }, + "metadata": { + "total_count": 2 + } +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-designateclient-4.3.0/designateclient/tests/osc/v2/test_recordsets.py new/python-designateclient-4.5.0/designateclient/tests/osc/v2/test_recordsets.py --- old/python-designateclient-4.3.0/designateclient/tests/osc/v2/test_recordsets.py 1970-01-01 01:00:00.000000000 +0100 +++ new/python-designateclient-4.5.0/designateclient/tests/osc/v2/test_recordsets.py 2022-02-23 20:17:17.000000000 +0100 @@ -0,0 +1,98 @@ +# 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 osc_lib.tests import utils + +from designateclient.tests.osc import resources +from designateclient.v2 import base +from designateclient.v2.cli import recordsets + + +class TestDesignateCreateRecordSets(utils.TestCommand): + def setUp(self): + super(TestDesignateCreateRecordSets, self).setUp() + self.app.client_manager.dns = mock.MagicMock() + self.cmd = recordsets.CreateRecordSetCommand(self.app, None) + self.dns_client = self.app.client_manager.dns + + def test_create_recordset(self): + arg_list = [ + '6f106adb-0896-4114-b34f-4ac8dfee9465', + 'example', + '--type', 'A', + '--record', '127.0.0.1', + '--record', '127.0.0.2', + ] + verify_args = [ + ('zone_id', '6f106adb-0896-4114-b34f-4ac8dfee9465'), + ('name', 'example'), + ('type', 'A'), + ('record', ['127.0.0.1', '127.0.0.2']), + ] + + body = resources.load('recordset_create') + self.dns_client.recordsets.create.return_value = body + + parsed_args = self.check_parser(self.cmd, arg_list, verify_args) + columns, data = self.cmd.take_action(parsed_args) + + results = list(data) + + self.assertEqual(14, len(results)) + + +class TestDesignateListRecordSets(utils.TestCommand): + def setUp(self): + super(TestDesignateListRecordSets, self).setUp() + self.app.client_manager.dns = mock.MagicMock() + self.cmd = recordsets.ListRecordSetsCommand(self.app, None) + self.dns_client = self.app.client_manager.dns + + def test_list_recordsets(self): + arg_list = ['6f106adb-0896-4114-b34f-4ac8dfee9465'] + verify_args = [ + ('zone_id', '6f106adb-0896-4114-b34f-4ac8dfee9465'), + ] + + body = resources.load('recordset_list') + result = base.DesignateList() + result.extend(body['recordsets']) + + self.dns_client.recordsets.list.return_value = result + + parsed_args = self.check_parser(self.cmd, arg_list, verify_args) + columns, data = self.cmd.take_action(parsed_args) + + results = list(data) + + self.assertEqual(3, len(results)) + + def test_list_all_recordsets(self): + arg_list = ['all'] + verify_args = [ + ('zone_id', 'all'), + ] + + body = resources.load('recordset_list_all') + result = base.DesignateList() + result.extend(body['recordsets']) + + self.dns_client.recordsets.list_all_zones.return_value = result + + parsed_args = self.check_parser(self.cmd, arg_list, verify_args) + columns, data = self.cmd.take_action(parsed_args) + + results = list(data) + + self.assertEqual(5, len(results)) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-designateclient-4.3.0/designateclient/tests/osc/v2/test_zone.py new/python-designateclient-4.5.0/designateclient/tests/osc/v2/test_zone.py --- old/python-designateclient-4.3.0/designateclient/tests/osc/v2/test_zone.py 1970-01-01 01:00:00.000000000 +0100 +++ new/python-designateclient-4.5.0/designateclient/tests/osc/v2/test_zone.py 2022-02-23 20:17:17.000000000 +0100 @@ -0,0 +1,72 @@ +# 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 osc_lib.tests import utils + +from designateclient.tests.osc import resources +from designateclient.v2 import base +from designateclient.v2.cli import zones + + +class TestDesignateCreateZone(utils.TestCommand): + def setUp(self): + super(TestDesignateCreateZone, self).setUp() + self.app.client_manager.dns = mock.MagicMock() + self.cmd = zones.CreateZoneCommand(self.app, None) + self.dns_client = self.app.client_manager.dns + + def test_create_zone(self): + arg_list = [ + 'example.devstack.org.', + '--email', 'f...@devstack.org', + ] + verify_args = [ + ('name', 'example.devstack.org.'), + ('email', 'f...@devstack.org'), + ] + + body = resources.load('zone_create') + self.dns_client.zones.create.return_value = body + + parsed_args = self.check_parser(self.cmd, arg_list, verify_args) + columns, data = self.cmd.take_action(parsed_args) + + results = list(data) + + self.assertEqual(17, len(results)) + + +class TestDesignateListZones(utils.TestCommand): + def setUp(self): + super(TestDesignateListZones, self).setUp() + self.app.client_manager.dns = mock.MagicMock() + self.cmd = zones.ListZonesCommand(self.app, None) + self.dns_client = self.app.client_manager.dns + + def test_list_zones(self): + arg_list = [] + verify_args = [] + + body = resources.load('zone_list') + result = base.DesignateList() + result.extend(body['zones']) + + self.dns_client.zones.list.return_value = result + + parsed_args = self.check_parser(self.cmd, arg_list, verify_args) + columns, data = self.cmd.take_action(parsed_args) + + results = list(data) + + self.assertEqual(2, len(results)) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-designateclient-4.3.0/designateclient/utils.py new/python-designateclient-4.5.0/designateclient/utils.py --- old/python-designateclient-4.3.0/designateclient/utils.py 2021-05-27 12:13:46.000000000 +0200 +++ new/python-designateclient-4.5.0/designateclient/utils.py 2022-02-23 20:17:17.000000000 +0100 @@ -21,7 +21,7 @@ from designateclient import exceptions -def get_item_properties(item, fields, mixed_case_fields=[], formatters={}): +def get_item_properties(item, fields, mixed_case_fields=(), formatters=None): """Return a tuple containing the item properties. :param item: a single item resource (e.g. Server, Tenant, etc) @@ -30,6 +30,8 @@ :param formatters: dictionary mapping field names to callables to format the values """ + if formatters is None: + formatters = {} row = [] for field in fields: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-designateclient-4.3.0/designateclient/v2/cli/common.py new/python-designateclient-4.5.0/designateclient/v2/cli/common.py --- old/python-designateclient-4.3.0/designateclient/v2/cli/common.py 2021-05-27 12:13:46.000000000 +0200 +++ new/python-designateclient-4.5.0/designateclient/v2/cli/common.py 2022-02-23 20:17:17.000000000 +0100 @@ -43,7 +43,6 @@ def add_all_common_options(parser): add_all_projects_option(parser) - add_edit_managed_option(parser) add_sudo_project_id_option(parser) @@ -65,7 +64,8 @@ isinstance(parsed_args.all_projects, bool): set_all_projects(client, parsed_args.all_projects) - if parsed_args.edit_managed is not None and \ + if hasattr(parsed_args, 'edit_managed') and \ + parsed_args.edit_managed is not None and \ isinstance(parsed_args.edit_managed, bool): set_edit_managed(client, parsed_args.edit_managed) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-designateclient-4.3.0/designateclient/v2/cli/recordsets.py new/python-designateclient-4.5.0/designateclient/v2/cli/recordsets.py --- old/python-designateclient-4.3.0/designateclient/v2/cli/recordsets.py 2021-05-27 12:13:46.000000000 +0200 +++ new/python-designateclient-4.5.0/designateclient/v2/cli/recordsets.py 2022-02-23 20:17:17.000000000 +0100 @@ -211,6 +211,7 @@ ttl_group.add_argument('--no-ttl', action='store_true') common.add_all_common_options(parser) + common.add_edit_managed_option(parser) return parser @@ -258,6 +259,7 @@ parser.add_argument('id', help="RecordSet ID") common.add_all_common_options(parser) + common.add_edit_managed_option(parser) return parser diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-designateclient-4.3.0/designateclient/v2/cli/tlds.py new/python-designateclient-4.5.0/designateclient/v2/cli/tlds.py --- old/python-designateclient-4.3.0/designateclient/v2/cli/tlds.py 2021-05-27 12:13:46.000000000 +0200 +++ new/python-designateclient-4.5.0/designateclient/v2/cli/tlds.py 2022-02-23 20:17:17.000000000 +0100 @@ -63,7 +63,7 @@ def get_parser(self, prog_name): parser = super(ShowTLDCommand, self).get_parser(prog_name) - parser.add_argument('id', help="TLD ID") + parser.add_argument('id', help="TLD name or ID") common.add_all_common_options(parser) @@ -104,7 +104,7 @@ def get_parser(self, prog_name): parser = super(SetTLDCommand, self).get_parser(prog_name) - parser.add_argument('id', help="TLD ID") + parser.add_argument('id', help="TLD name or ID") parser.add_argument('--name', help="TLD Name") description_group = parser.add_mutually_exclusive_group() description_group.add_argument('--description', help="Description") @@ -139,7 +139,7 @@ def get_parser(self, prog_name): parser = super(DeleteTLDCommand, self).get_parser(prog_name) - parser.add_argument('id', help="TLD ID") + parser.add_argument('id', help="TLD name or ID") common.add_all_common_options(parser) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-designateclient-4.3.0/designateclient/v2/client.py new/python-designateclient-4.5.0/designateclient/v2/client.py --- old/python-designateclient-4.3.0/designateclient/v2/client.py 2021-05-27 12:13:46.000000000 +0200 +++ new/python-designateclient-4.5.0/designateclient/v2/client.py 2022-02-23 20:17:17.000000000 +0100 @@ -31,6 +31,9 @@ from designateclient.v2.zones import ZoneImportsController from designateclient.v2.zones import ZoneTransfersController from designateclient import version +from oslo_utils import importutils + +osprofiler_web = importutils.try_import("osprofiler.web") class DesignateAdapter(adapter.LegacyJsonAdapter): @@ -78,6 +81,9 @@ kwargs['headers'].setdefault( 'Content-Type', 'application/json') + if osprofiler_web: + kwargs['headers'].update(osprofiler_web.get_trace_id_headers()) + response, body = super(self.__class__, self).request(*args, **kwargs) # Decode is response, if possible diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-designateclient-4.3.0/doc/examples/recordset_create.py new/python-designateclient-4.5.0/doc/examples/recordset_create.py --- old/python-designateclient-4.3.0/doc/examples/recordset_create.py 2021-05-27 12:13:46.000000000 +0200 +++ new/python-designateclient-4.5.0/doc/examples/recordset_create.py 2022-02-23 20:17:17.000000000 +0100 @@ -1,4 +1,3 @@ -from __future__ import print_function import logging import os diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-designateclient-4.3.0/doc/examples/zone_create_primary.py new/python-designateclient-4.5.0/doc/examples/zone_create_primary.py --- old/python-designateclient-4.3.0/doc/examples/zone_create_primary.py 2021-05-27 12:13:46.000000000 +0200 +++ new/python-designateclient-4.5.0/doc/examples/zone_create_primary.py 2022-02-23 20:17:17.000000000 +0100 @@ -1,4 +1,3 @@ -from __future__ import print_function import logging import os diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-designateclient-4.3.0/doc/examples/zone_list_paging.py new/python-designateclient-4.5.0/doc/examples/zone_list_paging.py --- old/python-designateclient-4.3.0/doc/examples/zone_list_paging.py 2021-05-27 12:13:46.000000000 +0200 +++ new/python-designateclient-4.5.0/doc/examples/zone_list_paging.py 2022-02-23 20:17:17.000000000 +0100 @@ -1,4 +1,3 @@ -from __future__ import print_function import logging import os diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-designateclient-4.3.0/doc/source/conf.py new/python-designateclient-4.5.0/doc/source/conf.py --- old/python-designateclient-4.3.0/doc/source/conf.py 2021-05-27 12:13:46.000000000 +0200 +++ new/python-designateclient-4.5.0/doc/source/conf.py 2022-02-23 20:17:17.000000000 +0100 @@ -21,12 +21,13 @@ apidoc_module_dir = '../../designateclient' apidoc_output_dir = 'reference/api' -apidoc_excluded_paths = [ 'tests/*', 'functionaltests/*' ] +apidoc_excluded_paths = [ 'tests/*', 'functionaltests/*', 'hacking/*' ] apidoc_separate_modules = True autodoc_exclude_modules = [ 'designateclient.tests.*', - 'designateclient.functionaltests.*'] + 'designateclient.functionaltests.*', + 'designateclient.hacking.*'] # Add any paths that contain templates here, relative to this directory. templates_path = ['_templates'] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-designateclient-4.3.0/lower-constraints.txt new/python-designateclient-4.5.0/lower-constraints.txt --- old/python-designateclient-4.3.0/lower-constraints.txt 2021-05-27 12:13:46.000000000 +0200 +++ new/python-designateclient-4.5.0/lower-constraints.txt 2022-02-23 20:17:17.000000000 +0100 @@ -7,7 +7,7 @@ coverage==4.0 cryptography==3.1 debtcollector==1.2.0 -decorator==3.4.0 +decorator==4.2.1 deprecation==1.0 dogpile.cache==0.6.2 dulwich==0.15.0 @@ -20,7 +20,7 @@ jmespath==0.9.0 jsonpatch==1.16 jsonpointer==1.13 -jsonschema==2.6.0 +jsonschema==3.2.0 keystoneauth1==3.4.0 linecache2==1.0.0 monotonic==0.6 @@ -32,9 +32,8 @@ openstacksdk==0.11.2 os-client-config==1.28.0 os-service-types==1.2.0 -os-testr==1.0.0 osc-lib==1.8.0 -oslo.concurrency==3.25.0 +oslo.concurrency==3.26.0 oslo.config==5.2.0 oslo.context==2.19.2 oslo.i18n==3.15.3 @@ -42,6 +41,7 @@ oslo.serialization==2.18.0 oslo.utils==3.33.0 oslotest==3.2.0 +osprofiler==3.4.0 paramiko==2.0.0 pbr==2.0.0 prettytable==0.7.2 @@ -62,7 +62,7 @@ rfc3986==0.3.1 simplejson==3.5.1 stevedore==1.20.0 -tempest==17.1.0 +tempest==25.0.0 stestr==2.0.0 testtools==2.2.0 traceback2==1.4.0 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-designateclient-4.3.0/python_designateclient.egg-info/PKG-INFO new/python-designateclient-4.5.0/python_designateclient.egg-info/PKG-INFO --- old/python-designateclient-4.3.0/python_designateclient.egg-info/PKG-INFO 2021-05-27 12:14:19.000000000 +0200 +++ new/python-designateclient-4.5.0/python_designateclient.egg-info/PKG-INFO 2022-02-23 20:17:49.000000000 +0100 @@ -1,6 +1,6 @@ Metadata-Version: 1.2 Name: python-designateclient -Version: 4.3.0 +Version: 4.5.0 Summary: OpenStack DNS-as-a-Service - Client Home-page: https://docs.openstack.org/python-designateclient/latest Author: OpenStack @@ -62,5 +62,6 @@ Classifier: Programming Language :: Python :: 3 Classifier: Programming Language :: Python :: 3.6 Classifier: Programming Language :: Python :: 3.7 +Classifier: Programming Language :: Python :: 3.9 Classifier: Topic :: Internet :: Name Service (DNS) Requires-Python: >=3.6 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-designateclient-4.3.0/python_designateclient.egg-info/SOURCES.txt new/python-designateclient-4.5.0/python_designateclient.egg-info/SOURCES.txt --- old/python-designateclient-4.3.0/python_designateclient.egg-info/SOURCES.txt 2021-05-27 12:14:19.000000000 +0200 +++ new/python-designateclient-4.5.0/python_designateclient.egg-info/SOURCES.txt 2022-02-23 20:17:49.000000000 +0100 @@ -33,6 +33,8 @@ designateclient/functionaltests/v2/test_zone_export.py designateclient/functionaltests/v2/test_zone_import.py designateclient/functionaltests/v2/test_zone_transfer.py +designateclient/hacking/__init__.py +designateclient/hacking/checks.py designateclient/osc/__init__.py designateclient/osc/plugin.py designateclient/tests/__init__.py @@ -40,6 +42,16 @@ designateclient/tests/test_designateclient.py designateclient/tests/test_exceptions.py designateclient/tests/test_utils.py +designateclient/tests/osc/__init__.py +designateclient/tests/osc/resources/__init__.py +designateclient/tests/osc/resources/recordset_create.json +designateclient/tests/osc/resources/recordset_list.json +designateclient/tests/osc/resources/recordset_list_all.json +designateclient/tests/osc/resources/zone_create.json +designateclient/tests/osc/resources/zone_list.json +designateclient/tests/osc/v2/__init__.py +designateclient/tests/osc/v2/test_recordsets.py +designateclient/tests/osc/v2/test_zone.py designateclient/tests/v2/__init__.py designateclient/tests/v2/test_blacklists.py designateclient/tests/v2/test_client.py @@ -120,5 +132,6 @@ releasenotes/source/ussuri.rst releasenotes/source/victoria.rst releasenotes/source/wallaby.rst +releasenotes/source/xena.rst releasenotes/source/_static/.placeholder releasenotes/source/_templates/.placeholder \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-designateclient-4.3.0/python_designateclient.egg-info/pbr.json new/python-designateclient-4.5.0/python_designateclient.egg-info/pbr.json --- old/python-designateclient-4.3.0/python_designateclient.egg-info/pbr.json 2021-05-27 12:14:19.000000000 +0200 +++ new/python-designateclient-4.5.0/python_designateclient.egg-info/pbr.json 2022-02-23 20:17:49.000000000 +0100 @@ -1 +1 @@ -{"git_version": "9bc517a", "is_release": true} \ No newline at end of file +{"git_version": "485cbdd", "is_release": true} \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-designateclient-4.3.0/python_designateclient.egg-info/requires.txt new/python-designateclient-4.5.0/python_designateclient.egg-info/requires.txt --- old/python-designateclient-4.3.0/python_designateclient.egg-info/requires.txt 2021-05-27 12:14:19.000000000 +0200 +++ new/python-designateclient-4.5.0/python_designateclient.egg-info/requires.txt 2022-02-23 20:17:49.000000000 +0100 @@ -1,6 +1,6 @@ cliff!=2.9.0,>=2.8.0 debtcollector>=1.2.0 -jsonschema>=2.6.0 +jsonschema>=3.2.0 keystoneauth1>=3.4.0 osc-lib>=1.8.0 oslo.serialization!=2.19.1,>=2.18.0 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-designateclient-4.3.0/releasenotes/source/index.rst new/python-designateclient-4.5.0/releasenotes/source/index.rst --- old/python-designateclient-4.3.0/releasenotes/source/index.rst 2021-05-27 12:13:46.000000000 +0200 +++ new/python-designateclient-4.5.0/releasenotes/source/index.rst 2022-02-23 20:17:17.000000000 +0100 @@ -6,6 +6,7 @@ :maxdepth: 1 unreleased + xena wallaby victoria ussuri diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-designateclient-4.3.0/releasenotes/source/xena.rst new/python-designateclient-4.5.0/releasenotes/source/xena.rst --- old/python-designateclient-4.3.0/releasenotes/source/xena.rst 1970-01-01 01:00:00.000000000 +0100 +++ new/python-designateclient-4.5.0/releasenotes/source/xena.rst 2022-02-23 20:17:17.000000000 +0100 @@ -0,0 +1,6 @@ +========================= +Xena Series Release Notes +========================= + +.. release-notes:: + :branch: stable/xena diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-designateclient-4.3.0/requirements.txt new/python-designateclient-4.5.0/requirements.txt --- old/python-designateclient-4.3.0/requirements.txt 2021-05-27 12:13:46.000000000 +0200 +++ new/python-designateclient-4.5.0/requirements.txt 2022-02-23 20:17:17.000000000 +0100 @@ -2,7 +2,7 @@ # of appearance. Changing the order has an impact on the overall integration # process, which may cause wedges in the gate later. cliff!=2.9.0,>=2.8.0 # Apache-2.0 -jsonschema>=2.6.0 # MIT +jsonschema>=3.2.0 # MIT osc-lib>=1.8.0 # Apache-2.0 oslo.serialization!=2.19.1,>=2.18.0 # Apache-2.0 oslo.utils>=3.33.0 # Apache-2.0 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-designateclient-4.3.0/setup.cfg new/python-designateclient-4.5.0/setup.cfg --- old/python-designateclient-4.3.0/setup.cfg 2021-05-27 12:14:19.603554500 +0200 +++ new/python-designateclient-4.5.0/setup.cfg 2022-02-23 20:17:49.755996000 +0100 @@ -1,13 +1,13 @@ [metadata] name = python-designateclient summary = OpenStack DNS-as-a-Service - Client -description-file = +description_file = README.rst license = Apache License, Version 2.0 author = OpenStack -author-email = openstack-disc...@lists.openstack.org -home-page = https://docs.openstack.org/python-designateclient/latest -python-requires = >=3.6 +author_email = openstack-disc...@lists.openstack.org +home_page = https://docs.openstack.org/python-designateclient/latest +python_requires = >=3.6 classifier = Environment :: OpenStack Intended Audience :: Information Technology @@ -20,6 +20,7 @@ Programming Language :: Python :: 3 Programming Language :: Python :: 3.6 Programming Language :: Python :: 3.7 + Programming Language :: Python :: 3.9 Topic :: Internet :: Name Service (DNS) [files] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-designateclient-4.3.0/test-requirements.txt new/python-designateclient-4.5.0/test-requirements.txt --- old/python-designateclient-4.3.0/test-requirements.txt 2021-05-27 12:13:46.000000000 +0200 +++ new/python-designateclient-4.5.0/test-requirements.txt 2022-02-23 20:17:17.000000000 +0100 @@ -6,9 +6,8 @@ coverage!=4.4,>=4.0 # Apache-2.0 oslo.config>=5.2.0 # Apache-2.0 oslotest>=3.2.0 # Apache-2.0 -os-testr>=1.0.0 # Apache-2.0 python-subunit>=1.0.0 # Apache-2.0/BSD requests-mock>=1.2.0 # Apache-2.0 stestr>=2.0.0 # Apache-2.0 reno>=3.1.0 # Apache-2.0 -tempest>=17.1.0 # Apache-2.0 +tempest>=25.0.0 # Apache-2.0 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-designateclient-4.3.0/tox.ini new/python-designateclient-4.5.0/tox.ini --- old/python-designateclient-4.3.0/tox.ini 2021-05-27 12:13:46.000000000 +0200 +++ new/python-designateclient-4.5.0/tox.ini 2022-02-23 20:17:17.000000000 +0100 @@ -1,5 +1,5 @@ [tox] -envlist = py36,py38,flake8 +envlist = py3,flake8 minversion = 3.1.0 skipsdist = True skip_missing_interpreters = true @@ -87,17 +87,29 @@ [flake8] # ignored flake8 codes: # H302 import only modules -# H402 one line docstring needs punctuation # H404 multi line docstring should start with a summary # H405 multi line docstring summary not separated with an empty line # H904 Wrap long lines in parentheses instead of a backslash # W504 line break after binary operator # See designate for other ignored codes that may apply here -ignore = H105,H302,H402,H404,H405,W504,H904 +ignore = H105,H302,H404,H405,W504,H904 builtins = _ exclude = .venv,.git,.tox,dist,doc,*openstack/common*,*lib/python*,*egg,build,tools +[flake8:local-plugins] +extension = + D701 = checks:mutable_default_arguments + D703 = checks:check_explicit_underscore_import + D704 = checks:no_import_graduated_oslo_libraries + D705 = checks:use_timeutils_utcnow + D706 = checks:no_translate_debug_logs + D707 = checks:check_no_basestring + D708 = checks:check_python3_xrange + D709 = checks:check_no_log_audit + D710 = checks:check_no_log_warn +paths = ./designateclient/hacking + [testenv:lower-constraints] skip_install = True commands =