Chaquopy version 9.1.0

Posted on

Changes:

  • Fix error “‘HTMLParser’ object has no attribute ‘unescape’” on Python 3.9 (#416).
  • Fix error “must supply either home or prefix/exec-prefix – not both” on Homebrew for Mac (#405).
  • buildPython path can now contain spaces.
  • Java API is now annotated with @NotNull where appropriate.
  • Java arrays now support the copy method in Python.
  • Fix bug when using cast to call a functional interface which extends another functional interface.
  • Update CA bundle to certifi 2020.12.5.
  • json module performance improvements.
  • Java API performance improvements.

The following packages have been added to the repository since the previous version:

  • gensim

And the following packages have been updated:

  • scikit-learn (0.23.2)

Chaquopy version 9.0.0

Posted on

Changes:

  • Android Gradle plugin version 4.1 is now supported, and version 3.3 is no longer supported.
  • Runtime Python version is now 3.8.6.
  • Java objects implementing functional interfaces can now be called using () syntax.
  • Java arrays can now be accessed from Python using negative indices and slice syntax.
  • Fix conversion of non-contiguous NumPy arrays to Java arrays.
  • Remove inaccessible directories from os.get_exec_path (#346).
  • Make zipimport implement the new loader API. This affected the package dateparser.
  • If bdist_wheel fails for an unknown reason, fall back on setup.py install. This affected the packages acoustics and kiteconnect (#338).
  • Fix ClassNotFoundException when minifyEnabled is in use (#261).

The following packages have been added to the repository since the previous version:

  • shapely
  • tensorflow-gpu

Chaquopy version 8.0.1

Posted on

Changes:

  • Make missing multiprocessing primitives throw an exception on use rather than on import. This affected the packages joblib and librosa (#21).
  • Make ctypes.util.find_library search libraries installed with pip. This affected the package soundfile (#201).
  • Fix “invalid constraint” error affecting the packages openpyxl and webcolors.

The following packages have been added to the repository since the previous version:

  • xgboost

And the following packages have been updated:

  • grpcio (1.30.0)

Chaquopy version 8.0.0

Posted on

Changes:

  • Android Gradle plugin version 4.0 is now supported, and version 3.2 is no longer supported.
  • Runtime Python version is now 3.8.3.
  • Using Chaquopy in an Android library module (AAR) is now supported (#94).
  • Java primitive arrays now support the Python buffer protocol, allowing high-performance data transfer between the two languages.
  • Data files in top-level non-package directories are now extracted from the APK the first time the app is started, so they can be accessed using a path relative to __file__.

The following packages have been added to the repository since the previous version:

  • torchvision

Chaquopy version 7.0.3

Posted on

Changes:

  • Fix “This platform lacks a functioning sem_open implementation” error when using multiprocessing.dummy.Pool (aka multiprocessing.pool.ThreadPool). This affected many common uses of TensorFlow.
  • Work around dynamic linker bug on 64-bit ABIs before API level 23 (#228).
  • Fix out of memory error when running Gradle with a small heap size.
  • Fix incompatibility with external package importlib_metadata (#276).
  • Fix NoClassDefFoundError when using Python to access certain androidx classes, including AppCompatTextView.
  • Fix conversion of Java byte[] array to Python bytearray.
  • Improve startup speed by deferring pkg_resources initialization until the module is first imported.
  • Update CA bundle to certifi 2020.4.5.1.

The following packages have been updated since the previous version:

  • pillow (7.1.2)

Chaquopy version 7.0.2

Posted on

Changes:

  • Runtime Python version is now 3.8.1.
    • See compatibility notes for Python 3.7 and Python 3.8.
    • Most native packages have been updated to a more recent version. If you’ve used specific version numbers in a build.gradle or requirements.txt file, you may need to change them. See the repository index for a complete list.
    • All Python standard library modules are now supported except those in this list. In particular, support has been added for bz2importlib.metadataimportlib.resources and lzma.
  • Android Gradle plugin version 3.6 is now supported, and version 3.1 is no longer supported.
  • buildPython must now be at least Python 3.5.
  • Expose Java API using api configuration so it’s available to dynamic feature modules.
  • Update CA bundle to certifi 2019.9.11.
  • Fix “cannot create a consistent method resolution order” error when using androidx.
  • Fix a deadlock involving the Java API.
  • Improve local caching of packages which aren’t available as wheels.
  • Reduce some temporary filename lengths to avoid the Windows 260-character limit.
  • Improve startup speed.

The following packages have been added to the repository since the previous version:

  • llvmlite
  • multidict
  • numba
  • opencv-contrib-python
  • opencv-contrib-python-headless
  • opencv-python-headless
  • torch
  • yarl

Chaquopy version 6.3.0

Posted on

Changes:

  • Android Gradle plugin version 3.5 is now supported.
  • Pre-compile Python code to .pyc format by default, so it doesn’t have to be compiled on the device. This significantly improves app startup speed and storage usage.
  • Remove the extractPackages setting, as data files are now extracted automatically. See the documentation for details.
  • Change data file location from cache to files directory, to prevent the user from clearing it while the app is running.
  • Hide importer frames in stack traces, unless the exception originated from the importer itself.
  • Fix another metadata parsing issue, this one affecting the package astroid.
  • Fix “has no DT_SONAME” warning (#112).

The following packages have been added to the repository since the previous version:

  • bcrypt
  • coincurve
  • gevent
  • greenlet
  • srsly
  • typed-ast

And the following packages have been updated:

  • cymem (2.0.2)
  • preshed (2.0.1)
  • scikit-learn (0.21.2)

Chaquopy version 6.2.1

Posted on

Changes:

  • Android Gradle plugin version 3.4 is now supported.
  • Update to OpenSSL 1.1.1b. This enables the BLAKE2 and SHA-3 algorithms in hashlib.
  • Update CA bundle to certifi 2019.3.9.
  • Implement pkgutil.iter_modules.
  • Build pkg_resources into all apps. Many packages require this but don’t declare a dependency on setuptools.

The following packages have been added to the repository since the previous version:

  • dlib
  • editdistance
  • psutil
  • pysha3
  • pywavelets
  • scikit-image

And the following packages have been updated:

  • cryptography (2.6.1)

Chaquopy version 5.1.2

Posted on

This version adds the following features:

  • Add PyObject primitive conversion methods (toBooleantoInt, etc.).
  • Add PyObject container view methods (asListasMap and asSet).
  • Make APK build more reproducible.

And fixes the following bugs:

  • If pkg_resources is installed in your app, its “basic resource access” functions will now work.
  • Remove directory names when converting exception stack traces from Python to Java. This works around a bug in Google Play which was causing crash reports to be incomplete.
  • Change default character encoding from ASCII to UTF-8.

The following packages have been added to the repository since the previous version:

  • ephem
  • pycrypto
  • tensorflow

And the following packages have been updated:

  • chaquopy-openblas (fixed a build problem which caused a crash in SciPy)
  • scipy (1.1.0)