Everything Else
Helix 7.0.4 Release Notes Companion TLW

These release notes describe bug fixes and other improvements in Helix 7.0.4. Please read them carefully.

These release notes are divided into three sections: New/Improved Features, Fixes for bugs found in Helix 7 and later, and Fixes for bugs found in Helix 6.2.4 and earlier. You can click the section titles to show or hide each section.

Important Notes

Helix 7.0.4 Client/Server is not backwards compatible with 7.0.3 or earlier. Helix Client users should not update until the Helix Servers they connect to have been updated.

Helix 7.0.4 requires macOS 10.6 or later; macOS 10.9 or later is recommended.

What’s New in Helix 7.0.4

Design Mode (Helix RADE)

‘Collection Info’ command added to default menus for new users (R9478)

When making a new user, the Collection Info (Server Info in Helix Client) menu item is now included by default, just above the Close Collection menu item. This window provides valuable information about the collection that is not available elsewhere.

Frame Color and Frame Width properties added to Inspector (R9106)

Helix 7.0 restored the use of frame properties where possible — see the Rectangle Styles in Helix 7.0 technote for details — but the properties could only be edited via AppleScript.

Helix 7.0.4 adds these properties to the Inspector, when appropriate:

  • For Label, Data, and Command rectangles:
    • Frame color (print only) — accepts color index (0–255)
  • For Group and Repeat rectangles:
    • Frame color (print only) — accepts color index (0–255)
    • Frame width (print only) — accepts integer (0–255)

The new properties only appear in the Inspector when the Framed property is checked. For Label, Data, and Command rectangles, the Print property must also be checked, since these properties only affect printed output.

AppleScript & Inspector

New property: Editor open

A new icon property is added to AppleScript and the Inspector: Editor open is a read only property that indicates whether the editor window for a particular icon is open. This is of limited use in the Inspector, but since it was added to AppleScript, it was also added to the Inspector for consistency.

Bug Fixes (7.0 or Later)

This section details fixes to bugs that first appeared in Helix 7.0 or later.

Design Mode (Helix RADE)

Committing modified template no longer leaves checkerboard on open view (R9455)

When a template is committed after modifictions, an open view that uses that template no longer persists in displaying the checkerboard pattern until a ‘Find’ is done.

Additionally, the view no longer clears the form if a record was being displayed when the template was committed.

This issue first appeared in 7.0.3 and is fixed in 7.0.4.

Applying structure with formerly legal date constant no longer results in wrong date (R9470)

Prior to 7.0.3, Helix would accept ‘nonsensical’ date/time constants (text typed into a tile socket), the results of which were not always what was expected. 7.0.3 added tighter constraints on what is accepted as a legal value.

A bug was discovered when applying structure from older versions: when a formerly valid (but nonsensical) constant was applied to Helix 7.0.3, a Why? message (Paste structure error - Invalid format) informed the collection designer that an invalid value had been applied, but the structure was accepted anyway, resulting in a ‘random’ date being generated by the tile.

This is fixed such that Helix still allows the application of clippings containing contants that are now illegal — and RADE continues to warn of the invalid value via a Why? message — but the tile now returns 1/1/0001 00:00:00 (the beginning of time in the Helix universe) rather than a random time.

It should be noted that the most likely situation for this to occur is when the collection designer entered 24:00 as a time constant, intending that to represent the end of the day. However there no such time of day — that time would actually be 00:00 of the next day — so it most likely remains necessary to correct the logic of any abaci that contain such illegal values. They should, at the very least, be investigated to determine whether the logic remains valid. The lesson here is to always pay attention to the Why? messages Helix sends.

This issue first appeared in 7.0.3 and is fixed in 7.0.4.

User Mode (RADE, Engine, and Client/Server)

Opening a view with background color no longer crashes (R9460)

A crash was reported in a situation where a view with a background color was being opened. The crash was not consistent, as it was the result of a timing issue caused by a busy or slow network. This crash first appeared in 7.0.3 and is fixed in 7.0.4.

In the course of troubleshooting this issue, it was observed that a window’s custom background color is stored in a table along with custom color for the frame and title bar. Since macOS does not support custom colors for those window elements, the table is no longer necessary, and will be removed in a future update, making the code more efficient. Those who would like to remove this table now (resetting the window background color to white and gaining a slight performance improvement) are welcome to contact us to obtain an applet that deletes the table.

