Phil Cohen <phillco@fb.com> [Thu, 07 Dec 2017 16:07:06 -0800] rev 35327
overlayworkingctx: invalidate the manifest cache when changing parents
This fixes problems noticeable when rebasing several commits into one
destination commit using ``--collapse``. The manifest cache needs to be cleared
each time.
Differential Revision: https://phab.mercurial-scm.org/D1244
Phil Cohen <phillco@fb.com> [Thu, 07 Dec 2017 16:07:06 -0800] rev 35326
overlayworkingctx: add `_compact()`
Alas, presence of a key in the cache isn't sufficient evidence that the file
is actually dirty.
Differential Revision: https://phab.mercurial-scm.org/D1243
Phil Cohen <phillco@fb.com> [Thu, 07 Dec 2017 22:26:07 -0800] rev 35325
overlayworkingctx: add ``tomemctx()``
Differential Revision: https://phab.mercurial-scm.org/D1242
Phil Cohen <phillco@fb.com> [Thu, 07 Dec 2017 16:07:06 -0800] rev 35324
overlayworkingctx: add _auditconflicts to write()
Alas, part of Mercurial's conflict detection (for file<->folder conflicts,
for example) depends on the filesystem. We don't have the filesystem with IMM,
so we have to run these checks ourselves.
Differential Revision: https://phab.mercurial-scm.org/D1241
Phil Cohen <phillco@fb.com> [Thu, 07 Dec 2017 16:07:06 -0800] rev 35323
overlayworkingctx: inherit from committablectx instead of workingctx
We should find a better name for this context at some point. (mutablememctx?)
Differential Revision: https://phab.mercurial-scm.org/D1240
Phil Cohen <phillco@fb.com> [Thu, 07 Dec 2017 16:07:06 -0800] rev 35322
overlayworkingctx: add a no-op ``clearunknown()``
We no longer inherit ``workingctx``'s version, but we also don't need to do
anything anymore.
Differential Revision: https://phab.mercurial-scm.org/D1239
Phil Cohen <phillco@fb.com> [Thu, 07 Dec 2017 16:07:06 -0800] rev 35321
overlayworkingctx: add _manifest, files(), added(), removed(), modified()
Differential Revision: https://phab.mercurial-scm.org/D1238
Phil Cohen <phillco@fb.com> [Fri, 08 Dec 2017 12:14:38 -0800] rev 35320
rebase: rerun a rebase on-disk if IMM merge conflicts arise
Differential Revision: https://phab.mercurial-scm.org/D1249
Phil Cohen <phillco@fb.com> [Thu, 07 Dec 2017 22:35:43 -0800] rev 35319
rebase: add concludememorynode(), and call it when rebasing in-memory
Differential Revision: https://phab.mercurial-scm.org/D1248
Phil Cohen <phillco@fb.com> [Thu, 07 Dec 2017 16:07:06 -0800] rev 35318
rebase: pass the wctx object (IMM or on-disk) to merge.update
Differential Revision: https://phab.mercurial-scm.org/D1247