Installation:
Please check the wiki for detailed installation instructions. As usual, Mac, Windows, and Linux (Ubuntu 22.04 LTS) packages can be downloaded below. Many more Linux packages for a variety of popular Linux distributions can be found in the JGU repositories on the Open Build Service. OBS Download
If you're new to Purr Data, please check our Meet the Cat tutorial for a quick introduction.
Changes:
At some 280 commits, this is a big release, so we break down the changes into various different categories below. This release sports a lot of bugfixes and improvements, some new features, and better vanilla compatibility, so updating is highly recommended. Please report any (new or remaining) bugs that you find here on GitHub or with the new Feedback dialog in the preferences.
With this release we also bump the Pd compatibility version to 0.54. If you notice any user-visible feature from Pd 0.54 that is missing or implemented incorrectly, please file a bug report so that it can be fixed.
Bugfixes:
- Fixed some compilation issues due to the recent gcc updates, as well as a lot of bugs and regressions, too many to list them all here (please check the commit log for details).
Vanilla Pd compatibility:
-
Backslash quoting now works like in vanilla.
-
Added a listbox gui object which works pretty much like vanilla's, providing better patch compatibility with vanilla Pd.
-
Updated the expr family of objects to version 0.58 from Pd 0.55-1. This is the latest version with additional acoustic and string functions, and many bugfixes.
-
Lots of other small and large compatibility fixes. Most recently, the file, slop~, and trace objects, as well as multi-channel support were added. So we should have achieved approximate feature parity with Pd 0.54 by now, while also retaining (and expanding) Purr Data's extended feature set and UI improvements.
-
In fact, purr-data should be mostly compatible with Pd 0.55 already, as the newly added objects and features use the 0.55 code. But since Pd 0.55 is still under development at the time of this writing, and some of the latest changes haven't been ported yet, we stick to the 0.54 compatibility level for now.
Updates and improvements:
-
Updated nw.js to 0.55.0 on Linux, Mac and Windows. (Please note that the version match with vanilla Pd is purely coincidental.) This was long overdue, but was riddled by a lot of regressions we had to fix along the way. The 0.55.0 version we use now, for various reasons, seems to work best across all major platforms. However, if you want to use a different version, that's now easily possible with the new patch-nwjs.sh shell script, please check the installation instructions in the wiki for details.
-
Updated pd-lua to 0.12.23 which has many bugfixes and improvements, and added the JS API to make Tim Schoen's new pd-lua graphics routines work in purr-data.
-
Replaced moocow/flite, which was outdated and only included on Linux, with Lucarda's pd-flite 0.3.2 which is cross-platform, doesn't require 3rd party dependencies (CMU flite is included), and is a much newer version offering more features.
-
Fixed the visual formatting of comments, so explicit line breaks in comments are rendered correctly now. Moreover, comments now offer some rich text formatting elements. Please check the text help patch for details. Also note that both features only work with Purr Data, so they are best avoided in patches that are also to be used in vanilla Pd.
-
Improved intelligent patching (mode 4). Our new heuristic employs the actual object layout in rows or columns, which makes the outcome of 1:N ("fan out") and N:1 ("fan in") multi-connections much more predictable. Also, we added N:N parallel connections between selected objects (hold the ctrl key while doing the initial connection to enable this mode). Please check the intelligent patching help patch for details and examples.
-
Added
Refresh
buttons to the Audio and MIDI preferences, so at long last Purr Data can now update the device lists after adding or removing devices without having to re-launch the program. -
Improved help browser, with subdirectory links in the directory view and some bugfixes. Also added the "Meet the Cat" tutorial in pdf format to the help menu and the about dialog, so that it can be read off-line.
-
Improved Windows installer (pilfered from pd-l2ork, thanks Ico!), also added unattended installs and better error handling.
Contributions from Google Summer of Code 2024 projects:
-
Added Ayush Anand's submission for GSoC 2024. This sports a lot of usability improvements for Gabriela Bittencourt's auto-completion feature: scrollbar, text highlighting, tooltips, and fuzzy matching in the auto-completion menu, along with a bunch of new options in the GUI preferences. It also adds a new Feedback form to the preferences dialog which you can use to submit a ticket on purr-data's bug tracker here on GitHub.
-
Added Sushant Sudan's game collection he created for GSoC 2024, featuring three games so far ('Comet Blast', 'Musical Land', and 'Sky Force'), more are to follow. You can find these under "Games" in the help browser. They are both fun to play and educational, as they show you how to program Arcade-style games with sound and (Gem) graphics.
Known problems:
-
Mac crash-on-exit bug, can be worked around as described in the bug report.
-
Linux dark-mode bug, can be worked around by upgrading nw.js with the patch-nwjs.sh shell script.
Quick look:
Here's a short screencast demonstrating some of the new features.