Hermes Release Notes

2.4.2

Dash templates are validated upon Return or Enter.

2.4.1

Outputs can have dashed lines.

2.4.0

Added a Random component, which produces random numbers from a normal distribution with a given mean and standard deviation.

2.3.9

An HMTVDD component has a property named diffusion, which is now a vector of length six. Each element of the vector is a rate constant that defines emigration from each of the faces of a hexagon. The first element is towards the east, and the remaining sides are indexed counter-clockwise.

2.3.8

Two new features.

You can now print out an HTL program. Control-click (or right-click) on an HTL to evoke the contextual menu, and select Print…. Or select the HTL (and nothing else), and choose Print… from the File menu.

You can now find counts of the nodes of any branch of the model using the Search window, which now shows at the bottom the number of hits.

For intance, if you want to find the number of parts under "Coffee Plant", select Path in the left hand pop-up, enter "coffee plant" in the text field, and hit return. If you'd like to know how many of them are HTLs, click the + button to the right of the text field in order to add another filter, select Class in the new filter, and then HMHTL from the menu on the right. You must also change to compound attribute at the top from Any (logical OR) to All (logical AND).

2.3.7

Minor bug fix.

2.3.6

New tab for managing the recording status of outputs.

2.3.5

Fixed bug with detaching the HTL editor. Updated for Sierra.

2.3.3

Fixed bug with changing value of an input port.

2.3.2

Bug fixes and new features.

  1. Bug fixes to packaging and unpackaging.
  2. Eary detection of model validation failures.
  3. Global renaming of inputs and outputs in HTL components.

A video is available at here describing the last two features.

2.3.1

New selection features.

  1. Select All now works.
  2. Click on an empty area of the workspace while holding down the command key. Drag to define a rectangle and add components intersecting the rectangle to the selection.

2.3.0

Fixed a zombie bug with tool tips! Also some new and returning features.

  1. Tool tips enabled.
  2. New: Pasted components become the new selection.
  3. Better synchronization between navigator selection and workspace selection
  4. New: Changes to arguments and products of an HTL do not affect the workspace display until after the program is committed.

2.2.5

Tool tips disabled.

2.2.4

Fixed a problem with selecting files for the file reader.

2.2.3

Fixed code signing.

2.2.2

Fixed a problem which caused a crash if an input or output was dragged while holding down the option or command key right after dragging a component.

Fixed a problem with the file filter used when selecting a file for a File Reader or a Weather File Reader.

2.2.1

Bug fixes.

2.2.0

I've incremented the minor version number to mark this important milestone. Hermes is now a 64-bit application that I can code sign.

Most of the difficulty presented by this transition came from dealing with the current code base for the inspectors, which has been developed by the OmniGroup. Some problems remain, but the only ones I have found are cosmetic. The icons at the top of the inspector window do not display correctly; the Search inspector has been demoted to one of the tabs instead of being a stand alone window; and sometimes, but not recently, the inspector window doesn't appear (the solution to that is to select an inspector tab from the menu.)

2.1.14

Fixed problem with copying HTL components.

2.1.13

A new version for technical reasons you don't want to hear about. Please read the release notes from 2.1.12.

2.1.12

Many bug fixes and refactoring.

  1. The code for reordering the rows in the Browser or Navigator has been rewritten and updated to current APIs. N.B. The new APIs require that a drag begin with a horizontal movement, which can be very small. But if you begin the drag with a vertical movement, you will produce one of several possible selection behaviors, which will not result in a drag.
  2. The code for dragging in the main view has been substantially rewritten. This should clear up many problems with items not dragging when you expect them to.
  3. I maybe fixed a problem when components could not be selected at all.

2.1.11

Fixed some issues with the Navigator that caused inconsistent or confused listings.

2.1.10

Bug fixed that caused the Inspector to display an HTL program even when an HTL component was not selected.

2.1.9

Bug fixed that prevented HTL components from saving updates if it used internal variables.

2.1.8

