-
-
Notifications
You must be signed in to change notification settings - Fork 10
Description
Thanks to @enkatsu we have a first implementation of a release workflow (https://github.com/mingness/processing-library-template/pull/20) 🙏
I'm suggesting we add a step to the workflow to create a .pdex file alongside the other artifacts. The .pdex file is the same as the .zip only with the extension changed to .pdex. Once downloaded, a .pdex file can be opened directly in Processing to install the library, bypassing the Contributions Manager. In combination with the pde:// URI protocol (more about this below) this will greatly simplify the installation of libraries.
Background
Since Processing 4.0b1, it is possible to bundle libraries as archived bundles with a .pdex extension.
It's now possible to bundle sketches into a single file to be loaded inside the PDE. This is done with .pdez files, which is a sketch folder saved as a .zip but with the extension changed to .pdez. This means you can post a sketch on the web as a .pdez, and someone with Processing can click the link and have it load directly in the PDE. #73, #3987
Similar to .pdez files, you can install Libraries, Modes, Tools, and Example sets (things that would normally be installed with the Contribution Manager) by renaming their .zip file to .pdez. Double-clicking a .pdez file will open it with Processing, and ask the user whether they'd like to install it.
Source: 4.0b1 release notes
Rationale
The proposed changes will enable the addition of a quick install button to the documentation. This uses pde:// protocol like the one already present on the Processing for Android install page (see screenshot below).
See also for context:
- "Register
pde://browser protocol for.pdezand.pdexfiles on Linux" #674 - Processing 4.2 release notes
Suggested Implementation
(Edited based on Stef's feedback)
Generate a .pdex file in the Gradle build process then modify the release.yml to include the file in the release artifacts.
- name: Release
uses: softprops/action-gh-release@v2
with:
files: |
release/*.zip
release/*.pdex