hgext/convert/darcs.py
branchstable
changeset 49370 1572f790ee5e
parent 49306 2e726c934fcd
child 49371 6833ccc5e74e
equal deleted inserted replaced
49369:cf566b57107c 49370:1572f790ee5e
     6 # GNU General Public License version 2 or any later version.
     6 # GNU General Public License version 2 or any later version.
     7 
     7 
     8 import os
     8 import os
     9 import re
     9 import re
    10 import shutil
    10 import shutil
       
    11 from xml.etree.ElementTree import (
       
    12     ElementTree,
       
    13     XMLParser,
       
    14 )
    11 
    15 
    12 from mercurial.i18n import _
    16 from mercurial.i18n import _
    13 from mercurial import (
    17 from mercurial import (
    14     error,
    18     error,
    15     pycompat,
    19     pycompat,
    17 )
    21 )
    18 from mercurial.utils import dateutil
    22 from mercurial.utils import dateutil
    19 from . import common
    23 from . import common
    20 
    24 
    21 NoRepo = common.NoRepo
    25 NoRepo = common.NoRepo
    22 
       
    23 # The naming drift of ElementTree is fun!
       
    24 
       
    25 try:
       
    26     import xml.etree.cElementTree.ElementTree as ElementTree
       
    27     import xml.etree.cElementTree.XMLParser as XMLParser
       
    28 except ImportError:
       
    29     try:
       
    30         import xml.etree.ElementTree.ElementTree as ElementTree
       
    31         import xml.etree.ElementTree.XMLParser as XMLParser
       
    32     except ImportError:
       
    33         try:
       
    34             import elementtree.cElementTree.ElementTree as ElementTree
       
    35             import elementtree.cElementTree.XMLParser as XMLParser
       
    36         except ImportError:
       
    37             try:
       
    38                 import elementtree.ElementTree.ElementTree as ElementTree
       
    39                 import elementtree.ElementTree.XMLParser as XMLParser
       
    40             except ImportError:
       
    41                 pass
       
    42 
    26 
    43 
    27 
    44 class darcs_source(common.converter_source, common.commandline):
    28 class darcs_source(common.converter_source, common.commandline):
    45     def __init__(self, ui, repotype, path, revs=None):
    29     def __init__(self, ui, repotype, path, revs=None):
    46         common.converter_source.__init__(self, ui, repotype, path, revs=revs)
    30         common.converter_source.__init__(self, ui, repotype, path, revs=revs)