diff options
Diffstat (limited to 'docs/gsoc')
-rw-r--r-- | docs/gsoc/final-report.txt | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/docs/gsoc/final-report.txt b/docs/gsoc/final-report.txt new file mode 100644 index 0000000..ac39867 --- /dev/null +++ b/docs/gsoc/final-report.txt @@ -0,0 +1,69 @@ +This is final report for Project Grumpy regarding Google Summer of Code + + +Now that the official 'Pencils Down' date has been reached, it is time to look +back and sum up the things that were done and what was not. + +Initial plan +============ + +The initial plan listed following deliverables: + * Database storage for ebuild metadata (done) + * Tools for gathering and managing metadata (done) + * Upstream information checks (mostly done) + * User-interface tools (mostly done) + +Project evolution +================= + +Although I had a clear plan in the beginning of the project, there were +several hurdles that forced me to make several big changes to the overall +design of the Grumpy project and for few times brought the whole project to a +complete halt. + +As my first approach was to use MongoDB's document-oriented storage engine, +devs handling Gentoo's infrastructure tasks were not too happy to support +one more database on their machines and also my mentor and other developers +who were a bit more involved with the project pointed me to several failures +with Mongo. So eventually I went with PostgreSQL using SQLAlchemy as +high-level ORM acting as middle layer between database and application. + +Now getting the data model and database working was tricky and I still believe +that there will be a lot of upcoming changes regarding the database schema. + +Unimplemented features +====================== + +The first unimplemented 'big' feature that I could not implement was the +'30-day stabilization checker'. This is hard to implement. Period. + +Secondly, the JSON-API and commandline utils for developers. This was because +I got more and more stuck with my deadline and my Grumpy backend really did +not have required features for commandline tools until it was too late. But +this will be one of the first features that will be implemented post-GSoC. + +I did not implement LDAP-authentication backend and simply went with JSON and +@gentoo.org email check. I just went with simple enough and working solution. + +I also wanted to implement Tinderbox reports support, but due to two bugs I +ran into on my desktop machine (e1000e NIC hang (kernel) and carrier detection +issue (dhcpcd)), I had to drop this idea after wasting considerable amount of +time. + +Implemented features +==================== + +Grumpy backend that handles syncing the portage contents with database and +web interface on top of it. Three QA-plugins: developer and herd checker and +upstream version bump check plugins for packages from GNOME and PyPi. + +Future plans +============ + +I really want to get Grumpy up and running using Gentoo's infra. So far I have +not had much luck dealing with infra. And of course get bug #332623 solved. + +And near future todo list regarding Grumpy itself: + * CLI tools using JSON-API + * Improve Web UI usability + * Implement tinderbox plugin which is a huge step towards better QA. |