“Keep Value” no longer sporadically ignored (R9461)

When entering records sequentially, entry view rectangles that use Keep Value would sometimes fail to retain the value according to spec, particularly when the entry was triggered by a sequence.

This issue first appeared in 7.0.3 and is fixed in 7.0.4.

Flag field entry using custom label issue fixed (R9468)

When custom labels are defined for a flag field, it should be possible to type the first letter (or letters) of the custom label, letting Helix complete the value when tabbing from the field. Helix 7.0 was rejecting entries of less than the entire custom label.

This bug first appeared in 7.0 and is fixed in 7.0.4.

Auto Open view lookup failure on entered values fixed (R9472)

When a post set to auto open a view is triggered, values typed into the auto-opened view would sometimes fail to perform expected lookups, and sometimes failed to store values typed into the form.

This bug first appeared in 7.0.3 and is fixed in 7.0.4.

Copy protection dialog no longer blocks access to registration window (R9474)

When a Helix app is opened, the copy protection code runs to see if the license is being honored. If not, it displays a dialog informing of the problem. This blocked the ability to open the registration dialog to enter a new registration key, or to effectively develop an AppleScript that targets a Server that is running elsewhere on the network.

This issue first appeared in 7.0 and is fixed in 7.0.4 by counting only copies that actually have a collection open.

Ampersand (&) character issues in the Collection Info window fixed (R9475)

User registration data that includes an ampersand (&) character, now displays it properly in the “Collection Info” window.

Also, ampersands in a Username now appear correctly in the “User” field of the first tab of the “Collection Info” window.

This issue first appeared in 7.0 and is fixed in 7.0.4.

Sequence thermometer no longer blocks ability to click dialogs (R9483)

In a number of places where a dialog could appear within a sequence, the ability to interact with that dialog was being blocked by the sequence’s progress thermometer. Additionally, those places where this issue was addressed previously could still be blocked when the command appeared in a conditional sequence.

The sequence code has been refactored to (hopefully) eliminate all possibility of this happening again.

This issue first appeared in 7.0 and is fixed in 7.0.4.

(Seemingly random) crashes resolved (R9484)

Working strictly from crash logs, we found two places where cross-thread activities might have caused crashes, one while printing and the other during data entry. Addressing both of these should reduce the number of seemingly-random crashes, particularly in Helix Client.

Reverting a record now shows the reverted data (R9486)

After editing text in a data rectangle, choosing Revert via the menu was successfully reverting the record, but failing to display the reversion unless the view was redrawn.

In addition, a Revert command in a sequence, was not working at all unless the user first tabbed out of the data rectangle where changes had been made.

This issue first appeared in 7.0.3 and is fixed in 7.0.4.

Modifying a data rectangle no longer causes it to lose focus on next click (R9488)

After modifying text in a data rectangle, any mouse click in the rectangle caused it to lose focus.

This issue first appeared in 7.0.3 and is fixed in 7.0.4.

Changing a Power Query’s ‘Searchable Item’ popup activates ‘Apply’ button (R9489)

In prior versions, the ‘Searchable Item’ popup was only detecting a change if the selection resulted in a change to the data type of the query line, causing the ‘Apply’ button to remain disabled.

This issue first appeared in 7.0.2 and is fixed in 7.0.4.

Helix Client only

Improved stability (R9484)

Semi-random crashes — particularly when printing — have been resolved.

Connecting to a compressed collection no longer results in crashes (R9490)

When Helix Utility compresses a collection with the “Compact Object Map” option turned on, Helix Client would crash — and potentially trigger Helix Server crashes — when a user reconnected using a connection document saved before the compression was done.

This is fixed in Helix 7.0.4 by incrementing the ‘last design change’ counter in the compressed collection, causing Helix Client to reload the structure from scratch, and displaying the appropriate notification dialog.

This issue first appeared in 7.0 and is fixed in 7.0.4.


aete resource restored (R8883)

The aete resource was removed from Helix 7.0 since it has been deprecated in macOS, and is not required for compatibility with macOS 10.6 and later. However, some third party applications continue to require the presence of the aete resource, so it has been restored.

This issue first appeared in 7.0 and is fixed in 7.0.4.

