Gentoo Archives: gentoo-commits

From: Slava Bacherikov <slava@××××××××××××××.ua>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/gentoo-packages:master commit in: gpackages/apps/packages/, gpackages/libs/
Date: Tue, 05 Jun 2012 20:49:20
Message-Id: 1338926785.64493ae1a1c10570ef032a5515c8fbc072b8e65a.bacher09@gentoo
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()