def regsub_file(pattern, repl, path):
- with open(path, 'r') as f:
+ with open(path, 'rb') as f:
text = f.read()
- text = re.sub(pattern, repl, text)
- with open(path, 'w') as f:
+ text = re.sub(bytes(pattern, 'utf8'), bytes(repl, 'utf8'), text)
+ with open(path, 'wb') as f:
f.write(text)
if 'build.gradle' in files:
path = os.path.join(root, 'build.gradle')
- with open(path, "r") as o:
+ with open(path, "r", encoding='utf8') as o:
lines = o.readlines()
changed = False
opened = 0
i = 0
- with open(path, "w") as o:
+ with open(path, "w", encoding='utf8') as o:
while i < len(lines):
line = lines[i]
i += 1
for root, dirs, files in os.walk(os.getcwd()):
if 'build.gradle' in files:
p = os.path.join(root, 'build.gradle')
- with open(p) as f:
+ with open(p, 'rb') as f:
data = f.read()
m = pattern.search(data)
if m:
elif ext == 'java':
if not os.path.isfile(fp):
continue
- with open(fp, 'r') as f:
+ with open(fp, 'r', encoding='utf8') as f:
for line in f:
if 'DexClassLoader' in line:
count += handleproblem('DexClassLoader', fd, fp)
elif ext == 'gradle':
if not os.path.isfile(fp):
continue
- with open(fp, 'r') as f:
+ with open(fp, 'r', encoding='utf8') as f:
lines = f.readlines()
for i, line in enumerate(lines):
if is_used_by_gradle(line):
fdroidserver.build.config = {}
fdroidserver.build.config['build_tools'] = teststring
fdroidserver.build.adapt_gradle(testsdir)
- pattern = re.compile("buildToolsVersion[\s=]+'%s'\s+" % teststring)
+ pattern = re.compile(bytes("buildToolsVersion[\s=]+'%s'\s+" % teststring, 'utf8'))
for p in ('source-files/fdroid/fdroidclient/build.gradle',
'source-files/Zillode/syncthing-silk/build.gradle',
'source-files/open-keychain/open-keychain/build.gradle',
'source-files/osmandapp/osmand/build.gradle',
'source-files/open-keychain/open-keychain/OpenKeychain/build.gradle'):
- with open(os.path.join(testsdir, p), 'r') as f:
+ with open(os.path.join(testsdir, p), 'rb') as f:
filedata = f.read()
self.assertIsNotNone(pattern.search(filedata))