Bug Fixes (6.2.4 or Earlier)

This section details fixes to bugs that were found to exist in Helix 6.2.4 or earlier.

All Products

Update failure message improved

When the ‘Sparkle’ update code failed in prior versions of Helix, the message indicated that the user was probably running from a ‘read-only volume … or optical drive’ which does not take into account permissions issues that are the most likely cause in macOS.

The error message now reads: ‘(Helix application) can't be updated in its current location. Move (the application) to your Applications folder, relaunch it from there, and try again.’"

Design Mode (Helix RADE)

“Select Template Tool” menu item fixed (R8118)

When the Option key is pressed, the “Select Template Tool” menu item was changing to read “Show Icon” and then changing to read “New Icon” when the Option key was released.

This is fixed: the menu item no longer changes in response to the Option key when a template is active, since there are no ‘optional’ commands available.

This issue first appeared in 6.2 and is fixed in 7.0.4.

User window position and open windows fixed (R9452)

When a view is added to a user’s menu, it no longer results in that item automatically opening when the user switches to user mode.

Also, when a user icon is placed in another user’s menu, and subsequently opened in Design Mode, the editor window was opening in the upper left corner of the screen. It now retains the position where it was placed.

These issues first appeared in 6.2 and are fixed in 7.0.4.

Setting custom labels for a flag field no longer leads to crash or error (R9469)

Setting custom labels for a rectangle containing a flag field (or abacus) had a bug that manifested in one of two ways:

  1. Reverting the template would lead to a crash
  2. Committing the template would fail, and RADE would report minor maintenance at the next save.

Both of these issues first appeared in 6.2.4 and are fixed in 7.0.4.

Issues occurring when deleting repeat rectangle on template used as a subform are fixed (R9476)

Helix RADE no longer crashes when a subform template is made invalid while a view is open whose view template includes it.

In addition, Helix RADE now issues a Why? message (“The repeat rectangle was removed from a template that is being used as a subform. Templates that include this subform will be invalid if this change is committed.”) when a repeat rectangle is removed, warning the collection designer of the impending problem before it is too late to turn back.

These issues first appeared in 6.2 and are fixed in 7.0.4.

Cancel during import no longer leaves view with partially entered record (R9493)

In prior versions, if the ‘Cancel’ button was clicked during an import, the view was left in an uncertain state such that closing, clearing, etc. produced a ‘Save changes before…’ dialog, which could result in the creation of a blank or partial record, unless there were validations to prevent it.

Helix now discards the partially-imported data and clears the form properly.

This issue first appeared in 6.2 and is fixed in 7.0.4.


Making new icon ‘with data’ now rejects wrong data types (R9450)

The make command supports ‘with data’ (synonym: ‘with contents’) and ‘with properties’ parameters, the ‘with data’ parameter being an alternative method of naming the icon as it is being created.

Prior to Helix 7.0.4, no type checking was done on the value supplied for ‘with data’ resulting in incorrect icon naming as the non-textual input was coerced into text. Helix now checks the data type for ‘with data’ and returns an error (“The 'with contents' parameter requires text. Use 'with properties' when supplying a record”) when it is not Unicode text.

Additionally, Helix’s AppleScript dictionary now supplies a more detailed description for the make command: “The initial contents of the object. For tiles, the contents must be an object or list of objects that will occupy the sockets of the tile. For all other objects, the contents must be text, which becomes the name of the object. (For a label rectangle, this is the text within the rectangle.)”

This issue first appeared in 6.2 and is fixed in 7.0.4.

Post ‘configuration’ property for Option 0 post is now complete (R9480)

Previously AppleScript only returned the option value when retrieving the post parameters for Option 0 post icons. It now returns everything except the ‘post every’ property, since that makes no sense for an Option 0 post. This addresses the fact that an Option 0 post may also have a ‘source value’ that needs to be returned.

Note that the ‘target relation’ and ‘target value’ properties always return missing value for Option 0 posts; this is easier for the script writer to handle than not returning those properties at all (and generating an error).

This issue first appeared in 6.2 and is fixed in 7.0.4.

Setting content of a label rectangle now gives opportunity to revert (R9482)

In prior versions, setting the content of a label rectangle to text or picture was done immediately, giving no opportunity to revert the change.

This issue first appeared in 6.2 and is fixed in 7.0.4.