Fri, 13 Oct 2017 04:02:06 +0530 tersestatus: avoid modifying tersedict
Denis Laxalde <denis@laxalde.org> [Fri, 13 Oct 2017 04:02:06 +0530] rev 34684
tersestatus: avoid modifying tersedict Turn dirnode's methods into generators which can be used to update "tersedict" in caller. So instead of passing the "tersedict" to be mutated here and there, it's now clearer where it is updated as it's purely a local variable to tersedir() function. While I was here, I renamed _processtersestatus to tersewalk and _addfilestotersed to iterfilepaths. Differential Revision: https://phab.mercurial-scm.org/D1043
Wed, 11 Oct 2017 21:19:19 +0200 tersestatus: make methods part of the dirnode class
Denis Laxalde <denis@laxalde.org> [Wed, 11 Oct 2017 21:19:19 +0200] rev 34683
tersestatus: make methods part of the dirnode class Differential Revision: https://phab.mercurial-scm.org/D1042
Fri, 06 Oct 2017 20:54:23 +0530 tersestatus: re-implement the functionality to terse the status
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 06 Oct 2017 20:54:23 +0530] rev 34682
tersestatus: re-implement the functionality to terse the status The previous terse status implementation was hacking around os.listdir() and was flaky. There have been a lot of instances of mercurial buildbots failing and google's internal builds failing because of the hacky implementation of terse status. Even though I wrote the last implementation but it was hard for me to find the reason for the flake. The new implementation can be slower than the old one but is clean and easy to understand. In this we create a node object for each directory and create a tree like structure starting from the root of the working copy. While building the tree like structure we store some information on the nodes which will be helpful for deciding later whether we can terse the dir or not. Once the whole tree is build we traverse and built the list of files for each status with required tersing. There is no behaviour change as the old test, test-status-terse.t passes with the new implementation. Differential Revision: https://phab.mercurial-scm.org/D985
Fri, 13 Oct 2017 12:54:46 -0700 context: add is `isinmemory()` to filectx
Phil Cohen <phillco@fb.com> [Fri, 13 Oct 2017 12:54:46 -0700] rev 34681
context: add is `isinmemory()` to filectx This will make it easier to skip certain behavior when running an in-memory merge. Differential Revision: https://phab.mercurial-scm.org/D1061
Fri, 06 Oct 2017 06:48:43 -0700 merge: ensure that we always commit the mergestate
Ryan McElroy <rmcelroy@fb.com> [Fri, 06 Oct 2017 06:48:43 -0700] rev 34680
merge: ensure that we always commit the mergestate In future patches, we may halt the merge process based on configuration or user requests by raising exceptions. We need to ensure that the mergestate is unconditionally committed even when such an exception is raised. Depends on D930. Differential Revision: https://phab.mercurial-scm.org/D931
Fri, 06 Oct 2017 06:48:43 -0700 merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com> [Fri, 06 Oct 2017 06:48:43 -0700] rev 34679
merge: add tests to show current behavior on failed filemerges Currently, failed file merges will nevertheless force the user to continue attempting to merge all additional unresolved files. Future patches will allow the user to halt the merge process instead. This patch first introduces a test demonstrating the current bejhavior so the upcoming changes are more obvious. Differential Revision: https://phab.mercurial-scm.org/D930
(0) -30000 -10000 -3000 -1000 -300 -100 -30 -10 -6 +6 +10 +30 +100 +300 +1000 +3000 +10000 tip