summaryrefslogtreecommitdiffstats
path: root/command.py
diff options
context:
space:
mode:
Diffstat (limited to 'command.py')
-rw-r--r--command.py15
1 files changed, 13 insertions, 2 deletions
diff --git a/command.py b/command.py
index 96d7848f..287f4d30 100644
--- a/command.py
+++ b/command.py
@@ -136,11 +136,11 @@ class Command(object):
136 136
137 groups = mp.config.GetString('manifest.groups') 137 groups = mp.config.GetString('manifest.groups')
138 if not groups: 138 if not groups:
139 groups = 'all,-notdefault,platform-' + platform.system().lower() 139 groups = 'default,platform-' + platform.system().lower()
140 groups = [x for x in re.split(r'[,\s]+', groups) if x] 140 groups = [x for x in re.split(r'[,\s]+', groups) if x]
141 141
142 if not args: 142 if not args:
143 all_projects_list = all_projects.values() 143 all_projects_list = list(all_projects.values())
144 derived_projects = {} 144 derived_projects = {}
145 for project in all_projects_list: 145 for project in all_projects_list:
146 if submodules_ok or project.sync_s: 146 if submodules_ok or project.sync_s:
@@ -186,6 +186,17 @@ class Command(object):
186 result.sort(key=_getpath) 186 result.sort(key=_getpath)
187 return result 187 return result
188 188
189 def FindProjects(self, args):
190 result = []
191 patterns = [re.compile(r'%s' % a, re.IGNORECASE) for a in args]
192 for project in self.GetProjects(''):
193 for pattern in patterns:
194 if pattern.search(project.name) or pattern.search(project.relpath):
195 result.append(project)
196 break
197 result.sort(key=lambda project: project.relpath)
198 return result
199
189# pylint: disable=W0223 200# pylint: disable=W0223
190# Pylint warns that the `InteractiveCommand` and `PagedCommand` classes do not 201# Pylint warns that the `InteractiveCommand` and `PagedCommand` classes do not
191# override method `Execute` which is abstract in `Command`. Since that method 202# override method `Execute` which is abstract in `Command`. Since that method