mirror of
https://github.com/9001/copyparty.git
synced 2025-08-18 01:22:13 -06:00
w/a argparser bug fixed 2018-06-08
This commit is contained in:
parent
9886c442f2
commit
ab3839ef36
|
@ -12,7 +12,6 @@ import re
|
||||||
import os
|
import os
|
||||||
import sys
|
import sys
|
||||||
import time
|
import time
|
||||||
import signal
|
|
||||||
import shutil
|
import shutil
|
||||||
import filecmp
|
import filecmp
|
||||||
import locale
|
import locale
|
||||||
|
@ -56,6 +55,12 @@ class RiceFormatter(argparse.HelpFormatter):
|
||||||
return "".join(indent + line + "\n" for line in text.splitlines())
|
return "".join(indent + line + "\n" for line in text.splitlines())
|
||||||
|
|
||||||
|
|
||||||
|
class Dodge11874(RiceFormatter):
|
||||||
|
def __init__(self, *args, **kwargs):
|
||||||
|
kwargs["width"] = 9003
|
||||||
|
super(Dodge11874, self).__init__(*args, **kwargs)
|
||||||
|
|
||||||
|
|
||||||
def warn(msg):
|
def warn(msg):
|
||||||
print("\033[1mwarning:\033[0;33m {}\033[0m\n".format(msg))
|
print("\033[1mwarning:\033[0;33m {}\033[0m\n".format(msg))
|
||||||
|
|
||||||
|
@ -167,7 +172,7 @@ def configure_ssl_ciphers(al):
|
||||||
sys.exit(0)
|
sys.exit(0)
|
||||||
|
|
||||||
|
|
||||||
def sighandler(signal=None, frame=None):
|
def sighandler(sig=None, frame=None):
|
||||||
msg = [""] * 5
|
msg = [""] * 5
|
||||||
for th in threading.enumerate():
|
for th in threading.enumerate():
|
||||||
msg.append(str(th))
|
msg.append(str(th))
|
||||||
|
@ -177,37 +182,9 @@ def sighandler(signal=None, frame=None):
|
||||||
print("\n".join(msg))
|
print("\n".join(msg))
|
||||||
|
|
||||||
|
|
||||||
def main(argv=None):
|
def run_argparse(argv, formatter):
|
||||||
time.strptime("19970815", "%Y%m%d") # python#7980
|
|
||||||
if WINDOWS:
|
|
||||||
os.system("rem") # enables colors
|
|
||||||
|
|
||||||
if argv is None:
|
|
||||||
argv = sys.argv
|
|
||||||
|
|
||||||
desc = py_desc().replace("[", "\033[1;30m[")
|
|
||||||
|
|
||||||
f = '\033[36mcopyparty v{} "\033[35m{}\033[36m" ({})\n{}\033[0m\n'
|
|
||||||
print(f.format(S_VERSION, CODENAME, S_BUILD_DT, desc))
|
|
||||||
|
|
||||||
ensure_locale()
|
|
||||||
if HAVE_SSL:
|
|
||||||
ensure_cert()
|
|
||||||
|
|
||||||
deprecated = [["-e2s", "-e2ds"]]
|
|
||||||
for dk, nk in deprecated:
|
|
||||||
try:
|
|
||||||
idx = argv.index(dk)
|
|
||||||
except:
|
|
||||||
continue
|
|
||||||
|
|
||||||
msg = "\033[1;31mWARNING:\033[0;1m\n {} \033[0;33mwas replaced with\033[0;1m {} \033[0;33mand will be removed\n\033[0m"
|
|
||||||
print(msg.format(dk, nk))
|
|
||||||
argv[idx] = nk
|
|
||||||
time.sleep(2)
|
|
||||||
|
|
||||||
ap = argparse.ArgumentParser(
|
ap = argparse.ArgumentParser(
|
||||||
formatter_class=RiceFormatter,
|
formatter_class=formatter,
|
||||||
prog="copyparty",
|
prog="copyparty",
|
||||||
description="http file sharing hub v{} ({})".format(S_VERSION, S_BUILD_DT),
|
description="http file sharing hub v{} ({})".format(S_VERSION, S_BUILD_DT),
|
||||||
epilog=dedent(
|
epilog=dedent(
|
||||||
|
@ -293,9 +270,44 @@ def main(argv=None):
|
||||||
ap2.add_argument("--ssl-dbg", action="store_true", help="dump some tls info")
|
ap2.add_argument("--ssl-dbg", action="store_true", help="dump some tls info")
|
||||||
ap2.add_argument("--ssl-log", metavar="PATH", help="log master secrets")
|
ap2.add_argument("--ssl-log", metavar="PATH", help="log master secrets")
|
||||||
|
|
||||||
al = ap.parse_args(args=argv[1:])
|
return ap.parse_args(args=argv[1:])
|
||||||
# fmt: on
|
# fmt: on
|
||||||
|
|
||||||
|
|
||||||
|
def main(argv=None):
|
||||||
|
time.strptime("19970815", "%Y%m%d") # python#7980
|
||||||
|
if WINDOWS:
|
||||||
|
os.system("rem") # enables colors
|
||||||
|
|
||||||
|
if argv is None:
|
||||||
|
argv = sys.argv
|
||||||
|
|
||||||
|
desc = py_desc().replace("[", "\033[1;30m[")
|
||||||
|
|
||||||
|
f = '\033[36mcopyparty v{} "\033[35m{}\033[36m" ({})\n{}\033[0m\n'
|
||||||
|
print(f.format(S_VERSION, CODENAME, S_BUILD_DT, desc))
|
||||||
|
|
||||||
|
ensure_locale()
|
||||||
|
if HAVE_SSL:
|
||||||
|
ensure_cert()
|
||||||
|
|
||||||
|
deprecated = [["-e2s", "-e2ds"]]
|
||||||
|
for dk, nk in deprecated:
|
||||||
|
try:
|
||||||
|
idx = argv.index(dk)
|
||||||
|
except:
|
||||||
|
continue
|
||||||
|
|
||||||
|
msg = "\033[1;31mWARNING:\033[0;1m\n {} \033[0;33mwas replaced with\033[0;1m {} \033[0;33mand will be removed\n\033[0m"
|
||||||
|
print(msg.format(dk, nk))
|
||||||
|
argv[idx] = nk
|
||||||
|
time.sleep(2)
|
||||||
|
|
||||||
|
try:
|
||||||
|
al = run_argparse(argv, RiceFormatter)
|
||||||
|
except AssertionError:
|
||||||
|
al = run_argparse(argv, Dodge11874)
|
||||||
|
|
||||||
# propagate implications
|
# propagate implications
|
||||||
for k1, k2 in IMPLICATIONS:
|
for k1, k2 in IMPLICATIONS:
|
||||||
if getattr(al, k1):
|
if getattr(al, k1):
|
||||||
|
|
Loading…
Reference in a new issue