I just committed to git a first version of blend-gen-control. This time it is able to also generates the task-description file. The command line arguments are more or less the same with the current's blend-gen-control.
Generally i tried to imitate the current's blend-gen-control functionality (eg I also included the nodepends and suppressempty flags and the hasconfig variable).
If no architecture is provided as a command line argument it works as we discussed, it generates a control(or a task description) file of each available Debian architecture: <filename>.<arch>. For the moment the generated files are saved locally under the control/ or taskdesc/ folders in the blends-gsoc project folder
I have not really made any proper testing for the moment but this is my next plan, still long way to go :-).(at first sight the files' syntax seems to be ok and the packages are printed the same way they are taken from UDD, so at least it seems to walk in the right way).
Here are some notes about the new code:
* generally the 'debug" messages are not so *convincing* (i am not quite sure if they help in case something strange happens) so I will try to fix that while I am testing.
* in order to get the Priority, Section, Enhances (if any) fields for the tasks I am using UDD table "packages" (full outer join the blends_tasks with the packages) (for example you can check the sql statement in the script in blends-gsoc/sql/taskinfo)
* In the current blend-gen-control in the "print_task_desc" function, inside the if-clause where you check if the current task in the loop if it haspackages and if the suppressempty flag in enable (lines 251-268) you check for a header "Test-always-lang". Do we have to handle something like that in the new blend-gen-control?(for the moment there is no such field in the the blends_tasks so I have not add anything similar to the code).
* In the blend_dependencies UDD table we can not disguise the alternative packages (eg package1 | package 2) so for the moment in my gen_task_desc function, which generates the task description file, I am printing/saving all the depends and recommends packages(i do not know if this is correct), current blend-gen-control takes the first which is available (of the alternatives). I need to check again that.
* finally I need to remove some code redundancy, the taskinfo(meaning the task title, description, blends_tasks fields) stays the same between architectures but in the current loop which generates multiple files(each per arch) this same query(about the task info) is getting executed multiple times(I will soon write it in a more clever way)
Also about the control file syntax discussion we had, I sent(you have probably already seen it) a mail to email@example.com
as you proposed. I am not sure if I used the proper words to describe the question :-) .
Any feedback or any hints/ideas are always more than welcome :-)