From 853440bb681faf24c42b21956b42b4ba62d826b4 Mon Sep 17 00:00:00 2001 From: Raido Date: Mon, 13 Sep 2021 11:23:22 +0300 Subject: [PATCH 1/3] Start port to python3. --- cursedprocesses/__init__.py | 2 +- cursedprocesses/runner.py | 8 ++++---- cursedprocesses/stinner.py | 8 ++++---- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/cursedprocesses/__init__.py b/cursedprocesses/__init__.py index 9c2c2ea..0525b0e 100644 --- a/cursedprocesses/__init__.py +++ b/cursedprocesses/__init__.py @@ -3,4 +3,4 @@ __author__ = "Raido Pahtma" __license__ = "MIT" -__version__ = "0.6.0.dev0" +__version__ = "0.7.0.dev0" diff --git a/cursedprocesses/runner.py b/cursedprocesses/runner.py index 47a38c8..67ba6aa 100755 --- a/cursedprocesses/runner.py +++ b/cursedprocesses/runner.py @@ -8,7 +8,7 @@ import curses import shlex import time -import Queue +import queue from threading import Thread from .stinner import read_stdin @@ -31,7 +31,7 @@ def __init__(self, name, cmd): self.text = "" self.p = None self.t = None - self.q = Queue.Queue() + self.q = queue.Queue() self.error = False def start(self): @@ -80,7 +80,7 @@ def reset(self): self.text = "" self.p = None self.t = None - self.q = Queue.Queue() + self.q = queue.Queue() self.error = False @@ -100,7 +100,7 @@ def mainloop(processgroups, parallel, total, autostart): for group in processgroups.values(): processcount += len(group) - inqueue = Queue.Queue() + inqueue = queue.Queue() inthread = Thread(target=read_stdin, args=(sys.stdin, inqueue)) inthread.daemon = True inthread.start() diff --git a/cursedprocesses/stinner.py b/cursedprocesses/stinner.py index 5b03630..4913cae 100644 --- a/cursedprocesses/stinner.py +++ b/cursedprocesses/stinner.py @@ -1,5 +1,5 @@ """stinner.py: Read from stdin with curses and figure out what keys were pressed.""" -import Queue +import queue import curses import string from threading import Thread @@ -84,7 +84,7 @@ def read_stdin(stdin_input, queue): # curses.noecho() screen.keypad(1) # Get arrow keys to return ^[[A ^[[B ^[[C ^[[D - inqueue = Queue.Queue() + inqueue = queue.Queue() inthread = Thread(target=read_stdin, args=(sys.stdin, inqueue)) inthread.daemon = True inthread.start() @@ -93,7 +93,7 @@ def read_stdin(stdin_input, queue): try: k = inqueue.get(False) print(k) - except Queue.Empty: + except queue.Empty: pass except KeyboardInterrupt: break @@ -101,4 +101,4 @@ def read_stdin(stdin_input, queue): screen.keypad(0) curses.nocbreak() curses.echo() - curses.endwin() \ No newline at end of file + curses.endwin() From fcfd960eeff6e524eb2454f9afd75e0746c34821 Mon Sep 17 00:00:00 2001 From: Raido Date: Mon, 13 Sep 2021 11:29:23 +0300 Subject: [PATCH 2/3] Fix q empty, read mode. --- cursedprocesses/runner.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/cursedprocesses/runner.py b/cursedprocesses/runner.py index 67ba6aa..7d67062 100755 --- a/cursedprocesses/runner.py +++ b/cursedprocesses/runner.py @@ -61,7 +61,7 @@ def update(self): if len(line) > 0: self.text = line return True - except Queue.Empty: + except queue.Empty: return False def status(self): @@ -240,7 +240,7 @@ def mainloop(processgroups, parallel, total, autostart): elif key == "q": interrupted = True x = key - except Queue.Empty: + except queue.Empty: pass loop += 1 @@ -267,7 +267,7 @@ def mainloop(processgroups, parallel, total, autostart): def read_commands(commandfile): import csv groups = {} - with open(commandfile, 'rb') as f: + with open(commandfile, 'r') as f: reader = csv.DictReader(f, fieldnames=("group", "name", "cmd"), delimiter=',') i = 0 try: From 4dc6dbc216ec79925226f5b532e2d5272d2f35dc Mon Sep 17 00:00:00 2001 From: Raido Date: Mon, 13 Sep 2021 11:47:44 +0300 Subject: [PATCH 3/3] Improve error messages. --- cursedprocesses/runner.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cursedprocesses/runner.py b/cursedprocesses/runner.py index 7d67062..263e835 100755 --- a/cursedprocesses/runner.py +++ b/cursedprocesses/runner.py @@ -280,7 +280,7 @@ def read_commands(commandfile): groups[group].append(Process(row["name"].lstrip().rstrip(), row["cmd"].lstrip().rstrip())) except AttributeError: - raise AttributeError("Can't make sense of command row {:u}!".format(i)) + raise AttributeError("Can't make sense of command row {:d}: '{}'!".format(i, row)) return groups @@ -299,7 +299,7 @@ def main(): processes = read_commands(args.input) mainloop(processes, args.parallel, args.total, not args.manual) except AttributeError as e: - print("ERROR: {}".format(e.message)) + print("ERROR: {}".format(e)) if __name__ == '__main__':