##// END OF EJS Templates
lfs: allow non-lfs exchanges when the extension is only enabled on one side...
lfs: allow non-lfs exchanges when the extension is only enabled on one side Once the 'lfs' requirement is added, the extension must be loaded on both sides, and changegroup3 used. But there's no reason that I can see for bailing with cryptic errors if lfs is not required, but randomly enabled somewhere.

File last commit:

r34773:7be2f229 default
r35521:2526579a default
Show More
fakepatchtime.py
40 lines | 1.1 KiB | text/x-python | PythonLexer
FUJIWARA Katsunori
tests: add extension to emulate invoking internalpatch at the specific time...
r25756 # extension to emulate invoking 'patch.internalpatch()' at the time
# specified by '[fakepatchtime] fakenow'
Gregory Szorc
tests/fakepatchtime.py: use absolute_import
r27284 from __future__ import absolute_import
from mercurial import (
extensions,
patch as patchmod,
Boris Feld
configitems: register the test 'fakepatchtime.fakenow' config
r34773 registrar,
Gregory Szorc
tests/fakepatchtime.py: use absolute_import
r27284 util,
)
FUJIWARA Katsunori
tests: add extension to emulate invoking internalpatch at the specific time...
r25756
Boris Feld
configitems: register the test 'fakepatchtime.fakenow' config
r34773 configtable = {}
configitem = registrar.configitem(configtable)
configitem('fakepatchtime', 'fakenow',
default=None,
)
FUJIWARA Katsunori
tests: add extension to emulate invoking internalpatch at the specific time...
r25756 def internalpatch(orig, ui, repo, patchobj, strip,
prefix='', files=None,
eolmode='strict', similarity=0):
if files is None:
files = set()
r = orig(ui, repo, patchobj, strip,
prefix=prefix, files=files,
eolmode=eolmode, similarity=similarity)
fakenow = ui.config('fakepatchtime', 'fakenow')
if fakenow:
# parsing 'fakenow' in YYYYmmddHHMM format makes comparison between
# 'fakenow' value and 'touch -t YYYYmmddHHMM' argument easy
fakenow = util.parsedate(fakenow, ['%Y%m%d%H%M'])[0]
for f in files:
repo.wvfs.utime(f, (fakenow, fakenow))
return r
def extsetup(ui):
extensions.wrapfunction(patchmod, 'internalpatch', internalpatch)