Sun, 08 Jan 2012 23:09:35 +0800 rebase: reinstate old-style rev spec support for the source and base (issue3181) stable
Steven Brown <StevenGBrown@gmail.com> [Sun, 08 Jan 2012 23:09:35 +0800] rev 15800
rebase: reinstate old-style rev spec support for the source and base (issue3181) As of b12362ab13e7 (first released as part of Mercurial 2.0), the rebase command accepted ONLY revsets for the source and base arguments and no longer accepted old-style revision specifications. As a result, some revision names were no longer recognised, e.g. hg rebase --base br-anch abort: unknown revision 'br'! These arguments are now interpreted first as old-style revision specifications, then as revsets when no matching revision is found. This restores backwards compatibility with releases prior to 2.0.
Fri, 06 Jan 2012 07:37:59 +0100 dirstate: propagate IOError other than ENOENT when reading branch stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 06 Jan 2012 07:37:59 +0100] rev 15799
dirstate: propagate IOError other than ENOENT when reading branch
Fri, 06 Jan 2012 15:05:51 +0100 mq: Document that qdel requires exact patch identifiers stable
Olav Reinert <seroton10@gmail.com> [Fri, 06 Jan 2012 15:05:51 +0100] rev 15798
mq: Document that qdel requires exact patch identifiers
Sun, 08 Jan 2012 15:23:26 +0100 canonpath: allow canonicalization of non-existant paths
Dan Villiom Podlaski Christiansen <danchr@gmail.com> [Sun, 08 Jan 2012 15:23:26 +0100] rev 15797
canonpath: allow canonicalization of non-existant paths Such as a copy destination; see the added test.
Sun, 08 Jan 2012 14:33:10 +0100 largefiles: factor out a copyalltostore() function
Dan Villiom Podlaski Christiansen <danchr@gmail.com> [Sun, 08 Jan 2012 14:33:10 +0100] rev 15796
largefiles: factor out a copyalltostore() function
Sat, 07 Jan 2012 19:11:31 +0100 largefiles: add precommit hook to check for inappropriate locking
Levi Bard <levi@unity3d.com> [Sat, 07 Jan 2012 19:11:31 +0100] rev 15795
largefiles: add precommit hook to check for inappropriate locking This tests for inappropriate locking (issue3182) by running hg status as a precommit hook.
Sat, 07 Jan 2012 19:05:59 +0100 largefiles: fix inappropriate locking (issue3182)
Levi Bard <levi@unity3d.com> [Sat, 07 Jan 2012 19:05:59 +0100] rev 15794
largefiles: fix inappropriate locking (issue3182) Don't lock/write on operations that should be readonly (status). Always lock when writing the lfdirstate (rollback). Don't write lfdirstate until after committing; state isn't actually changed until the commit is complete.
Sat, 07 Jan 2012 18:43:34 +0100 largefiles: correctly handle dirstate status when rebasing
Na'Tosha Bard <natosha@unity3d.com> [Sat, 07 Jan 2012 18:43:34 +0100] rev 15793
largefiles: correctly handle dirstate status when rebasing When rebasing, we need to trust that the standins are always correct. The rebase operation updates the standins according to the changeset it is rebasing. We need to make the largefiles in the working copy match. If we don't make them match, then they get accidentally reverted, either during the rebase or during the next commit after the rebase. This worked previously only becuase we were relying on the behavior that largefiles with a changed standin, but unchanged contents, never showed up in the list of modified largefiles. Unfortunately, pre-commit hooks can get an incorrect status this way, and it also results in extra execution of code. The solution is to simply trust the standins when we are about to commit a rebased changeset, and politely ask updatelfiles() to pull the new contents down. In this case, updatelfiles() will also mark any files it has pulled down as dirty in the lfdirstate so that pre-commit hooks will get correct status output.
Sat, 07 Jan 2012 12:42:54 +0100 largefiles: implement addremove (issue3064)
Na'Tosha Bard <natosha@unity3d.com> [Sat, 07 Jan 2012 12:42:54 +0100] rev 15792
largefiles: implement addremove (issue3064) Implementing addremove correctly in largefiles is tricky, becuase the original addremove function does not call into any of the add or remove function we've already overridden in the extension. So the trick is to implement addremove without duplicating any code. This patch implements addremove by pulling out the interesting parts of override_add() and override_remove() into generic utility functions, and using those to handle the largefiles in addremove. Then a matcher is installed that will ignore all largefiles, and the original addremove function is called to take care of the regular files in addremove. A small bit of monkey patching is used to make sure that remove_largefiles() notifies the user when a file is removed by addremove and also makes sure the removal of largefiles doesn't interfer with the original addremove's operation of removing the standin.
Sun, 08 Jan 2012 18:15:54 +0100 Use explicit integer division
Martin Geisler <mg@aragost.com> [Sun, 08 Jan 2012 18:15:54 +0100] rev 15791
Use explicit integer division Found by running the test suite with the -3 flag to show places where we have int / int division that can be replaced with int // int.
(0) -10000 -3000 -1000 -300 -100 -10 +10 +100 +300 +1000 +3000 +10000 +30000 tip