39
36
class cmd_info(Command):
40
"""Display information about one or more modules"""
37
doc = N_('Display information about one or more modules')
43
usage_args = '[ modules ... ]'
40
usage_args = N_('[ modules ... ]')
45
43
def run(self, config, options, args):
46
44
packagedb = jhbuild.frontends.get_buildscript(config, []).packagedb
47
45
module_set = jhbuild.moduleset.load(config)
51
module = module_set.modules[modname]
53
raise FatalError('unknown module %s' % modname)
54
self.show_info(module, packagedb, module_set)
50
module = module_set.get_module(modname, ignore_case = True)
52
raise FatalError(_('unknown module %s') % modname)
53
self.show_info(module, packagedb, module_set)
55
for module in module_set.modules.values():
56
self.show_info(module, packagedb, module_set)
56
58
def show_info(self, module, packagedb, module_set):
57
if isinstance(module, MozillaModule):
58
installdate = packagedb.installdate(module.name,
59
module.get_revision() or '')
60
elif isinstance(module, AutogenModule):
61
installdate = packagedb.installdate(module.name,
62
module.branch.branchname or '')
63
elif isinstance(module, Tarball):
64
installdate = packagedb.installdate(module.name,
67
installdate = packagedb.installdate(module.name)
59
installdate = packagedb.installdate(module.name, module.get_revision() or '')
69
print 'Name:', module.name
70
print 'Type:', module.type
61
uprint(_('Name:'), module.name)
62
uprint(_('Module Set:'), module.moduleset_name)
63
uprint(_('Type:'), module.type)
72
65
if installdate is not None:
73
print 'Install-date:', time.strftime('%Y-%m-%d %H:%M:%S',
74
time.localtime(installdate))
66
uprint(_('Install date:'), time.strftime('%Y-%m-%d %H:%M:%S',
67
time.localtime(installdate)))
76
print 'Install-date:', 'not installed'
69
uprint(_('Install date:'), _('not installed'))
78
if isinstance(module, MozillaModule):
79
print 'CVS-Root:', module.repository.cvsroot
80
if module.revision is not None:
81
print 'CVS-Revision:', module.revision
83
print 'Moz-Projects:', ', '.join(module.projects)
84
elif isinstance(module, AutogenModule):
85
if isinstance(module.branch, CVSBranch):
86
print 'CVS-Root:', module.branch.repository.cvsroot
87
print 'CVS-Module:', module.branch.module
88
if module.branch.revision:
89
print 'CVS-Revision:', module.branch.revision
90
elif isinstance(module.branch, SubversionBranch):
91
print 'Subversion-Module:', module.branch.module
92
elif isinstance(module.branch, ArchBranch):
93
print 'Arch-Version:', module.branch.module
94
elif isinstance(module.branch, DarcsBranch):
95
print 'Darcs-Archive:', module.branch.module
96
elif isinstance(module.branch, GitBranch):
97
print 'Git-Module:', module.branch.module
98
elif isinstance(module.branch, TarballBranch):
99
print 'URL:', module.branch.module
100
print 'Version:', module.branch.version
102
tree_id = module.branch.tree_id()
103
print 'Tree-ID:', tree_id
104
except NotImplementedError:
106
elif isinstance(module, Tarball):
107
print 'URL:', module.source_url
108
print 'Version:', module.version
71
if isinstance(module, MetaModule):
73
elif isinstance(module.branch, CVSBranch):
74
uprint(_('CVS-Root:'), module.branch.repository.cvsroot)
75
uprint(_('CVS-Module:'), module.branch.module)
76
if module.branch.revision:
77
uprint(_('CVS-Revision:'), module.branch.revision)
78
elif isinstance(module.branch, SubversionBranch):
79
uprint(_('Subversion-Module:'), module.branch.module)
80
elif isinstance(module.branch, ArchBranch):
81
uprint(_('Arch-Version:'), module.branch.module)
82
elif isinstance(module.branch, DarcsBranch):
83
uprint(_('Darcs-Archive:'), module.branch.module)
84
elif isinstance(module.branch, GitBranch):
85
uprint(_('Git-Module:'), module.branch.module)
86
elif isinstance(module.branch, TarballBranch):
87
uprint(_('URL:'), module.branch.module)
88
uprint(_('Version:'), module.branch.version)
90
tree_id = module.branch.tree_id()
91
uprint(_('Tree-ID:'), tree_id)
92
except (NotImplementedError, AttributeError):
111
96
if module.dependencies:
112
print 'Requires:', ', '.join(module.dependencies)
97
uprint(_('Requires:'), ', '.join(module.dependencies))
113
98
requiredby = [ mod.name for mod in module_set.modules.values()
114
99
if module.name in mod.dependencies ]
116
print 'Required-by:', ', '.join(requiredby)
101
uprint(_('Required-by:'), ', '.join(requiredby))
103
uprint(_('Suggests:'), ', '.join(module.suggests))
118
print 'After:', ', '.join(module.after)
105
uprint(_('After:'), ', '.join(module.after))
119
106
before = [ mod.name for mod in module_set.modules.values()
120
107
if module.name in mod.after ]
122
print 'Before:', ', '.join(before)
109
uprint(_('Before:'), ', '.join(before))