From 0c95d720db9ff2db7249051fca7beb971b22fddb Mon Sep 17 00:00:00 2001 From: Mark Qvist Date: Wed, 28 Aug 2024 21:34:16 +0200 Subject: [PATCH] Improved rncp progress status display --- RNS/Utilities/rncp.py | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/RNS/Utilities/rncp.py b/RNS/Utilities/rncp.py index fbfdcfa..5aad015 100644 --- a/RNS/Utilities/rncp.py +++ b/RNS/Utilities/rncp.py @@ -477,7 +477,10 @@ def fetch(configdir, verbosity = 0, quietness = 0, destination = None, file = No prg = current_resource.get_progress() percent = round(prg * 100.0, 1) stat_str = str(percent)+"% - " + size_str(int(prg*current_resource.total_size)) + " of " + size_str(current_resource.total_size) + " - " +size_str(speed, "b")+"ps" - print("\r \rTransferring file "+syms[i]+" "+stat_str, end=" ") + if prg != 1.0: + print("\r \rTransferring file "+syms[i]+" "+stat_str, end=" ") + else: + print("\r \rTransfer complete "+stat_str, end=" ") else: print("\r \rWaiting for transfer to start "+syms[i]+" ", end=" ") sys.stdout.flush() @@ -491,7 +494,7 @@ def fetch(configdir, verbosity = 0, quietness = 0, destination = None, file = No exit(1) else: if silent: - print(str(file_path)+" copied to "+RNS.prettyhexrep(destination_hash)) + print(str(file)+" fetched from "+RNS.prettyhexrep(destination_hash)) else: #print("\r \r"+str(file)+" fetched from "+RNS.prettyhexrep(destination_hash)) print("\n"+str(file)+" fetched from "+RNS.prettyhexrep(destination_hash)) @@ -649,12 +652,15 @@ def send(configdir, verbosity = 0, quietness = 0, destination = None, file = Non else: print("\r \rTransferring file ", end=" ") - def progress_update(i): + def progress_update(i, done=False): time.sleep(0.1) prg = current_resource.get_progress() percent = round(prg * 100.0, 1) stat_str = str(percent)+"% - " + size_str(int(prg*current_resource.total_size)) + " of " + size_str(current_resource.total_size) + " - " +size_str(speed, "b")+"ps" - print("\r \rTransferring file "+syms[i]+" "+stat_str, end=" ") + if not done: + print("\r \rTransferring file "+syms[i]+" "+stat_str, end=" ") + else: + print("\r \rTransfer complete "+stat_str, end=" ") sys.stdout.flush() i = (i+1)%len(syms) return i @@ -663,6 +669,9 @@ def send(configdir, verbosity = 0, quietness = 0, destination = None, file = Non if not silent: i = progress_update(i) + if not silent: + i = progress_update(i, done=True) + if current_resource.status != RNS.Resource.COMPLETE: if silent: print("The transfer failed")