* utils/hbmk2/hbmk2.*.po
* utils/hbmk2/hbmk2.prg
+ added '-hb30' option and '{hb30}' filter macro to allow
reverting back to Harbour 3.0.0
+ added provisions for merging 'hblang' and 'hbcpage'
core libs into new 'hbnat' lib
+ SETCURSOR() and SETCOLOR() references will now also
trigger full screen CUI mode in hbrun scripts
+ documented the fact that GTCGI is default GT for scripts
and that it's switched to another one (and which) when
CUI mode script is detected
+ marked all information in help with '[*]' which shows
host platform dependent, dynamic data (f.e. systems paths)
+ hbmk.hbc will now be searched for under user's home
directory on non-*nix, too
+ added '-find' special hbmk2 option for finding Harbour functions.
It will lookup any strings passed as command line arguments
and display in which library they can be found. It will
also do the lookup in packages not currently installed.
Replaces similar 'hbrun bin/find' functionality, but now
uses existing code inside hbmk2. The new implementation
also supports wildcards.
Example:
hbmk2 -find wapi_*string ntos wild
! documented that hbstart.hb is first searched for in
current working directory
! ${hb_ver} and ${hb_verstr} macros now change their value
in compatibility modes (-hb10, -hb20, -hb30, -xhb)
+ -longhelpmd output will now not contain installation
specific (and potentially sensitive) data: home directory,
hbmk2 directory, only generic replacement terms
+ version= directive help text got a mention of its default
value (it was so far only mentioned next to HBMK_HAS_<hbcname>
envvar)
+ documented exit codes in help text
* minor tweaks to some help lines
* cleanup for Markdown formatting internals
* plugin callback variable "nErrorLevel" renamed to "nExitCode"
[INCOMPATIBLE]
* exit code changed to value 6 from 1 when hbrun script has
a compile error [INCOMPATIBLE]
+ use core hb_DirSepToOS() where possible
- deleted hbmk2 plugin API function hbmk_PathSepToSelf()
Use core hb_DirSepToOS() instead. [INCOMPATIBLE]
+ added '-exitstr' hbmk2 option which will display the exit result
in textual format
* contrib/hbpre.hbm
* contrib/make.hb
% use -exitstr hbmk2 option instead of rolling a local copy
of possible result strings
* src/pp/ppcore.c
+ generate '\a' '\f' '\v' escape chars
- bin/find.hb
* config/postinst.hb
* package/harbour.spec
- deleted find.hb for 'hbrun bin/find' functionality.
Replaced by 'hbmk2 -find' option.
* src/rtl/Makefile
- src/rtl/strxchg.c
+ src/rtl/strrepl.c
* src/rtl/tget.prg
* utils/hbmk2/hbmk2.prg
* include/harbour.hbx
* ChangeLog.txt
* renamed HB_STRXCHG() to HB_STRREPLACE(), according to:
https://groups.google.com/d/topic/harbour-devel/vSzlAkv6h9Y/discussion
* updated function skeleton in ChangeLog and C source
(also with new hash parameter)
* contrib/hbsqlit3/hbsqlit3.hbp
* contrib/hbsqlit3/hbsqlit3.hbx
+ contrib/hbsqlit3/errstr.prg
+ hb_sqlite3_errstr_short( <nError> ) -> <cError>
* contrib/hbsqlit3/tests/authoriz.prg
* contrib/hbsqlit3/tests/backup.prg
* contrib/hbsqlit3/tests/hooks.prg
% use hb_sqlite3_errstr_short() instead of implementing
it locally in each example
% use sqlite3_errstr() API to get long error strings instead
of reimplementing it locally
% minor opt
* contrib/hbsqlit3/hbsqlit3.hbp
- contrib/hbsqlit3/hdbcsqlt.prg
+ contrib/hbsqlit3/hdbc.prg
* renamed
* contrib/hbhpdf/errstr.prg
* contrib/hbmzip/mziperr.prg
! indenting
* contrib/hbtip/tests/tiptest.prg
* leave color
* utils/hbmk2/hbmk2.*.po
* utils/hbmk2/hbmk2.prg
! fixed most hacks around embedded newlines in hbmk2's
own output messages. Now they are handled natively,
which will fix output that contains "\n" as normal
part of the text, f.e. "C:\name\", and makes the
newlines in .po files standard.
* ChangeLog.txt
* utils/hbmk2/hbmk2.prg
! "Markdown" cased correctly
* src/rtl/strxchg.c
+ SVN props
* contrib/hbtip/httpcli.prg
* cleanups
* contrib/hbtip/httpcli.prg
+ Added: method :Put( xPostData, cQuery ).
This is identical to :Post() but issues PUT verb instead of POST.
PUT verb is required for certain RESTful operations.
* contrib/xhb/hbxml.c
! several memory leaks fixed in xhb XML support (TXml class)
; Patch by Jose F. Gimenez. Thank you very much.
* utils/hbmk2/hbmk2.prg
! fixed -request= to work again for Harbour pcode dynlibs
regression from: 2010-07-31 13:44 UTC+0200 Viktor Szakats
8fb774ef80
(sf.net's SVN web browser is effectively unusable anymore
for certain parts of Harbour, their server cannot handle
the history)
! fixed missing detection for the proper bcc linker option
that disables warning for duplicate symbols in executables
* extras/template/hbtpl.hbp
+ added example to link dynlib against other Harbour (pcode) dynlib
Disclaimer: There is no "generic support" for this,
only a set of conventions used throughout Harbour
contrib .hbc files, contrib/make.hbs and
$hb_pkg_dynlib.hbm (aka utils/hbmk2/pkg_dynl.hbm)
* extras/*/*.hbx
* refreshed
* contrib/hbformat/hbfmtcls.prg
* contrib/hbformat/utils/hbformat.ini
+ allow control for how many spaces to insert (or leave
as is) between comment markers and comment text.
Thanks to Jose F. Gimenez for the bit-perfect patch.
* src/rtl/hbstrfmt.c
* HB_STRFORMAT(): changed to not RTE if there is format
string reference to a parameter missing at runtime,
but instead simply ignore that parameter specifier.
Format strings are primarily meant to help language
translation of human readable strings. Old behavior
could result in very difficult to test or predict
runtime errors caused by typos, mistakes in translation
(.po) files. It may also be unsafe in some situations,
allowing DoS attack.
TODO: To implement parameter checking, Harbour compiler
should handle HB_STRFORMAT() as intrinsic function
and test and warn if the number of parameter specifiers
differs from the actual number of parameters passed,
at compile time. Similar to GCC/CLANG.
* contrib/hbhttpd/tests/files/main.css
* extras/hbdoc/hbdoc.css
* extras/httpsrv/home/css/base.css
* website/css/styles.css
* cleanups and applied http://csscomb.com
* src/codepage/l_sv.c
+ NOTE with Klas's explanation of the extra chars
included over the Swedish alphabet
+ 4 new characters add to the Swedish
collation as per Klas's guidance:
https://groups.google.com/d/msg/harbour-devel/13ImOaYoq8o/B-mDY708EpcJ
(and its followup)
* utils/hbmk2/hbmk2.prg
! very minor fix where -hbc= options list value
items are now trimmed from spaces.
* config/aix/gcc.mk
* config/beos/gcc.mk
* config/bsd/clang.mk
* config/bsd/gcc.mk
* config/bsd/pcc.mk
* config/cygwin/gcc.mk
* config/darwin/clang.mk
* config/darwin/gcc.mk
* config/dos/djgpp.mk
* config/global.mk
* config/hpux/gcc.mk
* config/linux/clang.mk
* config/linux/gcc.mk
* config/linux/sunpro.mk
* config/minix/ack.mk
* config/minix/clang.mk
* config/minix/gcc.mk
* config/os2/gcc.mk
* config/qnx/gcc.mk
* config/sunos/gcc.mk
* config/sunos/sunpro.mk
* config/symbian/gcc.mk
* config/vxworks/gcc.mk
* config/vxworks/global.mk
* config/wce/mingwarm.mk
* config/win/clang.mk
* config/win/mingw.mk
* utils/hbmk2/hbmk2.prg
* README.txt
* envvar renamed HB_CCPOSTFIX -> HB_CCSUFFIX
INCOMPATIBLE. (I surmise few people need this,
hence no grace period)
* contrib/hbmemio/tests/test.prg
* minor cleanup
* contrib/hbtip/popcli.prg
+ QUESTION to method that returns three different types
(of those two are indicating different errors)
+ TOFIX added to code that can RTE (due to similarly
messy solution which returns multiple type in different
cases, which is obviously not accounted for when
calling it.)
* include/harbour.hbx
* updated/cased
* contrib/hbtip/mail.prg
* format
* contrib/hbssl/hbssl.hbm
* suppressed a gazillion of warnings where Apple was
telling us that OpenSSL - as a whole - is deprecated
since OS X Lion 10.7
* src/3rd/tiff/tiff.dif
* src/3rd/tiff/tiffconf.h
! fixed a zillion warnings when compiled on OS X
* bin/3rdpatch.hb
* bin/commit.hb
* contrib/hbblink/blinker.prg
* contrib/hbxpp/runshell.prg
* utils/hbmk2/hbmk2.prg
% replaced hb_GetEnv() calls with GetEnv() where the
Harbour extension parameter was not used
* src/rtl/gete.c
! synced comment with reality
* ChangeLog.txt
+ missed one fix from prev log entry
* ChangeLog.txt
+ added encoding information to the header, which is UTF-8
from now on. It means that high chars are now allowed,
but ONLY in UTF-8 encoding. Configure your editor accordingly.
+ added SVN props for UTF-8.
* contrib/hbblink/blinker.prg
* contrib/hbxpp/runshell.prg
! RUNSHELL()/SWPRUNCMD() fixes for *nix systems.
* src/codepage/l_hu.c
* comment made bit more precise
* src/codepage/cpua866.c
+ comment added about the different from standard
Ukrainian collation
* doc/en/lang.txt
* include/hbapilng.h
* src/rtl/langapi.c
+ HB_LANGNAME() Harbour API extended to accept optional
language ID. See docs.
+ HB_LANGMESSAGE() Harbour API extended to accept 2nd parameter
as optional language ID. See docs.
+ added new C level API to retrieve a language string from
any language module (not just selected one):
const char * hb_langGetItem( const char * pszID, int iIndex );
+ extended hb_langName() C level API to be able to retrieve
name of any language modules, not just selected one:
char * hb_langName( const char * pszID );
[INCOMPATIBLE]
* hb_langDGetItem() C level API moved to 'compatibility' status
* uncrustified unattendedly
* src/codepage/l_fr.c
! fixed another typo which was result of local paste mistake
* utils/hbmk2/hbmk2.hu_HU.po
* utils/hbmk2/hbmk2.prg
+ extended the wording of -comp=/-plat= options, default behavior indicated
* tests/langapi.prg
! updated to RTE at the end and to use non-legacy language IDs
* tests/langapi.prg
* contrib/hbnf/tests/datecnfg.prg
* utils/hbtest/hbtest.prg
* minor cleanup
* harbour/contrib/hbct/ctwin.c
! fixed default translation in GETSCRUC() for control characters
* harbour/package/harbour.spec
* updated for new files in bin dir
* contrib/hbhpdf/harupdf.ch
+ sync instruction comment for developers
* contrib/xhb/xhberr.prg
! replaced very shoddy commented code dealing with memvars
with clean code (though using internal calls)
! fixed screen dump for unicode/non-unicode
* include/fileio.ch
* replaced C-specific code in a Harbour header with
non-future-proof but cross-compatible code. untested.
* src/3rd/zlib/Makefile
! potential but untested fix for msvcarm targets
* harbour/src/vm/classes.c
+ added new PRG function:
__clsGetAncestors( <nClass> ) -> { <nSupper1>, <nSupper2>, ... }
* generate RTE if someone tries to register scalar class with instance
variables.
* updated some comments
* harbour/include/hbapiitm.h
* harbour/src/vm/itemapi.c
+ added new C function hb_itemGetLX()
It's similar to hb_itemGetL() but returns HB_TRUE for
some non logical items to mimic Cl*pper behavior.
* harbour/src/rdd/workarea.c
* harbour/src/rdd/dbf1.c
! use hb_itemGetLX() instead of hb_itemGetL() in DBEVAL(),
COPY TO ..., APPEND FROM ..., SORT TO ... functions and
commands - Cl*pper compatible behavior.
* harbour/src/rdd/dbfntx/dbfntx1.c
* minor indenting
* harbour/include/fileio.ch
+ added HB_FA_ANY macro value - it's attribute mask for hb_fsFindFirst()
which includes all directory entries regardless of their attributes.
* harbour/contrib/hbct/files.c
! fixed FILEATTR() to accept by default directories, hidden and system
files when called with file name in first parameter - it's standard
CT3 behavior.
! limit attributes in mask used by FILE*() functions to standard DOS
ones - without it existing code is not portable to * nixes.
- contrib/hbhpdf/error.prg
+ contrib/hbhpdf/errstr.prg
* contrib/hbhpdf/hbhpdf.hbp
! renamed to not have the word 'error' in filename
* src/rdd/usrrdd/rdds/arrayrdd.prg
* patch by Quique:
! Fix '=' (comparative operator) in seek and scope
! Fix ADel()/AIns with 3 arguments
! Fix unlock records when change the pointer
+ Add locate
! my fixes: if() -> iif(), ending EOL, missing formatting,
copyright line
* utils/hbmk2/hbmk2.prg
+ links to markdown and markdown to man-page converter tool
! minor cleanup to prev
* utils/hbmk2/hbmk2.1
* some updates
* ChangeLog.txt
! typos/updates in previous entry
* extras/hbdoc/*.prg
* src/rtl/memoedit.prg
* tests/clasinh.prg
* tests/classch.prg
* tests/inhprob.prg
! updated for new ::super: syntax
* src/rtl/itemseri.c
! fixed typo in latest modification:
'warning: use of unary operator that may be intended as compound assignment (+=)'
* contrib/hbgd/tests/test_out.prg
* contrib/hbhttpd/*
* contrib/hbtip/thtml.prg
* contrib/xhb/*.prg
* extras/httpsrv/*
* extras/guestbk/*
* website/faq/*.html
* website/samples/HowToBuildOnLinux.html
* website/third-party.html
* some steps to modernize old HTML
* extras/hbdoc/*.prg
* do not use [] as string delimiter
- tests/function.cfm
- website/samples/function.cfm.html
* .gitattributes
- obsolete file deleted
* utils/hbmk2/hbmk2.prg
! FindInPath(): fixed for filenames with an empty
extension on *nix systems when opening hbrun scripts.
[slight chance of regression.]
! fixed to use ".\" also on non-*nix systems when using
-run option and the target doesn't have a directory.
Previously the wrong executable might have been executed
if another one with the same name existed in path.
+ detect another variant of "multiple definitions" linker option
+ detect "multiple definitions" linker message for another C compiler
+ tests/testcom1.prg
+ added com sample code posted by Przemek earlier
* contrib/hbsms/tests/send.prg
+ added Linux device name
* src/rtl/cdpdet.prg
* cleanup to local function name
* utils/hbmk2/hbmk2.prg
* code cleanup to ease adding linker message exceptions
* unused functions enclosed in '#if 0' guards
+ show warning for options that are only valid on command line
and ignored when used inside .hbp/.hbm files.
- deleted compatibility features:
- '-arch=' option (use '-platform=' instead)
Notice it will now be passed to Harbour compiler and possibly
interpreted as '-a' option, so it's better to update it _now_.
- '${hb_arch}' compatibility macro (use '${hb_platform}' instead)
- 'mt=mt' .hbc command (use 'mt=yes' instead)
* '-mwindows' and '-mconsole' legacy options will now issue
a warning with suggested replacement options (-gui/-std)
+ hbmk2 will now issue a warning if certain known low-level linker
options are used. Current list is: -Wl,--allow-multiple-definition,
-force:multiple, -w-dpl. These options are ideal if the goal
is to shoot yourself in the foot, otherwise they are not
recommended.
* contrib/hbnf/clrsel.prg
* contrib/hbnf/tests/clrsel.prg
! fixed obscure unicode issue
* utils/hbtest/rt_class.prg
* applied tests/fixcase.hb
% use new Harbour functions in Harbour-only code
* extras/httpsrv/uhttpd.prg
% use new Harbour function
* harbour/src/vm/classes.c
% small speed optimization for inline methods
+ added internal list of super classes bound with each class
% use super class list for scope checking
% use list of super classes for instance area casting
% use super class list in super destructor code - it should cause
noticeable speed improvement for releasing objects with destructors.
! few security fixes like possible GPF on wrong paramas.
* harbour/src/vm/macro.c
% use HB_P_DUPLICATE instrad of HB_P_PUSHUNREF in Field[W]Block()
functions
* harbour/src/rtl/gtwvt/gtwvt.c
! do not generate HB_K_RESIZE after SetMode() if there is no active
console window.
* harbour/include/hbstack.h
* cleaned declarations of some hb_stack*() functions - moved to internal
functions: hb_stackFree(), hb_stackInit(), hb_stackIncrease() and
hb_stackRemove()
exported: hb_stackPush(), hb_stackTopOffset() and hb_stackTotalItems()
* harbour/include/hbwmain.c
! fixed typo in argv list declaration
* harbour/utils/hbtest/rt_class.prg
+ added code to test non virtual hidden messages and super casting.
* harbour/contrib/hbmzip/mzip.c
* minor modifications in casting and parameter checking to make them
compatible with other similar core operations, i.e. FWRITE()
* contrib/hbmzip/3rd/minizip/minizip.dif
* contrib/hbmzip/3rd/minizip/zip.c
* contrib/hbmzip/mzip.c
% eliminated part of local minizip patch by using
newer API flavor and passing version_made_by value
in interface code.
* contrib/hbmzip/mzip.c
% use sizeof() instead of repeating HB_PATH_MAX
+ use larger than HB_PATH_MAX buffer to read out
filenames stored in zip file entries. (useful when
using unicode filenames which are stored in UTF-8)
+ added support for .zip unicode filename and comment
support introduced in PKZIP 6.3.2 [dated 2007] standard:
[http://www.pkware.com/documents/casestudies/APPNOTE.TXT]
hb_zipFileCreate()/hb_zipStoreFile()/hb_zipStoreFileHandle()
will now accept a new last parameter <lUnicode>,
which when .T. will force to store the filename/comment
in UTF8 in the .zip file.
hb_unzipFileInfo()/hb_unzipExtractCurrentFile()
will now honor filenames/comments stored in unicode
mode and make any necessary conversions.
; Notice that not every .zip tool support this relatively
new PKZIP format extension. Also notice that before that
extension the only officially supported codepage was
CP437 [See D.1 in Appendix D], which means no accented
chars. Whatever else CP used, the behavior becomes
application dependent and may or may not work as expected.
; Test/review/whatever
* contrib/hbmzip/tests/myunzip.prg
+ standardized date format
+ switched internally to unicode to be able to handle
unicode code to work best with unicode zips.
* contrib/hbmzip/tests/myzip.prg
+ new '--unicode' switch to enable storing filenames
in unicode by using PKZIP 6.3 .zip format and
unicode mode internally.
* harbour/include/hbapicls.h
* harbour/src/vm/classes.c
+ added new internal C function:
void hb_objCloneTo( PHB_ITEM pDest, PHB_ITEM pSource,
PHB_NESTED_CLONED pClonedList );
it copies object or clone it if class overloaded clone operation.
; TODO: add support for user defined class clone operation
* harbour/include/hbapiitm.h
* harbour/src/vm/itemapi.c
* changed returned type of hb_itemCloneTo() to void
* harbour/src/vm/itemapi.c
* use hb_objCloneTo() in hb_itemClone*() functions.
* harbour/src/vm/arrays.c
* use hb_objCloneTo() in array/hash clone code.
* harbour/src/vm/arrayshb.c
! fixed return values in AEVAL() and ACOPY() when array
is passed by reference.
* harbour/src/rtl/tclass.prg
* harbour/src/vm/classes.c
* declare :SUPER and :__SUPER messages as non virtual ones.
Now ::SUPER and ::__SUPER messages executed in object method
returns casting to 1-st super object of the class in which
executed method was defined.
* harbour/include/hbclass.ch
* removed xtranslations for SUPER(): - this workaround for
missing non virtual messages in some Clipper OOP implementations
was breaking valid code which tried to use real :SUPER message
and made SUPER reserved word, i.e. it was not possible to create
code like:
LOCAL super := ::parent2
? super:v1, super:v2
Now this hack is not longer necessary and :SUPER is non virtual
massage in Harbour.
INCOMPATIBLE: If someone has some code like:
SUPER():MSG()
SUPER( PARENT ):MSG()
then please change it to:
::SUPER:MSG()
::PARENT:MSG()
* harbour/contrib/hbmysql/tmysql.prg
* harbour/contrib/hbmysql/tsqlbrw.prg
! fixed to use ::super() instead of super()
* harbour/src/rdd/usrrdd/rdds/arrayrdd.prg
+ added GOCOLD() method - this method is necessary for WAs
passed to HB_DBDETACH()
* harbour/doc/xhb-diff.txt
* small update
* harbour/contrib/*/*.hbx
* regenerated
* harbour/src/vm/classes.c
! fixed unexpected item clearing in object item assignment when
variable is passed by reference - problem reported by Quique.
Here are code examples which could exploit the problem:
o:_var( @x )
or:
o:var := { @x }[ 1 ]
or:
o:var := iif( .t., @x, )
* harbour/src/rtl/hbcom.c
* enable RTS and DTR registers by default in MS-Windows builds.
I hope it will reduce number of pseudo "error" messages sent
by people who cannot read basic flow control documentation.
% unlock HVM when break signal is sent
* harbour/src/rtl/hbcom.c
* harbour/src/rtl/hbsocket.c
* harbour/src/rtl/filesys.c
! fixed timeval usage in repeated select() calls in systems like Linux
* harbour/contrib/hbwin/win_rpc.c
! fixed WINCE builds
* harbour/src/rtl/hbinet.c
* repeat accept operation if other thread concurently accpeted
new connection or some asynchronous network error appeared.
; TOFIX: basic hbrun functionality is broken and now it is not possible
to create scripts starting with line:
#!/usr/bin/hbrun
which do not have .hb or .prg file name extension
* utils/hbmk2/pkg_dynl.hbm
* deleted no longer true reference to GNU Make
* contrib/rddads/adsfunc.c
* contrib/rddads/rddads.hbx
+ added AdsDDCreateRefIntegrity() and AdsDDRemoveRefIntegrity()
(former looks similar to xhb version, but incompatible due
to the several necessary fixes.)
* contrib/hbrun/hbrun.hbp
! load dynamically loaded hbunix/hbwin default extensions
only on their native platforms. This avoid load warning
if the packages is completely missing on a system, so
the .hbc file isn't there, so the filter based detection
cannot work.
* contrib/xhb/regexrpl.prg
* contrib/xhb/xhb.hbx
! minor casing fix
+ contrib/xhb/tests/regexrpl.prg
+ added test from xhb (the function doesn't
seem to work)
+ tests/regex.prg
+ tests/regextst.prg
+ added regex tests from xhb
* contrib/hblzf/tests/test.prg
! typos
* package/winuni/RELNOTES.txt
* minor
* contrib/hbpost.hbm
* utils/hbmk2/pkg_dynl.hbm
* hack to avoid contrib/addon dynamic libs being used
automatically on *nix system when building executables.
Now they will be put in bin dir, just like on win.
* utils/hbmk2/hbmk2.prg
+ hbshell_include_list() API to list loaded core headers.
+ allow loading dynamic extensions on *nix even if built
against static HVM.
* display statically linked extensions in uppercase in
dot prompt UI and dynamic ones with original (lower) case.
(was normal case and postfixed with '*' respectively)
+ do not load dynamic extension if the .hbc file is not found
+ attempt to detect if dynamic extension loads fine on
a given platform and only try loading the dynamic lib
if it does.
+ added protection to not add duplicate compiler options
when compiling dot prompt entry.
* contrib/hbrun/hbrun.hbp
+ load default contrib libs dynamically on *nix, even if
hbrun is built against static HVM.
; these make work dynamic extensions on *nix systems.
* contrib/hbtip/sessid.prg
* extras/httpsrv/cgifunc.prg
* updated HTTP date format to use preferred format:
http://tools.ietf.org/html/rfc2616#section-3.3.1
% optimized code and eliminated unnecessary _SET_DATEFORMATs
; tip_DateToGMT() and its uhttpd_DateToGMT() derivative
* src/compiler/hbusage.c
* updated contributor list
* contrib/sddoci/tests/test1.prg
* contrib/sddodbc/tests/test1.prg
* contrib/sddodbc/tests/test2.prg
* contrib/sddsqlt3/tests/test1.prg
* use std way to configure date format
* contrib/hbrun/hbrun.hbp
* utils/hbmk2/hbmk2.prg
+ loading packages using ext.load, hbshell_ext_load(),
'hb_ext.ini'/'hb_extension' config files and HB_EXTENSION
envvar will now automatically load the packages'
standard headers and will properly set HBMK_HAS_* macros,
just like when running scripts or using .hbc files.
+ do not statically link contribs to hbrun when hbrun
is built dynamically. Instead, load default contribs
dynamically on startup (yes, performance will be worse.
If you don't like this, see 2012-12-03 15:17 UTC+0100).
This way these loaded packages will behave exactly the
same as any other dynamically loaded packages, f.e.
standard headers will be loaded and usable.
+ hbshell_include()/hbshell_uninclude() will now
load/unload core headers available in dot prompt.
+ 'hb.ch' core header is now loaded for scripts and dot
prompt by default. It means that K_ESC will now
return 27 and hb_gtInfo( HB_GTI_VERSION ) will work
as well, just like many other commonly used constants.
For a precise list, see the content of include/hb.ch.
If you don't like it, unload it from hbstart.hb using
hbshell_uninclude( "hb.ch" )
% use embedded headers when using the dot prompt.
* contrib/hbsms/sms.prg
* commented code cleanup
* contrib/hbxdiff/tests/test3.prg
! fixed to run as script
* contrib/hbnf/tests/dfile.prg
* contrib/hbnf/tests/pending.prg
* use CLS instead of old dBase trick
* include/Makefile
- include/hbtest.ch
* src/rtl/Makefile
- src/rtl/hbtest.prg
* utils/hbmk2/hbmk2.prg
- deleted hbtest from core.
* contrib/hbct/tests/test.prg
* contrib/hbgt/tests/test.prg
* contrib/hbmisc/tests/tsstrfmt.prg
* modified regression tests to use hbtest contrib
instead of hbtest functionality in core RTL
; Thanks to Mindaugas and Przemek, now the contrib
tests will require users to manually add 'hbtest.hbc'
to their hbmk2 cmdline in case someone would like
to build exes from them. Which means that fewer
people will bother to build and run them. They still
run simply using 'hbrun <name>.prg' as scripts.