mirror of
https://github.com/facebook/sapling.git
synced 2024-10-09 08:18:15 +03:00
d79ff306e5
This patch contains support for Plan 9 from Bell Labs. A README is provided in contrib/plan9 which describes the port in greater detail. A new extension is also provided named factotum which permits the factotum(4) authentication agent to provide credentials for HTTP repositories. This extension is also applicable to other POSIX platforms which make use of Plan 9 from User Space (aka plan9ports).
37 lines
975 B
Python
37 lines
975 B
Python
import os
|
|
from mercurial import ui, commands, extensions
|
|
|
|
ignore = set(['highlight', 'inotify', 'win32text', 'factotum'])
|
|
|
|
if os.name != 'nt':
|
|
ignore.add('win32mbcs')
|
|
|
|
disabled = [ext for ext in extensions.disabled().keys() if ext not in ignore]
|
|
|
|
hgrc = open(os.environ["HGRCPATH"], 'w')
|
|
hgrc.write('[extensions]\n')
|
|
|
|
for ext in disabled:
|
|
hgrc.write(ext + '=\n')
|
|
|
|
hgrc.close()
|
|
|
|
u = ui.ui()
|
|
extensions.loadall(u)
|
|
|
|
globalshort = set()
|
|
globallong = set()
|
|
for option in commands.globalopts:
|
|
option[0] and globalshort.add(option[0])
|
|
option[1] and globallong.add(option[1])
|
|
|
|
for cmd, entry in commands.table.iteritems():
|
|
seenshort = globalshort.copy()
|
|
seenlong = globallong.copy()
|
|
for option in entry[1]:
|
|
if (option[0] and option[0] in seenshort) or \
|
|
(option[1] and option[1] in seenlong):
|
|
print "command '" + cmd + "' has duplicate option " + str(option)
|
|
seenshort.add(option[0])
|
|
seenlong.add(option[1])
|