Jpy

Latest version: v0.17.0

Safety actively analyzes 638741 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 4 of 5

0.8

Fixes

* Java interface types don't include methods of extended interfaces (issue 64)
* Loading of jpy DLL fails for user-specific Python installations on Windows (issue 58)
* Java interface types didn't expose java.lang.Object methods (issue 57)
* Java 1-arg static method was confused with a zero-arg non-static method (issue 54)
* Python interpreter crash occurred when executing del statement on Java arrays (issue 52)
* Python extensions loaded from Java couldn't see Python symbols (Linux) (issue 38)

Improvements

* It is now possible to use jpy Java API to work with multiple Python installations (issue 35).
A tool called 'jpyutil.py' can be used to write configuration files that determine the required shared libraries
for a given Python versions.
A new Java system property 'jpy.config' is used to point to a desired configuration file.
* Simplified jpy installation (issue 15):
- removed need to add JVM path to PATH (Windows) / LD_LIBRARY_PATH (Unix) environment variable
- removed need to compile Java module using Maven
- removed need to specify JDK_HOME environment variable, if JAVA_HOME already points to a JDK
* Added 'jclass' attribute to Python type that wraps a Java class (issue 63) .
* Java API extensions
- new `jpy.org.PyObject.executeCode()` methods
- new `jpy.org.PyModule.getBuiltins()` method
- new `jpy.org.PyModule.getMain()` method
- new `jpy.org.PyModule.extendSysPath()` method
* Java API configuration changes:
- System property `jpy.jpyLib`:
- System property `jpy.jdlLib`:
- System property `jpy.pythonLib`:
- System property `jpy.config`:
- Loaded from
- File `./jpyconfig.properties`
- Resource `/jpyconfig.properties`
- File `${jpy.config}`
* Python API configuration changes:
- Loaded from
- File `./jpyconfig.py`
- Resource `${jpy-module}/jpyconfig.py`
- Attribute java_home
- Attribute jvm_dll
* Python API extensions
- new `jpyutil` module
- `jpyutil.init_jvm(...)`
- `jpyutil.preload_jvm_lib(...)`
- new `jpyutil` tool
- usage: `jpyutil.py [-h] [--out OUT] [--java_home JAVA_HOME] [--jvm_dll JVM_DLL]`
* Added basic support for Java Scripting Engine API (issue 53)

Other changes

* Switched to Apache 2.0 license from version 0.8 and later (issue 60)

0.7.5

* Fixed bad pointer in C-code which caused unpredictable crashes (issue 43)

0.7.4

* Fixed a problem where jpy crashes with unicode arguments (issue 42)
* Fixed segmentation fault occurring occasionally during installation of jpy (issue 40)
* Improved Java exception messages on Python errors (issue 39)

0.7.3

* Fixed problem where a Java primitive array argument has occasionally not been initialised by a
related Python buffer argument (issue 37)

0.7.2

* Added backward compatibility with Python 2.7 (issue 34).
* Added Java parameter annotation 'output' (issue 36).
This is used to optimise passing Python buffer arguments where Java primitive arrays are expected.
* Removed debugging prints of the form "JNI_OnLoad: ..."
* Corrected documentation of jpy.array(type, init) function, which was said to be jpy.array(type, length)
* Removed console dumps that occurred when calling from Java proxies into Python
* Updated Java API documentation and added it to Sphinx doc folder (doc/_static/java-apidoc)
* Added new diagnostic F_ERR flag to Java class PyLib.Diag
* Java class PyLib is no longer instantiable

0.7.1

* Updated README and added MANIFEST.in after recognising that the jpy-0.7.zip distribution misses most of the
required source files and learning what to do on this case.

Page 4 of 5

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.