Full Unicode/Ansi-Support in /testing branch

The alpha/beta tester's forum for ZeosLib 7.0.x series

Report problems concerning our Delphi 2009+ version and new Zeoslib 7.0 features here.

This is a forum that will be removed once the 7.X version goes into stable!!

Moderators: gto, EgonHugeist, olehs

Locked
miab3
Zeos Test Team
Zeos Test Team
Posts: 1309
Joined: 11.05.2012, 12:32
Location: Poland

Post by miab3 »

@EgonHugeist

Michael,
Cleared up. It's a feature of Oracle :lol: . He asks about the size of each blob separately.

http://stackoverflow.com/questions/7361 ... red-inline

Handy to be able to manage fetching blob for datasets.

Michal
miab3
Zeos Test Team
Zeos Test Team
Posts: 1309
Joined: 11.05.2012, 12:32
Location: Poland

Post by miab3 »

@EgonHugeist

Zeos7eh1552 compiles and runs on D2006, DXE2 32/64, LazarusWin1.1.0/fpc 2.7.1 32/64.

Michal
User avatar
EgonHugeist
Zeos Project Manager
Zeos Project Manager
Posts: 1936
Joined: 31.03.2011, 22:38

Post by EgonHugeist »

miab3,

Michal, thank you always for responce. We had a team discussion about the future of Zeos7. All members did agree with overwriting the testing-branch. Zeos-EgonHugeist will be droppend soon. It might be possible that this happens today at 18:00 because we need also an sourceforge upgrade. ZeosEH becomes the ne official trunk two week after overwriting the testing-branch.

