1 |
I posted status update on my blog: |
2 |
http://www.fubar.si/2010/7/7/gpypi2-google-summer-of-code-week-6 |
3 |
|
4 |
Plaintext version is pasted here for archiving reasons. |
5 |
|
6 |
|
7 |
************************************************************ |
8 |
|
9 |
Greetings, following is the weekly update for gpypi2 project. It's main |
10 |
purpose is to generate ebuilds from Python Package Index. Quick links to |
11 |
project info: |
12 |
* Repository, issue tracker |
13 |
* Hudson CI instance |
14 |
* Sphinx documentation generated by hudson on each commit |
15 |
* wiki/user stories for scrum development |
16 |
|
17 |
Last two weeks were crazy at university. Now I shall have time to work |
18 |
on gpypi2 full-time until the end of program. |
19 |
|
20 |
Install gpypi2 |
21 |
$ sudo pip install http://bitbucket.org/iElectric/g-pypi2/get/tip.zip |
22 |
|
23 |
or |
24 |
|
25 |
$ sudo easy_install http://bitbucket.org/iElectric/g-pypi2/get/tip.zip |
26 |
Create an ebuild |
27 |
$ sudo gpypi2 create flask |
28 |
|
29 |
* Generating ebuild: Flask 0.4 |
30 |
* Your ebuild is here: /usr/local/portage/dev-python/flask/flask-0.4.ebuild |
31 |
* Dependency needed: Werkzeug |
32 |
* Dependency needed: Jinja2 |
33 |
* Generating ebuild: Werkzeug 0.6.2 |
34 |
* Your ebuild is here: /usr/local/portage/dev-python/werkzeug/werkzeug-0.6.2.ebuild |
35 |
* Generating ebuild: Jinja2 2.5 |
36 |
* Your ebuild is here: /usr/local/portage/dev-python/jinja2/jinja2-2.5.ebuild |
37 |
* Dependency needed: Babel |
38 |
* Generating ebuild: Babel 0.9.5 |
39 |
* Your ebuild is here: /usr/local/portage/dev-python/babel/babel-0.9.5.ebuild |
40 |
|
41 |
NOTE: ebuilds will probably not function yet, features are yet to be |
42 |
completed/added. Report bugs to issue tracker. |
43 |
|
44 |
===================================================== |
45 |
Previous week (21st June - 5th July) |
46 |
===================================================== |
47 |
|
48 |
Task: Use SrcUriNamer |
49 |
gpypi2.enamer.SrcUriNamer is awaiting for quite 2 weeks now |
50 |
to be finally used. |
51 |
|
52 |
It's basically factory that generates SRC_URI and HOMEPAGE |
53 |
according to mirror provider. |
54 |
A lot of additional refactoring will be needed to Enamer to |
55 |
use this utility instead of current guessing/parsing. |
56 |
Not done. With Jesus we decided to postpone this for one of the last |
57 |
tasks, since it's not that big benefit to gpypi2 and there are more |
58 |
important details to be implemented. It's also a big blocker for good |
59 |
unittest coverage, but that shall be sorted out. |
60 |
|
61 |
|
62 |
Task: Fix bugs reported by users |
63 |
Lot of bugs are going to pop up; fix bugs, write tests and |
64 |
add documentation. |
65 |
|
66 |
None reported :( |
67 |
|
68 |
|
69 |
Task: Increase test coverage |
70 |
I'm still not satisfied with test coverage. |
71 |
I'll try to increase it a bit more. |
72 |
It's 10 days week of exams on my university, soon I will be able to put |
73 |
in more effort in implementing features. |
74 |
|
75 |
Unittest coverage is about 75%. Won't get further than that until |
76 |
SrcUriNamer is properly implemented and tested. Few additional tests can |
77 |
be made at PortageUtils, but that's a minor issue. |
78 |
|
79 |
Here is a rundown of additional changes to code: |
80 |
|
81 |
* slight improvements to documentation |
82 |
* option to choose PyPi base URL |
83 |
* changed behaviour to use XML-RPC and SETUPTOOLS/SIMPLEPAGE |
84 |
method for retrieving SRC_URI |
85 |
* updated licences dictionary mapping |
86 |
* fixed echo command to work properly (without cleanup atm) |
87 |
|
88 |
================================================= |
89 |
Upcoming week (22nd June - 28th June) |
90 |
================================================= |
91 |
|
92 |
Task: Write configuration skeleton |
93 |
Currently, gpypi2 code only takes configuration from command line. |
94 |
I'd like to extend that to config file (.ini), get data directly from setup.py |
95 |
and interactive questionaire. In order for that to function properly, |
96 |
configuration needs to be done in right sequence. |
97 |
Following week I will write down the design and implement initial working prototype. |
98 |
|
99 |
Task: sync command - populate overlay with successful ebuilds from pypi |
100 |
When I will get bored or stuck with task #1, I'll start working on command that will |
101 |
generate ebuilds from all packages in pypi to an overlay. |
102 |
|
103 |
Cheers, Domen |