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

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

Post by EgonHugeist »

miab3,

i think so: http://zeos.firmos.at/viewtopic.php?p=16574#16574

did you read this article? Main speed increase is the transaktion behavior. But on my little benchmark the CAPI based one was 2 sec. faster with 100.000 inserts than the current emultated one (thinking about dropping it). Another tip: each prepare take time. So i propose you use the same TZQuery for looping selects or updates. Use another query for permanantly changing statements.

Michal, i made a define simplification for FPC. Can you check it on debian?
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: 1310
Joined: 11.05.2012, 12:32
Location: Poland

Post by miab3 »

EgonHugeist,

Zeos7.1-beta branches_ testing_R2024:
http://svn.code.sf.net/p/zeoslib/code-0 ... sting-7.1/

It compiles and runs in the D2006, D2007, DXE2 32/64/C + +, Lazarus 2.7.1 for Windows 32/64.

For D2007-C++ I get an error when compiling application:

Code: Select all

[BCC32 Error] Zplainsqlitedriver.hpp(68): E2316 'PPWideChar' is not a member of 'System'
[BCC32 Error] Zplainsqlitedriver.hpp(68): E2257 , expected
[BCC32 Error] Zplainsqlitedriver.hpp(70): E2316 'PPWideChar' is not a member of 'System'
[BCC32 Error] Zplainsqlitedriver.hpp(70): E2257 , expected
[BCC32 Error] Zplainsqlitedriver.hpp(334): E2316 'PPWideChar' is not a member of 'System'
[BCC32 Error] Zplainsqlitedriver.hpp(334): E2293 ) expected
[BCC32 Error] Zplainsqlitedriver.hpp(335): E2316 'PPWideChar' is not a member of 'System'
[BCC32 Error] Zplainsqlitedriver.hpp(335): E2293 ) expected
[BCC32 Error] Zplainsqlitedriver.hpp(424): E2316 'PPWideChar' is not a member of 'System'
[BCC32 Error] Zplainsqlitedriver.hpp(424): E2293 ) expected
[BCC32 Error] Zplainsqlitedriver.hpp(425): E2316 'PPWideChar' is not a member of 'System'
[BCC32 Error] Zplainsqlitedriver.hpp(425): E2293 ) expected
In DXE2-C++ does not have that error.

Lazaurus 2.7.1 for Linux 64 can not build a package.
But I can not determine why.
Maybe someone else with Linux to succeed explain.

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

Post by EgonHugeist »

miab3,

Ulf that's something i didn't expect. I've currenty no Laptop here.

AFAIK there is no define to check Delphi/CBuilder.

Is it possible to check in ZCompatibility.pas:

{If not defined (PPWideChar)}
PPWideChar = ^PWideChar;
{$endif}

This could handle this issue. But this also means this type has to be defined and decared before..

Btw. What do you think about this rowaccessor design?
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: 1310
Joined: 11.05.2012, 12:32
Location: Poland

Post by miab3 »

EgonHugeist,

R2025 patch does not work for me (in D2007 C++).
I added the line 93:  
PPWideChar = ^PWideChar; // M.A.
and operates.

I still can not find the cause for which Lazarus for Linux does not build the library.

For other compilers is fine.

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

Post by EgonHugeist »

miab3,

Well the PPWideChar issue can be solved if we daclare a ZPPWidechar = ^PWidechar. I'll do this tonight.

Which problems do you have on Linux? A failure List?
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: 1310
Joined: 11.05.2012, 12:32
Location: Poland

Post by miab3 »

EgonHugeist,

Zeos7.1-beta branches_ testing_R2029:
http://svn.code.sf.net/p/zeoslib/code-0 ... sting-7.1/
File ZPlainOracleConstants.pas line 796 should be:

Code: Select all

 pin_option:ub2;pin_duration:OCIDuration;lock_option:pub2;_object:pointer):sword;cdecl;
Michal
User avatar
EgonHugeist
Zeos Project Manager
Zeos Project Manager
Posts: 1936
Joined: 31.03.2011, 22:38

Post by EgonHugeist »

miab3,

huge surprice. I have exacly this code on my local working copy. R2031

What about BCB and Linux?
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: 1310
Joined: 11.05.2012, 12:32
Location: Poland

Post by miab3 »

EgonHugeist,

Oracle table AQ$_QUEUES opens in DXE2. :lol:

C++ 2007 and XE2 compiled.

Currently I do not have the possibility to register bugs in Lazarus Linux.

Michal
Zoran
Senior Boarder
Senior Boarder
Posts: 55
Joined: 07.05.2010, 22:32

Post by Zoran »

Kubuntu 12.10, Lazarus 1.1 svn rev. 39358, fpc 2.6.0, Zeos testing-7.1, rev. 2031:
/zeos/testing-7.1/src/core/ZEncoding.pas(707,31) Error: Identifier not found "WideToAnsi"
/zeos/testing-7.1/src/core/ZEncoding.pas(707,42) Error: Identifier not found "AnsiToWide"
/zeos/testing-7.1/src/core/ZEncoding.pas(712,42) Error: Identifier not found "AnsiToWide"
/zeos/testing-7.1/src/core/ZEncoding.pas(838,33) Error: Identifier not found "AnsiToWide"
/zeos/testing-7.1/src/core/ZEncoding.pas(887,29) Error: Identifier not found "AnsiToWide"
/zeos/testing-7.1/src/core/ZEncoding.pas(902) Fatal: There were 5 errors compiling module, stopping
Same error with zeos\testing (not 7.1) branch.
The error does not appear with zeos\trunk.
User avatar
EgonHugeist
Zeos Project Manager
Zeos Project Manager
Posts: 1936
Joined: 31.03.2011, 22:38

