Deckhand® Pro –

December 1st, 2023
Requires iPadOS 16 or later
Requires CatchFlow™ IDE version 2.0 or higher

This release addresses the following:


Overwrite Option for $action.createBackup: The $action.createBackup command now supports an overwrite option. This addition empowers users with more control over the backup process, allowing for flexibility in managing existing backups.

Enhanced Location Control with gpsEntry:gpsEntry now includes an editConstraint attribute. When set to “path,” this attribute restricts the location choice, ensuring it aligns with the specified path. This addition enhances control over location selection within the component.

Capture Component Images with asPNG():Both $form and components now support the asPNG() property. This feature allows users to capture image representations of components, providing a convenient way to generate visual snapshots for various use cases.


Enhanced gpsEntry Component Configuration: Users can now create non-editable, unretained gpsEntry components by incorporating the editable="false" and retain="never" attributes. This change allows for a more fine-grained control over the behavior of gpsEntry components.

Enhanced gpsEntry Interaction with .value(): gpsEntry now includes a consistent .value() attribute, representing the current placemark. Users can access and modify this attribute, and any changes made will be immediately reflected in the component, offering a more dynamic interaction with location data.

Fixed Issues:

Improved Backup Creation and Restore Functionality: The $action.createBackup() command was not consistently creating restorable backups. Users may have experienced difficulties in restoring data, impacting the reliability of the backup feature.
Resolution: With this update, if iCloud is specified during backup creation, backups will automatically be restorable, and the iCloud name will accurately reflect this status. If certain necessary categories for backup are omitted (e.g., the database), a zip file will still be placed on iCloud. However, it won’t appear in the Deckhand “Manage Backups” interface, providing users with more control over their backup preferences.

Corrected Loop Variable Assignment in Dictionary Arrays: A regression introduced in build 6351 caused for-endfor loops to set the loop variable to a random value when the input array consisted solely of dictionaries. This unexpected behavior could lead to errors and incorrect loop processing.
Resolution: This version addresses this regression, ensuring that for-endfor loops correctly handle loop variable assignments when the input array is composed solely of dictionaries. Users can now rely on consistent and expected behavior in loop processing.

Improved Handling of Unencodeable Objects in Storage: In prior builds, attempting to store unencodable objects on event clipboards or using the .store() function resulted in crashes. This behavior posed a significant risk to stability and user experience.
Resolution: This version addresses this critical issue. Now, when attempting to store unencodable objects, a crash will not occur. Instead, the system will store a suitable equivalent value, such as the string description, ensuring a more stable application environment.

Enhanced $net.http for Binary Data Transmission: $net.http can now be used to send binary data, providing users with the flexibility to work with a broader range of data types.

Improved Binary Data Equality Comparison: BinaryData can now be compared for equality using the == operator. This enhancement streamlines the comparison process and enhances the overall flexibility of working with BinaryData.

Enhanced Event Support for gpsEntry: gpsEntry now properly supports onChange, onRequestUserChange, and onUserChange events. Users can now leverage these events to create more dynamic and responsive workflows involving location data.

Thank you for your continued support and valuable feedback. We strive to provide you with the best experience, and your reports help us identify and resolve any issues promptly. If you encounter any further problems or have suggestions for improvement, please don’t hesitate to reach out to our support team.

-The Deckhand Pro Team