[devel] Q: tailor -- что-то не то с загрузкой из Mercurial (hg) репозитариев.

Aleksey Avdeev =?iso-8859-1?q?solo_=CE=C1_solin=2Espb=2Eru?=
Пт Май 2 02:19:24 MSD 2008


Приветствую.

  Что-то не получается у меня преобразовать Mercurial`овский репозитарий
в git, используя tailor... Симптомы следующие:

$ tailor --verbose -s hg -t git --repository
http://xenbits.xensource.com/xen-2.0-testing.hg >xen.tailor
You should put the following configuration in some file, adjust it as needed
and use --configfile option with that file as argument:

$ tailor --configfile xen.tailor
22:57:12 [I] Bootstrapping "project" in "/home/solo/tailor/xen"
22:57:12 [I] /home/solo/tailor/xen $ git init-db
22:57:12 [I] [Ok]
22:57:12 [C] Checkout of project failed!
Traceback (most recent call last):
  File "/usr/bin/tailor", line 35, in ?
    main()
  File "/usr/lib/python2.4/site-packages/vcpx/tailor.py", line 338, in main
    tailorizer()
  File "/usr/lib/python2.4/site-packages/vcpx/tailor.py", line 143, in
__call__
    self.bootstrap()
  File "/usr/lib/python2.4/site-packages/vcpx/tailor.py", line 73, in
bootstrap
    actual = dwd.checkoutUpstreamRevision(revision)
  File "/usr/lib/python2.4/site-packages/vcpx/source.py", line 252, in
checkoutUpstreamRevision
    last = self._checkoutUpstreamRevision(revision)
  File "/usr/lib/python2.4/site-packages/vcpx/repository/hg.py", line
70, in _checkoutUpstreamRevision
    opts = self._defaultOpts('clone')
  File "/usr/lib/python2.4/site-packages/vcpx/repository/hg.py", line
316, in _defaultOpts
    findcmd = commands.find
AttributeError: 'module' object has no attribute 'find'

  Смотрю код hg.py:

    def _defaultOpts(self, cmd):
        # Not sure this is public. commands.parse might be, but this
        # is easier, and while dispatch is easiest, you lose ui.
        if hasattr(commands, 'findcmd'):
            if commands.findcmd.func_code.co_argcount == 1:
                findcmd = commands.findcmd
            else:
                def findcmd(cmd):
                    return commands.findcmd(self._getUI(), cmd)
        else:
            findcmd = commands.find
        return dict([(f[1].replace('-', '_'), f[2]) for f in
findcmd(cmd)[1][1]])

  Обращаю внимание на commands.find (316 строка) и commands.findcmd (выше).

  После grep`а по /usr/lib64/python2.4/site-packages/mercurial вижу что
по крайней мере findcmd присутствует у cmdutil, но никак не у
commands... Это нормально? (Или я что-то не так понял?)

-- 

С уважением. Алексей.


----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : signature.asc
Тип     : application/pgp-signature
Размер  : 544 байтов
Описание: OpenPGP digital signature
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20080502/bbb3752a/attachment-0002.bin>


Подробная информация о списке рассылки Devel