There have been almost two weeks since my last blog post.
During this time I changed level 0 implementation after some advice, I built a
sketch for level 1 and started implementing some level 1 commands. Also I built
a doxygen documentation for project.
After sending the patchbomb to mercurial dev list, I got some reviews and new
ideas about level 0 implementation. I changed the rawcommand function to receive
the argument list that will terminate by a NULL pointer instead of counting and
passing the size of argument list.
Concerning the sketch for level 1 I got some reviews and we made an agreement on
how this level must work. We made a list of commands that I will would like to
build first (add, commit, push, pull, log, import/export, merge, verify).
One of those first commands that I already implemented is the log command which
has to handle huge mass of data. In my implementation I used an iterator-like
mechanism which gets from cmd-server a change set in one call and returns in a
structure the parsed data.
Meanwhile I started to build the doxygen documentation for a better concept
understanding. I think that it's a good way to navigate through the c-hglib API,
and an easier way to find the needed function.