The HTL editor has a new button labelled "Detach". It detaches the editor from the Inspector and opens it in a new window that can be resized and moved around the screen. To restore the editor to the Inspector, click "Attach" or the close button.

2.1.7

The HTL editor now shows syntax highlighting. Arguments are colored blue, and products are colored red. Consequently if you type in an argument or product name and it doesn't change to the appropriate color, you've misspelled it (case is not taken into consideration). The keywords of conditionals are colored brown. Function names are purple.

2.1.6

HTL Check Syntax will show a list of static variables, which are variables used in the program that are on neither the arguments nor the products list. Misspelled names will probably show up here.

2.1.5

Tool tips turned off.

2.1.4

Improvement to output tool tip. Fixed transparency control of component overlay images.

2.1.3

Output tool tip lists all users of the value.

2.1.2

Fixed drag scrolling. Selecting a leaf node in the browser list selects the node in the layout.

2.1.1

Fixed bug with tool tips.

2.1.0

Adds HMWeather component for high resolution weather data.

2.0.8

Fixed bug with setting an input constant for a Splitter, and another bug with changing the name of the input port on a File object.

2.0.7

Changed Paste to paste to the center of the current viewport.

2.0.6

Restored zoom.

2.0.5

Fixed problem where browser did not update the display.

2.0.4

Fixed problems related to finding frameworks at run-time.

2.0.3

Revised workspace display code to make it work on French computers.

2.0.2

Changed Paste so that pasted items appear in the center of the current view, rather at the location of the original item. Added sanity check to assure that a component's position is within the workspace.

2.0.1

Made a minor change in the internal representation of arrays that appear as constants in HTL programs. You should locate any HTL components that have such constants and re-commit them to update their state.

2.0

See screencast for a review of the new features. N.B. the old Expression class is no longer available. Do not install this update until you have updated all Expressions to HTL.

1.7.1

Minor fixes and improvements.

1.7.0

This version introduces a new generation of the Expression part, called an HTL, for Hermes Tiny Language. This runs 10–20 times faster than the old version. A menu command will convert all old-style expressions to the new style. For the time being, both styles will be available. I suggest that you save any converted file to a new name, so that you can convince yourself, and me, that the outputs produced by both styles are the same, at least to the level of floating-point noise.

To the left of the search area is a new pair of buttons that function like the forward-page and backward-page buttons of a web browser.

Right-clicking on an input or output name brings up a contextual menu for that port. A new command available there switches the workspace to show the port that is the source of value of the port you clicked on uses. Click on the backward-page button to return to where you were.

Schema migration code has been added. You should be able to open a model of any vintage.

1.6.1

Double-clicking the title bar of a package makes the package the current level. Double-clicking in empty space makes the parent of the current level the new current level.

Minor improvements in the Inspector.

1.6

New feature: an initializations table, which lists all inputs which are not connected to some output. You can change an initialization by double-clicking an entry in the Initial Value column. Double-clicking an input path shows the input in the main workspace. Checking the box at the bottom of the view will hide all initializations that have their default values. The column for the Input Path will be too narrow by default. Hovering the mouse over an entry in either column produces a tool tip showing the complete entry.

1.5.11

Show Editor is always enabled if the part is editable. It either makes a new window or brings the old one front.

Editor and Get Info windows are titled with the name of the part.

1.5.10

Make the HTL syntax checker more strict for IF clauses.

Add logical AND and OR to checker.

1.5.9

Improved error handling during port validation.

1.5.8

Starting this version, Leopard is required.

Values in Get Info and Inspector should be confirmed when the window is closed, removing the requirement to use Return or Tab to confirm.

The path parameter in the File Reader is set using the standard OS File Picker window, rather than requiring that a path be pasted in.

Input names can be changed, as well as their values, in the Get Info window.

1.5.7

Fixed problem with parsing negative numbers.

1.5.6

A new command is available on the contextual menu for Packages. Remove Input and Remove Output remove one of the package's inputs or outputs.

New accelerators. Command-click on an input or output name publishes or unpublishes. Option click on an output name sets it to record.

