From ede725828a262187b1e742fbdddee2f10f9ffd3e Mon Sep 17 00:00:00 2001 From: Timothy Morton Date: Fri, 4 Jan 2019 12:15:28 -0500 Subject: [PATCH 1/2] change pickle read/load to binary; fixes a py3 bug --- RealSpaceInterface/Calc2D/Database.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/RealSpaceInterface/Calc2D/Database.py b/RealSpaceInterface/Calc2D/Database.py index bc8f006c2..68b1bab4b 100644 --- a/RealSpaceInterface/Calc2D/Database.py +++ b/RealSpaceInterface/Calc2D/Database.py @@ -14,22 +14,22 @@ def __init__(self, directory, db_file="database.dat"): self.db_path = os.path.join(directory, db_file) if not os.path.exists(self.db_path): logging.info("No database found; Creating one at {}.".format(self.db_path)) - with open(self.db_path, "w") as f: + with open(self.db_path, "wb") as f: pickle.dump(dict(), f) self.db = self.__read_database() def __read_database(self): - with open(self.db_path) as f: + with open(self.db_path, "rb") as f: return pickle.load(f) def __write_database(self): - with open(self.db_path, "w") as f: + with open(self.db_path, "wb") as f: pickle.dump(self.db, f) def __create_file(self, data): filename = str(uuid.uuid4()) - with open(os.path.join(self.directory, filename), "w") as f: + with open(os.path.join(self.directory, filename), "wb") as f: pickle.dump(data, f) return filename @@ -40,7 +40,7 @@ def __getitem__(self, key): frozen_key = self.__get_frozen_key(key) if frozen_key in self.db: filename = self.db[frozen_key] - with open(os.path.join(self.directory, filename)) as f: + with open(os.path.join(self.directory, filename), "rb") as f: return pickle.load(f) else: raise KeyError("No data for key: {}".format(key)) @@ -55,4 +55,4 @@ def __contains__(self, key): Return whether `self` contains a record for the given `key`. """ - return self.__get_frozen_key(key) in self.db \ No newline at end of file + return self.__get_frozen_key(key) in self.db From 092d2b052709592e9aaf2a18a5b25b025efc1699 Mon Sep 17 00:00:00 2001 From: Timothy Morton Date: Fri, 4 Jan 2019 14:28:58 -0500 Subject: [PATCH 2/2] force integer division --- RealSpaceInterface/Calc2D/CalculationClass.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/RealSpaceInterface/Calc2D/CalculationClass.py b/RealSpaceInterface/Calc2D/CalculationClass.py index 0a6b5bb40..c63af4204 100644 --- a/RealSpaceInterface/Calc2D/CalculationClass.py +++ b/RealSpaceInterface/Calc2D/CalculationClass.py @@ -71,7 +71,7 @@ def getData(self, redshiftindex): Valuenew = dict() FValue_abs = np.abs(self.FValue) _min, _max = FValue_abs.min(), FValue_abs.max() - dimensions = (self.endshape[0] / 2, self.endshape[1]) + dimensions = (self.endshape[0] // 2, self.endshape[1]) for quantity, FT in FValuenew.items(): FT_abs = np.abs(FT) FT_normalized = cv2.resize(FT_abs, dimensions).ravel() @@ -98,7 +98,7 @@ def getInitialData(self): return Value.ravel(), cv2.resize( (np.abs(self.FValue) - np.abs(self.FValue).min()) / (np.abs(self.FValue).max() - np.abs(self.FValue).min()), - (self.endshape[0] / 2, self.endshape[1])).ravel(), (minimum, + (self.endshape[0] // 2, self.endshape[1])).ravel(), (minimum, maximum) def getTransferData(self, redshiftindex):