diff --git a/README.md b/README.md
index 4e0bd1c..c96f770 100644
--- a/README.md
+++ b/README.md
@@ -145,5 +145,6 @@ dc = DomainConnect(
 ## CHANGELOG
 | version | date       | changes |
 | ------- | -----------| ------ |
+| 0.0.7  | 2019-10-29 | Bugfix: error when setting up .app domain |
 | 0.0.6  | 2019-07-05 | UPDATE: moved from pycrypto to cryptography (due to know security issues) |
 | 0.0.5  | 2019-03-12 | NEW FEATURE: url signing capability added |
diff --git a/domainconnect/domainconnect.py b/domainconnect/domainconnect.py
index 1effe31..a66214f 100644
--- a/domainconnect/domainconnect.py
+++ b/domainconnect/domainconnect.py
@@ -13,7 +13,7 @@ import time
 from six.moves import urllib
 from dns.exception import Timeout
 from dns.resolver import Resolver, NXDOMAIN, YXDOMAIN, NoAnswer, NoNameservers
-from publicsuffix import PublicSuffixList
+from publicsuffixlist import PublicSuffixList
 import webbrowser
 from .network import get_json, get_http, http_request_json, NetworkContext
 
@@ -195,7 +195,7 @@ class DomainConnect:
 
     @staticmethod
     def identify_domain_root(domain):
-        return psl.get_public_suffix(domain)
+        return psl.privatesuffix(domain)
 
     def _identify_domain_connect_api(self, domain_root):
         # noinspection PyBroadException
diff --git a/requirements.txt b/requirements.txt
index b933b75..e291b06 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,11 +1,11 @@
-asn1crypto==0.24.0
-cffi==1.12.3
-cryptography==2.7
+asn1crypto==1.2.0
+cffi==1.13.1
+cryptography==2.8
 dnspython==1.16.0
-future==0.17.1
+future==0.18.1
 linecache2==1.0.0
 publicsuffix==1.1.0
-publicsuffixlist==0.6.5
+publicsuffixlist==0.6.11
 pybase64==0.5.0
 pycparser==2.19
 six==1.12.0
diff --git a/setup.py b/setup.py
index 6d4f36b..b95416c 100644
--- a/setup.py
+++ b/setup.py
@@ -3,7 +3,7 @@
 from setuptools import setup
 
 setup(name='domain_connect',
-      version='0.0.6',
+      version='0.0.7',
       description='Python client library for Domain Connect protocol. See: https://domainconnect.org',
       long_description_content_type="text/markdown",
       long_description=open('README.md').read(),
@@ -19,11 +19,11 @@ setup(name='domain_connect',
           'domainconnect',
       ],
       install_requires=[
-          'dnspython >= 1.15.0',
+          'dnspython >= 1.16.0',
           'publicsuffix >= 1.1.0',
-          'publicsuffixlist >= 0.6.1',
-          'six >= 1.11.0',
-          'future >= 0.16.0',
-          'cryptography >= 2.7'
+          'publicsuffixlist >= 0.6.11',
+          'six >= 1.12.0',
+          'future >= 0.18.1',
+          'cryptography >= 2.8'
       ],
       )

Doesn't work for .app domains
Hi,
i was trying to use it with an .app domain but it did not work.
Looks like it is doing a DNS lookup for 
_domainconnect.app
instead of
_domainconnect.domain.app

Full command line and error message below.

Can you check and fix it please?
regards
michael


\# domain-connect-dyndns setup --domain test.mydomain.app
Traceback (most recent call last):
  File "/usr/local/lib/python3.6/site-packages/domainconnect/domainconnect.py", line 203, in _identify_domain_connect_api
    dns = self._resolver.query('_domainconnect.{}'.format(domain_root), 'TXT')
  File "/usr/local/lib/python3.6/site-packages/dns/resolver.py", line 1002, in query
    raise NXDOMAIN(qnames=qnames_to_try, responses=nxdomain_responses)
dns.resolver.NXDOMAIN: None of DNS query names exist: _domainconnect.app., _domainconnect.app.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.6/site-packages/dyndns/domain_setup.py", line 16, in main
    config = dc.get_domain_config(domain)
  File "/usr/local/lib/python3.6/site-packages/domainconnect/domainconnect.py", line 243, in get_domain_config
    domain_connect_api = self._identify_domain_connect_api(domain_root)
  File "/usr/local/lib/python3.6/site-packages/domainconnect/domainconnect.py", line 213, in _identify_domain_connect_api
    raise NoDomainConnectRecordException('Failed to resolve "{}"'.format(domain_root))
domainconnect.domainconnect.NoDomainConnectRecordException: Failed to resolve "app"

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/bin/domain-connect-dyndns", line 11, in <module>
    sys.exit(main())
  File "/usr/local/lib/python3.6/site-packages/dyndns/command_line.py", line 59, in main
    print(domain_setup.main(domain, settings))
  File "/usr/local/lib/python3.6/site-packages/dyndns/domain_setup.py", line 17, in main
    except NoDomainConnectRecordException or NoDomainConnectSettingsException:
NameError: name 'NoDomainConnectRecordException' is not defined
diff --git a/domainconnect/tests/test_domainConnect.py b/domainconnect/tests/test_domainConnect.py
index 0d1022e..d610471 100644
--- a/domainconnect/tests/test_domainConnect.py
+++ b/domainconnect/tests/test_domainConnect.py
@@ -185,6 +185,44 @@ class TestDomainConnect(TestCase):
         assert (res.urlAPI == config['API_URL']), 'urlAPI not correct: {}'.format(res.urlAPI)
         assert (res.providerName == config['PROVIDER_ID']), 'providerName not correct: {}'.format(res.providerName)
 
+    domainroottests = [
+        ('test.com', 'test.com', ''),
+        ('subdomain.test.com', 'test.com', 'subdomain'),
+        ('sub.subdomain.test.com', 'test.com', 'sub.subdomain'),
+        ('test.co.uk', 'test.co.uk', ''),
+        ('subdomain.test.co.uk', 'test.co.uk', 'subdomain'),
+        ('sub.subdomain.test.co.uk', 'test.co.uk', 'sub.subdomain'),
+        ('test.uk', 'test.uk', ''),
+        ('subdomain.test.uk', 'test.uk', 'subdomain'),
+        ('sub.subdomain.test.uk', 'test.uk', 'sub.subdomain'),
+        ('test.com.de', 'test.com.de', ''),
+        ('subdomain.test.com.de', 'test.com.de', 'subdomain'),
+        ('sub.subdomain.test.com.de', 'test.com.de', 'sub.subdomain'),
+        ('test.poznan.pl', 'test.poznan.pl', ''),
+        ('subdomain.test.poznan.pl', 'test.poznan.pl', 'subdomain'),
+        ('sub.subdomain.test.poznan.pl', 'test.poznan.pl', 'sub.subdomain'),
+        ('get.app', 'get.app', ''),
+        ('subdomain.get.app', 'get.app', 'subdomain'),
+        ('sub.subdomain.get.app', 'get.app', 'sub.subdomain'),
+        ('get.unkownnewtld', 'get.unkownnewtld', ''),
+        ('subdomain.get.unkownnewtld', 'get.unkownnewtld', 'subdomain'),
+        ('sub.subdomain.get.unkownnewtld', 'get.unkownnewtld', 'sub.subdomain'),
+    ]
+
+    def test_get_domain_root(self):
+        for i in TestDomainConnect.domainroottests:
+            with self.subTest(i=i):
+                self._test_get_domain_root(i)
+
+    @staticmethod
+    def _test_get_domain_root(config):
+        dc = DomainConnect()
+        domain_root = dc.identify_domain_root(config[0]);
+        assert domain_root is not None, "No domain root found"
+        assert domain_root == config[1], "Wrong domain root found. Expected {}, Found {}".format(config[1], domain_root)
+        assert '{}{}{}'.format(config[2], '' if config[2] == '' else '.', domain_root) == config[0], "Domain root + subdomain != domain"
+
+
     def test_get_domain_connect_template_async_url(self):
         for i in configs:
             with self.subTest(i=i):

pip install -e .
parse_log_pytest
requirements.txt
pytest
apt-get update apt-get install -y gcc
3.6
requirements.txt
pytest --no-header -rA --tb=line --color=no -p no:cacheprovider -W ignore::DeprecationWarning
asn1crypto==0.24.0
attrs==22.2.0
certifi==2021.5.30
cffi==1.12.3
cryptography==2.7
dnspython==1.16.0
-e git+https://github.com/Domain-Connect/domainconnect_python.git@23f91c72851c6303c876bd1d6957c2236ac0e1cc#egg=domain_connect
future==0.17.1
importlib-metadata==4.8.3
iniconfig==1.1.1
linecache2==1.0.0
packaging==21.3
pluggy==1.0.0
publicsuffix==1.1.0
publicsuffixlist==0.6.5
py==1.11.0
pybase64==0.5.0
pycparser==2.19
pyparsing==3.1.4
pytest==7.0.1
six==1.12.0
tomli==1.2.3
traceback2==1.4.0
typing_extensions==4.1.1
unittest2==1.1.0
zipp==3.6.0

name: domainconnect_python
channels:
  - defaults
  - https://repo.anaconda.com/pkgs/main
  - https://repo.anaconda.com/pkgs/r
  - conda-forge
dependencies:
  - _libgcc_mutex=0.1=main
  - _openmp_mutex=5.1=1_gnu
  - ca-certificates=2025.2.25=h06a4308_0
  - certifi=2021.5.30=py36h06a4308_0
  - ld_impl_linux-64=2.40=h12ee557_0
  - libffi=3.3=he6710b0_2
  - libgcc-ng=11.2.0=h1234567_1
  - libgomp=11.2.0=h1234567_1
  - libstdcxx-ng=11.2.0=h1234567_1
  - ncurses=6.4=h6a678d5_0
  - openssl=1.1.1w=h7f8727e_0
  - pip=21.2.2=py36h06a4308_0
  - python=3.6.13=h12debd9_1
  - readline=8.2=h5eee18b_0
  - setuptools=58.0.4=py36h06a4308_0
  - sqlite=3.45.3=h5eee18b_0
  - tk=8.6.14=h39e8969_0
  - wheel=0.37.1=pyhd3eb1b0_0
  - xz=5.6.4=h5eee18b_1
  - zlib=1.2.13=h5eee18b_1
  - pip:
      - argparse==1.4.0
      - asn1crypto==0.24.0
      - attrs==22.2.0
      - cffi==1.12.3
      - cryptography==2.7
      - dnspython==1.16.0
      - future==0.17.1
      - importlib-metadata==4.8.3
      - iniconfig==1.1.1
      - linecache2==1.0.0
      - packaging==21.3
      - pluggy==1.0.0
      - publicsuffix==1.1.0
      - publicsuffixlist==0.6.5
      - py==1.11.0
      - pybase64==0.5.0
      - pycparser==2.19
      - pyparsing==3.1.4
      - pytest==7.0.1
      - six==1.12.0
      - tomli==1.2.3
      - traceback2==1.4.0
      - typing-extensions==4.1.1
      - unittest2==1.1.0
      - zipp==3.6.0
prefix: /opt/conda/envs/domainconnect_python

domainconnect/tests/test_domainConnect.py::TestDomainConnect::test_get_domain_root
domainconnect/tests/test_domainConnect.py::TestDomainConnect::test_get_domain_config domainconnect/tests/test_domainConnect.py::TestDomainConnect::test_get_domain_connect_async_conflict domainconnect/tests/test_domainConnect.py::TestDomainConnect::test_get_domain_connect_async_open_browser domainconnect/tests/test_domainConnect.py::TestDomainConnect::test_get_domain_connect_async_token_refresh domainconnect/tests/test_domainConnect.py::TestDomainConnect::test_get_domain_connect_template_async_url domainconnect/tests/test_domainConnect.py::TestDomainConnect::test_get_domain_connect_template_sync_url domainconnect/tests/test_domainConnect.py::TestDomainConnect::test_get_domain_connect_template_sync_url_with_signature
domainconnect/tests/test_domainConnect.py::TestDomainConnect::test_generate_sig_params domainconnect/tests/test_domainConnect.py::TestDomainConnect::test_get_domain_connect_template_sync_url_invalid_domain
setup.py requirements.txt README.md domainconnect/domainconnect.py
setup.py requirements.txt README.md domainconnect/domainconnect.py