1.5.5

Introducing the 2-D time varying distributed delay.

Tool tips have been reworked.

Menu to control display detail. The levels are subject to change to suit user preferences. Currently, low shows just components and connected ports; medium shows low plus published ports; high shows everything.

Several cosmetic improvements.

1.5.4

A slider under the work space zooms the display. The available zoom range is 0.1 to 2.0. At zoom levels less or equal to 1, use the scroll bars to move around. At levels greater than 1, you may have to drag the work space (click on an empty spot and drag) to bring a particular component into view.

1.5.3

Made syntax checking of HTL case-insensitive.

1.5.2

Restored editing of component name.

1.5.1

A semicolon must appear after "endif".

1.5.0

Added Find.

1.4.9

Fixed problem with saving colors.

1.4.8

Fixed problem with reordering ports of packages.

1.4.7

Fixed problem with malformation of a port chain by using Make Package on a component that had published ports.

1.4.6

Revert from lame idea for path selection button.

1.4.5

Workaround for double save bug.

1.4.4

Restores port selection.

1.4.3

Now keeps 1 generation of backup.

1.4.2

Ports can be dragged from Hermes to Crocus to define paths. For a tutorial, download the movie from the Abstract Tools web site.

1.4.1

Real numbers can begin with a decimal point. Arc sine and arc cosine functions added. Unconnected inputs to HTL get default value of zero. Ports marked to record their values do so at levels above their origin.

1.4

Several new features.

Input and output ports may now be selected in the usual way. They are highlighted with the highlight color defined in the Appearance system preference. Parts are now haloed in the same color when they are selected.

The color of the part titles can be changed through an Inspector or Get Info window. The Information tab now has a color well which you can use to change the title color.

The color of connections can be changed in the same way using Get Info on a selected input or output. Changing the color of an output port changes the colors of all connections from that port. Changing the color of an input port changes the color of the connection going to that input.

The default colors for the title strips and the connections can be changed through the Preferences. Each class of part has its own default color.

A background image can be applied to a part by dropping an image into the image well in a Get Info or Inspector window. The transparency of the image can be adjusted with the slider that appears next to the image well. If there is no image, then the slider controls the transparency of the default gray background.

Several bugs fixed. Selecting input or output ports of packages or expressions caused a crash because there were no descriptions to display in Get Info. Inputs and outputs of expressions were not properly shown because of a failure to call computeDisplayCoordinates. Unable to unpublish because of a failure to call unpublish. Compound statements were not allowed in conditionals. HML argument and production lists were not properly updated after an edit.

1.3.6

Fixed bug in Expression editor where the code did not appear.

Help should be complete, except for the topics I overlooked.

1.3.5

Fixed several bugs in the Lookup Editor.

More Help.

1.3.4

Connections are preserved when making a package.

Unpackage command added.

Added keyboard shortcut to most actions.

1.3.3

The input and output names of components can be reordered by dragging and dropping.

1.3.2

Copy and paste now work. You can copy from one document and paste into a different one. You can also drag a template from one document and drop it onto another document to be instantiated. Finally, Hermes tries to be smart about not pasting one component directly on top of another.

1.3.1

Fixed bug with misbehavior of Show Editor.

1.3

Changed the behavior of editor windows. Instead of a singleton editor window being bound to whatever editable part is currently selected, each editable part can have its own editor, which is bound only to that part.

The two commands for showing editors previously in the Editor menu have been replaced by a single Show Editor command in the Edit window.

The default inspector has been replaced by Get Info in the Editor window. The Get Info window is bound to the part it shows when it is created. The old singleton Inspector window can be created by holding down the option key before clicking in the Edit menu.

If there are multiple documents, the editor and get info windows are visible only when the document they belong to is the top document.

If there are multiple documents, the editor and get info windows are visible only when the document they belong to is the top document.

The old Editor menu is gone, replaced by an Action menu.

1007

Added automatic application updating.

Fixed problem with access to update site.