1 |
commit: 64493ae1a1c10570ef032a5515c8fbc072b8e65a |
2 |
Author: Slava Bacherikov <slava <AT> bacher09 <DOT> org> |
3 |
AuthorDate: Tue Jun 5 20:06:25 2012 +0000 |
4 |
Commit: Slava Bacherikov <slava <AT> bacherikov <DOT> org <DOT> ua> |
5 |
CommitDate: Tue Jun 5 20:06:25 2012 +0000 |
6 |
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/gentoo-packages.git;a=commit;h=64493ae1 |
7 |
|
8 |
Add saving description from metadata |
9 |
|
10 |
--- |
11 |
gpackages/apps/packages/models.py | 3 +++ |
12 |
gpackages/libs/porttree.py | 11 +++++++++++ |
13 |
2 files changed, 14 insertions(+), 0 deletions(-) |
14 |
|
15 |
diff --git a/gpackages/apps/packages/models.py b/gpackages/apps/packages/models.py |
16 |
index fd36098..90665bd 100644 |
17 |
--- a/gpackages/apps/packages/models.py |
18 |
+++ b/gpackages/apps/packages/models.py |
19 |
@@ -146,6 +146,8 @@ class PackageModel(AbstractDateTimeModel): |
20 |
|
21 |
herds = models.ManyToManyField(HerdsModel, blank = True) |
22 |
maintainers = models.ManyToManyField(MaintainerModel, blank = True) |
23 |
+ |
24 |
+ description = models.TextField(blank = True, null = True) |
25 |
# Different versions can have different licenses, or homepages. |
26 |
|
27 |
objects = managers.PackageManager() |
28 |
@@ -183,6 +185,7 @@ class PackageModel(AbstractDateTimeModel): |
29 |
self.manifest_mtime = package.manifest_mtime |
30 |
self.manifest_hash = package.manifest_sha1 |
31 |
self.metadata_hash = package.metadata_sha1 |
32 |
+ self.description = package.description |
33 |
|
34 |
class Meta: |
35 |
unique_together = ('name', 'category') |
36 |
|
37 |
diff --git a/gpackages/libs/porttree.py b/gpackages/libs/porttree.py |
38 |
index e4a3359..fe2c9cf 100644 |
39 |
--- a/gpackages/libs/porttree.py |
40 |
+++ b/gpackages/libs/porttree.py |
41 |
@@ -223,6 +223,17 @@ class Package(ToStrMixin): |
42 |
metadata_mtime = property(_file_mtime("metadata_path")) |
43 |
|
44 |
@cached_property |
45 |
+ def descriptions(self): |
46 |
+ return self.metadata.descriptions() |
47 |
+ |
48 |
+ @property |
49 |
+ def description(self): |
50 |
+ if len(self.descriptions)>0: |
51 |
+ return self.descriptions[0] |
52 |
+ else: |
53 |
+ return None |
54 |
+ |
55 |
+ @cached_property |
56 |
def changelog(self): |
57 |
return open(self.changelog_path,'r').read() |