Files
@ 49149ca96075
Branch filter:
Location: kallithea/scripts/source_format.py - annotation
49149ca96075
701 B
text/x-python
hg: support protocol commands used by hg-evolve
When cloning or pulling from a repository which uses the evolve extension
Kallithea would require write permissions for multiple commands:
evoext_obshashrange_v1, _exttopics_heads and tns_heads.
https://foss.heptapod.net/mercurial/evolve/-/blob/6ffc4d7635fac0e605eb44b77de539f64c3739a2/hgext3rd/topic/server.py#L134
https://foss.heptapod.net/mercurial/evolve/-/blob/6ffc4d7635fac0e605eb44b77de539f64c3739a2/hgext3rd/evolve/obsdiscovery.py#L722
Fixed by adding them to the list of known read-only commands.
When cloning or pulling from a repository which uses the evolve extension
Kallithea would require write permissions for multiple commands:
evoext_obshashrange_v1, _exttopics_heads and tns_heads.
https://foss.heptapod.net/mercurial/evolve/-/blob/6ffc4d7635fac0e605eb44b77de539f64c3739a2/hgext3rd/topic/server.py#L134
https://foss.heptapod.net/mercurial/evolve/-/blob/6ffc4d7635fac0e605eb44b77de539f64c3739a2/hgext3rd/evolve/obsdiscovery.py#L722
Fixed by adding them to the list of known read-only commands.
f8971422795e f8971422795e f8971422795e f8971422795e f8971422795e f8971422795e f8971422795e f8971422795e f8971422795e f8971422795e f8971422795e f8971422795e f8971422795e f8971422795e f8971422795e f8971422795e f8971422795e f8971422795e f8971422795e f8971422795e f8971422795e f8971422795e f8971422795e f8971422795e | #!/usr/bin/env python3
# hg files 'set:!binary()&grep("^#!.*python")' 'set:**.py' | xargs scripts/source_format.py
import re
import sys
filenames = sys.argv[1:]
for fn in filenames:
with open(fn) as f:
org_content = f.read()
mod_name = fn[:-3] if fn.endswith('.py') else fn
mod_name = mod_name[:-9] if mod_name.endswith('/__init__') else mod_name
mod_name = mod_name.replace('/', '.')
def f(m):
return '"""\n%s\n%s\n' % (mod_name, '~' * len(mod_name))
new_content = re.sub(r'^"""\n(kallithea\..*\n)(~+\n)?', f, org_content, count=1, flags=re.MULTILINE)
if new_content != org_content:
with open(fn, 'w') as f:
f.write(new_content)
|