Skip to content

Commit ae512ec

Browse files
committed
added uvloop daemon, version 2.2.0
1 parent 228922a commit ae512ec

File tree

2 files changed

+11
-22
lines changed

2 files changed

+11
-22
lines changed

pproxy/__doc__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
__title__ = "pproxy"
2-
__version__ = "2.1.8"
2+
__version__ = "2.2.0"
33
__license__ = "MIT"
44
__description__ = "Proxy server that can tunnel among remote servers by regex rules."
55
__keywords__ = "proxy socks http shadowsocks shadowsocksr ssr redirect pf tunnel cipher ssl udp"

pproxy/server.py

Lines changed: 10 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -500,21 +500,6 @@ async def test_url(url, rserver):
500500
print(f'============ success ============')
501501

502502
def main():
503-
import importlib
504-
uvloop_exists = importlib.util.find_spec("uvloop")
505-
c_crypto_exists = importlib.util.find_spec("Crypto")
506-
507-
# Try to use uvloop instead of the default event loop
508-
if uvloop_exists:
509-
import uvloop
510-
uvloop.install()
511-
print("Using uvloop")
512-
else:
513-
print("Using default event loop")
514-
515-
if c_crypto_exists:
516-
print("Using optimized C ciphers")
517-
518503
parser = argparse.ArgumentParser(description=__description__+'\nSupported protocols: http,socks4,socks5,shadowsocks,shadowsocksr,redirect,pf,tunnel', epilog=f'Online help: <{__url__}>')
519504
parser.add_argument('-l', dest='listen', default=[], action='append', type=ProxyURI.compile, help='tcp server uri (default: http+socks4+socks5://:8080/)')
520505
parser.add_argument('-r', dest='rserver', default=[], action='append', type=ProxyURI.compile_relay, help='tcp remote server uri (default: direct)')
@@ -562,12 +547,16 @@ def main():
562547
return
563548
if args.daemon:
564549
try:
565-
import daemon
566-
except:
567-
print("Missing library: pip install python-daemon")
568-
exit(-1)
569-
_daemon = daemon.DaemonContext()
570-
_daemon.open()
550+
__import__('daemon').DaemonContext().open()
551+
except ModuleNotFoundError:
552+
print("Missing library: pip3 install python-daemon")
553+
return
554+
# Try to use uvloop instead of the default event loop
555+
try:
556+
__import__('uvloop').install()
557+
print('Using uvloop')
558+
except ModuleNotFoundError:
559+
pass
571560
loop = asyncio.get_event_loop()
572561
if args.v:
573562
from . import verbose

0 commit comments

Comments
 (0)