Change History
This appendix details the changes made at each version of Link since the release of version 2.0
For a discussion of key differences between 2.0 and 3.0, see Upgrading to Link 3.0.
Version 3.0
For the version 3.0 project, most enhancements and bug fixes are recorded as GitHub Issues. The following lists only records the most important enhancements.
-
When specifying a directory, a trailing slash is reserved for future extension
-
API functions now throw errors rather than return an error message when they fail.
- Link.List has been renamed to Link.Status
- Link.Resync reports differences between the workspace and external source directories, and supports resumption of work from a saved workspace.
- Link.Create:
source=bothhas been removed. It used to copy from namespace to directory, then the other way. - Link.Create:
source=autohas been added. It uses the non-empty side of the link as the source. - Link.Break has a
recursiveflag to break all children namespaces if they are linked to their own directories and the-allmodifier allows you to break all links in the active workspace but maintain links in the session namespace. - Link.Import and Link.Export have an
overwriteflag to allow overwriting a non-empty destination - Link.Create and Link.Export have an
arraysmodifier to export arrays and asysVarsmodifier to export namespace-scoped system variables - Link.Create has a
fastLoadflag to reduce the load time by not inspecting source to detect name clashes beforeWritehad been split into two callbacks :beforeWritewhen actually about to write to file, andgetFilenamewhen querying the file name to use (see the Link.Create documentation for more details).beforeWriteandbeforeReadarguments have been refactored into a more consistent set.- Link.Fix now correctly expects text source for arrays (as produced by ⎕SE.Dyalog.Array.Serialise), as documented, whereas Link 2.0 expected the array itself. Similarly, the source (rather than the array itself) is correctly reported by the
beforeWritecallback. - If a variable has an existing source file, then the file will be updated if the variable is edited using the built-in editor.
Although Link 3.0 will work with Dyalog APL v18.0, many bug-fixes require version 18.2 or later - including but not limited to: - #155 Require keyword does not work - #149 Link induce status messages - #148: Fixing linked function removes all monitor/trace points in it - #144: Link can produce unloadable files
Version 2.1
Version 3.0 was labelled version 2.1 during most of its development, until the end of March 2021. It was renumbered just before the beginning of the distribution of official Beta releases of Dyalog Version 18.2. In other words: if you have version 2.1 installed, this is an early version of what became 3.0 and you should upgrade at your earliest convenience.
Version 2.0
- Link.Break has an
allflag to break all links - Link.Version reports the current version number
- Initial public release