1.6.1 (2023-11-05)
Implemented enhancements:
- #684 Add (now mandatory)
.readthedocs.yaml
file, add docs extras and update sphinx conf - #691 Cleanup some Java code in NativeInvocationHandler.java
- #692 Skip getting version from
Cython
on Android. Instead addANDROID_PYJNUS_CYTHON_3
env var - #693 Use the
release/v1
tag forpypa/gh-action-pypi-publish
, asmaster
is deprecated
1.6.0 (2023-10-07)
Implemented enhancements:
- #659 introduce protocol_map for Map$Entry
- #669 Support both Cython >3 and Cython < 3
- #672 Support Java 20, remove Java 7 support
- #673 Remove pkg_resources for Python >=3.9
- #681 Add missing Python supported version label for Python 3.12
Packaging
- #680 Update cibuildwheel to perform build for Python 3.12
CI
- #676 Ensure we test the produced wheel, and not the one from the index
- #678 Add tests for python 3.12
- #677 Now Github Actions provides python3 via setup-python also for Apple Silicon Macs
- #679 Add tests on push for Apple Silicon
- #682 Build stdist needs Cython to perform the build
1.5.0 (2023-05-10)
Implemented enhancements:
- #633 Add BSD Unix build support (FreeBSD, OpenBSD, NetBSD, ..)
- #643 Initialize logger as a child of the Kivy's one
- #657 Add support request automation (as other kivy projects)
- #656 Add support for Python 3.11
Cleanup
- #619 Remove Python 2 support, six dependency
- #641 Removes some Python2-era complexity
- #654 Remove Python 3.6 from supported and test matrix, as it reached EOL
CI
- #655 Linux x86 tests force as safe directory
Packaging
- #653 Build (and test)
manylinux-aarch64
wheels via ourkivy-ubuntu-arm64
self-hosted runner
1.4.2 (2022-07-02)
CI
- #628 Updated java-setup to v3, include all the LTS versions from adoptium during CI tests.
Packaging
- #620 When cross-compiling for Android, we should not use the include dirs exposed by the JDK
- #629 Cython now requires a minimum version. Introduces setup.cfg. Cleans up the CI workflow
- #625 Use cibuildwheel for releases
Docs
- #616 Update api.rst, remove extra equals signs
Implemented enhancements:
- #622 Add suffix to support IBM jre on Windows
- #626 Move get_cpu guessing into _possible_lib_location
- #627 PyPy: Fixes a segfault + add tests
1.4.1 (2021-10-30)
CI
- #607 Add python3.10 build/release
Packaging
- #603 Use platform.machine() as default get_cpu() return value, explicitely support AARCH64
1.4.0 (2021-08-24)
Implemented enhancements:
- #542 Improve performance of byte array parameters
- #515 Allow passing Python Lambdas as Java lambdas
- #541 Refactor of env.py
Fixed bugs:
- #549 Fixes #548 JVM options are not correctly set by jnius_config.set_options()
- #546 Add in missing assignable check for int parameters etc.
- #558 Improve error message on method not found
- #567 Fix static methods
- #566 fix bug for constuctors with variable arguments
- #569 set_resolve_info: replace j_self w/ resolve_static
- #595 Use Python standard library
which
instead of OSwhich
Documentation
- #556 fix link in readme
- #572 update readme for python3
- #584 Updated android.rst for python3
- #565 Update python versions
CI
- #560 added x86 workflow
- #564 run on pull request & add missing badge
- #536 add missing architecture for python setup in actions
Packaging
- #594 Add pyproject.toml to specify Cython as a build requirement
1.3.0 (2020-05-03)
Implemented enhancements:
- #483/#489 allow passing a
signature
argument to constructors, to force selection of the desired one - #497/#506/#507 support for more "dunder" methods/protocols on compatible interfaces than just
__len__
, and allow users to provide their own. - #500#522 allow ignoring private methods and fields in autoclass (both default to False)
- #503 auto detect java_home on OSX, using
/usr/libexec/java_home
(if JAVA_HOME is not declared) - #514 writing to static fields (and fix reading from them)
- #517 make signature exceptions more useful
- #502 provide a stacktrace for where JVM was started.
- #523 expose the class's class attribute
- #524 fix handling of Java chars > 256 in Python3
- #519 Always show the exception name
Fixed bugs:
- #481 wrong use of strip on JRE path
- #465 correct reflection to avoid missing any methods from parent classes or interfaces
- #508 don't had error details with a custom exception when java class is not found
- #510 add missing references to .pxi files in setup.py, speeding up recompilation
- #518 ensure autoclass prefers methods over properties
- #520 improved discovery of libjvm.so + provide a workaround if it doesn't work
Documentation
- #478 document automatic Thread detach feature
- #512 document the requirement to keep reference to object/functions passed to java, for as long as it might use them
- #521 fix inheritance in example
1.2.1 (2019-12-04)
- Make sure methods are discovered in reverse-inheritance order
- fix unreferenced variable
- Avoid windows execution error when JAVA_HOME path has space (test on w10)
- Link to libjli, not libjvm, on macOS
- Add support for adoptopenjdk12
- Add build support for Oracle Solaris on SPARC sun4u and sun4v
- make sure Interface have access to Object's methods
- wheels built for:
- Windows: Python 3.6, 3.7 and 3.8
- OSX: Python 2.7, 3.6, 3.7 and 3.8
- Manylinux: Python 2.7, 3.6, 3.7 and 3.8
1.2.0 (2019-02-04)
1.1.4 (2018-12-05)
1.1.3 (2018-10-22)
1.1.2 (2018-10-17)
1.1.1 (2017-03-24)
Implemented enhancements:
- Rename jnius to pyjnius for pypi #266
1.1.0 (2017-03-23)
Implemented enhancements:
Fixed bugs:
- import jnius on Centos7/python 3.4: AttributeError: 'str' object has no attribute 'decode' #218
- ByteArray values over 127 (0x7f) causes OverFlow error #93
- Leak in Runnable #83
- Output parameters don't works #58
- Apache Error: child pid XXXXX exit signal Segmentation fault (11) #50
- pyjnius is not thread-safe #46
- Problem on 64 bit ubuntu 12.04 #18
- In file included from jnius/jnius.c:4:0: /usr/include/python2.7/Python.h:22:2: error: #error "Something's broken. UCHAR_MAX should be defined in limits.h." #11
- doesn't work on windows #9
- varargs don’t seem to work #8
- setup.py jre_home #1
Closed issues:
- How to import the kivy's activity? #258
- shouldOverrideUrlLoading webview android #250
- App crashes if we use 'org.renpy.android.PythonActivity' in p4a new toolchain #249
- missing import os in jnius/__init__.py - there should be a CI workflow for pyjnius #245
- jnius.detach() not safe with local variables #240
- Type casting is not implemented #229
- Pyjnius doesn't compile with cython 0.24 #219
- jnius\jnius.c(4205) : error C2065: 'const_char' : undeclared identifier ,install on windows #214
- pyjnius not working in virtual environment #213
- Getting JAVA_HOME KeyError while importing autoclass #209
- Not able to install pyjnius on windows 7 and python 3.4. Error: jnius.obj lnk 2019 #206
- __javaclass__ definition missing #193
- unexpeted output cjtp:r #190
- can't import Contacts #180
- compilation error in master after ~3.11.2015 #178
- AttributeError: 'str' object has no attribute 'decode' #176
- AttributeError: type object 'android.widget.AbsoluteLayout' has no attribute 'LayoutParams' #175
- Lib should work with python3 #165
- make tests never passes #162
- Can't make an EnumMap? #159
- Release to PyPI? #156
- OverflowError: Python int too large to convert to C long on ART #146
- Misunderstood #141
- License is MIT but setup.py still says LGPL #139
- Segmentation fault occurs in wrapped C lib, only when jnius is imported #136
- Failing build_ext target with Cython 0.21 #131
- Cannot create AdRequest instance #124
- Native invocation issue with ART #113
- pyjnius custom classpath exception #109
- some reports from users complaining about "native thread exited without detaching..." #107
- jnius.JavaException: Class not found #106
- Exception: Invalid "[" character in definition #104
- Does Pyjinius support Python 3? #103
- Pyjnius: Find own classes on mac 10.9 #102
- java.util.TimeZone not working with python threads #97
- Android/ART crash Invalid instance of… #92
- PyPy / cffi? #88
- Not installing #84
- Accessing fields on multiple instances of same class returns value of last #77
- Win7, python2.7.5 (32bits) ... with phyjnius 1.2.1 --> ImportError: DLL load failed: #70
- lookup_java_object_name leaks LocalRefs #68
- Memory leak in constructor #67
- README accelerometer example code out of date? #64
- How to navigation buttons #61
- JavaException: JVM exception occured #60
- How do I install it? #57
- JavaException: Unable to found the class for 'java/lang/CharSequence' #56
- Accessing Android's clipboard #55
- [armhf] - Builds fail on launchpad #53
- How to run java class? #51
- Can not find class with www-data account #49
- Compilation Error #48
- Setting JVM options #44
- Tests don't pass (doesn't find libraries) #43
- pyjnius does not seems to be installed properly in osx 10.6 #39
- Make it possible to convert a python list to a Java array #35
- Cast python object to a Java Object #33
- Doesn't work under Windows 7 #30
- no multidimensional array support #29
- Create new tag (1.03?) #28
- array of bytes #27
- Can't install at Macosx lion #23
Merged pull requests:
- Update installation.rst: Instructions for Windows #224 (harishankarv)
- Handle charsequence #212 (akshayaurora)
- add version to six requirement #204 (kived)
- Updated readme to counter issues #197 #202 (jk1ng)
- setup fixes for python 3.5 #200 (danielepantaleone)
- setup: fixed invalid libjvm.so reference on i386 cpu #198 (danielepantaleone)
- Adding support for armhf builds #184 (thopiekar)
- compilation error fixed #179 (ibobalo)
- Followup fixes for python 3 #177 (benson-basis)
- Use the java from java_home on OSX. #166 (benson-basis)
- Make this work with python 3.4 as well as 2.7 #164 (benson-basis)
- Fix build tests #163 (benson-basis)
- Fix 159: passing the result of autoclass to java.lang.Class parameter. #160 (benson-basis)
- Another missing PR #153 (remram44)
- Re-applies #138 #152 (remram44)
- Enable setting primitive data type fields on Java classes #150 (msmolens)
- OS X: use JavaVM framework from current Mac OS SDK #149 (msmolens)
- Update jnius_conversion.pxi #144 (retsyo)
- use temporary var to handle unsigned char -> jbyte (signed char) #142 (kived)
- Fix JVM signatures for the java.lang.Class methods. #138 (tonyfinn)
- Fixed sound recorder example syntax error #129 (prophittcorey)
- fix print statement #128 (dessant)
- Update api.rst #121 (JustinCappos)
- Issue 96 improved exception handling #115 (Lenbok)
- Add support for multidimensional arrays #111 (abrasive)
- Add control of JVM startup options #110 (abrasive)
- Removes LGPL license in 'COPYING' #94 (remram44)
- Successfully compiled for Windows #87 (kevlened)
- Fix field dereference when multiple instances of a class exist. Fixes #77 #78 (zielmicha)
- Document autoclass syntax for nested Java classes. #74 (Ian-Foote)
- Fix string format error in 2.6 #72 (limodou)
- fix NotImplemented not found #69 (smglab)
- Check for exception after calling constructor #66 (zielmicha)
- improve JRE/JDK home detection using which and default JRE location when JDK is installed #63 (ghost)
- A couple of quick fixes #52 (artagnon)
- Updated to support Mac OS X build support #42 (allfro)
- added support for Python Java class objects as parameter of java methods that takes Java Class object as parameter #41 (ghost)
- Added basic tests that shows that autoclass of interface, nested enum and nested class is possible #40 (ghost)
- Several fixes related to arrays being Java Object #37 (ghost)
- Method resolutions fixes for the case where there are varargs #36 (ghost)
- Fixed URI Bug ( uri.parse ) #31 (GeorgS)
1.0.3 (2012-09-06)
Closed issues:
Merged pull requests:
- Varargs support #26 (tshirtman)
- Allow for '*' wildcards in CLASSPATH+(some tipos). #24 (apalala)
- Typo in line 39 #20 (nklever)
- Make the desktop use CLASSPATH if defined. #14 (apalala)
- Update README.md #10 (graingert)
1.0.2 (2012-08-20)
Closed issues:
- cython can't find jni.pxi #7
1.0.1 (2012-08-20)
Closed issues:
- Can't install from PyPi #5
Merged pull requests:
1.0 (2012-08-20)
Closed issues:
- Sets and ArrayLists not converted to python sets/lists #4
- Java doesn't accept our subclasses as arguments #3
Merged pull requests: