New py5 Release: 0.10.5a0
Today I'm happy to finally announce the release of py5 version 0.10.5a0.
Important Updates
This release has two small but important changes.
The first is that the JPype dependency has changed to >=1.5.2
. Previously it was pinned to 1.5.0
. Months ago, pinning it to 1.5.0
resolved issues we were having with 1.5.1 but also meant we didn't benefit from improvements made in 1.5.2. And since 1.5.0
also had some (smaller) issues, we were stuck on a version that was not ideal. In retrospect I see that my choice to pin it to 1.5.0
was not the best decision. I apologize for that, and won't make that mistake again.
The second change is that py5 now uses core.jar from the official Processing 4.4.1 release. The previous five releases used my own fork of Processing. This was a temporary but necessary measure because py5 depended on some code changes that took some time to make it into an official Processing release. Moving forward, all versions of py5 will use the latest official Processing core.jar file.
New Features
This release has a new feature that enables you to easily download and install Processing Libraries to use in your py5 Sketches. Not all of the Processing Libraries work well with py5, but some of them do, and the ones that do add exciting possibilities to py5. The new functionality is comparable to the Processing PDE's "Library Manager" feature. To learn more, visit the How To Use Processing Libraries page.
PRs and Closed Issues
Here are the closed py5 issues:
#593 Add new
py5.random_permutation()
method#629 fixed py5's build process to work with the new Processing build process
Issue #593 was fixed by first-time contributor mohitbhasin in PR #594.
Thanks, also, for ijkwxyz's PR #637 to fix a Windows path issue they found in py5's live coding functionality.
Also, updates to the Processing library that are all included in this py5 release:
Sponsor py5coding on GitHub
Like py5? Want to help support further py5 development? Consider sponsoring py5 on GitHub.
I started working on py5 over five years ago when the pandemic lockdown started as a way to manage my anxiety about the situation. Since then, py5 has grown into a full-featured tool for creative coding that is used all around the world. I'm grateful for the support of everyone I've met who helped py5 grow into the useful library that it is today. I love working on this, but it does take a lot of time and is very much like a part time job for me.
I'm not going to pressure anyone into becoming a sponsor and I do ask that if you are struggling financially for any reason that you don't sponsor py5. But if you are in a position to sponsor py5, please consider doing so. Your sponsorship will help me continue to work on py5 and make it a better tool for everyone to use!
And if you don't want to sponsor py5, that's totally fine too. How about a GitHub star instead? The py5 and py5generator repositories could use a star from you!
What's Ahead
What's in store for py5 in 2025? Where do I begin...
More bug fixes and unit tests are the first things that come to mind. I wasn't able to do all the bug fixing that I normally do before a release because I really wanted to get a release out the door that addressed the JPype version pinning issue. Right now there are ten open issues, which is a lot for this project.
There are things I can do to further improve the py5 build process. The Processing build process changed quite a bit, and now that py5 is back to using official Processing releases, I had to make changes to the py5 build process to adapt. The changes to Processing create new opportunities for py5 to use more modern build tools. It is well worth my while to take advantage of them.
Comments