Released 2 Mar 2022. Build number is 553.
Eastgate release page for this version is here.
Minor changes not necessarily warranting explicit mention in an aTbRef note:
- Action Code:
- Protected String.following(match) from a possible crash if its argument is missing.
- Actions that construct the document() dictionary failed if the document was unsaved
- Link actions that refer to source and destination now validate that the link has not been deleted whilst the action was enqueued.
- [String].find(regex) returned incorrect results if the string being searched contained multibyte Unicode characters preceding the occurrence of the regex.
- Action syntax colouring failed to recognise comments that were not followed by a new line.
- The dictionary returned by document() now includes a key, link-types, that contains a list of link types defined in the document.
- Syntax colouring now colours typed declarations such as var:string.
- Syntax colouring. Fix: an unterminated quote inside a comment no longer causes successive lines to be treated as quoted.
- Revised the linkType XML format to allow line breaks in onLink actions. Note that this change is not backward-compatible before b545.
- Tweaked the display of group rows in attribute browser to de-emphasise intermittent display of group rows with the incorrect font.
- If several items export to the same URL, and if the export throws an error, Tinderbox reselected the first of the items.
- The System Attribute pane of the Document Inspector now refers to attribute "Group" rather than attribute "Category".
- Revised map item layout to improve spacing between title and subtitle, especially at small and large magnifications.
- A copy of the shared spellChecker is acquired at startup. NSSpellChecker.sharedSpellChecker is, apparently, not thread safe at initialisation though this fact is not documented; trying to display the list of suggested notes while indexing could deadlock at startup.
- On closing a document, Tinderbox is now more careful not to enqueue requests to mark the document as changed that are received after the document has begun to close. Previously, requests arriving at the wrong moment could be enqueued on a stopped queue, which could prevent the document from closing.
- The index that maps names to notes now has its own operating queue, removing an apparent race condition occurring during loading. This is likely unnecessary as it appears the race cannot actually cause mischief. Nevertheless, an anxious compiler is an unhappy compiler.
- Fixed a possible source of intermittent crashes involving the change manager's mechanism for notification that an agent update cycle has progressed.
- When loading documents, Tinderbox sometimes finished creating windows before the hypertext had been completely loaded. In consequence, view windows might not present all the subviews that they ought, since the corresponding items had not yet been created at the time the window was drawn. Views are now specifically notified when the view has been loaded.
- Fixed a possible source of change manager crashes, involving testing whether a notification ought to be posted.
- Retagging of notes at startup, and when the original note is selected, should now be more reliable.
- A crash could occur when switching view types (e.g. View ▸ Map) while renaming a note.
- Addressed a crash when an agent action tried to move a note to a new container while the document was being read.
- The Note menu command to Copy Note URL placed a "+" in the URL where an ampersand was required.
- Added Gallery to tab's contextual menu.
- Revised layout and wording of Gallery controls.
- Revised CeresOutlinePreparer prepare:, which was spinning up numerous worker threads without much gain, and which was causing deadlocks in large documents.
- In outline columns, the vertical position of the checkbox is more closely aligned to the baseline of the text.
- Document Settings:Map options to expand notes if their name is too long were inoperative in 9.1.0 on newly-created notes.
- Trying to make a zip link of a name enclosed in parentheses [[(name).. failed to name the new note appropriately, because the parentheses were interpreted as a designator for a note named "". The usage now works as expected.
See 9.2.0 Release Notes for more detail of minor points.
This version is cited in the following notes: