import os import re def fix_file(path): with open(path, "r", encoding="utf-8", errors="ignore") as f: content = f.read() # Replace deprecated numpy aliases with python builtins # Use negative lookahead to avoid matching keys like np.float32, np.int64, etc. # np.float -> float new_content = re.sub(r'np\.float(?![0-9_a-zA-Z])', 'float', content) # np.int -> int (deprecated in recent numpy) new_content = re.sub(r'np\.int(?![0-9_a-zA-Z])', 'int', new_content) # np.bool -> bool (deprecated in recent numpy) new_content = re.sub(r'np\.bool(?![0-9_a-zA-Z])', 'bool', new_content) if new_content != content: print(f"Fixed deprecated types in: {path}") with open(path, "w", encoding="utf-8") as f: f.write(new_content) def main(): print("Scanning for deprecated numpy types...") for root, dirs, files in os.walk("."): if ".git" in root: continue for file in files: if file.endswith(".py"): path = os.path.join(root, file) fix_file(path) print("Fix complete.") if __name__ == "__main__": main()