[TransWarp] current Transwarp status and WARPCore
Phillip J. Eby
pje at telecommunity.com
Fri Oct 26 09:22:22 EDT 2001
At 01:28 PM 10/26/01 +0200, Ulrich Eck wrote:
>I follow your checkins for TW daily ;-)
>is the Database part usable right now ?
There may be bugs - I have only just begun coding and testing all this
stuff. It's usable in the sense that I have a short test script that uses
it to retrieve some LDAP and Sybase data and spit it out. Nothing else
about it is tested.
>do I need to understand the concept of WarpCORE to use it??
No. It's completely independent of WarpCORE; it's just a database
abstraction and virtualization layer at this point. If you look at the
Records module, you'll see some distinct ZPatterns influence - Storage is
akin to Rack, while Record is very similar to the attribute cache of a
DataSkin. Both, however, are minus a considerable amount of complex Zope
infrastructure hacking that's not needed here.
>As you said, WarpCORE is not a O-R-binding but a concept of
>how to write Apps that use a generalization for data-access.
>Is this right ??
>I saw from the code that your AppUtils package is needed as well,
Only if you're using the LDAPConnection object. (By the way, just to give
proper credit, the AppUtils package is 100% Ty's work IIRC.) All of the
database connections dynamically import needed non-TransWarp modules when
they are *used*. So if your app doesn't use LDAP, ldap's not imported. If
it doesn't use Gadfly or Sybase, they're not imported.
>are there any other dependencies for testing TW (except those from the wiki)??
Nope. Currently, my recommendation for doing TW tests is to put Zope 2.4's
/lib/python directory on your Python path. With that, Python 2.1, and
kjbuckets, you're pretty much set to go. At some point (after my vacation
which starts tomorrow) I intend to add unit tests for the database stuff
using Gadfly, but that's available from Zope's lib/python directory.
> > Some good news... an early form of database support is coming
> > soon. Initially, it'll just be SQL and LDAP connection objects, "Record"
> > objects, and the beginnings of a StructuralModel. When this is in place,
> > you'll be able to do the equivalent of ZPatterns SkinScript using plain
> > Python code. Transactions will also be supported, so that you can build
> > TransWarp web applications using ZLite. I hope to check in first-draft
> > (i.e. not guaranteed to compile, let alone work) versions of some of this
> > stuff later today.
>... yes please :))
Storage and Record objects now work, at least for loading data. Caching
isn't implemented, and modifications to data isn't tested. There's a
couple of missing parts to the API; e.g. I forgot to put in a way to delete
Records. :) The Record-based StructuralModel isn't started
yet. Transaction support is there in ZLite and TW, but not tested yet. (I
need to test modifications before I can test transactions!)
>I see that you work hard on extending TW these days ..
It's the pre-vacation rush factor... :)
> so can we expect a release within a certain period ??
Well, for sufficiently high values of "certain period" and sufficiently low
values of "release", yes. :) Translation: I'm not on a schedule for a TW
release. When it's ready, it's ready. I do expect to have some very
usable database code, and a production app based on it, before the end of
the year. What kind of "release" I'll make of it is unclear. I'm somewhat
uncomfortable with the state of the UML/XMI stuff, but I'm unlikely to have
time to fix it before year-end.
More information about the PEAK