- contrib/hbmysql/utils
- contrib/hbmysql/utils/dbf2mysq.prg
- contrib/hbmysql/utils/hbmk.hbm
+ contrib/hbmysql/tests/dbf2mysq.prg
* moved to tests (in sync with hbpgsql)
* src/rtl/hbi18n2.prg
! fixed to use HB_ASCAN() instead of ASCAN() when 5th
extension parameter is used.
* src/debug/debugger.prg
* contrib/hbfbird/tfirebrd.prg
* contrib/hbnf/clrsel.prg
* contrib/hbmysql/tmysql.prg
* contrib/hbmysql/tests/dbf2mysq.prg
* contrib/hbtip/ftpcli.prg
* extras/hbdoc/hbdoc.prg
* extras/hbdoc/tmplates.prg
! use HB_ASCAN( x, y,,, .T. ) to avoid relying on _SET_EXACT
% use ASCAN() instead of HB_ASCAN() if Harbour extension are not used (hbdoc)
* contrib/gtwvg/tests/modal.prg
! use HB_ASCAN( x, y,,, .T. ) to avoid relying on _SET_EXACT
! use HB_KEYCHAR() instead of CHR() on key codes
* contrib/xhb/tedit.prg
* contrib/xhb/thtm.prg
* contrib/xhb/xhbole.prg
* tests/fortest.prg
* tests/initexit.prg
* tests/statinit.prg
* tests/vidtest.prg
* tests/rddtest/rddtst.prg
* extras/hbdoc/hbdoc.prg
* renamed STATIC vars to start with 's_'
* renamed PUBLIC/PRIVATE vars to start with 'p_'
* renamed STATIC "const" vars to start with 'sc_'
* contrib/hbsqlit3/hdbcsqlt.prg
* contrib/xhb/tedit.prg
* hbformatted
* contrib/sddmy/tests/test1.prg
* contrib/xhb/tcgi.prg
* contrib/xhb/thtm.prg
* tests/brwpos.prg
* formatting
+ contrib/hbnf/tests/fttext.prg
+ added test code for FTTEXT API
* contrib/hbnf/fttext.c
+ added MT compatibility by moving static vars to a structure
and that structure to TSD
* contrib/hbnf/menutonf.prg
* use HB_KEYPUT() instead of FT_PUTKEY()
* extras/gtwvw/tests/cbtest1.prg
* extras/gtwvw/tests/cbtest6.prg
* extras/gtwvw/tests/inpfocus.prg
* extras/gtwvw/tests/wvwmouse.prg
* KEYBOARD/__KEYBOARD() -> hb_keyPut()
* extras/gtwvw/tests/inpfocus.prg
! Do not use K_* constants for characters.
* contrib/gtwvg/tests/demowvg.prg
* extras/gtwvw/tests/wvwtest9.prg
* minor code cleanup
* contrib/gtwvg/class.prg
* contrib/gtwvg/menubar.prg
* contrib/gtwvg/paint.prg
* contrib/hbct/fcopy.prg
* contrib/hbcups/tests/test.prg
* contrib/hbcurl/tests/ftp_uldl.prg
* contrib/hbmisc/hb_f.c
* contrib/hbmisc/tests/testhbf.prg
* contrib/hbmysql/utils/dbf2mysq.prg
* contrib/hbnf/amedian.prg
* contrib/hbnf/tests/dfile.prg
* contrib/hbpgsql/tests/dbf2pg.prg
* contrib/hbpgsql/tests/test.prg
* contrib/hbtip/tests/upld_ftp.prg
* contrib/hbwin/tests/testcopy.prg
* contrib/hbwin/tests/testmapi.prg
* contrib/xhb/tests/testcp.prg
* contrib/xhb/xhbtedit.prg
* tests/ac_test.prg
* tests/db_brows.prg
* tests/stripem.prg
* tests/testhtml.prg
* deleted references to self-filename, or replaced them
with __FILE__, so they will continue to work (and there
won't be outdated comments) when files are renamed.
* tests/sbartest.prg
* minor
* contrib/gtwvg/class.prg
* contrib/gtwvg/tests/demowvg.prg
* contrib/gtwvg/tests/demowvg1.prg
* contrib/gtwvg/tests/modal.prg
* contrib/gtwvg/tests/tbrowser.prg
* contrib/gtwvg/tests/utils.prg
* contrib/hbmisc/hbedit.prg
* contrib/hbnetio/utils/hbnetio/netiocon.prg
* contrib/hbnf/popadder.prg
* contrib/xhb/ttable.prg
* contrib/xhb/xhbtedit.prg
* extras/gtwvw/tests/maincoor.prg
* extras/gtwvw/tests/prog0.prg
* extras/gtwvw/tests/prog1.prg
* extras/gtwvw/tests/prog2.prg
* src/debug/dbghelp.prg
* src/debug/dbgtwin.prg
* src/debug/debugger.prg
* tests/db_brows.prg
* tests/testprof.prg
* DispOut*() -> hb_DispOut*()
* DispBox*() -> hb_DispBox*()
* Scroll()/CLEAR TO -> hb_Scroll()
; For being MT-friendly and more efficient/flicker-free
in general
; Please review if I had missed some places where
the legacy API usage was actually intentional to
position the cursor. (f.e. some places in gtwvg)
* tests/gtstdtst.prg
* minor
* contrib/hbhttpd/core.prg
* contrib/hbhttpd/widgets.prg
* contrib/hbpgsql/tests/cache.prg
* extras/hbxlsxml/xlsxml_s.prg
* extras/hbxlsxml/xlsxml_y.prg
* extras/hbxlsxml/xlsxml.prg
* extras/httpsrv/cgifunc.prg
* extras/httpsrv/cookie.prg
* extras/httpsrv/session.prg
* extras/httpsrv/uhttpd.prg
* src/rtl/dirscan.prg
% LTRIM(STR(x,y)) converted to hb_ntos() where y had
no significance or just limited the width unnecessarily
% ValType() usage converted to HB_IS*() or optimized
by rearragement of code or using SWITCH/CASE
* contrib/hbgd/gdbarcod.prg
% AllTrim() removed from around Str( n, 1 )
* TOFIX? added to gdbarcod.prg in one place where
Str( n, 1 ) is used and the value can be 10.
; Francesco, can you look at it?
* contrib/gtwvg/tests/dyndlgs.prg
* extras/hbxlsxml/tests/example.prg
* tests/ac_test.prg
* tests/aliaslck.prg
* tests/gtstdtst.prg
* tests/rto_get.prg
* tests/rto_tb.prg
* tests/teststr.prg
* *LTRIM(STR()) -> hb_ntos()
including cases where a size limit was used, but
it was unnecessary.
#define added for Clipper where needed.
* contrib/hbnf/ntow.prg
% LTrim( Str( n, 0 ) ) -> hb_ntos()
zero is currected to 10 by runtime.
Plus minor opt.
* contrib/hbnf/acctmnth.prg
* contrib/hbnf/acctqtr.prg
* contrib/hbnf/acctweek.prg
* contrib/hbnf/dayofyr.prg
* contrib/hbnf/month.prg
* contrib/hbnf/qtr.prg
* contrib/hbnf/week.prg
% PAD(*TRIM(STR()),,"0") -> StrZero()
* extras/hbxlsxml/xlsxml_s.prg
* extras/hbxlsxml/xlsxml_y.prg
* extras/hbxlsxml/xlsxml.prg
* website/samples/dates3.prg.html
* website/samples/dates4.prg.html
* website/samples/testcgi.prg.html
* website/samples/testhtml.prg.html
* hb_osnewline() -> hb_eol()
* extras/hbxlsxml/xlsxml.prg
* extras/hbxlsxml/xlsxml_s.prg
! fixed long time broken charcodes in "OEM" to HTML conversion
and accent stripping funcion.
! fixed "OEM" conversion and accent striping function to
work with any HVM CP, even unicode
* Chr( 141 ) removed from accent striping. Maybe it was meant
as SOFTCR char, anyways, it was stripped to an empty char,
not a non-accented one.
- deleted AnsiToHtml() function (it did nothing)
* renamed OEMTOHTML()/OEMTOHTMLESPECIAL() to STRTOHTML()/STRTOHTMLESPECIAL()
* contrib/hbtip/thtml.prg
! minor fix in recently added StrToHTML() function to
work well when HVM CP is dynamically changing at runtime
* contrib/hbamf/tests/tstendin.prg
! fixed infinite loop after one recent change
! fixed to not redefine ? operator, making it ambiguous.
use unused command name instead
! fixed one test value, which actually needs to be in UTF-8
to give proper results.
+ added #require so it now works as script
* contrib/hbamf/hbamfobj.prg
* contrib/hbhttpd/widgets.prg
* contrib/hbnf/linked.prg
* contrib/xhb/xhbtedit.prg
* extras/gtwvw/tests/ebtest7.prg
! do not use = operator
* tests/tstchbx.prg
* extras/httpsrv/modules/showcounter.prg
* lessen references and references to Windows
* contrib/hbfbird/tests/stress.prg
* use UTF8 instead of Windows specific CP
* formatting
* contrib/hbhttpd/widgets.prg
* use UTF8 instead of Windows specific CP
* contrib/hbcairo/tests/fancytxt.prg
* contrib/hbcairo/tests/glyphdbg.prg
* contrib/hbcairo/tests/hellow.prg
* contrib/hbcairo/tests/lightning.prg
* contrib/hbcairo/tests/table.prg
* contrib/hbxpp/tests/opover.prg
* contrib/hbxpp/tests/testdll.prg
+ added #require "<pkgname>" so these can now be run as
scripts.
* contrib/hbgd/gdimage.prg
% no longer needed manual image destroy methods
converted to empty stubs
* contrib/hbgd/gdwrp.c
! GDIMAGEDESTROY() to act as true dummy wrapper.
Before it was still checking parameter and RTE-ing
as a result.
* contrib/hbgd/gdbarcod.prg
! fixed RTEs caused by using [] operator on strings
* contrib/hbgd/tests/animgif.prg
* contrib/hbgd/tests/antialia.prg
* contrib/hbgd/tests/barms.prg
* contrib/hbgd/tests/bartest.prg
* contrib/hbgd/tests/counter.prg
* contrib/hbgd/tests/gdtest.prg
* contrib/hbgd/tests/gdtestcl.prg
* contrib/hbgd/tests/test_out.prg
* contrib/hbgd/tests/test.prg
* contrib/hbgd/tests/testdpi.prg
* contrib/hbgd/tests/tostring.prg
* contrib/hbgd/tests/tpoly.prg
+ added #require "hbgd" so they can be run as scripts
* deleted platform specific stuff
+ added TOFIXes for non-working font settings (not even
before above modifications)
! fixed some examples to save output to file
* some mods to make code portable
* some formatting
* contrib/hbmisc/tests/readfile.prg
* contrib/hbmisc/tests/rtfclass.prg
* contrib/hbmisc/tests/testbbab.prg
* contrib/hbmisc/tests/testcall.prg
* contrib/hbmisc/tests/testhbf.prg
* contrib/hbmisc/tests/tsstrfmt.prg
* contrib/hbmisc/tests/twirl.prg
* contrib/hbmisc/tests/udpdstst.prg
+ added #require "hbmisc" so they can be run as scripts
! added one missing platform guard
* minor cleanups in SVN header and Windows references
* extras/gfspell/gfspell.hbp
* extras/gtwvw/gtwvw.hbp
* extras/hbvpdf/hbvpdf.hbp
* extras/hbxlsxml/hbxlsxml.hbp
* extras/ps32/ps32.hbp
* extras/rddado/rddado.hbp
* extras/superlib/superlib.hbp
+ added $hb_pkg_install.hbm so they now all will
automatically install into /addons/
* extras/gtwvw/tests/hbmk.hbm
* extras/hbvpdf/tests/hbmk.hbm
* extras/ps32/tests/hbmk.hbm
* extras/rddado/tests/hbmk.hbm
* deleted relative dir from .hbc file references
+ extras/hbxlsxml/hbxlsxml.hbc
* extras/hbxlsxml/tests/hbmk.hbm
+ added missing .hbc file
* extras/hbusb/hbusb.hbc
* deleted dll related leftovers that only work
with contribs
- extras/commouse
- extras/commouse/commouse.prg
+ tests/commouse.prg
* moved to /tests/
* utils/hbmk2/hbmk2.*.po
* utils/hbmk2/hbmk2.prg
+ added experimental feature to embed whole build-file
logic into the hbmk2 executable and reference these
from user make files. Currently .hbm files are supported
(.hbm file is simply a collection of hbmk2 options
which do not form a separate subproject). To refer
to such built-in .hbm files, one should use $<filename.hbm>
It's a straightforward way to ship ready-made
collections of options for specific purposes, without
installing external .hbm files. Filenames are case-sensitive.
NOTE: When referring to built-in .hbm files, it will
behave as it was part of the parent make file, which
means ${HB_DIR}, ${HB_DIRNAME}, ${HB_NAME}, ${HB_SELF}
will return the parent file, not the name of the
built-in file itself.
As usual you can override any options by overriding
them after including the .hbm file.
+ added option to remove files added via -instfile=
option by using -instfile=[<group>:]. All files to
the specified group will be removed. Note that
removing internally added files by hbmk2 itself
(f.e. the main built target and implibs) have
undefined results, so avoid it.
! fixed to use THREAD STATIC instead of STATIC in some
places (could not cause problems in current usage)
* use hb_HCaseMatch() instead of hb_HSetCaseMatch()
+ utils/hbmk2/pkg_inst.hbm
* utils/hbmk2/hbmk2.prg
+ added built-in .hbm file named '$hb_pkg_install.hbm'
Its purpose is to provide complete 'install' logic
for external projects. It will install .hb, .hbx,
.ch, .txt, tests/* files, along with installing
necessary libs, dynlibs and implibs. It honors
HB_INSTALL_3RDDYN and HB_INSTALL_IMPLIB settings.
* extras/hbusb/hbusb.hbp
+ use $hb_pkg_install.hbm instead of rolling the complete
install logic locally.
* utils/hbmk2/Makefile
+ added Harbour compiler option so that files from subdirs
can be included (not yet used)
* utils/hbmk2/hbmk2.prg
+ added ${HB_ADDONS} macro which will return the path
of the default addons dir, where 3rd party project might
deploy their distributable files (headers, libs, etc)
Note, the return value doesn't have an ending backslash,
so you need to add it if you need it.
* extras/hbusb/hbusb.hbp
+ added sample usage of full installation of this package,
utilizing ${HB_ADDONS} macro. This method can be used by
any 3rd party project.
* minor cleanup to force the implib name to a value
to avoid problems with double extension ("libusb-1.0")
* extras/hbusb/tests/hbmk.hbm
* since hbusb is installed now, the relative reference
to hbusb.hbc could be changed to simply 'hbusb.hbc' and
autofind will find it.
* contrib/gtwvg/class.prg
* contrib/gtwvg/syswnd.prg
* contrib/hbgd/gdchart.prg
+ using HB_IS*() for strict type checking instead of 'IF x == NIL'
check recently converted from DEFAULT TO commands.
This is INCOMPATIBLE for cases where wrong type was passed
for these parameters.
* contrib/xhb/cstruct.prg
* contrib/xhb/tcgi.prg
* src/debug/dbghelp.prg
* src/debug/dbgtmenu.prg
* src/debug/dbgtmitm.prg
* src/debug/debugger.prg
* contrib/hbhttpd/core.prg
* contrib/hbpgsql/tests/cache.prg
* contrib/hbpgsql/tpostgre.prg
* contrib/hbnf/metaph.prg
* extras/gtwvw/tests/ebtest7.prg
* extras/guestbk/testcgi.prg
* extras/gfspell/spell.prg
% deleted 3rd parameter from expressions 'StrTran( x, y, "" )'
Empty string is the default.
* contrib/xhb/cstruct.prg
! fixed formatting and indentation using hbformat and manually
* utils/hbmk2/hbmk2.prg
% minor opt by replacing 'iif( ! Empty(' with 'iif( Empty('
* extras/hbvpdf/hbvpdf.ch
* extras/hbvpdf/hbvpdf.prg
* changed DEFAULT TO to __defaultNIL()
! deleted common.ch and fileio.ch from public header file.
INCOMPATIBLE. If you need these, include them explicitly.
* contrib/gtwvg/activex.prg
* contrib/gtwvg/class.prg
* contrib/gtwvg/crt.prg
* contrib/gtwvg/menubar.prg
* contrib/gtwvg/paint.prg
* contrib/gtwvg/parthdlr.prg
* contrib/gtwvg/pushbut.prg
* contrib/gtwvg/statbar.prg
* contrib/gtwvg/static.prg
* contrib/gtwvg/syswnd.prg
* contrib/gtwvg/tabpage.prg
* contrib/gtwvg/toolbar.prg
* contrib/gtwvg/wnd.prg
* extras/httpsrv/cgifunc.prg
* extras/httpsrv/cookie.prg
* extras/httpsrv/session.prg
* extras/httpsrv/uhttpd.prg
* use __defaultNIL() instead of DEFAULT TO
* deleted common.ch from all files
* contrib/hbmisc/numtxtru.prg
% minor optimization
* contrib/hbmisc/tests/numtxtru.prg
* avoid using a .dbf as output, instead use STDOUT
* added lines to make it work using hbrun
* switched output and HVM to UTF-8, so it can be
displayed on more systems (both as stdalone exe
and as hbrun script)
* 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
* 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.
* 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
* 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