diff --git a/copyparty/__main__.py b/copyparty/__main__.py index a604a720..2c8cfba2 100755 --- a/copyparty/__main__.py +++ b/copyparty/__main__.py @@ -24,7 +24,7 @@ from textwrap import dedent from .__init__ import ANYWIN, CORES, PY2, VT100, WINDOWS, E, EnvParams, unicode from .__version__ import CODENAME, S_BUILD_DT, S_VERSION -from .authsrv import re_vol, expand_config_file +from .authsrv import expand_config_file, re_vol from .svchub import SvcHub from .util import ( IMPLICATIONS, diff --git a/copyparty/mdns.py b/copyparty/mdns.py index 45ec30bf..2a82a9b4 100644 --- a/copyparty/mdns.py +++ b/copyparty/mdns.py @@ -5,26 +5,27 @@ import random import select import socket import time + from ipaddress import IPv4Network, IPv6Network from .__init__ import TYPE_CHECKING from .__init__ import unicode as U -from .util import CachedSet, Daemon, min_ex from .multicast import MC_Sck, MCast +from .stolen.dnslib import CLASS as DC from .stolen.dnslib import ( - RR, - DNSHeader, - DNSRecord, - DNSQuestion, + NSEC, + PTR, QTYPE, + RR, + SRV, + TXT, A, AAAA, - NSEC, - SRV, - PTR, - TXT, + DNSHeader, + DNSQuestion, + DNSRecord, ) -from .stolen.dnslib import CLASS as DC +from .util import CachedSet, Daemon, min_ex if TYPE_CHECKING: from .svchub import SvcHub diff --git a/copyparty/multicast.py b/copyparty/multicast.py index a7e9f1f9..ccefde4c 100644 --- a/copyparty/multicast.py +++ b/copyparty/multicast.py @@ -3,8 +3,9 @@ from __future__ import print_function, unicode_literals import socket import time + import ipaddress -from ipaddress import IPv4Network, IPv6Network, IPv4Address, IPv6Address +from ipaddress import IPv4Address, IPv4Network, IPv6Address, IPv6Network from .__init__ import TYPE_CHECKING from .util import min_ex, spack diff --git a/copyparty/stolen/dnslib/dns.py b/copyparty/stolen/dnslib/dns.py index 2c91deed..07f1ad2c 100644 --- a/copyparty/stolen/dnslib/dns.py +++ b/copyparty/stolen/dnslib/dns.py @@ -3,14 +3,13 @@ from __future__ import print_function import binascii - from itertools import chain -from .bit import get_bits, set_bits from .bimap import Bimap, BimapError +from .bit import get_bits, set_bits from .buffer import BufferError -from .label import DNSLabel, DNSBuffer -from .ranges import H, I, IP4, IP6, check_bytes +from .label import DNSBuffer, DNSLabel +from .ranges import IP4, IP6, H, I, check_bytes class DNSError(Exception): diff --git a/copyparty/stolen/dnslib/label.py b/copyparty/stolen/dnslib/label.py index dc89e56a..20ff3306 100644 --- a/copyparty/stolen/dnslib/label.py +++ b/copyparty/stolen/dnslib/label.py @@ -2,7 +2,7 @@ from __future__ import print_function -import fnmatch, re +import re from .bit import get_bits, set_bits from .buffer import Buffer, BufferError diff --git a/copyparty/stolen/ifaddr/__init__.py b/copyparty/stolen/ifaddr/__init__.py index 1c7ae7af..b5e19443 100644 --- a/copyparty/stolen/ifaddr/__init__.py +++ b/copyparty/stolen/ifaddr/__init__.py @@ -9,7 +9,7 @@ https://github.com/pydron/ifaddr/tree/0.2.0 import os -from ._shared import Adapter, IP +from ._shared import IP, Adapter if os.name == "nt": from ._win32 import get_adapters diff --git a/copyparty/stolen/ifaddr/_posix.py b/copyparty/stolen/ifaddr/_posix.py index 17e2966f..2e5118ef 100644 --- a/copyparty/stolen/ifaddr/_posix.py +++ b/copyparty/stolen/ifaddr/_posix.py @@ -1,12 +1,13 @@ # coding: utf-8 from __future__ import print_function, unicode_literals -import os -import ctypes.util -import ipaddress import collections +import ctypes.util +import os import socket +import ipaddress + if True: # pylint: disable=using-constant-test from typing import Iterable, Optional diff --git a/copyparty/stolen/ifaddr/_shared.py b/copyparty/stolen/ifaddr/_shared.py index d5d02623..c6958284 100644 --- a/copyparty/stolen/ifaddr/_shared.py +++ b/copyparty/stolen/ifaddr/_shared.py @@ -1,14 +1,15 @@ # coding: utf-8 from __future__ import print_function, unicode_literals -import sys import ctypes -import socket -import ipaddress import platform +import socket +import sys + +import ipaddress if True: # pylint: disable=using-constant-test - from typing import List, Optional, Tuple, Union, Callable + from typing import Callable, List, Optional, Union PY2 = sys.version_info < (3,) diff --git a/copyparty/svchub.py b/copyparty/svchub.py index edb81132..6b3a0aef 100644 --- a/copyparty/svchub.py +++ b/copyparty/svchub.py @@ -26,7 +26,7 @@ if True: # pylint: disable=using-constant-test import typing from typing import Any, Optional, Union -from .__init__ import ANYWIN, MACOS, VT100, EnvParams, unicode +from .__init__ import ANYWIN, MACOS, TYPE_CHECKING, VT100, EnvParams, unicode from .authsrv import AuthSrv from .mtag import HAVE_FFMPEG, HAVE_FFPROBE from .tcpsrv import TcpSrv @@ -45,6 +45,12 @@ from .util import ( start_stackmon, ) +if TYPE_CHECKING: + try: + from .mdns import MDNS + except: + pass + class SvcHub(object): """ @@ -222,7 +228,7 @@ class SvcHub(object): if not args.zms: args.zms = zms - self.mdns: Any = None + self.mdns: Optional["MDNS"] = None # decide which worker impl to use if self.check_mp_enable(): @@ -491,7 +497,7 @@ class SvcHub(object): slp = 0.0 if self.mdns: Daemon(self.mdns.stop) - slp = time.time() + 1 + slp = time.time() + 0.5 self.tcpsrv.shutdown() self.broker.shutdown() diff --git a/copyparty/util.py b/copyparty/util.py index 52b1d6c7..cc39b4a5 100644 --- a/copyparty/util.py +++ b/copyparty/util.py @@ -24,8 +24,8 @@ import time import traceback from collections import Counter from datetime import datetime -from ipaddress import IPv6Address +from ipaddress import IPv6Address from queue import Queue from .__init__ import ANYWIN, MACOS, PY2, TYPE_CHECKING, VT100, WINDOWS, unicode