|Welcome to Helix 6.0||
Helix 6.0 represents the first fruits of our work in updating our code for macOS. Helix Server, Helix Utility and Update Collection are macOS native, RADE, Client, Engine, & Developer Utility remain Classic (OS 9) only for the time being. Helix Utility and Update Collection are also available in a Classic version.
|How to Upgrade||
Upgrades are priced based on the last version of Helix you purchased. For example, you may currently be using 5.3.2, which you received as a free upgrade from Helix 5.2. But if your last purchase was for a Helix 5.2 or 5.2.1 release, your upgrade price is based on that. You can always log in to your account and click on “Lookup Keys” button to see which versions you have purchased. Free updates are found in the “Other Keys” page.
Helix Server & macOS native utilities: macOS 10.3 or higher
|What's New in Helix 6.0 - Partial List (Released December 19, 2005)|
|macOS native components||
Helix Server, Helix Utility and Update Collection are now macOS native. macOS 10.3–10.4.11 is required. This code was written with our cross-platform goals in mind, and is mostly ready for the coming Intel-based Macs.
|Collection file size extended||
Helix 5.3.2 and earlier limited the total file size of a collection to 2 GB. Helix 6.0 extends the maximum file size to 4 GB. Helix 6.0 is capable of supporting collections up to 64 GB, but the components required to create a file larger than 4 GB are not being released at this time as they have not been thoroughly tested. As we continue to transition to all macOS native code, we will turn our attention to testing and releasing that code.
|TCP/IP Code Rewritten||
Helix 6.0 features a robust implementation of TCP/IP that supports virtually all current network environments. DHCP, NAT, Firewalls, WiFi networks and more are now fully supported. Experienced Helix users will find setting up Helix 6.0's TCP/IP implementation to be virtually transparent.
Note: this feature actually debuted in Helix 5.3. Helix 5.3 was an advance release, intended to get the Helix 6.0 TCP/IP code into the hands of users sooner, instead of making everybody wait for Helix 6.0 to ship. With the exception of a handful of bug fixes, this TCP/IP is essentially identical to that found in Helix 5.3.2.
|Improved Client/Server Messaging Performance||
Helix's Client/Server message exchange architecture was created when the dominant networking protocol on Macintosh computers was AppleTalk, running on LocalTalk (230Kbps) wiring. Consequently, the architecture relied on numerous small messages, enabling Helix Server to thread messages to multiple Clients and to keep one Client's large request from dominating the network.
With the advent of Ethernet networks and TCP/IP networking, Helix Client/Server now uses larger messages, combining a number of the previous small messages into a single package, creating a more efficient exchange.
|Collection buffer replaces RAMJet||
In version 5.0, Helix Server and Helix Utility introduced RAMJet a feature that emulated a RAM disk and significantly improved collection performance. Helix 6.0’s macOS native applications feature an improved collection buffer that replaces the old RAMJet technology. The new collection buffer is significantly easier to set up and avoids the difficulties introduced by the separate structure and data caches found in the older versions.
Helix 6.0 also brings collection buffering to Update Collection OS X, reducing the time it takes to check a collection to seconds.
The progress thermometers in all macOS native Helix applications now display timers indicating the elapsed time and the estimated remaining time for the process.
The progress thermometers in Helix Utility OS X also indicate precisely what is being checked at any given time. This may prove useful for troubleshooting, and may also provide insight into potential for optimization.
|“Save & Log” is automatic||
It was often reported to us that the Save & Log feature in Helix Server could be accidentally turned off too easily. Helix 6 makes logfile management completely transparent, turning it on when a collection is opened and off when closed.
|Server & Client Information window enhancements||
The two information windows in Helix Server, “Server Information” and “Client Information” have been completely remodeled, providing more feedback in a less constrained format.
The biggest improvement is the addition of an Apple event (AE) Processes panel to the Client Information window. AE processes (accessed via third party tools) are typically opened, processed, and closed in a matter of seconds. This panel greatly aids programmers in troubleshooting their Apple event interaction with Helix.
Helix Server introduces animated icons in the splash screen that provide the user with operational information. These icons provide significantly better feedback than the old OS 9 cursor change mechanism. Observing these animations can help you identify precisely what is consuming your Server’s time and provide hints regarding areas that would benefit from optimization.
This Helix 6 FAQ page shows these icons in their animated state and describes the situations under which each one is seen.
The animation icons are also displayed in the Server Information window that is accessible via Helix Client.
|Helix Help and Custom Help use Apple’s built-in help system||
Helix Server uses Apple’s built-in help system to provide online help for its own help as well as Custom Help.
|Older technologies no longer supported||
Publish and Subscribe and AppleTalk, two technologies slated for obsolescence in macOS, have been dropped from Helix 6.
|Bug Fixes in Helix 6.0|
|Underlying Code Bugs||
Numerous bugs deep within the code were found and fixed. These primarily resulted in instability or other non-reproducible behaviors, so they are rather uninteresting to read about.
|Keyword sorting of extended ASCII characters||
Keyword indexes failed to properly index words that started with an ASCII character from the extended character set, causing queries to fail. For example, a search based on “[┼sberg] Word Starts With [┼]” would fail.
|Duplicate User Issues||
In Helix 5.3.2 and earlier when a new user is created via the “Edit Users” dialog, the new user name is stored as both the icon name and the custom name for the user. Beginning in Helix 6.0, using “Edit Users” to create a new user no longer puts the new name in the custom name field.
A similar problem is encountered when icons are duplicated in Design Mode: the custom name (as well as other “Icon Info” based data) is duplicated in this situation as well. Add to that the fact that users working in icon view are given no indication that there is a custom name assigned to an icon, and compound that with the realization that when User Name Security is turned on, entering a name in the Enter a User Name dialog connects to the first user found with that name and you can see how it was possible (in prior versions) to create user icons that appeared to be unusable. Beginning in Helix 6.0, when an icon is duplicated in Design Mode, the custom name is cleared in the duplicate.
In Helix 5.3.2 and earlier, using the “Get Info” command on a user icon introduced a subtle bug that resulted in the icon’s name being duplicated into the custom name slot every time the user icon was opened. The net effect of this bug was similar to the bug described above. This is also fixed.
|Fixed point field formatting||
In Helix 5.3.2 and earlier, the Number of digits display option for fixed point fields (and custom formatted rectangles containing fixed point fields) could be set to any value from -7 to +2. Setting the display to any value outside the documented range of 0–2 would produce unexpected results.
|Dynamic Popup construction||
In Helix 5.3.2 and earlier, when constructing a dynamic popup menu, abaci that include lookup tiles are excluded from the slot machine selection lists. This is fixed in Helix 6.0.
|Inert fields in lookup tiles||
The Helix Reference (section 7.7 in the pdf that ships with Helix 5.3.2) states: “… a Lookup tile cannot target (lookup) an inert field since there is no stored data to lookup. Therefore, an inert field can only appear in the third hole of a Lookup tile (or any four hole Sub tile).”
In Helix 5.3.2 and earlier, this was not the case, and inert fields could be specified. This is fixed in Helix 6.0.
A bug in Update Collection 5.x caused it to damage collections from Helix Express 3.5 or earlier when updating them. This has been fixed in Helix 6.0.
An ancient bug in Update Collection has been fixed: when multiple collections are checked at one time by dragging and dropping them onto Update Collection, if one of the collections being checked is damaged, the name of first collection checked is reported as damaged instead of the damaged one.