Please enable JavaScript to view this site.

A-Shell Development History

Navigation: Version 6.5/7.0, builds 1600+ > 2023

1752 — 13 December 2023

Scroll Prev Top Next More

1752.5

EIR

Compiler edit 1042:

Extend the 1041 edit to treat all case variations of a variable named DATN (datn, DatN, etc.) in a MAP statement, whether scalar or array, as entirely disabling recognition of the double-arctangent function—i.e. reverting entirely to the behavior before that function was introduced.
Compiler now complains about INPUT statements targeting an array or a gridmap that are missing the CSV token. Previously a statement like:

INPUT #CH, ARY()

was accepted and would work, but not necessarily in the way expected, leading to tricky-to-recognize bugs. INPUT CSV is essentially a variation of INPUT LINE, meaning that each statement consumes one line of the file, regardless of whether there were more or fewer fields than expected or if the line ends with a comma.

1752.4.1

New

Add REGEX flag PCREX_NOT_PRECOMPILED (&h08000000) to eliminate the ambiguity when passing a single-byte pattern to INSTR() or Xcall REGEX as to whether it represents a normal pattern or a previously precompiled pattern #.

1752.4.2

EIR

INSTR(spos,subject,pattern,flags) now automatically assumes PCREX_NOT_PRECOMPILED unless the pattern is a single byte whose ASCII value is between 1 and 5. This allows up to 5 pre-compiled patterns while minimizing the likelihood of accidentally confusing a normal pattern with a precompiled one.

1752.3

Fix

Xcall MX_GTOCT: was working only for values up to 31 bits, after which it was returning negative or other wrapped-around values. Now works up to 63 bits.

1752.2.1

Fix

MX_SINK, AG_SINKFIELD / AG_UNSINKFIELD: coordinates now match the documentation.

1752.2.2

Fix

MX_OSVER / AG_OSVER: was previously reporting Windows 10 and 11 as "Win8".

1752.2.3

Fix

Fix bad pointer reference in the error handler for failed FTP calls.

1752.2.4

EIR

Compiler edit 1041: DATN (double arctangent function) is no longer treated as a keyword if it appears in a MAP statement first.

1752.1.1

Fix

TABX display:

MBST_SAVRES feature was failing to restore certain nested controls, such as children of groupboxes, MBF2_DLGNOCAP panels and nested TABX controls.
Resizing the window wasn't properly resizing all of the controls. Note that for resizing of TABX controls to work reliably, make sure to use the two-step panel switch sequence (CTLOP_CLR on the 'from' panel, then CTLOP_PANE on the 'to' panel).

1752.1.2

EIR

PDFX / Email refinement:  support OAUTH2 authentication in PDFX Email Method 4. Use the access token (obtained independently by your application, probably using XCALL OAUTH2) in the Email.SMTP.Password directive, preceded by the prefix "[oauth2]", for example:

//PDFX,Email.SMTP.Password,[oauth2]ya29.a0AfB_byBunmfPUnJuV0XI5i...

Note that this also requires ASNHET.DLL (or libashnet.so) 1.14.191; see below.

1752.1.3

EIR

ASHNET.DLL (Windows) and libashnet.so (Linux) 1.14.191 updated to support OAUTH2 authentication in PDFX Email Method 4, identified by the "[oauth2]" prefix on the password (see above). The update also fixes an issue with Email attachments when the file spec contained both forward and backward slashes.

1752.0.1

 

Remove 'Beta' from the program title.

1752.0.2

EIR

Extend the FOREACH enhancement (see 1751.0 below) to GRIDMAPs to simplify iterating across a single row. This is especially useful with the (int;varstr;varstr) variation. Examples:

DIMX $GRIDI, GRIDMAP(int;varstr;varstr)

...

FOREACH $$i in $GRIDI(3,3)         ! iterate across row 3

FOREACH $$i in $GRIDI(SROW,EROW)   ! iterate across row #'s SROW to EROW

FOREACH $$i in $GRIDI(SROW)        ! iterate from row # SROW thru last row

1752.0.3

Fix

ASQL fixes to the ODBC connector libashodbc.dll (Windows) and libashodbc.so.1.6.122 (Linux):

Close a loophole that was leading to memory corruption in certain FETCH sequences involving more than 32 fields:
SQLOP_GET_STMATR, SQLOP_GET_CONNATR and SQLOP_SET_CONNATR weren't  working properly.