* bin/commit.hb
* made git detection generic
! fixed calling shell on OS/2
* config/global.mk
* minor sync with other parts of Harbour
* contrib/hbblink/blinker.prg
! fixed SWPRUNCMD() on OS/2
* contrib/hbxpp/runshell.prg
! fixed for RUNSHELL() on non-*nix platforms
* contrib/hbhttpd/readme.txt
* doc/dirstruc.txt
* doc/xhb-diff.txt
* include/hbapi.h
* INSTALL
* NEWS
* src/common/hbver.c
* src/main/harbour.c
* src/pp/hbpp.c
* src/rtl/version.c
* src/vm/cmdarg.c
* Avoiding the word "SVN" (use 'source repository',
'repository' or 'repo' for short)
* Added new names that don't refer to SVN:
C level:
- hb_verRevision() (was: hb_verSvnID())
- hb_verChangeLogID() (was: hb_verSvnChangeLogID())
- hb_verChangeLogLastEntry() (was: hb_verSvnLastEntry())
.prg level:
- HB_VER_REVID built-in macro (was: HB_VER_SVNID)
; Old functions/macros will be deleted after next major
revision, start using the new names until then.
* contrib/hbnf/aavg.prg
* contrib/hbnf/adessort.prg
* contrib/hbnf/amedian.prg
* contrib/hbnf/anomatch.prg
* contrib/hbnf/any2any.prg
* contrib/hbnf/asum.prg
* contrib/hbnf/clrsel.prg
* contrib/hbnf/d2e.prg
* contrib/hbnf/ftround.prg
* contrib/hbnf/invclr.prg
* contrib/hbnf/nwsem.prg
* contrib/hbnf/popadder.prg
* contrib/hbnf/tbwhile.prg
* contrib/hbnf/tests/clrsel.prg
* contrib/hbnf/tests/d2e.prg
* do not use common.ch. __defaultNIL() is used instead, for
full compatibility here. Should ideally be changed to
hb_default(), but it will break RTE compatibility for
invalid values. Should we do it? (this would also fix
calling internal functions from a contrib)
* contrib/hbnf/tests/d2e.prg
! fixed defaulting to wrong value (regression)
* extras/gtwvw/tests/drawimg.prg
* extras/gtwvw/tests/ebtest7.prg
* extras/gtwvw/tests/prog0.prg
* extras/gtwvw/tests/prog1.prg
* extras/gtwvw/tests/prog2.prg
* extras/gtwvw/tests/wvwmouse.prg
* extras/gtwvw/tests/wvwtest9.prg
* do not use common.ch. Use hb_default() instead.
; Only gtwvg, hbgd, xhb and httpsrv remain to use common.ch
for DEFAULT TO command. Notice it's bad practice since it
only checks for NIL for defaulting, so RTE can easily be
forced by passing a value of wrong type. DEFAULT TO can
be directly replaced with __defaultNIL(), or ideally with
hb_default(). Notice that hb_default() is a pure function,
and since the default value needs to be evaluated even if
correctly typed parameter is passed, it may have
a performance penalty if that default value is coming as
a result of complex expression or function call. I value
type safety more than performance, so in most cases this
is IMO a useful compromise, though of course someone might
as well use 'IF ! HB_IS*( xVar ); xVar := xValue; ENDIF'
which is type safe while having no extra RT performance
penalty, though a bit verbose.
* tests/hbpptest/hbpptest.prg
* utils/hbtest/rt_misc.prg
* do not include unused common.ch
* contrib/xhb/cgi.ch
* formatting
* harbour/include/hbcomp.h
* harbour/src/compiler/hbmain.c
* harbour/src/compiler/hbstripl.c
% eliminate repeated HB_P_LINE pcodes bound by unconditional jump
This optimization is not enabled when debug mode (-b) is used.
* harbour/include/hberrors.h
* harbour/src/compiler/hbgenerr.c
* harbour/src/compiler/harbour.y
* harbour/src/compiler/harbour.yyc
+ added new compile time error: "Duplicate case value"
* src/debug/dbgwa.prg
* src/rtl/browse.prg
* src/rtl/dbedit.prg
% deleted EXIT from SWITCH statements' OTHERWISE branches.
(it'd be nice if the compiler could ignore these
automatically - in case it can be solved with low cost)
* extras/gtwvw/tests/prog2.prg
* extras/gtwvw/tests/wvwtest9.prg
* src/debug/debugger.prg
* src/rtl/tgetlist.prg
* tests/sbartest.prg
* tests/tb1.prg
! further cases of object vars called as methods, though
these didn't (necessarily) caused errors.
I wish Harbour had a native core OOP engine to catch
all (there are more cases than above) this mess at
compile-time.
* src/rtl/browse.prg
! fixed not appending a new record when pressing K_DOWN
in append mode (and perhaps some other cases)
The problem was using 'oBrw:HitBottom( .T. )' instead
of 'oBrw:HitBottom := .T.'
* minor optimizations and cleanup.
; Some stats: it was a 5 year old bug
took about 10 hours to find the solution. Sheet.
* contrib/xhb/cstructc.c
* contrib/xhb/dbf2txt.c
* contrib/xhb/fparse.c
* contrib/xhb/hbxml.c
* contrib/xhb/xhbis.c
* minor formatting
* use ',' instead of 44
* extras/gtwvw/gtwvw.c
! fixed one code line after uncrustify
* contrib/hbmisc/fileread.prg
* contrib/hbmisc/tests/readfile.prg
* contrib/hbmisc/tests/rtfclass.prg
* contrib/hbmisc/tests/testhbf.prg
* contrib/hbmisc/tests/twirl.prg
* minor cleanups, hbformat, using fileio.ch constants,
minor regression in one test app
* config/postinst.hb
* utils/hbmk2/hbmk2.prg
+ Use the second parameter in HB_CWD() calls.
* contrib/hbformat/hbfmtcls.prg
! fixed embedded comment in last commit.
* harbour/src/rtl/philes.c
* modified HB_CWD() to return previous path if new one is set by
optional parameter so current syntax is:
HB_CWD( [ <cNewWD> ] ) -> <cPrevWD>
+ set FError() in HB_CWD() function. Now programmer can check if HB_CWD()
succeed checking result of FError() function, i.e.
HB_CWD( cNewPath )
IF FError() != 0
? "Cannot set working directory to:", cNewPath
ELSE
// stuff
ENDIF
+ set FError() in the following functions:
HB_FGETATTR(), HB_FSETATTR(),
HB_FGETDATETIME(), HB_FSETDATETIME(),
HB_FISDEVICE()
* contrib/hbformat/hbfmtcls.prg
+ added TOFIX
* INSTALL
+ added http://sourceforge.net/projects/mingwbuilds/ as
recommended source for mingw builds (both 32 and 64 bit)
Be aware that these are not QT-compatible (as of now),
but they seem to be much faster at compile time.
* tests/tscmdarg.c
* formatting
* extras/httpsrv/uhttpd.prg
* tests/db_brows.prg
* tests/inherit.prg
* tests/stripem.prg
- deleted now unnecessary SET EXACT settings. There is none
of those in Harbour repo anymore.
* src/rtl/tget.prg
! fixed regression from 2012-01-29 17:22 UTC+0100
when non-numeric index was allowed on a non-hash
variable and then an RTE generated.
Caused rto_get.prg to RTE in the middle.
* contrib/gtwvg/activex.prg
* contrib/gtwvg/class.prg
* contrib/gtwvg/tests/demoxbp.prg
* contrib/gtwvg/tests/utils.prg
* contrib/rddads/doc/en/adsfuncs.txt
* contrib/rddads/doc/en/readme.txt
* contrib/xhb/tfile.prg
* contrib/xhb/txml.prg
* contrib/xhb/xhbole.prg
* doc/windll.txt
* extras/gtwvw/gtwvw.c
* extras/gtwvw/hbgtwvw.h
* extras/gtwvw/tests/maincoor.prg
* extras/gtwvw/wvwcheck.c
* extras/gtwvw/wvwdraw.c
* extras/gtwvw/wvwedit.c
* extras/gtwvw/wvwfuncs.c
* extras/gtwvw/wvwmenu.c
* extras/gtwvw/wvwpush.c
* extras/gtwvw/wvwstbar.c
* extras/gtwvw/wvwtbar.c
* extras/hbdoc/tmplates.prg
* tests/gtcolors.prg
* tests/ipclnt.prg
* tests/ipsvr.prg
* tests/rto_get.prg
* tests/rto_tb.prg
* tests/usrrdd/exarr.prg
* tests/usrrdd/exfcm.prg
* tests/usrrdd/exhsx.prg
* tests/usrrdd/exlog.prg
* tests/usrrdd/exmemo.prg
* tests/usrrdd/exrlx.prg
* tests/wcecon.prg
* full formatting using hbformat (where needed)
* Win32 -> Windows
* 32-bit deleted where it didn't make sense
* using K_* constants
! fixed != operators where used on strings (more to come)
Thanks to Jose F. Gimenez for the ones in txml.prg.
* avoid "common.ch"
% use hb_ntos() in Harbour specific code
- tests/test_all.prg
* deleted MS-DOS batch specific tool. Now hbrun can
be used to run tests very easily
* contrib/hbmisc/tests/rtfclass.prg
* platform dependent stuff deleted/fixed
* contrib/xhb/xhbfs.c
* corrected .prg macro to C one (doesn't change
compiled code)
* tests/test.prg
* minor
* utils/hbmk2/hbmk2.prg
* changed "||" operator to ".OR." in #ifdef
* include/harbour.hbx
* src/rtl/hbdoc.prg
* tests/hbdoctst.prg
+ added __hbdoc_DirLastModified( <cDir> ) -> <tLastModified>
function that returns last modification timestamp for a
given NF doc root directory. It returns empty date if the
directory doesn't exist or is empty.
It can be used to decide whether to update .hbd files f.e.
in an hbmk2 plugin that builds .hbd files automatically.
* harbour/include/hbapifs.h
* harbour/src/rtl/filesys.c
+ added two new C functions:
HB_BOOL hb_fsGetCWD( char * pszBuffer, HB_SIZE nSize );
HB_BOOL hb_fsSetCWD( const char * pszDirName );
* synced some parameters names with declarations in header
* harbour/src/rtl/hbfilehi.prg
* harbour/src/rtl/philes.c
* rewritten HB_CWD() function in C
! fixed to HB_CWD() work with UNC path in MS-Windows and other
systems using drive letters
+ added support for setting new working directory (and drive)
by HB_CWD( <cNewWD> )