Hi,
The GSoC task is to rewrite tasks.py to exclusively use UDD. I was thinking
of coming up with a more specific timeline to get a clearer picture. While
going through the code - tasks.py and blendstasktools.py, I made a few
observations, which I wanted to discuss with you:
1) In tasks.py, there's a comment:
# LockBlendsTools() # logger handler not defined at this moment, needs
rethinking ... FIXME
But tasks.py calls Tasks() in blendstasktools.py which calls
LockBlendsTools(), which has logger handlers. So, is the above issue fixed ?
2) Is the additional information (descriptions and remarks) from all blends
to be added to UDD ? Or, are there only some blends whose information is to
be updated?
3) I am assuming rewriting tasks.py also involves some changes to
blendstasktools.py. I noticed a few things in blendstasktools.py, which I
feel could be improved upon:
i) In blendstasktools.py, some variable names are python keywords. I think
it is better if we use some diffrent variable names. Changing the names
here, might involve changing these names in other dependant modules also.
ii) Also, I feel that we could rewrite some portions of blendstasktools.py
using the DRY(Don't repeat yourself) principle, so that it is easier to
maintain.
iii) Do we plan on replacing svn with git finally? Or is it good this way ?
I feel it is preferable to use git, because I don't think svn handles proxy
servers very well (I faced this issue).
iv) In the class DependantPackage, there is a comment ehich says:
self.PrintedName = None # Only for Meta package names - no use for a
real dependant package
# FIXME -> object model
Can you please brief me about this?
v) Similarly, in the class TaskDependencies(), there's a comment:
# If a Blend just bases on the meta package of an other Blend (this
is the
# case in Debian Science which bases on med-bio for biology and
gis-workstation
# for geography it makes no sense to build an own sentinel page but
read
# meta package information of other meta packages and include the
content
# of these while enabling to add further Dependencies as well
#
# metadepends should be a SVN URL
#
# This is NOT YET implemented
vi) Also, in GetTaskDependencies():
# TODO: warn about possibly duplicated prospective package entries
in tasks files
Can we try implementing the above features during GSoC?
4) We can write tests to check the functionalities, instead of make minor
changes and running the code on the entire data set. It'll save alot of
time, but the issue here might be to include all possible boundary
conditions. What is your take on this ?
--
Regards,
Akshita Jha