Full Unicode/Ansi-Support in /testing branch
Moderators: gto, EgonHugeist, olehs
- EgonHugeist
- Zeos Project Manager
- Posts: 1936
- Joined: 31.03.2011, 22:38
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 (((((: !!! 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
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 (((((: !!! 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/
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/
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
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.
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)
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)
- EgonHugeist
- Zeos Project Manager
- Posts: 1936
- Joined: 31.03.2011, 22:38
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
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/
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/
@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
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
Ok, I had a wrong branch in SVN.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
Checked out the right one.
Encoding issues have gone.
MSSQL Blob encoding looks patched
Good job, thanks.
Checked out the wrong branch, sorry for mess.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
- EgonHugeist
- Zeos Project Manager
- Posts: 1936
- Joined: 31.03.2011, 22:38
@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
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/
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/
@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
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
- EgonHugeist
- Zeos Project Manager
- Posts: 1936
- Joined: 31.03.2011, 22:38
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..
Michael
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..
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/
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/
@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
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
- EgonHugeist
- Zeos Project Manager
- Posts: 1936
- Joined: 31.03.2011, 22:38
@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
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/
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/