author | Mads Kiilerich <madski@unity3d.com> |
Sun, 27 Mar 2016 13:00:28 -0700 | |
changeset 28878 | a75c9665ef06 |
parent 28394 | dcb4209bd30d |
child 29315 | 2143266ecb65 |
permissions | -rw-r--r-- |
15168 | 1 |
# Copyright 2009-2010 Gregory P. Ward |
2 |
# Copyright 2009-2010 Intelerad Medical Systems Incorporated |
|
3 |
# Copyright 2010-2011 Fog Creek Software |
|
4 |
# Copyright 2010-2011 Unity Technologies |
|
5 |
# |
|
6 |
# This software may be used and distributed according to the terms of the |
|
7 |
# GNU General Public License version 2 or any later version. |
|
8 |
||
9 |
'''setup for largefiles extension: uisetup''' |
|
10 |
||
11 |
from mercurial import archival, cmdutil, commands, extensions, filemerge, hg, \ |
|
28878
a75c9665ef06
largefiles: introduce push --lfrev to control which revisions are pushed
Mads Kiilerich <madski@unity3d.com>
parents:
28394
diff
changeset
|
12 |
httppeer, merge, scmutil, sshpeer, wireproto, subrepo, copies, exchange |
15168 | 13 |
from mercurial.i18n import _ |
18298
3598c585e464
largefiles: remove unused proto.refuseclient code
Mads Kiilerich <madski@unity3d.com>
parents:
18144
diff
changeset
|
14 |
from mercurial.hgweb import hgweb_mod, webcommands |
15168 | 15 |
|
16 |
import overrides |
|
17 |
import proto |
|
18 |
||
19 |
def uisetup(ui): |
|
20 |
# Disable auto-status for some commands which assume that all |
|
21 |
# files in the result are under Mercurial's control |
|
22 |
||
15170
c1a4a3220711
largefiles: fix over-long lines
Matt Mackall <mpm@selenic.com>
parents:
15169
diff
changeset
|
23 |
entry = extensions.wrapcommand(commands.table, 'add', |
16247
d87d9d8a8e03
largefiles: remove use of underscores that breaks coding convention
Na'Tosha Bard <natosha@unity3d.com>
parents:
16093
diff
changeset
|
24 |
overrides.overrideadd) |
15168 | 25 |
addopt = [('', 'large', None, _('add as largefile')), |
15944
f19d5c852f9b
largefiles: add --normal option to hg add (issue3061)
Na'Tosha Bard <natosha@unity3d.com>
parents:
15674
diff
changeset
|
26 |
('', 'normal', None, _('add as normal file')), |
15627
9d7a83a42f8c
largefiles: fix indentation
Martin Geisler <mg@aragost.com>
parents:
15383
diff
changeset
|
27 |
('', 'lfsize', '', _('add all files above this size ' |
9d7a83a42f8c
largefiles: fix indentation
Martin Geisler <mg@aragost.com>
parents:
15383
diff
changeset
|
28 |
'(in megabytes) as largefiles ' |
9d7a83a42f8c
largefiles: fix indentation
Martin Geisler <mg@aragost.com>
parents:
15383
diff
changeset
|
29 |
'(default: 10)'))] |
15168 | 30 |
entry[1].extend(addopt) |
31 |
||
17658
a02c1ffddae9
largefiles: handle commit -A properly, after a --large commit (issue3542)
Matt Harbison <matt_harbison@yahoo.com>
parents:
17601
diff
changeset
|
32 |
# The scmutil function is called both by the (trivial) addremove command, |
a02c1ffddae9
largefiles: handle commit -A properly, after a --large commit (issue3542)
Matt Harbison <matt_harbison@yahoo.com>
parents:
17601
diff
changeset
|
33 |
# and in the process of handling commit -A (issue3542) |
a02c1ffddae9
largefiles: handle commit -A properly, after a --large commit (issue3542)
Matt Harbison <matt_harbison@yahoo.com>
parents:
17601
diff
changeset
|
34 |
entry = extensions.wrapfunction(scmutil, 'addremove', |
a02c1ffddae9
largefiles: handle commit -A properly, after a --large commit (issue3542)
Matt Harbison <matt_harbison@yahoo.com>
parents:
17601
diff
changeset
|
35 |
overrides.scmutiladdremove) |
23886
5ce8dcd05dc4
largefiles: enable subrepo support for add
Matt Harbison <matt_harbison@yahoo.com>
parents:
23837
diff
changeset
|
36 |
extensions.wrapfunction(cmdutil, 'add', overrides.cmdutiladd) |
23782
304e69cb1ee9
largefiles: enable subrepo support for remove
Matt Harbison <matt_harbison@yahoo.com>
parents:
23441
diff
changeset
|
37 |
extensions.wrapfunction(cmdutil, 'remove', overrides.cmdutilremove) |
23837
2b79d124a12f
largefiles: enable subrepo support for forget
Matt Harbison <matt_harbison@yahoo.com>
parents:
23782
diff
changeset
|
38 |
extensions.wrapfunction(cmdutil, 'forget', overrides.cmdutilforget) |
16515
12dabc22de77
largefiles: fix status -S reporting of subrepos (issue3231)
Matt Harbison <matt_harbison@yahoo.com>
parents:
16449
diff
changeset
|
39 |
|
24230
23438bceba04
largefiles: report the source of copied/moved largefiles in status -C
Matt Harbison <matt_harbison@yahoo.com>
parents:
23886
diff
changeset
|
40 |
extensions.wrapfunction(copies, 'pathcopies', overrides.copiespathcopies) |
23438bceba04
largefiles: report the source of copied/moved largefiles in status -C
Matt Harbison <matt_harbison@yahoo.com>
parents:
23886
diff
changeset
|
41 |
|
16515
12dabc22de77
largefiles: fix status -S reporting of subrepos (issue3231)
Matt Harbison <matt_harbison@yahoo.com>
parents:
16449
diff
changeset
|
42 |
# Subrepos call status function |
15170
c1a4a3220711
largefiles: fix over-long lines
Matt Mackall <mpm@selenic.com>
parents:
15169
diff
changeset
|
43 |
entry = extensions.wrapcommand(commands.table, 'status', |
16247
d87d9d8a8e03
largefiles: remove use of underscores that breaks coding convention
Na'Tosha Bard <natosha@unity3d.com>
parents:
16093
diff
changeset
|
44 |
overrides.overridestatus) |
21084
70252bdfd39c
largefiles: import whole modules instead of importing parts of them
Mads Kiilerich <madski@unity3d.com>
parents:
21052
diff
changeset
|
45 |
entry = extensions.wrapfunction(subrepo.hgsubrepo, 'status', |
16515
12dabc22de77
largefiles: fix status -S reporting of subrepos (issue3231)
Matt Harbison <matt_harbison@yahoo.com>
parents:
16449
diff
changeset
|
46 |
overrides.overridestatusfn) |
12dabc22de77
largefiles: fix status -S reporting of subrepos (issue3231)
Matt Harbison <matt_harbison@yahoo.com>
parents:
16449
diff
changeset
|
47 |
|
15170
c1a4a3220711
largefiles: fix over-long lines
Matt Mackall <mpm@selenic.com>
parents:
15169
diff
changeset
|
48 |
entry = extensions.wrapcommand(commands.table, 'log', |
16247
d87d9d8a8e03
largefiles: remove use of underscores that breaks coding convention
Na'Tosha Bard <natosha@unity3d.com>
parents:
16093
diff
changeset
|
49 |
overrides.overridelog) |
15168 | 50 |
entry = extensions.wrapcommand(commands.table, 'rollback', |
16247
d87d9d8a8e03
largefiles: remove use of underscores that breaks coding convention
Na'Tosha Bard <natosha@unity3d.com>
parents:
16093
diff
changeset
|
51 |
overrides.overriderollback) |
15170
c1a4a3220711
largefiles: fix over-long lines
Matt Mackall <mpm@selenic.com>
parents:
15169
diff
changeset
|
52 |
entry = extensions.wrapcommand(commands.table, 'verify', |
16247
d87d9d8a8e03
largefiles: remove use of underscores that breaks coding convention
Na'Tosha Bard <natosha@unity3d.com>
parents:
16093
diff
changeset
|
53 |
overrides.overrideverify) |
15168 | 54 |
|
18547
2e3ec9e6ee6e
largefiles: make verify --lfa and --lfc work without --large
Mads Kiilerich <madski@unity3d.com>
parents:
18459
diff
changeset
|
55 |
verifyopt = [('', 'large', None, |
2e3ec9e6ee6e
largefiles: make verify --lfa and --lfc work without --large
Mads Kiilerich <madski@unity3d.com>
parents:
18459
diff
changeset
|
56 |
_('verify that all largefiles in current revision exists')), |
15168 | 57 |
('', 'lfa', None, |
18547
2e3ec9e6ee6e
largefiles: make verify --lfa and --lfc work without --large
Mads Kiilerich <madski@unity3d.com>
parents:
18459
diff
changeset
|
58 |
_('verify largefiles in all revisions, not just current')), |
15168 | 59 |
('', 'lfc', None, |
18547
2e3ec9e6ee6e
largefiles: make verify --lfa and --lfc work without --large
Mads Kiilerich <madski@unity3d.com>
parents:
18459
diff
changeset
|
60 |
_('verify local largefile contents, not just existence'))] |
15168 | 61 |
entry[1].extend(verifyopt) |
62 |
||
18144
e16982a74bf7
largefiles: introduce basic debugstate --large functionality
Mads Kiilerich <madski@unity3d.com>
parents:
17878
diff
changeset
|
63 |
entry = extensions.wrapcommand(commands.table, 'debugstate', |
e16982a74bf7
largefiles: introduce basic debugstate --large functionality
Mads Kiilerich <madski@unity3d.com>
parents:
17878
diff
changeset
|
64 |
overrides.overridedebugstate) |
e16982a74bf7
largefiles: introduce basic debugstate --large functionality
Mads Kiilerich <madski@unity3d.com>
parents:
17878
diff
changeset
|
65 |
debugstateopt = [('', 'large', None, _('display largefiles dirstate'))] |
e16982a74bf7
largefiles: introduce basic debugstate --large functionality
Mads Kiilerich <madski@unity3d.com>
parents:
17878
diff
changeset
|
66 |
entry[1].extend(debugstateopt) |
e16982a74bf7
largefiles: introduce basic debugstate --large functionality
Mads Kiilerich <madski@unity3d.com>
parents:
17878
diff
changeset
|
67 |
|
21052
cde32cb5a565
largefiles: use "outgoinghooks" to avoid redundant outgoing check
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21048
diff
changeset
|
68 |
outgoing = lambda orgfunc, *arg, **kwargs: orgfunc(*arg, **kwargs) |
cde32cb5a565
largefiles: use "outgoinghooks" to avoid redundant outgoing check
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21048
diff
changeset
|
69 |
entry = extensions.wrapcommand(commands.table, 'outgoing', outgoing) |
15168 | 70 |
outgoingopt = [('', 'large', None, _('display outgoing largefiles'))] |
71 |
entry[1].extend(outgoingopt) |
|
21052
cde32cb5a565
largefiles: use "outgoinghooks" to avoid redundant outgoing check
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21048
diff
changeset
|
72 |
cmdutil.outgoinghooks.add('largefiles', overrides.outgoinghook) |
15170
c1a4a3220711
largefiles: fix over-long lines
Matt Mackall <mpm@selenic.com>
parents:
15169
diff
changeset
|
73 |
entry = extensions.wrapcommand(commands.table, 'summary', |
16247
d87d9d8a8e03
largefiles: remove use of underscores that breaks coding convention
Na'Tosha Bard <natosha@unity3d.com>
parents:
16093
diff
changeset
|
74 |
overrides.overridesummary) |
15168 | 75 |
summaryopt = [('', 'large', None, _('display outgoing largefiles'))] |
76 |
entry[1].extend(summaryopt) |
|
21048
ca7a57464fb3
largefiles: use "summaryremotehooks" to avoid redundant outgoing check
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
20638
diff
changeset
|
77 |
cmdutil.summaryremotehooks.add('largefiles', overrides.summaryremotehook) |
15168 | 78 |
|
15170
c1a4a3220711
largefiles: fix over-long lines
Matt Mackall <mpm@selenic.com>
parents:
15169
diff
changeset
|
79 |
entry = extensions.wrapcommand(commands.table, 'pull', |
16247
d87d9d8a8e03
largefiles: remove use of underscores that breaks coding convention
Na'Tosha Bard <natosha@unity3d.com>
parents:
16093
diff
changeset
|
80 |
overrides.overridepull) |
16692
b9969574540a
largefiles: add --all-largefiles flag to pull
Na'Tosha Bard <natosha@unity3d.com>
parents:
16644
diff
changeset
|
81 |
pullopt = [('', 'all-largefiles', None, |
18982
43cb150e74f9
largefiles: deprecate --all-largefiles for pull
Mads Kiilerich <madski@unity3d.com>
parents:
18980
diff
changeset
|
82 |
_('download all pulled versions of largefiles (DEPRECATED)')), |
18978
8abaadab9abb
largefiles: introduce pull --lfrev option
Mads Kiilerich <madski@unity3d.com>
parents:
18704
diff
changeset
|
83 |
('', 'lfrev', [], |
8abaadab9abb
largefiles: introduce pull --lfrev option
Mads Kiilerich <madski@unity3d.com>
parents:
18704
diff
changeset
|
84 |
_('download largefiles for these revisions'), _('REV'))] |
16692
b9969574540a
largefiles: add --all-largefiles flag to pull
Na'Tosha Bard <natosha@unity3d.com>
parents:
16644
diff
changeset
|
85 |
entry[1].extend(pullopt) |
18979
1176832fc757
largefiles: introduce pulled() revset expression for use in --lfrev
Mads Kiilerich <madski@unity3d.com>
parents:
18978
diff
changeset
|
86 |
|
28878
a75c9665ef06
largefiles: introduce push --lfrev to control which revisions are pushed
Mads Kiilerich <madski@unity3d.com>
parents:
28394
diff
changeset
|
87 |
entry = extensions.wrapcommand(commands.table, 'push', |
a75c9665ef06
largefiles: introduce push --lfrev to control which revisions are pushed
Mads Kiilerich <madski@unity3d.com>
parents:
28394
diff
changeset
|
88 |
overrides.overridepush) |
a75c9665ef06
largefiles: introduce push --lfrev to control which revisions are pushed
Mads Kiilerich <madski@unity3d.com>
parents:
28394
diff
changeset
|
89 |
pushopt = [('', 'lfrev', [], |
a75c9665ef06
largefiles: introduce push --lfrev to control which revisions are pushed
Mads Kiilerich <madski@unity3d.com>
parents:
28394
diff
changeset
|
90 |
_('upload largefiles for these revisions'), _('REV'))] |
a75c9665ef06
largefiles: introduce push --lfrev to control which revisions are pushed
Mads Kiilerich <madski@unity3d.com>
parents:
28394
diff
changeset
|
91 |
entry[1].extend(pushopt) |
a75c9665ef06
largefiles: introduce push --lfrev to control which revisions are pushed
Mads Kiilerich <madski@unity3d.com>
parents:
28394
diff
changeset
|
92 |
entry = extensions.wrapfunction(exchange, 'pushoperation', |
a75c9665ef06
largefiles: introduce push --lfrev to control which revisions are pushed
Mads Kiilerich <madski@unity3d.com>
parents:
28394
diff
changeset
|
93 |
overrides.exchangepushoperation) |
a75c9665ef06
largefiles: introduce push --lfrev to control which revisions are pushed
Mads Kiilerich <madski@unity3d.com>
parents:
28394
diff
changeset
|
94 |
|
16644
98a9266db803
largefiles: add --all-largefiles flag to clone (issue3188)
Na'Tosha Bard <natosha@unity3d.com>
parents:
16578
diff
changeset
|
95 |
entry = extensions.wrapcommand(commands.table, 'clone', |
98a9266db803
largefiles: add --all-largefiles flag to clone (issue3188)
Na'Tosha Bard <natosha@unity3d.com>
parents:
16578
diff
changeset
|
96 |
overrides.overrideclone) |
98a9266db803
largefiles: add --all-largefiles flag to clone (issue3188)
Na'Tosha Bard <natosha@unity3d.com>
parents:
16578
diff
changeset
|
97 |
cloneopt = [('', 'all-largefiles', None, |
98a9266db803
largefiles: add --all-largefiles flag to clone (issue3188)
Na'Tosha Bard <natosha@unity3d.com>
parents:
16578
diff
changeset
|
98 |
_('download all versions of all largefiles'))] |
17601
6e2ab601be3f
largefiles: delegate to the wrapped clone command
Matt Harbison <matt_harbison@yahoo.com>
parents:
17192
diff
changeset
|
99 |
entry[1].extend(cloneopt) |
6e2ab601be3f
largefiles: delegate to the wrapped clone command
Matt Harbison <matt_harbison@yahoo.com>
parents:
17192
diff
changeset
|
100 |
entry = extensions.wrapfunction(hg, 'clone', overrides.hgclone) |
16644
98a9266db803
largefiles: add --all-largefiles flag to clone (issue3188)
Na'Tosha Bard <natosha@unity3d.com>
parents:
16578
diff
changeset
|
101 |
|
16439
290850e7aa43
largefiles: fix cat for largefiles (issue3352)
Na'Tosha Bard <natosha@unity3d.com>
parents:
16247
diff
changeset
|
102 |
entry = extensions.wrapcommand(commands.table, 'cat', |
290850e7aa43
largefiles: fix cat for largefiles (issue3352)
Na'Tosha Bard <natosha@unity3d.com>
parents:
16247
diff
changeset
|
103 |
overrides.overridecat) |
16093
7e30f5f2285f
merge: refactor unknown file conflict checking
Matt Mackall <mpm@selenic.com>
parents:
15944
diff
changeset
|
104 |
entry = extensions.wrapfunction(merge, '_checkunknownfile', |
16247
d87d9d8a8e03
largefiles: remove use of underscores that breaks coding convention
Na'Tosha Bard <natosha@unity3d.com>
parents:
16093
diff
changeset
|
105 |
overrides.overridecheckunknownfile) |
20638
b228ad1f79d7
largefiles: override calculateupdates instead of manifestmerge
Mads Kiilerich <madski@unity3d.com>
parents:
19779
diff
changeset
|
106 |
entry = extensions.wrapfunction(merge, 'calculateupdates', |
b228ad1f79d7
largefiles: override calculateupdates instead of manifestmerge
Mads Kiilerich <madski@unity3d.com>
parents:
19779
diff
changeset
|
107 |
overrides.overridecalculateupdates) |
22196
23fe278bde43
largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21084
diff
changeset
|
108 |
entry = extensions.wrapfunction(merge, 'recordupdates', |
23fe278bde43
largefiles: keep largefiles from colliding with normal one during linear merge
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21084
diff
changeset
|
109 |
overrides.mergerecordupdates) |
22288
4e2559841d6c
largefiles: update largefiles even if rebase is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22196
diff
changeset
|
110 |
entry = extensions.wrapfunction(merge, 'update', |
4e2559841d6c
largefiles: update largefiles even if rebase is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22196
diff
changeset
|
111 |
overrides.mergeupdate) |
26605
ef21a2c41629
filemerge: add a wrapper around the filemerge function
Siddharth Agarwal <sid0@fb.com>
parents:
26417
diff
changeset
|
112 |
entry = extensions.wrapfunction(filemerge, '_filemerge', |
16247
d87d9d8a8e03
largefiles: remove use of underscores that breaks coding convention
Na'Tosha Bard <natosha@unity3d.com>
parents:
16093
diff
changeset
|
113 |
overrides.overridefilemerge) |
15170
c1a4a3220711
largefiles: fix over-long lines
Matt Mackall <mpm@selenic.com>
parents:
15169
diff
changeset
|
114 |
entry = extensions.wrapfunction(cmdutil, 'copy', |
16247
d87d9d8a8e03
largefiles: remove use of underscores that breaks coding convention
Na'Tosha Bard <natosha@unity3d.com>
parents:
16093
diff
changeset
|
115 |
overrides.overridecopy) |
15168 | 116 |
|
16516
597ddcb41b32
largefiles: notice dirty large files in a subrepo
Matt Harbison <matt_harbison@yahoo.com>
parents:
16515
diff
changeset
|
117 |
# Summary calls dirty on the subrepos |
21084
70252bdfd39c
largefiles: import whole modules instead of importing parts of them
Mads Kiilerich <madski@unity3d.com>
parents:
21052
diff
changeset
|
118 |
entry = extensions.wrapfunction(subrepo.hgsubrepo, 'dirty', |
16516
597ddcb41b32
largefiles: notice dirty large files in a subrepo
Matt Harbison <matt_harbison@yahoo.com>
parents:
16515
diff
changeset
|
119 |
overrides.overridedirty) |
597ddcb41b32
largefiles: notice dirty large files in a subrepo
Matt Harbison <matt_harbison@yahoo.com>
parents:
16515
diff
changeset
|
120 |
|
24436
66a69da9cde4
largefiles: override cmdutil.revert() instead of comands.revert()
Martin von Zweigbergk <martinvonz@google.com>
parents:
24230
diff
changeset
|
121 |
entry = extensions.wrapfunction(cmdutil, 'revert', |
16247
d87d9d8a8e03
largefiles: remove use of underscores that breaks coding convention
Na'Tosha Bard <natosha@unity3d.com>
parents:
16093
diff
changeset
|
122 |
overrides.overriderevert) |
15168 | 123 |
|
25811
7699d3212994
largefiles: allow the archiving of largefiles to be disabled
Matt Harbison <matt_harbison@yahoo.com>
parents:
24474
diff
changeset
|
124 |
extensions.wrapcommand(commands.table, 'archive', |
7699d3212994
largefiles: allow the archiving of largefiles to be disabled
Matt Harbison <matt_harbison@yahoo.com>
parents:
24474
diff
changeset
|
125 |
overrides.overridearchivecmd) |
16247
d87d9d8a8e03
largefiles: remove use of underscores that breaks coding convention
Na'Tosha Bard <natosha@unity3d.com>
parents:
16093
diff
changeset
|
126 |
extensions.wrapfunction(archival, 'archive', overrides.overridearchive) |
21084
70252bdfd39c
largefiles: import whole modules instead of importing parts of them
Mads Kiilerich <madski@unity3d.com>
parents:
21052
diff
changeset
|
127 |
extensions.wrapfunction(subrepo.hgsubrepo, 'archive', |
70252bdfd39c
largefiles: import whole modules instead of importing parts of them
Mads Kiilerich <madski@unity3d.com>
parents:
21052
diff
changeset
|
128 |
overrides.hgsubrepoarchive) |
26417
9a466b9f9792
largefiles: restore archiving largefiles with hgweb (issue4859)
Matt Harbison <matt_harbison@yahoo.com>
parents:
25811
diff
changeset
|
129 |
extensions.wrapfunction(webcommands, 'archive', |
9a466b9f9792
largefiles: restore archiving largefiles with hgweb (issue4859)
Matt Harbison <matt_harbison@yahoo.com>
parents:
25811
diff
changeset
|
130 |
overrides.hgwebarchive) |
15349
63455eb771af
largefiles: drop more unnecessary compatibility checks
Greg Ward <greg@gerg.ca>
parents:
15295
diff
changeset
|
131 |
extensions.wrapfunction(cmdutil, 'bailifchanged', |
16247
d87d9d8a8e03
largefiles: remove use of underscores that breaks coding convention
Na'Tosha Bard <natosha@unity3d.com>
parents:
16093
diff
changeset
|
132 |
overrides.overridebailifchanged) |
15168 | 133 |
|
27944
4511e8dac4c7
largefiles: report the missing file count after a commit that does nothing
Matt Harbison <matt_harbison@yahoo.com>
parents:
27586
diff
changeset
|
134 |
extensions.wrapfunction(cmdutil, 'postcommitstatus', |
4511e8dac4c7
largefiles: report the missing file count after a commit that does nothing
Matt Harbison <matt_harbison@yahoo.com>
parents:
27586
diff
changeset
|
135 |
overrides.postcommitstatus) |
22289
e26df4e774f6
largefiles: update largefiles even if transplant is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22288
diff
changeset
|
136 |
extensions.wrapfunction(scmutil, 'marktouched', |
e26df4e774f6
largefiles: update largefiles even if transplant is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22288
diff
changeset
|
137 |
overrides.scmutilmarktouched) |
e26df4e774f6
largefiles: update largefiles even if transplant is aborted by conflict
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22288
diff
changeset
|
138 |
|
15168 | 139 |
# create the new wireproto commands ... |
140 |
wireproto.commands['putlfile'] = (proto.putlfile, 'sha') |
|
141 |
wireproto.commands['getlfile'] = (proto.getlfile, 'sha') |
|
142 |
wireproto.commands['statlfile'] = (proto.statlfile, 'sha') |
|
143 |
||
144 |
# ... and wrap some existing ones |
|
145 |
wireproto.commands['capabilities'] = (proto.capabilities, '') |
|
146 |
wireproto.commands['heads'] = (proto.heads, '') |
|
147 |
wireproto.commands['lheads'] = (wireproto.heads, '') |
|
148 |
||
15254
dd03d3a9f888
largefiles: more work on cleaning up comments
Greg Ward <greg@gerg.ca>
parents:
15252
diff
changeset
|
149 |
# make putlfile behave the same as push and {get,stat}lfile behave |
dd03d3a9f888
largefiles: more work on cleaning up comments
Greg Ward <greg@gerg.ca>
parents:
15252
diff
changeset
|
150 |
# the same as pull w.r.t. permissions checks |
15168 | 151 |
hgweb_mod.perms['putlfile'] = 'push' |
152 |
hgweb_mod.perms['getlfile'] = 'pull' |
|
153 |
hgweb_mod.perms['statlfile'] = 'pull' |
|
154 |
||
16449
874a680a3e23
largefiles: hide .hglf/ prefix for largefiles in hgweb
Martin Geisler <mg@lazybytes.net>
parents:
16439
diff
changeset
|
155 |
extensions.wrapfunction(webcommands, 'decodepath', overrides.decodepath) |
874a680a3e23
largefiles: hide .hglf/ prefix for largefiles in hgweb
Martin Geisler <mg@lazybytes.net>
parents:
16439
diff
changeset
|
156 |
|
15168 | 157 |
# the hello wireproto command uses wireproto.capabilities, so it won't see |
158 |
# our largefiles capability unless we replace the actual function as well. |
|
16247
d87d9d8a8e03
largefiles: remove use of underscores that breaks coding convention
Na'Tosha Bard <natosha@unity3d.com>
parents:
16093
diff
changeset
|
159 |
proto.capabilitiesorig = wireproto.capabilities |
15168 | 160 |
wireproto.capabilities = proto.capabilities |
161 |
||
162 |
# can't do this in reposetup because it needs to have happened before |
|
163 |
# wirerepo.__init__ is called |
|
17192
1ac628cd7113
peer: introduce real peer classes
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
16692
diff
changeset
|
164 |
proto.ssholdcallstream = sshpeer.sshpeer._callstream |
1ac628cd7113
peer: introduce real peer classes
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
16692
diff
changeset
|
165 |
proto.httpoldcallstream = httppeer.httppeer._callstream |
1ac628cd7113
peer: introduce real peer classes
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
16692
diff
changeset
|
166 |
sshpeer.sshpeer._callstream = proto.sshrepocallstream |
1ac628cd7113
peer: introduce real peer classes
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
16692
diff
changeset
|
167 |
httppeer.httppeer._callstream = proto.httprepocallstream |
15168 | 168 |
|
169 |
# override some extensions' stuff as well |
|
170 |
for name, module in extensions.extensions(): |
|
171 |
if name == 'purge': |
|
172 |
extensions.wrapcommand(getattr(module, 'cmdtable'), 'purge', |
|
16247
d87d9d8a8e03
largefiles: remove use of underscores that breaks coding convention
Na'Tosha Bard <natosha@unity3d.com>
parents:
16093
diff
changeset
|
173 |
overrides.overridepurge) |
15168 | 174 |
if name == 'rebase': |
175 |
extensions.wrapcommand(getattr(module, 'cmdtable'), 'rebase', |
|
16247
d87d9d8a8e03
largefiles: remove use of underscores that breaks coding convention
Na'Tosha Bard <natosha@unity3d.com>
parents:
16093
diff
changeset
|
176 |
overrides.overriderebase) |
23182
9b6c3947b4a7
largefiles: wrap "rebase.rebase" for functions using it directly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22289
diff
changeset
|
177 |
extensions.wrapfunction(module, 'rebase', |
9b6c3947b4a7
largefiles: wrap "rebase.rebase" for functions using it directly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22289
diff
changeset
|
178 |
overrides.overriderebase) |
15383
155d0f8fb7e5
largefiles: fix bad bug where transplanting a changeset with a largefile will result in an old largefile being comitted later on
Na'Tosha Bard <natosha@unity3d.com>
parents:
15356
diff
changeset
|
179 |
if name == 'transplant': |
155d0f8fb7e5
largefiles: fix bad bug where transplanting a changeset with a largefile will result in an old largefile being comitted later on
Na'Tosha Bard <natosha@unity3d.com>
parents:
15356
diff
changeset
|
180 |
extensions.wrapcommand(getattr(module, 'cmdtable'), 'transplant', |
16247
d87d9d8a8e03
largefiles: remove use of underscores that breaks coding convention
Na'Tosha Bard <natosha@unity3d.com>
parents:
16093
diff
changeset
|
181 |
overrides.overridetransplant) |