home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Frozen Fish 1: Amiga
/
FrozenFish-Apr94.iso
/
bbs
/
alib
/
d7xx
/
d745
/
arexxbox.lha
/
ARexxBox
/
History_e.txt
< prev
next >
Wrap
Text File
|
1992-10-12
|
7KB
|
178 lines
History of ARexxBox Releases
----------------------------
V0.99 first beta release
V0.99a FIXED: Argument and result lists could work on an
invalid command -> Enforcer-Hit/Crash.
(Report: RALF_KAISER@AWORLD)
V0.99b ENHANCED: GadToolsBox source fixed to use the System Default
Font instead of the Screenfont for Layout and Gadgets.
(Report: SYSOP@INSIDER [Garry Glendown])
V0.99c FIXED: The equal sign '=' wasn't allowed for arguments.
FIXED: After changing some argument or result, the display
now shows the changed element, rather than the last one
in that list.
FIXED: The font routines still had some error.
(Report: F.J.Reichert [F_J_REICHERT@SAARAG])
V0.99d FIXED: All pointer conversions are now clean. The code
should now be compileable without warnings.
Added pragma #includes and _toupper() for SAS/C.
(Report: W_KUETING@HSP)
V0.99e FIXED: When _no_ result field was given, the code
generated an "out of memory" error.
ENHANCED: ReplyRexxCmd() now creates the variable RC2, it
contains the "Secondary Returncode", which can be set in
any rxif-structure under the name rc2. This variable can
be used to return detailed error codes to the calling
rexx program.
This feature is an extension of the style guide conventions,
IMHO a good one. If you have complaints or comments on
this idea, please tell me!
RC2 will only be generated if a) 'options results' was given
and b) RC != 0. The field rc2 may contain an error code (long)
as well as an error string (char *). Code is the default.
The software distinguishes these two types by the sign of
rc, rc positive means rc2 is a long, rc negative means rc2
is a char *.
A negative rc will be converted to positive before beeing
returned to the caller.
Example for error CODE:
rd->rc = 10;
rd->rc2 = ERROR_OBJECT_NOT_FOUND;
Example for error STRING:
rd->rc = -10;
rd->rc2 = (long) "You idiot! No object!";
The standard error strings are _not_ localized. As soon as
I get some infos and tools for this, I'll do it.
ENHANCED: SendRexxCommand() now has a new parameter for
better supporting the standard command "RX". It is a
FileHandle (BPTR!), which becomes the stdin/stdout of
the executed arexx script. FreeRexxCommand() closes
the file (if necessary).
SendRexxCmd() now returns the address of the sent
RexxMsg structure (or NULL for error).
ENHANCED: The RexxHost structure now has a new field
called "userdata". It can be used to hook the RexxHost
onto your own structures, e.g. for linking hosts and
and their project instances together.
ENHANCED: Every command now has a global "enabled"
flag. If the flag is 0, the dispatcher will not execute
that command anymore until the flag will be set again.
The user should have the ability to manipulate this flag
using the (standard) arexx commands ENABLE and DISABLE
(see rxif/*.c).
CHANGED: Any CommandShell now must have its own RexxHost,
that means that host _must_not_ be used as a normal ARexx
port simultaneously.
ENHANCED: As a consequence, every rxif function now gets
the RexxHost of the ARexx port resp. CmdShell as it's
(first) parameter. Therefore the function can decide
whether it was called from ARexx or from a Shell and
on which project it should work.
ENHANCED: Another consequence is the new flag ARB_HF_CMDSHELL
for supporting the standard command CMDSHELL. The flag is
in the 'flags' field of the RexxHost structure. If it's
set, that host is currently running a shell. You can
clear the flag from anywhere causing the shell to close
(after processing the next command).
FIXED: ARB no longer accepts argument or result names
consisting of only spaces or only options.
CHANGED: As some rxif functions have to access them,
the structs 'rxs_command' and 'rxs_commandlist' are now
defined in the headerfile. For accessing the command
list, there is a new function:
struct rxs_command *FindRXCommand( char *name );
FIXED: Arguments with '=' are now translated correctly
into variable names for C. The last alias component
will be used as the var name.
ENHANCED: There is now a callback function for words
the parser doesn't recognize:
char *ExpandRXCommand( struct RexxHost *host,
char *commandline );
This function will be called before the parser returns
an error. If the function returns NULL, the error will be
generated, if not, the parser assumes that the function
was able to analyze the input and tries to parse the
returned string.
This function can be used to implement command aliases
or processing of non-standard commands.
Attention! ExpandRXCmd() has to allocate memory for the
returned string, using standard C functions! This memory
will be freed by the parser after processing the string!
ENHANCED: ARB now does more safety checks on saving the
source modules, so you should never accidentally destroy
other code.
NOTE: One of the standard commands as suggested by the
style guide uses the keywords "VAR" and "STEM" to
describe the INPUT variables instead of the former
usage as OUTPUT descriptors. I don't think this is a
good choice as there can't be any results from this
function that way. I suggest other names for those
arguments, e.g. "FROMVAR" and "FROMSTEM".
Comments?
(The ARB doesn't look at the already existing args, if
a command has some result, "VAR" and "STEM" will be
added to the template.)
Some of the style guide suggestions are not very precise
and need extensions to operate correctly. I added some
extensions to the arexx standard commands. Comments
welcome.
FIXED: Numeric results now work.
V0.99f ENHANCED: ARB now uses two FileRequesters, one for the
binaries and the other for sources. The patterns now
remain what you set them to and have defaults with #?
instead of *.
(Report: Stefan Zeiger)
FIXED: Window->TopEdge is now font sensitive.
(Report: Stefan Zeiger)
V0.99g FIXED: The parser now returns the ReadArgs() error code
in rc2.
CHANGED: No longer appends \n to the template string
before parsing (not needed).
CHANGED: The ARexxBox now uses the ASL file requester.
(Wish: Garry Glendown [Sysop@Insider])
V1.00 ENHANCED: Source now compatible to GCC. Remaining
warnings may be ignored.
CHANGED: FindRXCommand() now only accepts real abbreviations
of commands.
--- FIRST PUBLIC RELEASE ---