Mercurial > hg
view tests/test-demandimport.py.out @ 35998:dce43aaaf209
lfs: allow a pointer to be extracted from a context that removes the file
This is needed to let 'set:lfs()' and '{lfs_files}' work normally on removed
files.
Yuya suggested returning a null pointer for removed files, instead of the
pointer from the parent. The first attempt at this was to return None for a non
LFS file, and a (pointer, ctx) tuple to hold the pointer and context (or parent
pointer and context for a removed file). But this complicated the callers, even
the ones that didn't care about removed files.
Instead, let's use {} to represent a removed pointer. This has the added
convenience of being a useful representation in the template language, and only
affects the callers that care about removed files (and only slightly). Since
pointers are explicitly serialized with a call to a member function, there is no
danger of writing these to disk.
author | Matt Harbison <matt_harbison@yahoo.com> |
---|---|
date | Sat, 27 Jan 2018 18:56:24 -0500 |
parents | 91a2ec8e7fa0 |
children | b39f0fdb0338 |
line wrap: on
line source
os = <unloaded module 'os'> os.system = <built-in function system> os = <module 'os' from '?'> util = <unloaded module 'util'> util.system = <function system at 0x?> util = <module 'mercurial.util' from '?'> util.system = <function system at 0x?> hgweb = <unloaded module 'hgweb'> hgweb_mod = <unloaded module 'hgweb_mod'> hgweb = <module 'mercurial.hgweb' from '?'> fred = <unloaded module 're'> remod = <unloaded module 're'> re = <unloaded module 'sys'> fred = <unloaded module 're'> fred.sub = <function sub at 0x?> fred = <proxied module 're'> remod = <module 're' from '?'> re = <unloaded module 'sys'> re.stderr = <open file '<whatever>', mode 'w' at 0x?> re = <proxied module 'sys'> pvecproxy = <unloaded module 'pvec'> pvecproxy.__doc__ = 'A "pvec" is ...' pvecproxy.__name__ = 'mercurial.pvec' pvecproxy.__dict__['__name__'] = 'mercurial.pvec' pvecproxy = <proxied module 'pvec'> contextlib = <unloaded module 'contextlib'> contextlib.unknownattr = ImportError: cannot import name unknownattr __import__('contextlib', ..., ['unknownattr']) = <module 'contextlib' from '?'> hasattr(contextlibimp, 'unknownattr') = False node = <module 'mercurial.node' from '?'>