diff --git a/.gitignore b/.gitignore index 56823d2..533d3d8 100644 --- a/.gitignore +++ b/.gitignore @@ -5,7 +5,7 @@ *.pyc *.pyd /javabridge/jars/*java2cpython.* -/javabridge/_javabridge.so +/javabridge/*.so /python_javabridge.egg-info /docs/_build *.class @@ -17,3 +17,4 @@ /docs/build /javabridge.egg-info /javabridge/_version.py +.coverage \ No newline at end of file diff --git a/_javabridge.pyx b/_javabridge.pyx index 8e0774d..756ec67 100644 --- a/_javabridge.pyx +++ b/_javabridge.pyx @@ -1,3 +1,4 @@ +# cython: language_level=3 """_javabridge.pyx - low-level interface to the JVM python-javabridge is licensed under the BSD license. See the @@ -798,7 +799,7 @@ cdef class JB_Env: utf8name = name.encode('utf-8') c = self.env[0].FindClass(self.env, utf8name) if c == NULL: - print "Failed to get class "+name + print("Failed to get class "+name) return cref = self.env[0].NewGlobalRef(self.env, c) if cref == NULL: @@ -1640,7 +1641,7 @@ cdef class JB_Env: jsize nchars jobject o u16 = u.encode("utf-16") - nchars = len(u16) / 2 - 1 + nchars = len(u16) // 2 - 1 s = u16 o = self.env[0].NewString(self.env, s+1, nchars) if o == NULL: diff --git a/java/org/cellprofiler/javabridge/test/TestCPython.java b/java/org/cellprofiler/javabridge/test/TestCPython.java index 8244ecf..07ef495 100644 --- a/java/org/cellprofiler/javabridge/test/TestCPython.java +++ b/java/org/cellprofiler/javabridge/test/TestCPython.java @@ -18,7 +18,7 @@ public class TestCPython { @Test public void test_01_01_exec() { try { - new CPython().exec("print 'Hello, world.'\n"); + new CPython().exec("print('Hello, world.')\n"); } catch (CPython.WrappedException e) { fail(); } @@ -33,15 +33,15 @@ public void test_02_01_threading() { String code = "import javabridge\n" + "import threading\n" + - "print 'yes I did run'\n" + + "print('yes I did run')\n" + "def do_something()\n" + - " print 'from inside thread'\n" + + " print('from inside thread')\n" + " system = javabridge.JClassWrapper('java.lang.System')\n" + " system.setProperty('foo', 'bar')\n" + "thread=threading.Thread(target=do_something)\n" + "thread.start()\n" + "thread.join()\n" + - "print 'yes I did finish'\n"; + "print('yes I did finish')\n"; try { System.out.print(code); new CPython().exec(code); diff --git a/java/org_cellprofiler_javabridge_CPython.c b/java/org_cellprofiler_javabridge_CPython.c index acef41b..9a13ce7 100644 --- a/java/org_cellprofiler_javabridge_CPython.c +++ b/java/org_cellprofiler_javabridge_CPython.c @@ -71,7 +71,7 @@ JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *vm, void *reserved) #ifdef __linux__ char buf[1024]; char *python_location = get_property(vm, "python.location"); - const char *command = "python -c \"import sysconfig; from os.path import join; print join(sysconfig.get_config_var('LIBDIR'), sysconfig.get_config_var('multiarchsubdir')[1:], sysconfig.get_config_var('LDLIBRARY'))\""; + const char *command = "python -c \"import sysconfig; from os.path import join; print(join(sysconfig.get_config_var('LIBDIR'), sysconfig.get_config_var('multiarchsubdir')[1:], sysconfig.get_config_var('LDLIBRARY')))\""; if (!python_location) { size_t len=1024;