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, 29 May 2012 21:34:58
Message-Id: 1338302879.e3f7b8cb4d32e221c64ec361032d76d58a261588.bacher09@gentoo
1 commit: e3f7b8cb4d32e221c64ec361032d76d58a261588
2 Author: Slava Bacherikov <slava <AT> bacher09 <DOT> org>
3 AuthorDate: Tue May 29 14:47:59 2012 +0000
4 Commit: Slava Bacherikov <slava <AT> bacherikov <DOT> org <DOT> ua>
5 CommitDate: Tue May 29 14:47:59 2012 +0000
6 URL: http://git.overlays.gentoo.org/gitweb/?p=proj/gentoo-packages.git;a=commit;h=e3f7b8cb
7
8 Changes in keywords.
9
10 ---
11 gpackages/apps/packages/managers.py | 2 +-
12 gpackages/apps/packages/models.py | 17 ++++++++++++-----
13 gpackages/libs/porttree.py | 15 ++++++++++-----
14 3 files changed, 23 insertions(+), 11 deletions(-)
15
16 diff --git a/gpackages/apps/packages/managers.py b/gpackages/apps/packages/managers.py
17 index dd9c2cb..a9b514b 100644
18 --- a/gpackages/apps/packages/managers.py
19 +++ b/gpackages/apps/packages/managers.py
20 @@ -35,7 +35,7 @@ class KeywordMixin(object):
21 if keyword is not None:
22 if isinstance(keyword, Keyword):
23 arch, created = packages.models.ArchesModel.objects.get_or_create(name = keyword.name)
24 - kwargs.update({'arch': arch, 'is_stable': keyword.is_stable })
25 + kwargs.update({'arch': arch, 'status': keyword.status})
26 else:
27 raise ValueError("Bad keyword object")
28
29
30 diff --git a/gpackages/apps/packages/models.py b/gpackages/apps/packages/models.py
31 index 1d2fbe7..0ef5e8c 100644
32 --- a/gpackages/apps/packages/models.py
33 +++ b/gpackages/apps/packages/models.py
34 @@ -97,8 +97,8 @@ class LicensModel(models.Model):
35 class EbuildModel(models.Model):
36 package = models.ForeignKey(PackageModel)
37 #repository = models.ForeignKey(RepositoryModel)
38 - version = models.CharField(max_length = 16)
39 - revision = models.CharField(max_length = 6)
40 + version = models.CharField(max_length = 26)
41 + revision = models.CharField(max_length = 12)
42 use_flags = models.ManyToManyField(UseFlagModel)
43 licenses = models.ManyToManyField(LicensModel)
44 license = models.CharField(max_length = 254, blank = True )
45 @@ -168,14 +168,21 @@ class EbuildModel(models.Model):
46
47
48 class Keyword(models.Model):
49 + STATUS_CHOICES = (
50 + (0, 'STABLE'),
51 + (1, 'NEED TESTING'),
52 + (2, 'NOT WORK')
53 + )
54 + status_repr = ['','~','-']
55 +
56 ebuild = models.ForeignKey(EbuildModel)
57 arch = models.ForeignKey(ArchesModel)
58 - is_stable = models.BooleanField()
59 + status = models.PositiveSmallIntegerField(choices = STATUS_CHOICES)
60
61 objects = managers.KeywordManager()
62
63 def __unicode__(self):
64 - return ('' if self.is_stable else '~' ) + str(self.arch)
65 + return self.status_repr[self.status] + str(self.arch)
66
67
68 def init_by_keyword(self, keyword, ebuild):
69 @@ -184,7 +191,7 @@ class Keyword(models.Model):
70 elif isinstance(ebuild, Ebuild):
71 self.ebuild, created = EbuildModel.objects.get_or_create(ebuild = ebuild)
72 self.arch, created = ArchesModel.objects.get_or_create(name = keyword.name)
73 - self.is_stable = keyword.is_stable
74 + self.status = keyword.status
75
76 class Meta:
77 unique_together = ('ebuild', 'arch')
78
79 diff --git a/gpackages/libs/porttree.py b/gpackages/libs/porttree.py
80 index 475a642..c50b74d 100644
81 --- a/gpackages/libs/porttree.py
82 +++ b/gpackages/libs/porttree.py
83 @@ -53,15 +53,20 @@ class Use(ToStrMixin):
84
85
86 class Keyword(ToStrMixin):
87 - def __init__(self, name, is_stable = True):
88 - if name[0] == '~':
89 + status_repr = ['','~','-']
90 +
91 + def __init__(self, name, status = 0):
92 + if name.startswith('~'):
93 + name = name[1:]
94 + status = 1
95 + elif name.startswith('-'):
96 name = name[1:]
97 - is_stable = False
98 + status = 2
99 self.name = name
100 - self.is_stable = is_stable
101 + self.status = status
102
103 def __unicode__(self):
104 - return ('' if self.is_stable else '~' ) + self.name
105 + return self.status_repr[self.status] + self.name
106
107
108 class Portage(object):