* harbour/source/rtl/gttrm/gttrm.c
* enable automatic LF->CR+LF translation on TTY device
* harbour/utils/hbdot/hbdot.prg
* do not clear screen when hbdot executed with -h or --help switch
* harbour/utils/hbtest/hbtest.prg
* use stdout(<cMsg>) instead of fwrite(1,<cMsg>) - now GT driver
can catch and redirect output if necessary
* harbour/source/rtl/gttrm/gttrm.c
* set cursor position at beginning of new line on application exit
* harbour/include/hbextern.ch
+ added missing functions (CDPs, LANGs, HSX, ...)
* harbour/utils/hbdot/Makefile
* harbour/utils/hbrun/Makefile
+ added codepage library
* harbour/include/hbgtcore.h
* harbour/source/rtl/hbgtcore.c
+ added new GT method: SEMICOLD()
* harbour/source/rtl/gtxwc/gtxwc.c
* use SEMICOLD() for late console window initialization
* harbour/source/rtl/gttrm/gttrm.c
* use SEMICOLD() to not erase startup screen contnts.
Now applications which uses GTTRM and only simple QOUT()/QQOUT()
output will work like with GTSTD. It means that in *nixes we can
use GTTRM as default GT driver for all Harbour utilities.
* harbour/make_gcc.sh
* harbour/make_tgz.sh
* harbour/harbour.spec
* changed default GT driver for *nixes from to GTSTD to GTTRM
* harbour/makefile.bc
* harbour/makefile.vc
* harbour/makefile.gc
* harbour/common.mak
* always pass all GT libraries to linked library list so compiled
programs can use REQUEST HB_GT_*
+ added HBDOT
* harbour/include/hbpp.h
* harbour/include/hbcomp.h
* harbour/include/hbcompdf.h
* harbour/source/pp/ppcore.c
* harbour/source/rtl/gttrm/gttrm.c
* harbour/source/main/harbour.c
* harbour/source/compiler/hbmain.c
* harbour/source/compiler/cmdcheck.c
* harbour/source/compiler/hbcomp.c
* harbour/source/compiler/hbcmplib.c
* harbour/source/compiler/ppcomp.c
* added 'const' to some 'char *' declarations
+ added hb_pp_inBuffer()
+ extended hb_compMain() to accept source code passed as ASCIIZ
string
+ .prg function HB_COMPILEFROMBUF()
+ added support for -q2 compiler switch - it disables _ALL_ stdout/stderr
messages
* harbour/utils/Makefile
+ harbour/utils/hbdot
+ harbour/utils/hbdot/hbdot.prg
+ harbour/utils/hbdot/Makefile
+ added hbdot utility program.
It's a "DOt Prompt" Console for the Harbour Language
Syntax: hbdot [<hrbfile[.prg]> [<parameters,...>]]
It should look and work in similar way to pp/xBaseScript
by Ron Pinkas but unlike xBaseScript is does not have preprocessor
or simulated runtime environment but simply uses Harbour pp and
compiler libraries to preprocess and compile commands. It means
that it supports all language constructions also statements, f.e.:
"for i:=1 to 10; ? i; next"
Additionally it can also compile and execute .prg files given as
first parameter just like hbrun.
Please test it. If it will work as expected then we can remove
'pp' (contrib/dot) from standard packages
* harbour/harbour.spec
! added workaround for undefined Epoch tag
* harbour/source/rtl/Makefile
* harbour/common.mak
- harbour/source/rtl/terror.prg
- removed .prg level ERROR class
* harbour/include/hbapierr.h
* harbour/source/rtl/errorapi.c
+ added ERROR class supported at .c level and updated all necessary
functions to work without PCODE execution - it should allow to
create and update ERROR object when HVM has active exceptions
* harbour/utils/hbtest/rt_hvma.prg
* harbour/utils/hbtest/rt_misc.prg
* harbour/utils/hbtest/rt_array.prg
* update HBTEST for new ERROR object structure
* source/rtl/tget.prg
! Recent missing date picture mask bug fixed in another
different way. Now without any side-effects, tested with
the regression test suit.
! Fixed a minor incompatibility in some rare situations.
This is grey area even in C5.2 so compatibility is not 100%
here.
* harbour/include/hbexprb.c
* do not generate error for QSELF()[...] - Clipper allows such
operation and because some valid Clipper code needs it then
I disabled error message.
* harbour/common.mak
* harbour/source/rtl/Makefile
+ harbour/source/rtl/einstvar.prg
+ added undocumented CA-Cl*pper function _eInstVar() used to validate
variable type in assign messages.
* harbour/include/hbapi.h
* harbour/source/vm/arrays.c
* changed 'char *' to 'const char *' in hb_arraySetC() and hb_arraySetCL()
* harbour/source/rdd/dbcmd.c
* cleaned DBSKIPPER() code
* harbour/source/rtl/browdb.prg
* use written in C DBSKIPPER() function instead of static .prg Skipped()
when HB_COMPAT_XPP macro is enabled
* harbour/source/rtl/browse.prg
! fixes in BROWSE() function:
! displaying box characters
+ added CL53 compatible mouse actions
+ added mouse wheel actions
+ added support for deleting records (K_DEL)
+ added support for edit mode
+ added support for append mode
* source/rtl/tget.prg
! Fixed incompatible setting of ::TypeOut in certain
situations. As an example this could cause infinite
loops in the get reader when a bad date was entered
like: 2007.12.32 (very old bug)
! Recent missing date picture mask bug fixed in a different
way, because the previous one caused some regressions.
! Fixed ::TypeOut behaviour for non-editable types.
* source/rtl/tget.prg
! Fixed bug where negative number in get buffer beginning
with a decimal sign was erroneously converted back to
a numeric. (like: -.58)
% Minor optimization in @E handling.
* source/rtl/tget.prg
! Fixed bug where negativ number in ge buffer beginning
with a decimal sign was erroneously converted back to
a numeric. (like: -.58)
Please test!
% Minor optimization in @E handling.
* source/rtl/tget.prg
! Fixed bug where mask was missing for date var type when
no explicit picture was used.
* contrib/libct/makefile.bc
! Added missing lines.
* harbour/contrib/libnf/ftattr.c
! fixed to work with GT drivers which do not use VGA compatible
screen buffer
* harbour/contrib/libnf/proper.c
! fixed to not change passed string and possible buffer overflow
* harbour/contrib/libnf/dispc.c
! fixed hard coded item type and updated some old code for current GTs
* harbour/contrib/libnf/getenvrn.c
+ added support for nixes
* borrowed W32 version from xHarbour
* include/hbcompat.ch
* include/hbextern.ch
* contrib/libnf/fttext.c
* source/vm/arrayshb.c
+ xhb RASCAN() added to Harbour without HB_COMPAT_XHB
switch, under the name HB_RASCAN().
Translation from RASCAN() is done via hbcompat.ch
! NFLib/FT_FRSEEK() now works in Harbour regardless
of the HB_COMPAT switches.
* harbour/contrib/libnf/at2.prg
* harbour/contrib/libnf/min2dhm.prg
* harbour/contrib/libnf/ontick.c
* harbour/contrib/libnf/sqzn.prg
* harbour/contrib/libnf/bytexor.prg
* harbour/contrib/libnf/asum.prg
* harbour/contrib/libnf/sleep.prg
* harbour/contrib/libnf/any2any.prg
* harbour/contrib/libnf/origin.c
* harbour/contrib/libnf/mouse.c
* harbour/contrib/libnf/stod.c
* harbour/contrib/libnf/vertmenu.prg
* harbour/contrib/libnf/aredit.prg
* harbour/contrib/libnf/n2color.c
* harbour/contrib/libnf/xbox.prg
* harbour/contrib/libnf/hex2dec.prg
* harbour/contrib/libnf/getver.c
* harbour/contrib/libnf/Makefile
* harbour/contrib/libnf/invclr.prg
* harbour/contrib/libnf/popadder.prg
* harbour/contrib/libnf/d2e.prg
* harbour/contrib/libnf/anomatch.prg
* harbour/contrib/libnf/color2n.c
* harbour/contrib/libnf/datecnfg.prg
* harbour/contrib/libnf/easter.prg
* harbour/contrib/libnf/ntow.prg
* harbour/contrib/libnf/floptst.prg
* harbour/contrib/libnf/pchr.prg
* harbour/contrib/libnf/tbwhile.prg
* harbour/contrib/libnf/e2d.prg
* harbour/contrib/libnf/sysmem.prg
* harbour/contrib/libnf/dfile.prg
* harbour/contrib/libnf/clrsel.prg
+ harbour/contrib/libnf/fttext.c
+ harbour/contrib/libnf/putkey.c
* basic cleanup and syncing with some of xHarbour fixes and extensions.
I'd like to ask Windows users to update non GNU make file
* harbour/source/pp/ppcore.c
+ added support for .T., .F., .Y., .N. in PP and #IF ... / #ELIF ...
expressions. It was reported by Nick Van Dyck on xHarbour devel list
that old PP supported it. I haven't known that old PP suported .T.
and .F. in #IF directive. Please not that there are other diferences
between new PP and the old one in expresions which can be used in
#IF ... / #ELIF directives. New PP supports C like expressions with
support for pseudo functions like defined(), operates on integer
numbers only to not damage 64bit values during conversion to double
and keep C compatible results (the old one used double values) and
is much more restrictive in checking for valid expression.
* harbour/include/hbclass.ch
! fixed typo: AddClsMthds() => AddClsMethod()
+ added support for executing InitClass() constructor - it's not
exact Class(y) behavior but rather sth what xHarbour does now.
It will be change in the future when we will have real class
methods and variables.
* harbour/contrib/libct/blank.prg
! fixed typo
* harbour/contrib/libct/dbftools.c
* added function list in header
* harbour/contrib/libct/screen1.c
+ added SCREENTEXT()
* harbour/contrib/libct/disk.c
- removed DELETEFILE() and FILEMOVE()
* harbour/contrib/libct/files.c
+ added DELETEFILE(), RENAMEFILE(), FILEMOVE()
* harbour/contrib/libct/ctwfunc.c
! fixed typo in parameters numbers in WFORMAT()
+ harbour/contrib/libct/charsprd.c
+ added CHARSPREAD()
+ harbour/contrib/libct/scrmark.prg
+ added SCREENMARK()
+ harbour/contrib/libct/expand.c
+ added EXPAND()
+ harbour/contrib/libct/fcopy.prg
+ added FILECOPY(), FILECOPEN(), FILECCLOSE(), FILEAPPEND(), FILECDATI()
it's modified and fixed code by Frederic J. Bell borrowed from
xHarbour
* harbour/contrib/libct/Makefile
* harbour/contrib/libct/makefile.bc
* harbour/contrib/libct/makefile.vc
* update for new files. makefile.bc will have to be modified yet
(some files were missing and I added them to file list) but I'd
like to leave it for BCC users who can test modifications
* harbour/contrib/libct/Makefile
+ harbour/contrib/libct/keysec.prg
+ harbour/contrib/libct/keytime.prg
+ added KEYSEC() and KEYTIME() modified code by Pavel Tsarenko
borrowed from xHarbour
* harbour/contrib/libct/Makefile
* harbour/contrib/libct/makefile.bc
* harbour/contrib/libct/makefile.vc
* updated for new files
- harbour/debian/rules.cf
+ harbour/debian/rules
* renamed rules.cf to rules - I forgot to make it before commit
* removed link to not installed hbverfix.1
* changed default INSTDIR
* harbour/contrib/libct/ctwin.c
* added protection against overwriting right and bottom WBOX border
directly inside GTCTW so now other screen functions does not have
to check maximum window coordinates. Please remeber that CTWIN from
CT3 has a bug which allows to damage top and left border which I
partialy replicated because peope used it to set window title.
* harbour/contrib/libct/screen2.c
+ added SCREENSTR(), STRSCREEN()
* harbour/contrib/libct/keyset.c
* casting to fix warnings in DOS builds
* harbour/source/rtl/seconds.c
* update timezone in BSD systems when clock is stored in UTC
* harbour/make_gcc.sh
* cleanup
- harbour/make_drw.sh
- harbour/make_bsd.sh
- removed not longer necessary files - make_gnu.sh can be used
instead with exactly the same effect
* harbour/make_rpm.sh
* removed not longer necessary flex and bison from dependences list
+ harbour/debian
+ harbour/debian/control
+ harbour/debian/harbour.cfg
+ harbour/debian/harbour.1
+ harbour/debian/dirs
+ harbour/debian/rules.cf
+ harbour/debian/compat
+ harbour/debian/hbmake.1
+ harbour/debian/changelog
+ harbour/debian/copyright
+ harbour/debian/hbtest.1
+ harbour/debian/hbpp.1
+ harbour/debian/hbrun.1
+ harbour/debian/hbdoc.1
+ harbour/make_deb.sh
+ added rules to generate DEB packages - rules by Luis Mayoral
taken from Debian distribution updated for current code but
not tested at all. Please make some test running make_deb.sh
in Debian and Ubuntu distribution and give me an information
about results.