And Where The New Commit System Is.
I've decided to can my efforts to make all of our commit-ty things use
a Grand Unified Abstraction Module (GAUM for short, but a completely
fictional name in either case). I found that of the 6 existing
commit-like operations, 4 of them were really simple already, and 4 of
them never touched the working copy. Yep, the same 4 in both cases.
The 2 things that touch the working copy (`svn ci` and `svn cp WC-PATH
REPOS-URL`) are the ones that aren't simple to implement, so those are
the only two that will be changed as part of this work. The other
four (`svn mkdir URL`, `svn delete URL`, `svn cp URL1 URL2`, `svn import`)
have already been converted to drive new-style editors (well, import
is still in-progress on that) and are finished, in my opinion.
As a result, my estimated time of completion has gone down a little
bit from what it would have been were I converting all 6 commit-ty
processes to this new system. Unfortunately, that estimated time of
completion will undoubtedly fall beyond the Milestone scheduled for
Friday (in part due to the svn_wc_entry_t rewrite that ate about 16
hours of my life, in part due to underestimating the size of the
change in the first place).
So where am I right now?
Well, I have a crawler in place to look for local mods, lock
administrative subdirs when mods are found, and return a list of those
mods. I have a sorting routine which transforms those results into a
URL-based depth-first list of targets. I am currently debugging the
routine that takes that list of targets and drives a temporary
printf()-bearing test editor.
I still need to:
- finish debugging that driver
- plug in the prop-delta sending stuff and text-delta sending stuff
(these will just re-use what's already in adm_crawler.c)
- divine a callback system to give the client a list of commit targets
(so it can populate a tmp $EDITOR buffer if it needs to)
- remove the tracking editor from ra_local and ra_dav, and have
someone else do revision bumping
- either modify the new crawler for `svn cp WC-PATH REPOS-URL`
support, or make a new crawler, whichever is easiest.
- test repair test repair test repair test repair ad nauseum.
As you can see, I still have a long road ahead of me. Send sympathy
cards c/o CollabNet.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Fri Mar 22 00:38:32 2002