aboutsummaryrefslogtreecommitdiff
path: root/docs/gsoc
diff options
context:
space:
mode:
Diffstat (limited to 'docs/gsoc')
-rw-r--r--docs/gsoc/final-report.txt69
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.