* contrib/hbtip/tests/dnldftp.prg
* contrib/hbtip/tests/upld_ftp.prg
! translated output to English. At the same time removed
non-ASCII (accented) chars.
; TOFIX: extras/hbxlsxml which contains high 8-bit chars with
unspecified codepage, which got corrupted in recent
changes.
; NOTE: Please use 7-bit ASCII chars only in sources and files,
or, use UTF-8 while setting in SVN:
svn propset svn:mime-type "text/plain; charset=UTF-8"
Other codepages are not allowed in SVN, and if you need
certain high 8-bit bytes or chars, always use Chr() or
hb_BChar() to create them.
* extras/hbapollo/global.c
* extras/hbapollo/hbapollo.hbp
* extras/hbapollo/sde.c
* extras/hbapollo/sxapi.h
! deleted copied sections from sde7.h 3rd party header
! replaced _sx_SysProp() with sx_SysProp() calls. It's
most probably not valid, but couldn't find the nature
of the hack in original implementation
+ generate implibs
! added hack to make it possible to link statically to
Apollo libs
! disabled C warnings to silence formal warnings resulting
from above hack
* extras/hbapollo/tests/hbmk.hbm
! minor fix to find .hbc find no in regular location
* contrib/hbhpdf/core.c
* formatting
* contrib/hbtip/encoder.prg
* contrib/hbtip/encqp.prg
% use hb_default()
* contrib/hbtip/encqp.prg
! fixed RTE when using TIPEncoderQP class from a dynamically loaded hbtip.
It has been reported long time ago, so now I hacked a local
solution which simply removes inherition from this class,
which works around the problem. Hopefully the core can get
the fixes to allow derived classes to be used from dynamic libs
and this can be reverted. In this case only one variable was
inherited, so it was easy to do. BTW I was trying to use hb_MailAssemble()
from a script which triggered this.
TOFIX: Self contained example (tested on win/mingw):
--- hbmk2 test.hb
#require "hbtip"
PROCEDURE Main()
TIPEncoderBase64():New()
--- ->
Error BASE/3003 Cannot find super class 'TIPENCODER': __CLSINSTSUPER
Called from __CLSINSTSUPER(0)
Called from HBCLASS:CREATE(0)
Called from TIPENCODERBASE64(0)
---
* contrib/hbtip/encqp.prg
* contrib/hbtip/hbtip.hbx
+ added two new functions:
TIP_QPENCODE(), TIP_QPDECODE()
formerly only accessible via OOP code
* utils/hbmk2/hbmk2.prg
% merged FindInPath() and __hbshell_FindInPath() into one
* contrib/hbhttpd/log.prg
* contrib/hbtip/log.prg
* contrib/hbziparc/ziparc.prg
* src/rtl/hbdoc.prg
* src/rtl/hbi18n2.prg
* src/rtl/memvarhb.prg
* src/rtl/tlabel.prg
* src/rtl/treport.prg
% use HB_FNAMEEXTSETDEF() instead of manual logic.
it also fixes RTEs in hbziparc when passed non-string
filename to nearly any of its APIs.
* utils/hbi18n/hbi18n.hbp
* missed -shared enabler in .hbp
* utils/hbmk2/Makefile
* utils/hbmk2/hbmk2.hbp
+ enabled -shared build for hbmk2
* utils/hbmk2/hbmk2.prg
% consolidated .hbc finder logic
% moved 'hbmk' structure initializations to subfunctions
+ added Harbour installation autodetection for hbmk2's
runner mode. It's copy-paste code yet.
+ added automatic include path configuration in hbmk2's
runner mode. It means that now #require-d extensions
will have their include paths setup, so their header
will be found, so they can be used now.
; I more and more see it a reality to integrate hbrun
functionality into hbmk2. #require logic needs
much of hbmk2's facilities, and hbmk2 already has
basic runner capabilities. Contrib libs (and plugins)
will all have to be loaded dynamically in such case,
but since it works well, it should not be a problem.
Finally hbmk2 can be the utility that runs scripts
dynamically and also able to build an exe from them,
using the exact same source code, without any external
configuration, if the source code provides "#require"
clues. All it needs is both dynamic and static versions
of extensions (=contribs or addons).
* src/rtl/radiogrp.prg
% deleted '#include "common.ch"'
* contrib/hbtip/sessid.prg
! playing it safe: using simple IF/ENDIF instead of HB_DEFAULT()
on a multi-type variable
; NOTE: One more implication of HB_DEFAULT vs. DEFAULT ... TO ...
is that the default expression is always evaluated with
the former.
* contrib/hbziparc/ziparc.prg
! fixed for unicode in another location
% optimization to prev unicode fix
* contrib/hbtip/thtml.prg
! fixed chr() usage for unicode mode
* formatted (hbformat and manual)
% deleted excessive parantheses
* contrib/hbtip/cgi.prg
* contrib/hbtip/httpcli.prg
* contrib/hbtip/client.prg
* contrib/hbtip/tests/base64.prg
! fread()/fwrite() calls fixed for unicode
! fixed some more anomalies, like wrongly checkingg fwrite() for
negative result, calling fread() with 4 parameters, passing
buffer by reference to fwrite(), minor optimizations and formatting.
* contrib/hbtip/url.prg
* formatting
; build tested only
* contrib/hbct/getsecrt.prg
* use hb_keyCode() instead of Asc() to form numeric key value.
* contrib/hbtip/encqp.prg
! Quoted-printable encoding/decoding fixed to use FOR/NEXT
loop instead of FOR/EACH and HB_B*() string functions to
operate on binary data regardless of HVM CP.
! Fixed old typo causing no encoding for line-ending whitespaces.
* contrib/hbtip/mail.prg
! Q-encoding fixed to use FOR/NEXT
loop instead of FOR/EACH and HB_B*() string functions to
operate on binary data regardless of HVM CP
* contrib/sddpg/sddpg.hbp
* contrib/sddpg/sddpg.hbc
* contrib/hbziparc/hbziparc.hbp
* contrib/hbziparc/hbziparc.hbc
* contrib/hbhttpd/hbhttpd.hbc
* contrib/hbhttpd/hbhttpds.hbp
* contrib/hbhttpd/hbhttpds.hbc
* contrib/gtwvg/gtwvg.hbc
* contrib/gtwvg/gtwvg.hbp
* contrib/sddsqlt3/sddsqlt3.hbp
* contrib/sddsqlt3/sddsqlt3.hbc
* contrib/sddmy/sddmy.hbp
* contrib/sddmy/sddmy.hbc
* contrib/xhb/xhb.hbc
* contrib/xhb/xhb.hbp
* contrib/sddfb/sddfb.hbp
* contrib/sddfb/sddfb.hbc
* contrib/sddodbc/sddodbc.hbp
* contrib/sddodbc/sddodbc.hbc
* contrib/hbgd/hbgd.hbc
* contrib/hbgd/hbgd.hbp
* contrib/sddoci/sddoci.hbc
* contrib/sddoci/sddoci.hbp
* contrib/hbtip/hbtipssl.hbc
* contrib/hbtip/hbtipssl.hbp
* contrib/hbtip/hbtip.hbc
+ removed relative path from .hbc references from contrib area
except: hbqt related cases, which is more complicated
and hbmk.hbm files in test dirs (to avoid this extra point
of failure for now).
; path-free reference to hbc files was pioneered by hbrun
and it works on all systems (except one or two, yet to
be determined why).
* contrib/hbtip/sendmail.prg
* contrib/hbtip/smtpcli.prg
! After a conversation with Antonio Maniero (also subscriber of the
dev-list), we detected some trouble with hb_sendmail() under some
conditions:
EXIM servers refuse the HELO/EHLO greeting that doesn't conform to
RFC2821, so when one try to autenticate with username containing an @
or any other character that is not allowed in FQDNs, the server
refuses to proceed. Many SMTP servers, (EG: Google ones) are more
tolerant, so I believe that this helped the problem gets unnoticed.
The patch introduces a new parameter, preserving backward
compatibility and at the same time fixing the @ problem, even in
unmodified code that doesn't provide the extra parameter (as we
removed the cUser from the HELO string, that is causing trouble with
EXIM. Anyway, these strings would be accepted only by tolerant
servers, so the correct one should cause no problem at all).
; Patch and description by Carlos Bacco. Thank you.
* contrib/hbcuied/cu_main.prg
! do not reference SVN source tree at runtime (-icon option is enough)
BTW favicon.ico is for webpages, for apps harb_win.ico is the one
* contrib/hbtip/sendmail.prg
! if hb_SendMail() receives invalid password, mail isn't sent, but
hb_SendMail() returns .T.
Fix from Dmitry Ryzhkov via Pavel Tsarenko.
* contrib/hbtip/sendmail.prg
* contrib/hbtip/httpcli.prg
* contrib/hbtip/smtpcli.prg
* contrib/hbtip/client.prg
* contrib/hbtip/log.prg
* contrib/hbtip/ftpcli.prg
* contrib/hbtip/popcli.prg
+ allowing to pass custom tracelog filename to TIPCLIENT*:New()
% moved tracelog initialization from subclasses to TIPCLIENT class
+ added TIPLOG:Clear() method
- deleted TIPCLIENTFTP:StartCleanLogFile() and
TIPCLIENTFTP:cLogFile because they're not compatible
with the generic logging solution implemented now, ie.
they wouldn't work when using custom tracelog block and
would require additional changes into the wrong direction
to implement fully. In current form, it was also broken,
creating an RTE. For similar functionality a custom codeblock
can be used together with TIPLOG:Clear() method, and this
can be used with all TIPCLIENT* classes.
* minor formatting and renamed bTrace to xTrace
; Thanks to Klas Engwall for raising and walking through these
issues.
; Please test and tell if anything is broken
* include/extend.api
* include/harbour.hbx
* include/hbdefs.h
* include/hbapi.h
* include/hbvm.h
* include/hbapigt.h
* include/clipdefs.h
- src/pp/pplib3.c
* src/pp/Makefile
* src/vm/hvm.c
* src/rtl/hbtoken.c
* src/rtl/inkey.c
* src/rdd/usrrdd/usrrdd.c
* contrib/hbmysql/hbmysql.hbx
- contrib/hbmysql/mysqlold.c
* contrib/hbmysql/mysql.c
* contrib/hbmysql/hbmysql.hbp
* contrib/hbmysql/mysql.ch
* contrib/hbpgsql/hbpgsql.hbx
* contrib/hbpgsql/postgres.c
* contrib/hbwin/hbwin.hbp
* contrib/hbwin/hbwin.hbx
- contrib/hbwin/legacy.prg
- contrib/hbwin/legacycd.c
- contrib/hbwin/legacyco.c
- contrib/hbwin/legacycp.c
* contrib/hbodbc/hbodbc.hbx
- contrib/hbodbc/odbcold.c
* contrib/hbodbc/odbc.c
* contrib/hbodbc/hbodbc.hbp
* contrib/hbtip/utils.c
* contrib/hbtip/hbtip.hbx
* deleted things marked with HB_LEGACY_LEVEL3, finishing cleanup
job started many years ago.
; this also means that windows.h and os2.h will no longer be
included by Harbour headers, HB_OS_WIN_USED is thus ineffective,
so if someone needs these headers to access system APIs, they
should be manually included in each source file. Some old
hacks have also been removed which disabled some Clipper
compatibility macros/types in compatibility headers (clipdefs.h, *.api),
if someone uses these alongside windows.h/os2.h inclusion, it will
be broken, here the strategy is to move to Harbour types and
Harbour API headers, simply Clipper headers and newer OS headers
are not compatible.
; HB_DONT_DEFINE_BASIC_TYPES is not effective anymore.
; INKEY_RAW is no more, use HB_INKEY_RAW instead.
; NEXTKEY() hidden parameter extension is disabled. Use HB_KEYNEXT()
Harbour alternative which has it.
; Some legacy PP functions are no more.
; hb_vmPushState()/hb_vmPopState() APIs were now permanently deleted.
; __STR*() token handling legacy functions are no more, use native HB_TOKEN*()
ones instead.
; WRITEBHEADER in USRRDD is no more, WRITEDBHEADER is the replacement.
; hbmysql, hbodbc compatibilty and deprecated functions were deleted
; hbwin compatibility functions were deleted. If there is demand, mainly to
help migrating xhb users, they can be readded to xhb lib by interested
developers, now deleted code should be changed to fall back to dummies
on non-Windows builds.
; some deprecated hbpgsql functions were deleted
; hbtip HB_BASE64() is deleted. Use core HB_BASE64ENCODE() instead.
; Anyone affected by above changes has the option to stick with 3.0.x Harbour
versions or to update their source code according to above instructions
(or instructions included in past ChangeLog entries)
; Some fallouts in Harbour build is possible after these changes
- contrib/hbtip/encb64c.c
* contrib/hbtip/encb64.prg
* contrib/hbtip/hbtip.hbx
* contrib/hbtip/hbtip.hbm
% elminated redundant base64 encoder implementation, now
hbtip used the core one
+ TIP_BASE64ENCODE( <cData>, [<nLineLength>], [<cCRLF>] ) -> <nBase64Encoded>
function added to create base64 encoded data split into lines,
separated by passed EOL. default EOL is hb_eol(), if <nLineLength> is
not specced, there will be no long splitting
* src/rtl/gtwin/gtwin.c
% Replaced kbd modifier readout with a more efficient
version. It contains hack required to make core
low-level function to work correctly with win consoles.
Patch co-developed with Przemek.
* contrib/hbtip/sendmail.prg
! Implemented fix to enclose attachment filenames in
dbl quotes as suggested by George Frehner.
Pls test.
* contrib/hbtip/mail.prg
* Formatting.
* debian/control
* debian/compat
* debian/rules
- add all build-depends
- create detached debug symbol package
- various small bits
; [Tamas Tevesz]
* contrib/hbpost.hbm
* Removed soversion from dynlib name for cygwin targets.
(untested)
* contrib/hbtip/tests/httpadv.prg
* contrib/hbtip/tests/dnldftp.prg
* contrib/hbtip/tests/tipmmail.prg
* contrib/hbtip/tests/tiptest.prg
* contrib/hbtip/tests/dbtohtml.prg
* contrib/hbtip/tests/upld_ftp.prg
* contrib/hbtip/tests/tipmail.prg
* contrib/hbtip/tests/base64.prg
* contrib/hbtip/tests/ftpadv.prg
* contrib/hbtip/tests/loadhtml.prg
* contrib/hbtip/tests/tipmime.prg
! inside is one real fix (unused var in base64.prg), the rest is
generous use of hbformat + some manual editing (weed out funky chars,
reduce eye bleeding caused by comment blocks, throw away c++-style
comments, and the like).
; [Tamas Tevesz]
* contrib/hbqt/qtgui/hbqtgui.ch
* contrib/hbqt/qtgui/hbqt_init.cpp
* contrib/hbqt/qtcore/hbqt_pointer.cpp
* contrib/hbqt/qtcore/hbqt.h
* contrib/hbqt/qtcore/hbqt_hbqevents.cpp
* contrib/hbqt/qtcore/hbqt_misc.prg
* contrib/hbqt/qtcore/hbqt_init.cpp
! Fixed indentation in recent additions.
+ Added new function hbqt_create_objectFromEventType2() which
is supposed to create the object and fill PPTR in C code
(without calling back to .prg)
I didn't make any functional tests so pls do it.
+ Added mechanism to register/unregister event types with
object names.
+ QTGUI will now register its event types on init.
+ Event filter changed to look for registeres event types
and create appropriate object dynamically.
; TODO: Old code is still there, until the new one gets tested.
Please do tests.
! Fixed to pull required class wrappers for object types
associated with events.
; TOFIX: hbqt_create_object()/HBQT_CREATEQTOBJECT() is wrong
because it uses macro expansion to call object instantation,
which means _ALL_ HBQT apps now require to pull and link
every existing QT symbols to work reliably, which is
unacceptable for all apps (except HBIDE which pulls all
these anyway)
We should move to full C++ wrappers to solve this
cleanly.
; TOFIX: Clean code to never use the unsafe hbqt_create_objectFromEventType().
; TOFIX: Just a note: Raw pointers are still used in QLIST f.e.,
so even the raw pointer problem is not fully solved yet.
* contrib/hbqt/qtgui/hbqtgui.hbx
* contrib/hbqt/qtcore/hbqtcore.hbx
* Regenerated automatically.
; !!! FOR HBQT (AND ALL) DEVELOPERS: Please enable HB_REBUILD_EXTERN=yes !!!
* contrib/hbtip/sendmail.prg
+ Encode .xml attachments in base64. Response to sf.net #3192722
+ Set MIME type for .xml (text/xml)
; Pls review this.
* config/postinst.hbs
+ Create dynlib symlinks only if the dynlib was actually created
and exists. (different patch from what we've dicussed on the
list, so pls verify it)
* contrib/rddads/ads.ch
+ Added TOFIX regarding COMMIT cmd.
* contrib/hbtip/cgi.prg
! Fixed TOFIX where *nix specific temp dir was hard-wired into
multiplatform code. Pls test it.
* contrib/rddads/ads.ch
! Restored deleted ADS commands.
* contrib/hbtip/cgi.prg
* Updated from file sent to the list by Lorenzo.
I had to fix a problem which made it obvious that the
file was never even compiled in Harbour SVN tree, so
please review it. This change also makes this class
incompatible with previous version.
* doc/en/rdd.txt
* doc/en/terminal.txt
! Two typos. (sent to users's list by Alain Aupeix)
* contrib/hbtip/utils.c
* contrib/hbtip/hbtip.hbx
+ Applied update from Lorenzo:
- removed text/plain logic in magic search since this breaks css and js mimes
- removed magic check for pkzip (today many formats like ooxml and odf are zips)
- added extension mime for css, js, ods, xlsx, zip
- added TIP_JSONSPECIALCHARS()
* Formatting, cleaned error calls, variables names and scopes (also in TIP_HTMLSPECIALCHARS())
* TIP_JSONSPECIALCHARS(), TIP_HTMLSPECIALCHARS(): Changed to not RTE
when empty string is passed. Empty string will return empty string.
* config/hb_c.cfg
+ Some more settings.
* Changed to not wrap lines at column 100. It'd be great
feature, though sometimes it makes code less readable.
* contrib/gtwvg/wvgcuig.c
* contrib/gtwvg/wvgwin.c
* contrib/gtwvg/wvgutils.c
* contrib/gtwvg/wvgcore.c
* contrib/gtwvg/wvgwing.c
! Fixed formatting using uncrustify.
* contrib/gtwvg/wvggui.c
* Minor modification to make it not break when autoformatted.
* contrib/hbmisc/dates2.c
* contrib/hbtip/encurlc.c
* contrib/hbwin/win_prn2.c
% Optimized out HB_ISLOG() calls.
* contrib/hbtip/sendmail.prg
+ HB_SENDMAIL() function changed to contain only communication logic,
mail payload assembly moved to new function:
HB_MAILASSEMBLE( <cFrom>, <xTo>, <xCC>, <cBody>, <cSubject>,
<aFiles>, <nPriority>, <lRead>, <cReplyTo>,
<cCharset>, <cEncoding> ) -> <cString>
This makes it easy to convert apps to use different mail
sending backends like, f.e. hbcurl/libcurl.
This separation makes it much easier to understand what
the code does, and it makes it easier to fix/extend it.
+ config/hbc.cfg
+ Added .c source formatter config file for uncrustify source code formatter,
tailored to mimic Harbour C formatting style.
http://uncrustify.sourceforge.net/
This tool looks very promising to save manual formatting time.
(in our case it's useful for new code, existing code is mostly
quite well formatted in most parts)
; WARNING: The config is currently at experimental stage (IOW it's
not perfect), so don't use it to format any existing
Harbour source, but you may try it with your local source
which you want to submit or see how would it look in
Harbour-style.
* contrib/hbtip/url.prg
! Fixed to store passed url in :cAddress VAR.
Like with most Harbour OOP code, this simple change may
introduce hard-to-detect imcompatibility,
so check your code.
- contrib/rddbm/rddbmcdx.hbp
+ contrib/rddbm/rddbm.hbp
- contrib/rddbm/rddbmcdx.hbc
+ contrib/rddbm/rddbm.hbc
! Renamed too.
* src/codepage/cpsk852.c
* src/codepage/cpskiso.c
* src/codepage/cpskwin.c
* Trying to add digraphs. (doesn't work here, but can't find out why)
; TODO: Update Kamenicky. (can't even do it with hb_translate(),
as it's messed up the first time I edit it.
; TODO: Apply final fixes to CS CPs.
* contrib/sddoci/sddoci.hbp
+ Added support for implib creation for win x64 targets.
* package/winuni/RELNOTES
* OCILIB version update.
* contrib/rddbm/bmdbfcdx.c
* contrib/hbhttpd/core.prg
* contrib/hbhttpd/widgets.prg
* Formatting.
* contrib/hbtip/sendmail.prg
! Fixed to not add 'Bcc:' entry to e-mail headers, since this will
reveal all the supposedly secret addresses to all addressees.
It's interesting how such huge bug can persist for so long
time without anyone noticing.
Please test and correct if needed.
* contrib/sddpg/sddpg.c
+ Recognizing OIDOID column type. Patch from Aleksander Czajczynski.
* contrib/hbpgsql/postgres.c
% Minor opt.