From ae59522b27bbcde57ffcb9aef33f890c2500d6b9 Mon Sep 17 00:00:00 2001 From: simon987 Date: Sun, 18 Apr 2021 12:17:00 -0400 Subject: [PATCH] Add customstderr --- hexlib/misc.py | 21 +++++++++++++++++++-- setup.py | 2 +- 2 files changed, 20 insertions(+), 3 deletions(-) diff --git a/hexlib/misc.py b/hexlib/misc.py index a2583bd..91cbc04 100644 --- a/hexlib/misc.py +++ b/hexlib/misc.py @@ -1,9 +1,8 @@ +import atexit import os import sys import time from threading import Lock - -import atexit from time import sleep import siphash @@ -23,7 +22,9 @@ def retry(attempts, callback=None, retry_sleep=0): callback(e) retries -= 1 sleep(retry_sleep) + return wrapper + return decorate @@ -105,4 +106,20 @@ class CustomStdOut: self.fp.close() +class CustomStdErr: + original_stderr = sys.stderr + + def __init__(self, fname): + self.fname = fname + + def __enter__(self): + self.fp = open(self.fname, "w") + sys.stderr = self.fp + + def __exit__(self, exc_type, exc_val, exc_tb): + sys.stdout = CustomStdErr.original_stderr + self.fp.close() + + silent_stdout = CustomStdOut(os.devnull) +silent_stderr = CustomStdErr(os.devnull) diff --git a/setup.py b/setup.py index 371780d..215dad5 100644 --- a/setup.py +++ b/setup.py @@ -2,7 +2,7 @@ from setuptools import setup setup( name="hexlib", - version="1.39", + version="1.40", description="Misc utility methods", author="simon987", author_email="me@simon987.net",