view tests/test-debugextensions.t @ 26584:e28102403d1b

histedit: delete histedit statefile on any exception during abort When an user aborts a histedit, many things could go wrong. At a minimum, after a histedit abort failure, their repository should be out of that state. We've found situations where the user could not exit the histedit state without manually deleting the histedit state file. This patch ensures that if any exception happens during an abort, the histedit statefile will be deleted so that users are out of the histedit state and can at least manually get the repo back to a workable condition.
author Christian Delahousse <cdelahousse@fb.com>
date Mon, 05 Oct 2015 16:44:45 -0700
parents 1f8208a7277e
children a6573503342d
line wrap: on
line source

  $ hg debugextensions

  $ debugpath=`pwd`/extwithoutinfos.py

  $ cat > extwithoutinfos.py <<EOF
  > EOF

  $ cat >> $HGRCPATH <<EOF
  > [extensions]
  > color=
  > histedit=
  > patchbomb=
  > rebase=
  > mq=
  > ext1 = $debugpath
  > EOF

  $ hg debugextensions
  color
  ext1 (untested!)
  histedit
  mq
  patchbomb
  rebase

  $ hg debugextensions -v
  color
    location: */hgext/color.pyc (glob)
    tested with: internal
  ext1
    location: */extwithoutinfos.pyc (glob)
  histedit
    location: */hgext/histedit.pyc (glob)
    tested with: internal
  mq
    location: */hgext/mq.pyc (glob)
    tested with: internal
  patchbomb
    location: */hgext/patchbomb.pyc (glob)
    tested with: internal
  rebase
    location: */hgext/rebase.pyc (glob)
    tested with: internal

  $ hg debugextensions -Tjson | sed 's|\\\\|/|g'
  [
   {
    "buglink": "",
    "name": "color",
    "source": "*/hgext/color.pyc", (glob)
    "testedwith": "internal"
   },
   {
    "buglink": "",
    "name": "ext1",
    "source": "*/extwithoutinfos.pyc", (glob)
    "testedwith": ""
   },
   {
    "buglink": "",
    "name": "histedit",
    "source": "*/hgext/histedit.pyc", (glob)
    "testedwith": "internal"
   },
   {
    "buglink": "",
    "name": "mq",
    "source": "*/hgext/mq.pyc", (glob)
    "testedwith": "internal"
   },
   {
    "buglink": "",
    "name": "patchbomb",
    "source": "*/hgext/patchbomb.pyc", (glob)
    "testedwith": "internal"
   },
   {
    "buglink": "",
    "name": "rebase",
    "source": "*/hgext/rebase.pyc", (glob)
    "testedwith": "internal"
   }
  ]