~ubuntu-branches/ubuntu/natty/jhbuild/natty

« back to all changes in this revision

Viewing changes to jhbuild/commands/info.py

  • Committer: Bazaar Package Importer
  • Author(s): Emilio Pozuelo Monfort, Loic Minier, Emilio Pozuelo Monfort
  • Date: 2009-11-09 20:28:48 UTC
  • mfrom: (1.1.1 upstream)
  • Revision ID: james.westby@ubuntu.com-20091109202848-m9ec7dmzptqtchtj
Tags: 2.28.0-1
[ Loic Minier ]
* Cleanups.
* Ship scripts.
* Don't set GNOME_MODULE as it equals the name of the source package.

[ Emilio Pozuelo Monfort ]
* New upstream release. Closes: #524504.
  - Use 'git rev-parse' rather than 'git-rev-parse'. Closes: #544642.
* Ship install-check. Closes: #441008.
* Uploaders list regenerated. Closes: #523542, #554071.
* debian/control.in,
  debian/rules:
  - Stop shipping a copy of subprocess.py. Require python >= 2.4.
  - Switch to python-support.
* debian/control.in:
  - Bump Standards-Version to 3.8.3, no changes needed.
  - Build depend on intltool >= 0.35.0.
  - Build depend on pkg-config, gnome-doc-utils and rarian-compat to build
    the documentation.
  - Make jhbuild arch any since install-check is a binary. Depend on
    ${shlibs:Depends}.
  - Recommend, and not suggest, git-core. Also recommend mercurial.
* debian/watch:
  - Added.
* debian/patches/01_import_from_pkgdatadir.patch:
  - Added, import jhbuild from pkgdatadir if everything else fails.
    This way we can ship the jhbuild private modules in /usr/sharejhbuild.
* debian/jhbuild.docs:
  - Removed, the necessary docs are now installed by the upstream Makefile.
* debian/rules:
  - Include autotools.mk and gnome.mk.
  - Remove all the manual build process, autotools.mk does everything now.
  - Install the jhbuild modules in /usr/share/jhbuild.
* debian/install:
  - Install the modulesets and patches from here since the upstream build
    system doesn't install them.

Show diffs side-by-side

added added

removed removed

Lines of Context:
25
25
from jhbuild.errors import FatalError
26
26
from jhbuild.commands import Command, register_command
27
27
from jhbuild.modtypes import MetaModule
28
 
from jhbuild.modtypes.autotools import AutogenModule
29
 
from jhbuild.modtypes.mozillamodule import MozillaModule
30
 
from jhbuild.modtypes.tarball import Tarball
31
28
from jhbuild.versioncontrol.cvs import CVSBranch
32
29
from jhbuild.versioncontrol.svn import SubversionBranch
33
30
from jhbuild.versioncontrol.arch import ArchBranch
37
34
 
38
35
 
39
36
class cmd_info(Command):
40
 
    """Display information about one or more modules"""
 
37
    doc = N_('Display information about one or more modules')
41
38
 
42
39
    name = 'info'
43
 
    usage_args = '[ modules ... ]'
 
40
    usage_args = N_('[ modules ... ]')
 
41
 
44
42
 
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)
48
46
 
49
 
        for modname in args:
50
 
            try:
51
 
                module = module_set.modules[modname]
52
 
            except KeyError:
53
 
                raise FatalError('unknown module %s' % modname)
54
 
            self.show_info(module, packagedb, module_set)
 
47
        if args:
 
48
            for modname in args:
 
49
                try:
 
50
                    module = module_set.get_module(modname, ignore_case = True)
 
51
                except KeyError:
 
52
                    raise FatalError(_('unknown module %s') % modname)
 
53
                self.show_info(module, packagedb, module_set)
 
54
        else:
 
55
            for module in module_set.modules.values():
 
56
                self.show_info(module, packagedb, module_set)
55
57
 
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,
65
 
                                                module.version or '')
66
 
        else:
67
 
            installdate = packagedb.installdate(module.name)
 
59
        installdate = packagedb.installdate(module.name, module.get_revision() or '')
68
60
 
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)
71
64
 
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)))
75
68
        else:
76
 
            print 'Install-date:', 'not installed'
 
69
            uprint(_('Install date:'), _('not installed'))
77
70
 
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
82
 
            if module.projects:
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
101
 
            try:
102
 
                tree_id = module.branch.tree_id()
103
 
                print 'Tree-ID:', tree_id
104
 
            except NotImplementedError:
105
 
                pass
106
 
        elif isinstance(module, Tarball):
107
 
            print 'URL:', module.source_url
108
 
            print 'Version:', module.version
 
71
        if isinstance(module, MetaModule):
 
72
            pass
 
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)
 
89
        try:
 
90
            tree_id = module.branch.tree_id()
 
91
            uprint(_('Tree-ID:'), tree_id)
 
92
        except (NotImplementedError, AttributeError):
 
93
            pass
109
94
 
110
95
        # dependencies
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 ]
115
100
        if requiredby:
116
 
            print 'Required-by:', ', '.join(requiredby)
 
101
            uprint(_('Required-by:'), ', '.join(requiredby))
 
102
        if module.suggests:
 
103
            uprint(_('Suggests:'), ', '.join(module.suggests))
117
104
        if module.after:
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 ]
121
108
        if before:
122
 
            print 'Before:', ', '.join(before)
 
109
            uprint(_('Before:'), ', '.join(before))
123
110
 
124
111
        print
125
112