638 import-checker.py or so on their contents) |
638 import-checker.py or so on their contents) |
639 |
639 |
640 Make sure a broken uisetup doesn't globally break hg: |
640 Make sure a broken uisetup doesn't globally break hg: |
641 $ cat > $TESTTMP/baduisetup.py <<EOF |
641 $ cat > $TESTTMP/baduisetup.py <<EOF |
642 > def uisetup(ui): |
642 > def uisetup(ui): |
643 > 1/0 |
643 > 1 / 0 |
644 > EOF |
644 > EOF |
645 |
645 |
646 Even though the extension fails during uisetup, hg is still basically usable: |
646 Even though the extension fails during uisetup, hg is still basically usable: |
647 $ hg --config extensions.baduisetup=$TESTTMP/baduisetup.py version |
647 $ hg --config extensions.baduisetup=$TESTTMP/baduisetup.py version |
648 Traceback (most recent call last): |
648 Traceback (most recent call last): |
649 File "*/mercurial/extensions.py", line *, in _runuisetup (glob) |
649 File "*/mercurial/extensions.py", line *, in _runuisetup (glob) |
650 uisetup(ui) |
650 uisetup(ui) |
651 File "$TESTTMP/baduisetup.py", line 2, in uisetup |
651 File "$TESTTMP/baduisetup.py", line 2, in uisetup |
652 1/0 |
652 1 / 0 |
653 ZeroDivisionError: * by zero (glob) |
653 ZeroDivisionError: * by zero (glob) |
654 *** failed to set up extension baduisetup: * by zero (glob) |
654 *** failed to set up extension baduisetup: * by zero (glob) |
655 Mercurial Distributed SCM (version *) (glob) |
655 Mercurial Distributed SCM (version *) (glob) |
656 (see https://mercurial-scm.org for more information) |
656 (see https://mercurial-scm.org for more information) |
657 |
657 |