New py5 Release: 0.7.1a6

Another big release, 2 months after the previous release.


This is the first release that requires Java 17. You will need to have Java 17 installed on your computer, and your environment will need to be setup in a way that lets py5 find it.

If you created your py5 environment using the install instructions on the py5 website, you probably have Java 11 installed using Anaconda's openjdk 11 package. You can remove it with the command conda uninstall openjdk. There is no Anaconda Java 17 package available to install instead. Follow the install instructions on the py5 website to learn a different approach for installing Java 17.

Here are the new features in this release:

  • Update Processing jars to version 4.0b6. This means py5 now supports the new features in that release, including the new commands for controlling the Sketch window such as window_move() and window_title().

  • Improvements to py5 to enable packaging with pyinstaller. In the near future I will add documentation to the py5 website explaining how to do this. If you can't wait that long, have a look at this gist for a working example. That example has room for improvement, and will be improved before the documentation is finalized.

  • The typehints have been updated to conform to PEP 585. Also, the numpy typing package nptyping has been removed in favor of using the numpy typehint features introduced in versions 1.20 and 1.21. This version of py5 now requires numpy>=1.21, but that shouldn't be a problem for anyone because that version has been out for almost a year now and most likely you have version 1.22 installed already.

  • The run_sketch command line tool now accepts command line arguments that will get passed to Processing. Among other things, this will allow the Thonny plugin to set the window position. (#60).

  • As previously stated, this release now requires Java 17.

Bug fixes:


I'd like someone with an Apple Silicon (macOS-aarch64) machine to test py5 and tell me if it works. I'm specifically curious about the P2D and P3D renderers. I don't think it will work but I want to know what happens. I don't have access to such a machine to do the test myself.

What's Ahead:

  • Unit tests! Not having them is costing me too much time.

  • OSX improvements! I have new ideas and believe it is time to revisit the OSX limitations.