Release Notes 3.8.3-6079

AppStore Release

What’s New & Product Enhancements

  1. Added share button functionality to compositions to share them to PDF.
  2. Initial implementation of report templates. This can replace reports.json with templates.
    • Added reports/type.t template capability.
    • Existing reports in reports.json will still continue to operate, but will ignore SendPayloadVerbatim
    • New reports formatted using the template processor can now be included in the reports subdirectory.
    • A new report definition attribute, payloadFormat allows specification of the payload format for either the old reports.json or new template-formatted reports.
    • Significant clean-up and simplified reporting function structure
  3. Added support for inner variables in expressions
    • Creates a much looser interpretation of bools when they occur in && expressions or ?:.
  4. Added Distance calculation functionality
    • $event.placemark changed to access placemarks as a function or dot-notation.
    • Placemarks now support distanceTo() function.
  5. Add shape and label functionality to dropAnnotation
  6. Expression enhancements to support various workflows operations
    • Added Named Value objects and “name=value” expressions
    • Added Named Value support to dict()
    • Added short-circuit support to ternaries and conditionals.
    • Added template variables support
    • json() would output numbers with decimals as strings
    • Exponential notation was used inappropriately on numbers converted to strings.
  7. Added many changes to support drop annotations and placemark creation, plus some better debugging.
    • Added $event.setPlacemark, $event.clearPlacemark, $event.addAnnotation, $event.clearAnnotation expression functionality
    • Added $createPlacemark at the top level
    • Slightly modified the drop annotation shape parameters for thicker borders and greater border opacity.
    • Variables can now be used in the CatchFlow™ IDE. They can be viewed with $debug.variables and cleared with $debug.clearVariables()
    • Added haul, summary, edit, abort, submit, and log icons for action buttons.
    • Added a general keyword argument parsing capability
    • New pinned workflow engine.
  8. Startup timing improvements
  9. ManUp loading improvements
    • Under normal situations (build not changed)
      • Deckhand checks the ping situation and if the internet does not appear to be available, it falls back to the previous ManUp.
      • However, it sets a network monitor up so that the moment a valid internet connection is available, it attempts to load a new ManUp.
      • If not successful, Deckhand merely continues trying. However, once successful, the current Personality will be used until the 6-hour reload time interval is met, at which point Deckhand will retry and failsafe if not successful.
    • When Deckhand notices a new build number (new feature):
      • Deckhand ignores ping but requires that ManUp be loaded from the internet.
      • If it cannot be loaded, then Deckhand presents the user with a dialog indicating that a configuration update is required. (see below)
      • Once loaded, Deckhand records its new build number and operation continues from then on.
  10. Workflow load improvements
    • Workflow load algorithms was changed so that fallbacks to the current workflow are done only when there is no alternative version available in manUp.
  11. Removed the SQL database files from the Upload to Support zip file which was preventing the email to send the logs to support.
  12. Some minor logging improvements now include the Behaviour log entries interspersed and clearly identified in the regular logs. This eases diagnosis and debugging.
  13. Some cleanup and error reporting improvements
  14. Added ping monitor for network connectivity and added behaviour log entries so we can more easily determine the user’s situation in the field.
  15. Improved key renewal so that when there is no network, the dialogs are more self-explanatory.
    • Key renewal now blocks rehydration and rehydration continues only after renewal completes properly.
    • Added key expiry simulation options which now persist across boots of Deckhand so that expired key testing can be done on first invocation.
  16. Eliminated the workflowLoaded notification completely, making a more straightfoward startup.
  17. Added transitionToInteractive() as a way to indicate that environmental changes are complete and the interface is now ready to go live for the user.
  18. Added tolerance for duplicate updates from Boat (not sure why these are occurring)
  19. Added new ManUp code and that includes a “no network” fallback to Personalities.
  20. Added message dialogs (see below) to alert users that network is required while needing to perform certain tasks if Deckhand detected the network was offline. These tasks are:
    • When tapping the Sign In button
    • When needing to change the PIN from User Preferences > Registered Users
    • Tapping the Update Workflow button from User Preferences menu.
    • When tapping the Login/Create Account button from User Preferences.
  21. Added a Composition Config file to the composition directory to allow CSP to specify various properties (see below).

Bug Fixes

  1. Fixed a bug in expressions that caused validation problems
  2. Fixed a bug in the pre-population of expanded catch cell which was previously undetected.
  3. Fixed CatchFlow™ IDE expressions to handle optionals better
  4. Fixed some cases where dictionary elements would not respect the ‘key’ and ‘value properties.
  5. Fixed and issue where share button was hidden after composition was closed.
  6. Fixed some bugs in property access
  7. Fixed many issues when using Deckhand offline while updating a workflow.
  8. Fixed a bug that would cause a partially successful sign-in to remain, and to have the “Sign In” button bypass the actual login prompts.
  9. Rehydration did not properly set preFishing mode as it should for rehydrated run-once events.
  10. Fixed: optional report problems
  11. Fixed the bug where “Incomplete session detected!” error would display when the network is offline and Deckhand rehydrated while a trip had started.
  12. Fixed several bugs in key renewal. First, the renewed key expiry was not kept properly and key renewal was done unconditionally when it was not supposed to.
  13. Fixed a problem where the “fishing gear” drop-downs on the map were not properly refreshed when workflow changes occurred.
  14. Fixed an issue where Deckhand backups were not displaying in the iOS Files App.

NEW: Configuration Dialog – No Network

This dialog is displayed when there is new configuration file required at startup and there is no network detected.

NEW: Network Required Dialogs

Sign In

This dialog is displayed when a sign-in is required and there is no network detected.

Change/Update Workflow

This dialog is displayed when you need to update or change the workflow loaded in Deckhand™ Pro and there is no network detected.

Change PIN

This dialog is displayed when you change the PIN and there is no network detected.

Login/Create Account

This dialog is displayed when you login or create an account and there is no network detected.

NEW: Composition Config

The config.xml file