So, here's the deal:
As (a couple of) you are aware, my project is to build a more advanced registry; to keep more state for installed ports and in a more structured fashion.
I have written a pretty much feature-complete sqlite3-based replacement for receipts and the filemap at this point. There is a C library that's compiled as a static lib (cregistry), which is later compiled into a Tcl module (registry2.0). There's a test case; errors are thrown in such a way that they work with try/catch.
I've also written a script to up-convert a user's existing receipts/ filemap into the new format. It's reasonably fast (and was not so before I got smarter with sqlite transactions).
The Tcl code that makes *use* of the registry has not yet been modified. So, I could commit registry2 now without screwing anything up, but I have two concerns:
* Doing so would commit my local history (12 commits, I think). CIA has the annoying habit of squaring the number of commit messages sent out in sequence, and I don't want to flood #macports with 144 commit messages.
* I don't feel there's a need to include it in 1.5.1. If someone wanted to go ahead and tag 1.5.1, that'd be great :)
I'm still working on three things before I move on to the dependency graph:
* I'm probably leaking memory like crazy. I'm currently trying to clamp down on this with `gdb` and `leaks`, but I've no previous experience with the latter. If anyone has suggestions in this category, I'd be happy to hear them (Paul mentioned TCL_MEM_DEBUG).
* Improving its speed, particularly as pertains to Eugene's usage of cregistry.
* Documentation. cregistry is largely documented, in the doxygen style, but I'm not sure of the best way to document registry2.0. I could do a manpage (but what to call it?), or more doxygen-style (but tools would confuse the C parameters of the actual functions with the Tcl parameters I'd document).
Chris
PGP.sig
Description: This is a digitally signed message part
_______________________________________________ macports-dev mailing list [email protected] http://lists.macosforge.org/mailman/listinfo/macports-dev
