{ "info": { "author": "Luis Nell", "author_email": "cooperate@originell.org", "bugtrack_url": null, "classifiers": [ "Programming Language :: Java", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6" ], "description": "JPype\n=====\n\n.. image:: https://travis-ci.org/originell/jpype.png?branch=master\n :target: https://travis-ci.org/originell/jpype\n\n.. image:: https://img.shields.io/appveyor/ci/originell/jpype.svg\n :target: https://ci.appveyor.com/project/originell/jpype\n\n\nJPype is an effort to allow python programs full access to java class\nlibraries. \n\nFind the `documentation at Read the Docs\n`__. Current development is done in\n`the github project `__. The work\non this project began on `Sourceforge\n`__.\n\n\nChangelog\n=========\n\nThis changelog *only* contains changes from the *first* pypi release (0.5.4.3) onwards.\n\n- **Next version - unreleased**\n - Added extra verbiage to the to the raised exception when an overloaded\n method could not be matched. It now prints a list of all possible method\n signatures.\n - Harded code to unattached threads and accessing java objects after shutdown.\n - The following is now DEPRECATED\n - jpype.reflect.* - All class information is available with .class_\n - Python thread option for JPypeReferenceQueue. References are always handled with\n with the Java cleanup routine. The undocumented setUsePythonThreadForDaemon()\n will be removed at a future version.\n - promoted --install-option to a --global-option as it applies to the build as well\n as install.\n\n- **0.6.3 - 2018-04-03**\n - Java reference counting has been converted to use JNI\n PushLocalFrame/PopLocalFrame. Several resource leaks\n were removed.\n\n - java.lang.Class<>.forName() will now return the java.lang.Class.\n Work arounds for requiring the class loader are no longer needed.\n Customizers now support customization of static members.\n\n - Support of java.lang.Class<>\n - java.lang.Object().getClass() on Java objects returns a java.lang.Class\n rather than the Python class\n - java.lang.Object().__class__ on Java objects returns the python class\n as do all python objects\n - java.lang.Object.class_ maps to the java statement 'java.lang.Object.class' and\n returns the java.lang.Class\n - java.lang.Class supports reflection methods\n - private fields and methods can be accessed via reflection\n - annotations are avaiable via reflection\n\n - Java objects and arrays will not accept setattr unless the\n attribute corresponds to a java method or field whith\n the exception of private attributes that begin with\n underscore.\n\n - Added support for automatic conversion of boxed types.\n - Boxed types automatically convert to python primitives.\n - Boxed types automatically convert to java primitives when resolving functions.\n - Functions taking boxed or primitives still resolve based on closest match.\n\n - Python integer primitives will implicitly match java float and double as per\n Java specification.\n\n - Added support for try with resources for java.lang.Closeable.\n Use python \"with MyJavaResource() as resource:\" statement\n to automatically close a resource at the end of a block.\n\n- **0.6.2 - 2017-01-13**\n\n - Fix JVM location for OSX.\n - Fix a method overload bug.\n - Add support for synthetic methods\n\n- **0.6.1 - 2015-08-05**\n\n - Fix proxy with arguments issue.\n - Fix Python 3 support for Windows failing to import winreg.\n - Fix non matching overloads on iterating java collections.\n\n- **0.6.0 - 2015-04-13**\n\n - Python3 support.\n - Fix OutOfMemoryError.\n\n- **0.5.7 - 2014-10-29**\n\n - No JDK/JRE is required to build anymore due to provided jni.h. To\n override this, one needs to set a JAVA_HOME pointing to a JDK\n during setup.\n - Better support for various platforms and compilers (MinGW, Cygwin,\n Windows)\n\n- **0.5.6 - 2014-09-27**\n\n - *Note*: In this release we returned to the three point number\n versioning scheme.\n - Fix #63: 'property' object has no attribute 'isBeanMutator'\n - Fix #70: python setup.py develop does now work as expected\n - Fix #79, Fix #85: missing declaration of 'uint'\n - Fix #80: opt out NumPy code dependency by '--disable-numpy'\n parameter to setup. To opt out with pip\n append --install-option=\"--disable-numpy\".\n - Use JVMFinder method of @tcalmant to locate a Java runtime\n\n- **0.5.5.4 - 2014-08-12**\n\n - Fix: compile issue, if numpy is not available (NPY_BOOL\n n/a). Closes #77\n\n- **0.5.5.3 - 2014-08-11**\n\n - Optional support for NumPy arrays in handling of Java arrays. Both\n set and get slice operators are supported. Speed improvement of\n factor 10 for setting and factor 6 for getting. The returned\n arrays are typed with the matching NumPy type.\n - Fix: add missing wrapper type 'JShort'\n - Fix: Conversion check for unsigned types did not work in array\n setters (tautological compare)\n\n- **0.5.5.2 - 2014-04-29**\n\n - Fix: array setter memory leak (ISSUE: #64)\n\n- **0.5.5.1 - 2014-04-11**\n\n - Fix: setup.py now runs under MacOSX with Python 2.6 (referred to\n missing subprocess function)\n\n- **0.5.5 - 2014-04-11**\n\n - *Note* that this release is *not* compatible with Python 2.5 anymore!\n - Added AHL changes\n\n * replaced Python set type usage with new 2.6.x and higher\n * fixed broken Python slicing semantics on JArray objects\n * fixed a memory leak in the JVM when passing Python lists to\n JArray constructors\n * prevent ctrl+c seg faulting\n * corrected new[]/delete pairs to stop valgrind complaining\n * ship basic PyMemoryView implementation (based on numpy's) for Python 2.6 compatibility\n\n - Fast sliced access for primitive datatype arrays (factor of 10)\n - Use setter for Java bean property assignment even if not having a\n getter by @baztian\n - Fix public methods not being accessible if a Java bean property\n with the same name exists by @baztian (*Warning*: In rare cases\n this change is incompatibile to previous releases. If you are\n accessing a bean property without using the get/set method and the\n bean has a public method with the property's name you have to\n change the code to use the get/set methods.)\n - Make jpype.JException catch exceptions from subclasses by @baztian\n - Make more complex overloaded Java methods accessible (fixes\n https://sourceforge.net/p/jpype/bugs/69/) by @baztian and\n anonymous\n - Some minor improvements inferring unnecessary copies in extension\n code\n - Some JNI cleanups related to memory\n - Fix memory leak in array setters\n - Fix memory leak in typemanager\n - Add userguide from sourceforge project by @baztian\n\n- **0.5.4.5 - 2013-08-25**\n\n - Added support for OSX 10.9 Mavericks by @rmangino (#16)\n\n- **0.5.4.4 - 2013-08-10**\n\n - Rewritten Java Home directory Search by @marsam (#13, #12 and #7)\n - Stylistic cleanups of setup.py\n\n- **0.5.4.3 - 2013-07-27**\n\n - Initial pypi release with most fixes for easier installation\n\n\nAuthors\n-------\n\nThe original author: Steve Menard\n\nCurrent Maintainer: Luis Nell\n\n\nHuge thanks to these CONTRIBUTORS:\n\n* lazerscience\n* Koblaid\n* Michael Willis (michaelwillis)\n* awesomescot\n* Joe Quant (joequant)\n* Mario Rodas\n* David Moss\n* Stepan Kolesnik\n* Philip Smith\n* Bastian Bowe\n* Kristi\n* Martin K. Scherer\n* Dongwon Shin\n* rbprogrammer\n* Karl Einar Nelson\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/originell/jpype/", "keywords": "", "license": "License :: OSI Approved :: Apache Software License", "maintainer": "", "maintainer_email": "", "name": "ha_JPype1", "package_url": "https://pypi.org/project/ha_JPype1/", "platform": "Operating System :: MacOS :: MacOS X", "project_url": "https://pypi.org/project/ha_JPype1/", "project_urls": { "Homepage": "https://github.com/originell/jpype/" }, "release_url": "https://pypi.org/project/ha_JPype1/2.6.6/", "requires_dist": null, "requires_python": "", "summary": "A Python to Java bridge.", "version": "2.6.6" }, "last_serial": 4441302, "releases": { "0.7.0": [ { "comment_text": "", "digests": { "md5": "6288318a1f4c6ad99278e5e0c709b80a", "sha256": "72a168f54c12ff2b76546c676889861dac4deda60fe00fa841effa1a452bf8ce" }, "downloads": -1, "filename": "ha_JPype1-0.7.0.tar.gz", "has_sig": false, "md5_digest": "6288318a1f4c6ad99278e5e0c709b80a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 168516, "upload_time": "2018-10-30T21:24:20", "url": "https://files.pythonhosted.org/packages/ad/e4/6a420ff8a1bdd243361ddfd10f63ffaa9d708f16af7d28a4f361d043ffe7/ha_JPype1-0.7.0.tar.gz" } ], "1.6.3": [ { "comment_text": "", "digests": { "md5": "2b85c590989a70be14b78719e808aede", "sha256": "8e344c18999d8646a6e22e1cb7350107c47733fc05e4490a02cb13c8255b9114" }, "downloads": -1, "filename": "ha_JPype1-1.6.3.tar.gz", "has_sig": false, "md5_digest": "2b85c590989a70be14b78719e808aede", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 168486, "upload_time": "2018-10-30T19:05:24", "url": "https://files.pythonhosted.org/packages/27/4d/9fca8774ea66c4d27e018c5eda741161d2ca78981f073853e1b31dcc9e04/ha_JPype1-1.6.3.tar.gz" } ], "1.6.4": [ { "comment_text": "", "digests": { "md5": "16fc897ff14bf655487587f416a3ed0b", "sha256": "0a799e0f68c712a0da44f26ccc847e01f2f839a160e780e00046b2fd51cbe7f1" }, "downloads": -1, "filename": "ha_JPype1-1.6.4.tar.gz", "has_sig": false, "md5_digest": "16fc897ff14bf655487587f416a3ed0b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 168509, "upload_time": "2018-10-30T20:21:33", "url": "https://files.pythonhosted.org/packages/db/34/3f589c75671c839682c03a441ac8b99c6531a94da79de04bf5bd8d345b08/ha_JPype1-1.6.4.tar.gz" } ], "1.6.6": [ { "comment_text": "", "digests": { "md5": "926a9f39f14e7ffce0c9dbc3370ee0a1", "sha256": "52147513af2823297fbfe784b46f01511464ad2f9190351111c7564a7a2e64bd" }, "downloads": -1, "filename": "ha_JPype1-1.6.6.tar.gz", "has_sig": false, "md5_digest": "926a9f39f14e7ffce0c9dbc3370ee0a1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 168495, "upload_time": "2018-10-30T20:30:46", "url": "https://files.pythonhosted.org/packages/02/e1/d7546a3f99d9009596a74b743b43679d9935c4e463354f67864093879c5f/ha_JPype1-1.6.6.tar.gz" } ], "1.6.7": [ { "comment_text": "", "digests": { "md5": "b278c5a9960168696a6a789cbf5d1c9e", "sha256": "244e4542ad653abeb0c41a19d2062d6f73d54c8006cb61acb0a9fcf27a099220" }, "downloads": -1, "filename": "ha_JPype1-1.6.7.tar.gz", "has_sig": false, "md5_digest": "b278c5a9960168696a6a789cbf5d1c9e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 168518, "upload_time": "2018-10-30T20:47:59", "url": "https://files.pythonhosted.org/packages/38/9c/04d462192b8e897a3f50581f5ae284f9047631cc7a65c9b4e0e22f202e41/ha_JPype1-1.6.7.tar.gz" } ], "2.6.3": [ { "comment_text": "", "digests": { "md5": "1cbfd2017372ca67de8b30be9e0e99ec", "sha256": "fafc50c5913597cd0943bf60b7040f84dad9e2919c022fe2fda6be9f4c184ab3" }, "downloads": -1, "filename": "ha_JPype1-2.6.3.tar.gz", "has_sig": false, "md5_digest": "1cbfd2017372ca67de8b30be9e0e99ec", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 172456, "upload_time": "2018-11-01T16:08:51", "url": "https://files.pythonhosted.org/packages/4d/24/b8a6feb3f355566b67652dd572d425a3a55dfffb522174ef317873c5bdfa/ha_JPype1-2.6.3.tar.gz" } ], "2.6.4": [ { "comment_text": "", "digests": { "md5": "b73dfcbfaacaca63d4972b1d30ba50a7", "sha256": "b5a9891c52a583e85b5508c48405b583f7783c401960ffde6b044d016a3369d9" }, "downloads": -1, "filename": "ha_JPype1-2.6.4.tar.gz", "has_sig": false, "md5_digest": "b73dfcbfaacaca63d4972b1d30ba50a7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 172723, "upload_time": "2018-11-01T16:32:45", "url": "https://files.pythonhosted.org/packages/ef/01/7045d006cfad6d3f813ca7a0649ccc124d057123e74d1e5c3e82bdda3688/ha_JPype1-2.6.4.tar.gz" } ], "2.6.5": [ { "comment_text": "", "digests": { "md5": "a997746dc911a699b92a203a6603b9aa", "sha256": "343da9e234dc67b2fb494ecd4e86d11f16c58a6d46b96976423b8ccd488b2622" }, "downloads": -1, "filename": "ha_JPype1-2.6.5.tar.gz", "has_sig": false, "md5_digest": "a997746dc911a699b92a203a6603b9aa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 172730, "upload_time": "2018-11-01T16:37:26", "url": "https://files.pythonhosted.org/packages/7d/45/081d97c398155652483a6ece389ba273ca8236bdb05e4458ebd1559b23bf/ha_JPype1-2.6.5.tar.gz" } ], "2.6.6": [ { "comment_text": "", "digests": { "md5": "fbcaafdeb9e46aa303b4d403c7777210", "sha256": "33c1bf7622f9a03cd91560485f450edfec69ac39c861814965235f78390b5d5c" }, "downloads": -1, "filename": "ha_JPype1-2.6.6.tar.gz", "has_sig": false, "md5_digest": "fbcaafdeb9e46aa303b4d403c7777210", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 174068, "upload_time": "2018-11-01T16:40:46", "url": "https://files.pythonhosted.org/packages/9d/a4/9345c4cedb71577a8a5aa8cca0f8c4d31c4c851b05e9361d695c129ef732/ha_JPype1-2.6.6.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "fbcaafdeb9e46aa303b4d403c7777210", "sha256": "33c1bf7622f9a03cd91560485f450edfec69ac39c861814965235f78390b5d5c" }, "downloads": -1, "filename": "ha_JPype1-2.6.6.tar.gz", "has_sig": false, "md5_digest": "fbcaafdeb9e46aa303b4d403c7777210", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 174068, "upload_time": "2018-11-01T16:40:46", "url": "https://files.pythonhosted.org/packages/9d/a4/9345c4cedb71577a8a5aa8cca0f8c4d31c4c851b05e9361d695c129ef732/ha_JPype1-2.6.6.tar.gz" } ] }