author | Pierre-Yves David <pierre-yves.david@octobus.net> |
Wed, 15 Jan 2020 15:50:24 +0100 | |
changeset 44336 | 8374b69aef75 |
parent 43659 | 99e231afc29c |
child 45830 | c102b704edb5 |
permissions | -rwxr-xr-x |
0
9117c6561b0b
Add back links from file revisions to changeset revisions
mpm@selenic.com
parents:
diff
changeset
|
1 |
#!/usr/bin/env python |
9117c6561b0b
Add back links from file revisions to changeset revisions
mpm@selenic.com
parents:
diff
changeset
|
2 |
# |
1698 | 3 |
# mercurial - scalable distributed SCM |
0
9117c6561b0b
Add back links from file revisions to changeset revisions
mpm@selenic.com
parents:
diff
changeset
|
4 |
# |
4635
63b9d2deed48
Updated copyright notices and add "and others" to "hg version"
Thomas Arendsen Hein <thomas@intevation.de>
parents:
3877
diff
changeset
|
5 |
# Copyright 2005-2007 Matt Mackall <mpm@selenic.com> |
0
9117c6561b0b
Add back links from file revisions to changeset revisions
mpm@selenic.com
parents:
diff
changeset
|
6 |
# |
8225
46293a0c7e9f
updated license to be explicit about GPL version 2
Martin Geisler <mg@lazybytes.net>
parents:
7672
diff
changeset
|
7 |
# This software may be used and distributed according to the terms of the |
10263 | 8 |
# GNU General Public License version 2 or any later version. |
33896
1900381b6a6e
hg: update top-level script to use modern import conventions
Augie Fackler <raf@durin42.com>
parents:
32424
diff
changeset
|
9 |
from __future__ import absolute_import |
0
9117c6561b0b
Add back links from file revisions to changeset revisions
mpm@selenic.com
parents:
diff
changeset
|
10 |
|
12661
10da5a1f25dd
setup/hg: always load Mercurial from where it was installed.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
10263
diff
changeset
|
11 |
import os |
10da5a1f25dd
setup/hg: always load Mercurial from where it was installed.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
10263
diff
changeset
|
12 |
import sys |
10da5a1f25dd
setup/hg: always load Mercurial from where it was installed.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
10263
diff
changeset
|
13 |
|
10da5a1f25dd
setup/hg: always load Mercurial from where it was installed.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
10263
diff
changeset
|
14 |
libdir = '@LIBDIR@' |
10da5a1f25dd
setup/hg: always load Mercurial from where it was installed.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
10263
diff
changeset
|
15 |
|
10da5a1f25dd
setup/hg: always load Mercurial from where it was installed.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
10263
diff
changeset
|
16 |
if libdir != '@' 'LIBDIR' '@': |
10da5a1f25dd
setup/hg: always load Mercurial from where it was installed.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
10263
diff
changeset
|
17 |
if not os.path.isabs(libdir): |
43659
99e231afc29c
black: blacken scripts
Gregory Szorc <gregory.szorc@gmail.com>
parents:
43073
diff
changeset
|
18 |
libdir = os.path.join( |
99e231afc29c
black: blacken scripts
Gregory Szorc <gregory.szorc@gmail.com>
parents:
43073
diff
changeset
|
19 |
os.path.dirname(os.path.realpath(__file__)), libdir |
99e231afc29c
black: blacken scripts
Gregory Szorc <gregory.szorc@gmail.com>
parents:
43073
diff
changeset
|
20 |
) |
12661
10da5a1f25dd
setup/hg: always load Mercurial from where it was installed.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
10263
diff
changeset
|
21 |
libdir = os.path.abspath(libdir) |
10da5a1f25dd
setup/hg: always load Mercurial from where it was installed.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
10263
diff
changeset
|
22 |
sys.path.insert(0, libdir) |
10da5a1f25dd
setup/hg: always load Mercurial from where it was installed.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
10263
diff
changeset
|
23 |
|
39592
5e78c100a215
hg: wrap the highest layer in the `hg` script possible in trace event
Augie Fackler <augie@google.com>
parents:
34533
diff
changeset
|
24 |
from hgdemandimport import tracing |
43659
99e231afc29c
black: blacken scripts
Gregory Szorc <gregory.szorc@gmail.com>
parents:
43073
diff
changeset
|
25 |
|
39592
5e78c100a215
hg: wrap the highest layer in the `hg` script possible in trace event
Augie Fackler <augie@google.com>
parents:
34533
diff
changeset
|
26 |
with tracing.log('hg script'): |
5e78c100a215
hg: wrap the highest layer in the `hg` script possible in trace event
Augie Fackler <augie@google.com>
parents:
34533
diff
changeset
|
27 |
# enable importing on demand to reduce startup time |
5e78c100a215
hg: wrap the highest layer in the `hg` script possible in trace event
Augie Fackler <augie@google.com>
parents:
34533
diff
changeset
|
28 |
try: |
5e78c100a215
hg: wrap the highest layer in the `hg` script possible in trace event
Augie Fackler <augie@google.com>
parents:
34533
diff
changeset
|
29 |
if sys.version_info[0] < 3 or sys.version_info >= (3, 6): |
43659
99e231afc29c
black: blacken scripts
Gregory Szorc <gregory.szorc@gmail.com>
parents:
43073
diff
changeset
|
30 |
import hgdemandimport |
99e231afc29c
black: blacken scripts
Gregory Szorc <gregory.szorc@gmail.com>
parents:
43073
diff
changeset
|
31 |
|
99e231afc29c
black: blacken scripts
Gregory Szorc <gregory.szorc@gmail.com>
parents:
43073
diff
changeset
|
32 |
hgdemandimport.enable() |
39592
5e78c100a215
hg: wrap the highest layer in the `hg` script possible in trace event
Augie Fackler <augie@google.com>
parents:
34533
diff
changeset
|
33 |
except ImportError: |
43659
99e231afc29c
black: blacken scripts
Gregory Szorc <gregory.szorc@gmail.com>
parents:
43073
diff
changeset
|
34 |
sys.stderr.write( |
99e231afc29c
black: blacken scripts
Gregory Szorc <gregory.szorc@gmail.com>
parents:
43073
diff
changeset
|
35 |
"abort: couldn't find mercurial libraries in [%s]\n" |
99e231afc29c
black: blacken scripts
Gregory Szorc <gregory.szorc@gmail.com>
parents:
43073
diff
changeset
|
36 |
% ' '.join(sys.path) |
99e231afc29c
black: blacken scripts
Gregory Szorc <gregory.szorc@gmail.com>
parents:
43073
diff
changeset
|
37 |
) |
39592
5e78c100a215
hg: wrap the highest layer in the `hg` script possible in trace event
Augie Fackler <augie@google.com>
parents:
34533
diff
changeset
|
38 |
sys.stderr.write("(check your install and PYTHONPATH)\n") |
5e78c100a215
hg: wrap the highest layer in the `hg` script possible in trace event
Augie Fackler <augie@google.com>
parents:
34533
diff
changeset
|
39 |
sys.exit(-1) |
5197
55860a45bbf2
Enable demandimport only in scripts, not in importable modules (issue605)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
5178
diff
changeset
|
40 |
|
39592
5e78c100a215
hg: wrap the highest layer in the `hg` script possible in trace event
Augie Fackler <augie@google.com>
parents:
34533
diff
changeset
|
41 |
from mercurial import dispatch |
43659
99e231afc29c
black: blacken scripts
Gregory Szorc <gregory.szorc@gmail.com>
parents:
43073
diff
changeset
|
42 |
|
39592
5e78c100a215
hg: wrap the highest layer in the `hg` script possible in trace event
Augie Fackler <augie@google.com>
parents:
34533
diff
changeset
|
43 |
dispatch.run() |