On 2019/10/16 18:10, Johan Corveleyn wrote:
> Python 3 for the build and test process is only supported on *nix, not
on Windows.
[[[
Traceback (most recent call last):
File "win-tests.py", line 134, in <module>
cp.items('options'))
File "build\generator\gen_win_dependencies.py", line 306, in __init__
self.find_libraries(False)
File "build\generator\gen_win_dependencies.py", line 327, in find_libraries
self._find_jdk(show_warnings)
File "build\generator\gen_win_dependencies.py", line 1085, in _find_jdk
vermatch = re.search(r'(([0-9]+(\.[0-9]+)+)(_[._0-9]+)?)', line, re.M)
File "C:\Python37\lib\re.py", line 183, in search
return _compile(pattern, flags).search(string)
TypeError: cannot use a string pattern on a bytes-like object
]]]
The fix is probably easy, but I'm just noting it here so we don't get
ahead of ourselves.
It seems the change addressing for it on swig-py3 branch is a part of
r1822485, the hunks attached.
--
Yasuhito FUTATSUKI <futat...@poem.co.jp>
Index: gen_win_dependencies.py
===================================================================
--- gen_win_dependencies.py (revision 1822484)
+++ gen_win_dependencies.py (revision 1822485)
@@ -1069,7 +1122,7 @@
try:
outfp = subprocess.Popen([os.path.join(jdk_path, 'bin', 'javah.exe'),
'-version'], stdout=subprocess.PIPE).stdout
- line = outfp.read()
+ line = outfp.read().decode('utf8')
if line:
vermatch = re.search(r'"(([0-9]+(\.[0-9]+)+)(_[._0-9]+)?)"', line,
re.M)
else:
@@ -1127,7 +1180,7 @@
try:
fp = subprocess.Popen([self.swig_exe, '-version'],
stdout=subprocess.PIPE).stdout
- txt = fp.read()
+ txt = fp.read().decode('utf8')
if txt:
vermatch = re.search(r'^SWIG\ Version\ (\d+)\.(\d+)\.(\d+)', txt, re.M)
else:
@@ -1155,7 +1208,7 @@
try:
fp = subprocess.Popen([self.swig_exe, '-swiglib'],
stdout=subprocess.PIPE).stdout
- lib_dir = fp.readline().strip()
+ lib_dir = fp.readline().decode('utf8').strip()
fp.close()
except OSError:
lib_dir = None