Releases: the-carlisle-group/Acre-Desktop
Acre-Desktop
Acre 5.0.2.109 2019-01-28 17.10
Acre Desktop - Release Notes
All required emulations should now be fully compatible back to
Dyalog 14.0.21929.0 for Windows-64.
The acre project folder now contains "build.dws", a Dyalog v14.0 workspace
containing only a single function that can be )LOADed into any Dyalog 14.0
and up, reads and fixes all relevant code into the active workspace, sets
⎕LX and ranames and saves the workspace as:
"[localappdata]/acre/acre[ver]/acre.dws"
where [localappdata]
is the result of
2 ⎕NQ'.' 'GetEnvironment' 'localappdata'
and [ver]
is the major and minor nodes of the Dyalog version number from
'.'⎕WG'APLVersion'
e.g:
"16.0" from 'Windows-64' '16.0.34994.0' 'W' 'Development'
This "acre.dws" can be )LOADed to complete installation by associating its
folder as source for the user commands or it can be copied or moved
elsewhere before being )LOADed.
Via this protocol any future enhancements to acre will be automatically
available to any supported Dyalog version. There will be only one
"production" version of the acre source 'though in future it may become
necessary to have more than one version of "build.dws" if a later Dyalog
version becomes incapable of )LOADing a v14.0 workspace.
Alternatively the "#.acre._code.buildWs" function can be run directly from
the open development project in an existing installation as now but should
be used in all installations other than Windows in conjuncion with the
supplied acre installation folder - Dyalog v16.0 at present.
The reason different installations are necessary for different Dyalog
versions are given at
https://forums.dyalog.com/viewtopic.php?f=30&t=1451#p5753
Acre-Desktop
Acre 5.0.0.074 2018-11-26 10.48
Acre Desktop - Release Notes
============================
Note that the major release number has changed because this release comes
with a potentially breaking change:
The command `]acre.Erase {namespaceName}` deleted all items in
`{namespaceName}` before 5.0.0.
It now requires `{namespaceName}.*` to achieve the same goal.
The same is true for `]acre.SetChanged`.
New projects are now created with CaseCode and KeepHistory 'Off'. Use the
"-c=on" or "-k=on" flags to reverse them or they can then be edited in
the config file. Its default name has changed from "acreconfig.txt" to
"acre.config" and the default encoding is now APLAN.
All messages now appear, not in the session or a nominated array, but in
a separate window which can be hidden, restored, cleared and queried. Now
reports all items NOT written by CreateProject or SetChanged and any items
that cannot be written if casecoding is Off because they would produce
duplicate files.
There is an experimental protocol:
⎕SE.acreAPI.casecode
changefile
changes
deletefile
fromaplan
itemname
log
nameclass
projects
sourcefile
stats
toaplan
version
that is a namespace containing functions that reproduce all the facility
of ⎕SE.acre.run and a growing list of acre's user commands.
Acre now hands over to SALT if an edited item is not in any tracked project.
Acre-Desktop
Acre and SALT
If an edited item is not in a tracked project acre now passes control to
SALT to see if it can handle the item. The only difference that will be seen
is that no "No tracked project can handle item" message will be issued on
exiting the editor. SALT may issue its own messages.
Acre-Desktop
New version of APLAN. Adds broken parentheses that can delimit vectors of
any length and depth.
Short nested and mixed vectors are still dispayed as strand notation albeit
that all items are parenthesised, many redundantly:
(1)('2')(,3)(,'4')('five')(1 2 3 4 5 6)
Vectors whose formatted length would exceed a stated length (default 80) are
encoded with diamonds instead of the parentheses:
(1⋄'2'⋄,3⋄,'4'⋄'five'⋄1 2 3 4 5 6)
or formatted with line-breaks and indentations:
(
1
'2'
,3
,'4'
'five'
1 2 3 4 5 6
)
]EditArray now displays all arrys identically to the equivalent source file
content.
Ctrl-char escaping is now moved to acre read and write rather than APLAN
'though this change might not immediately be visible.
User command help - ]?acre.command no includes a link to the Acre-Desktop
GitHub Wiki.
Acre-Desktop
Ready to convert to new "standard" filetypes.
Msgs suggest source file to examine for non-fixed items.
New command EditArray encodes and edits general arrays as either JSON or APLAN and saves changes.
Acre-Desktop
All files with recognised types are read. File paths with case-codes are decoded strictly {i} and those without are left as-is, irrespective of the casecode configuration setting.
According to type, items are fixed with ⎕FX, ⎕FIX, APLAN or direct assignment.
For those fixed the actual name and type are recorded while items failing to fix are reported (ii).
Taking the casecode setting and the actual name & type into account, correct file paths are generated for each item fixed.
Any differences are reported and cause a quiet attempt to rename (iii) the file/folder accordingly.
Renaming failures are reported (iiii).
(i) The casecode is always honoured if present but is unnecessary in almost all cases.
(ii) Failures to fix will generally be caused by a faulty definition or incompatible file type.
(iii) Under Dyalog V16 renaming of folders is currently achieved by creating the target folder and renaming the files into it.
(iiii) Failures to rename will generally be by an attempt to rename a file to that of an existing one, for instance by setting casecode=off while files 'abc-0.aplf' and 'Abc-1.aplf' both exist in the same windows folder.
Acre-Desktop
Length error in Refresh
Acre-Desktop
Acre 4.5.0.013 2018-07-30
Release Notes
Acre Desktop
Since v4.4.0.002 significant changes have all been concerned with the
recognition, recording and renaming of changes to sourcefiles by OpenProject
and Refresh
both of which call the same low-level code to take account of
the casecode=
configuration parameter and the renaming of files in the OS
and/or changing of file content in and by external editors.
Along with this comes the first pass at converting from the original
Acre-Desktop filetypes: .array, .function, .operator
&c. to an extended list
of those proposed by Dyalog: .apla, .aplf, .aplo
&c.
The current state is such that files are selected as having one of either
set of filetypes. They are then subset according as they fall within the
following groups:
.array .apla
.charlist .charmat .charstring .apll .aplm .apls
.class .interface .aplc .apli
.function .operator .aplf .aplo
.script .apln
All members of a group undergo similar processing. If the actual name and/or
type fixed differs from that expected after casecode resolution the file is
renamed to reflect the actual name and type, casecodes are added if that is
the option and the change is reported.
The original acre filetypes are still being used at present. Acre requires a
single bit change '0'→'1' to a single function to enforce the ".apl_"
filetypes.
Acre-Desktop
]Erase now erases entire contents of a namespace that is in or all of the project space a tracked project as
]erase #.projectspace
Adds modifier -confirm=
as follows if more than 50 items to be erased.
]Changes now adds changed date to each item in response to the -when
modifier.
⎕SE.acre.run has new entry of casecode
that toggles between names with and without case-codes.
Acre-Desktop
Abandoned [option←'value']
syntax for inbuilt -option=value
syntax.
-help
-messages=on|off|#.global.name
-track=on|off
-dependencies=on|off
first two available for all commands. Second two for OpenProject
only but ignored pro-tem.