Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Version 4.0.20 #670

Merged
merged 9 commits into from
Sep 8, 2024
Merged
8 changes: 4 additions & 4 deletions StartupSession/Link/Config.apln
Original file line number Diff line number Diff line change
Expand Up @@ -106,9 +106,9 @@
:AndIf 0≠≢config.SourceFlags
msg,←⊂'Stop/Trace:'
:For obj :In config.SourceFlags
(name stop trace monitor)←obj.{6::⍬ ⋄ ⍎⍵}¨'Name' 'Stop' 'Trace' ⍝ Not 'Monitor'
:If (0≠≢name)∧(∨/0≠≢¨stop trace monitor) ⍝ Something to report
msg,←⊂' ',name,'[',(⍕stop),'/',(⍕trace),'/',⍕monitor']'
(name stop trace)←obj.{6::⍬ ⋄ ⍎⍵}¨'Name' 'Stop' 'Trace'
:If (0≠≢name)∧(∨/0≠≢¨stop trace) ⍝ Something to report
msg,←⊂' ',name,'[',(⍕stop),'/',(⍕trace),']'
:EndIf
:EndFor
:EndIf
Expand Down Expand Up @@ -260,4 +260,4 @@
rc←0⊣msg←'Was ',⍕names,¨':',¨⍕¨old

:EndNamespace
:EndNamespace
2 changes: 1 addition & 1 deletion StartupSession/Link/Configure.aplf
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
islinked←0
container←⊃⎕RSI ⎕XSI U.ContainerNs ⍬

:If 9=container.⎕NC target
:If (9=container.⎕NC target)∨(⊂target)∊,¨'#' '⎕SE'
target←⍕container⍎target
:AndIf 0≠≢links←U.GetLinks
:AndIf islinked←(⊂target)∊links.ns ⍝ If target is a linked namespace
Expand Down
2 changes: 1 addition & 1 deletion StartupSession/Link/Version.aplf
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
version←Version
version←'4.0.19'
version←'4.0.20'
7 changes: 5 additions & 2 deletions StartupSession/Link/WSLoaded.aplf
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
{ok}←WSLoaded;keep;links;msg;wslinks;link;diff;allOK;load;IsLoad;broken
{ok}←WSLoaded;keep;links;msg;wslinks;link;diff;allOK;load;IsLoad;broken;isLoadWs
⍝ Action to be taken upon )LOAD or )CLEAR
ok←0
:Trap 0 ⍝ can't afford to error
Expand Down Expand Up @@ -31,7 +31,10 @@
⍝ restore saved workspace links
:If ~0∊⍴wslinks
wslinks←⎕SE.Link.⎕NS¨wslinks ⍝ avoid cross-ref between # and ⎕SE
wslinks/⍨←(~U.IS190)∧~IsLoad wslinks
:If U.IS190
isLoadWS←(,1)≢IsLoad wslinks ⍝ wslinks is not exactly the LOAD= directory
wslinks/⍨←isLoadWS ⍝ before 19.0, always restore saved links
:EndIf
:AndIf ~0∊⍴wslinks
links,←wslinks
wslinks.restored←1 ⋄ wslinks.fsw←⎕NULL ⍝ fsw re-instancited by Resync
Expand Down
2 changes: 1 addition & 1 deletion docs/Usage/Arrays.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

By default, Link uses *APL Array Notation (APLAN)* to store arrays in text files. While APLAN is a good format for describing numeric data, nested arrays and many high rank arrays, it is not ideal for storing text data. Link 4.0 introduces experimental support for storing multi-line character data in simple text files.

The configuration setting `text` can be used to enable this feature: If `text` is set to `'aplan'` (the default) then all arrays will be store using APLAN. If `text` is set to `'plain'` (the default) then text arrays that adhere to a set of very specific criteria will instead be stored in plain text files. You can set this option when a link is created, or using [`Link.Configure`](../API/Link.Configure).
The configuration setting `text` can be used to enable this feature: If `text` is set to `'aplan'` (the default) then all arrays will be store using APLAN. If `text` is set to `'plain'` then text arrays that adhere to a set of very specific criteria will instead be stored in plain text files. You can set this option when a link is created, or using [`Link.Configure`](../API/Link.Configure).

Text files which are not in APLAN format will have a penultimate "sub-extension" section in the file name which records the format of the original array in the workspace. The below table describes the array file extensions, what the content represents, and the specific criteria for storage in plain text file.

Expand Down
9 changes: 5 additions & 4 deletions docs/Usage/Installation.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,10 +24,11 @@ Link is maintained as an open source project at [github.com/dyalog/link](https:/

If you have the necessary permissions, you can **OVERWRITE the installed version of Link** by replacing the `StartupSession` folder that already exists in the main Dyalog program folder with the downloaded folder.

If you do not have permission to overwrite the Dyalog installation, or you do not wish to overwrite the original version of Link that was included with the interpreter (Dyalog recommends keeping the original code in case you need to fall back), you can keep the code outside the main program folder. In this case, you will need to declare the location of the folder by setting the `DYALOGSTARTUPSE` parameter. You can add it to the command line when you start APL, but it is probably easier to use one of the following alternatives:
If you do not have permission to overwrite the Dyalog installation, or you do not wish to overwrite the original version of Link that was included with the interpreter (Dyalog recommends keeping the original code in case you need to fall back), you can keep the code outside the main program folder. In this case, you will need to declare the location of the folder by setting the parameter `DYALOGLINK` (v19.0 or later), or `DYALOGSTARTUPSE` (v18.2). You can add it to the command line when you start APL, but it is probably easier to use one of the following alternatives:

- **Set the `DYALOGSTARTUPSE` environment variable** to point to the StartupSession folder.
- **Set the `DYALOGLINK` or `DYALOGSTARTUPSE` environment variable** to point to the StartupSession folder.

- **Update the configuration file (or the Windows registry)**, to set the parameter there. Typically, you would edit `~/.dyalog/dyalog.config` to make the change for all versions, or a specific file such as `~/.dyalog/dyalog.180U64.dcfg` for a specific version, to include the line:
- **Update the configuration file (or the Windows registry)**, to set the parameter there. Typically, you would edit `~/.dyalog/dyalog.config` to make the change for all versions, or a specific file such as `~/.dyalog/dyalog.182U64.dcfg` for a specific version, to include the line:

`DYALOGSTARTUPSE: "/Users/mkrom/link/StartupSession"`
`DYALOGLINK: "/Users/mkrom/link/StartupSession"` (version 19.0 or later)
`DYALOGSTARTUPSE: "/Users/mkrom/link/StartupSession"` (version 18.2)