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
=both
has been removed. It used to copy from namespace to directory, then the other way. - Link.Create:
source
=auto
has been added. It uses the non-empty side of the link as the source. - Link.Break has a
recursive
flag to break all children namespaces if they are linked to their own directories and the-all
modifier allows you to break all links in the active workspace but maintain links in the session namespace. - Link.Import and Link.Export have an
overwrite
flag to allow overwriting a non-empty destination - Link.Create and Link.Export have an
arrays
modifier to export arrays and asysVars
modifier to export namespace-scoped system variables - Link.Create has a
fastLoad
flag to reduce the load time by not inspecting source to detect name clashes beforeWrite
had been split into two callbacks :beforeWrite
when actually about to write to file, andgetFilename
when querying the file name to use (see the Link.Create documentation for more details).beforeWrite
andbeforeRead
arguments 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
beforeWrite
callback. - 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
all
flag to break all links - Link.Version reports the current version number
- Initial public release