Then we plan BETA-STATE (((((: !!! :beta: IF not again encoding issues do popup.

To all people which ahve been patiant sooo long with Zeos7 and me personally: THANK YOU GUYS!

Michael
Best regards, Michael

You want to help? http://zeoslib.sourceforge.net/viewtopic.php?f=4&t=3671
You found a (possible) bug? Use the new bugtracker dude! http://sourceforge.net/p/zeoslib/tickets/

Image
tygrys
Junior Boarder
Junior Boarder
Posts: 33
Joined: 09.12.2005, 18:31
Location: Poland

Post by tygrys »

Hi Egon

There is a problem with ZEOS on firebird 1.5. There is no UTF8 encoding on connection, but strings are hardcoded to UTF8. Should be conditional. The problem still exists if codepage is not set to UTF8 on any other firebird version.
See line 891 ZDbcInterbase6Utils.pas
{$IFDEF DELPHI12_UP}
PlainDriver.isc_dsql_prepare(@StatusVector, TrHandle, @StmtHandle,
0, PAnsiChar(UTF8String(SQL)), Dialect, nil); <------------------------
{$ELSE}
PlainDriver.isc_dsql_prepare(@StatusVector, TrHandle, @StmtHandle,
0, PAnsiChar(SQL), Dialect, nil);
{$ENDIF}

The same problem exists in Postgresql part, also SQL string is hardcoded to utf 8. Should be done only if UTF8 codepage is set.

Last bug I found in ZDbcDbLibUtils.pas, near the end of file.
begin
TempString := TempBlob.GetString;
SetLength(Result, (2 * Length(TempString)));
BinToHex(PAnsiChar(TempString), PAnsiChar(Result), Length(TempString));
Result := '0x' + Result;
end

Here BinToHex is called on strings (unicodestring), but treated as single byte AnsiChars.
The result for blob data XYZ is 00xx00yy00zz, which is wrong somehow.

All data is from today SVN
Last edited by tygrys on 20.07.2012, 21:27, edited 1 time in total.
tygrys
Junior Boarder
Junior Boarder
Posts: 33
Joined: 09.12.2005, 18:31
Location: Poland

Post by tygrys »

To clarify: Firebird 1.5 does not support UTF8 encoding at all.

Postgresql (if not UTF8 codepage set in conection):
See ZDbcPostgreSqlUtils line 230 and 263, 311, 724, 830.

I think all {$IFDEF DELPHI12_UP} and then UTF8String(SQL) should be hunted in sources and used only if the connection encoding is set to UTF8, otherwise cast to AnsiString. (or maybe widestring if codepage say so)
User avatar
EgonHugeist
Zeos Project Manager
Zeos Project Manager
Posts: 1936
Joined: 31.03.2011, 22:38

Post by EgonHugeist »

tygrys,

Now you make me curious. I can't believe you are talking about \testing-egonhugeist.

All your proposals are implemented. Just read the first post of this thread.

I'm not sure about the MSSQL issue. But all other issues you report here are solved. Not on the trunk and not on testing but on testing-egonhugeist. So make a frech checkout and check the issues again.

Michael
Best regards, Michael

You want to help? http://zeoslib.sourceforge.net/viewtopic.php?f=4&t=3671
You found a (possible) bug? Use the new bugtracker dude! http://sourceforge.net/p/zeoslib/tickets/

Image
miab3
Zeos Test Team
Zeos Test Team
Posts: 1309
Joined: 11.05.2012, 12:32
Location: Poland

Post by miab3 »

@tygrys

This line:

BinToHex(PAnsiChar(TempString), PAnsiChar(Result), Length(TempString));

I have found only in:

zeoslib\trunk\src\dbc\ZDbcDbLibUtils.pas
zeoslib\branches\testing\src\dbc\ZDbcDbLibUtils.pas
zeoslib\tags\7.0.0-alpha\src\dbc\ZDbcDbLibUtils.pas

However, in this thread we talking about the branch:

zeoslib\branches\testing-egonhugeist\

that is to fix and replace those versions.

Michal
tygrys
Junior Boarder
Junior Boarder
Posts: 33
Joined: 09.12.2005, 18:31
Location: Poland

Post by tygrys »

EgonHugeist wrote:tygrys,

Now you make me curious. I can't believe you are talking about \testing-egonhugeist.

All your proposals are implemented. Just read the first post of this thread.

I'm not sure about the MSSQL issue. But all other issues you report here are solved. Not on the trunk and not on testing but on testing-egonhugeist. So make a frech checkout and check the issues again.

Michael
Ok, I had a wrong branch in SVN.
Checked out the right one.
Encoding issues have gone.
MSSQL Blob encoding looks patched

Good job, thanks.
tygrys
Junior Boarder
Junior Boarder
Posts: 33
Joined: 09.12.2005, 18:31
Location: Poland

Post by tygrys »

miab3 wrote:@tygrys

This line:

BinToHex(PAnsiChar(TempString), PAnsiChar(Result), Length(TempString));

I have found only in:

zeoslib\trunk\src\dbc\ZDbcDbLibUtils.pas
zeoslib\branches\testing\src\dbc\ZDbcDbLibUtils.pas
zeoslib\tags\7.0.0-alpha\src\dbc\ZDbcDbLibUtils.pas

However, in this thread we talking about the branch:

zeoslib\branches\testing-egonhugeist\

that is to fix and replace those versions.

Michal
Checked out the wrong branch, sorry for mess.
User avatar
EgonHugeist
Zeos Project Manager
Zeos Project Manager
Posts: 1936
Joined: 31.03.2011, 22:38

Post by EgonHugeist »

@tygrys,

nice to here about and for your reply! All charatersets(if system ansi compatible) are supported for all IDE's on egon. The MSSQL Blob encoding might be rigth but we are waiting for some patches of user rautgigi. I don't wanna code in files where others do work on. So be patiant or attach a patch.

@miab3,

Michal, we did it. The old branches are history now. Please go to sourceforge and checkout the overwritten testing-branch with the new urls. We had been forced from sf.net to move our reps again. Testing-Egonhugeist will be deleted or renamed(for very experimental workouts). The new testing branch is overwritten with egon files. The new trunk will be updated in two weeks. I'm sure Mark will prepare a beta preview.

Michael
Best regards, Michael

You want to help? http://zeoslib.sourceforge.net/viewtopic.php?f=4&t=3671
You found a (possible) bug? Use the new bugtracker dude! http://sourceforge.net/p/zeoslib/tickets/

Image
miab3
Zeos Test Team
Zeos Test Team
Posts: 1309
Joined: 11.05.2012, 12:32
Location: Poland

Post by miab3 »

@EgonHugeist

Except that now links on the first page in article:

"New SVN location Posted 03/01/2012, 00:32 by mdaems"

point to the outdated directories.

( It should be, for example:
http://svn.code.sf.net/p/zeoslib/code-0 ... s/testing/ )

Michal
User avatar
EgonHugeist
Zeos Project Manager
Zeos Project Manager
Posts: 1936
Joined: 31.03.2011, 22:38

Post by EgonHugeist »

miab3,

Michael, i was waiting for MDeams. I'm sure he will make an anouncement for the changes.

But i did it for you and all others.. :wink:

Michael
Best regards, Michael

You want to help? http://zeoslib.sourceforge.net/viewtopic.php?f=4&t=3671
You found a (possible) bug? Use the new bugtracker dude! http://sourceforge.net/p/zeoslib/tickets/

Image
miab3
Zeos Test Team
Zeos Test Team
Posts: 1309
Joined: 11.05.2012, 12:32
Location: Poland

Post by miab3 »

@EgonHugeist

Michael,
Was useful to a little more extensive information what is what and where and correction of editorial your topic - "Full Unicode / Ansi-Support in / testing-egonhugeist - branch".
Because people talk about the bugs in version is not changed in three years instead of the version corrected a few hours ago.

(Zeos7test1560 compiles and runs on D2006, DXE2 32/64, LazarusWin1.1.0/fpc 2.7.1 32/64)

Michal
User avatar
EgonHugeist
Zeos Project Manager
Zeos Project Manager
Posts: 1936
Joined: 31.03.2011, 22:38

Post by EgonHugeist »

@miab3,

Ok Michal i did update some small things. If we are going into Beta then the whole alpha thread will be deleted. So Andre did start a documentation and i'm planning a roadmap for the new features on \testing.

Also did i add a ClientDataSet test and a test for your proposed NestedDataset's which do all fail actually. Futter i want to add all known unclosed Mantis issues to our testsuites to know if we can close deprecated reports. Here you can help us if you want..

Michael
Best regards, Michael

You want to help? http://zeoslib.sourceforge.net/viewtopic.php?f=4&t=3671
You found a (possible) bug? Use the new bugtracker dude! http://sourceforge.net/p/zeoslib/tickets/

Image
miab3
Zeos Test Team
Zeos Test Team
Posts: 1309
Joined: 11.05.2012, 12:32
Location: Poland

Post by miab3 »

@EgonHugeist

Patch 1573 for Oracle works for D2006 and LazarusWin 1.1-32 (nested field is ignored) but for DXE2-32 generated an error on line 306 ZDbcOracleResultSet.pas when I try open the table AQ$_QUEUES:

Michal
You do not have the required permissions to view the files attached to this post.
Locked