Post by EgonHugeist »

miab3,

yes i know it opens, but currently the NestedDataSets are not supported (i'm working on it for 7.1)

Zoran,

which compiler do you use? FPCC2.6?
Edit: I hope i got it. You're right. Since the LConvEncoding define was binded to the LCL define... R2033
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: 1310
Joined: 11.05.2012, 12:32
Location: Poland

Post by miab3 »

EgonHugeist,

ZEOS 7.1_R2034 installed in Lazarus in Linux Debian64 but when compiling the application gets errors

Code: Select all

/usr/lib/codetyphon/lazarus/components/pl_ZeosDBO/source/core/ZCompatibility.pas(460,49) Error: Identifier not found "AnsiToStringEx"
/usr/lib/codetyphon/lazarus/components/pl_ZeosDBO/source/core/ZCompatibility.pas(575,31) Error: Incompatible types: got "procedure UTF8Encode(const RawByteString):AnsiString;" expected "RawByteString"
/usr/lib/codetyphon/lazarus/components/pl_ZeosDBO/source/core/ZCompatibility.pas(670,43) Error: Identifier not found "StringToAnsiEx"
/usr/lib/codetyphon/lazarus/components/pl_ZeosDBO/source/core/ZCompatibility.pas(1003) Fatal: There were 3 errors compiling module, stopping
Lazarus:
http://www.pilotlogic.com/sitejoom/inde ... n-download
http://www.pilotlogic.com/codetyphon/changeslog.txt

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

Post by EgonHugeist »

miab3,

currently i've only a UMTS connection (not at home or work).

I found and fixed again a leak (second error).

But why now the function AnsiToStrEx and vice versa can't be found, i do not anderstand. These are not available if WITH_LCONVENCODING is defined. But this define should normaly be undefined if: Lazarus.inc

{$IF defined(WITH_LCONVENCODING) and (defined(MSWINDOWS) or defined(FPC_HAS_BUILTIN_WIDESTR_MANAGER))}
{$UNDEF WITH_LCONVENCODING}
{$IFEND}

can you check it please?

Zoran,

can you please check it with your FPC too?


I'll download a Lazarus for Linux this evenig (have Suse installed on a virtual box).
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: 1310
Joined: 11.05.2012, 12:32
Location: Poland

Post by miab3 »

EgonHugeist,

I was wrong.
Zeos 7.1, the current version (R2036) does not install to my Linux Lazarus environment.
I had to go back to 7.1 R2020.

Michal
Zoran
Senior Boarder
Senior Boarder
Posts: 55
Joined: 07.05.2010, 22:32

Post by Zoran »

EgonHugeist wrote:miab3,
which compiler do you use? FPCC2.6?
Yes, 2.6.0 "stable".
EgonHugeist wrote:miab3,
Zoran,

can you please check it with your FPC too?
Now (rev. 2044) testing-7.1 compiles well, but testing does not:
/zeos/testing/src/core/ZCompatibility.pas(464,45) Error: Identifier not found "AnsiToStringEx"
/zeos/testing/src/core/ZCompatibility.pas(665,39) Error: Identifier not found "StringToAnsiEx"
/zeos/testing/src/core/ZCompatibility.pas(993) Fatal: There were 2 errors compiling module, stopping
And now even zeos/trunk does not compile. There is now the error which used to be in testing-7.1 (fixed there but backported ;) ):
/zeos/trunk/src/core/ZEncoding.pas(707,31) Error: Identifier not found "WideToAnsi"
/zeos/trunk/src/core/ZEncoding.pas(707,42) Error: Identifier not found "AnsiToWide"
/zeos/trunk/src/core/ZEncoding.pas(712,42) Error: Identifier not found "AnsiToWide"
/zeos/trunk/src/core/ZEncoding.pas(838,33) Error: Identifier not found "AnsiToWide"
/zeos/trunk/src/core/ZEncoding.pas(887,29) Error: Identifier not found "AnsiToWide"
/zeos/trunk/src/core/ZEncoding.pas(902) Fatal: There were 5 errors compiling module, stopping
User avatar
EgonHugeist
Zeos Project Manager
Zeos Project Manager
Posts: 1936
Joined: 31.03.2011, 22:38

Post by EgonHugeist »

Zoran,

i don't know why the project-manager did switch back to 2012 ): on testing & trunk

Because of this i currently didn't merge the fixes to \testing.

I've tested 2044 on Linux32Bit + FPC2.6.0.

Remaining is now a Linux FPC2.7.1. Must i really download Debian, like Michal proposes? Or is there a FPC2.7.1 + Lazarus available for Linux too? I didn't find a compiled package )):
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
Locked