--- Begin Message ---
Source: lexicon
Version: 3.3.17-1
Severity: serious
Justification: FTBFS
Tags: bookworm sid ftbfs
User: lu...@debian.org
Usertags: ftbfs-20220212 ftbfs-bookworm
Hi,
During a rebuild of all packages in sid, your package failed to build
on amd64.
Relevant part (hopefully):
> make[1]: Entering directory '/<<PKGBUILDDIR>>'
> pytest-3 lexicon/tests/ -k "not namecheap and not route53 and not subreg and
> not transip and not plesk and not henet and not easyname and not localzone
> and not auto and not hetzner and not gratisdns and not gransy"
> ============================= test session starts
> ==============================
> platform linux -- Python 3.9.10, pytest-6.2.5, py-1.10.0, pluggy-0.13.0
> rootdir: /<<PKGBUILDDIR>>
> collected 1987 items / 380 deselected / 1607 selected
>
> lexicon/tests/test_client.py FFFFFF....FF [
> 0%]
> lexicon/tests/test_config.py ......... [
> 1%]
> lexicon/tests/test_library.py ..FFFFF [
> 1%]
> lexicon/tests/test_output.py ..... [
> 2%]
> lexicon/tests/test_parser.py ..... [
> 2%]
> lexicon/tests/providers/test_aliyun.py ..................ss......... [
> 4%]
> lexicon/tests/providers/test_aurora.py ..................ss......... [
> 5%]
> lexicon/tests/providers/test_azure.py ..................ss......... [
> 7%]
> lexicon/tests/providers/test_cloudflare.py ..................ss......s.. [
> 9%]
> [
> 9%]
> lexicon/tests/providers/test_cloudns.py ..................ss......... [
> 11%]
> lexicon/tests/providers/test_cloudxns.py ..................ss......s.. [
> 13%]
> lexicon/tests/providers/test_conoha.py ..................ss......... [
> 14%]
> lexicon/tests/providers/test_constellix.py ..................ss......... [
> 16%]
> [
> 16%]
> lexicon/tests/providers/test_digitalocean.py ................s.ss......s [
> 18%]
> .. [
> 18%]
> lexicon/tests/providers/test_dinahosting.py ................s.ss........ [
> 20%]
> . [
> 20%]
> lexicon/tests/providers/test_directadmin.py ..................ss........ [
> 22%]
> . [
> 22%]
> lexicon/tests/providers/test_dnsimple.py ..................ss......... [
> 24%]
> lexicon/tests/providers/test_dnsmadeeasy.py ..................ss......s. [
> 25%]
> . [
> 25%]
> lexicon/tests/providers/test_dnspark.py ........ss....ssssss..s...s.. [
> 27%]
> lexicon/tests/providers/test_dnspod.py ........ss....ssssss..s...s.. [
> 29%]
> lexicon/tests/providers/test_dreamhost.py ...................s.ss....... [
> 31%]
> .. [
> 31%]
> lexicon/tests/providers/test_easydns.py ........ss....ss.sss..s...s.. [
> 33%]
> lexicon/tests/providers/test_euserv.py ..................ss......... [
> 35%]
> lexicon/tests/providers/test_exoscale.py ..................ss......... [
> 36%]
> lexicon/tests/providers/test_gandi.py ..................ss.............. [
> 38%]
> .............ss......... [
> 40%]
> lexicon/tests/providers/test_gehirn.py ........ss....ss.sss..s...... [
> 42%]
> lexicon/tests/providers/test_glesys.py ........ss....ss.sss..s...s.. [
> 44%]
> lexicon/tests/providers/test_godaddy.py ..................ss......... [
> 45%]
> lexicon/tests/providers/test_googleclouddns.py ..................ss..... [
> 47%]
> .... [
> 47%]
> lexicon/tests/providers/test_hostingde.py ..................ss......... [
> 49%]
> lexicon/tests/providers/test_hover.py ..................ss......... [
> 51%]
> lexicon/tests/providers/test_infoblox.py ..................ss......... [
> 53%]
> lexicon/tests/providers/test_internetbs.py ..................ss......... [
> 54%]
> [
> 54%]
> lexicon/tests/providers/test_inwx.py ..................ss......... [
> 56%]
> lexicon/tests/providers/test_linode.py ................s.ss......... [
> 58%]
> lexicon/tests/providers/test_linode4.py ................s.ss......... [
> 60%]
> lexicon/tests/providers/test_luadns.py ....s.............ss......s.. [
> 62%]
> lexicon/tests/providers/test_memset.py ..................ss......s.. [
> 63%]
> lexicon/tests/providers/test_namesilo.py ..................ss......s.. [
> 65%]
> lexicon/tests/providers/test_netcup.py ................s.ss......... [
> 67%]
> lexicon/tests/providers/test_nfsn.py ..................ss......... [
> 69%]
> lexicon/tests/providers/test_nsone.py ................s.ss......s.. [
> 71%]
> lexicon/tests/providers/test_onapp.py ..................ss......... [
> 72%]
> lexicon/tests/providers/test_online.py .............s....ss......... [
> 74%]
> lexicon/tests/providers/test_ovh.py ..................ss......... [
> 76%]
> lexicon/tests/providers/test_pointhq.py ................s.ss......s.. [
> 78%]
> lexicon/tests/providers/test_powerdns.py ..................ss......s.. [
> 80%]
> lexicon/tests/providers/test_rackspace.py ..................ss......... [
> 81%]
> lexicon/tests/providers/test_rage4.py ..................ss.....ss.s [
> 83%]
> lexicon/tests/providers/test_rcodezero.py ..................ss......... [
> 85%]
> lexicon/tests/providers/test_safedns.py ....s...........s.ss......... [
> 87%]
> lexicon/tests/providers/test_sakuracloud.py ........ss...sss.sss..s..... [
> 89%]
> . [
> 89%]
> lexicon/tests/providers/test_softlayer.py ........ss....ss.sss..s...... [
> 90%]
> lexicon/tests/providers/test_vultr.py ........ss....ss.sss..s...s.. [
> 92%]
> lexicon/tests/providers/test_yandex.py ..................ss......s.. [
> 94%]
> lexicon/tests/providers/test_zeit.py ................s.ss......... [
> 96%]
> lexicon/tests/providers/test_zilore.py ..................ss......... [
> 98%]
> lexicon/tests/providers/test_zonomi.py ........ss....ss.sss..s...s..
> [100%]
>
> =================================== FAILURES
> ===================================
> ____________________________ test_client_basic_init
> ____________________________
>
> def test_client_basic_init():
> options = {
> 'provider_name': 'fakeprovider',
> 'action': 'list',
> 'domain': 'example.com',
> 'type': 'TXT'
> }
> > client = lexicon.client.Client(ConfigResolver().with_dict(options))
>
> lexicon/tests/test_client.py:25:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> _
>
> self = <lexicon.client.Client object at 0x7efd65bcbbe0>
> config = <lexicon.config.ConfigResolver object at 0x7efd65bcbb50>
>
> def __init__(self, config=None):
> if not config:
> # If there is not config specified, we load a non-interactive
> configuration.
> self.config = non_interactive_config_resolver()
> elif not isinstance(config, ConfigResolver):
> # If config is not a ConfigResolver, we are in a legacy situation.
> # We protect this part of the Client API.
> self.config = legacy_config_resolver(config)
> else:
> self.config = config
>
> # Validate configuration
> self._validate_config()
>
> runtime_config = {}
>
> # Process domain, strip subdomain
> > domain_extractor =
> > tldextract.TLDExtract(cache_file=TLDEXTRACT_CACHE_FILE,
>
> include_psl_private_domains=True)
> E TypeError: __init__() got an unexpected keyword argument 'cache_file'
>
> lexicon/client.py:45: TypeError
> ___________________________ test_client_legacy_init
> ____________________________
>
> def test_client_legacy_init():
> options = {
> 'provider_name': 'fakeprovider',
> 'action': 'list',
> 'domain': 'example.com',
> 'type': 'TXT'
> }
> > client = lexicon.client.Client(options)
>
> lexicon/tests/test_client.py:40:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> _
>
> self = <lexicon.client.Client object at 0x7efd65bec8b0>
> config = {'action': 'list', 'domain': 'example.com', 'provider_name':
> 'fakeprovider', 'type': 'TXT'}
>
> def __init__(self, config=None):
> if not config:
> # If there is not config specified, we load a non-interactive
> configuration.
> self.config = non_interactive_config_resolver()
> elif not isinstance(config, ConfigResolver):
> # If config is not a ConfigResolver, we are in a legacy situation.
> # We protect this part of the Client API.
> self.config = legacy_config_resolver(config)
> else:
> self.config = config
>
> # Validate configuration
> self._validate_config()
>
> runtime_config = {}
>
> # Process domain, strip subdomain
> > domain_extractor =
> > tldextract.TLDExtract(cache_file=TLDEXTRACT_CACHE_FILE,
>
> include_psl_private_domains=True)
> E TypeError: __init__() got an unexpected keyword argument 'cache_file'
>
> lexicon/client.py:45: TypeError
> _________ test_client_init_when_domain_includes_subdomain_should_strip
> _________
>
> def test_client_init_when_domain_includes_subdomain_should_strip():
> options = {
> 'provider_name': 'fakeprovider',
> 'action': 'list',
> 'domain': 'www.example.com',
> 'type': 'TXT'
> }
> > client = lexicon.client.Client(options)
>
> lexicon/tests/test_client.py:55:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> _
>
> self = <lexicon.client.Client object at 0x7efd65baccd0>
> config = {'action': 'list', 'domain': 'www.example.com', 'provider_name':
> 'fakeprovider', 'type': 'TXT'}
>
> def __init__(self, config=None):
> if not config:
> # If there is not config specified, we load a non-interactive
> configuration.
> self.config = non_interactive_config_resolver()
> elif not isinstance(config, ConfigResolver):
> # If config is not a ConfigResolver, we are in a legacy situation.
> # We protect this part of the Client API.
> self.config = legacy_config_resolver(config)
> else:
> self.config = config
>
> # Validate configuration
> self._validate_config()
>
> runtime_config = {}
>
> # Process domain, strip subdomain
> > domain_extractor =
> > tldextract.TLDExtract(cache_file=TLDEXTRACT_CACHE_FILE,
>
> include_psl_private_domains=True)
> E TypeError: __init__() got an unexpected keyword argument 'cache_file'
>
> lexicon/client.py:45: TypeError
> _________________ test_client_init_with_delegated_domain_name
> __________________
>
> def test_client_init_with_delegated_domain_name():
> options = {
> 'provider_name': 'fakeprovider',
> 'action': 'list',
> 'domain': 'www.sub.example.com',
> 'delegated': 'sub',
> 'type': 'TXT'
> }
> > client = lexicon.client.Client(options)
>
> lexicon/tests/test_client.py:71:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> _
>
> self = <lexicon.client.Client object at 0x7efd65de7550>
> config = {'action': 'list', 'delegated': 'sub', 'domain':
> 'www.sub.example.com', 'provider_name': 'fakeprovider', ...}
>
> def __init__(self, config=None):
> if not config:
> # If there is not config specified, we load a non-interactive
> configuration.
> self.config = non_interactive_config_resolver()
> elif not isinstance(config, ConfigResolver):
> # If config is not a ConfigResolver, we are in a legacy situation.
> # We protect this part of the Client API.
> self.config = legacy_config_resolver(config)
> else:
> self.config = config
>
> # Validate configuration
> self._validate_config()
>
> runtime_config = {}
>
> # Process domain, strip subdomain
> > domain_extractor =
> > tldextract.TLDExtract(cache_file=TLDEXTRACT_CACHE_FILE,
>
> include_psl_private_domains=True)
> E TypeError: __init__() got an unexpected keyword argument 'cache_file'
>
> lexicon/client.py:45: TypeError
> _________________ test_client_init_with_delegated_domain_fqdn
> __________________
>
> def test_client_init_with_delegated_domain_fqdn():
> options = {
> 'provider_name': 'fakeprovider',
> 'action': 'list',
> 'domain': 'www.sub.example.com',
> 'delegated': 'sub.example.com',
> 'type': 'TXT'
> }
> > client = lexicon.client.Client(options)
>
> lexicon/tests/test_client.py:87:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> _
>
> self = <lexicon.client.Client object at 0x7efd65b93af0>
> config = {'action': 'list', 'delegated': 'sub.example.com', 'domain':
> 'www.sub.example.com', 'provider_name': 'fakeprovider', ...}
>
> def __init__(self, config=None):
> if not config:
> # If there is not config specified, we load a non-interactive
> configuration.
> self.config = non_interactive_config_resolver()
> elif not isinstance(config, ConfigResolver):
> # If config is not a ConfigResolver, we are in a legacy situation.
> # We protect this part of the Client API.
> self.config = legacy_config_resolver(config)
> else:
> self.config = config
>
> # Validate configuration
> self._validate_config()
>
> runtime_config = {}
>
> # Process domain, strip subdomain
> > domain_extractor =
> > tldextract.TLDExtract(cache_file=TLDEXTRACT_CACHE_FILE,
>
> include_psl_private_domains=True)
> E TypeError: __init__() got an unexpected keyword argument 'cache_file'
>
> lexicon/client.py:45: TypeError
> _______________ test_client_init_with_same_delegated_domain_fqdn
> _______________
>
> def test_client_init_with_same_delegated_domain_fqdn():
> options = {
> 'provider_name': 'fakeprovider',
> 'action': 'list',
> 'domain': 'www.example.com',
> 'delegated': 'example.com',
> 'type': 'TXT'
> }
> > client = lexicon.client.Client(options)
>
> lexicon/tests/test_client.py:103:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> _
>
> self = <lexicon.client.Client object at 0x7efd65dcd130>
> config = {'action': 'list', 'delegated': 'example.com', 'domain':
> 'www.example.com', 'provider_name': 'fakeprovider', ...}
>
> def __init__(self, config=None):
> if not config:
> # If there is not config specified, we load a non-interactive
> configuration.
> self.config = non_interactive_config_resolver()
> elif not isinstance(config, ConfigResolver):
> # If config is not a ConfigResolver, we are in a legacy situation.
> # We protect this part of the Client API.
> self.config = legacy_config_resolver(config)
> else:
> self.config = config
>
> # Validate configuration
> self._validate_config()
>
> runtime_config = {}
>
> # Process domain, strip subdomain
> > domain_extractor =
> > tldextract.TLDExtract(cache_file=TLDEXTRACT_CACHE_FILE,
>
> include_psl_private_domains=True)
> E TypeError: __init__() got an unexpected keyword argument 'cache_file'
>
> lexicon/client.py:45: TypeError
> _____________ test_client_parse_env_with_no_keys_should_do_nothing
> _____________
>
> monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7efd65de6b80>
>
> def test_client_parse_env_with_no_keys_should_do_nothing(monkeypatch):
> if os.environ.get('LEXICON_FAKEPROVIDER_TOKEN'):
> monkeypatch.delenv('LEXICON_FAKEPROVIDER_TOKEN')
> if os.environ.get('LEXICON_FAKEPROVIDER_USERNAME'):
> monkeypatch.delenv('LEXICON_FAKEPROVIDER_USERNAME')
> options = {
> 'provider_name': 'fakeprovider',
> 'action': 'list',
> 'domain': 'www.example.com',
> 'type': 'TXT'
> }
> > client = lexicon.client.Client(options)
>
> lexicon/tests/test_client.py:162:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> _
>
> self = <lexicon.client.Client object at 0x7efd65de6610>
> config = {'action': 'list', 'domain': 'www.example.com', 'provider_name':
> 'fakeprovider', 'type': 'TXT'}
>
> def __init__(self, config=None):
> if not config:
> # If there is not config specified, we load a non-interactive
> configuration.
> self.config = non_interactive_config_resolver()
> elif not isinstance(config, ConfigResolver):
> # If config is not a ConfigResolver, we are in a legacy situation.
> # We protect this part of the Client API.
> self.config = legacy_config_resolver(config)
> else:
> self.config = config
>
> # Validate configuration
> self._validate_config()
>
> runtime_config = {}
>
> # Process domain, strip subdomain
> > domain_extractor =
> > tldextract.TLDExtract(cache_file=TLDEXTRACT_CACHE_FILE,
>
> include_psl_private_domains=True)
> E TypeError: __init__() got an unexpected keyword argument 'cache_file'
>
> lexicon/client.py:45: TypeError
> _____________________ test_client_parse_env_with_auth_keys
> _____________________
>
> monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7efd65ddb4f0>
>
> def test_client_parse_env_with_auth_keys(monkeypatch):
> monkeypatch.setenv('LEXICON_FAKEPROVIDER_TOKEN', 'test-token')
> monkeypatch.setenv('LEXICON_FAKEPROVIDER_USERNAME',
> 'test-usern...@example.com')
> options = {
> 'provider_name': 'fakeprovider',
> 'action': 'list',
> 'domain': 'www.example.com',
> 'type': 'TXT'
> }
> > client = lexicon.client.Client(options)
>
> lexicon/tests/test_client.py:182:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> _
>
> self = <lexicon.client.Client object at 0x7efd65c93610>
> config = {'action': 'list', 'domain': 'www.example.com', 'provider_name':
> 'fakeprovider', 'type': 'TXT'}
>
> def __init__(self, config=None):
> if not config:
> # If there is not config specified, we load a non-interactive
> configuration.
> self.config = non_interactive_config_resolver()
> elif not isinstance(config, ConfigResolver):
> # If config is not a ConfigResolver, we are in a legacy situation.
> # We protect this part of the Client API.
> self.config = legacy_config_resolver(config)
> else:
> self.config = config
>
> # Validate configuration
> self._validate_config()
>
> runtime_config = {}
>
> # Process domain, strip subdomain
> > domain_extractor =
> > tldextract.TLDExtract(cache_file=TLDEXTRACT_CACHE_FILE,
>
> include_psl_private_domains=True)
> E TypeError: __init__() got an unexpected keyword argument 'cache_file'
>
> lexicon/client.py:45: TypeError
> ______ test_missing_optional_client_config_parameter_does_not_raise_error
> ______
>
> lexicon_client = <module 'lexicon.client' from
> '/<<PKGBUILDDIR>>/lexicon/client.py'>
>
> def
> test_missing_optional_client_config_parameter_does_not_raise_error(lexicon_client):
> > lexicon_client.Client({'action': 'list', 'provider_name':
> > 'fakeprovider',
> 'domain': 'example.com', 'type': 'TXT',
> 'no-name': 'fake', 'no-content': 'fake'})
>
> lexicon/tests/test_library.py:126:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> _
>
> self = <lexicon.client.Client object at 0x7efd65af4550>
> config = {'action': 'list', 'domain': 'example.com', 'no-content': 'fake',
> 'no-name': 'fake', ...}
>
> def __init__(self, config=None):
> if not config:
> # If there is not config specified, we load a non-interactive
> configuration.
> self.config = non_interactive_config_resolver()
> elif not isinstance(config, ConfigResolver):
> # If config is not a ConfigResolver, we are in a legacy situation.
> # We protect this part of the Client API.
> self.config = legacy_config_resolver(config)
> else:
> self.config = config
>
> # Validate configuration
> self._validate_config()
>
> runtime_config = {}
>
> # Process domain, strip subdomain
> > domain_extractor =
> > tldextract.TLDExtract(cache_file=TLDEXTRACT_CACHE_FILE,
>
> include_psl_private_domains=True)
> E TypeError: __init__() got an unexpected keyword argument 'cache_file'
>
> lexicon/client.py:45: TypeError
> ______________ test_list_action_is_correctly_handled_by_provider
> _______________
>
> capsys = <_pytest.capture.CaptureFixture object at 0x7efd65ca6040>
> lexicon_client = <module 'lexicon.client' from
> '/<<PKGBUILDDIR>>/lexicon/client.py'>
>
> def test_list_action_is_correctly_handled_by_provider(capsys,
> lexicon_client):
> > client = lexicon_client.Client({'action': 'list', 'provider_name':
> > 'fakeprovider',
> 'domain': 'example.com', 'type':
> 'TXT',
> 'name': 'fake', 'content':
> 'fake-content'})
>
> lexicon/tests/test_library.py:132:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> _
>
> self = <lexicon.client.Client object at 0x7efd65a93550>
> config = {'action': 'list', 'content': 'fake-content', 'domain':
> 'example.com', 'name': 'fake', ...}
>
> def __init__(self, config=None):
> if not config:
> # If there is not config specified, we load a non-interactive
> configuration.
> self.config = non_interactive_config_resolver()
> elif not isinstance(config, ConfigResolver):
> # If config is not a ConfigResolver, we are in a legacy situation.
> # We protect this part of the Client API.
> self.config = legacy_config_resolver(config)
> else:
> self.config = config
>
> # Validate configuration
> self._validate_config()
>
> runtime_config = {}
>
> # Process domain, strip subdomain
> > domain_extractor =
> > tldextract.TLDExtract(cache_file=TLDEXTRACT_CACHE_FILE,
>
> include_psl_private_domains=True)
> E TypeError: __init__() got an unexpected keyword argument 'cache_file'
>
> lexicon/client.py:45: TypeError
> _____________ test_create_action_is_correctly_handled_by_provider
> ______________
>
> capsys = <_pytest.capture.CaptureFixture object at 0x7efd65c94a60>
> lexicon_client = <module 'lexicon.client' from
> '/<<PKGBUILDDIR>>/lexicon/client.py'>
>
> def test_create_action_is_correctly_handled_by_provider(capsys,
> lexicon_client):
> > client = lexicon_client.Client({'action': 'create', 'provider_name':
> > 'fakeprovider',
> 'domain': 'example.com', 'type':
> 'TXT',
> 'name': 'fake', 'content':
> 'fake-content'})
>
> lexicon/tests/test_library.py:148:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> _
>
> self = <lexicon.client.Client object at 0x7efd65c94760>
> config = {'action': 'create', 'content': 'fake-content', 'domain':
> 'example.com', 'name': 'fake', ...}
>
> def __init__(self, config=None):
> if not config:
> # If there is not config specified, we load a non-interactive
> configuration.
> self.config = non_interactive_config_resolver()
> elif not isinstance(config, ConfigResolver):
> # If config is not a ConfigResolver, we are in a legacy situation.
> # We protect this part of the Client API.
> self.config = legacy_config_resolver(config)
> else:
> self.config = config
>
> # Validate configuration
> self._validate_config()
>
> runtime_config = {}
>
> # Process domain, strip subdomain
> > domain_extractor =
> > tldextract.TLDExtract(cache_file=TLDEXTRACT_CACHE_FILE,
>
> include_psl_private_domains=True)
> E TypeError: __init__() got an unexpected keyword argument 'cache_file'
>
> lexicon/client.py:45: TypeError
> _____________ test_update_action_is_correctly_handled_by_provider
> ______________
>
> capsys = <_pytest.capture.CaptureFixture object at 0x7efd65c8ffa0>
> lexicon_client = <module 'lexicon.client' from
> '/<<PKGBUILDDIR>>/lexicon/client.py'>
>
> def test_update_action_is_correctly_handled_by_provider(capsys,
> lexicon_client):
> > client = lexicon_client.Client({'action': 'update', 'provider_name':
> > 'fakeprovider',
> 'domain': 'example.com',
> 'identifier': 'fake-id',
> 'type': 'TXT', 'name': 'fake',
> 'content': 'fake-content'})
>
> lexicon/tests/test_library.py:164:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> _
>
> self = <lexicon.client.Client object at 0x7efd65c8fd90>
> config = {'action': 'update', 'content': 'fake-content', 'domain':
> 'example.com', 'identifier': 'fake-id', ...}
>
> def __init__(self, config=None):
> if not config:
> # If there is not config specified, we load a non-interactive
> configuration.
> self.config = non_interactive_config_resolver()
> elif not isinstance(config, ConfigResolver):
> # If config is not a ConfigResolver, we are in a legacy situation.
> # We protect this part of the Client API.
> self.config = legacy_config_resolver(config)
> else:
> self.config = config
>
> # Validate configuration
> self._validate_config()
>
> runtime_config = {}
>
> # Process domain, strip subdomain
> > domain_extractor =
> > tldextract.TLDExtract(cache_file=TLDEXTRACT_CACHE_FILE,
>
> include_psl_private_domains=True)
> E TypeError: __init__() got an unexpected keyword argument 'cache_file'
>
> lexicon/client.py:45: TypeError
> _____________ test_delete_action_is_correctly_handled_by_provider
> ______________
>
> capsys = <_pytest.capture.CaptureFixture object at 0x7efd65ded040>
> lexicon_client = <module 'lexicon.client' from
> '/<<PKGBUILDDIR>>/lexicon/client.py'>
>
> def test_delete_action_is_correctly_handled_by_provider(capsys,
> lexicon_client):
> > client = lexicon_client.Client({'action': 'delete', 'provider_name':
> > 'fakeprovider',
> 'domain': 'example.com',
> 'identifier': 'fake-id',
> 'type': 'TXT', 'name': 'fake',
> 'content': 'fake-content'})
>
> lexicon/tests/test_library.py:181:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> _
>
> self = <lexicon.client.Client object at 0x7efd65dceeb0>
> config = {'action': 'delete', 'content': 'fake-content', 'domain':
> 'example.com', 'identifier': 'fake-id', ...}
>
> def __init__(self, config=None):
> if not config:
> # If there is not config specified, we load a non-interactive
> configuration.
> self.config = non_interactive_config_resolver()
> elif not isinstance(config, ConfigResolver):
> # If config is not a ConfigResolver, we are in a legacy situation.
> # We protect this part of the Client API.
> self.config = legacy_config_resolver(config)
> else:
> self.config = config
>
> # Validate configuration
> self._validate_config()
>
> runtime_config = {}
>
> # Process domain, strip subdomain
> > domain_extractor =
> > tldextract.TLDExtract(cache_file=TLDEXTRACT_CACHE_FILE,
>
> include_psl_private_domains=True)
> E TypeError: __init__() got an unexpected keyword argument 'cache_file'
>
> lexicon/client.py:45: TypeError
> =============================== warnings summary
> ===============================
> lexicon/tests/providers/integration_tests.py:319
> /<<PKGBUILDDIR>>/lexicon/tests/providers/integration_tests.py:319:
> PytestUnknownMarkWarning: Unknown pytest.mark.ext_suite_1 - is this a typo?
> You can register custom marks to avoid this warning - for details, see
> https://docs.pytest.org/en/stable/mark.html
> @pytest.mark.ext_suite_1
>
> lexicon/tests/providers/integration_tests.py:331
> /<<PKGBUILDDIR>>/lexicon/tests/providers/integration_tests.py:331:
> PytestUnknownMarkWarning: Unknown pytest.mark.ext_suite_1 - is this a typo?
> You can register custom marks to avoid this warning - for details, see
> https://docs.pytest.org/en/stable/mark.html
> @pytest.mark.ext_suite_1
>
> lexicon/tests/providers/integration_tests.py:340
> /<<PKGBUILDDIR>>/lexicon/tests/providers/integration_tests.py:340:
> PytestUnknownMarkWarning: Unknown pytest.mark.ext_suite_1 - is this a typo?
> You can register custom marks to avoid this warning - for details, see
> https://docs.pytest.org/en/stable/mark.html
> @pytest.mark.ext_suite_1
>
> lexicon/tests/providers/integration_tests.py:348
> /<<PKGBUILDDIR>>/lexicon/tests/providers/integration_tests.py:348:
> PytestUnknownMarkWarning: Unknown pytest.mark.ext_suite_1 - is this a typo?
> You can register custom marks to avoid this warning - for details, see
> https://docs.pytest.org/en/stable/mark.html
> @pytest.mark.ext_suite_1
>
> lexicon/tests/providers/integration_tests.py:360
> /<<PKGBUILDDIR>>/lexicon/tests/providers/integration_tests.py:360:
> PytestUnknownMarkWarning: Unknown pytest.mark.ext_suite_1 - is this a typo?
> You can register custom marks to avoid this warning - for details, see
> https://docs.pytest.org/en/stable/mark.html
> @pytest.mark.ext_suite_1
>
> lexicon/tests/providers/integration_tests.py:375
> /<<PKGBUILDDIR>>/lexicon/tests/providers/integration_tests.py:375:
> PytestUnknownMarkWarning: Unknown pytest.mark.ext_suite_1 - is this a typo?
> You can register custom marks to avoid this warning - for details, see
> https://docs.pytest.org/en/stable/mark.html
> @pytest.mark.ext_suite_1
>
> lexicon/tests/providers/test_auto.py:57
> /<<PKGBUILDDIR>>/lexicon/tests/providers/test_auto.py:57:
> PytestUnknownMarkWarning: Unknown pytest.mark.ignore_nslookup_mock - is this
> a typo? You can register custom marks to avoid this warning - for details,
> see https://docs.pytest.org/en/stable/mark.html
> @pytest.mark.ignore_nslookup_mock('yes')
>
> lexicon/tests/providers/test_hetzner.py:51
> /<<PKGBUILDDIR>>/lexicon/tests/providers/test_hetzner.py:51:
> PytestUnknownMarkWarning: Unknown pytest.mark.ignore_dns_cname_mock - is this
> a typo? You can register custom marks to avoid this warning - for details,
> see https://docs.pytest.org/en/stable/mark.html
> @pytest.mark.ignore_dns_cname_mock
>
> lexicon/tests/test_client.py: 11 warnings
> lexicon/tests/test_config.py: 1 warning
> lexicon/tests/test_library.py: 10 warnings
> /<<PKGBUILDDIR>>/lexicon/config.py:193: DeprecationWarning: Legacy
> configuration object has been used to load the ConfigResolver.
> warnings.warn(DeprecationWarning('Legacy configuration object has been
> used '
>
> lexicon/tests/test_config.py::test_config_lexicon_file_resolution
> lexicon/tests/test_config.py::test_provider_config_lexicon_file_resolution
> lexicon/tests/test_config.py::test_provider_config_dir_resolution
> lexicon/tests/test_config.py::test_prioritized_resolution
> /<<PKGBUILDDIR>>/lexicon/config.py:292: YAMLLoadWarning: calling
> yaml.load() without Loader=... is deprecated, as the default Loader is
> unsafe. Please read https://msg.pyyaml.org/load for full details.
> yaml_object = yaml.load(stream) or {}
>
> lexicon/tests/providers/test_godaddy.py: 117 warnings
> /<<PKGBUILDDIR>>/lexicon/providers/godaddy.py:246: DeprecationWarning:
> Using 'method_whitelist' with Retry is deprecated and will be removed in
> v2.0. Use 'allowed_methods' instead
> retries = Retry(
>
> -- Docs: https://docs.pytest.org/en/stable/warnings.html
> =========================== short test summary info
> ============================
> FAILED lexicon/tests/test_client.py::test_client_basic_init - TypeError:
> __in...
> FAILED lexicon/tests/test_client.py::test_client_legacy_init - TypeError:
> __i...
> FAILED
> lexicon/tests/test_client.py::test_client_init_when_domain_includes_subdomain_should_strip
> FAILED
> lexicon/tests/test_client.py::test_client_init_with_delegated_domain_name
> FAILED
> lexicon/tests/test_client.py::test_client_init_with_delegated_domain_fqdn
> FAILED
> lexicon/tests/test_client.py::test_client_init_with_same_delegated_domain_fqdn
> FAILED
> lexicon/tests/test_client.py::test_client_parse_env_with_no_keys_should_do_nothing
> FAILED lexicon/tests/test_client.py::test_client_parse_env_with_auth_keys -
> T...
> FAILED
> lexicon/tests/test_library.py::test_missing_optional_client_config_parameter_does_not_raise_error
> FAILED
> lexicon/tests/test_library.py::test_list_action_is_correctly_handled_by_provider
> FAILED
> lexicon/tests/test_library.py::test_create_action_is_correctly_handled_by_provider
> FAILED
> lexicon/tests/test_library.py::test_update_action_is_correctly_handled_by_provider
> FAILED
> lexicon/tests/test_library.py::test_delete_action_is_correctly_handled_by_provider
> = 13 failed, 1396 passed, 198 skipped, 380 deselected, 151 warnings in 43.32s
> ==
> make[1]: *** [debian/rules:13: override_dh_auto_test] Error 1
The full build log is available from:
http://qa-logs.debian.net/2022/02/12/lexicon_3.3.17-1_unstable.log
A list of current common problems and possible solutions is available at
http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute!
If you reassign this bug to another package, please marking it as 'affects'-ing
this package. See https://www.debian.org/Bugs/server-control#affects
If you fail to reproduce this, please provide a build log and diff it with mine
so that we can identify if something relevant changed in the meantime.
--- End Message ---